gradiente conjugado - medellin.unal.edu.cocemejia/doc/nla/proyectos/metodo gradiente... ·...

27
GRADIENTE CONJUGADO EDWIN ANCIZAR DIAZ ZAPATA UNIVERSIDAD NACIONAL DE COLOMBIA May 15, 2018 EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA ) GRADIENTE CONJUGADO May 15, 2018 1 / 37

Upload: others

Post on 27-Mar-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

GRADIENTE CONJUGADO

EDWIN ANCIZAR DIAZ ZAPATA

UNIVERSIDAD NACIONAL DE COLOMBIA

May 15, 2018

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 1 / 37

A definida positiva x tAx > 0 ∀x 6= 0

Definamos producto interno 〈x , y〉A = x tAy

x es un vector conjugado a otro vector y con respecto a unamatriz A si 〈x,y〉A = 0, con x6=y

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 2 / 37

METODOS ITERATIVOS

pueden serMetodos estacionarios

Metodos no estacionaros

Metodos NO estacionariosHacen uso de informacion, evaluada en cada iteracion, que lespermite obtener la solucion de modo dinamico, ademas suelenser mas eficientes que los metodos estacionarios

contienen a los metodos basados en subespacios de Krylov

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 3 / 37

GRADIENTE CONJUGADO

El metodo del CG fue presentado por Hestenes y Stiefel (1952)como un metodo directo, mas tarde Reid (1971) y Concus et al(1976) le descubrieron su verdadero potencial al mirarlo como unmetodo iterativo bastante adecuado para resolver sistemas de laforma Ax = b, donde A es simetrica y definida positiva. Elmetodo de CG esta basado en un principio de conjugacionteniendo un almacenamiento modesto y siempre converge.

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 4 / 37

Gradiente Conjugado

Un metodo basado en el subespacio de Krylov no accededirectamente a los elementos de la matriz, si no que realiza lamultiplicacion matriz-vector para obtener vectores que sonproyecciones en un subespacio de Krylov de dimension inferiordonde se resuelve un problema correspondiente. Este resultadose convierte luego en una solucion del problema original

No requiere una factorizacion de la matriz, ni es dependiente deparametros definidos por el usuario, como sucede con otrosmetodos iterativos.

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 5 / 37

Problema de minimizacionSi A ∈ Rnxn es simetrica y definida positiva b ∈ Rn, entoncesla funcion cuadratica

φ : Rn ←− R

φ(x) =1

2〈Ax , x〉 − 〈b, x〉

Alcanza un unico mınimo en el vector x ∈ Rn solucion delsistema Ax = b

Nota: φ(x) =1

2〈Ax , x〉 − 〈b, x〉 =

1

2x tAx − x tb

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 6 / 37

Figure: matriz S.D.P

Figure: Matriz indefinida; eneste caso el punto crıtico esun punto silla.

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 7 / 37

Figure: Matriz S.D.N

Figure: Matriz singular(positiva), en este caso noexiste un unico mınimo

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 8 / 37

Metodos de DescensoSe parte de un punto u0 ∈ Rn y en cada paso k = 0, 1, 2, ... sedetermina un nuevo punto

uk+1 ∈ Rn/φ(uk+1) < φ(uk)

de la siguiente manera?

a) Se calcula una direccion de busqueda Pk

b) se considera la recta Lk que pasa por el punto uk con direccionPk

c) Se elige el punto uk+1 ∈ Lk donde φ alcanza su mınimo sobre Lk

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 9 / 37

Como Lk ={xk + αpk : α ∈ R

}, entonces

φ(xk + αpk

)=

1

2

(xk + αpk

)tA(xk + αpk

)−bt

(xk + αpk

)+c

Por lo tanto

(xk + αpk

)= 0⇔ α = αk =

〈r k , pk〉〈Apk , pk〉

Donde r k = b − Axk es el residuo de xk

Luego xk+1 = xk + αkpk

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 10 / 37

Metodo del maximo DescensoLos distintos metodos de descenso se distinguen por la manerade escoger la direccion de descenso pk

La eleccion mas simple es escoger la direccion de maximodescenso de φ

pk = −∇φ(xk)

= b − Axk = r k

Esta eleccion conduce alMetodo del Maximo Descenso o del Gradiente

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 11 / 37

algoritmo descensoinput : A, x0, b, εk ← 0repetirrk ← b − Axk

αk ←r tk rkr tkArk

xk+1 ← xk + αkrkk ← k + 1hasta que ||rk || < ε

x0 es una coordenada inicial

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 12 / 37

METODO GRADIENTE CONJUGADO

Determinacion direccion descensoconsideremos d0 = r 0 la primera direccion de descenso

llamaremos d∗ al vector que une x1 con x∗

d∗1 = x∗ − x1 = x∗ − x0 − ρ0d0

Teorema Los vectores d0 y d∗1 son conjugados respecto a lamatriz A

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 13 / 37

d∗1 se puede expresar como combinacion lineal de d0 y r 1

d∗1 = β1r1 + β2d0

No es preciso obtener el vector d∗1 basta con determinar cual essu direccion para ello se realiza lo siguiente

d1 =1

β1d∗1 = r 1 +

β2β1

d0 = r 1 + α0d0

Donde α0 se puede ver que α0 = − (d0)tAr 1

(d0)tAd0

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 14 / 37

Algoritmo del metodo del gradiente conjugado

Version provisional metodo gradiente conjugado parasolucionar el sistema AX=bLeer : A, x0, b, ε,maxiterk ← 0, r0 ← b − Ax , tol ≤ ||r0||mientrasi < maxiter y tol > ε hacer

αk ←r tkdkd tkArk

xk+1 ← xk + αkdk rk+1 ← b − Axk+1

ρk ← −r tk+1Adkd tkAdk

dk+1 ← rk+1 + ρkdk k ← k + 1

tol ≤ ||rk ||

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 15 / 37

Modificando algoritmo preliminar

terminos a modificar

ρk = − rk+1 · rk+1

rk · rkrk+1 = rk − αkAdk

αk = − (rk)t · rk(dk)t · Adk

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 16 / 37

Algoritmo final del metodo del gradiente conjugado

Leer : A, x0, b, ε,maxiterk ← 0, r0 ← b − Ax , d ← r β ← r tr tol ← ||r0||mientrasi < maxiter y tol > ε hacerz ← Ad

αk ←β

d tkz

x ← x + αzr ← r − αzγ ← ββ ← r tr

ρk ← −β

γd ← r + ρd k ← k + 1tol ≤ ||r ||

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 17 / 37

Ejemplo 2x2[2 −1−1 2

] [x1x2

]=

[10

]iniciamos con x0 = 0

p0 = r0 = b = [1, 0]T

α0 =rT0 r0pT0 Ap0

= 12, x1 = x0 + α0p0 =

[00

]+ 1

2

[10

]=

[1/2

0

]r1 = r0 − α0Ap0 =

[10

]− 1

2

[2−1

]=

[0

1/2

], rT1 r0 = 0

β0 =rT1 r1rT0 r0

= 14, p1 = r1 + β0p0 =

[0

1/2

]+ 1

4

[10

]=

[1/41/2

]α1 =

rT1 r1pT1 Ap1

= 23, x2 = x1 + α1p1 =

[1/2

0

]+ 2

3

[1/41/2

]=

[2/31/3

]r2 = 0, Solucion exacta

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 18 / 37

PROPIEDADES DEL METODO DEL

GRADIENTE CONJUGADO

Cada direccion de descenso del metodo de gradiente conjugadoes conjugada, respecto a la matriz A, con todas las direccionesde descenso calculadas anteriormente:

(di)tAd j = 0 0 ≤ j < i

Los gradientes de f (f (x) =1

2x tAx − btx) en los puntos

generados en el metodo del gradiente conjugado son ortogonalesa las direcciones de descenso de las iteraciones anteriores

ri · dj = 0 0 ≤ j < i

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 19 / 37

Si se utiliza aritmetica exacta al realizar las operaciones, elmetodo del gradiente conjugado alcanza la solucion exacta delsistema Ax = b en no mas de n iteraciones:

∃k ≤ n/r k = 0

r i · r j = 0 0 ≤ j < i

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 20 / 37

Velocidad de convergencia metodo del gradiente

k ≈ cond(A)

4ln(1α

)Velocidad de convergencia metodo del gradienteconjugado

k ≈√

cond(A)

2ln(2α

)

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 21 / 37

Condicionamiento de un sistemaAl hablar de condicionamiento en un sistema de ecuaciones nosreferimos a las estabilidad que presenta la solucion frente apequenas perturbaciones tanto en la matriz de coeficientes comoen el vector de terminos independientes

El llamado numero de condicion constituye una herramientaeficaz para predecir el comportamiento en un sistema deecuaciones lineales frente a perturbaciones de la matriz decoeficientes y/o del vector de segundos miembros.

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 22 / 37

Tecnicas de PrecondicionamientoLas tecnicas de Precondicionamiento permiten mejorar elnumero de condicion en un sistema. La idea es considerar unamatriz invertible M y resolver el sistema M−1Ax = M−1b enlugar de Ax = b. Esta matriz M recibe el nombre de matriz dePrecondicionamiento

Naturalmente, para que este procedimiento sea efectivo se tieneque dar:

cond(M−1A) < cond(A)

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 23 / 37

Tecnicas de PrecondicionamientoLo mas conveniente serıa tomar M de tal modo que M−1A = Ies decir M = A

hay que tomar algunas precauciones a la hora de precondicionarun sistema. La mas importante es tener en cuenta que se puededestruir la estructura de la matriz del sistema.

si la matriz A es simetrica, la matriz M−1A no tiene por queserlo, o si la matriz A es definida positiva, la matriz M−1A puedeno serlo.

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 24 / 37

Tecnicas de Precondicionamientosi se trabajo con metodos de resolucion de tipo gradiente seprefiere precondicionar de la siguiente manera:

Ax = b ⇒ MAM−1︸ ︷︷ ︸P

Mx︸︷︷︸y

= Mb︸︷︷︸c

Resolviendo este sistema y posteriormente el Mx = ygarantizamos que este metodo conserva las propiedades de lamatriz A

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 25 / 37

Tecnicas de PrecondicionamientoEn la idea de utilizar matrices de Precondicionamiento”parecidas” a la matriz del sistema, este tipo deprecondicionadores trabajan, en lugar de con la descomposicionA = LU exacta, con una descomposicion aproximada, de talforma que A = L′U ′ + R y utilizan como matriz deprecondicinamiento M = L′U ′. Los precondicionadores de estetipo, denominados LU incompletos (ILU), sonparticularmente efectivos en el caso, muy frecuente en lapractica, de que la matriz A tenga muchos elementos nulos, esdecir, sea una matriz hueca. En este caso, se suele tomar unamatriz L′ con el mismo patron de huecos que la parte triangularinferior de la matrizA.

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 26 / 37

GRACIAS

EDWIN ANCIZAR DIAZ ZAPATA (UNIVERSIDAD NACIONAL DE COLOMBIA )GRADIENTE CONJUGADO May 15, 2018 27 / 37