机器人仿真为什么难?
开发一台能自主完成复杂任务的机器人,离不开大量的测试与验证。然而,真实世界的测试昂贵、耗时且难以复现。让一台机械臂在真实环境中试错成千上万次,意味着设备、人力、场地和时间成本都要持续投入。更麻烦的是,真实环境很难完全复现,光照、物体位置、桌面状态等,只要其中一个条件变化,测试结果就可能受到影响。
传统仿真器,例如 Isaac Sim、MuJoCo,提供了一种替代方案:在虚拟环境中验证算法,再迁移到真实世界。但这条路同样崎岖,手工构建仿真场景本身就是一项浩大的工程。3D建模、材质设定、物理参数调校等,每一个新环境都可能需要数天甚至数周的搭建。
有没有一种方法,能像生成图片和视频一样“生成”一个仿真环境?更进一步——能不能像真正的仿真器那样,做到逐帧交互、逐帧闭环?
Uranus:一帧一反馈的世界模型
地瓜机器人算法团队提出了Uranus,一个基于视频扩散模型、工作在帧级闭环模式下的交互式世界模型。它将机器人仿真从“手工搭建”推进到“数据驱动”的全新范式。
给定几帧参考图像、机器人关节状态、相机参数和一句文本描述,模型就能自回归地生成多相机视角下连续、可控的未来视频流,用于模拟机器人与环境的交互过程。
Uranus 模型架构:模型在参考帧和历史帧约束下,根据输入的动作通过 flow matching 生成下一帧。
帧级闭环是 Uranus 的核心能力。与传统的“输入一段动作、一次性输出整段视频”的开环生成不同,Uranus 的工作方式更像一个真正的仿真器:按帧推进生成过程,并将每一帧结果反馈给下一步预测,使动作指令可以在过程中实时调整。
具体来说,这一过程分为三步:
- 每一步只生成一帧:模型根据当前观测(参考图 + 历史帧)和动作指令,预测下一时刻的多相机画面
- 生成结果立刻反馈:新生成的帧被追加到历史窗口中,成为下一步预测的条件
- 动作可以实时调整:因为是一帧一帧推理的,你可以在任意时刻改变动作指令,模型会立刻响应
这相当于一个帧级的“视觉数字孪生”:给定初始画面和机器人模型,开发者可以像操作真实机器人一样,生成画面中逐步“驾驶”Uranus,而这一过程不需要手工 3D 建模。
四个能力,让生成模型更接近仿真器
1. 让不同机器人说同一种“图像语言”
传统方法通常需要为每种机器人单独适配或训练模型。Uranus 则通过统一的骨架渲染管线彻底解耦了具身结构与模型输入:
- 只需提供 URDF 或 MJCF 格式的机器人描述文件,结合关节位置(qpos)
- 系统自动通过前向运动学(FK)计算 3D 关节坐标,投影到相机平面渲染为骨架图
- 同一个模型即可支持G1 人形机器人、Franka 协作臂、双臂系统乃至移动平台
换言之,一个模型,支持多种具身;训练一次,即可在不同机器人本体上复用。
这对闭环交互至关重要。因为在闭环模式下,模型每时每刻都在接收自己上一帧的预测结果作为输入。如果模型只能处理单一机器人,每换一个本体就要重新训练,闭环的泛化性就无从谈起。Uranus 的骨架渲染管线让不同机器人的动作都落到同一个“图像语言”里,这样无论驱动的是 G1 还是 Franka,模型看到的是统一格式的骨架图。
2. 闭环跑得更久,画面不容易漂
帧级闭环的难点在于误差会不断累积。每一步的微小预测误差都会作为历史条件喂入下一步,几十步之后,画面可能开始漂移,甚至出现明显失真。这也是很多视频生成模型只能稳定生成几秒钟片段的重要原因。Uranus 通过三项关键设计突破了长时闭环生成的瓶颈:
- 因果注意力掩码(Causal Mask):确保每一帧只能看到历史上下文,严格遵循自回归闭环的因果结构
- 帧相对位置编码(Frame-Relative RoPE):让模型在训练时只见过短片段,推理时却能泛化到任意长度的闭环 rollout
- 参考帧注意力汇(Reference Sink):利用 Transformer 中天然存在的“注意力汇”现象,将初始参考帧永久保留在上下文窗口中作为视觉锚点——无论闭环跑多少步,模型始终有一个“干净的起点”可以参考,有效抑制画质漂移
在这些设计支持下,Uranus 可以在训练只用 2 秒片段的情况下,在推理阶段稳定生成 60s 级别的闭环视频,并保持较好的画面连续性。
训练 2 秒,闭环60秒,这也是 Uranus 长时闭环生成能力最直观的体现。
3. 多个相机,看到同一个世界
机器人通常配备多个相机。以操作任务为例,机器人可能同时使用腕部相机、环境相机等多路视觉输入。Uranus 支持同步生成 3 路以上相机视角,并保持不同视角之间的空间一致性。
为此,Uranus 设计了交替式空间-时间注意力机制:
- 空间模式:同一时刻不同相机之间交换信息,保证多视图几何一致性
- 时间模式:同一相机沿时间轴建模运动动态,在闭环推理时,只有这些层需要建立 KVCache
这两种模式在 DiT 的各层之间交替执行,兼顾了计算效率与生成质量。
4. 相机可以移动,观察角度更灵活
除了动作可控,Uranus 还支持相机轨迹控制。通过Plücker 射线嵌入,模型可以将每一帧的相机外参和内参编码为逐像素几何特征。这种表示完全由相机标定参数直接决定,无需额外任何学习。
在闭环交互场景中,开发者这意味着你可以像操作传统仿真器一样,在任意时刻移动相机位置和角度。模型会根据新的相机参数,在下一步生成对应视角的画面。
这意味着,Uranus 不只能模拟机器人动作,也能支持动态观察:既可以看整体环境,也可以切换到末端视角,观察机器人与物体的接触过程。
两个 Demo:G1 与 Franka 的闭环操作
以下演示展示了 Uranus 在帧级闭环模式下,对两种不同机器人、不同轨迹的交互仿真效果。
Demo 1:G1 人形机器人闭环操作
G1 机器人在不同场景下执行多种操作轨迹,Uranus 在多相机视角下实时生成连续交互画面。
[agibot_demo.mov]
演示内容:G1 机器人完成商品条码扫描,三路相机视角同步输出,帧级闭环连续 Rollout。
Demo 2:Franka 协作臂闭环操作
Franka 机械臂在不同环境和轨迹下的操作效果,展示模型的跨本体具身泛化能力和对复杂末端轨迹的响应能力。
[droid_demo.mov]
演示内容:Franka 机械臂完成物品抓放,展示闭环模式下对末端执行器姿态、夹爪开合的控制能力。
技术架构速览:输入动作,生成下一帧
从架构上看,Uranus 是一个由动作和相机轨迹共同约束的多视角交互视频模型。
模型接收参考帧、历史帧、机器人动作、相机参数和文本描述,基于预训练的Wan 2.1 视频 DiT骨干,通过 Flow Matching(逐步去噪)生成下一帧画面。新生成的画面继续进入历史窗口,参与下一步预测,从而形成帧级闭环。
Uranus:动作和相机轨迹约束的多视角可交互视频模型。
模型提供1.3B 和 14B两个参数规模,分别适用于快速实验和高保真闭环生成场景。
让逐帧生成真正跑起来
帧级闭环对工程效率提出了严苛的要求。每生成一帧,都需要完成一次完整的去噪扩散过程,如果每一步都从头计算注意力,计算开销会随着序列长度快速增长。
为降低推理成本,Uranus 引入了KV-Cache 和滑动窗口机制:
- 预填充阶段:参考帧和历史帧的 Key/Value 被计算并缓存
- 去噪阶段:当前帧只计算自己的 Key/Value,与缓存中的历史拼接即可完成注意力——无需重复计算
- 滑动窗口淘汰:当历史帧超过窗口大小时,自动淘汰最旧的帧,保证每步开销恒定
训练侧,Uranus 采用HSDP、序列并行 和 VAE Tile 并行的混合策略,支持 64 GPU 规模训练。通过参数分片、数据并行、序列并行等方式,系统可以处理高分辨率、多视角、长序列视频训练带来的显存和通信压力。
推理阶段,Uranus则通过KV-Cache、+ 滑动窗口淘汰和+ 序列并行机制,减少重复计算,让每一步的延迟和显存占用保持相对稳定——无论生成多少帧,开销不变,以支持多环境并行实时 Rrollout。
从生成视频,到交互式仿真
Uranus 重新定义了“用生成模型做仿真”这件事。
帧级闭环是 Uranus 区别于一般视频生成模型的核心特性。正是因为它能一帧一帧地接收动作、一帧一帧地产出画面、再将画面反馈给下一步,它才能成为一个真正可用的交互式仿真器,而不是一个只能“播放”的视频生成器。
围绕 Uranus同时,地瓜机器人正在探索一种新的机器人仿真构建方式:我们
- 不再需要手工搭建 3D 场景
- 不再为每种机械臂单独训练模型
- 不再受限于秒级的生成长度
- 用数据驱动的方式,让机器人在“想象”中学会与世界交互
真实世界测试仍然是机器人开发中不可替代的一环。Uranus 的价值,在于为真机测试之外的训练、评测和策略迭代提供新的工具,让机器人能够在更可控的环境中完成更多轮试错。
地瓜机器人将持续推进 Uranus 的技术迭代,并在后续公布完整技术报告、训练细节和定量实验结果。
热门跟贴