
SLAM(同時自己位置推定と環境地図作成)とは、コンピュータが未知の環境の地図を作成または更新すると同時に、その環境内における対象物の位置を追跡するプロセスです。これは一見すると鶏が先か卵が先かという問題のように思えますが、特定の環境においては、少なくとも近似的に扱いやすい時間で解決できるアルゴリズムがいくつか知られています。代表的な近似解法としては、パーティクルフィルタ、拡張カルマンフィルタ、共分散交差法、GraphSLAMなどがあります。SLAMアルゴリズムは計算幾何学とコンピュータビジョンの概念に基づいており、ロボットナビゲーション、ロボットマッピング、仮想現実や拡張現実のためのオドメトリなどに利用されています。
SLAMアルゴリズムは利用可能なリソースに合わせて調整されており、完璧さを追求するのではなく、運用上の要件を満たすことを目的としています。発表されている手法は、自動運転車、無人航空機、自律型水中探査機、惑星探査車、最新の家庭用ロボット、さらには人体内部にも採用されています。
一連の制御が与えられた場合およびセンサー観測離散的な時間ステップにわたってSLAM問題とは、エージェントの状態推定値を計算することである。そして環境の地図すべての量は通常確率的であるため、目的は[ 1 ]を計算することです。
ベイズの定理を適用すると、マップと遷移関数が与えられた場合に、位置事後確率を順次更新するための枠組みが得られる。、
どこは正規化定数であり、すべての確率の合計が1になることを保証します。
同様に、マップは次のように順次更新できます。
多くの推論問題と同様に、2 つの変数を同時に推論する解は、期待値最大化アルゴリズムの形で 2 つの信念を交互に更新することによって、局所最適解として見つけることができます。
上記の方程式を近似するために使用される統計的手法には、カルマンフィルタやパーティクルフィルタ(モンテカルロ位置推定のアルゴリズム)などがあります。これらは、ロボットの姿勢とマップのパラメータの事後確率分布の推定値を提供します。共分散交差を使用して上記のモデルを保守的に近似する手法は、統計的独立性の仮定への依存を回避し、大規模なアプリケーションでのアルゴリズムの複雑さを軽減することができます。[ 2 ]他の近似手法は、不確実性の単純な境界領域表現を使用することで、計算効率を向上させます。[ 3 ]
セットメンバーシップ技術は主に区間制約伝播に基づいています。[ 4 ] [ 5 ] これらはロボットの姿勢を囲むセットとマップの近似セットを提供します。バンドル調整、より一般的には最大事後確率推定(MAP)は、画像データを使用するSLAMのもう1つの一般的な技術であり、姿勢とランドマークの位置を同時に推定してマップの忠実度を高め、GoogleのARCoreなどの商用SLAMシステムで使用されています。ARCoreは、以前の拡張現実コンピューティングプラットフォームであるTango(旧Project Tango )に取って代わるものです。MAP推定器は、事後確率全体を推定しようとするのではなく、センサーデータに基づいてロボットの姿勢とマップの最も可能性の高い説明を計算します。
新しいSLAMアルゴリズムは依然として活発な研究分野であり、[ 6 ]以下で詳述するように、マップ、センサー、モデルの種類に関するさまざまな要件と仮定によって推進されることが多い。多くのSLAMシステムは、これらの各側面からの選択肢の組み合わせとして見ることができる。
トポロジカルマップは、幾何学的に正確なマップを作成するのではなく、環境の接続性(つまりトポロジー)を捉える環境表現方法です。トポロジカルSLAMアプローチは、メトリックSLAMアルゴリズムのグローバルな一貫性を強化するために使用されてきました。[ 7 ]
対照的に、グリッドマップは、離散化されたセルの配列(通常は正方形または六角形)を使用してトポロジーの世界を表現し、どのセルが占有されているかについて推論を行います。通常、計算を簡略化するために、セルは統計的に独立していると仮定されます。このような仮定の下では、新しいマップのセルが観測結果と一致する場合、1に設定されます。場所矛盾がある場合は0。
現代の自動運転車は、事前に収集された非常に詳細な地図データを幅広く活用することで、マッピングの問題をほぼ完全に簡略化しています。これには、道路上の個々の白線や縁石の位置をマークするレベルの地図注釈も含まれます。Googleストリートビューなどの位置情報付き画像データも地図の一部として使用されることがあります。基本的に、このようなシステムはSLAMの問題をより単純な位置特定のみのタスクに簡略化し、実行時に車や人などの移動物体のみを地図上で更新することを可能にします。

