Fatoração LU

Página Inicial
ESPAÇOS VETORIAIS
Espaços Vetoriais
Subespaços Vetoriais
Combinação Linear
Subespaços Gerados
Intersecção de Subespaços
Soma de Subespaços
Dependência Linear
Base e Dimensão
Mudança de Base

TRANSFORMAÇÕES LINEARES
Transformações Lineares
Núcleo e Imagem
Teorema do Núcleo e da Imagem
Isomorfismo e Automorfismo
Álgebra das Transformações Lineares
Matriz de uma Transformação

AUTOVALORES E AUTOVETORES
Autovalores e Autovetores
Polinômio Característico
Diagonalização

ESPAÇOS COM PRODUTO INTERNO
Produto Interno
Norma e Distância
Ortogonalidade

DETERMINANTES
Determinantes
Propriedades do Determinante
Cálculo de Determinantes

SISTEMAS LINEARES
Sistemas Lineares
Operações Elementares
Sistemas Triangulares
Eliminação Gaussiana

FATORAÇÕES MATRICIAIS
Fatoração LU
Fatoração de Cholesky
Fatoração Ortogonal
Fatoração QR - Processo de Gram-Schmidt
Fatoração QR - Transformações de Householder

QUADRADOS MÍNIMOS
Método de Quadrados Mínimos
Ajuste de Curvas
Problemas Aplicados

 OUTRAS APLICAÇÕES
Curvas e Superfícies por Pontos Especificados
Criptografia
Jogos de Estratégia
Classificação de Cônicas


Um processo de fatoração para resolução de um sistema linear consiste em decompor a matriz dos coeficientes em um produto de dois ou mais fatores e, em seguida, resolver uma sequência de sistemas lineares mais simples, para no final obter a solução do sistema original. Vamos utilizar um exemplo numérico para entender como funciona a fatoração LU.

Exemplo 1: Considere o seguinte sistema linear:

{1x1-2x2+1x3=-12x1-3x2+1x3=-31x1+4x2+2x3=7\left\lbrace \begin{array}{rrrrrrr} 1x_1 & - & 2x_2 & + & 1x_3 & = &-1 \\ 2x_1 & - & 3x_2 & + & 1x_3 & = & -3 \\ 1x_1 & + & 4x_2 & + & 2x_3 & = & 7 \end{array}\right.
Escrevendo o sistema em sua forma matricial, temos:

Ax=b[1-212-31142][x1x2x3]=[-1-37]Ax = b \Leftrightarrow \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 2 & -3 & 1 \\ 1 & 4 & 2 \end{array} \right]\; \left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} -1 \\ -3 \\ 7 \end{array} \right]
Vamos aplicar a eliminação Gaussiana, sem estratégia de pivoteamento, trabalhando apenas com a matriz AA dos coeficientes. Na primeira etapa os multiplicadores são:

m21=21=2,m31=11=1m_{21} = \frac{2}{1} = 2, \;\;\;\;\;\; m_{31} = \frac{1}{1} = 1
pois desta forma eliminamos a incógnita x1x_1 da equação 2, isto é, zeramos a entrada a21=2a_{21} = 2 da matriz AA, aplicando a operação elementar l2l2-2l1l_2 \longleftarrow l_2 - 2l_1 e, eliminamos x1x_1 da equação 3, isto é, zeramos a entrada a31=1a_{31} = 1 da matriz AA, aplicando a operação elementar l3l3-1l1l_3 \longleftarrow l_3 - 1l_1. As matrizes elementares relacionadas a estas operações, respectivamente, são:

E1=[100-210001],E2=[100010-101]E_1 = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ -2 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right], \;\;\;\;\;\; E_2 = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ -1 & 0 & 1 \end{array} \right]
Sabemos que aplicar a sequência de operações elementares sobre a matriz AA é o mesmo que multiplicá-la à esquerda pela matriz E1E_1 e o resultado multiplicar à esquerda por E2E_2, isto é, no final da primeira etapa teremos:

A(1)=E2(E1A)=[100010-101]([100-210001][1-212-31142])=A^{(1)} = E_2(E_1A) = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ -1 & 0 & 1 \end{array} \right]\; \left( \left[ \begin{array}{rrr} 1 & 0 & 0 \\ -2 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right]\; \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 2 & -3 & 1 \\ 1 & 4 & 2 \end{array} \right] \right) =
 =[100010-101][1-2101-1142]=[1-2101-1061]= \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ -1 & 0 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 1 & 4 & 2 \end{array} \right] = \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 6 & 1 \end{array} \right]
Na segunda etapa o multiplicador é:
m32=61=6m_{32} = \frac{6}{1} = 6
pois desta forma eliminamos a incógnita x2x_2 da equação 3, isto é, zeramos a entrada a32a_{32} da matriz A(1)A^{(1)}, aplicando a operação elementar l3l3-6l2l_3 \longleftarrow l_3 - 6l_2. A matriz elementar relacionada a esta operação é:

E3=[1000100-61]E_3 = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & -6 & 1 \end{array} \right]
Aplicar esta operação elementar sobre a matriz A(1)A^{(1)} é o mesmo que multiplicá-la à esquerda pela matriz E3E_3, isto é, no final da segunda etapa teremos:

A(2)=E3A(1)=[1000100-61][1-2101-1061]=[1-2101-1007]A^{(2)} = E_3 A^{(1)} = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & -6 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 6 & 1 \end{array} \right] = \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 0 & 7 \end{array} \right]
onde A(2)A^{(2)} é triangular superior. Note que:

A(2)=E3A(1)=E3[E2(E1A)]=(E3E2E1)AA^{(2)} = E_3A^{(1)} = E_3[E_2(E_1A)] = (E_3E_2E_1)A
Além disso, como E1,E2E_1, E_2E3E_3 são matrizes elementares, as inversas:

E1-1=[100210001],E2-1=[100010101],E3-1=[100010061]E_1^{-1} = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right], \;\;\; E_2^{-1} = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 1 & 0 & 1 \end{array} \right], \;\;\; E_3^{-1} = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 6 & 1 \end{array} \right]
existem e também são matrizes elementares, que representam as operações elementares inversas. Ou seja,

(E3E2E1)A=A(2)A=(E3E2E1)-1A(2)A=E1-1E2-1E3-1A(2)(E_3E_2E_1)A = A^{(2)} \Leftrightarrow A = (E_3E_2E_1)^{-1}A^{(2)} \Leftrightarrow A = E_1^{-1}E_2^{-1}E_3^{-1}A^{(2)}
Chamando U=A(2)U = A^{(2)} e

L=E1-1E2-1E3-1=[100210001][100010101][100010061]=[100210161]L = E_1^{-1}E_2^{-1}E_3^{-1} = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 1 & 0 & 1 \end{array} \right]\; \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 6 & 1 \end{array} \right] = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 1 & 6 & 1 \end{array} \right]
Então,

A=[100210161][1-2101-1007]=LUA = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 1 & 6 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 0 & 7 \end{array} \right] = LU
Isto é, fatoramos a matriz A em duas matrizes triangulares L e U, sendo que o fator L é triangular inferior com diagonal unitária e seus elementos lijl_{ij}, para i>ji>j, são os multiplicadores mijm_{ij} obtidos no processo de eliminação Gaussiana. O fator U é triangular superior e é a matriz obtida no final do processo de eliminação Gaussiana a partir da matriz A.


Teorema 1 (Fatoração LU): Dada uma matriz A:n×nA: n\times n, seja AkA_k a matriz constituída das primeiras k linhas e colunas de AA. Suponha que det(Ak)0det(A_k) \neq 0, isto é, AkA_k é não singular, para k=1,2,...,nk = 1, 2, ..., n. Então, existe uma única matriz triangular inferior L, com diagonal unitária, e uma única matriz triangular superior U tais que LU=ALU = A.

Demonstração: Como as submatrizes AkA_k de AA são todas não singulares, isto é, det(Ak)0det(A_k) \neq 0 para k=1,...,nk = 1, ..., n, sempre que necessário podemos permutar as linhas para obter pivôs não nulos no processo de eliminação Gaussiana. Assim, podemos aplicar a eliminação Gaussiana na matriz AA até obtermos uma matriz U triangular superior. Isto é, existem matrizes elementares E1,...,EmE_1, ..., E_m tais que:

