Available Environments#
The following lists comprises of all the RL tasks implementations that are available in Isaac Lab. While we try to keep this list up-to-date, you can always get the latest list of environments by running the following command:
./isaaclab.sh -p scripts/environments/list_envs.py
isaaclab.bat -p scripts\environments\list_envs.py
We are actively working on adding more environments to the list. If you have any environments that you would like to add to Isaac Lab, please feel free to open a pull request!
Single-agent#
Classic#
Classic environments that are based on IsaacGymEnvs implementation of MuJoCo-style environments.
World |
Environment ID |
Description |
---|---|---|
Move towards a direction with the MuJoCo humanoid robot |
||
Move towards a direction with the MuJoCo ant robot |
||
Move the cart to keep the pole upwards in the classic cartpole control |
||
Move the cart to keep the pole upwards in the classic cartpole control and perceptive inputs |
||
Move the cart to keep the pole upwards in the classic cartpole control based off of features extracted from perceptive inputs with pre-trained frozen vision encoders |
Manipulation#
Environments based on fixed-arm manipulation tasks.
For many of these tasks, we include configurations with different arm action spaces. For example, for the lift-cube environment:
Isaac-Lift-Cube-Franka-v0: Franka arm with joint position control
Isaac-Lift-Cube-Franka-IK-Abs-v0: Franka arm with absolute IK control
Isaac-Lift-Cube-Franka-IK-Rel-v0: Franka arm with relative IK control
World |
Environment ID |
Description |
---|---|---|
Move the end-effector to a sampled target pose with the Franka robot |
||
Move the end-effector to a sampled target pose with the UR10 robot |
||
Pick a cube and bring it to a sampled target position with the Franka robot |
||
Stack three cubes (bottom to top: blue, red, green) with the Franka robot |
||
Grasp the handle of a cabinet’s drawer and open it with the Franka robot |
||
In-hand reorientation of a cube using Allegro hand |
||
Isaac-Repose-Cube-Shadow-Direct-v0 |
In-hand reorientation of a cube using Shadow hand |
|
In-hand reorientation of a cube using Shadow hand using perceptive inputs |
Contact-rich Manipulation#
Environments based on contact-rich manipulation tasks such as peg insertion, gear meshing and nut-bolt fastening.
These tasks share the same task configurations and control options. You can switch between them by specifying the task name. For example:
Isaac-Factory-PegInsert-Direct-v0: Peg insertion with the Franka arm
Isaac-Factory-GearMesh-Direct-v0: Gear meshing with the Franka arm
Isaac-Factory-NutThread-Direct-v0: Nut-Bolt fastening with the Franka arm
World |
Environment ID |
Description |
---|---|---|
Insert peg into the socket with the Franka robot |
||
Insert and mesh gear into the base with other gears, using the Franka robot |
||
Thread the nut onto the first 2 threads of the bolt, using the Franka robot |
Locomotion#
Environments based on legged locomotion tasks.
World |
Environment ID |
Description |
---|---|---|
Track a velocity command on flat terrain with the Anymal B robot |
||
Track a velocity command on rough terrain with the Anymal B robot |
||
Track a velocity command on flat terrain with the Anymal C robot |
||
Track a velocity command on rough terrain with the Anymal C robot |
||
Track a velocity command on flat terrain with the Anymal D robot |
||
Track a velocity command on rough terrain with the Anymal D robot |
||
Track a velocity command on flat terrain with the Unitree A1 robot |
||
Track a velocity command on rough terrain with the Unitree A1 robot |
||
Track a velocity command on flat terrain with the Unitree Go1 robot |
||
Track a velocity command on rough terrain with the Unitree Go1 robot |
||
Track a velocity command on flat terrain with the Unitree Go2 robot |
||
Track a velocity command on rough terrain with the Unitree Go2 robot |
||
Track a velocity command on flat terrain with the Boston Dynamics Spot robot |
||
Track a velocity command on flat terrain with the Unitree H1 robot |
||
Track a velocity command on rough terrain with the Unitree H1 robot |
||
Track a velocity command on flat terrain with the Unitree G1 robot |
||
Track a velocity command on rough terrain with the Unitree G1 robot |
Others#
Note
Adversarial Motion Priors (AMP) training is only available with the skrl library, as it is the only one of the currently
integrated libraries that supports it out-of-the-box (for the other libraries, it is necessary to implement the algorithm and architectures).
See the skrl’s AMP Documentation for more information.
The AMP algorithm can be activated by adding the command line input --algorithm AMP
to the train/play script.
For evaluation, the play script’s command line input --real-time
allows the interaction loop between the environment and the agent to run in real time, if possible.
World |
Environment ID |
Description |
---|---|---|
Fly and hover the Crazyflie copter at a goal point by applying thrust. |
||
Isaac-Humanoid-AMP-Dance-Direct-v0 |
Move a humanoid robot by imitating different pre-recorded human animations (Adversarial Motion Priors). |
Multi-agent#
Note
True mutli-agent training is only available with the skrl library, see the Multi-Agents Documentation for more information.
It supports the IPPO and MAPPO algorithms, which can be activated by adding the command line input --algorithm IPPO
or --algorithm MAPPO
to the train/play script.
If these environments are run with other libraries or without the IPPO or MAPPO flags, they will be converted to single-agent environments under the hood.
Classic#
World |
Environment ID |
Description |
---|---|---|
Move the cart and the pendulum to keep the last one upwards in the classic inverted double pendulum on a cart control |
Manipulation#
Environments based on fixed-arm manipulation tasks.
World |
Environment ID |
Description |
---|---|---|
Passing an object from one hand over to the other hand |
Comprehensive List of Environments#
Task Name |
Inference Task Name |
Workflow |
RL Library |
Isaac-Ant-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Ant-v0 |
Manager Based |
rsl_rl (PPO), rl_games (PPO), skrl (PPO), sb3 (PPO) |
|
Isaac-Cart-Double-Pendulum-Direct-v0 |
Direct |
rl_games (PPO), skrl (IPPO, PPO, MAPPO) |
|
Isaac-Cartpole-Depth-Camera-Direct-v0 |
Direct |
rl_games (PPO), skrl (PPO) |
|
Isaac-Cartpole-Depth-v0 |
Manager Based |
rl_games (PPO) |
|
Isaac-Cartpole-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO), sb3 (PPO) |
|
Isaac-Cartpole-RGB-Camera-Direct-v0 |
Direct |
rl_games (PPO), skrl (PPO) |
|
Isaac-Cartpole-RGB-ResNet18-v0 |
Manager Based |
rl_games (PPO) |
|
Isaac-Cartpole-RGB-TheiaTiny-v0 |
Manager Based |
rl_games (PPO) |
|
Isaac-Cartpole-RGB-v0 |
Manager Based |
rl_games (PPO) |
|
Isaac-Cartpole-v0 |
Manager Based |
rl_games (PPO), rsl_rl (PPO), skrl (PPO), sb3 (PPO) |
|
Isaac-Factory-GearMesh-Direct-v0 |
Direct |
rl_games (PPO) |
|
Isaac-Factory-NutThread-Direct-v0 |
Direct |
rl_games (PPO) |
|
Isaac-Factory-PegInsert-Direct-v0 |
Direct |
rl_games (PPO) |
|
Isaac-Franka-Cabinet-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Humanoid-AMP-Dance-Direct-v0 |
Direct |
skrl (AMP) |
|
Isaac-Humanoid-AMP-Run-Direct-v0 |
Direct |
skrl (AMP) |
|
Isaac-Humanoid-AMP-Walk-Direct-v0 |
Direct |
skrl (AMP) |
|
Isaac-Humanoid-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Humanoid-v0 |
Manager Based |
rsl_rl (PPO), rl_games (PPO), skrl (PPO), sb3 (PPO) |
|
Isaac-Lift-Cube-Franka-IK-Abs-v0 |
Manager Based |
||
Isaac-Lift-Cube-Franka-IK-Rel-v0 |
Manager Based |
||
Isaac-Lift-Cube-Franka-v0 |
Isaac-Lift-Cube-Franka-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO), rl_games (PPO), sb3 (PPO) |
Isaac-Lift-Teddy-Bear-Franka-IK-Abs-v0 |
Manager Based |
||
Isaac-Navigation-Flat-Anymal-C-v0 |
Isaac-Navigation-Flat-Anymal-C-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Open-Drawer-Franka-IK-Abs-v0 |
Manager Based |
||
Isaac-Open-Drawer-Franka-IK-Rel-v0 |
Manager Based |
||
Isaac-Open-Drawer-Franka-v0 |
Isaac-Open-Drawer-Franka-Play-v0 |
Manager Based |
rsl_rl (PPO), rl_games (PPO), skrl (PPO) |
Isaac-Quadcopter-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Reach-Franka-IK-Abs-v0 |
Manager Based |
||
Isaac-Reach-Franka-IK-Rel-v0 |
Manager Based |
||
Isaac-Reach-Franka-OSC-v0 |
Isaac-Reach-Franka-OSC-Play-v0 |
Manager Based |
rsl_rl (PPO) |
Isaac-Reach-Franka-v0 |
Isaac-Reach-Franka-Play-v0 |
Manager Based |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
Isaac-Reach-UR10-v0 |
Isaac-Reach-UR10-Play-v0 |
Manager Based |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
Isaac-Repose-Cube-Allegro-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Repose-Cube-Allegro-NoVelObs-v0 |
Isaac-Repose-Cube-Allegro-NoVelObs-Play-v0 |
Manager Based |
rsl_rl (PPO), rl_games (PPO), skrl (PPO) |
Isaac-Repose-Cube-Allegro-v0 |
Isaac-Repose-Cube-Allegro-Play-v0 |
Manager Based |
rsl_rl (PPO), rl_games (PPO), skrl (PPO) |
Isaac-Repose-Cube-Shadow-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Repose-Cube-Shadow-OpenAI-FF-Direct-v0 |
Direct |
rl_games (FF), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Repose-Cube-Shadow-OpenAI-LSTM-Direct-v0 |
Direct |
rl_games (LSTM) |
|
Isaac-Repose-Cube-Shadow-Vision-Direct-v0 |
Isaac-Repose-Cube-Shadow-Vision-Direct-Play-v0 |
Direct |
rsl_rl (PPO), rl_games (VISION) |
Isaac-Shadow-Hand-Over-Direct-v0 |
Direct |
rl_games (PPO), skrl (IPPO, PPO, MAPPO) |
|
Isaac-Stack-Cube-Franka-IK-Rel-v0 |
Manager Based |
||
Isaac-Stack-Cube-Franka-v0 |
Manager Based |
||
Isaac-Stack-Cube-Instance-Randomize-Franka-IK-Rel-v0 |
Manager Based |
||
Isaac-Stack-Cube-Instance-Randomize-Franka-v0 |
Manager Based |
||
Isaac-Velocity-Flat-Anymal-B-v0 |
Isaac-Velocity-Flat-Anymal-B-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Anymal-C-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Velocity-Flat-Anymal-C-v0 |
Isaac-Velocity-Flat-Anymal-C-Play-v0 |
Manager Based |
rsl_rl (PPO), rl_games (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Anymal-D-v0 |
Isaac-Velocity-Flat-Anymal-D-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Cassie-v0 |
Isaac-Velocity-Flat-Cassie-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-G1-v0 |
Isaac-Velocity-Flat-G1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-H1-v0 |
Isaac-Velocity-Flat-H1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Spot-v0 |
Isaac-Velocity-Flat-Spot-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Unitree-A1-v0 |
Isaac-Velocity-Flat-Unitree-A1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Unitree-Go1-v0 |
Isaac-Velocity-Flat-Unitree-Go1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Flat-Unitree-Go2-v0 |
Isaac-Velocity-Flat-Unitree-Go2-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Anymal-B-v0 |
Isaac-Velocity-Rough-Anymal-B-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Anymal-C-Direct-v0 |
Direct |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
|
Isaac-Velocity-Rough-Anymal-C-v0 |
Isaac-Velocity-Rough-Anymal-C-Play-v0 |
Manager Based |
rl_games (PPO), rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Anymal-D-v0 |
Isaac-Velocity-Rough-Anymal-D-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Cassie-v0 |
Isaac-Velocity-Rough-Cassie-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-G1-v0 |
Isaac-Velocity-Rough-G1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-H1-v0 |
Isaac-Velocity-Rough-H1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Unitree-A1-v0 |
Isaac-Velocity-Rough-Unitree-A1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Unitree-Go1-v0 |
Isaac-Velocity-Rough-Unitree-Go1-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |
Isaac-Velocity-Rough-Unitree-Go2-v0 |
Isaac-Velocity-Rough-Unitree-Go2-Play-v0 |
Manager Based |
rsl_rl (PPO), skrl (PPO) |