← 返回 PaperDaily 视觉与图像

World Translation登场:仿真到现实,靠“反向提取”补上动力学缺口

仿真到现实这道坎,难点从来不是“模型会不会猜”,而是“隐藏变量到底藏在哪”。这篇论文的思路很狠:既然前向历史不够用,那就从结果里倒着抠信息,再把仿真和现实的动力学特征做无配对翻译,路子新,而且实验也不虚。

World Translation登场:仿真到现实,靠“反向提取”补上动力学缺口
原论文信息如下:
论文标题:
World Translation: Minimizing Sim-to-Real Gap with Backward Dynamics Extraction and Unpaired Domain Translation
发表日期:
2026年07月
发表单位:
没有
原文链接:
https://arxiv.org/pdf/2607.18154v1.pdf

引言

仿真里跑得飞快,真机上一脚踩空——问题不在“仿真不够像”,而在于现实世界里有些关键信息根本看不见:接触瞬间的微小变化、负载晃动、外力扰动,都会让同一个观测-动作对走向不同的下一步。历史信息够用的时候,模型还能勉强猜;不够用的时候,模型就只能开始“平均答案”,结果看起来很平滑,实际一点都不聪明。
这篇论文的切入点很有意思:既然前向预测总被隐藏变量卡脖子,那就别老盯着过去不放,直接从已经发生的转移结果里把“看不见的动力学信息”倒着提出来。然后再把仿真和现实之间的这种动力学特征做无配对翻译,让模拟器负责提供可观测的转移,学习模型负责补上物理细节缺口。说白了,就是让仿真和现实别再各说各话,先把“动力学语言”统一一下。
这篇工作值得看的地方,不只是提出了一个新名字,更在于它把“历史不够用”这个老问题,换成了“结果里还能不能挖出信息”这个更直接的问题。对做机器人学习、世界模型、sim-to-real 的人来说,这个思路既有点反常识,也挺工程化:不靠配对数据硬怼,而是靠特征抽取、域翻译和真机验证把链条接起来。

方法概述

先把这套方法翻译成人话:它不是直接预测“下一步会怎样”,而是先从“这一步为什么会变成那一步”里提炼出一个中间特征,再把这个特征从仿真域搬到真实域,最后再解码成真实世界的下一步观测。整个链条可以理解成三段:倒着提信息跨域换皮再正着还原
图1:World Translation通过提取转移动力学特征并跨域翻译来弥合仿真到现实的差距
图1:World Translation通过提取转移动力学特征并跨域翻译来弥合仿真到现实的差距。黑色箭头表示训练阶段的数据流,蓝色箭头表示推理阶段:先把仿真中的动力学特征翻译到现实域,再解码成现实世界的下一步转移。
论文里把不可见因素分成两类:一类是时间变化的隐藏变量,比如接触、扰动、负载晃动;另一类是域特征,比如仿真和现实在摩擦、刚度、质量参数上的系统差异。前者决定“同样的输入为什么会走向不同结果”,后者决定“同样的隐藏变量为什么在两个域里表现不一样”。World Translation 的目标不是把所有不可见因素都一次性解决,而是把能从转移结果里恢复的那部分先抓出来,再把它翻到目标域去。
图2:不可观测因素的分类,以及World Translation能够捕获和不能捕获的部分
图2:不可观测因素的分类。传统动力学模型往往只能隐式学习时间不变的域特征,却难以在历史信息不足时显式捕获时间变化的隐藏变量;World Translation 通过反向提取补上这一块,但如果某些现象在仿真里压根不存在,那就属于“源系统里根本没货”,这部分是翻不出来的。
具体实现上,论文把反向提取做成了一个变分自编码器。输入不是单纯的当前观测,而是转移三元组:当前观测、动作、下一步观测。编码器先把这三者压成一个动力学特征 z,解码器再用当前观测、动作和 z 去重建下一步观测。这个设计的关键点在于:z 不是拿来背答案的,而是拿来装“导致这次转移发生的隐含原因”
为了防止编码器偷懒,论文还加了两个辅助设计。一个是“盲解码器”,只看 z 不看当前观测和动作,如果它还能把下一步观测猜得太准,说明 z 里塞的不是抽象动力学,而是直接把答案背进去了;于是训练时就要惩罚这种捷径。另一个是域分类器和 FiLM 调制,目的不是让模型更会“认域”,而是强迫 z 真的把域差异也编码进去,这样后面的跨域翻译才有东西可翻。
这一步很像给编码器上了一道“别装傻”的约束:既要保留隐藏变量信息,又要把域信息装进去,还不能把原始观测直接抄进去。听起来有点拧巴,但这正是这类方法最现实的难点——既要抽象,又不能抽空;既要跨域,又不能丢物理

