Recent Releases of isaaclab

isaaclab - v2.2.1

πŸ‘€ Overview

This is a minor patch release with some improvements and bug fixes.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.2.0...v2.2.1

✨ New Features

  • Adds contact point location reporting to ContactSensor by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2842
  • Adds environments actions/observations descriptors for export by @AntoineRichard in https://github.com/isaac-sim/IsaacLab/pull/2730
  • Adds RSL-RL symmetry example for cartpole and ANYmal locomotion by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/3057

πŸ”§ Improvements

Core API

  • Enhances Pink IK controller with null-space posture control and improv… by @michaellin6 in https://github.com/isaac-sim/IsaacLab/pull/3149
  • Adds periodic logging when checking USD path on Nucleus server by @matthewtrepte in https://github.com/isaac-sim/IsaacLab/pull/3221
  • Disallows string value written in sb3ppocfg.yaml get evaluated in processsb3cfg by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3110

Infrastructure

  • Application Settings
    • Disables rate limit for headless and headless rendering app by @matthewtrepte, @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/3219, https://github.com/isaac-sim/IsaacLab/pull/3089
    • Disables rtx.indirrectDiffuse.enabled in render preset balanced and performance modes by @matthewtrepte in https://github.com/isaac-sim/IsaacLab/pull/3240
    • Sets profiler backend to NVTX by default by @soowanpNV, @rwiltz in https://github.com/isaac-sim/IsaacLab/pull/3238, https://github.com/isaac-sim/IsaacLab/pull/3255
  • Dependencies
    • Adds hf-xet license by @hhansen-bdai in https://github.com/isaac-sim/IsaacLab/pull/3116
    • Fixes new typing-inspection dependency license by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/3237
  • Testing & Benchmarking
    • Adds basic validation tests for scale-based randomization ranges by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/3058
    • Adds SensorBase tests by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/3160
  • Repository Utilities
    • Adds improved readout from install_deps.py by @hhansen-bdai in https://github.com/isaac-sim/IsaacLab/pull/3104
    • Fixs isaaclab.sh to detect isaacsim_version accurately 4.5 or >= 5.0 by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3139
    • Disables verbose printing in conftest.py by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3291
    • Updates pytest flags to add for isaacsim integration testsing by @ben-johnston-nv in https://github.com/isaac-sim/IsaacLab/pull/3247
    • Updates CodeOwners to be more fine-grained by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/3090
    • Fixes minor issues in CI by @nv-apoddubny in https://github.com/isaac-sim/IsaacLab/pull/3120

πŸ› Bug Fixes

Core API

  • Asset Interfaces
    • Fixes setting friction coefficients into physx in the articulation classes by @ossamaAhmed in https://github.com/isaac-sim/IsaacLab/pull/3243
    • Sets jointfrictioncoeff only for selected physxenvids by @ashwinvkNV in https://github.com/isaac-sim/IsaacLab/pull/3119
  • Manager Interfaces
    • Fixes observation space Dict for non-concatenated groups only keeps last term by @CSCSX in https://github.com/isaac-sim/IsaacLab/pull/3134
  • MDP Terms
    • Fixes termination term effort limit check logic by @moribots in https://github.com/isaac-sim/IsaacLab/pull/3163
    • Broadcasts environment ids inside mdp.randomize_rigid_body_com by @Foruck in https://github.com/isaac-sim/IsaacLab/pull/3164
    • Fixes IndexError in resetjointsbyscale and resetjointsbyoffset by @Creampelt in https://github.com/isaac-sim/IsaacLab/pull/2949
    • Fixes terrain_out_of_bounds to return tensor instead of bool by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/3180

Infrastructure

  • Fixes distributed training hanging issue by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/3273
  • Disables generate internal template when detecting isaaclab install via pip by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3225
  • Fixes typo in isaaclab.bat by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3272
  • Updates app pathing for user-provided rendering preset mode by @matthewtrepte in https://github.com/isaac-sim/IsaacLab/pull/3148

πŸ“œ Documentation

  • Adds documentation for Newton integration by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/3271
  • Adapts FAQ section in docs with Isaac Sim open-sourcing by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/3105
  • Changes checkpoint path in rsl-rl to an absolute path in documentation by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/3151
  • Fix MuJoCo link in docs by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/3181
  • Adds client version direction to XR document by @lotusl-code in https://github.com/isaac-sim/IsaacLab/pull/3246
  • Fixes broken link in doc by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/3274
  • Fix typo in list_envs.py script path by @fbeltrao in https://github.com/isaac-sim/IsaacLab/pull/3282
  • Fixes Franka blueprint env ID in docs by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/3213
  • Fixes template docs and restructure imitation learning docs by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/3283

πŸ’” Breaking Changes

  • Improves termination manager logging to report aggregated percentage of environments done due to each term by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3107

πŸ€— New Contributors

  • @hhansen-bdai made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3116
  • @ashwinvkNV made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3119
  • @Creampelt made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2949
  • @soowanpNV made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3238
  • @moribots made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3163
  • @CSCSX made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3134
  • @ossamaAhmed made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3243
  • @Foruck made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3164
  • @lotusl-code made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3246
  • @ben-johnston-nv made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3247
  • @rwiltz made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3255
  • @michaellin6 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3149
  • @fbeltrao made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3282

- Python
Published by Mayankm96 9 months ago

isaaclab - v2.2.0

πŸ‘€ Overview

Isaac Lab 2.2 brings major upgrades across simulation capabilities, tooling, and developer experience. It expands support for advanced physics features, new environments, and improved testing and documentation workflows. This release includes full compatibility with Isaac Sim 5.0 as well as backwards compatibility with Isaac Sim 4.5.

Key highlights of this release include:

  • Enhanced Physics Support: Updated joint friction modeling using the latest PhysX APIs, added support for spatial tendons, and improved surface gripper interactions.
  • New Environments for Imitation Learning: Introduction of two new GR1 mimic environments, with domain randomization and visual robustness evaluation, and improved pick-and-place tasks.
  • New Contact-Rich Manipulation Tasks: Integration of FORGE and AutoMate tasks for learning fine-grained contact interactions in simulation.
  • Teleoperation Improvements: Teleoperation tools have been enhanced with configurable parameters and CloudXR runtime updates, including head tracking and hand tracking.
  • Performance & Usability Improvements: Includes support for Stage in Memory and Cloning in Fabric for faster scene creation, new OVD recorder for large-scene GPU-based animation recording, and FSD (Fabric Scene Delegate) for improved rendering speed.
  • Improved Documentation: The documentation has been extended and updated to cover new features, resolve common issues, and streamline setup, including updates to teleop system requirements, VS Code integration, and Python environment management.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.1.1...v2.2.0

πŸ”† Highlighted Features

FORGE environments

As introduced in the FORGE paper, these environments focus on multi-stage assembly tasks that require force-aware manipulation. For more details, please check the PR #2968.

https://github.com/user-attachments/assets/0f307974-d0e8-40c4-a5b0-2f5c5d292668

AutoMate environments

The Automate effort creates a large assembly dataset for training policies over a wide range of assemblies. All 100 assembly parts and their respective environments are now a part of the environment suite. For more information, please check the PR #2507

https://github.com/user-attachments/assets/50bd0d4c-e281-405f-bdb2-6b77854ed0bb

Isaac Lab Evaluation Tasks

To simulate and evaluate manipulation policies (such as the Isaac GR00T N1 model), new industrial manipulation tasks using a humanoid robot are now available as a part of the IsaacLabEvalTasks effort. For more information, please check the repository: https://github.com/isaac-sim/IsaacLabEvalTasks

https://github.com/user-attachments/assets/dc58594a-8654-49ad-8bc9-db636f156330

πŸ’‘Isaac Sim 5.0 Updates

  • Fixes rendering issues on Blackwell GPUs that previously resulted in overly noisy renders
  • Updates Python version from 3.10 to 3.11
  • Updates PyTorch version to torch 2.7.0+cu128, which will include Blackwell support
  • Drops official support for Ubuntu 20.04, we now officially support Ubuntu 22.04 and 24.04 Linux platforms
  • Isaac Sim 5.0 no longer sets /app/player/useFixedTimeStepping=False by default. We now do this in Isaac Lab.
  • isaaclab.sim.spawners.PhysicsMaterialCfg.improve_patch_friction is now removed. The simulation will always behave as if this attribute is set to true.
  • Native Livestreaming support has been removed. LIVESTREAM=1 can now be used for WebRTC streaming over public networks and LIVESTREAM=2 for private and local networks with WebRTC streaming.
  • Some assets in Isaac Sim have been reworked and restructured. Notably, the following asset paths were updated:
    • Robots/Ant/ant_instanceable.usd --> Robots/IsaacSim/Ant/ant_instanceable.usd
    • Robots/Humanoid/humanoid_instanceable.usd --> Robots/IsaacSim/Humanoid/humanoid_instanceable.usd
    • Robots/ANYbotics/anymal_instanceable.usd --> Robots/ANYbotics/anymal_c/anymal_c.usd
    • Robots/ANYbotics/anymal_c.usd --> Robots/ANYbotics/anymal_c/anymal_c.usd
    • Robots/Franka/franka.usd --> Robots/FrankaRobotics/FrankaPanda/franka.usd
    • Robots/AllegroHand/allegro_hand_instanceable.usd --> Robots/WonikRobotics/AllegroHand/allegro_hand_instanceable.usd
    • Robots/Crazyflie/cf2x.usd --> Robots/Bitcraze/Crazyflie/cf2x.usd
    • Robots/RethinkRobotics/sawyer_instanceable.usd --> Robots/RethinkRobotics/Sawyer/sawyer_instanceable.usd
    • Robots/ShadowHand/shadow_hand_instanceable.usd --> Robots/ShadowRobot/ShadowHand/shadow_hand_instanceable.usd

✨ New Features

  • Adds FORGE tasks for contact-rich manipulation with force sensing to IsaacLab by @noseworm in #2968
  • Adds two new GR1 environments for IsaacLab Mimic by @peterd-NV
  • Adds stack environment, scripts for Cosmos, and visual robustness evaluation by @shauryadNv
  • Updates Joint Friction Parameters to Isaac Sim 5.0 PhysX APIs by @ossamaAhmed in 87130f23a11b84851133685b234dfa4e0991cfcd
  • Adds support for spatial tendons by @ossamaAhmed in 7a176fa984dfac022d7f99544037565e78354067
  • Adds support and example for SurfaceGrippers by @AntoineRichard in 14a3a7afc835754da7a275209a95ea21b40c0d7a
  • Adds support for stage in memory by @matthewtrepte in 33bcf6605bcd908c10dfb485a4432fa1110d2e73
  • Adds OVD animation recording feature by @matthewtrepte

