Skip to main content

No project description provided

Project description

MuJoCo Playground

Build PyPI version Banner for playground

A comprehensive suite of GPU-accelerated environments for robot learning research and sim-to-real, built with MuJoCo MJX.

Features include:

  • Classic control environments from dm_control reimplemented in MJX.
  • Quadruped and bipedal locomotion environments.
  • Non-prehensile and dexterous manipulation environments.
  • Vision-based support available via Madrona-MJX.

For more details, check out the project website.

Installation

You can install MuJoCo Playground directly from PyPI:

pip install playground

From Source

[!IMPORTANT] Requires Python 3.10 or later.

  1. git clone git@github.com:google-deepmind/mujoco_playground.git && cd mujoco_playground
  2. Install uv, a faster alternative to pip
  3. Create a virtual environment: uv venv --python 3.11
  4. Activate it: source .venv/bin/activate
  5. Install CUDA 12 jax: uv pip install -U "jax[cuda12]"
    • Verify GPU backend: python -c "import jax; print(jax.default_backend())" should print gpu
  6. Install playground: uv pip install -e ".[all]"
  7. Verify installation (and download Menagerie): python -c "import mujoco_playground"

Madrona-MJX (optional)

For vision-based environments, please refer to the installation instructions in the Madrona-MJX repository.

Getting started

Basic Tutorials

Colab Description
Open In Colab Introduction to the Playground with DM Control Suite
Open In Colab Locomotion Environments
Open In Colab Manipulation Environments

Vision-Based Tutorials (GPU Colab)

Colab Description
Open In Colab Training CartPole from Vision (T4 Instance)

Local Runtime Tutorials

Requires local Madrona-MJX installation

Colab Description
Open In Colab Training CartPole from Vision
Open In Colab Robotic Manipulation from Vision

Running from CLI

[!IMPORTANT] Assumes installation from source.

For basic usage, navigate to the repo's directory and run:

python learning/train_jax_ppo.py --env_name CartpoleBalance

Training Visualization

To interactively view trajectories throughout training with rscope, install it (pip install rscope) and run:

python learning/train_jax_ppo.py --env_name PandaPickCube --rscope_envs 16 --run_evals=False --deterministic_rscope=True
# In a separate terminal
python -m rscope

FAQ

How can I contribute?

Get started by installing the library and exploring its features! Found a bug? Report it in the issue tracker. Interested in contributing? If you are a developer with robotics experience, we would love your help—check out the contribution guidelines for more details.

Reproducibility / GPU Precision Issues

Users with NVIDIA Ampere architecture GPUs (e.g., RTX 30 and 40 series) may experience reproducibility issues in mujoco_playground due to JAX’s default use of TF32 for matrix multiplications. This lower precision can adversely affect RL training stability. To ensure consistent behavior with systems using full float32 precision (as on Turing GPUs), please run export JAX_DEFAULT_MATMUL_PRECISION=highest in your terminal before starting your experiments (or add it to the end of ~/.bashrc).

Citation

If you use Playground in your scientific works, please cite it as follows:

@misc{mujoco_playground_2025,
  title = {MuJoCo Playground: An open-source framework for GPU-accelerated robot learning and sim-to-real transfer.},
  author = {Zakka, Kevin and Tabanpour, Baruch and Liao, Qiayuan and Haiderbhai, Mustafa and Holt, Samuel and Luo, Jing Yuan and Allshire, Arthur and Frey, Erik and Sreenath, Koushil and Kahrs, Lueder A. and Sferrazza, Carlo and Tassa, Yuval and Abbeel, Pieter},
  year = {2025},
  publisher = {GitHub},
  url = {https://github.com/google-deepmind/mujoco_playground}
}

License and Disclaimer

The texture used in the rough terrain for the locomotion environments is from Polyhaven and licensed under CC0.

All other content in this repository is licensed under the Apache License, Version 2.0. A copy of this license is provided in the top-level LICENSE file in this repository. You can also obtain it from https://www.apache.org/licenses/LICENSE-2.0.

This is not an officially supported Google product.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

playground-0.0.5.tar.gz (7.3 MB view details)

Uploaded Source

Built Distribution

playground-0.0.5-py3-none-any.whl (7.4 MB view details)

Uploaded Python 3

File details

Details for the file playground-0.0.5.tar.gz.

File metadata

  • Download URL: playground-0.0.5.tar.gz
  • Upload date:
  • Size: 7.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for playground-0.0.5.tar.gz
Algorithm Hash digest
SHA256 cd8a9a623378175c1c460b0bb87bb6800d78e52eb62111708215b14085004c50
MD5 095cdc68ee4704a553b2ae465613aa49
BLAKE2b-256 61f9a430e60d73211cc43d32c21c23ccefca8540aebf1fce666ade6f0d567760

See more details on using hashes here.

File details

Details for the file playground-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: playground-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 7.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for playground-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 73224992b7e3a9ec9f237cfba1769f56e5dbc9f00f00fa3ecfb737d087b890cd
MD5 1859085764cb1ab321875ffef9b3aeb8
BLAKE2b-256 fa41593497bba948b5bddc1684752047407fb3b6b54e72fd9ba23a073612b02f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page