Método de Gauss-Seidel

Palavras-Chave

Podendo ser considerado como uma contribuição ao método de Gauss, o método de Gauss-Seidel é um método iterativo para resolução de sistemas de equações lineares com $ n $ variáveis desconhecidas. O seu nome é uma homenagem aos matemáticos Carl Friedrich Gauss (1777-1855) e Philipp Ludwig von Seidel (1821-1896), Figura 01.

Figura 01 – Matemáticos Carl Friedrich Gauss e Philipp Ludwig von Seidel.

Fonte: Autor.

Seidel ao estudar o método de Gauss para a resolução de equações lineares observou que, substituindo o valor anterior pelo valor calculado apenas no final da iteração o sistema convergiria mais rapidamente. Desta forma, concluiu que o número de iterações para obtenção da solução passa a ser menor ao adotar essa estratégia.

Para ilustração, consideremos o sistema de equações lineares de duas variáveis ($x$ e $y$) abaixo:

\begin{matrix}
y-3x+1,9=0 \\
y+x^2-1,8=0
\end{matrix}
(1)

Em seguida, apresenta-se a solução do sistema (Figura 2) pelo método de Gauss e o método de Gauss-Seidel.

Figura 02 – Gráfico da solução do sistema de equações lineares (1).


Fonte: https://www.wolframalpha.com/

Método de Gauss

Pelo método de Gauss reescreve-se as equações em (1) como:

\begin{matrix}
\quad\, x=\dfrac{y}{3}+0,633 \\
\, y=1,8-x^2
\end{matrix}
(2)

Arbitrando como valores iniciais $ x^{(0)}=y^{(0)}=1 $ e substituindo em x e y no lado direito das equações em (2):

\begin{matrix}
\quad x^{(1)}=\dfrac{y^ {(0)}}{3}+0,633=0,966 \\
\, y^{(1)}=1,8-{(x^{(0)})}^2=0,8
\end{matrix}
(3)

As sucessivas iterações para x e y podem ser descritas de forma mais geral por:

\begin{matrix}
x^{(i+1)}=\dfrac{y^ {(i)}}{3}+0,633 \\
\, y^{(i+1)}=1,8-{(x^{(i)})}^2
\end{matrix}
(4)

onde:

  • o índice $ ^{(i+1)} $ significa o valor computado na iteração atual;
  • o índice $ ^{(i)} $ significa o valor na iteração anterior.

Considerando o critério de parada:

max $ \left(
\left| x^{(i+1)}-x^{(i)} \right|
;
\left| y^{(i+1)}-y^{(i)} \right|
\right) < $ precisão

Número de iterações < Número Máximo de Iterações
(5)

Adotando-se uma precisão, $ \epsilon $= 1e-6, e um número máximo de iterações, $ N $=1e3, temos que, após 50 iterações, os resultados convergem para valores muito próximos à solução exata:

$ \begin{matrix} x=0,939057 \\ y=0,918171 \end{matrix} $(6)

OBS.: valores iniciais escolhidos à revelia podem levar à divergência da solução como, por exemplo, para este problema, $ x^{(0)}=y^{(0)}=10 $. Assim, orienta-se ao estudo e compreensão da natureza do problema representado para escolha assertiva de seus valores iniciais.

Método de Gauss-Seidel

  • Para computar $ x^{(i+1)} $ do sistema (4) substitui-se a variável $ y^{(i)} $;
  • Contudo, para computar $ y^{(i+1)} $ do sistema (4), substitui-se a variável $ x^{(i)} $ por seu valor atual $ x^{(i+1)} $.

Assim, o algoritmo para o método de Gauss-Seidel pode ser escrito como:

00) Entrar com valor inicial para y: $ y^{(0)}=1 $

01) Calcular iteração para $x$:

$ x^{(i+1)}=\dfrac{y^ {(i)}}{3}+0,633 $(7)

02) Calcular iteração para $y$ com $x$ atual:

$ y^{(i+1)}=1,8-{(x^{(i+1)})}^2 $(8)

03) Atualiza $y$:

$ y^{(i)}=y^{(i+1)} $(9)

04) Executa-se iterativamente os processos de 01 ao 03 até o critério de parada (5) ser alcançado.

Nesse caso, novamente com a precisão, $ \epsilon $= 1e-6, e um número máximo de iterações, $ N $=1e3, temos que, após 27 iterações, os resultados convergem para valores muito próximos à solução exata obtida em (6). Reduzindo-se em incríveis 46% o número de iterações necessárias para convergência neste problema.

Referências

  • J. J. Grainger and W.D. Stevenson Jr. Power Systems Analysis. McGraw-Hill, 1994.
  • J. D. Glover, M. S. Sarma and T. J. Overbye. Power Systems Analysis and Design, 4th Edition, Thomson, 2008.
  • A. R. Bergen and V. Vitta. Power Systems Analysis, 2nd Edition, Prentice Hall, 2000.
  • Prabha Kundur. Power System Stability and Control. McGraw-Hill, 1994.
  • GÓMEZ-EXPÓSITO, A., CONJETO, A. J., CAÑIZARES, C., Sistemas de Energia Elétrica – Análise e Operação, LTC, Rio de Janeiro, 2011.