4 Iterative Lösung Linearer Gleichungssysteme 4.1 Fixpunktiteration und Konvergenzsätze.

Ähnliche Dokumente
3. Lineare Gleichungssysteme

Numerische Mathematik für Ingenieure (SoSe 2013)

Iterative Verfahren, Splittingmethoden

38 Iterative Verfahren für lineare Gleichungssysteme

7. Iterative Lösung. linearer Gleichungssysteme

Lineare Iterationsverfahren: Definitionen

Der CG-Algorithmus (Zusammenfassung)

Kapitel 2: Lineare Gleichungssysteme. 2.1 Motivation: Bildverarbeitung Sei B = (B(n, m)) ein N M stochastisches Feld mit ZVen

Kapitel 2: Lineare Gleichungssysteme. 2.1 Motivation: Bildverarbeitung Sei B = (B(n, m)) ein N M stochastisches Feld mit ZVen

Numerische Lineare Algebra

Begleitmaterial zur Vorlesung Numerik I

2 Lineare Gleichungssysteme

Lineare Gleichungssysteme

Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang. Institut für Geometrie und Praktische Mathematik RWTH Aachen

2. Geben Sie für das Jacobi-Verfahren eine scharfe a-priori Abschätzung für den Fehler. x (10) x p

Institut für Numerische Simulation der Universität Bonn Prof. Dr. Mario Bebendorf

Nichtlineare Gleichungssysteme

Konvergenz des Jacobi- und Gauß-Seidel-Verfahrens

8 Iterationsverfahren zur Lösung von Gleichungssystemen

Numerisches Rechnen. (für Informatiker) M. Grepl J. Berger & J.T. Frings. Institut für Geometrie und Praktische Mathematik RWTH Aachen

5.3 Iterative Lösungsverfahren für lineare Gleichungssysteme

Inexakte Newton Verfahren

