Você está na página 1de 23

UNIVERSIDADE FEDERAL DE ITAJUBÁ

INSTITUTO DE SISTEMAS ELÉTRICOS E ENERGIA

Solução do Problema de Fluxo de Potência no Plano Complexo


Via Métodos de Gradiente Conjugados

André Soares da Silva


Otto Naves Monte Raso

Itajubá, Setembro de 2019


UNIFEI - ISEE Trabalho Final de Graduação

so

Conjugados

Monografiaomo parte dos reqa.

Or

2019

ii
UNIFEI - ISEE Trabalho Final de Graduação

Agradecimentos

”À Deus e à famı́lia em seu conceito mais extenso possı́vel”

iii
UNIFEI - ISEE Trabalho Final de Graduação

Resumo
A literatura técnica em análise numérica oferta várias alternativas de métodos ite-
rativos para a solução de problemas de otimização não linear aplicados à industria do
setor de energia. No entanto, em se tratando de métodos iterativos aplicados ao fluxo de
potência não linear, o método iterativo de Newton-Raphson e suas variações são quase
uma unanimidade. A proposta de trabalho dessa tese de conclusão de curso tem por
objetivo investigar o desempenho dos Métodos de Gradiente Conjugado não lineares em
sua aplicação à problemas de fluxo de potência no entanto, estes métodos serão imple-
mentados no domı́nio complexo por meio do uso do cálculo de Wirtinger e a extensão das
séries de Taylor ao domı́nio complexo. Como principais motivações para essa abordagem
temos que os métodos de gradiente conjugado são de primeira ordem e não necessitam da
fatoração da matriz jacobiana como se faz no tradicional método de Newton e outros, re-
duzindo desta forma o esforço computacional necessário para se obter a solução iterativa,
ainda, a implementação dos métodos de gradiente conjugado no domı́nio complexo traz
uma outra vantagem, pois nesse caso a direção de busca do máximo ou mı́nimo da função
objetivo ou custo é previamente conhecida, consequentemente o problema de otimização
reduz-se apenas à calibração da magnitude da correção das variáveis de estado em cada
iteração.

Palavras chave: Fluxo de Potência, Gradiente Conjugado, Wirtinger, Newton-Raphson,


Plano complexo.

iv
UNIFEI - ISEE Trabalho Final de Graduação

Abstract
The technical literature in numerical analysis offers several alternatives of iterative
methods for solving nonlinear optimization problems applied to the industry power. Howe-
ver, in the case of iterative methods applied to nonlinear power flow, Newton-Raphson’s
iterative method and its variations are almost unanimity. The purpose of this work is to
investigate the performance of nonlinear conjugate gradient methods in their application
to power flow problems. However, these methods will be implemented in the complex do-
main using the Wirtinger calculus and the extension of the Taylor series to the complex
domain. As the main motivations for this approach we have that the conjugate gradient
methods are first order and do not need the Jacobian matrix factorization as it is done
in the traditional method of Newton and others, thus reducing the computational effort
required to obtain the iterative solution, yet the implementation of the conjugate gradient
methods in the complex domain brings another advantage because, in this case the direc-
tion of search of the maximum or minimum of the objective function or cost is previously
known, consequently the optimization problem is reduced only to the calibration of the
magnitude of the correction of the state variables in each iteration.

Key words: Power Flow,Gradient Conjugate, Newton-Raphson, Wirtinger, Complex


Domain.

v
UNIFEI - ISEE Trabalho Final de Graduação

Lista de Figuras

vi
UNIFEI - ISEE Trabalho Final de Graduação

Lista de Tabelas

vii
UNIFEI - ISEE Trabalho Final de Graduação

Sumário
0.1 Solução Iterativa - Algoritmo de Newton-Raphson . . . . . . . . . . . . . . 11

0.2 Métodos de Busca Linear Descendente . . . . . . . . . . . . . . . . . . . . 12

0.2.1 Métodos de Busca Linear Descendente de Primeira Ordem . . . . . 13

0.2.2 Condições de Melhoria de Convergência . . . . . . . . . . . . . . . . 14

0.2.3 Método de Gradientes Conjugados (CG) . . . . . . . . . . . . . . . 15

0.2.4 Direções Mutuamente Conjugadas . . . . . . . . . . . . . . . . . . . 16

0.2.5 Direções de Fletcher-Reeves . . . . . . . . . . . . . . . . . . . . . . 16

0.2.6 Método do Gradiente Bi-Conjugado (BiCG) . . . . . . . . . . . . . 17

0.3 Número de Condição e Convergência do CBiCG . . . . . . . . . . . . . . . 19

1 Precondicionadores 20

2 Efeito da Ordenação 21

2.1 CG em Domı́nio Complexo 3 Barras . . . . . . . . . . . . . . . . . . . . . . 22

3 Conclusão 24

Referências Bibliográficas 25

viii
UNIFEI - ISEE Trabalho Final de Graduação

0.1 Solução Iterativa - Algoritmo de Newton-Raphson

Sendo x o vetor de variáveis de estado, e M o vetor de mismatches, o objetivo do


algoritmo é calcular x de forma que satisfaça

M (x) = 0. (1)

Segue-se que a linearização de (1) é dada por

M x(ν−1) + J(x(ν−1) ) ∆x(ν) = 0,



(2)

e
−1
x(ν) = x(ν−1) − J(ν−1) M x(ν−1) ,
 
(3)

ou
−1
∆x(ν) = − J(ν−1) M x(ν−1) ,
 
(4)

Onde J é a matriz Jacobiana. Então, a equação atualizada é dada por

x(ν) = x(ν−1) + ∆x(ν) . (5)

Sendo o critério de convergência assumido dado por

∆x ≤ tol (≈ 10−4 ).
(ν)

(6)

Onde k·k∞ é definido como a norma infinita e ν é o número de iterações.

Sendo a barra slack excluı́da, temos que:

Tanto o vetor de mismatch quanto o vetor de variáveis de estado variam de acordo


com o sistema a ser modelado. Para o domı́nio real, umas das formas que o vetor das
variáveis de estado pode ser representado é

x = [θ1 , θ2 , . . . , θN −1 , |V1 | , |V2 | , . . . , |VN −1 | , |akm1 | , . . . , |akmL | , φ1 , . . . , φJ ]T , (7)

11
UNIFEI - ISEE Trabalho Final de Graduação

e o vetor mismatch é

M (x) = [∆P1 , ∆P2 , . . . , ∆PN −1 , ∆Q1 , ∆Q2 , . . . , ∆QN −1 , ∆Pkm1 , . . . , ∆PkmL ]T . (8)

Para o domı́nio complexo, temos que o vetor das variáveis de estado é dado por

x = xc = [V1 , V2 , . . . , VN −1 , akm1 , . . . , akmL , V1∗ , V2∗ , . . . , VN∗ −1 , a∗km1 , . . . , a∗kmL ]T , (9)

e o vetor mismatch é

M (xc ) = [M1 , M2 , . . . , MN −1 , Ekg1 , . . . , EkgP , Mkm1 , . . . , MkmJ , M1∗ , M2∗ , . . . , MN∗ −1 ]T .


(10)

Onde N é o número de barras, P o número de barras com tensão controlada, L o


número de transformadores e J o número de transformadores defasadores.

0.2 Métodos de Busca Linear Descendente

Nos últimos 40 anos, muitos algoritmos poderosos de busca direta foram desenvolvi-
dos para a minimização irrestrita de funções gerais. Esses algoritmos exigem uma esti-
mativa inicial para o ponto ótimo, denotado por x0 . Com o ponto inicial estimado esses
algoritmos geram uma sequência de estimativas x0 , x1 , x2 , x3 ..., onde a cada ponto se
procura uma direção de descida sob a qual se determina o próximo ponto e assim suces-
sivamente até que um ou mais critérios de parada sejam atingidos e o ponto de parada
xk ∼
= x∗ seja considerado o ponto ótimo do processo.
Básico para esses métodos é a seleção da direção ui+1 em cada iteração que garanta a
descida do ponto xi até o próximo ponto xi+1 nessa direção, portanto, é necessário que
em cada ponto a derivada direcional seja negativa, garantindo que o caminho de busca na
função objetivo f ou custo seja descendente:

df (xi )
|ui+1 = ∇T f xi ui+1 < 0

(11)

A estrutura geral dos métodos de busca linear descendente é dada abaixo:

1. Dado o ponto de partida x0 e as tolerâncias positivas 1 , 2 e 3 faz-se i = 1.

12
UNIFEI - ISEE Trabalho Final de Graduação

2. Seleciona-se a direção de descida inicial ui tomando uma derivada direcional negativa


da função objetivo.

3. Faz-se uma busca linear na direção de ui , ou seja:

min F (λ) = min f (xi−1 + λui ). (12)


λ λ

4. Faz-se xi = xi−1 + λi ui .

5. Teste de convergência:

Se kxi − xi−1 k < 1 , ou k∇f xi k < 2 , ou |f xi − f xi−1 | < 3


  
(13)

então pare e x∗ ∼
= xi , senão vai para o passo 6.

6. Faz-se i = i + 1 e volta ao passo 2.

A estrutura do método de busca linear descendente descrita pode ser vista na figura
??. Os métodos dentro dessa classe diferem de acordo com a maneira como as direções
de descida são escolhidas. Outra consideração importante na distinção de tais métodos
é a forma como resolvem o sub problema unidimensional da busca linear descrita no
passo 3 da estrutura geral do algoritmo. Existem vários algoritmos usados em otimização
que resolvem o problema da busca linear como por exemplo o Método da Interpolação
Quadrática de Powell, o Método da Secção de Ouro e outros.

0.2.1 Métodos de Busca Linear Descendente de Primeira Ordem

Métodos de busca linear descendente que fazem o uso do vetor gradiente ∇f (x) para
determinação da direção de busca a cada iteração, são chamados de métodos de primeira
ordem pois utilizam as derivadas parciais de primeira ordem da função objetivo f (x). O
mais simples e mais famoso dessa classe de algoritmos é o Método da Máxima Descida,
primeiramente proposto por Cauchy em 1847. Seu algoritmo pode ser descrito da seguinte
forma:
Dado o ponto de partida x0 faça para i = 1, 2, 3... até a convergência:

−∇f (xi−1 )
1. Faz-se ui = k∇f (xi−1 )k

13
UNIFEI - ISEE Trabalho Final de Graduação

2. Faz-se xi = xi−1 + λi ui onde λi é tal que:

min F (λ) = min f (xi−1 + λui ) (Busca Linear)


λ λ

Os critérios de parada podem ser os mesmos já citados anteriormente:

1. kxi − xi−1 k < 1

2. k∇f (xi )k < 2

3. |f (xi ) − f (xi−1 ) | < 3 .

Onde 1 , 2 e 3 são tolerâncias positivas dadas.

0.2.2 Condições de Melhoria de Convergência

Associadas aos custos computacionais dos métodos de busca linear descendentes e em


geral dos métodos de primeira ordem, condições de melhoria de performance e economia
foram desenvolvidas ao longo do tempo. Essas condições foram desenvolvidas na tentativa
de garantir que os passos utilizados nas direções de busca não sejam tão grandes que
possam provocar a divergência da sequência de busca nem tão pequenos que tornem o
progresso da busca insuficiente. As seguintes quatro condições foram largamente utilizadas
com sucesso na atualização dos passos em problemas de otimização irrestrita e por isso
merecem citação:

1. Performance:
f (xi−1 + λi ui ) ≤ f (xi−1 ) (14)

2. Armijo:
T
f (xi−1 + λi ui ) ≤ f (xi−1 ) + c1 λi ui ∇f (xi−1 ) (15)

3. Curvatura:
T T
c2 ui ∇f (xi−1 ) ≤ ui ∇f (xi−1 + λi ui ) (16)

4. Curvatura Forte:
T T
|ui ∇f (xi−1 + λi ui )| ≤ c3 |ui ∇f (xi−1 )| (17)

14
UNIFEI - ISEE Trabalho Final de Graduação

Onde c1 , c2 e c3 são parâmetros necessariamente não negativos que controlam o grau


sob o qual as condições citadas são reforçadas. A segunda e a terceira condições são
conhecidas como Condições de Wolfe enquanto que a segunda e quarta são conhecidas
como Condições Fortes de Wolfe.

0.2.3 Método de Gradientes Conjugados (CG)

Apesar de sua descida local ótima o método da Máxima Descida geralmente tem uma
pobre performance, sobretudo quando o problema de otimização considerado é mal esca-
lado, ou seja, quando as curvas de nı́vel da função objetivo são muito alongadas. Esse
problema no desempenho desse método se dá principalmente porque o algoritmo foça a
busca direções ortogonais à cada iteração como mostrado na figura ??. Embora na teoria
o método se prove convergente, na pratica ele pode não convergir de forma eficiente em
um número finito de iterações. Dependendo do ponto inicial este métodos pode divergir
até mesmo quando aplicado à funções quadráticas positiva definidas. Existe, entretanto,
uma classe de métodos de primeira ordem conhecidos como Métodos de Gradientes Con-
jugados, para os quais pode ser demonstrado que independente da escala do problema,
esse método converge em não mais que um predeterminado número n finito de iterações
quando aplicado à funções quadráticas da forma:

1
f (x) = xT Ax + bT x + c (18)
2

onde c ∈ R, b é um vetor real de dimensão n e A é uma matriz n × n real e simétrica. Essa


poderosa propriedade pode ser estendida à outras funções mais gerais não quadráticas pois
muitas funções podem se aproximar localmente por Séries de Taylor das condições dadas.

15
UNIFEI - ISEE Trabalho Final de Graduação

O método de gradientes conjugados começou a ser estudado na década de 50,


sendo inicialmente proposto como um método direto para resolver sistemas lineares, não
como um método iterativo. Muitos autores citam os trabalhos de HESTENES e STI-
EFEL como referência base ao que foi desenvolvido posteriormente. Segundo (SHEW-
CHUK, 1994) o Método de Gradientes Conjugados foi abandonado durante a década de
60, e apenas nos anos 70 foi retomado pela comunidade cientı́fica. O método é utilizado
principalmente para a resolução de problemas de grande porte, nos quais não é razoável
sequer fazer as n iterações que podem ser demandadas no caso quadrático estritamente
convexo.

0.2.4 Direções Mutuamente Conjugadas

Dois vetores u,v 6= 0 são ortogonais se o produto escalar uT v = (u, v) = 0. O conceito


de conjugação mutua pode ser definido de maneira semelhante. Dois vetores u,v 6= 0, são
definidos mutuamente conjugados com respeito a matriz simétrica positiva definida A se
uT Av = (u, Av) = 0. As direções conjugadas podem ser usadas na seleção das direções
de busca dos algoritmos de primeira ordem, evitando o problema das direções ortogonais
a cada iteração como ocorre no método da Máxima Descida porém como encontrar tais
direções mutuamente conjugadas? Uma maneira seria obter os autovetores da matriz
A porém resolver essa situação por si só representaria um problema computacional da
mesma dimensão que o problema original de otimização irrestrita que poderia ser resolvido
por qualquer outro método numérico. Para contornar essa situação e obter as direções
mutuamente conjugadas o método de Fletcher-Reeves foi proposto (Fletcher and Reeves
1964 ).

0.2.5 Direções de Fletcher-Reeves

As Direções de Fletcher-Reeves ui , i = 1, 2, ..., n, considerando uma matriz A simétrica


positiva definida, podem ser encontradas explicitamente da seguinte forma:

u1 = −∇f (x0 ) (19)

e para i = 1, 2, ..., n − 1
ui+1 = −∇f (xi ) + βi ui (20)

16
UNIFEI - ISEE Trabalho Final de Graduação

onde xi = xi−1 + λi ui , λi corresponde ao passo ótimo na interação i e:

k∇f (xi )k2


βi = (21)
k∇f (xi−1 )k2

A mudança de βi dá origem à outros métodos de busca como por exemplo as Direções
de Polak-Ribiere dadas por:

(∇f (xi ) − ∇f (xi−1 ))T ∇f (xi )


βi = (22)
k∇f (xi−1 )k2

Portanto a estrutura geral do algoritmo de gradiente conjugado de Fletcher-Reeves


para funções gerais pode se sintetizado nos seguintes passos:

Algoritmo 1: Algoritmo CG
1 Computa-se ∇f (x0 ) e faz-se u1 = −∇f (x0)
2 Para i = 1, 2, ..., n é feito:
3 Faz-se xi = xi−1 + λi ui onde λi é tal que:
4 min F (λ) = min f (xi−1 + λui ) (Busca Linear)
λ λ

5 Computa-se ∇f (xi )
6 Se o critério de convergência é satisfeito então pare e x∗ ∼
= xi , senão prossiga.
7 Se ≤ i ≤ n − 1, ui+1 = −∇f (xi ) + βi ui
8 Faz-se x0 = xn e volte ao passo 1.

0.2.6 Método do Gradiente Bi-Conjugado (BiCG)

O método dos gradientes conjugados (CG) descrito anteriormente, não é adequado para
solucionar os sistemas lineares de fluxo de carga, já que são aptos apenas para solucionar
sistemas simétricos e para que sejam aplicados aos casos não simétricos necessitam da
equação normal de gauss ou outras técnicas de simetrização, no entanto, quase todas elas
aumentam o número de condicionamento da matriz do sistema. A primeira tentativa para
solucionar este impasse é apresentada em (Lanczos, 1952), com o método conhecido como
Gradiente Bi-conjugado (BiCG) sendo posteriormente melhorado por (Fletcher, 1976). O
BiCG utiliza uma das formas do algoritmo Lanczos não-simétrico, conhecida como bior-
togonalização de Lanczos ou simplesmente Bi-Lanczos, para construir as bases ortogonais
do Subespaço de Krylov. Em resumo este algoritmo é uma variação do tradicional CG e

17
UNIFEI - ISEE Trabalho Final de Graduação

tem em adicional o cálculo da bi-direção e do bi-resı́duo. Como vantagem aos métodos de


gradientes tradicionais ele pode ser aplicado à matrizes não simétricas reais sem alteração
do número de condicionamento. A seguir apresentamos o algoritmo de BiCG:

Algoritmo 2: Algoritmo BiCG Prático


1 Escolha uma suposição inicial xo e faça x = xo
2 ro = (b − Axo ) (resı́duo inicial)
3 rˆo = ro∗ (resı́duo conjugado inicial)
4 po = ro (direção de busca inicial)
5 pˆo = p∗o (direção de busca inicial conjugada)
6 Sendo tol a tolerância para o resı́duo enquanto krk > tol faça:
rˆi T ri
7 αi = rˆi T Api

8 xi+1 = xi + αi pi
9 ri+1 = ri − αi Api
10 ˆ = rˆi − αi∗ AH p̂i
ri+1
r̂i+1 ri+1
11 βi = r̂i ri

12 pi+1 = ri+1 + βi pi
13 r̂ = r̂ + βi∗ rˆi

Apesar do BiCG se apresentar como uma extensão do CG à sistemas não simétricos ele
ainda exige que a matriz seja real. Para que possamos estender nosso algoritmos ao plano
complexo necessitamos de mais uma generalização à matrizes não simétricas e complexas
tornando o algoritmo de gradientes conjugados ideal para a aplicação à problemas de fluxo
de potência em regime permanente em domı́nio complexo. Felizmente encontramos tal
generalização em [?] no qual o autor batiza o algoritmo de Comp - BiCG. Por motivos de
simplificação chamaremos o algoritmo apenas de CBiCG (Complex Biconjugate Gradi-
ente). A dedução desse algoritmo se encontra em [?] e se constitui em uma generalização
dos dois métodos anteriores, CG e BiCG. A seguir descrevemos a rotina de cálculo do
CBiCG e veremos o quão ela é simples:

18
UNIFEI - ISEE Trabalho Final de Graduação

Algoritmo 3: Algoritmo CBiCG Prático


1 Escolha uma suposição inicial xo e faça x = xo
2 r = (b − Ax) (resı́duo inicial)
3 r̂ = r∗ (resı́duo conjugado inicial)
4 p = r (direção de busca inicial)
5 p̂ = p∗ (direção de busca inicial conjugada)
6 Sendo tol a tolerância para o resı́duo enquanto krk > tol faça:
r̂T r
7 α= r̂T Ap

8 x = x + αp
9 r = r − αAp
10 r̂ = r̂ − α∗ AH p̂
T
(−AH p̂) r
11 β= p̂T Ap

12 p = r + βp
13 p̂ = r̂ + β ∗ p̂

0.3 Número de Condição e Convergência do CBiCG

Em termos gerais, um sistema linear Ax = b é mal-condicionado se pequenas perturbações


na matriz A ou no vetor b causam grandes variações na solução. Nesse caso, devido aos
erros na representação e operações de pontos flutuantes, não devemos esperar uma solução
precisa de um método numérico! Além disso, num sistema linear mal-condicionado, o
resı́duo pode não revelar a natureza do erro! O condicionamento de uma matriz A é
definido em termos de sua norma e a norma de sua inversa. O número de condição
de uma matriz A, também chamado condicionamento de A, é definido por cond(A) =
kAkkA−1 k. Este número é de grande importância pois afeta fortemente a convergência
da maioria dos métodos iterativos e, em especı́fico, os métodos de gradientes conjugados
que apesar de sua versatilidade para operar tanto em ambiente sequencial quanto em
paralelo, possuem o grande problema caracterı́stico de instabilidade numérica perante
as diferentes propriedades do sistema linear o que faz com que esses métodos possam
apresentar uma convergência lenta ou ainda não convergir à solução exata. Isto acontece
em particular se a matriz dos coeficientes é mal condicionada, onde o fato de existir uma
grande diferença entre a magnitude dos autovalores origina erros de arredondamento por
conta da perda de alguns algarismos significativos no processo da aplicação dos métodos

19
UNIFEI - ISEE Trabalho Final de Graduação

de gradientes conjugados, porém, tanto a eficiência quanto a robustez desses métodos


podem ser muito aprimoradas usando pré-condicionamento. O pré condicionamento é
simplesmente transformar o sistema linear original em um equivalente, isto é, com a
mesma solução, porém com alguma melhoria nas caracterı́sticas matriciais do sistema
acarretando uma convergência mais rápida e mais robusta. Citando Saad em ?: “Em geral,
a confiabilidade dos métodos iterativos, ao lidar com várias aplicações, depende muito mais
da qualidade do pré-condicionador...”. Dessa forma vemos que a instabilidade numérica
dos métodos de gradientes conjugados, em especial do CBiCG, pode ser contornada ou
melhorada, com a utilização de um pré-condicionador conveniente, o que requer estudo
dos casos especı́ficos de aplicação.

1 Precondicionadores

Os métodos de gradientes conjugados fazem parte do subespaço de Krylov, eles não são
robustos no sentido de que não se pode garantir soluções aproximadas em tempo com-
putacional e armazenamento modestos (modesto com respeito a métodos alternativos
de solução). Para alguns métodos (por exemplo, GMRES), é óbvio que eles levam, em
aritmética exata, à solução exata em n iterações máximas, mas isso pode não ser muito
prático. Outros métodos estão restritos a classes especı́ficas de problemas (GC, MIN-
RES) ou sofrem de efeitos colaterais desagradáveis, como estagnação ou paradas (Bi-CG,
CBiCG, Bi-CGSTAB). Tal baixa convergência depende de maneira muito complicada
das propriedades espectrais (distribuição dos auto-valores, campo de valores, condição
do auto-sistema, etc.) e estas informações nem sempre estão disponı́veis em situações
práticas. A alternativa é, então, tentar encontrar algum operador K, de modo que K −1 A
tenha melhores propriedades espectrais (mas ainda desconhecidas). Isto é baseado na
observação de que para K = A, terı́amos o sistema ideal K −1 Ax = Ix = K −1 b e todos
os métodos do subespaço forneceriam a solução verdadeira em uma única etapa. A espe-
rança é que para K, em certo sentido próximo de A, um método de Krylov selecionado
(no nosso caso o CBiCG) e corretamente aplicado para, por exemplo, K −1 Ax = K −1 b,
precisaria de apenas algumas iterações para gerar uma aproximação suficientemente boa
para a solução do sistema dado Ax = b. Um operador usado para esse fim é chamado de
pré-condicionador para o matriz A.

20
UNIFEI - ISEE Trabalho Final de Graduação

O problema geral de encontrar um pré-condicionador eficiente é identificar um operador


linear K (o precondicionador) com propriedades tais que:

1. K é uma boa aproximação de A em algum sentido.

2. O custo computacional da construção de K é não proibitivo.

3. O sistema Ky = z é muito mais fácil de se resolver do que o sistema original.

A pesquisa sobre pré-condicionamento é uma área muito ampla e ativa porém ainda
com pouca estrutura. Não existe uma teoria geral sobre a qual possamos nos basear
com segurança para uma seleção eficiente do pré-condicionador. A principal dificuldade
é que o pré-condicionamento se baseia em aproximação e na ausência de informações
precisas sobre o comportamento da solução de um dado sistema Ax = b e das propriedades
espectrais de A, pode ocorrer que a convergência dependa criticamente da informação
que é descartada no processo de aproximação. Seleção e construção de um bom pré-
condicionador para uma dada classe de problemas é, portanto, na melhor das hipóteses,
um palpite educado.
Existe uma grande liberdade na definição e construção de pré-condicionadores para os
métodos do subespaço Krylov e essa é uma das razões pelas quais esses métodos são tão
populares e tão bem sucedidos. Observe que em todos os métodos de Krylov (CG, BiCG,
CBiCG e etc), nunca precisamos conhecer os elementos individuais de A e nem modificar
suas partes, necessita-se apenas de uma sub-rotina que gera, para um dado vetor y de
entrada, um vetor z de saı́da tal que matematicamente pode ser descrito como z = Ay e
esse é mais um atrativo dos algoritmos de gradientes conjugado.

2 Efeito da Ordenação

É sabido que a ordenação das variáveis pode ter um efeito significativo na convergência
dos métodos de gradientes conjugados como pode ser visto, por exemplo, no trabalho ?
ou [?] no qual os autores investigam os efeitos de várias estratégias de ordenação e par-
ticionamento no desempenho do algoritmo CG paralelo pré-condicionado. Já existe uma
considerável literatura sobre os efeitos da ordenação em problemas de diferenças finitas
sobretudo quando se aplica métodos de gradientes conjugados em sua forma paralelizada
pois uma ordenação especı́fica pode melhorar a performance da computação paralela ao

21
UNIFEI - ISEE Trabalho Final de Graduação

ordenar convenientemente as variáveis além de possibilitar a redução da quantidade de


fill-in’s e manter a estrutura de esparsidade. Em muitos casos, bons resultados foram
obtidos com ordenações baseadas em sistemas reduzidos como a ordenação diagonal, espi-
ral, red-black e outras. A tı́tulo de exemplo de ordenações, mostraremos a seguir algumas
ordenações aplicadas à matriz jacobiana computada no Flat-Start de um sistema forne-
cido pela Empresa de Pesquisa Energética (EPE) em seu site epe.gov.br e também do
sistema sul-sudeste reduzido equivalente de 2000 barras. O sistema da EPE trata-se da
configuração da rede elétrica representada nos dados de estudos da transmissão que são
atualizados a partir dos resultados dos estudos de expansão regionais (Relatórios R1),
dos empreendimentos de transmissão já licitados e daqueles já indicados para licitação,
das projeções de mercado e do plano de geração e dos requisitos de intercâmbios entre
subsistemas. A jacobiana foi calculada utilizando-se dos algoritmos de fluxo de potência
desenvolvidos neste trabalho de conclusão de curso.

1. Caso exemplo de 3 barras.

2. Casos do IEEE de 9, 14, 30, 57 e 118 barras.

3. Equivalentes do sistema brasileiro sul - sudeste reduzido de 730 e 2000 barras.

4. Casos do software MATPOWER de 300 e 1354 barras.

2.1 CG em Domı́nio Complexo 3 Barras

Foi fornecido pelo professor orientador deste trabalho um algoritmo de gradiente


conjugado em domı́nio complexo para o estudo de um caso fictı́cio de fluxo de potência de
3 barras. O código foi desenvolvido a partir do desenvolvimento do cálculo de Wirtinger
e dos métodos de gradientes conjugados já descritos nas seções anteriores, portanto foi
possı́vel mostrar a validade da rotina para esse pequeno problema proposto. A seguir
na figura ?? mostra-se os resultados de ângulos e tensões onde a coluna com tı́tulo NR
trata-se do algoritmo de Newton-Raphson no domı́nio complexo e a coluna com tı́tulo CG
trata-se do método de Fletcher-Reeves. Posteriormente nos casos maiores nos fixaremos
apenas nos resultados do método de CBiCG em domı́nio real pois este é o método mais
geral dos apresentados neste trabalho e pode ser utilizados nos dois domı́nios tanto para
matrizes simétricas quanto para não simétricas. As implementações e comparações mais

22
UNIFEI - ISEE Trabalho Final de Graduação

avançadas com o Newton Raphson implementado em domı́nio complexo ficará proposta


para trabalhos futuros.

23
UNIFEI - ISEE Trabalho Final de Graduação

3 Conclusão

A estruturação e modelagem do problema de fluxo de potência nos domı́nios real


e complexo permite a visualização da complexidade de cada caso. A implementação se
mostrou muito mais simples e poderosa no domı́nio complexo uma vez que utilizando o
cálculo de Wirtinger foi possı́vel desenvolver todos os algoritmos de forma direta e natu-
ral além de que as estruturas de aritmética de números complexos do software utilizado
estão otimizadas para tal fim. Todo o trabalho inicial de implementação dos algoritmos
em domı́nio real se mostrou complicado, extenso e difı́cil organização e manutenção à
medida que o algoritmo ia aumentando de dimensão e complexidade. Em se tratando do
plano complexo temos uma riqueza de operações naturais, como a rotação, que acontece
de forma intrı́nseca através da multiplicação de números nesse conjunto além de que toda
fundamentação teórica das equações do fluxo de potência em regime permanente reside
no domı́nio fasorial dos números complexos. Sobre os métodos dos gradientes conjugados
pudemos perceber que se constituem em métodos muito simples de serem implementados e
rápidos, utilizados por sua facilidade de vetorização, rapidez e aplicação em computação
paralela porém como todos os métodos iterativos, eles sofrem de uma grande influen-
cia das condições do sistema, sobretudo do número de condicionamento do sistema, por
isso são considerados algoritmos instáveis se não utilizados com outras técnicas de pré-
condicionamento. No entanto, mesmo em suas versões simples, sem qualquer tratamento
adicional, puderam ser usados em sistemas de médio porte razoavelmente condicionados.
Devido ao tempo reduzido deste trabalho de conclusão de curso, dada a complexidade do
problema abordado, não foi possı́vel mostrar a implementação de inúmeras possibilida-
des de pré-condicionadores, métodos de ordenação e de outras abordagens interessantes
como o fluxo de potência de segunda ordem, portanto para trabalhos futuros ainda há
uma gama de pontos a serem estudados e implementados que poderão ser capazes de
aumentar drasticamente a velocidade e robustez dos métodos expostos.

24
UNIFEI - ISEE Trabalho Final de Graduação

Referências

25