SuperMimic:单卡三小时跑赢 128 卡集群,省下的算力从哪来
CoRL 2026 的最佳论文 SuperMimic(UC Berkeley,Qiayuan Liao 等)做的事一句话能说清:人形机器人的动作千差万别,但执行动作的是同一具身体——把这套共享的刚体动力学学成一个可微世界模型,让策略梯度直接从模型里流出来。结果是:在 129,514 段动作的基准上,此前最强的动作跟踪器 SONIC 用 128 张 L40 训 7 天(约 21,000 GPU 小时),发布的 checkpoint 归一化回报 0.90、失败 179 段;SuperMimic 一张 H100 训 3 小时就超过这个回报(失败 25 段),双卡 9.8 小时后零失败,GPU 小时数降了 1000 倍以上,策略还能直接迁到真机 Unitree G1。省下的一千倍来自一个替换:把策略梯度从「黑盒采样估计」换成「穿过学出来的模型反向传播」。
背景:动作跟踪的算力墙
Physics-based motion imitation(物理动作模仿)是人形全身控制的主流路线:RL 策略跟踪 mocap 参考动作,从 DeepMimic(2018)一路走到今天。参考动作告诉机器人接下来该怎样移动,控制器持续输出关节指令把动作真正做出来——身体一旦偏离目标,还要调整后续动作,兼顾跟踪和稳定。
要覆盖更多动作,现有两条路:把大量片段专家蒸馏进一个控制器(BeyondMimic),或者在超大动作库上直接硬训一个通用策略(SONIC)。共同前提是「动作库越全、控制器越强」,代价也随之而来——SONIC 用了 611 小时的动作数据、128 卡集群训 7 天。
浪费在哪?参考动作各不相同,执行它们的却是同一具 29 自由度的身体,动力学完全相同。Model-free RL(PPO)不显式建模这个共享结构:它把仿真器当黑盒,用带噪声的采样轨迹一遍一遍重新估计「这个动作会带来什么」。动作库翻倍,试错量跟着翻倍——扩展动作覆盖变成扩展算力。
方法:一个闭环,两个学习者
训练就是图上这个循环,转一圈算一次迭代,分三个阶段。
① 采集。 当前策略在 MuJoCo Warp(GPU 版 MuJoCo)里并行跑 4096 个环境,动作上加噪声 ε ~ N(0, 0.1²)——它只为拓宽世界模型拟合的动作分布,策略本身是确定性的,不靠噪声探索。状态转移连同本回合的仿真上下文 ξ 一起灌进定长回放缓冲区,新替旧。
② 拟合世界模型。 从缓冲区采 k=8 步的自回归窗口,从记录状态起跑、沿记录动作前滚,最小化四项误差:
$$\mathcal{L}_{\text{WM}}(\omega)=\mathbb{E}_{\mathcal{B}}\sum_{j=1}^{k}\Big[\lVert\hat{s}_{j}-s_{j}\rVert^{2}+(\hat{r}_{j}-r_{j})^{2}+\lVert\hat{\bar{o}}_{j}-\bar{o}_{j}\rVert^{2}+\mathrm{BCE}(\hat{d}_{j},d_{j})\Big]$$
四项分别是状态预测、奖励预测、无噪观测预测的均方误差和终止概率的交叉熵;世界模型是确定性的 MLP:ŝ_{t+1} = f_ω(ŝ_t, a_t, ξ),ξ 收编了摩擦、关节校准偏移、躯干质心这些领域随机化参数——已知的噪声来源都显式给了条件,网络学的是「给定条件下的干净动力学」,传感器噪声在模型外面采样后加回去,不进动力学。注意窗口是自回归的:第 j 步的输入是第 j−1 步的预测 ŝ_{j−1},模型被迫学会纠正自己的误差——这是它后面能支撑 32 步想象展开的前提。
③ 改进策略。 冻结模型,从缓冲区状态起跑 H=32 步想象 rollout,对想象回报做 BPTT:
$$\hat{J}(\theta)=\mathbb{E}\Big[\sum_{t=0}^{H-1}\gamma^{t}\hat{c}_t,\hat{r}_{t+1}+\gamma^{H}\hat{c}_H,V_\psi(\hat{s}_H,g_H,\xi)\Big]$$
前半是窗口内的折扣奖励,后半由评论家 V_ψ 引导窗口之外的回报;梯度沿 32 步想象链回传,直接落到策略参数上。这就是它和 PPO 的全部区别:PPO 用采样轨迹的回报给 logπ 打权(likelihood-ratio 估计,方差大),BPTT 对每个动作直接求回报的导数(短时程内信号强得多)。
两处设计值得停一下。
存活权重把终止变软,评论家不是可选项。 仿真器给硬终止标签,模型改预测终止概率 d̂ ∈ [0,1],回报里的存活权重 ĉ_{t+1} = ĉ_t(1−d̂_{t+1}) 于是可微——BPTT 能穿过「这一步会不会死」。评论家负责 H=32 步窗口之外的回报:没有它,H≤16 直接训不动;有它,16 步顶 32 步。0.5–4 m/s 推扰测试里,带评论家的策略 0.5–2.4 秒内站稳,没有的一直踉跄、4 m/s 直接摔——恢复类奖励落在窗口之外,只有 bootstrap 看得见。
梯度从不穿过仿真器。 模型从仿真记录里学,梯度只在学到的模型上算,MuJoCo 的接触和摩擦完全不必可微——任何刚体仿真器,包括非光滑接触、不可微实现的,都照用。仿真器只负责出数据;而动力学不依赖采集它的策略,早期策略的转移照样能拟合模型,缓冲区里的旧数据不会过期——所以世界模型和策略每个迭代同步更新,不需要先预训练好再冻结。
实验结果
设置与口径
仿真器 MuJoCo Warp,50 Hz 控制(内部四个 5 ms 子步),每卡 4096 个环境。策略输出 29 维动作,映射为关节 setpoint(低 PD 增益下近似力矩代理);观测是 93 维本体感觉(关节位置/速度、IMU 角速度、重力投影、上一动作)取最近 10 帧;目标接口把未来 10 帧参考动作编码成 32 维潜变量(tanh 有界),与观测历史一起进共享解码器。世界模型是完整状态上的 MLP(2048×3),评论家 MLP(256,128)。动作库用 BONES-SEED 公开子集,过滤后 129,514 段、264.56 小时。
对照基线沿用 BeyondMimic 的设置,动了四处,都有明确理由:
| 项 | BeyondMimic | SuperMimic | 为什么 |
|---|---|---|---|
| 自碰撞惩罚 | 有 | 删 | 防的是随机策略蹭奖励的 exploit,确定性策略下无利可图 |
| 关节限位惩罚 | −10 | −2 | 同上,威慑需求降低 |
| 根速度推扰随机化 | 有 | 移除 | 推击造成状态跳变,确定性世界模型表达不了;仅物理参数随机化就够迁到真机 |
| 终止条件 | 高度/倾角/末端偏差 | 只留高度(0.25 m)与倾角(≈78°) | 末端偏差不再触发终止,交给奖励处理 |
评测口径:每段动作从首帧播一遍(摩擦 1.0、无随机化、确定性物理),触发训练终止即算失败;归一化回报 = 全回合无折扣奖励和 ÷ 最大可能值。所以这组数字衡量的是训练覆盖,不是未见动作的泛化。
主结果
| SONIC | SuperMimic | |
|---|---|---|
| 方法 | 仿真器里的 model-free PPO | 穿过一个世界模型做 BPTT |
| 硬件 | 128 × L40 | 1 × H100(另有双卡 9.8 h 版本) |
| 训练时长 | 168 h(7 天) | 3 h 即超过其回报 |
| GPU 小时 | ≈ 21,000 | 3(双卡版 ≈ 20) |
| 动作数据 | 611 h | 264.56 h(公开子集,少 2.3 倍) |
| 归一化回报 | 0.90 | > 0.90 |
| 失败动作 / 129,514 | 179 | 25(3 h)→ 0(双卡 9.8 h) |
失败的构成比总数更有信息量:SONIC 的 179 个失败里,包含全部 44 个翻转和全部 22 个侧滚——集群训出来的最强基线,恰恰在最需要全身协调的动作上全军覆没。SuperMimic 单卡 3 小时后侧滚只剩 2 个失败、跳跃类全过,双卡 9.8 小时全部归零。
公平性论文自己算过账:SuperMimic 的动作数据少 2.3 倍,H100 的 fp32 峰值只有 L40 的 0.74 倍(tensor 峰值 5.5 倍)——2.3 倍的数据差距加上最多 5.5 倍的峰值算力差距,解释不了 1000 倍。3 小时还是保守说法:从那时起,每个 checkpoint 在回报和失败数上都至少领先 SONIC 一半差距。
收益来自哪里
| 收益来源 | 对照实验 | 数字 |
|---|---|---|
| 想象比仿真快 | 神经世界模型 vs MuJoCo Warp 的吞吐(H100;一步 = 一个 50 Hz 控制步) | 实践批大小(2k–16k 并行环境)下 >10×;64k 并行时 62× |
| 解析梯度省样本 | 同一个世界模型上,把 BPTT 换成 PPO(PPO-WM) | 达到 PPO-WM 最佳训练回报,想象步数只用 ≈ 1/64 |
| 一个模型摊平动作库 | 数据 1 → 7 → 40 → 264 h 扫描 | 8 步预测误差(归一化)始终在 0.007–0.011;达到目标回报的 GPU 小时 0.54 → 1.9,远低于随数据线性增长 |
三条注释:第一行说的是「每次练习变便宜」——策略更新时的 rollout 全跑在神经网络,仿真器只负责喂训练数据,且仿真器吞吐在 64k 并行时已经走平、神经网络还在涨。第二行说明收益不只是「更快的仿真替身」:同样的模型、同样的想象轨迹,换成 PPO 更新就要多花两个数量级的步数,差别在梯度本身。第三行说的是「练习总量没有跟着动作库爆炸」:每段动作都是同一具身体执行的,新增动作提供的只是同一套动力学的更多证据,不是新的容量需求。
还有一个控制变量版本,排除「网络规模/奖励设计不同」的可能:同样 40 段 LAFAN1 动作(2.45 小时)、同样的观测、奖励、终止、领域随机化和网络规模,PPO 直接在仿真器里训:
| 配置 | 0.82 回报 | 18 h 预算内最终回报 |
|---|---|---|
| PPO-Sim,1 GPU | 未达到 | 0.60 |
| PPO-Sim,4 GPU | 未达到 | 0.70 |
| PPO-Sim,8 GPU | 未达到 | 0.72 |
| SuperMimic,1 GPU | 1.2 h 达到 | ≈ 0.87 |
从 4 卡到 8 卡只涨 0.02——PPO 在这个任务上的瓶颈不是算力。
真机与下游接口
同一个策略零逐动作调参上真机 Unitree G1,论文展示了跳步、侧滚(躯干四肢贴地)、90° 翻转、原地 360° 翻转——后两个正是 SONIC 全挂的类别。
下游接口实验:SuperMimic 支持多目标接口,每个接口配自己的 encoder、共享同一个解码器和同一个世界模型。初步实验里,速度指令接口不走蒸馏,直接用速度跟踪奖励穿过世界模型训练 encoder——672 个速度阶跃响应中 650 个比蒸馏基线更准,相对稳态误差中位数 0.16 对 0.49;蒸馏版在 7 个「平移 + 急转」命令上全部摔倒,那些角落里动作库几乎没有数据。「想做什么」和「身体怎么协调」部分解耦之后,新接口可以借用已学到的身体技能,而不是照抄参考动作。
边界与讨论
- 核心数字是训练动作覆盖,不是泛化;「不摔倒」的口径也被质疑过——英伟达的 Tessler(参与过 ProtoMotions、MaskedMimic)指出 SONIC 其实很稳健,这个指标对它不公平。
- 只有平地,没有地形和物体交互;世界模型目前只吃仿真数据。作者的下一步是真机数据进缓冲区、在线系统辨识。
- 世界模型是完整状态上的三层 MLP,没有潜变量、没有循环。它能装下整套动力学,靠的是「单一刚体、噪声来源已知」这个受控设定;换到带感知、带场景交互的任务,这一块会首先被考验——这也是它和 Dreamer 一类潜变量世界模型的分野。
- 这条线的谱系:SuperTrack(2021)在仿真角色上穿学习模型训策略,SuperDyno(2025)扩到数万段动作,SuperMimic 把它带到人形真机、砍到单卡成本。和 Dreamer/TD-MPC(想象 rollout 上跑 PPO)、SHAC(穿过可微仿真器)的区别都在「梯度从哪来」。
- 复现门槛不高:官方已开源 mjlab 训练代码(HybridRobotics/supermimic),已有社区在单卡 RTX PRO 6000 上用约 1.5 GPU 小时复现出相近结果。
计算不再是瓶颈,更实际的后果是:运动跟踪的 scaling law 第一次可以用「每次实验一张卡」的方式去量——这可能是这篇论文比任何一个数字都更持久的贡献。
参考链接
- SuperMimic: Scaling Humanoid Whole-Body Control with One Differentiable World Model:https://arxiv.org/abs/2610.28480
- 项目主页(含浏览器 demo 与真机视频):https://supermimic.github.io
- 训练代码(mjlab):https://github.com/HybridRobotics/supermimic
- SONIC: Supersizing motion tracking for natural humanoid whole-body control,Science Robotics 11(117):https://www.science.org/doi/10.1126/scirobotics.aed4592
- BeyondMimic: From motion tracking to versatile humanoid control via guided diffusion,Science Robotics 11(117):https://arxiv.org/abs/2508.08241
- BONES-SEED 动作数据集:https://huggingface.co/datasets/bones-studio/seed