Swarm-SLAM
Lajoie 2024 · 論文
一行要約 — Swarm-SLAMは、オープンソースでセンサ非依存の分散型協調SLAMフレームワークであり、スウォームロボティクスが実際に必要とする特性――拡張性、柔軟性、分散性、疎性――を中心に設計されている。固定された予算を最も情報量の多いロボット間マッチに費やす、新しいスペクトル閉ループ優先付け手法を備える。
問題
協調SLAMは、外部位置決めシステムのない環境――屋内、地下、水中――でのマルチロボット運用にとって不可欠な要素である。しかし、チームが大きくなるにつれ、単純なC-SLAM設計は通信の壁にぶつかる――すべてのロボットのペアの間で、すべての閉ループ候補について記述子を交換し幾何学的に検証することは、帯域制限のあるアドホックリンク上では成り立たない。Swarm-SLAMは、分散型システムを、大域推定の精度にとって最も重要なロボット間閉ループを見つけながら――保存・伝送・検証されるものにおいて――「疎」に保つ方法を問う。
手法とアーキテクチャ
フロントエンド(グローバルマッチング)。 各ロボットは任意の外部オドメトリ入力と、同期されたセンサデータ(LiDAR、ステレオ、RGB-D、IMU)を消費する。キーフレームごとに、コンパクトなグローバル記述子――LiDARスキャンにはScanContext、画像にはCNNベースのCosPlace――を抽出し、各近隣にまだ知られていない記述子のみをブロードキャストする(近隣管理モジュールが管理を担う)。コサイン類似度による最近傍探索が、ロボット間閉ループの候補を生成する。
予算制約付きスペクトル優先付け(核となる新規性)。 マルチロボットポーズグラフはであり、は、すでに検証された固定エッジと未検証の候補に分かれる。代数的連結性(回転重み付きグラフラプラシアンの第2最小固有値)がSLAM最大尤度推定の最悪ケース誤差を支配するため、候補はこれを最大化するように選ばれる。ラプラシアンは次のエントリを持つ。
エッジ重みは、固定/ローカルエッジに対して、候補に対して(グローバルマッチングの類似度スコア)であるため、追加のノイズ情報を通信する必要はない。増補ラプラシアンを次のように書くと、
各サイクルは、サイズ(ユーザ設定の検証/通信予算)の部分集合を選び、次を解く。
これはNP困難であるため、整数制約は緩和され、安価に解かれ、丸められる。初期値には貪欲(類似度上位)解を用いる。
局所マッチングと通信。 選ばれた候補は幾何学的検証を受ける。どのキーフレームのローカル特徴を伝送するかは最小頂点カバー問題として定式化され、共有頂点は一度だけ送信される。一時的なブローカー(範囲内で最もIDの小さいロボット)がマッチングと転送要求を調整する。
バックエンド(分散型〈decentralized〉であり、distributed 型ではない)。 各遭遇時に、1台のロボットが交渉によって選出され、近隣のポーズグラフを収集し、ロバストな切断最小二乗損失のもとでグラジュエーテッド非凸性(GNC)ソルバーによるポーズグラフ最適化を実行し、更新された推定値を返す。アンカー選択方式(最も小さい基準フレームIDの最初のポーズを固定する)により、散発的な遭遇を通じて、中央権限なしにロボットの部分集合が単一のグローバルフレームに収束する。
実験結果
- データセット: 5つのデータセットから7つのシーケンス、センサを混合している――ステレオのKITTI 00を2台のロボットに分割、約10 kmのKITTI-360 09のLiDARシーケンスを5台のロボットに分割、GrAco(LiDARシーケンス3本)、M2DGR Gate(LiDAR 3本)、S3E(3シーケンス、ステレオカメラによるロボット間閉ループ検出を伴うLiDAR-IMUオドメトリ)。
- 優先付け: サイクルあたりの予算のもとで、スペクトル優先付けは意図通り代数的連結性を最大化し、貪欲な類似度ランキングよりも速くATEを低減する――すべての閉ループ候補の一部だけを計算した段階で、妥当な精度に達する。
- バックエンド比較: 同じフロントエンド上でDGS+PCMおよび分散GNC(D-GNC/RBCD)と比較すると、GNCベースの分散型バックエンドは一貫して最良のATE、最低の通信・計算時間を達成した。KITTI-360 09(5台のロボット)では、分散ベースラインはその精度に匹敵することなく、5倍以上のデータ伝送を要した。
- 実世界での展開: ヘテロジニアスな3台のロボット(Boston Dynamics Spot、Agilex Scout、Scout Mini。それぞれJetson AGX Xavier、RealSense D455、Ouster OS0-64、VectorNav VN100、アドホックWi-Fiを搭載)を屋内駐車場で運用: 走行距離475 m、キーフレーム3103個、ロボット間閉ループ67個(うち10個の外れ値がGNCによって棄却された)、伝送総量はわずか94.95 MBであった。
SLAMにおける意義
ロボットチームが大きくなるにつれ、単純な記述子ブロードキャストと網羅的な閉ループ検証は、通信量と計算量を爆発的に増大させる。Swarm-SLAMはまさにこのボトルネックに取り組み、「どの」閉ループを先に検証するかが、それをどう最適化するかと同じくらい重要であることを示す。そして、単純に分散選出されたバックエンドが、精度・帯域幅・通信障害に対する頑健性の点で、より高度な分散型ソルバーを上回れることを示す。DOOR-SLAMと同じ研究グループから生まれ、10年分の分散SLAMの教訓を現代的なROS 2フレームワーク(MISTLab/Swarm-SLAM)に詰め込んでおり、そのセンサ非依存性は、ヘテロジニアスなマルチロボット実験のための共通のベースラインとなっている。
関連ノート
- DOOR-SLAM — 同じ研究室によるより初期の分散型・外れ値耐性システム
- Kimera-Multi — メトリック・セマンティックな分散型の代替手法(D-GNCベースラインの出典)
- Communication constraints — Swarm-SLAMが節約するように設計されているリソース
- Centralized vs Decentralized — アーキテクチャ上の文脈
- Inter-robot loop closure — 優先付けされ検証される対象
- Map merging — 優先付けされた閉ループが可能にする操作