問題設定
平面あるいは空間を格子状に分割し、各格子に占有確率を付与する。すなわち地図とは格子の集合であり、と表記する。Ground truth位置と観測結果から地図を推定するので、を算出する問題と言える。 原理的には、各地図に対して
となり、各地図に対するありうる確率を算出することができるが、地図候補サイズが格子数の指数で増えていくため全ての地図候補を算出することは実用上不可能である。
問題を簡単にするため、地図を各格子に対する部分問題に分割する。すなわち
とする。ただし、この格子は各格子が互いに独立であることを前提にしており、以下の議論ではこの仮定をおく。ただしセンサー分解能より格子が細かい状況等ではこの仮定は不適切である。
地図作成アルゴリズム
逆観測モデルを使うやりかた
逆観測モデルを使って地図を作成するやり方を説明する。「逆観測」と表現しているのは、通常は地図が与えられて観測結果を表現するという因果関係に沿ったモデルを考えるが、その逆変換のモデルであるからである。
占有確率を求める際にオッズを使うと便利である。オッズとは
で確率をオッズに変換して扱うことである。これにより0や1付近の確率がオッズ座標では引き延ばされるので誤差などが蓄積しづらくなるメリットがある。
ここで
となるが、を明示的に書き、後でオッズをとるための形にすると
以上の考察から、時刻までのオッズに関する漸化式を作ると
したがって、時刻の位置と観測結果が得られた時に、センサー観測範囲内の格子について、逆観測モデルを使って漸化式でオッズを更新していけば良い。センサー観測範囲外の格子については当然更新しないことに注意。
直接探索するやりかた
尤度が最も高い地図を探索する方法である。すなわちを最大化するを探索する。
初期地図を適当に設定し(いくつかの格子についてと定めるなど)、この式を最大にするようなを最適化アルゴリズムで探索する問題に帰着される。
センサーが複数ある場合
各センサーで格子に対してが得られたとする。重ね合わせかたにもいろいろな方法があるが、
- どれかのセンサーで観測されたら観測したと判定する場合
- 最も高い確率を出しているセンサーの値を採用する場合
参考
確率ロボティクス (ROBOT books) | Sebastian Thrun, Wolfram Burgard, Dieter Fox, 上田 隆一 |本 | 通販 | Amazon