Verfahren der konjugierten Gradienten (CG-Verfahren) sind effiziente Lösungsalgorithmen für symmetrische, positiv definite Systeme . Sie basieren auf der Verwendung von "Korrekturrichtungen" bei der Aktualisierung der Iterationen und Residuen. Dabei muß jeweils nur eine geringe Anzahl von Vektoren gespeichert werden.
Damit bestimmte Orthogonalitätsbedingungen der Vektorfolgen erfüllt bleiben, werden bei jeder Iteration zwei innere Produkte zur Berechnung von skalaren Korrekturgrößen gebildet. Bei symmetrischen, positiv definiten linearen Systemen bewirken diese Bedingungen, daß der Abstand zur exakten Lösung in der verwendeten Norm minimiert wird.
Die Iterationsvektoren werden in jedem Schritt um den-fachen Korrekturvektor p(i) verändert:
Dementsprechend werden die Residuen aktualisiert:
Die Parameterwahl
minimiert über alle . Die Korrekturrichtung wird unter der Verwendung der Residuen modifiziert:
Dabei sichert die Wahl
daß p(i) und Ap(i-1) und damit auch r(i) und r(i-1) orthogonal sind. Man kann sogar zeigen, daß auf diese Art die Orthogonalität von p(i) bzw r(i) zu allen vorhergehenden Ap(i) bzw r(i) und gewährleistet ist.
CG-Verfahren ohne Vorkonditionierrung konstruieren x(i) als Element des um den Startvektor x (o) verschobenen Krylov-Raums Ki(r(o), A)
durch x(i) minimiert wird, wobei x* die exakte Lösung von Ax = b bezeichnet. Die Existenz des Minimums
ist aber nur für symetrische und positiv definite Matrizen A gesichert.
Wie hier festgestellt wurde, liefert das CG-Verfahren - soferne keine Rundungsfehlereffekte auftreten - in maximal n Schritten die exakte Lösung x* eines linearen Gleichungsystems mit symmetrischer und positiv definiter Matrix. Da aber in der Praxis Rundungsfehler nicht zu vermeiden sind, verwendet man das CG-Verfahren nicht als direktes, sondern als iteratives Verfahren, dessen Konvergenzgeschwindigkeit durch
charakterisiert ist (Deuflhard, Hohmann [41], Golub,Ortega [47]).
Die Konvergenzgeschwindigkeit des CG-Verfahrens hängt von der Kondition der Matrix A ab. Für eine Matrix mit der optimalen Kondition, und für. Je schlechter das Gleichungssystem konditioniert ist, desto langsamer wird also die Konvergenz des CG-Verfahrens. Die Idee der Vorkonditionierung beruht nun darauf, von dem ursprünglich gegebenen Gleichungssystem mit Hilfe einer regulären Matrix M zu einem äquivalenten System überzugehen:
.
Je besser M die Matrix A approximiert, desto kleiner wird und desto rascher konvergiert daß CG-Verfahren, wenn man es auf das neue Gleichungsystem anwendet. Für M = A gilt , nur ist diese Wahl sinnlos, da sie ebenfalls die Lösung eines linearen Gleichungssystem erfordert. Eine praktisch brauchbare Vorkonditionierung darf keinen unzulässig hohen Aufwand erfordern, muß aber eine signifikante Konvergenzbeschleunigung erzielen, Eine ausführliche Diskussion praktisch erprobter Methoden zur Vorkonditionierung findet sich hier .
Aus der Abschätzung erkennt man, daß die Anzahl der Iterationen zur relativen Reduktion des Fehlers um c proportional zu ist, also lineare Konvergenz des CG-Verfahrens vorliegt.
Besitzen größter und kleinster Eigenwert der Matrix M -1 A sehr unterschiedliche
Größe, so ist häufig sogar überlineare Konvergenz
feststellbar: die Konvergenzrate wächst pro Iteration. Dieses Phänomen
ist dadurch erklärbar, daß CG-Verfahren dazu tendieren, zuerst
Fehlerkomponenten zu reduzieren, die in der Richtung der zu den extremen
Eigenwerten gehörigen Eigenvektoren liegen. Sind diese eliminiert,
setzt sich das Verfahren so fort, als ob diese Eigenwerte nicht existierten,
wodurch die Konvergenzrate von einem reduzierten System mit (viel) kleinerer
Konditionszahl abhängt. Genaue Analysen dieses Phänomens findet
man bei Van der Sluis, Van der Vorst [3841].