Autovalores do Laplaciano - Departamento de Matemática - UFMG

Autovalores do Laplaciano - Departamento de Matemática - UFMG Autovalores do Laplaciano - Departamento de Matemática - UFMG

09.05.2013 Views

Rodney Josué Biezuner 113 4.4.2 Método da Descida Mais Acentuada Do Cálculo Diferencial, sabemos que a direção em que a função cresce a uma taxa mais rápida a partir de um ponto é a direção do gradiente neste ponto. Esta observação é a base da escolha da direção de busca no método da descida mais acentuada. Em outras palavras, escolhemos ou p k = −∇f x k = b − Ax k p k = r k . (4.67) Buscar na direção da descida mais acentuada é uma idéia natural, mas que na prática não funciona sem modificações. De fato, em alguns casos o método é de velocidade comparável à do método de Jacobi, como na matriz de discretização da fórmula de cinco pontos aplicada ao problema descrito na primeira seção deste capítulo [Watkins]: ∆x = 0.1 ∆x = 0.05 ∆x = 0.025 Jacobi 299 1090 3908 Descida Mais Acentuada 304 1114 4010 De fato, como as iterações do método de descida mais acentuada são bem mais custosas que as do método de Jacobi, o primeiro é muito pior que este último. Para entender melhor o método da descida mais acentuada, porque ele pode ser lento e as modificações que vamos fazer para torná-lo mais rápido levando ao método do gradiente conjugado, vamos entender o processo do ponto de vista geométrico. Como vimos na demonstração do Teorema 4.24, o funcional quadrático f é da forma f (y) = 1 2 (y − x)t A (y − x) + c (4.68) onde c = f (x) = 1 2 xt Ax − x t b é uma constante. Já que A é uma matriz simétrica, existe uma matriz ortogonal P tal que P t AP é uma matriz diagonal D , cujos valores na diagonal principal são exatamente os autovalores positivos de A. Nas coordenadas o funcional f tem a forma z = P t (y − x) , f (z) = 1 2 ztDz + c = 1 2 n i=1 λiz 2 i + c. (4.69) As curvas de nível do funcional f neste sistema de coordenadas são elipses (em R 2 , elipsóides em R 3 e hiperelipsóides em R n ) centradas na origem com eixos paralelos aos eixos coordenados e f (0) = c é nível mínimo de f; elipses correspondentes a menores valores de f estão dentro de elipses correspondentes a maiores valores de f. Como P é uma aplicação ortogonal, as curvas de nível de f no sistema de coordenadas original também são elipses, centradas em x, e uma reta de um ponto y até o ponto x corta elipses de níveis cada vez menores até chegar ao mínimo da função f em x, centro de todas as elipses. O vetor gradiente é perpendicular às curvas de nível, logo é perpendicular às elipses. Seguir a direção de descida mais acentuada equivale a cortar a elipse que contém x k ortogonalmente na direção do interior da elipse até encontrar um ponto x k+1 situado em uma elipse que a reta tangencie, pois a partir daí a reta irá na direção de elipses com níveis maiores, portanto este é o ponto da reta onde f atinge o seu mínimo. Em particular, vemos que a próxima direção p k+1 é ortogonal à direção anterior p k , tangente a esta elipse. Em geral, a direção de descida mais acentuada não é a direção de x (quando bastaria uma iteração para atingir a solução exata) a não ser que A seja um múltiplo escalar da identidade, de modo que todos os autovalores de A são iguais e as elipses são círculos. Por outro lado, se os autovalores de A têm valores muito diferentes uns dos outros, com alguns muito pequenos e alguns muito grandes, as elipses serão bastante excêntricas e, dependendo do chute inicial,

Rodney Josué Biezuner 114 a convergência pode ser muito lenta (matrizes com estas propriedades são chamadas mal-condicionadas; para que o método de descida acentuada seja lento, a matriz A não precisa ser muito mal-condicionada). Como vimos na seção anterior, os algoritmos de Gauss-Seidel e SOR podem ser encarados como algoritmos de descida. A discussão no parágrafo anterior também pode ser usada para entender a relativa lentidão destes algoritmos. 4.4.3 Método do Gradiente Conjugado Todos os métodos iterativos que vimos neste capítulo são limitados pela sua falta de memória, no sentido de que apenas informação sobre x k é usada para obter x k+1 . Toda a informação sobre as iterações anteriores é deletada. O método do gradiente conjugado é uma variação simples do método da descida mais acentuada que funciona melhor porque a informação obtida através das iterações anteriores é utilizada. Para entender brevemente como isso funciona, observe que depois de j iterações x k+1 = x k + αkp k de um método de descida temos x j = x 0 + α0p 0 + α1p 1 + . . . + αj−1p j−1 , de modo que x j está no subespaço afim gerado pelo chute inicial x 0 e pelos vetores p 0 , p 1 , . . . , p j−1 . Enquanto o método da descida mais acentuada minimiza o funcional de energia f apenas ao longo das j retas x k + αkp k , cuja união constitui apenas um pequeno subconjunto de x 0 + p 0 , p 1 , . . . , p j−1 , o método do gradiente conjugado minimiza f sobre todo o subespaço afim x 0 + p 0 , p 1 , . . . , p j−1 . Para definir as direções de busca do método do gradiente conjugado (que é, antes de mais nada, um método de descida), lembramos que o funcional f foi escrito na forma Defina o erro Pela regra do paralelogramo, temos donde f (y) = 1 2 y2 A − 〈y, x〉 A . e = x − y. (4.70) x + y 2 A + x − y2 A = 2 x2 A + 2 y2 A , 2 y 2 A = x − y2 A + x2 A + 2 〈y, x〉 A + y2 A − 2 x2 A = x − y 2 A + 2 〈y, x〉 A − x2 A + y2 A , ou y 2 A − 2 〈y, x〉 A = x − y2 A − x2 A . Logo, podemos escrever f (y) = 1 2 e2 1 A − 2 x2 A . (4.71) Conseqüentemente, minimizar o funcional f é equivalente a minimizar a A-norma do erro. Agora, em um método de descida, depois de j iterações temos: e j = x − x j = x − x 0 − α0p 0 + α1p 1 + . . . + αj−1p j−1 = e 0 − α0p 0 + α1p 1 + . . . + αj−1p j−1 . Logo, minimizar ej 2 é equivalente a minimizar A e 0 − α0p 0 + α1p 1 + . . . + αj−1p j−1 , A o que por sua vez é equivalente a encontrar a melhor aproximação do vetor e 0 no subespaço Wj = p 0 , p 1 , . . . , p j−1 . Esta é dada pelo lema da melhor aproximação:

Rodney Josué Biezuner 114<br />

a convergência po<strong>de</strong> ser muito lenta (matrizes com estas proprieda<strong>de</strong>s são chamadas mal-condicionadas; para<br />

que o méto<strong>do</strong> <strong>de</strong> <strong>de</strong>scida acentuada seja lento, a matriz A não precisa ser muito mal-condicionada).<br />

Como vimos na seção anterior, os algoritmos <strong>de</strong> Gauss-Sei<strong>de</strong>l e SOR po<strong>de</strong>m ser encara<strong>do</strong>s como algoritmos<br />

<strong>de</strong> <strong>de</strong>scida. A discussão no parágrafo anterior também po<strong>de</strong> ser usada para enten<strong>de</strong>r a relativa lentidão <strong>de</strong>stes<br />

algoritmos.<br />

4.4.3 Méto<strong>do</strong> <strong>do</strong> Gradiente Conjuga<strong>do</strong><br />

To<strong>do</strong>s os méto<strong>do</strong>s iterativos que vimos neste capítulo são limita<strong>do</strong>s pela sua falta <strong>de</strong> memória, no senti<strong>do</strong> <strong>de</strong><br />

