Ausgleichsverfahren nach Gauß-Markov (Geodäsie/Vermessung)

Benjamin @, Mittwoch, 12.09.2018, 17:03 (vor 62 Tagen)

Hallo,

momentan sitze ich an einer Aufgabenstellung zur Ausgleichsrechnung nach Gauß-Markov und habe massiv schwierigkeiten, mit Hilfe der Literatur die Mathematischen Grundlagen auf die Praxis zu beziehen.

Mit Hilfe eines Lasernetz soll im Raum die Positioniergenauigkeit einer Werkzeugmaschine vermessen werden. Die gesuchten Unbekannten sind alle Freiheitsgrade (3x Rotation, 3x Translation).

Wie muss der Beobachtungsvektor aussehen? Einfach nur die Messwerte? Kommt die Information zur ausrichtung der Laserbahnen in den Beobachtungsvektor, oder in den Funktionenvektor?

Der Funktionenvektor Phi müsste die 4x4-Transformations-Matrix sein?
Phi=\begin{pmatrix}& R && V \\ 0 &0& 0 & 1 \end{pmatrix}

Wie stelle ich die Standartabweichung a priori der Gewichtseinheit für die Gewichtsmatrix auf?

Wäre schön, wenn mir jemand in einfachen Worten helfen könnte!
Danke für die Hilfe!

Avatar

Ausgleichsverfahren nach Gauß-Markov

MichaeL ⌂, Bad Vilbel, Donnerstag, 13.09.2018, 09:16 (vor 62 Tagen) @ Benjamin

Hallo,

Mit Hilfe eines Lasernetz soll im Raum die Positioniergenauigkeit einer Werkzeugmaschine vermessen werden.

Was ist ein Lasernetz?

Die gesuchten Unbekannten sind alle Freiheitsgrade (3x Rotation, 3x Translation).

Also die Parameter eine räumlichen (Helmert-)Transformation?

Einfach nur die Messwerte?

Ja, im Prinzip schon. Der Beobachtungsvektor wird dann aber häufig noch in gekürzter Form benötigt und enthält dann die Widersprüche zwischen den tatsächlichen Beobachtungen und den Werten, die sich aus Deinen Näherungswerten und dem funktionalen Modell ergeben.

Kommt die Information zur ausrichtung der Laserbahnen in den Beobachtungsvektor,

Was sind die Informationen zur Ausrichtung? Der Beobachtungsvektor enthält die Daten, die Du gemessen hast. Wenn Du die Ausrichtung gemessen hast, Du sie also kennst, dann würden diese Informationen in den Beobachtungsvektor kommen. Wenn es aber die Information ist, die Du eigentlich suchst, dann kommen sie in den Unbekanntenvektor (den Du vermutlich mit Funktionenvektor meinst).

Der Funktionenvektor Phi müsste die 4x4-Transformations-Matrix sein?

Jetzt bin ich mir nicht sicher, was Du meinst. Ein Vektor kann letztlich keine Matrix sein. Hier stimmt etwas nicht in Deiner Beschreibung. Üblicherweise hat man ein Modell der Form

A \cdot x = l

worin A die Koeffizeitnenmatrix ist mit den (linearisierten) funktionalen Beziehungen, x der Vektor der unbekannten Parameter und l der Beobachtungsvektor sind.

Wie stelle ich die Standartabweichung a priori der Gewichtseinheit für die Gewichtsmatrix auf?

Die ist frei wählbar und muss nur größer als Null sein. Im einfachsten Fall setzt Du diese zu 1 (eins).

Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Tags:
Transformation, Parameterschätzung, Gauß-Markov-Modell

Ausgleichsverfahren nach Gauß-Markov

Benjamin @, Donnerstag, 13.09.2018, 13:17 (vor 62 Tagen) @ MichaeL

Danke für die Antwort.

Nochmal zum praktischen Problem:
Im Arbeitsraum einer Werkzeugmaschine (WZM) sind Lasersensoren angeordnet. Wegen der hohen Ungenauigkeit der Winkelauswertung soll die genaue Ausrichtung der Laserbahnen unbekannt sein. Der Werkzeugkopf der WZM fährt entlang der Laserbahnen und es soll dessen Positioniergenauigkeit aus den Beobachtungen ermittelt werden, quasi als vergleich zwischen gemessener Ist-Position und Soll-Position in der Maschinensteuerung.

