Source-linked AI summary

Swarm-SLAM : Sparse Decentralized Collaborative Simultaneous Localization and Mapping Framework for Multi-Robot Systems

Pierre-Yves Lajoie, Giovanni Beltrame

arXiv:2301.06230v3cs.ROcs.CV

TL;DR

Multi-robot SLAM must create shared maps without external positioning while operating under severe communication and computation constraints. Swarm-SLAM is an open-source, decentralized and sparse framework supporting multiple sensors, with algebraic-connectivity-based loop-closure prioritization. Across five datasets and a three-robot ad-hoc-network deployment, the system was evaluated for accurate estimation, communication efficiency, and convergence speed.

  • Problem

    C-SLAM needs to merge local robot maps in GPS-denied environments, but communication and computation limitations make scalable collaborative operation difficult.

  • Method

    Swarm-SLAM combines decentralized neighbor management and pose-graph optimization with sparse inter-robot loop-closure prioritization based on algebraic connectivity maximization.

  • Results

    Swarm-SLAM's spectral prioritization decreases pose error faster than greedy prioritization, while its back-end achieves the highest ATE accuracy and lower communication and computation time than alternatives.

  • Takeaways & Limitations

    The open-source framework provides a resource-efficient C-SLAM testbed for multi-robot sensing, loop-closure detection, and decentralized pose-graph optimization.

Abstract

from arXiv · show

Collaborative Simultaneous Localization And Mapping (C-SLAM) is a vital component for successful multi-robot operations in environments without an external positioning system, such as indoors, underground or underwater. In this paper, we introduce Swarm-SLAM, an open-source C-SLAM system that is designed to be scalable, flexible, decentralized, and sparse, which are all key properties in swarm robotics. Our system supports inertial, lidar, stereo, and RGB-D sensing, and it includes a novel inter-robot loop closure prioritization technique that reduces communication and accelerates convergence. We evaluated our ROS-2 implementation on five different datasets, and in a real-world experiment with three robots communicating through an ad-hoc network. Our code is publicly available: https://github.com/MISTLab/Swarm-SLAM

I. INTRODUCTION

C-SLAM enables robots in GPS-denied environments to merge local maps, but communication and computation constraints challenge scalable deployment. Swarm-SLAM addresses these constraints with a decentralized, flexible, resource-efficient framework and sparse loop-closure selection.

  • Motivation: GPS-denied multi-robot operations require connecting local maps to create shared situational awareness.Single-robot SLAM estimates remain in individual robot reference frames until inter-robot map links merge them.
  • Motivation: Decentralized operation is better suited to large deployments because central-server connections can be unreliable and communication-limited.Large indoor or subterranean environments may not support stable connections to a central server.
  • Swarm-SLAM: Swarm-SLAM combines decentralized C-SLAM with support for stereo, RGB-D, and lidar sensors while requiring less communication than previous techniques.The framework is designed around swarm-compatible properties and is implemented as a complete resource-efficient system.
  • Swarm-SLAM: Its sparse inter-robot loop-closure algorithm prioritizes candidates under communication constraints by maximizing algebraic connectivity.The prioritization approach is designed to reduce data exchanges while selecting informative map links.
  • Swarm-SLAM: The framework also provides decentralized neighbor management and pose-graph optimization for sporadic inter-robot communication.These capabilities are listed as core contributions alongside the sparse loop-closure method.
  • Evaluation: Swarm-SLAM is an open-source, swarm-compatible framework evaluated on datasets and in a real-world experiment.The evaluation covers overall system performance across multiple sensing configurations and deployment conditions.

II. BACKGROUND AND RELATED WORK

C-SLAM merges independently built robot maps through inter-robot loop closures, while decentralized methods avoid the permanent central connections required by centralized systems. Prior work develops distributed matching, optimization, and robust outlier-rejection techniques across several open-source frameworks.

  • Collaborative SLAM: Centralized C-SLAM aggregates maps at a base station, whereas decentralized systems rely on occasional robot-to-robot communication.Centralized scalability is limited by communication bottlenecks and the need for reliable permanent connectivity.
  • Collaborative SLAM: Inter-robot loop closures connect shared places or features across robot maps and provide stitching points for a shared global reference frame.Detecting and computing these loop closures efficiently is identified as a major C-SLAM front-end challenge.
  • Collaborative SLAM: Loop-closure detection commonly shares compact image or lidar descriptors first, then computes candidate-specific matches for likely overlaps.This two-stage process limits the need to exchange entire maps, whose communication cost is usually prohibitive.
  • Back-End: The C-SLAM back-end estimates robot poses and maps from noisy measurements using distributed pose-graph optimization.Distributed methods communicate pose estimates involved in inter-robot loop closures rather than complete trajectories.
  • Back-End: Perceptual aliasing can produce erroneous inter-robot loop closures, motivating robust methods such as Pairwise Consistency Maximization.PCM identifies a maximal clique of pairwise-consistent inter-robot measurements for distributed robust optimization.
  • Related Work: Existing open-source systems span CNN-based or ScanContext place recognition, distributed optimization, outlier rejection, and semantic mapping.Examples include DSLAM, DOOR-SLAM, DiSCo-SLAM, and Kimera-Multi.

