SE-Sync

Rosen 2019 · 論文

一行要約 — ポーズグラフ最適化に対する初の証明可能に正しいアルゴリズム。SDP緩和をリーマン最適化で解き、大域的最適解を最適性の証明付きで回復する(arXiv 2016、IJRR 2019)。

問題

SE(d)SE(d)同期——nn個の未知の姿勢x1,,xnSE(d)x_1,\dots,x_n \in SE(d)を、そのうちmm個の対のノイズを含む相対変換の観測xij=xi1xjx_{ij} = x_i^{-1}x_jから推定する——は、標準的なSLAMバックエンド問題(ポーズグラフSLAM、カメラ姿勢推定)である。論文の生成モデル(精度τij\tau_{ij}を持つガウス並進ノイズ、集中度κij\kappa_{ij}を持つ等方的ランジュヴァン回転ノイズ)の下で、最大似度推定は次を最小化する。

pMLE=mintiRd,  RiSO(d)(i,j)EκijRjRiR~ijF2+τijtjtiRit~ij22.p^{*}_{\mathrm{MLE}} = \min_{t_i \in \mathbb{R}^d,\; R_i \in SO(d)} \sum_{(i,j)\in\vec{\mathcal{E}}} \kappa_{ij}\big\lVert R_j - R_i\tilde{R}_{ij}\big\rVert_F^2 + \tau_{ij}\big\lVert t_j - t_i - R_i\tilde{t}_{ij}\big\rVert_2^2 .

これは高次元の非凸非線形プログラムであり、一般には計算的に困難である: 局所ソルバー(g2o、GTSAM、Ceres)は真の解から遠い局所最小値に暗黙的に収束することがあり、返された答えが大域的に最適であるかどうかを知る方法がない——安全性が重要な自律システムにとっては受け入れがたい。

手法とアーキテクチャ

pSDP=minZ0  tr(Q~Z)s.t.BlockDiagd×d(Z)=Diag(Id,,Id),p^{*}_{\mathrm{SDP}} = \min_{Z \succeq 0}\; \operatorname{tr}(\tilde{Q} Z) \quad \text{s.t.} \quad \mathrm{BlockDiag}_{d\times d}(Z) = \mathrm{Diag}(I_d,\dots,I_d),

したがってpSDPpMLEp^{*}_{\mathrm{SDP}} \le p^{*}_{\mathrm{MLE}}命題1: β>0\beta > 0が存在し、Q~Qˉ2<β\lVert \tilde{Q} - \bar{Q} \rVert_2 < \betaQˉ\bar{Q}は真の潜在的変換のデータ行列——つまりノイズが臨界閾値未満)ならば、SDPはRSO(d)nR^{*} \in SO(d)^nが正確なMLEである一意の解Z=RTRZ^{*} = R^{*\mathsf{T}}R^{*}を持つ。丸め処理された推定値がSDPの下界に達するときは常に、その等式は大域的最適性の計算的証明となる。

pSDPLR=minYSt(d,r)ntr(Q~YTY).p^{*}_{\mathrm{SDPLR}} = \min_{Y \in \mathrm{St}(d,r)^n} \operatorname{tr}(\tilde{Q}\, Y^{\mathsf{T}} Y).

命題2(Boumalらに基づく): この問題のランク欠損な二次臨界点はすべて大域的最小化子であり、SDP解を与える——そのため、ランク欠損な臨界点が出現するまでランク階層(「リーマン階段」)を上る。

実験結果

(Manopt上のMATLAB実装、階段はr=5r=5に固定され、St(3,5)n\mathrm{St}(3,5)^n上のランダムな点から初期化。ベースライン: オドメトリ初期化のガウス・ニュートン法、コーダル初期化によるGN、コーダル初期化GNに事後検証を加えたもの。)

SLAMにおける意義

SE-Syncは基礎的な問いに答えた: PGOの非凸性にもかかわらず、実際のSLAMで生じるインスタンスは大域的に解くことができ、しかも大域的最適解を得たことを知ることができる。これは証明可能な知覚に関する研究プログラム(点群レジストレーションのためのTEASER++、回転探索のためのQUASAR)を立ち上げ、SLAMバックエンドに検証ツールを与えた——例えば、破損した可能性のあるループクロージャの後に局所ソルバーの答えが実際に最適であるかどうかを確認するために使われる。

関連ノート