Cap´ıtulo 4 Soluci´on de Grandes Sistemas de...

24
Cap´ ıtulo 4 Soluci´ on de Grandes Sistemas de Ecuaciones Lineales En el capitulo anterior se discutio como proceder para transformar un problema de ecuaciones diferenciales parciales con condicion inicial y valores en la frontera en un sistema algebraico de ecuaciones y as´ ı poder hallar la soluci´ on resolviendo el sistema de ecuaciones lineales que se pueden expresar en la forma matricial siguiente Au = b (4.1) donde la matriz A es bandada y en problemas reales tiene grandes dimensio- nes. La eleccion del m´ etodo especifico para resolver el sistema de ecuaciones depende de las propiedades particulares de la matriz A, en la siguientes sec- ciones vamos a examinar varios m´ etodos.Los m´ etodos de resoluvci´ on de del sistema algebraico de ecuaciones Au = b se clasifican en dos grandes gru- pos; los m´ etodos Directos y los m´ etods iterativos. En los m´ etodos directos la soluc´ on u se alcanza en un n´ umeros fijo de pasos y s´ olo estan sujetos a problemas de redondeo. En los m´ etodos iterativos, se realizan iteraciones para aproximarse a las soluci´ on u provechando las caracter´ ısticas propias de la matriz A, tratando de usar el menor n´ umero de de pasos que en un etodo directo. Los m´ etodos iterativos rara vez se usan para resolver siste- mas de ecuaciones sistemas lineales de dimension peque˜ na ( El concepto de dimensi´ on peque˜ na es muy relativo), ya que el tiempo necesario para para conseguir una exactitud satisfactoria rebasa el que requieren los m´ etodos di- rectos. Sin embargo, en el caso de de sistemas de ecuaciones grandes con un alto procentaje de elementos cero, son eficientes tanto en almacenamiento 65

Transcript of Cap´ıtulo 4 Soluci´on de Grandes Sistemas de...

Page 1: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

Capıtulo 4

Solucion de Grandes Sistemasde Ecuaciones Lineales

En el capitulo anterior se discutio como proceder para transformar unproblema de ecuaciones diferenciales parciales con condicion inicial y valoresen la frontera en un sistema algebraico de ecuaciones y ası poder hallar lasolucion resolviendo el sistema de ecuaciones lineales que se pueden expresaren la forma matricial siguiente

Au = b (4.1)

donde la matriz A es bandada y en problemas reales tiene grandes dimensio-nes. La eleccion del metodo especifico para resolver el sistema de ecuacionesdepende de las propiedades particulares de la matriz A, en la siguientes sec-ciones vamos a examinar varios metodos.Los metodos de resoluvcion de delsistema algebraico de ecuaciones Au = b se clasifican en dos grandes gru-pos; los metodos Directos y los metods iterativos. En los metodos directosla solucon u se alcanza en un numeros fijo de pasos y solo estan sujetosa problemas de redondeo. En los metodos iterativos, se realizan iteracionespara aproximarse a las solucion u provechando las caracterısticas propiasde la matriz A, tratando de usar el menor numero de de pasos que en unmetodo directo. Los metodos iterativos rara vez se usan para resolver siste-mas de ecuaciones sistemas lineales de dimension pequena ( El concepto dedimension pequena es muy relativo), ya que el tiempo necesario para paraconseguir una exactitud satisfactoria rebasa el que requieren los metodos di-rectos. Sin embargo, en el caso de de sistemas de ecuaciones grandes con unalto procentaje de elementos cero, son eficientes tanto en almacenamiento

65

Page 2: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

66

en la computadora como como el tiempo que se invierte en su solucion.Porestazon al resolver estos sistemas algebraicos de ecuaciones es preferible apli-car los metodos iterativos como son Jacobi, Gauss-Seidel, Sobrerrelajacionsucesiva, Descenso empinado, Gradiente conjugado. Cabe hacer mencion deque la mayoria del tiempo de computo necesario para resolver el problemade ecuaciones diferenciales parciales (EDP), es consumido en la solucion dedel sistema de algebraico de ecuaciones asociado a la discretizacion, por elloes necesario elegir aquel metodo numerico que minimice el tiempo invertidoen este proceso.

Condicionamiento de un Sistema Lineal

