[2025.8.5] Diffuse-CLoC Guided Diffusion for Physics-based Character Look-ahead
摘要
我们提出了Diffuse-CLoC,一个用于基于物理的前瞻控制的引导扩散框架,能够实现直观、可操控和物理真实的运动生成。现有的基于扩散模型的运动学运动生成虽然在推理时通过条件控制提供了直观的操控能力,但往往无法产生物理上可行的运动。相比之下,最近基于扩散的控制策略在生成物理可实现的运动序列方面显示出潜力,但缺乏运动学预测限制了其可操控性。Diffuse-CLoC通过一个关键洞察解决了这些挑战:在单个扩散模型中对状态和动作的联合分布进行建模,使得动作生成可以通过对预测状态进行条件控制而变得可操控。这种方法使我们能够利用运动学运动生成中已建立的条件控制技术,同时产生物理真实的运动。因此,我们无需高级规划器就能实现规划能力。我们的方法通过单一预训练模型处理多样化的未见过的长视界下游任务,包括静态和动态障碍物避让、运动插值和任务空间控制。实验结果表明,我们的方法显著优于传统的高级运动扩散和低级跟踪的分层框架。
文章要解决的问题
- 传统方法需要轨迹优化或PD控制等额外步骤
- 直接生成力与力矩非常困难
主要技术点
这篇文章通过扩散模型直接生成物理引擎所需的力与力矩,因此在生成完成后不再需要轨迹优化或 PD 控制等额外步骤。
为什么以前的方法不直接生成力和力矩?
因为力与力矩非常难学。主要原因有三点:
- 没有真值(GT):动捕无法直接采集关节力矩
- 高频、剧烈变化:力矩帧间差异大,包含快速、不稳定的信号
- 容错率极低:微小偏差都会导致仿真崩溃、角色摔倒
为成功学习力矩采用的关键技术:
-
联合建模未来状态与未来力矩的分布
- 将状态与力矩统一输入扩散模型,一起学习
- 让状态协助力矩保持物理稳定
-
使用专家控制器(如MPC)生成含真值力矩的仿真数据
- 通过高性能控制器在仿真中滚出轨迹
- 得到包含状态与力矩真值的数据集,为模型提供监督信号
-
一次性预测未来多帧(Look-ahead)
- 让模型提前感知长期物理后果
- 提升长序列仿真的稳定性
-
在每一步去噪后进行梯度引导修正
- 利用预测状态与目标状态之间的差距计算引导梯度
- 同时修正预测的状态与力矩
- 确保生成结果满足任务目标与物理约束