Qual è la complessità peggiore del gradiente coniugato?


9

Sia ARn×n , simmetrico e positivo definito. Supponiamo prende m unità di lavoro per moltiplicare un vettore da A . È noto che l'esecuzione dell'algoritmo CG su A con il numero di condizione κ richiede O(mκ), unità di lavoro.

Ora, naturalmente, essendo un'istruzione O questo è un limite superiore. E l'algoritmo CG può sempre terminare a zero passi con un'ipotesi iniziale fortunata.

Sappiamo se esiste un RHS e un'ipotesi iniziale (sfortunata) che richiederà Θ(κ)passi? Detto in altro modo, la complessità del lavoro nel caso peggiore di CG è davveroΘ(mκ)?

Questa domanda sorge quando ho cercato di determinare se il beneficio di un precondizionatore ( inferiore κ) ha superato il suo costo ( superiore m). In questo momento, sto lavorando con problemi con i giocattoli e vorrei avere un'idea migliore prima di implementare qualsiasi cosa in un linguaggio compilato.


5
Si potrebbe presumibilmente costruire un'ipotesi iniziale pessimale eseguendo l'algoritmo CG "all'indietro" e mettendo energia adeguata in ciascuna delle direzioni di ricerca A orogonali che l'algoritmo richiede tutti i passaggi.
origimbo

Risposte:


9

La risposta è un clamoroso sì. Il tasso di convergenza legato di è nitido sull'insieme di matrici definite simmetriche positive con condizione numeroκ. In altre parole, non sapendo nulla di più diAdel suo numero di condizione, CG può davvero prendere(κ1)/(κ+1)κA iterazioni per convergere. In parole povere, il limite superiore si ottiene se gli autovalori diAsono distribuiti uniformemente (cioè "pepati") entro un intervallo di condizione numeroκ.κAκ

Ecco una dichiarazione più rigorosa. Le versioni deterministiche sono più coinvolte ma funzionano con gli stessi principi.

Teorema (scelta del caso peggiore di ). Scegliere qualsiasi matrice ortogonale casuale U , lasciate λ 1 , ... , λ n essere n numeri reali uniformemente campionati dal reale intervallo [ 1 , κ ] , e lasciare che b = [ b 1 ; ... ; b n ] essere n numeri reali campionati in base allo standard gaussiano. Definisci A = U d i a g ( λ 1 ,AUλ1,,λnn[1,κ]b=[b1;;bn]nQuindi nel limite n , i gradienti coniugati convergeranno con probabilità uno a una ϵ soluzione accurata di A x = b in non meno di Ω (

A=Udiag(λ1,,λn)UT.
nϵAx=biterazioni.Ω(κlogϵ1)

Prova. La dimostrazione standard si basa su approssimazioni polinomiali ottimali di Chebyshev, usando tecniche che si trovano in diversi punti, come il libro di Greenbaum o il libro di Saad .


1
Il limite non è nitido, come spiega la risposta più avanti, se gli autovalori non sono distribuiti uniformemente, cg converge più velocemente, poiché non è un'iterazione stazionaria. Pertanto, dobbiamo sapere di più sulla matrice.
Guido Kanschat

Aκ

p(A)kp(0)=1minpmaxλΛ(A)|p(λ)|Λ(A)[1,κ]κ

0

Prendendo questo come la mia domanda originale: sappiamo se esiste un RHS e un'ipotesi iniziale (sfortunata) che richiederà passaggi di ?Θ(κ)

La risposta alla domanda è "no". L'idea di questa risposta viene dal commento di Guido Kanschat.

Reclamo: per ogni dato numero di condizione , esiste una matrice , con quel numero di condizione per il quale l'algoritmo CG terminerà al massimo in due passaggi (per ogni dato RHS e ipotesi iniziale).kA

Considera dove . Quindi il numero della condizione di è . Sia l'RHS e denoti gli autovalori di come dove ARn×nA=diag(1,κ,κ,,κ)AκbRnAλi

λi={1i=1κi1.

Consideriamo innanzitutto il caso in cui , la supposizione iniziale, è zero. Indica come seconda stima di dall'algoritmo CG. Mostriamo che mostrando . Anzi, abbiamox(0)Rnx(2)RnA1bx(2)=A1bx(2)A1b,A(x(2)A1b)=0

x(2)A1b,A(x(2)A1b)=x(2)A1bA2=minppoly1(p(A)A1)bA2=minppoly1i=1n(p(λi)λi1)2λibi2i=1n(p^(λi)λi1)2λibi2=0

Dove usiamo il polinomio di primo ordine definito come . Quindi abbiamo dimostrato il caso di .p^p^(x)=(1+κx)/κx(0)=0

Se , allora dove è la seconda stima dell'algoritmo CG con sostituita da . Quindi abbiamo ridotto questo caso al precedente. x(0)0x(2)=x(2)¯+x(0)x(2)¯bb¯=bAx(0)


Quanto di tutto ciò è robusto per l'aritmetica di precisione finita?
origimbo

@origimbo Se la tua domanda è stata rivolta a me, la risposta è "Non lo so".
fred
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.