Instructions to use Menlo/asimov1-locomotion-26-10-05-upper-body with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Asimov
How to use Menlo/asimov1-locomotion-26-10-05-upper-body with Asimov:
# Run the policy in a browser simulation of the Asimov 1 humanoid (no GPU needed) git clone https://github.com/menloresearch/humanoid-policy-viewer cd humanoid-policy-viewer npm install npm run hf Menlo/asimov1-locomotion-26-10-05-upper-body
- Notebooks
- Google Colab
- Kaggle
Asimov 1 locomotion policy checkpoint β 2026-10-05 independent upper-body control
- Velocity-commanded locomotion policy for Asimov 1, trained in Isaac Lab with PPO and adversarial motion priors (AMP).
- The policy controls the 12 leg joints. The waist and arms receive independent position targets, randomized during training so the policy learns to balance through upper-body motion.
- Exported from
model_9500.ptin the2026-10-05_17-24-12_upperik_new_anklerun. policy.onnxis the exported policy for inference, producing leg joint-position actions.policy.ptis the same policy as TorchScript, for running it from PyTorch.agent.yamlrecords the actor-critic and AMP training settings, including the motion data configuration.env.yamlrecords the simulation and locomotion task settings, including observations, actions, commands, and rewards.- Training and evaluation code: menloresearch/cyclotron.
Independent upper-body control
The actor receives joint-position and joint-velocity feedback for all 23 motor joints, but outputs actions only for the 12 leg joints. A separate controller supplies position targets for the 11 waist and arm joints; those targets are not generated by this ONNX policy.
The previous-action observation contains the 12 raw leg actions followed by 11 zeros, retaining a 23-value history term and a total observation size of 78.
Ankle settings
- Ankle-roll action scale is
0.08; the other leg joints use0.25. - Ankle-roll position targets are clipped to
[-0.09, 0.09]radians after applying the action scale and default pose. - Ankle-pitch stiffness/damping are
224.42/10.201. - Ankle-roll stiffness/damping are
35.2/1.6.
Use env.yaml for the full actuator settings, default pose, and action configuration.
How to run
Load policy.onnx with ONNX Runtime, or policy.pt with PyTorch, in an Asimov 1
runtime that supports 12 leg actions, independent upper-body position targets,
and the observation recipe in env.yaml.
The runtime builds observations and runs the policy at 50 Hz. It converts each
raw leg action into a position target using
default_joint_pos + action_scale * action, then applies the ankle-roll target
clipping. These operations happen outside the ONNX graph. Deployment metadata
in the ONNX records the action joint order, scales, offsets, clips, and PD gains.
Inputs and outputs
- Input: float32
obs, shape[1, 78]: base angular velocity, projected gravity, velocity command (vx, vy, wz), full-body joint positions and velocities in motor-slot order, and the zero-padded previous action. - Output: float32
actions, shape[1, 12], in this order: left hip pitch, hip roll, hip yaw, knee, ankle pitch, ankle roll; right hip pitch, hip roll, hip yaw, knee, ankle pitch, ankle roll. - Control rate: 50 Hz (
sim.dt = 0.005,decimation = 4). - Trained in Isaac Lab (PhysX).
The full observation order and action joint list are recorded in env.yaml.
- Downloads last month
- 37