πŸ”§ Improvements

  • Enables FSD for faster rendering by @nv-mm
  • Sets rtx.indirectDiffuse.enabled to True for performance & balanced rendering presets by @matthewtrepte
  • Changes runner for post-merge pipeline on self-hosted runners by @nv-apoddubny
  • Fixes and improvements for CI pipeline by @nv-apoddubny
  • Adds flaky annotation for tests by @kellyguo11
  • Updates Mimic test cases to pytest format by @peterd-NV
  • Updates cosmos test files to use pytest by @shauryadNv
  • Updates onnx and protobuf version due to vulnerabilities by @kellyguo11
  • Updates minimum skrl version to 1.4.3 by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/3053
  • Updates to Isaac Sim 5.0 by @kellyguo11
  • Updates docker CloudXR runtime version by @lotusl-code
  • Removes xr rendering mode by @rwiltz
  • Migrates OpenXRDevice from isaacsim.xr.openxr to omni.xr.kitxr by @rwiltz
  • Implements teleop config parameters and device factory by @rwiltz
  • Updates pick place env to use steering wheel asset by @peterd-NV
  • Adds a CLI argument to set epochs for Robomimic training script by @peterd-NV

πŸ› Bug Fixes

  • Fixes operational space unit test to avoid pi rotation error by @ooctipus
  • Fixes GLIBC errors with importing torch before AppLauncher by @kellyguo11 in c80e2afb596372923dbab1090d4d0707423882f0
  • Fixes rendering preset by @matthewtrepte in cc0dab6cd50778507efc3c9c2d74a28919ab2092
  • Fixes callbacks with stage in memory and organize environment tests by @matthewtrepte in 4dd6a1e804395561965ed242b3d3d80b8a8f72b9
  • Fixes XR and external camera bug with async rendering by @rwiltz in c80e2afb596372923dbab1090d4d0707423882f0
  • Disables selection for rl_games when marl is selected for template generator by @ooctipus
  • Adds check for .gitignore when generating template by @kellyguo11
  • Fixes camera obs errors in stack instance randomize envs by @peterd-NV
  • Fixes parsing for play envs by @matthewtrepte
  • Fixes issues with consecutive python exe calls in isaaclab.bat by @kellyguo11
  • Fixes spacemouse add callback function by @peterd-NV in 72f05a29ad12d02ec9585dad0fbb2299d70a929c
  • Fixes humanoid training with new velocitylimitsim by @AntoineRichard

πŸ“„ Documentation

  • Adds note to mimic cosmos pipeline doc for eval by @shauryadNv
  • Updates teleop docs for 2.2 release by @rwiltz
  • Fixes outdated dofbot path in tutorial scripts by @mpgussert
  • Updates docs for VS Code IntelliSense setup and JAX installation by @Toni-SM
  • Updates Jax doc to overwrite version < 0.6.0 for torch by @kellyguo11
  • Adds docs for fabric cloning & stage in memory by @matthewtrepte
  • Updates driver requirements to point to our official technical docs by @mpgussert
  • Adds warning for ovd recording warning logs spam by @matthewtrepte
  • Adds documentation to specify HOVER version and known GLIBCXX error by @kellyguo11
  • Updates teleop system requirements doc by @lotusl-code
  • Add network requirements to cloudxr teleop doc by @lotusl-code

- Python
Published by kellyguo11 10 months ago

isaaclab - v2.1.1

πŸ‘€ Overview

This release has been in development over the past few months and includes a significant number of updates, enhancements, and new features across the entire codebase. Given the volume of changes, we've grouped them into relevant categories to improve readability. This version is compatible with NVIDIA Isaac Sim 4.5.

We appreciate the community’s patience and contributions in ensuring quality and stability throughout. We're aiming for more frequent patch releases moving forward to improve the developer experience.

Note: This minor release does not include a Docker image or pip package.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.1.0...v2.1.1

✨ New Features

  • Asset Interfaces
    • Adds position argument to set external forces and torques at different locations on the rigid body by @AntoineRichard in https://github.com/isaac-sim/IsaacLab/pull/1680
    • Adds body_incoming_joint_wrench_b to ArticulationData field by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2128
    • Allows selecting articulation root prim explicitly by @lgulich in https://github.com/isaac-sim/IsaacLab/pull/2228
  • Sensor Interfaces
    • Draws connection lines for FrameTransformer visualization by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1754
    • Uses visualization marker for connecting lines inside FrameTransformer by @bikcrum in https://github.com/isaac-sim/IsaacLab/pull/2526
  • MDP Terms
    • Adds body_pose_w and body_projected_gravity_b observations by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2212
    • Adds joint effort observation by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2211
    • Adds CoM randomization term to manager-based events by @shendredm in https://github.com/isaac-sim/IsaacLab/pull/1714
    • Adds time-based mdp (observation) functions by @TheIndoorDad in https://github.com/isaac-sim/IsaacLab/pull/2332
    • Adds curriculum mdp term to modify any environment parameters by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2777
  • New Example Tasks
    • Adds assembly tasks from the Automate project by @yijieg in https://github.com/isaac-sim/IsaacLab/pull/2507
    • Adds digit locomotion examples by @lgulich in https://github.com/isaac-sim/IsaacLab/pull/1892

πŸ”§ Improvements

Core API

  • Actuator Interfaces
    • Fixes implicit actuator limits configs for assets by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2952
    • Updates actuator configs for Franka arm by @reeceomahoney in https://github.com/isaac-sim/IsaacLab/pull/2492
  • Asset Interfaces
    • Optimizes getters of data inside asset classes by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2118
    • Adds method to set the visibility of the Asset's prims by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1752
  • Sensor Interfaces
    • Updates to ray caster ray alignment and more customizable drift sampling by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/2556
    • Extends ContactSensorData by force_matrix_w_history attribute by @bikcrum in https://github.com/isaac-sim/IsaacLab/pull/2916
    • Adds IMU projectedgravityb and IMU computation speed optimizations by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2512
  • Manager Interfaces
    • Adds serialization to observation and action managers by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/2234
    • Adds option to define the concatenation dimension in the ObservationManager by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2393
    • Supports composite observation space with proper min max in manager based env by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2811
    • Changes counter update in CommandManager by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2393
    • Integrates NoiseModel to manager-based workflows by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/2755
    • Updates NoiseModelWithAdditiveBias to apply per-feature bias sampling by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/2760
    • Fixes isaaclab.scene.reset_to to properly accept None as valid argument by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2970
    • Resets step reward buffer properly when weight is zero by @bikcrum in https://github.com/isaac-sim/IsaacLab/pull/2392
  • Terrain Generation
    • Allows for custom TerrainGenerator without modifications of the TerrainImporter by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2487
    • Adds option for terrain border to above or below the ground by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2394
    • Adds ability to set platform height independent of object height for terrain by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2695
    • Adds absolute and relative noise to MeshRepeatedObjectsTerrain by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2830
  • Simulation
    • Raises exceptions from initialization callbacks inside SimContext in https://github.com/isaac-sim/IsaacLab/pull/2166
    • Applies semantic_tags to ground by @KumoLiu in https://github.com/isaac-sim/IsaacLab/pull/2410
    • Sets enable_stabilization to false by default by @AntoineRichard in https://github.com/isaac-sim/IsaacLab/pull/2628
    • Fixes deprecation warning for pxr.Semantics by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2721
  • Math Utilities
    • Improves the implementation of euler_xyz_from_quat by @ShaoshuSu in https://github.com/isaac-sim/IsaacLab/pull/2365
    • Optimizes yaw_quat implementation by @hapatel-bdai in https://github.com/isaac-sim/IsaacLab/pull/2247
    • Changes to quat_apply and quat_apply_inverse for speed by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2129
    • Changes quat_box_minus implementation by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2217
    • Adds quat_box_plus and rigid_body_twist_transform by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2217
    • Adds math tests for transforms, rotations, and conversions by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2801
  • General Utilities
    • Simplifies buffer validation check for CircularBuffer by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2617
    • Modifies update_class_from_dict() to wholesale replace flat Iterables by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/2511
    • Allows slicing to be processed from lists inside dictionary by @LinghengMeng @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2853

Tasks API

  • Adds support for module:task and updates gymnasium to >=1.0 by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2467
  • Adds available RL library configs on error message if entry point is invalid by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/2713
  • Enables hydra for all play.py scripts by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2995
  • Fixes ray lazy metric reporting and hanging processes by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/2346
  • Adds gradient clipping parameter for distillation using RSL-RL by @alessandroassirelli98 in https://github.com/isaac-sim/IsaacLab/pull/2454
  • Makes GRU-based RNNs exportable in RSL RL by @WT-MM in https://github.com/isaac-sim/IsaacLab/pull/3009
  • Adds wandb native support in rl_games by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2650
  • Optimizes Stable-Baselines3 wrapper and additional training configs by @araffin in https://github.com/isaac-sim/IsaacLab/pull/2022
  • Enables sb3 to load checkpoint to continue training by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2954
  • Supports sb3 wrapper to pre-process env's image obs-space to trigger sb3 natively supported cnn creation pipeline by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2812

Infrastructure

  • Dependencies
    • Updates torch to 2.7.0 with cuda 12.8 blackwell support by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2998
    • Updates gymnasium to v1.2.0 by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2852
    • Fixes numpy ver to <2 for isaaclabrl and isaaclabtasks by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2866
    • Adds license file for 3rd party OSS dependencies by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2577
    • Sets robomimic version to v0.4.0 by @masoudmoghani in https://github.com/isaac-sim/IsaacLab/pull/2814
    • Upgrades pillow dependencies for upcoming Kit 107.3.1 by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2908
    • Removes protobuf upper version pin by @kwlzn in https://github.com/isaac-sim/IsaacLab/pull/2726
  • Docker
    • Uses --gpus instead of nvidia runtime for docker by @yanziz-nvidia in https://github.com/isaac-sim/IsaacLab/pull/2411
    • Adds optional suffix parameter for docker name by @zoemcc in https://github.com/isaac-sim/IsaacLab/pull/2172
    • Adds support for bash history in docker by @AntoineRichard in https://github.com/isaac-sim/IsaacLab/pull/2659
  • Testing & Benchmarking
    • Switches unittest to pytest for testing by @kellyguo11 @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2459
    • Adds training benchmark unit tests with input config by @matthewtrepte in https://github.com/isaac-sim/IsaacLab/pull/2503
    • Fixes failing environment and IK tests by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2372
  • Repository Utilities
    • Adds script to convert urdfs/meshes to instanceable USD in batches by @hapatel-bdai in https://github.com/isaac-sim/IsaacLab/pull/2248
    • Adds citation link for the repository by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2935
    • Adds Internal template generator warning for case when user pip installed isaaclab by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/3027

πŸ› Bug Fixes

Core API

  • Actuator Interfaces
    • Fixes DCMotor clipping for negative power and adds actuator tests by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2300
  • Asset Interfaces
    • Fixes inconsistent data reading in body, link, com for RigidObject, RigidObjectCollection and Articulation by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2736
  • Sensor Interfaces
    • Fixes pose update in Camera and TiledCamera by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2316
    • Fixes moving to cpu if needed in camera.py by @renaudponcelet in https://github.com/isaac-sim/IsaacLab/pull/2176
    • Fixes how camera intrinsics are used for creation and update by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1624
  • Manager Interfaces
    • Fixes ObservationManager history buffer corrupted by external calls to ObservationManager.compute by @patrickhaoy in https://github.com/isaac-sim/IsaacLab/pull/2885
    • Fixes check for manager term class inside event manager by @miguelalonsojr in https://github.com/isaac-sim/IsaacLab/pull/2357
    • Fixes the issue of using Modifiers and history buffer together by @ZiwenZhuang in https://github.com/isaac-sim/IsaacLab/pull/2461
    • Fixes check for re-initializing terms in ManagerBase by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2612
    • Fixes collision filtering logic on CPU by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2553
    • Fixes import inside InteractiveScene and LiveVisualizer by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2611
    • Fixes broken import in Live Visualizer image plot by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2486
  • MDP Terms
    • Fixes shape mismatch in body COM randomization by @shendredm in https://github.com/isaac-sim/IsaacLab/pull/2561
    • Fixes visual prims handling during texture randomization by @KumoLiu in https://github.com/isaac-sim/IsaacLab/pull/2476
    • Resets joint position/velocity targets in reset_scene_to_default by @wghou in https://github.com/isaac-sim/IsaacLab/pull/2692
    • Fixes joint out of position limits terminations by @GiulioRomualdi in https://github.com/isaac-sim/IsaacLab/pull/2442
    • Fixes reset_joints_by_scale and reset_joints_by_offsets to only affect the joint_names specified in SceneEntityCfg by @ooctipus in https://github.com/isaac-sim/IsaacLab/pull/2899
  • Math Utilities
    • Fixes the implementation of quat_inv() by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/2797

