Skip to content
/ LEEPS Public

[IROS 2024] LEEPS : Learning End-to-End Legged Perceptive Parkour Skills on Challenging Terrains

Notifications You must be signed in to change notification settings

P1terQ/LEEPS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

LEEPS: Learning End-to-End Legged Perceptive Parkour Skills on Challenging Terrains

Website: https://sites.google.com/view/leeps
Paper: Coming Soon

Dependency

Isaac Gym
legged_gym
rsl_rl

Installation

  1. Create a new python virtual env with python 3.6, 3.7 or 3.8 (3.8 recommended). i.e. with conda:
    • conda create -n LEEPS python==3.8
    • conda activate LEEPS
  2. Install required packages:
    • git clone https://github.com/P1terQ/LEEPS.git & cd LEEPS
    • pip install -r requirements.txt
  3. Install Isaac Gym
    • Download and install Isaac Gym Preview 3 (Preview 2 will not work!) from https://developer.nvidia.com/isaac-gym
    • cd isaacgym/python && pip install -e .
    • Try running an example cd examples && python 1080_balls_of_solitude.py
    • For troubleshooting check docs isaacgym/docs/index.html
  4. Install rsl_rl (PPO implementation)
    • Clone this repository
    • cd AMP_for_hardware/rsl_rl && pip install -e .
  5. Install legged_gym
    • cd ../ && pip install -e .

Usage

  1. Train teacher policy:
    python legged_gym/scripts/train_v2_rsl.py --task=a1_v2 --run_name xxx-xx
  2. Train student policy: python legged_gym/scripts/distill_v2_rsl.py --task=a1_v2 --run_name xxx-xx
  3. Play teacher policy: python legged_gym/scripts/play_v2.py --task=a1_v2 --load_run [weight_path]
  4. Play student policy: python legged_gym/scripts/play_v2_student.py --task=a1_v2 --load_run [weight_path]

Arguments

  • To run on CPU add the following arguments: --sim_device=cpu, --rl_device=cpu (sim on CPU and rl on GPU is possible). Default on GPU.
  • To run headless (no rendering) add --headless.
  • To improve performance, once the training starts press v to stop the rendering. You can then enable it later to check the progress.
  • The trained policy is saved in LEEPS/weights/<experiment_name>/<date_time>_<run_name>/model_<iteration>.pt. Where <experiment_name> and <run_name> are defined in the train config.
  • --task TASK: Task name.
  • --resume: Resume training from a checkpoint
  • --experiment_name EXPERIMENT_NAME: Name of the experiment to run or load.
  • --run_name RUN_NAME: Name of the run.
  • --load_run LOAD_RUN: Name of the run to load when resume=True. If -1: will load the last run.
  • --checkpoint CHECKPOINT: Saved model checkpoint number. If -1: will load the last checkpoint.
  • --num_envs NUM_ENVS: Number of environments to create.
  • --seed SEED: Random seed.
  • --max_iterations MAX_ITERATIONS: Maximum number of training iterations.

Robot Parkour

parkour.mp4

Acknowledgement

This work was supported in part by the National Natural Science Foundation of China under Grant U2013601 and 62173314.

About

[IROS 2024] LEEPS : Learning End-to-End Legged Perceptive Parkour Skills on Challenging Terrains

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published