Home / 机器人学习 / ASAP:学习仿真与现实之间的动作差异

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. 对齐的是“同一个动作的后果”

记录真实状态动作序列 DrD_r。真实状态包括动捕获得的根部位置和姿态、机载关节与速度等信息。原动作在模拟器中重放后,轨迹会与真实记录偏离。

残差模型 Δψ(s,a)\Delta_\psi(s,a) 的目标是使

fsim(s,a+Δψ(s,a))≈freal(s,a).f_{\rm sim}\big(s,a+\Delta_\psi(s,a)\big)\approx f_{\rm real}(s,a).

左边是修改动作后的模拟响应,右边是真实机器人的原动作响应。方向不能倒过来理解:残差可能让仿真动作变弱,以复现真实电机不足,而不是“增强动作直到完成原参考”。

残差也用PPO训练,奖励衡量模拟轨迹与记录真实轨迹的接近程度,并约束残差大小与变化。用教学形式概括:

max⁡ψ E∑tγt[Rmatch(st,str)−λC(Δt)].\max_\psi\ \mathbb E\sum_t\gamma^t \left[R_{\rm match}(s_t,s_t^r)-\lambda C(\Delta_t)\right].

这里是概括结构,不是把论文多项指数追踪奖励改称单一欧氏损失。因为通过模拟交互获得回报,不要求物理模拟器对全部接触过程可微。

2. 在经过修改的模拟器里重学动作

冻结残差,定义

fASAP(s,a)=fsim(s,a+Δψ(s,a)).f_{\rm ASAP}(s,a)=f_{\rm sim}(s,a+\Delta_\psi(s,a)).

随后对原追踪策略继续PPO训练,奖励重新指向原本希望完成的参考动作。两个阶段的追踪对象不同:残差阶段追踪真实记录,包括其偏差;策略微调阶段追踪想要完成的动作。

如果此时真实机器人“弱”,策略就要在这个较弱的等效系统里学会调整起跳、重心或时序。部署时直接使用微调策略 πnew\pi_{\rm new};再加残差会将训练环境校正错误地叠加到真实系统,形成二次补偿。

3. 为什么用动作残差,而不是直接改状态?

状态残差模型可以直接预测下一状态偏差,但输出可能破坏接触和运动约束。动作残差则让状态仍由物理模拟器推进,保留部分物理结构。这是有益归纳偏置,不是证明动作残差一定能表达所有现实差异。

例如传感器延迟、柔性结构或隐藏热状态造成的差异,未必能由当前可见 s,as,a 的无记忆映射完整表达。模型能拟合的范围取决于状态表示、动作可控性及采样覆盖。

伪代码是§III的教学整理;残差训练时域是实验变量,不应把它简化成只做单步监督回归。

用一维动力学检查残差方向。教学设位置状态为 ss、动作为 aa、下一状态为 s′s';模拟器 s′=s+as'=s+a,真机 s′=s+0.8as'=s+0.8a,则让模拟器模仿真机的动作残差应为 Δ(a)=−0.2a\Delta(a)=-0.2a。在修正模拟器里,要前进1单位,策略会学到 a=1.25a=1.25;把这个动作直接给真机,恰好前进1。

若部署时又叠加残差,输入真机变成1,最终只前进0.8,反而重新欠驱动。这个算例假设线性、无饱和且残差准确,仅用于辨清方向;真实跳跃涉及接触、延迟和未覆盖状态。原文真机仅学习四维踝关节残差,不能据全身动作展示推成全身动力学已被辨识。原文§III与§IV-C

用一个例子建立理解

以下是未运行的教学例子。原模拟器对指令 aa 产生加速度 2a2a,真实系统只产生 aa。为了让模拟器复现真实动作,残差应取约 −a/2-a/2,使 2(a−a/2)=a2(a-a/2)=a。在这个修正模拟器中,策略会学习满足任务所需的更适合真实系统的指令。

若最终又把 −a/2-a/2 加到真机,真实系统反而只得到一半指令。这个极简例子忽略了非线性和接触,却清楚展示为什么部署时移除残差模型;它原本用于修改“训练环境”,并非直接给硬件增益补偿。

三、用真实下一步响应拟合残差并冻结再训练

残差让模拟器复现真机同一指令的后果,再由新策略在修正环境中找动作。真机执行只运行重训策略,不再把残差叠到真实命令上。

从视频恢复并清理人体运动,重定向为机器人参考
在原模拟器中以PPO训练相位条件追踪策略
在目标模拟器或真实机器人执行预训练策略
保存实际状态、实际动作及时间对齐的轨迹

训练残差模型:
    从记录轨迹抽取起点和片段
    模拟器执行 recorded_action + delta(sim_state, recorded_action)
    以接近记录轨迹和限制残差的奖励更新delta

冻结delta,嵌入模拟器动作入口
用原动作追踪奖励继续训练基础策略
在目标环境执行微调策略,不附加delta
分别测试轨迹复现误差和闭环任务表现

四、连接开环对齐误差与真实闭环跟踪