Tasks API

  • Fixes export LSTM to onnx file by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2821

Example Tasks

  • Removes redundant contact termination assignment in H1RoughEnvCfg by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/1748
  • Fixes memory leak in SDF calculation by @leondavi in https://github.com/isaac-sim/IsaacLab/pull/2680
  • Fixes randomization to events in Digit envs by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/3033

πŸ“œ Documentation

  • Adds section on isaac sim version in README by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2698
  • Adds physics performance how-to guide by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2468
  • Adds walkthrough section in documentation with jetbot tutorial by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/2368
  • Changes quickstart installation to use conda by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/2686
  • Fixes typo in the docs for adding your own library by @norbertcygiert in https://github.com/isaac-sim/IsaacLab/pull/2520
  • Updates documentation for conda, fabric, and inferencing by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2772
  • Updates license headers and contributing with DCO by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2629
  • Updates help text and docs to reflect pytest usage by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/2638
  • Updates doc on actuators to include some references by @AntoineRichard in https://github.com/isaac-sim/IsaacLab/pull/2656
  • Update documentation on pytorch multi gpu setup by @Alex-Omar-Nvidia in https://github.com/isaac-sim/IsaacLab/pull/2687
  • Remove deprecated env variable in docs by @Kyu3224 in https://github.com/isaac-sim/IsaacLab/pull/2936

πŸ’” Breaking Changes

While this release mainly focuses around various improvements and bug fixes, there are some noticeable behavior changes that are worth highlighting. These are summarized below.

Disabling of additional stabilization pass in PhysX settings

Previously, we were setting the PhysxCfg.enable_stabilization to True by default. This flag enabled additional stabilization processing by the underlying physics engine to improve the stability of complex interactions between large number of bodies.

As discussed in the PR #2628, enabling this flag led to incorrect contact forces report. Under the hood, PhysX introduces various non-physical heuristics to perform stabilization of large number of contacts. However, since the solver has improved, these heuristics are no longer applicable or needed for robotics applications. Hence, we have changed the flag enable_stabilization to False by default.

Clipping of torques inside the DC Motor

Previously, the clipping of torques inside the DC Motor did not account for the negative power regions properly. With the changes introduced in PR #2300, this should be handled properly.

πŸ€— New Contributors

  • @miguelalonsojr made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2357
  • @renaudponcelet made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2176
  • @yanziz-nvidia made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2411
  • @KumoLiu made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2410
  • @bikcrum made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2392
  • @zoemcc made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2172
  • @virgilio96upm made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1716
  • @ZiwenZhuang made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2461
  • @reeceomahoney made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2492
  • @shendredm made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1714
  • @matthewtrepte made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2503
  • @yijieg made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2507
  • @alessandroassirelli98 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2454
  • @TheIndoorDad made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2332
  • @ooctipus made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2650
  • @araffin made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2022
  • @wghou made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2692
  • @ShaoshuSu made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2365
  • @norbertcygiert made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2520
  • @leondavi made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2680
  • @kwlzn made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2726
  • @bsb808 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2788
  • @patrickhaoy made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2885
  • @Kyu3224 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2936
  • @Alex-Omar-Nvidia made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2687
  • @WT-MM made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/3009

- Python
Published by Mayankm96 10 months ago

isaaclab - v2.1.0

πŸ‘€ Overview

This release introduces the official support for teleoperation using the Apple Vision Pro for collecting high-quality and dexterous hand data, including the addition of bi-manual teleoperation and imitation learning workflows through Isaac Lab Mimic.

We have also introduced new randomization methods for USD attributes, including the randomization of scale, color, and textures. In this release, we updated RSL RL to v2.3.1, which introduces many additional features including distributed training, student-teacher distillation, and recurrent student-teacher distillation.

Additionally, we revamped the Extension Template to include an automatic template generator tool from within the Isaac Lab repo. The extension template is a powerful method for users to develop new projects in user-hosted repos, allowing for isolation from the core Isaac Lab repo and changes. The previous IsaacLabExtensionTemplate repo showed a limited example pertaining only to the Manager-based workflow and RSL RL. In the new template generator, users can choose from any supported workflow and RL library, along with the desired RL algorithm. We will be deprecating the standalone IsaacLabExtensionTemplate in the near future.

NVIDIA has also released HOVER as an independent repo, hosting a neural whole body controller for humanoids built on top of Isaac Lab. HOVER includes sim-to-real workflows for deployment on the Unitree H1 robot, which we have also added a tutorial guide for the deployment process in the Isaac Lab documentation.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.0.2...v2.1.0

πŸ”† Highlighted Features

gr-1_pick_place

https://github.com/user-attachments/assets/4f281236-fffd-491d-a04f-1df5b3123f0d

TextureRandomization.webm

✨ New Features

  • Adds new external project / internal task template generator by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/2039
  • Adds dummy agents to the external task template generator by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/2221
  • Adds USD-level randomization mode to event manager by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2040
  • Adds texture and scale randomization event terms by @hapatel-bdai in https://github.com/isaac-sim/IsaacLab/pull/2121
  • Adds replicator event for randomizing colors by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2153
  • Adds interactive demo script for H1 locomotion by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2041
  • Adds blueprint environment for Franka stacking mimic by @chengronglai in https://github.com/isaac-sim/IsaacLab/pull/1944
  • Adds action clipping to rsl-rl wrapper by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2019
  • Adds Gymnasium spaces showcase tasks by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/2109
  • Add configs and adapt exporter for RSL-RL distillation by @ClemensSchwarke in https://github.com/isaac-sim/IsaacLab/pull/2182
  • Adds support for head pose for Open XR device by @rwiltz
  • Adds handtracking joints and retargetting pipeline by @rwiltz
  • Adds documentation for openxr device and retargeters by @rwiltz
  • Adds tutorial for training & validating HOVER policy using Isaac Lab by @pulkitg01
  • Adds rendering mode presets by @matthewtrepte
  • Adds GR1 scene with Pink IK + Groot Mimic data generation and training by @ashwinvkNV
  • Adds absolute pose franka cube stacking environment for mimic by @rwiltz
  • Enables CloudXR OpenXR runtime container by @jaczhangnv
  • Adds a quick start guide for quick installation and introduction by @mpgussert

πŸ”§ Improvements

  • Clarifies the default parameters in ArticulationData by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1875
  • Removes storage of meshes inside the TerrainImporter class by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1987
  • Adds more details about state in InteractiveScene by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2119
  • Mounts scripts to docker container by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2152
  • Initializes manager term classes only when sim starts by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2117
  • Updates to latest RSL-RL v2.3.0 release by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2154
  • Skips dependency installation for directories with no extension.toml by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/2216
  • Clarifies layer instructions in animation docs by @tylerlum in https://github.com/isaac-sim/IsaacLab/pull/2240
  • Lowers the default number of environments for camera envs by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2287
  • Updates Rendering Mode guide in documentation by @matthewtrepte
  • Adds task instruction UI support for mimic by @chengronglai
  • Adds ExplicitAction class to track argument usage in AppLauncher by @nv-mhaselton
  • Allows physics reset during simulation by @oahmednv
  • Updates mimic to support multi-eef (DexMimicGen) data generation by @nvcyc

πŸ› Bug Fixes

  • Fixes default effort limit behavior for implicit actuators by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/2098
  • Fixes docstrings inconsistencies the code by @Bardreamaster in https://github.com/isaac-sim/IsaacLab/pull/2112
  • Fixes missing stage recorder extension for animation recorder by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2125
  • Fixes ground height in factory environment by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/2071
  • Removes double definition of render settings by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/2083
  • Fixes device settings in env tutorials by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2151
  • Changes default ground color back to dark grey by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2164
  • Initializes extras dict before loading managers by @kousheekc in https://github.com/isaac-sim/IsaacLab/pull/2178
  • Fixes typos in development.rst by @vi3itor in https://github.com/isaac-sim/IsaacLab/pull/2181
  • Fixes SE gamepad omniverse subscription API by @PinkPanther-ny in https://github.com/isaac-sim/IsaacLab/pull/2173
  • Fixes modifyactionspace in RslRlVecEnvWrapper by @felipemohr in https://github.com/isaac-sim/IsaacLab/pull/2185
  • Fixes distributed setup in benchmarking scripts by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2194
  • Fixes typo RF_FOOT to RH_FOOT in tutorials by @likecanyon in https://github.com/isaac-sim/IsaacLab/pull/2200
  • Checks if success term exists before recording in RecorderManager by @peterd-NV in https://github.com/isaac-sim/IsaacLab/pull/2218
  • Unsubscribes from debug vis handle when timeline is stopped by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/2214
  • Fixes wait time in play.py by using env.step_dt by @tylerlum in https://github.com/isaac-sim/IsaacLab/pull/2239
  • Fixes 50 series installation instruction to include torchvision by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2258
  • Fixes importing MotionViewer from external scripts by @T-K-233 in https://github.com/isaac-sim/IsaacLab/pull/2195
  • Resets cuda device after each app.update call by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2283
  • Fixes resume flag in rsl-rl cli args by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/2299

πŸ€— New Contributors

  • @chengronglai made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1944
  • @Bardreamaster made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2112
  • @hapatel-bdai made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2121
  • @kousheekc made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2178
  • @vi3itor made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2181
  • @PinkPanther-ny made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2173
  • @felipemohr made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2185
  • @likecanyon made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2200
  • @tylerlum made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2239
  • @ClemensSchwarke made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2182

- Python
Published by kellyguo11 about 1 year ago

isaaclab - v2.0.2

πŸ‘€ Overview

This patch release focuses on improving actuator configuration and fixing key bugs while reverting unintended behavioral changes from v2.0.1. We strongly recommend switching to this new version if you're migrating from a pre-2.0 release of Isaac Lab.

Key Changes:

  • Actuator limit handling: Introduced velocity_limit_sim and effort_limit_sim to clearly distinguish simulation solver limits from actuator model constraints. Reverted implicit actuator velocity limits to pre-v2.0 behavior
  • Simulation configuration update: Removed disable_contact_processing flag to simplify behavior
  • Rendering configuration update: Reverted to pre-2.0 configuration to improve the quality of the render product
  • Tiled camera fixes: Fixed motion vector processing and added a hotfix for retrieving semantic images from the TiledCamera
  • WebRTC support: Added IP specification for live-streaming

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.0.1...v2.0.2

