Humanoids

A humanoid, from its own model.

The G1's bodies, masses, inertias, joint ranges and collision shapes come from its MJCF. A policy drives the joints, and you can push it.

A simulated Unitree G1 humanoid on a dark grid floor crouches, hops and lands on its feet; a translucent blue copy shows the pose its policy plans next.
Recorded in the workbench: the humanoid-jumps world, a Unitree G1 driven by a jump policy. Simulated.

Case study · the G1 hops

Nine hops in 30 seconds, on its feet each time.

The jump policy crouches, pushes off, tucks, lands soft and stands, about every 3.4 s. The study stepped the world for 30 simulated seconds and followed the torso's height.

Simulated

over 11 moving bodies and 10 joints
33.3 kg
hops, the first at 2.3 s
9
the torso rose above its standing height of 904 mm
43 mm
falls: its torso never went below 853 mm
0
ProvenanceFile cloud://global/worlds/humanoid-jumps/world.tsxOutput case-studies/humanoids/stats.jsonTool scripts/sites/case-studies.mjs humanoids (sim-engine.js, Rapier)Ran on This computer (dell-gb10-1)When

The same run, pushed

One push at 10 seconds, and it fell.

The world's own description says it: "the policy catches it, or it falls". The study pulled the torso toward a point 250 mm to the side for 0.15 s, while the robot stood between hops. The policy did not catch it. The torso was 89 mm off the floor 0.7 s later and stayed there.

What this shows is a gap, found in simulation: the jump policy has no recovery from a push of this size.

Open the G1

Simulated

hops before the push, none after
3
the torso's lowest height, at 10.7 s
89 mm
drag commands, recorded like the policy's
2
ProvenanceFile cloud://global/worlds/humanoid-jumps/world.tsxOutput case-studies/humanoids/stats.jsonTool scripts/sites/case-studies.mjs humanoidsRan on This computer (dell-gb10-1)When

Bring your humanoid.

Lower its MJCF into a world, give it a policy, and push it until you know what it does.