PHC
SoftwarePhysics-based humanoid motion imitation in simulation, with distinct policy configurations for tracking and fall recovery. [1]
Installation & first result →Official websiteGetting started
- For
- Researchers studying simulated humanoid imitation [1]
- Source rights
- Some licenses are unresolved. Review licenses
- Unknowns
- operating system, compute requirements not fully established. Review gaps
Source researched · Not tested by us
Sources checked · Research details
Licenses & related hardware
- License
- BSD-3-Clause-Clear · license not fully assessed for model weights, datasets · Details by part
Overview
Perpetual Humanoid Control (PHC) studies physics-based motion imitation for simulated humanoids, including recovery from falls. It is useful for researchers who need a motion-tracking controller between reference poses and a simulated avatar. The repository also contains robot-specific work, but its avatar results do not by themselves establish physical humanoid performance. [1]
Is this for you?
- Known limitations
- Single-primitive mode lacks the documented failure-state recovery capability.
- Released models use a modified SMPL coordinate convention.
- Reported success depends on evaluation protocol and machine/batch settings.
What you need
- Languages / runtimes
- Python
Installation & first result
Open the upstream getting-started guide [1]
- Prepare the documented Isaac Gym environment and licensed body models.
- Retrieve the checkpoint pair and standing-motion sample matching one README evaluation command.
- Begin with env.num_envs=1 and headless=False; confirm model, motion and coordinate settings agree.
Editorial assessment from cited documentation; no runtime testing.
- Installation
Follow the pinned README dependency setup, prepare body models and inspect download_data.sh for the chosen checkpoint and sample.
Hardware, models & data
- Inputs and outputs
Reference motion and simulated humanoid observations drive learned control policies; evaluation measures tracking in simulation.
Project notes
Choose the policy before copying an evaluation command
PHC's single-primitive model can track motion without the full mixture, but upstream explicitly says it lacks failure-state recovery. Upstream describes the PHC+ keypoint configuration as able to get up and walk back; its rotation-plus-keypoint configuration can get up but not walk back. Keep the checkpoint, robot, observation settings and environment from one documented command together. [1]
For a first evaluation that needs both getting up and walking back, our suggested starting point is the README’s PHC+ keypoint command: exp_name=phc_comp_kp_2, the primitive checkpoint output/HumanoidIm/phc_kp_2/Humanoid.pth, robot=smpl_humanoid, env.obs_v=7 and env.num_prim=3. Its composer checkpoint is downloaded under output/HumanoidIm/phc_comp_kp_2/. Keep the complete command’s other settings, including the standing sample sample_data/amass_isaac_standing_upright_slim.pkl, env.num_envs=1 and headless=False. First prepare the documented Python 3.8, PyTorch/CUDA 11.6 and Isaac Gym environment, then obtain the body models and matching checkpoints. Inspect download_data.sh before using it: it fetches multiple policies and samples, rather than only the files needed for one example. These are upstream setup instructions, not a reproduced installation. [1] [3]
Coordinate conventions affect the result
The released models use a modified SMPL convention: gravity points along negative z and the humanoid faces positive x. The README calls out up_right_start and the conversion work needed when moving back to SMPL. Check this before interpreting a failed imitation as a policy defect. [1]
The reported AMASS results use a particular body shape, height adjustment and evaluation protocol. Upstream notes that batch size and machine setup can change results. We have not reproduced those success rates, and the inspected setup does not establish a minimum GPU-memory budget for a chosen workload. [1]
Check external artifacts separately
This profile pins commit 846988d433ce1f341e85ac6fbd2cd51911bb3341; no GitHub release was listed. Several dependencies follow Git branches, so the PHC commit alone is insufficient to reproduce the environment. [2] [6]
The source license is BSD-3-Clause-Clear and points to separate asset licenses. SMPL models, AMASS motions and externally hosted checkpoints are separate artifacts whose permissions are not established by the root code license. The download script documents those locations; it is not a license grant for them. [7] [1] [3]
We inspected source and made limited artifact-access checks. A sample-data request returned a partial binary response, while a checkpoint request reached a Google Drive download-confirmation page. Complete payloads, checksums and model loading were not verified. No training, simulator evaluation or hardware test was performed. [8]
What we checked
Source researched only; no installation, training, benchmark or physical hardware test performed. No affiliate links or reused media.
Not yet established
- Requirements: operating system, host computer
- Version-specific hardware compatibility (ecosystem tags alone do not establish it)
Updates
- Upstream last updated
- Aug 21, 2025 [6]
- Latest release
- Not established
- Profile updated
- Oct 17, 2026
- Sources last checked
- Oct 17, 2026
- Next review
- Nov 17, 2026
- Reviewed revision
- commit snapshot; no GitHub releases listed / 846988d433ce1f341e85ac6fbd2cd51911bb3341 · software repository
Source files and licenses
Simulation controller source is available under BSD-3-Clause-Clear; external weights, body models and datasets have separately unresolved rights.
| Layer | Availability / license |
|---|---|
| software | available · BSD-3-Clause-Clear Repository materials only; external components retain their own terms. [7] |
| model weights | available · License not fully assessed Upstream download location; check reached a Drive confirmation page. Full payload and independent weight permissions unverified. [3] [8] |
| datasets | available · License not fully assessed Standing sample endpoint returned partial bytes; complete sample and external AMASS/SMPL rights not verified. [3] [8] |
| documentation | available · BSD-3-Clause-Clear Repository materials only; external components retain their own terms. [7] |
References
Each source links to the exact revision we read. “Used for” shows where this page relies on it.
- S001 Controller modes and setup
Revision, date & where cited
ZhengyiLuo/PHC contributors · github.com · revision
846988d· Accessed Oct 17, 2026
Used for: Overview, Is this for you?, What you need, Installation & first result and 4 more - S002 Dependency list
Revision, date & where cited
ZhengyiLuo/PHC contributors · github.com · revision
846988d· Accessed Oct 17, 2026
Used for: What you need, Check external artifacts separately - S003 Checkpoint and sample-data downloads
Revision, date & where cited
ZhengyiLuo/PHC contributors · github.com · revision
846988d· Accessed Oct 17, 2026
Used for: What you need, Installation & first result, Choose the policy before copying an evaluation command, Check external artifacts separately and 1 more - S007 Code and asset license scope
Revision, date & where cited
ZhengyiLuo/PHC contributors · github.com · revision
846988d· Accessed Oct 17, 2026
Used for: Check external artifacts separately, Source files and licenses - S006 Reviewed release and revision
Revision, date & where cited
ZhengyiLuo/PHC / GitHub · github.com · revision
846988d· commit snapshot; no GitHub releases listed / · Accessed Oct 17, 2026
Used for: Check external artifacts separately, What we checked - S008 Limited model and sample endpoint checks
Model confirmation page and partial sample response; no complete payload verified.Revision, date & where cited
PHC authors / Google Drive · drive.google.com · Documented download endpoints; range request and response-type inspection · Accessed Oct 17, 2026
Used for: Check external artifacts separately, Source files and licenses
Correction guidance · Discussion is not enabled · Profile format 0.7.0-draft.5