090|ASAP:学习仿真与现实之间的动作差异
原论文:ASAP: Aligning Simulation and Real-World Physics for Learning Agile Humanoid Whole-Body Skills,Tairan He、Jiawei Gao、Wenli Xiao、Yuanhang Zhang 等,2025。论文。
先接住前作的问题
Human2Humanoid把人类参考筛成模拟中可跟踪的运动,但真实执行器仍可能让同一指令产生不同后果。ASAP用目标机器人数据学习模拟动作残差,再在修正的环境中训练策略;残差用于模拟对齐,不直接叠加到真机。
五个前置概念
五个前置概念:系统辨识估计实际动力学特征;域随机化在训练中变化模拟参数;动作残差在动作入口附加修正;非对称actor-critic让critic使用更多训练信息;参考状态初始化从动作中途状态开始练习。
一、问题设定:怎样让模拟器复现真实执行器的动作后果
仿真里能跳起来的人形机器人,上机后可能因为踝关节传动和电机响应不同而动作变形。ASAP没有直接要求真实机器人“加一段补偿动作”,而是先让模拟器变得更像真实机器人,包括复现它的不足,再在这个经过修正的环境里训练动作策略。
最终任务是跟随人类运动重定向后的机器人参考动作。视频先由TRAM恢复SMPL运动,物理追踪用于清理不合理运动,再映射到G1。这个处理减少重建误差,但“人类动作可模拟”与“机器人可安全执行”仍是不同约束。
预训练使用PPO。actor输入五步本体历史和动作相位,输出23维关节位置目标给PD控制器;critic还可以使用全局参考位置、根部速度等特权信息。每个相位追踪策略对应具体运动,不能只因多个动作都可执行就称为一个语言可指定的通用动作模型。
奖励包含身体、关节、脚部等追踪项,以及力矩、滑动和动作变化正则。终止容忍从较宽逐渐收紧,参考状态初始化让训练从动作不同阶段开始。例如不必每次先学完整起跳才有机会练落地。
预训练还使用基础域随机化,因此ASAP不是完全舍弃随机化;它是在基础稳健性之外,学习针对实际系统的结构化差异。原文§II、附录A
二、拟合动作残差后冻结环境修正并重训策略
残差模型学习的是:给模拟器的动作加什么,能使其产生真实机器人的下一步反应?它冻结后成为模拟器的一部分。策略在这种动力学下重新优化,最终真机只执行更新后的策略,不再叠加残差。
实验覆盖两种跨模拟器迁移和真实G1。关键边界是,真机因数据和硬件成本只训练四维踝关节残差;不能把仿真的全23维残差能力直接宣传为完整真机验证。
1. 对齐的是“同一个动作的后果”
记录真实状态动作序列 。真实状态包括动捕获得的根部位置和姿态、机载关节与速度等信息。原动作在模拟器中重放后,轨迹会与真实记录偏离。
残差模型 的目标是使
左边是修改动作后的模拟响应,右边是真实机器人的原动作响应。方向不能倒过来理解:残差可能让仿真动作变弱,以复现真实电机不足,而不是“增强动作直到完成原参考”。
残差也用PPO训练,奖励衡量模拟轨迹与记录真实轨迹的接近程度,并约束残差大小与变化。用教学形式概括:
这里是概括结构,不是把论文多项指数追踪奖励改称单一欧氏损失。因为通过模拟交互获得回报,不要求物理模拟器对全部接触过程可微。
2. 在经过修改的模拟器里重学动作
冻结残差,定义
随后对原追踪策略继续PPO训练,奖励重新指向原本希望完成的参考动作。两个阶段的追踪对象不同:残差阶段追踪真实记录,包括其偏差;策略微调阶段追踪想要完成的动作。
如果此时真实机器人“弱”,策略就要在这个较弱的等效系统里学会调整起跳、重心或时序。部署时直接使用微调策略 ;再加残差会将训练环境校正错误地叠加到真实系统,形成二次补偿。
3. 为什么用动作残差,而不是直接改状态?
状态残差模型可以直接预测下一状态偏差,但输出可能破坏接触和运动约束。动作残差则让状态仍由物理模拟器推进,保留部分物理结构。这是有益归纳偏置,不是证明动作残差一定能表达所有现实差异。
例如传感器延迟、柔性结构或隐藏热状态造成的差异,未必能由当前可见 的无记忆映射完整表达。模型能拟合的范围取决于状态表示、动作可控性及采样覆盖。
伪代码是§III的教学整理;残差训练时域是实验变量,不应把它简化成只做单步监督回归。
用一维动力学检查残差方向。教学设位置状态为 、动作为 、下一状态为 ;模拟器 ,真机 ,则让模拟器模仿真机的动作残差应为 。在修正模拟器里,要前进1单位,策略会学到 ;把这个动作直接给真机,恰好前进1。
若部署时又叠加残差,输入真机变成1,最终只前进0.8,反而重新欠驱动。这个算例假设线性、无饱和且残差准确,仅用于辨清方向;真实跳跃涉及接触、延迟和未覆盖状态。原文真机仅学习四维踝关节残差,不能据全身动作展示推成全身动力学已被辨识。原文§III与§IV-C
用一个例子建立理解
以下是未运行的教学例子。原模拟器对指令 产生加速度 ,真实系统只产生 。为了让模拟器复现真实动作,残差应取约 ,使 。在这个修正模拟器中,策略会学习满足任务所需的更适合真实系统的指令。
若最终又把 加到真机,真实系统反而只得到一半指令。这个极简例子忽略了非线性和接触,却清楚展示为什么部署时移除残差模型;它原本用于修改“训练环境”,并非直接给硬件增益补偿。
三、用真实下一步响应拟合残差并冻结再训练
残差让模拟器复现真机同一指令的后果,再由新策略在修正环境中找动作。真机执行只运行重训策略,不再把残差叠到真实命令上。
从视频恢复并清理人体运动,重定向为机器人参考
在原模拟器中以PPO训练相位条件追踪策略
在目标模拟器或真实机器人执行预训练策略
保存实际状态、实际动作及时间对齐的轨迹
训练残差模型:
从记录轨迹抽取起点和片段
模拟器执行 recorded_action + delta(sim_state, recorded_action)
以接近记录轨迹和限制残差的奖励更新delta
冻结delta,嵌入模拟器动作入口
用原动作追踪奖励继续训练基础策略
在目标环境执行微调策略,不附加delta
分别测试轨迹复现误差和闭环任务表现
四、连接开环对齐误差与真实闭环跟踪
原图怎么读: 图10,原论文图注与图像。分开看数据规模、训练时域和残差动作范数,且区分开环误差与闭环误差。降低固定记录上的误差不保证微调后策略访问分布中的误差也更小。

