Análisis aplicado. Ax=b. Gradiente conjugado.

Anuncio
Análisis aplicado. Ax = b. Gradiente conjugado.
José Luis Morales
http://allman.rhon.itam.mx/∼jmorales
Departamento de Matemáticas. ITAM. 2009.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Cuadráticas estrictamente convexas.
1 T
x Ax − b T x,
A ∈ Rn×n
2
minimizar φ(x) ⇐⇒ Ax = b.
φ(x) =
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Cuadráticas estrictamente convexas.
1 T
x Ax − b T x,
A ∈ Rn×n
2
minimizar φ(x) ⇐⇒ Ax = b.
φ(x) =
A simétrica positiva definida.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Cuadráticas estrictamente convexas.
1 T
x Ax − b T x,
A ∈ Rn×n
2
minimizar φ(x) ⇐⇒ Ax = b.
φ(x) =
A simétrica positiva definida.
∇φ(x) = Ax − b.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Cuadráticas estrictamente convexas.
1 T
x Ax − b T x,
A ∈ Rn×n
2
minimizar φ(x) ⇐⇒ Ax = b.
φ(x) =
A simétrica positiva definida.
∇φ(x) = Ax − b.
x ∗ = A−1 b.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Cuadráticas estrictamente convexas.
1 T
x Ax − b T x,
A ∈ Rn×n
2
minimizar φ(x) ⇐⇒ Ax = b.
φ(x) =
A simétrica positiva definida.
∇φ(x) = Ax − b.
x ∗ = A−1 b.
Factorización de Cholesky: A = LLT .
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Método iterativo: GC
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Método iterativo: GC
Lejos de la solución: Ax̂ ≈ b.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Método iterativo: GC
Lejos de la solución: Ax̂ ≈ b.
Relajar la condición: spd → s.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Método iterativo: GC
Lejos de la solución: Ax̂ ≈ b.
Relajar la condición: spd → s.
Residuo: r (x̂) = Ax̂ − b = ∇φ(x̂).
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Método iterativo: GC
Lejos de la solución: Ax̂ ≈ b.
Relajar la condición: spd → s.
Residuo: r (x̂) = Ax̂ − b = ∇φ(x̂).
Aproximación inicial: x0 .
x ∗ = x0 + α0 p0 + α1 p1 + · · · + αn−1 pn−1
sucesión (finita) de aproximaciones {xk }n−1
0 . Forma general del
método
xk = xk−1 + αk−1 pk−1
Residuo
rk = b − Axk = ∇φ(xk )
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Recursos para construir el método.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Recursos para construir el método.
Direcciones de descenso: {pk }n−1
0 .
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Recursos para construir el método.
Direcciones de descenso: {pk }n−1
0 .
Paso (búsqueda lineal exacta)
αk = −
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
rkT pk
pkT Apk
Análisis aplicado. Ax = b. Gradiente conjugado.
Recursos para construir el método.
Direcciones de descenso: {pk }n−1
0 .
Paso (búsqueda lineal exacta)
αk = −
rkT pk
pkT Apk
Base de Rn .
B = {p0 , p1 , . . . , pn−1 }
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Recursos para construir el método.
Direcciones de descenso: {pk }n−1
0 .
Paso (búsqueda lineal exacta)
αk = −
rkT pk
pkT Apk
Base de Rn .
B = {p0 , p1 , . . . , pn−1 }
Pregunta: ¿Cómo obtener {pk }n−1
0 ?
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 1
Teorema 5.1: Utilizar una base A-ortogonal.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 1
Teorema 5.1: Utilizar una base A-ortogonal.
Producto interior definido por A: < u, v >= u T Av
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 1
Teorema 5.1: Utilizar una base A-ortogonal.
Producto interior definido por A: < u, v >= u T Av
√
Norma inducida: ||u||A = u T Au
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 1
Teorema 5.1: Utilizar una base A-ortogonal.
Producto interior definido por A: < u, v >= u T Av
√
Norma inducida: ||u||A = u T Au
A-ortogonalidad: u ⊥ v = 0 = u T Av
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 1
Teorema 5.1: Utilizar una base A-ortogonal.
Producto interior definido por A: < u, v >= u T Av
√
Norma inducida: ||u||A = u T Au
A-ortogonalidad: u ⊥ v = 0 = u T Av
Base A-ortogonal: piT Apj = 0 si i 6= j
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 2
A-Ortogonalización de Gram-Schmidt
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 2
A-Ortogonalización de Gram-Schmidt
Dirección inicial: p0 = −r0 .
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 2
A-Ortogonalización de Gram-Schmidt
Dirección inicial: p0 = −r0 .
Primer iterando: x1 = x0 + α0 p0 .
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 2
A-Ortogonalización de Gram-Schmidt
Dirección inicial: p0 = −r0 .
Primer iterando: x1 = x0 + α0 p0 .
Residuo asociado con x1 : r1 = Ax1 − b.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Respuestas 2
A-Ortogonalización de Gram-Schmidt
Dirección inicial: p0 = −r0 .
Primer iterando: x1 = x0 + α0 p0 .
Residuo asociado con x1 : r1 = Ax1 − b.
A-ortogonalizar p0 y −r1 para obtener p1 .
β1 p0 + p1 = −r1 . p1 = −r1 +
en donde
β1 =
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
r1T Ap0
p0
p0T Ap0
r1T Ap0
p0T Ap0
Análisis aplicado. Ax = b. Gradiente conjugado.
Algoritmo de direcciones conjugadas
Supongamos que el conjunto B = {p0 , . . . , pn−1 } es A-conjugado,
i.e.
piT Apj = 0, ∀i 6= j.
x0 una aproximación inicial
xk+1 = xk + αk pk
r T pk
αk = − Tk
pk Apk
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Propiedades del algoritmo de direcciones conjugadas
Teorema 5.1 Supongamos que B es cualquier base A-ortogonal y
x0 es cualquier punto inicial.
Entonces la sucesión generada por el algoritmo de direcciones
conjugadas termina en a lo más n pasos.
Teorema 5.2 Los residuos y las direcciones satisfacen la relación:
rkT pi = 0,
i = 0, 1, . . . , k − 1.
Además xk es el minimizador de φ en el conjunto
{x|x = x0 + gen{p0 , p1 , . . . , pk−1 }}.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Teorı́a de soporte
Teorema 5.2.1 Supongamos que obtenemos B a partir de los
residuos por A-ortogonalización de Gram-Schmidt. Entonces:
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Teorı́a de soporte
Teorema 5.2.1 Supongamos que obtenemos B a partir de los
residuos por A-ortogonalización de Gram-Schmidt. Entonces:
1
Los residuos son ortogonales
riT rj = 0,
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
∀i 6= j.
Análisis aplicado. Ax = b. Gradiente conjugado.
Teorı́a de soporte
Teorema 5.2.1 Supongamos que obtenemos B a partir de los
residuos por A-ortogonalización de Gram-Schmidt. Entonces:
1
Los residuos son ortogonales
riT rj = 0,
2
∀i 6= j.
Se cumple la propiedad
T
Api = 0,
rk+1
i = 0, 1, . . . , k − 1.
Corolario La propiedad 2) implica que la recurrencia para el
cálculo de la dirección involucra sólo 1 término, i.e.
pk+1 = −rk+1 +
T Ap
rk+1
k
pkT Apk
pk
Tarea
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Algoritmo GC
Escoger x0 una aproximación inicial; fijar TOL > 0.
r0 ← Ax0 − b, p0 ← −r0 , k ← 0;
mientras ||rk ||/||r0 || ≥ TOL
αk
xk+1
rkT rk
pkT Apk
← xk + αk pk
←
rk+1 ← rk + αk Apk
r T rk+1
βk+1 ← k+1T
rk rk
pk+1 ← −rk+1 + βk+1 pk
k ← k +1
fin
Tarea
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Teorı́a de GC
Teorema 5.3 Propiedades del algoritmo GC
gen{r0 , . . . , rk } = gen{r0 , Ar0 , . . . , Ak r0 }
gen{p0 , . . . , pk } = gen{r0 , Ar0 , . . . , Ak r0 }
Teorema 5.4 Si A tiene r valores propios distintos entonces GC
converge en a lo más r iteraciones.
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Base de la prueba del Teorema 5.4
xk+1 = x0 + α0 p0 + α1 p1 + · · · + αk pk
= x0 + γ0 r0 + γ1 Ar0 + · · · + γk Ak r0
= x0 + Pk∗ (A)r0
||xk+1 − x ∗ ||2A = φ(xk+1 ) − φ(x ∗ )
= ||x0 + Pk∗ (A)r0 − x ∗ ||2A
Pk∗ = arg min ||x0 + Pk (A)r0 − x ∗ ||2A
Pk
xk+1 − x ∗ = [I + Pk∗ (A)A](x0 − x ∗ )
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Análisis con valores y vectores propios
A=
n
X
λi vi viT ,
Avi = λi vi ,
i = 1, . . . , n
i =1
x0 − x ∗ =
||xk+1 −
x ∗ ||2A
n
X
ξ i vi
i =1
≤ min max [1 + λi Pk (λi )]2 ||x0 − x ∗ ||2A
Pk 1≤i ≤n
Estimar
min max [1 + λi Pk (λi )]2 .
Pk 1≤i ≤n
José Luis Morales http://allman.rhon.itam.mx/∼jmorales
Análisis aplicado. Ax = b. Gradiente conjugado.
Descargar