読者です 読者をやめる 読者になる 読者になる

MyEnigma

とあるエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

Simultaneous Localization And Mapping (SLAM) 技術を利用する上での問題点

Robot

関連記事
Simultaneous Localization And Mapping (SLAM)について

Simultaneous Localization And Mapping (SLAM) 技術がもたらす利点




以前の記事で述べたように,

SLAMの技術には様々な利点がありながらも,

実用の上でいくつかの問題点がある.



一つ目は,そもそも SLAM は矛盾した問題を解くことに他ならないことである.

SLAM は自己位置推定の値から地図構築を行う.

また,その作成した地図の情報から自己位置推定を行う.

しかし,全てのセンサ情報には誤差があることを忘れてはいけない.

つまり,誤差の乗ったセンサデータを使用して地図を作成するため,

作成した地図には誤差が必ず生じてしまう.

また,その次のステップでは,

その誤差を含む地図情報を使用して自己位置推定を行うため,

自己位置推定にも誤差が生じてしまうのである.

そして,その誤差を含んだ自己位置推定値から再び地図構築を行うため,

地図に生じる誤差はより増加してしまう.

したがって,自己位置と地図の誤差は互いに増大し続け,

最終的には SLAM の計算が発散してしまう.



SLAM を実環境で利用するためには,このようなセンサノイズを考慮した上で,

SLAM を行い,SLAM 計算の発散を防がなくてはならない.

そのためには,入力値や観測値の生のデータをそのまま利用するのではなく,

運動モデルや観測モデル, そして以前の入力値と観測値の履歴から,

正しい値を推定する必要がある.



二つ目の SLAM を実用する上での問題は計算コストである.

SLAM は自己位置推定と地図構築を同時に計算する.

つまり,自己位置情報と地図内の全てのランドマークに対して確率計算を行わなくてはならない.

したがって,SLAM を行うためには多量の計算を行わなくてはならないのである.

また,作成された地図はロボットが移動するにつれて増加してしまう.

これはロボットが移動するにつれて,観測する範囲が増加するためである.

したがって,ロボットが移動するにつれて,計算時間が増大してしまう.

つまり,SLAM を長距離にわたって,リアルタイムで計算するのは困難である.



これら以外にも SLAM を行うための準備段階における,

特徴点抽出や,データの対応付け,

そして地図内のランドマークの管理方法など,

実用する上で様々な問題がある.

SLAM を実環境で行うにはこれらの問題をすべて解決しなければならない.