Skip to content

Commit 9c9feec

Browse files
committed
Merge branch 'main' into feature/g1imitation
2 parents ac536ae + 75824e8 commit 9c9feec

78 files changed

Lines changed: 2051 additions & 262 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CONTRIBUTORS.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,13 @@ Guidelines for modifications:
4040
* Amr Mousa
4141
* Andrej Orsula
4242
* Anton Bjørndahl Mortensen
43+
* Antonin Raffin
4344
* Arjun Bhardwaj
4445
* Ashwin Varghese Kuruttukulam
4546
* Bikram Pandit
4647
* Bingjie Tang
4748
* Brayden Zhang
49+
* Brian Bingham
4850
* Cameron Upright
4951
* Calvin Yu
5052
* Cheng-Rong Lai
@@ -74,6 +76,7 @@ Guidelines for modifications:
7476
* Jinqi Wei
7577
* Johnson Sun
7678
* Kaixi Bao
79+
* Kris Wilson
7780
* Kourosh Darvish
7881
* Kousheek Chakraborty
7982
* Lionel Gulich
@@ -86,6 +89,7 @@ Guidelines for modifications:
8689
* Miguel Alonso Jr
8790
* Muhong Guo
8891
* Nicola Loi
92+
* Norbert Cygiert
8993
* Nuoyan Chen (Alvin)
9094
* Nuralem Abizov
9195
* Ori Gadot
@@ -102,6 +106,7 @@ Guidelines for modifications:
102106
* Rosario Scalise
103107
* Ryley McCarroll
104108
* Shafeef Omar
109+
* Shaoshu Su
105110
* Shundo Kishi
106111
* Stefan Van de Mosselaer
107112
* Stephan Pleines
@@ -119,6 +124,7 @@ Guidelines for modifications:
119124
* Zhengyu Zhang
120125
* Ziqi Fan
121126
* Zoe McCarthy
127+
* David Leon
122128