Die Unbekannten sollen, wie du sagst, die 6 Parameter der Transformationsmatrix sein, keine Maßsstabsskalierung.


Die Berechnung nach Gauß-Markov habe ich soweit aufgestellt, nur bin ich mir unsicher, wie der Funktionenvektor aussehen muss.

\{L} = \phi (\{X})
Die Beobachtungen werden durch den Funktionenvektor der Unbekannten ausgedrückt.
Unbekanntenvektor: X=(x,y,z,A,B,C)^T
Funktionenvektor: \phi(X)=(\phi_1(X), \phi_2(X), ... , \phi_n(X))^T

Vieleicht auch erstmal an einen leichten eigenen Beispiel erklären? :)

Danke dir

Avatar

Ausgleichsverfahren nach Gauß-Markov

MichaeL ⌂, Bad Vilbel, Donnerstag, 13.09.2018, 22:34 (vor 61 Tagen) @ Benjamin

Hallo,

Im Arbeitsraum einer Werkzeugmaschine (WZM) sind Lasersensoren angeordnet.

Also reine Distanzmesser etwa Lasertracer oder etwas in der Richtung. Ein reines Trilaterationsnetz also?

Die Unbekannten sollen, wie du sagst, die 6 Parameter der Transformationsmatrix sein, keine Maßsstabsskalierung.

Okay.

Die Berechnung nach Gauß-Markov habe ich soweit aufgestellt, nur bin ich mir unsicher, wie der Funktionenvektor aussehen muss.

Wenn Du also nur Streckenmessungen durchführst, dann ergibt sich eine Position doch über den räumlichen Bogenschnitt. Mehrere Distanzmesser bestimmen also die Abstände zum selben Punkt. Habe ich das korrekt verstanden? Dein Funktionenvektor würde dann einfach der Satz des Pythagoras sein.

Die Beobachtungen werden durch den Funktionenvektor der Unbekannten ausgedrückt.

Korrekt. Die Unbekannten sind dann aber nicht nur die sechs Parameter der Transformation sondern auch die Punkte, die die Distanzmesser eingemessen haben.

Unbekanntenvektor: X=(x,y,z,A,B,C)^T

A, B, C sind die Drehungen?

Vieleicht auch erstmal an einen leichten eigenen Beispiel erklären? :)

Ich bin mir nicht sicher, ob ich Deinen Messaufbau verstanden habe. Werden die Positionen der WZM von mehren Distanzmessern eingemessen? Sind es verschiedene Punkte an der WZM oder nur ein Punkt der in verschiedenen Stellungen der WZM gemessen wird. Kurzum, Deine Problembeschreibung ist für mich nicht ausreichend. Eine 2D-Skizze würde vermutlich sehr zum Verständnis beitragen. Über einen Bilddienst Deiner Wahl kannst Du diese hier im Forum präsentieren. Ich mach mal den Anfang. Die Dreiecke sind bekannte Punkte und die Kreise sind ein Punkt, der in verschiedenen Positionen der WZM gemessen wurde, wenn diese sich entlang einer Bahn bewegt. Die Striche symbolisieren die Messung. Ist dies Dein Szenario?

[image]


Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Ausgleichsverfahren nach Gauß-Markov

Benjamin, Montag, 17.09.2018, 17:10 (vor 57 Tagen) @ MichaeL

Kannst du mir nochmal erklären, warum die Standartabweichung der Gewichtseinheit s_0 1 gesetzt werden kann?
Dann würden die Komponenten den Gewichtsmatrix die Einheit Meter haben?
p_i=s_0/s_i

s_i ist die Standartabweichung der Beobachtungen

Ich werde die Woche eine Abbildung erstellen, damit deutlich wird, was mein Problem ist.
Momentan ist die Aufgabenstellung noch nicht konkret genug.

Ausgleichsverfahren nach Gauß-Markov

Eddi, Montag, 17.09.2018, 17:44 (vor 57 Tagen) @ Benjamin

Hallo,
kleine Korrektur:

p=(s0)^2/(si)^2