No es tan sencillo establecer el numero de condicion que nos indique queel sistema esta bien o mal condicionado. Para sistemas lineales el numero decondicion esta ligado a la matriz del sistema , veamos.Sea Au = b A ∈Mn A : inversible b ∈ V − {0}.Si en lugar de b tomamos una perturbacion de este b + δb, denotamos poru+ δu la solucion del sistema perturbado se tiene que

A(u+ δu) = b+ δb

Aδu = δb

δu = A−1δb

luego ‖δu‖ ≤ |‖A−1|‖‖δb‖ |‖·|‖norma matricial subordinada a A ,‖.‖norma vectorial

como

Au = b

|‖A|‖‖u‖ ≥ ‖b‖

1

‖u‖≤ |‖A|‖

‖b‖

se tiene‖δu‖‖u‖︸ ︷︷ ︸

error relativoresultados

≤ |‖A|‖|‖A−1|‖ ‖δb‖‖b‖︸ ︷︷ ︸

error relativoen datos

Page 3: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 67

Definicion

|‖ · |‖ norma matricial y A ∈Mn inversible.El numero cond(A) = |‖A|‖|‖A−1|‖ se denomina condicionamiento o nume-ro de condicion de A ∈Mn relativo a la norma |‖ · |‖

Teorema 9|‖ · |‖ Norma matricial subordinada o norma inducida y A ∈ Mn matrizinversible se cumple que:1. cond(A) ≥ 12. cond(A) = cond(A)−1

3. cond(λA) = cond(A) para todo λ ∈ K − {0}

Demostracion

1. 1 = ‖I‖ = ‖AA−1‖ ≤ ‖A‖‖A−1‖cond(A) entonces 1 ≤ cond(A)

2. cond(A) = ‖A‖‖A−1‖ = ‖A−1‖‖A‖ = cond(A−1)

3. Para todo λ 6= 0 cond(λA) = ‖λA‖‖(λA−1‖ = |λ||λ−1|‖A−1‖ = cod(A)

Teorema 10Si A ∈Mn inversible. Se verifica que

cond(A) =

√λn(A∗A)

λ1(A∗A)

dende λn(A∗A) y λ1(A∗A) son el mayor y el menor de los autovalores

de A∗A

DenostracionPrimero notamos que A∗A es hermitica y definida positiva por ser A inver-sible, por lo que los auvalores de A∗A son positivos.Por teorema

‖A‖22 = ρ(A∗A) = λn(A∗A)

y

‖A−1‖22 = ρ((A−1)∗A−1) = ρ((A∗A)−1) =

1

λ1(A∗A)

Page 4: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

68

Convergencia de las Iteraciones de una Matriz

Definicion

‖ · ‖ una norma vectorial, {vk}k∈N de V, converge a un vector v ∈V si

lımk→+∞

‖vk − v‖ = 0 y se denota v = lımk→+∞

vk

OBSERVACION1. La equivalencia de normas en V, demuestra que la convergencia de unasucesion de vectores es independiente de la norma elegida.2. La definicion anteriorincluye el caso de la convergencia de matrices, bastaconsiderar Mn(K) como el espacio vectorial de dimencion n2

{Ak}k∈N ⊂Mn converge a A ∈Mn y lo denotamos

A = lımk→+∞

Ak si lımk→+∞

‖Ak − A‖ = 0

Teorema 11B ∈Mn son equivalentes

a) lımx→∞ Bk = 0

b) lımx→∞ Bkv = 0

c) ρ(B) < 1

d) Existe ‖ · ‖ norma matricial ( puede ser inducida ) tal que ‖B‖ < 1

Demostraciona) −→ b)‖ · ‖ norma matricial subordinada por ‖ · ‖ norma matricial, por definicion

lımk→+∞

Bk = 0 ⇐⇒ lımk→+∞

‖Bk‖ = 0

Por lo tanto, por definicion como para todo v ∈ V se cumple que

|Bkv| ≤ ‖Bk‖|v|

entonces lımk→∞

|Bk| = 0

Page 5: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 69

y ası lımk→∞

Bkv = 0

b) −→ c)Por reduccion al absurdo.Si ρ(B) ≥ 1 entonces exixte un autovalor λ =λ(B) ∈ sp(B)con|λ| ≥ 1; basta considerar un autovector v ∈ V \{0} asosiadoa λ para llegar a una contradiccion.En efecto Bv = λv entonces