Näherungsverfahren zur Bestimmung der Nullstelle α sind iterativ, d.h. sie liefern eine Folge {x (k) } k=0 mit α = lim x (k). (3.0.

Wiederholung von Linearer Algebra und Differentialrechnung im R n

Kapitel 5 Iterative Verfahren für LGS

Lösbarkeit linearer Gleichungssysteme

Kapitel 4: Nichtlineare Nullstellenprobleme

Finite Elemente. Dr. S.-J. Kimmerle Institut für Mathematik und Rechneranwendung Fakultät für Luft- und Raumfahrttechnik Wintertrimester 2015

KAPITEL 5. Nichtlineare Gleichungssysteme

Lineare Algebra: Determinanten und Eigenwerte

Mathematik für Naturwissenschaftler, Pruscha & Rost Kap 7 Lösungen

Lineare Algebra. 10. Übungsstunde. Steven Battilana.

EINFÜHRUNG IN DIE NUMERISCHE MATHEMATIK II 1. Numerische Lineare Algebra. Prof. Dr. Hans Babovsky. Institut für Mathematik

6 Iterationsverfahren für lineare und nichtlineare Gleichungssysteme

5 Numerische Iterationsverfahren

Eigenwerte. Vorlesung Computergestützte Mathematik zur Linearen Algebra. Lehrstuhl für Angewandte Mathematik Sommersemester 2009

Kapitel 1. Vektoren und Matrizen. 1.1 Vektoren

18.4 Das Newton-Verfahren

Algorithmik kontinuierlicher Systeme

7. Übungs-/Wiederholungsblatt zu Einführung in die Numerik (SS 2012)

Iterative Lösung Linearer Gleichungssysteme

Musterlösungen Blatt Mathematischer Vorkurs. Sommersemester Dr. O. Zobay. Matrizen

5 Numerische Mathematik

KAPITEL 7. Berechnung von Eigenwerten. Av = λv

37 Gauß-Algorithmus und lineare Gleichungssysteme

(d) das zu Grunde liegende Problem gut konditioniert ist.

1 Zum Aufwärmen. 1.1 Notationen. 1.2 Lineare Abbildungen und Matrizen. 1.3 Darstellungsmatrizen

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren Thomas Brox, Fabian Kuhn

Lineare Algebra und Numerische Mathematik für D-BAUG

Nichtlineare Gleichungssysteme

5 Lineare Gleichungssysteme und Determinanten

Wir untersuchen in diesem Abschnitt das (lokale) Newton Verfahren zur Lösung eines nichtlinearen Gleichungssystems

Kurztest zur Numerik I WiR AG, Dep. Mathematik, NT-Fakultät, Universität Siegen

Numerische Mathematik für Ingenieure und Physiker

Lineare Algebra II 8. Übungsblatt

1 Matrizenrechnung zweiter Teil

Numerische Lineare Algebra

Lösungsvorschlag zur Modulprüfung Numerische Methoden Sommersemester 2016

Ausgleichsproblem. Definition (1.0.3)

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

3 Lineare Differentialgleichungen

2. Dezember Lineare Algebra II. Christian Ebert & Fritz Hamm. Skalarprodukt, Norm, Metrik. Matrizen. Lineare Abbildungen

Eigenwerte und Eigenvektoren

a 11 a 12 a 1(m 1) a 1m a n1 a n2 a n(m 1) a nm Matrizen Betrachten wir das nachfolgende Rechteckschema:

D-ITET, D-MATL Numerische Methoden SS 2006 Prof. R. Jeltsch. Musterlösung 6. x A 1 b. A 1 b A 1. x A ( A. gestört: x A 1 =

Erweiterungen der LR-Zerlegung

Lineare Algebra. 5. Übungsstunde. Steven Battilana. battilana.uk/teaching

6. Iterationsverfahren. Fixpunktiteration. 6.Iterationsverfahren: Fixpunktiteration Numerisches Programmieren, Jürgen Bräckle page 1 of 16

51 Numerische Berechnung von Eigenwerten und Eigenvektoren

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

Ausgewählte Lösungen zu den Übungsblättern 9-10

Newton-Verfahren für ein Skalarfunktion

Numerisches Programmieren, Übungen

Eigenwerte. Ein Eigenwert einer quadratischen n n Matrix A ist ein Skalar λ C (eine komplexe Zahl) mit der Eigenschaft Ax = λx (1)

Institut für Geometrie und Praktische Mathematik

Ferienkurs Numerik Lösungsskizze. 1 Iterative Verfahren für lineare Gleichungssysteme

Das CG-Verfahren. Sven Wetterauer

Lineare Gleichungssysteme Hierarchische Matrizen

Rückblick auf die letzte Vorlesung. Bemerkung

Numerische Verfahren zur Lösung unrestringierter Optimierungsaufgaben. Eine kurze Einführung in Quasi Newton Verfahren

Vektor und Matrixnormen Vorlesung vom

Einführung in numerische Methoden für Ingenieure (nach A. Quarteroni, F. Saleri: Wissenschaftliches Rechnen mit MATLAB)

3 Systeme linearer Gleichungen

y (k) (0) = y (k) y(z) = c 1 e αz + c 2 e βz. c 1 + c 2 = y 0 k=1 k=1,...,m y k f k (x)

Kapitel 5. Lösung nichtlinearer Gleichungen

1 Singulärwertzerlegung und Pseudoinverse

A 1 A 2 A 3 A 4 A 5 A 6 A 7

Iterative Verfahren zur Lösung von Linearen Gleichungssystemen

Lösungsskizzen zu den Klausuraufgaben zum Kurs 1142 Algorithmische Mathematik. a 0 = 0 =

Hauptachsentransformation: Eigenwerte und Eigenvektoren

Vortrag 20: Kurze Vektoren in Gittern

Modulprüfung Numerische Mathematik 1

Numerische Mathematik 1

6 Symmetrische Matrizen und quadratische Formen

Ziel: Iterative Lösung der (nichtlinearen) Gleichung f(x) = 0.

6 Lineare Gleichungssysteme

Vorkonditionierer. diskrete stationäre Eulergleichungen

Vektor und Matrixnormen Vorlesung vom

Orthogonale Matrix. Definition 4.19

Transkript:

4 Iterative Lösung Linearer Gleichungssysteme 4.1 Fixpunktiteration und Konvergenzsätze. Wir betrachten das lineare Gleichungssystem der Form Ax = b; (4.1.1) mit A R n n reguläre Matrix und b R n gegeben, und suchen die eindeutige Lösung x R n dieses Systems. Die GEM liefert Lösungsvectoren x R n, die (bis auf Rundungsfehler) exakt sind in O(n 3 /3) Operationen. Oft ist man aber schon mit approximativen Lösungen x von (4.1.1) zufrieden, die mit wesentlich weniger Aufwand berechnet werden können. Numerische Methoden, die dies leisten, heissen iterative Verfahren. Iterative Lösungsverfahren für (4.1.1) liefern, ausgehend von einem Startvektor x (0) R n eine Folge {x (k) } k=1 von Vektoren, die gegen die eindeutige Lösung x von (4.1.1) konvergiert: x = lim k x (k) x x (k) 0 für k. Diese Verfahren gehen von der Fixpunktform des linearen Gleichungssystems (4.1.1) aus: x = Bx + f (4.1.2) Um (4.1.1) auf Fixpunktform zu bringen, spalten wir die Matrix A auf: A = P N, P, N R n n (4.1.3) wobei die Matrix P der sog. Vorkonditionierer (engl. Preconditioner) und die Matrix N der sog. nichtdiagonale Anteil (engl. nondiagonal part) der Matrix A ist. Mit der Aufspaltung (4.1.3) schreiben wir (4.1.1) um in P x = Nx + b und erhalten die Fixpunktform (4.1.2) mit der Iterationsmatrix B = P 1 N. Mit der Aufspaltung (4.1.3) erhalten wir das Iterationsverfahren P x (k+1) = Nx (k) + b x (k+1) = Bx (k) + f (4.1.4) Die Aufspaltung (4.1.3) ist nicht eindeutig jede Aufspaltung ergibt eine andere Iteration. Ausschlaggebend für die Wahl einer Aufspaltung sind folgende, sich oft widersprechende, Kriterien: a) einfache Invertierbarkeit der Vorkonditionierungsmatrix P und b) Kleinheit des Nichtdiagonalanteils N und damit schnelle Konvergenz der Fixpunktiteration (4.1.4). 84