(Em...E3E2E1)A=U(E_m...E_3E_2E_1)A = U
onde as matrizes EiE_i, para i=1,...,mi = 1, ..., m, são as matrizes elementares que representam as operações elementares aplicadas sobre as linhas de AA durante o processo. Logo, as matrizes inversas E1-1,E2-1,...,Em-1E_1^{-1}, E_2^{-1}, ..., E_m^{-1} existem e temos:

A=(Em...E3E2E1)-1UA=E1-1E2-1E3-1...Em-1UA = (E_m...E_3E_2E_1)^{-1}U \Leftrightarrow A = E_1^{-1} E_2^{-1} E_3^{-1} ... E_m^{-1} U
Chamando L=E1-1E2-1E3-1...Em-1L = E_1^{-1} E_2^{-1} E_3^{-1} ... E_m^{-1}, temos portanto A=LUA = LU. Pelo modo como foi construído, o fator L é triangular inferior (do inglês Lower triangular) com diagonal unitária e seus elementos lijl_{ij}, para i>ji > j, são os multiplicadores mijm_{ij} obtidos durante o processo de eliminação Gaussiana. E como já vimos, o fator U é a matriz triangular superior (do inglês Upper triangular) obtida no final do processo.


Voltar ao Topo.

Resolução de Sistemas Lineares Utilizando a Fatoração LU


Dado o sistema linear Ax=bAx = b e a fatoração LU de AA, temos:

Ax=b(LU)x=bL(Ux)=bAx = b \Leftrightarrow (LU)x = b \Leftrightarrow L(Ux) = b
Chamando y=Uxy = Ux, podemos obter a solução do sistema original resolvendo os seguintes sistemas triangulares:

    (i)  Ly=bLy = b
    (ii) Ux=yUx = y
 
O vetor yy é o vetor constante obtido ao final do processo da eliminação de Gauss. De fato, considerando o sistema Ly=bLy = b temos que y=L-1by = L^{-1}b. Mas L=E1-1E2-1E3-1...Em-1L-1=Em...E3E2E1L = E_1^{-1} E_2^{-1} E_3^{-1} ... E_m^{-1} \Leftrightarrow L^{-1} = E_m...E_3E_2E_1. Então, y=(Em...E3E2E1)by = (E_m...E_3E_2E_1)b, o que corresponde a aplicar as mesmas operações elementares utilizadas para triangularizar AA sobre o vetor bb.


Exemplo 2: Considerando o sistema linear Ax=bAx = b do Exemplo 1 e a fatoração LU obtida:

A=LU=[100210161][1-2101-1007]A = LU = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 1 & 6 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 0 & 7 \end{array} \right]
Vamos resolver o sistema Ax=b(LU)x=bAx = b \Leftrightarrow (LU)x = b, resolvendo primeiro o sistema triangular inferior Ly=bLy = b e depois o sistema triangular superior Ux=yUx = y. Olhando para o primeiro sistema, temos:

Ly=b[100210161][y1y2y3]=[-1-37]{1y1=-12y1+1y2=-31y1+6y2+1y3=7Ly = b \Leftrightarrow \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 1 & 6 & 1 \end{array} \right] \;\left[ \begin{array}{r} y_1 \\ y_2 \\ y_3 \end{array} \right] = \left[ \begin{array}{r} -1 \\ -3 \\ 7 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 1y_1 & & & & & = & -1 \\ 2y_1 & + & 1y_2 & & & = & -3 \\ 1y_1 & + & 6y_2 & + & 1y_3 & = & 7 \end{array}\right.
Resolvendo esse sistema obtemos y1=-1,y2=-1y_1 = -1, y_2 = -1 e y3=14y_3 = 14. Agora, olhando para o segundo sistema, temos:

Ux=y[1-2101-1007][x1x2x3]=[-1-114]{1x1-2x2+1x3=-11x2-1x3=-17x3=14Ux = y \Leftrightarrow \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 0 & 7 \end{array} \right] \;\left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} -1 \\ -1 \\ 14 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 1x_1 & - & 2x_2 & + & 1x_3 & = & -1 \\ & & 1x_2 & - & 1x_3 & = & -1 \\ & & & & 7x_3 & = & 14 \end{array}\right.
Resolvendo esse sistema obtemos x1=-1,x2=1x_1 = -1, x_2 = 1 e x3=2x_3 = 2, que é a solução do sistema original.


