Sei , symmetrisch und positiv definit. Angenommen, es sind Arbeitseinheiten erforderlich, um einen Vektor mit zu multiplizieren . Es ist bekannt, dass das Ausführen des CG-Algorithmus für mit der Bedingungsnummer Arbeitseinheiten erfordert . m A A κ O ( m √
Als -Anweisung ist dies natürlich eine Obergrenze. Und der CG-Algorithmus kann immer in null Schritten mit einer glücklichen anfänglichen Vermutung enden.
Wissen wir, ob es eine RHS und eine erste (unglückliche) Vermutung gibt, die Schritte erfordert ? Anders ausgedrückt: Ist die Worst-Case-Arbeitskomplexität von CG wirklich ?Θ(m √
Diese Frage stellt sich, als ich feststellen wollte, ob der Nutzen eines Vorkonditionierers (niedriger ) seine Kosten (höher ) überwog . Im Moment arbeite ich mit Spielzeugproblemen und möchte eine bessere Idee haben, bevor ich etwas in einer kompilierten Sprache implementiere.m
quelle
Antworten:
Die Antwort ist ein klares Ja. Die Konvergenzratengrenze von ist scharf über der Menge symmetrischer positiver bestimmter Matrizen mit der Bedingungsnummerκ. Mit anderen Worten,CGweiß nichts mehr überAals seine Bedingungsnummer und kann wirklich∼ √ nehmen( κ- -- -√- 1 ) / ( κ- -- -√+ 1 ) κ EIN Iterationen zu konvergieren. Locker gesagt wird die Obergrenze erreicht, wenn die Eigenwerte vonAinnerhalb eines Intervalls der Bedingungsnummerκgleichmäßig verteilt (dh "gepfeffert") sind.∼ κ- -- -√ EIN κ
Hier ist eine strengere Aussage. Deterministische Versionen sind komplizierter, arbeiten jedoch nach denselben Prinzipien.
Satz (Worst-Case-Wahl von ). Pick jede beliebige orthogonale Matrix U , lassen λ 1 , ... , λ n sein , n reelle Zahlen einheitlich aus dem realen Intervall abgetastet [ 1 , κ ] , und sei b = [ b 1 ; … ; b n ] seien n reelle Zahlen, die aus dem Standard-Gaußschen abgetastet wurden. Definiere A = U d i a g ( λ 1 ,EIN U. λ1, … , Λn n [ 1 , κ ] b = [ b1;; … ; bn]] n Dannkonvergieren konjugierte Gradientenin der Grenze n → ∞ mit der Wahrscheinlichkeit eins zu einer ϵ genauen Lösung von A x = b in nicht weniger als Ω ( √)
Beweis. Der Standardbeweis basiert auf optimalen Chebyshev-Polynomnäherungen unter Verwendung von Techniken, die an einer Reihe von Stellen zu finden sind, wie beispielsweise Greenbaums Buch oder Saads Buch .
quelle
Nehmen wir dies als meine ursprüngliche Frage: Wissen wir, ob es eine RHS und eine anfängliche (unglückliche) Vermutung gibt, die Schritte erfordert ?Θ(κ−−√)
Die Antwort auf die Frage lautet "nein". Die Idee zu dieser Antwort stammt aus dem Kommentar von Guido Kanschat.
Behauptung: Für jede gegebene Bedingungsnummer existiert eine Matrix mit dieser Bedingungsnummer, für die der CG-Algorithmus in höchstens zwei Schritten endet (für jede gegebene RHS und anfängliche Schätzung).A.k A
Betrachten Sie wobei . Dann wird die Konditionszahl von ist . Sei die RHS und bezeichne die Eigenwerte von als wobei A = d i a g ( 1 , κ , κ , … , κ ) A κ b ∈ R n A λ i λ i = { 1 i = 1 κ i ≠ 1 .A∈Rn×n A=diag(1,κ,κ,…,κ) A κ b∈Rn A λi
Wir betrachten zunächst den Fall, in dem , die anfängliche Vermutung, Null ist. Bezeichne als zweite Schätzung von aus dem CG-Algorithmus. Wir zeigen, dass indem wir . In der Tat haben wirx(0)∈Rn x(2)∈Rn A−1b x(2)=A−1b ⟨x(2)−A−1b,A(x(2)−A−1b)⟩=0
Wo wir das Polynom erster Ordnung definiert als . Also haben wir den Fall für bewiesen . p (x)=(1+κ-x)/κx(0)=0pˆ pˆ(x)=(1+κ−x)/κ x(0)=0
Wenn , dann ist wobei ist die zweite Schätzung des CG-Algorithmus, wobei durch . Deshalb haben wir diesen Fall auf den vorherigen reduziert. x ( 2 ) = ¯ x ( 2 ) + x ( 0 ) ¯ x ( 2 ) b ¯ b = B - A x ( 0 )x(0)≠0 x(2)=x(2)¯¯¯¯¯¯¯¯+x(0) x(2)¯¯¯¯¯¯¯¯ b b¯¯=b−Ax(0)
quelle