Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -774,8 +774,8 @@ jobs:
extra-pip-packages: "pytetwild[all]>=0.3.0,<0.4"
include-files: >-
test_rendering_cartpole.py,
test_rendering_dexsuite_kuka_hetero.py,
test_rendering_dexsuite_kuka_homo.py,
test_rendering_lift_kuka_hetero.py,
test_rendering_lift_kuka_homo.py,
test_rendering_franka_cloth.py,
test_rendering_franka_soft.py,
test_rendering_registered_tasks.py,
Expand Down Expand Up @@ -824,8 +824,8 @@ jobs:
wheelhouse-packages: ${{ env.USE_OVPHYSX_WHEELHOUSE == 'true' && 'ovphysx' || '' }}
include-files: >-
test_rendering_cartpole_kitless.py,
test_rendering_dexsuite_kuka_hetero_kitless.py,
test_rendering_dexsuite_kuka_homo_kitless.py,
test_rendering_lift_kuka_hetero_kitless.py,
test_rendering_lift_kuka_homo_kitless.py,
test_rendering_franka_cloth_kitless.py,
test_rendering_franka_soft_kitless.py,
test_rendering_shadow_hand_kitless.py
Expand Down
1 change: 0 additions & 1 deletion docs/source/_static/css/environment-browser.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
["Isaac-Humanoid-Direct-Warp-v0", "rl_games,rsl_rl,skrl", "", "", ""],
["Isaac-Humanoid-Warp-v0", "rl_games,rsl_rl,skrl,sb3", "", "", ""],
["Isaac-Lift-Cloth-Franka", "rsl_rl", "newton_mjwarp_vbd_proxy", "", ""],
["Isaac-Lift-Cube-Franka", "rl_games,rsl_rl,skrl,sb3", "", "", ""],
["Isaac-Lift-Franka", "rsl_rl", "newton_mjwarp,physx", "", "cube,shapes"],
["Isaac-Lift-KukaAllegro", "rsl_rl", "newton_mjwarp,ovphysx,physx", "", "cube,shapes"],
["Isaac-Lift-KukaAllegro-Camera", "rsl_rl", "newton_mjwarp,ovphysx,physx", "isaacsim_rtx,newton_renderer,ovrtx,rtx", "albedo128,albedo256,albedo64,cube,depth128,depth256,depth64,duo_camera,raycaster_depth128,raycaster_depth256,raycaster_depth64,rgb128,rgb256,rgb64,semantic_segmentation128,semantic_segmentation256,semantic_segmentation64,shapes,simple_shading_constant_diffuse128,simple_shading_constant_diffuse256,simple_shading_constant_diffuse64,simple_shading_diffuse_mdl128,simple_shading_diffuse_mdl256,simple_shading_diffuse_mdl64,simple_shading_full_mdl128,simple_shading_full_mdl256,simple_shading_full_mdl64,single_camera"],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,7 @@ in MJWarp:
physics=isaacsim_physx

# Replace RUN_DIRECTORY and ITERATION with the values produced by training.
PHYSX_CHECKPOINT="/absolute/path/to/logs/rsl_rl/dexsuite_franka/RUN_DIRECTORY/model_ITERATION.pt"
PHYSX_CHECKPOINT="/absolute/path/to/logs/rsl_rl/lift_franka/RUN_DIRECTORY/model_ITERATION.pt"

# PP: reproduce the PhysX source baseline.
uv run isaaclab play --rl_library rsl_rl \
Expand Down Expand Up @@ -262,7 +262,7 @@ PhysX:
physics=newton_mjwarp

# Replace RUN_DIRECTORY and ITERATION with the values produced by training.
MJWARP_CHECKPOINT="/absolute/path/to/logs/rsl_rl/dexsuite_franka/RUN_DIRECTORY/model_ITERATION.pt"
MJWARP_CHECKPOINT="/absolute/path/to/logs/rsl_rl/lift_franka/RUN_DIRECTORY/model_ITERATION.pt"

# NN: reproduce the MJWarp source baseline.
uv run isaaclab play --rl_library rsl_rl \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,7 @@ dense-manipulation patterns. Then configure
:class:`~isaaclab_newton.physics.NewtonCollisionPipelineCfg` on
:class:`~isaaclab_newton.physics.NewtonCfg`. The maintained rough-terrain presets use
``default_shape_cfg.margin=0.01`` and raise ``max_triangle_pairs`` from ``1_000_000`` to
``2_500_000``; the Dexsuite pattern raises ``rigid_contact_max`` for its unusually dense scene.
``2_500_000``; the Lift pattern raises ``rigid_contact_max`` for its unusually dense scene.
Increase those capacities only in response to the matching overflow or missing-contact evidence.

