-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Adds RSL-RL symmetry example for cartpole and ANYmal locomotion #3057
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@Toni-SM for skrl it seems you have users specify the agent/algorithm name. I didn't want to change the behavior there but if you think above solution is generic (or also not - we can discuss), let me know how to proceed for skrl with it. |
While this solution is more generic and doesn't require any code update if a new agent/algorithm is added... at the same time is more tedious to type:
Up to you... I am fine with the proposed change |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you create a new entry point instead of a new task?
To avoid having a lot of duplications in the gym registry for every setting. If there are different algorithms (SAC, PPO etc) I think allowing users to pass entry point cfg makes it easier to scale. |
Test Results Summary2 419 tests 2 011 ✅ 2h 15m 57s ⏱️ Results for commit 6e261f0. ♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is very nice!
Do we need to update CHANGELOG or extension.toml for this one? |
…c-sim#3057) # 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 isaac-sim#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: Kelly Guo <kellyg@nvidia.com> Co-authored-by: ooctipus <zhengyuz@nvidia.com>
Description
This MR introduces the following:
agent
argument to all scripts to allow selecting different entry points (each then get resolved to their respective settings file).Fixes #2835
Type of change
Screenshots
Cartpole
Locomotion
Checklist
pre-commit
checks with./isaaclab.sh --format
config/extension.toml
fileCONTRIBUTORS.md
or my name already exists there