Snow Locomotion β€” Unitree G1

A locomotion policy that walks on variable-depth snow, conditioned on an estimated support signal from a sensorized crampon. Companion to the hackathon-everest foothold-assurance project, whose estimator error statistics this training loop reproduces.

Simulation only. No physical robot, no field-calibrated snow physics, no real sensor data anywhere in the chain. See the claim boundary at the bottom.

Which checkpoint do I want?

directory what it is use it for
baseline-v3 200M-step flat-ground walker, stock Playground config the baseline β€” warm start for every fine-tune, and the comparison policy
curr-s1 curriculum stage 1 β€” snow capped at 112 mm best snow result so far (reward 15.9, episode length 724)
curr-s2 curriculum stage 2 β€” snow capped at 175 mm warm-started from curr-s1
ft-full first fine-tune, brief's original reward weights best non-curriculum snow policy
code/snow_rl the package that produced these reproducing or extending any checkpoint

Ablation arms β€” controls, not deliverables

ft-no_map, ft-no_support, ft-ablation blank the belief map, the bilateral reserve, and the entire sensor channel respectively. They isolate each component's contribution.

Caveat: all three were trained on reward weights that were later measured to walk badly (2% velocity tracking), and came back statistically indistinguishable. Treat them as a method demonstration, not as evidence about the components.

Measured results

Against baseline-v3, identical terrain, seed and commanded velocity (0.8 m/s):

terrain baseline snow-trained
flat (4 mm) 79% tracking, 5.05 m 74%, 4.72 m slight regression
shallow (71 mm) 26% tracking, 1.34 m 60%, 3.59 m 2.7Γ— distance
deep (198 mm) 2% tracking, 1.11 m βˆ’13%, 0.51 m regression

Shallow snow is the result. Deep snow currently regresses β€” the curriculum stages exist to address that, and the deep row should be re-measured against curr-s3 when it lands.

Note that survival time is a misleading metric here: a policy that stops walking maximises it. Five rounds of reward tuning each survived longer while covering less ground before this was caught. Score on distance and velocity tracking.

How it works

Snow is a force field, not geometry. The MuJoCo ground is a flat plane representing hard substrate; snow acts through xfrc_applied β€” depth-dependent sinkage plus ploughing drag on the swing foot. A heightfield would model bumpy solid ground, which is the wrong physics for a surface you sink into.

The policy never sees ground truth. It sees a corrupted estimate whose error statistics are measured from the source project's held-out evaluation: a shrinkage slope of 0.677 (weak ground reads stronger than it is), conditional noise, and a 36.7% false-safe rate β€” on genuinely weak ground, a confident report of 429 N when the truth is 200 N. Physics reads the truth; the policy pays for acting on the lie.

Observations: 156 for the actor (103 stock + 24 estimator + 24 belief map + 5 reserve), 273 for the critic (adds privileged ground truth, discarded at deployment). Actions: 29 joint targets at 50 Hz. Brax PPO, 512/256/128 networks, stock hyperparameters.

Reproducing

from huggingface_hub import snapshot_download
from brax.training.agents.ppo import checkpoint as ck

local = snapshot_download("iteratehack/snow-rl-baseline", allow_patterns="curr-s1/*")
params = ck.load(f"{local}/curr-s1/000061276160")   # (normaliser, policy, value)

Pinned stack: jax==0.7.2, jaxlib==0.7.2, brax==0.14.2, playground==0.2.0, mujoco==3.12.0. Later JAX removes device_put_replicated, which brax still calls.

Claim boundary

  • Simulation only; no physical robot, no validated snow physics, no tested hardware.
  • The estimator error model is reproduced from held-out simulation metrics, not measured on real sensors, and inherits every limitation of the synthetic terrain and reduced-order contact model.
  • The defensible claim is narrow: a locomotion policy conditioned on an estimated support signal outperforms the identical policy without that channel, on identical terrain β€” and as of these checkpoints that holds on shallow snow and not on deep.
Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading