HUMANOID ROBOT CONTROL · PAPER NOTES

GMT: General Motion Tracking

更新于 2026/7/23

GMT:General Motion Tracking for Humanoid Whole-Body Control

一句话概括:这篇论文为了解决大规模、类型多样且难度不均衡的人体动作难以由一个统一人形机器人策略稳定跟踪的问题,提出了 Adaptive Sampling 与 Motion Mixture-of-Experts,核心是动态增加困难 Motion 的训练比例,并由多个专家分担不同运动模式,最终在 Unitree G1 上实现了一个可部署的统一全身动作跟踪策略。

论文信息

  • 论文: GMT: General Motion Tracking for Humanoid Whole-Body Control
  • 作者: Zixuan Chen、Mazeyu Ji、Xuxin Cheng、Xuanbin Peng、Xue Bin Peng、Xiaolong Wang
  • 会议 / 期刊: IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS 2026)
  • 年份: 2026(预印本首次发布于 2025 年)
  • 论文链接: arXiv:2506.14770
  • 代码链接: Official GitHub Repository
  • 阅读日期: 2026 年 7 月 20 日
  • 关键词: Humanoid、Motion Tracking、Motion Imitation、Adaptive Sampling、Mixture-of-Experts、Teacher-Student、DAgger

1. 这篇论文在解决什么问题?

研究背景

利用人体动作数据训练人形机器人跟踪参考 Motion,是构建通用全身控制器的重要路线。其基本思路是先将人体动作转换为机器人域中的参考轨迹,再通过强化学习训练策略,使机器人实际状态持续接近参考状态。

当训练数据只有少量动作时,普通 MLP 往往能够完成跟踪;但当数据扩展到数千条 Motion,并同时包含走路、跑步、下蹲、踢腿、跳舞和拳击等截然不同的运动模式时,训练一个统一策略会遇到明显困难。

现有方法的问题

现有方法通常采用:

从动作数据集中采样参考 Motion,根据关节姿态、基座状态、速度和关键身体位置构造跟踪奖励,再使用 PPO 训练 Motion Tracking Policy。

但它们存在以下不足:

  1. 数据分布不均衡。 大型动作数据集中,站立、走路和原地活动占比很高,复杂动态动作数量较少,均匀采样会让大量训练资源被简单 Motion 占用。
  2. 长 Motion 中的困难片段容易被淹没。 一条长序列可能同时包含站立、行走、踢腿和转身。即使策略只在短暂的困难片段失败,仍会频繁采样整条长序列,导致困难片段的有效采样率较低。
  3. 单个 MLP 的表达能力有限。 不同 Motion 对应明显不同的接触模式、平衡策略和时序结构,用一组完全共享的参数表示所有运动,容易产生参数冲突和平均化行为。
  4. 真实机器人存在部分可观测性。 仿真器可以直接提供基座线速度、精确身体位置和接触状态,但真实机器人无法同样准确地获得这些信息,直接部署特权策略并不现实。
  5. 原始人体动作不一定适合机器人执行。 动作数据中可能包含倒地、爬行、地面翻滚或超出硬件能力的高速动作,需要在训练前进行筛选。

论文目标

这篇论文希望解决的核心问题是:

如何从大规模、类别不均衡且难度差异明显的 Motion 数据中,训练一个容量足够、跟踪精度较高,并能够部署到真实人形机器人上的统一 Motion Tracking Policy。


2. 论文的核心思路

作者的关键观察是:

大规模 Motion Tracking 的主要瓶颈不仅在奖励函数或 PPO 参数,还包括训练样本在简单与困难 Motion 之间分配不合理,以及单一网络难以同时容纳多种运动模式。

因此,作者提出:

使用 Adaptive Sampling 动态提高困难 Motion 和高误差 Motion 的采样概率,同时在特权教师 Actor 中引入 Soft Mixture-of-Experts,使不同专家能够对运动流形中的不同区域形成分工;随后再通过 DAgger 将教师能力蒸馏到可部署学生策略。

用一句更直白的话解释:

传统方法是让一个普通网络以近似均匀的方式反复学习整个动作库,这篇论文改成了“不会的动作多练、会做但不够准的动作继续精修,并让多个专家共同控制”,从而提高统一策略在大规模 Motion 数据上的覆盖能力和跟踪精度。

