booster_train User Guide
Project Overview
booster_train provides reinforcement learning tasks for Booster robots using Isaac Lab. It follows the standard Isaac Lab project structure and focuses on training deployable control policies for Booster robots. The project currently includes the BeyondMimic motion tracking framework adapted to Booster K1 robots, and is tested with Isaac Lab 2.2 and Isaac Sim 5.0.
boostertrain handles policy training and export. Robot models and motion data come from [boosterassets](https://github.com/BoosterRobotics/booster_assets), and exported policies can be deployed in MuJoCo or on real Booster robots through booster_deploy.
When to Use It
- Train reinforcement learning tasks for Booster robots with Isaac Lab.
- Train K1 motion-tracking policies using the BeyondMimic framework.
- Export trained policies to TorchScript or ONNX for simulation or real-robot deployment.
- Extend new training tasks within the standard Isaac Lab project structure.
Set Up the Environment
- Install Isaac Lab by following the Isaac Lab installation guide; Conda is recommended for easier terminal script execution.
- Clone booster_train outside the Isaac Lab installation directory.
- Download and install booster_assets for Booster robot models and motion data.
- Use a Python interpreter with Isaac Lab installed to install booster_train in editable mode.
- Convert CSV motion data to NPZ for BeyondMimic training.
Clone the Project
git clone https://github.com/BoosterRobotics/booster_train.git
Install the Training Library
# If Isaac Lab is not installed in the current Python venv/conda, use PATH_TO_isaaclab.sh|bat -p instead of python
python -m pip install -e source/booster_train
Prepare BeyondMimic Motion Data
# If Isaac Lab is not installed in the current Python venv/conda, use FULL_PATH_TO_isaaclab.sh|bat -p instead of python
python scripts/csv_to_npz.py --headless --input_file=<PATH_TO_BOOSTER_ASSETS>/motions/K1/<MOTION>.csv --input_fps=<FPS> --output_name=<PATH_TO_BOOSTER_ASSETS>/motions/K1/<MOTION>.npz
Workflow
1. List Available Tasks
python scripts/list_envs.py
2. Train a Task
python scripts/rsl_rl/train.py --task=<TASK_NAME> --headless --device cuda:N
3. Play and Export a Trained Policy
python scripts/rsl_rl/play.py --task=<TASK_NAME> --checkpoint=<CHECKPOINT_PATH>
The play script also exports the trained policy to TorchScript or ONNX under logs/rsl_rl/<EXPERIMENT>/<RUN>/exported/.
Deployment Path
After training and export, use booster_deploy to deploy the policy in MuJoCo or on real Booster robots.
Related Projects
- booster_assets: robot models and motion data.
- booster_deploy: simulation and real-robot deployment.
- whole_body_tracking: the dynamic humanoid motion-tracking framework used by BeyondMimic.