核心设计

如果把这篇论文的核心设计压缩成一句话,那就是:先从结果里提隐藏原因,再把隐藏原因翻译到目标域。这个思路和常见的前向世界模型不一样。常规方法更习惯沿着“过去 → 未来”往前推,而本文偏偏反着来,理由也很朴素:有些关键因素根本不在历史里,硬从历史里找,最后只能得到一个“差不多”的平均状态。
反向提取的价值在于,它用已经发生的转移结果来监督表示学习。只要某种隐藏变量会在下一步观测里留下可辨识的痕迹,编码器就有机会把这部分信息吸进 z。这比单纯依赖历史更稳,因为历史可能什么都没告诉模型;但结果已经摆在那儿,接触发生了就是发生了,外力施加了就是施加了,模型没理由装看不见。
图3:三种机器人平台上的仿真环境
图3:三种机器人平台上的仿真环境。左侧是在人形机器人上做不规则地形行走,中间是四足机器人携带负载,右侧是机械臂在外力扰动下工作。论文故意选了这三类任务,就是为了覆盖“接触难预测”“负载难建模”“外力难恢复”三种典型场景。
但只做反向提取还不够,因为这个 z 是从某个域里提出来的,换到另一个域之后,往往会带着“原产地口音”。同一个隐藏变量,在仿真和现实里造成的转移模式并不完全一样;这时候如果直接把仿真提出来的特征拿去解真实世界的下一步,模型就会出现“语义差不多,物理不对劲”的问题。所以论文在反向提取后面接了一层无配对域翻译,让特征先换成目标域风格,再交给解码器。
这里用的是 CycleGAN 式的循环一致性约束,但翻译对象不是图像,而是动力学特征。这个选择很关键。图像翻译里,颜色、纹理、光照可以直接当“风格”;而动力学特征里,域差异更像是摩擦、刚度、质量分布、执行器响应这些系统性偏差。把翻译放在特征空间,等于先把“物理相关内容”抽出来,再只对“域风格”动手,避免直接在观测空间里乱改导致物理语义被污染。
图6:R5机械臂任务上的动力学特征可视化
图6:R5机械臂任务上的动力学特征可视化。左图里仿真和现实特征明显分开,说明域差异确实被编码进去了;右图里翻译后的仿真特征和真实域特征对齐,说明无配对翻译不是在瞎搅和,而是在尽量保留动力学语义的前提下做域迁移。
训练流程上,VAE 负责把转移压成动力学特征,盲解码器和域分类器负责逼出更有信息量的表示,CycleGAN 负责把这个表示从仿真翻到现实。部署时则更直接:先在仿真里拿到转移,再把仿真特征翻译到现实域,最后重建成“像真实世界会发生的下一步”。这意味着训练时不需要成对的仿真-现实转移样本,工程上少了一大块最难收集的数据。
图7:观测级翻译训练会直接崩掉
图7:观测级翻译训练会直接崩掉。判别器太容易从当前观测和动作里识别域差异,生成器几乎拿不到有用梯度,结果不是“学会翻译”,而是“训练现场翻车”。这也解释了为什么本文坚持把翻译放在动力学特征空间,而不是直接对下一步观测动刀。
这套设计的妙处在于,它把两个原本互相补短板的对象拼在了一起:模拟器擅长完整状态和确定性,学习模型擅长从数据里补物理偏差。前者能看到转移,后者能学到真实世界里那些没写进公式的东西。World Translation 不试图强行证明哪一边更强,而是让两边各干最擅长的活。

数据准备及实验设计