核心贡献

  1. 提出 Adaptive Sampling,将随机裁剪、逐 Motion 终止阈值课程和基于跟踪表现的采样概率结合起来。
  2. 在特权教师策略中引入 Motion MoE,通过专家网络和门控网络提升统一策略的表达能力。
  3. 采用“下一帧精确目标 + 未来约两秒 Motion 编码”,同时保留短期跟踪精度和长期动作趋势。
  4. 结合数据筛选、PPO 特权教师训练、DAgger 学生蒸馏、域随机化和 Action Delay,形成完整的 Sim-to-Real 训练流程。

其中,最重要的创新是:

Adaptive Sampling 与 Motion MoE 的组合:前者解决训练资源分配问题,后者解决统一策略的模型容量问题。


3. 方法介绍

建议插入论文的 Figure 3,即 GMT 的总体框架图。

整体流程

AMASS + LAFAN1 人体动作
          ↓
转换为统一的机器人参考 Motion
          ↓
规则筛选 + 初步策略筛选
          ↓
Random Clipping
          ↓
Adaptive Sampling
          ↓
PPO 训练 Privileged Motion-MoE Teacher
          ↓
DAgger 蒸馏 Deployable Student
          ↓
MuJoCo Sim-to-Sim 验证
          ↓
部署到真实 Unitree G1

具体流程如下:

  1. 从 AMASS 和 LAFAN1 中获取人体动作,并转换为与机器人关节和身体结构对应的参考 Motion。
  2. 使用 Root 姿态与高度规则去除明显异常动作,再训练初步策略,根据完成率进一步过滤失败 Motion。
  3. 将超过 10 秒的长 Motion 随机裁剪为多个子片段,并在训练过程中定期重新裁剪。
  4. 根据每条 Motion 当前的完成等级和关键身体跟踪误差,动态计算其采样概率。
  5. 使用 PPO 训练读取特权状态的 Soft MoE 教师 Actor。
  6. 让学生策略访问自身产生的状态,并由教师在这些状态上提供动作标签,通过 DAgger 训练学生。
  7. 学生策略仅依赖可部署观测和观测历史,最终用于真实机器人控制。

核心模块

模块 A:Adaptive Sampling

  • 输入: 所有 Motion 子片段、每条 Motion 的完成等级、终止阈值和最大关键身体位置误差。
  • 输出: 每条 Motion 在下一轮训练中的采样概率。
  • 作用: 减少已经掌握的简单 Motion 的训练量,提高尚未完成或残余误差较大的 Motion 的采样概率。
  • 为什么需要: 均匀采样无法处理动作类别、序列长度和学习难度之间的严重不平衡。

Adaptive Sampling 包含两个部分:

  1. Random Clipping: 将超过 10 秒的 Motion 裁剪成多个最长 10 秒的子片段,并通过随机偏移和周期性重新裁剪改变片段边界。
  2. Tracking Performance-based Probabilities: 为每条 Motion 独立维护课程进度,并根据“是否能够完整完成”和“完成后的残余误差”分配采样权重。

模块 B:Motion Mixture-of-Experts

  • 输入: 机器人状态观测、特权信息和 Motion Target。
  • 输出: 最终目标关节动作。
  • 作用: 让不同专家对不同运动模式或动作阶段形成分工,提高特权教师的表达能力。
  • 为什么需要: 单个 MLP 在同时表示大量时序结构和动力学模式差异显著的 Motion 时容易出现容量瓶颈。

GMT 使用 Soft MoE,而不是一次只选择一个专家。专家网络分别输出动作分布,门控网络输出各专家的组合权重,最终动作由各专家输出加权得到。

论文没有人工规定某个专家只能负责走路、踢腿或下蹲。专家分工是在联合训练中根据机器人状态和 Motion Target 自发形成的,同一条复合 Motion 在不同阶段也可能使用不同的专家组合。

模块 C:未来 Motion 输入

  • 输入: 立即下一帧 Motion Target,以及未来约两秒的连续参考帧。
  • 输出: 下一帧目标与未来 Motion Latent 的联合表示。
  • 作用: 同时向策略提供当前精确目标和后续运动趋势。
  • 为什么需要: 只看下一帧容易缺乏提前准备,只看较长未来窗口又可能丢失当前帧的精细信息。

