Está en la página 1de 34

Métodos Numéricos

Unidad 2: Resolución de sistemas de ecuaciones lineales

Prof. Karin Saavedra

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 0: Introducción

2
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Sistemas de ecuaciones lineales

• Todo sistema de ecuaciones lineales puede escribirse matricialmente:

es la matriz de coeficientes es el segundo miembro

es el vector incógnitas
3

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matriz inversa
• El sistema de ecuaciones lineales Ax = b tiene solución única si y sólo si A es una
matriz no singular.

➡ Recordemos que una matriz A 2 Rn⇥n es no singular si y sólo si se cumple cualquiera


de estas condiciones:

• Es invertible: 9A 1 2 Rn⇥n : AA 1 = A 1 A = I

• det(A) 6= 0

• todas las filas (y columnas) son l.i.: rango(A) = n

• 0 no es valor propio

• Si A es no singular, entonces:

Ax = b () x=A 1
b 4

4
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matriz inversa

En general, no es conveniente calcular la matriz inversa para resolver un

sistema de ecuaciones lineales, pues es muy costoso operacionalmente.

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Resolución de sistemas de ecuaciones lineales

Directos: más estables, exactos, pero utilizan mucha memoria. Se


utilizan para sistemas de pocas ecuaciones.
Ej: Regla de Cramer, eliminación Gaussiana, método de reducción de
Crout, método de Cholesky.
Métodos de
resolución

Iterativos: aproximados, aparecen por ahorro de memoria. Se utilizan


para grandes sistemas de ecuaciones.
Ej: Método de Jacobi, Gauss-Seidel, gradiente conjugado.

6
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matriz inversa

• Una manera natural de calcular la inversa de una matriz A 2 Rn⇥n consiste en resolver
n sistemas de ecuaciones lineales.

Así,

n
donde las columnas son los vectores de la base canónica de R

➡A 1 puede calcularse columna por columna resolviendo:

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Dificultades numéricas

1. Costo operacional: el tiempo de cálculo del computador necesario para resolver


el sistema debe ser el menor posible.

➡ Una medida standard del costo operacional es la cantidad de operaciones


aritméticas (+, - , * , /) que requiere un algoritmo. Usualmente se habla de flop
(floating point operations).

2. Costo de almacenamiento: la cantidad de posiciones de memoria que requiere el


computador para ejecutar un algoritmo también debe ser la menor posible.

3. Precisión de los resultados: los algoritmos deben ser estables en el sentido de


amplificar lo menos posible los errores de los datos y los de redondeo.

8
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

1. Costo operacional
• Los sistemas que aparecen en muchas aplicaciones son de gran tamaño. Un sistema de
10.000 x 10.000 hoy se considera de tamaño moderado y en algunas aplicaciones
deben resolverse sistemas de ecuaciones con millones de incógnitas.

Ax = b

➡ Regla de Cramer:

donde Ai es la matriz que se obtiene reemplazando la i-ésima columna de A


por el segundo miembro b

• Si los determinantes se calculan mediante la fórmula recursiva usual de


desarrollo por filas, el costo operacional es aproximadamente (n + 1)! flop.

➡ Eliminación Gaussiana: se basa en transformaciones elementales. Veremos que el


costo operacional es aproximadamente 2/3n3 flop. 9

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

1. Costo operacional

• Comparación en un computador de 1 Gflop (109 flop) por segundo:

10

10
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

2. Costo de almacenamiento

• A menudo, las matrices de los sistemas de ecuaciones son de gran tamaño, pero con
un gran número de elementos nulos.
➡ Estas matrices se denominan dispersas o ralas (sparse) y que requieren una cantidad
reducida de memoria para su almacenamiento.

• Los métodos algebraicos directos (transformaciones elementales) requieren modificar la


matriz original del sistema y destruyen su carácter disperso (llenado o fill-in).

➡ El llenado produce un aumento de flops, aumento en los errores de redondeo y un


aumento en las necesidades de memoria.

• Los métodos iterativos no modifican la matriz del sistema, evitando el llenado y sus
consecuencias.

