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

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) 技術がもたらす利点

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




以前の記事で述べたような問題を解決するために,

現在に至るまで,様々な SLAM の研究が行われきた [2].

1990年 R. Smith らは Extended Kalman Filter (EKF) を利用することにより,

確率的な数式展開からSLAM の計算が収束することを示した [7].

その後,R. Smith らの理論を使用して,

Newman ら は実際の車両を使用した実験により,

SLAM が実環境でも可能であることを証明した [8].

この研究をかわきりに,様々な SLAM のアルゴリズムが開発された.

情報フィルタを使用した SLAM,

そしてグラフ構造を利用した GraphSLAM など,

様々な SLAM のアルゴリズムが研究されてきた [9][10].

これらの SLAM アルゴリズムは,

屋内の狭い範囲内においての SLAM を実用可能にした.



しかし,これらのアルゴリズムでは,

地図の拡大に伴う計算時間の増加や,

複雑な環境に起因するデータの対応付けの失敗などにより,

高精度で高速な SLAM を,屋外環境や長距離に渡って行うことは困難であった.



例えば,これらのアルゴリズムの中で最も一般的なアルゴリズムである,

Newman らの EKF を使用した SLAM について考えてみる.

この SLAM アルゴリズムはロボットの姿勢と全てのランドマークの座標の情報を

全て一つの状態ベクトルで表現し,

その状態ベクトルを EKF で更新することにより,高精度な SLAM を可能にした.

このアルゴリズムはロボットの姿勢と

全てのランドマーク間の共分散を考慮して計算を行うため,

ロボットの姿勢とすべてのランドマークの座標を高精度に推定することができる.

したがって,このアルゴリズムは屋内や

少数の人工的なランドマークが存在する環境におけるSLAM では,

高精度な SLAM を可能にした.

しかし,この EKF を使用した SLAM アルゴリズムには,

実用上で二つの大きな問題がある.

一つ目は,ランドマークが増大するにつれて,

計算時間の指数的に増加することである.

前述したように,このアルゴリズムはロボットの姿勢と

全てのランドマークの座標情報を一つの状態ベクトルで表現し,

その状態ベクトルを EKF で推定する.

したがって,観測したランドマークが増加するにつれて,

SLAMの計算時間が指数的に増加してしまうのである.

これでは,屋外環境のような複雑な環境においては,

取り扱うランドマークが増加してしまうため,

リアルタイムで SLAM を行うことが不可能になってしまう.

現実の問題として,このアルゴリズムでは

リアルタイムで取り扱えるランドマークの数は数百個が限界であることが判明している [3].



二つ目の問題はデータの対応付け失敗の問題である.

地図を作成するには,

前の観測における特徴点と現在の観測における特徴点を対応付ける必要がある.

この作業を行うことにより,

これまでに作成した地図と,現時刻において観測した観測値とを関連付ける.

しかしこの対応付けが失敗した時,

つまり観測値を異なるランドマークに対応付けてしまった場合,

SLAM には壊滅的な誤差が生まれてしまう.

なぜなら,ある観測値を違ったランドマークに対応付けてしまったために,

その分だけ地図がずれてしまう.

そしてその後の対応付けも,

以前作成した誤差を含んだ地図に対して行うため,

地図の誤差が増加してしまうのである.

このように EKF を使用した SLAM アルゴリズムの場合,

一度,データの対応付けに失敗してしまうと,

SLAM に壊滅的な誤差が生じてしまい,

計算が発散してしまう可能性が高い.

このように従来の SLAM には,

計算時間の増加とデータの対応付けの失敗に対する脆弱性という

大きな二つの解決すべき問題があった.



2002 年,この 2 つの問題を解決するため,

M Montemerlo らは新しい SLAM のアルゴリズムを開発した.

それが FastSLAM アルゴリズムである [3]



[2] H. Durrant-Whyte and T. Bailey,“ Simultaneous Localisation and Mapping (SLAM): Part
I The Essential Algorithms, ” Robotics and Automation Magazine, vol. 13, pp. 99-110,
2006.
[3] M. Montemerlo, S. Thrun, D. Koller, and B. Wegbreit. Fast-SLAM: A factored solution to
the simultaneous localization andmapping problem. Proc. AAAI, 2002.
[7] R. Smith, M. Self, and P. Cheeseman,“ Estimating uncertain spatial relationships in
robotics, ” in Autonomous Robot Vehicles, I.J. Cox and G.T. Wilfon, Eds, New York
Springer Verlag, 1990, pp. 167-193.
[8] G. Dissanayake, P. Newman, S. Clark, H.F. Durrant-Whyte,and M. Csorba. A solution to
the simultaneous localisation and map building (SLAM) problem. IEEE Transactions of
Robotics and Automation, 2001.
[9] Y. Liu and S. Thrun. Results for outdoor-SLAM using sparse extended information filters.
Submitted to ICRA-03.
[10] S. Thrun and M. Montemerlo, “ The graphslam algorithm with applications to large-scale
mapping of urban structures, ” IJRR, vol. 25.