Wir sagen, die Fixpunktiteration (4.1.4) sei konsistent mit dem System (4.1.1), falls die Fixpunktgleichung (4.1.2) genau eine Lösung hat, die (4.1.1) löst. Wir untersuchen die Konvergenz der Fixpunkiteration (4.1.4). Hierfür subtrahieren wir (4.1.2) von (4.1.4); dies ergibt die Fehlerrekurrenz e (k+1) = Be (k), k = 0, 1, 2,..., wobei e (k) := x (k) x. (4.1.5) Offensichtlich gilt x (k) x genau dann, wenn e (k) = x (k) x 0 gilt. Wegen e (k) = Be (k 1) = B 2 e (k 2) =... = B k e (0) ist dies genau dann der Fall für beliebigen Startvektor x (0) R n, wenn B k 0 für k. Nach Theorem 3.5.1 ist dies genau dann der Fall, wenn ρ(b) < 1 ist. Theorem 4.1.1 Die Fixpunktiteration (4.1.4) konvergiert genau dann für alle Startvektoren x (0) R n, wenn ρ(b) < 1 ist. Für die Iteration P x (k+1) = Nx (k) + f gelten folgende allgemeinen Konvergenzsätze, die wir ohne Beweis angeben. Proposition 4.1.2 Sei A = P N mit A, P SPD. Falls 2P A positiv definit, konvergiert die Iteration für jedes x (0) und für die Iterationsmatrix B = P 1 N gilt ρ(b) = B A = B P < 1. Die Konvergenz ist monoton in der Norm A und der Norm P : e (k+1) P e (k) P, e (k+1) A e (k) A. Proposition 4.1.3 Sei A = P N SPD und es gelte P + P A positiv definit. Dann existiert P 1, und die Iteration (4.1.2) konvergiert monoton in der Norm A und es gilt ρ(b) B A < 1. 4.2 Beispiele. Jacobi- und Gauss-Seidel Verfahren. Wir geben die wichtigsten Beispiele für die Aufspaltungen A = P N. Beispiel 4.2.1 (Jacobi-Iteration) Sei n = 3, und Ax = b zu lösen. Wir schreiben x 1 = (b 1 a 12 x 2 a 13 x 3 )/a 11 x 2 = (b 2 a 21 x 1 a 23 x 3 )/a 22 x 3 = (b 3 a 31 x 1 a 32 x 2 )/a 33. Sei nun x (0) gegeben, dann ist die Jacobi-Iteration für n > 1 beliebig für i = 1 : n ( i 1 n ) / x (k+1) i := b i a ij x (k) j a ij x (k) j a ii, i = 1 : n (4.2.6) j=1 j=i+1 85

Beispiel 4.2.2 (Gauss-Seidel Iteration) Beachte: (4.2.6) benutzt für x (k+1) i nicht die neueste Information und der Speicher für die x (k) ist 2n. Besser ist es, die x (k) j, j < i, gleich zu ersetzen: ( i 1 x (k+1) i := b i j=1 a ij x (k+1) j Wir schreiben (4.2.6), (4.2.7) symbolisch. Dazu n j=i+1 ) / a ij x (k) j a ii. (4.2.7) A = L + D + U (4.2.8) wo 0 0 0 a 12 a 1n a 11 0. D =... a, L = 21......, U =...... 0 a an 1,n. nn a n1 a n,n 1 0 0 0 Dann ist Jacobi in Fixpunktform: Dx (k+1) = b Lx (k) Ux (k) x (k+1) = D 1( b Lx (k) Ux (k)) = D 1 (L + U) }{{} x(k) + D 1 b = B J x (k) + c. (4.2.9) Analog erhalten wir aus (4.2.7) das Verfahren von Gauss-Seidel in Fixpunktform: (4.2.7) x (k+1) = D 1( b Lx (k+1) Ux (k)) (D + L) x (k+1) = Ux (k) + b (4.2.10) x (k+1) = (D + L) 1 Ux (k) + (D + L) 1 b x (k+1) = B GS x (k) + c mit der Iterationsmatrix B GS = (D + L) 1 U, c = (D + L) 1 b. Einen ersten Konvergenzsatz erhalten wir für diagonaldominante Matrizen A. Definition 4.2.3 A R n n heisst zeilendiagonaldominant, falls a ii n a ij, i = 1,..., n, j=1 j i 86

und spaltendiagonaldominant, falls a ii n a ji, i = 1,..., n. j=1 j i Falls > gilt, ist A streng zeilen- bzw. spaltendiagonaldominant. Es gilt Theorem 4.2.4 Sei A streng zeilen- bzw. spaltendiagonaldominant. Dann konvergieren das Jacobi- sowie das GS-Verfahren. Beweis: Wir müssen entweder zeigen, dass ρ(b J ) < 1 ist oder dass B J M < 1 in einer submultiplikativen Matrixnorm M. Wir zeigen B J < 1. Sei dazu A streng zeilendiagonaldominant. Dann ist a ii j i a ij, i = 1 : n, und B J = max i=1:n n j=1 j i a ij / a ii < 1. Wann konvergiert GS? Theorem 4.2.5 Sei A R n n SPD. Dann konvergiert GS (4.2.10) für alle x (0) R n. Beweis: A = A = U = L, also x (k+1) = B GS x (k) + c, B GS = (D + L) 1 L. Wir lassen im Rest des Beweises den Superskript GS weg. Wir zeigen in zwei Schritten. ρ(b) < 1 i) A SPD = 0 x R n : x Ax > 0. = a ii = e i Ae i > 0 = D > 0 = D ±1/2 = diag(a ±1/2 ii ) existiert. ii) Wegen Bx = λx = D 1 2 BD 1 2 D 1 2 x = λd 1 2 x hat B1 := D 1 2 BD 1 2 gleiche Eigenwerte wie B, und es gilt ρ(b) < 1 ρ(b 1 ) < 1. Es gilt weiter Sei x C n Eigenvektor von B 1 : B 1 = (1 + L 1 ) 1 L 1 mit L 1 = D 1 2 LD 1 2. B 1 x = λx, x H x = 1. Dann gilt: L 1 x = λ(1 + L 1)x = x H L 1 x = λ(1 + xh L 1 x). 87

