Methode der konjugierten Gradienten
Lineare
Gleichungs-
systeme
Zur Startseite "Einführung, Lösbarkeit, Determinanten" Gauß, LR-Zerlegung, Cholesky, Matrix-Inversion, homogene Systeme, dünn besetzte Matrix, überbestimmte Systeme, Standard-Software, Kondition, Singularität Zur Startseite "Iterationsverfahren für lineare Gleichungssysteme" Symbolische Rechnung, numerische Berechnung, Beispiele mit verschiedenen Softwareprodukten, der Backslash-Operator in Matlab Zur Startseite "Rundungsfehler, Kondition, Singularität, Skalierung" Zum Vergleich"Direkte Verfahren vs. Iterationsverfahren" Zur Startseite "Überbestimmte Gleichungssysteme"

Minimalproblem und lineares Gleichungssystem

Die dem Verfahren der konjugierten Gradienten zu Grunde liegende Idee ist dem Ingenieur durch die Energieverfahren der Mechanik vertraut. Dies soll hier an einem kleinen Beispiel in Erinnerung gerufen werden (für den nur am mathematischen Sachverhalt interessierten Leser ist es unerheblich, ob er den Mechanik-Hintergrund der folgenden Ausführungen versteht, er braucht ihn nur zur Kenntnis zu nehmen):

StatUnbTragwerkFür ein (statisch unbestimmtes) elastisches Tragwerk, wie es nebenstehend abgebildet ist (entnommen aus "Dankert/Dankert: Technische Mechanik", Seite 187, die folgenden Seitenangaben beziehen sich auch auf dieses Buch), kann die Verformungsberechnung mit Hilfe des "Prinzips vom Minimum des elastischen Potenzials" durchgeführt werden (siehe z. B. Seite 638 oder Internet-Site "Grundgleichungen der Finite-Elemente-Methode"): "Die Differenz zwischen der im System gespeicherten Formänderungsenergie und der so genannten "Endwertarbeit" der äußeren Kräfte ist für den sich tatsächlich einstellenden Verformungszustand ein Minimum".

Für das skizzierte Tragwerk wird der Verformungszustand durch die Horizontalverschiebung ux und die Vertikalverschiebung uy des belasteten Knotens A beschrieben (die Lagerung der anderen Knoten lässt keine weiteren Verformungen zu). Mit der Formel für die Formänderungsenergie für den geraden Stab, die man z. B. auf Seite 405 findet, liefert das Prinzip vom Minimum des elastischen Potenzials (mit der Annahme eines linear veränderlichen Verschiebungsverlaufs in Längsrichtung der einzelnen Stäbe):

PiStabwerk

bzw.

PiStabwerkAllg

mit der (symmetrischen und positiv definiten) Steifigkeitsmatrix K. Die Herleitung der Elemente kii dieser Matrix für den oben skizzierten allgemeinen Fall findet man auf den Seiten 188 und 189. Hier sollen zur Vereinfachung die speziellen Zahlenwerte

StabwerkZahlenwerte02

angenommen werden. Dann kann die Bedingung so formuliert werden: Die sich tatsächlich einstellenden Knotenverschiebungen ux und uy des Lastangriffspunktes minimieren den folgenden Ausdruck:

PiStabwerkSpeziell

MinimumVonPI(die Dimensionen der Zahlenwerte wurden weggelassen, die Verschiebungen ergeben sich mit der Dimension mm). Nebenstehend ist die Funktion Π(ux,uy) dargestellt, die gesuchte Lösung ist in der  ux-uy-Ebene, in der die Höhenlinen der Funktion gezeichnet wurden, zu finden.

Natürlich lässt sich das Ergebnis auch analytisch finden. Die von den beiden Variablen ux und uy abhängige Funktion Π hat genau dort einen Extremwert (Minimum), wo die beiden partiellen Ableitungen nach diesen Variablen verschwinden. Nach den Regeln für die Ableitungen von Matrixausdrücken folgt aus der Bedingung

dPiNachduGleichNull

ein lineares Gleichungssystem mit der entsprechenden Lösung:

 

KuGleichf

Methode der konjugierten Gradienten

Zur Lösung des linearen Gleichungssystems mit n Unbekannten

AxGleichB13

mit der symmetrischen und positiven Koeffizientenmatrix A wird nun genau der entgegengesetzte Weg zu dem oben beschrieben Verfahren gewählt: Es wird das zu dem Gleichungssystem analoge Minimalproblem

FvonxAllg

