Table of Contents
Fetching ...

Distributed Optimization Methods for Multi-Robot Systems: Part I -- A Tutorial

Ola Shorinwa, Trevor Halsted, Javier Yu, Mac Schwager

TL;DR

This paper introduces a framework for solving Separable distributed optimization problems on multi-robot networks, showing that many canonical tasks—such as multi-robot SLAM, target tracking, and task assignment—can be reformulated with local copies and consensus constraints so that robots operate without a central coordinator. It classifies distributed algorithms into three families—Distributed First-Order Methods, Distributed Sequential Convex Programming, and ADMM—and details representative methods (e.g., CT A/ATC, DIGing, NEXT, and C-ADMM), including their update rules and convergence properties. A comparative case study on distributed multi-drone tracking in simulation and hardware demonstrates tradeoffs in convergence speed, parameter sensitivity, and robustness to dynamic or lossy communications. The results highlight practical considerations—such as step-size selection, network topology, and synchronization—that affect performance in real-world robotic deployments. Overall, the tutorial lays a foundation for applying distributed optimization to broad robotics problems and motivates further work on constrained, nonconvex, and resource-constrained settings, which is addressed in the follow-up work.

Abstract

Distributed optimization provides a framework for deriving distributed algorithms for a variety of multi-robot problems. This tutorial constitutes the first part of a two-part series on distributed optimization applied to multi-robot problems, which seeks to advance the application of distributed optimization in robotics. In this tutorial, we demonstrate that many canonical multi-robot problems can be cast within the distributed optimization framework, such as multi-robot simultaneous localization and planning (SLAM), multi-robot target tracking, and multi-robot task assignment problems. We identify three broad categories of distributed optimization algorithms: distributed first-order methods, distributed sequential convex programming, and the alternating direction method of multipliers (ADMM). We describe the basic structure of each category and provide representative algorithms within each category. We then work through a simulation case study of multiple drones collaboratively tracking a ground vehicle. We compare solutions to this problem using a number of different distributed optimization algorithms. In addition, we implement a distributed optimization algorithm in hardware on a network of Rasberry Pis communicating with XBee modules to illustrate robustness to the challenges of real-world communication networks.

Distributed Optimization Methods for Multi-Robot Systems: Part I -- A Tutorial

TL;DR

This paper introduces a framework for solving Separable distributed optimization problems on multi-robot networks, showing that many canonical tasks—such as multi-robot SLAM, target tracking, and task assignment—can be reformulated with local copies and consensus constraints so that robots operate without a central coordinator. It classifies distributed algorithms into three families—Distributed First-Order Methods, Distributed Sequential Convex Programming, and ADMM—and details representative methods (e.g., CT A/ATC, DIGing, NEXT, and C-ADMM), including their update rules and convergence properties. A comparative case study on distributed multi-drone tracking in simulation and hardware demonstrates tradeoffs in convergence speed, parameter sensitivity, and robustness to dynamic or lossy communications. The results highlight practical considerations—such as step-size selection, network topology, and synchronization—that affect performance in real-world robotic deployments. Overall, the tutorial lays a foundation for applying distributed optimization to broad robotics problems and motivates further work on constrained, nonconvex, and resource-constrained settings, which is addressed in the follow-up work.

Abstract

Distributed optimization provides a framework for deriving distributed algorithms for a variety of multi-robot problems. This tutorial constitutes the first part of a two-part series on distributed optimization applied to multi-robot problems, which seeks to advance the application of distributed optimization in robotics. In this tutorial, we demonstrate that many canonical multi-robot problems can be cast within the distributed optimization framework, such as multi-robot simultaneous localization and planning (SLAM), multi-robot target tracking, and multi-robot task assignment problems. We identify three broad categories of distributed optimization algorithms: distributed first-order methods, distributed sequential convex programming, and the alternating direction method of multipliers (ADMM). We describe the basic structure of each category and provide representative algorithms within each category. We then work through a simulation case study of multiple drones collaboratively tracking a ground vehicle. We compare solutions to this problem using a number of different distributed optimization algorithms. In addition, we implement a distributed optimization algorithm in hardware on a network of Rasberry Pis communicating with XBee modules to illustrate robustness to the challenges of real-world communication networks.
Paper Structure (25 sections, 46 equations, 9 figures, 1 table, 3 algorithms)

This paper contains 25 sections, 46 equations, 9 figures, 1 table, 3 algorithms.

Figures (9)

  • Figure 1: A factor graph representation of a multi-robot SLAM problem, where two robots, robot $i$ (blue circles) and $j$ (green circles), seek to jointly estimate a set of map features ${\{m_{1},m_{2},\cdots\}}$ (orange triangles) in addition to their own pose trajectory ${\{x_{i,t},x_{j,t},\ \forall t\}}$, from the set of odometry measurements ${\{\hat{z}_{i,t},\hat{z}_{j,t}\}}$ and observations of each map feature $k$${\{\Breve{z}_{i}^{k}, \Breve{z}_{j}^{k}\}}$.
  • Figure 2: A multi-robot target tracking scenario, with four quadrotors (the robots) making noisy observations of the flagged ground vehicle (the target). The colored cones represent the regions where each quadrotor can observe the vehicle, given the limited measurement range of the sensors onboard each quadrotor.
  • Figure 3: A multi-robot task assignment problem represented as a bipartite graph, with three (Fetch) robots and three tasks. An edge with weight $c_{i,j}$ between robot $i$ and task $j$ signifies the cost incurred by robot $i$ if it performs task $j$. In many problems, each robot's task preferences (edge weights) is neither known by other robots nor accessible to these robots.
  • Figure 4: A multi-robot manipulation problem, with three quadrotors collaboratively manipulating a load rigidly attached to each quadrotor. The dashed-line represents the reference trajectory for manipulating the load.
  • Figure 5: In multi-robot reinforcement learning problems, a group of robots compute a control policy from experience by making sequential decisions while interacting with their environment. Each robot takes an action and receives an observation (and a reward), which provides information on its performance in accomplishing a specified task.
  • ...and 4 more figures

Theorems & Definitions (3)

  • Definition 1: Connectivity of an Undirected Graph
  • Definition 2: Connectivity of a Directed Graph
  • Definition 3: Stochastic Matrix