TTT-Parkour: Rapid Test-Time Training for Perceptive Robot Parkour
Organizations: Tsinghua University · Shanghai Qi Zhi Institute · Princeton University
Abstract
Achieving highly dynamic parkour with humanoid robots on complex terrains unseen during the pre-training stage remains a challenge in robotics. Although general locomotion policies demonstrate capabilities across broad terrain distributions, they often struggle with arbitrary and highly challenging environments. To overcome this limitation, we propose a real-to-sim-to-real framework for rapid test-time training (TTT): environment-specific policy fine-tuning in simulation before deployment on a newly encountered terrain. We adopt a two-stage end-to-end learning paradigm: a policy is first pre-trained on diverse procedurally generated terrains, followed by rapid fine-tuning on high-fidelity meshes reconstructed from real-world captures. Specifically, we develop an efficient, feed-forward, and high-fidelity geometry reconstruction pipeline using RGB-D inputs, ensuring both speed and quality during test-time training. We demonstrate that TTT-Parkour empowers humanoid robots to master complex obstacles, including wedges, stakes, boxes, trapezoids, and narrow beams. The entire pipeline, including capture, reconstruction, and test-time training, takes approximately 10 minutes for most tested terrains. Experiments show improved traversal on the tested terrains after fine-tuning, with direct sim-to-real deployment and no further policy updates on the robot.
Figures & tables
| Terrain | Pre-train | Scratch-1 | Scratch-13 | TTT-13 | TTT-1 |
|---|---|---|---|---|---|
| (25k) | (30k) | (1.5k) | (Converged) | ||
| Boxes | 98.27±0.21% | 0.00±0.00% | 0.00±0.00% | 98.80±0.46% | 100.00±0.00% |
| Wedges | 0.30±0.30% | 0.00±0.00% | 0.00±0.00% | 99.93±0.12% | 99.90±0.00% |
| Nar.1 | 82.70±0.70% | 100.00±0.00% | 0.00±0.00% | 99.53±0.21% | 99.97±0.06% |
| Nar.2 | 87.27±1.24% | 100.00±0.00% | 0.00±0.00% | 100.00±0.00% | 99.97±0.06% |
| Nar.3 | 71.63±4.08% | 0.23±0.12% | 0.00±0.00% | 99.20±0.17% | 99.37±0.15% |
| Methods | RGB-D | LiDAR Scanner | iPhone | Hand-crafted |
|---|---|---|---|---|
| Pros | Balanced quality and efficiency | Professional, best scale accuracy | Most accessible, fast acquisition | No artifacts |
| Cons | Scale precision slightly lower than LiDAR | Terrain junction artifacts, tedious post-processing | Unstable reconstruction results, flying point artifacts | High manual effort, over-perfect geometry causes sim-to-real gap |
| Time | 2 min 10 s | 20 min | 4 min | 1 h |
| Terrain | RGB-D | LiDAR | iPhone | Hand-crafted |
|---|---|---|---|---|
| Stake1 | 80% | 80% | 0% | 40% |
| Narrow1 | 80% | 100% | 80% | 20% |
| Wedge | 100% | 60% | 20% | 20% |
| Trapezoid1 | 80% | 60% | 20% | 40% |
| Terrain | RGB-D | LiDAR | iPhone | MapAnything | Pi3 |
|---|---|---|---|---|---|
| Stake1 | 0.002 | 0.016 | 0.074 | 0.383 | 0.863 |
| Narrow1 | 0.028 | 0.005 | 0.056 | 0.720 | 1.172 |
| Wedge | 0.013 | 0.015 | 0.027 | 0.944 | 0.423 |
| Trapezoid1 | 0.018 | 0.024 | 0.033 | 0.988 | 0.400 |
Appendix figures & tables15 assets
Supplementary material from the paper’s appendix.
Appendix
| Space | Signal | Dim | Description |
|---|---|---|---|
| Actor Obs | Base Angular Velocity | 3 | IMU gyroscope |
| Projected Gravity | 3 | Gravity direction in base frame | |
| Velocity Commands | 3 | ||
| Joint Positions | 29 | 29-DoF joint angles | |
| Joint Velocities | 29 | 29-DoF joint velocities | |
| Last Action | 29 | Previous target joint positions |
| Parameter | Value |
|---|---|
| CNN channels | [4] |
| CNN kernel sizes | [3] |
| CNN strides | [1] |
| CNN paddings | [1] |
| CNN pooling | MaxPool |
| Encoder projection units | [256, 256] |
| Reward Term | Weight | Mathematical Formulation |
| Task Reward | ||
| Linear Vel Tracking ( ) | 2.0 | |
| Angular Vel Tracking ( ) | 0.1 | |
| Heading Error | −1.0 | |
| Don’t Wait | −0.5 | |
| Is Alive | 3.0 | |
| Terrain | RGB-D | LiDAR | iPhone | MapAnything | Pi3 |
|---|---|---|---|---|---|
| Stake1 | 0.050 / 0.078 | 0.055 / 0.149 | 0.115/0.194 | 0.115/0.227 | 0.195/0.343 |
| Narrow1 | 0.052 / 0.076 | 0.047 / 0.071 | 0.135/0.232 | 0.115/0.187 | 0.211/0.379 |
| Wedge | 0.029 / 0.036 | 0.045 / 0.057 | 0.048/0.067 | 0.198/0.344 | 0.236/0.396 |
| Trapezoid1 | 0.029 / 0.036 | 0.031 / 0.080 | 0.151/0.247 | 0.210/0.353 | 0.209/0.356 |
| Terrain | Scratch-1 | TTT-13 | TTT-1 |
|---|---|---|---|
| Boxes | >25k | 0 | 0 |
| Wedges | >25k | 250 | 100 |
| Nar.1 | 17k | 70 | 20 |
| Nar.2 | 17k | 70 | 20 |
| Nar.3 | >25k | 70 | 40 |
| Trap.1 | >25k | 230 | 70 |
| Terrains / Methods | Last Layer | Residual | Adapter | Full Fine-tuning (Ours) |
|---|---|---|---|---|
| Narrow1 | 120 | 40 | 40 | 20 |
| Trapezoid1 | 60 | 70 | 60 | 70 |
| Mix2 | 200 | >1000 | 260 | 120 |
| Terrain | Pre-training | Real-world test |
|---|---|---|
| Boxes | Size 0.30–0.82; height 0.30–0.50; gap 0.35 | Height 0.40–0.50; gap 0.31–0.32 |
| Wedges | Size 0.15–0.82; height 0.13–0.35; slope /60 ∘ | Height 0.31; slope 30 ∘ |
| Narrow | Span 1.43–2.63; width 0.15–0.60; height 0.25–0.45; curved | Length 2.0; width 0.14–0.27; height 0.32–0.48; irregularly curved |
| Stakes | Diameter 0.16–0.24; height 0.30–0.45; 5–7 piles | Diameter 0.18; height 0.40; irregular layouts |
| Trapezoids | Top length 0.135–0.275; width 0.81–0.89; height 0.15–0.55 | Width up to 1.0; height 0.35–0.55 |
| Mix1/2 | Single terrain family per training terrain | Cross-family obstacle compositions |
Robot Locomotion
Robot locomotion studies how robots move efficiently and reliably across varied terrains, environments, and movement modes.
See all 233 papers