实验设计整体比较扎实。论文选了三类平台:人形机器人、四足机器人、机械臂;每类平台再分成低隐藏变量影响和高隐藏变量影响两种条件,用来专门测试模型到底是在学动力学,还是只是在记历史。
更具体一点,G1 人形机器人在平地上做速度跟踪时,隐藏变量影响较小;换到不规则台阶后,脚部接触变得不可预测,隐藏变量影响陡增。Go2 四足机器人在无负载时相对简单,挂上一个会自由晃动的球盒之后,系统里就多了一个非常烦人的动态扰动源。R5 机械臂在目标位姿跟踪时也类似:没有外力时比较规整,加入 0 到 200 牛的外力扰动后,动力学关系会明显变复杂。
图3:三种机器人平台上的仿真环境
图3再次出现不是重复,而是因为这组三平台设计本身就是实验的骨架。它把“接触事件”“负载晃动”“外力冲击”三种最常见、也最难靠历史恢复的因素都覆盖到了,基本能看出方法到底是普适有效,还是只对某一类任务有点小聪明。
对比基线也选得比较合理。Direct Prediction 只看当前观测和动作,能直接反映隐藏变量带来的难度;Raw Simulation 则是原始仿真输出,主要体现仿真与现实的域差;Residual Dynamics 和 RSSM 则代表两类更强的历史建模和残差修正路线。这样一来,World Translation 的优势不是跟一个弱基线比出来的,而是同时要跨过“历史不够”和“域不对”两道坎。
评估协议上,单步预测采用 teacher forcing,也就是每一步都喂真实观测,专门看动力学建模准不准,不让误差累积把结果搅乱。多步 rollout 则更像真机闭环:每一步都用预测状态继续往前滚,测试长期稳定性和误差放大情况。这个设计比较老练,因为单步和多步其实考的是两件事,混在一起很容易把结论搞糊。

实验结果

先说结论:World Translation 不是那种“某个指标好看一点”的方法,而是在多个平台上都把误差压下去了,尤其是在历史信息恢复不了隐藏变量的时候,优势最明显。这个结果和论文的核心假设是吻合的——如果问题本质上是“历史不够用”,那从结果里反向提取自然更有戏。
图4:三平台上的动力学建模误差对比
图4:三平台上的动力学建模误差对比。左边是 teacher forcing 评估流程,右边是不同方法在三种平台上的均方误差。可以明显看出,World Translation 在低隐藏变量任务上已经有优势,而在高隐藏变量任务上优势更大,说明它确实更擅长处理历史无法恢复的那部分信息。
从结果结构看,Direct Prediction 和 Raw Simulation 刚好对应了两种典型失败模式:前者暴露隐藏变量造成的不确定性,后者暴露域差异造成的偏移。World Translation 同时比这两类参考都更好,说明它不是只修一个洞,而是把“看不见的动力学”和“仿真现实不一致”一起处理了。Residual Dynamics 在部分场景里有改善,但在高隐藏变量任务上不稳定;RSSM 作为更强的历史模型,确实比简单前向预测更稳,可一旦历史本身不提供信息,它也会撞墙。
这点其实挺关键。很多方法喜欢把问题解释成“模型容量还不够”,于是一路加参数、加记忆、加门控,最后发现不是模型太弱,而是信息源本来就不够。World Translation 的结果说明,当历史里没有答案时,继续往历史里堆模块,收益会很有限;换个角度从结果里提取,反而更直接
图5:Go2高隐藏变量任务上的多步滚动结果
图5:Go2高隐藏变量任务上的多步滚动结果。这里看的是长期滚动时的发散率和误差。RawSim 天生不会发散,但误差上限也很明显;DirectPred 和 ResidualDynamics 容易在闭环里迅速漂掉;World Translation 在较长时间范围内保持了更好的稳定性和误差平衡,说明它不只是单步准,往前滚也还算能打。
多步结果里有个很现实的细节:某些状态覆盖式方法在长期滚动时会把物理引擎内部状态搞得不一致,短期看起来像修好了,长期却会慢慢积累数值问题。World Translation 的表现比较像“先把目标转移学对,再让仿真按这个目标走”,所以稳定性更好。不过论文也坦白承认,长时程下误差仍然会累积,这并不是银弹。
表示分析也挺有说服力。R5 机械臂上,论文用一个探针去预测隐藏外力,发现只看 (o,a) 时已经能泄露不少隐藏变量信息,但加入 z 后,预测能力能接近完整转移的水平。翻译后的特征还能保留这种可预测性,说明跨域翻译并没有把隐藏变量语义洗掉。
*表格超出部分左右可以滑动
输入 w/o Full
(o,a) 基线0.73
(o,a)0.660.78
(o,a,ot+1)0.73
Combined (o,a,z)0.810.80
R 域0.680.72
S→R0.670.68
o,a H S0.750.78
o,a Z0.780.78
(o,a) R Z0.670.67
表1对应的是隐藏变量信息恢复能力。虽然原文表格排版有些乱,但核心意思很明确:完整模型在保留隐藏变量语义上没有掉链子,辅助组件的加入也没有把这部分信息冲掉。换句话说,它不是只会“翻域”,而是还能把该保留的动力学内容保住。
*表格超出部分左右可以滑动
输入 目标 w/o Full
(o,a)SS0.7894
(o,a)RR0.8479
zSS0.67290.9407
zRR0.64120.9365
zS→RR0.42880.9124
R→S zS0.49360.8327
表2则是在看“域信息有没有真的被装进 z 里”。没有辅助组件时,z 的域可分性不够强,翻译后甚至会跑偏;加上域分类器和 FiLM 后,z 的域信息显著增强,翻译后的特征也更像目标域。这个结果说明辅助设计不是装饰品,而是跨域翻译能否成立的关键。