``collision_decimation=0`` collides once per physics tick. A positive value re-collides every N
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ Manager-based workflows:
* Locomotion velocity, flat terrain: A1, AnymalB, AnymalC, AnymalD, Cassie,
Unitree G1, Go1, Go2, Unitree H1, Spot
* Locomotion velocity, rough terrain: AnymalC, Cassie, Go1, Go2
* Manipulation: reach (Franka, UR10), cabinet, dexsuite
* Manipulation: reach (Franka, UR10), cabinet, lift and reorient (Franka, KukaAllegro)
* Manipulation lift with deformable objects: Franka soft-body lift, Franka cloth
lift (via MJWarp and VBD proxy coupling)

Expand Down
20 changes: 10 additions & 10 deletions docs/source/overview/environments.rst
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ for all available backend names and how the typed selectors work.

.. note::

The DexSuite Kuka Allegro tasks use the homogeneous ``cube`` object preset with
The KukaAllegro lift and reorient tasks use the homogeneous ``cube`` object preset with
``physics=ovphysx``. The heterogeneous ``shapes`` preset is not supported with
OvPhysX; selecting both causes configuration validation to fail. Use
``presets=cube`` or choose another supported physics backend.
Expand Down Expand Up @@ -386,7 +386,7 @@ for the lift-cube environment:
.. |reach-franka-link| replace:: :isaaclab-source:`Isaac-Reach-Franka <source/isaaclab_tasks/isaaclab_tasks/core/reach/config/franka/franka_reach_env_cfg.py>`
.. |reach-ur10-link| replace:: :isaaclab-source:`Isaac-Reach-UR10 <source/isaaclab_tasks/isaaclab_tasks/core/reach/config/ur_10/joint_pos_env_cfg.py>`
.. |deploy-reach-ur10e-link| replace:: :isaaclab-source:`IsaacContrib-Deploy-Reach-UR10e <source/isaaclab_tasks/isaaclab_tasks/contrib/deploy/reach/config/ur_10e/joint_pos_env_cfg.py>`
.. |lift-cube-link| replace:: :isaaclab-source:`Isaac-Lift-Cube-Franka <source/isaaclab_tasks/isaaclab_tasks/core/lift/config/franka/joint_pos_env_cfg.py>`
.. |lift-cube-link| replace:: :isaaclab-source:`IsaacContrib-Lift-Cube-Franka <source/isaaclab_tasks/isaaclab_tasks/contrib/lift/config/franka/joint_pos_env_cfg.py>`
.. |lift-cube-ik-abs-link| replace:: :isaaclab-source:`IsaacContrib-Lift-Cube-Franka-IK-Abs <source/isaaclab_tasks/isaaclab_tasks/contrib/lift/config/franka/ik_abs_env_cfg.py>`
.. |lift-cube-ik-rel-link| replace:: :isaaclab-source:`IsaacContrib-Lift-Cube-Franka-IK-Rel <source/isaaclab_tasks/isaaclab_tasks/contrib/lift/config/franka/ik_rel_env_cfg.py>`
.. |lift-soft-franka-link| replace:: :isaaclab-source:`Isaac-Lift-Soft-Franka <source/isaaclab_tasks/isaaclab_tasks/core/lift/config/franka_soft/franka_soft_env_cfg.py>`
Expand All @@ -407,10 +407,10 @@ for the lift-cube environment:
.. |short-suction-link| replace:: :isaaclab-source:`IsaacContrib-Stack-Cube-UR10-Short-Suction-IK-Rel <source/isaaclab_tasks/isaaclab_tasks/contrib/stack/config/ur10_gripper/stack_ik_rel_env_cfg.py>`
.. |gr1_pp_waist-link| replace:: :isaaclab-source:`IsaacContrib-PickPlace-GR1T2-WaistEnabled-Abs <source/isaaclab_tasks/isaaclab_tasks/contrib/pick_place/pickplace_gr1t2_waist_enabled_env_cfg.py>`
.. |galbot_stack-link| replace:: :isaaclab-source:`IsaacContrib-Stack-Cube-Galbot-Left-Arm-Gripper-RmpFlow <source/isaaclab_tasks/isaaclab_tasks/contrib/stack/config/galbot/stack_rmp_rel_env_cfg.py>`
.. |kuka-allegro-lift-link| replace:: :isaaclab-source:`Isaac-Lift-KukaAllegro <source/isaaclab_tasks/isaaclab_tasks/core/dexsuite/config/kuka_allegro/dexsuite_kuka_allegro_env_cfg.py>`
.. |kuka-allegro-reorient-link| replace:: :isaaclab-source:`Isaac-Reorient-KukaAllegro <source/isaaclab_tasks/isaaclab_tasks/core/dexsuite/config/kuka_allegro/dexsuite_kuka_allegro_env_cfg.py>`
.. |ka-lift-cam-link| replace:: :isaaclab-source:`Isaac-Lift-KukaAllegro-Camera <source/isaaclab_tasks/isaaclab_tasks/core/dexsuite/config/kuka_allegro/dexsuite_kuka_allegro_camera_env_cfg.py>`
.. |ka-reorient-cam-link| replace:: :isaaclab-source:`Isaac-Reorient-KukaAllegro-Camera <source/isaaclab_tasks/isaaclab_tasks/core/dexsuite/config/kuka_allegro/dexsuite_kuka_allegro_camera_env_cfg.py>`
.. |kuka-allegro-lift-link| replace:: :isaaclab-source:`Isaac-Lift-KukaAllegro <source/isaaclab_tasks/isaaclab_tasks/core/lift/config/kuka_allegro/kuka_allegro_env_cfg.py>`
.. |kuka-allegro-reorient-link| replace:: :isaaclab-source:`Isaac-Reorient-KukaAllegro <source/isaaclab_tasks/isaaclab_tasks/core/lift/config/kuka_allegro/kuka_allegro_env_cfg.py>`
.. |ka-lift-cam-link| replace:: :isaaclab-source:`Isaac-Lift-KukaAllegro-Camera <source/isaaclab_tasks/isaaclab_tasks/core/lift/config/kuka_allegro/kuka_allegro_camera_env_cfg.py>`
.. |ka-reorient-cam-link| replace:: :isaaclab-source:`Isaac-Reorient-KukaAllegro-Camera <source/isaaclab_tasks/isaaclab_tasks/core/lift/config/kuka_allegro/kuka_allegro_camera_env_cfg.py>`
.. |cube-shadow-link| replace:: :isaaclab-source:`Isaac-Reorient-Cube-Shadow-Direct <source/isaaclab_tasks/isaaclab_tasks/core/reorient/config/shadow_hand/shadow_hand_direct_env_cfg.py>`
.. |cube-shadow-ff-link| replace:: :isaaclab-source:`Isaac-Reorient-Cube-Shadow-OpenAI-FF-Direct <source/isaaclab_tasks/isaaclab_tasks/core/reorient/config/shadow_hand/shadow_hand_direct_env_cfg.py>`
.. |cube-shadow-lstm-link| replace:: :isaaclab-source:`Isaac-Reorient-Cube-Shadow-OpenAI-LSTM-Direct <source/isaaclab_tasks/isaaclab_tasks/core/reorient/config/shadow_hand/shadow_hand_direct_env_cfg.py>`
Expand Down Expand Up @@ -1035,10 +1035,6 @@ including disabling runtime perturbations used for training.
- **rsl_rl** (PPO)
- | **physics=** ``newton_mjwarp_vbd_proxy``, ``ovphysx``
| **renderer=** ``isaacsim_rtx``, ``newton_renderer``, ``ovrtx``, ``rtx``
* - Isaac-Lift-Cube-Franka
- Manager Based
- **rl_games** (PPO), **rsl_rl** (PPO), **skrl** (PPO), **sb3** (PPO)
-
* - Isaac-Lift-Franka
- Manager Based
- **rsl_rl** (PPO)
Expand Down Expand Up @@ -1284,6 +1280,10 @@ including disabling runtime perturbations used for training.
- Direct
- **skrl** (AMP)
-
* - IsaacContrib-Lift-Cube-Franka
- Manager Based
- **rl_games** (PPO), **rsl_rl** (PPO), **skrl** (PPO), **sb3** (PPO)
-
* - IsaacContrib-Lift-Cube-Franka-IK-Abs
- Manager Based
-
Expand Down
4 changes: 2 additions & 2 deletions scripts/benchmarks/benchmark_hydra_resolve.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ class Case:
Case("cartpole_manager", "Isaac-Cartpole"),
Case("cartpole_camera_presets", "Isaac-Cartpole-Camera-Direct", "rl_games_cfg_entry_point"),
Case("anymal_rough", "IsaacContrib-Velocity-Rough-AnymalC"),
Case("franka_lift_cube", "Isaac-Lift-Cube-Franka"),
Case("franka_lift_cube", "IsaacContrib-Lift-Cube-Franka"),
Case(
"cartpole_camera_newton_ovrtx",
"Isaac-Cartpole-Camera-Direct",
Expand All @@ -81,7 +81,7 @@ class Case:
Case("ant_manager", "Isaac-Ant"),
Case("humanoid_manager", "Isaac-Humanoid", "rsl_rl_cfg_entry_point"),
Case("franka_reach", "Isaac-Reach-Franka"),
Case("franka_lift_cube_agent", "Isaac-Lift-Cube-Franka", "sb3_cfg_entry_point"),
Case("franka_lift_cube_agent", "IsaacContrib-Lift-Cube-Franka", "sb3_cfg_entry_point"),
Case("kuka_allegro_lift", "Isaac-Lift-KukaAllegro", "rsl_rl_cfg_entry_point"),
Case(
"kuka_allegro_lift_single_camera",
Expand Down
2 changes: 1 addition & 1 deletion scripts/benchmarks/benchmark_lazy_export.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
"Isaac-Humanoid",
"Isaac-Velocity-Flat-AnymalD",
"Isaac-Reach-Franka",
"Isaac-Lift-Cube-Franka",
"IsaacContrib-Lift-Cube-Franka",
"Isaac-Reorient-KukaAllegro",
"IsaacContrib-Navigation-Flat-AnymalC",
"IsaacContrib-Stack-Cube-Franka",
Expand Down
2 changes: 1 addition & 1 deletion scripts/environments/state_machine/lift_cube_sm.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
from isaaclab.assets.rigid_object.rigid_object_data import RigidObjectData

import isaaclab_tasks # noqa: F401
from isaaclab_tasks.core.lift.lift_env_cfg import LiftEnvCfg
from isaaclab_tasks.contrib.lift.lift_env_cfg import LiftEnvCfg
from isaaclab_tasks.utils.parse_cfg import parse_env_cfg

# initialize warp
Expand Down
1 change: 1 addition & 0 deletions source/isaaclab/changelog.d/mhaiderbhai-unify-lift.skip
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
Expand Up @@ -90,7 +90,7 @@ def check_initial_state_recorder_term(env):
assert are_states_equal, output_log


@pytest.mark.parametrize("task_name", ["Isaac-Lift-Cube-Franka"])
@pytest.mark.parametrize("task_name", ["IsaacContrib-Lift-Cube-Franka"])
@pytest.mark.parametrize("device", ["cuda:0", "cpu"])
@pytest.mark.parametrize("num_envs", [1, 2])
def test_action_state_recorder_terms(task_name, device, num_envs, temp_dir):
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Test-only: updated the lift task IDs renamed by this PR.
2 changes: 1 addition & 1 deletion source/isaaclab_physx/test/sim/test_cloner.py
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ def test_physx_replicate_isolated_source_loaded_without_replication(sim, device)
def test_physx_replicate_heterogeneous_isolated_sources(sim, device):
"""physx_replicate handles heterogeneous sources excluding self from world lists.
This is the Dexsuite scenario: multiple object types, each with a designated proto-env.
This is the Lift scenario: multiple object types, each with a designated proto-env.
With ``exclude_self_replication=True`` (default), self is removed from the world list
only when the source also maps to other environments. Self-only sources keep self so
that ``rep.replicate()`` still fires and the source prim gets its physics body (since
Expand Down
1 change: 1 addition & 0 deletions source/isaaclab_rl/changelog.d/mhaiderbhai-unify-lift.skip
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
Expand Up @@ -299,7 +299,7 @@ def main(argv: Sequence[str] | None = None) -> None:
python leapp_initialized_checkpoints.py --checkpoint_root /tmp/ckpt \\
--preset newton_mjwarp \\
--spec rsl_rl Isaac-Cartpole \\
--spec rsl_rl Isaac-Lift-Cube-Franka _
--spec rsl_rl IsaacContrib-Lift-Cube-Franka _
"""
import argparse
import os
Expand Down
4 changes: 2 additions & 2 deletions source/isaaclab_rl/test/export/test_leapp_export_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ def agent_cfg_entry_points(self) -> tuple[str, ...]:
# binary gripper + cabinet articulation
"Isaac-Open-Drawer-Franka",
# classic lift: object_position_in_robot_root_frame + quat math
"Isaac-Lift-Cube-Franka",
"IsaacContrib-Lift-Cube-Franka",
# history buffers + Object-cloud / contact observations
"Isaac-Lift-KukaAllegro",
# manager-based locomotion with contact-rich body observations
Expand Down Expand Up @@ -105,7 +105,7 @@ def agent_cfg_entry_points(self) -> tuple[str, ...]:
_SIM_PRESET = "newton_mjwarp"

# These tasks reject any preset token; export uses their authored default backend.
_TASKS_WITHOUT_PRESET = frozenset({"Isaac-Lift-Cube-Franka"})
_TASKS_WITHOUT_PRESET = frozenset({"IsaacContrib-Lift-Cube-Franka"})


def _ensure_text(output: str | bytes | None) -> str:
Expand Down
4 changes: 2 additions & 2 deletions source/isaaclab_rl/test/export/test_rsl_rl_export_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,10 @@
"Isaac-Reach-Franka",
"Isaac-Reach-UR10",
# Manipulation Lift
"Isaac-Lift-Cube-Franka",
"Isaac-Lift-Franka",

Copy link
Copy Markdown
Contributor

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.d and isaaclab_tasks/changelog.d, but the PR also touches isaaclab, isaaclab_rl, and isaaclab_physx (test-only edits). Repository policy requires one fragment per touched package; add a <slug>.skip file under each of those three changelog.d directories.

# Manipulation Cabinet
"Isaac-Open-Drawer-Franka",
# Dexsuite
# Dexterous manipulation
"Isaac-Reorient-KukaAllegro",
"Isaac-Lift-KukaAllegro",
]
Expand Down
16 changes: 16 additions & 0 deletions source/isaaclab_tasks/changelog.d/mhaiderbhai-unify-lift.major.rst
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
Expand Up @@ -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",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Warning · Api — Task ID renamed without deprecation alias

Isaac-Lift-Cube-Franka is no longer registered anywhere; only IsaacContrib-Lift-Cube-Franka exists. Existing commands, scripts, and gym.make() callers fail with an unregistered-env error, and the isaaclab_tasks.core.dexsuite module path is removed the same way. Repository policy requires deprecating public symbols in a prior release, so keep the old ID (and dexsuite forwarding modules) as deprecated aliases that warn.

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
##
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ params:
load_path: '' # path to the checkpoint to load

config:
name: franka_lift
name: lift_cube_franka
env_name: rlgpu
device: 'cuda:0'
device_name: 'cuda:0'
Expand Down
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,
)
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ agent:
time_limit_bootstrap: False
# logging and checkpoint
experiment:
directory: "franka_lift"
directory: "lift_cube_franka"
experiment_name: ""
write_interval: auto
checkpoint_interval: auto
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from isaaclab.envs.mdp.actions.actions_cfg import DifferentialInverseKinematicsActionCfg
from isaaclab.utils.configclass import configclass

from isaaclab_tasks.core.lift.config.franka import joint_pos_env_cfg
from isaaclab_tasks.contrib.lift.config.franka import joint_pos_env_cfg

##
# Pre-defined configs
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from isaaclab.envs.mdp.actions.actions_cfg import DifferentialInverseKinematicsActionCfg
from isaaclab.utils.configclass import configclass

from isaaclab_tasks.core.lift.config.franka import joint_pos_env_cfg
from isaaclab_tasks.contrib.lift.config.franka import joint_pos_env_cfg

##
# Pre-defined configs
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
from isaaclab.utils.assets import ISAAC_NUCLEUS_DIR
from isaaclab.utils.configclass import configclass

from isaaclab_tasks.core.lift import mdp
from isaaclab_tasks.core.lift.lift_env_cfg import LiftEnvCfg
from isaaclab_tasks.contrib.lift import mdp
from isaaclab_tasks.contrib.lift.lift_env_cfg import LiftEnvCfg

##
# Pre-defined configs
Expand Down
Loading
Loading