mjlab
Isaac-Lab-API auf GPU-beschleunigtem MuJoCo Warp für RL- und Robotikforschung
Lizenz
Apache-2.0
Überblick
mjlab kombiniert die manager-basierte Umgebungs-API von Isaac Lab mit MuJoCo Warp -- der GPU-beschleunigten Variante von MuJoCo. Das Framework liefert komponierbare Bausteine für Umgebungsdesign mit minimalen Abhängigkeiten und direktem Zugriff auf native MuJoCo-Datenstrukturen, ausgerichtet auf Reinforcement Learning und Robotikforschung. Es wird aktiv von der mujocolab-Organisation gepflegt, mit GitHub-Actions-CI, nächtlichen Benchmarks, PyPI-Verteilung und einem wachsenden Modell-Zoo für Humanoide (Unitree G1, Booster T1) und Vierbeiner (Unitree Go1).
mjlab ist ein Forschungsframework, das MuJoCo Warp -- Google DeepMinds GPU-beschleunigtes MuJoCo-Backend -- in die manager-basierte Umgebungs-API einpackt, die durch NVIDIA Isaac Lab populär wurde. Das Ergebnis ist eine einzelne Python-Bibliothek, in der Forschende Roboter, Szenen, Beobachtungen, Belohnungen, Randomisierungen und Curricula als komponierbare Manager beschreiben und Policies in tausenden parallelen Umgebungen pro GPU trainieren können.
Das Projekt enthält einsatzbereite Trainingsaufgaben für humanoides Velocity-Tracking (Unitree G1, Booster T1) und Vierbeiner-Locomotion (Unitree Go1) auf flachem und unwegsamem Terrain sowie Motion-Tracking aus CMU-MoCap-Daten. Verteiltes Training auf mehreren GPUs wird out of the box unterstützt, Evaluation kann während des Trainings laufen (mit dem aktuellsten Checkpoint von Weights & Biases), und Policies lassen sich exportieren und in Standalone-MuJoCo-Sims wiedergeben.
Anders als Isaac Lab selbst -- das von Isaac Sim und dem NVIDIA-RTX-Stack abhängt -- hält mjlab die Abhängigkeiten minimal und exponiert native MuJoCo-Datenstrukturen direkt. Damit lässt es sich leichter in bestehenden MuJoCo-basierten Forschungscode einbinden und auf beliebigen CUDA-GPUs betreiben. Es wird auf PyPI veröffentlicht, hat nächtliche Benchmarks und wird aktiv von der mujocolab-Organisation gepflegt.
Warum es wichtig ist
Isaac Labs manager-basierte API ist inzwischen der De-facto-Standard für grossskalige parallele RL auf Robotikaufgaben, ist aber an NVIDIA Isaac Sim gebunden. mjlab bringt dieselbe ergonomische API in das Open-Source-MuJoCo-Ökosystem, hebt das Isaac-Sim-Lock-in auf und macht schnelle GPU-parallele RL für jedes Team zugänglich, das bereits in MuJoCo investiert ist oder auf Nicht-RTX-Hardware läuft.
Welches Problem es löst
Wer Isaac Labs sauber strukturierte manager-basierte API nutzen wollte, musste sich bisher auf NVIDIA Isaac Sim festlegen -- was schwergewichtig, RTX-gebunden und weit vom bestehenden MuJoCo-Forschungsökosystem entfernt ist. mjlab bietet dieselbe Ergonomie auf MuJoCo Warp, sodass MuJoCo-erfahrene Teams (oder solche auf Standard-CUDA-GPUs) dieselben Schreibmuster ohne Simulator-Wechsel übernehmen können.
Wichtigste Punkte
- Wiederverwendung der manager-basierten Umgebungs-API von Isaac Lab, laeuft jedoch auf GPU-beschleunigtem MuJoCo Warp statt Isaac Sim
- Liefert Trainingsaufgaben für Unitree-G1/Booster-T1-Humanoide und Unitree-Go1-Vierbeiner sowie CMU-MoCap-Motion-Tracking
- Native Multi-GPU-Trainings, Zero-Install-Demo via uvx, PyPI-Paket, Google-Colab-Notebook
- Apache-2.0-Lizenz, aktiv gepflegt (2.200+ Stars, naechtliche Benchmarks, CI)
- Direkter Zugriff auf MuJoCo-Datenstrukturen erleichtert die Integration mit bestehendem MuJoCo-Forschungscode
Für wen
- RL-Forschende, die Humanoid- und Vierbeiner-Locomotion grossskalig trainieren
- Robotik-Labore, die bereits in MuJoCo investiert sind und Isaac-Lab-aehnliche Ergonomie wuenschen
- Sim-to-Real-Teams, die leichtgewichtige, skriptfähige Simulation mit CMU-MoCap-Motion-Tracking benötigen
- Entwickelnde auf Nicht-RTX-CUDA-Hardware, die Isaac Sim nicht nutzen können
Einschränkungen
- Erfordert eine NVIDIA-GPU fürs Training; macOS ist nur für Evaluation
- Juenger als Isaac Lab selbst -- das Oekosystem vorgefertigter Aufgaben ist noch klein (Fokus auf Humanoid-/Vierbeiner-Locomotion)
- An MuJoCo Warp gebunden, das selbst recht neu ist und gegenueber dem klassischen MuJoCo eigene Featureluecken aufweist
- Kein eingebauter Vision-/Wahrnehmungs-Stack -- passt am besten zu Policies, die proprioceptive Zustaende verarbeiten