Avatar

Ausgleichsverfahren nach Gauß-Markov

MichaeL ⌂, Bad Vilbel, Montag, 17.09.2018, 19:23 (vor 57 Tagen) @ Benjamin

Hi,

da man diesen vor allem so wählt, dass man bestimmte Berechnungen vereinfachen kann. Wenn man aber EDV gestützt ausgleicht, ist dieser Vorteil praktisch vernachlässigbar. Das Ergebnis der Ausgleichung wird durch den Faktor nicht verändert.

Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Ausgleichsverfahren nach Gauß-Markov

Benjamin, Donnerstag, 20.09.2018, 19:15 (vor 54 Tagen) @ MichaeL

Hallo,
ich bin leider noch nicht dazu gekommen, eine Abbildung zu erstellen. Ich versuche mal, das Problem erneut zu beschreiben.

Es sind virtuelle Soll-Koordinaten des Werkzeugkopfs aus der Maschinensteuerung gegeben. Die Ungenauigkeiten der Ist- und Soll-Position des Werkzeugkopfs (Versatz, Kippung) soll ermittelt werden. Dazu werden 3 Reflektoren zur Kippungs- und Positionierungsmessung eingespannt.
Gegeben ist auch die Position der Laserinterferometer.

Jetzt stellen wir uns vor, wir Messen die Beobachtung S1 zwischen Laser 1 und Reflektor 1.

S1=|L1-R1|

die Position von R1 ist nicht bekannt.
Es seien außerdem zwei Transformationsmatrizen T1 und T2.
T1 beschreibt 6 Fehler zwischen Ist- und Soll-Position des Werkzeugkopfs (3x Versatz; 3x Kippung).
T2 beschreibt den Versatz des Reflektors zur Ist-Position des Werkzeugkopfs.

Wäre das erste Argument des Funktionenvektors dann:
\phi_1=|L1-T1*T2*V2|

Einzelne Messbahnen sind noch nicht gegeben. Ich möchte erst ein Modell aufstellen.

Vielen Dank!

Gauß-Markov Ausgleichsverfahren

Benjamin @, Samstag, 20.10.2018, 11:54 (vor 25 Tagen) @ Benjamin

Hallo,

ich habe Probleme, die Berechnung des Ausgleichsverfahren aufzustellen.
Kann mir einer bitte folgendes erklären:
Letztendlich wird der Unbekanntenvektor X_Dach gesucht, der sich aus Näherungswerten X_0 + kleine Beträge der Unbekannten x_Dach zusammen setzt.

Für x gilt:
x_Dach=(A^T*P*A)^-1 *A^T*l

A...Designmatrix
P...Gewichtsmatrix
l...gekürzte Beobachtung

Um auf Zahlenwerte im Unbekanntenvektor x_Dach zu kommen, darf die Designmatrix keine unbekannten Variablen enthalten?

Die Designmatrix ist ja die Partielle Ableitung vom Funktionenvektor Phi(X) durch Unbekanntenvektor X, die Jacobische Matrix.
Muss ich dann in die berechnete Designmatrix die Näherungswerte X_0 einsetzen?

Danke!

Avatar

Gauß-Markov Ausgleichsverfahren

MichaeL ⌂, Bad Vilbel, Samstag, 20.10.2018, 12:04 (vor 25 Tagen) @ Benjamin

Hallo,

Muss ich dann in die berechnete Designmatrix die Näherungswerte X_0 einsetzen?

Um die Jacobi-Matrix A aufzustellen, sind im nicht-linearen Fall Näherungswerte vorzugeben, die dann zur Linearisierung verwendet werden, sodass das lineare Ersatzproblem gelöst werden kann.

Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Gauß-Markov Ausgleichsverfahren

Benjamin, Samstag, 20.10.2018, 12:27 (vor 25 Tagen) @ MichaeL

"Bei hinreichend guten Näherungswerten X_0 der Unbekannten, kann die Verbesserungsgleichung durch eine Reihenentwicklung nach Tayler an den Näherungswerten X_0 beschrieben werden, die nach den ersten Glied abgebrochen wird."

Für die gekürzten Beobachtungen l_Dach hätte ich gerechnet:
l_Dach=A*x_Dach

