We introduce DisCo, a distributed algorithm for contact-rich, multi-robot tasks, which leverages contact-implicit trajectory optimization to enable a group of robots to collaborate through contact in tasks such as collaborative manipulation, robot team sports, and modular robot locomotion. We build our algorithm on a variant of the Alternating Direction Method of Multipliers (ADMM), where each robot computes its own contact forces and contact-switching events from a smaller single-robot, contact-implicit trajectory optimization problem, while cooperating with other robots through dual variables, enforcing constraints between robots. Each robot iterates between solving its local problem, and communicating over a wireless mesh network to enforce these consistency constraints with its neighbors, ultimately converging to a coordinated plan for the group. The local problems solved by each robot are significantly less challenging than a centralized problem with all robots' contact forces and switching events, improving the computational efficiency, while also preserving the privacy of some aspects of each robot's operation. We demonstrate the effectiveness of our algorithm in simulations of collaborative manipulation, multi-robot team sports scenarios, and in modular robot locomotion, where DisCo achieves 3x higher success rates with a 2.5x to 5x faster computation time. Further, we provide results of hardware experiments on a modular truss robot, with three collaborating truss nodes planning individually while working together to produce a punctuated rolling-gate motion of the composite structure.
DisCo leverages scalable distributed contact-implicit optimization by decomposing complex centralized tasks into smaller-scale problems solved efficiently by individual robots, to enable contact-rich, dexterous multi-robot collaboration. For example, in collaborative manipulation, DisCo enables multi-robot teams to make and break contact with the object or environment, e.g., in narrow corridors, while manipulating the object or locomoting collaboratively with other robots. In robot team sports such as robot soccer and robot hockey, DisCo enables intelligent tactics planning, with each robot in the team working cooperatively to score a point, e.g., by passing an object (or ball) into a goal area. Moreover, in locomotion problems involving modular robots, DisCo enables each module to compute the contact interactions between each module and the environment required for locomotion, in cooperation with other modules. In all of these examples, our method can find dynamic solutions, that include free-flying ballistic phases where the robots or objects are not in static or pseudo-static equilibrium (e.g., throwing or shooting a ball, or jumping a modular robot over an obstacle).
We demonstrate the superior performance of DisCo compared to centralized contact-implict trajecttory optimization methods. Here, we provide results in collaborative manipulation, robot team sports, and modular-robot locomotion. Please refer to the paper for a more detailed discussion.
In the video on the left, a group of 4 robots (in red) manipulate a rod (in blue) by sliding it along the ground to a desired position and orientation (in gray). The robots begin from arbitrary locations around the rod. They approach and contact the rod to form a stable grasp, sliding the rod along the ground. They bring the object to rest at the desired configuration.
In the video on the right, a group of 3 quadrotors manipulate a spherical object (purple) released from a platform, as it falls under gravity, to a desired position and orientation on the pedestal. The quadrotors approach the falling object, gently make contact, and decelerate its fall, and bring the object to rest at its desired configuration on the pedestal.
In the video on the left, a team of robots (in purple) in a hit-and-catch robot team game, with the objective of getting the blue puck (with a yellow top) into the goal (designated by the white circle). A pair of robots complete a short pass to begin the game, after kickoff.
In the video on the right, we show an implementation of DisCo on an inflatable truss robot for locomotion on a flat terrain. In the picture-in-picture overlay in the top-right corner, we show the optimal trajectory computed by DisCo from an approximate model of the truss robot, which is tracked by the truss robot in the real-world.
@misc{shorinwa2024disco,
title={DisCo: Distributed Contact-Rich Trajectory Optimization for Forceful Multi-Robot Collaboration},
author={Ola Shorinwa and Matthew Devlin and Elliot W. Hawkes and Mac Schwager},
journal={arXiv preprint arXiv},
year={2024}
}