Leveraging Inter-object Affordances for Efficient Planning in Contact-rich Tasks
Organizations: Intelligent and Interactive Systems (IIS) research group, Department of Computer Science, University of Innsbruck, Technikerstraße 21a, 6020 Innsbruck, Austria
Abstract
Traditional task-and-motion planning (TAMP) approaches primarily focus on defining sequences of actions along with the necessary geometric and kinematic constraints to execute long-horizon tasks. However, their applicability in real-world settings is limited, as they typically assume simplified object models that overlook key physical properties critical for the successful execution of contact-rich tasks. Moreover, they often use sub-symbolic reasoning during motion planning, which drastically increases planning time and decreases overall success rates. We propose a method that leverages a TAMP approach, defining object-centric abstractions of execution constraints, called Unified TAMP (U-TAMP), to execute robotic tasks involving interactions among objects with heterogeneous shapes, sizes, and materials. Using a Vision-Language Model (VLM), we generate abstractions of inter-object affordances for characterizing physical interaction constraints between objects in contact-rich tasks, such as grasp and support constraints. These constraints are used to enrich the U-TAMP planning domain to deal with objects with variable physical properties. We perform experiments in simulated kitchen table organization scenarios and compare our results with those of the original U-TAMP, as well as a state-of-the-art VLM-based planner that leverages common sense knowledge of objects' affordances for plan generation. Our approach achieves significantly higher planning success rates and improves planning times by one to two orders of magnitude compared to other methods.
Figures & tables
| Predicate | Meaning |
|---|---|
| isObjEqual ?obj1 ?obj2 | ?obj1 and ?obj2 are the same object. |
| isPartEqual ?part1 ?part2 | ?part1 and ?part2 are the same part. |
| oc ?o1-o2 ?obj1 ?obj2 | Part ?o1-o2 of ?obj1 is interacting with ?obj2 . |
| force ?obj ?part | ?part of ?obj can be a support, e.g., because it is facing against gravity. |
| base ?obj ?part | ?part of ?obj is its closest part to the base of the robot. |
| isMember ?obj1 ?o1-mem | ?o1-mem is a member of ?obj1 . |
| StableGrasp[?obj1,?o1-mem,hand] | StablePlace[?obj1,?obj2] |
| ( isMember ?obj1 ?o1-mem) | ( isOpposite ?o1-o2 ?o1-force) |
| ( oc in workspace ?o1-mem) | ( oc ?o1-o2 ?obj1 air) |
| ( base ?obj1 ?o1-base) | ( isSupportable ?obj1 ?o1-o2) |
| ( oc ?o1-hp ?obj1 air) | ( isAdjacent ?o1-base ?o1-o2) |
| ( oc ?o1-hf1 ?obj1 air) | ( oc in workspace ?obj2) |
| ( oc ?o1-hf2 ?obj1 air) | ( base ?obj2 ?o2-base) |
| Method | UTAMP-2-GT | UTAMP-2-VLM | VLM |
|---|---|---|---|
| Success rate | 1.0 | 0.81 | 0.41 |
| Planning time | 0.17 ± 0.05 | 0.20 ± 0.08 | 66.9 ± 25.2 |
Robot Task Planning
Robot task planning turns goals and observations into executable actions while coordinating skills, motion, uncertainty, and safety.
See all 233 papers