Emerging Extrinsic Dexterity in Cluttered Scenes via Dynamics-aware Policy Learning
Organizations: Institute of Automation, Chinese Academy of Sciences · Beijing Academy of Artificial Intelligence · Galbot · Peking University ·
Abstract
Extrinsic dexterity leverages environmental contact to overcome the limitations of prehensile manipulation. However, achieving such dexterity in cluttered scenes remains challenging and underexplored, as it requires selectively exploiting contact among multiple interacting objects with inherently coupled dynamics. Existing approaches lack explicit modeling of such complex dynamics and therefore fall short in non-prehensile manipulation in cluttered environments, which in turn limits their practical applicability in real-world environments. In this paper, we introduce a Dynamics-Aware Policy Learning (DAPL) framework that can facilitate policy learning with a learned representation of contact-induced object dynamics in cluttered environments. This representation is learned through explicit world modeling and used to condition reinforcement learning, enabling extrinsic dexterity to emerge without hand-crafted contact heuristics or complex reward shaping. We evaluate our approach in both simulation and the real world. Our method outperforms prehensile manipulation, human teleoperation, and prior representation-based policies by over 25% in success rate on unseen simulated cluttered scenes with varying densities. The real-world success rate reaches around 50% across 10 cluttered scenes, while a practical grocery deployment further demonstrates robust sim-to-real transfer and applicability.
Figures & tables
| Methods | Action Type | Sparse | Moderate | Dense | |||
|---|---|---|---|---|---|---|---|
| S.R. | M.O. | S.R. | M.O. | S.R. | M.O. | ||
| Teleoperation [ 38 ] | Mixed | 50.0 | 3.13 | 40.0 | 7.49 | 20.0 | 21.34 |
| GraspGen + CuRobo [ 28 , 34 ] | Prehensile | 26.6 | – | 15.6 | – | 3.13 | – |
| Point2Vec [ 22 ] | Non-prehensile | 6.89 | 5.09 | 1.95 | 3.36 | 0.78 | 5.35 |
| Concerto [ 42 ] | Non-prehensile | 3.13 | 1.65 | 1.56 | 2.90 | 0.39 | 7.56 |
| CORN [ 8 ] | Non-prehensile | 46.63 | 3.15 | 45.83 | 5.51 | 22.22 | 17.43 |
| Pretrain Task | Granularity | Velocity | Phys. | P.E. | S.R. | M.O. |
|---|---|---|---|---|---|---|
| Recons. | Point-level | ✗ | ✗ | - | 11.75 | 1.31 |
| Recons. | Point-level | ✓ | ✓ | - | 29.63 | 2.63 |
| World Model | Object-level | ✗ | ✗ | 3.1 | 14.13 | 3.27 |
| World Model | Object-level | ✓ | ✓ | 3.2 | 16.88 | 3.84 |
| World Model | Point-level | ✗ | ✗ | 4.1 | 42.00 | 4.91 |
| World Model | Point-level | ✓ | ✗ | 5.1 | 58.25 | 4.86 |
| Method | Unnec. Contacts | Object Disturbance | Dexterous Behaviors (%) | ||||||
| Small Trans. | Small Rot. | Large Trans. | Large Rot. | Avoid | Traverse | Leverage | Simple | ||
| CORN | 3.6 | 2.8 | 2.6 | 4.4 | 4.8 | 22 | 14 | 6 | 62 |
| Ours | 2.4 | 3.2 | 3.0 | 1.8 | 1.2 | 52 | 38 | 42 | 28 |
| Noise Source | 0.5% | 5% | 25% | 50% | ||||
|---|---|---|---|---|---|---|---|---|
| S.R. | M.O. | S.R. | M.O. | S.R. | M.O. | S.R. | M.O. | |
| Mass | 66.9 | 3.1 | 67.3 | 3.4 | 66.0 | 4.1 | 62.4 | 5.9 |
| Velocity | 64.0 | 3.6 | 64.0 | 3.2 | 61.1 | 3.9 | 58.5 | 4.4 |
| Goal Pose | 66.3 | 3.1 | 65.0 | 3.3 | 48.1 | 3.5 | 15.1 | 4.0 |
| All Inputs | 65.7 | 3.7 | 66.6 | 4.9 | 45.1 | 6.0 | 5.9 | 8.4 |
| Methods | S1 | S2 | S3 | S4 | ||||
|---|---|---|---|---|---|---|---|---|
| S.R. | M.T. | S.R. | M.T. | S.R. | M.T. | S.R. | M.T. | |
| Teleop. [ 25 ] | 3/5 | 77 | 4/5 | 59 | 3/5 | 39 | 1/5 | 81 |
| Ours | 2/5 | 51 | 1/5 | 26 | 3/5 | 33 | 1/5 | 73 |
| Methods | S5 | S6 | S7 | S8 | ||||
| S.R. | M.T. | S.R. | M.T. | S.R. | M.T. | S.R. | M.T. | |
| Teleop. [ 25 ] | 3/5 | 28 | 2/5 | 39 | 4/5 | 20 | 0/5 | 90 |
| State Component | Symbol | Dimension | Description |
| Object point cloud | Surface-sampled object point cloud in the environment frame, with per-point mass and contact-conditioned velocity | ||
| Environment point cloud | Surface-sampled obstacle point cloud in the environment frame, with per-point mass and velocity | ||
| End-effector point cloud | Surface-sampled end-effector point cloud in the environment frame, with per-point mass and velocity | ||
| Hand state | End-effector position and orientation in 6D rotation representation (3D position + 6D orientation) | ||
| Robot state | Joint positions and velocities of the 7-DoF arm | ||
| Relative goal pose | Target object pose expressed relative to the current object pose (3D translation + 6D orientation) |
| Parameter | Value |
|---|---|
| Value loss coefficient | 0.5 |
| Use clipped value loss | True |
| Clip parameter ( ) | 0.3 |
| Entropy coefficient | 0.006 |
| Learning epochs | 8 |
| Mini-batches | 8 |
| Reward term | Weight |
|---|---|
| 1.0 | |
| 5.0 | |
| 16.0 | |
| 2000.0 | |
| 0.6 | |
| 0.3 |
| Difficulty | Large Obstacles | Small Obstacles | Target |
|---|---|---|---|
| Sparse | 1 | 2 | 1 |
| Moderate | 3 | 4 | 1 |
| Dense | 5 | 6 | 1 |