Menagerie est une collection de modèles de haute qualité pour le moteur physique MuJoCo, organisée par Google DeepMind.
Un simulateur physique n'est aussi bon que le modèle qu'il simule, et dans un simulateur puissant comme MuJoCo avec de nombreuses options de modélisation, il est facile de créer de « mauvais » modèles qui ne se comportent pas comme prévu. L'objectif de cette collection est de fournir à la communauté une bibliothèque organisée de modèles bien conçus qui fonctionnent bien dès le départ.
robot-descriptions
git clone
La version minimale requise de MuJoCo pour chaque modèle est spécifiée dans son README respectif. Vous pouvez télécharger des binaires prédéfinis pour MuJoCo à partir de la page des versions de GitHub, ou si vous travaillez avec Python, vous pouvez installer les liaisons natives de PyPI via pip install mujoco
. Pour des instructions d’installation alternatives, voir ici.
La structure de la Ménagerie est illustrée ci-dessous. Par souci de concision, nous n’avons inclus qu’un seul répertoire de modèles puisque tous les autres suivent exactement le même modèle.
├── unitree_go2
│ ├── assets
│ │ ├── base_0.obj
│ │ ├── ...
│ ├── go2.png
│ ├── go2.xml
│ ├── LICENSE
│ ├── README.md
│ └── scene.xml
│ └── go2_mjx.xml
│ └── scene_mjx.xml
assets
: stocke les maillages 3D (.stl ou .obj) du modèle utilisé à des fins de visuel et de collisionLICENSE
: décrit les termes de copyright et de licence du modèleREADME.md
: contient des étapes détaillées décrivant comment le fichier XML MJCF du modèle a été généré<model>.xml
: contient la définition MJCF du modèlescene.xml
: inclut <model>.xml
avec un plan, une source de lumière et potentiellement d'autres objets<model>.png
: une image PNG de scene.xml
<model>_mjx.xml
: contient une version compatible MJX du modèle. Tous les modèles n'ont pas de variante MJX (voir Modèles de ménagerie pour plus d'informations).scene_mjx.xml
: identique à scene.xml
mais charge la variante MJX Notez que <model>.xml
décrit uniquement le modèle, c'est-à-dire qu'aucune autre entité n'est définie dans l'arbre cinématique. Nous laissons des définitions de corps supplémentaires pour le fichier scene.xml
, comme on peut le voir dans Shadow Hand scene.xml
.
robot-descriptions
Vous pouvez utiliser le package open source robot_descriptions
pour charger n'importe quel modèle dans Menagerie. Il est disponible sur PyPI et peut être installé via pip install robot_descriptions
.
Une fois installé, vous pouvez charger un modèle de votre choix comme suit :
import mujoco
# Loading a specific model description as an imported module.
from robot_descriptions import panda_mj_description
model = mujoco . MjModel . from_xml_path ( panda_mj_description . MJCF_PATH )
# Directly loading an instance of MjModel.
from robot_descriptions . loaders . mujoco import load_robot_description
model = load_robot_description ( "panda_mj_description" )
# Loading a variant of the model, e.g. panda without a gripper.
model = load_robot_description ( "panda_mj_description" , variant = "panda_nohand" )
git clone
Vous pouvez également cloner directement ce dépôt dans le répertoire de votre choix :
git clone https://github.com/google-deepmind/mujoco_menagerie.git
Vous pouvez ensuite explorer le modèle de manière interactive à l'aide du visualiseur Python :
python -m mujoco.viewer --mjcf mujoco_menagerie/unitree_go2/scene.xml
Si vous avez d'autres questions, veuillez consulter notre FAQ.
Notre objectif est de rendre à terme tous les modèles de Ménagerie aussi fidèles que possible au système réel sur lequel ils sont modélisés. L'amélioration de la qualité des modèles est un effort continu, et l'état actuel de nombreux modèles n'est pas nécessairement aussi bon qu'il pourrait l'être.
Cependant, en publiant Ménagerie dans son état actuel, nous espérons consolider et accroître la visibilité des contributions de la communauté. Pour aider les utilisateurs de Menagerie à définir des attentes appropriées concernant la qualité de chaque modèle, nous introduisons le système de notation suivant :
Grade | Description |
---|---|
A+ | Les valeurs sont le produit d’une identification appropriée du système |
UN | Les valeurs sont réalistes, mais n'ont pas été correctement identifiées |
B | Stable, mais certaines valeurs sont irréalistes |
C | Stable sous conditions, peut être considérablement amélioré |
Le système de notation sera appliqué à chaque modèle une fois qu'une boîte à outils d'identification du système appropriée sera créée. Nous prévoyons actuellement de publier cette boîte à outils plus tard cette année.
Pour plus d'informations sur les contributions, par exemple pour ajouter un nouveau modèle à Ménagerie, voir CONTRIBUER.
Bras.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
FR3 | Franka Robotique | 7 | Apache-2.0 | ✖️ |
iiwa14 | KUKA | 7 | Clause BSD-3 | ✖️ |
Lite6 | USINE | 6 | Clause BSD-3 | ✖️ |
Panda | Franka Robotique | 7 | Clause BSD-3 | ✔️ |
Scieur | Repenser la robotique | 7 | Apache-2.0 | ✖️ |
Unitree Z1 | Unitree Robotique | 6 | Clause BSD-3 | ✖️ |
UR5e | Robots universels | 6 | Clause BSD-3 | ✖️ |
UR10e | Robots universels | 6 | Clause BSD-3 | ✖️ |
ViperX 300 | Trossen Robotique | 8 | Clause BSD-3 | ✖️ |
VeuveX 250 | Trossen Robotique | 8 | Clause BSD-3 | ✖️ |
xarm7 | USINE | 7 | Clause BSD-3 | ✖️ |
Génération 3 | Kinova Robotique | 7 | Clause BSD-3 | ✖️ |
Bipèdes.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
Cassie | Robotique d'agilité | 28 | Clause BSD-3 | ✖️ |
Doubles bras.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
ALOHA2 | Trossen Robotics, Google DeepMind | 16 | Clause BSD-3 | ✔️ |
Des drones.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
Vol fou 2 | Bitcraze | 0 | MIT | ✖️ |
Skydio X2 | Skydio | 0 | Apache-2.0 | ✖️ |
Effecteurs finaux.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
Allegro Main V3 | Wonik Robotique | 16 | Clause BSD-2 | ✖️ |
SAUT DE LA MAIN | Université Carnegie-Mellon | 16 | MIT | ✖️ |
Robotiq 2F-85 | Robotique | 8 | Clause BSD-2 | ✖️ |
Main de l'Ombre EM35 | Compagnie de robots fantômes | 24 | Apache-2.0 | ✖️ |
Main Ombre DEX-EE | Compagnie de robots fantômes | 12 | Apache-2.0 | ✖️ |
Manipulateurs mobiles.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
Robots Google | Google DeepMind | 9 | Apache-2.0 | ✖️ |
Étirer 2 | Bonjour Robot | 17 | Effacer BSD | ✖️ |
Étirement 3 | Bonjour Robot | 17 | Apache-2.0 | ✖️ |
Humanoïdes.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
Robotis OP3 | Robotis | 20 | Apache-2.0 | ✖️ |
Unitree G1 | Unitree Robotique | 37 | Clause BSD-3 | ✖️ |
Unitree H1 | Unitree Robotique | 19 | Clause BSD-3 | ✖️ |
TALOS | PAL Robotique | 32 | Apache-2.0 | ✖️ |
Quadrupèdes.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
ANYmal B | TOUTbotique | 12 | Clause BSD-3 | ✖️ |
ANYmal C | TOUTbotique | 12 | Clause BSD-3 | ✔️ |
Place | Dynamique de Boston | 12 | Clause BSD-3 | ✖️ |
Unité A1 | Unitree Robotique | 12 | Clause BSD-3 | ✖️ |
Unitree Go1 | Unitree Robotique | 12 | Clause BSD-3 | ✖️ |
Unitree Go2 | Unitree Robotique | 12 | Clause BSD-3 | ✔️ |
Google Barkour v0 | Google DeepMind | 12 | Apache-2.0 | ✔️ |
Google Barkour vB | Google DeepMind | 12 | Apache-2.0 | ✔️ |
Biomécanique.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
corps de mouche | Google DeepMind, Campus de recherche HHMI Janelia | 102 | Apache-2.0 | ✖️ |
Divers.
Nom | Fabricant | DoF | Licence | MJX |
---|---|---|---|---|
D435i | Intel RealSense | 0 | Apache-2.0 | ✖️ |
Si vous utilisez Ménagerie dans votre travail, veuillez utiliser la citation suivante :
@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 } ,
}
Les modèles de ce référentiel sont basés sur des modèles tiers conçus par de nombreuses personnes talentueuses et n'auraient pas été possibles sans leurs généreuses contributions open source. Nous tenons à remercier tous les concepteurs et ingénieurs qui ont rendu MuJoCo Menagerie possible.
Nous tenons à remercier Pedro Vergani pour son aide avec les visuels et la conception.
Le principal effort requis pour rendre ce référentiel accessible au public a été entrepris par Kevin Zakka, avec l'aide de l'équipe Robotics Simulation de Google DeepMind.
Les fichiers XML et d'actifs dans chaque répertoire de modèles individuel de ce référentiel sont soumis à des conditions de licence différentes. Veuillez consulter les fichiers LICENSE
sous chaque sous-répertoire de modèle spécifique pour connaître les informations pertinentes sur la licence et les droits d'auteur.
Tout autre contenu est protégé par Copyright 2022 DeepMind Technologies Limited et sous licence Apache, version 2.0. Une copie de cette licence est fournie dans le fichier LICENSE de niveau supérieur de ce référentiel. Vous pouvez également l'obtenir sur https://www.apache.org/licenses/LICENSE-2.0.
Il ne s'agit pas d'un produit Google officiellement pris en charge.