3) Open-Source C-SLAM Systems:

Swarm-SLAM is designed as a scalable, flexible, decentralized C-SLAM framework for robots operating with intermittent peer-to-peer communication. Its modular architecture supports multiple sensors, odometry sources, and onboard pose-graph optimization.

  • System properties: Swarm-SLAM uses ad-hoc networking and does not require permanent connectivity to a central server.The framework is intended for large environments where stable communication with a central authority is unrealistic.
  • System architecture: The neighbor-management module tracks reachable robots and exchanged data, while heartbeat messages periodically evaluate network connectivity.Other modules query this process to determine which neighbors can be contacted reliably.
  • Front-end: The front-end accepts odometry estimates and synchronized sensor data, using global descriptors for place recognition and local descriptors for 3D registration.The framework is decoupled from the odometry source and supports stereo, RGB-D, and lidar sensors.
  • Back-end: The decentralized back-end combines odometry with intra-robot and inter-robot loop closures in a pose graph and returns optimized estimates to the robots.All computation is performed onboard, with local pose graphs transmitted through negotiated peer communication.
  • Integration: Current pose estimates are published as ROS 2 messages, while mapping queries and visualization require additional computation and communication.The neighbor manager tracks exchanged measurements to avoid needless bandwidth use.

IV. FRONT-END

The front-end uses a two-stage inter-robot loop-closure process: global matching generates candidate place-recognition matches, which local matching subsequently verifies.

  • Global matching generates candidate place-recognition matches between robots.
  • The front-end therefore separates candidate generation from geometric verification.
  • Local matching verifies global candidates using local features.

A. Global Matching

Global matching broadcasts compact sensor descriptors and prioritizes inter-robot loop-closure candidates under a communication budget. The spectral strategy maximizes pose-graph algebraic connectivity, selecting less redundant candidates than greedy similarity ranking while reducing exchanges, although it sacrifices theoretical guarantees.

  • Descriptor exchange: Compact keyframe descriptors are broadcast to neighboring robots and matched using cosine-similarity nearest neighbors.ScanContext is used for lidar scans, while CosPlace is used for images.
  • Budgeting: The user sets B according to robot communication and computation capacities, whereas greedy prioritization selects the B highest-similarity candidates.
  • Spectral prioritization: The spectral approach sparsifies candidate inter-robot matches before computing 3D measurements, reducing resource usage for costly geometric verification.
  • Trade-offs: The heuristic confidence weighting avoids communicating edge-noise estimates but loses the theoretical guarantees of the referenced noise-model approach.The paper reports that the heuristic works well in realistic cases.
  • Spectral prioritization: Candidate prioritization selects a fixed budget B of inter-robot loop closures to maximize the pose graph’s algebraic connectivity λ2.The binary variable ω_e determines whether candidate edge e is prioritized.
  • Selection behavior: Spectral candidates are more evenly distributed across the pose graph and less redundant than greedy candidates concentrated in high-similarity areas.

B. Local Matching

After inter-robot candidates are selected, local matching performs geometric verification to compute 3D relative pose measurements from larger local-feature collections.

  • Local matching verifies selected inter-robot loop-closure candidates using larger collections of local features, keypoints, or point clouds.
  • The verification stage computes a 3D relative pose measurement between the candidate vertices.
  • The process avoids duplicate loop-closure computation and reduces geometric-verification communication burden.

C. Inter-Robot Communication

During communication, a dynamically elected broker coordinates descriptor matching and requests the necessary pose-graph vertices for transfer.

  • A temporary broker is dynamically elected among robots within communication range for spectral matching and vertex exchange.In the current implementation, the robot with the lowest ID serves as broker, though other decentralized election mechanisms are possible.

V. BACK-END