✨ New Features

  • Adds velocity_limit_sim and effort_limit_sim to actuator by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1654
  • Adds WebRTC livestreaming support with IP specification by @sheikh-nv in https://github.com/isaac-sim/IsaacLab/pull/1967

πŸ”§ Improvements

  • Adds guidelines and examples for code contribution by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1876
  • Separates joint state setters inside Articulation class by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1751
  • Implements deterministic evaluation for skrl's multi-agent algorithms by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/1972
  • Adds new extensions to pyproject.toml by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1988
  • Updates docs on Isaac Sim binary installation path and VSCode integration by @j3soon in https://github.com/isaac-sim/IsaacLab/pull/1970
  • Removes remaining deprecation warning in RigidObject deprecation by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1851
  • Adds security and show&tell notes to documentation by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1830
  • Updates docs for segmentation and 50 series GPUs issues by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1943
  • Adds workaround for semantic segmentation issue with tiled camera by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1947

πŸ› Bug Fixes

  • Fixes offset from object obs for Franka stacking env when using parallel envs by @peterd-NV in https://github.com/isaac-sim/IsaacLab/pull/1839
  • Adds scene update to ManagerBasedEnv, DirectRLEnv and MARL envs initialization by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1809, https://github.com/isaac-sim/IsaacLab/pull/1865
  • Loads actuator networks in eval() mode to prevent gradients by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1862
  • Fixes instructions on importing ANYmal URDF in docs by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1915
  • Fixes setting of root velocities in the event term reset_root_state_from_terrain by @syundo0730 in https://github.com/isaac-sim/IsaacLab/pull/1884
  • Fixes activate_contact_sensors when using spawner.MultiUsdFileCfg by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1990
  • Fixes misalignment in motion vectors from TiledCamera by @lhy0807 in https://github.com/isaac-sim/IsaacLab/pull/2012
  • Sets default tensor device to CPU for Camera rot buffer by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/2002

πŸ’” Breaking Changes

  • Reverts the setting of joint velocity limits for implicit actuators by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1873
  • Removes disable_contact_processing flag from SimulationContext by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1861
  • Reverts to old render settings in kit experience files by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/1855

✈️ Migration Guide

[!WARNING]
We strongly recommend reviewing the details to fully understand the change in behavior, as it may impact the deployment of learned policies. Please open an issue on GitHub if you face any problems.

Introduction of simulation's effort and velocity limits parameters in ActuatorBaseCfg

Related MRs: https://github.com/isaac-sim/IsaacLab/pull/1654, https://github.com/isaac-sim/IsaacLab/pull/1873

Details We have introduced the configuration variables `velocity_limit_sim` and `effort_limit_sim` to the `isaaclab.actuators.ActuatorBaseCfg` to allow users to set the **simulation** joint velocity and effort limits through the actuator configuration class. Previously, we were overusing the attributes `velocity_limit` and `effort_limit` inside the actuator configuration. A series of changes in-between led to a regression from v1.4.0 to v2.0.1 release of IsaacLab. To make this clearer to understand, we note the change in their behavior in a tabular form: Actuator Type | Attribute | v1.4.0 Behavior | v2.0.1 Behavior -- | -- | -- | -- Implicit | `velocity_limit` | Ignored, not set into simulation | Set into simulation Implicit | `effort_limit` | Set into simulation | Set into simulation Explicit | `velocity_limit` | Used by actuator models (e.g., DC Motor), not set into simulation | Used by actuator models (e.g., DC Motor), set into simulation Explicit | `effort_limit` | Used by actuator models, not set into simulation | Used by actuator models, set into simulation Setting the limits from the configuration into the simulation directly affects the behavior of the underlying physics engine solver. This impact is particularly noticeable when velocity limits are too restrictive, especially in joints with high stiffness, where it becomes easier to reach these limits. As a result, the change in behavior caused previously trained policies to not function correctly in IsaacLab v2.0.1. Consequently, we have reverted back to the prior behavior and added `velocity_limit_sim` and `effort_limit_sim` attributes to make it clear that setting those parameters means changing solver's configuration. The new behavior is as follows: Attribute | Implicit Actuator | Explicit Actuator -- | -- | -- `velocity_limit` | Ignored, not set into simulation | Used by the model (e.g., DC Motor), not set into simulation `effort_limit` | Set into simulation (same as `effort_limit_sim`) | Used by the models, not set into simulation `velocity_limit_sim` | Set into simulation | Set into simulation `effort_limit_sim` | Set into simulation (same as `effort_limit`) | Set into simulation Users are advised to use the `xxx_sim` flag if they want to directly modify the solver limits.

Removal of disable_contact_processing flag in SimulationCfg

Related MRs: https://github.com/isaac-sim/IsaacLab/pull/1861

Details We have now removed the `disable_contact_processing` flag from the `SimulationCfg` to not have the user worry about these intricacies of the simulator. The flag is always True by default unless a contact sensor is created (which will internally set this flag to False). Previously, the flag `disable_contact_processing` led to confusion about its behavior. As the name suggests, the flag controls the contact reporting from the underlying physics engine, PhysX. Disabling this flag (note the double negation) means that PhysX collects the contact information from its solver and allows reporting them to the user. Enabling this flag means this operation is not performed and the overhead of it is avoided. Many of our examples (for instance, the locomotion environments) were setting this flag to True which meant the contacts should **not** get reported. However, this issue was not noticed earlier since GPU simulation bypasses this flag, and only CPU simulation gets affected. Running the same examples on CPU device led to different behaviors because of this reason. Existing users, who currently set this flag themselves, should receive a deprecated warning mentioning the removal of this flag and the switch to the new default behavior.

Switch to older rendering settings to improve render quality

Related MRs: https://github.com/isaac-sim/IsaacLab/pull/1855

Details With the IsaacLab 2.0.0 release, we switched to new render settings aimed at improving tiled-rendering performance, but at the cost of reduced rendering quality. This change particularly affected dome lighting in the scene, which is the default in many of our examples. As reported by several users, this change negatively impacted render quality, even in cases where it wasn’t necessary (such as when recording videos of the simulation). In response to this feedback, we have reverted to the previous render settings by default to restore the quality users expected. For users who are looking to trade render quality for speed, we will provide guidelines in the future.

πŸ€— New Contributors

  • @syundo0730 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1884
  • @Gonglitian made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1981
  • @lhy0807 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/2012

- Python
Published by Mayankm96 about 1 year ago

isaaclab - v2.0.1

πŸ‘€ Overview

This release contains a small set of fixes and improvements.

The main change was to maintain combability with the updated library name for RSL RL, which breaks the previous installation methods for Isaac Lab. This release provides the necessary fixes and updates in Isaac Lab to accommodate for the name change and maintain combability with installation for RSL RL.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.0.0...v2.0.1

πŸ”§ Improvements

  • Switches to RSL-RL install from PyPI by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1811
  • Updates the script path in the document by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1766
  • Disables extension auto-reload when saving files by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1788
  • Updates documentation for v2.0.1 installation by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1818

πŸ› Bug Fixes

  • Fixes timestamp of com and link buffers when writing articulation pose to sim by @Jackkert in https://github.com/isaac-sim/IsaacLab/pull/1765
  • Fixes incorrect local documentation preview path in xdg-open command by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/1776
  • Fixes no matching distribution found for rsl-rl (unavailable) by @samibouziri in https://github.com/isaac-sim/IsaacLab/pull/1808
  • Fixes reset of sensor drift inside the RayCaster sensor by @zoctipus in https://github.com/isaac-sim/IsaacLab/pull/1821

New Contributors

  • @Jackkert made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1765

- Python
Published by kellyguo11 over 1 year ago

isaaclab - v2.0.0

πŸ‘€ Overview

Isaac Lab 2.0 brings some exciting new features, including a new addition to the Imitation Learning workflow with the Isaac Lab Mimic extension.

Isaac Lab Mimic provides the ability to automatically generate additional trajectories based on just a few human collected demonstrations, allowing for larger training datasets with less human effort. This work is based on the MimicGen work for Scalable Robot Learning using Human Demonstrations.

Additionally, we introduced a new set of AMP tasks based on Adversarial Motion Priors, training humanoid robots to walk, run, and dance πŸ‘―

Along with Isaac Lab 2.0, Isaac Sim 4.5 brings several new and breaking changes, including a full refactor of the Isaac Sim extensions, an improved URDF importer, an update to the PyTorch dependency to version 2.5.1, and many fixes for tiled rendering that now supports multiple tiled cameras at different resolutions.

To follow the refactoring in Isaac Sim, we made similar refactoring and restructuring changes to Isaac Lab. These breaking changes will no longer be compatible with previous Isaac Sim versions. Please make sure to update to Isaac Sim 4.5 when using the Isaac Lab 2.0 release.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v1.4.1...v2.0.0

🌟 Highlights from the Isaac Sim 4.5 release:

  • Support for multiple TiledCamera instances and varying resolutions
  • Improved rendering performance by up to 1.2x
  • Faster startup time through optimizations in the Cloner class that improves startup time by 30%
  • Enhanced OmniPVD for debugging physics simulation, enabling capturing reinforcement learning simulation workloads of up to 2000 environments
  • Physics simulation performance optimizations improving throughput of up to 70%
  • Physics support for dedicated cylinder and cone geometry designed for robot wheels that is fully GPU accelerated
  • A new physics GPU filtering mechanism allowing co-location of reinforcement learning environments at the origin with minimal performance loss for scenes with limited collider counts
  • Improvements in simulation stability for mimic joints at high joint gains

πŸ”† Highlighted Features

https://github.com/user-attachments/assets/fee52af0-2ef5-4753-8fbb-dd887f691967

https://github.com/user-attachments/assets/ac1310d4-5452-4bb0-a9d5-d4b8202d79d3

https://github.com/user-attachments/assets/ea1e7901-5711-4324-ae91-3649f6c4fcbd

https://github.com/user-attachments/assets/288ffb91-20b7-4396-a1e1-1ee8f222d444

✨ New Features

  • Adds humanoid AMP tasks for direct workflow by @Toni-SM
  • Adds Isaac Lab Mimic based on MimicGen data generation for Imitation Learning by @peterd-NV @nvcyc @ashwinvkNV @karsten-nvidia
  • Adds consolidated demo script for showcasing recording and mimic dataset generation in real-time in one simulation script by @nvcyc
  • Adds Franka stacking environment for GR00T mimic by @peterd-NV @nvcyc
  • Adds option to filter collisions and real-time playback by @kellyguo11

πŸ”§ Improvements

  • Adds a tutorial for policy inference in a prebuilt USD scene by @oahmednv
  • Adds unit tests for multi-tiled cameras by @matthewtrepte
  • Updates render setting defaults for better quality by @kellyguo11
  • Adds a flag to wait for texture loading completion when reset by @oahmednv
  • Adds pre-trained checkpoints and tools for generating and uploading checkpoints by @nv-cupright
  • Adds new denoiser optimization flags for rendering by @kellyguo11
  • Updates torch to 2.5.1 by @kellyguo11

πŸ› Bug Fixes

  • Fixes external force buffers to set to zero when no forces/torques are applied by @matthewtrepte

