Factorizaci´on LU Departamento de Matem´aticas, CCIR/ITESM 9 de febrero de 2011

´Indice 26.1. Introducci´on . . . . . . . . . . . . . . 26.2. Factorizaci´ on LU . . . . . . . . . . . 26.3. Uso de la factorizaci´ on LU . . . . . . 26.4. Obtenci´on de la factorizaci´ on LU con 26.5. Factorizaci´ on LU: ejemplo clave . . . 26.6. Complejidad . . . . . . . . . . . . . . 26.7. Factorizaci´ on de P A = L U . . . . . 26.8. Notas generales . . . . . . . . . . . .

26.1.

. . . . . . . . . . . . . . . . . . . . . elementales . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

1 1 2 3 4 5 5 13

Introducci´ on

La factorizaci´on LU de una matriz es una factorizaci´on que resume el proceso de eliminaci´on gaussiana aplicado a la matriz y que es conveniente en terminos del n´ umero total de operaciones de punto flotante cuando se desea calcular la inversa de una matriz o cuando se resolver´a una serie de sistemas de ecuaciones con una misma matriz de coeficientes. En la lectura, primeramente consideraremos la factorizaci´on LU sin intercambio basada en matrices elementales y que es conocida como de Doolittle y posteriormente veremos el algoritmo que da la factorizaci´ on PA = LU.

26.2.

Factorizaci´ on LU

Suponga que la matriz A es una matriz m × n se puede escribir como el producto de dos matrices: A = LU donde L es una matriz triangular inferior m × m y U es una matriz escalonada m × n. Entonces para resolver el sistema: A x = b, escribimos A x = (L U) x = L (U x) . Una posible estrategia de soluci´ on consiste en tomar y = U x y resolver para y: L y = b. Como la matriz L es triangular superior este sistema puede resolverse mediante sustituci´on hacia abajo, lo cual se hace f´acilmente en m2 FLOPS. Una vez con los valores encontrados de y, las inc´ognitas al sistema inicial se resuelve despejando x de U x = y.

Nuevamente, como U es escalonada, este sistema puede resolverse en caso de tener souci´on mediante sustituci´on hacia atr´as, lo cual es sencillo. Estas observaciones nos dan la pauta para ver la conveniencia de una factorizaci´on como la anterior, es decir factorizar A como el producto de una matriz L triangular superior, por otra U la cual es escalonada. Esta factorizaci´ on se llama usualmente Descomposici´ on LU.

26.3.

Uso de la factorizaci´ on LU

Ejemplo 26.1 Use la factorizaci´on LU de A: 

    4 −2 1 1 0 0 4 −2 1 3 7  = LU A =  20 −7 12  =  5 1 0   0 −8 13 17 −2 3 1 0 0 −2

para despejar x del sistema: 

 11 A x =  70  = b 17 Soluci´ on Sea y = (y1 , y2 , y3 ) un nuevo vector de inc´ ognitas. Primero resolveremos el sistema triangular inferior L y = b:     1 0 0 11  5 1 0  y =  70  −2 3 1 17 Este sistema escrito en su forma de ecuaciones queda: y1 = 11 5 y1 + y2 = 70 −2 y1 + 3 y2 + y3 = 17 Por eliminaci´on directa de la: primera ecuaci´ on: y1 = 11, segunda ecuaci´ on: y2 = 70 − 5 y1 = 70 − 5 (11) = 15, y de la tercera: y3 = 17 + 2y1 − 3 y2 = 17 + 2 (11) − 3 (15) = −6. Ahora el sistema U x = y: 

   4 −2 1 11  0 3 7  x =  15  0 0 −2 −6 El cual escrito en su forma de ecuaciones queda: 4 x1 − 2 x2 + x3 = 11 3 x2 + 7 x3 = 15 − 2 x3 = −6 El cual al ser resuelto por sustituci´ on hacia atr´as queda: 2

de la u ´ltima ecuaci´ on: x3 = 3, segunda ecuaci´ on: x2 = 5 − 7/3 x3 = 5 − 7/3 (3) = −2, y de la primera: x1 = 11/4 + 1/2x2 − 1/4 x3 = 11/4 + 1/2 (−2) − 1/4 (−3) = 1 

