Benutzer:Stepri2005/Kurs:Optimierung II/Verfahren der konjugierten Richtungen

Als nächstes wollen wir Verfahren der konjugierten Richtungen und speziell Verfahren der konjugierten Gradienten zur Lösung des unrestringierten Optimierungsproblems

vorstellen. Letztere Verfahren bezeichnet man auch kurz als CG-Verfahren, wobei „CG“ für engl. „conjugate gradients“ steht. Solche CG-Verfahren konvergieren im Allgemeinen wesentlich schneller als das Gradienten-Verfahren, sind aber normalerweise langsamer als das globalisierte Newton-Verfahren oder Quasi-Newton-Verfahren, welche wir später in den Kapiteln 6 und 7 behandeln werden. Im Vergleich mit letzteren Verfahren haben sie aber auch Vorzüge, die im Einzelfall zum Tragen kommen mögen.

5.1 Motivation der Verfahren

Bearbeiten

Wir betrachten zunächst nur quadratische Funktionen

(5.1)  

mit positiv definiter Matrix  . Gemäß Korollar 1.18 erhält man die eindeutige Lösung   von Problem   mit einem solchen   als eindeutige Lösung des linearen Gleichungssystems

 

Sie lautet folglich  . Verfahren zur Minimierung quadratischer Funktionen sind also gleichzeitig auch immer Verfahren zur Lösung linearer Gleichungssysteme und umgekehrt. So werden CG-Verfahren auch vielfach zur Lösung großer linearer Gleichungssysteme mit dünn besetzter, positiv definiter Matrix verwendet, zumeist in Verbindung mit einem Präkonditionierer (s. Abschnitt 5.5).

Grundlegend für die hier diskutierten CG-Verfahren ist die nachstehende Definition.

Definition 5.1

Bearbeiten
Sei   eine symmetrische und positiv definite Matrix. Vektoren   heißen A-konjugiert, falls     ist und falls gilt:
 

Definiert man für eine symmetrische, positiv definite Matrix  

(5.2)  

so lässt sich leicht zeigen, dass   ein Skalarprodukt auf dem   definiert. Die A-Konjugiertheit von Vektoren   bedeutet also, dass   vom Nullvektor verschiedene, bezüglich des Skalarproduktes   orthogonale Vektoren sind. Nach einem aus der Linearen Algebra bekannten Ergebnis sind solche Vektoren immer linear unabhängig:

Lemma 5.2

Bearbeiten
Sind   von 0 verschiedene Vektoren, die bezüglich eines Skalarproduktes   auf dem   orthogonal zueinander sind, so sind diese linear unabhängig und ist  .

Für jedes   gilt wegen  

 

Die Vektoren   sind also linear unabhängig. Da höchstens   Vektoren linear unabhängig sein können, ist  .

q.e.d.

Wir nehmen nun zunächst an, dass für die in der quadratischen Funktion (5.1) auftretende Matrix   konjugierte Vektoren   bekannt seien. Mit diesen Vektoren als Spalten definieren wir dann die  -Matrix

 

Aufgrund der linearen Unabhängigkeit der Vektoren   ist   nichtsingulär. Weiter definieren wir die - aufgrund der positiven Definitheit von   positiven - Zahlen

 

und mit diesen die Diagonalmatrix

 

Die Matrix   verwenden wir nun, um mittels der Variablentransformation   zu einer quadratischen Funktion zu gelangen, welche einfacher als die quadratische Funktion   in (5.1) zu minimieren ist. Und zwar liefert diese Transformation

(5.3)  

mit

(5.4)  

Die so gewonnene quadratische Funktion   ist also separierbar, d. h., sie ist als Summe von Funktionen   darstellbar, die jeweils von Variablen abhängen (in diesem Fall einer einzigen Variablen), die nur in ihr und in keinem weiteren   mit   vorkommen. Demzufolge kann   in (5.3) über   minimiert werden, indem jedes   hinsichtlich der Komponente   von   minimiert wird. Da   gleichmäßig konvex ist, besitzt   einen eindeutigen Minimalpunkt   und gilt demnach

 

Der Minimierer   von   soll nun folgendermaßen komponentenweise generiert werden, wobei   der  -te Standardeinheitsvektor und   ein beliebiger Vektor ist. Ist   nicht bereits der Minimierer von  , so ist mit einem  

 

Somit ist   die erste Komponente der gesuchten Lösung  . Wir setzen dann

 

und fahren mit   für   in analoger Weise fort, sofern nicht   bereits die Funktion   minimiert. So erhalten wir   sowie

 

Allgemein ist   also der Minimierer von   und

 

Da von dem Vektor   höchstens die  -te Komponente verschieden von 0 ist, folgt damit

 
 

Also kann man, ausgehend von einem  , in maximal   Schritten   ermitteln, indem man für   in   die Koordinatenrichtung   als neue Richtung wählt, dann die Minimum-Schrittweite   in diese Richtung bestimmt und anschließend   setzt. Rückübersetzung in den  -Raum liefert schließlich die Iterationsvorschrift

 

und zur Bestimmung der Schrittweite die Formel

 

Man beachte dabei, dass hier   keine positive Zahl sein muss. Denn mit   sind ja auch die Vektoren    -konjugiert und hat   für   sicher umgekehrtes Vorzeichen wie für  . Wir wollen   trotzdem als Minimum-Schrittweite bezeichnen. Gemäß Beispiel 3.5 ist diese für jedes   bestimmt durch

 

wobei die Abstiegsbedingung   offenbar nicht für beliebige  -konjugierte Vektoren   erfüllt sein kann.

Wegen des häufigen Vorkommens des Gradienten im Rest dieses Kapitels verwenden wir ab jetzt für jedes   die Abkürzung

 

Zur Lösung der Aufgabe   für eine quadratische Zielfunktion   wie in (5.1) mit positiv definiter Matrix   haben wir also den folgenden Algorithmus hergeleitet.

Algorithmus 5.3 (Verfahren konjugierter Richtungen für quadratisches f)

Bearbeiten
(0) Wähle  -konjugierte Richtungen   und  . Setze  .
(1) Falls   ist, stop!
(2) Berechne
 
und setze
 
(3) Setze   und gehe nach (1).

Wie gezeigt wurde, bricht Algorithmus 5.3 in Schritt (1) für   nach höchstens   Iterationen mit der Lösung   des Problems   ab.

5.2 Erzeugung konjugierter Richtungen

Bearbeiten

Wie kann man nun  -konjugierte Richtungen erzeugen? Dies ist mit Hilfe des aus der Linearen Algebra bekannten und im nächsten Satz angegebenen Gram-Schmidt-Orthogonalisierungsverfahrens möglich, mit dem   beliebige, linear unabhängige Vektoren bezüglich des Skalarproduktes   orthogonalisiert werden können. (Auf die Normierung wird hier verzichtet.) Mit   ist dabei der von   aufgespannte Teilraum des   gemeint.

Satz 5.4 (Gram-Schmidt)

Bearbeiten
Sei   ein Skalarprodukt auf dem   und seien   linear unabhängige Vektoren. Dann sind die durch
 
definierten Vektoren   bezüglich   orthogonal zueinander und es gilt
 

Wir betrachten nun den folgenden Algorithmus zur Lösung von Problem   für eine quadratische Funktion wie in (5.1) mit positiv definiter Matrix  .

=== Algorithmus 5.5 (Verfahren konjugierter Gradienten für quadratisches f)

(0) Wähle   und setze   und  .
(1) Falls   ist, stop!
(2) Berechne
(5.5)  
und setze
 
(3) Berechne
(5.6)  
(4) Setze   und gehe nach (1).

Wenn die von Algorithmus 5.5 erzeugten Vektoren   linear unabhängig sind, so werden die dadurch erzeugten Richtungen   offenbar durch eine Gram-Schmidt-Orthogonalisierung der Vektoren   bezüglich des Skalarproduktes   gewonnen und sind die Richtungen   folglich  -konjugiert. Wie in Abschnitt 5.1 gezeigt wurde, bricht in diesem Fall das Verfahren spätestens für   in Schritt (1) mit der Lösung   von Problem   ab. Das folgende Lemma zeigt nun, dass die Vektoren     bezüglich des Skalarproduktes

(5.7)  

sogar paarweise zueinander orthogonal sind, woraus ihre lineare Unabhängigkeit gemäß Lemma 5.2 folgt. Wir verwenden dabei die für   in (5.1) geltende Beziehung

(5.8)  

Lemma 5.6

Bearbeiten
Sei   die quadratische Funktion in (5.1) mit positiv definitem  . Dann bricht Algorithmus 5.5 mit   für ein   mit   ab und für die durch ihn erzeugten Gradienten   gilt für jedes  , dass   ist sowie
(5.9)  
und
(5.10)  

Aufgrund von Schritt (1) des Verfahrens gilt   für  . Wir wollen nun die Richtigkeit von (5.9) mittels vollständiger Induktion nach   beweisen. Offenbar gilt (5.9) für  , da mit (5.8),   und (5.5) folgt:

 

Wir machen jetzt die Induktionsannahme, dass

(5.11)  

für beliebiges, festes   gilt. Die Vektoren   sind dann von Null verschiedene, bezüglich (5.7) orthogonale und nach Lemma 5.2 linear unabhängige Vektoren. Gemäß der Definition der   impliziert somit die Induktionsannahme gemäß Satz 5.4

(5.12)  

und

 

Für   kann man daher   mit gewissen   in der Form   darstellen und folgt daher wegen (5.11)

(5.13)  

Wir wollen wir nun die Gültigkeit der Gleichungen (5.9) für   zeigen, d. h., dass gilt:

 

Sei zunächst  . Dann haben wir mit (5.8) unter Verwendung der Induktionsannahme (5.11), der Definition (5.6) und der Folgerung (5.12)

 

Für   erhalten wir schließlich auf ähnliche Weise

 
 

wobei zum Schluss (5.13) verwendet wurde. Also ist (5.9) gezeigt. Die letzten beiden Identitäten zeigen auch die Gültigkeit von (5.10).

q.e.d.

Man kann also bei Algorithmus 5.5 in der Tat von einem Verfahren der konjugierten Gradienten sprechen. Da   für   ist, folgt überdies mit (5.10), dass die mit diesem Algorithmus generierten Richtungen   für diese   Abstiegsrichtungen sind.

5.3 Das Verfahren von Fletcher und Reeves

Bearbeiten

In der angegebenen Form ist Algorithmus 5.5 aus numerischer Sicht vollkommen unattraktiv, da die Berechnung der Summe in (5.6) zumindest für größere   numerisch sehr teuer ist und mit wachsendem   immer teuerer wird. Bemerkenswerterweise kann man aber diese Summe durch einen einzelnen Term ersetzen, welcher nur die Berechnung der Normen der ohnehin benötigten Vektoren   und   erfordert. Letzteres zeigt der Beweis des folgenden Lemmas.

Lemma 5.7

Bearbeiten
Für die in Algorithmus 5.5 erzeugten Richtungen gilt für quadratisches   wie in (5.1) mit positiv definitem  :
 

Aus (5.8) folgt

(5.14)  

und damit unter Verwendung von (5.9) für   anstelle von  

 

Also folgt die Behauptung unter Verwendung von (5.14), (5.9), (5.5) und (5.10) mit

(5.15)  

q.e.d.

Berücksichtigt man Lemma 5.7, so ist Algorithmus 5.5 für gleichmäßig konvexe, quadratische Funktionen gerade das Verfahren von Hestenes und Stiefel aus dem Jahre 1952, welches 1964 von Fletcher und Reeves auf beliebige Funktionen   verallgemeinert wurde. Dieses lautet wie folgt:

Algorithmus 5.8 (Fletcher-Reeves-Verfahren)

Bearbeiten
(0) Wähle eine exakte Schrittweitenregel, ein   und setze   und  .
(1) Falls   ist, stop! (  ist kritische Lösung von Problem  .)
(2) Bestimme die Schrittweite   und setze
 
(3) Berechne
 
und setze
 
(4) Setze   und gehe nach (1).

Aus dem Vorangegangenen folgt, dass das Verfahren von Fletcher und Reeves für gleichmäßig konvexes, quadratisches   spätestens für   mit der Lösung   von   abbricht.

Wir wollen als nächstes zeigen, dass das Verfahren auch für nichtquadratisches   gegen eine Lösung des unrestringierten Optimierungsproblems   konvergiert. Dazu benötigen wir:

Lemma 5.9

Bearbeiten
Seien   beliebige Vektoren und   eine exakte Schrittweite. Dann gilt für  :
(i)   und
(ii) für   mit  
 

Für jede exakte Schrittweite gilt per Definition

 

Also ist Aussage (i) richtig. Mit (i) folgt Aussage (ii) wegen

 

q.e.d.

Für   ist nach Aussage (ii) von Lemma 5.9 jede Richtung   der dort angegebenen Form eine Abstiegsrichtung für   in  . Da bekanntlich   auch eine Abstiegsrichtung ist, ist also das Verfahren von Fletcher-Reeves ein Abstiegsverfahren vom Typ des Modellalgorithmus 2.5. Wir können daher seine Konvergenz für beliebiges   nachweisen, indem wir uns auf die Konvergenzaussage aus Satz 2.14 für den Modellalgorithmus beziehen.

Satz 5.10

Bearbeiten
Es seien (V1) - (V3) erfüllt.
(i) Bricht Algorithmus 5.8 nicht nach endlich vielen Schritten ab, so erzeugt er eine Folge  , die einen Häufungspunkt besitzt, der kritische Lösung von   ist und die im Fall, dass auch (V4) erfüllt ist, gegen die Lösung   von Problem   konvergiert.
(ii) Ist die Zielfunktion   quadratisch wie in (5.1) mit positiv definiter Matrix  , so sind die erzeugten Richtungen    -konjugiert und bricht das Verfahren spätestens für   mit der Lösung   von Problem   ab.

Algorithmus 5.8 breche nicht nach endlich vielen Schritten ab. Nach Lemma 5.9 ist dann jede vom Algorithmus erzeugte Richtung   Abstiegsrichtung für   in  . Ferner bekommen wir für   aus (2.26) mit Aussage (ii) von Lemma 5.9

 

Wir setzen nun

 

Wegen   ist dann

(5.16)  

und als Folge der Definitionen von   und   sowie von Lemma 5.9

 

Somit erhalten wir mit (5.16)

 

und demzufolge

(5.17)  

Angenommen,   besäße keinen Häufungspunkt, der kritische Lösung von Problem   ist. Dann gäbe es ein   mit   und es wäre

 

mit   für   aus (2.9). Da   eine exakte Schrittweite ist, ergäbe sich weiter mit Satz 3.3 und Lemma 5.9

 

Summation für   lieferte dann

 

Letzteres kann aufgrund der Divergenz der harmonischen Reihe nicht richtig sein, wie man durch Grenzübergang für   mit Aussage (iv) von Lemma 2.13 erkennt. Somit besitzt   mindestens einen Häufungspunkt, der kritische Lösung von   ist.

Ist zusätzlich (V4) erfüllt, so ergibt sich mit den Aussagen (v) und (vi) von Lemma 2.9 und mit Aussage (i) von Lemma 2.13 für  

 

Also schließt man mit (5.17)

Fehler beim Parsen (Syntaxfehler): {\displaystyle \frac{\left\|g^k\right\|^2}{\|g^j\|^2} \le \frac \gamma\beta \Rightarrow \frac 1\{\alpha^2_k} \le 1 + \frac \gamma\beta k \Rightarrow \alpha^2_k \ge \frac 1{1 + \frac \gamma\beta k} \Rightarrow \sum^\infty_{k=0} \alpha^2_k = \infty.}

Das heißt, die Zoutendijk-Bedingung ist erfüllt, so dass aus Satz 2.14 die Konvergenz     folgt. Aussage (ii) ist schließlich eine Konsequenz von Lemma 5.7 und den Ergebnissen aus den Abschnitten 5.1 und 5.2.

q.e.d.

5.4 Das Verfahren von Polak und Ribière

Bearbeiten

Eine weitere bekannte Variante der Verfahren der konjugierten Gradienten für nichtquadratische Zielfunktionen geht auf Polak und Ribière (1969) zurück. Hier verwendet man statt Lemma 5.7 das folgende Ergebnis.

Lemma 5.11

Bearbeiten
Für die in Algorithmus 5.3 erzeugten Richtungen gilt für   wie in (5.1) mit positiv definitem  :
(5.18)   mit  

Mit (5.15) und (5.9) schließt man:

 

q.e.d.

Algorithmus 5.5 in Verbindung mit Formel (5.18) führt zu dem Verfahren von Polak-Ribière, welches für quadratische Funktionen mit dem Verfahren von Fletcher-Reeves zusammenfällt.

Algorithmus 5.12 (Polak-Ribière-Verfahren)

Bearbeiten
(0) Wähle eine exakte Schrittweitenregel und ein  . Setze   und  .
(1) Falls   ist, stop! (  ist kritische Lösung von Problem  .)
(2) Bestimme die Schrittweite   und setze
 
(3) Berechne
 
und setze
 
(4) Setze   und gehe nach (1).

Für den Konvergenzbeweis beziehen wir uns wiederum auf den allgemeinen Konvergenzsatz 2.14.

Satz 5.13

Bearbeiten
Es seien (V1) - (V4) erfüllt.
(i) Algorithmus 5.12 bricht entweder nach endlich vielen Schritten ab oder er erzeugt eine Folge   mit  , wobei   die eindeutige Lösung von   ist.
(ii) Ist die Zielfunktion   quadratisch wie in (5.1) mit positiv definiter Matrix  , so sind die erzeugten Richtungen    -konjugiert und bricht das Verfahren spätestens für   mit der Lösung   von Problem   ab.

Algorithmus 5.12 breche nicht nach endlich vielen Schritten ab. Aufgrund von Aussage (ii) von Lemma 5.9 ist dann jede vom Algorithmus erzeugte Richtung   eine Abstiegsrichtung von   in  . Wir wollen nun die Konvergenz des Verfahrens mittels Satz 2.14 nachweisen, indem wir zeigen, dass die Zoutendijk-Bedingung   mit