πŸ’” Breaking Changes

  • Updates the URDF and MJCF importers for Isaac Sim 4.5 by @Dhoeller19
  • Renames Isaac Lab extensions and folders by @kellyguo11
  • Restructures extension folders and removes old imitation learning scripts by @kellyguo11

✈️ Migration Guide

Renaming of Isaac Sim Extensions

Details Previously, Isaac Sim extensions have been following the convention of `omni.isaac.*`, such as `omni.isaac.core`. In Isaac Sim 4.5, Isaac Sim extensions have been renamed to use the prefix `isaacsim`, replacing `omni.isaac`. In addition, many extensions have been renamed and split into multiple extensions to prepare for a more modular framework that can be customized by users through the use of app templates. Notably, the following commonly used Isaac Sim extensions in Isaac Lab are renamed as follow: * `omni.isaac.cloner` --> `isaacsim.core.cloner` * `omni.isaac.core.prims` --> `isaacsim.core.prims` * `omni.isaac.core.simulation_context` --> `isaacsim.core.api.simulation_context` * `omni.isaac.core.utils` --> `isaacsim.core.utils` * `omni.isaac.core.world` --> `isaacsim.core.api.world` * `omni.isaac.kit.SimulationApp` --> `isaacsim.SimulationApp` * `omni.isaac.ui` --> `isaacsim.gui.components`

Renaming of the URDF and MJCF Importers

Details Starting from Isaac Sim 4.5, the URDF and MJCF importers have been renamed to be more consistent with the other extensions in Isaac Sim. The importers are available on isaac-sim GitHub as open source projects. Due to the extension name change, the Python module names have also been changed: * URDF Importer: `isaacsim.asset.importer.urdf` (previously `omni.importer.urdf`) * MJCF Importer: `isaacsim.asset.importer.mjcf` (previously `omni.importer.mjcf`) From the Isaac Sim UI, both URDF and MJCF importers can now be accessed directly from the File > Import menu when selecting a corresponding .urdf or .xml file in the file browser.

Changes in URDF Importer

Details Isaac Sim 4.5 brings some updates to the URDF Importer, with a fresh UI to allow for better configurations when importing robots from URDF. As a result, the Isaac Lab URDF Converter has also been updated to reflect these changes. The `UrdfConverterCfg` includes some new settings, such as `PDGainsCfg` and `NaturalFrequencyGainsCfg` classes for configuring the gains of the drives. One breaking change to note is that the `UrdfConverterCfg.JointDriveCfg.gains` attribute must be of class type `PDGainsCfg` or `NaturalFrequencyGainsCfg`. The stiffness of the `PDGainsCfg` must be specified, as such: ```python joint_drive=sim_utils.UrdfConverterCfg.JointDriveCfg( gains=sim_utils.UrdfConverterCfg.JointDriveCfg.PDGainsCfg(stiffness=None, damping=None) ) ``` The `natural_frequency` attribute must be specified for `NaturalFrequencyGainsCfg`.

Renaming of Isaac Lab Extensions and Folders

