mujoco_menagerie

A collection of high-quality models for the MuJoCo physics engine, curated by Google DeepMind.

https://github.com/google-deepmind/mujoco_menagerie

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    3 of 36 committers (8.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.2%) to scientific vocabulary

Keywords

mujoco robotics
Last synced: 6 months ago · JSON representation

Repository

A collection of high-quality models for the MuJoCo physics engine, curated by Google DeepMind.

Basic Info
  • Host: GitHub
  • Owner: google-deepmind
  • License: other
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 404 MB
Statistics
  • Stars: 2,414
  • Watchers: 36
  • Forks: 339
  • Open Issues: 38
  • Releases: 0
Topics
mujoco robotics
Created over 3 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

MuJoCo Menagerie

PRs

Menagerie is a collection of high-quality models for the MuJoCo physics engine, curated by Google DeepMind.

A physics simulator is only as good as the model it is simulating, and in a powerful simulator like MuJoCo with many modeling options, it is easy to create "bad" models which do not behave as expected. The goal of this collection is to provide the community with a curated library of well-designed models that work well right out of the gate.

Gallery

|||||| | :---: | :---: | :---: | :---: | :---: | |||||| |||||| |||||| |||||| |||||| |||||| ||||||

Getting Started

Prerequisites

The minimum required MuJoCo version for each model is specified in its respective README. You can download prebuilt binaries for MuJoCo from the GitHub releases page, or if you are working with Python, you can install the native bindings from PyPI via pip install mujoco. For alternative installation instructions, see here.

Overview

The structure of Menagerie is illustrated below. For brevity, we have only included one model directory since all others follow the exact same pattern.

bash unitree_go2 assets base_0.obj ... go2.png go2.xml LICENSE README.md scene.xml go2_mjx.xml scene_mjx.xml

  • assets: stores the 3D meshes (.stl or .obj) of the model used for visual and collision purposes
  • LICENSE: describes the copyright and licensing terms of the model
  • README.md: contains detailed steps describing how the model's MJCF XML file was generated
  • <model>.xml: contains the MJCF definition of the model
  • scene.xml: includes <model>.xml with a plane, a light source and potentially other objects
  • <model>.png: a PNG image of scene.xml
  • <model>_mjx.xml: contains an MJX-compatible version of the model. Not all models have an MJX variant (see Menagerie Models for more information).
  • scene_mjx.xml: same as scene.xml but loads the MJX variant

Note that <model>.xml solely describes the model, i.e., no other entity is defined in the kinematic tree. We leave additional body definitions for the scene.xml file, as can be seen in the Shadow Hand scene.xml.

Usage

Via robot-descriptions

You can use the opensource robot_descriptions package to load any model in Menagerie. It is available on PyPI and can be installed via pip install robot_descriptions.

Once installed, you can load a model of your choice as follows:

```python import mujoco

Loading a specific model description as an imported module.

from robotdescriptions import pandamjdescription model = mujoco.MjModel.fromxmlpath(pandamjdescription.MJCFPATH)

Directly loading an instance of MjModel.

from robotdescriptions.loaders.mujoco import loadrobotdescription model = loadrobotdescription("pandamj_description")

Loading a variant of the model, e.g. panda without a gripper.

model = loadrobotdescription("pandamjdescription", variant="panda_nohand") ```

Via git clone

You can also directly clone this repository in the directory of your choice:

bash git clone https://github.com/google-deepmind/mujoco_menagerie.git

You can then interactively explore the model using the Python viewer:

bash python -m mujoco.viewer --mjcf mujoco_menagerie/unitree_go2/scene.xml

If you have further questions, please check out our FAQ.

Model Quality and Contributing

Our goal is to eventually make all Menagerie models as faithful as possible to the real system they are being modeled after. Improving model quality is an ongoing effort, and the current state of many models is not necessarily as good as it could be.

However, by releasing Menagerie in its current state, we hope to consolidate and increase visibility for community contributions. To help Menagerie users set proper expectations around the quality of each model, we introduce the following grading system:

| Grade | Description | |-------|-------------------------------------------------------------| | A+ | Values are the product of proper system identification | | A | Values are realistic, but have not been properly identified | | B | Stable, but some values are unrealistic | | C | Conditionally stable, can be significantly improved |

The grading system will be applied to each model once a proper system identification toolbox is created. We are currently planning to release this toolbox later this year.

For more information regarding contributions, for example to add a new model to Menagerie, see CONTRIBUTING.

Menagerie Models