实战检验:真狗机器人表现如何?

论文最让人放心的一点,是没有只停留在仿真里自嗨,而是把方法放到 Go2 真机上做了部署验证。这个环节很重要,因为 sim-to-real 的文章如果只在仿真里讲得天花乱坠,最后往往会被现实世界一脚踢回去。
真机任务仍然是带负载的四足行走。论文先用 20 分钟真实世界转移数据训练翻译模型,再用翻译后的动力学预测去微调策略。这里的重点不是“采了多少数据就一定赢”,而是它用无配对方式把真实世界里最难搞的部分——负载摆动、接触扰动、动力学偏差——尽量融进训练目标里。
图5:Go2高隐藏变量任务上的多步滚动结果
虽然图5主要还是仿真多步滚动,但它和真机结果是连在一起看的:如果仿真里都已经不稳,真机上只会更惨。World Translation 在长时程上保持了相对稳定的误差和较低的发散率,这给后面的真机微调提供了一个更可信的动力学底座。
图3:三种机器人平台上的仿真环境
图8在原文里展示的是 Go2 的真实部署场景,可惜给出的材料里没有对应图片路径,因此正文只能借助任务设定来说明。真机评估最有意思的地方在于,它不是简单比“能不能走”,而是比角速度跟踪误差、姿态稳定性和功耗。结果显示,World Translation 在跟踪精度上最好,稳定性和功耗则大致持平或略有权衡,说明它更像是把策略推向了“更会跟”的方向,而不是一味保守。
这类结果的意义,比单纯在指标上多赢一点更实在。因为对真实机器人来说,跟踪更准往往就意味着更少的控制偏差、更少的补偿动作、更少的“看起来能跑,实际上很累”。当然,论文也没有把这个结果吹成万能:稳定性和功耗没有出现压倒性优势,说明方法主要解决的是动力学建模和迁移精度,不是把整个控制栈一次性改写。

局限与展望:不是银弹,但潜力无限

这篇论文最值得肯定的地方,是它没有把问题说得过满。World Translation 解决的是“在观测历史不够用时,如何从转移结果里恢复动力学信息,并把它跨域搬运”的问题;它并不能凭空补出仿真里根本不存在的物理现象。换句话说,它修的是表达和迁移,不是创造物理
它的另一个边界在于,反向提取依赖于隐藏变量确实会在结果里留下可识别痕迹。离散接触事件通常很适合这套思路,连续外力也能做,但效果往往更依赖任务设置和观测质量。再往前想一步,如果未来要扩展到视觉输入,问题会更难,因为那时不仅有动力学差异,还有外观差异,特征解耦会更麻烦。
不过从工程视角看,这个方向还是很有价值的。它把 sim-to-real 里一个老掉牙但一直没彻底解决的问题,拆成了两个更可操作的子问题:先把隐藏动力学从结果里抠出来,再把这些特征跨域对齐。这个拆法不花哨,但很像真正能落地的研究:不靠玄学,不靠堆词,靠的是数据流、约束设计和实验闭环。

龙迷三问

下面是龙哥对于大家可能的一些问题的解答:

为什么不直接把历史信息堆得更长一点?因为历史并不总是有用。接触事件、突然受力、负载晃动这类现象,很多时候在发生前根本没有足够的前兆,继续依赖历史只会把模型逼成“会背题但不会做题”。本文的关键价值,就是承认历史有上限,然后改从结果里找线索。

它和普通的残差动力学、系统辨识到底差在哪?残差动力学更像在修仿真误差,系统辨识更像在调参数,而 World Translation 更像先把“隐藏原因”抽成一个特征,再把这个特征翻到目标域。它不是只修模型输出,而是把动力学表示本身变成跨域可迁移的对象。