Sei x H L 1 x = a + bi, mit a, b R. = λ 2 = a bi 1 + a + bi 2 = a 2 + b 2 1 + 2a + a 2 + b 2. D 1 2 AD 1 2 = 1 + L1 + L 1 pos. def. = 0 < 1 + x H L 1 x + x H L T 1 x = 1 + 2a = λ < 1. 4.3 Relaxationsverfahren. JOR und SOR-Verfahren Eine Verallgemeinerung des Jacobi-Verfahrens ist die sogenannte Überrelaxationsmethode (oder JOR von Jacobi Overrelaxation), bei der man zuerst die Näherung (4.2.9), die mit x (k+1) J = D 1 (b Lx (k) Ux (k) ) bezeichnet sei, berechnet, und dann mit einem Relaxationsparameter ω > 0 die neue Näherung x (k+1) berechnet nach x (k+1) = ω x (k+1) J + (1 ω) x (k). Für ω = 0 erhält man x (k+1) = x (k), ω = 1 ergibt offensichtlich das Jacobi-Verfahren; für ω > 1 geht man weiter in Richtung des Jacobischritts x (k+1), und man spricht von Überrelaxation, für ω < 1 resultiert die sogenannte Unterrelaxation. Es gilt x (k+1) = B J ω x(k) + f mit B J ω = ω B J + (1 ω) I und B J = D 1 (L + U) = I D 1 A, Das JOR Verfahren lässt sich auch als Residualkorrektur x (k+1) = x (k) + ωd 1 r (k), r (k) = b Ax (k). schreiben. Theorem 4.3.1 Für A R n n SPD konvergiert JOR für 0 < ω < 2/ρ(D 1 A). Beweis: Übung. Sei A R n n SPD zerlegt wie in (4.2.8): A = D + L + L. (4.3.1) Dann ist das Gauss-Seidel Verfahren für Ax = b 88

nach (4.2.10): x (k+1) GS = D 1 (b Lx (k+1) L x (k) ). (4.3.2) Das SOR(ω)-Verfahren erhält man durch dämpfen bzw. verlängern eines GS Schrittes. Sei dazu wieder ω > 0 ein sog. Relaxations-Parameter. Dann gilt Fixpunktform: wo x (k+1) SOR := (1 ω) x(k) + ω x (k+1) GS = (1 ω) x (k) + ω D 1( b Lx (k+1) L x (k)). (4.3.3) x (k+1) = B SOR (ω) x (k) + c(ω) (4.3.4) B SOR (ω) := (D + ωl) 1 [ (1 ω) D ωl ], c(ω) := ω(d + ωl) 1 b. (4.3.5) Theorem 4.3.2 Sei A R n n SPD. Genau dann konvergiert SOR(ω) für alle x (0) R n, wenn 0 < ω < 2. Beweis: Sei λ Eigenwert von B(ω) in (4.4.4). Dann existiert 0 z C n mit B(ω) z = λz, woraus mit (4.3.5) und A = D + L + L = D + L + U folgt ( (1 ω)d ωu ) z = λ(d + ωl)z. (4.3.6) Aber 2(1 ω)d 2ωU = (2 ω)d ωa + ω(l U), 2(D + ωl) = (2 ω)d + ωa + ω(l U). Einsetzen in (4.3.6) und multiplizieren von (4.3.6) von links mit z H = (2 ω) z H Dz ωz H Az ωz H (U U) z = λ [ (2 ω) z H Dz + ωz H Az ωz H (U U) z ]. (4.3.7) A SPD, z 0 und a ii > 0 = d := z H Dz > 0, a := z H Az > 0. Weiter ist (U U) schiefsymmetrisch = z H (U U) z = ir, r R. Damit ist (4.3.7): und es folgt (2 ω)d ωa + iωr = λ [ (2 ω)d + ωa + iωr ] λ = (2 ω)d ωa + iωr (2 ω)d + ωa + iωr. (4.3.8) Nun ist (2 ω)d ωa < (2 ω)d + ωa 0 < ω < 2, während die Imaginärteile von Zähler und Nenner in (4.3.8) gleich sind. Daher λ(ω) < 1 für 0 < ω < 2 und ρ ( B(ω) ) < 1, da λ beliebiger Eigenwert von B(ω) war. 89

