Skip to content
TEAM Z日本語
← All articles

· In-house simulation research

Reducing G1’s gait jitter in Isaac Sim: a four-configuration comparison

Original experiment footage is shared with the Japanese edition. Some on-screen labels are in Japanese; methods, results and video descriptions are provided in English below.

G1 moved forward in Isaac Sim but its legs visibly jittered. Smoothing velocity commands and adjusting the tracking camera did not eliminate the issue. We recorded joint motion and compared four configurations. Switching to Unitree’s matched robot model and walking policy reduced high-frequency leg-joint variation by 45.6% relative to the original configuration.

Left: original model in training environment. Right: matched Unitree model and policy. 12 seconds, 50 fps, normal simulation speed, no frame interpolation. Camera position and look-at point match, but model dimensions, rendering pipeline and field of view differ.

Smoothing commands was not enough

Abrupt direction or speed commands can produce abrupt motion, but the issue remained under a constant command. Camera movement had to be separated from actual high-frequency joint motion. Reviewing execution settings showed that the old demo used a training environment with artificial observation noise. Switching to the evaluation PLAY environment helped, but not enough.

The original joint settings and control periods matched saved training settings, so a mismatched period was not an explanation. Training iteration counts differed, but we did not isolate iteration count experimentally and cannot identify it as the cause.

Compare four configurations under the same command

Each test lasts 12 seconds: stationary for two seconds, a one-second ramp to 0.5 m/s, then a constant command. Physics runs at 200 Hz and policy updates at 50 Hz. Evaluation covers seconds 4–11 and 12 hip, knee and ankle joints, avoiding the start transient.

Flat-ground results: one trial per configuration
ConfigurationJoint acceleration RMS (rad/s²)Joint-angle RMS above 6 Hz (rad)Actual forward speed (m/s)
Original model / training86.250.019730.351
Original model / PLAY71.750.017990.297
Isaac Lab distribution cache / PLAY78.470.021540.392
Matched Unitree model + policy47.920.010740.568

Against the original model/training configuration, joint-acceleration RMS fell 44.4% and joint-angle variation above 6 Hz fell 45.6%. The latter uses a fourth-order Butterworth high-pass filter applied forward and backward, then RMS aggregated across time and joints.

Only the commanded speed matches: actual speeds differ. Model and policy changed together, so this does not isolate either component’s effect. The metrics quantify fine oscillation, not the overall naturalness of the gait.

Use a model with its corresponding policy

We used G129_CFG_WITH_DEX3_WHOLEBODY and its policy.onnx from Unitree’s public repository. Observation history, joint ordering, inference and conversion to joint targets reuse the manufacturer’s implementation. We replaced communication with local velocity commands and evaluated the result in simulation.

This integrates and compares a released model/policy pair; it is not a newly trained walking policy. Unitree revision: e30c25b1dffdf92ada1d6c8c1fe9a47bdde0fecc. Runtime: Isaac Sim 5.1 and ONNX Runtime 1.22.1.

A 15-second warehouse walking test

Constant-command walking in NVIDIA Simple Warehouse. 15 seconds, 50 fps, normal simulation speed. This does not show autonomous route following.

G1 walked without falling for 15 seconds; joint-angle RMS above 6 Hz was 0.01067 rad. Lateral drift remains. Walking under a constant command and reaching a chosen destination need separate evaluation.

What was verified, and what followed

Follow-up: connecting this walking configuration to Visual SLAM for mapping and relocalization from another run. The statements below describe the state at the time of the gait experiment.

We verified an improvement in simulation. Physical reproduction was untested; camera/IMU recording, Visual SLAM integration, mapping and relocalization on the new configuration were still pending. Unitree also describes the included weights as intended for simulation testing.

The planned next step was to connect camera and IMU recording, then evaluate localization and route following. Appearance, joint vibration, localization accuracy and arrival at a destination should each be recorded. Reviewing evaluation settings and raw joint motion before repeatedly adjusting commands made this investigation useful. Recording what changed, improved and remained unresolved supports the next experiment.

Source

Unitree’s official repository at the revision used. Measurements and video are TeamZ’s September 6, 2026 results.

Read the Japanese edition →

LET’S BUILD TOGETHER

What are you working on?

Tell us about the software you need to implement or test. We can discuss the work, the development setup and how we could contribute.

Discuss your development needs