We present a novel method for global motion planning of robotic systems that interact with the environment through contacts. Our method directly handles the hybrid nature of such tasks using tools from convex optimization. We formulate the motion-planning problem as a shortest-path problem in a graph of convex sets, where a path in the graph corresponds to a contact sequence and a convex set models the quasi-static dynamics within a fixed contact mode. For each contact mode, we use semidefinite programming to relax the nonconvex dynamics that results from the simultaneous optimization of the object’s pose, contact locations, and contact forces. The result is a tight convex relaxation of the overall planning problem, that can be efficiently solved and quickly rounded to find a feasible contact-rich trajectory. As an initial application for evaluating our method, we apply it on the task of planar pushing. Exhaustive experiments show that our convex- optimization method generates plans that are consistently within a small percentage of the global optimum, without relying on an initial guess, and that our method succeeds in finding trajectories where a state-of-the-art baseline for contact-rich planning usually fails. We demonstrate the quality of these plans on a real robotic system.
To compare our method with a state-of-the-art baseline for contact-rich planning, we select a direct, contact-implicit trajectory optimization method, that encodes contact implicitly using nonconvex complementarity constraints and solves the planning problem using local (nonconvex) optimization.
Contact-Implicit Trajectory Optimization: 58%
Our method: 100%
Contact-Implicit Trajectory Optimization: 12%
Our method: 100%
@inproceedings{graesdal2024convexrelaxations,
title={Towards Tight Convex Relaxations for Contact-Rich Manipulation},
author={Bernhard Paus Graesdal and Shao Yuan Chew Chia and Tobia Marcucci and Savva Morozov and Alexandre
Amice and Pablo A. Parrilo and Russ Tedrake},
booktitle={Proceedings of Robotics: Science and Systems (RSS)},
year={2024}
}