4.4 Konvergenzraten und Stoppkriterien. Für kontrahierende Iterationsmatrizen B konvergiert also die Fixpunktiteration (4.1.4) für alle Startvektoren x (0) C n gegen den eindeutigen Fixpunkt x von (4.1.2). Für die Numerik ist neben der Konvergenz vor allem folgendes wichtig: a) wie genau ist x (k) nach k-schritten, d.h. wie schnell der Fehler e (k) = x (k) x (0) gegen Null strebt; dies ist die Konvergenzgeschwindigkeit, und b) wie die Iteration gestoppt werden soll, d.h. das sog. Abbruchkriterium. Der folgende Satz gibt hierüber Auskunft. Proposition 4.4.1 Sei B C n n kontrahierend, d.h. ρ(b) < 1, und sei {x (k) } k=0 Folge sukzessiver Approximationen (4.1.4) des Fixpunkts x von (4.1.2). Dann gilt: Für alle α (ρ(b), 1) und jede Vektornorm auf C n existiert C(n, α) derart, dass die a-priori Fehlerschätzung x (k) x C(n, α) gilt. Weiterhin gilt die (im allgemeinen genauere) a-posteriori Fehlerabschätzung x (k) x C(n, α) sowie die residualbasierte Fehlerschätzung x (k) x C(n, α) α k 1 α x(1) x (0) (4.4.1) α 1 α x(k) x (k 1) (4.4.2) α 1 α r(k) (4.4.3) wo r (k) := x (k) Bx (k) f das (berechenbare!) Residuum der Iterierten x (k) in der Fixpunktgleichung (4.1.2) ist. Beweis: i) B kontrahierend = ρ(b) < 1. Nach Theorem 3.5.1 existiert für alle 0 < ε < 1 ρ(b) eine Norm auf C n derart, dass B = sup 0 x C n Bx x ρ(b) + ε < 1. ii) Sei die gegebene Norm auf C n. Wegen der existieren c 1 (n), c 2 (n) > 0 mit Äquivalenz von Normen auf dem Cn x C n : c 1 x x c 2 x. 90

iii) Aus der Fehlerrekurrenz (4.1.5) folgt und, für k 1, e (k+1) B e (k) (ρ(b) + ε) e (k) x (k+1) x (k) = B(x (k) x (k 1) ) (ρ(b) + ε) x (k) x (k 1). (ρ(b) + ε) k x (1) x (0). iv) Sei α := ρ(b) + ε < 1. Dann gilt für alle p 1, p ganz, p x (k+p) x (k) x (k+i) x (k+i 1) ) i=1 (1 + α + + α p 1 ) x (k+1) x (k) (4.4.4) 1 αp 1 α αk x (1) x (0). Für p und beliebiges, festes k 1 folgt wegen α p 0 und x (k+p) x, dass Aus Schritt ii) erhalten wir dann x x (k) c 1 (n) x x (k) x x (k) woraus (4.4.1) mit C(n) = c 2 (n)/c 1 (n) folgt. αk 1 α x(1) x (0). αk 1 α x(1) x (0) c 2 (n) v) Zum Beweis von (4.4.2) gehen wir aus von (4.4.4) in der Form und lassen p. vi) Um (4.4.3) zu zeigen, beachten wir (4.1.2): und die Definition des Residuums gibt x (k+p) x (k) 1 αp 1 α x(k+1) x (k), α k 1 α x(1) x (0) x = Bx + c (4.4.5) x (k) = Bx (k) + c + r (k). (4.4.6) 91

