ACT policy: Unitree G1 move_plate (BiGym2, Advaitic balanced-slot protocol)

LeRobot 0.7 ACT checkpoint (act_move_plate_v5, step 50,000) for moving a plate from rack 1 to rack 2 with a Unitree G1 + Dex1-1 grippers in MuJoCo (BiGym2 move_plate, frozen GR00T-WBC lower body).

  • Inputs: 3 RGB cameras 84x84 (head, right wrist, left wrist) + 28 proprioceptive position dims (subset of the evaluator's 50-dim state). No privileged state.
  • Output: 20-dim normalised action (base vx/vy, pelvis height, yaw rate, 2x7 arm joint targets, 2 grippers); chunk 50 with temporal ensembling (0.01), one action per control step.
  • Training data: 360 episodes = 60 BiGym2 human demonstrations (SWIRL-Lab/bigym-g1-native60) + 300 synthetic episodes from a privileged scripted expert (side-step grasp, widened parameters, DART-style execution perturbations), 249,251 frames.
  • Training: batch 256, lr 2e-5 (optimizer and backbone), 50k steps, fp32, ResNet18 backbones (ImageNet init).

Results (30 balanced episodes, 5 per source slot)

Evaluation Success
Validation block 5,000,000 30/30
Official public block 7,310,000 30/30 PASS (5/5 every slot)
Held-out block 8,100,000 (120 episodes) 119/120

videos/act_v5_highlight_reel.mp4: one official success per source slot and the single held-out failure (seed 8100035, slot 1: plate held at the edge of the destination rack, never seated; timeout). All clips are exact replays of the evaluator's recorded actions.

Use

Code, training/data-generation commands and the full experiment log are in the solution repository. Download into the location the policy expects:

hf download Ctrlgb/g1-move-plate-act --exclude "videos/*" --local-dir checkpoints/act_move_plate_v5

Built on SWIRL BiGym2 (task, assets, G1 model, demonstrations) and LeRobot (ACT).

Downloads last month
31
Safetensors
Model size
51.7M params
Tensor type
F32
ยท
Video Preview
loading