系列文章目录
目录
前言
mjlab融合了Isaac Lab成熟的API与业界领先的MuJoCo物理引擎,为强化学习机器人研究及仿真到现实部署提供轻量级、模块化的抽象解决方案。
⚠️ 测试版预览mjlab 处于积极开发阶段。测试期间可能出现破坏性变更和功能缺失,目前尚未发布稳定版本。PyPI 上的包仅为快照版本——如需获取最新修复与改进,请从源代码或 Git 安装。
一、快速入门
mjlab 需要 NVIDIA GPU 进行训练(通过 MuJoCo Warp)。macOS 仅支持评估,且速度显著较慢。
# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
运行演示程序(无需安装):
uvx --from mjlab --with "mujoco-warp @ git+https://github.com/google-deepmind/mujoco_warp@486642c3fa262a989b482e0e506716d5793d61a9" demo
这将启动一个交互式查看器,其中预训练的Unitree G1代理正在MuJoCo Warp中追踪参考舞蹈动作。
二、安装
从源代码安装(测试版期间推荐):
git clone https://github.com/mujocolab/mjlab.git
cd mjlab
uv run demo
来自PyPI(测试版快照):
uv add mjlab "mujoco-warp @ git+https://github.com/google-deepmind/mujoco_warp@486642c3fa262a989b482e0e506716d5793d61a9"
三、训练示例
3.1 速度跟踪
训练Unitree G1人形机器人在平坦地形上执行速度指令:
MUJOCO_GL=egl uv run train Mjlab-Velocity-Flat-Unitree-G1 --env.scene.num-envs 4096
在训练过程中评估策略(从Weights & Biases获取最新检查点):
uv run play --task Mjlab-Velocity-Flat-Unitree-G1-Play --wandb-run-path your-org/mjlab/run-id
3.2 动作模仿
训练 Unitree G1 模仿参考动作。mjlab 使用 WandB 管理参考动作数据集:
- 在 WandB 工作区创建名为 Motions 的注册表集合
- 设置 WandB 实体:
export WANDB_ENTITY=your-organization-name
- 处理并上传运动文件:
MUJOCO_GL=egl uv run src/mjlab/scripts/csv_to_npz.py \ --input-file /path/to/motion.csv \ --output-name motion_name \ --input-fps 30 \ --output-fps 50 \ --render # Optional: generates preview video
注:有关详细的运动预处理说明,请参阅BeyondMimic文档。
3.3 训练与播放
MUJOCO_GL=egl uv run train Mjlab-Tracking-Flat-Unitree-G1 --registry-name your-org/motions/motion-name --env.scene.num-envs 4096
uv run play --task Mjlab-Tracking-Flat-Unitree-G1-Play --wandb-run-path your-org/mjlab/run-id