Vergleich von (4.4.5), (4.4.6) zeigt, dass das Residuum r (k) misst um wieviel die Iterate x (k) die Fixpunktgleichung (4.1.2) verletzt. Genauer: (4.4.6) - (4.4.5) = r (k) = 0 x (k) = x e (k) = 0. x (k) x = B ( x (k) x ) + r (k) (I B) ( x (k) x ) = r (k) r (k) = (I B) e (k) Wegen ρ(b) < 1 existiert (I B) 1 (Korollar 3.5.2) und nach Korollar 3.5.2 ii): e (k) = (I B) 1 r (k) (1 B ) 1 r (k) (1 α) 1 r (k). Dann folgt (4.4.3) aus ii) mit C = c 2 /c 1. In obigen Abschätzungen war α im Wesentlichen gleich ρ(b). Wir sehen aus (4.4.1), dass die Fehlerreduktion pro Schritt der Fixpunktiteration (4.1.4) bestimmt ist durch ρ(b). Wir sehen weiter aus (4.4.3), dass das Residuum bis auf einen Faktor, der von ρ(b) sowie von n abhängt, gleich ist dem Fehler in der Iterierten x (k). Bemerkung 4.4.2 Die Wichtigkeit des Vorkonditionierers P ist damit klar: falls der Spektralradius von B = P 1 N = P 1 (P A) = I P 1 A wesentlich kleiner ist als der von I A, wird die Fixpunktiteration (4.1.4) schneller konvergieren und (4.4.3) wird ein besseres Stoppkriterium sein. Das Finden von Vorkonditionierern P die einfach zu invertieren sind und für die ρ(i P 1 A) klein ist, ist daher für die effiziente iterative Lösung grosser Gleichungssysteme wesentlich. Entweder man benutzt Information über die Herkunft von A oder man versucht sog. Black-Box Vorkonditionierer zu schreiben. Standardzugang ist hier die sog. unvollständige LU-Zerlegung, siehe [QSS1], Kap 4.3. Neuere Zugänge basieren auf Konstruktion von P durch rekursive Niedrigrangapproximation von A, den sog. H-Matrizen. 4.5 Instationäre Iterationsverfahren 4.5.1 Richardson-Verfahren Alle bisher betrachteten Methoden liessen sich als Fixpunktiteration mit fester Iterationsmatrix B schreiben. Dies sind sogenannte stationäre Verfahren. Alternativ dazu können wir auch instationäre Verfahren betrachten, bei denen B = B k ist. Das einfachste instationäre Verfahren ist das sogenannte Richardson-Verfahren. Wir leiten es wie folgt her: x (k+1) = x (k) + α P 1 r (k), (4.5.1) 92

wobei α > 0 ein Relaxationsparameter und r (k) = b Ax (k) (4.5.2) das Residuum von x (k) ist. Die Iterationsmatrix lautet hier B = I αp 1 A, also in (4.5.1) stationär. Ist α von Schritt k abhängig, also α = α k, dann erhalten wir die Iterationsmatrizen B k = I α k P 1 A. Beachte, dass das Jacobi- sowie das GS-Verfahren Spezialfälle des stationären Richardson- Verfahrens sind mit α = 1, P = D bzw. P = D + L. Theorem 4.5.1 Sei P nichtsingulär und λ i C die Eigenwerte von P 1 A: λ i σ(p 1 A). Dann konvergiert das stationäre Richardson-Verfahren (4.5.1) genau dann, wenn gilt. Beweis: Es gilt B α = I αp 1 A und daher gilt 2 Rλ i > 1, i = 1 : n, (4.5.3) α λ i 2 ρ(b α ) = max{ λ i (B α ) : i = 1 : n} = max{ 1 α λ i (P 1 A) : i = 1 : n} < 1 genau dann, wenn 1 αλ i < 1. Daraus folgt (1 α Rλ i ) 2 + (αiλ i ) 2 < 1, was (4.5.3) beweist. Theorem 4.5.2 Sei P nichtsingulär und P 1 A habe positive reelle Eigenwerte λ 1 λ 2 λ n > 0. Dann konvergiert das stationäre Richardson-Verfahren (4.5.1) genau dann, wenn 0 < α < 2/λ 1. Für α = α opt := 2/(λ 1 + λ n ), ist der Spektralradius von B minimal, d.h. ρ opt = min α>0 ρ(b α) = λ 1 λ n λ 1 + λ n. (4.5.4) Beweis: Die Eigenwerte der Matrix B α sind durch λ i (B α ) = 1 αλ 1 gegeben, so dass (4.5.1) genau dann konvergiert, wenn λ i (B α ) < 1 für i = 1,..., n gilt, d.h. wenn 0 < α < 2/λ 1. Es folgt (siehe Fig. 4.1), dass ρ(b α ) minimal für 1 αλ n = αλ 1 1 wird, d.h. für α = 2/(λ 1 +λ n ), was den gewünschten Wert für α opt liefert. Durch Substitution erhält man den gewünschten Wert von ρ opt. 93

1 αλ 1 ρ = 1 1 αλ k fig4.1.eps 142 96 mm ρ opt 1 αλ n 1 α opt 2 1 λ 1 λ 1 λ n α Fig. 4.1: Spektralradius von R α als Funktion der Eigenwerte von P 1 A Bemerkung 4.5.3 Für P 1 A SPD gilt cond 2 (P 1 A) = λ 1 /λ n. Damit folgt aus (4.5.4), dass ρ opt = λ 1/λ n 1 λ 1 /λ n + 1 = cond 2(P 1 A) 1 cond 2 (P 1 A) + 1 (4.5.5) ist - somit hängt die Konvergenzgeschwindigkeit des Richardson Verfahrens (4.5.1) ausschliesslich von cond 2 (P 1 A) ab. Die Konstruktion eines billigen Vorkonditionierers kann man z.b. mit der unvollständigen LU-Zerlegung (sogenannte ILU-Belegung ) von A erhalten (vgl. [QSS1], Kap. 4.3.2 für Details). 4.5.2 Gradientenverfahren Sei A R n n SPD, b R n gegeben. Dann ist die Lösung vom LGS Ax = b (4.5.6) charakterisiert durch das Minimum des quadratischen Potentials zu A: Φ(y) = 1 2 y Ay y b; (4.5.7) denn wegen A SPD ist Φ( ) strikt konvex: für alle y 1, y 2 R n, y 1 y 2, und für 0 < θ < 1 gilt Φ(θy 1 + (1 θ)y 2 ) < θφ 1 (y 1 ) + (1 θ) Φ(y 2 ). 94

