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

Ähnliche Dokumente
Kommentierte Musterlösung zur Klausur HM I für Naturwissenschaftler

Numerisches Programmieren

Kevin Caldwell. 18.April 2012

Wie Google Webseiten bewertet. François Bry

Dünn besetzte Matrizen. Unterschiede in Speicherbedarf und Rechenzeit im Vergleich zu voll besetzten Matrizen. Besetzungsmuster mit spy.

2 Lineare Gleichungssysteme

Numerisches Programmieren

PageRank-Algorithmus

Numerische Behandlung des Eigenwertproblems

Schnelle Lösung großer Gleichungssysteme

Optimale Steuerung. Sequentielle Quadratische Programmierung. Kevin Sieg. 14. Juli Fachbereich für Mathematik und Statistik Universität Konstanz

Lineare Gleichungssysteme

Elemente der Analysis II

KAPITEL 3. Lineare Gleichungssysteme, direkte Lösungsverfahren

Berechnung von Eigenwerten und Eigenvektoren

Optimierung für Wirtschaftsinformatiker: Analytische Optimierung ohne Nebenbedingungen

Eigenwerte und Eigenvektoren von Matrizen

Untersuchung dünnbesetzter QR-Verfahren bei der Berechnung dünnbesetzter approximativer Inverser

TEILWEISE ASYNCHRONE ALGORITHMEN

Nichtlineare Optimierungsprobleme mit Komplexität

Lineare Ausgleichsprobleme. Lineare Ausgleichsprobleme. Normalgleichungen. Normalgleichungen

Ohne Mathematik undenkbar!

Lineare Gleichungssysteme

Praktikum Wissenschaftliches Rechnen 3. Aufgabenblatt

Einführung in die Vektor- und Matrizenrechnung. Matrizen

KAPITEL 4. Lineare Ausgleichsrechnung Beispiel 4.1. Das Ohmsche Gesetz: U = RI. Eine Meßreihe von Daten:

3.3 Eigenwerte und Eigenräume, Diagonalisierung

Google s PageRank. Eine Anwendung von Matrizen und Markovketten. Vortrag im Rahmen der Lehrerfortbildung an der TU Clausthal 23.

Kapitel 15. Lösung linearer Gleichungssysteme

Lineare Algebra und Lösung linearer zeitinvarianter Differentialgleichungssysteme

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt

Angewandte Umweltsystemanalyse: Finite-Elemente-Methode (FEM)

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

FB IV Mathematik Universität Trier. Präsentation von Nadja Wecker

1 Lineare Gleichungssysteme

Teil II. Nichtlineare Optimierung

Lineare Algebra (Mathe I) für Wirtschaftsinformatiker; Zusammenfassung

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

Lösungen zum 3. Aufgabenblatt

7 Die Determinante einer Matrix

Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung.

Mathematik für Bioinformatik und Systembiologie. - Kapitel Einführung in die Optimierung - Roland Herzog und Dirk Lebiedz

Suchmaschinen und Markov-Ketten 1 / 42

Rekursionen (Teschl/Teschl )

17. Penalty- und Barriere-Methoden

Im Jahr t = 0 hat eine Stadt Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

Bestimmung einer ersten

Satz 2.8.3: Sei Q eine Intensitätsmatrix. Dann hat die

Lineare Gleichungssysteme. Lineare Gleichungssysteme. LR Zerlegung ohne Pivotsuche. Zerlegung regulärer Matrizen

Mathematik 1. Inhaltsverzeichnis. Prof. Dr. K. Melzer.

Lineare Gleichungssysteme und Gauß'scher Algorithmus

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

Charakteristikenmethode im Beispiel

Einführung in die finite Elemente Methode

Optimierung mit Matlab

Vorlesung bzw. 23. Januar Determinanten 1. Cramersche Regel

Nichtlineare Optimierung ohne Nebenbedingungen

Gleitkommaarithmetik und Pivotsuche bei Gauß-Elimination. Lehrstuhl für Angewandte Mathematik Wintersemester 2009/

OPERATIONS-RESEARCH (OR)

Höhere Mathematik für Ingenieure IV. Volker John

Mathematik für Informatiker II. Beispiellösungen zur Probeklausur. Aufgabe 1. Aufgabe 2 (5+5 Punkte) Christoph Eisinger Sommersemester 2011

Maple-Skripte. A.1 Einleitung. A.2 Explizite Zweischritt-Runge-Kutta-Verfahren. Bei der Ausführung

Informationsverarbeitung im Bauwesen