| 实验 | 设置 | 评价含义 |
|---|---|---|
| 跨模拟器 | IsaacGym为训练环境,IsaacSim或Genesis为目标 | 可重复研究已改变动力学的迁移 |
| 动作集 | 43段,按难度分组 | 比较不同敏捷性要求 |
| 开环复现 | 重放目标环境记录动作,观察0.25、0.5、1秒误差 | 判断等效模拟器是否更像目标 |
| 闭环追踪 | 在修正环境微调后去目标环境执行 | 判断对齐是否转化为控制收益 |
| 基线 | Vanilla、SysID、DeltaDynamics及同环境Oracle | 区分参数校准、状态残差、动作残差 |
| 真机残差 | G1固定腕部,四维踝关节模型,100段记录 | 验证有限真实资料条件 |
| 真机指标 | Kick与未用于残差训练的Silencer对照 | 区分已见和未见运动迁移 |
全模型训练算力、全部重复种子及各表不确定性统计定义未逐项核实。真机段落同时写了100段用于残差训练、每任务执行30次和另有10分钟行走资料,不能将这些不同叙述简单相乘或当成每个主表条件30次独立评测。
成功判据与身体追踪误差阈值相关,不是工业意义的无故障成功。全局关节位置误差包含根部平移,root-relative误差更关注身体内部姿态;二者可能给出不同排序。
SysID只搜索了指定质量、重心和PD参数范围,对它的胜出不能推出所有系统辨识方法无效。各方法奖励相同,也不等于所有计算与调参成本完全相同。
结果:证据到底有多强
表III:长时域动力学复现。 IsaacSim的一秒全局误差从OpenLoop的80.8 mm降到37.9 mm,约减少53.1%,计算为 。但0.25秒时ASAP为19.9,OpenLoop为19.5;所以正文“所有长度都优于”的概括比表格更强。应表述为长时域收益突出,而非每格最优。
表IV:闭环不能只看是否站住。 Genesis困难动作成功率从82.9%到100%,全局误差175到129 mm。另一方面,IsaacSim困难动作的root-relative误差Vanilla为51.6,ASAP为56.5,后者变差;全局更准不等于每个姿态指标都改善。
表V:真实改进及其范围。 Kick全局误差61.2到50.2 mm,减少约18.0%;Silencer为159到112 mm,约29.6%。这里的OOD是残差模型未见该动作,但对应追踪策略仍在修正模拟器中训练;不是从未训练过该动作的通用策略直接演出。结论中的“up to 52.7%”不能直接由这张真机表推出,本文只使用可核对的表内比较。
图10:模型拟合更好不必然控制更好。 更长残差训练时域改善开环误差,但闭环最优出现在约1秒而非最长1.5秒。资料量增加的闭环收益也会饱和。这与世界模型研究中的共同问题相通:预测质量是中间指标,控制器最终访问的分布才决定回报。
图11、图12:怎样使用残差。 PPO微调优于单步固定点或梯度求解,支持让策略重新适应闭环动态;针对性残差也优于所试随机动作噪声。v1图12图注和正文分别给噪声基线173与150,故不据此计算精确增幅。它不能排除更充分调优的随机化方案。实验§IV–V