Deshalb hat Φ( ) ein eindeutiges Minimum x auf R d mit Beachte, dass für alle y x R d und x = A 1 b R d gilt ( Φ)(x) = Ax b! = 0. (4.5.8) Φ(y) Φ(x) = 1 2 (y x) A (y x) = 1 2 y x 2 A > 0 (4.5.9) (nachrechnen!), so dass x in der Tat das Minimum von Φ( ) auf R d realisiert. Das Gradientenverfahren zur iterativen Lösung von (4.5.6) basiert hierauf. Sei x (0) Näherung für x. Wir suchen nun a) eine Abstiegsrichtung ( descent direction ) d (0) und b) eine Schrittweite α > 0 derart, dass die Bedingung Φ(x (1) )! < Φ(x (0) ) erfüllt. Wegen x (1) := x (0) + α d (0) (4.5.10) Wahl von d (0) : wähle die Richtung d (0), in der Φ(x (0) ) am kleinsten ist: also d (0) 2 = 1 Φ d (0) (x(0) ) = d (0) ( Φ)(x (0) )! = min. (4.5.11) ist die Richtung des steilsten Abstiegs von Φ an x (0) gerade Für d 2 = 1 ist ja die Richtungsableitung von Φ( ) an x (0) Φ(x (0) ) = Ax (0) b = r (0) (4.5.12) d (0) := r (0) / r (0) 2 : (4.5.13) d ( Φ)(x (0) ) = r (0) d = cos ϕ r (0) 2 wo ϕ der von r (0) und d eingeschlossene Winkel ist: d ϕ fig4.2.eps 55 19 mm r (0) Also wird Φ(x(0) ) d für ϕ = 0 oder für d (0) = r (0) / r (0) 2 minimal, und (4.5.11) lautet x (1) = x (0) + α r (0), α > 0. (4.5.14) Wir bestimmen das optimale α > 0, α 0 aus der Liniensuche Φ(x (0) + α 0 r (0) ) = min α>0 Φ(x(0) + αr (0) ). (4.5.15) 95

Dies ist, für gegebenes x (0) und r (0), ein quadratisches Polynom ϕ(α). Es gilt woraus ϕ (α 0 ) = α folgt (nachrechnen!). Iteration ergibt Algorithmus 4.5.4 (Gradientenverfahren) x (0) R n gegeben. Für k = 0, 1, 2,..., berechne ( Φ(x (0) + αr (0) ) ) α=α0 = ( Φ)(x (0) + αr (0) ) r (0) α=α0! = 0 α 0 = r(0) r (0) r (0) Ar (0) r (k) := b Ax (k) α k := r(k) r (k) r (k) Ar (k) (4.5.16) x (k+1) := x (k) + α k r (k). Theorem 4.5.5 Sei A R n n SPD. Dann ist das Gradientenverfahren, Algorithmus 4.5.4, für alle x (0) R n konvergent und es gilt e (k+1) A cond 2(A) 1 cond 2 (A) + 1 e(k) A, k = 0, 1, 2,... (4.5.17) 4.5.3 Konjugierte Gradienten (cg) Verfahren ([QSS1, 4.3.4]) Wir verallgemeinern das Gradientenverfahren, Algorithmus 4.5.4, indem wir von x (k) in eine Richtung p (k) die nicht mehr notwendig gleich der Richtung des steilsten Abstiegs des Potentials Φ( ) ist, um die Länge α > 0 gehen. Insbesondere ist p (k) nicht mehr gleich r (k). Analog zu (4.5.16) erhält man α k = p(k) r (k). (4.5.18) p (k) Ap (k) Da die exakte Lösung das Potential Φ( ) minimiert, verlangen wir nach wie vor, dass die Richtung p (k) eine Abstiegsrichtung des Potentials Φ ist. Die Schrittlänge α > 0 bestimmen wir wieder so, dass das Potential in Richtung p (k) minimiert wird. Die folgende Definition formalisiert dies. Definition 4.5.6 Ein Punkt x (k) R n heisst optimal bezüglich 0 p R n λ R : Φ(x (k) ) Φ(x (k) + λp). (4.5.19) Falls (4.5.19) für alle p V R d, heisst x (k) optimal bezüglich dem Unterraum V R n. 96

