MuJoCo

高级物理模拟

MuJoCo 是一款免费且开源的物理引擎,旨在促进机器人学、生物力学、图形与动画以及其他需要快速准确模拟的领域的研究与开发。

MuJoCo 提供了速度、准确性和建模能力的独特结合,但它不仅仅是一个更好的模拟器。相反,它是第一个从头开始设计、功能齐全的模拟器,专门用于基于模型的优化,特别是通过接触进行的优化。

MuJoCo 使得计算密集型技术(如最优控制、物理一致状态估计、系统辨识和自动化机构设计)得以规模化,并应用于具有丰富接触行为的复杂动力系统。它也具有更传统的应用,例如在部署到物理机器人之前测试和验证控制方案、交互式科学可视化、虚拟环境、动画和游戏。

主要特点

  • 广义坐标下的模拟,避免关节违规
  • 即使存在接触,逆动力学也能得到良好定义
  • 通过凸优化统一约束的连续时间公式
  • 约束包括软接触、限制、干摩擦、等式约束
  • 粒子系统、布料、绳索和软物体的模拟
  • 执行器包括电机、汽缸、肌肉、肌腱、滑块曲柄
  • 牛顿法、共轭梯度法或投影高斯-赛德尔求解器选择
  • 金字塔形或椭圆形摩擦锥、密集或稀疏雅可比矩阵选择
  • 欧拉或龙格-库塔数值积分器选择
  • 多线程采样和有限差分近似
  • 直观的 XML 模型格式(称为 MJCF)和内置模型编译器
  • 跨平台 GUI,带 OpenGL 交互式 3D 可视化
  • 用 ANSI C 编写的运行时模块,并为性能进行了手动优化