未来 Motion 序列先由卷积编码器压缩为 Latent,再与立即下一帧目标共同输入策略。消融结果表明,未来窗口越长,整体跟踪精度通常越高,但立即下一帧仍然不可替代。

模块 D:Teacher-Student

  • 输入: 教师接收本体观测、Motion Target 和特权信息;学生接收可部署观测、观测历史和 Motion Target。
  • 输出: 教师与学生均输出目标关节动作。
  • 作用: 先利用完整仿真状态训练高质量控制行为,再将其迁移到不依赖特权信息的部署策略。
  • 为什么需要: 教师 Actor 本身读取真实机器人难以准确获得的状态,无法直接部署。

GMT 属于以下结构:

Privileged Motion-MoE Teacher Actor
                  ↓
             DAgger 蒸馏
                  ↓
Deployable History-based Student Actor

DAgger 与普通离线行为克隆的区别是:训练数据中的状态由当前学生策略实际运行产生,教师再对学生访问到的状态给出动作标签,从而减轻学生部署时的状态分布偏移和误差累积。

核心公式

1. 基于跟踪性能的采样

GMT 为第 ii 条 Motion 独立维护一个完成等级 cic_i 和终止阈值 EiE_i。当跟踪误差超过 EiE_i 时,当前 Episode 提前终止。

完成等级的初始值为:

ci=10c_i=10

每当策略成功完整跟踪一次该 Motion,就执行:

cimax(1,0.99ci)c_i\leftarrow\max\left(1,0.99c_i\right)

因此,cic_i 会从 10 缓慢衰减到 1。这里的数值越大,表示该 Motion 仍处于较早、较宽松的课程阶段;数值越接近 1,表示它已经被成功完成多次,课程要求也更加严格。

令连续成功完成次数为 nn,则:

10×0.99n110\times0.99^n\approx1

求解可得 n229.1n\approx229.1。也就是说,连续衰减约 229 次后 cic_i 已非常接近 1;考虑到公式使用 max(1,)\max\left(1,\cdot\right) 截断,约在第 230 次成功后取到 1。

这说明 GMT 不会因为某条 Motion 偶然成功一次,就立即把它判定为已经掌握,而是通过多次成功逐渐提高要求。

每条 Motion 独立的终止阈值课程

终止阈值由完成等级决定:

Ei=0.25exp(ci1101log(0.60.25))E_i = 0.25\exp\left( \frac{c_i-1}{10-1} \log\left(\frac{0.6}{0.25}\right) \right)

这个公式是在 0.6 和 0.25 之间进行指数插值:

完成等级 cic_i 终止阈值 EiE_i 含义
10 0.60 课程刚开始,允许较大误差
7 约 0.45 已成功多次,要求逐渐提高
5 约 0.37 中间课程阶段
1 0.25 最高要求,终止条件最严格

因此,困难 Motion 刚开始训练时,只有跟踪误差超过 0.6 才会提前终止;随着策略不断成功完成该 Motion,终止阈值逐渐降低到 0.25。

这个公式的直觉是:

先允许策略以较大的误差把整条 Motion 做完,避免因为过早终止而始终访问不到动作后半段;等策略能够完成后,再逐渐提高跟踪精度要求。

这是一种 Per-motion Termination Curriculum:每条 Motion 都拥有自己的课程进度和终止阈值,而不是所有 Motion 共用一个固定阈值。

根据训练表现计算采样分数

为避免在后续公式中重复书写过长的变量名,将第 ii 条 Motion 执行过程中观测到的最大关键身体位置误差记为:

eimax=Emax key-body errore_i^{\max}=E_{\text{max key-body error}}

GMT 根据每条 Motion 当前的学习状态定义采样分数:

si={[min(eimax0.15,1)]5,ci=1,ci,ci>1.s_i= \begin{cases} \displaystyle \left[ \min\left( \frac{e_i^{\max}}{0.15}, 1 \right) \right]^5, & c_i=1,\\[6pt] c_i, & c_i>1. \end{cases}

最后将所有 Motion 的分数归一化,得到实际采样概率:

pi=sijsjp_i=\frac{s_i}{\sum_j s_j}

其中:

  • sis_i 是第 ii 条 Motion 的采样分数;
  • pip_i 是第 ii 条 Motion 的实际采样概率;
  • eimaxe_i^{\max} 是该 Motion 执行过程中观测到的最大关键身体位置误差;
  • EiE_i 是用于判断是否提前终止 Episode 的课程阈值;
  • EiE_ieimaxe_i^{\max} 不是同一个量。

这个分段公式对应两个不同的训练阶段。

阶段一:先解决“能不能完整做完”

ci>1c_i>1 时:

si=cis_i=c_i

尚未掌握的 Motion 会保持较大的 cic_i,因此拥有更高的采样权重。例如:

Motion 当前 cic_i 采样分数 sis_i 状态
A 10 10 基本没有掌握
B 6 6 已经成功一部分
C 2 2 接近完成课程

因此,课程进度越落后的 Motion,被采样的概率越高。

对于困难 Motion,由于它经常无法完整完成,cic_i 会长期保持在较大的数值,使其继续获得大量训练样本;简单 Motion 被反复成功完成后,cic_i 会逐渐下降,采样权重也随之降低。

阶段二:再解决“跟得够不够准确”

ci=1c_i=1 时,表示该 Motion 已经能够在最严格的终止阈值 Ei=0.25E_i=0.25 下完成。

此时 GMT 不再根据完成次数分配采样权重,而是根据残余关键身体误差:

si=[min(eimax0.15,1)]5s_i= \left[ \min\left( \frac{e_i^{\max}}{0.15}, 1 \right) \right]^5

五次方会强烈压低已经跟踪得很准确的 Motion 的采样权重:

最大关键身体误差 采样分数
0.15 或更大 1
0.12 0.850.3280.8^5\approx0.328
0.10 0.66750.1320.667^5\approx0.132
0.075 0.55=0.031250.5^5=0.03125
0.05 0.33350.00410.333^5\approx0.0041

因此:

  • 已经能够完成、但跟踪误差仍然较大的 Motion,会继续获得较多训练;
  • 已经能够完成且误差很小的 Motion,其采样概率会快速接近于零;
  • 通过 min(,1)\min\left(\cdot,1\right) 将分数上限截断为 1,避免异常大的误差无限放大采样权重。

例如,训练池中有三条 Motion:

Motion 当前状态 采样分数
A c1=10c_1=10,基本未掌握 10
B c2=4c_2=4,部分掌握 4
C c3=1c_3=1,最大关键身体误差为 0.05 约 0.0041

总采样分数约为:

10+4+0.0041=14.004110+4+0.0041=14.0041

归一化后的采样概率约为:

Motion 采样概率
A 71.4%
B 28.6%
C 0.03%

训练资源几乎全部集中到尚未掌握的 A 和 B,而不会反复浪费在已经跟踪得很准确的 C 上。

整个机制可以概括为:

每条 Motion 独立维护完成等级 c_i
                ↓
c_i 决定该 Motion 的终止阈值 E_i
                ↓
成功完成一次,c_i 乘以 0.99
                ↓
c_i > 1:
根据课程进度采样
优先训练尚未掌握的 Motion
                ↓
c_i = 1:
根据残余关键身体误差采样
继续精修不够准确的 Motion

因此,GMT 的 Adaptive Sampling 实际结合了两个机制:

  1. Per-motion Termination Curriculum: 每条 Motion 拥有独立、逐步收紧的终止阈值。
  2. Performance-based Sampling: 根据每条 Motion 当前的完成进度和残余误差动态分配训练概率。

其整体训练优先级是:

先保证各条 Motion 能够完整完成,再集中优化那些虽然已经能够完成、但跟踪质量仍然较差的 Motion。

2. Motion MoE

假设教师策略包含 NN 个专家,第 ii 个专家输出动作 at(i)a_t^{(i)},门控网络输出对应权重 wt(i)w_t^{(i)},则最终动作可写为:

at=i=1Nwt(i)at(i)a_t= \sum_{i=1}^{N} w_t^{(i)}a_t^{(i)}

门控权重满足:

i=1Nwt(i)=1\sum_{i=1}^{N}w_t^{(i)}=1

其中:

  • at(i)a_t^{(i)} 表示第 ii 个专家在时刻 tt 给出的动作;
  • wt(i)w_t^{(i)} 表示门控网络分配给该专家的权重;
  • ata_t 表示发送给底层控制器的最终动作。

这个公式的直觉是:

GMT 不需要为每种动作单独训练一套完整 Policy,而是让多个专家共享同一个训练任务,再根据当前状态和参考 Motion 动态组合专家输出。

3. 未来 Motion 编码

未来 Motion 窗口由卷积编码器压缩为 Latent:

zt=fconv(gt+1,gt+2,,gt+H)z_t= f_{\text{conv}}\left( g_{t+1},g_{t+2},\ldots,g_{t+H} \right)

策略同时接收立即下一帧和未来 Motion Latent:

at=π(ot,gt+1,zt)a_t= \pi\left( o_t,g_{t+1},z_t \right)

其中:

  • oto_t 表示机器人当前状态观测;
  • gt+1g_{t+1} 表示立即需要跟踪的下一帧目标;
  • ztz_t 表示未来约两秒 Motion 的压缩表示。

这个公式的直觉是:

下一帧提供当前精确目标,未来窗口提供动作发展的整体趋势,两者缺一不可。

4. Teacher-Student 蒸馏

特权教师 Actor 可以写为:

atT=πT(ot,et,gt)a_t^T= \pi_T\left(o_t,e_t,g_t\right)

其中,ete_t 表示部署时难以直接获得的特权信息。

学生策略使用可部署观测和观测历史,并模仿教师动作:

Lstudent=πS(ht,gt)atT22\mathcal{L}_{\text{student}} = \left\lVert \pi_S\left(h_t,g_t\right)-a_t^T \right\rVert_2^2

其中:

  • hth_t 表示学生可获得的当前及历史本体观测;
  • gtg_t 表示参考 Motion Target;
  • atTa_t^T 表示教师在学生当前访问状态下给出的动作标签。

这个公式的直觉是:

教师利用完整仿真状态找到高质量控制动作,学生再从可部署观测中学习复现这些动作。


4. 实验与结果

实验设置

  • 数据集 / 环境: 筛选后的 AMASS 与 LAFAN1;Isaac Gym 训练;MuJoCo Sim-to-Sim 验证;真实 Unitree G1 部署。
  • 评价指标: MPKPE、MPJPE、基座线速度误差和偏航角速度误差。
  • 主要 Baseline: 在相同筛选数据上重新实现并训练的 ExBody2。
  • 训练规模: 训练集包含 8,925 个 Motion Clips,总时长约 33.12 小时;使用 4,096 个并行环境,每个策略约使用 68 亿个仿真样本。

主要结果

最关键的实验结论是:

GMT 的特权教师与可部署学生在 AMASS-Test 和 LAFAN1 上都优于重新实现的 ExBody2;学生结果接近教师,说明蒸馏过程保留了大部分跟踪能力。

方法 AMASS-Test MPKPE / mm LAFAN1 MPKPE / mm
ExBody2 50.28 58.36
GMT Student 43.01 46.14
GMT Privileged Teacher 42.07 45.16

相较于 Baseline:

  • 在 MPKPE 上,GMT Privileged Teacher 在 AMASS-Test 上相对降低约 16.3%,在 LAFAN1 上相对降低约 22.6%。
  • 在真实机器人上,论文展示了风格化行走、高踢腿、舞蹈、旋转、蹲走、踢球、拳击、跑步和侧向移动等动作。
  • GMT 还能在 MuJoCo 中跟踪由 MDM 文本生成模型产生的新 Motion,说明策略对训练集之外的动作来源具有一定泛化能力。
  • 论文没有提供复杂地形和接触丰富地面技能上的有效性证据。

建议插入论文 Table 2、Figure 5 和 Figure 6,分别展示总体量化结果、困难 Motion 的误差分布以及 Adaptive Sampling 对局部困难片段的影响。

消融实验

Adaptive Sampling 与 MoE 的消融结果如下:

方法 AMASS MPKPE LAFAN1 MPKPE
去掉 MoE 43.54 48.26
去掉 Adaptive Sampling 42.53 49.61
同时去掉 Adaptive Sampling 与 MoE 44.34 52.34
完整 GMT 42.07 45.16

消融实验表明:

  • 去掉 Motion MoE 后,统一策略的表达能力下降,困难 Motion 上的退化尤其明显。
  • 去掉 Adaptive Sampling 后,困难片段的训练不足,LAFAN1 上的性能下降较明显。
  • 同时去掉两个模块后结果最差,说明采样机制和模型容量解决的是不同但互补的问题。

不同 Motion 输入窗口的结果如下:

Motion 输入 AMASS MPKPE LAFAN1 MPKPE
仅下一帧 46.02 51.16
下一帧 + 0.5 秒未来 43.64 49.87
下一帧 + 1 秒未来 43.15 47.41
下一帧 + 2 秒未来 42.07 45.16
仅 2 秒未来,不提供下一帧 49.52 61.24

因此可以说明:

未来窗口能够提供动作趋势,但不能代替立即下一帧提供的局部精确信息;“下一帧 + 未来两秒”是论文实验中的最佳组合。


5. 如何评价这篇论文?

优点

  1. 问题定义具有实际价值。 论文关注的不再是单个技能,而是大规模、多类型 Motion 的统一跟踪与真实机器人部署。
  2. 方法针对性强。 Adaptive Sampling 解决训练资源分配,MoE 解决模型容量,未来 Motion 输入解决预见性,Teacher-Student 解决部分可观测性,各模块职责清晰。
  3. Adaptive Sampling 设计完整。 它不仅调整采样概率,还将逐 Motion 终止阈值课程与最终误差精修统一起来,形成“先完成、后提精度”的明确训练阶段。
  4. 消融实验较充分。 论文分别验证了 Adaptive Sampling、MoE、未来窗口长度和立即下一帧的重要性。
  5. 完成真实部署。 学生策略在 Unitree G1 上展示了多种全身动作,说明方法不仅停留在仿真误差比较层面。

局限

  1. 通用性依赖数据筛选。 原始数据先经过规则过滤,再根据初步策略完成率删除失败 Motion,因此最终结果只覆盖筛选后的可学习分布。
  2. 对接触丰富技能支持有限。 论文明确指出目前不支持倒地起身和地面翻滚等 Contact-Rich Skills。
  3. 不支持复杂地形。 策略没有地形观测,也没有针对斜坡和楼梯等场景进行训练。
  4. MoE 内部机制分析不足。 论文展示了门控权重随动作阶段变化,但没有系统分析专家负载、专家坍缩、专家数量或与等参数量网络的计算效率差异。
  5. 复现细节仍不完整。 论文没有完整公开动作重定向流程、部分课程与训练超参数,官方代码也未覆盖完整端到端训练管线。
  6. 真实机器人量化评估有限。 真实部署主要依赖动作展示,缺少按类别统计的成功率、长时间稳定性和摔倒率等指标。

6. 总结

这篇论文解决了:

大规模 Motion 数据分布不均、困难片段采样不足、单一网络容量有限,以及特权训练策略难以直接部署的问题。

核心方法是:

使用 Random Clipping 和基于跟踪表现的 Adaptive Sampling 动态分配训练资源,在特权教师 Actor 中使用 Motion MoE,并通过未来 Motion 编码与 DAgger 学生蒸馏形成统一的可部署策略。

它能够有效工作的原因是:

它将“哪些 Motion 应该多练”“统一策略如何容纳不同运动模式”“如何利用未来信息提前准备”和“如何去除部署时的特权依赖”分别交给不同模块处理,而不是只依赖扩大网络或调整奖励函数。

最值得记住的结论是:

在大规模多 Motion 训练中,先让每条 Motion 在宽松阈值下逐步学会完整执行,再根据残余误差进行精修,能够显著减少简单样本对训练资源的占用;与此同时,MoE 可以缓解统一策略面对不同运动模式时的容量冲突。

最大的局限是:

GMT 的“General”建立在经过筛选的动作分布和平坦地面环境之上,对接触丰富技能、复杂地形和完整复现流程的覆盖仍然有限。