Bemerkung 4.5.7 Es gilt r (k) = b Ax (k) p, denn 0 = Φ λ (x(k) + λp) λ=0 = p (Ax (k) b) + λp Ap λ=0 p r (k) = 0. Idee des cg: erzeuge {x (k) } k=0 so, dass x(k) optimal bezüglich V k R n mit dim V k = k. Dann ist r (k) V k, k = 1, 2,... und r (n) V n r (n) = 0. Dazu: sei x (k) optimal bezüglich p V k. Dann ergibt die Forderung x (k+1) optimal bezüglich p V k, dass r (k+1) p sein muss, also dass gelten muss 0 = p r (k+1) = p ( b Ax (k+1)) = p ( b A(x (k) + q) ) = p ( r (k) Aq ) = p Aq. Definition 4.5.8 Zwei Richtungen p, q R n heissen A konjugiert p Aq = 0. Idee: Erzeuge eine Folge A-konjugierter Richtungen p (k). Da A SPD, sind die p (k) linear unabhängig und k = dimv k = dim span{p (1),..., p (k) }. Sei dazu (Ansatz): p (k+1) = r (k+1) β k p (k), k = 0, 1, 2,... (4.5.20) mit β k R so, dass Ap (j) p (k+1), j = 0, 1,..., k, also 0 = (Ap (j) ) p (k+1) = (p (j) ) Ap (k+1) j = 0, 1,..., k. (4.5.21) (4.5.21) für j = k = β k = (Ap(k) ) r (k+1) (Ap (k) ) p (k), k = 0, 1, 2,.... Dann gilt (4.5.21) auch für alle j < k. (Übung!). Der folgende Algorithmus formalisiert diese Konstruktion. Wichtig ist dabei, dass in jedem Schritt nur eine Matrix-Vektor Multiplikation ausgeführt werden muss. Residuum r (k) und die Abstiegsrichtung d (k) werden direkt mit der Näherung x (k) aktualisiert. Algorithmus 4.5.9 b, x (0) R n, A R n n SPD gegeben. r (0) := b Ax (0), p (0) := r (0). 97

Für k = 0, 1, 2,... do: α k = p(k) r (k) p (k) Ap (k) x (k+1) = x (k) + α k p (k) r (k+1) = r (k) α k Ap (k) β k = (Ap(k) ) r (k+1) (Ap (k) ) p (k) p (k+1) = r (k+1) β k p (k) end; Theorem 4.5.10 Sei A R n n SPD, b R n. Dann gilt: a) Jede Methode, die A konjugierte Richtungen verwendet, bricht in exakter Arithmetik nach max. n Schritten ab. b) Für x (k) aus cg-algorithmus 4.5.9 gilt mit e (k) A c = 2ck 1 + c 2k e(0) A (4.5.22) cond2 (A) 1 cond2 (A) + 1 < 1. 4.5.4 Vorkonditioniertes cg-verfahren Die Abschätzung (4.5.22) zeigt, dass die Konvergenz des cg-verfahrens durch die Kondition cond 2 (A) bestimmt ist. In der Praxis sind cg-verfahren nur dann erfolgreich für sehr grosse SPD Matrizen A, wenn sie in wesentlich weniger als n Schritten schon sehr gute Näherungen liefern. Dies ist, nach der Abschätzung (4.5.22), genau dann der Fall, wenn die Konstante c dort deutlich kleiner als 1 ist. Hierzu ist es notwendig, die Kondition der Matrix A klein zu machen. Idee: Sei A R n n SPD und P R n n SPD ein Vorkonditionierer: Vor Anwendung des cg-verfahrens schreiben wir das lineare System Ax = b um wie folgt: Ax = b P 1 2 AP 1 2 }{{} P 1 2 x = P }{{} 1 2 b. }{{} B y c und wenden das cg-verfahren auf das LGS mit der Vorkonditionierten Matrix B := P 1 2 AP 1 2 an. 98

Wichtig hierbei ist, dass das vorkonditionierte cg-verfahren algorithmisch realisiert werden kann, ohne dass jemails die Matrix B explizit gebildet wird! Falls nämlich A sowie P dünn besetzt sind, ist in der Regel B voll besetzt, und die Berechnung von B sowie x Bx benötigt wesentlich mehr Speicher und Arbeitsaufwand als die Speicherung von A, P beziehungsweise die Operationen x y := Ax und y z := P 1 y (die natürlich als Lösung des Hilfsgleichungssystems P z = y realisiert wird). Auf den ersten Blick nicht offensichtlich ist ebenfalls, dass im Vorkonditionierten cg-verfahren P 1/2 niemals gebildet werden muss. Algorithmus 4.5.11 (pccg). Seien A, P in R n n und b, x (0) R n gegeben. Setze: Berechne für k = 0, 1, 2,...: r (0) = b Ax (0), z (0) = P 1 r (0), p (0) = z (0) α k = (p(k) ) r (k) (p (k) ) Ap (k) x (k+1) = x (k) + α k p (k) r (k+1) = r (k) α k Ap (k) P z (k+1) = r (k+1) β k := (Ap(k) ) z (k+1) (Ap (k) ) p (k) p (k+1) := z (k+1) β k p (k). Als Übungsaufgabe rechne man nach, dass Algorithmus 4.5.11 in der Tat das cg-verfahren Algorithmus 4.5.9 angewandt auf die Matrix B = P 1/2 AP 1/2 ergibt. 99