Methode der kleinsten Quadrate

Humboldt-Universität Berlin - Institut für Mathematik
Projektpraktikum I / Numerische lineare Algebra WS15/16
H. Rabus
4. Dezember 2015
Serie 4
Abgabetermin:
18. Dezember 2015
Methode der kleinsten Quadrate
Allgemeines
Addieren Sie die Imma-Nummern beider Gruppenpartner, die letzte Stelle bestimmt die
Aufgabe, die von Ihnen zu bearbeiten ist. Es sei x die erste Ziffer Ihrer Aufgabe.
• Lösen Sie Ihre Aufgabe mit Hilfe einer selbst implementierten Python-Datei qr x.py.
Achten Sie auf ausreichendes Exception-Handling.
– Für die Zerlegung der Matrizen können Sie die Methode scipy- oder numpy.linalg.qr verwenden. Überprüfen Sie in jedem Fall die Vollrangbedingung
Ihrer Koeffizientenmatrix!
– Stellen Sie die gegebenen Daten und die zugehörige Lösung grafisch dar.
Dazu nutzen Sie die matplotlib-Bibliothek. Eine Möglichkeit wird unter
http://matplotlib.org/1.3.1/users/pyplot_tutorial.html beschrieben.
Zur Nutzung von pyplot muss das Backend festgelegt werden. Fügen Sie dazu
die Zeilen
from matplotlib import use
use(’TkAgg’)
ein.
– Stellen Sie eine Methode zum Einlesen der benötigten Daten aus einer Datei
zur Verfügung. Zu jeder Messung stehen die Daten in einer Zeile und sind
durch Kommata getrennt. Zum Beispiel:
1.2, 12.8
2.2, 10.7
• Verwenden Sie für Ihre Experimente den gegebenen Datensatz und stellen ihn zur
Eingabe bereit. Führen Sie die Berechnungen zusätzlich für einen modifizierten
Datensatz (Teilmenge, veränderte Daten) durch.
Realisieren Sie Ihr Hauptprogramm in serie4.py.
• Schreiben Sie eine LATEX-Aufgaben-Dokumentation, die Informationen zur Aufgabenstellung, der Theorie, Hinweise für den Nutzer enthält.
Dokumentieren Sie Ihre Experimente und Beobachtungen (inkl. der matplotlibGrafiken (Format .png)), erläutern Sie Ihre Ergebnisse. Gehen Sie auf die Qualität
der Approximation ein.
• Erstellen Sie Programm-Dokumentation mit Sphinx unter Nutzung der doc-Strings
Ihrer Methoden (Output als LATEX) und binden die tex-Quellen in Ihre Aufgabendokumentation ein.
1
Aufgaben
0-3 Ein neu entdeckter Himmelskörper, der sich auf einer Umlaufbahn um die Sonne
bewegt, wurde an 10 Positionen beobachtet. Die kartesischen Koordinaten (xi , yi ),
i = 1, . . . , 10, dieser Positionen, dargestellt in einem angepaßten Koordinatensystem in der Bahnebene, sind in der folgenden Tabelle wiedergegeben:
xi
yi
#
xi
yi
#
1 -1.024940 -0.389269
6 -0.559524 -0.147582
2 -0.949898 -0.322894
7 -0.437067 -0.128618
3 -0.866114 -0.265256
8 -0.302909 -0.121353
4 -0.773392 -0.216557
9 -0.155493 -0.127348
5 -0.671372 -0.177152
10 -0.007464 -0.148880
Die Bahn des Himmelskörpers ist eine Ellipse mit der Sonne in einem der beiden
Brennpunkte:
x2 = ay 2 + bxy + cx + dy + e.
Bestimmen Sie die Koeffizienten der Ellipse als kleinste-Quadrate-Lösung mit Hilfe
des Householderverfahrens!
Stellen Sie Ihre berechnete Ellipse und die Beobachtungsdaten in einer Grafik dar!
4-6 Zur Bestimmung der Form einer an den Endpunkten aufgehängten Kette werden
folgende Punkte der Kette gemessen:
xi : 1.2 2.2 3.9 6.1 8.9 13.5 17.5 19.5 21.6 22.5
yi : 12.8 10.7 6.9 4.1 2.5 1.8 3.0 5.2 8.0 9.8
Ein geeigneter Ansatz für die Gestalt der Kette ist durch
y = aedx + be−dx + c
gegeben. Für drei verschiedene Werte von d ∈ [0.1, 0.5] bestimme man, durch
Lösen eines linearen Ausgleichsproblems mit Hilfe des Householderverfahres, die
optimalen Parameter a, b, c.
Für welchen Ihrer gewählten Werte d ergibt sich das kleinste Residuum?
Stellen Sie Ihre Kettenlinie für den optimalen Parameter d und die Beobachtungsdaten grafisch dar!
7-9 Der Treibstoffverbrauch eines Autos im 4. Gang wird bei konstanten Geschwindigkeiten gemessen.
50
7
65
6.7
75
7.3
80
8.1
95
105
11.2 14.5
km/h
l/100km
Bestimmen Sie durch Lösen eines linearen Ausgleichsproblems mit Hilfe des Householderverfahres ein quadratisches Polynom, dass den Verbrauch als Funktion der
Geschwindigkeit darstellt. Geben Sie auch den Residuumvektor r = Ax − y Ihres
überbestimmten Gleichungssystems aus.
Stellen Sie die Verbrauchskurve und Ihre Meßwerte in einer Graphik dar!
2