One World, One Model
See it in your browser
The shared policy runs live in your browser (about 90 MB on first load). Drag a robot to push it.
Method
MorphMimic builds on an independent reimplementation of SuperMimic, which trains a tracker by differentiating through short rollouts of a learned dynamics model. A canonical layout maps each robot's joints by kinematic function onto a common joint order and 14 tracked bodies, and a 125-value descriptor of actuation, geometry and mass conditions the shared networks. Normalization statistics, reference motions and replay data stay robot-specific.
Results
We compare four configurations, each trained for 40,000 iterations with 4096 environments per robot: a specialist per robot, a shared world model, a shared policy and critics, and the unified model that shares all three. Each of the 128,786 common clips runs once from its first frame under the deterministic policy. A shared configuration matches a specialist when its mean normalized return is within 0.02, a tolerance set before the evaluation.
| Interface | Configuration | G1 | X2 Ultra | T2 | |||
|---|---|---|---|---|---|---|---|
| Completion (%) ↑ | Mean return ↑ | Completion (%) ↑ | Mean return ↑ | Completion (%) ↑ | Mean return ↑ | ||
| Full motion | Specialist | 99.797 | 0.9306 | 99.818 | 0.9253 | 99.860 | 0.9448 |
| Shared WM | 99.734 | 0.9274 | 99.845 | 0.9269 | 99.861 | 0.9401 | |
| Shared policy | 99.806 | 0.9317 | 99.861 | 0.9278 | 99.775 | 0.9404 | |
| Unified | 99.747 | 0.9358 | 99.891 | 0.9304 | 99.886 | 0.9398 | |
| Five-point | Specialist | 99.849 | 0.8807 | 99.841 | 0.8689 | 99.857 | 0.9014 |
| Shared WM | 99.720 | 0.8681 | 99.851 | 0.8788 | 99.875 | 0.8979 | |
| Shared policy | 99.769 | 0.8781 | 99.847 | 0.8855 | 99.766 | 0.8976 | |
| Unified | 99.729 | 0.8626 | 99.880 | 0.8774 | 99.852 | 0.8890 | |
Table I. The four 40,000-iteration sharing configurations on the 128,786-clip common set. Specialist has a separate world model and policy per robot, shared WM shares only the world model, shared policy shares the policy and critics, and unified shares the world model, policy and critics. Completion is the fraction of clips that reach the final frame without early termination. Higher is better (↑); the best value in each robot and interface block is in bold.
Every shared configuration stays within 0.02 mean return of its specialist on all six robot and interface pairs. The largest gap is 0.018, for the unified model on G1 five-point tracking. No configuration completes the most clips everywhere: the unified model leads on both X2 interfaces and on T2 full-motion tracking. The unified run uses 16.3 GPU-hours, against 13.9 for the three specialists together, and gives one set of weights for all three robots.
Across the four configurations, five-point commands lower mean return by 0.04 to 0.07 on each robot.
Ten clips in simulation
The G1, X2 Ultra and T2 (left to right) track each clip through the full-motion interface. Simulated in MuJoCo with unified_v2 at iteration 76,000. The results above are the paper's, at 40,000 iterations.
Walk
Ballet: pas de bourrée
Ballet: turns
Street: shuffle
Street: hip hop
Jive
Macarena
Country line dance
Dance routine
Robot dance
Hardware
We run the shared policy from Table I, trained for 40,000 iterations in simulation, directly on a physical Unitree G1, with feedback from its pelvis IMU and 29 joint encoders. Through the full joint-space motion interface, the G1 dances, walks and follows an operator who wears a PICO headset, two hand controllers and two ankle trackers.
Unitree G1 hardware: upper-body motion (full-motion interface)
Unitree G1 hardware: walking (full-motion interface)
Unitree G1 hardware: teleoperation (full-motion interface)
AgiBot X2 Ultra: hardware pending Booster T2: hardware pending
BibTeX
@misc{yang2026morphmimic,
title = {{MorphMimic}: Morphology-Conditioned World Model and Policy Sharing Across Humanoids},
author = {Yang, Lizhi and Xie, Fengze and Wang, Yuyang and Gan, Lu and Yue, Yisong and Ames, Aaron D.},
year = {2026},
note = {Technical report},
howpublished = {\url{https://lzyang2000.github.io/morphmimic/}}
}