劣化対応(Degradation handling)

マルチセンサSLAMシステムのロバスト性は、あるセンサが「嘘をついている」ことに気づく能力によって決まる。劣化対応とは、あるモダリティが信頼できなくなったことを検出し、残りのセンサへ優雅にフォールバックし、劣化したセンサが再び使えるようになったら復帰する、という一連の仕組みのことである。

典型的な劣化シナリオ

2種類のLiDAR故障の違いに注意したい。天候による劣化はノイズを含む、または欠損した測定値を生む(外れ値として検出可能)が、幾何学的な退化はクリーンで自己整合的な測定値を生みつつ、単に運動のある方向を制約できないだけである。後者の方がはるかに危険である。個々の残差だけを見ても何もおかしく見えないためだ。

劣化の検出

残差モニタリング。 サブシステムのレジストレーションや再投影の残差が急上昇したり、使用可能な測定数が急減したりすると、そのサブシステムは自身を劣化状態としてフラグを立てる。LVI-SAMはこのパターンを採用しており、各サブシステムが自身の健全性を監視し、片方の故障がもう片方を巻き込まないようになっている。

推定問題の退化解析。 レジストレーションは線形化された正規方程式を反復して解くが、その情報行列は

H  =  JJ  =  iJiJi,\mathbf{H} \;=\; \mathbf{J}^\top \mathbf{J} \;=\; \sum_i \mathbf{J}_i^\top \mathbf{J}_i ,

であり、各 Ji\mathbf{J}_i は(例えば点対平面の)1つの残差のポーズに関するヤコビアンである。H=kλkvkvk\mathbf{H} = \sum_k \lambda_k \mathbf{v}_k \mathbf{v}_k^\top を固有値分解することで、状態空間の各方向がどの程度制約されているかが分かる。固有値 λk\lambda_k がほぼゼロであれば、その測定値は vk\mathbf{v}_k 方向の運動についてほとんど何も語っていないことになる。

具体例——廊下:視界に平行な2枚の壁しかない場合、すべての点対平面残差の法線 ni\mathbf{n}_i は廊下軸に垂直になる。軸方向の並進はどの残差も変化させないため、対応する J\mathbf{J} の行空間はその方向に成分を持たず、H\mathbf{H} の対応する固有値は崩壊する。最適化器はそれでも「収束」するが——廊下上の任意の位置へと収束してしまう。退化を意識した推定器は λmin\lambda_{\min} を閾値と比較し、退化した方向のみ更新を凍結または重みを下げる(解の再マッピング)ことで、良く制約された成分を保持する。

フォールバックと復帰

フォールバック戦略は次のようなスペクトルをなす。

復帰は検出と同じくらい注意を要する。センサが復帰する際、そのサブシステムは現在の融合状態(ポーズ不確かさの両方)と整合するように再初期化されなければならない。そうしなければ、再導入された測定値は、それが本来改善すべき推定値と食い違って争うことになる。

陥りやすい罠

SLAMにおける意義

融合システムは「センサ同士が互いの弱点を補い合う」という約束のもとに売られているが、その約束は劣化が明示的に検出・処理されて初めて実現される。退化したLiDARスキャンから自信満々のガーベジを与えられた密結合推定器は、状態全体を平気で汚染してしまう。劣化対応は、デモレベルの融合と、トンネル・夜間走行・雨天を生き抜くシステムとを分けるものであり、LVI-SAMやFAST-LIVO2のようなLVIシステムにとって主要な評価軸である。

関連ノート