Integration of the skrl RL library#6
Integration of the skrl RL library#6Mayankm96 merged 29 commits intoisaac-sim:mainfrom Toni-SM:skrl-integration
Conversation
|
Thanks a lot for the pull request! I'll take a look at it tomorrow. Can you please also update the changelog and the version in the
|
|
Done, CHANGELOG and extension.toml files updated!!! |
|
Hi! I finally got time today to test this out. I am yet to try training on the classic environments but would be nice to do some evaluations while having the same configurations for PPO across the frameworks. Right now, mostly tried training for the reach environment. I have the following comments. Issues
Nice to haves
Additional comments
|
|
Hi @Mayankm96 Comments:
Nice to haves
Additional comments
|
Mayankm96
left a comment
There was a problem hiding this comment.
Thanks a lot for providing more information. I just added some minor feedback on the code to understand things a bit better. Once that is cleared up, we can merge this awesome PR :)
|
Done... Summary:
|
Mayankm96
left a comment
There was a problem hiding this comment.
The PR looks good to me now. Thanks a lot for working on skrl integration. It is great to have more libraries supported in the workflows.
Would love to try out other agents as well in skrl at some point and provide examples :)
|
Great! By the way... The online documentation does not reflect any changes 🤔 |
|
It should be up now! :) By the way, I made some minor refactoring in this commit f7e4183 :
|
|
Nice... It looks much better now |
# Description This PR introduces an actuator model that takes care of the Serial to Parallel conversion for the dynaarm, (Part of the dynaarm integration isaac-sim#6) ## Type of change - New feature (non-breaking change which adds functionality) ## Screenshots ## 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 - [ ] I have added my name to the `CONTRIBUTORS.md` or my name already exists there --------- Co-authored-by: Pascal Roth <57946385+pascal-roth@users.noreply.github.com> Co-authored-by: Mayank Mittal <mittalma@leggedrobotics.com>
# Description Adds the dynaarm asset with and without covers and the correct collision shapes. It depends on the Parallel Actuator model from isaac-sim#7 To view an example: ```python ./isaaclab.sh -p source/standalone/demos/dynaarms.py ```  (This PR is part of isaac-sim#6) ## Type of change - New feature (non-breaking change which adds functionality) ## Screenshots ## 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 - [ ] I have added my name to the `CONTRIBUTORS.md` or my name already exists there --------- Co-authored-by: Pascal <roth.pascal@outlook.de>
# Description ```bash ./isaaclab.sh -p source/standalone/environments/random_agent.py --task Isaac-Sysid-Dynaarm-v0 --num_envs 2 ./isaaclab.sh -p source/standalone/environments/random_agent.py --task Isaac-Sysid-Dynaarm-Covers-v0 --num_envs 2 ``` This PR adds the sysid environments for the dynaarm. Sysid environments are environments which only contain the standalone assets and directly observe joint positions and velocities. This PR depends on isaac-sim#7 and isaac-sim#8, which need to be merged first. Related Issue: isaac-sim#6 ## Type of change <!-- As you go through the list, delete the ones that are not applicable. --> - New feature (non-breaking change which adds functionality) ## Screenshots Please attach before and after screenshots of the change if applicable. ## 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 - [ ] I have added my name to the `CONTRIBUTORS.md` or my name already exists there <!-- As you go through the checklist above, you can mark something as done by putting an x character in it For example, - [x] I have done this task - [ ] I have not done this task --> --------- Co-authored-by: Pascal Roth <57946385+pascal-roth@users.noreply.github.com> Co-authored-by: Pascal <roth.pascal@outlook.de>
Add RAII-style context managers for safe raw Fabric access: - fabric_write(): calls PrepareForReuse on entry, update_world_xforms + sync on exit. Provides world_matrices fabricarray and view_to_fabric mapping for custom warp kernel launches. - fabric_read(): calls PrepareForReuse on entry (ensures valid pointers after topology changes), no-op on exit. Also exposes read-only properties: - world_matrices: the raw fabricarray of omni:fabric:worldMatrix - view_to_fabric_mapping: the view-index to fabric-index mapping This addresses Piotr's Issue isaac-sim#6 (reader/writer pattern) by providing a structured way to bracket Fabric operations that ensures PrepareForReuse and hierarchy updates are never forgotten. Tests added: - test_fabric_write_context_manager: validates write + readback - test_fabric_read_context_manager: validates read without side effects Depends on: fix/fabric-prepare-for-reuse (PR isaac-sim#5380)
Add RAII-style context managers for safe raw Fabric access: - fabric_write(): calls PrepareForReuse on entry, update_world_xforms + sync on exit. Provides world_matrices fabricarray and view_to_fabric mapping for custom warp kernel launches. - fabric_read(): calls PrepareForReuse on entry (ensures valid pointers after topology changes), no-op on exit. Also exposes read-only properties: - world_matrices: the raw fabricarray of omni:fabric:worldMatrix - view_to_fabric_mapping: the view-index to fabric-index mapping This addresses Piotr's Issue isaac-sim#6 (reader/writer pattern) by providing a structured way to bracket Fabric operations that ensures PrepareForReuse and hierarchy updates are never forgotten. Tests added: - test_fabric_write_context_manager: validates write + readback - test_fabric_read_context_manager: validates read without side effects Depends on: fix/fabric-prepare-for-reuse (PR isaac-sim#5380)
Add RAII-style context managers for safe raw Fabric access: - fabric_write(): calls PrepareForReuse on entry, update_world_xforms + sync on exit. Provides world_matrices fabricarray and view_to_fabric mapping for custom warp kernel launches. - fabric_read(): calls PrepareForReuse on entry (ensures valid pointers after topology changes), no-op on exit. Also exposes read-only properties: - world_matrices: the raw fabricarray of omni:fabric:worldMatrix - view_to_fabric_mapping: the view-index to fabric-index mapping This addresses Piotr's Issue isaac-sim#6 (reader/writer pattern) by providing a structured way to bracket Fabric operations that ensures PrepareForReuse and hierarchy updates are never forgotten. Tests added: - test_fabric_write_context_manager: validates write + readback - test_fabric_read_context_manager: validates read without side effects Depends on: fix/fabric-prepare-for-reuse (PR isaac-sim#5380)
Add RAII-style context managers for safe raw Fabric access: - fabric_write(): calls PrepareForReuse on entry, update_world_xforms + sync on exit. Provides world_matrices fabricarray and view_to_fabric mapping for custom warp kernel launches. - fabric_read(): calls PrepareForReuse on entry (ensures valid pointers after topology changes), no-op on exit. Also exposes read-only properties: - world_matrices: the raw fabricarray of omni:fabric:worldMatrix - view_to_fabric_mapping: the view-index to fabric-index mapping This addresses Piotr's Issue isaac-sim#6 (reader/writer pattern) by providing a structured way to bracket Fabric operations that ensures PrepareForReuse and hierarchy updates are never forgotten. Tests added: - test_fabric_write_context_manager: validates write + readback - test_fabric_read_context_manager: validates read without side effects Depends on: fix/fabric-prepare-for-reuse (PR isaac-sim#5380)
Add RAII-style context managers for safe raw Fabric access: - fabric_write(): calls PrepareForReuse on entry, update_world_xforms + sync on exit. Provides world_matrices fabricarray and view_to_fabric mapping for custom warp kernel launches. - fabric_read(): calls PrepareForReuse on entry (ensures valid pointers after topology changes), no-op on exit. Also exposes read-only properties: - world_matrices: the raw fabricarray of omni:fabric:worldMatrix - view_to_fabric_mapping: the view-index to fabric-index mapping This addresses Piotr's Issue isaac-sim#6 (reader/writer pattern) by providing a structured way to bracket Fabric operations that ensures PrepareForReuse and hierarchy updates are never forgotten. Tests added: - test_fabric_write_context_manager: validates write + readback - test_fabric_read_context_manager: validates read without side effects Depends on: fix/fabric-prepare-for-reuse (PR isaac-sim#5380)



Description
Integration of the skrl reinforcement learning library
Dependencies:
Type of change
Checklist
pre-commitchecks withpre-commit run --all-files(see here instructions to set it up)config/extension.tomlfile