Date post: | 16-Oct-2018 |
Category: |
Documents |
Upload: | nguyenngoc |
View: | 284 times |
Download: | 0 times |
MATRICES:
DESCOMPOSICIÓN LU,
DESCOMPOSICIÓN DE CHOLESKY Y
MÉTODO DE GAUSS-SEIDEL
Jorge Eduardo Ortiz Triviño
http:/www.docentes.unal.edu.co
Representación de ecuaciones
algebraicas lineales en forma matricial
• Una manera formal para obtener la solución usando algebra
matricial es multiplicando cada lado de la ecuación por la inversa de
A
3
2
1
3
2
1
333231
232221
131211
b
b
b
x
x
x
aaa
aaa
aaa
BXA
BAXAA11
BAXIAA11
Como
• No resulta muy eficiente por la
obtención de la inversa de la
matriz
• Es necesario métodos
numéricos
Métodos numéricos para la solución de
ecuaciones algebraicas lineales
1. Eliminación de Gauss
2. Descomposición LU valiosa para casos donde se necesita
evaluar muchos vectores del lado derecho. Permite hacer
eficiente el cálculo de la matriz inversa
3. Método de Gauss-Seidel método iterativo
Eliminación de Gauss
• Este método involucra una combinación de ecuaciones para
eliminar las incógnitas
• Es uno de los métodos más antiguos y sigue siendo uno de los
algoritmos de mayor importancia
Eliminación de Gauss
Eliminación de incógnitas
• La estrategia básica es multiplicar las ecuaciones por constantes,
de tal forma que se elimine una de las incógnitas cuando se
combinen las ecuaciones
• El resultado es una sola ecuación que se puede resolver para la
incógnita restante
• Este valor se sustituye en las ecuaciones originales para calcular la
otra variable
• Este método representa la base para la eliminación de Gauss
• Se puede extender a grandes sistemas de ecuaciones
desarrollando un esquema sistemático para eliminar incógnitas y
sustituir hacia atrás
Eliminación de Gauss
Eliminación de Gauss simple el método consiste en dos fases
1. Eliminación de incógnitas
– Reduce el conjunto de ecuaciones a un sistema triangular superior
– Primero se elimina la primera incógnita, x1, desde la segunda hasta la
n-enésima fila, multiplicando por a21/a11 a la primera ecuación, luego
restando ésta a la segunda
– El procedimiento es repetido para las ecuaciones restantes
– Para este paso la ecuación 1 es la ecuación pivote y a11 es el coeficiente
pivote
2. Solución por sustitución hacia atrás
– Al finalizar la eliminación, la ecuación n puede resolverse para xn
1
1
n
nn
n
nn
a
bx
1
1
11
n
ii
n
ij
j
n
ij
n
i
ia
xab
xPara evaluar las x restantes
Eliminación de Gauss
• Ejemplo
– Eliminación
A = [3 -0.1 -0.2
0.1 7 -0.3
0.3 -0.2 10];
B = [7.85
-19.3
71.4];
A =[ 3.0000 -0.1000 -0.2000
0 7.0033 -0.2933
0.3000 -0.2000 10.0000]
B ={7.8500
-19.5617
71.4000}
A =[3.0000 -0.1000 -0.2000
0 7.0033 -0.2933
0 -0.1900 10.0200]
B ={7.8500
-19.5617
70.6150}
A =[3.0000 -0.1000 -0.2000
0 7.0033 -0.2933
0 0 10.0120]
B ={7.8500
-19.5617
70.0843}
X ={3.0000
-2.5000
7.0000}
Sustitución
Eliminación de Gauss
• Número de operaciones de punto flotante para Gauss simple
• Para un sistema que se hace cada vez más grande, el tiempo de
cálculo se incrementa considerablemente
• La mayor parte del esfuerzo ocurre en el paso de la eliminación. Por
lo que se hace necesario hacer más eficiente el procedimiento
n Eliminación Sustitución total% debido a
eliminación
10 375 55 430 87.21%
100 338,250 5,050 343,300 98.53%
1000 3.34E+08 500,500 3.34E+08 99.85%
Descomposición LU e Inversión de
matrices
Descomposición LU
• El principal atractivo de este método es que el paso de eliminación,
que consume tiempo, se puede reformular de tal manera que
involucre sólo operaciones sobre los elementos de la matriz de
coeficientes, A
• De esta forma, es muy adecuado para aquellas situaciones donde
se debe evaluar muchos vectores {B}
• El método de eliminación de Gauss puede implementarse como una
descomposición LU
• La descomposición LU proporciona un medio eficaz para calcular la
matriz inversa, la cual a su vez permite evaluar la condición de un
sistema
Descomposición LU
• Partiendo de un sistema de
ecuaciones lineales de la forma,
Este se puede ordenar como,
El primer paso de la eliminación de
Gauss resulta en un sistema con una
matriz triángular superior
Que puede ser expresada como,
• Ahora, suponga que existe una matriz
triangular inferior con números 1 sobre
la diagonal
que tiene la siguiente propiedad
si esta propiedad se cumple, de las
reglas de multiplicación de matrices se
obtiene,
BXA
0 BXA
3
2
1
3
2
1
33
2322
131211
00
0
d
d
d
x
x
x
u
uu
uuu
DXU 0 DXU
1
01
001
3231
21
ll
lL
BXADXUL
BDL
AUL
Descomposición LU
Estrategia para resolver el sistema
1. Paso de descomposición LU: la matriz [A], se factoriza o
descompone en matrices triangulares inferior [L] y superior [U]
2. Paso de sustitución: [L] y [U] se usan par determinar una solución
{X} para un vector {B}. Este paso consta de dos subpasos:
– Se determina el vector intermedio {D} resolviendo [L]{D}={B} por
sustitución hacia delante, debido a que [L] es una matriz triangular
inferior
– Se determina {X} resolviendo [U]{X}={D} por sustitución hacia atrás
Descomposición LU
Descomposición LU con base en la eliminación de Gauss
• Partiendo de una matriz de coeficientes, se llega a una matriz triangular
superior
• Para llegar a esta matriz [U]
333231
232221
131211
aaa
aaa
aaa
''00
''0
33
2322
131211
a
aa
aaa
U
– se multiplicó la fila 1 por el factor f21 = a21/a11 y
restando el resultado a la fila 2 se eliminó a21
– se multiplicó la fila 1 por el factor f31 = a31/a11 y
restando el resultado a la fila 3 se eliminó a31
– se multiplicó la fila 2 por el factor f32 = a32’/a22’ y
restando el resultado a la fila 3 se eliminó a32’
La matriz triangular inferior
que tiene la propiedad
requerida para la
descomposición LU es
1
01
001
3231
21
ff
fL
Descomposición LU
Descomposición LU con base en la eliminación de Gauss
1. Paso de descomposición LU: la matriz [A], se factoriza o
descompone en matrices triangulares inferior [L] y superior [U]
2. Paso de sustitución: [L] y [U] se usan par determinar una solución
{X} para un vector {B}. Este paso consta de dos subpasos:
– Se determina el vector intermedio {D} resolviendo [L]{D}={B} por
sustitución hacia delante
– Se determina {X} resolviendo [U]{X}={D} por sustitución hacia atrás
1
1
11 ,,2 para ;i
j
jijii niblbdbd
1,,1,1 para ;1
nniu
dud
xu
dx
ii
n
ij
jiji
i
nn
nn
Matriz inversa
• Para una matriz cuadrada [A], hay otra matriz [A]-1 conocida como la
inversa de [A], para la cual se cumple,
[A] [A]-1 = [A]-1[A] = I
• La matriz inversa se puede calcular en una forma de columna por
columna a partir de vectores unitarios como vector de constantes del
sistema de ecuaciones lineales algebraicas
• Por ejemplo, para determinar la primera columna de la matriz inversa
se resuelve el sistema con el vector de constantes B=[1 0 0]T para determinar la segunda columna se usa B=[0 1 0]T
y así sucesivamente
Matriz inversa (Tarea)
• La descomposición LU representa la mejor forma para implementar el cálculo de la matriz inversa, ya que una vez obtenida la descomposición LU de la matriz A se puede calcular su inversa resolviendo cada columna con los vectores unitarios como constantes
• Tarea: Determinar la inversa de A = [ 3 -0.1 -0.2 0.1 7 -0.3 0.3 -0.2 10]
Análisis de error y condición del sistema
• La matriz inversa permite determinar si un sistema está mal
condicionado, para esto existen 3 métodos:
1. Escalar la matriz de coeficientes [A], de tal manera que el
elemento más grande en cada fila sea 1. Si al invertir la matriz
escalada existen elementos de la inversa [A]-1 que sean varios
ordenes de magnitud mayores que la unidad, es probable que el
sistema esté mal condicionado
2. Multiplicar la inversa por la matriz de coeficientes original y
verificar que [A][A]-1 I. Si no es así, indica que el sistema está mal
condicionado
3. Invertir la matriz inversa y verificar que el resultado está lo
suficientemente cercano a la matriz original. Si no es así, indica que
el sistema está mal condicionado
Número de condición de una matriz
• Este número mide la sensibilidad de la solución de un sistema de
ecuaciones lineales a errores en los datos
• Valores cercanos a 1 indican que el sistema está bien condicionado
• Valores grandes indican que la matriz es casi singular
1 AAAcond
Descomposición de Cholesky
• La descomposición o factorización de Cholesky expresa una matriz
simétrica como el producto de una matriz triangular y su transpuesta
A = L∙LT L: matriz triangular inferior
• No todas las matrices simétricas se pueden factorizar de esta forma
• Las matrices que tienen este tipo de factorización son las matrices
simétricas definidas positivas. Esto implica que todos los elementos
de la diagonal sean positivos y que los elementos fuera de la
diagonal no sean muy grandes
Descomposición de Cholesky
• Los términos de la descomposición se pueden multiplicar entre si.
El resultado se puede expresar en forma simple por relaciones
recurrentes
• Para la fila k 1-k,1,2, i para ,
1
1
ii
i
j
kjijki
kil
lla
l
1
1
2k
j
kjkkkk lal
Descomposición de Cholesky
• Ejemplo,
97922555
2255515
55156
A
4.71
3.19
85.7
B
Para k = 1 4495.261111 al
Para k = 2 1237.64495.2
15
11
2121
l
al 1833.41237.655
22
212222 lal
Para k = 3 454.2211
3131
l
al
1106.62
32
2
313333 llal
916.2022
31213232
l
llal
1106.6916.20454.22
01833.41237.6
004495.2
L
Sustitución hacia adelante Sustitución hacia atrás
7616.31
3049.9
2047.3
D
1982.5
2154.28
1964.24
X
Método de Gauss-Seidel
• Este es un método iterativo
• Dado un conjunto de ecuaciones, AX = B
• Si los elementos de la diagonal son diferentes de cero, se puede
resolver la ecuación i para la variable i, donde i = 1…n
• Se puede empezar el proceso de solución al escoger los valores
iniciales de las variables x (xi = 0)
ii
ij
iiji
ia
xab
x
Método de Gauss-Seidel
• Los valores iniciales se sustituyen en la primera ecuación para
calcular un nuevo valor para x1
• Este nuevo valor de x1 junto con los demás valores iniciales se
sustituyen en la segunda ecuación para calcular un nuevo valor
para x2
• Este proceso se repite hasta calcular los nuevos valores de las n
variables
• Después se regresa a la primera ecuación y se repite todo el
procedimiento hasta que la solución converja a la solución real
• La convergencia se puede verificar usando el criterio,
sj
i
j
i
j
iia
x
xx
%100
1
,
Criterio de convergencia del método de
Gauss-Seidel
• Este método es similar en esencia al método de iteración de
punto de fijo que se usa para el cálculo de raíces de una
ecuación
• Presenta las mismas desventajas:
1. En algunos casos no converge
2. En algunos casos la convergencia es lenta
• Las condiciones suficientes para la convergencia de dos
ecuaciones no lineales también aplican para ecuaciones lineales
cuando se usa Gauss-Seidel
111
x
v
x
u1
22
x
v
x
u
Criterio de convergencia del método de
Gauss-Seidel
• En el caso de dos ecuaciones el método de Gauss-Seidel se
expresa como
• Las derivadas parciales de estas ecuaciones con respecto a las
variables son
• Para que se cumplan las condiciones suficientes de convergencia
2
11
12
11
1211 , x
a
a
a
bxxux
01
x
u
1
22
21
22
2212 , x
a
a
a
bxxvx
11
12
2 a
a
x
u
0
2
x
v
22
21
1 a
a
x
v
111
12 a
a1
22
21 a
a
Criterio de convergencia del método de
Gauss-Seidel
• El valor absoluto de la pendiente de las ecuaciones rectas debe ser
menor que la unidad para asegurar convergencia
• Rerformulando,
• El elemento diagonal debe ser mayor que el elemento fuera de la
diagonal para cada fila (sistemas diagonal dominantes)
• Generalizando para n ecuaciones
• El criterio es suficiente pero no necesario para convergencia
2122 aa 1211 aa
n
ijj
ijii aa1
Mejoras a la convergencia por medio de
relajación
• La relajación representa una ligera modificación al método de Gauss-Seidel
y está diseñada para mejorar la convergencia
• Después de calcular cada nuevo valor de x, ese valor se modifica por un
promedio ponderado de los resultados de las iteraciones anterior y actual:
: es el coeficiente de relajación que tiene un valor entre 0 y 2
– Si = 1 el resultado no se modifica
– Si 0 < < 1 el resultado es un promedio ponderado de xinuevo y xi
anterior
(subrelajación), se usa para hacer que un sistema no convergente,
converja o converja más rápido al amortiguar sus oscilaciones
– Si 1 < < 2 se le da una ponderación extra al valor actual
(sobrerelajación), acelera la convergencia de un sistema que ya es
convergente. También es conocida como sobrerelajación simultánea o
sucesiva, SOR
anterior
i
nuevo
i
nuevo
i xxx 1