betrachtet, wobei der Vektor x gesucht wird, für den F minimal wird. Die Strategie ist, dass man mit einem Startvektor x0 beginnt und eine Folge von iterierten Vektoren x1, x2, x3, ... mit dem Ziel erzeugt, dass diese sich immer mehr dem Lösungsvektor nähern, der F zum Minimum macht.  Dies hat sich zu einem umfangreichen Spezialgebiet der numerischen Mathematik entwickelt, auf das hier nicht eingegangen werden soll. Die Stichworte dazu, für die man auch im Internet zahlreiche Seiten findet, lauten u. a.: "Krylow-Unterraum-Verfahren", "Methode des steilsten Abstiegs" und "Verfahren der konjugierten Richtungen". Hier soll ausschließlich die "Methode der konjugierten Gradienten" betrachtet werden, die eine gewisse Sonderstellung unter den Verfahren dieser Klasse einnimmt.

Bei der "Methode der konjugierten Gradienten" nähert man sich dem Minimum von F, indem man auf der Fläche F(x), beginnend an einem beliebigen Startpunkt jeweils in die Richtung "wandert", dass man sich dem Minimum auf optimale Weise nähert, wobei das Wort "optimal" für jeden Schritt so zu verstehen ist, dass man aus den zu diesem Zeitpunkt verfügbaren Informationen eine Richtung wählt, die theoretisch garantiert, dass nach n Schritten der Minimalpunkt (und damit die Lösung des Gleichungssystems) erreicht wird.

Auf die Herleitung des nachfolgend angegebenen Algorithmus wird hier verzichtet, eine sehr schöne kompakte Darstellung findet man z. B. im PDF-Skript von Hagemann und Schenk (Universität Basel).

Gleichungssystem:

BspKonjGrad

Anfangswerte:

BspKonjGradAnfWerte

Iterationsschritt  i = 0:

BspKonjGradSchritt0

Vorbereitung des Iterationsschrittes i = 1:

BspKonjGradVorbSchritt1

Iterationsschritt  i = 1:

BspKonjGradSchritt1

Vorbereitung des Iterationsschrittes i = 2:

BspKonjGradVorbSchritt2

Residuenvektor = Nullvektor, Prozess beendet.

In Kurzfassung kann die Methode der konjugierten Gradienten wie folgt formuliert werden, rechts daneben findet man jeweils die Rechnung für das Gleichungssystem, das oben für das Stabwerk formuliert wurde:

  • Gestartet wird mit einem beliebigen Vektor x0 (dies kann auch ein Nullvektor sein), mit dem ein erster "Residuenvektor" r0 berechnet wird, der auch als erster "Korrekturvektor" p0 verwendet wird:

KonjGradAnfWerte02

  • Jeder Iterationsschritt i folgt folgender Strategie: Der Vektor xi+1 wird durch Korrektur des Vektors xi in die Richtung pi berechnet, wobei die "Schrittlänge des pi-Schrittes" durch einen Faktor λi bestimmt wird:

KonjGradSchritti02

  • Als Vorbereitung des folgenden Iterationsschrittes werden ein neuer Residuenvektor ri+1 und ein neuer Korrekturvektor pi+1 berechnet:

           KonjGradVorbSchrittiPlus102    

  • Es folgt der nächste Integrationsschritt nach den oben angegebenen Formeln. Der Prozess konvergiert, wenn Rundungsfehler keine Rolle spielen, nach n Iterationsschritten (i = 0, 1, 2, ... , n-1). Die Methode der konjugierten Gradienten kann also sowohl als Iterationsverfahren als auch als direktes Verfahren gesehen werden, das wie die Eliminationsverfahren das Ergebnis nach einer endlichen Anzahl von Operationen liefert.

Man beachte die typische Besonderheit der iterativen Verfahren: Die Koeffizientenmatrix A wird ausschließlich für die Operation "Matrix · Vektor" verwendet (die Bildung des Produkts Api muss natürlich in jedem Iterationsschritt einschließlich der Vorbereitung des folgenden Schrittes nur einmal ausgeführt werden). Die Matrix A selbst wird nicht verändert (das für die Eliminationsverfahren typische Problem des "Fill-in" gibt es bei Iterationsverfahren nicht). Deshalb können die Vorteile dünn besetzter Matrizen voll genutzt werden.

Andererseits sind die iterativen Verfahren nicht so stabil wie die direkten Verfahren. Man vergleiche hierzu die beiden Seiten "Testrechnungen mit iterativen Verfahren (1)" und "Testrechnungen mit iterativen Verfahren (2)". Eine Verbesserung kann durch "Präkonditionierung" erreicht werden, das oben vorgestellte Verfahren kann z. B. sehr einfach modifiziert werden zum "Präkonditionierten Konjugierte-Gradienten-Verfahren".

Home02

Homepage “Dankert/Dankert: Technische Mechanik”

Home02

Homepage “WWW - Ergänzung - Vertiefung - WWW”

Mail02

D

Mail202

nkert.de