Bkv = λkv, k ∈ N

y por tantolım

k→+∞‖Bkv‖ = lım

k→+∞|λk|‖v‖ 6= 0

c) −→ d)Por el teorema anterior dado ε > 0 existe una norma matricial ‖ · ‖B,ε talque ‖ · ‖B,ε ≤ ρ(B) + ε tomando

0 < ε < 1− ρ(B)

se obtiene‖ · ‖B,ε < ρ(B) + (1− ρ(B)) = 1

d) −→ a)

‖Bk‖ = ‖Bk−1B‖ ≤ ‖Bk−1‖‖B‖ ≤ ... ≤ ‖B‖k, k ∈ NPor lo tanto, la hipotesis ‖B‖ ≤ 1implica

lımk→+∞

‖B‖ = 0

Es decirlım

k→+∞B = 0

Teorema 12Sea ‖ · ‖ la norma de una matriz. Entonces

ρ(A) ≤ ‖A‖ ∀A ∈ Cn.n

DemostracionSea λ un autovalor de A y v 6= 0 el autovalor asociado. Tenemos

|λ|‖v‖ = ‖λv‖ = ‖Av‖ ≤ ‖A‖‖v‖

|λ| ≤ ‖A‖

Page 6: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

70 4.1. Metodos Iterativos Estacionarios y no Estacionarios

4.1. Metodos Iterativos Estacionarios y no Es-

tacionarios

Denotamos porRp = I − P−1A

la matriz de iteracion asociada a

xk+1 = xk + P−1rk

Donderk = b− Axk

introducimos el parametro α y tenemos el metodo estacionario de Richardson

xk+1 = xk + αP−1rk, k ≥ 0

mas general, tenemos α dependiendo del indice de iteracion, entonces tenemosel metodo no estacionario de Richardson

xk+1 = xk + αkP−1rk, k ≥ 0

donde la matrix de iteracion en el k−esimo paso de este metodo es

Rp = I − αkP−1A

Ahora si αk = α el metodo en este caso es estacionario.Si P = I el metodo es llamado no precondicionado.El metodo de Jacobi y de Gauss-Seidel son metodos estacionarios de Richard-son con α = 1, P = D y P = D − E respectivamente.

Convergencia y Analisis del Metodo de Richardson

Vamos a considerar el metodo estacionario de Richardson y tenemos lossiguientes resultados

Teorema 13Para una matriz no singular P el metodo estacionario de Richardson esconvergente sii

2Re(λi)

α|λi|2> 1 ∀i = 1, 2, ..n

donde λi ∈ C son los autovalores de P−1A

Page 7: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 71

Demostracion

Como λi ∈ C son los autovalores de P−1A, los autovalores de la matriz deiteracion Rp = I −P−1A son 1−αλi y por condicion de convergencia|1− αλi| < 1 ∀i = 1, 2, ..n se tiene la desigualdad

(1− αReλi)2 + α2(Imλi)

2 < 1

1− 2αReλi + (αReλi)2 + α2(Imλi)

2 < 1

−2αReλi + (αReλi)2 + α2(Imλi)

2 < 0

tenemos la desigualdad

2Re(λi)

α|λi|2> 1 ∀i = 1, 2, ..n

Teorema 14Si P es una matriz no singular tal que P−1A tiene autovalores reales ypositivos ordenados λ1 ≥ λ2 ≥ ... ≥ λn. entonces el metodo estacionario deRichardson es convergente si 0 < α < 2

λ1Ademas

αopt =2

λ1 + λ2

El radio espectral de la matriz de iteraccion es Rα es mınimo si α = αopt

ρopt = mınα

[ρ(Rα)] =λ1 − λn

λ1 + λn

Demostracion

Los autovalores de Rα son λi(Rα) = 1 − αλi y el metodo de Richardsones convergente si

|λi(Rα)| < 1 para i = 1, 2..n

−1 < 1− αλi < 1

0 < α <2

λi

0 < α <2

λ1

≤ 2

λi

∀i = 1, 2..n αcrit =2

λ1

Page 8: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

72 4.1. Metodos Iterativos Estacionarios y no Estacionarios

Ademas los autovalores de Rα se comportan como funcion α (ver figura).Paraα todos los autovalores de Rα estan comprendidos entre

λn = λmin y λ1 = λmax

La tasa de convergencia esta dada por

γ = maxi|1− αλi|

y queremos buscar el α que da la mejor tasa de convergencia, es decir elmınimo γ.Como los 1− αλi estan comprendidas en el intervalo

1− αλmin y 1− αλmax

es decir

γ ∈ 〈1− αλmin, 1− αλmax〉

Ahora para el intervalo 0 < α < αopt el maximo corresponde a 1 − αλmin,mientras que para αopt < α < αcrit el maximo esta dado por −1 + αλmax

.Pero requerimos el mınimo de γ segun lo visto este se da si α = αopt es decirsi

1− αλmin = −1 + αλmax

de donde

αopt =2

λmin + λmax

Como el γ mınimo se da para α = αopt de ahi el nombre de coeficiente derelajacion optimo.Ahora reemplazando el αopt obtenemos

ρopt = mınα

[ρ(Rα)] = mınαγ =

λ1 − λn

λ1 + λn

Teorema 15Sea A una matriz simetrica definida positiva, entonces el metodo de estacio-nario no precondicionado de Richardson es convergente y

‖e(k+1)‖A ≤ ρ(Rα)‖e(k)‖A, k ≥ 0

Page 9: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 73

Figura 4.1: Radio espectral en funcion de los autovalores de P−1A

Demostracion

La convergencia es consecuencia del teorema 7 y tambien tenemos que

‖e(k+1)‖A = ‖Rαe(k)‖A = ‖A

12Rαe

(k)‖2 ≤ ‖A12Rαe

(k)A−12 ‖2‖A

12 e(k)‖2

La matriz Rα es simetrica definida positiva y es similar a A12Rαe

(k)A−12 .

Entonces tenemos ‖A 12Rαe

(k)A−12 ‖2 = ρ(Rα) ademas ‖A 1

2 e(k)‖2 = ‖e(k)‖A

tenemos‖e(k+1)‖A ≤ ρ(Rα)‖e(k)‖A, k ≥ 0

4.2. Metodo del Maximo Descenso

Este metodo nos servira para resolver sistemas de ecuaciones lineales dela forma

Ax = b

Dondex: vector de incognitas,b :vector conocido,A : matriz cuadrada conocida ademas simetrica y definida positiva

Page 10: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

74 4.2. Metodo del Maximo Descenso

NotacionAx = b

a1,1 a1,2 · · · a1,n

a2,1 a2,2 · · · a2,n...

. . ....

an,1 an,2 · · · an,n

x1

x2...xn

=

b1b2...bn

Teorema 16La forma cuadratica

f(x) =1

2xtAx− btx+ c (4.2)

Dondex: vector de incognitas,b: vector conocido,A: matriz cuadrada conocidac: escalar

Mostraremos que si A es simetrica y definida positiva f(x) es minimiza-da por la solucion de Ax = b

Demostracion

En efecto

=⇒Como A es definida positiva, la superficie de f(x) es un paraboloide.En el fondo del paraboloide la gradiente es cero, f(x) es minimizado cuandof′(x) = 0,

f′(x) =

1

2Atx+

1

2Ax− b

como A es simetrica la ecuacion se reduce a

f′(x) = Ax− b (4.3)

Page 11: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 75

Si igualamos a cero la gradiente (4,3) , obtenemos la ecuacion (4,1) Ası

f′(x) = Ax− b = 0

Ax = b

Observamos que la solucion de

Ax = b

es un punto critico de f(x).

⇐=Si A es definida positiva y simetrica, la solucion es un mınimo de f(x)Pues si Ax = b

En la ecuacion (4,2)

f(x+ e) =1

2(x+ e)tA(x+ e)− bt(x+ e) + c

=1

2(xt + et)(Ax+ Ae)− btx− bte+ c

=1

2(xtAx+ etAx+ xtAe)− btx− bte+ c

=1

2xtAx− btx+ c︸ ︷︷ ︸

f(x)

+1

2etAe+

1

2(etAx+ xtAe)− bte

= f(x) +1

2etAe+

1

2etAe+

1

2(etb+ bte)− bte

= f(x) +1

2etAe+

1

2etAe+

1

2(2bte)− bte

Page 12: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

76 4.2. Metodo del Maximo Descenso

= f(x) +1

2etAe+ bte− bte

f(x+ e) = f(x) +1

2etAe

f(y) = f(x) +1

2(y − x)tA(y − x)

Si x 6= y entonces (y − x)tA(y − x) > 0 ∀ y − x 6= 0 pues A es definidapositivaAsı

f(y) > f(x) ∀ x 6= y

Ası x minimiza f.

Ahora si A no es simetrica la ecuacion (3,11) queda

f′(x) =

1

2(At + A)x− b

Isinua la solucion del sistema

1

2(At + A)x = b

Donde la matriz At + A es simetrica

Metodo del Maximo Descenso

Nosotros empezamos tomando un punto arbitrario x0 y deslizamos haciael fondo del paraboloide , nosotros tomamos una serie de pasos x1, x2, x3, ..,hasta que estemos satisfechos con la aproximacion para dar la solucion.Cuando nosotros tomamos un paso, nosotros escogemos la direccion en lacual f decrece mas rapidamente la cual es la direccion opuesta de f

′(xi) de

acuerdo a la ecuacion (3,12) esta direccion es

−f ′(x(i)) = b− Ax(i)

Vamos a intriducir unas definiciones.

Page 13: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 77

Figura 4.2: Cuando la matriz A,es simetrica y definida positiva el grafico def(x) se ve como un paraboloide

El Error

e(i) = x(i) − x es un vector el cual indica que tan lejos estamos de lasolucion.

El Residual

r(i) = b − Ax(i) indica que tan lejos estamos del valor correcto de bvemos que r(i) = −Ae(i) pues

r(i) = b− Ax(i)

= Ax− Ax(i)

= A(x− x(i))

= −A(x(i) − x)

r(i) = −Ae(i)

Nosotros pensamos en el Residual como una transformacion por A dentrodel mism,o espacio que b .Mas importancia r(i) = −f ′(x(i)) y debemos pensar inclusive en el residualcomo una direccion del descenso rapido.Cuando veamos Residual pensaremos en la direccion de la pendiente descen-dente. Supongamos que nosotros empezamos en x(0), nuestro primer paso,siguiendo la direccion del descenso rapido, caera en algun lugar sobre la lineade de direccion r(0) , nosotros escogemos un punto x(1) = x(0) + αr(0)Cual es el valor de α en la base de la parabola ?

Page 14: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

78 4.2. Metodo del Maximo Descenso

α minimiza f cuando la derivada direccional ∂∂αf(x(1)) = 0 por la regla de la

cadena

∂αf(x(1)) = f

′(x(1))

t ∂

∂αx(1) = f

′(x(1))

tr(0) = 0 pues x(1) = x(0) + αr(0)

Es decir α deberia ser escogida de manera que r(0) y f′(x(1)) sean ortogonales.

Es decir rt(1).r(0) = 0 pues f

′(x(1)) = −r(1)

(b− Ax(1))t.r(0) = 0

[b− A(x(0) + αr(0))]t.r(0) = 0

[b− Ax(0) − αAr(0)]t.r(0) = 0

[b− Ax(0)]t.r(0) − α[Ar(0)]

t.r(0) = 0

[b− Ax(0)]t︸ ︷︷ ︸

rt(0)

.r(0) = α[Ar(0)]t.r(0) = 0

rt(0).r(0) = αrt

(0)(Ar(0))

α =rt(0).r(0)

rt(0)Ar(0)

Poniendo todo junto, el metodo de descenso rapido queda

r(i) = b− Ax(i)

α(i) =rt(i).r(i)

rt(i)Ar(i)

x(i+1) = x(i) + α(i)r(i)

El algoritmo como esta escrito requiere de dos matrices-vectores, multipli-cado por iteracion. En general el costo computacional del algoritmo iterativoes dominado por la productos matriz-vector, afortunadamente una puede sereliminada por premultiplicacion a los dos lados de la ecuacion (3,15) por −Ay agregando b nosotros tenemos.

r(i+1) = r(i) − α(i)Ar(i)

Page 15: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 79

A pesar de la ecuacion (3,13) es necesario conputar r(0), la ecuacion (3,16)puede ser usada por todas las iteraciones. El producto Ar, el cual ocurre endos ecuaciones (3,14)− (3,15) necesita solo ser computado una vez.La desventaja de usar estas recurrencias, es que la recurrencia definida por(3,16) es generada sin ningun retroalimentamiento del vector x(i) para con-verger en algun punto cerca a x. El algoritmo modificado es el siguiente :

