mjlab
L'API di Isaac Lab sopra MuJoCo Warp accelerato da GPU, per la ricerca su RL e robotica
Licenza
Apache-2.0
Panoramica
mjlab combina l'API di ambienti basata su manager di Isaac Lab con MuJoCo Warp, la versione di MuJoCo accelerata da GPU. Il framework fornisce componenti componibili per progettare ambienti, con dipendenze minime e accesso diretto alle strutture dati native di MuJoCo, ed è rivolto alla ricerca sull'apprendimento per rinforzo e sulla robotica. È mantenuto dall'organizzazione mujocolab con una CI attiva su GitHub Actions, benchmark notturni, distribuzione su PyPI e un model zoo in crescita per la locomozione di umanoidi (Unitree G1, Booster T1) e quadrupedi (Unitree Go1).
mjlab è un framework di ricerca che avvolge MuJoCo Warp, il backend MuJoCo accelerato da GPU di Google DeepMind, nell'API di ambienti basata su manager resa popolare da NVIDIA Isaac Lab. Il risultato è un'unica libreria Python in cui i ricercatori possono descrivere robot, scena, osservazioni, ricompense, randomizzazioni e curricula come manager componibili, per poi addestrare policy su migliaia di ambienti paralleli per GPU.
Il progetto include compiti pronti per l'addestramento per l'inseguimento della velocità di umanoidi (Unitree G1, Booster T1) e la locomozione di quadrupedi (Unitree Go1) su terreno piano e accidentato, oltre al motion tracking da dati CMU MoCap. L'addestramento distribuito su più GPU è supportato da subito, la valutazione può girare durante l'addestramento (prelevando l'ultimo checkpoint da Weights & Biases) e le policy possono essere esportate e riprodotte in simulazioni MuJoCo autonome.
A differenza di Isaac Lab vero e proprio, che dipende da Isaac Sim e dallo stack NVIDIA RTX, mjlab mantiene le dipendenze al minimo ed espone direttamente le strutture dati native di MuJoCo, il che rende più facile collegarlo al codice di ricerca esistente basato su MuJoCo ed eseguirlo su qualsiasi GPU CUDA. È pubblicato su PyPI, ha benchmark notturni ed è mantenuto attivamente dall'organizzazione mujocolab.
Perché è importante
L'API basata su manager di Isaac Lab è oggi lo standard di fatto per l'RL parallelo su larga scala nei compiti di robotica, ma è legata a NVIDIA Isaac Sim. mjlab porta la stessa API ergonomica nell'ecosistema open source di MuJoCo, eliminando il vincolo a Isaac Sim e rendendo l'RL veloce e parallelo su GPU accessibile a qualsiasi team che abbia già investito in MuJoCo o che lavori su hardware non RTX.
Il problema che risolve
I ricercatori che volevano l'API pulita basata su manager di Isaac Lab hanno dovuto legarsi a NVIDIA Isaac Sim, che è pesante, vincolato alle GPU RTX e lontano dall'ecosistema di ricerca MuJoCo esistente. mjlab offre la stessa ergonomia sopra MuJoCo Warp, così i team già a loro agio con MuJoCo (o che lavorano su comuni GPU CUDA) possono adottare gli stessi schemi di sviluppo senza cambiare simulatore.
Punti chiave
- Riusa l'API di ambienti basata su manager di Isaac Lab, ma gira su MuJoCo Warp accelerato da GPU anziché su Isaac Sim
- Include compiti di addestramento per gli umanoidi Unitree G1 / Booster T1 e il quadrupede Unitree Go1, oltre al motion tracking da CMU MoCap
- Addestramento multi-GPU nativo, demo senza installazione tramite uvx, pacchetto PyPI, notebook Google Colab
- Con licenza Apache-2.0 e mantenuto attivamente (oltre 2.200 stelle, benchmark notturni, CI)
- L'accesso diretto alle strutture dati di MuJoCo rende semplice l'integrazione con il codice di ricerca MuJoCo esistente
A chi si rivolge
- Ricercatori di RL che addestrano su larga scala la locomozione di umanoidi e quadrupedi
- Laboratori di robotica che hanno già investito in MuJoCo e vogliono un'ergonomia in stile Isaac Lab
- Team sim-to-real che hanno bisogno di una simulazione leggera e programmabile, con motion tracking guidato da CMU MoCap
- Ingegneri che lavorano su hardware CUDA non RTX e non possono usare Isaac Sim
Limiti
- Richiede una GPU NVIDIA per l'addestramento; su macOS è possibile solo la valutazione
- Progetto più giovane di Isaac Lab stesso: l'ecosistema di compiti pronti è ancora piccolo (focalizzato sulla locomozione di umanoidi e quadrupedi)
- Legato a MuJoCo Warp, che a sua volta è relativamente nuovo e ha proprie lacune di funzionalità in evoluzione rispetto al MuJoCo classico
- Nessuno stack integrato di visione/percezione: si abbina meglio a policy che usano lo stato propriocettivo