一句话定位

用一个统一策略(single unified policy)在真实人形机器人(Unitree G1)上跟踪从走路到高踢腿、功夫、跳舞的全身多样动作,靠两件事撑起来:把易/难动作自动配平的 Adaptive Sampling 课程,和让不同动作流形分区专精的 Motion Mixture-of-Experts

背景与定位

GMT 属于「从人类动捕数据学人形全身控制」(humanoid motion imitation / whole-body control)这条线。图形学里早已有单一统一控制器复现海量动作的先例(DeepMimic、ASE、PHC、MaskedMimic 等),但把它搬到真机上有四个坎,作者在引言里明确列出:

  • 部分可观测(Partial Observability):真机拿不到线速度、全局根位置等全状态,训练更难;
  • 硬件限制(Hardware Limitations):动捕里有后空翻、翻滚这类真机做不了的动作,连走跑都可能因扭矩不足追不上人的速度;
  • 数据分布不均(Unbalanced Data Distribution):AMASS 这类大库大量是走路/原地动作,复杂动态动作稀缺,机器人学不好这些关键但低频的技能;
  • 模型表达力(Model Expressiveness):小 MLP 跟几段 clip 够用,套到大库就抓不住时序依赖、区分不了动作类别。

已有工作各解一坎:teacher-student 处理部分可观测(omnih2oexbody2);小数据集分类微调多个专家策略(ExBody2);transformer 提表达力(HumanPlus)。GMT 的主张是把这些坎联合起来一次解决,得到一个真正通用的统一跟踪控制器。作者自己在对比表里把 GMT 定位为「单策略 + 全身 + 多样」三者兼得,数据规模 8925 个筛后 clip:ExBody 780 clip(非全身/非多样)、ExBody2 1050 clip(筛后,需分类微调)、HumanPlus 10k clip(非多样)、OmniH2O 14k clip(增广,非多样)、ASAP 用互联网 clip(但非单策略,每个动作单独训)。范式上它是 goal-conditioned RL + teacher-student 蒸馏,相关工作可参见 exbody2omnih2oasap

模型架构

任务形式:goal-conditioned RL,策略 π(a_t | s_t, g_t),最大化折扣回报。输出动作是目标关节位置(target joint positions),下发给 PD 控制。

Motion target(g_t):每帧目标 g_t = [q_t, v_base, r_base, p_key, h_root]:

  • q_t ∈ R²³:关节位置(23 DoF);
  • v_base ∈ R⁶:base 线速度 + 角速度;
  • r_base ∈ R²:base roll、pitch;
  • h_root:根高度(1 维);
  • p_key ∈ R^(3×num keybody):局部 key body 位置。与用全局 key body 的 OmniH2O/ASAP 不同,GMT 学 ExBody2 用局部 key body,并进一步把局部 key body 对齐到机器人 heading 朝向

Motion input(关键设计):不只喂下一帧。把未来一段连续帧 [g_t, …, g_{t+100}](约 2 秒未来动作)堆叠,经一个卷积编码器压成潜向量 z_t ∈ R¹²⁸,再与紧邻下一帧 g_t 拼接一起喂策略网络。这样既有长期趋势又有最近关键目标信息——消融显示两者缺一不可(见评测)。

Motion MoE(teacher 阶段):teacher 策略里用 soft MoE——一组 expert 网络 + 一个 gating 网络。expert 和 gating 都吃「机器人状态观测 + motion target」,最终动作是各 expert 动作分布采样的加权和 a = Σᵢ pᵢ aᵢ(pᵢ 由 gating 输出)。可视化 gating 权重随时间在「站立→踢腿→后退走→站立」的组合动作里出现清晰的 expert 切换,验证了不同 expert 对不同动作类型的专精。

观测维度

  • Teacher 观测 = 本体感受 o_t + 特权信息 e_t + motion target g。o_t = root 角速度(3) + root roll/pitch(2) + 关节位置(23) + 关节速度(23) + 上一动作(23)。e_t = root 线速度(3) + root 高度(1) + key body 位置 + 双脚接触 mask(2) + 质量随机化参数(6) + 电机强度(46)。
  • Student 观测 = 本体感受 o_t + 本体感受历史 o_{t-20…t}(约 21 帧)+ motion target g(不含特权信息)。

机器人本体:Unitree G1,23 DoF,高 1.32 m。

数据

  • 来源:AMASS + LAFAN1 两库组合。
  • 两阶段 curation(沿用 PHC 思路):
    1. 规则过滤:剔除爬行、倒地、极端动态等真机不可行动作——例如根的 roll/pitch 超阈值、或根高度异常高/低的动作;
    2. 策略完成度过滤:先在规则过滤后的数据上用约 50 亿(5 billion)样本训一个初步策略,按其完成率再滤掉失败动作。
  • 最终训练集:AMASS+LAFAN1 的筛后子集,8925 个 clip,共 33.12 小时
  • 分布问题:AMASS 原始分布高度不均(大量走路/原地动作),正是 Adaptive Sampling 要针对的对象。
  • sim vs real:训练全程在仿真(IsaacGym)里做;真机只做部署验证,无真机训练数据。

训练方法

两阶段 teacher-student

  1. 特权 teacher:观测含本体 + 特权信息 + motion target,用 PPO 优化,输出目标关节动作 â_t;
  2. 可部署 student:只吃本体感受历史 + motion target,用 DAgger 蒸馏 teacher,最小化 L2 损失 ‖â_t − a‖²。

