Regressionsfläche ermitteln (Geodäsie/Vermessung)
komplexor, Wednesday, 24.05.2017, 10:44 (vor 2740 Tagen)
Hallo,
ich habe ein 9x9 Grid mit 81 Beobachtungswerten, also quasi eine Beobachtungsmatrix.
Für diese Matrix würde ich gerne eine Regressionsfläche berechnen, genauer gesagt die Varianzen.
Für das funktionale Modell würde ich die folgende Funktion verwenden wollen:
f(x,y) = a0x+a1y+a2x^2+a3y^2+a4xy
Leider ist das Thema Ausgleichung bei mir schon lange lange her und mir ist nicht mehr ganz klar wie ich weiter vorgehen muss.
Ich erinnere mich noch an einen Beobachtungsvektor, aber habe keine Ahnung, wie ich mit einer Beobachtungsmatrix umgehen muss.
Kann mir jemand etwas auf die Sprünge helfen, das wäre klasse.
Danke und Gruß
Regressionsfläche ermitteln
Eddi, Wednesday, 24.05.2017, 14:15 (vor 2740 Tagen) @ komplexor
Hallo,
kannst Du x und y als fehlerfrei annehmen oder gelten z=f(x,y),x und y als fehlerbehaftet?
Eddi
Regressionsfläche ermitteln
MichaeL , Bad Vilbel, Wednesday, 24.05.2017, 15:43 (vor 2740 Tagen) @ komplexor
bearbeitet von MichaeL, Wednesday, 24.05.2017, 21:18
Hallo,
Für das funktionale Modell würde ich die folgende Funktion verwenden wollen:
f(x,y) = a0x+a1y+a2x^2+a3y^2+a4xy
Kann mir jemand etwas auf die Sprünge helfen, das wäre klasse.
Du benötigst die Designmatrix A
, die die partiellen Ableitungen nach den Unbekannten enthält. Diese sieht bei Dir recht einfach aus:
Ferner kannst Du mit Deinem funktionalen Zusammenhang den Widerspruchsvektor w
aufstellen. In Abhängigkeit von Deiner Antwort auf Eddi's Frage ergeben sich nun unterschiedliche Lösungsstrategien - Stichwort Gauß-Markov oder Gauß-Helmert-Modell. Eine einfache Variante wäre bspw.
zu bestimmen und diesen dx
-Vektor an den Näherungswerten anzubringen und eine weitere Ausgleichung (Iteration) mit der verbesserten Lösung zu bestimmen.
Viele Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Regressionsfläche ermitteln
Eddi, Wednesday, 24.05.2017, 21:11 (vor 2740 Tagen) @ MichaeL
Hallo Micha,
die Unbekannten X1 bis X5 sind doch die Koeffizienten a0 bis a4 und damit hast Du doch ein stinknormales überbestimmtes lineares Gleichungssystem mit den Werten x, y, x^2, y^2 und xy als Elemente der Verbessungsgleichung, da brauchst Du keine Ableitungen und Näherungen, oder stehe ich gerade auf dem berühmten Schlauch?
Eddi
Regressionsfläche ermitteln
MichaeL , Bad Vilbel, Wednesday, 24.05.2017, 21:26 (vor 2740 Tagen) @ Eddi
bearbeitet von MichaeL, Wednesday, 24.05.2017, 22:13
Hi,
mit den Werten x, y, x^2, y^2 und xy als Elemente der Verbessungsgleichung,
Stimmt, da hatte ich mich vertan. Ich habe mein Posting korrigiert.
da brauchst Du keine Ableitungen und Näherungen, oder stehe ich gerade auf dem berühmten Schlauch?
Die Koeffizienten, die Du nun genannt hast, erhältst Du ja praktisch durch eine Ableitung. Wenn x und y Beobachtungen sind, dann benötigst Du auch für die Unbekannten eine Näherung, da Du dann die partiellen Ableitungen nach den Beobachtungen auch noch bilden musst.
Ich hoffe, ich habe mich nicht wieder vertippt
Viele Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Regressionsfläche ermitteln
Eddi, Wednesday, 24.05.2017, 21:58 (vor 2739 Tagen) @ MichaeL
Für den einfachen Fall der fehlerfrei angenommenen x/y komme ich aber ohne Ableitung und Näherung aus, denn die Gleichungen sind ja schon linear, oder?
Viele Grüße
Eddi
Regressionsfläche ermitteln
MichaeL , Bad Vilbel, Wednesday, 24.05.2017, 22:11 (vor 2739 Tagen) @ Eddi
Hi,
die Gleichungen sind ja schon linear, oder?
Auch lineare Gleichungen besitzen eine Ableitung (die einfach dem Vorfaktor entspricht).
komme ich aber ohne Näherung aus
Ja, dem habe ich nicht widersprochen.
Was mir eigentlich noch fehlt, sind die Werte der "Beobachtungen" für f(x,y) = z
.
Schönen Abend
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Regressionsfläche ermitteln
komplexor, Thursday, 01.06.2017, 10:57 (vor 2732 Tagen) @ MichaeL
Hallo Zusammen,
zunächst besten Dank für die Unterstützung.
Ich habe mich jetzt mal rangesetzt und die Designmatrix aufgestellt und dann die mir bekannten Ausgleichungsschritte ausgeführt. Leider erhalte ich aber Koeffizienten, mit denen die Residuen zwischen der beobachteten und der ausgeglichene Fläche viel zu groß sind.
Anbei habe ich mal die Excel mit der Berechnung hochgeladen.
http://filehorst.de/d/birHDsAb
Hier kann man auch ein Plot der beobachteten Fläche sehen. Wenn man dann die Funktion mit den berechneten Koefizienten mal bei Wolfram Alpha eingibt, sieht man das die Fläche stark von der beobachteten Fläche abweicht.
http://www.wolframalpha.com/input/?i=f(x,y)+%3D+69907*x%2B53940*y%2B-7241*x%5E2%2B-2603*y%5E2%2B1447*xy
Wäre nett wenn ihr euch mal die Berechnung anschaut und mir sagen könnt was ich falsch gemacht habe.
VG
Regressionsfläche ermitteln
MichaeL , Bad Vilbel, Friday, 02.06.2017, 10:48 (vor 2731 Tagen) @ komplexor
Hi,
hier mal meine Lösung, die ich in Matlab/Octave erhalte. Mein verwendeter Code ist unten angefügt. Die Parameter sind
a = 63775.507166733 51677.4676852791 -3567.73091416195 -1523.1582338226 -2126.29367766202
Wenn ich mir den Plot so ansehe, passt Dein Modell nur bedingt.
Viele Grüße
Micha
clear all close all format long g clc d = [ 1 1 304942 1 2 308298 1 3 312481 1 4 317282 1 5 321781 1 6 324225 1 7 324347 1 8 323188 2 1 316688 2 2 320063 2 3 324747 2 4 330096 2 5 336042 2 6 339211 2 7 339371 2 8 338562 3 1 330269 3 2 332783 3 3 336982 3 4 340340 3 5 344769 3 6 350510 3 7 352527 3 8 353029 4 1 345745 4 2 346596 4 3 350866 4 4 353812 4 5 357153 4 6 362872 4 7 366183 4 8 367879 5 1 346414 5 2 354549 5 3 359087 5 4 362396 5 5 366733 5 6 371214 5 7 375946 5 8 379165 5 9 381900 5 10 384032 6 1 357128 6 2 366211 6 3 372577 6 4 377025 6 5 382663 6 6 387395 6 7 392556 6 8 395889 6 9 398911 6 10 401496 7 1 369030 7 2 377191 7 3 384684 7 4 391385 7 5 397565 7 6 402845 7 7 407988 7 8 412800 7 9 416911 7 10 420125 8 1 381403 8 2 390747 8 3 399302 8 4 407526 8 5 414101 8 6 418549 8 7 424218 8 8 430747 8 9 435959 8 10 439909 9 1 393694 9 2 405124 9 3 416535 9 4 425279 9 5 432164 9 6 437040 9 7 443414 9 8 450798 9 9 456610 9 10 461182 10 1 409254 10 2 422472 10 3 437033 10 4 445715 10 5 452849 10 6 460184 10 7 467327 10 8 473766 10 9 479467 10 10 484383 11 1 429360 11 2 443021 11 3 456661 11 4 466642 11 5 475168 11 6 483763 11 7 491689 11 8 498437 11 9 504377 11 10 509641 12 1 451589 12 2 465066 12 3 477927 12 4 489084 12 5 499054 12 6 508455 12 7 517051 12 8 524570 12 9 531150 12 10 536935 ]; y = d(:,1); x = d(:,2); z = d(:,3); J = [x, y, x.^2, y.^2, x.*y]; a = J\z; u = a(1).*x+a(2).*y+a(3).*x.^2+a(4).*y.^2+a(5).*x.*y; plot3(x,y,z, '.',... x,y,u,'o') legend({'Daten'; 'Ausgleichung'}) grid on axis square xlabel('X'); ylabel('Y'); zlabel('Z');
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Tags:
Ausgleichung, Regressionsfläche, Matlab, Octave
Regressionsfläche ermitteln
Eddi, Thursday, 25.05.2017, 11:18 (vor 2739 Tagen) @ komplexor
Hallo nochmal,
falls Du die x- und y-Werte als fehlerfrei betrachten kannst (nur die z=f(x,y)- Werte sollen verbessert werden!) und Dir Micha's Angaben noch nicht reichen, melde Dich mal bei mir unter
etwas-vermessen@gmx.de
ich kann Dir den Berechnungsgang und ein durchgerechnetes Beispiel zusammenstellen.
Viele Grüße von
Eddi
Regressionsfläche ermitteln
MichaeL , Bad Vilbel, Thursday, 25.05.2017, 12:09 (vor 2739 Tagen) @ Eddi
Hi Eddi,
ich weiß Dein Engagement durchaus zu schätzen aber ich fände es schöner und auch nachhaltiger, wenn wir als Mitleser bei der Lösung involviert sind und nicht alles im Hintergrund per Mail abläuft. Für Suchende mit einer ähnlichen Problemstellung ergibt sich ein Benefit, wenn sie die Lösung auch direkt vorfinden.
Viele Grüße
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences
Regressionsfläche ermitteln
Eddi, Thursday, 25.05.2017, 13:00 (vor 2739 Tagen) @ MichaeL
Okay, da habe ich wohl was falsch verstanden.........
Ich wollte nur verhindern, dass sich andere Teilnehmer langweilen, wenn es zu speziell wird.
Für die Zukunft gebongt
Eddi
Regressionsfläche ermitteln
MichaeL , Bad Vilbel, Thursday, 25.05.2017, 13:26 (vor 2739 Tagen) @ Eddi
Hi Eddi,
wie gesagt, ich will Dich gar nicht reglementieren und finde Deine Hilfestellungen hier sehr löblich. Es wäre nur schön, dass wenn eine Lösung am Ende abgeleitet wird für ein Problem, diese auch irgendwie wieder für alle sichtbar wird.
Ich kann mir gut vorstellen, dass es einige Mitlese bei den Threads gibt. Diese würde man nicht vor den Kopf stoßen.
Ich wollte nur verhindern, dass sich andere Teilnehmer langweilen, wenn es zu speziell wird.
Ich denke, hier sind alle in der Lage bestimmte Postings/Threads zu ignorieren.
Für die Zukunft gebongt
Vielen Dank und schönen Feiertag
Micha
--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences