Seja , simétrico e positivo definido. Suponhamos que leva unidades de trabalho para multiplicar um vector por . É sabido que a execução do algoritmo CG em com o número de condição requer , unidades de trabalho.
Agora, é claro, sendo uma declaração , esse é um limite superior. E o algoritmo de CG pode sempre terminar em zero etapas com um palpite inicial de sorte.
Sabemos se existe um RHS e um palpite inicial (infeliz) que exigirá etapas? Em outras palavras, a pior complexidade de trabalho do CG é realmente?
Essa questão surge quando tentei determinar se o benefício de um pré-condicionador ( inferior ) superava seu custo ( superior ). No momento, estou trabalhando com problemas de brinquedo e gostaria de ter uma idéia melhor antes de implementar qualquer coisa em uma linguagem compilada.
fonte
Respostas:
A resposta é um sim retumbante. A taxa de convergência vinculada de é nítido sobre o conjunto de matrizes definidas positivas simétricas com número de condição(κ−−√−1)/(κ−−√+1) . Em outras palavras, sabendo nada mais sobre A que seu número de condição, o CG realmente pode assumir ∼ √κ A iterações k para convergir. Em termos gerais, o limite superior é atingido se os valores próprios deAforem distribuídos uniformemente (isto é, "salpicados") dentro de um intervalo do número de condiçãoκ.∼κ−−√ A κ
Aqui está uma declaração mais rigorosa. As versões determinísticas estão mais envolvidas, mas funcionam usando os mesmos princípios.
Teorema (pior opção de ). Escolher qualquer matriz ortogonal aleatório L , deixar λ 1 , ... , λ n ser n números reais uniformemente amostrados a partir do intervalo verdadeira [ 1 , κ ] , e deixou b = [ b 1 ; ... ; b n ] sejam n números reais amostrados iid do gaussiano padrão. Defina A = U d i a g ( λ 1 ,A U λ1,…,λn n [1,κ] b=[b1;…;bn] n Em seguida, no limite n → ∞ , gradientes conjugados vai convergência com uma probabilidade para uma ε solução precisa de um x = b em não menos do que Ω ( √
Prova. A prova padrão é baseada em aproximações polinomiais ótimas de Chebyshev, usando técnicas encontradas em vários locais, como o livro de Greenbaum ou o livro de Saad .
fonte
Tomando isso como minha pergunta original: sabemos se existe um RHS e um palpite inicial (sem sorte) que exigirá etapas?Θ(κ−−√)
A resposta para a pergunta é "não". A idéia desta resposta vem do comentário de Guido Kanschat.
Reivindicação: Para qualquer condição número , existe uma matrizk , com esse número de condição para o qual o algoritmo CG terminará em no máximo duas etapas (para qualquer RHS dado e estimativa inicial).A
Considere onde A = d i a g ( 1 , κ , κ , … , κ ) . Então o número da condição de A é κ . Seja b ∈ R n o RHS e denote os autovalores de A como λ i onde λ i = { 1 i = 1 k i ≠ 1 .A∈Rn×n A=diag(1,κ,κ,…,κ) A κ b∈Rn A λi
Nós primeiro considerar o caso em que , a estimativa inicial, é zero. Denuncie x ( 2 ) ∈ R n como a segunda estimativa de A - 1 b do algoritmo CG. Mostramos que x ( 2 ) = A - 1 b , mostrando ⟨ x ( 2 ) - A - 1 b , A ( x ( 2 ) - Umx(0)∈Rn x(2)∈Rn A−1b x(2)=A−1b . De fato, temos⟨x(2)−A−1b,A(x(2)−A−1b)⟩=0
Ifx(0)≠0 , then x(2)=x(2)¯¯¯¯¯¯¯¯+x(0) where x(2)¯¯¯¯¯¯¯¯ is the second estimate of the CG algorithm with b replaced with b¯¯=b−Ax(0) . So we have reduced this case to the previous one.
fonte