Skip to content

[omniperf-agent] fix: PhysX KukaAllegro grasp via compliant contacts - #1

Draft
yts-nv wants to merge 1 commit into
developfrom
omniperf-agent/physx-kukaallegro-compliant-contact
Draft

[omniperf-agent] fix: PhysX KukaAllegro grasp via compliant contacts#1
yts-nv wants to merge 1 commit into
developfrom
omniperf-agent/physx-kukaallegro-compliant-contact

Conversation

@yts-nv

@yts-nv yts-nv commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Under rigid PhysX contacts the manipulated object is squirted out of the dexterous KukaAllegro hand before a sustained thumb+finger pinch forms, so the good_finger_contact grasp reward stays 0 and PPO never learns to lift; the object leaves the workspace and episodes terminate early. Newton (soft-constraint contacts) converges on the same task.

Fix: give the object a PhysX compliant (soft) contact material so the fingers can hold it, and disable the startup material domain randomization that rebuilds/rebinds the object material at startup and would otherwise discard the compliant spawn material.

Validated on the upstream core/lift KukaAllegro layout:
success_rate 0 -> 0.40 @2000 iters, 0.78 @4000 (Newton-level),
reproduced 2x (env seed 42). Not re-trained on this dexsuite layout;
reviewer should validate before merge.

Description

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.
List any dependencies that are required for this change.

Fixes # (issue)

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (existing functionality will not work without user modification)
  • Documentation update

Screenshots

Please attach before and after screenshots of the change if applicable.

Checklist

  • I have read and understood the contribution guidelines
  • I have run the pre-commit checks with ./isaaclab.sh --format
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • I have updated the changelog and the corresponding version in the extension's config/extension.toml file
  • I have added my name to the CONTRIBUTORS.md or my name already exists there

Under rigid PhysX contacts the manipulated object is squirted out of the
dexterous KukaAllegro hand before a sustained thumb+finger pinch forms, so
the good_finger_contact grasp reward stays 0 and PPO never learns to lift;
the object leaves the workspace and episodes terminate early. Newton
(soft-constraint contacts) converges on the same task.

Fix: give the object a PhysX compliant (soft) contact material so the
fingers can hold it, and disable the startup material domain randomization
that rebuilds/rebinds the object material at startup and would otherwise
discard the compliant spawn material.

Validated on the upstream core/lift KukaAllegro layout:
  success_rate 0 -> 0.40 @2000 iters, 0.78 @4000 (Newton-level),
  reproduced 2x (env seed 42). Not re-trained on this dexsuite layout;
  reviewer should validate before merge.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant