Table of Contents
Fetching ...

Overlapping Domain Decomposition for Distributed Pose Graph Optimization

Aneesa Sonawalla, Yulun Tian, Jonathan P. How

TL;DR

An asynchronous variant of ROBO is developed that is robust to network delays and suitable for real-world robotic applications and the tradeoff between the increased communication and local computation required by ROBO's overlapping blocks and the resulting faster convergence is analyzed.

Abstract

We present ROBO (Riemannian Overlapping Block Optimization), a distributed and parallel approach to multi-robot pose graph optimization (PGO) based on the idea of overlapping domain decomposition. ROBO offers a middle ground between centralized and fully distributed solvers, where the amount of pose information shared between robots at each optimization iteration can be set according to the available communication resources. Sharing additional pose information between neighboring robots effectively creates overlapping optimization blocks in the underlying pose graph, which substantially reduces the number of iterations required to converge. Through extensive experiments on benchmark PGO datasets, we demonstrate the applicability and feasibility of ROBO in different initialization scenarios, using various cost functions, and under different communication regimes. We also analyze the tradeoff between the increased communication and local computation required by ROBO's overlapping blocks and the resulting faster convergence. We show that overlaps with an average inter-robot data cost of only 36 Kb per iteration can converge 3.1$\times$ faster in terms of iterations than state-of-the-art distributed PGO approaches. Furthermore, we develop an asynchronous variant of ROBO that is robust to network delays and suitable for real-world robotic applications.

Overlapping Domain Decomposition for Distributed Pose Graph Optimization

TL;DR

An asynchronous variant of ROBO is developed that is robust to network delays and suitable for real-world robotic applications and the tradeoff between the increased communication and local computation required by ROBO's overlapping blocks and the resulting faster convergence is analyzed.

Abstract

We present ROBO (Riemannian Overlapping Block Optimization), a distributed and parallel approach to multi-robot pose graph optimization (PGO) based on the idea of overlapping domain decomposition. ROBO offers a middle ground between centralized and fully distributed solvers, where the amount of pose information shared between robots at each optimization iteration can be set according to the available communication resources. Sharing additional pose information between neighboring robots effectively creates overlapping optimization blocks in the underlying pose graph, which substantially reduces the number of iterations required to converge. Through extensive experiments on benchmark PGO datasets, we demonstrate the applicability and feasibility of ROBO in different initialization scenarios, using various cost functions, and under different communication regimes. We also analyze the tradeoff between the increased communication and local computation required by ROBO's overlapping blocks and the resulting faster convergence. We show that overlaps with an average inter-robot data cost of only 36 Kb per iteration can converge 3.1 faster in terms of iterations than state-of-the-art distributed PGO approaches. Furthermore, we develop an asynchronous variant of ROBO that is robust to network delays and suitable for real-world robotic applications.
Paper Structure (20 sections, 2 equations, 5 figures, 5 tables, 1 algorithm)

This paper contains 20 sections, 2 equations, 5 figures, 5 tables, 1 algorithm.

Figures (5)

  • Figure 1: Example three-robot pose and communication graphs. (a) Nodes correspond to poses; node color indicates "ownership" of that pose. Solid lines denote odometry measurements, dashed lines are inter-robot loop closures. Overlapping blocks with $\omega = 1,3,4$ highlighted for robot $\alpha$. Robot subgraphs summarized in (b) and (c) to form the communication graph, $G_C^{\omega}(\mathcal{B}, \mathcal{E})$. (b) $G_C^{\omega}(\mathcal{B}, \mathcal{E})$ for $\omega = 1$. (c) $\omega = 3$ or $4$ changes $G_C^{\omega}(\mathcal{B}, \mathcal{E})$ due to inter-robot measurements, such that all robots are connected.
  • Figure 2: Performance profile comparing AMM-PGO$^{\#}$, RBCD++, and ROBO with varying overlap levels when using block-wise spanning tree initialization. From left to right, the relative suboptimality thresholds used to determine convergence are 1%, 0.1%, and 0.01%.
  • Figure 3: (a) Local solve time as $\omega$ increases. Each curve shown is one dataset. For all but 4 of 22 datasets, local solve times are $\geq 20$ Hz (dashed line) for $\omega \leq 3$. (b) Datasets with longest solve times (decreasing order).
  • Figure 4: Fraction of problems solved with $\Delta_{rel}$$\leq 0.1 \%$ after 30 s with increasing delay and overlap ($\lambda = 10$ Hz). (a) Shorter delays, excluding 4 datasets with longest local solve times. (b) Longer delays, all datasets.
  • Figure : ROBO: Overlapped Distributed PGO

Theorems & Definitions (1)

  • Remark : Communication graph