Rein rotierende kleinste Quadrate stimmen überein

11

Könnte jemand eine Methode für das folgende Problem der kleinsten Quadrate empfehlen:

finde RR3×3 , das minimiert: i=0N(Rxibi)2min , wobei R eine einheitliche (Rotations-) Matrix ist.

Ich könnte eine ungefähre Lösung erhalten, indem ich i=0N(Axibi)2min (beliebiges AR3×3 ) minimiere Matrix A und:

  • Berechnen der SVD: A=UΣVT , Fallenlassen von Σ und Annähern von RUVT
  • Berechnung der polaren Zerlegung: A=UP , Ablegen der Nur-Skala-Symmetrie (und in meinem Fall positiv definitiv) P und Annäherung an RU

Ich könnte auch die QR-Zerlegung verwenden, aber sie wäre nicht isometrisch (würde von der Wahl des Koordinatensystems abhängen).

Kennt jemand einen Weg, dies zumindest ungefähr, aber mit besserer Annäherung als die beiden oben genannten Methoden zu tun?

Sergiy Migdalskiy
quelle
4
Ich benutzte Kabsch-Algorithmus für ein ähnliches Problem, das im Wesentlichen die SVD - Methode ist , dass Sie erwähnt en.wikipedia.org/wiki/Kabsch_algorithm wenn ich nicht falsch die SVD - Methode bin die Gleichung minimiert, ich bin nicht sicher , was Sie durch ein bedeuten ' bessere Methode?
isti_spl
2
OMG Ich habe gerade die gleiche Antwort IRL bekommen. Vielen Dank! Anscheinend funktioniert das Fallenlassen von sei denn, ist negativ. In diesem Fall beinhaltet die optimale Drehung eine Reflexion (und jede Drehung ist ebenso schlecht). Dies beantwortet technisch die Frage, ob jemand eine billigere Methode als die Berechnung von SVD kennt. Es ist eine 3x3-SVD, aber ich muss eine Menge davon machen (dies ist für die FEM-Simulation und das Problem wird für jede FE berechnet). Außerdem wird das Problem anscheinend als Wahba-Problem bezeichnet, und es erscheint anscheinend in der Luftfahrt, um ein Fahrzeug zu bestimmen Orientierung. d e t ( U V T )Σdet(UVT)
Sergiy Migdalskiy
Ich habe diese verwandten Probleme gesehen: scicomp.stackexchange.com/questions/7552/…
isti_spl
@isti_spl: Könnten Sie bitte Ihren Kommentar zu einer Antwort migrieren?
Geoff Oxberry

Antworten:

9

Das Problem heißt Wahba-Problem , ein Algorithmus dafür heißt Kabsch-Algorithmus , und der später populärere heißt Davenport-q-Methode . Es wird anscheinend in der Luftfahrt verwendet und studiert, um die Ausrichtung des Fahrzeugs zu bestimmen. Es gibt viele Bewertungen zu den Methoden.

Beachten Sie, dass die beste Anpassung Reflexion beinhalten kann.

Die Kabsch-Methode berechnet eine 3x3-Kovarianzmatrix-SVD und lässt den Term fallen (Modulo-One-Reflexion, die normalerweise durch Negieren der letzten Spalte von in der SVD berücksichtigt wird ). Es ist sehr einfach, auf eine andere Anzahl von Dimensionen zu verallgemeinern.U.ΣU

Die Davenport q-Methode wird oft als erster praktischer Algorithmus angepriesen. Vielleicht kann jemand sagen, warum. Es konstruiert auch eine 3x3-Kovarianzmatrix, parametrisiert dann aber die Rotationsmatrix als Funktion einer Quaternion, und das Problem besteht darin, den Max-Eigenwert-Eigenvektor einer symmetrischen 4x4-Matrix zu berechnen.

(Einige der) beliebtesten numerischen Implementierungen heißen QUEST und FOMA . Diese Methoden sind normalerweise eine Variation des Themas der Berechnung des maximalen Eigenwerts, indem das charakteristische Polynom (ein Quartic) ausgeschrieben und optimiert und entweder analytisch gelöst wird (ziemlich aufwendige Berechnungen, Kardano-Formeln durchlaufen) oder mit Newton-Iteration.

Schuster entwickelte und analysierte auch einige iterative Algorithmusvarianten.

Sergiy Migdalskiy
quelle
2
Lesen Sie Humble Problems von Markley , um mehr über die Geschichte der Luft- und Raumfahrt zu erfahren.
Damien