Adaptive Sampling(核心课程),两部分:

  • Random Clipping:>10 s 的动作切成 ≤10 s 子段,切点加最多 2 s 随机偏移避免过渡伪影;训练中周期性重切以进一步多样化子段。
  • Tracking Performance-based Probabilities:训练时记录每个动作的完成等级 cᵢ,当跟踪误差超过 Eᵢ 就终止 episode。动作被成功完成时,cᵢ 和 Eᵢ 逐步下调(最小值 c_min = 1.0、E_min = 0.25)。采样概率:cᵢ=1 时 pᵢ = (min(E_{max key body error}/0.15, 1))⁵,cᵢ>1 时 pᵢ = cᵢ。效果是不再反复采样长动作里的简单段,把训练力气压到高误差的难动作上。

奖励(第一阶段 PPO):exp 形式的跟踪项 + 正则项。跟踪项:tracking joint positions / joint velocities / root pose(root 旋转 + 高度)/ root vel / key body positions;辅助项:alive(1.0)、foot slip、joint velocities、joint accelerations、action rate。

Sim-to-real:teacher 和 student 训练都加 domain randomization + action delay。为对齐仿真与真机动力学,显式建模减速器转动惯量:给定减速比 k、减速器惯量 I,仿真里把 armature 参数配成 armature = k²·I。student 训好后先在 MuJoCo 里验证再上真机。

Infra(训练 / 推理工程)

  • 模拟器:IsaacGym,4096 个并行环境。
  • 训练算力:单张 RTX 4090 GPU——特权 teacher 训约 3 天,student 约 1 天。(仿真实验里每个策略用约 68 亿(6.8 billion)样本训练。)
  • 频率:仿真 500 Hz,控制 50 Hz
  • 推理/部署:策略先在 MuJoCo 做 sim-to-sim 验证,再部署到真实 Unitree G1;控制频率 50 Hz。精度、板载算力、端到端时延未披露

评测 benchmark

仿真评测在 AMASS-test 与 LAFAN1 上,所有策略均在同一「筛后 AMASS+LAFAN」上训练;baseline/消融只比特权策略。四个指标(越低越好):E_mpkpe(mean per keybody position error, mm)、E_mpjpe(mean per joint position error, rad)、E_vel(线速度误差, m/s)、E_yaw vel(yaw 速度误差, rad/s)。

GMT vs ExBody2(作者复现,同数据集训练)

MethodAMASS mpkpe↓AMASS mpjpe↓AMASS vel↓AMASS yaw↓LAFAN mpkpe↓LAFAN mpjpe↓LAFAN vel↓LAFAN yaw↓
ExBody2(复现)50.280.09250.18750.340258.360.13780.34610.4260
GMT(特权)42.070.08340.17470.223845.160.09750.28370.3314
GMT(student)42.010.08070.19430.221146.140.10600.30090.3489

GMT 在局部(mpkpe/mpjpe)和全局(vel/yaw vel)跟踪上全面优于 ExBody2。student 通过纯蒸馏拿到与 teacher 几乎持平的性能。

组件消融(特权策略,AMASS-test / LAFAN mpkpe)

配置AMASS mpkpe↓LAFAN mpkpe↓
GMT w.o. A.S. & MoE(MLP,无课程)44.3452.34
GMT w.o. MoE(换等参 MLP)42.5348.26
GMT w.o. A.S.(去掉 Adaptive Sampling)43.5449.61
GMT(full)42.0745.16

MoE 和 Adaptive Sampling 都对更难的动作改善更大(top-percentile 跟踪误差图 Fig. 5)。去掉 Adaptive Sampling 时,一段从 240 s 长组合动作里抽出的片段策略学不好、难以平衡,膝/髋 roll 的扭矩表现使真机部署不可行。

Motion input 消融(AMASS-test mpkpe):GMT-M(仅下一帧)46.02;GMT-L0.5-M 43.64;GMT-L1-M 43.15;GMT-L2(仅 2 s 窗口、不含下一帧)49.52(显著退化);GMT-L2-M(本文)42.07。结论:加长未来窗口能提精度,但紧邻下一帧不可省——窗口给趋势、下一帧给最近的精细目标。

真机部署:在真实 Unitree G1 上复现了 stylized walking、high kicking、dancing、spinning、crouch walk、soccer kicking 等大量动作,作者称达到 SOTA 保真度(定量真机数值未在正文给出,见项目页视频)。

下游应用:在 MuJoCo sim-to-sim 里跟踪 MDM(Motion Diffusion Model) 按文本 prompt 生成的动作,表现良好,展示了作为下游任务底座的潜力。

创新点与影响

  • 贡献:首次用单一统一策略在真机上覆盖「单策略 + 全身 + 多样」三者兼得的全身动作跟踪,规模到 8925 clip / 33.12 h。两个核心组件——Adaptive Sampling(完成度驱动的采样课程 + 随机切段)和 Motion MoE(动作流形分区专精)——加上局部对齐 heading 的 key body、2 s 未来窗口 + 下一帧的输入设计,是把大动捕库真机化的关键拼图。
  • 改变了什么:相比 ExBody2 的「分类微调多个专家策略」和 ASAP 的「每个动作单独训」,GMT 证明一个策略也能高保真跑遍多样技能,并能直接接 MDM 这类高层动作生成器,向「高层 planner 选/串技能 → 通用人形」的路线铺路。可作为后续全身算法开发的底座(作者语)。
  • 作者自述局限:(1) 缺接触密集技能——因接触建模的仿真复杂度 + 硬件限制,不支持倒地起身、地面翻滚等;(2) 不适应复杂地形——当前策略无地形观测,不为斜坡/楼梯设计。

原始链接

一手源存档(sources/)

  • gmt—github-readme — GitHub README(sources/embodied/2025/gmt—github-readme.md)
  • gmt—project-page — 项目页快照(sources/embodied/2025/gmt—project-page.md)
  • arXiv 2506.14770 全文(arXiv 原文 PDF/HTML,不入 git;引用见上方链接)