純粋に回転する最小二乗一致


11

誰でも次の最小二乗問題の方法を推奨できますか?

最小化するを見つける:、ここでRはユニタリ(回転)マトリックス。RR3×3i=0N(Rxibi)2minR

i=0N(Axibi)2min(任意のAR3×3)を最小化することにより、近似解を得ることができますマトリックスAおよび:

  • SVDの計算:A=UΣVTΣをドロップし、R \ approx UV ^ Tを近似RUVT
  • 極分解の計算:A=UP、スケールのみの対称(および私の場合は正定値)Pをドロップし、R \ approx Uを近似するRU

QR分解も使用できますが、アイソメトリックではありません(座標系の選択に依存します)。

少なくともおおよそですが、上記の2つの方法よりも優れた近似でこれを行う方法を知っている人はいますか?


4
私は基本的にあなたが言及したSVD方法で同様の問題のためにKabschのアルゴリズムを使用en.wikipedia.org/wiki/Kabsch_algorithmを 「私はあなたが何を意味するかわからないんだけど、私は間違っていないよ場合SVD方法は、式を最小限に抑えより良い方法?
isti_spl 14年

2
OMG私は同じ返信IRLを受け取りました。ありがとう!が負でない限り、ドロップは動作するようです。その場合、最適な回転には反射が含まれます(回転も同様に悪い)。これは技術的に質問に答えますが、SVDを計算するよりも安価な方法を知っている人はいますか?それは3x3 SVDですが、私はそれらの多くを行う必要があります(これはFEMシミュレーション用であり、問​​題は各FEに対して計算されます)また、問題は明らかにWahbaの問題と呼ばれ、航空機を決定するために明らかに航空工学に現れますオリエンテーション。Σdet(UVT)
セルギーミグダルスキー14年

この関連の問題を見てきました:scicomp.stackexchange.com/questions/7552/…– isti_spl 14
1


@isti_spl:コメントを回答に移行していただけますか?
ジェフオックスベリー14年

回答:


9

この問題はWahbaの問題と呼ばれ、そのアルゴリズムの1つはKabschアルゴリズムと呼ばれ、後のより一般的なものはDavenport q methodと呼ばれます。航空機の方向を決定するために、航空学で使用され、研究されているようです。メソッドについては多くのレビューがあります

最適なものには反射が含まれることがあることに注意してください。

Kabschメソッドは、3x3共分散行列SVDを計算し、項をドロップします(モジュロ1の反射。通常、SVD のの最後の列を否定することで考慮されます)。他の次元数に一般化することは非常に簡単です。ΣU

Davenport qメソッドは、最初の実用的なアルゴリズムとして頻繁に宣伝されています。おそらく誰かがコメントすることができます。また、3x3共分散行列を構築しますが、その後、四元数の関数として回転行列をパラメーター化し、問題は対称4x4行列の最大固有値固有ベクトルを計算する問題になります。

(一部)最も人気のある数値実装はQUESTおよびFOMAと呼ばれます。これらの方法は通常、特性多項式(4次)を書き出して最適化し、解析的に解く(かなり複雑な計算、Kardano式を通過する)か、ニュートン反復で最大固有値を計算するというテーマのバリエーションです。

Schusterはまた、いくつかの反復アルゴリズムのバリアントを開発および分析しました。


2
航空宇宙業界の歴史については、Markley のHumble Problemを読んでください。
ダミアン14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.