Learning a general humanoid whole-body con-
troller is challenging because practical reference motions can
exhibit noise and inconsistencies after being transferred to the
robot domain, and local defects may be amplified by closed-
loop execution, causing drift or failure in highly dynamic and
contact-rich behaviors. We propose a dynamics-conditioned
command aggregation framework that uses a causal temporal
encoder to summarize recent proprioception and a multi-head
cross-attention command encoder to selectively aggregate a
context window based on the current dynamics. We further
integrate a fall recovery curriculum with random unstable
initialization and an annealed upward assistance force to
improve robustness and disturbance rejection. The resulting
policy requires only about 3.5 hours of motion data and
supports single-stage end-to-end training without distillation.
The proposed method is evaluated under diverse reference
inputs and challenging motion regimes, demonstrating zero-
shot transfer to unseen motions as well as robust sim-to-real
transfer on a physical humanoid robot.
Training Method
Robust and Generalized Motion Tracking
Mocap Data Replay
Unseen Mocap Data Replay
Karate
Video-derived Dance
Whole-Body Teleportation
Sports and Athletic Motions
Walk & Run
Fast Walk & Run
Jump
Basketball
Ground Interaction Motions
Ground Interaction Motion Clip 1
Ground Interaction Motion Clip 2
Boxing & Kick Motions
Boxing Clip 1
Kick Clip 1
Boxing Clip 2
Kick Clip 2
Boxing Clip 3
Kick Clip 3
Random Motions
Random Motion Clip 1
Random Motion Clip 2
Random Motion Clip 3
Random Motion Clip 4
VR Teleoperation
VR Teleoperation Clip 1
VR Teleoperation Clip2
Joystick Locomotion Control
Fall Recovery
Autonomous Recovery from Tracking Failure
Autonomous Recovery Under External Disturbances
BibTeX
@article{rgmt2026,
title = {Robust and Generalized Humanoid Motion Tracking},
author = {Ma, Yubiao and Yu, Han and Xie, Jiayin and Lv, Changtai and Luo, Qiang and Zhang, Chi and Yin, Yunpeng and Xing, Boyang and Ren, Xuemei and Zheng, Dongdong},
journal = {arXiv:2601.23080},
year = {2026}
}