可微仿真
Differentiable Simulation常用能对仿真结果求梯度的仿真器,可以直接用梯度下降优化动作或物理参数。
普通仿真器只能正向算出「给这个动作,下一步会怎样」;可微仿真器还能用自动微分反向算出结果对动作、初始状态或物理参数(质量、摩擦等)的梯度。这样就能像训练神经网络一样,用梯度下降直接优化控制序列、策略网络或辨识物理参数,不必像强化学习那样靠大量试错来估计梯度。代表工作有 ICLR 2020 的 DiffTaichi、谷歌的 Brax,以及 MuJoCo 的 JAX 版 MJX(其 Warp 后端不支持自动微分)。难点在接触:碰撞让动力学出现突变,梯度可能很大、很噪或为零;Suh 等人在 ICML 2022 的研究指出,刚度和不连续性会削弱这类一阶梯度的效果。
例子DiffTaichi 论文实现了 10 个可微仿真器,用它们优化神经网络控制器时,通常几十次迭代就能收敛。
- 也叫
- 可微物理、Differentiable Physics、可微物理引擎
- 相关
- 物理引擎、MJX、Brax、Warp、轨迹优化、系统辨识
- 来源
- DiffTaichi: Differentiable Programming for Physical Simulation (arXiv 1910.00935)
A Review of Differentiable Simulators (arXiv 2407.05560)
Do Differentiable Simulators Give Better Policy Gradients? (arXiv 2202.00817)