x(0) = dado

r(0) = b− Ax(0)

α(i) =rt(i).r(i)

rt(i)Ar(i)

x(i+1) = x(i) + α(i)r(i)

r(i+1) = r(i) − α(i)Ar(i)

Teorema 17Sea A una matriz simetrica y definida positiva, entonces el metodo de lagradiente conjugada es convergente para cualquier dato inicial que se tomex0 y

‖e(k+1)‖A ≤k2(A)− 1

k2(A) + 1‖e(k)‖A, k = 0, 1, 2, ..

Donde ‖ · ‖A es la norma energia.

Demostracion

Sea xk la solucion generada por el metodo de la gradiente en el k-esimopaso. Entonces sea xk+1

R un vector generado por el metodo no precondicionadode Richardson con parametro optimo a partir de xk, i.e xk

R = xk + αoptrk.

Del teorema 9 tenemos:

‖e(k+1)R ‖A ≤

k2(A)− 1

k2(A) + 1‖e(k)‖A

Donde e(k+1)R = x

(k+1)R − x

4.3. Metodo de la Gradiente Conjugada

Revisarenos el metodo de la gradiente conjugada para funciones cuadrati-cas. Este metodo fue desarrollado por Hastenes y stiefel (1952) para ecuacio-

Page 16: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

80 4.3. Metodo de la Gradiente Conjugada

nes lineales, vamos a tomar un conjunto A-ortogonal de busqueda de direc-ciones d0, d1, ..dn−1 en cada direccion, nosotros tomaremos exactamente unpaso y ese paso queremos que sea justo del largo correcto. El metodo de lagradiente conjugada modifica la expresion

r(m) = b− Ax(m) = −f ′(x(m))

sustituyendola por otra expresion, que hace intervenir la direccion de bus-queda anterior d(m−1) en la forma siguiente

d(m) = r(m) + β(m−1)d(m−1)

El valor del coeficiente β(m−1) que es el paso se calcula con la condicion deque la nueva direccion de busqueda sea A−ortogonal (o conjugada ) respectoa la direccion anterior.

Definicion

d(m) es A-ortogonal con d(j) si dt(m)Ad(m) = 0

De aqui

dt(m−1)Ad(m) = 0 de aqui

dt(m−1)A(r(m) + β(m)d(m−1)) = 0

dt(m−1)Ar(m) + β(m−1)d

t(m−1)Ad(m−1)

β(m−1) = −dt

(m−1)Ar(m)

dt(m−1)Ad(m−1)

El algoritmo del metodo del gradiente conjugado procede ası:

Page 17: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 81

x(0) = dado

d(0) = r(0) = b− Ax(0)

r(m) = b− Ax(m)

β(m−1) = −rt(m)Ad(m−1)

dt(m−1)Ad(m−1)

d(m) = r(m) + β(m−1)d(m−1)

α(m) =dt

(m).r(m)

dt(m)Ad(m)

x(m+1) = x(m) + α(m)d(m)

Las expresiones del algoritmo anterior admiten simplificaciones.Por ejemplo .

r(m) = b− Ax(m) se puede reducir ası

r(m) = b− A(x(m−1) + α(m−1)d(m−1)

)r(m) = b− Ax(m−1) − α(m−1)Ad(m−1)

r(m) = r(m−1) − α(m−1)Ad(m−1)

La ventaja de esta expresion es que se reduce a un unico producto Ad(m−1)

matriz por vector que hay que hacer en cada paso, con frecuencia este esel paso mas costoso de cada iteracion del (MGC). Tambien la expresionβ(m−1) puede simplificarse, usando propiedades de ortogonalidad que se veranposteriormente, se puede llagar a demostrar que

β(m−1) =rt(m)r(m)

rt(m−1)r(m−1)

Por lo tanto el algoritmo queda

x0 arbitrario

r(0) = b− Ax(0)

d(0) = r(0)

while err < err − tol y nit < nit.max

Page 18: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

82 4.3. Metodo de la Gradiente Conjugada

α(m) =dt

(m).r(m)

dt(m)Ad(m)

x(m+1) = x(m) + α(m)d(m)

r(m+1) = r(m) − α(m)Ad(m)

β(m) =rt(m+1).r(m+1)

rt(m)r(m)

d(m+1) = r(m+1) + β(m)d(m)

err = nor(r) nit = nit+ 1

Teoremas de Ortogonalidad

los vectores que se van calculando con el metodo de la Gradiente Conju-gada satisfacen:

Teorema 18El gradiente −r(m+1) = f

(m) es ortogonal a la direccion de d(m)

Demostracion

En efecto

dt(m)r(m+1) = dt

(m)

(r(m) − α(m)Ad(m)

)= dt

(m)r(m) − α(m)dt(m)Ad(m)

= dt(m)r(m) −

dt(m).r(m)

dt(m)Ad(m)

dt(m)Ad(m)

dt(m)r(m+1) = 0

Observacion

Recordemos que

x(m+1) = x(m) + α(m)d(m) multiplicando por A y sumando b

obtenemos r(m+1) = r(m) − α(m)d(m)

Page 19: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 83

Teorema 19r(m+1) es ortogonal a r(m)

DemostracionEn efecto

rt(m+1)r(m) =

(r(m) − α(m)Ad(m)

)t (d(m) − β(m−1)d(m−1)

)pues d(m) = r(m) + β(m−1)d(m−1)

=(rt(m) − α(m)Ad

t(m)

) (d(m) − β(m−1)d(m−1)

)= rt

(m) − β(m−1)rt(m)d(m−1) − α(m)d

t(m)Ad(m) + α(m)d

t(m)Ad(m−1)β(m−1)

= rt(m)d(m) − α(m)d

t(m)Ad(m)

= rt(m)d(m) −

rt(m)d(m)

dt(m)Ad(m)

dt(m)Ad(m)

rt(m+1)r(m) = rt

(m)d(m) − rt(m)d(m)

rt(m+1)r(m) = 0

Observacion

Recordemos quedt

(m)Ad(m−1) = 0

α(m) =rt(m)d(m)

dt(m)Ad(m)

Teorema 20Se cumple para i = 1, 2, 3..ka. dt

(k+1)Ad(i) = 0

b. rt(k+1)d(i) = 0

c. rt(k+1)d(i) = 0

Page 20: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

84 4.3. Metodo de la Gradiente Conjugada

Demostracion

Por induccion el teorema se cumple para k = 0a,1 dt

(1)Ad(0) = 0 (V ) por ser direcciones conjugadas

b,1 rt(1)d(0) = 0 (V ) por teorema 1

c,1 rt(1)r(0) = 0 (V ) por teorema 2

Se supone que el teorema (20) es cierto pra k, se debe demostrar que se cum-ple para k + 1 es decir se cumplen las relaciones.a,1 dt

(k+2)Ad(i) = 0

b,1 rt(k+2)d(i) = 0

c,1 rt(k+2)r(i) = 0

Para i = 1, 2, 3..k, k + 1Se demostrara primero que se cumple (b,2)b,2 rt

(k+2)d(i) = (rt(k+1) + α(k+1)d

t(k+1)A)d(i) = rt

(k+1)d(i)︸ ︷︷ ︸0

+α(k+1) dt(k+1)Ad(i)︸ ︷︷ ︸

0

rt(k+2)d(i) = 0 i = 1, 2, 3..k se anula por hipotesis

Se demostrara que se cumple (c,2)

rt(k+2)r(i) = (rt

(k+1) + α(k+1)dt(k+1)A)(d(i) − β(i−1)d(i−1))

= rt(k+1)d(i)︸ ︷︷ ︸

0

−β(i−1) rt(k+1)d(i)︸ ︷︷ ︸

0

+α(k+1) dt(k+1)Ad(i)︸ ︷︷ ︸

0

−α(k+1) dt(k+1)Ad(i−1)︸ ︷︷ ︸

0

β(i−1)

rt(k+2)r(i) = 0

Los sumandos se anulan por hipotesis.

Tambien se cumple (a.2)

dt(k+2)Ad(i) = (rt

(k+2) + β(k+1)dt(i+1))Ad(i) = rt

(k+2)Ad(i) + β(k+1) dt(i+1)Ad(i)︸ ︷︷ ︸

0

se anula por hipotesis para i = 1, 2, 3..k

para el primer sumando. Se considera la expresion

Page 21: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 85

0 = rt(k+2)r(i) = rt

(k+2)(r(i+1) + α(i)Ad(i)) = rt(k+2)r(i+1)︸ ︷︷ ︸0 por c.2

+α(i)rt(k+2)Ad(i)

Por lo tanto

0 = rt(k+2)r(i) = α(i)r

t(k+2)Ad(i) i = 1, 2, 3..k

De aqui rt(k+2)Ad(i) = 0 i = 1, 2, 3..k

Por lo tanto se tiene dt(k+2)Ad(i) = 0 i = 1, 2, 3..k

Para para i = k + 1 se cumple dt(k+2)Ad(k+1) = 0 por ser conjugados

Ası se concluye el teorema 20.

Observacion

Probaremos β(k+1) =rt(m)

r(m)

rt(m−1)

r(m−1)

En efector(m+1) = r(m) − α(m)Ad(m)

r(m) = r(m−1) − α(m−1)Ad(m−1)

Ad(m−1) =r(m−1)−r(m)

α(m−1)

tambien d(m−1) = r(m−1) + β(m−2)d(m−2)

β(m−1) = −dt

(m−1)Ar(m)

dt(m−1)Ad(m−1)

β(m−1) = −rt(m)Ad(m−1)

dt(m−1)Ad(m−1)

β(m−1) = −rt(m)

(r(m−1)−r(m)

α(m−1)

)(rt(m−1) + β(m−2)d

t(m−2)

)(r(m−1)−r(m)

α(m−1)

)

Page 22: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

86 4.3. Metodo de la Gradiente Conjugada

β(m−1) = −

rt(m)r(m−1)︸ ︷︷ ︸

0

−rt(m)r(m)

rt(m−1)r(m−1) − rt

(m−1)r(m)︸ ︷︷ ︸0

+β(m−2) dt(m−2)r(m−1)︸ ︷︷ ︸

0

−β(m−2) dt(m−2)r(m)︸ ︷︷ ︸

0

β(m−1) =rt(m)r(m)

rt(m−1)r(m−1)

Teorema 21Sea A ∈ M(n) simetrica y definida positiva, el metodo de la Gradiente Con-jugada termina en a lo sumo en N pasos obteniendo la solucion exacta.

Demostracion

Las direcciones d0, d1, d2, ..dn−1 forman una base A − ortogonal en Rn

ademas xk es optimo con respecto a las direcciones dj, j = 1, 2, 3..k − 1 esdecir rk es ortogonal al espacio Sk−1 = span(d0, d1, d2, ..dk−1). Como conse-cuencia rn⊥Sn−1 = Rn ası tenemos rn = 0, lo que implica xn = x.

Teorema 22Sea una A una matriz simetrica y definida positiva y sean λ1 y λ2

los autovalores maximo y mınimo, respectivamente. El metodo de la gradienteconjugada converge a la solucion del sistema Ax = b a lo sumo en Npasos ademas

‖e(k)‖A ≤2ck

1 + c2k‖e(0)‖A, c =

√k2(A)− 1√k2(A) + 1

Demostracion

La convergencia del metodo de la gradiente conjugada en N pasos esconsecuencia del teorema anterior.Probaremos la estimativa del error tomando por simplicidad x0, para el indicek

xk+1 =k∑

j=0

γjAjb,

Page 23: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

4. Solucion de Grandes Sistemas de Ecuaciones Lineales 87

para cada γj ∈ R. Ademaspor construccion xk+1 es el vector que miniminizalaA− norma del error en el paso k + 1 ademas el vector de la forma

z =k∑

j=0

δjAjb = pk(A)b

donde

pξ =k∑

j=0

δjξj

es un polinomio de grado k y pk(A) denota la correspondiente matriz matrizpolinomial. En consecuencia tenemos:

‖e(k+1)‖2A ≤ (x− z)TA(x− z) = xT qk+1(A)Aqk+1(A)x

Dondeqk+1(ξ) = 1− pk(ξ)ξ ∈ P 0,1

k+1

Page 24: Cap´ıtulo 4 Soluci´on de Grandes Sistemas de …sisbib.unmsm.edu.pe/bibvirtualdata/monografias/basic/carranza_pm/... · problema de ecuaciones diferenciales parciales con condicion

88 4.3. Metodo de la Gradiente Conjugada