这类方法最可能先落地在哪些场景?更适合接触频繁、隐藏变量会在转移结果里留下明显痕迹的任务,比如足式机器人、不规则地形行走、带负载移动、机械臂受外力扰动等。若任务本身几乎没有可辨识的动态差异,或者仿真里压根没建到关键物理,那这套方法的收益就会明显缩水。

如果还有想追问的细节,欢迎在评论区继续聊,尤其是机器人 sim-to-real、世界模型和特征翻译这一块,确实还有不少值得掰开揉碎看的地方。

龙哥点评

论文创新性分数:★★★★☆。把“从结果里反推隐藏动力学”再接“无配对域翻译”拼成一条链,思路不算套路,且针对的是 sim-to-real 里很实际的痛点。

实验合理度:★★★★☆。三平台、单步、多步、表示分析、真机部署都覆盖到了,实验结构比较完整,不是只挑好看的指标。

学术研究价值:★★★★☆。它把历史不足的问题改写成可观测转移中的信息恢复问题,这个视角对世界模型和机器人迁移都挺有启发。

稳定性:★★★☆☆。训练目标不少,VAE、盲解码器、分类器、CycleGAN 一起上,稳定性需要权衡,但论文也承认了这点。

适应性以及泛化能力:★★★★☆。在隐藏变量难恢复时优势更明显,说明它对“信息不完整”的场景确实更友好。

硬件需求及成本:★★★☆☆。不需要成对真机数据是优点,但训练和调参链条不短,工程复杂度不低。

复现难度:★★★☆☆。模块多、损失多、任务也不轻,复现不算简单,不过思路清晰,至少不是黑箱玄学。

产品化成熟度:★★★☆☆。离大规模落地还有距离,但在仿真训练、真机微调、负载行走等场景里已经有比较明确的应用方向。

可能的问题:它解决的是“可恢复的隐藏动力学”和“域风格迁移”,不是补齐仿真中完全缺失的物理;另外,多模块联合训练带来的稳定性和长时程误差累积,仍然是后续绕不开的老问题。


主要参考文献

J. Hwangbo, J. Lee, A. Dosovitskiy, D. Bellicoso, V. Tsounis, V. Koltun, and M. Hutter, “Learning agile and dynamic motor skills for legged robots,” Science Robotics, vol. 4, no. 26, p. eaau5872, 2019.
J. Tobin, R. Fong, A. Ray, J. Schneider, W. Zaremba, and P. Abbeel, “Domain randomization for transferring deep neural networks from simulation to the real world,” in 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2017, pp. 23–30.
Y. Chebotar, A. Handa, V. Makoviychuk, M. Macklin, J. Issac, N. Ratliff, and D. Fox, “Closing the sim-to-real loop: Adapting simulation randomization with real world experience,” in 2019 International Conference on Robotics and Automation (ICRA). IEEE, 2019, pp. 8973–8979.
D. Hafner, T. Lillicrap, I. Fischer, R. Villegas, D. Ha, H. Lee, and J. Davidson, “Learning latent dynamics for planning from pixels,” in International conference on machine learning. PMLR, 2019, pp. 2555–2565.
D. Hafner, T. Lillicrap, J. Ba, and M. Norouzi, “Dream to control: Learning behaviors by latent imagination,” in International Conference on Learning Representations (ICLR), 2020.
J.-Y. Zhu, T. Park, P. Isola, and A. A. Efros, “Unpaired image-to-image translation using cycle-consistent adversarial networks,” in Proceedings of the IEEE international conference on computer vision, 2017, pp. 2223–2232.
E. Perez, F. Strub, H. De Vries, V. Dumoulin, and A. Courville, “Film: Visual reasoning with a general conditioning layer,” in Proceedings

仿真到现实,最难的不是“像”,而是“像得对”。如果这篇 World Translation 让人看懂了动力学怎么翻译,欢迎来『龙哥读论文』继续拆论文、聊机器人、看真机落地。想进群的同学,扫描下方二维码或加龙哥助手微信 kangjinlonghelper,备注“研究方向+地点+学校/公司+昵称”,更快通过~

转发文章 微博 X LinkedIn Facebook
龙哥读论文 · PaperDaily

本文基于龙哥读论文 PaperDaily 数据库整理,结合论文原文与工程视角进行解读。