• Toni-SM's avatar
    Updates skrl integration to skrl-v1.3.0 (#118) · 17407901
    Toni-SM authored
    # Description
    
    This PR update skrl integration to skrl-v1.3.0
    
    Features/changes
    * Support Multi-GPU and Multi-Node Training in JAX (for this the
    `JAX_LOCAL_RANK` and `JAX_RANK` was added to `AppLauncher` to be able to
    specify the GPUs in distributed learnings)
    * Update skrl train/play workflow to use `date_time_algorithm_framework`
    format for logs folders
    * Update (and add new ones) skrl agent's configs for the tasks. The
    configs where automatically generated from `rl_games`/`rsl_rl` config as
    shown in the next table.
    
        ```
    
    +------------------------------------------------+------------+------------------------+------------------------------------+--------+
    | Task | Registered | RL libraries | Generated | Status |
    
    +------------------------------------------------+------------+------------------------+------------------------------------+--------+
    | Isaac-Ant-Direct-v0 | | rl_games, rsl_rl, skrl | skrl_ppo_cfg.yaml
    (rl_games) | |
    | Isaac-Ant-v0 | | rl_games, rsl_rl, skrl | skrl_ppo_cfg.yaml (rl_games)
    | |
    | Isaac-Cart-Double-Pendulum-Direct-v0 | - 3 - | rl_games, skrl |
    skrl_ppo_cfg.yaml (rl_games) | M |
    | Isaac-Cartpole-Depth-Camera-Direct-v0 | | rl_games, skrl | | |
    | Isaac-Cartpole-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Cartpole-RGB-Camera-Direct-v0 | | rl_games, skrl | | |
    | Isaac-Cartpole-v0 | | rl_games, rsl_rl, skrl | skrl_ppo_cfg.yaml
    (rl_games) | |
    | Isaac-Franka-Cabinet-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Humanoid-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Humanoid-v0 | | rl_games, rsl_rl, skrl | skrl_ppo_cfg.yaml
    (rl_games) | |
    | Isaac-Lift-Cube-Franka-IK-Abs-v0 | No | | | |
    | Isaac-Lift-Cube-Franka-IK-Rel-v0 | No | | | |
    | Isaac-Lift-Cube-Franka-Play-v0 | | rl_games, rsl_rl, skrl | - | |
    | Isaac-Lift-Cube-Franka-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Navigation-Flat-Anymal-C-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Navigation-Flat-Anymal-C-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Open-Drawer-Franka-IK-Abs-v0 | No | | | |
    | Isaac-Open-Drawer-Franka-IK-Rel-v0 | No | | | |
    | Isaac-Open-Drawer-Franka-Play-v0 | | rl_games, rsl_rl, skrl | - | |
    | Isaac-Open-Drawer-Franka-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Quadcopter-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Reach-Franka-IK-Abs-v0 | No | | | |
    | Isaac-Reach-Franka-IK-Rel-v0 | No | | | |
    | Isaac-Reach-Franka-Play-v0 | | rl_games, rsl_rl, skrl | - | |
    | Isaac-Reach-Franka-v0 | | rl_games, rsl_rl, skrl | skrl_ppo_cfg.yaml
    (rl_games) | |
    | Isaac-Reach-UR10-Play-v0 | | rl_games, rsl_rl, skrl | - | |
    | Isaac-Reach-UR10-v0 | | rl_games, rsl_rl, skrl | skrl_ppo_cfg.yaml
    (rl_games) | |
    | Isaac-Repose-Cube-Allegro-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Repose-Cube-Allegro-NoVelObs-Play-v0 | | rl_games, rsl_rl, skrl
    | - | |
    | Isaac-Repose-Cube-Allegro-NoVelObs-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Repose-Cube-Allegro-Play-v0 | | rl_games, rsl_rl, skrl | - | |
    | Isaac-Repose-Cube-Allegro-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Repose-Cube-Shadow-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_ppo_cfg.yaml (rl_games) | |
    | Isaac-Repose-Cube-Shadow-OpenAI-FF-Direct-v0 | | rl_games, rsl_rl,
    skrl | skrl_ff_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Repose-Cube-Shadow-OpenAI-LSTM-Direct-v0 | No | rl_games | | |
    | Isaac-Repose-Cube-Shadow-Vision-Direct-Play-v0 | No | rl_games, rsl_rl
    | - | |
    | Isaac-Repose-Cube-Shadow-Vision-Direct-v0 | No | rl_games, rsl_rl |
    skrl_vision_ppo_cfg.yaml (rsl_rl) | ?? |
    | Isaac-Shadow-Hand-Over-Direct-v0 | - 3 - | rl_games, skrl |
    skrl_ppo_cfg.yaml (rl_games) | M |
    | Isaac-Velocity-Flat-Anymal-B-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Anymal-B-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Flat-Anymal-C-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rl_games) | |
    | Isaac-Velocity-Flat-Anymal-C-Play-v0 | | rl_games, rsl_rl, skrl | - |
    |
    | Isaac-Velocity-Flat-Anymal-C-v0 | | rl_games, rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rl_games) | |
    | Isaac-Velocity-Flat-Anymal-D-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Anymal-D-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Flat-Cassie-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Cassie-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Flat-G1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-G1-v0 | | rsl_rl, skrl | skrl_flat_ppo_cfg.yaml
    (rsl_rl) | |
    | Isaac-Velocity-Flat-H1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-H1-v0 | | rsl_rl, skrl | skrl_flat_ppo_cfg.yaml
    (rsl_rl) | |
    | Isaac-Velocity-Flat-Spot-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Spot-v0 | | rsl_rl, skrl | skrl_flat_ppo_cfg.yaml
    (rsl_rl) | |
    | Isaac-Velocity-Flat-Unitree-A1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Unitree-A1-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Flat-Unitree-Go1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Unitree-Go1-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Flat-Unitree-Go2-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Flat-Unitree-Go2-v0 | | rsl_rl, skrl |
    skrl_flat_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Rough-Anymal-B-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-Anymal-B-v0 | | rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Rough-Anymal-C-Direct-v0 | | rl_games, rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rl_games) | |
    | Isaac-Velocity-Rough-Anymal-C-Play-v0 | | rl_games, rsl_rl, skrl | - |
    |
    | Isaac-Velocity-Rough-Anymal-C-v0 | | rl_games, rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rl_games) | |
    | Isaac-Velocity-Rough-Anymal-D-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-Anymal-D-v0 | | rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Rough-Cassie-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-Cassie-v0 | | rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Rough-G1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-G1-v0 | | rsl_rl, skrl | skrl_rough_ppo_cfg.yaml
    (rsl_rl) | |
    | Isaac-Velocity-Rough-H1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-H1-v0 | | rsl_rl, skrl | skrl_rough_ppo_cfg.yaml
    (rsl_rl) | |
    | Isaac-Velocity-Rough-Unitree-A1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-Unitree-A1-v0 | | rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Rough-Unitree-Go1-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-Unitree-Go1-v0 | | rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rsl_rl) | |
    | Isaac-Velocity-Rough-Unitree-Go2-Play-v0 | | rsl_rl, skrl | - | |
    | Isaac-Velocity-Rough-Unitree-Go2-v0 | | rsl_rl, skrl |
    skrl_rough_ppo_cfg.yaml (rsl_rl) | |
    
    +------------------------------------------------+------------+------------------------+------------------------------------+--------+
        ```
    
    
    ## Type of change
    
    - New feature (non-breaking change which adds functionality)
    - This change requires a documentation update
    
    
    ## 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
    - [ ] My changes generate no new warnings
    - [ ] I have added tests that prove my fix is effective or that my
    feature works
    - [x] 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
    17407901
play.py 6.21 KB