26.4.

Obtenci´ on de la factorizaci´ on LU con elementales

Ejemplo 26.2 Determine una factorizaci´ on LU de la matriz: 

 2 3 −1  −6 −6 5   A=  4 18 6  −2 −9 −3 Soluci´ on La idea del m´etodo es ir acumulando las inversas de las operaciones hechas sobre los renglones la matriz para irla trasnformando en una matriz escalonada. Y m´as que propiamente las inversas de las operaciones sobre los renglones, las matrices elementales involucradas. As´ı por ejemplo el primer c´alculo que se realiza es hacer un cero debajo de el elemento (1, 1) que es el elemento 2, para ello debemos realizar la operaci´on R2 ← R2 + 3R1 , esta operaci´on tiene como matriz elemental la matriz:   1 0 0 0  3 1 0 0   E1 =   0 0 1 0  0 0 0 1 As´ı la situaci´on est´a:



 2 3 −1  0 3 3   = B1 E1 A =   4 18 6  −2 −9 −3

En el siguiente paso del proceso de eliminaci´ on es R3 ← R3 −2R1 , esta operaci´on tiene como matriz elemental la matriz:   1 0 0 0  0 1 0 0   E2 =   −2 0 1 0  0 0 0 1 As´ı la situaci´on est´a:



 2 3 −1  0 3 2   = B2 E2 E1 A =   0 12 8  −2 −9 −3

En el siguiente paso del proceso de eliminaci´ on es R4 ← R4 + R1 , esta operaci´on tiene como matriz elemental la matriz:   1 0 0 0  0 1 0 0   E3 =   0 0 1 0  1 0 0 1 3

As´ı la situaci´on est´a:

 2 3 −1  0 3 2   = B3 E 3 E 2 E1 A =   0 12 8  0 −6 −4 

Observamos que el hipot´etico caso de que en E3 E2 E1 A = B3 La matriz B3 ya fuera escalonada, es decir la U buscada, entonces: A = E1 −1 E2 −1 E3 −1 U Lo cual indica que lo que debemos acumular son las inversas de las matrices elementales utilizadas. La forma sistem´atica de ir acumulando las inversas de las Ei s es ir contruyendo la matriz L:   1 0 0 0  −3 1 0 0   L=  2 ? 1 0  −1 ? ? 1 As´ı, en el avance de la conversi´ on a escalonada de A:   2 3 −1  0 3 2  , A ∼   0 12 8  0 −6 −4 

2  0 ∼   0 0



1  −3 L=  2 −1

0 1 ? ?

  1 0 3 −1   −3 1 3 2  = U, L =   2 4 0 0  −1 −2 0 0

0 0 1 ? 0 0 1 ?

 0 0   0  1  0 0   0  1

En este caso la matriz U est´ a en la forma escalonada y por consiguiente el proceso se detiene haciendo cero aquellos valores desconocidos. Por consiguiente una factorizaci´on de A ser´a:    1 0 0 0 2 3 −1  −3  1 0 0  2   0 3  A = LU =   2   4 1 0 0 0 0  −1 −2 0 1 0 0 0

26.5.

Factorizaci´ on LU: ejemplo clave

Ejemplo 26.3 Determine una factorizaci´ on LU de la matriz: 

 2 3 −1  −6 −6 5   A=  4 18 6  −2 −9 −3 Soluci´ on El m´etodo procede as´ı. 4

La matriz L inicialmente es la matriz identidad con el mismo n´ umero de renglones de A. Si se utiliz´ o la operaci´on Ri → Ri + c Rj entonces en la posici´on (i, j) de L se coloca −c. La matriz U es la matriz que queda en al escalonar A. Si hubo necesidad de intercambiar renglones para escalonar, A NO admite una factorizaci´on L U. Digamos que con las operaciones siguientes 1. R2 → R2 + 3 R1 2. R3 → R3 − 2 R1 3. R4 → R4 + 1 R1 4. R3 → R3 − 4 R2 5. R4 → R4 + 2 R2 la matriz A se escalona y que queda: 

2  0 A −→   0 0 Entonces



1 0 0  −(3) 1 0 L=  −(−2) −(−4) 1 −(1) −(2) 0