原图怎么读: 图10,原论文图注与图像。分开看数据规模、训练时域和残差动作范数,且区分开环误差与闭环误差。降低固定记录上的误差不保证微调后策略访问分布中的误差也更小。

ASAP: Aligning Simulation and Real-World Physics for Learning Agile Humanoid Whole-Body Skills,图10:分开看数据规模、训练时域和残差动作范数,且区分开环误差与闭环误差。降低固定记录上的误差不保证微调后策略访问分布中的误差也更小。
实验图原图摘引:Tairan He、Jiawei Gao、Wenli Xiao、Yuanhang Zhang 等,2025,HTML S5.F10,图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%,计算为 (80.8−37.9)/80.8(80.8-37.9)/80.8。但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: Aligning Simulation and Real-World Physics for Learning Agile Humanoid Whole-Body Skills,图11:怎样使用残差。 PPO微调优于单步固定点或梯度求解,支持让策略重新适应闭环动态;针对性残差也优于所试随机动作噪声。v1图12图注和正文分别给噪声基线173与150,故不据此计算精确增幅。它不能排除更充分调优的随机化方案。实验§IV–V
原图摘引:Tairan He、Jiawei Gao、Wenli Xiao、Yuanhang Zhang 等,2025,HTML S5.F11,图11。核对原文。怎样使用残差。 PPO微调优于单步固定点或梯度求解,支持让策略重新适应闭环动态;针对性残差也优于所试随机动作噪声。v1图12图注和正文分别给噪声基线173与150,故不据此计算精确增幅。它不能排除更充分调优的随机化方案。实验§IV–V
ASAP: Aligning Simulation and Real-World Physics for Learning Agile Humanoid Whole-Body Skills,图12:怎样使用残差。 PPO微调优于单步固定点或梯度求解,支持让策略重新适应闭环动态;针对性残差也优于所试随机动作噪声。v1图12图注和正文分别给噪声基线173与150,故不据此计算精确增幅。它不能排除更充分调优的随机化方案。实验§IV–V
原图摘引:Tairan He、Jiawei Gao、Wenli Xiao、Yuanhang Zhang 等,2025,HTML S5.F12,图12。核对原文。怎样使用残差。 PPO微调优于单步固定点或梯度求解,支持让策略重新适应闭环动态;针对性残差也优于所试随机动作噪声。v1图12图注和正文分别给噪声基线173与150,故不据此计算精确增幅。它不能排除更充分调优的随机化方案。实验§IV–V

五、残差覆盖范围限制未见运动迁移

ASAP最重要的观点是:不必准确辨识每个物理参数,也能通过动作接口学习一个对控制有用的等效真实环境。残差受模拟器约束,比任意修改状态更贴近现有物理结构,且部署不增加这部分模型计算。

但它不是无真实资料的迁移。动捕用于对齐训练轨迹,原策略虽可在最终执行时不依赖外部里程计,整个方法仍依赖动捕采集。作者明确报告电机过热与两台机器人不同程度损坏,这直接限制资料规模;因此四维真机设置是研究结论的重要条件。

我的分析是,残差存在不可辨识性:不同动作修正可能在某个状态附近产生相似结果,却在新状态下分歧。限制残差大小有助于避免过度修改,但不能保证学到唯一真实物理解释。

此外,相位策略对预定时间结构依赖较强。执行中出现大扰动,是否继续按原相位推进、暂停或重规划,需要额外机制。多个追踪策略间由行走策略接管保持平衡,也属于完整系统,而不是一个统一动作网络完成全部行为。

追问:残差只在旧策略访问的状态上拟合,重训策略后应检查什么?

参考答案:新策略可能进入旧数据未覆盖的姿态、速度或接触阶段,使残差成为外推。应比较前后状态动作覆盖,并在独立真实记录上检查对应区域的误差,再看闭环表现。修正模拟器不是一次性获得全局真实动力学,策略变化会重新提出数据支持问题。

六、沿机制关系继续读

ASAP承接Human to Humanoid等人体动作跟踪问题,专门学习现实响应差异;与动力学随机化是平行迁移手段,前者利用目标域记录做定向对齐,后者训练对参数分布的鲁棒性。

七、自测三题与参考答案

问题1:为什么ASAP有时要让模拟器的动作变弱?

答案:残差阶段的目标是复现真实系统响应,不是立即完成理想动作。如果真实电机比模拟弱,模拟必须先表现出这种限制。随后策略才在这个更真实的环境里学习如何补偿。

问题2:残差模型不用动捕就能部署,是否表示方法无需动捕?

答案:不表示。最终actor可只用本体状态与相位,但训练残差仍需要真实根部轨迹等记录,论文由动捕提供。部署输入成本和资料采集成本必须分开核算。

问题3:开环误差最低的残差模型为什么未必给出最好闭环表现?

答案:开环评价固定记录动作,闭环中策略会改变动作和访问状态。一个在原记录分布上拟合很准的模型,可能在微调后的新分布上失准。还要考虑误差方向、奖励相关性和策略对模型漏洞的利用,不能仅按预测MSE选择模型。