Arms.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | ARX L5 | ARX Robotics | 7 | BSD-3-Clause || | PiPER | AgileX | 7 | MIT || | FR3 | Franka Robotics | 7 | Apache-2.0 || | iiwa14 | KUKA | 7 | BSD-3-Clause || | Lite6 | UFACTORY | 6 | BSD-3-Clause || | Panda | Franka Robotics | 7 | BSD-3-Clause || | Sawyer | Rethink Robotics | 7 | Apache-2.0 || | Unitree Z1 | Unitree Robotics | 6 | BSD-3-Clause || | UR5e | Universal Robots | 6 | BSD-3-Clause || | UR10e | Universal Robots | 6 | BSD-3-Clause || | ViperX 300 | Trossen Robotics | 8 | BSD-3-Clause || | WidowX 250 | Trossen Robotics | 8 | BSD-3-Clause || | xarm7 | UFACTORY | 7 | BSD-3-Clause || | Gen3 | Kinova Robotics | 7 | BSD-3-Clause || | SO-ARM100 | The Robot Studio | 5 | Apache-2.0 || | Koch v1.1 Low-Cost Robot | Hugging Face | 5 | Apache-2.0 || | YAM | I2RT Robotics | 7 | MIT ||

Bipeds.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | Cassie | Agility Robotics | 28 | BSD-3-Clause ||

Dual Arms.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | ALOHA 2 | Trossen Robotics, Google DeepMind | 16 | BSD-3-Clause ||

Drones.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | Crazyflie 2 | Bitcraze | 0 | MIT || | Skydio X2 | Skydio | 0 | Apache-2.0 ||

End-effectors.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | Allegro Hand V3 | Wonik Robotics | 16 | BSD-2-Clause || | UMI Gripper | Stanford University | 1 | MIT || | LEAP Hand | Carnegie Mellon University | 16 | MIT || | Robotiq 2F-85 | Robotiq | 8 | BSD-2-Clause || | Shadow Hand EM35 | Shadow Robot Company | 24 | Apache-2.0 || | Shadow DEX-EE Hand | Shadow Robot Company | 12 | Apache-2.0 ||

Mobile Manipulators.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | Google Robot | Google DeepMind | 9 | Apache-2.0 || | Stanford TidyBot | Stanford University | 11 | MIT || | Stretch 2 | Hello Robot | 17 | Clear BSD || | Stretch 3 | Hello Robot | 17 | Apache-2.0 || | PAL Tiago | PAL Robotics | 12 | Apache-2.0 || | PAL Tiago Dual | PAL Robotics | 21 | Apache-2.0 ||

Mobile Bases.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | Omniwheel Soccer Robot | Robot Soccer Kit | 4 | MIT ||

Humanoids.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | Adam Lite | PNDbotics | 25 | MIT || | Apptronik Apollo | Apptronik | 32 | Apache-2.0 || | Berkeley Humanoid | Hybrid Robotics | 12 | BSD-3-Clause || | Booster T1 | Booster Robotics | 23 | Apache-2.0 || | Fourier N1 | Fourier Robotics | 30 | Apache-2.0 || | Robotis OP3 | Robotis | 20 | Apache-2.0 || | TALOS | PAL Robotics | 32 | Apache-2.0 || | Unitree G1 | Unitree Robotics | 37 | BSD-3-Clause || | Unitree H1 | Unitree Robotics | 19 | BSD-3-Clause ||

Quadrupeds.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | ANYmal B | ANYbotics | 12 | BSD-3-Clause || | ANYmal C | ANYbotics | 12 | BSD-3-Clause || | Spot | Boston Dynamics | 12 | BSD-3-Clause || | Unitree A1 | Unitree Robotics | 12 | BSD-3-Clause || | Unitree Go1 | Unitree Robotics | 12 | BSD-3-Clause || | Unitree Go2 | Unitree Robotics | 12 | BSD-3-Clause || | Google Barkour v0 | Google DeepMind | 12 | Apache-2.0 || | Google Barkour vB | Google DeepMind | 12 | Apache-2.0 ||

Biomechanical.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | IIT Softfoot | IIT Softbots | 92 | BSD-3-Clause || | flybody | Google DeepMind, HHMI Janelia Research Campus | 102 | Apache-2.0 ||

Miscellaneous.

| Name | Maker | DoFs | License | MJX | |------|-------|---------|---------|-----| | D435i | Intel Realsense | 0 | Apache-2.0 ||

Citing Menagerie

If you use Menagerie in your work, please use the following citation:

bibtex @software{menagerie2022github, author = {Zakka, Kevin and Tassa, Yuval and {MuJoCo Menagerie Contributors}}, title = {{MuJoCo Menagerie: A collection of high-quality simulation models for MuJoCo}}, url = {http://github.com/google-deepmind/mujoco_menagerie}, year = {2022}, }

Acknowledgments

The models in this repository are based on third-party models designed by many talented people, and would not have been possible without their generous open-source contributions. We would like to acknowledge all the designers and engineers who made MuJoCo Menagerie possible.

We'd like to thank Pedro Vergani for his help with visuals and design.

The main effort required to make this repository publicly available was undertaken by Kevin Zakka, with help from the Robotics Simulation team at Google DeepMind.

This project has also benefited from contributions by members of the broader community see the CONTRIBUTORS.md for a full list.

Changelog

For a summary of key updates across the repository, see the global CHANGELOG.md.

Each individual model also includes its own CHANGELOG.md file with model-specific updates, linked directly from the corresponding README.

License and Disclaimer

XML and asset files in each individual model directory of this repository are subject to different license terms. Please consult the LICENSE files under each specific model subdirectory for the relevant license and copyright information.

All other content is Copyright 2022 DeepMind Technologies Limited and 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.

Owner

  • Name: Google DeepMind
  • Login: google-deepmind
  • Kind: organization

GitHub Events

Total
  • Create event: 6
  • Issues event: 57
  • Watch event: 930
  • Delete event: 1
  • Member event: 1
  • Issue comment event: 175
  • Push event: 58
  • Pull request review comment event: 66
  • Pull request review event: 91
  • Pull request event: 100
  • Fork event: 143
Last Year
  • Create event: 6
  • Issues event: 57
  • Watch event: 930
  • Delete event: 1
  • Member event: 1
  • Issue comment event: 175
  • Push event: 58
  • Pull request review comment event: 66
  • Pull request review event: 91
  • Pull request event: 100
  • Fork event: 143

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 309
  • Total Committers: 36
  • Avg Commits per committer: 8.583
  • Development Distribution Score (DDS): 0.686
Past Year
  • Commits: 177
  • Committers: 27
  • Avg Commits per committer: 6.556
  • Development Distribution Score (DDS): 0.78
Top Committers
Name Email Commits
Kevin Zakka z****a@g****m 97
Omar o****2@n****u 20
DeepMind n****y@g****m 18
Tom Erez e****m@g****m 16
Baruch Tabanpour b****a@g****m 14
Grégoire Passault g****t@g****m 14
Yuval Tassa t****a@g****m 13
Saran Tunyasuvunakool s****a@g****m 12
varad v****1@g****m 9
louislelay l****s@g****m 9
Eugene Frizza e****a@g****m 8
Alessio Quaglino 1****a 8
dongridong n****4@g****m 7
Nimrod Gileadi n****d@g****m 7
Nikita Cherniadev n****v@g****m 7
JasonChen c****5@1****m 7
alberthli a****i@c****u 6
Andrew a****1@o****m 5
lilkm m****l@l****r 4
Jonathan Zamora j****8@g****m 3
s1lent4gnt k****l@g****m 3
alper111 a****r@g****m 2
Murilo Martins m****s@g****m 2
Lev Kozlov k****0@g****m 2
Chintan Desai c****i@h****m 2
Bálint Hodossy b****6@i****k 2
Sher1ockFan k****n@g****m 2
Victor Lutz v****z@p****m 2
Ayzaan Wahid a****n@g****m 1
Dada Tian l****y@g****m 1
and 6 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 102
  • Total pull requests: 113
  • Average time to close issues: about 2 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 88
  • Total pull request authors: 43
  • Average comments per issue: 2.56
  • Average comments per pull request: 2.62
  • Merged pull requests: 68
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 37
  • Pull requests: 87
  • Average time to close issues: 24 days
  • Average time to close pull requests: 30 days
  • Issue authors: 37
  • Pull request authors: 30
  • Average comments per issue: 1.35
  • Average comments per pull request: 1.69
  • Merged pull requests: 53
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • peterdavidfagan (4)
  • ChristosPeridis (3)
  • gautam1858 (3)
  • jlhalv92 (2)
  • jrabary (2)
  • saikishor (2)
  • lianghongzhuo (2)
  • jonzamora (2)
  • jc-bao (2)
  • zichunxx (2)
  • kingchou007 (1)
  • CHristopher-G-C (1)
  • chenxin199305 (1)
  • vyeevani (1)
  • fanshJ (1)
Pull Request Authors
  • kevinzakka (29)
  • Sher1ockFan (16)
  • saikishor (9)
  • eufrizz (6)
  • nimrod-gileadi (5)
  • omarrayyann (5)
  • s1lent4gnt (4)
  • louislelay (4)
  • nnoott (4)
  • mamoruoka (4)
  • jonzamora (4)
  • Gregwar (4)
  • dongridong (4)
  • thowell (3)
  • lvjonok (3)
Top Labels
Issue Labels
bug (39) new-model (26) question (4) enhancement (1)
Pull Request Labels

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v1 composite