五、残差覆盖范围限制未见运动迁移
ASAP最重要的观点是:不必准确辨识每个物理参数,也能通过动作接口学习一个对控制有用的等效真实环境。残差受模拟器约束,比任意修改状态更贴近现有物理结构,且部署不增加这部分模型计算。
但它不是无真实资料的迁移。动捕用于对齐训练轨迹,原策略虽可在最终执行时不依赖外部里程计,整个方法仍依赖动捕采集。作者明确报告电机过热与两台机器人不同程度损坏,这直接限制资料规模;因此四维真机设置是研究结论的重要条件。
我的分析是,残差存在不可辨识性:不同动作修正可能在某个状态附近产生相似结果,却在新状态下分歧。限制残差大小有助于避免过度修改,但不能保证学到唯一真实物理解释。
此外,相位策略对预定时间结构依赖较强。执行中出现大扰动,是否继续按原相位推进、暂停或重规划,需要额外机制。多个追踪策略间由行走策略接管保持平衡,也属于完整系统,而不是一个统一动作网络完成全部行为。
追问:残差只在旧策略访问的状态上拟合,重训策略后应检查什么?
参考答案:新策略可能进入旧数据未覆盖的姿态、速度或接触阶段,使残差成为外推。应比较前后状态动作覆盖,并在独立真实记录上检查对应区域的误差,再看闭环表现。修正模拟器不是一次性获得全局真实动力学,策略变化会重新提出数据支持问题。
六、沿机制关系继续读
ASAP承接Human to Humanoid等人体动作跟踪问题,专门学习现实响应差异;与动力学随机化是平行迁移手段,前者利用目标域记录做定向对齐,后者训练对参数分布的鲁棒性。
七、自测三题与参考答案
问题1:为什么ASAP有时要让模拟器的动作变弱?
答案:残差阶段的目标是复现真实系统响应,不是立即完成理想动作。如果真实电机比模拟弱,模拟必须先表现出这种限制。随后策略才在这个更真实的环境里学习如何补偿。
问题2:残差模型不用动捕就能部署,是否表示方法无需动捕?
答案:不表示。最终actor可只用本体状态与相位,但训练残差仍需要真实根部轨迹等记录,论文由动捕提供。部署输入成本和资料采集成本必须分开核算。
问题3:开环误差最低的残差模型为什么未必给出最好闭环表现?
答案:开环评价固定记录动作,闭环中策略会改变动作和访问状态。一个在原记录分布上拟合很准的模型,可能在微调后的新分布上失准。还要考虑误差方向、奖励相关性和策略对模型漏洞的利用,不能仅按预测MSE选择模型。