➡ Estos métodos no calculan la solución exacta del sistema, sino que construyen
iterativamente una solución aproximada. 11

11

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

3. Precisión de los resultados

• La resolución de un sistema de ecuaciones lineales en el computador involucra la


propagación de errores en los datos y errores de redondeo. Por ello:

➡ Predecir cuando la resolución de un sistema de ecuaciones puede propagar


drásticamente los errores.

➡ Métodos numéricos estables, que reduzcan la propagación de los errores.

➡ Estimar a posteriori el error de la solución calculada, es decir, testear si el error


está por debajo de una tolerancia aceptable.

12

12
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 1: Métodos Directos

1. Eliminación Gaussiana

i. Factorización LU

ii. Pivoteo

iii. Matrices banda

2. Método de Cholesky

13

13

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Resolución de sistemas con matriz triangular


triangular inferior triangular superior

➡ una matriz triangular es no singular si y sólo si sus términos diagonales son


todos no nulos

• La resolución de sistemas de ecuaciones lineales con matrices triangulares es


muy sencilla y su costo operacional es bajo.
14

14
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Resolución de sistemas con matriz triangular

• Sustitución progresiva: consideremos el sistema triangular inferior Lx = b

Algoritmo:

Costo operacional:
15

15

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Resolución de sistemas con matriz triangular

• Sustitución regresiva: consideremos el sistema triangular superior Ux = b

Algoritmo:

Costo operacional:

16

16
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de eliminación Gaussiana

• Consiste en transformar el sistema Ax = b en un sistema triangular superior


equivalente, el cual puede ser resuelto fácilmente por el método de sustitución regresiva.

• El proceso empleado consiste en reemplazar las ecuaciones por combinaciones no


triviales de las otras (transformaciones elementales)

• Denotamos el sistema original por A(1) x = b(1) y el sistema equivalente por U x = b̃

➡ Consideramos A 2 Rn⇥n no singular y los elementos aii no nulos.

17

17

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de eliminación Gaussiana


• Consideremos los multiplicadores:

• Es posible eliminar la incógnita x1 de la segunda ecuación en adelante, por simple


sustracción a la fila i(i = 2, ..., n) de la primera fila previamente multiplicada por mi1y
haciendo lo mismo para el vector b:

A(2) x = b(2) (sistema equivalente)

18

18
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de eliminación Gaussiana

• Si se repite este proceso, llegamos al sistema equivalente:

A(k) x = b(k) , 1kn

donde:

(k)
• Los valores akk son llamados pivotes y deben ser valores no nulos para k = 1, ..., n 1
19

19

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de eliminación Gaussiana

• Si k = n , entonces obtenemos el sistema triangular superior.

A(n) x = b(n)

Si la matriz original A es no singular, entonces ann 6= 0 y el sistema triangular superior


(n)

resultante puede resolverse por el algoritmo de sustitución regresiva.

Ejercicio 20

20
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de eliminación Gaussiana

algoritmo

➡ al k-ésimo paso, se tiene:

21

21

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de eliminación Gaussiana

• Costo de la solución del sistema triangular superior (sust. regresiva):

• Costo operacional de la eliminación ⇡

• Costo total ⇡

22

22
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 1: Métodos Directos

1. Eliminación Gaussiana

i. Factorización LU

ii. Pivoteo

iii. Matrices banda

2. Método de Cholesky

23

23

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Factorización LU

• Si la matriz A es tal que la etapa de eliminación Gaussiana se puede llevar a cabo


