協調型同時定位與建構地圖(C-SLAM)是在室內、地下、水中等無外部定位系統的環境中,多機器人協同運作的必須要素。傳統的C-SLAM系統可分為集中型和分散型兩類。集中型系統將所有機器人的地圖資料集中到遠端基地站,計算全域SLAM估計。然而,這些系統要求機器人與基地站一直保持可靠不中斷的網路連線,且因與中央伺服器的通訊瓶頸而嚴重限制了擴展性。這種嚴格的網路限制在大規模環境中常常不切實際,因此適合採用只需機器人間不定期通訊而無需中央集權管理的分散式方法。
分散式系統受限於機器人的機載運算能力和通訊能力,需要更精細的資料管理和記錄策略來獲得準確的SLAM估計值。大規模機器人團隊或機器人群組要將各自的局部地圖結合或合併以形成環境的共享全域理解,需要應對資源,特別是通訊和運算的限制。
Swarm-SLAM是一個具備機器人群組重要特性(可擴展性、靈活性、去中心化、稀疏性)的開源C-SLAM系統。此框架支援各種類型的感測器,如光達、立體攝影機、RGB-D攝影機等,實現比傳統技術大幅減少的通訊量。Swarm-SLAM由三個模組組成:鄰居管理模組:持續追蹤哪些機器人在通訊範圍內(即可靠到達的鄰居),以及交換了哪些資料。此模組使得可擴展操作成為可能。前端:接收里程計估計值和同步的感測器資料作為輸入。接收輸入後,前端從感測器資料中存取特徵並進行資料關聯。採用全域匹配和局部匹配的兩階段方法。全域匹配從感測器資料中存取緊湊的描述子並廣播給鄰近機器人。局部匹配使用局部特徵驗證全域匹配生成的候選位置識別匹配。後端:將前端的機器人內部和機器人間的迴圈閉合測量值與里程計測量值結合成姿態圖。局部姿態圖通過鄰居管理協商發送給選定的機器人進行最佳化,結果估計值返回各機器人。
Swarm-SLAM引入了基於代數連通性最大化的通訊受限下稀疏預算化機器人間迴圈閉合檢測演算法,以減少資料交換。這種位置識別匹配的預處理使得能夠以更快速度和更少通訊資源實現準確的C-SLAM估計。提案方法的效果在5個不同的資料集和透過臨時網路通訊的3台機器人的實際環境中進行了評估。