Versus QR Matrizen mit vollem Rang 27. Mai 2011
Versus QR Inhaltsverzeichnis 1 2 3 Beispiel 4 Beispiel 5 6 Versus QR Kondition Vergleich
Beispiel Versus QR Zu finden: Gerade, die den Punkten (0, 6), (1, 0), (2, 0) am nächsten liegt.
Beispiel Versus QR Zu finden: Gerade, die den Punkten (0, 6), (1, 0), (2, 0) am nächsten liegt.
Beispiel Versus QR Zu finden: Gerade, die den Punkten (0, 6), (1, 0), (2, 0) am nächsten liegt. Gerade b = C + Dt
Beispiel Versus QR Zu finden: Gerade, die den Punkten (0, 6), (1, 0), (2, 0) am nächsten liegt. Gerade b = C + Dt Optimal wäre also, wenn C und D die 3 Gleichungen erfüllen: C + 0D = 6 C + 1D = 0 C + 2D = 0
Beispiel Versus QR 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 [ ] C, b = D Vektor b keine Linearkombination der Spalten von A Ax = b ist nicht lösbar!! 6 0 0
Beispiel Versus QR 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 [ ] C, b = D Vektor b keine Linearkombination der Spalten von A Ax = b ist nicht lösbar!! Ziel e = b Ax 6 0 0
Versus QR Allgemeine Problematik Zu lösen: Ax = b Aber es gibt mehr Gleichungen als Unbekannte
Versus QR Allgemeine Problematik Zu lösen: Ax = b Aber es gibt mehr Gleichungen als Unbekannte Wenn b nicht im Spaltenraum liegt, liefert das Eliminationsverfahren eine unmögliche Gleichung
Versus QR Allgemeine Problematik Zu lösen: Ax = b Aber es gibt mehr Gleichungen als Unbekannte Wenn b nicht im Spaltenraum liegt, liefert das Eliminationsverfahren eine unmögliche Gleichung Kleinstes Fehlerquadrat Ist die Länge von e = b Ax so klein wie möglich, so nennt man ˆx, das beste x, eine Lösung mit kleinstem Fehlerquadrat
Versus QR Warum 2-Norm? min Ax b 2 φ(x) = 1 2 Ax b 2 2 ist eine differenzierbare Funktion Die 2-Norm bleibt bei orthogonaler Transformation erhalten
Versus QR Warum 2-Norm? min Ax b 2 φ(x) = 1 2 Ax b 2 2 ist eine differenzierbare Funktion Die 2-Norm bleibt bei orthogonaler Transformation erhalten Bemerkung Sei Q orthogonale Matrix, dann gilt: Qx 2 2 = (Qx)T (Qx) = x T Q T Qx = x T Ex = x T x = x 2 2
Geometrisch Versus QR Wie kann man den Fehler e = b Ax so klein wie möglich machen?
Geometrisch Versus QR Wie kann man den Fehler e = b Ax so klein wie möglich machen? Jeder Vektor Ax liegt in dem durch die Spalten von A aufgespannten Raum
Geometrisch Versus QR Wie kann man den Fehler e = b Ax so klein wie möglich machen? Jeder Vektor Ax liegt in dem durch die Spalten von A aufgespannten Raum Gesucht ist der Punkt im aufgespannten Raum, der am nächsten an b liegt
Geometrisch Versus QR Wie kann man den Fehler e = b Ax so klein wie möglich machen? Jeder Vektor Ax liegt in dem durch die Spalten von A aufgespannten Raum Gesucht ist der Punkt im aufgespannten Raum, der am nächsten an b liegt e muss orthogonal zum aufgespannten Raum sein A T (b Ax) = 0
Analytisch Versus QR Angenommen A R m n, m n, rang(a) = n, x, z R n und α R φ z (α) = A(x + αz) b 2 2
Analytisch Versus QR Angenommen A R m n, m n, rang(a) = n, x, z R n und α R φ z (α) = A(x + αz) b 2 2 φ z (α) = (A(x + αz) b) T (A(x + αz) b)
Analytisch Versus QR Angenommen A R m n, m n, rang(a) = n, x, z R n und α R φ z (α) = A(x + αz) b 2 2 φ z (α) = (A(x + αz) b) T (A(x + αz) b) = (x + αz) T A T A(x + αz) 2(x + αz) T A T b + b T b
Analytisch Versus QR Angenommen A R m n, m n, rang(a) = n, x, z R n und α R φ z (α) = A(x + αz) b 2 2 φ z (α) = (A(x + αz) b) T (A(x + αz) b) = (x + αz) T A T A(x + αz) 2(x + αz) T A T b + b T b = α 2 (z T A T Az) + 2α(z T A T Ax z T A T b) + (x T A T Ax + b T b 2x T A T b)
Analytisch Versus QR Angenommen A R m n, m n, rang(a) = n, x, z R n und α R φ z (α) = A(x + αz) b 2 2 φ z (α) = (A(x + αz) b) T (A(x + αz) b) = (x + αz) T A T A(x + αz) 2(x + αz) T A T b + b T b = α 2 (z T A T Az) + 2α(z T A T Ax z T A T b) + (x T A T Ax + b T b 2x T A T b) = α 2 Az 2 2 + 2αz T A T (Ax b) + Ax b 2 2
Analytisch Versus QR Betrachten wir φ z (α) = A(x+αz) b 2 2 = α 2 Az 2 2+2αz T A T (Ax b)+ Ax b 2 2
Analytisch Versus QR Betrachten wir φ z (α) = A(x+αz) b 2 2 = α 2 Az 2 2+2αz T A T (Ax b)+ Ax b 2 2 Wenn x Lösung des Ausgleichsproblems, dann muss A T (Ax b) = 0 sein (φ z (α) = 0)
Analytisch Versus QR Betrachten wir φ z (α) = A(x+αz) b 2 2 = α 2 Az 2 2+2αz T A T (Ax b)+ Ax b 2 2 Wenn x Lösung des Ausgleichsproblems, dann muss A T (Ax b) = 0 sein (φ z (α) = 0) Ansonsten, wenn z = A T (Ax b) und α sehr klein, dann gilt: A(x + αz) b 2 < Ax b 2
Analytisch Versus QR Betrachten wir φ z (α) = A(x+αz) b 2 2 = α 2 Az 2 2+2αz T A T (Ax b)+ Ax b 2 2 Wenn x Lösung des Ausgleichsproblems, dann muss A T (Ax b) = 0 sein (φ z (α) = 0) Ansonsten, wenn z = A T (Ax b) und α sehr klein, dann gilt: A(x + αz) b 2 < Ax b 2 Wenn x und x + αz Lösungen, dann ist z Kern(A)
Analytisch Versus QR Damit haben wir die Sei m n, A R m n, b R m und n = rang(a). Ein Vektor x R n ist genau dann Lösung des Ausgleichsproblems, wenn x die A T Ax = A T b erfüllt.
Analytisch Versus QR Damit haben wir die Sei m n, A R m n, b R m und n = rang(a). Ein Vektor x R n ist genau dann Lösung des Ausgleichsproblems, wenn x die A T Ax = A T b erfüllt. Bemerkung A T A ist wegen vollem Spaltenrang von A positiv definit: x T (A T A)x = (Ax) T (Ax) = Ax 2 2 > 0 Also besitzt die eine eindeutige Lösung
Versus QR Beispiel Methode der Algorithmus 1 Berechne C := A T A 2 Berechne b := A T b A T Ax = A T b 3 Bestimme Cholesky-Faktor G von C, d.h. G T G = C 4 Löse G T y = b mittels Vorwärtssubstitution 5 Löse G x = y mittels Rückwärtssubstitution
Versus QR Beispiel Rechenaufwand der Aufstellen von C := A T A n(n + 1)m n 2 m Berechnen von b := A T b Cholesky-Zerlegung von A T A Löse G T y = b Löse Gx = y
Versus QR Beispiel Rechenaufwand der Aufstellen von C := A T A Berechnen von b := A T b n(n + 1)m n 2 m 2mn Cholesky-Zerlegung von A T A Löse G T y = b Löse Gx = y
Versus QR Beispiel Rechenaufwand der Aufstellen von C := A T A Berechnen von b := A T b n(n + 1)m n 2 m 2mn Cholesky-Zerlegung von A T A n 3 3 Löse G T y = b Löse Gx = y
Versus QR Beispiel Rechenaufwand der Aufstellen von C := A T A Berechnen von b := A T b n(n + 1)m n 2 m 2mn Cholesky-Zerlegung von A T A n 3 3 Löse G T y = b n 2 Löse Gx = y n 2
Versus QR Beispiel Rechenaufwand der Aufstellen von C := A T A Berechnen von b := A T b n(n + 1)m n 2 m 2mn Cholesky-Zerlegung von A T A n 3 3 Löse G T y = b n 2 Aufwand Praxis Löse Gx = y n 2 Für m n beträgt der Rechenaufwand (m + n 3 )n2. Da oft m n dominieren die Berechnung von A T A und A T b die Gesamtkosten.
Zurück zum Beispiel Versus QR Beispiel 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 [ ] C, b = D 6 0 0
Zurück zum Beispiel Versus QR Beispiel 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 1 C := A T A = [ ] 3 3 3 5 [ ] C, b = D 6 0 0
Zurück zum Beispiel Versus QR Beispiel 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 [ ] 1 3 3 C := A T A = 3 5 [ ] 2 6 b := A T b b = 0 [ ] C, b = D 6 0 0
Zurück zum Beispiel Versus QR Beispiel 1 0 [ ] 6 In Matrixschreibweise: A = 1 1 C, x =, b = 0 D 1 2 0 [ ] 1 3 3 C := A T A = 3 5 [ ] 2 6 b := A T b b = 0 [ ] 3 3 3 Cholesky Zerlegung G T G = C G = 0 2
Zurück zum Beispiel Versus QR Beispiel 1 0 [ ] 6 In Matrixschreibweise: A = 1 1 C, x =, b = 0 D 1 2 0 [ ] 1 3 3 C := A T A = 3 5 [ ] 2 6 b := A T b b = 0 [ ] 3 3 3 Cholesky Zerlegung G T G = C G = 0 2 [ ] 4 2 3 G T y = b y = 3 2
Zurück zum Beispiel Versus QR Beispiel 1 0 [ ] 6 In Matrixschreibweise: A = 1 1 C, x =, b = 0 D 1 2 0 [ ] 1 3 3 C := A T A = 3 5 [ ] 2 6 b := A T b b = 0 [ ] 3 3 3 Cholesky Zerlegung G T G = C G = 0 2 [ ] 4 2 3 G T y = b y = 3 2 [ ] 5 5 Gx = y x = 3
Zurück zum Beispiel Versus QR Beispiel Damit haben wir Die Gerade b = 5 3t
Zurück zum Beispiel Versus QR Beispiel Damit haben wir Die Gerade b = 5 3t Fehlervektor 1 e = b Aˆx = 2 1 Dieser ist orthogonal zu den Spalten von A
Versus QR Beispiel Ausgleichsproblem mittels Angenommen A R m n, m n, b R m und eine orthogonale Matrix Q R m m wurde berechnet, sodass:... Q T A = R = 0 0 0 =.. 0 0 [ ] R1 0
Versus QR Beispiel Ausgleichsproblem mittels Angenommen A R m n, m n, b R m und eine orthogonale Matrix Q R m m wurde berechnet, sodass:... Q T A = R = 0 0 0 =.. 0 0 [ ] R1 0 n m n
Versus QR Beispiel Ausgleichsproblem mittels Algorithmus [ ] 1 Q T R1 n A = R = 0 m n [ ] b1 2 Q T n b = b 2 m n Ax = b 3 Löse R 1 x = b 1 durch Rückwärtseinsetzen, denn:
Versus QR Beispiel Ausgleichsproblem mittels Algorithmus [ ] 1 Q T R1 n A = R = 0 m n [ ] b1 2 Q T n b = b 2 m n Ax = b 3 Löse R 1 x = b 1 durch Rückwärtseinsetzen, denn: Ax b 2 2 = Q T (QRx b) 2 2 = Rx b 2 2 =
Versus QR Beispiel Ausgleichsproblem mittels Algorithmus [ ] 1 Q T R1 n A = R = 0 m n [ ] b1 2 Q T n b = b 2 m n Ax = b 3 Löse R 1 x = b 1 durch Rückwärtseinsetzen, denn: Ax b 2 2 = Q T (QRx b) 2 2 = Rx b 2 2 = R 2 1x b 1 0x b 2 = R 1 x b 1 2 2 + b 2 2 2 2
Versus QR Beispiel Ausgleichsproblem mittels Algorithmus [ ] 1 Q T R1 n A = R = 0 m n [ ] 2 b Q T b = 1 n b 2 m n 3 Löse R 1 x = b 1 durch Rückwärtseinsetzen Bemerkung Wenn rang(a) = rang(r 1 ) = n, dann ist ˆx eindeutig bestimmt.
Versus QR Beispiel Ausgleichsproblem mittels Algorithmus [ ] 1 Q T R1 n A = R = 0 m n [ ] 2 b Q T b = 1 n b 2 m n 3 Löse R 1 x = b 1 durch Rückwärtseinsetzen Bemerkung Wenn rang(a) = rang(r 1 ) = n, dann ist ˆx eindeutig bestimmt. Ax b 2 2 minimal R 1 x b 1 2 2 = 0 Es gilt: min Ax b 2 2 = b 2 2 2
Versus QR Beispiel Ausgleichsproblem mittels Algorithmus [ ] 1 Q T R1 n A = R = 0 m n [ ] 2 b Q T b = 1 n b 2 m n 3 Löse R 1 x = b 1 durch Rückwärtseinsetzen Rechenaufwand Bemerkung Wenn rang(a) = rang(r 1 ) = n, dann ist ˆx eindeutig bestimmt. Ax b 2 2 minimal R 1 x b 1 2 2 = 0 Es gilt: min Ax b 2 2 = b 2 2 2 QR-Methode benötigt 2n 2 (m n 3 ) (Hausholder-Transformationen) Vernachlässigbar: O(mn) für Berechnung von b und O(n 2 ) für die Rücksubstitution.
Versus QR Nochmal zum Beispiel Beispiel 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 1 3 1 Q T A = 1 3 1 2 0 1 6 2 3 1 3 1 2 1 6 [ ] C, b = D 6 0 0 1 0 3 3 1 1 = R = 0 2 1 2 0 0
Versus QR Nochmal zum Beispiel Beispiel 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 3 1 Q T 3 A = R = 0 2 0 0 1 3 2 Q T b = 1 3 1 2 0 1 6 2 3 1 3 1 2 1 6 [ ] C, b = D 6 2 3 0 = 3 2 0 6 6 0 0
Versus QR Nochmal zum Beispiel Beispiel 1 0 In Matrixschreibweise: A = 1 1, x = 1 2 3 1 Q T 3 A = R = 0 2 0 0 2 3 2 Q T b = 3 2 6 [ ] [ ] 3 3 3 R 1 x = C = 0 2 D [ ] C, b = D 6 0 0 [ ] 2 3 3 D = 3 C = 5 2
Versus QR Ausgleichsproblem mittels Angenommen A R m n, m n, b R m und M T M = D ist Diagonal und [ ] M T S1 n A = 0 m n ist obere Dreiecksmatrix.
Versus QR Ausgleichsproblem mittels Angenommen A R m n, m n, b R m und M T M = D ist Diagonal und [ ] M T S1 n A = 0 m n ist obere Dreiecksmatrix. [ ] b Wenn M T b = 1 n b 2 m n dann gilt:
Versus QR Ausgleichsproblem mittels Angenommen A R m n, m n, b R m und M T M = D ist Diagonal und [ ] M T S1 n A = 0 m n ist obere Dreiecksmatrix. [ ] b Wenn M T b = 1 n b 2 m n dann gilt: Ax b 2 2 = D 1/2 M T Ax D 1/2 M T b 2 2 ([ ] [ ]) = S1 b D 1/2 x 1 2 0 b 2 2
Wie vergleichen? Versus QR Kondition Vergleich Zur Bewertung der Qualität einer berechneten Lösung ˆx, sollte man sich fragen: Wie nah ist ˆx an x? Wie klein ist ê = b Aˆx verglichen mit e = b Ax
Wie vergleichen? Versus QR Kondition Vergleich Zur Bewertung der Qualität einer berechneten Lösung ˆx, sollte man sich fragen: Wie nah ist ˆx an x? Wie klein ist ê = b Aˆx verglichen mit e = b Ax Gefühl Wenn die Spalten von A fast abhängig sind, dann könnte was schief laufen.
Versus QR Kondition einer Matrix Kondition Vergleich Definition A R m n, rang(a) = n κ 2 (A) = σmax (A) σ min (A) (σ= Singulärwert)
Versus QR Kondition einer Matrix Kondition Vergleich Definition A R m n, rang(a) = n κ 2 (A) = σmax (A) σ min (A) (σ= Singulärwert) Das passt Wenn die Spalten von A fast abhängig sind, dann ist κ 2 (A) groß.
Beispiel Kondition Versus QR Kondition Vergleich Angenommen 1 0 0 0 A = 0 10 6, δa = 0 0, b = 1 0, δb = 0 0 0 0 0 10 8 1 0 und x und x minimieren Ax b 2 und (A + δa)x (b + δb) 2 [ [ ] 1 1 dann ist x =, x = 0].9999 10 4, e = 0 0 0, ẽ =.9999 10 2 1.9999 10 0
Beispiel Kondition Versus QR Kondition Vergleich Angenommen 1 0 0 0 A = 0 10 6, δa = 0 0, b = 1 0, δb = 0 0 0 0 0 10 8 1 0 und x und x minimieren Ax b 2 und (A + δa)x (b + δb) 2 [ [ ] 1 1 dann ist x =, x = 0].9999 10 4, e = 0 0 0, ẽ =.9999 10 2 1.9999 10 0 Da κ 2 (A) = 10 6 ist: x x 2 x 2.9999 10 4 κ 2 (A) 2 δa 2 A 2 ẽ e 2 b 2.7070 10 2 κ 2 (A) δa 2 A 2 = 10 12 10 8 = 10 6 10 8
Versus QR Kondition Vergleich Vergleich und QR Problem Die Matrix A ist schon schlecht konditioniert.
Versus QR Kondition Vergleich Vergleich und QR besitzt etwa die Hälfte des Rechenaufwandes, wenn m n. benötigt nicht so viel Speicher. Aber es erhöht die Kondition, denn: κ 2 (A T A) = κ 2 (A) 2 Wenn e klein und κ 2 (A) groß ist, keine genaue Lösung. Problem Die Matrix A ist schon schlecht konditioniert.
Versus QR Kondition Vergleich Vergleich und QR besitzt etwa die Hälfte des Rechenaufwandes, wenn m n. benötigt nicht so viel Speicher. Aber es erhöht die Kondition, denn: κ 2 (A T A) = κ 2 (A) 2 Wenn e klein und κ 2 (A) groß ist, keine genaue Lösung. Problem Die Matrix A ist schon schlecht konditioniert. Mittels QR ist für eine größere Anzahl von Matrizen geeigent, denn: Orthogonale Matrizen veränderen die Kondition nicht! Wenn e groß und κ 2 (A) groß ist, keine genaue Lösung.
Quellen Versus QR Kondition Vergleich Gene H. Golub, Charles F. Van Loan. Matrix Computation Third Edition. Gilbert Strang. Lineare Algebra. http://www.math.ethz.ch/education/bachelor/ lectures/fs2009/math/nm/kapitel7-2p.pdf Vielen Dank!