AI model
Perceptive Humanoid Parkour (PHP)
By Amazon FAR, United States (checked on github.com/amazon-far (opens in a new tab)), from github.com/amazon-far/php_parkour (opens in a new tab)
- Humanoids and robot learning
- Apache-2.0 (code)
- Apache-2.0 (weights)
A framework that lets humanoid robots perform long-horizon, vision-based parkour across obstacle courses by chaining retargeted human skills via motion matching.
Facts
- Code last updated
- 13 Oct 2026Newest commit on main
- Maintenance
- Activea commit in the last 90 days
- Difficulty
- Advanced
- Hardware it needs, as the project states it
- Motion matching needs Conda and no IsaacSim; training and evaluation need Linux with an NVIDIA GPU and IsaacSim; sim2sim needs Holosoma's MuJoCo and inference environments.
Checked on GitHub on 6 Nov 2026.
Licenses
- Code
- Apache-2.0 (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit c7c9ce3 (opens in a new tab), on 4 Nov 2026.
- Weights
- Apache-2.0 (opens in a new tab)
Read on github.com/amazon-far/php_parkour/releases/tag/student-asse… (opens in a new tab).
- Commercial use
- Yes
Overview
What it does: Robotheca's summary
- Composes retargeted atomic human skills into long-horizon trajectories offline using motion matching.
- Trains RL expert policies to track those trajectories using privileged state and terrain observations.
- Distills the experts into a depth-based, multi-skill student policy using DAgger and RL.
- Provides an example student policy that can be run in the MuJoCo simulator via exported ONNX models.
- Includes guides for motion matching, training and evaluation, and sim2sim deployment.
Written by Robotheca from the project's README (opens in a new tab) at commit c7c9ce3, not by its creator.
The README
The creator's own README, copied as written: README.md by Amazon FAR, at commit c7c9ce3, under Apache-2.0 (opens in a new tab). The original on GitHub (opens in a new tab).
Read the README here
[RSS 2026] Perceptive Humanoid Parkour: Chaining Dynamic Human Skills via Motion Matching
Zhen Wu*, Xiaoyu Huang*, Lujie Yang*, Yuanhang Zhang, Xi Chen, Pieter Abbeel†, Rocky Duan†, Angjoo Kanazawa†, Carmelo Sferrazza†, Guanya Shi†, C. Karen Liu†
Project page (opens in a new tab) · arXiv (opens in a new tab) · Video (opens in a new tab)

Overview
PHP (Perceptive Humanoid Parkour) enables humanoid robots to autonomously perform long-horizon, vision-based parkour across challenging obstacle courses. The framework has three steps:
- Motion matching. Compose retargeted atomic human skills into long-horizon trajectories offline using motion matching.
- Teacher training. Train RL experts to track the trajectories with privileged state and terrain observations.
- Student training. Distill the experts into a depth-based, multi-skill policy using DAgger + RL.
Get started
For sim2sim with an existing ONNX pair, use the PHP launchers and pinned Holosoma setup (opens in a new tab).
For motion matching and training, clone PHP with its pinned Holosoma submodule:
git clone --recurse-submodules https://github.com/amazon-far/php_parkour.git
cd php_parkour
Choose a guide below for environment setup and commands. For training, use the prepared example datasets (opens in a new tab) or generate your own with motion matching. If you already have an exported ONNX pair, go directly to sim2sim.
| Guide | Workflow | Requirements |
|---|---|---|
| Motion matching (opens in a new tab) | Generate and inspect motion/terrain datasets; upload them for training or add new skills | Conda; no IsaacSim |
| Training and evaluation (opens in a new tab) | Train teachers, distill a student, evaluate checkpoints, and export ONNX | Linux/NVIDIA with IsaacSim |
| Sim2sim (opens in a new tab) | Run the exported depth policy in MuJoCo | Holosoma's MuJoCo and inference environments |
🏃 Try the demo

To try the example student policy in MuJoCo, download the validated ONNX pair from the student release (opens in a new tab). Run from the PHP checkout root:
python scripts/download_assets.py student
The release contains sanitized depth_backbone.onnx and student.onnx files,
without raw .pt or teacher checkpoints. Files default to
~/.cache/php-parkour/student; pass --destination DIR to choose another
directory. The downloader verifies the archive and both model files against
release-assets.json (opens in a new tab).
Follow the sim2sim guide (opens in a new tab) to run the policy. You can also use the automatically exported ONNX pair (opens in a new tab) from your own student training run.
Community projects
- PHP on mjlab (opens in a new tab) — A community port by @yhx1203 (opens in a new tab). See the announcement and videos (opens in a new tab).
Citation
@article{wu2026perceptive,
title={Perceptive humanoid parkour: Chaining dynamic human skills via motion matching},
author={Wu, Zhen and Huang, Xiaoyu and Yang, Lujie and Zhang, Yuanhang and Chen, Xi and Abbeel, Pieter and Duan, Rocky and Kanazawa, Angjoo and Sferrazza, Carmelo and Shi, Guanya and others},
journal={arXiv preprint arXiv:2602.15827},
year={2026}
}
Related: OmniRetarget (opens in a new tab).
The model card
Files and versions
- Repository on GitHubgithub.com/amazon-far/php_parkour (opens in a new tab)
- The version Robotheca readc7c9ce3 (opens in a new tab)
- Latest releasePrepared PHP training motions v1 (8 Oct 2026)
- Where the weights' license was readgithub.com/amazon-far/php_parkour/releases/tag/student-asse… (opens in a new tab)
Robotheca never hosts the code or the weights: each link goes to the creator's own page.
Use it
How to load it, in the creator's words: The project's website (opens in a new tab)
Robotheca doesn't review code. Read it before running it.
Robotheca lists AI models as a reference: nothing is hosted or run here, and every fact links to where it was read.