6 Lösung linearer Gleichungssysteme I: LR-Zerlegung und Verwandte

= = = 3 10 = = 33

Risikomessung und Value at Risk Wintersemester 2013/14

Übungsaufgaben mit Lösungsvorschlägen

Kapitel 5 Netzwerkanalyse

Modellierung und Simulation eines Biogasreaktors. Dissertation. zur Erlangung des Doktorgrades. der Naturwissenschaften. vorgelegt beim Fachbereich 12

gramlich

(λ Ri I A+BR)v Ri = 0. Lässt sich umstellen zu

Modellierung, Simulation, Optimierung Diskretisierung 1

Lineare Gleichungssysteme

Distributed Graph Layout for Sensor Networks

PageRank-Algorithmus

Bildverarbeitung Herbstsemester Kanten und Ecken

Zur Numerik großdimensionaler Eigenwertprobleme. Werner Vogt Technische Universität Ilmenau Institut für Mathematik Postfach Ilmenau

Faktorisierung ganzer Zahlen mittels Pollards ρ-methode (1975)

Lineare Programmierung

klar. Um die zweite Bedingung zu zeigen, betrachte u i U i mit u i = 0. Das mittlere -Zeichen liefert s

Übungen zur Numerischen Mathematik 2 Sommersemester Übungsblatt 13

3. Grundlagen der Linearen Programmierung

Vorlesung 3 MINIMALE SPANNBÄUME

Finite Differenzen und Elemente

Black Jack - Kartenzählen

Lösung des Kleinste-Quadrate-Problems

7down Zusatzaufgaben. Mathias Ziebarth und Joachim Breitner. 13. März 2008

Eine Kurzanleitung zu Mathematica

Einführung in MATLAB

Suchmaschinen: Für einen sich rasant ändernden Suchraum gigantischer Größe sind Anfragen ohne merkliche Reaktionszeit zu beantworten.

Einführung in Mathcad H.

Übungen zum Ferienkurs Lineare Algebra WS 14/15

LINEARE ALGEBRA Ferienkurs. Hanna Schäfer Philipp Gadow

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

11. Primfaktorzerlegungen

Statistik I für Wirtschaftswissenschaftler Klausur am ,

3.2 Aufbau des Betriebsabrechnungsbogens

Transkript:

(für Informatiker) M. Grepl J. Berger & J.T. Frings Institut für Geometrie und Praktische Mathematik RWTH Aachen Wintersemester 2010/11

Problemstellung Lineare Gleichungssysteme, iterative Verfahren geg.: A R n n, b R n, n 1, A dünnbesetzt; ges.: x R n, so dass Ax = b, wobei a 1,1 a 1,2 a 1,n x 1 b 1 a 2,1 a 2,2 a 2,n A =......, x = x 2., b = b 2. a n,1 a n,2 a n,n x n b n und die meisten a i,j = 0 sind. Annahme: A nichtsingulär, d.h. det(a) 0 Spalten von A bilden eine Basis in R n Ax = b eindeutig lösbar.