Details Corresponding to Isaac Sim 4.5 changes, we have also made some updates to the Isaac Lab directories and extensions. All extensions that were previously under `source/extensions` are now under the `source/` directory directly. The `source/apps` and `source/standalone` folders have been moved to the root directory and are now called `apps/` and `scripts/`. Isaac Lab extensions have been renamed to: * `omni.isaac.lab` --> `isaaclab` * `omni.isaac.lab_assets` --> `isaaclab_assets` * `omni.isaac.lab_tasks` --> `isaaclab_tasks` In addition, we have split up the previous `source/standalone/workflows` directory into `scripts/imitation_learning` and `scripts/reinforcement_learning` directories. The RSL RL, Stable-Baselines, RL_Games, SKRL, and Ray directories are under `scripts/reinforcement_learning`, while Robomimic and the new Isaac Lab Mimic directories are under `scripts/imitation_learning`. To assist with the renaming of Isaac Lab extensions in your project, we have provided a [simple script](https://gist.github.com/kellyguo11/3e8f73f739b1c013b1069ad372277a85) that will traverse through the `source` and `docs` directories in your local Isaac Lab project and replace any instance of the renamed directories and imports. **Please use the script at your own risk as it will overwrite source files directly.**

Restructuring of Isaac Lab Extensions

Details With the introduction of `isaaclab_mimic`, designed for supporting data generation workflows for imitation learning, we have also split out the previous `wrappers` folder under `isaaclab_tasks` to its own module, named `isaaclab_rl`. This new extension will contain reinforcement learning specific wrappers for the various RL libraries supported by Isaac Lab. The new `isaaclab_mimic` extension will also replace the previous imitation learning scripts under the `robomimic` folder. We have removed the old scripts for data collection and dataset preparation in favor of the new mimic workflow. For users who prefer to use the previous scripts, they will be available in previous release branches. Additionally, we have also restructured the `isaaclab_assets` extension to be split into `robots` and `sensors` subdirectories. This allows for clearer separation between the pre-defined configurations provided in the extension. For any existing imports such as `from omni.isaac.lab_assets.anymal import ANYMAL_C_CFG`, please replace it with `from isaaclab.robots.anymal import ANYMAL_C_CFG`.

πŸ€— New Contributors

We have expanded our internal efforts towards Isaac Lab and Gr00t developments. We sincerely thank the different teams involved in adding these new features into the framework.

- Python
Published by kellyguo11 over 1 year ago

isaaclab - v1.4.1

πŸ‘€ Overview

This release contains a set of improvements and bug fixes.

Most importantly, we reverted one of the changes from the previous release (https://github.com/isaac-sim/IsaacLab/pull/966) to ensure the training throughput performance remains the same.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v1.4.0...v1.4.1

This is the final release compatible with Isaac Sim 4.2. The next release will target Isaac Sim 4.5, which introduces breaking changes that will make Isaac Lab incompatible with earlier versions of Isaac Sim.

✨ New Features

  • Adds documentation and demo script for IMU sensor by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/1694

πŸ”§ Improvements

  • Removes deprecation for rootstatew properties and setters by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1695
  • Fixes MARL workflows for recording videos during training/inferencing by @Rishi-V in https://github.com/isaac-sim/IsaacLab/pull/1596
  • Adds body tracking option to ViewerCfg by @KyleM73 in https://github.com/isaac-sim/IsaacLab/pull/1620
  • Fixes the joint_parameter_lookup type in RemotizedPDActuatorCfg to support list format by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1626
  • Updates pip installation documentation to clarify options by @steple in https://github.com/isaac-sim/IsaacLab/pull/1621
  • Fixes docstrings in Articulation Data that report wrong return dimension by @zoctipus in https://github.com/isaac-sim/IsaacLab/pull/1652
  • Fixes documentation error for PD Actuator by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1668
  • Clarifies ray documentation and fixes minor issues by @garylvov in https://github.com/isaac-sim/IsaacLab/pull/1717
  • Updates code snippets in documentation to reference scripts by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/1693
  • Adds dict conversion test for ActuatorBase configs by @mschweig in https://github.com/isaac-sim/IsaacLab/pull/1608

πŸ› Bug Fixes

  • Fixes JointAction not preserving order when using all joints by @T-K-233 in https://github.com/isaac-sim/IsaacLab/pull/1587
  • Fixes event term for pushing root by setting velocity by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1584
  • Fixes error in Articulation where default_joint_stiffness and default_joint_damping are not correctly set for implicit actuator by @zoctipus in https://github.com/isaac-sim/IsaacLab/pull/1580
  • Fixes action reset of pre_trained_policy_action in navigation environment by @nicolaloi in https://github.com/isaac-sim/IsaacLab/pull/1623
  • Fixes rigid object's root com velocities timestamp check by @ori-gadot in https://github.com/isaac-sim/IsaacLab/pull/1674
  • Adds interval resampling on event manager's reset call by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1750
  • Corrects calculation of target height adjustment based on sensor data by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1710
  • Fixes infinite loop in repeated_objects_terrain method by @nicolaloi in https://github.com/isaac-sim/IsaacLab/pull/1612
  • Fixes issue where the indices were not created correctly for articulation setters by @AntoineRichard in https://github.com/isaac-sim/IsaacLab/pull/1660

πŸ€— New Contributors

  • @T-K-233 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1587
  • @steple made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1616
  • @Rishi-V made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1596
  • @nicolaloi made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1623
  • @mschweig made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1608
  • @AntoineRichard made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1660
  • @ori-gadot made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1674
  • @garylvov made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1717

- Python
Published by Mayankm96 over 1 year ago

isaaclab - v1.4.0

πŸ‘€ Overview

Due to a great amount of amazing updates, we are putting out one more Isaac Lab release based off of Isaac Sim 4.2. This release contains many great new additions and bug fixes, including several new environments, distributed training and hyperparameter support with Ray, new live plot feature for Manager-based environments, and more.

We will now spend more focus on the next Isaac Lab release geared towards the new Isaac Sim 4.5 release coming soon. The upcoming release will contain breaking changes in both Isaac Lab and Isaac Sim and breaks backwards compatibility, but will come with many great fixes and improvements.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v1.3.0...v1.4.0

✨ New Features

  • Adds Factory contact-rich manipulation tasks to IsaacLab by @noseworm in https://github.com/isaac-sim/IsaacLab/pull/1520
  • Adds a Franka stacking ManagerBasedRLEnv by @peterd-NV in https://github.com/isaac-sim/IsaacLab/pull/1494
  • Adds recorder manager in manager-based environments by @nvcyc in https://github.com/isaac-sim/IsaacLab/pull/1336
  • Adds Ray Workflow: Multiple Run Support, Distributed Hyperparameter Tuning, and Consistent Setup Across Local/Cloud by @glvov-bdai in https://github.com/isaac-sim/IsaacLab/pull/1301
  • Adds OperationSpaceController to docs and tests and implement corresponding action/action_cfg classes by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/913
  • Adds null-space control option within OperationSpaceController by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/1557
  • Adds observation term history support to Observation Manager by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1439
  • Adds live plots to managers by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/893

πŸ”§ Improvements

  • Adds documentation and example scripts for sensors by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/1443
  • Removes duplicated TerminationsCfg code in G1 and H1 RoughEnvCfg by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1484
  • Adds option to change the clipping behavior for all Cameras and unifies the default by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/891
  • Adds check that no articulation root API is applied on rigid bodies by @lgulich in https://github.com/isaac-sim/IsaacLab/pull/1358
  • Adds RayCaster rough terrain base height to reward by @Andy-xiong6 in https://github.com/isaac-sim/IsaacLab/pull/1525
  • Adds position threshold check for state transitions by @DorsaRoh in https://github.com/isaac-sim/IsaacLab/pull/1544
  • Adds clip range for JointAction by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1476

πŸ› Bug Fixes

  • Fixes noisemodel initialized in directmarl_env by @NoneJou072 in https://github.com/isaac-sim/IsaacLab/pull/1480
  • Fixes entrypoint and kwargs in isaaclabtasks README by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1485
  • Fixes syntax for checking if pre-commit is installed in isaaclab.sh by @louislelay in https://github.com/isaac-sim/IsaacLab/pull/1422
  • Corrects fisheye camera projection types in spawner configuration by @command-z-z in https://github.com/isaac-sim/IsaacLab/pull/1361
  • Fixes actuator velocity limits propagation down the articulation rootphysxview by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1509
  • Computes Jacobian in the root frame inside the DifferentialInverseKinematicsAction class by @zoctipus in https://github.com/isaac-sim/IsaacLab/pull/967
  • Adds transform for mesh_prim of ray caster sensor by @clearsky-mio in https://github.com/isaac-sim/IsaacLab/pull/1448
  • Fixes configclass dict conversion for torch tensors by @lgulich in https://github.com/isaac-sim/IsaacLab/pull/1530
  • Fixes error in apply_actions method in NonHolonomicAction action term. by @KyleM73 in https://github.com/isaac-sim/IsaacLab/pull/1513
  • Fixes outdated sensor data after reset by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1276
  • Fixes order of logging metrics and sampling commands in command manager by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1352

πŸ’” Breaking Changes

  • Refactors pose and velocities to link frame and COM frame APIs by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/966

πŸ€— New Contributors

  • @nvcyc made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1336
  • @peterd-NV made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1494
  • @NoneJou072 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1480
  • @clearsky-mio made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1448
  • @Andy-xiong6 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1525
  • @noseworm made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1520

- Python
Published by kellyguo11 over 1 year ago

isaaclab - v1.3.0

πŸ‘€ Overview

This release will be a final release based on Isaac Sim 4.2 before the transition to Isaac Sim 4.5, which will likely contain breaking changes and no longer backwards compatible with Isaac Sim 4.2 and earlier. In this release, we introduce many features, improvements, and bug fixes, including IMU sensors, support for various types of gymnasium spaces, manager-based perception environments, and more.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v1.2.0...v1.3.0

✨ New Features

  • Adds IMU sensor by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/619
  • Add Camera Benchmark Tool and Allow Correct Unprojection of distancetocamera depth image by @glvov-bdai in https://github.com/isaac-sim/IsaacLab/pull/976
  • Creates Manager Based Cartpole Vision Example Environments by @glvov-bdai in https://github.com/isaac-sim/IsaacLab/pull/995
  • Adds image extracted features observation term and cartpole examples for it by @glvov-bdai in https://github.com/isaac-sim/IsaacLab/pull/1191
  • Supports other gymnasium spaces in Direct workflow by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/1117
  • Adds configuration classes for spawning different assets at prim paths by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1164
  • Adds a rigid body collection class by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/1288
  • Adds option to scale/translate/rotate meshes in the mesh_converter by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/1228
  • Adds event term to randomize gains of explicit actuators by @MoreTore in https://github.com/isaac-sim/IsaacLab/pull/1005
  • Adds Isaac Lab Reference Architecture documentation by @OOmotuyi in https://github.com/isaac-sim/IsaacLab/pull/1371

πŸ”§ Improvements

  • Expands functionality of FrameTransformer to allow multi-body transforms by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/858
  • Inverts SE-2 keyboard device actions (Z, X) for yaw command by @riccardorancan in https://github.com/isaac-sim/IsaacLab/pull/1030
  • Disables backward pass compilation of warp kernels by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1222
  • Replaces TensorDict with native dictionary by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/1348
  • Improves omni.isaac.lab_tasks loading time by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/1353
  • Caches PhysX view's joint paths when processing fixed articulation tendons by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/1347
  • Replaces hardcoded module paths with __name__ dunder by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1357
  • Expands observation term scaling to support list of floats by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/1269
  • Removes extension startup messages from the Simulation App by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1217
  • Adds a render config to the simulation and tiledCamera limitations to the docs by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1246
  • Adds Kit command line argument support by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1293
  • Modifies workflow scripts to generate random seed when seed=-1 by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1048
  • Adds benchmark script to measure robot loading by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1195
  • Switches from carb to omni.log for logging by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1215
  • Excludes cache files from vscode explorer by @Divelix in https://github.com/isaac-sim/IsaacLab/pull/1131
  • Adds versioning to the docs by @sheikh-nv in https://github.com/isaac-sim/IsaacLab/pull/1247
  • Adds better error message for invalid actuator parameters by @lgulich in https://github.com/isaac-sim/IsaacLab/pull/1235
  • Updates tested docker and apptainer versions for cluster deployment by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/1230
  • Removes ml_archive as a dependency of omni.isaac.lab extension by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1266
  • Adds a validity check for configclasses by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/1214
  • Ensures mesh name is compatible with USD convention in mesh converter by @fan-ziqi in https://github.com/isaac-sim/IsaacLab/pull/1302
  • Adds sanity check for the term type inside the command manager by @command-z-z in https://github.com/isaac-sim/IsaacLab/pull/1315
  • Allows configclass to_dict operation to handle a list of configclasses by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1227

πŸ› Bug Fixes

  • Disables replicate physics for deformable teddy lift environment by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1026
  • Fixes Jacobian joint indices for floating base articulations by @lorenwel in https://github.com/isaac-sim/IsaacLab/pull/1033
  • Fixes setting the seed from CLI for RSL-RL by @kaixi287 in https://github.com/isaac-sim/IsaacLab/pull/1084
  • Fixes camera MDP term name and reprojection docstrings by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1130
  • Fixes deprecation notice for using pxr.Semantics by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1129
  • Fixes scaling of default ground plane by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1133
  • Fixes Isaac Sim executable on pip installation by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/1172
  • Passes device from CLI args to simulation config in standalone scripts by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/1114
  • Fixes the event for randomizing rigid body material by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/1140
  • Fixes the raycastercamera tutorial script when saving the data by @mpgussert in https://github.com/isaac-sim/IsaacLab/pull/1198
  • Fixes running the docker container when the DISPLAY env variable is not defined by @GiulioRomualdi in https://github.com/isaac-sim/IsaacLab/pull/1163
  • Fixes default joint pos when setting joint limits by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/1040
  • Fixes device propogation for noise and adds noise tests by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/1175
  • Removes additional sbatch and fixes default profile in cluster deployment by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/1229
  • Fixes the checkpoint loading error in RSL-RL training script by @bearpaw in https://github.com/isaac-sim/IsaacLab/pull/1210
  • Fixes pytorch broadcasting issue in EMAJointPositionToLimitsAction by @bearpaw in https://github.com/isaac-sim/IsaacLab/pull/1207
  • Fixes body IDs selection when computing feet_slide reward for locomotion-velocity task by @dtc103 in https://github.com/isaac-sim/IsaacLab/pull/1277
  • Fixes broken URLs in markdown files by @DorsaRoh in https://github.com/isaac-sim/IsaacLab/pull/1272
  • Fixes net_arch in sb3_ppo_cfg.yaml for Isaac-Lift-Cube-Franka-v0 task by @LinghengMeng in https://github.com/isaac-sim/IsaacLab/pull/1249

πŸ€— New Contributors

  • @riccardorancan made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1030
  • @glvov-bdai made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/976
  • @kaixi287 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1084
  • @lgulich made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1119
  • @nv-apoddubny made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1118
  • @GiulioRomualdi made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1163
  • @Divelix made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1131
  • @sheikh-nv made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1247
  • @dtc103 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1277
  • @DorsaRoh made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1272
  • @louislelay made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1271
  • @LinghengMeng made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1249
  • @OOmotuyi made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1337
  • @command-z-z made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1315
  • @MoreTore made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/1005

- Python
Published by kellyguo11 over 1 year ago

isaaclab - v1.2.0

πŸ‘€ Overview

We leverage the new release of Isaac Sim, 4.2.0, and bring RTX-based tiled rendering, support for multi-agent environments, and introduce many bug fixes and improvements.

Additionally, we have published an example for generating rewards using an LLM based on Eureka, available here https://github.com/isaac-sim/IsaacLabEureka.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v1.1.0...v1.2.0

πŸ”† Highlighted Features

https://github.com/user-attachments/assets/b991ff62-c6b2-4042-9435-ac7ae232fb26

https://github.com/user-attachments/assets/cb929b45-63b7-433c-af6c-5c19b4951b35

https://github.com/user-attachments/assets/4ecc18e0-ec6c-455a-9a2f-88b00bae0a9f

✨ New Features

  • Adds RTX-based tiled rendering. This improves the overall rendering speed and quality.
  • Adds the direct workflow perceptive Shadowhand Cube Repose environment Isaac-Repose-Cube-Shadow-Vision-Direct-v0 by @kellyguo11.
  • Adds support for multi-agent environments with the Direct workflow, with support for MAPPO and IPPO in SKRL by @Toni-SM
  • Adds the direct workflow multi-agent environments Isaac-Cart-Double-Pendulum-Direct-v0 and Isaac-Shadow-Hand-Over-Direct-v0 by @Toni-SM
  • Adds throughput benchmarking scripts for the different learning workflows by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/759
  • Adds results for the benchmarks in the documentation here for different types of hardware by @kellyguo11
  • Adds the direct workflow Allegro hand environment by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/709
  • Adds video recording to the play scripts in RL workflows by @j3soon in https://github.com/isaac-sim/IsaacLab/pull/763
  • Adds comparison tables for the supported RL libraries here by @kellyguo11
  • Add APIs for deformable asset by @masoudmoghani in https://github.com/isaac-sim/IsaacLab/pull/630
  • Adds support for MJCF converter by @qqqwan in https://github.com/isaac-sim/IsaacLab/pull/957
  • Adds a function to define camera configs through intrinsic matrix by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/617
  • Adds configurable modifiers to observation manager by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/830
  • Adds the Hydra configuration system for RL training by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/700

πŸ”§ Improvements

  • Uses PhysX accelerations for rigid body acceleration data by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/760
  • Adds documentation on the frames for asset data by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/742
  • Renames Unitree configs in locomotion tasks to match properly by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/714
  • Adds option to set the height of the border in the TerrainGenerator by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/744
  • Adds a cli arg to run_all_tests.py for testing a selected extension by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/753
  • Decouples rigid object and articulation asset classes by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/644
  • Adds performance optimizations for domain randomization by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/494
  • Allows having hybrid dimensional terms inside an observation group by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/772
  • Adds a flag to preserve joint order inside JointActionCfg action term by @xav-nal in https://github.com/isaac-sim/IsaacLab/pull/787
  • Adds the ability to resume training from a checkpoint with rl_games by @sizsJEon in https://github.com/isaac-sim/IsaacLab/pull/797
  • Adds windows configuration to VS code tasks by @johnBuffer in https://github.com/isaac-sim/IsaacLab/pull/963
  • Adapts A and D button bindings in the keyboard device by @zoctipus in https://github.com/isaac-sim/IsaacLab/pull/910
  • Uses torch.einsum for quatrotate and quatrotate_inverse operations by @dxyy1 in https://github.com/isaac-sim/IsaacLab/pull/900
  • Expands on articulation test for multiple instances and devices by @jsmith-bdai in https://github.com/isaac-sim/IsaacLab/pull/872
  • Adds setting of environment seed at initialization by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/940
  • Disables default viewport when headless but cameras are enabled by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/851
  • Simplifies the return type for parse_env_cfg method by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/965
  • Simplifies the if-elses inside the event manager apply method by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/948

πŸ› Bug Fixes

  • Fixes rendering frame delays. Rendered images now faithfully represent the latest state of the physics scene. We added the flag rerender_on_reset in the environment configs to toggle an additional render step when a reset happens. When activated, the images/observation always represent the latest state of the environment, but this also reduces performance.
  • Fixes wrap_to_pi function in math utilities by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/771
  • Fixes setting of pose when spawning a mesh by @masoudmoghani in https://github.com/isaac-sim/IsaacLab/pull/692
  • Fixes caching of the terrain using the terrain generator by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/757
  • Fixes running train scripts when rsl_rl is not installed by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/784, https://github.com/isaac-sim/IsaacLab/pull/789
  • Adds flag to recompute inertia when randomizing the mass of a rigid body by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/989
  • Fixes support for classmethod when defining a configclass by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/901
  • Fixes Sb3VecEnvWrapper to clear buffer on reset by @EricJin2002 in https://github.com/isaac-sim/IsaacLab/pull/974
  • Fixes venv and conda pip installation on windows by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/970
  • Sets native livestream extensions to Isaac Sim 4.1-4.0 defaults by @jtigue-bdai in https://github.com/isaac-sim/IsaacLab/pull/954
  • Defaults the gym video recorder fps to match episode decimation by @ozhanozen in https://github.com/isaac-sim/IsaacLab/pull/894
  • Fixes the event manager's apply method by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/936
  • Updates camera docs with world units and introduces new test for intrinsics by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/886
  • Adds the ability to resume training from a checkpoint with rl_games by @sizsJEon in https://github.com/isaac-sim/IsaacLab/pull/797

πŸ’” Breaking Changes

  • Simplifies device setting in SimulationCfg and AppLauncher by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/696
  • Fixes conflict in teleop-device command line argument in scripts by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/791
  • Converts container.sh into Python utilities by @hhansen-bdai in https://github.com/isaac-sim/IsaacLab/commit/f565c33d7716db1be813b30ddbcf9321712fc497
  • Drops support for TiledCamera for Isaac Sim 4.1

✈️ Migration Guide

Setting the simulation device into the simulation context

Details Previously, changing the simulation device to CPU required users to set other simulation parameters (such as disabling GPU physics and GPU pipelines). This made setting up the device appear complex. We now simplify the checks for device directly inside the simulation context, so users only need to specify the device through the configuration object. Before: ```python sim_utils.SimulationCfg(device="cpu", use_gpu_pipeline=False, dt=0.01, physx=sim_utils.PhysxCfg(use_gpu=False)) ``` Now: ```python sim_utils.SimulationCfg(device="cpu", dt=0.01, physx=sim_utils.PhysxCfg()) ```

Setting the simulation device from CLI

Details Previously, users could specify the device through the command line argument `--device_id`. However, this made it ambiguous when users wanted to set the device to CPU. Thus, instead of the device ID, users need to specify the device explicitly through the argument `--device`. The valid options for the device name are: * "cpu": runs simulation on CPU * "cuda": runs simulation on GPU with device ID at default index * "cuda:N": runs simulation on GPU with device ID at `N`. For instance, "cuda:0" will use device at index "0". Due to the above change, the command line interaction with some of the scripts has changed. Before: ```bash ./isaaclab.sh -p source/standalone/workflows/sb3/train.py --task Isaac-Cartpole-v0 --headless --cpu ``` Now: ```bash ./isaaclab.sh -p source/standalone/workflows/sb3/train.py --task Isaac-Cartpole-v0 --headless --device cpu ```

Renaming of teleoperation device CLI in standalone scripts

Details Since `--device` is now an argument provided by the AppLauncher, it conflicted with the command-line argument used for specifying the teleoperation-device in some of the standalone scripts. Thus, to fix this conflict, the teleoperation-device now needs to be specified through `--teleop_device` argument. Before: ```bash ./isaaclab.sh -p source/standalone/environments/teleoperation/teleop_se3_agent.py --task Isaac-Lift-Cube-Franka-IK-Rel-v0 --num_envs 1 --device keyboard ``` Now: ```bash ./isaaclab.sh -p source/standalone/environments/teleoperation/teleop_se3_agent.py --task Isaac-Lift-Cube-Franka-IK-Rel-v0 --num_envs 1 --teleop_device keyboard ```

Using Python-version of container utility script

Details The prior [`container.sh`](https://github.com/isaac-sim/IsaacLab/blob/v1.1.0/docker/container.sh) became quite complex as it had many different use cases in one script. For instance, building a docker image for "base" or "ros2", as well as cluster deployment. As more users wanted to have the flexibility to overlay their own docker settings, maintaining this bash script became cumbersome. Hence, we migrated its features into a Python script in this release. Additionally, we split the cluster-related utilities into their own script inside the `docker/cluster` directory. We still maintain backward compatibility for `container.sh`. Internally, it calls the Python script `container.py`. We request users to use the Python script directly. Before: ```bash ./docker/container.sh start ``` Now: ```bash ./docker/container.py start ```

Using separate directories for logging videos in RL workflows

Details Previously, users could record videos during the RL training by specifying the `--video` flag to the `train.py` script. The videos would be saved inside the `videos` directory in the corresponding log directory of the run. Since many users requested to also be able to record videos while inferencing the policy, recording videos have also been added to the `play.py` script. Since changing the prefix of the video file names is not possible, the videos from the train and play scripts are saved inside the `videos/train` and `videos/play` directories, respectively.

Drops support for the tiled camera with Isaac Sim 4.1

Details Various fixes have been made to the tiled camera rendering pipeline in Isaac Sim 4.2. This made supporting the tiled camera with Isaac Sim 4.1 difficult. Hence, for the best experience, we advice switching to Isaac Sim 4.2 with this release of Isaac Lab.

πŸ€— New Contributors

  • @xav-nal made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/787
  • @sizsJEon made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/797
  • @jtigue-bdai made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/830
  • @StrainFlow made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/835
  • @mpgussert made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/827
  • @Symars made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/898
  • @martinmatak made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/876
  • @bearpaw made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/945
  • @dxyy1 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/900
  • @qqqwan made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/957
  • @johnBuffer made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/963
  • @EricJin2002 made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/974
  • @iamnambiar made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/986

- Python
Published by Mayankm96 over 1 year ago

isaaclab - v1.1.0

πŸ‘€ Overview

With the release of Isaac Sim 4.0 and 4.1, support for Isaac Sim 2023.1.1 has been discontinued. We strongly encourage all users to upgrade to Isaac Sim 4.1 to take advantage of the latest features and improvements. For detailed information on this upgrade, please refer to the release notes available here.

Besides the above, the Isaac Lab release brings new features and improvements, as detailed below. We thank all our contributors for their continued support.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v1.0.0...v1.1.0

✨ New Features

  • Adds distributed multi-GPU learning support for skrl by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/574
  • Updates skrl integration to support training/evaluation using JAX by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/592
  • Adds lidar pattern for raycaster sensor by @pascal-roth in https://github.com/isaac-sim/IsaacLab/pull/616
  • Adds support for PBS job scheduler-based clusters by @shafeef901 in https://github.com/isaac-sim/IsaacLab/pull/605
  • Adds APIs for spawning deformable meshes by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/613

πŸ”§ Improvements

  • Changes documentation color to the green theme by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/585
  • Fixes sphinx tabs to make them work in dark theme by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/584
  • Fixes VSCode settings to work with pip installation of Isaac Sim by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/628
  • Fixes isaaclab scripts to deal with Isaac Sim pip installation by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/631
  • Optimizes interactive scene for homogeneous cloning by @kellyguo11 in https://github.com/isaac-sim/IsaacLab/pull/636
  • Improves docker X11 forwarding documentation by @j3soon in https://github.com/isaac-sim/IsaacLab/pull/685

πŸ› Bug Fixes

  • Reads gravity direction from simulation inside RigidObjectData by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/582
  • Fixes reference count in asset instances due to circular references by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/580
  • Fixes issue with asset deinitialization due to torch > 2.1 by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/640
  • Fixes the rendering logic regression in environments by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/614
  • Fixes the check for action-space inside Stable-Baselines3 wrapper by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/610
  • Fixes warning message in Articulation config processing by @locoxsoco in https://github.com/isaac-sim/IsaacLab/pull/699
  • Fixes action term in the reach environment by @masoudmoghani in https://github.com/isaac-sim/IsaacLab/pull/710
  • Fixes training UR10 reach with RL_GAMES and SKRL by @sudhirpratapyadav in https://github.com/isaac-sim/IsaacLab/pull/678
  • Adds event manager call to simple manage-based env by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/666

πŸ’” Breaking Changes

  • Drops official support for Isaac Sim 2023.1.1
  • Removes the use of body view inside the asset classes by @Mayankm96 in https://github.com/isaac-sim/IsaacLab/pull/643
  • Renames SimulationCfg.substeps to SimulationCfg.render_interval by @Dhoeller19 in https://github.com/isaac-sim/IsaacLab/pull/515

✈️ Migration Guide

Renaming of SimulationCfg.substeps

Previously, the users set both omni.isaac.lab.sim.SimulationCfg.dt and omni.isaac.lab.sim.SimulationCfg.substeps, which marked the physics insulation time-step and sub-steps, respectively. It was unclear whether sub-steps meant the number of integration steps inside the physics time-step dt or the number of physics steps inside a rendering step.

Since in the code base, the attribute was used as the latter, it has been renamed to render_interval for clarity.

Removal of Deprecated Attributes

As notified in previous releases, we removed the classes and attributes marked as deprecated. These are as follows:

  • The mdp.add_body_mass method in the events. Please use the mdp.randomize_rigid_body_mass instead.
  • The classes managers.RandomizationManager and managers.RandomizationTermCfg. Please use the managers.EventManager and managers.EventTermCfg classes instead.
  • The following properties in omni.isaac.lab.sensors.FrameTransformerData:
    • target_rot_source --> target_quat_w
    • target_rot_w --> target_quat_source
    • source_rot_w --> source_quat_w
  • The attribute body_physx_view from the omni.isaac.lab.assets.Articulation and omni.isaac.lab.assets.RigidObject classes. These caused confusion when used with the articulation view since the body names did not follow the same ordering.

πŸ€— New Contributors

  • @Brayden-Zhang made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/600
  • @fan-ziqi made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/648
  • @sudhirpratapyadav made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/678
  • @locoxsoco made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/699
  • @masoudmoghani made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/710
  • @j3soon made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/685

- Python
Published by Mayankm96 almost 2 years ago

isaaclab - v1.0.0

πŸ‘€ Overview

Welcome to the first official release of Isaac Lab!

Building upon the foundation of the Orbit framework, we have integrated the RL environment designing workflow from OmniIsaacGymEnvs. This allows users to choose a suitable task-design approach for their applications.

While we maintain backward compatibility with Isaac Sim 2023.1.1, we highly recommend using Isaac Lab with Isaac Sim 4.0.0 version for the latest features and improvements.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v0.3.1...v1.0.0

✨ New Features

  • Integrated CI/CD pipeline, which is triggered on pull requests and publishes the results publicly
  • Extended support for Windows OS platforms
  • Added tiled rendered based Camera sensor implementation. This provides optimized RGB-D rendering throughputs of up to 10k frames per second.
  • Added support for multi-GPU and multi-node training for the RL-Games library
  • Integrated APIs for environment designing (direct workflow) without relying on managers
  • Added implementation of delayed PD actuator model
  • Added various new learning environments :
    • Cartpole balancing using images
    • Shadow hand cube reorientation
    • Boston Dynamics Spot locomotion
    • Unitree H1 and G1 locomotion
    • ANYmal-C navigation
    • Quadcopter target reaching

πŸ”§ Improvements

  • Reduced start-up time for scripts (inherited from Isaac Sim 4.0 improvements)
  • Added lazy buffer implementation for rigid object and articulation data. Instead of updating all the quantities at every step call, the lazy buffers are updated only when the user queries them
  • Added SKRL support to more environments

πŸ’” Breaking Change

For users coming from Orbit, this release brings certain breaking changes. Please check the migration guide for more information.

✈️ Migration Guide

Please find detailed migration guides as follows:

πŸ€— New Contributors

  • @abizovnuralem made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/452
  • @eltociear made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/460
  • @zoctipus made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/486
  • @JunghwanRo made their first contribution in https://github.com/isaac-sim/IsaacLab/pull/497

🌟 Acknowledgements

We wholeheartedly thank @Mayankm96, @kellyguo11 and the Boston Dynamics AI Institute for their significant contributions to the framework.

- Python
Published by Dhoeller19 almost 2 years ago

isaaclab - v0.3.1

πŸ‘€ Overview

This is an intermediate release with minor patch fixes and improvements.

Note: This is the final release of the framework under the name "Orbit". The framework will soon be renamed to "Isaac Lab" and be moved to a new GitHub organization. More details will be provided shortly.

Full Changelog: https://github.com/NVIDIA-Omniverse/orbit/compare/v0.3.0...v0.3.1

✨ New Features

  • Allows setting USD variants when loading prim from USD file by @lorenwel
  • Adds fix_root_link attribute to ArticulationRootPropertiesCfg by @Mayankm96

πŸ”§ Improvements

  • Removes duplicated cassie configuration in core extension by @MuhongGuo
  • Fixes type-hinting for articulation properties in from_files_cfg.py by @MuhongGuo
  • Adds X11 setup checks for the Docker container by @hhansen-bdai

πŸ› Bug Fixes

  • Fixes configclass shared references to keep compound objects independent across subclass instances by @hhansen-bdai
  • Fixes loading of ContactSensor when using it in an extension by @fyu-bdai
  • Fixes RSL-RL ONNX exporter for empirical normalization by @Nemantor

πŸ€— New Contributors

  • @MuhongGuo made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/383
  • @lorenwel made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/402

- Python
Published by Mayankm96 about 2 years ago

isaaclab - v0.3.0

πŸ‘€ Overview

This release includes various fixes and improvements to the framework. It additionally includes many new features, as listed below.

Full Changelog: https://github.com/NVIDIA-Omniverse/orbit/compare/v0.2.0...v0.3.0

✨ New Features

  • Adds terrain-aware patch sampling into the terrain generator by @nikitardn
  • Adds a viewer camera controller to the base environment by @farbod-farshidian
  • Adds animation recording for environments by @Mayankm96
  • Adds Franka cabinet opening environment from IsaacGymEnvs by @renezurbruegg
  • Adds Allegro hand cube manipulation environment from IsaacGymEnvs by @Mayankm96, @arbhardwaj98
  • Adds Allegro and Shadow Hand asset configurations by @Mayankm96
  • Adds Kinova (Jaco2, Gen3) asset configurations by @Mayankm96
  • Adds approximate torque calculation for implicit actuator by @nikitardn
  • Adds loading of custom kit experience files using AppLauncher by @Mayankm96

πŸ”§ Improvements

  • Adds a runner script to execute all tests in the source directory by @jsmith-bdai
  • Allows loading of initialized configs in load_cfg_from_registry by @nikitardn
  • Checks default joint states are configured within limits by @Dhoeller19
  • Expands on unit tests for rigid object asset and terrain importer classes by @jsmith-bdai
  • Adds unit tests for contact sensor class by @fyu-bdai
  • Adds signal interrupt handle to AppLauncher by @Mayankm96
  • Adds ROS2 Humble to Dockerfile by @hhansen-bdai
  • Improved usage instructions for cluster deployment by @pascal-roth
  • Removes unnecessary future imports for Python 3.10 by @Mayankm96

πŸ› Bug Fixes

  • Fixes running environments with a single instance by @Dhoeller19
  • Fixes source frame indexing in FrameTransfomer sensor by @jsmith-bdai
  • Fixes handling of time-out signal in RSL-RL and RL-Games wrapper by @Mayankm96
  • Fixes unwanted squeeze in Articulation class for 1-joint assets by @Mayankm96
  • Fixes shape argument ordering in hf_terrains.random_uniform_terrain by @nikitardn
  • Fixes joint and body sub-indexing for observations and rewards by @Dhoeller19
  • Fixes camera sensor for Isaac Sim 2023.1 update by @hhansen-bdai
  • Fixes imitation learning workflow for lift environment by @jsmith-bdai
  • Fixes apply actions method in the NonHolonomicAction action term class by @KyleM73
  • Fixes the tensor shape for the contact sensor's force matrix data by @abmoRobotics
  • Fixes missing max raycast distance in RayCaster sensor by @renezurbruegg
  • Fixes rendering of RTX sensors within the environment stepping by @Dhoeller19

πŸ’” Breaking Changes

  • Drops support for Isaac Sim 2022.2.2 and earlier by @hhansen-bdai
  • Removes compat submodule from orbit by @Mayankm96
  • Removes omni.isaac.contrib_tasks in favor of separate project template by @nburger-bdai
  • Changes link names ordering in articulation to follow PhysX by @Mayankm96
  • Renames RandomizationManager to EventManager by @pascal-roth
  • Renames some terms in omni.isaac.orbit.envs.mdp to avoid confusion by @Mayankm96

✈️ Migration Guide

Renaming of Randomization Manager to Event Manager

While the randomization manager referred to all possible " randomizations " in the environment, many users felt that the triggering of the terms was not apparent. Additionally, for non-RL use-cases, randomization seemed like a misnomer. Hence, we renamed the class to be called event manager.

Replace the following import and usage:

```python from omni.isaac.orbit.managers import RandomizationTermCfg as RandTerm

@configclass class RandomizationCfg: """Configuration for randomization."""

reset_base = RandTerm(
    func=mdp.reset_root_state_uniform,
    mode="reset",
    params={"pose_range": {}, "velocity_range": {}},
)

@configclass class MyEnvCfg:

 randomization: RandomizationCfg = RandomizationCfg()

```

with the following:

```python from omni.isaac.orbit.managers import EventTermCfg as EventTerm

@configclass class EventCfg: """Configuration for events."""

reset_base = EventTerm(
    func=mdp.reset_root_state_uniform,
    mode="reset",
    params={"pose_range": {}, "velocity_range": {}},
)

@configclass class MyEnvCfg:

 events: EventCfg = EventCfg()

```

Renaming of MDP terms

We observed that several of the MDP terms had close to overlapping names, such as the reward term joint_pos_limits and termination term joint_pos_limit. To avoid errors, we decided to make the term names clearer.

Please note the following changes in MDP terms:

  • Observation: joint_pos_norm -> joint_pos_limit_normalized
  • Event: add_body_mass -> randomize_rigid_body_mass
  • Termination: base_height -> root_height_below_minimum
  • Termination: joint_pos_limit -> joint_pos_out_of_limit
  • Termination: joint_pos_manual_limit -> joint_pos_out_of_manual_limit
  • Termination: joint_vel_limit -> joint_vel_out_of_limit
  • Termination: joint_vel_manual_limit -> joint_vel_out_of_manual_limit
  • Termination: joint_torque_limit -> joint_effort_out_of_limit

Removal of omni.isaac.contrib_tasks

Initially, we intended to have the contrib_tasksmodule for developers to send their environment implementations. However, many users preferred a more isolated development environment for their projects. Hence, we removed the contrib_tasks and now provide a separate template repository for building projects that use Orbit.

However, we encourage the community to provide their environment implementations directly to the orbit_tasks extension. This allows us to ensure the environments are maintained during future releases of the framework.

For more details, please check: https://github.com/isaac-orbit/orbit.ext_template

πŸ€— New Contributors

  • @fyu-bdai made their first contribution in 06ada157a903271ccbb03be3662434199572bc78
  • @arbhardwaj98 made their first contribution in 1a42eb97c46e8cc785cd4cfdf202a2e31a52e278
  • @phenomen21 made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/248
  • @Ltesfaye made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/320
  • @KyleM73 made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/317
  • @VladimirFokow made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/321
  • @shafeef901 made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/300
  • @RumblingTurtle made their first contribution in https://github.com/NVIDIA-Omniverse/orbit/pull/341

- Python
Published by Mayankm96 about 2 years ago

isaaclab - Release 0.2.0

πŸ‘€ Overview

This release refactors Orbit APIs to make them more modular and performance-efficient. It also introduces various new functionalities, such as batched sensors and managers handling randomization, termination, action spaces, and curriculum.

Full Changelog: https://github.com/NVIDIA-Omniverse/orbit/compare/v0.1.0...v0.2.0

✨ New Features

  • Procedural terrain generation using height-fields and trimesh library
  • Sensors for contact sensing, frame transformations, and GPU-based ray-casting
  • Scene manager to handle a collection of assets and sensors
  • Managers to handle various aspects of environment designing - action space, observation space, randomization, termination, rewards, and curriculum
  • Spawning support to load meshes in different formats (OBJ, FBX, STL) and URDF files into simulation directly
  • Support for docker and cluster-based deployments
  • New environments for flat and rough terrain locomotion from legged_gym

πŸ”§ Improvements

  • Merged the previous type-specific static markers into a unified VisualizationMarkers class
  • Switched to using PhysX interfaces directly instead of Isaac Sim interface classes for performance
  • Migrated the gym.Env class from the OpenAI Gym 0.21 version to the Gymnasium v0.29 version

πŸ’” Breaking Changes

This release is incompatible with v0.1.0 due to heavy refactoring and changes. We recommend users revisit the tutorials to familiarize themselves with the new APIs. We apologize for any inconvenience caused but believe the enhancements in this release justify the transition.

πŸ€— New Contributors

  • @kouroshD
  • @Toni-SM
  • @pascal-roth
  • @nikitardn
  • @Dhoeller19
  • @jsmith-bdai
  • @AutonomousHansen
  • @farbod-farshidian

- Python
Published by Mayankm96 over 2 years ago

isaaclab - Release 0.1.0

πŸ‘€ Overview

The initial release of the ORBIT framework. It includes the core APIs built around Isaac Sim for robot learning. In addition, provides an initial set of environments for learning.

The main set of features includes:

  • Python configuration handling system using the decorator @configclass
  • Different explicit actuator models for processing commands
  • Actuator groups to handle complex articulations
  • Support for different robots:
    • legged robots: ANYmal-C, ANYmal-B, Unitree A1
    • fixed-arm manipulators: Franka Emika arm, UR5
    • wheel-based mobile manipulators: Clearpath Ridgeback with Franka Emika arm or UR5
    • legged mobile manipulators
  • Batched implementation of motion generators
    • differential inverse kinematics
  • Initial set of environments for learning
    • classic: cart-pole, humanoid, ant
    • locomotion: legged locomotion on flat terrain
    • manipulation: table-top object lifting, end-effector tracking
  • Demonstrations of different learning workflows

- Python
Published by Mayankm96 over 3 years ago