(i)
(es decir si todos los pivotes aii 6= 0 (i = 1, ..., n 1) , entonces

A = LU

➡U es la matriz triangular superior que resulta de la eliminación

➡L es la matriz triangular inferior de los multiplicadores mij :

24

24
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Factorización LU

• Como estos sistemas son triangulares (inferior y superior, respectivamente), el costo


operacional de resolver los dos sistemas por sustitución es 2n2 flop.

• Factorizar la matriz A = LU consiste simplemente en:

➡ Triangularizar A por eliminación Gaussiana


➡ Almacenar la matriz triangular L de multiplicadores.
2 3
• Por lo tanto, el costo de factorizar la matriz A = LU es ⇡
3
n
2 3
➡ Como 2n2 ⌧ 3
n , el costo operacional total para resolver un sistema mediante
2
factorización LU es ⇡ n3
3 Ejercicio 25

25

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Factorización LU

• Muchas veces deben resolverse varios sistemas de ecuaciones con la misma matriz
1
y distintos segundos miembros (por ejemplo, para calcular A ).

➡ En tal caso, conviene primero factorizar la matriz A = LU (una sola vez!) y luego
resolver los pares de sistemas triangulares para cada segundo miembro

26

26
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 1: Métodos Directos

1. Eliminación Gaussiana

i. Factorización LU

ii. Pivoteo

iii. Matrices banda

2. Método de Cholesky

27

27

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Pivoteo
• El algoritmo de eliminación gaussiana sólo puede llevarse a cabo si todos los pivotes
son no nulos:

• Ejemplo:

28

28
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Pivoteo básico

• Para poder resolver el sistema, debe intercambiarse la primera ecuación con


cualquiera de las otras de manera de evitar el pivote cero.

29

29

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Pivoteo parcial

• Puede demostrarse que la estabilidad del método de eliminación Gaussiana en


cuanto a propagación de errores de redondeo se deteriora si los multiplicadores
son números muy grandes en módulo.

➡ Una forma de evitar los pivotes nulos y los multiplicadores grandes en módulo, es
realizar en cada paso el intercambio de ecuaciones que produzca el mayor pivote
posible en módulo. Esta estrategia se denomina pivoteo parcial.

30

30
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Pivoteo parcial

• En el paso k-ésimo se revisa el vector

• se busca la fila l en la que aparece el elemento


de mayor módulo:

• Luego, si l 6= k , se intercambia esa fila con la k-ésima.

• Después del intercambio, los multiplicadores son en módulo menores o iguales a 1

Ejercicio 31

31

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matrices de permutación
• Las matrices triangulares L y U que se obtienen por el método de eliminación Gaussiana
con pivoteo, ya no factorizan a A , sino que factorizan a la matriz que se obtiene
después de aplicar a A todos los intercambios de filas que tuvieron lugar.

• Se llama matriz de permutación a toda matriz que se obtenga intercambiado filas de I

➡ todas las matrices de permutación 3x3 son:

• Los intercambios de filas de una matriz se obtienen multiplicando a izquierda por una
matriz de permutación:

32

32
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Factorización LU con pivoteo

• Teorema: Si A es una matriz no singular, entonces existen matrices no singulares L


triangular inferior y U triangular superior y una matriz de permutación P , tales que:

LU = P A

• Estas matrices pueden obtenerse mediante el método de eliminación Gaussiana con


estrategia de pivoteo parcial.

Ejercicio 33
(MATLAB)

33

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 1: Métodos Directos

1. Eliminación Gaussiana

i. Factorización LU

ii. Pivoteo

iii. Matrices banda

2. Método de Cholesky

34

34
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matrices banda

• Se dice que A = (aij ) 2 Rn⇥n es una matriz banda si aij = 0 cuando l  |i j|


con l ⌧ n . El número l se llama ancho de banda de la matriz

• Las matrices banda aparecen muy habitualmente en problemas de ingeniería y son un


caso especial de matrices dispersas y deben almacenarse como sparse en Scilab a fin de
35
reducir el costo de almacenamiento

35

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matrices banda

• Si una matriz banda A puede factorizarse LU sin necesidad de pivoteo, entonces las
matrices triangulares L y U también son banda con el mismo ancho de banda que A

• Por eso se dice que la factorización LU sin pivoteo preserva la estructura banda de
las matrices 36

36
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matrices tridiagonales
• Un caso extremo de matrices banda es el de las matrices tridiagonales (l = 2):

• El costo total de resolver un sistema de ecuaciones por factorización LU con matriz


tridiagonal es de: 8n 7

2 3
• El costo total con el del M.E.G. sin aprovechar la estructura tridiagonal es de: n
3
➡ Por ejemplo, un sistema tridiagonal de 1000 x 1000 cuesta aprox. 666 666 666 op
por M.E.G. y aproximadamente 8 000 op mediante un algoritmo sacando
37
provecho de la estructura tridiagonal.

37

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 1: Métodos Directos

1. Eliminación Gaussiana

i. Factorización LU

ii. Pivoteo

iii. Matrices banda

2. Método de Cholesky

38

38
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Matrices simétricas definidas positivas

Teorema: Sea A 2 Rn⇥n una matriz simétrica. A es definida positiva si y sólo si se cumple
cualquiera de las siguientes condiciones:

• xt Ax > 0 , 8x 2 Rn , x 6= 0

• Los valores propios de A son todos positivos;

• Los determinantes de las submatrices principales de A son todos positivos;

• Existe una matriz L , triangular inferior y no singular, tal que A = LLt .

➡ Esta última propiedad nos dice que si la matriz es simétrica y definida positiva,
siempre puede obtenerse una factorización en matrices triangulares sin necesidad
de pivoteo.
39

39

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de Cholesky

• Se aplica solamente a matrices simétricas y definidas positivas

• Se basa en calcular directamente la matriz L tal que A = LLt

algoritmo
costo operacional

40

40
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de Cholesky

• Para resolver un sistema de ecuaciones Ax = b con matriz simétrica y definida


positiva por el método de Cholesky, una vez calculada L , se tiene:

• Para resolver los sistemas Ly = b y Lt x = y , se utiliza el algoritmo que ya


conocemos para matrices triangulares, cuyo costo operacional es de 2n2

1 3 , por lo tanto el costo operacional total del método de Cholesky es


• Como 2n2 ⌧ n
1 3 3
de ⇡ n . Vale decir, aproximadamente la mitad que el del M.E.G.
3

• Además, se demuestra que si la matriz es simétrica y definida positiva, los métodos de


factorización son estables respecto a la propagación de errores de redondeo sin
necesidad de pivoteo. Ejercicio 41
(SCILAB)

41

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 2: Métodos Iterativos

1. Método de Jacobi y Gauss-Seidel

2. Criterios de detención

42

42
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Introducción

• Considere el sistema de ecuaciones:

Ax = b

con A 2 Rn⇥n no singular y b 2 Rn

• Para resolver el sistema, un método iterativo construye, a partir de un vector inicial x(0) ,
una sucesión de vectores x(1) , x(2) , ..., x(k) , ... la que, bajo condiciones apropiadas,
resultará convergente a x

➡ pocas operaciones por iteración, reduciendo el error de redondeo


➡ menos memoria de almacenamiento (evita llenado de matrices ralas)
➡ más rápidos para matrices ralas o poco densas (que tienen muchos ceros)
43

43

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Introducción

• Si suponemos A = N P , donde N debe ser invertible, entonces:

• Se usa la igualdad N x = P x + b para definir un esquema general que construye la


(k)
sucesión {x }

• Algoritmo del esquema general:

44
con arbitrario

44
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Introducción

• Se considera resolver un sistema Ax = b con , para ello


escribimos la matriz A de la forma:

donde: son matrices triangulares estrictas tales que:

• Notemos que tanto D como D E son matrices invertibles, ya que

45

45

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de Jacobi

• El método de Jacobi corresponde al esquema iterativo general con:

• Algoritmo del método de Jacobi:

• En la iteración k , el vector x(k) puede obtenerse por componentes como sigue:

46

46
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método de Gauss-Seidel

• El método de Gauss-Seidel corresponde al esquema iterativo general con:

• Algoritmo del método de Gauss-Seidel:

• En la iteración k , el vector x(k) puede obtenerse por componentes como sigue:

47
➡ Notemos que esto corresponde a aprovechar en el paso k , los valores x(k) ya calculados.
47

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Convergencia

Teorema: Si A es de diagonal dominante estricta, es decir:


n
X
|aii | > |aij |
j=1
j6=i

entonces los métodos de Jacobi y de Gauss-Seidel convergen.

Teorema: Si A es simétrica y definida positiva, el método de Gauss-Seidel es convergente.

➡ Para una matriz arbitraria A , la convergencia de uno de estos métodos no implica la


convergencia del otro.

➡ Aunque A sea simétrica y definida positiva, el método de Jacobi puede ser divergente
48

48
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 2: Métodos Iterativos

1. Método de Jacobi y Gauss-Seidel

2. Criterios de detención

3. Gradiente conjugado

49

49

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Criterios de detención

• El proceso iterativo puede detenerse cuando se cumpla una o varias de las


condiciones siguientes ( tol indica un nivel de tolerancia prefijado para el error):

• Ea = ||xk xk 1
|| < tol

k
• ⇢a = ||x xk 1
||
< tol
||xk ||

• ||b Axk || < tol

• El número de iteraciones alcanza un número máximo prefijado

50

50
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Relajación sucesiva

• Los métodos de relajación tienen la forma siguiente:

(D !E)x(k) = [(1 !)D + !F ] x(k 1)


+ !b

donde ! es el factor de relajación

• En la iteración k , el vector x(k) puede obtenerse por componentes como sigue:

0 1
i 1
X n
X
(k) (k 1) ! @ (k) (k 1) A
xi = (1 !)xi + bi aij xj aij xj
aii j=1 j=i+1
51

51

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Relajación sucesiva

Teorema: Los métodos de relajación pueden converger sólo si 0 <!<2

• Si ! = 1 se obtiene el método de Gauss Seidel

• Si 0 < ! < 1 se habla de métodos de subrelajación y pueden servir para


tener convergencia de algunos sistemas que no convergen con el método de
Gauss-Seidel

• Si 1 < ! < 2 se habla de métodos de sobrerelajación y sirven para


acelerar la convergencia de sistemas que son convergentes con el método
de Gauss-Seidel.

52

52
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 2: Métodos Iterativos

1. Método de Jacobi y Gauss-Seidel

2. Criterios de detención

3. Gradiente conjugado

53

53

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método del gradiente

• El método del gradiente conjugado (y derivados) es el método iterativo más utilizado


para resolver grandes sistemas lineales de ecuaciones de la forma:

Ax = b

con A simétrica y definida positiva.

➡ adaptado para tratar matrices ralas


➡ utilizado en métodos de diferencias finitas o de elementos finitos para resolver
ecuaciones diferenciales en derivadas parciales.

• Este método busca minimizar la función:

1 t
f (x) = x Ax xt b + c
2
es decir:
rf (x) = Ax b=0
54
(el gradiente en un punto dado apunta en la dirección del máximo crecimiento)

54
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método del gradiente

• El método del gradiente es un método de descenso en el que se comienza a iterar en


(0)
un punto arbitrario x y se continua siguiendo la línea de máximo descenso.

➡ En cada iteración se elige la dirección para la que f(x) decrece más rápidamente,
que es la dirección contraria a rf (x
(k)
):

rf (x(k) ) = b Ax(k) = r(k)

• El proceso iterativo es dado por:

x(k+1) = x(k) + ⇢(k) r(k)

donde ⇢(k) determina el tamaño del paso en la dirección de descenso. Se obtiene


minimizando:

d (r(k) )t r(k)
f (x(k) + ⇢r(k) ) = 0 ⇢(k) =
d⇢ (r(k) )t Ar(k) 55

55

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método del gradiente

• Algoritmo del método del gradiente:

x(0) ,
k = 0, 1, 2, ...,
r(k) = b Ax(k)
(r(k) )t r(k)
⇢(k) = (k) t (k)
(r ) Ar
x(k+1) = x(k) + ⇢(k) r(k)

56

56
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método del gradiente conjugado


• La dirección de descenso ya no es necesariamente igual a r (k), por lo que en el caso
general:

x(k+1) = x(k) + ⇢(k) d(k)


además, el parámetro de descenso es:

(r(k) )t d(k)
⇢(k) =
(d(k) )t Ad(k)

• La primera dirección de descenso es d(0) = r (0) , las siguientes son escogidas de tal
forma que cada dirección es conjugada, respecto a la matriz A, con todas las
direcciones calculadas anteriormente, es decir:

d(k) Ad(j) = 0 , 0j<k


• Esto se obtiene, haciendo:

(d(k 1) )t Ar(k)
d (k)
=r (k)
+↵ (k 1) (k 1)
d con: ↵(k 1)
=
(d(k 1) )t Ad(k 1)
57

57

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Método del gradiente conjugado


Teorema: Si se utiliza aritmética exacta al realizar las operaciones, el método del
gradiente conjugado alcanza la solución exacta del sistema Ax = b en no más
de n iteraciones

• Algoritmo del método del gradiente:

x(0) , d(0) = r(0) = b Ax(0)


k = 0, 1, 2, ...,
(r(k) )t d(k)
⇢(k) =
(d(k) )t Ad(k)

x(k+1) = x(k) + ⇢(k) d(k)

r(k+1) = b Ax(k+1)
(d(k) )t Ar(k+1)
↵(k) =
(d(k) )t Ad(k)
d(k+1) = r(k+1) + ↵(k) d(k) 58

58
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 3: Condicionamiento

1. Propagación de errores

2. Número de condición

3. Precondicionadores

59

59

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Propagación de errores (seg. miembro)

• Consideremos el siguiente sistema, donde el segundo miembro ha sido redondeado a


una cifra significativa:

solución exacta:

• Supongamos que el segundo miembro ha sido redondeado a dos dígitos decimales.


La solución de este nuevo sistema es:

solución exacta:

Notemos que un error de menos del 2% en los datos produjo un error del 40% en la
solución!!! 60

60
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Propagación de errores (coeficientes)

• Consideremos de nuevo el mismo ejemplo:

solución exacta:

• Supongamos que el elemento a11 = 0.10 es en realidad a11 = 0.102 . La solución


de este nuevo sistema es:

solución exacta:

Esta vez un error de 2% en los datos produjo un error de alrededor del 25% en la solución.
61
➡ Los errores se amplificaron, pese a que no se ha usado método numérico alguno!
61

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 3: Condicionamiento

1. Propagación de errores

2. Número de condición

3. Precondicionadores

62

62
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Número de condición
Teorema: Sea el sistema Ax = b y el sistema perturbado (A + A)(x + x) = (b + b)
|| A||
con A no singular y A suficientemente pequeño tal que ||A||||A 1 || < 1 , entonces:
||A||

1
✓ ◆
|| x|| ||A|| ||A || || A|| || b||
 +
||x|| 1 ||A|| ||A 1 || || A|| ||A|| ||b||
||A||

donde:
|| x||
• ||x||
es el error relativo de la solución aproximada

|| b||
• ||b||
es el error relativo del segundo miembro

|| A||
• ||A||
es el error relativo de la matriz de coeficientes

• Se define el número de condición de la matriz A como: cond(A) = ||A|| ||A 1


||
63

63

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Número de condición

• La capacidad de propagar errores en los datos de un sistema Ax = b depende


esencialmente de la matriz A

• Si cond(A) ⇡ 1 decimos que el sistema está bien condicionado.

• Si cond(A) 1 decimos que el sistema está mal condicionado.

➡ Para toda matriz no singular cond(A) 1

64

64
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Capítulo 3: Condicionamiento

1. Propagación de errores

2. Número de condición

3. Precondicionadores

65

65

Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Precondicionamiento

• Las técnicas de precondicionamiento permiten mejorar el número de condición de un


sistema.

• La idea es considerar una matriz invertible M y resolver el sistema:

M 1
Ax = M 1
b

en lugar de Ax = b . Esta matriz M recibe el nombre de matriz de precondicinamiento.

• En principio, lo más conveniente sería elegir M 1 A = I , pero esta opción no es de


interés práctico. Una posibilidad es buscar matrices de precondicionamiento parecidas
a la matriz del sistema y fáciles de invertir.

66

66
Unidad 2: Resolución de sistemas de ecuaciones lineales Prof. Karin Saavedra

Precondicionamiento

• Un ejemplo clásico es el precondicionamiento diagonal:

• Este precondicionamiento es muy económico desde el punto de vista computacional.

67

67

También podría gustarte