Você está na página 1de 39

METODOS NUMERICOS

MB536

SOLUCION DE SISTEMAS LINEALES


Métodos Iterativos

 Profesora: Rosa Garrido Juárez, Mg. Ing

1
Metodos de Solución Iterativos
 Empezar con una aproximación inicial para el
vector solución (x0)
 Actualizar en cada iteración el vector x usando
el sistema Ax=b
 Cada iteración involucra el producto matriz-
vector.
 Si A es esparcida este producto es realizado
eficientemente.

2
Procedmiento de solución Iterativa
 Escribir el sistema Ax=b en una forma equivalente
x=Tx+c (como x=g(x) para iteración del punto
fijo)
 Empezando con x0, genere una secuencia de
aproximaciones {xk} iterativamente por
xk+1=Txk+c
 Representación de T y c dependen del tipo de
método usado.
 Pero para cada método T y c son obtenidas a parir
de A y b, pero en forma diferente.

3
Convergencia
 Cuando k, la secuencia {xk} converge a un
vector solución bajo algunas condiciones en la
Matriz T.
 Esto impone condiciones diferentes en la matriz A
para diferentes métodos.
 Para la misma matriz A, un método puede converger
mientras que otro puede divergir.
 Por lo tanto para cada método la relación entre A y
T deben ser encontradas para decidir la
convergencia.

4
Diferentes metodos Iterativos
 Iteración de Jacobi
 Iteración de Gauss-Seidel
 Successive Over Relaxation (S.O.R)
 SOR es un método usado para acelerar la

convergencia.
 La iteración de Gauss-Seidel es un caso especial

del método SOR.

5
Iteración de Jacobi
a11x1  a12 x2    a1n xn  b1  x10 
a21x1  a22 x2    a2 n xn  b2  0
 x2 
x 
0
 
 0
an1 x1  an 2 x2    ann xn  bn  xn 

x11 
1
(b1  a12 x20    a1n xn0 ) 1  i 1 n 
a11
k 1
xi  bi 
aii 
 aij x   aij x 
k
j
k
j

1
j 1 j i 1 
x12  (b2  a21 x10  a23 x30    a2 n xn0 )
a22
1
x1n  (bn  an1 x10  an 2 x20    ann1 xn01 )
ann
6
Método de Jacobi. Forma Matricial

 Descomponiendo A = D - L - U. U=D-triu(A)

-U
D =
-L

L= D -tril(A) D=diag(diag(A))

7
xk+1=Txk+c - iteración por el método de
Jacobi
Se puede escribir como A=D-L-U (No es una
factorización)
 a11 a12 a13   0 0 0 a11 0 0  0 a12 a13 
a a a   a 0 0  0 a 0   0 0 a 
 21 22 23   21   22   23 

a31 a32 a33  a31 a32 0  0 0 a33  0 0 0 

Ax=b  (D-L-U)x=b Dxk+1 = (L+U)xk+b

1  i 1 n  xk+1=D-1(L+U)xk+D-1b
bi   aij x j   aij x j 
k 1
xi  k k

aii  j 1 j i 1  T=D-1(L+U)
 
Dxk+1 Lx k Uxk c=D-1b
8
iteración Gauss-Seidel (GS)
a11x1  a12 x2    a1n xn  b1  x10 
Use lo último a21x1  a22 x2    a2 n xn  b2  0
x2 
al actualizar x 
0 
 
 0
an1 x1  an 2 x2    ann xn  bn  xn 

x11 
1
(b1  a12 x20    a1n xn0 ) 1  i 1 n 
a11
k 1
xi  bi 
aii 
a x ij
k 1
j   aij x  k
j
1 j 1 j i 1 
x12  (b2  a21 x11  a23 x30    a2 n xn0 )
a22
1
x1n  (bn  an1 x11  an 2 x12    ann1 x1n 1 )
ann
9
x(k+1)=Tx(k)+x iteración de Gauss-Seidel

Ax=b  (D-L-U)x=b
1  i 1 n 
bi   aij x j   aij x j 
k 1 k 1
x  k
i
aii  j 1 j i 1  (D-L)xk+1 =Uxk+b
Dxk+1
 
Lx k 1 Uxk

xk+1=(D-L)-1Uxk+(D-L)-1b
Tgs=(D-L)-1U
cgs=(D-L)-1b
10
Comparación
 İteración de Gauss-Seidel converge más
rápidamente que la iteración de Jacobi desde que
este usa la última actualización.
 Pero existen algunos casos que la iteración de
Jacobi converge pero Gauss-Seidel no.
 El método de sobre relajación sucesiva es usada para
acelerar la convergencia del método de Gauss-
Seidel.

11
Metodo Sobre Relajación Sucesiva
(SOR)
 GS puede ser escrita como sigue
1  i 1 n 
bi   aij x j   aij x j 
k 1 k 1
x i x 
k
i
k

aii  j 1 j i 
xik 1  xik   ik término Corrector

 i2
xi3  i1
 2
Converge más
xi2 i

 i1 rápido
xi1
Multiplicando por  i0
 i0  1
0
x i
12
SOR
xik 1  xik   ik
1  i 1 n 
 x  bi   aij x j   aij x j 
k 1 k k 1 k
xi i
aii  j 1 j i 
1  i 1 n 
xik 1  (1   ) xik   bi   aij x j   aij x j 
k 1 k

aii  j 1 j i 1 
1<<2 Sobre-relajación (convergencia rápida)
0<<1 Sub-relajación (convergencia más lenta)
Existe un valor óptimo para 
Encontrarlo por prueba y error
13
x(k+1)=Tx(k)+c iteración para SOR

1  i 1 n 
 (1   ) x   bi   aij x j   aij x j 
k 1 k k 1 k
xi i
aii  j 1 j i 1 

Dxk+1=(1-)Dxk+b+Lxk+1+Uxk
(D- L)xk+1=[(1-)D+U]xk+b
T=(D- L)-1[(1-)D+U]
c= (D- L)-1b

14
Convergencia de los métodos iterativos

Define el vector solución como x̂


Define el vector error como ek
x  e  xˆ
k k

Substituye esto en
x k 1  Tx k  c
ek 1  xˆ  T (ek  xˆ )  c  Txˆ  c  Tek

e k 1  Te k  TTe k 1  TTTe k  2  T ( k 1) e 0


15
Convergencia de los Métodos Iterativos

iteración potencia
e T e T
k (k ) 0 (k )
e 0

El método iterativo convergería para cualquier vector


inicial arbitrario si la siguiente condición es satisfecha

Condición de Convergencia

Lim e k  0 si Lim E ( k )  0
k  k 

16
Norma de un vector
La norma de un vector debe satisfacer estas
condiciones:
x  0 Para cualquier vector no nulo x
x  0 si y solo si x es un vector nulo
αx   x Para un escalar α
x y  x  y
La norma de un Vector pueden ser definidas en diferentes
formas, y deben satisfacer estas condiciones.
17
Normas de vectores Comunmente usadas
norma Suma o norma ℓ1
x 1  x1  x2   xn
norma Euclideana ó norma ℓ2

x 2  x  x   x
2
1
2
2
2
n

norma Maxima o norma ℓ

x   max i xi
18
Norma de una matriz
La norma de una matriz debe satisfacer estas cond.
A 0
A  0 si y solo si A es una matriz nula
αA   A para α escalar
A B  A  B
Importante identidad
Ax  A x x es un vector

19
Normas de matrices mas usadas
Norma Maxima suma_col- o norma ℓ1
m
A 1  max  aij
1 j  n
i 1
Norma Espectral o norma ℓ2

A 2  maximo valor propio de A A T

Norma Maxima suma_fil- o norma ℓ


n
A   max  aij
1i  m
j 1
20
Ejemplo
 Calcule las normas ℓ1 y ℓ de la matriz

