-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Merge dexsuite into lift #6732
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
Merge dexsuite into lift #6732
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| Test-only: updated the lift task IDs renamed by this PR. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| Test-only: updated the lift task IDs renamed by this PR. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| Test-only: updated the lift task IDs renamed by this PR. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| Changed | ||
| ^^^^^^^ | ||
|
|
||
| * **Breaking:** Merged the ``isaaclab_tasks.core.dexsuite`` package into | ||
| :mod:`isaaclab_tasks.core.lift`, so the dexterous lift and reorient tasks share one package and | ||
| MDP module. Task IDs and training behavior were unchanged, but environment configuration entry | ||
| points moved and the ``Dexsuite`` class-name prefix was removed. For example, | ||
| ``isaaclab_tasks.core.dexsuite.config.franka.dexsuite_franka_env_cfg:DexsuiteFrankaLiftEnvCfg`` | ||
| became ``isaaclab_tasks.core.lift.config.franka.franka_env_cfg:FrankaLiftEnvCfg``. | ||
| * **Breaking:** Moved the tutorial single-cube Franka lift task to :mod:`isaaclab_tasks.contrib.lift`. | ||
| Use ``--task IsaacContrib-Lift-Cube-Franka`` instead of | ||
| ``--task Isaac-Lift-Cube-Franka``. The rigid tutorial MDP terms moved with it; deformable | ||
| Lift terms remain in :mod:`isaaclab_tasks.core.lift.mdp`. | ||
| * **Breaking:** Renamed the dexterous RSL-RL experiment directories from | ||
| ``dexsuite_franka`` and ``dexsuite_kuka_allegro*`` to ``lift_franka`` and | ||
| ``lift_kuka_allegro*``. Update existing checkpoint paths under ``logs/rsl_rl/dexsuite_*``. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,12 +4,29 @@ | |
| # SPDX-License-Identifier: BSD-3-Clause | ||
| import gymnasium as gym | ||
|
|
||
| from isaaclab_tasks.core.lift.config.franka import agents | ||
| from isaaclab_tasks.contrib.lift.config.franka import agents | ||
|
|
||
| ## | ||
| # Register Gym environments. | ||
| ## | ||
|
|
||
| ## | ||
| # Joint Position Control | ||
| ## | ||
|
|
||
| gym.register( | ||
| id="IsaacContrib-Lift-Cube-Franka", | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 Warning · Api — Task ID renamed without deprecation alias
|
||
| entry_point="isaaclab.envs:ManagerBasedRLEnv", | ||
| kwargs={ | ||
| "env_cfg_entry_point": f"{__name__}.joint_pos_env_cfg:FrankaCubeLiftEnvCfg", | ||
| "rsl_rl_cfg_entry_point": f"{agents.__name__}.rsl_rl_ppo_cfg:LiftCubePPORunnerCfg", | ||
| "skrl_cfg_entry_point": f"{agents.__name__}:skrl_ppo_cfg.yaml", | ||
| "rl_games_cfg_entry_point": f"{agents.__name__}:rl_games_ppo_cfg.yaml", | ||
| "sb3_cfg_entry_point": f"{agents.__name__}:sb3_ppo_cfg.yaml", | ||
| }, | ||
| disable_env_checker=True, | ||
| ) | ||
|
|
||
| ## | ||
| # Inverse Kinematics - Absolute Pose Control | ||
| ## | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,41 @@ | ||
| # Copyright (c) 2022-2026, The Isaac Lab Project Developers (https://github.com/isaac-sim/IsaacLab/blob/main/CONTRIBUTORS.md). | ||
| # All rights reserved. | ||
| # | ||
| # SPDX-License-Identifier: BSD-3-Clause | ||
|
|
||
| from isaaclab.utils.configclass import configclass | ||
|
|
||
| from isaaclab_rl.rsl_rl import RslRlMLPModelCfg, RslRlOnPolicyRunnerCfg, RslRlPpoAlgorithmCfg | ||
|
|
||
|
|
||
| @configclass | ||
| class LiftCubePPORunnerCfg(RslRlOnPolicyRunnerCfg): | ||
| num_steps_per_env = 24 | ||
| max_iterations = 1500 | ||
| save_interval = 50 | ||
| experiment_name = "lift_cube_franka" | ||
| actor = RslRlMLPModelCfg( | ||
| hidden_dims=[256, 128, 64], | ||
| activation="elu", | ||
| obs_normalization=False, | ||
| distribution_cfg=RslRlMLPModelCfg.GaussianDistributionCfg(init_std=1.0), | ||
| ) | ||
| critic = RslRlMLPModelCfg( | ||
| hidden_dims=[256, 128, 64], | ||
| activation="elu", | ||
| obs_normalization=False, | ||
| ) | ||
| algorithm = RslRlPpoAlgorithmCfg( | ||
| value_loss_coef=1.0, | ||
| use_clipped_value_loss=True, | ||
| clip_param=0.2, | ||
| entropy_coef=0.006, | ||
| num_learning_epochs=5, | ||
| num_mini_batches=4, | ||
| learning_rate=1.0e-4, | ||
| schedule="adaptive", | ||
| gamma=0.98, | ||
| lam=0.95, | ||
| desired_kl=0.01, | ||
| max_grad_norm=1.0, | ||
| ) |
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.
🔵 Suggestion · Implementation — Missing changelog fragments for touched packages
Fragments are added only under
isaaclab_assets/changelog.dandisaaclab_tasks/changelog.d, but the PR also touchesisaaclab,isaaclab_rl, andisaaclab_physx(test-only edits). Repository policy requires one fragment per touched package; add a<slug>.skipfile under each of those threechangelog.ddirectories.