Sistemas Lineares
Parte 2
Métodos Iterativos
Introdução
Métodos diretos: eliminação por Gauss,
fatoração LU, fatoração de Cholesky, ...
Fornecem solução de qualquer sistema.
Para minimizar problemas de
arredondamento, adota-se o pivoteamento.
Métodos iterativos: podem ser mais rápidos e
necessitar de menos memória do
computador. Fornecem seqüências que
convergem para a solução sob certas
condições.
Introdução
n
Seja A x b um sistema linear de ordem
.
A idéia é generalizar o método do ponto fixo,
escrevendo o sistema linear na forma
xC x g
onde C é uma matriz de ordem n e g é um
vetor coluna n 1 .
(0)
x
Dado um vetor aproximação inicial
, construímos iterativamente:
x (1) C x (0) g
x ( 2) C x (1) g
Introdução
Se a seqüência x
(0)
, x
(1)
, ....., x
(k )
convergir
Lim x ( k ) C x ( k 1) g
k grande
Então é a solução do sistema linear
A x b com
x
Teste de Parada
(k )
Se a seqüência x estiver suficientemente
( k 1)
próximo de x
paramos o processo.
Dada um precisão , quando
d
(k )
MAX
1i n
k
xi
k 1
xi
(k )
x
então
é a solução do sistema linear.
Computacionalmente, um número máximo de
iterações também é critério de parada.
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-JACOBI
Seja o sistema linear
a11 x1 a12 x 2 a13 x3 ...... a1n x n b1
a 21 x1 a 22 x 2 a 23 x3 ...... a 2 n x n b2
..........
..........
..........
..........
..........
.......
a n1 x1 a n 2 x 2 a n3 x3 ...... a nn x n bn
Se aii 0 para i 1...n podemos isolar
x C x g por separação da diagonal.
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-JACOBI
Iterativamente, o sistema reescreve-se como:
x1
( k 1)
1
(k )
(k )
(k )
b1 a12 x 2 a13 x3 ...... a1n x n
a11
( k 1)
1
(k )
(k )
(k )
b2 a 21 x1 a 23 x3 ...... a 2 n x n
a 22
x2
..........
..........
..........
..........
..........
.......
1
( k 1)
(k )
(k )
(k )
xn
bn a n1 x1 a n 2 x 2 ...... a n,n 1 x n 1
a nn
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-JACOBI
Desta forma temos x C x g , onde
0
a / a
C 21 22
........
a / a
n1 nn
a12 / a11
0
.........
a n 2 / a nn
...... a1n / a11
....... a 2 n / a 22
....... .........
.......
0
e
b1 / a11
b2 / a 22
g
.......
b / a
n nn
(0)
Do método de Gauss-Jacobi, dado x ,
(1)
Obtemos x , ....., x ( k 1) através da relação
recursiva
( k 1)
(k )
x
C x g
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-JACOBI
Exemplo:Seja o sistema linear
10 x1 2 x 2 x3 7
1 x1 5 x 2 x3 8
2 x1 3 x 2 10 x3 6
Seja
x (0)
0 .7
1.6
0 .6
com 0.05 . Portanto,
2 / 10 1 / 10
0
C 1/ 5
0
1/ 5
1 / 5 3 / 10
0
7 / 10 0.7
g 8 / 5 1.6
6 / 10 0.6
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-JACOBI
Substituindo
(1)
0.2 x 2
( 0)
0.1 x3
x2
(1)
0.2 x1
( 0)
0.2 x3
( 0)
1.6 0.2 (0.7) 0.2 (0.6) 1.6 1.86
x3
(1)
0.2 x1
(0)
0.3 x 2
( 0)
0.6 0.2 (0.7) 0.3 (1.6) 0.6 0.94
x1
( 0)
0.7 0.2 (1.6) 0.1 (0.6) 0.7 0.96
d1(1) x1(1) x1( 0) 0.26 0.05
Segue x (1)
0.96
1.86 . Calculando d (1) x (1) x ( 0) 0.26 0.05
2
2
2
0.94
d 3(1) x3(1) x3( 0) 0.34 0.05
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-JACOBI
Continuando x ( 2)
0.978
1.98 com
0.966
d ( 2) MAX xi2 xi1 0.12
1i n
( 3)
Segue x
0.999
1.999
0.998
é a solução, pois
d (3) MAX xi(3) xi( 2) 0.032
1i n
critério de parada
Critérios de Convergência
Nos métodos iterativos são necessários
critérios que garantam a convergência.
Um critério para a convergência do Método
de Gauss-Jacobi é dado pelo:
1) Critério das linhas.
Método de Gauss-Jacobi
Convergência: Critério das linhas
Teorema – Critério das linhas
n
Dado o sistema A x b, seja k ( | a kj |) / | a kk |
j 1
j k
Se max k 1 , então o método de Gauss1 k n
Jacobi gera uma série convergente para a
solução do sistema independentemente da
(0)
x
escolha de
.
Método de Gauss-Jacobi
Convergência: Critério das linhas
Exemplo:Considere o sistema já estudado
10 x1 2 x 2 x3 7
1 x1 5 x 2 x3 8
2 x1 3 x 2 10 x3 6
10 2 1
A 1 5 1
2 3 10
Critério das linhas:
2 1
1
0.3 1
10
k 0.5 1
Logo, 1max
k n
11
2
0.4 1
5
3
23
0.5 1
10
convergência OK!
Método de Gauss-Jacobi
Convergência: Critério das linhas
Obs1: O sistema
x1 x 2 3
x1 3 x 2 3
converge pelo método de Gauss-
Jacobi. No entanto, max k 1 . Isto mostra que o Teorema das
1 k n
linhas é apenas suficiente para convergência.
Obs2: O sistema
1 x1 3 x 2 x3 2
5 x1 2 x 2 2 x3 3
0 x1 6 x 2 8 x3 6
Contudo, o sistema 5 x1 2 x 2 2 x3 3
Equivalente converge 1 x1 3 x 2 x3 2
pelo critério das linhas 0 x1 6 x 2 8 x3 6
max k 4
1k n
max k 0.8 1
1 k n
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Seja o sistema linear
a11 x1 a12 x 2 a13 x3 ...... a1n x n b1
a 21 x1 a 22 x 2 a 23 x3 ...... a 2 n x n b2
..........
..........
..........
..........
..........
.......
a n1 x1 a n 2 x 2 a n3 x3 ...... a nn x n bn
Se aii 0 para i 1...n podemos isolar
x C x g por separação da diagonal.
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Iterativamente, o sistema reescreve-se como:
x1
( k 1)
1
(k )
(k )
(k )
b1 a12 x 2 a13 x3 ...... a1n x n
a11
( k 1)
1
( k 1)
(k )
(k )
b2 a 21 x1
a 23 x3 ...... a 2 n x n
a 22
x2
..........
..........
..........
..........
..........
.......
1
( k 1)
( k 1)
( k 1)
( k 1)
xn
bn a n1 x1
an2 x2
...... a n,n 1 x n 1
a nn
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Comentário: Gauss-Jacobi X Gauss-Seidel
O Método de Gauss-Seidel é uma variação
do Método de Gauss-Jacobi, pois para
( k 1)
x
calcular j
utilizamos os valores
x1
( k 1)
, x2
( k 1)
, x3
( k 1)
, ....., x j 1
( k 1)
já calculados e os valores restantes
x j 1
( k 1)
, x j 2
( k 1)
, ....., xn
( k 1)
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
5 x1 1 x 2 1 x3 5
Exemplo:Seja o sistema linear
Seja
x ( 0)
0
0
0
x1
( k 1)
x2
x3
( k 1)
3 x1 3 x 2 6 x3 0
com 0.05 . Portanto,
0.2 x
1.5 0.75 x
0.25 x
0 0.5 x
0.5 x
1 0.2 x 2
(k )
(k )
3
( k 1)
(k )
1
( k 1)
3 x1 4 x 2 1 x3 6
3
( k 1)
1
( k 1)
2
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Logo, a primeira iteração fornece
x1
(1)
x2
(1)
x3
(1)
0.2 x 1 0 0 1
1.5 0.75 x 0.25 x 1.5 0.75 1 0.25 0 0.75
0 0.5 x 0.5 x 0.5 1 0.5 0.75 0.88
1 0.2 x 2
(0)
( 0)
3
(1)
(0)
1
x (1)
3
(1)
1
1
0.75
0.88
(1)
2
(1)
x1
x2
(1)
x2
( 0)
0.75 0 0.75
x3
(1)
x3
( 0)
0.88 0 0.88
x1
( 0)
1 0 1
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Logo, a segunda iteração fornece
x1
x ( 2)
( 2)
x2
( 2)
x3
( 2)
0.2 x 1.03
1.5 0.75 x
0.25 x 0.95
0 0.5 x
0.5 x 0.99
1 0.2 x 2
(1)
(1)
3
( 2)
(1)
1
1.03
0.95
0.99
3
( 2)
( 2)
1
2
( 2)
x1
x2
( 2)
x2
(1)
0.2
x3
( 2)
x3
(1)
0.11
x1
(1)
0.03
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Logo, a terceira iteração fornece
x1
x ( 3)
( 3)
x2
( 3)
x3
( 3)
0.2 x 1.01
1.5 0.75 x 0.25 x 0.99
0 0.5 x 0.5 x 1.00
1 0.2 x 2
( 2)
( 2)
3
( 3)
( 2)
1
1.01
0.99
1.00
3
( 3)
( 3)
1
2
( 3)
x1
x2
( 3)
x2
( 2)
0.04
x3
( 3)
x3
( 2)
0.01
x1
( 2)
0.02
MÉTODOS ITERATIVOS
MÉTODO DE GAUSS-SEIDEL
Logo, após a terceira iteração
x x ( 3)
1.01
0.99
1.00
é solução do sistema considerado com erro
menor do que 0.05 .
Critérios de Convergência
Nos métodos iterativos são necessários
critérios que garantam a convergência.
Convergência para o Método de Gauss-Seidel:
1) Critério das linhas (já visto)
2) Critério de Sassenfeld
Os critérios acima estabelecem condições
suficientes para a convergência.
Método de Gauss-Seidel
Convergência - Critério de Sassenfeld
Sejam
| a12 | | a13 | | a1n |
1
| a11 |
n
| a1 j |
|a
j 2
11
|
e
| ai1 | 1 | ai 2 | 2 | aii1 | i 1 | aii1 | | ain |
i
| aii |
[
i 1
| a
j 1
ij
| j
n
| a
j i 1
ij
| ]/ | aii | i 2,3, n
Critério de Sassenfeld
Seja
max{ i }
1i n
Se < 1, o método de Gauss-Seidel gera
uma sequência convergente para qualquer
x ( 0 ). Quanto menor , mais rápida a
convergência.
Exemplos
x1 0.5 x 2 0.1x3 0.1x 4 0.2
0.2 x1 x 2 0.2 x3 0.1x 4 2.6
0.1x1 0.2 x 2 x3 0.2 x 4 1.0
0.1x1 0.3x 2 0.2 x3 x 4 2.5
Seja o sistema:
1 [
4
| a
1j
|] / | a11 | [| a12 | | a13 | | a14 | ]/ | a11 | [0.5 0.1 0.1] / 1 0.7
j 2
2 [
2 1
| a
2j
| j
j 1
4
| a
2j
| ]/ | a 22 | [| a 21 | 1 | a 23 | | a 24 | ]/ | a 22 |
j 2 1
[0.2 0.7 0.2 0.1] / 1 0.44
3 [
31
| a
3j
| j
j 1
4
| a
3j
| ]/ | a 33 | [| a 31 | 1 | a 32 | 2 | a 34 | ]/ | a 33 |
j 31
[0.1 0.7 0.2 0.44 0.2] / 1 0.358
4 [
4 1
| a
j 1
4j
| j
4
| a
4j
| ]/ | a 44 | [| a 41 | 1 | a 42 | 2 | a 43 | 3 ] / | a 44 |
j 4 1
[0.1 0.7 0.2 0.44 0.2 0.358] / 1 0.274
Exemplos
Então,
max{ i } 0.7 1
1i n
de modo que o método de Gauss-Seidel
converge.
Exemplos
2. Seja o sistema:
2 x1 x 2 3x3 9
x 2 x3 1
x
3x3 3
1
Neste caso, 1 [1 3] / 2 2 1
Trocando a 1ª equação pela terceira,
3x3 3
x1
x 2 x3 1
2 x x 3x 9
2
3
1
Nesta disposição: 1 [0 3] / 1 3 1
Exemplos
2. Agora se trocarmos a 1ª coluna pela
terceira,
x1 3
3x3
1
x3 x 2
3x x 2 x 9
2
1
3
Nesta disposição:
1 [1 1] / 3 1 / 3
2 [1 (1 / 3) 0] / 1 1 / 3
3 [3 (1 / 3) 1 (1 / 3) // 2 2 / 3
max{ i } 2 / 3 1
1i n
Garantia de
convergência
Exemplos
3.
x1 x 2 3
Seja o sistema:
x1 3x 2 3
O método de Gauss-Seidel gera uma seqüência
convergente, apesar do crit´rio das linhas não ser
satisfeito.
Pelo critério de Sassenfeld
1 1 / 1 1
2 11/ 3 1/ 3
O critério de Sassenfeld
não é satisfeito.
O critério de Sassenfeld também é
suficiente, mas não necessário.
Metodos Iterativos - Comparação
x1 x 2 3
Seja o sistema: x 3x 3
2
1
x1( k 1) 3 x 2( k )
Método de Gauss-Jacobi:
x 2( k 1)
1
3 x1( k )
3
Temos a seqüência:
x
( 0)
0
3
2
1
4 / 3
(1)
( 2)
(3)
( 4)
, x
, x , x , x
0
1
2
5 / 3
4 / 3
Metodos Iterativos - Comparação
x1 x 2 3
Seja o sistema:
x1 3x 2 3
x1( k 1) 3 x 2( k )
Método de Gauss-Seidel:
x 2( k 1)
1
3 x1( k 1)
3
Temos a seqüência:
x
( 0)
0
3
1
5/3
(1)
( 2)
( 3)
, x
, x , x
0
2
4 / 3
14 / 9
Metodos Iterativos - Comparação
Comentário1: As duas seqüências convergem para a
solução exata do sistema x 1.5 1.5 . Vejamos,
( 4)
x
a) Gauss-Jacobi : GJ 1.33 1.33
b) Gauss-Seidel: xGS (3) 1.67 1.56
Comentário 2: A convergência do Método de GaussSeidel é mais rápida, por construção do método.
Comentário 3: Embora a ordem das equações num
sistema linear não mude a solução exata, as seqüências
geradas pelos Métodos de Gauss-Jacobi e Gauss-Seidel
dependem fundamentalmente da disposição das equações
Métodos Direto e Iterativos
Comparação
1) Convergência:
Os Métodos Diretos são processos finitos
portanto fornecem solução para qualquer
sistema linear não-singular.
Os Métodos Iterativos têm convergência
assegurada sob certas condições.
Métodos Direto e Iterativos
Comparação
2) Esparsidade da Matriz A :
Em problemas reais, como a discretização de EDO’s pelo
Método de Elementos Finitos ou Diferenças Finitas, as
matrizes dos coeficientes tornam-se esparsas. A forma de
armazenamento destes dados tira proveito da esparsidade.
Métodos diretos em sistemas esparsos provocam o
preenchimento da matriz e no processo de Eliminação
(escalonamento) geram elementos não-nulos, onde originalmente
tínhamos elementos nulos. Técnicas especiais de pivoteamento
reduzem este preenchimento. Fatoramento LU dão bons
resultados. Algumas situações estes métodos não são possíveis.
Métodos iterativos não alteram a estrutura da matriz dos
coeficientes. Vantagem.
Métodos Direto e Iterativos
Comparação
A
3) Erros de Arredondamento
Métodos Diretos têm problemas de
arredondamento. Técnicas de Pivoteamento
amenizam tais erros.
Métodos iterativos têm menos erros de
arredondamento, quando a convergência
estiver assegurada.
Lista de Métodos para
Sistemas Lineares
Fazer exercícios 3, 5, 9,14, 22, 29 do
livro texto.