This repository contains a reinforcement learning-based controller for bicycle balancing and navigation in simulation. The project uses the Genesis simulator and implements PPO (Proximal Policy Optimization) for training bicycle control policies.
genesis_bicycle.mp4
At first, install Genesis via PyPI:
pip install genesis-world
This project use the PPO implementation from rsl-rl to train the policy. Follow these installation steps:
# Install rsl_rl.
git clone https://github.com/leggedrobotics/rsl_rl
cd rsl_rl && git checkout v1.0.2 && pip install -e .
# Install tensorboard.
pip install tensorboardTrain the bicycle policy using the BicycleEnv environment.
Run with:
python scripts/bicycle_train.py -e bicycle-policy -B 8192 --max_iterations 300Train with visualization:
python scripts/bicycle_train.py -e bicycle-policy -B 8192 --max_iterations 300 -vEvaluate the trained bicycle policy.
Run with:
python scripts/bicycle_eval.py -e bicycle-policy --ckpt 300 --recordNote: If you experience slow performance or encounter other issues
during evaluation, try removing the --record option.
- 3d model Autonomous bicycle (Apache License 2.0)