Skip to main content

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​

  1. Install Isaac Lab by following the Isaac Lab installation guide; Conda is recommended for easier terminal script execution.
  2. Clone booster_train outside the Isaac Lab installation directory.
  3. Download and install booster_assets for Booster robot models and motion data.
  4. Use a Python interpreter with Isaac Lab installed to install booster_train in editable mode.
  5. 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.