26.6.

 3 −1 3 2   0 0  0 0

  0 1 0   0   −3 1 = 0   2 4 1 −1 −2

0 0 1 0

  0  0   y U=   0 1

2 0 0 0

 3 −1 3 2   0 0  0 0

Complejidad

Observe que para la obtenci´ on de la factorizaci´on LU se realiza la fase 1 del m´etodo de eliminaci´on gaussiana. Por consiguiente, la complejidad del algoritmo de factorizaci´on LU ser´a O(2/3 n3 ). Teniendo la factorizaci´ on 2 LU, la aplicaci´on de la sustici´ on hacia atr´ as o hacia adelante toman cada uno n . Por ello es que para resolver un solo sistema de ecuaciones no hay ventaja en utilizar la factorizaci´on LU. La ventaja aparece cuando se desean resolver varios sistemas de ecuaciones con la misma matriz de coeficientes. En la primera soluci´ on se determina la factorizaci´ on LU, y en las siguientes bastar´a sustituci´on hacia adelante y hacia atr´as. O sea que cada siguiente soluci´ on tomar´ a s´ olo 2 n2 FLOPs contrario a los 2/3 n3 de eliminaci´on gaussiana.

26.7.

Factorizaci´ on de P A = L U

Frecuentemente, no es posible escalonar una matriz s´olo con operaciones de eliminaci´on. En estos casos se requiere realizar intercambio de renglones. Para este tipo de matrices no existe la factorizaci´on LU. Lo que aplica es la factorizaci´ on P A = L U. Donde la matriz P es una matriz de permutaci´on. Estas matrices de permutaci´on se obtienen de la matriz identidad intercambiando renglones. La factorizaci´on P A = L U se obtiene de forma an´ aloga a la factorizaci´ on LU pero se lleva un registro de los renglones que se intercambian y se efectuan los intercambios en una matriz que registra los inversos de las operaciones de eliminaci´ on. Algoritmo de P A = L U Entrada: Matriz A n × m 5

Salida: P matriz de permutaci´ on n × n, L matriz triangular superior unitaria n × n (lii = 1), U matriz escalonada n × m que cumplen: PA = LU 1. Tome P = In , L = 0, y U = A. 2. Mientras que U no sea escalonada hacer 2.1. Aplicar una operaci´ on R de eliminaci´on o de intercambio a U. 2.2. Si R es de la forma Ri ↔ Rj , entonces aplicar R a P y a L. 2.3. Si R es de la forma Ri ← Ri − a Rj ,entonces modificar L haciendo lij = a. 3. Tome L = L + In . Ejemplo 26.4 Determine una factorizaci´ on P A = L U de la matriz  1 2 −2 1  4 5 −7 6 A=  5 25 −15 −3 6 −12 −6 22

   

Soluci´ on Tomemos U0 = A, P0 = I4 y L0 = 0. 1. Si aplicamos sobre U0 las operaciones de eliminaci´on R2 → R2 − 4 R1 ,R3 → R3 − 5 R1 y R4 → R4 − 6 R1 se obtiene a la nueva matriz U1 :   1 2 −2 1  0 −3 1 2   U1 =   0 15 −5 −8  0 −24 6 16 Estos cambios se registran en L1 y hasta el momento  0 0  4 0 L1 =   5 0 6 0

se tiene:  0 0 0 0  ,P = I 0 0  0 0

2. Si aplicamos sobre U1 las operaciones de eliminaci´on R3 → R3 + 5 R2 y R4 → R4 − 8 R2 se obtiene a la nueva matriz U2 :   1 2 −2 1  0 −3 1 2   U2 =   0 0 0 2  0 0 −2 0

6

Estos cambios se registran en L1 y hasta el momento  0 0  4 0 L2 =   5 −5 6 8

se tiene:  0 0 0 0   , P = P1 0 0  2 0 0

3. Si aplicamos sobre U2 la operaci´ on de intercambio R3 ↔ R4 se obtiene la nueva matriz U3 :   1 2 −2 1  0 −3 1 2   U3 =   0 0 −2 0  0 0 0 2 Aplicando la operaci´ on de intercambio a L2 y  0 0  4 0 L3 =   6 8 5 −5

a P2 , se tiene:   0 0  0 0   , P3 =    0 0 0 0

1 0 0 0

0 1 0 0

0 0 0 1

4. Puesto que la matriz U3 ya es escalonada, el procedimiento termina y se tiene:    1 2 −2 1 1 0  0 −3   1 2  4 1 U = U3 =  ,L =   0  6 0 −2 0  8 0 0 0 2 5 −5   1 0 0 0  0 1 0 0   P = P3 =   0 0 0 1  0 0 1 0 Como ejercicio, compruebe que P A = L U  Ejemplo 26.5 Determine una factorizaci´ on P A = L U de la matriz  0 −3 1 2 2  0 0 0 0 2   2 −2 1 1 A= 1  4 2 −8 8 9 5 1 −5 13 11 Soluci´ on Tomemos U0 = A, P0 = I5 y L0 = 0. 1. Si aplicamos sobre U la operaci´ on de intercambio R1 ↔ R3 se  1 2 −2 1  0 0 0 0   1 2 U1 =  0 −3  4 2 −8 8 5 1 −5 13

7

 0 0   1  0 finalizamos haciendo L = L3 + I y  0 0 0 0   1 0  0 1

     

obtiene la nueva matriz U:  1 2   2   9  11

Aplicando la operaci´ on de intercambio  0  0  L1 =   0  0 0

a L0 y a P0 , se tiene:   0 0 0 0  0 0 0 0     0 0 0 0  , P1 =    0 0 0 0  0 0 0 0

2. Si aplicamos sobre U1 las operaciones de eliminaci´on R4 nueva matriz U2 :  1 2 −2  0 0 0   1 U2 =  0 −3  0 −6 0 0 −9 5

0 0 1 0 0

0 1 0 0 0

1 0 0 0 0

0 0 0 1 0

0 0 0 0 1

     

→ R4 − 4 R1 y R5 → R5 − 5 R1 se obtiene a la 1 0 2 4 8

Estos cambios se registran en L1 y hasta el momento se tiene:    0 0 0 0 0  0 0 0 0 0        L2 =  0 0 0 0 0  , P2 =    4 0 0 0 0   5 0 0 0 0

1 2 2 5 6

0 0 1 0 0

     

0 1 0 0 0

1 0 0 0 0

0 0 0 1 0

0 0 0 0 1

     

3. Si aplicamos sobre U2 la operaci´ on de intercambio R2 ↔ R3 se obtiene la nueva matriz U3 :   1 2 −2 1 1  0 −3 1 2 2    0 0 0 2  U3   0   0 −6 0 4 5  0 −9 5 8 6 Aplicando la operaci´ on de intercambio  0  0  L3 =   0  4 5

a L2 y a P2 , se tiene:   0 0 0 0  0 0 0 0     0 0 0 0   , P3 =    0 0 0 0 0 0 0 0

0 1 0 0 0

0 0 1 0 0

1 0 0 0 0

0 0 0 1 0

0 0 0 0 1

     

Si aplicamos sobre U3 las operaciones de eliminaci´on R4 → R4 − 2 R2 y R5 → R5 − 3 R2 se obtiene a la nueva matriz U4 :   1 2 −2 1 1  0 −3 1 2 2     0 0 0 2  U4 =  0   0 0 −2 0 1  0 0 2 2 0 Estos cambios se registran en L3 y hasta el momento se tiene:    0 0 0 0 0  0 0 0 0 0        L4 =  0 0 0 0 0  , P4 =    4 2 0 0 0   5 3 0 0 0 8

0 1 0 0 0

0 0 1 0 0

1 0 0 0 0

0 0 0 1 0

0 0 0 0 1

     

5. Si aplicamos sobre U4 la operaci´ on de intercambio R2 ↔ R3  1 2 −2 1  0 −3 1 2   0 −2 0 U5 =  0  0 0 0 0 0 0 2 2 Estos cambios se registran en L4 y hasta el momento se tiene:    0 0 0 0 0  0 0 0 0 0        L5 =  4 2 0 0 0  , P5 =    0 0 0 0 0   5 3 0 0 0

se obtiene la nueva matriz U5 :  1 2   1   2  0

0 1 0 0 0

0 0 0 1 0

1 0 0 0 0

0 0 1 0 0

0 0 0 0 1

     

6. Si aplicamos sobre U5 la operaci´ on de eliminaci´on R5 → R5 + 1 R3 se obtiene a la nueva matriz U6 :   1 2 −2 1 1  0 −3 1 2 2     0 −2 0 1  U6 =  0   0 0 0 0 2  0 0 0 2 1 Estos cambios se registran en L6 y hasta el momento se tiene:    0 0 0 0 0  0 0  0 0 0       0 0 0  , P6 =  L6 =  4 2   0 0  0 0 0  5 3 −1 0 0 7. Si aplicamos sobre U6 la operaci´ on de intercambio R4 ↔ R5  1 2 −2 1  0 −3 1 2  0 0 −2 0 U7 =    0 0 0 2 0 0 0 0 Estos cambios se registran en L6 y hasta el momento se tiene:    0 0 0 0 0   0 0 0 0 0       0 0 0  , P7 =  L7 =  4 2    5 3 −1 0 0  0 0 0 0 0

0 1 0 0 0

0 0 0 1 0

1 0 0 0 0

0 0 1 0 0

0 0 0 0 1

     

se obtiene la nueva matriz U7 :  1 2   1   1  2

0 1 0 0 0

0 0 0 0 1

1 0 0 0 0

0 0 1 0 0

0 0 0 1 0

     

8. Puesto que la matriz U7 ya es escalonada, el procedimiento termina y finalizamos haciendo L = L7 + I y se tiene:     1 0 0 0 0 1 2 −2 1 1  0 −3  0 1 1 2 2  0 0 0         0 −2 0 1  , L =  4 2 1 0 0  U = U7 =  0   0  5 3 −1 1 0  0 0 2 1  0 0 0 0 2 0 0 0 0 1 9

   P = P7 =   

0 1 0 0 0

0 0 0 0 1

1 0 0 0 0

0 0 1 0 0



0 0 0 1 0

    

Como ejercicio, compruebe que P A = L U  Ejemplo 26.6 Determine una factorizaci´ on P A = L U de la matriz  0 −18 0 14 16 7  8 16 −18 8 9 −16   9 3 −13 21 20 −14 A=  1 2 −2 1 1 −2   0 −3 1 2 2 1 10 −1 −21 28 32 −12 Soluci´ on Tomemos U0 = A, P0 = I5 y L0 = 0. 1. Si aplicamos sobre U la operaci´ on de intercambio  1 2  8 16   9 3 U1 =   0 −18   0 −3 10 −1 Aplicando la operaci´ on de intercambio  0 0  0 0   0 0 L1 =   0 0   0 0 0 0

       

R1 ↔ R4 se obtiene la nueva matriz U:  −2 1 1 −2 −18 8 9 −16   −13 21 20 −14   0 14 16 7   1 2 2 1  −21 28 32 −12

a L0 y a P0 , se tiene:   0 0 0 0  0 0 0 0      0 0 0 0   , P = 1  0 0 0 0      0 0 0 0 0 0 0

0 0 0 1 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 0 0 0

0 0 0 0 1 0

0 0 0 0 0 1

       

2. Si aplicamos sobre U1 las operaciones de eliminaci´on R2 → R2 − 8 R1 , R3 → R3 − 9 R1 y R6 → R6 − 10 R1 se obtiene a la nueva matriz U2 :   1 2 −2 1 1 −2  0 0 −2 0 1 0      0 −15 5 12 11 4   U2 =   0 −18 0 14 16 7    0 −3 1 2 2 1  0 −21 −1 18 22 8 Estos cambios se registran en L1 y hasta el  0 0 0  8 0 0   9 0 0 L2 =   0 0 0   0 0 0 10 0 0

momento se tiene:   0 0 0  0 0 0      0 0 0  , P2 =    0 0 0    0 0 0  0 0 0 10

0 0 0 1 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 0 0 0

0 0 0 0 1 0

0 0 0 0 0 1

       

3. Si aplicamos sobre U2 la operaci´ on de intercambio R2  1 2 −2  0 −3 1   0 −15 5 U3 =   0 −18 0   0 0 −2 0 −21 −1 Aplicando la operaci´ on de intercambio a L2 y  0 0 0 0  0 0 0 0   9 0 0 0 L3 =   0 0 0 0   8 0 0 0 10 0 0 0

↔ R5 se obtiene la nueva matriz U3 :  1 1 −2 2 2 1   12 11 4   14 16 7   0 1 0  18 22

a P2 , se tiene:   0 0  0 0     0 0   , P3 =    0 0     0 0 0 0

0 0 0 1 0 0

8

0 0 0 0 1 0

0 0 1 0 0 0

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 0 0 1

       

4. Si aplicamos sobre U3 las operaciones de eliminaci´on R3 → R3 − 5 R2 , R4 → R4 − 6 R2 y R6 → R6 − 7 R2 se obtiene a la nueva matriz U4 :   1 2 −2 1 1 −2  0 −3 1 2 2 1      0 0 0 2 1 −1   U4 =   0 0 −6 2 4 1    0 0 −2 0 1 0  0 0 −8 4 8 1 Estos cambios se registran en L3 y hasta el  0 0 0  0 0 0   9 5 0 L4 =   0 6 0   8 0 0 10 7 0

momento se tiene:   0 0 0  0 0 0      0 0 0   , P = 4   0 0 0    0 0 0  0 0 0

0 0 0 1 0 0

0 0 0 0 1 0

0 0 1 0 0 0

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 0 0 1

       

5. Si aplicamos sobre U4 la operaci´ on de intercambio R3 ↔ R5 se obtiene la nueva matriz U5 :   1 2 −2 1 1 −2  0 −3 1 2 2 1     0 0 −2 0 1 0    U5 =  0 −6 2 4 1    0  0 0 0 2 1 −1  0 0 −8 4 8 1 Aplicando la operaci´ on de intercambio a L4 y  0 0 0 0  0 0 0 0   8 0 0 0 L5 =   0 6 0 0   9 5 0 0 10 7 0 0

a P4 , se tiene:   0 0  0 0      0 0  , P5 =    0 0    0 0  0 0 11

0 0 0 1 0 0

0 0 1 0 0 0

0 0 0 0 1 0

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 0 0 1

       

6. Si aplicamos sobre U5 las operaciones de eliminaci´on R4 nueva matriz U6 :  1 2 −2 1  0 −3 1 2   0 0 −2 0 U6 =   0 0 0 2   0 0 0 2 0 0 0 4 Estos cambios se registran en L6 y hasta el  0 0 0  0 0 0   8 0 0 L6 =   0 6 3   9 5 0 10 7 4

 1 −2 2 1   1 0   1 1   1 −1  4 1

momento se tiene:   0 0 0  0 0 0     0 0 0   , P6 =    0 0 0     0 0 0 0 0 0

7. Si aplicamos sobre U6 las operaciones de eliminaci´on R5 nueva matriz U7 :  1 2 −2 1  0 −3 1 2   0 0 −2 0 U7 =   0 0 0 2   0 0 0 0 0 0 0 0 Estos cambios se registran en L7 y hasta el  0 0 0  0 0 0   8 0 0 L7 =   0 6 3   9 5 0 10 7 4

→ R4 − 3 R3 y R6 → R6 − 3 R3 se obtiene a la

0 0 0 1 0 0

0 0 1 0 0 0

0 0 0 0 1 0

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 0 0 1

       

→ R5 − 1 R4 y R6 → R6 − 2 R4 se obtiene a la  1 −2 2 1   1 0   1 1   0 −2  2 −1

momento se tiene:   0 0 0  0 0 0      0 0 0  , P7 =    0 0 0    1 0 0  2 0 0

0 0 0 1 0 0

0 0 1 0 0 0

0 0 0 0 1 0

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 0 0 1

       

8. Si aplicamos sobre U7 la operaci´ on de intercambio R5 ↔ R6 se obtiene la nueva matriz U8 :   1 2 −2 1 1 −2  0 −3 1 2 2 1     0 0 −2 0 1 0    U8 =  0 0 2 1 1   0   0 0 0 0 2 −1  0 0 0 0 0 −2 Aplicando la operaci´ on de intercambio a L7 y  0 0 0 0  0 0 0 0   8 0 0 0 L8 =   0 6 3 0   10 7 4 2 9 5 0 1