que apenas informação sobre x k é usada para obter x k+1 . Toda a informação sobre as iterações anteriores é<br />

<strong>de</strong>letada. O méto<strong>do</strong> <strong>do</strong> gradiente conjuga<strong>do</strong> é uma variação simples <strong>do</strong> méto<strong>do</strong> da <strong>de</strong>scida mais acentuada<br />

que funciona melhor porque a informação obtida através das iterações anteriores é utilizada.<br />

Para enten<strong>de</strong>r brevemente como isso funciona, observe que <strong>de</strong>pois <strong>de</strong> j iterações x k+1 = x k + αkp k <strong>de</strong><br />

um méto<strong>do</strong> <strong>de</strong> <strong>de</strong>scida temos<br />

x j = x 0 + α0p 0 + α1p 1 + . . . + αj−1p j−1 ,<br />

<strong>de</strong> mo<strong>do</strong> que x j está no subespaço afim gera<strong>do</strong> pelo chute inicial x 0 e pelos vetores p 0 , p 1 , . . . , p j−1 .<br />

Enquanto o méto<strong>do</strong> da <strong>de</strong>scida mais acentuada minimiza o funcional <strong>de</strong> energia f apenas ao longo das j<br />

retas x k + αkp k , cuja união constitui apenas um pequeno subconjunto <strong>de</strong> x 0 + p 0 , p 1 , . . . , p j−1 , o méto<strong>do</strong><br />

<strong>do</strong> gradiente conjuga<strong>do</strong> minimiza f sobre to<strong>do</strong> o subespaço afim x 0 + p 0 , p 1 , . . . , p j−1 .<br />

Para <strong>de</strong>finir as direções <strong>de</strong> busca <strong>do</strong> méto<strong>do</strong> <strong>do</strong> gradiente conjuga<strong>do</strong> (que é, antes <strong>de</strong> mais nada, um<br />

méto<strong>do</strong> <strong>de</strong> <strong>de</strong>scida), lembramos que o funcional f foi escrito na forma<br />

Defina o erro<br />

Pela regra <strong>do</strong> paralelogramo, temos<br />

<strong>do</strong>n<strong>de</strong><br />

f (y) = 1<br />

2 y2<br />

A − 〈y, x〉 A .<br />

e = x − y. (4.70)<br />

x + y 2<br />

A + x − y2 A = 2 x2 A + 2 y2 A ,<br />

2 y 2<br />

A = x − y2 A + x2 A + 2 〈y, x〉 A + y2 A − 2 x2 A<br />

= x − y 2<br />

A + 2 〈y, x〉 A − x2 A + y2 A ,<br />

ou<br />

y 2<br />

A − 2 〈y, x〉 A = x − y2 A − x2 A .<br />

Logo, po<strong>de</strong>mos escrever<br />

f (y) = 1<br />

2 e2<br />

1<br />

A −<br />

2 x2 A . (4.71)<br />

Conseqüentemente, minimizar o funcional f é equivalente a minimizar a A-norma <strong>do</strong> erro.<br />

Agora, em um méto<strong>do</strong> <strong>de</strong> <strong>de</strong>scida, <strong>de</strong>pois <strong>de</strong> j iterações temos:<br />

e j = x − x j = x − x 0 − α0p 0 + α1p 1 + . . . + αj−1p j−1<br />

= e 0 − α0p 0 + α1p 1 + . . . + αj−1p j−1 .<br />

Logo, minimizar ej 2<br />

é equivalente a minimizar<br />

A<br />

<br />

e 0 − α0p 0 + α1p 1 + . . . + αj−1p j−1 ,<br />

A<br />

o que por sua vez é equivalente a encontrar a melhor aproximação <strong>do</strong> vetor e 0 no subespaço Wj = p 0 , p 1 , . . . , p j−1 .<br />

Esta é dada pelo lema da melhor aproximação:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!