• Mayank Mittal's avatar
    Adds RSL-RL symmetry example for cartpole and ANYmal locomotion (#3057) · 71608f94
    Mayank Mittal authored
    # Description
    
    This MR introduces the following:
    
    * An `agent` argument to all scripts to allow selecting different entry
    points (each then get resolved to their respective settings file).
    * Symmetry function for ANYmal robot for the locomotion task and
    cartpole balancing task
    * Documentation on how to configure RL training agent using gym
    resgistry
    
    Fixes #2835
    
    ## Type of change
    
    - New feature (non-breaking change which adds functionality)
    - This change requires a documentation update
    
    ## Screenshots
    
    ### Cartpole
    
    ```bash
    # without symmetry
    ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py --task Isaac-Cartpole-v0 --headless --agent rsl_rl_with_symmetry_cfg_entry_point --run_name ppo_with_no_symmetry agent.algorithm.symmetry_cfg.use_data_augmentation=false
    
    # with symmetry
    ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py --task Isaac-Cartpole-v0--headless --agent rsl_rl_with_symmetry_cfg_entry_point --run_name ppo_with_symmetry_data_augmentation  agent.algorithm.symmetry_cfg.use_data_augmentation=true
    ```
    
    | Isaac-Cartpole-v0 (pink w/o symmetry, blue w/ symmetry) |
    | ------ |
    | <img width="823" height="421" alt="image"
    src="https://github.com/user-attachments/assets/9c33db99-0d79-4c1d-b437-e01275d613b5"
    /> |
    
    ### Locomotion
    
    ```bash
    
    # without symmetry
    ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py --task Isaac-Velocity-Rough-Anymal-D-v0 --headless --agent rsl_rl_with_symmetry_cfg_entry_point --run_name ppo_with_no_symmetry agent.algorithm.symmetry_cfg.use_data_augmentation=false
    
    # with symmetry
    ./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py --task Isaac-Velocity-Rough-Anymal-D-v0 --headless --agent rsl_rl_with_symmetry_cfg_entry_point --run_name ppo_with_symmetry_data_augmentation  agent.algorithm.symmetry_cfg.use_data_augmentation=true
    ```
    
    | Isaac-Velocity-Rough-Anymal-D-v0 (green w/o symmetry, purple w/
    symmetry) |
    | ------ |
    | <img width="1241" height="414" alt="image"
    src="https://github.com/user-attachments/assets/625c125d-db9f-4006-9a62-0d55701a9407"
    /> |
    
    ## Checklist
    
    - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
    `./isaaclab.sh --format`
    - [x] I have made corresponding changes to the documentation
    - [x] My changes generate no new warnings
    - [ ] I have added tests that prove my fix is effective or that my
    feature works
    - [ ] I have updated the changelog and the corresponding version in the
    extension's `config/extension.toml` file
    - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
    exists there
    
    ---------
    Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
    Co-authored-by: 's avatarooctipus <zhengyuz@nvidia.com>
    71608f94
Name
Last commit
Last update
.github Loading commit data...
.vscode Loading commit data...
apps Loading commit data...
docker Loading commit data...
docs Loading commit data...
scripts Loading commit data...
source Loading commit data...
tools Loading commit data...
.dockerignore Loading commit data...
.flake8 Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.pre-commit-config.yaml Loading commit data...
CITATION.cff Loading commit data...
CONTRIBUTING.md Loading commit data...
CONTRIBUTORS.md Loading commit data...
LICENSE Loading commit data...
LICENSE-mimic Loading commit data...
README.md Loading commit data...
SECURITY.md Loading commit data...
VERSION Loading commit data...
environment.yml Loading commit data...
isaaclab.bat Loading commit data...
isaaclab.sh Loading commit data...
pyproject.toml Loading commit data...