a P7 , se tiene:   0 0  0 0      0 0  , P8 =    0 0    0 0  0 0 12

0 0 0 1 0 0

0 0 1 0 0 0

0 0 0 0 0 1

1 0 0 0 0 0

0 1 0 0 0 0

0 0 0 0 1 0

       

9. Puesto que la matriz U8 ya es escalonada, se tiene:  1 2 −2  0 −3 1   0 0 −2 U = U8 =   0 0 0   0 0 0 0 0 0

el procedimiento termina y   1 1 −2 1 0  0 1 2 2 1     0 1 0  ,L =  8 0   0 6 2 1 1     10 7 0 2 −1 0 0 −2 9 5   0 0 0 1 0 0  0 0 0 0 1 0     0 1 0 0 0 0    P = P8 =   1 0 0 0 0 0    0 0 0 0 0 1  0 0 1 0 0 0

finalizamos haciendo L = L8 + I y  0 0 0 0 0 0 0 0   1 0 0 0   3 1 0 0   4 2 1 0  0 1 0 1

Como ejercicio, compruebe que P A = L U 

26.8.

Notas generales

A continuaci´on hacermos algunos comentarios generales sobre la factorizaci´on LU y su uso. Nota 1 Existen maneras de programar el algoritmo anterior de forma tal que la matriz U y la matriz L queden en una misma matriz cuadrada. Un truco radica en que siendo todos los elementos de la diagonal de U unos, no se requiere el espacio para almacenarlos. Tambi´en hay forma de programar el algoritmo para que la matriz de permutaciones P se represente por un s´ olo vector con n valores, con n´ umeros de 1 al n, que indican c´ omo deben permutarse los renglones de la identidad. Esto es muy conveniente pues la matriz P es tal que de sus n2 valores todos son cero excepto n que son 1. Usando estas ideas el almacenamiento requerido por el algoritmo de factorizaci´on LU puede reducirse de 3 n2 a n2 + n n´ umeros de punto flotante. Significando un ahorro de espacio aproximandamente 66 %. Nota 2 Si se posee una factorizaci´ on A = L U de una matriz cuadrada invertible, entonces la inversa de A puede calcularse mediante A−1 = U−1 L−1 El costo de invertir una matriz triangular es de n3 FLOPs lo cual es m´as econ´omico que invertir una matriz n × n cualquiera que es de 38 n3 FLOPs. Adem´ as de los costos para calcular L−1 y U−1 , habr´ıa que calcular el 3 producto el cual tiene un costo de n FLOPs. Esto nos hace llegar a la conclusi´on de que el c´ alculo u ´ nico de 8 3 −1 3 A haciendo uso de la factorizaci´ on LU toma 3 n FLOPs que es m´as grande que los 3 n FLOPs que toma el procedimiento tradicional. Por ello es que no es conveniente esta estrategia de c´alculo. Nota 3 Si se desea calcular A−1 B y se posee una factorizaci´on LU de A entonces puede aplicarse eliminaci´on gaussiana en la reducci´on [L|B] → [I|D] aqu´ı D = L−1 B lo cual tiene un costo computacional de n3 FLOPs utilizando que L es triangular. Seguido de esto, se aplica tambi´en eliminaci´on gaussiana en la reducci´ on [U|D] → [I|E] aqu´ı E = U−1 D = U−1 L−1 B = A−1 B lo cual tiene un costo computacional de n3 FLOPs utilizando que U es triangular. Esto da como resultado un proceso de c´alculo para A−1 B con un costo 2 n3 FLOPs teniendo disponible una factorizaci´on LU. 13

Nota 4 Las matrices de permutaci´ on P son f´ acilmente invertibles al cumplir la relaci´on: P−1 = PT Adem´as, normalmente no es conveniente realizar el producto P B que tiene un costo de n3 FLOPs sino m´ as bien realizar el movimiento de renglones correspondiente. Y m´as que realizar el movimiento de renglones, se hacen trucos de programaci´ on para evitar tales movimientos teniendo un vector que refiere a los renglones de diferentes posiciones.

14