3 9 5 17  A 
7 2 4 13
 
6 8 1 15

16 19 10
 A1

21
Condición de Convergencia
k 1 ( k 1)
lim e  0 si lim T 0
k  k 

Expresar T en terminos de matriz modal P y 


: Matriz Diagonal con valores propios de T en la diagonal
T  PP 1 1k 1 
 
k 1

T ( k 1)  PP 1 PP 1  PP 1 k 1   2 


  
 k 1 
T ( k 1)  P( k 1) P 1  n  

lim T ( k 1)  0  lim P( k 1) P 1  0  lim ( k 1)  0


k  k  k 

 lim ki 1  0   i  1 for i  1,2,...,n


k 
22
Condición Suficiente para convergencia
Si la magnitud de todos los valores propios de la
Matriz de iteración T es menor que 1 entonces la
iteración es convergente
Los valores propios son mas fácil de calcular que
la norma de una matriz
Tx  x
Tx   x 
   x  T x    T   (T )  T
Tx  T x 
 (T )  1 condición suficiente para convergencia
23
Convergencia de la iteración de Jacobi
T=D-1(L+U)
 a12 a1n 
 0    
a11 a11 
 
 a21 a23 a2 n 
0   
 a22 a22 a22 
T       
 an 1n 
    
 an 1n 1 
 an1 ann1 
 a    0 
 nn ann 
24
Convergencia de la iteración de Jacobi
Evaluar la norma infinita (suma maxima fila) de T
n aij
T 
1   1 for i  1,2,..., n
j 1 aii
i j
n
 aii   aij Matriz Diagonalmente
j 1
i j Dominante
Si A es una matriz diagonalmente dominante,
entonces la iteración de Jacobi converge para
cualquier valor inicial
25
Criterios de Parada
 Ax=b
 En cualquier iteración k, el término residual es
rk=b-Axk
 Verificar la norma del término residual
||b-Axk||
 Si esto es menor que la cota del valor de parada

26
Ejemplo 1 (Iteración de Jacobi)
 4  1 1  x1   7  0
 4  8 1  x    21 x 0  0
  2    b  Ax0  26.7395
 2 1 5  x3   15  0 2

Matriz Diagonalmente dominante


7  x20  x30 7
  1.75
x 
1
1
4 4
21  4 x 0
 x 0
3 
21
 2.625 b  Ax1  10.0452
x2 
1 1
2
8 8
15  2 x 0
 x 0
2 
15
 3 .0
x3 
1 1
5 5
27
Ejemplo 1 continuación...
7  x12  x31 7  2.625  3
x 
2
1   1.65625
4 4
b  Ax2  6.7413
21  4 x11  x31 21  4 1.75  3 2
x2 
2
  3.875
8 8
15  2 x11  x12 15  2 1.75  2.625
x3 
2
  4.225
5 5

7  3.875  4.225
x13   1.6625
4
21  4 1.65625  4.225 b  Ax2  1.9534
x23   3.98125 2
8
15  2 1.65625  3.875
x33   2.8875
5

Matriz es diagonalmente dominante, iteraciones de Jacobi


son convergentes. 28
Ejemplo 2
 2 1 5  x1   15  0
 4  8 1  x    21 x 0  0
  2    b  Ax0  26.7395
2
 4  1 1  x3   7  0

La matriz no es diagonalmente dominante

 15  x20  5 x30  15
x 
1
1   7.5
2 2
b  Ax1  54.8546
21  4 x10  x30 21 2
x2 
1
  2.625
8 8
x31  7  4 x10  x20  7.0

29
Ejemplo 2 (continuación...)
 15  2.625  5  7
x11   11.3125
2
21  4  7.5  7 b  Ax2  208.3761
x12   0.25 2
8
x31  7  4  7.5  2.625  39.625

El término del residual aumenta en cada iteración, de


tal forma que las iteraciones divergen.
Note que la matriz no es diagonalmente dominante

30
Convergencia de la iteración de
Gauss-Seidel
 Iteración GS converge para cualquier vector inicial
si A es una matriz diagonalmente dominante

 Iteración GS converge para cualquier vector inicial


si A es una matriz simétrica y definida positiva –
La matriz A es definida positiva si

xTAx>0 para cualquier vector x no nulo.

31
Matrices Definidas Positivas
 Una matriz es definida positiva si todos sus valores
propios son positivos
 Una matriz simétrica diagonalmente dominante con
diagonal con entradas a la diagonal positiva es
definida positiva.
 Si una matriz es definida positiva
 Todas las entradas a la diagonal son positivas
 El elemento mas grande (en magnitud) de la
matriz completa debe estar en la diagonal.
32
Verificar la definición de positiva
20 12 25
12 15 2  No es definida positiva
 
25 2 5  El elemento mas grande no esta en la
diagonal principal
20 12 5 
12  15 2  No es definida positiva
  Todas las entradas a la diagonal no
 5 2 25
son positivas
20 12 5  Definida positiva
12 15 2 
  Simétrica, diagonalmente dominante,
 5 2 25 todas las entradas a la diagonal son
positivas.
33
Verificar la definición de positiva

20 12 5 
12 15 2 
  No simetría
 8 2 25

La decisión no puede ser correcta por investigación de


la matriz.
La matriz es diagonalmente dominante y todas las
entradas a la diagonal son positivas pero no es
simétrica.
Para decidir, verificar si todos los valores propios son
positivos 34
Ejemplo1 (Iteración de Gauss-Seidel)
 4  1 1  x1   7  0
 4  8 1  x    21 x 0  0
  2    b  Ax0  26.7395
2
 2 1 5  x3   15  0

Matriz Diagonalmente dominante

7  x20  x30 7
x 
1
1
  1.75 b  Ax1  3.0414
4 4 2

21  4 x11  x30 21  4 1.75


x2 
1
  3.5
8 8 b  Ax1  10.0452
2
15  2 x11  x12 15  2 1.75  3.5
x3 
1
  3.0
5 5
İteración de
Jacobi
35
Ejemplo 1 continuación...
7  x12  x31 7  3.5  3 b  Ax2  0.4765
x 
2
1   1.875 2
4 4
21  4 x12  x31 21  4 1.875  3
x2 
2
  3.9375 b  Ax2  6.7413
8 8 2
15  2 x12  x22 15  2 1.875  3.9375
x3 
2
  2.9625
5 5 Iteración de Jacobi

Cuando ambos métodos de Jacobi y Gauss-Seidel


convergen, Gauss-Seidel converge más rápido.

36
Convergencia del método SOR
 Si 0<<2, método SOR converge para cualquier
valor inicial si A es una matriz simétrica y definida
positiva.

 Si >2, método SOR diverge

 Si 0<<1, SOR método converge pera la velocidad


de convergencia es mas lenta que el método de
Gauss-Seidel.

37
Conteo de operaciones
 El # de operaciones para la Eliminación gaussiana o la
descomposición LU es de 0 (n3), orden de n3
 Para los métodos iterativos, el número de multiplicaciones
escalares es 0 (n2) en cada iteración.
 Si el número total de las iteraciones requeridas para la
convergencia es mucho menos que n, entonces los métodos
iterativos son más eficiente que métodos directos.
 Los Métodos iterativos también se satisfacen bien para las
matrices esparcidas.

38
Formas Matriciales. Resumen

La solución del sistema A x = b se obtiene mediante la


siguiente expresión recursiva:

x ( k ) = Tx ( k-1 ) + c

A= D - L - U
Método T c
Jacobi D-1 (L+U) D-1 b
Gauss-Seidel ( D -L)-1 U ( D -L)-1 b

SOR (D- L)-1 [(1-  ) D +  U (D-  L)-1 b


]

39

Você também pode gostar