mit A als partielle Ableitung Phi nach X und für die Unbekannten X=[x1, x2, x3, ..., xi] die entsprechenden Näherungswerte einsetzen?

Avatar

Gauß-Markov Ausgleichsverfahren

MichaeL ⌂, Bad Vilbel, Samstag, 20.10.2018, 12:53 (vor 25 Tagen) @ Benjamin

Hallo,

Für die gekürzten Beobachtungen l_Dach hätte ich gerechnet:
l_Dach=A*x_Dach

Es gilt

l + v = A \hat{x}

Demnach ist der ausgeglichene gekürzte Beobachtungsvektor

\hat{l} = l + v = A \hat{x}

Der gekürzte Beobachtungsvektor vor der Ausgleichung ist jedoch

l = L_0 - \phi(X_0)

Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Gauß-Markov Ausgleichsverfahren

Benjamin, Samstag, 20.10.2018, 14:11 (vor 25 Tagen) @ MichaeL

Nein, dass kann nicht sein. Die Näherungswerte der Beobachtungen L_0 berechnen sich ja aus Phi(X_0).
L_0=Phi(X_0)
Es müsste sein l=L-L_0.
Den Rest habe ich auch so.
Die Designmatrix wird so berechnet wie ich geschrieben habe?

Danke!

Avatar

Gauß-Markov Ausgleichsverfahren

MichaeL ⌂, Bad Vilbel, Samstag, 20.10.2018, 15:14 (vor 25 Tagen) @ Benjamin

Hallo,

Die Näherungswerte der Beobachtungen L_0 berechnen sich ja aus Phi(X_0).

Wer hat behauptet, dass L_0 die Näherungswerte der Beobachtungen sind? In meiner Gleichung sind es die originären Beobachtungen.

Die Designmatrix wird so berechnet wie ich geschrieben habe?

Ja.


Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Gauß-Markov Ausgleichsverfahren

Benjamin, Samstag, 20.10.2018, 19:25 (vor 24 Tagen) @ MichaeL

Okay, danke.
Hast mir weitergeholfen

Gauß-Markov Ausgleichsverfahren

Benjamin, Donnerstag, 25.10.2018, 13:59 (vor 20 Tagen) @ Benjamin

Okay, jetzt habe ich das Programm dazu geschrieben, bei der Berechnung der kleinen Beträge der Unbekannten kommt eine Fehlermeldung, da die Inverse nicht berechnet werden kann. Tatsächlich ist die Determinante der Matrix Null. Kann das vorkommen, wenn Näherungswerte sehr stark abweichen? Ich habe bis jetzt nur mit ausgedachten Werten gerechnet, die aber eigentlich hinkommen müssten.

Die gleichung lautet ja:
\^{x}=inv(A^T*P*A)*A^T*P*l
mit
A...Designmatrix
P...Gewichtsmatrix
l...gekürzte Beobachtungen

P und l sehen plausibel aus.
Der Funktionenvektor kann allerdings auch nicht falsch sein. Der Funktionenvektor ist der Abstand der Koordinate L*T1 und P*T2*Ti. T sind Transformationsmatrizen mit jeweils 6 Unbekannten (=6 Freiheitsgrade). Ti ist entweder T3, T4 oder T5. Also kommen nicht alle Unbekannten in jedem Phi vor. Die Transformationsmatizen sind korrekt aufgestellt.

Avatar

Gauß-Markov Ausgleichsverfahren

MichaeL ⌂, Bad Vilbel, Donnerstag, 25.10.2018, 14:19 (vor 20 Tagen) @ Benjamin

Hallo,

Tatsächlich ist die Determinante der Matrix Null. Kann das vorkommen, wenn Näherungswerte sehr stark abweichen?