Suchmaschinenranking PageRank Internet mit 3 Webseiten A B C Gegeben: Webseiten A, B und C Verlinkung der Seiten Gesucht: PageRank PR( ) von A, B und C Modell des Zufalls-Surfers: PR(A) PR(B) = 1 d 1 1 3 PR(C) 1 }{{}}{{} x = 0 0 1 1 + d 0 0 2 1 1 0 2 }{{} PR(A) PR(B) PR(C) }{{} 1 d 3 e + d Ḡ x

Suchmaschinenranking PageRank Internet mit 3 Webseiten A B C Gegeben: Webseiten A, B und C Verlinkung der Seiten Gesucht: PageRank PR( ) von A, B und C Modell des Zufalls-Surfers: PR(A) PR(B) = 1 d 1 0 0 1 1 1 + d 0 0 2 3 1 PR(C) 1 1 0 2 PR(A) PR(B) PR(C) (I d Ḡ) x = 1 d 3 e (LGS)

Suchmaschinenranking PageRank Größe des Index bei Google: September 2005: > 8 Milliarden Anzahl der indizierten Seiten seitdem nicht mehr gelistet. The World s Largest Matrix Computation (C. Moler) Berechnungsverfahren: PR(p i ) = 1 d N + d oder in Matrix-Vektor-Notation p j I(p i ) x = 1 d N e + d Ḡ x. mit x = [PR(p 1 ) PR(p 2 )...] T. PR(p j ) O(p j ).

Suchmaschinenranking PageRank Berechnungsverfahren: Iterativ Initialisiere: x(t = 0) = 1 N Löse (Fixpunktgleichung) x(t + 1) = 1 d N e + d Ḡ x(t). bis x(t + 1) x(t) < ε. Algebraisch Für t (stationärer Zustand) ergibt sich x = 1 d N e + d Ḡ x. Lösung des Gleichungssystems (I d Ḡ) x = 1 d N e.

Suchmaschinenranking PageRank Power Method Gleichung lässt sich auch schreiben als ( ) 1 d x = N E + d Ḡ x = G x. da Ḡ Übergangswahrscheinlichkeiten darstellt, und N x eine Wahrscheinlichkeitsverteilung mit i=1 x i = 1 ist. Lösung mit Power Method Initialisiere: x(t = 0) = 1 N Löse (Fixpunktgleichung) x(t + 1) = G x(t). bis x(t + 1) x(t) < ε. Hier: eindeutiger max. EW λ max = 1 (Perron-Frobenius)

Suchmaschinenranking PageRank Connectivity Matrix G von "Harvard 500" (Stand: August 2003) 0 50 100 150 200 250 300 350 400 450 500 0 100 200 300 400 500 nz = 2636 Elemente: 250000, nnz(g) = 2636, density = 0.0105

Poisson-Gleichung Gesucht u C 2 (Ω) C( Ω), Ω = [0, 1] 2, so daß Beispiel 12.4.: Lösung der diskretisierten Poisson-Gleichung u = 1 in Ω, Für den Fall f 1, g 0, h = 2 6 (n = 64): u = 0 auf Ω. Typisches Beispiel: Wärmeleitungsgleichung, Diffusionsgleichung. 0.08 0.07 0.06 0.05 0.04 0.03 0.02 0.01 0 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 0.8 1

Poisson-Gleichung Diskretisierung mit Finite Differenzen Verfahren: Regelmäßiges quadratisches Gitter mit Schrittweite h = 1 n Ersetzen der Ableitungen durch Finite Differenzen Gesucht ist x R m, m = (n 1) 2, so dass Ax = b mit A R m m T I 4 1 A = 1 I T I 1 4 1 h 2........., T =......... I T I 1 4 1 I T 1 4, T R (n 1) (n 1) und der Identitätsmatrix.I R (n 1) (n 1).

Anzahl der Unbekannten ist bei d Ortsvariablen proportional zu h d. Dünnbesetzte lineare Gleichungssysteme Dünnbesetztheit: Poisson-Gleichung Steifigkeitsmatrizen sind immer dünnbesetzt, d. h. nur eine gleichmäßig beschränkte Anzahl von Einträgen pro Zeile ist von Null verschieden. Diskretisierung mit Finite Differenzen Verfahren: spy(a) 0 50 100 150 200 0 50 100 150 200 nz = 1065 Dahmen-Reusken Elemente: 50625, nnz(g) = 1065, Kapitel density 13 = 0.021 3

Poisson-Gleichung Eigenschaften von Steifigkeitsmatrizen: Hochdimensionalität Anzahl der Unbekannten h d bei d Ortsvariablen Dünnbesetztheit Blockstruktur Bei Diskretisierung auf regelmäßigen Rechteckgittern Schlechte Kondition Diskrete Poisson-Gleichung: κ(a) = ( ) 2 2 πh Symmetrie, Positiv-Definitheit Diagonaldominanz (strikt für <) a i,j a i,i für alle i, j i

Poisson-Gleichung Nichtnullelemente von L bei der Cholesky-Zerlegung der Matrix A 1 : Problem des "fill in" bei Cholesky-Zerlegung A = LDL T : spy(l) 0 50 Fill-in bei einem direkten Löser 100 150 Bemerkung 13.2. Als direkter Löser für ein Gleichungssystem mit der Matrix A 1 würde sich die Cholesky-Zerlegung A 1 = LDL T anbieten. 200 Nichtnulleinträge der Matrizen A 1 und L: 0 50 100 150 200 nz = 3389 h 1/16 1/32 1/64 1/128 nz(a 1 ) 1065 4681 19593 80137 5h 2 nz(l) 3389 29821 250109 2048509 h 3 Dahmen-Reusken Kapitel 13 6 Das Verhalten nz(l) h 3 gegenüber nz(a 1 ) 5h 2 zeigt den ungünsti-

Dünnbesetzte Matrizen in Matlab Löse A x = b x = inv(a)b x = Aˆ(-1)b x = A\b Sparse Matrices Matlab is slow only if you use it incorrectly. (Mathworks) Wenn A dünnbesetzt ist, ist der Code langsam, wenn man den folgenden Befehl zu oft benutzt : A(i, j) = Warum? Hat damit zu tun, wie Matlab Matrizen speichert...

Dünnbesetzte Matrizen in Matlab Beispiel, wie dünnbesetzte Matrizen in Matlab gespeichert werden: Was passiert, wenn wir den folgenden Befehl eingeben? C(3,1) = 42

Dünnbesetzte Matrizen in Matlab Vorher: Nachher:

Dünnbesetzte Matrizen in Matlab Der Befehl C(3,1) = 42 benötigt Zeit, die proportional zu den Einträgen in C ist, die ungleich null sind Besseres Vorgehen: drei Vektoren generieren, die die Reihen und Spalten und zugehörige Einträge beinhalten: I(...) =... ; J(...) =... ; X(...) =... ; Zusammenbau der Matrix mit: A = sparse(i,j,x,n,n); Doppelte Einträge werden summiert (z.b. beim Finite Differenzen Code) Preallocate memory (spalloc).

Aufgabe Für A R n n (nichtsingulär) und b R n ist das Gleichungssystem A x = b zu lösen. Wir nehmen an, daß n groß (n 1000) und A dünnbesetzt ist. Beispiele: Google-Matrix Markov-Ketten Netzwerkanalyse Diskretisierung von (partiellen) DGL (Finite Differenzen, Finite Elemente, Finite Volumen)...

Erinnerung: Nachiteration Sei x 0 eine näherungweise Lösung von A x = b mit Residuum r 0 = b Ax 0.

Erinnerung: Nachiteration Sei x 0 eine näherungweise Lösung von A x = b mit Residuum r 0 = b Ax 0. Der Fehler, δ 0 = x x 0, erfüllt A δ 0 = A x A x 0 = b A x 0 = r 0

Erinnerung: Nachiteration Sei x 0 eine näherungweise Lösung von A x = b mit Residuum r 0 = b Ax 0. Der Fehler, δ 0 = x x 0, erfüllt A δ 0 = A x A x 0 = b A x 0 = r 0 Exakte Lösung ergibt sich aus x = x 0 + δ 0 = x 0 + A 1 (b A x 0 )

Erinnerung: Nachiteration Sei x 0 eine näherungweise Lösung von A x = b mit Residuum r 0 = b Ax 0. Der Fehler, δ 0 = x x 0, erfüllt A δ 0 = A x A x 0 = b A x 0 = r 0 Exakte Lösung ergibt sich aus x = x 0 + δ 0 = x 0 + A 1 (b A x 0 ) Problem: Lösung des LGS benötigt. A δ 0 = b A x 0

Erinnerung: Nachiteration Sei x 0 eine näherungweise Lösung von A x = b mit Residuum r 0 = b Ax 0. Der Fehler, δ 0 = x x 0, erfüllt A δ 0 = A x A x 0 = b A x 0 = r 0 Exakte Lösung ergibt sich aus x = x 0 + δ 0 = x 0 + A 1 (b A x 0 ) Problem: Lösung des LGS benötigt. aber... A δ 0 = b A x 0

Annahme: wir haben eine näherungweise Lösung x 0 Idee: x = x 0 + A 1 (b A x 0 )

Annahme: wir haben eine näherungweise Lösung x 0 x = x 0 + C(b A x 0 ) Idee: Ersetze A 1 durch C, wobei A 1 durch C "gut" approximiert wird, und der Aufwand der Matrix-Vektor Multiplikation Cy gering ist.

Annahme: wir haben eine näherungweise Lösung x 0 x k+1 = x k + C(b A x k ), k = 0, 1, 2,... Idee: Ersetze A 1 durch C, wobei A 1 durch C "gut" approximiert wird, und der Aufwand der Matrix-Vektor Multiplikation Cy gering ist. Führe Iteration für k = 0, 1, 2,... ein.

Annahme: wir haben eine näherungweise Lösung x 0 x k+1 = x k + C(b A x k ), k = 0, 1, 2,... Idee: Ersetze A 1 durch C, wobei A 1 durch C "gut" approximiert wird, und der Aufwand der Matrix-Vektor Multiplikation Cy gering ist. Führe Iteration für k = 0, 1, 2,... ein. Fixpunktiteration: x k+1 = x k + C(b A x k ) := Φ(x k ), k = 0, 1, 2,....

Fixpunktgleichung Φ(x) := x + C(b A x) mit geeignetem C R n n nichtsingulär. Fixpunktiteration x k+1 = Φ(x k ) = x k + C(b A x k ) = (I CA)x k + Cb, k = 0, 1, 2,...

Fixpunktgleichung Φ(x) := x + C(b A x) mit geeignetem C R n n nichtsingulär. Fixpunktiteration x k+1 = Φ(x k ) = x k + C(b A x k ) = (I CA)x k + Cb, k = 0, 1, 2,... Für den Fehler e k := x k x ergibt sich also e k+1 = x k+1 x = Φ(x k ) Φ(x ) = (I CA)e k e k = (I CA) k e 0, k = 0, 1, 2,...

Satz 13.3 Das Verfahren konvergiert für jeden Startwert x 0 gegen die Lösung x des Gleichungssystems genau dann, wenn ρ(i CA) < 1 gilt, wobei ρ(i CA) der Spektralradius, also der betragsmäßig größte Eigenwert, von I CA ist.

Satz 13.3 Das Verfahren konvergiert für jeden Startwert x 0 gegen die Lösung x des Gleichungssystems genau dann, wenn ρ(i CA) < 1 gilt, wobei ρ(i CA) der Spektralradius, also der betragsmäßig größte Eigenwert, von I CA ist. Folgerung 13.5 Für eine beliebige Vektornorm mit zugehöriger Operatornorm gilt: x k x I CA k x 0 x, k = 0, 1, 2,... Die Konvergenz ist für jeden Startwert x 0 gesichert, falls für irgendeine Norm die Bedingung erfüllt ist. I CA < 1

Konvergenzrate Dünnbesetzte lineare Gleichungssysteme Maß für die Konvergenzgeschwindigkeit: ρ(i CA).

Konvergenzrate Maß für die Konvergenzgeschwindigkeit: ρ(i CA). Je kleiner ρ(i CA) ist, desto schneller wird der Fehler reduziert.

Konvergenzrate Dünnbesetzte lineare Gleichungssysteme Maß für die Konvergenzgeschwindigkeit: ρ(i CA). Je kleiner ρ(i CA) ist, desto schneller wird der Fehler reduziert. Mittlere Fehlerreduktion in k Iterationsschritten ( ) e k 1 k σ k = λ e 0 1 = ρ(i CA) für k

Konvergenzrate Dünnbesetzte lineare Gleichungssysteme Maß für die Konvergenzgeschwindigkeit: ρ(i CA). Je kleiner ρ(i CA) ist, desto schneller wird der Fehler reduziert. Mittlere Fehlerreduktion in k Iterationsschritten ( ) e k 1 k σ k = λ e 0 1 = ρ(i CA) für k Reduktion des Anfangfehlers e 0 um Faktor 1 e benötigt k = ( ln σ k ) 1 Iterationsschritte

Konvergenzrate Dünnbesetzte lineare Gleichungssysteme Maß für die Konvergenzgeschwindigkeit: ρ(i CA). Je kleiner ρ(i CA) ist, desto schneller wird der Fehler reduziert. Mittlere Fehlerreduktion in k Iterationsschritten ( ) e k 1 k σ k = λ e 0 1 = ρ(i CA) für k Reduktion des Anfangfehlers e 0 um Faktor 1 e benötigt k = ( ln σ k ) 1 Iterationsschritte Asymptotische Konvergenzrate ln(ρ(i CA))

Wahl von C Zu A R n n wähle C R n n so, daß A 1 durch C genügend gut in dem Sinne approximiert wird, daß ρ(i CA) möglichst klein ist. die Operation y Cy mit möglichst geringem Aufwand durchführbar ist. Beachte: Bei den meisten iterativen Verfahren wird die Operation y Cy durchgeführt, ohne daß die Matrix C explizit berechnet wird.

Komplexität Zum Vergleich der unterschiedliche Verfahren, gehen wir davon aus, daß eine Klasse von Gleichungssytemen Ax = b vorliegt vorgegeben ist, mit welchem Faktor R ein (beliebiger) Startfehler reduziert werden soll ( e k = 1 R e0 ) Komplexität eines iterativen Verfahrens Größenordnung der Anzahl arithmetischer Operationen, die benötigt werden, um für das vorliegende Problem eine Fehlerreduktion um den Faktor R zu erreichen.

Jakobi Gauß-Seidel SOR Conjugate Gradients (später)

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Problemstellung Lineare Gleichungssysteme, iterative Verfahren geg.: A R n n, b R n, det(a) 0, und n 1, A dünnbesetzt; ges.: x R n, so dass Ax = b, wobei a 1,1 a 1,2 a 1,n x 1 b 1 a 2,1 a 2,2 a 2,n A =......, x = x 2., b = b 2. a n,1 a n,2 a n,n x n b n und die meisten a i,j = 0 sind. Vorgehen x k+1 = x k + C(b A x k ), k = 0, 1, 2,....

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Definition Definiere die Zerlegung A = D L U wobei a 1,1 0 0 0 a 2,2 0 D =......, 0 0 a n,n 0 0 0 a 1,2 a 1,n. L = a. 2,1.........., U =............ an 1,n. a n,1 a n,n 1 0 0 0

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Definition Diagonaldominanz Eine Matrix A R n n heißt strikt diagonaldominat, falls gilt n a i,j < a i,i. j=1 j i Zeilen-/Spaltensummenkriterium Eine Matrix A R n n erfüllt das starke Zeilensummenkriterium (bzw. Spaltensummenkriterium), wenn n a max i,j i a i,i < 1, n a bzw. max i,j j a i,i < 1. j=1 j i i=1 j i

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Jacobi-Verfahren Beim Jacobi- oder Gesamtschrittverfahren: Die Iterationsvorschrift lautet C = (diag(a)) 1 = D 1. x k+1 = (I D 1 A) x k + D 1 b, d.h. in Komponentenschreibweise ergibt sich: Algorithmus 13.7 (Jacobi-Verfahren) Gegeben: Startvektor x 0 R n. Für k = 0, 1,... berechne: ( x k+1 i = a 1 i,i b i n ) a i,j x k j, i = 1, 2,..., n j=1 j i

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Jacobi-Verfahren Vorgehen: Löse i-te Gleichung nach der i-ten Unbekannte x i auf. Verwende Werte aus dem vorherigen Iterationsschritt für die übrigen Unbekannten (x j, j i). Beachte: x k und x k+1 müssen gespeichert werden Verfahren leicht parallelisierbar Rechenaufwand. Der Rechenaufwand pro Iterationsschritt ist beim Jacobi-Verfahren angewandt auf eine dünnbesetzte Matrix A R n n vergleichbar mit einer Matrix-Vektor-Multiplikation A x, beansprucht also O(n) Operationen.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Konvergenz Satz 13.9 Für das Jacobi-Verfahren gelten folgende Konvergenzkriterien: Falls A als auch 2D A symmetrisch positiv definit sind, folgt ρ(i D 1 A) < 1. Falls A irreduzibel diagonaldominant ist, gilt ρ(i D 1 A) I D 1 A < 1. Satz: hinreichende Bedingung Das Jacobi-Verfahren konvergiert, falls A das starke Zeilensummen- oder Spaltensummenkriterium erfüllt.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel 13.10 Beispiel 13.10. Das Diffusionsproblem mit der Matrix A 1. Es gilt ρ(i CA) = ρ(i D 1 A 1 ) = max{ 1 1 4 h2 λ λ Eigenwert von A 1 } = 1 2 sin 2 ( 1 2 πh) = cos(πh) 1 2 1 π2 h 2. Für die asymptotische Konvergenzrate gilt somit ln(ρ(i D 1 A 1 )) ln(1 1 2 π2 h 2 ) 1 2 π2 h 2. Um einen Startfehler um einen Faktor R zu reduzieren, sind etwa K = Iterationsschritte erforderlich. ln R ln ρ(i D 1 A 1 ) 2 π 2 h 2 ln R Beachte: Die geschätzte Anzahl der notwendigen Iterationsschritte wächst in Abhängigkeit der Schrittweite h wie die Konditionszahlen der betreffenden Matrizen. Dahmen-Reusken Kapitel Numerisches 13 Rechnen 15

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel 13.10 Sei # die Anzahl von Iterationsschritten, die zur Reduktion des Startfehlers um einen Faktor R = 10 3 benötigt werden, und K die theoretische Schätzung von # aus: Ergebnisse: K = ln 103 ln(cos πh) 2 π 2 h 2 ln 103. h 1/40 1/80 1/160 1/320 # 2092 8345 33332 133227 K 2237 8956 35833 143338 Komplexität. Da m h 2, folgt, daß K m Iterationsschritte benötigt werden. Da jeder Schritt einen zu m proportionalen Aufwand erfordert, ergibt sich, daß die Komplexität des Jacobi-Verfahrens (für diese Problemstellung) etwa c m 2 ist.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel Gleichungssystem 4 1 0 1 0 1 4 1 0 1 0 1 4 1 0 1 0 1 4 1 0 1 0 1 4 x 1 x 2 x 3 x 4 x 5 = 100 100 100 100 100

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel Konvergenz

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Gauß-Seidel-Verfahren Beim Gauß-Seidel- oder Einzelschrittverfahren: Die Iterationsvorschrift lautet C = (D L) 1. x k+1 = (I (D L) 1 A) x k + (D L) 1 b, oder (D L) x k+1 = U x k + b, d.h. in Komponentenschreibweise ergibt sich: Algorithmus 13.12 (Gauß-Seidel-Verfahren) Gegeben: Startvektor x 0 R n. Für k = 0, 1,... berechne: ( x k+1 i = a 1 i,i b i i 1 a i,j x k+1 j n ) a i,j x k j, i = 1, 2,..., n. j=1 j=i+1

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Gauß-Seidel-Verfahren Vorgehen: Löse i-te Gleichung nach der i-ten Unbekannte x i auf. Verwende die bereits vorher berechneten Komponenten der neuen Annäherung. Beachte: Nur ein Vektor muss gespeichert werden Verfahren nicht mehr einfach parallelisierbar Ergebnis hängt von der Reihenfolge der Berechnung ab. Rechenaufwand. Für eine dünnbesetzte Matrix A R n n ist der Rechenaufwand pro Iterationsschritt beim Gauß-Seidel-Verfahren vergleichbar mit dem Aufwand beim Jacobi-Verfahren, beträgt also O(n) Operationen.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Konvergenz Satz 13.13 Für das Gauß-Verfahren gelten folgende Konvergenzkriterien: Falls A symmetrisch positiv definit sind, folgt ρ(i (D L) 1 A) < 1 Falls A irreduzibel diagonaldominant ist, gilt ρ(i (D L) 1 A) I (D L) 1 A < 1. Satz: hinreichende Bedingung Das Gauß-Seidel-Verfahren konvergiert, falls A das starke Zeilensummen- oder Spaltensummenkriterium erfüllt.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel 13.15 Beispiel 13.15. Das Diffusionsproblem mit der Matrix A 1. Dafür gilt: ρ(i CA 1 ) = ρ(i (D L) 1 A 1 ) = (ρ(i D 1 A 1 )) 2 Hieraus ergibt sich: ρ(i CA 1 ) = cos 2 (πh) 1 π 2 h 2. ln(ρ(i (D L) 1 A 1 )) ln(1 π 2 h 2 ) π 2 h 2. Um einen Startfehler um einen Faktor R zu reduzieren sind (asymptotisch) etwa K Iterationsschritte erforderlich, wobei Ergebnisse: K = ln R ln(ρ(i (D L) 1 A 1 )) 1 π 2 ln R. h2 h 1/40 1/80 1/160 1/320 # 1056 4193 16706 66694 K 1119 4478 17916 71669 Dahmen-Reusken Kapitel Numerisches 13 Rechnen 20

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel 13.15 Komplexität Für das Gauß-Seidel-Verfahren angewandt auf die diskrete Poisson- Gleichung A 1 x = b, A 1 R m m, m = (n 1) 2, n = 1 h ist die Komplexität c m 2 Operationen. Dahmen-Reusken Kapitel 13 21

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel Konvergenz

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Successive Over-Relaxation In vielen Fällen ist die Veränderung der x i von Iteration zu Iteration immer in die gleiche Richtung Korrektur ("over-relaxing") des Iterationsschritts kann die Konvergenz verbessern

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Successive Over-Relaxation Iterationsvorschrift bei Gauß-Seidel-Verfahren: ( x k+1 i = x k i + a 1 i,i b i i 1 a i,j x k+1 j n ) a i,j x k j, i = 1,..., n. j=1 Algorithmus 13.17 (SOR-Verfahren) j=i Gegeben: Startvektor x 0 R n, Parameter ω (0, 2). Für k = 0, 1,... berechne: ( = x k i + ω a 1 i,i b i i 1 a i,j x k+1 j n a i,j x k j x k+1 i j=1 Dies entspricht der Iterationsvorschrift j=i ( 1 ω D L) xk+1 = ( 1 ω D L) xk A x k + b, d.h. C = ( 1 ω D L) 1. ), i = 1,..., n.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Successive Over-Relaxation Rechenaufwand. Beim SOR-Verfahren ist der Rechenaufwand pro Iterationsschritt vergleichbar mit dem Aufwand beim Gauß- Rechenaufwand. Seidel-Verfahren, Beim also O(n) SOR-Verfahren Operationen ist der für Rechenaufwand ein dünnbesetztes pro Iterationsschritt A R n n. vergleichbar dem Aufwand beim Gauß-Seidel- Verfahren, also O(n) Operationen für eine dünnbesetzte Matrix Konvergenz A R n n. Satz 13.18. Sei M ω := I ( 1 ω D L) 1 A die Iterationsmatrix des SOR-Verfahrens. Es gilt: ρ(m ω ) ω 1. Für A s.p.d. gilt: ρ(m ω ) < 1 für alle ω (0, 2). Sei A irreduzibel diagonaldominant mit a i,j 0 für alle i j und a i,i > 0 für alle i. Dann gilt: ρ(m ω ) < 1 für alle ω (0, 1]. Dahmen-Reusken Numerisches Kapitel 13Rechnen 24

Beispiel 13.19. Jacobi-Verfahren Gauß-Seidel-Verfahren Die Diffusionsgleichung wie in den Beispielen SOR-Verfahren13.10 und 13.15 für den Fall h = 160 1. Beispiel 13.19 Anzahl der Iterationen in Abhängigkeit von ω: Anzahl der Iterationen in Abhängigkeit von ω (h = 1 160 ) 10 5 10 4 10 3 10 2 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 Dahmen-Reusken Numerisches Kapitel 13Rechnen 25

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Optimaler Wert von ω Optimaler Wert von ω Der optimale Wert von ω ist stark problemabhängig. Für die meisten Probleme ist dieser optimale Wert nicht bekannt. Eine Ausnahme bildet die diskretisierte Poisson-Gleichung (Matrix A 1 ): Der optimale Wert von ω ist stark problemabhängig Für die meisten Probleme ist der optimal Wert nicht bekannt Ausnahme: diskrete Poisson-Gleichung (Matrix A 1 ) Satz 13.20. Wir betrachten die diskretisierte Poisson-Gleichung A 1 x = b. Sei µ := ρ(i D 1 A 1 ) < 1 der Spektralradius der Iterationsmatrix des Jacobi-Verfahrens. Sei M ω die Iterationsmatrix des SOR-Verfahrens. Dann ist ρ(m ω ) für den Relaxationsparameter 2 2 ω opt := 1 + 1 = 1 + µ µ 2 1 + 1 µ 2 optimal und ρ(m ωopt ) = ω opt 1.

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Komplexität Komplexität. Für die diskretisierte Poisson-Gleichung A 1 x = b ergibt sich beim SOR-Verfahren mit dem optimalen ω-wert eine sehr große Komplexitätsverbesserung im Vergleich zum Jacobi- und zum Gauß-Seidel- Verfahren. ( ) 2 cos(πh) ρ(m ωopt ) = ω opt 1 = = 1 sin(πh) 1 + sin(πh) 1 + sin(πh) 1 2πh. ln R K = ln ρ(m ωopt ) 1 2πh ln R ln R m. 2π Da der Aufwand pro Iteration proportional zu m ist, hat dieses Verfahren eine Komplexität (für die vorliegende Problemstellung) von c m 1.5 Operationen.

Beispiel 13.21 Dünnbesetzte lineare Gleichungssysteme Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel 13.21. Poisson-Gleichung A 1 x = b mit x 0, b und R wie in Beispiel 13.10. Wir verwenden das SOR-Verfahren mit ω = ω opt. Ergebnisse: h 1/40 1/80 1/160 1/320 # 73 146 292 585 K 44 88 176 352 Dahmen-Reusken Kapitel 13 29

Jacobi-Verfahren Gauß-Seidel-Verfahren SOR-Verfahren Beispiel Konvergenz

Viele Problem in der Praxis führen auf große dünnbesetzte lineare Gleichungssysteme Direkte Verfahren Berechnung der Lösung bis auf Rundungsfehler in O(n 3 ) Operationen Problem des "fill-in" bei dünnbesetzten Matrizen Bestimmung der Lösung näherungweise Konvergenz hängt von Spektralradius ρ(i CA) ab Wenn A das strenge Zeilen- oder Spaltensummenkriterium erfüllt, konvergieren das Jacobi-Verfahren, das Gauss- Seidel-Verfahren, und Succesive Over-Relaxation.