123129
## Acknowledgements
124130

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,13 @@ or opening a question on its [forums](https://forums.developer.nvidia.com/c/agx-
9797

9898
## Connect with the NVIDIA Omniverse Community
9999

100-
Have a project or resource you'd like to share more widely? We'd love to hear from you! Reach out to the
101-
NVIDIA Omniverse Community team at <[email protected]> to discuss potential opportunities
102-
for broader dissemination of your work.
100+
Do you have a project or resource you'd like to share more widely? We'd love to hear from you!
101+
Reach out to the NVIDIA Omniverse Community team at [email protected] to explore opportunities
102+
to spotlight your work.
103103

104-
Join us in building a vibrant, collaborative ecosystem where creativity and technology intersect. Your
105-
contributions can make a significant impact on the Isaac Lab community and beyond!
104+
You can also join the conversation on the [Omniverse Discord](https://discord.com/invite/nvidiaomniverse) to
105+
connect with other developers, share your projects, and help grow a vibrant, collaborative ecosystem
106+
where creativity and technology intersect. Your contributions can make a meaningful impact on the Isaac Lab community and beyond!
106107

107108
## License
108109

239 KB
Loading
245 KB
Loading
235 KB
Loading

docs/source/how-to/add_own_library.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Integrating a new library
6363

6464
Adding a new library to Isaac Lab is similar to using a different version of a library. You can install the library
6565
in your Python environment and use it in your experiments. However, if you want to integrate the library with
66-
Isaac Lab, you can will first need to make a wrapper for the library, as explained in
66+
Isaac Lab, you will first need to make a wrapper for the library, as explained in
6767
:ref:`how-to-env-wrappers`.
6868

6969
The following steps can be followed to integrate a new library with Isaac Lab:

docs/source/overview/core-concepts/actuators.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ maximum effort:
3535
.. math::
3636
3737
\tau_{j, computed} & = k_p * (q_{des} - q) + k_d * (\dot{q}_{des} - \dot{q}) + \tau_{ff} \\
38+
\tau_{j, max} & = \gamma \times \tau_{motor, max} \\
3839
\tau_{j, applied} & = clip(\tau_{computed}, -\tau_{j, max}, \tau_{j, max})
3940
4041

docs/source/overview/environments.rst

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,12 @@ We provide environments for both disassembly and assembly.
214214
wget https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux.run
215215
sudo sh cuda_12.8.0_570.86.10_linux.run
216216
217+
When using conda, cuda toolkit can be installed with:
218+
219+
.. code-block:: bash
220+
221+
conda install cudatoolkit
222+
217223
For addition instructions and Windows installation, please refer to the `CUDA installation page <https://developer.nvidia.com/cuda-12-8-0-download-archive>`_.
218224

219225
* |disassembly-link|: The plug starts inserted in the socket. A low-level controller lifts the plug out and moves it to a random position. This process is purely scripted and does not involve any learned policy. Therefore, it does not require policy training or evaluation. The resulting trajectories serve as demonstrations for the reverse process, i.e., learning to assemble. To run disassembly for a specific task: ``python source/isaaclab_tasks/isaaclab_tasks/direct/automate/run_disassembly_w_id.py --assembly_id=ASSEMBLY_ID --disassembly_dir=DISASSEMBLY_DIR``. All generated trajectories are saved to a local directory ``DISASSEMBLY_DIR``.
@@ -288,6 +294,12 @@ Environments based on legged locomotion tasks.
288294
+------------------------------+----------------------------------------------+------------------------------------------------------------------------------+
289295
| |velocity-rough-g1| | |velocity-rough-g1-link| | Track a velocity command on rough terrain with the Unitree G1 robot |
290296
+------------------------------+----------------------------------------------+------------------------------------------------------------------------------+
297+
| |velocity-flat-digit| | |velocity-flat-digit-link| | Track a velocity command on flat terrain with the Agility Digit robot |
298+
+------------------------------+----------------------------------------------+------------------------------------------------------------------------------+
299+
| |velocity-rough-digit| | |velocity-rough-digit-link| | Track a velocity command on rough terrain with the Agility Digit robot |
300+
+------------------------------+----------------------------------------------+------------------------------------------------------------------------------+
301+
| |tracking-loco-manip-digit| | |tracking-loco-manip-digit-link| | Track a root velocity and hand pose command with the Agility Digit robot |
302+
+------------------------------+----------------------------------------------+------------------------------------------------------------------------------+
291303

292304
.. |velocity-flat-anymal-b-link| replace:: `Isaac-Velocity-Flat-Anymal-B-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/velocity/config/anymal_b/flat_env_cfg.py>`__
293305
.. |velocity-rough-anymal-b-link| replace:: `Isaac-Velocity-Rough-Anymal-B-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/velocity/config/anymal_b/rough_env_cfg.py>`__
@@ -318,6 +330,9 @@ Environments based on legged locomotion tasks.
318330
.. |velocity-flat-g1-link| replace:: `Isaac-Velocity-Flat-G1-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/velocity/config/g1/flat_env_cfg.py>`__
319331
.. |velocity-rough-g1-link| replace:: `Isaac-Velocity-Rough-G1-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/velocity/config/g1/rough_env_cfg.py>`__
320332

333+
.. |velocity-flat-digit-link| replace:: `Isaac-Velocity-Flat-Digit-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/velocity/config/digit/flat_env_cfg.py>`__
334+
.. |velocity-rough-digit-link| replace:: `Isaac-Velocity-Rough-Digit-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/velocity/config/digit/rough_env_cfg.py>`__
335+
.. |tracking-loco-manip-digit-link| replace:: `Isaac-Tracking-Flat-Digit-v0 <https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab_tasks/isaaclab_tasks/manager_based/locomotion/tracking/config/digit/loco_manip_env_cfg.py>`__
321336

322337
.. |velocity-flat-anymal-b| image:: ../_static/tasks/locomotion/anymal_b_flat.jpg
323338
.. |velocity-rough-anymal-b| image:: ../_static/tasks/locomotion/anymal_b_rough.jpg
@@ -336,6 +351,9 @@ Environments based on legged locomotion tasks.
336351
.. |velocity-rough-h1| image:: ../_static/tasks/locomotion/h1_rough.jpg
337352
.. |velocity-flat-g1| image:: ../_static/tasks/locomotion/g1_flat.jpg
338353
.. |velocity-rough-g1| image:: ../_static/tasks/locomotion/g1_rough.jpg
354+
.. |velocity-flat-digit| image:: ../_static/tasks/locomotion/agility_digit_flat.jpg
355+
.. |velocity-rough-digit| image:: ../_static/tasks/locomotion/agility_digit_rough.jpg
356+
.. |tracking-loco-manip-digit| image:: ../_static/tasks/locomotion/agility_digit_loco_manip.jpg
339357

340358
Navigation
341359
~~~~~~~~~~
@@ -554,6 +572,10 @@ Environments based on fixed-arm manipulation tasks.
554572
Comprehensive List of Environments
555573
==================================
556574

575+
For environments that have a different task name listed under ``Inference Task Name``, please use the Inference Task Name
576+
provided when running ``play.py`` or any inferencing workflows. These tasks provide more suitable configurations for
577+
inferencing, including reading from an already trained checkpoint and disabling runtime perturbations used for training.
578+
557579
.. list-table::
558580
:widths: 33 25 19 25
559581

@@ -761,6 +783,10 @@ Comprehensive List of Environments
761783
-
762784
- Manager Based
763785
-
786+
* - Isaac-Tracking-LocoManip-Digit-v0
787+
- Isaac-Tracking-LocoManip-Digit-Play-v0
788+
- Manager Based
789+
- **rsl_rl** (PPO)
764790
* - Isaac-Navigation-Flat-Anymal-C-v0
765791
- Isaac-Navigation-Flat-Anymal-C-Play-v0
766792
- Manager Based
@@ -869,6 +895,10 @@ Comprehensive List of Environments
869895
- Isaac-Velocity-Flat-Cassie-Play-v0
870896
- Manager Based
871897
- **rsl_rl** (PPO), **skrl** (PPO)
898+
* - Isaac-Velocity-Flat-Digit-v0
899+
- Isaac-Velocity-Flat-Digit-Play-v0
900+
- Manager Based
901+
- **rsl_rl** (PPO)
872902
* - Isaac-Velocity-Flat-G1-v0
873903
- Isaac-Velocity-Flat-G1-Play-v0
874904
- Manager Based
@@ -884,7 +914,7 @@ Comprehensive List of Environments
884914
* - Isaac-Velocity-Flat-Unitree-A1-v0
885915
- Isaac-Velocity-Flat-Unitree-A1-Play-v0
886916
- Manager Based
887-
- **rsl_rl** (PPO), **skrl** (PPO)
917+
- **rsl_rl** (PPO), **skrl** (PPO), **sb3** (PPO)
888918
* - Isaac-Velocity-Flat-Unitree-Go1-v0
889919
- Isaac-Velocity-Flat-Unitree-Go1-Play-v0
890920
- Manager Based
@@ -913,6 +943,10 @@ Comprehensive List of Environments
913943
- Isaac-Velocity-Rough-Cassie-Play-v0
914944
- Manager Based
915945
- **rsl_rl** (PPO), **skrl** (PPO)
946+
* - Isaac-Velocity-Rough-Digit-v0
947+
- Isaac-Velocity-Rough-Digit-Play-v0
948+
- Manager Based
949+
- **rsl_rl** (PPO)
916950
* - Isaac-Velocity-Rough-G1-v0
917951
- Isaac-Velocity-Rough-G1-Play-v0
918952
- Manager Based
@@ -924,7 +958,7 @@ Comprehensive List of Environments
924958
* - Isaac-Velocity-Rough-Unitree-A1-v0
925959
- Isaac-Velocity-Rough-Unitree-A1-Play-v0
926960
- Manager Based
927-
- **rsl_rl** (PPO), **skrl** (PPO)
961+
- **rsl_rl** (PPO), **skrl** (PPO), **sb3** (PPO)
928962
* - Isaac-Velocity-Rough-Unitree-Go1-v0
929963
- Isaac-Velocity-Rough-Unitree-Go1-Play-v0
930964
- Manager Based

docs/source/overview/reinforcement-learning/rl_existing_scripts.rst

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ Stable-Baselines3
187187

188188
- Training an agent with
189189
`Stable-Baselines3 <https://stable-baselines3.readthedocs.io/en/master/index.html>`__
190-
on ``Isaac-Cartpole-v0``:
190+
on ``Isaac-Velocity-Flat-Unitree-A1-v0``:
191191

192192
.. tab-set::
193193
:sync-group: os
@@ -200,14 +200,13 @@ Stable-Baselines3
200200
# install python module (for stable-baselines3)
201201
./isaaclab.sh -i sb3
202202
# run script for training
203-
# note: we set the device to cpu since SB3 doesn't optimize for GPU anyway
204-
./isaaclab.sh -p scripts/reinforcement_learning/sb3/train.py --task Isaac-Cartpole-v0 --headless --device cpu
203+
./isaaclab.sh -p scripts/reinforcement_learning/sb3/train.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --headless
205204
# run script for playing with 32 environments
206-
./isaaclab.sh -p scripts/reinforcement_learning/sb3/play.py --task Isaac-Cartpole-v0 --num_envs 32 --checkpoint /PATH/TO/model.zip
205+
./isaaclab.sh -p scripts/reinforcement_learning/sb3/play.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --num_envs 32 --checkpoint /PATH/TO/model.zip
207206
# run script for playing a pre-trained checkpoint with 32 environments
208-
./isaaclab.sh -p scripts/reinforcement_learning/sb3/play.py --task Isaac-Cartpole-v0 --num_envs 32 --use_pretrained_checkpoint
207+
./isaaclab.sh -p scripts/reinforcement_learning/sb3/play.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --num_envs 32 --use_pretrained_checkpoint
209208
# run script for recording video of a trained agent (requires installing `ffmpeg`)
210-
./isaaclab.sh -p scripts/reinforcement_learning/sb3/play.py --task Isaac-Cartpole-v0 --headless --video --video_length 200
209+
./isaaclab.sh -p scripts/reinforcement_learning/sb3/play.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --headless --video --video_length 200
211210
212211
.. tab-item:: :icon:`fa-brands fa-windows` Windows
213212
:sync: windows
@@ -217,14 +216,13 @@ Stable-Baselines3
217216
:: install python module (for stable-baselines3)
218217
isaaclab.bat -i sb3
219218
:: run script for training
220-
:: note: we set the device to cpu since SB3 doesn't optimize for GPU anyway
221-
isaaclab.bat -p scripts\reinforcement_learning\sb3\train.py --task Isaac-Cartpole-v0 --headless --device cpu
219+
isaaclab.bat -p scripts\reinforcement_learning\sb3\train.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --headless
222220
:: run script for playing with 32 environments
223-
isaaclab.bat -p scripts\reinforcement_learning\sb3\play.py --task Isaac-Cartpole-v0 --num_envs 32 --checkpoint /PATH/TO/model.zip
221+
isaaclab.bat -p scripts\reinforcement_learning\sb3\play.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --num_envs 32 --checkpoint /PATH/TO/model.zip
224222
:: run script for playing a pre-trained checkpoint with 32 environments
225-
isaaclab.bat -p scripts\reinforcement_learning\sb3\play.py --task Isaac-Cartpole-v0 --num_envs 32 --use_pretrained_checkpoint
223+
isaaclab.bat -p scripts\reinforcement_learning\sb3\play.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --num_envs 32 --use_pretrained_checkpoint
226224
:: run script for recording video of a trained agent (requires installing `ffmpeg`)
227-
isaaclab.bat -p scripts\reinforcement_learning\sb3\play.py --task Isaac-Cartpole-v0 --headless --video --video_length 200
225+
isaaclab.bat -p scripts\reinforcement_learning\sb3\play.py --task Isaac-Velocity-Flat-Unitree-A1-v0 --headless --video --video_length 200
228226
229227
All the scripts above log the training progress to `Tensorboard`_ in the ``logs`` directory in the root of
230228
the repository. The logs directory follows the pattern ``logs/<library>/<task>/<date-time>``, where ``<library>``

docs/source/overview/reinforcement-learning/rl_frameworks.rst

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,17 +71,18 @@ Training Performance
7171
--------------------
7272

7373
We performed training with each RL library on the same ``Isaac-Humanoid-v0`` environment
74-
with ``--headless`` on a single RTX 4090 GPU
74+
with ``--headless`` on a single RTX PRO 6000 GPU using 4096 environments
7575
and logged the total training time for 65.5M steps for each RL library.
7676

77+
7778
+--------------------+-----------------+
7879
| RL Library | Time in seconds |
7980
+====================+=================+
80-
| RL-Games | 203 |
81+
| RL-Games | 207 |
8182
+--------------------+-----------------+
82-
| SKRL | 204 |
83+
| SKRL | 208 |
8384
+--------------------+-----------------+
84-
| RSL RL | 207 |
85+
| RSL RL | 199 |
8586
+--------------------+-----------------+
86-
| Stable-Baselines3 | 6320 |
87+
| Stable-Baselines3 | 322 |
8788
+--------------------+-----------------+

0 commit comments

Comments
 (0)