mjlab
API estilo Isaac Lab sobre MuJoCo Warp acelerado por GPU para RL e pesquisa em robotica
Licença
Apache-2.0
Visão geral
mjlab combina a API de ambientes baseada em gerenciadores do Isaac Lab com o MuJoCo Warp -- a versao acelerada por GPU do MuJoCo. O framework oferece blocos de construcao componiveis para design de ambientes, com dependencias minimas e acesso direto as estruturas de dados nativas do MuJoCo, voltado a aprendizado por reforco e pesquisa em robotica. Mantido ativamente pela organizacao mujocolab, com CI no GitHub Actions, benchmarks noturnos, distribuicao no PyPI e um zoo de modelos em crescimento para humanoides (Unitree G1, Booster T1) e quadrupedes (Unitree Go1).
mjlab e um framework de pesquisa que envolve o MuJoCo Warp -- o backend MuJoCo acelerado por GPU do Google DeepMind -- na API de ambientes baseada em gerenciadores popularizada pelo NVIDIA Isaac Lab. O resultado e uma unica biblioteca Python onde pesquisadores descrevem robo, cena, observacoes, recompensas, randomizacoes e curriculum como gerenciadores componiveis e treinam politicas com milhares de ambientes paralelos por GPU.
O projeto entrega tarefas de treinamento prontas para uso para rastreamento de velocidade humanoide (Unitree G1, Booster T1) e locomocao quadrupede (Unitree Go1) em terreno plano e irregular, alem de motion tracking a partir de dados CMU MoCap. Treinamento distribuido multi-GPU e suportado de fabrica, avaliacao pode rodar durante o treinamento (puxando o checkpoint mais recente do Weights & Biases) e politicas podem ser exportadas e reproduzidas em simulacoes MuJoCo autonomas.
Diferente do Isaac Lab -- que depende do Isaac Sim e da stack NVIDIA RTX -- o mjlab mantem dependencias minimas e expoe diretamente as estruturas MuJoCo nativas, facilitando a integracao com codigo de pesquisa MuJoCo existente e a execucao em qualquer GPU CUDA. E publicado no PyPI, possui benchmarks noturnos e e mantido ativamente pela organizacao mujocolab.
Por que importa
A API baseada em gerenciadores do Isaac Lab se tornou padrao de fato para RL paralelo em larga escala em tarefas de robotica, mas esta atrelada ao NVIDIA Isaac Sim. O mjlab leva a mesma API ergonomica para o ecossistema MuJoCo open source, removendo o lock-in com o Isaac Sim e tornando RL GPU-paralelo acessivel a qualquer equipe ja investida em MuJoCo ou rodando em hardware nao-RTX.
Problema que resolve
Pesquisadores que queriam a API limpa baseada em gerenciadores do Isaac Lab tinham que se comprometer com o NVIDIA Isaac Sim, que e pesado, atrelado a RTX e distante do ecossistema MuJoCo existente. O mjlab oferece a mesma ergonomia em cima do MuJoCo Warp, permitindo que equipes ja confortaveis com MuJoCo (ou rodando em GPUs CUDA comuns) adotem os mesmos padroes de escrita sem trocar de simulador.
Pontos principais
- Reusa a API de ambientes baseada em gerenciadores do Isaac Lab mas roda sobre MuJoCo Warp acelerado por GPU em vez do Isaac Sim
- Inclui tarefas de treinamento para humanoides Unitree G1 / Booster T1, quadrupede Unitree Go1 e motion tracking CMU MoCap
- Treinamento multi-GPU nativo, demo zero-install via uvx, pacote PyPI, notebook Google Colab
- Licenca Apache-2.0, manutencao ativa (2.200+ estrelas, benchmarks noturnos, CI)
- Acesso direto a estruturas de dados MuJoCo facilita integracao com codigo de pesquisa MuJoCo existente
Para quem é
- Pesquisadores RL treinando locomocao humanoide e quadrupede em larga escala
- Laboratorios de robotica ja investidos em MuJoCo que querem ergonomia estilo Isaac Lab
- Equipes sim-to-real que precisam de simulacao leve e scriptavel com motion tracking CMU MoCap
- Engenheiros em hardware CUDA nao-RTX que nao podem usar Isaac Sim
Limitações
- Requer GPU NVIDIA para treinar; macOS apenas para avaliacao
- Mais novo que o Isaac Lab -- ecossistema de tarefas pre-prontas ainda pequeno (foco em locomocao humanoide e quadrupede)
- Atrelado ao MuJoCo Warp, ele mesmo relativamente novo, com lacunas de funcionalidade em relacao ao MuJoCo classico
- Sem stack de visao/percepcao embutida -- combina melhor com politicas que consomem estado proprioceptivo