juniorrojas/algovivo

An energy-based formulation for soft-bodied virtual creatures

解決的問題

它提供了一種模擬軟體虛擬生物的方法,無需手動推導複雜的力函數或編寫明確的位置更新規則。相反,它使用基於能量的公式來處理可變形體的物理模擬。

運作原理

該系統透過可微分能量函數的基於梯度的最佳化來實現物理模擬。它使用自動微分(透過 Enzyme)來計算力和導數。該模擬包含六種特定的能量函數:neo-Hookean 三角形、可控肌肉、重力、地形碰撞、摩擦力和慣性。核心邏輯以 C++ 編寫,編譯為 WebAssembly (WASM),並封裝在 JavaScript 函式庫中以供瀏覽器執行。

目標對象

它專為對軟體物理、虛擬生物模擬以及機器人學與可微分物理交叉領域感興趣的研究人員和開發人員而設計。

特點

  • 可微分物理: 使用自動微分從能量函數計算力。
  • 神經控制: 支援使用預訓練的 MLP (Multi-Layer Perceptron) 控制器將本體感覺訊號映射到肌肉指令,以實現運動。
  • Web 就緒: 編譯為 WebAssembly,可在瀏覽器中進行高效能模擬。
  • 基於能量的公式: 實現了多種物理約束,包括摩擦力、重力和地形碰撞。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案