Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

mjlab

建構在 GPU 加速之 MuJoCo Warp 上的 Isaac Lab API,用於強化學習與機器人研究

授權條款

Apache-2.0

概述

mjlab 將 Isaac Lab 以管理器為基礎的環境 API 與 MuJoCo Warp(MuJoCo 的 GPU 加速版本)結合。這個框架提供可組合的環境設計基礎元件,相依套件極少,並可直接存取原生的 MuJoCo 資料結構,鎖定強化學習與機器人研究。由 mujocolab 組織維護,具備活躍的 GitHub Actions CI、每晚執行的效能評測、PyPI 發行,以及持續擴充的模型庫,涵蓋人形機器人(Unitree G1、Booster T1)與四足機器人(Unitree Go1)的行走運動。

mjlab 是一個研究框架,將 MuJoCo Warp(Google DeepMind 的 GPU 加速 MuJoCo 後端)包裝在由 NVIDIA Isaac Lab 推廣的、以管理器為基礎的環境 API 之中。成果是一個單一的 Python 函式庫,研究人員可以把機器人、場景、觀測、獎勵、隨機化與課程描述為可組合的管理器,再以每顆 GPU 數千個平行環境訓練策略。

專案內建可直接訓練的任務,包括平坦與崎嶇地形上的人形機器人速度追蹤(Unitree G1、Booster T1)與四足機器人行走運動(Unitree Go1),以及使用 CMU MoCap 資料的動作追蹤。開箱即支援跨多顆 GPU 的分散式訓練,評估可以在訓練期間同時執行(從 Weights & Biases 取得最新的檢查點),策略也可以匯出並在獨立的 MuJoCo 模擬中重播。

與依賴 Isaac Sim 與 NVIDIA RTX 堆疊的 Isaac Lab 本身不同,mjlab 將相依套件降到最少,並直接開放原生的 MuJoCo 資料結構,因此更容易接入既有、以 MuJoCo 為基礎的研究程式碼,也能在任何 CUDA GPU 上執行。它已發布在 PyPI 上,有每晚執行的效能評測,並由 mujocolab 組織積極維護。

為何重要

Isaac Lab 以管理器為基礎的 API,如今已是機器人任務大規模平行強化學習的事實標準,但它綁定 NVIDIA Isaac Sim。mjlab 將同樣好用的 API 帶到開源的 MuJoCo 生態系,擺脫對 Isaac Sim 的綁定,讓已投入 MuJoCo 或使用非 RTX 硬體的任何團隊,都能使用快速的 GPU 平行強化學習。

解決的問題

想使用 Isaac Lab 簡潔、以管理器為基礎之 API 的研究人員,過去必須投入 NVIDIA Isaac Sim,而它相當笨重、綁定 RTX,且與既有的 MuJoCo 研究生態系相距甚遠。mjlab 在 MuJoCo Warp 之上提供同樣的易用性,讓已熟悉 MuJoCo(或使用一般 CUDA GPU)的團隊不必更換模擬器,就能採用相同的撰寫模式。

重點

  • 沿用 Isaac Lab 以管理器為基礎的環境 API,但執行在 GPU 加速的 MuJoCo Warp 上,而非 Isaac Sim
  • 內建 Unitree G1/Booster T1 人形機器人與 Unitree Go1 四足機器人的訓練任務,以及 CMU MoCap 動作追蹤
  • 原生多 GPU 訓練、透過 uvx 免安裝的示範、PyPI 套件、Google Colab 筆記本
  • 採用 Apache-2.0 授權,積極維護中(2,200 顆以上星星、每晚效能評測、CI)
  • 可直接存取 MuJoCo 資料結構,與既有的 MuJoCo 研究程式碼整合相當直接

適用對象

  • 大規模訓練人形與四足機器人行走運動的強化學習研究人員
  • 已投入 MuJoCo、想要 Isaac Lab 風格易用性的機器人實驗室
  • 需要輕量、可腳本化之模擬,並以 CMU MoCap 驅動動作追蹤的模擬到現實(sim-to-real)團隊
  • 使用非 RTX 的 CUDA 硬體、無法使用 Isaac Sim 的工程師

限制

  • 訓練需要 NVIDIA GPU;macOS 僅能用於評估
  • 專案比 Isaac Lab 本身年輕,預建任務的生態系仍小(聚焦於人形與四足機器人行走運動)
  • 綁定 MuJoCo Warp,而 MuJoCo Warp 本身也相對新,與傳統 MuJoCo 相比仍有持續變動的功能缺口
  • 沒有內建的視覺/感知堆疊,最適合搭配使用本體感知狀態的策略

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。