Whole-Body Motion Tracking
Large-batch GPU RL training from state and pixels with RSL-RL across control, manipulation, and humanoid motion tracking.
MuJoCo Playground 1.0 is an open-source suite of sim and real environments built natively on MuJoCo, MuJoCo Warp, and reaf-sim. Plug-and-play examples include large-batch GPU RL training, sim and real teleoperation, system identification, zero-shot sim-to-real deployment, and VLM-guided agentic manipulation.
Playground decouples hardware and sensor I/O (DeviceLayer) from plain-PyTorch task logic (TaskLayer), allowing researchers to move seamlessly between large-batch GPU simulation, interactive CPU simulation in MuJoCo Studio, and physical robot hardware.
Train and visualize a Cartpole policy directly with uvx.
# Train CartpoleBalance (~1 min on CPU)
uvx --default-index https://pypi.org/simple --python 3.13 --from "playground[rl]>=1.0" \
python -m mujoco_playground.rl.rsl_rl.train \
--env=CartpoleBalance \
--logdir=/tmp/rslrl_logs/cartpole_balance \
--overrides='{"nworld": 64}'
# Play trained policy in MuJoCo Studio web viewer
uvx --default-index https://pypi.org/simple --python 3.13 --from "playground[rl]>=1.0" \
python -m mujoco_playground.rl.rsl_rl.play \
--env=CartpoleBalance --resume_path=/tmp/rslrl_logs/cartpole_balance
# Train CartpoleBalance (CUDA 12 driver)
uvx --python 3.13 \
--index https://download.pytorch.org/whl/cu129 \
-f https://github.com/NVIDIA/warp/releases/expanded_assets/v1.18.0 \
--with "warp-lang==1.18.0+cu12" \
--from "playground[rl]>=1.0" \
python -m mujoco_playground.rl.rsl_rl.train \
--env=CartpoleBalance \
--logdir=/tmp/rslrl_logs/cartpole_balance
# Play trained policy in MuJoCo Studio web viewer
uvx --python 3.13 \
--index https://download.pytorch.org/whl/cu129 \
-f https://github.com/NVIDIA/warp/releases/expanded_assets/v1.18.0 \
--with "warp-lang==1.18.0+cu12" \
--from "playground[rl]>=1.0" \
python -m mujoco_playground.rl.rsl_rl.play \
--env=CartpoleBalance \
--resume_path=/tmp/rslrl_logs/cartpole_balance
# Train CartpoleBalance (4,096 parallel envs on GPU)
uvx --python 3.13 --from "playground[rl]>=1.0" \
python -m mujoco_playground.rl.rsl_rl.train \
--env=CartpoleBalance \
--logdir=/tmp/rslrl_logs/cartpole_balance
# Play trained policy in MuJoCo Studio web viewer
uvx --python 3.13 --from "playground[rl]>=1.0" \
python -m mujoco_playground.rl.rsl_rl.play \
--env=CartpoleBalance \
--resume_path=/tmp/rslrl_logs/cartpole_balance
End-to-end examples connecting simulation and real robot hardware under a shared interface.
Large-batch GPU RL training from state and pixels with RSL-RL across control, manipulation, and humanoid motion tracking.
Fitting simulated joint dynamics to logged hardware trajectories via
mujoco.sysid.
Interactive leader-follower teleoperation in MuJoCo Studio and on physical hardware with foot-pedal episode gating and episodic MCAP trajectory logging.
Running the same task layer and trained policy in simulation
(--mode=sim) and on hardware (--mode=real).
Vision-language model (VLM) tabletop control across simulation and physical arms with zero switching cost.
Robots in mujoco_playground/robots/ share canonical joint
ordering and control interfaces across simulation and physical hardware.
| Robot | Modes | Description | Links |
|---|---|---|---|
| SO-101 | simreal | 5-DoF + gripper follower and leader arms with wrist camera | Live model · Hardware setup |
| i2rt YAM Pro | simreal | 6-DoF + gripper manipulation arm with wrist camera | Live model · Hardware setup |
| Trossen WidowX AI | sim | 6-DoF + gripper tabletop manipulation arm | Live model |
| Unitree G1 | sim | 29-DoF humanoid robot for whole-body motion tracking | Live model |