Swarm-SLAM uses a decentralized back-end that assembles pose-graph measurements and estimates maps and poses through locally elected computation. An anchor-selection process maintains a shared global reference frame across sporadic rendezvous.

  • V. BACK-END: The back-end gathers odometry and intra- and inter-robot loop closures into a pose graph to estimate maps and robot poses.
  • V. BACK-END: A robot is dynamically elected to perform back-end computation while neighboring robots share pose-graph estimates and receive updates.
  • V. BACK-END: Anchor selection tracks the global reference frame so repeated sporadic rendezvous converge to a single global localization estimate without central authority.
  • V. BACK-END: Initially, each robot uses its first pose as a local reference, after which the first pose of the lowest-ID robot meeting others becomes the anchor.

VI. EXPERIMENTAL RESULTS

Swarm-SLAM was evaluated across public datasets and communication-constrained scenarios using loop-closure prioritization and multiple back-end comparisons. Spectral prioritization reduced estimation error faster, while the chosen back-end achieved strong accuracy with lower communication and computation requirements.

  • VI. EXPERIMENTAL RESULTS: Experiments covered seven sequences from five datasets using IMUs, stereo cameras, lidars, or combinations of these sensors.
  • VI. EXPERIMENTAL RESULTS: The evaluation included a worst-case setting where robots communicated only at the ends of their trajectories and matched their complete maps at once.
  • VI. EXPERIMENTAL RESULTS: Spectral prioritization maximized pose-graph algebraic connectivity and decreased Absolute Translation Error faster than greedy prioritization.
  • VI. EXPERIMENTAL RESULTS: Careful early candidate selection significantly reduced estimation error while requiring fewer computed inter-robot loop closures.
  • VI. EXPERIMENTAL RESULTS: The decentralized back-end was compared with DGS+PCM and D-GNC using accuracy, computation time, and communication requirements.

2) Decentralized C-SLAM Evaluation:

Decentralized C-SLAM was evaluated through successive partial rendezvous, dataset trajectory comparisons, and a three-robot real-world deployment. Anchor propagation aligned estimates into a shared reference frame using local interactions rather than persistent connectivity or central authority.

  • 2) Decentralized C-SLAM Evaluation:: Successive rendezvous among robot groups {0,2}, {1,2,3}, and {3,4} brought all trajectory estimates into one global reference frame.
  • 2) Decentralized C-SLAM Evaluation:: Swarm-SLAM trajectory estimates were compared with GPS ground truth across various dataset sequences.
  • 2) Decentralized C-SLAM Evaluation:: The deployment collected computation-time and communication-load statistics on resource-constrained robotic platforms using ad-hoc networking.
  • 2) Decentralized C-SLAM Evaluation:: The anchor scheme propagated the global reference frame by selecting the current first pose from the robot with the lowest reference-frame ID.
  • 2) Decentralized C-SLAM Evaluation:: This convergence occurred through successive subset estimations without connectivity maintenance or a central authority.
  • 2) Decentralized C-SLAM Evaluation:: A real-world experiment used three robots equipped with lidars and RGB-D cameras to explore an indoor parking lot and achieve shared situational awareness.

B. Real-World Experiments

The real-world demonstration evaluated Swarm-SLAM on three heterogeneous robots in an indoor parking lot, measuring loop-closure processing, communication, and optimization costs. Despite many visually similar areas and rejected outliers, the system achieved accurate localization with limited inter-robot data transmission.

  • Experimental setup: Three heterogeneous robots completed an online Swarm-SLAM demonstration in an indoor parking lot using onboard sensing and computation.The robots were Boston Dynamics Spot, Agilex Scout, and Agilex Scout Mini, each equipped with Jetson AGX Xavier computers and multiple sensors.
  • Experimental results: The robots travelled 475 meters and produced 3103 keyframes for inter-robot loop-closure matching and verification.The process yielded 67 loop closures, including 10 rejected by the GNC optimizer.
  • Experimental results: Ten of 67 detected loop closures were rejected because visually similar parking-lot sections generated many outliers.The reported outliers affected inter-robot loop-closure verification in the real-world experiment.
  • Communication and computation: Swarm-SLAM achieved accurate localization while transmitting only 94.95 MB between robots, excluding visualization data.The communication load was primarily attributable to the front end and depended on the number of keyframes.
  • Communication and computation: Sparsification required non-negligible time but was faster than pose graph optimization, so the two processes ran in separate threads.The separate threads were implemented to mitigate the relative optimization cost.
  • Future work: Future work targets collaborative domain calibration and uncertainty estimation in place recognition to reduce measurement outliers and improve C-SLAM accuracy and resilience.The framework is also intended as an open-source testbed for research on place recognition, loop closure detection, and pose graph optimization.
Loading 2301.06230v3…