A grande vantagem da fatoração LU é que ela depende apenas da matriz AA. Assim, precisamos obter apenas uma vez a fatoração LU de AA e podemos resolver qualquer sistema que a tenha como matriz dos coeficientes, trocando apenas o vetor constante bb.


Exemplo 3: Considere o seguinte sistema linear:

{1x1-2x2+1x3=-62x1-3x2+1x3=-81x1+4x2+2x3=25\left\lbrace \begin{array}{rrrrrrr} 1x_1 & - & 2x_2 & + & 1x_3 & = & -6 \\ 2x_1 & - & 3x_2 & + & 1x_3 & = & -8 \\ 1x_1 & + & 4x_2 & + & 2x_3 & = & 25 \end{array}\right.
Escrevendo o sistema em sua forma matricial:

Ax=b[1-212-31142][x1x2x3]=[-6-825]Ax = b' \Leftrightarrow \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 2 & -3 & 1 \\ 1 & 4 & 2 \end{array} \right]\; \left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} -6 \\ -8 \\ 25 \end{array} \right]
Note que a matriz AA dos coeficientes é a mesma do sistema linear do exemplo anterior e apenas mudamos o vetor bb por bb'. Assim, podemos usar a fatoração LU de AA já obtida para resolver o sistema (LU)x=b(LU)x = b'. Considerando primeiro o sistema triangular inferior , temos:

Ly=b[100210161][y1y2y3]=[-6-825]{1y1=-62y1+1y2=-81y1+6y2+1y3=25Ly = b' \Leftrightarrow \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 2 & 1 & 0 \\ 1 & 6 & 1 \end{array} \right]\; \left[ \begin{array}{r} y_1 \\ y_2 \\ y_3 \end{array} \right] = \left[ \begin{array}{r} -6 \\ -8 \\ 25 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 1y_1 & & & & & = & -6 \\ 2y_1 & + & 1y_2 & & & = & -8 \\ 1y_1 & + & 6y_2 & + & 1y_3 & = & 25 \end{array}\right.
Resolvendo esse sistema obtemos y1=-6,y2=4y_1 = -6, y_2 = 4 e y3=7y_3 = 7. Considerando agora o sistema triangular superior Ux=yUx = y, temos:

Ux=y[1-2101-1007][x1x2x3]=[-647]{1x1-2x2+1x3=-61x2-1x3=47x3=7Ux = y \Leftrightarrow \left[ \begin{array}{rrr} 1 & -2 & 1 \\ 0 & 1 & -1 \\ 0 & 0 & 7 \end{array} \right]\; \left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} -6 \\ 4 \\ 7 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 1x_1 & - & 2x_2 & + & 1x_3 & = & -6 \\ & & 1x_2 & - & 1x_3 & = & 4 \\ & & & & 7x_3 & = & 7 \end{array}\right.
Resolvendo esse sistema obtemos x1=3,x2=5x_1 = 3, x_2 = 5 e x3=1x_3 = 1, que é a solução do sistema original.


Exemplo 4: Considere o seguinte sistema linear na forma matricial:

Ax=b[231112421][x1x2x3]=[456]Ax = b \Leftrightarrow \left[ \begin{array}{rrr} 2 & 3 & 1 \\ 1 & 1 & 2 \\ 4 & 2 & 1 \end{array} \right] \;\left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} 4 \\ 5 \\ 6 \end{array} \right]
Aplicando a eliminação de Gauss, sem estratégia de pivoteamento, para triangularizar AA, temos:

Etapa 1: o pivô desta etapa é a11(0)=a11=2a_{11}^{(0)} = a_{11} = 2 e os multiplicadores são:

m21=a21(0)a11(0)=12,m31=a31(0)a11(0)=42=2m_{21} = \frac{a_{21}^{(0)}}{a_{11}^{(0)}} = \frac{1}{2}, \;\;\;\;\;\; m_{31} = \frac{a_{31}^{(0)}}{a_{11}^{(0)}} = \frac{4}{2} = 2
Então, aplicamos as operações elementares l2l2-m21l1l_2 \longleftarrow l_2 - m_{21}l_1l3l3-m31l1l_3 \longleftarrow l_3 - m_{31} l_1 sobre A(0)A^{(0)}, obtendo:

A(1)=[2310-12320-4-1]A^{(1)} = \left[ \begin{array}{rrr} 2 & 3 & 1 \\ 0 & -\frac{1}{2} & \frac{3}{2} \\ 0 & -4 & -1 \end{array} \right]
Uma vez que na etapa k o algoritmo da eliminação Gaussiana trabalha a partir da coluna k da matriz, e os elementos a21(1)a_{21}^{(1)}a31(1)a_{31}^{(1)} são nulos, podemos armazenar os multiplicadores nestas posições. Assim,

A(1)=[23112-12322-4-1]A^{(1)} = \left[ \begin{array}{rrr} 2 & 3 & 1 \\ {\color{red} \frac{1}{2}} & -\frac{1}{2} & \frac{3}{2} \\ {\color{red} 2} & -4 & -1 \end{array} \right]
Etapa 2: o pivô agora é a22(1)=-12a_{22}^{(1)} = -\frac{1}{2} e o multiplicador é:

m32=a32(1)a22(1)=-4-12=8m_{32} = \frac{a_{32}^{(1)}}{a_{22}^{(1)}} = \frac{-4}{-\frac{1}{2}} = 8
Então, aplicamos a operação elementar l3l3-m32l3l_3 \longleftarrow l_3 - m_{32}l_3 sobre A(1)A^{(1)}. Como a entrada a32(1)a_{32}^{(1)} será nula, armazenamos nela o multiplicador m32m_{32}. Assim:

A(2)=[23112-123228-13]A^{(2)} = \left[ \begin{array}{rrr} 2 & 3 & 1 \\ {\color{red} \frac{1}{2}}& -\frac{1}{2} & \frac{3}{2} \\ {\color{red} 2} & {\color{red} 8} & -13 \end{array} \right]
Portanto, temos armazenados na matriz A(2)A^{(2)} as informações dos fatores L e U, obtendo a fatoração:

A=[1001210281][2310-123200-13]=LUA = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ \frac{1}{2} & 1 & 0 \\ 2 & 8 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 2 & 3 & 1 \\ 0 & -\frac{1}{2} & \frac{3}{2} \\ 0 & 0 & -13 \end{array} \right] = LU
Vamos então resolver o sistema (LU)x=b(LU)x = b. Considerando primeiro o sistema triangular inferior Ly=bLy = b, temos:

Ly=b[1001210281][y1y2y3]=[456]{1y1=412y1+1y2=52y1+8y2+1y3=6Ly = b \Leftrightarrow \left[ \begin{array}{rrr} 1 & 0 & 0 \\ \frac{1}{2} & 1 & 0 \\ 2 & 8 & 1 \end{array} \right] \;\left[ \begin{array}{r} y_1 \\ y_2 \\ y_3 \end{array} \right] = \left[ \begin{array}{r} 4 \\ 5 \\ 6 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 1y_1 & & & & & = & 4 \\ \frac{1}{2}y_1 & + & 1y_2 & & & = & 5 \\ 2y_1 & + & 8y_2 & + & 1y_3 & = & 6 \end{array}\right.
Resolvendo esse sistema obtemos y1=4,y2=3y_1 = 4, y_2 = 3 e y3=-26y_3 = -26. Considerando agora o sistema triangular superior Ux=yUx = y, temos:

Ux=y[2310-123200-13][x1x2x3]=[43-26]{2x1+3x2+1x3=4-12x2+32x3=3-13x3=-26Ux = y \Leftrightarrow \left[ \begin{array}{rrr} 2 & 3 & 1 \\ 0 & -\frac{1}{2} & \frac{3}{2} \\ 0 & 0 & -13 \end{array} \right]\; \left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} 4 \\ 3 \\ -26 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 2x_1 & + & 3x_2 & + & 1x_3 & = & 4 \\ & - & \frac{1}{2}x_2 & + & \frac{3}{2}x_3 & = & 3 \\ & & & - & 13x_3 & = & -26 \end{array}\right.
Resolvendo esse sistema obtemos x1=1,x2=0x_1 = 1, x_2 = 0  e x3=2x_3 = 2. Portanto, a solução do sistema original é (x1,x2,x3)=(1,0,2)(x_1, x_2, x_3) = (1, 0, 2).


Voltar ao Topo.

Fatoração LU com Pivoteamento

Estudaremos a aplicação de uma estratégia de pivoteamento parcial à fatoração LU. O pivoteamento requer a permutação de linhas na matriz A(k)A^{(k)} no início da etapa k da eliminação Gaussiana, quando necessário. Neste caso, teremos que guardar estas trocas de linha, pois as mesmas permutações efetuadas em AA deverão ser efetuadas sobre o vetor constante bb, uma vez que permutar as linhas de AA implica em permutar as equações do sistema Ax=bAx = b.

Definição: Uma matriz quadrada de ordem nn é dita matriz de permutação se pode ser obtida da matriz identidade de ordem nn permutando-se suas linhas (ou colunas).


Exemplo 5: Considere o sistema linear:

{0x1+1x2-2x3=72x1-2x2+3x3=-101x1+3x2+1x3=8\left\lbrace \begin{array}{rrrrrrr} 0x_1 & + & 1x_2 & - & 2x_3 & = & 7 \\ 2x_1 & - & 2x_2 & + & 3x_3 & = & -10 \\ 1x_1 & + & 3x_2 & + & 1x_3 & = & 8 \end{array}\right.
Escrevendo-o em sua forma matricial, temos:

Ax=b[01-22-23131][x1x2x3]=[7-108]Ax = b \Leftrightarrow \left[ \begin{array}{rrr} 0 & 1 & -2 \\ 2 & -2 & 3 \\ 1 & 3 & 1 \end{array} \right] \;\left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} 7 \\ -10 \\ 8 \end{array} \right]
Vamos aplicar a eliminação Gaussiana, com estratégia de pivoteamento parcial, para triangularizar a matriz AA. No início da etapa k, escolheremos para pivô o maior elemento, em módulo, entre os coeficientes aik(k-1)a_{ik}^{(k-1)}, i=k,k+1,...,ni = k, k+1, ..., n.

Etapa 1: escolhemos como pivô desta etapa o maior elemento em módulo da coluna 1, que é a21=2a_{21} = 2. Assim, precisamos permutar as linhas 1 e 2 da matriz A(0)=AA^{(0)} = A. Para isso, basta aplicar sobre A(0)A^{(0)} a operação elementar l1l2l_1 \longleftrightarrow l_2, o que equivale a multiplicar A(0)A^{(0)} pela matriz de permutação:

P1=[010100001]P_1 = \left[ \begin{array}{rrr} 0 & 1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{array} \right]
obtendo:

 A^(0)=P1A(0)=[010100001][01-22-23131]=[2-2301-2131]\hat{A}^{(0)} = P_1A^{(0)} = \left[ \begin{array}{rrr} 0 & 1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{array} \right] \;\left[ \begin{array}{rrr} 0 & 1 & -2 \\ 2 & -2 & 3 \\ 1 & 3 & 1 \end{array} \right] = \left[ \begin{array}{rrr} 2 & -2 & 3 \\ 0 & 1 & -2 \\ 1 & 3 & 1 \end{array} \right]
Efetuamos então a eliminação normalmente em A^(0)\hat{A}^{(0)}. Os multiplicadores são m21=0m_{21} = 0 e m31=12m_{31} = \frac{1}{2}, e então o elemento a^21(0)\hat{a}^{(0)}_{21} já é nulo. Portanto, basta aplicarmos a operação elementar l3l3-m31l1l_3 \longleftarrow l_3 - m_{31}l_1 sobre A^(0)\hat{A}^{(0)}, obtendo:

A(1)=[2-2301-2124-12]A^{(1)} = \left[ \begin{array}{rrr} 2 & -2 & 3 \\ {\color{red} 0} & 1 & -2 \\ {\color{red} \frac{1}{2}} & 4 & -\frac{1}{2} \end{array} \right]
Como as entradas a21(1)a^{(1)}_{21}a31(1)a^{(1)}_{31} são nulas, armazenamos nelas os multiplicadores.

Etapa 2: escolhemos como pivô desta etapa o maior elemento em módulo da coluna 2, que é a32=4a_{32} = 4. Assim, precisamos permutar as linhas 2 e 3 da matriz A(1)A^{(1)}. Para isso, basta multiplicá-la pela matriz de permutação:

P2=[100001010]P_2 = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 0 & 1 \\ 0 & 1 & 0 \end{array} \right]
obtendo:

A^(1)=P2A(1)=[100001010][2-2301-2124-12]=[2-23124-1201-2]\hat{A}^{(1)} = P_2A^{(1)} = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ 0 & 0 & 1 \\ 0 & 1 & 0 \end{array} \right] \;\left[ \begin{array}{rrr} 2 & -2 & 3 \\ {\color{red} 0} & 1 & -2 \\ {\color{red} \frac{1}{2}} & 4 & -\frac{1}{2} \end{array} \right] = \left[ \begin{array}{rrr} 2 & -2 & 3 \\ {\color{red} \frac{1}{2}} & 4 & -\frac{1}{2} \\ {\color{red} 0} & 1 & -2 \end{array} \right]
Efetuamos então a eliminação em A^(1)\hat{A}^{(1)}. O multiplicador é m32=14m_{32} = \frac{1}{4} e aplicamos sobre AA a operação elementar l3l3-m32l2l_3 \longleftarrow l_3 - m_{32}l_2, obtendo:

A(2)=[2-23124-12014-158]A^{(2)} = \left[ \begin{array}{rrr} 2 & -2 & 3 \\ {\color{red} \frac{1}{2}} & 4 & -\frac{1}{2} \\ {\color{red} 0} & {\color{red} \frac{1}{4}} & -\frac{15}{8} \end{array} \right]
Portanto, os fatores L e U obtidos são:

L=[10012100141],U=[2-2304-1200-158]L = \left[ \begin{array}{rrr} 1 & 0 & 0 \\ \frac{1}{2} & 1 & 0 \\ 0 & \frac{1}{4} & 1 \end{array} \right], \;\;\;\;\;\;\;\; U = \left[ \begin{array}{rrr} 2 & -2 & 3 \\ 0 & 4 & -\frac{1}{2} \\ 0 & 0 & -\frac{15}{8} \end{array} \right]
Mas esta é a fatoração LU de A^=PA\hat{A} = PA, onde P=P2P1P = P_2P_1, isto é:

A^=PA=[010001100][01-22-23131]=[2-2313101-2]\hat{A} = PA = \left[ \begin{array}{rrr} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 0 & 0 \end{array} \right]\; \left[ \begin{array}{rrr} 0 & 1 & -2 \\ 2 & -2 & 3 \\ 1 & 3 & 1 \end{array} \right] = \left[ \begin{array}{rrr} 2 & -2 & 3 \\ 1 & 3 & 1 \\ 0 & 1 & -2 \end{array} \right]
As mesmas permutações de linhas aplicadas sobre AA deverão ser aplicadas sobre o vetor constante bb do sistema. Seja então b^=Pb\hat{b} = Pb. O sistema linear A^x=b^\hat{A}x = \hat{b} é equivalente ao original e, como PA=LUPA = LU, temos PAx=Pb(LU)x=PbPAx = Pb \Leftrightarrow (LU)x = Pb. Assim, precisamos resolver os sistemas triangulares:

    (i) Ly=PbLy = Pb
    (ii) Ux=yUx = y
  
para obter a solução do sistema original. Olhando para o primeiro sistema, temos:

Pb=[010001100][7-108]=[-1087]Pb = \left[ \begin{array}{rrr} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 0 & 0 \end{array} \right] \;\left[ \begin{array}{r} 7 \\ -10 \\ 8 \end{array} \right] = \left[ \begin{array}{r} -10 \\ 8 \\ 7 \end{array} \right]
e assim:
Ly=Pb[10012100141][y1y2y3]=[-1087]{1y1=-1012y1+1y2=814y2+1y3=7Ly = Pb \Leftrightarrow \left[ \begin{array}{rrr} 1 & 0 & 0 \\ \frac{1}{2} & 1 & 0 \\ 0 & \frac{1}{4} & 1 \end{array} \right] \;\left[ \begin{array}{r} y_1 \\ y_2 \\ y_3 \end{array} \right] = \left[ \begin{array}{r} -10 \\ 8 \\ 7 \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 1y_1 & & & & & = & -10 \\ \frac{1}{2}y_1 & + & 1y_2 & & & = & 8 \\ & & \frac{1}{4}y_2 & + & 1y_3 & = & 7 \end{array}\right.
Resolvendo esse sistema obtemos y1=-10,y2=13y_1 = -10, y_2 = 13 e y3=154y_3 = \frac{15}{4}. Olhando agora para o segundo sistema, temos:

Ux=y[2-2304-1200-158][x1x2x3]=[-1013154]{2x1-2x2+3x3=-104x2-12x3=13-158x3=154Ux = y \Leftrightarrow \left[ \begin{array}{rrr} 2 & -2 & 3 \\ 0 & 4 & -\frac{1}{2} \\ 0 & 0 & -\frac{15}{8} \end{array} \right] \;\left[ \begin{array}{r} x_1 \\ x_2 \\ x_3 \end{array} \right] = \left[ \begin{array}{r} -10 \\ 13 \\ \frac{15}{4} \end{array} \right] \Leftrightarrow \left\lbrace \begin{array}{rrrrrrr} 2x_1 & - & 2x_2 & + & 3x_3 & = & -10\\ & & 4x_2 & - & \frac{1}{2}x_3 & = & 13 \\ & & & & -\frac{15}{8}x_3 & = & \frac{15}{4} \end{array}\right.
Resolvendo esse sistema obtemos x1=1,x2=3x_1 = 1, x_2 = 3 e x3=-2x_3 = -2. Portanto, a solução do sistema original é (x1,x2,x3)=(1,3,-2)(x_1, x_2, x_3) = (1, 3, -2).


Considerando um sistema linear Ax=bAx = b geral, tal que AA é não singular, então no início da etapa k do processo de eliminação Gaussiana existe pelo menos um elemento não nulo entre os coeficientes akk(k-1),...,ank(k-1)a_{kk}^{(k-1)}, ..., a_{nk}^{(k-1)}, de modo que podemos realizar uma troca de linhas em A(k-1)A^{(k-1)} e obter a matriz A^(k-1)\hat{A}^{(k-1)} com elemento a^kk(k-1)\hat{a}^{(k-1)}_{kk} não nulo. Desta forma, podemos realizar a eliminação e determinar unicamente os fatores L e U tais que PA=LUPA = LU, onde P=P(n-1)P(n-2)...P1P = P_{(n-1)}P_{(n-2)}...P_1 e cada PkP_k é a matriz de permutação que representa a troca de linhas efetuada na etapa k.

As mesmas permutações de linha efetuadas em AA deverão também ser efetuadas sobre o vetor constante bb, obtendo assim o vetor PbPb. Logo, teremos o seguinte sistema, equivalente ao original: PAx=Pb(LU)x=PbPAx = Pb \Leftrightarrow (LU)x = Pb. Assim, precisamos resolver os sistemas triangulares:
Ly=PbLy = Pb e Ux=yUx = y para obter a solução do sistema original.

As permutações de linha realizadas na fatoração podem ser armazenadas em um vetor p:n×1p: n\times 1, definido por p(k)=ip(k) = i se na etapa k a linha ii da matriz original AA for a linha que contêm o pivô.


Algoritmo (Resolução do sistema linear Ax = b através da fatoração LU com pivoteamento parcial): Considere o sistema linear Ax=bAx = b, com A:n×nA:n\times n. As incógnitas x1,...,xnx_1, ..., x_n podem ser obtidas através da fatoração LU com pivoteamento parcial, como no algoritmo a seguir. O vetor pp representará as permutações realizadas durante a fatoração:
Algoritmo.


Voltar ao Topo.
Última Atualização: 02/02/2016.