Fehler beim Parsen (SVG (MathML kann über ein Browser-Plugin aktiviert werden): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „http://localhost:6011/de.wikiversity.org/v1/“:): {\displaystyle \alpha_k = - \frac{(g^k)^T p^k}{\|g^k\| \|p^k\} = \frac{\left\|g^k\right\|}{\|p^k\|}}

erfüllt ist (verwende Lemma 5.9 (ii)). Hierzu zeigen wir die Existenz einer Konstanten   mit

 

Da eine exakte Schrittweite gewählt wurde, implizieren Teil (i) von Lemma 5.9 und Teil (ii) von Lemma 2.9

 

Also gilt mit Aussage (ii) von Lemma 5.9

 

Dies liefert unter Anwendung von (V3)

 

Demnach folgt mit der Definition von  

 

Dies impliziert schließlich   und damit die Aussage (i) des Satzes. Aussage (ii) folgt aus Satz 5.10, da die Algorithmen 5.8 und 5.12 für gleichmäßig konvexe, quadratische Funktionen zusammenfallen.

q.e.d.

Vergleicht man die Sätze 5.10 und 5.13, so stellt man fest, dass man für das Fletcher-Reeves-Verfahren unter schwächeren Voraussetzungen zu einer Konvergenzaussage kommt. Powell [Pow84] hat sogar anhand eines Gegenbeispiels gezeigt, dass man ohne eine Voraussetzung wie die der gleichmäßigen Konvexität von   auch keine globale Konvergenz des Polak-Ribière-Verfahrens in Verbindung mit einer exakten Schrittweitenregel erwarten kann.

Erstaunlicherweise ist das Fletcher-Reeves- dem Polak-Ribière-Verfahren in der Praxis aber häufig deutlich unterlegen (numerische Vergleiche findet man z. B. in [Fle91] und [GeiKa99]). Powell gibt dafür die folgende Begründung (s. [Fle91]). Wenn das Verfahren kaum Fortschritte macht, also   ist, dann hat man im Fall des Polak-Ribière-Verfahrens   und erhält man damit  , d. h. die Richtung steilsten Abstiegs in  . Beim Fletcher-Reeves-Verfahren ist in einer solchen Situation aber   und   somit möglicherweise keine sinnvolle Abstiegsrichtung. Weitere Hinweise zu diesen Verfahren, insbesondere auch zur Verwendung anderer Schrittweitenregeln, werden wir im folgenden Abschnitt geben.

5.5 Bemerkungen und Hinweise

Bearbeiten

Wie gezeigt wurde, sind das Fletcher-Reeves und das Polak-Ribière-Verfahren für eine quadratische Funktion

(5.19)  

mit positiv definiter Matrix   identisch und liefert dieses CG-Verfahren bei exakter Rechnung nach spätestens   Iterationen die eindeutige Lösung   des unrestringierten Optimierungsproblems für   (bzw. die eindeutige Lösung   des linearen Gleichungssystems  ). Tatsächlich sind dafür sogar häufig weniger als   Iterationen erforderlich, was die Verfahren für große Probleme mit mehreren Hundert oder Tausend Variablen attraktiv macht. So kann bewiesen werden, dass das CG-Verfahren bei einem solchen Problem nach spätestens   Iterationen mit der Lösung abbricht, wenn   nur   paarweise verschiedene Eigenwerte besitzt (z. B. [NoWri06]).

Eine weitere wichtige Beobachtung im Hinblick auf große Probleme ist die folgende. Sind die   größten Eigenwerte von   deutlich voneinander separiert und häufen sich die übrigen   Eigenwerte an einer Stelle z. B. bei 0, so erzielt das CG-Verfahren eine gute Näherung für den optimalen Zielfunktionswert des Problems nach   Iterationen (z. B. [NoWri06]). Die bis dahin erzielte Näherung für die Lösung   des Problems selbst muss dann jedoch noch keineswegs befriedigend sein. Inbesondere im Fall, dass sich viele Eigenwerte von   bei 0 häufen, muss man nach diesen ersten   Iterationen mit sehr langsamer Konvergenz rechnen, da dann typischerweise auch die Kondition von   groß ist (vgl. (5.20)). Diese Aussagen sind qualitativ auch auf lokale Lösungen einer nichtquadratischen Funktion  , in denen die Optimalitätsbedingungen zweiter Ordnung erfüllt sind, übertragbar, da   in einer Umgebung eines solchen Punktes durch eine gleichmäßig konvexe, quadratische Funktion angenähert werden kann (vgl. (4.7)).

Bei exakter Rechnung bricht das CG-Verfahren für die quadratische Funktion (5.19) mit positiv definitem   nach höchstens   Iterationen mit der Lösung des Problems ab. Da das CG-Verfahren gerade für Probleme großer Dimension von Bedeutung ist, möchte man aber in der Praxis häufig gar nicht   Iterationen eines solchen Verfahrens ausführen. Daher ist auch für quadratische Funktionen mit positiv definitem   die Frage von Interesse, wie schnell   gegen   strebt. Für diesen Fall konnte Poljak ([Polj87]) die Fehlerabschätzung

(5.20)  

angeben, wobei   die Kondition von   ist (vgl. (2.14)). Diese Abschätzung liefert zwar häufig eine starke Überschätzung des Fehlers, wie man aus der Praxis weiß, macht aber deutlich, dass das CG-Verfahren um so schneller konvergiert, je kleiner die Kondition von   ist. Deshalb ist es sinnvoll, die Funktion   in Fällen, bei denen mit einer großen Kondition von   gerechnet werden muss, mittels einer Variablentransformation in eine quadratische Funktion mit einer Matrix zu überführen, welche eine kleinere Kondition besitzt.

Und zwar setzt man in einem solchen Fall mit einer nichtsingulären Matrix  

(5.21)  

Setzt man  , erhält man damit

 

Wendet man nun das CG-Verfahren auf   an, so bestimmt die Kondition der Matrix   die Konvergenzgeschwindigkeit des Verfahrens. Deshalb sollte   so gewählt werden, dass   eine kleinere Kondition als   besitzt bzw. sich die Eigenwerte von   teilweise häufen. Die Transformation (5.21) muss dabei nicht explizit durchgeführt werden. Sondern man schreibt Algorithmus 5.8 für   mit der Variablen   hin und invertiert dann die Transformation, um alle Beziehungen durch die Variable   auszudrücken. Der numerische Aufwand pro Iteration erhöht sich allerdings durch die Transformation (5.21) nicht unbeträchtlich. Ob sich ein solches präkonditioniertes CG-Verfahren lohnt, hängt daher davon ab, ob man für die aktuell vorliegende Matrix   einen geeigneten Präkonditionierer   angeben kann (vgl. [NoWri06]).

Es sei noch darauf hingewiesen, dass das CG-Verfahren besonders dann für die Lösung großer linearer Gleichungssysteme mit positiv definiter Matrix interessant ist, wenn   dünn besetzt ist. Denn der größte numerische Aufwand pro Iteration besteht bei ihnen darin, ein Matrix-Vektor-Produkt zu berechnen und dessen Berechnung ist um so „billiger“, je dünner die Matrix besetzt ist. Bei einer Cholesky-Zerlegung   dagegen, welche man alternativ zur Lösung eines solchen Gleichungssystems durchführen könnte, ist   häufig sehr viel dichter besetzt als  .

Bei den vorgestellten CG-Verfahren haben wir jeweils eine exakte Schrittweitenregel verwendet, die im quadratischen Fall mit positiv definiter Matrix auch explizit berechnet werden kann (vgl. Beispiel 3.5), die aber für allgemeine nichtlineare Funktionen eher unrealistisch ist. Tatsächlich war man lange Zeit wenig erfolgreich damit gewesen, Konvergenz für nichtquadratisches   mit einer inexakten Schrittweitenregel nachzuweisen. Erst Al-Baali konnte 1985 die Konvergenz des Fletcher-Reeves-Verfahren mit der strengen Wolfe-Powell-Schrittweitenregel beweisen (s. [GeiKa99]), die ja für kleines   Schrittweiten liefert, die im Allgemeinen nicht zu stark von der Curry-Schrittweite abweichen. Einen Konvergenzsatz für das Polak-Ribière-Verfahren mit einer neuen, leicht implementierbaren Schrittweitenregel, welche auf eine Arbeit von Grippo und Lucidi aus dem Jahr 1997 zurückgeht, sowie numerische Vergleiche der unterschiedlichen Verfahren findet man ebenfalls bei [GeiKa99].

Darüber hinaus gibt es eine Reihe von Varianten von CG-Verfahren, die zum Teil die strenge Wolfe-Powell-Schrittweite verwenden, darunter insbesondere solche, welche durch eine Kombination des Fletcher-Reeves- und des Polak-Ribière-Verfahrens versuchen, die guten theoretischen Konvergenzeigenschaften des ersten mit den guten Praxiseigenschaften des zweiten Verfahrens zu verbinden ([GeiKa99]). CG-Verfahren werden auch immer noch weiter erforscht. Es scheint aber so, dass bisher keine der vorgeschlagenen Varianten deutliche Vorzüge gegenüber den anderen besitzt.

Es wird generell empfohlen, die Abstiegsrichtung in CG-Verfahren alle   oder   Iterationen zu „korrigieren“ und wieder mit einer neuen Richtung zu beginnen, z. B. mit dem negativen Gradienten in der aktuellen Näherung. Die Aussagen, die man über die Konvergenzgeschwindigkeit von CG-Verfahren für nichtquadratische Funktionen in der Literatur findet, beziehen sich häufig auf eine solche Restartversion, sind aber allesamt eher abschreckend. Für eine Restartversion des Polak-Ribière-Verfahrens mit der Gradientenrichtung haben z. B. McCormick und Ritter ([McCoRi74])  -Schritt superlineare Konvergenz gezeigt, d. h. die superlineare Konvergenz der Folge aller  -ten Iterierten.

Für große   ist eine solche  -Schritt superlineare Konvergenz natürlich vollkommen inakzeptabel. Dennoch sind CG-Verfahren in der Praxis für große und sehr große Probleme häufig die einzig einsetzbaren Methoden, die wegen der zuvor genannten Gründe oft in weniger als   oder ca.   Iterationen gute Näherungslösungen liefern. Was die CG-Verfahren für sehr große Probleme überdies attraktiv macht ist die Tatsache, dass bei ihnen der numerische Aufwand pro Iteration sehr gering ist, und dass sie, anders als beispielsweise das Newton-Verfahren und die Quasi-Newton-Verfahren, die in den folgenden beiden Kapiteln vorgestellt werden, nur geringen Speicherplatz benötigen. Beim Fletcher-Reeves-Verfahren müssen nur drei und beim Verfahren von Polak-Ribière nur vier Vektoren, also insbesondere keine Matrizen abgespeichert werden. Die im nächsten Abschnitt behandelten Quasi-Newton-Verfahren weisen dafür aber bei nichtquadratischen Funktionen eine deutlich schnellere Konvergenz auf. Deshalb sollten Verfahren der konjugierten Gradienten nur für große Probleme eingesetzt werden.