Ing Mathematik: Numerisches Lösen von Ausgleichsproblemen
Ausgleichsgerade
BearbeitenMit der Ausgleichsrechnung können überbestimmte Probleme gelöst werden. Z.B. ist der Ansatz bei der linearen Ausgleichsrechnung:
Ausgleichsgerade:
Damit dies ein Extremum (genauer ein Minimum) wird, müssen die Ableitungen gleich werden.
und
Dies ergibt ein lineares Gleichungssystem (Unbekannte: ):
Beispiel: Gegeben seien n Messdaten. Zu diesen ist eine Ausgleichsgerade (Regressionsgerade) zu legen. Die Summe der Fehlerquadrate soll minimal werden.
1 | 2 | 3 | 4 | |
---|---|---|---|---|
2 | 1 | 4 | 6 |
Daraus folgt:
Pseudoinverse und Singulärwertzerlegung
Bearbeiten-
Eliakim Moore (US-amerikanischer Mathematiker, 1862-1932)
-
Roger Penrose (britischer Physiker und Mathematiker, geb. 1931)
Die Pseudoinverse ist die Verallgemeinerung der inversen Matrix auf singuläre und nichtquadratische Matrizen. Die Bestimmung der Moore-Penrose-Inversen basiert auf der Singulärwertzerlegung. Die Bezeichnungen sind in der Literatur nicht einheitlich. Die folgende Darstellung hält sich in etwa an Pseudoinverse und Burg, Haf, Wille, Meister: Seite 354ff.
Allgemeine oder generalisierte Inverse G von A:
Moore-Penrose-Inverse (Pseudoinverse) :
- und symmetrisch.
Orthogonale Normalform, Singulärwertzerlegung: , sei eine Diagonalmatrix mit positiven Diagonalelementen, ,
Dann existiert exakt eine Moore-Penrose-Inverse:
Lösungsmenge des linearen Ausgleichsproblems mit :
Siehe auch Ausgleichungsrechnung, Singulärwertzerlegung, Pseudoinverse, Methode der kleinsten Quadrate, Hanke-Bourgeois: Seite 107ff, Burg-Haf, Will, Meister: Seite 340ff, Knorrenschild: Seite 98ff, Singular Value Decomposition (SVD) in der SciPy-Dokumentation.
Beispiel - Moore-Penrose-Pseudoinverse mit SciPy:
import numpy as np from scipy import linalg A = np.array([[1, -2, 2, 1, 0], [-5, 1, 4, 9, 1], [0, 0, 1, 0, 2], [1, 2, 3, 1, 3]]) B = linalg.pinv(A) print(B) print("-"*50) print(A@B@A)
Ausgabe:
[[ 1.58724277e-01 -7.18235194e-02 -3.62480762e-01 2.13988485e-01] [-2.29094226e-01 5.70027931e-05 -3.90982158e-01 2.68084136e-01] [ 1.67246195e-01 4.56022345e-04 -1.27857265e-01 1.44673089e-01] [ 4.85948811e-02 7.10254802e-02 -1.63769025e-01 3.28336088e-02] [-8.36230975e-02 -2.28011173e-04 5.63928633e-01 -7.23365445e-02]] -------------------------------------------------- [[ 1.00000000e+00 -2.00000000e+00 2.00000000e+00 1.00000000e+00 -2.91433544e-16] [-5.00000000e+00 1.00000000e+00 4.00000000e+00 9.00000000e+00 1.00000000e+00] [ 3.94270120e-16 1.27561807e-15 1.00000000e+00 -3.98823769e-16 2.00000000e+00] [ 1.00000000e+00 2.00000000e+00 3.00000000e+00 1.00000000e+00 3.00000000e+00]]
Bei der Ausgabe der zweiten Matrix ( mit ) sind die Rundungsfehler zu beachten. So entspricht z.B. 3.94270120e-16 in etwa Null.
Gedruckte Werke (auszugsweise)
Bearbeiten- Burg, Haf, Wille, Meister: Höhere Mathematik für Ingenieure, Band I: Analysis. 9. Auflage, Vieweg+Teubner, 2011, ISBN 978-3-8348-1218-6
- Hanke-Bourgeois: Grundlagen der Numerischen Mathematik und des Wissenschaftlichen Rechnens. 3. Aufl., Vieweg+Teubner, 2009, ISBN 978-3-8348-0708-3
- Knorrenschild: Numerische Mathematik. 6. Auflage, Hanser, 2017, ISBN 978-3-446-45161-2