SLAM は常に複数の異なるタイプのセンサーを使用し、さまざまなセンサータイプの能力と限界が新しいアルゴリズムの主要な推進力となっています。[ 8 ]統計的独立性は、測定におけるメトリック バイアスとノイズに対処するための必須要件です。異なるタイプのセンサーは、センサーに最も適した仮定を持つ異なる SLAM アルゴリズムを生み出します。一方の極端な例として、レーザー スキャンまたは視覚的特徴は、領域内の多数の点の詳細を提供し、これらの点群の形状は画像レジストレーションによって各ステップで容易かつ明確に位置合わせできるため、SLAM 推論が不要になる場合があります。反対の極端な例として、触覚センサーはエージェントのごく近くの点に関する情報しか含まないため、非常に疎であり、純粋な触覚 SLAM ではそれを補うために強力な事前モデルが必要です。ほとんどの実用的な SLAM タスクは、これらの視覚的および触覚的極端の中間に位置します。
センサーモデルは大きくランドマークベースのアプローチと生データアプローチに分けられます。ランドマークとは、 Wi-Fiアクセスポイントや無線ビーコンなど、センサーによって位置を推定できる、世界に存在する固有の識別可能なオブジェクトのことです。生データアプローチでは、ランドマークが識別できるという前提を置かず、代わりにモデル化を行います。場所の関数として直接的に表れる。
光学センサーには、一次元(シングルビーム)または二次元(スイープ)レーザー距離計、三次元高解像度光検出測距(ライダー)、三次元フラッシュライダー、二次元または三次元ソナーセンサー、および一つ以上の二次元カメラがあります。[ 8 ] SIFTなどのローカル特徴の発明以来、モバイルデバイスなどのカメラの普及が進んでいるため、主に視覚(カメラ)センサーを使用したビジュアルSLAM(VSLAM)の研究が盛んに行われています。[ 9 ] 後続の研究には、以下が含まれます。[ 10 ]視覚センサーとライダーセンサーの両方は、多くの場合、ランドマーク抽出を可能にするのに十分な情報を提供します。その他の最近のSLAMの形式には、触覚SLAM [ 11 ](局所的なタッチのみによるセンシング)、レーダーSLAM [ 12 ] 、音響SLAM [ 13 ]、およびWi-Fi-SLAM(近くのWi-Fiアクセスポイントの強度によるセンシング)があります。[ 14 ]最近のアプローチでは、不安定な無線計測を補うために、準光学無線測距をマルチラテレーション(リアルタイム位置特定システム(RTLS))またはマルチアングル測距に適用し、SLAMと組み合わせています。人間の歩行者向けのSLAMの一種では、靴に取り付けられた慣性計測ユニットをメインセンサーとして使用し、歩行者が壁を避けることができるという事実を利用して、屋内測位システムによって建物のフロアプランを自動的に構築します。[ 15 ]
屋外用途の中には、高精度の差分GPSセンサーの登場により、SLAMの必要性がほぼ完全になくなったものもあります。SLAMの観点から見ると、これらのセンサーは、その尤度が非常に高いため推論を完全に支配する位置センサーとみなすことができます。しかし、GPSセンサーは、例えば軍事紛争時などには、時折精度が低下したり、完全に機能しなくなったりすることがあり、これは一部のロボットアプリケーションにとって特に重要な問題です。
のこの用語はモデルの運動学を表し、通常はロボットに与えられた動作コマンドに関する情報が含まれます。モデルの一部として、ロボットの運動学が組み込まれており、固有ノイズや周囲ノイズの条件下でのセンシングの推定精度を向上させます。動的モデルは、さまざまなセンサーやさまざまな部分誤差モデルからの寄与をバランスさせ、最終的にロボットの位置と進行方向を確率の雲として示す地図として、鮮明な仮想表現にまとめられます。マッピングはこのようなモデルの最終的な表現であり、地図はそのような表現、またはモデルの抽象的な用語のいずれかです。
2Dロボットの場合、運動学は通常、回転コマンドと「前進」コマンドの組み合わせによって表され、これらは追加のモーターノイズを伴って実装されます。残念ながら、角度方向と直線方向の独立したノイズによって形成される分布は非ガウス分布ですが、多くの場合ガウス分布で近似されます。別の方法として、運動学項を無視し、各コマンドの後にロボットの車輪からオドメトリデータを読み取る方法があります。この場合、そのようなデータは運動学ではなく、センサーの1つとして扱うことができます。
他の車両や歩行者を含むような非静的な環境は、引き続き研究上の課題となっている。[ 16 ] [ 17 ] DATMO を使用した SLAM は、エージェント自体と同様の方法で移動物体を追跡するモデルである。[ 18 ]
ループクロージャとは、以前に訪れた場所を認識し、それに応じて信念を更新する問題です。モデルやアルゴリズムのエラーによって、その場所に低い事前確率が割り当てられる可能性があるため、これは問題となる場合があります。一般的なループクロージャ手法では、2つ目のアルゴリズムを適用して何らかのセンサー測定値の類似性を計算し、一致が検出されたときに場所の事前確率をリセットします。たとえば、これは、以前に訪れた各場所からスケール不変特徴変換(SIFT)特徴の単語のバッグベクトルを保存して比較することによって実現できます。
アクティブSLAMは、 SLAMと、地図をできるだけ効率的に構築するために次にどこへ移動するかを決定するという問題を組み合わせた研究です。能動的な探索の必要性は、触覚SLAMのような疎なセンシング環境で特に顕著です。アクティブSLAMは一般的に、仮想的な動作の下での地図のエントロピーを近似することによって実行されます。「マルチエージェントSLAM」は、この問題を複数のロボットが協調して最適に探索する場合に拡張したものです。
神経科学では、海馬はSLAMのような計算に関与していると考えられており、[ 19 ] [ 20 ] [ 21 ]場所細胞を生み出し、RatSLAMなどの生物に着想を得たSLAMシステムの基礎を形成している。
協調型SLAMは、複数のロボットやユーザーからのセンサーを組み合わせて3Dマップを生成します。[ 22 ]この機能は、2021年のDARPA地下チャレンジで多くのチームによって実証されました。
一般的な SLAM 問題の拡張が音響領域に適用され、環境は音源の3 次元 (3D) 位置で表現され、aSLAM (Acoustic Simultaneous Localization and Mapping) と呼ばれています。[23] この技術の初期の実装では、音源の位置の到来方向( DoA )推定が使用され、音源の位置を決定するために音源定位の主要技術に依存しています。観測者またはロボットは、音響 SLAM を使用できるようにマイクロホン アレイを装備する必要があり、これにより DoA 特徴が適切に推定されます。音響 SLAM は、音響シーン マッピングのさらなる研究の基礎を築き、音声による人間とロボットのインタラクションで重要な役割を果たすことができます。複数の、そして時折断続的な音源をマッピングするために、音響 SLAM システムは、音響ランドマークのさまざまな存在を処理するためにランダム有限集合理論の基礎を使用します。[ 24 ]しかし、音響的に導出された特徴の性質上、音響SLAMは環境内の残響、非活動、およびノイズの問題の影響を受けやすい。
もともと人間とロボットのインタラクション用に設計されたオーディオビジュアルSLAMは、環境内の音響と視覚の両方のモダリティから得られるランドマーク特徴の融合を提供するフレームワークです。[ 25 ]人間のインタラクションは、視覚モダリティだけでなく音響モダリティでも知覚される特徴によって特徴付けられます。そのため、人間中心のロボットや機械のSLAMアルゴリズムは、両方の特徴セットを考慮する必要があります。オーディオビジュアルフレームワークは、人間の姿勢などの視覚的特徴と人間の音声などの音声的特徴を使用して人間のランドマークの位置を推定してマッピングし、信念を融合して環境のより堅牢なマップを作成します。モバイルロボット(ドローン、サービスロボットなど)のアプリケーションでは、単眼カメラやマイクロエレクトロニクスマイクロフォンアレイなどの低電力で軽量な機器を使用することが有益です。オーディオビジュアルSLAMは、軽量ビジュアルセンサーに共通する狭い視野、特徴の遮蔽、光学的な劣化を、オーディオセンサーに固有の広い視野と遮蔽のない特徴表現で補償することにより、これらのセンサーの相補的な機能を実現できます。オーディオセンサーが残響、音源の不活性、ノイズの影響を受けやすいという問題も、視覚モダリティからのランドマーク情報を融合することで適切に補償できます。環境におけるオーディオとビジュアルの相補的な機能は、人間の音声や動きと完全に相互作用するロボットや機械の開発に非常に役立ちます。
さまざまなSLAMアルゴリズムは、オープンソースソフトウェアであるRobot Operating System(ROS)ライブラリに実装されており、3DマップやOpenCVの視覚的特徴のためのPoint Cloud Libraryと組み合わせて使用されることが多い。
ロボット工学において、EKF SLAMは、SLAMに拡張カルマンフィルタ(EKF)を使用するアルゴリズムのクラスです。通常、EKF SLAMアルゴリズムは特徴ベースであり、データ関連付けに最尤アルゴリズムを使用します。1990年代から2000年代にかけて、 FastSLAMの登場まで、EKF SLAMはSLAMの事実上の方法でした。[ 26 ]
EKFにはガウスノイズの仮定が伴い、これがEKF SLAMの不確実性への対処能力を著しく低下させる。事後確率の不確実性が大きいほど、EKFの線形化が失敗する。[ 27 ]
ロボット工学において、GraphSLAMは、観測の相互依存性の因子グラフを生成することによって生成される疎な情報行列を使用するSLAMアルゴリズムです(2つの観測は、同じランドマークに関するデータが含まれている場合に関連しています)。[ 27 ]これは最適化アルゴリズムに基づいています。
SLAM の先駆的な研究は、1986 年に Smith と Cheeseman が行った空間的不確実性の表現と推定に関する研究です。[ 28 ] [ 29 ]この分野の他の先駆的な研究は、1990 年代初頭にHugh F. Durrant-Whyteの研究グループによって行われました。 [ 30 ]この研究では、無限データ極限において SLAM の解が存在することが示されました。この発見は、計算上扱いやすく、解を近似するアルゴリズムの探索を促します。SLAM という頭字語は、1995 年にISRに初めて掲載された論文「Localization of Autonomous Guided Vehicles」の中で造語されました。 [ 31 ]
セバスチャン・スランが率いる自動運転車STANLEYとJUNIORは、2000年代にDARPAグランドチャレンジで優勝し、DARPAアーバンチャレンジで2位となり、SLAMシステムを搭載していたことから、SLAMは世界的に注目を集めました。現在では、一般消費者向けのロボット掃除機[ 32 ]や、マーカーレスのインサイドアウトトラッキングを実現するMeta Quest 2やPICO 4などの仮想現実ヘッドセットに、SLAMの実装が見られます。