Theoretisch könnte das passieren. Wahrscheinlicher ist es aber, dass Dein Gleichungssystem tatsächlichen einen Defekt hat. Solche Situationen treten in der Geodäsie im Kontext der freien Netzausgleichung auch auf. Die Messungen, die durchgeführt werden (Strecken, Winkel, ...) beschreiben letztlich nur relative Beziehungen zwischen den Punkten im Netz. Eine absolute Punktlage ist demnach nicht mit diesen Messungen zu rekonstruieren. Die Matrix A hat in diesem Fall keinen vollen Spalten-Rang, sodass auch die Normalgleichung A'*P*A keinen vollen Rang hat. In Matlab kannst Du den Rang direkt abfragen mit rank(A) bzw. rank(N). Dies liefert Dir die Anzahl der linear-unabhängigen Gleichungen. Diese Zahl wird vermutlich bei Dir kleiner sein, als die Anzahl Deiner Gleichungen. Kannst Du das prüfen?

Zum Beheben des Defektes gibt es mehrere Konzepte. Bevor Du diese anwendest, solltest Du sicherstellen, dass Du bei der Formulierung Deines Problems nicht schon einen Fehler gemacht hast. Eine Variante ist es, die Pseudoinverse zu verwenden. Alternativ kann man sich Bedingungsgleichungen überlegen und die Normalgleichung rändern, sodass das erweiterte System regulär wird. Letzteres ist die Variante, die in der Geodäsie Anwendung findet, da man diese Bedingungsgleichungen geometrisch leicht interpretieren kann.

Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Gauß-Markov Ausgleichsverfahren

Benjamin, Donnerstag, 25.10.2018, 14:40 (vor 20 Tagen) @ MichaeL

rank(A)=5 bei 150 Beobachtungen.
Dann wird das so sein, dass die ausgedachten Beobachtungen und Näherungswerte einfach nicht geeignet sind. Ich werde das dann mit den richtigen Werten überprüfen.

Danke!

Avatar

Gauß-Markov Ausgleichsverfahren

MichaeL ⌂, Bad Vilbel, Donnerstag, 25.10.2018, 14:57 (vor 20 Tagen) @ Benjamin

Hallo,

rank(A)=5 bei 150 Beobachtungen.

Die Anzahl der Beobachtungen ist hier nicht relevant, da A vollen Spalten-Rang haben muss. Wie viele Spalten hat Deine A bzw. N Matrix?


Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Gauß-Markov Ausgleichsverfahren

Benjamin, Donnerstag, 25.10.2018, 15:06 (vor 20 Tagen) @ MichaeL

Meine Designmatrix hat 30 Spalten und 150 Zeilen, also 30 Unbekannte und 150 Beobachtungen. Aber die Beobachtungen sind nicht sehr zuverlässig, nur um zu überprüfen, ob das Programm sauber durchläuft.

Avatar

Gauß-Markov Ausgleichsverfahren

MichaeL ⌂, Bad Vilbel, Donnerstag, 25.10.2018, 15:17 (vor 20 Tagen) @ Benjamin

Hallo,

Meine Designmatrix hat 30 Spalten

Okay. Damit das Gleichungssystem regulär wird - es also eine eindeutige Lösung für Dein Problem liefert -, muss rang(A) == 30 sein.

Vielleicht mal ein einfaches Beispiel aus der Formanalyse, um die Sache zu verdeutlichen. Eine Ebene soll geschätzt werden aus Punkten. Die Ebenengleichung lautet

n^Tx_i=d

hierin sind x ein Punkt der Ebene, n der Normalenvektor und d ein Abstandsparameter. Wenn Du nun mindestens drei Punkte hast (die nicht auf einer Gerade liegen), kannst Du n und d bestimmen. Das Gleichungssystem wird aber einen Defekt von 1 aufweisen - rang(A) = 3 aber die Anzahl der Unbekannten/Spalten in A ist 4. Der Defekt entsteht, weil n ein (Richtungs-)Vektor beliebiger Länge sein kann. Eine Änderung der Länge führt somit zu einer Änderung von d. Demnach sind n und d nicht unabhängig voneinander schätzbar.

Zur Behebung des Defektes reicht es demnach aus, z.b norm(n) == 1 zu fordern. In dem Fall erhält man die Hessische Normalform der Ebene und d ist der kürzeste Abstand vom Ursprung. Die hinzugefügte Bedingung ist geometrisch leicht zu interpretieren, sodass man keine Pseudoinverse oder ähnliches benötigt. Alternativ hätte man auch über d verfügen (z.B. d == 1).

Viele Grüße
Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

RSS-Feed dieser Diskussion