Pozwolić , symetryczny i dodatni określony. Załóżmy, że to trwa jednostki pracy do pomnożenia wektora przez . Powszechnie wiadomo, że wykonuje się algorytm CG z numerem warunku wymaga , jednostki pracy.
Teraz oczywiście będąc oświadczenie to jest górna granica. Algorytm CG może zawsze kończyć się w zerowych krokach przy szczęśliwym początkowym zgadywaniu.
Czy wiemy, czy istnieje RHS i wstępne (pechowe) przypuszczenie, które będzie wymagać kroki? Innymi słowy, naprawdę najgorsza złożoność pracy CG?
To pytanie powstaje, gdy próbowałem ustalić, czy korzyść ze stanu wstępnego (niższa ) przeważyło koszt (wyższy ). Obecnie pracuję z problemami z zabawkami i chciałbym mieć lepszy pomysł, zanim zaimplementuję cokolwiek w skompilowanym języku.
conjugate-gradient
Fred
źródło
źródło
Odpowiedzi:
Odpowiedź brzmi: tak. Granica współczynnika konwergencji wynosząca(κ−−√−1)/(κ−−√+1) jest ostry w stosunku do zbioru symetrycznych dodatnich macierzy z określoną liczbą warunków κ . Innymi słowy, nie wiedząc o niczym więcejA niż liczba warunków, CG naprawdę może wziąć ∼κ−−√ iteracje do zbieżności. Mówiąc luźniej, górna granica jest osiągana, jeśli wartości własneA są równomiernie rozmieszczone (tzn. „pieprzone”) w przedziale liczby warunków κ .
Oto bardziej rygorystyczne stwierdzenie. Wersje deterministyczne są bardziej zaangażowane, ale działają na tych samych zasadach.
Twierdzenie (wybór najgorszego przypadku zA ). Wybierz dowolną losową macierz ortogonalnąU , pozwolić λ1,…,λn być n liczby rzeczywiste jednolicie próbkowane z rzeczywistego przedziału [1,κ] , i pozwól b=[b1;…;bn] być n liczby rzeczywiste próbkowane iid ze standardowego Gaussa. Definiować
Dowód. Standardowy dowód oparty jest na optymalnych przybliżeniach wielomianowych Czebyszewa, z wykorzystaniem technik znalezionych w wielu miejscach, takich jak książka Greenbauma lub książka Saada .
źródło
Przyjmując to jako moje pierwotne pytanie: Czy wiemy, czy istnieje RHS i początkowe (pechowe) przypuszczenie, które będzie wymagało kroków ?Θ(κ−−√)
Odpowiedź na pytanie brzmi „nie”. Idea tej odpowiedzi pochodzi z komentarza Guido Kanschata.
Twierdzenie: Dla każdego podanego numeru warunku istnieje macierz z tym numerem warunku, dla którego algorytm CG zakończy się co najwyżej w dwóch krokach (dla dowolnego RHS i początkowego przypuszczenia).k A
Rozważ gdzie . Zatem numerem warunku jest . Niech będzie RHS, i oznacz wartości własne jako gdzieA∈Rn×n A=diag(1,κ,κ,…,κ) A κ b∈Rn A λi
Najpierw rozważamy przypadek, w którym , początkowe przypuszczenie, wynosi zero. Oznacz jako drugie oszacowanie bz algorytmu CG. Pokazujemy, że , pokazując . Rzeczywiście mamyx(0)∈Rn x(2)∈Rn A−1b x(2)=A−1b ⟨x(2)−A−1b,A(x(2)−A−1b)⟩=0
Gdzie używamy wielomianu pierwszego rzędu zdefiniowanego jako . Więc udowodniliśmy, że przypadek dla .pˆ pˆ(x)=(1+κ−x)/κ x(0)=0
Jeśli , to gdzie jest drugim oszacowaniem algorytmu CG z zastąpionym przez . Więc ograniczyliśmy tę sprawę do poprzedniej.x(0)≠0 x(2)=x(2)¯¯¯¯¯¯¯¯+x(0) x(2)¯¯¯¯¯¯¯¯ b b¯¯=b−Ax(0)
źródło