multiple link exchange for distribution network optimization · os algoritmos a um método...

87
Multiple Link Exchange for Distribution Network Optimization Pedro Miguel Nunes Aires Thesis to obtain the Master of Science Degree in Integrated Master Degree in Electrical and Computer Engineering Examination Committee Chairperson: Prof. Maria Eduarda de Sampaio Pinto de Almeida Pedro Supervisor: Prof. Luís António Fialho Marcelino Ferreira Member of the Committee: Prof. João José Esteves Santana October 2013

Upload: phamnguyet

Post on 09-Dec-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Multiple Link Exchange for Distribution Network

Optimization

Pedro Miguel Nunes Aires

Thesis to obtain the Master of Science Degree in

Integrated Master Degree in Electrical and Computer

Engineering

Examination Committee

Chairperson: Prof. Maria Eduarda de Sampaio Pinto de Almeida Pedro

Supervisor: Prof. Luís António Fialho Marcelino Ferreira

Member of the Committee: Prof. João José Esteves Santana

October 2013

ii

Tese realizada sob a orientação do professor:

Luís António Fialho Marcelino Ferreira

iii

Agradecimentos

Aos professores Luís António Fialho Marcelino Ferreira e Célia Maria Santos Cardoso de Jesus

pela ajuda, orientação e disponibilidade demonstrada durante todo o período de trabalho. Ao professor

Pedro Manuel Santos de Carvalho pelas sugestões e apoio prestado.

Aos meus pais, ao meu irmão e aos meus amigos, que sempre me apoiaram.

iv

Resumo

Este trabalho tem como objectivo o desenvolvimento de dois algoritmos para a optimização de

redes de distribuição de energia eléctrica, o Single Link Exchange e o Multiple Link Exchange, no

sentido de minimizar as perdas de potência activa.

Os algoritmos foram desenvolvidos com recurso à ferramenta computacional MATLAB e

testados em diversas redes. De forma a testar os limites dos algoritmos, aumentaram-se as resistências

de alguns ramos das redes e geraram-se impedâncias aleatórias nas redes. No final compararam-se

os algoritmos a um método iterativo e a outros algoritmos de optimização de redes de distribuição.

A partir dos resultados obtidos, chegou-se à conclusão que, ao contrário do Single Link

Exchange, o Multiple Link Exchange é muito exigente computacionalmente, o que leva a um enorme

tempo de execução, mas raramente fica preso numa solução local optimum.

Palavras-chave

Reconfiguração de redes de distribuição, Perdas mínimas de potência, Single Link Exchange, Multiple

Link Exchange

v

Abstract

This work aims to develop two algorithms for the electric power distribution networks

optimization, Single Link Exchange and Multiple Link Exchange, in order to minimize the real power

losses.

These algorithms were developed in MATLAB and tested on several networks. Towards testing

the limits of the algorithms, the resistance of some branches was increased and random values of

impedance were generated for the networks. Then, the algorithms were compared to an iterative method

and to other distribution networks optimization algorithms.

The obtained results showed that, unlike the Single Link Exchange, the Multiple Link Exchange

is computationally very demanding, which leads to a huge runtime, but it rarely gets trapped in a local

optimum solution.

.

Keywords

Distribution networks reconfiguration, Minimal power losses, Single Link Exchange, Multiple Link

Exchange

vi

Índice

Agradecimentos ................................................................................................................................... iii

Resumo.................................................................................................................................................. iv

Abstract .................................................................................................................................................. v

Índice de figuras ................................................................................................................................. viii

Índice de tabelas ................................................................................................................................... ix

Lista de abreviações ............................................................................................................................. x

Lista de símbolos ................................................................................................................................. xi

1. Introdução .......................................................................................................................................... 1

1.1. Redes de distribuição ................................................................................................................... 1

1.2. Objectivos do trabalho .................................................................................................................. 2

1.3. Organização dos capítulos ........................................................................................................... 3

2. Trânsito de Energia ........................................................................................................................... 4

2.1. Equações do trânsito de energia .................................................................................................. 4

2.2. Método de Newton-Raphson ........................................................................................................ 6

2.3. Aplicação do Método Newton-Raphson ao trânsito de energia ................................................... 7

2.4. Processo iterativo ......................................................................................................................... 8

2.5. Perdas de potência activa .......................................................................................................... 10

3. Reconfiguração de redes de distribuição ..................................................................................... 11

3.1. Single Link Exchange ................................................................................................................. 12

3.1.1. Estrutura do algoritmo ......................................................................................................... 12

3.1.2. Redes de teste .................................................................................................................... 15

3.1.2.1. Rede de 8 barramentos ......................................................................................... 15

3.1.2.2. Rede de 16 barramentos ....................................................................................... 17

3.1.2.3. Rede de 33 barramentos ....................................................................................... 20

3.1.2.4. Rede de 94 barramentos ....................................................................................... 23

3.2. Multiple Link Exchange............................................................................................................... 24

3.2.1. Estrutura do algoritmo ......................................................................................................... 24

3.2.2. Redes de teste .................................................................................................................... 28

3.2.2.1. Rede de 8 barramentos ......................................................................................... 28

vii

3.2.2.2. Rede de 16 barramentos ....................................................................................... 29

3.2.2.3. Rede de 33 barramentos ....................................................................................... 31

3.2.2.4. Rede de 94 barramentos ....................................................................................... 32

3.3. Comparação de resultados ........................................................................................................ 33

4. Aumento de resistências nas redes .............................................................................................. 35

4.1. Rede de 8 barramentos .............................................................................................................. 35

4.2. Rede de 16 barramentos ............................................................................................................ 38

4.3. Rede de 16 barramentos pura ................................................................................................... 41

4.4. Comparação de resultados ........................................................................................................ 43

5. Impedâncias aleatórias das redes ................................................................................................. 44

5.1. Teste 1 ........................................................................................................................................ 44

5.2. Teste 2 ........................................................................................................................................ 45

5.3. Comparação de resultados ........................................................................................................ 46

6. Analogia do método de Jacobi-Gauss-Seidel aos algoritmos ................................................... 47

6.1. Descrição do método .................................................................................................................. 47

6.2. Comparação aos algoritmos ...................................................................................................... 48

7. Comparação com outros algoritmos ............................................................................................. 52

7.1. Rede de 33 barramentos ............................................................................................................ 53

7.2. Rede de 94 barramentos ............................................................................................................ 53

7.3. Rede de 135 barramentos .......................................................................................................... 54

7.4. Comparação de resultados ........................................................................................................ 55

8. Conclusões e Trabalhos Futuros .................................................................................................. 56

Referências Bibliográficas ................................................................................................................. 57

Anexos .................................................................................................................................................. 58

A. Dados da rede de 94 barramentos ............................................................................................... 58

B. Dados da rede de 135 barramentos ............................................................................................. 60

C. Código em MATLAB ..................................................................................................................... 63

viii

Índice de figuras

Figura 1.1 - Esquema de um sistema de energia eléctrica ..................................................................... 1

Figura 1.2 - Rede radial ........................................................................................................................... 2

Figura 2.1 - Esquema unifilar do barramento genérico ......................................................................... 4

Figura 2.2 - Esquema monofásico equivalente da linha entre os barramentos e .............................. 5

Figura 2.3 - Fluxograma do processo iterativo para o método de Newton-Raphson ............................. 9

Figura 3.1 - Sistema de distribuição radial ............................................................................................ 11

Figura 3.2 - Fluxograma do algoritmo SLE ........................................................................................... 14

Figura 3.3 - Rede de 8 barramentos ..................................................................................................... 15

Figura 3.4 - Rede de 8 barramentos após reconfiguração ................................................................... 16

Figura 3.5 - Rede de 16 barramentos ................................................................................................... 17

Figura 3.6 - Rede de 16 barramentos após reconfiguração ................................................................. 19

Figura 3.7 - Rede de 33 barramentos ................................................................................................... 20

Figura 3.8 - Rede de 33 barramentos após reconfiguração ................................................................. 22

Figura 3.9 - Rede de 94 barramentos ................................................................................................... 23

Figura 3.10 - Fluxograma do algoritmo MLE ......................................................................................... 27

Figura 3.11 - Rede de 8 barramentos ................................................................................................... 28

Figura 3.12 - Rede de 16 barramentos ................................................................................................. 29

Figura 3.13 - Rede de 33 barramentos ................................................................................................. 31

Figura 3.14 - Rede de 94 barramentos ................................................................................................. 32

Figura 3.15 - Comparação dos algoritmos quanto à redução de perdas nas redes ............................. 33

Figura 3.16 - Comparação dos algoritmos quanto ao número de trocas efectuadas ........................... 34

Figura 3.17 - Comparação dos algoritmos quanto ao número de trânsitos de energia efectuados ..... 34

Figura 4.1 - Rede de 8 barramentos ..................................................................................................... 35

Figura 4.2 - Aumento da resistência dos ramos 1-2 e 2-6 na rede de 8 barramentos ......................... 35

Figura 4.3 - Aumento da resistência dos ramos 1-2 e 5-1, 2-6 e 4-5 na rede de 8 barramentos ......... 36

Figura 4.4 - Aproximação do aumento da resistência dos ramos 1-2,5-1 na rede de 8 barramentos .. 36

Figura 4.5 - Aumento da resistência em todos os ramos na rede de 8 barramentos ........................... 37

Figura 4.6 - Rede de 16 barramentos ................................................................................................... 38

Figura 4.7 - Aumento da resistência dos ramos 1-8 e 8-9 na rede de 16 barramentos ....................... 38

Figura 4.8 - Aumento da resistência dos ramos 1-4 e 1-8, 1-4 e 1-13, 1-8 e 1-13 na rede de 16

barramentos .......................................................................................................................................... 39

Figura 4.9 - Aumento da resistência dos ramos 4-6 e 9-11, 13-15 e 8-10 na rede de 16 barramentos40

Figura 4.10- Aumento da resistência em todos os ramos na rede de 16 barramentos ........................ 40

Figura 4.11 - Aumento da resistência dos ramos 1-4 e 1-8, 1-4 e 1-13, 1-8 e 1-13 na rede de 16

barramentos pura .................................................................................................................................. 41

Figura 4.12 - Aumento da resistência dos ramos 4-6 e 9-11, 13-15 e 8-10 na rede de 16 barramentos

pura ........................................................................................................................................................ 42

Figura 4.13 - Aumento da resistência em todos os ramos na rede de 16 barramentos pura ............... 42

ix

Índice de tabelas

Tabela 3.1 - Potências de carga da rede de 8 barramentos ................................................................. 15

Tabela 3.2 - Resistência e reactância dos ramos da rede de 8 barramentos ...................................... 15

Tabela 3.3 - Dados da rede de 8 barramentos original e após a reconfiguração com o SLE .............. 16

Tabela 3.4 - Dados da rede de 16 barramentos ................................................................................... 17

Tabela 3.5 - Passos seguidos pelo SLE na rede de 16 barramentos ................................................... 18

Tabela 3.6 - Dados da rede de 16 barramentos original e após a reconfiguração com o SLE ............ 19

Tabela 3.7 - Dados da rede de 33 barramentos ................................................................................... 21

Tabela 3.8 - Dados da rede de 33 barramentos original e após a reconfiguração com o SLE ............ 21

Tabela 3.9 - Dados da rede de 94 barramentos original e após a reconfiguração com o SLE ............ 23

Tabela 3.10 - Dados da rede de 8 barramentos original e após a reconfiguração com o MLE ........... 28

Tabela 3.11 - Dados da rede de 16 barramentos original e após a reconfiguração com o MLE ......... 29

Tabela 3.12 - Passos seguidos pelo MLE na rede de 16 barramentos ................................................ 30

Tabela 3.13 - Dados da rede de 33 barramentos original e após a reconfiguração com o MLE ......... 31

Tabela 3.14 - Dados da rede de 94 barramentos original e após a reconfiguração com o MLE ......... 32

Tabela 5.1 – Impedâncias dos ramos da rede de 8 barramentos em p.u. no teste 1 .......................... 44

Tabela 5.2 - Impedâncias dos ramos a inserir em p.u. no teste 1 ........................................................ 44

Tabela 5.3 - Comparação dos resultados obtidos no teste 1 ................................................................ 45

Tabela 5.4 - Impedâncias dos ramos da rede de 8 barramentos em p.u. no teste 2 ........................... 45

Tabela 5.5 - Impedâncias dos ramos a inserir em p.u. no teste 2 ........................................................ 46

Tabela 5.6 - Comparação dos resultados obtidos no teste 2 ................................................................ 46

Tabela 6.1 - Teste aos métodos de Jacobi-Gauss-Seidel .................................................................... 50

Tabela 7.1 - Comparação com outros algoritmos na rede de 33 barramentos .................................... 53

Tabela 7.2 - Comparação com outros algoritmos na rede de 94 barramentos .................................... 53

Tabela 7.3 - Comparação com outros algoritmos na rede de 135 barramentos .................................. 54

Tabela A.1 - Dados da rede de 94 barramentos ................................................................................... 59

Tabela A.2 - Dados da rede de 135 barramentos ................................................................................. 62

x

Lista de abreviações

SLE – Single Link Exchange

MLE – Multiple Link Exchange

xi

Lista de símbolos

θ Argumento da tensão

∆P Erro de fecho da potência activa

∆Q Erro de fecho da potência reactiva

[J] Matriz Jacobiano

B Susceptância

G Condutância

I Amplitude da corrente

p.u. Por unidade

P Potência activa

PC Potência activa de carga

PG Potência activa gerada

PL Perdas de potência activa

Q Potência reactiva

QC Potência reactiva de carga

QG Potência reactiva gerada

R Resistência

S Potência complexa

SC Potência complexa de carga

SG Potência complexa gerada

SL Perdas de potência complexa

V Tensão complexa

V Amplitude da tensão (valor eficaz)

X Reactância

YT Admitância transversal de uma linha

yij Elemento da matriz de admitâncias nodais

Z Impedância complexa

ZL Impedância longitudinal de uma linha

1

1. Introdução

1.1. Redes de distribuição

As redes de distribuição fazem parte de um sistema de energia eléctrica, o qual compreende a

produção, transporte, distribuição e consumo de energia eléctrica. A produção desta energia é

maioritariamente oriunda de centrais térmicas ou hídricas, de grandes dimensões, que se encontram

afastadas de locais de grande consumo, devido à indisponibilidade de recursos energéticos primários

e de infraestruturas nestes locais. De seguida, esta energia entra na rede de transporte, composta por

linhas em muito alta tensão, sendo os níveis de tensão usados em Portugal de 150, 220 e 400 kV.

Através de transformadores, a energia eléctrica chega à rede de distribuição, responsável pela sua

condução aos consumidores. Na Figura 1.1 está representado o esquema de um sistema de energia

eléctrica.

Figura 1.1 ‐ Esquema de um sistema de energia eléctrica

Devido ao papel fulcral de um sistema de energia eléctrica, este deve cumprir alguns requisitos,

como a disponibilidade de energia eléctrica em qualquer lugar onde seja requerida, a qualidade desta

energia (tensões dentro dos limites impostos, frequência constante, forma de onda sinusoidal) e a

preocupação ambiental na produção da energia eléctrica.

2

Quanto às redes em estudo, as redes de distribuição, estas são operadas em Portugal pela

EDP Distribuição e são constituídas por linhas aéreas e cabos subterrâneos de alta (60 kV), média

(essencialmente a 30, 15 e 10 kV) e baixa tensão (400 V), subestações, postos de transformação e

outros equipamentos acessórios necessários à sua exploração. Os equipamentos ligados à iluminação

pública também fazem parte das redes de distribuição.

Como se pode verificar pela Figura 1.1, a energia produzida por fontes renováveis (solar, mini-

hídrica e eólica) ou cogeração é entregue à rede de distribuição.

Em relação à estrutura topológica, estas redes são maioritariamente radiais. Uma rede radial é

uma rede composta por linhas que se ramificam a partir de um ponto de alimentação, sem nunca mais

se encontrarem, como mostra a Figura 1.2. Este tipo de redes é caracterizado por menor fiabilidade e

menor custo que as redes malhadas e o trânsito de energia é feito do ponto de alimentação para a

carga.

Figura 1.2 - Rede radial

1.2. Objectivos do trabalho

O principal objectivo deste trabalho é o desenvolvimento de dois algoritmos para a optimização

de redes de distribuição, denominados Single Link Exchange e Multiple Link Exchange. Estes

algoritmos são desenvolvidos no sentido de minimizar as perdas de potência activa nas redes de

distribuição.

Outro objectivo deste trabalho é comparar os algoritmos desenvolvidos e verificar as suas

limitações.

3

1.3. Organização dos capítulos

Neste 1º capítulo foram introduzidas as redes de distribuição e apresentadas as suas

características.

No 2º capítulo é descrito o método de trânsito de energia utilizado (Newton-Raphson), bem

como as formas de calcular as perdas de potência activa.

No 3º capítulo descrevem-se os algoritmos utilizados na reconfiguração de redes de

distribuição: SLE e MLE. Os algoritmos são testados em várias redes e no final comparam-se os

resultados obtidos.

O 4º capítulo consiste na observação do comportamento dos algoritmos SLE e MLE quando

são aumentadas as resistências de alguns ramos das redes.

No 5º capítulo são geradas impedâncias aleatórias nas redes, para verificar, mais uma vez, o

comportamento dos algoritmos.

O 6º capítulo faz uma analogia entre o método de Jacobi-Gauss-Seideil e os algoritmos em

estudo.

No 7º capítulo são comparados os resultados obtidos através dos algoritmos SLE e MLE com

outros algoritmos de reconfiguração de redes de distribuição.

No 8º capítulo são apresentadas as conclusões do trabalho.

4

2. Trânsito de Energia

Além do trânsito de energia inicial, em cada reconfiguração da rede é necessária a realização

de um outro trânsito, como o intuito de calcular as perdas da nova configuração da rede. Dado que as

equações do trânsito de energia são não-lineares, é necessário recorrer a um método iterativo. O

método escolhido foi o de Newton-Raphson, já que este, face aos métodos de Gauss-Seidel e do

Desacoplamento, tem uma convergência mais rápida que o primeiro, é mais robusto que o segundo,

ou seja, tem uma maior capacidade de chegar a uma solução correcta e é considerado o método de

referência na solução do trânsito de energia.

2.1. Equações do trânsito de energia

Considerando-se o barramento genérico , do sistema da Figura 2.1, a potência injectada ,

definida como a diferença entre a potência gerada e consumida no barramento , é dada por:

(1)

Figura 2.1 ‐ Esquema unifilar do barramento genérico

Aplicando a lei de Kirchhoff ao barramento , do esquema equivalente em da linha que liga

os nós e , Figura 2.2, obtém-se a equação:

∗ 21 1

(2)

Ou:

∗ (3)

5

Onde:

21

(4)

1

(5)

Figura 2.2 ‐ Esquema monofásico equivalente da linha entre os barramentos e

Da equação (3) obtém-se:

∗ (6)

Substituindo e na equação (6), para um sistema com

barramentos, obtêm-se 2 equações reais, em coordenadas polares das tensões. Para o barramento

, estas equações são:

cos sin (7)

sin cos (8)

As redes que serão utilizadas neste trabalho não possuem barramentos do tipo PV, ou

barramentos de tensão controlada. Este tipo de barramentos está normalmente associado a geração,

e, nas redes de distribuição estudadas, existe apenas um barramento onde ocorre injecção de potência,

6

sendo este definido como barramento de referência/balanço. Os restantes barramentos são, portanto,

do tipo PQ, ou seja, de carga.

As equações do trânsito de energia podem ser escritas na forma matricial:

, , 0 (9)

o que permite classificar as variáveis das equações em variáveis de estado, controlo ou

perturbação. Ao resolver o trânsito de energia, as variáveis de estado são calculadas e as variáveis de

controlo e perturbação especificadas. As variáveis de estado ou dependentes são o módulo e

argumento da tensão nos barramentos PQ e as potências activa e reactiva no barramento de balanço,

as variáveis de controlo ou independentes são o módulo e argumento da tensão no barramento de

balanço e as variáveis de perturbação ou incontroláveis são as cargas activas e reactivas, impostas

pelos consumidores.

2.2. Método de Newton-Raphson

Considerando o sistema de equações

, … ,⋮

, … ,⋮

, … ,

(10)

Ou na forma matricial:

(11)

Se se tomar um valor inicial das incógnitas , tem-se:

∆ (12)

Ao linearizar a função em torno de , obtém-se:

∆ (13)

Ou

∆ ∆ (14)

7

A matriz Jacobiano de dimensões , é dada por:

⋮ ⋱ ⋮

(15)

∆ e ∆ são vectores de n elementos:

∆∆⋮

∆ (16)

∆ ⋮ (17)

Na iteração , a equação (14) fica:

∆ ∆ (18)

Em ordem a ∆ tem-se:

∆ ∆ (19)

Para se obter uma melhor aproximação da solução final, adiciona-se o acréscimo ∆ ao

vector de incógnitas da iteração anterior:

∆ (20)

2.3. Aplicação do Método Newton-Raphson ao trânsito de energia

As equações (7) e (8) correspondem às potências activas e reactivas injectadas, em função

dos módulos e argumentos das tensões (com o barramento 1 de balanço):

, … , , , … , (21) , … , , , … , (22)

8

Com pequenas variações de e , tem-se:

∆ ∆ ⋯ ∆

∆⋯

∆ (23)

∆ ∆ ⋯ ∆∆

⋯∆

(24)

As equações (23) e (24) podem ser compactadas na forma:

∆∆

∆∆ / (25)

Em que é o jacobiano de dimensões 2 1 2 1 e é dado por:

(26)

Para :

sin cos (27)

cos sin (28)

Para :

(29) (30) (31) (32)

2.4. Processo iterativo

O processo iterativo do cálculo de tensões abrange os seguintes passos:

1. Estimar os valores iniciais dos módulos e argumentos das tensões nos barramentos.

2. Calcular os erros de fecho ∆ e ∆ entre os valores especificados e calculados pelas

equações (7) e (8):

9

∆ (33)

∆ (34)

3. Calcular o jacobiano .

4. Calcular os acréscimos ∆ e ∆ , resolvendo o sistema de equações (25).

5. Actualizar os valores do módulo e argumento da tensão das barras PQ:

∆ (35) ∆ (36)

6. Repetir os passos 2 a 5 até à convergência, isto é, quando os valores absolutos dos erros

de fecho forem inferiores a uma tolerância :

|∆ |, |∆ | (37)

De seguida apresenta-se um fluxograma do processo iterativo:

Figura 2.3 ‐ Fluxograma do processo iterativo para o método de Newton‐Raphson

10

2.5. Perdas de potência activa

Depois de achada uma solução para o trânsito de energia, através do método acima descrito,

é altura de calcular o factor de optimização em estudo: as perdas de potência activa. Duas formas de

as calcular são:

(38)

1∗

21∗

∗ , (39)

Enquanto na primeira equação é necessária a potência activa no barramento de balanço, na

segunda equação são necessários os módulos e argumentos das tensões dos barramentos

constituintes da rede, todas variáveis de estado calculadas pelo trânsito de energia.

11

3. Reconfiguração de redes de distribuição

A reconfiguração de redes de distribuição é definida por uma mudança na estrutura da rede,

como consequência do fecho e abertura de ramos. Os principais objectivos desta técnica são assegurar

o restauro de serviço após contingências, reduzir perdas e equilibrar as cargas no sistema, com a

condição de manter a rede radial.

Dado que o objectivo desta dissertação é minimizar as perdas nas redes de distribuição,

podemos formular o problema como:

Minimizar ,

Sujeito a:

1, … ,Nº de ramos (40)

1, … ,Nº de barramentos (41)

Conectividade das cargas

Estrutura radial da rede

Onde representa as perdas de potência activa da rede, o módulo da corrente no ramo ,

o valor máximo de corrente que pode transitar no ramo , o módulo da tensão no barramento

e e os valores mínimo e máximo de tensão no barramento . Estes valores de tensão

limites foram considerados 0.9 p.u. e 1.1 p.u., de modo a obter um bom funcionamento da rede. A

conectividade das cargas prende-se com o facto de todas as cargas necessitarem de conexão à fonte

de alimentação.

Para melhor percepção do processo de reconfiguração de redes e das suas restrições,

apresenta-se a seguinte figura:

Figura 3.1 ‐ Sistema de distribuição radial

12

Por simplificação, os barramentos, como já havia sido referido, são do tipo PQ ou de carga, isto

é, as cargas têm elasticidade nula em relação à tensão, sendo constantes a potência activa e reactiva

absorvidas.

Na Figura 3.1, os ramos representam as linhas que transportam a corrente desta rede radial.

Alguns destes ramos têm interruptores, representados por rectângulos, os quais estão fechados e são

apelidados de sectionalizing switches. Quanto aos ramos a tracejado, estes representam as linhas com

interruptores abertos designados tie switches. A rede pode ser reconfigurada fechando um tie switch e

abrindo um sectionalizing switch. Este processo é denominado de branch exchange ou link exchange.

Quanto à restrição da estrutura radial da rede, apresenta-se o seguinte exemplo: fechando o

ramo 21, cria-se um loop constituído pelos ramos 1,2,3,21,7,6. Então, é necessário abrir um ramo com

um sectionalizing switch, de forma a restaurar a estrutura radial do sistema. Qualquer um dos

interruptores dos ramos 1,3 ou 6 pode ser aberto de forma a romper o loop.

Com o objectivo de minimizar as perdas de potência activa, foram criados dois algoritmos, em

linguagem MATLAB, que têm por base o branch exchange: o Single Link Exchange e o Multiple Link

Exchange.

3.1. Single Link Exchange

Tal como o nome indica, o SLE é um algoritmo que insere e remove ramos da rede um a um.

Nas redes estudadas, considerou-se que todos os ramos têm sectionalizing switches, isto é, todos os

ramos podem ser removidos, desde que as restrições sejam cumpridas.

A partir da configuração inicial, o algoritmo vai inserir um ramo na rede, encontrar o loop criado

pela inserção do mesmo e, se benéfico, isto é, se houver redução de perdas, remover um ramo desse

mesmo loop. O processo termina quando a configuração com menos perdas, ou óptima, for encontrada.

De notar que em cada reconfiguração é necessário realizar um trânsito de energia, para o cálculo das

perdas de potência activa.

3.1.1. Estrutura do algoritmo

O algoritmo SLE segue os seguintes passos:

1. Realiza um trânsito de energia, para calcular as perdas iniciais da rede.

2. Insere um ramo na rede, da lista de ramos a inserir.

3. Encontra o loop criado pela inserção do ramo.

4. Remove os ramos do loop um a um e calcula as perdas da rede após a remoção de cada ramo,

de modo a descobrir o ramo que conduz ao mínimo de perdas de potência na rede.

13

5. Se a remoção do ramo descoberto no passo 4 contribuir para redução de perdas na rede,

procede à remoção deste ramo, o qual passa para a lista de ramos a inserir.

6. Repete os passos 2 a 5, inserindo os ramos seguintes um a um da lista de ramos a inserir, até

encontrar a configuração óptima.

Na Figura 3.2 encontra-se representado o algoritmo em forma de fluxograma.

As funções usadas neste algoritmo foram:

net = SingleLinkExchange(network,Z1): função do algoritmo, recebendo como parâmetros a

estrutura network, a qual inclui todos os dados da rede e a matriz Z1, a qual inclui os dados

sobre os ramos a inserir (ou tie lines) e retornando a estrutura net, sendo esta os dados da

rede optimizada.

[V,S_barr,Perdas1] = NewtonRaphson(net,pv): função que calcula o trânsito de energia através

do método Newton-Raphson, explicado acima. Recebe como parâmetros a estrutura da rede

net e a estrutura pv, destinada aos barramentos do tipo PV, a qual não é usada e retorna as

tensões dos barramentos, as potências injectadas nos mesmos e as perdas da rede.

path = EncontraLoop(Z,barr): função que a partir da matriz Z, matriz de impedâncias da rede,

cria uma matriz de adjacências e chama a função recursiva de procura PesquisaLoop. Retorna

o loop formado após a inserção de uma tie line.

path = PesquisaLoop(barr,Adj,visit,path): função de procura em profundidade primeiro (DFS –

“Depth-first-search”) no grafo que representa a rede. Esta função, sendo recursiva, recebe o

barramento barr onde se encontra a procura, a matriz de adjacências Adj, a qual tem valor um

quando existe um ramo entre dois barramentos e zero quando não existe, o vector visit, que

tem valor um se o barramento já foi visitado, zero caso contrário e o valor dois para o

barramento inicial, e o vector path, que contém os barramentos do loop encontrados. Esta

função parte de um barramento (variável barr da função EncontraLoop) e vai visitando outros

barramentos até encontrar de novo o barramento inicial, devolvendo o loop encontrado através

do vector path. Se um barramento já foi visitado, a função vai procurar outro que ainda não foi,

e seguir por esse caminho. Quando um barramento não possui mais barramentos adjacentes

não visitados, a chamada recursiva termina, devolvendo o controlo de execução para o

barramento que o antecedeu na recursão.

[ind1,ind2,perdas1,pf] = Perdas(path,index1,index2,network,pv,ss,pf): função que retira os

ramos um a um de um loop (vector path) e calcula a melhor configuração da rede, com base

no mínimo de perdas de potência da mesma rede. Recebe também os parâmetros index1 e

index2, que correspondem aos barramentos do ramo inserido, as estruturas network e pv,

mencionadas na função NewtonRaphson acima, e as variáveis ss (o barramento de

alimentação) e pf (contador do número de trânsitos de energia calculados). São retornados os

barramentos (ind1 e ind2) do ramo que leva ao mínimo de perdas (perdas1) e o contador pf. É

nesta função que, sempre que um ramo é removido, são verificadas as restrições de corrente

14

(se existirem), tensão, conectividade de cargas e estrutura radial da rede, mencionadas

anteriormente. Se alguma restrição não se verifica, o ramo é imediatamente excluído da

hipótese de ser removido.

Figura 3.2 ‐ Fluxograma do algoritmo SLE

15

3.1.2. Redes de teste

De modo a verificar a funcionalidade deste algoritmo de optimização, aplicou-se o mesmo a

quatro redes de distribuição.

3.1.2.1. Rede de 8 barramentos

Figura 3.3 ‐ Rede de 8 barramentos

Nesta rede temos 2 pontos de alimentação (barramentos 1 e 8), 6 barramentos de carga

(barramentos 2 a 7) e 2 ramos possíveis de inserir (tie lines): 2-3 e 5-7. Os dados da rede são os

seguintes:

Barramento PL (MW) QL (MVAr)

2 5 5

3 5 5

4 5 5

5 5 5

6 5 5

7 5 5 Tabela 3.1 ‐ Potências de carga da rede de 8 barramentos

Ramo R (p.u.) X (p.u.)

1-2 0.03 0.03

2-6 0.03 0.03

6-7 0.03 0.03

8-5 0.03 0.03

5-4 0.03 0.03

4-3 0.03 0.03

Tie Lines

2-3 0.03 0.03

5-7 0.03 0.03 Tabela 3.2 ‐ Resistência e reactância dos ramos da rede de 8 barramentos

16

Na optimização da rede, considerou-se o barramento 8 como sendo o barramento 1, já que são

os dois barramentos de alimentação, de tensão 1 pu, de modo a haver um único barramento de balanço

(barramento 1).

Para uma potência de base de 100MVA, os resultados obtidos foram os seguintes:

Configuração original Depois da reconfiguração

Ramos em aberto 2-3, 5-7 3-4, 6-7

Perdas de potência activa (kW) 433.002 337.550

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9817 (barramentos 3 e 7)

Vmin = 0.9879 (barramentos 3,4,6 e 7)

Número de trocas 2

Redução das perdas 22.04 %

Número de trânsitos de energia 13

Tabela 3.3 ‐ Dados da rede de 8 barramentos original e após a reconfiguração com o SLE

Figura 3.4 ‐ Rede de 8 barramentos após reconfiguração

Após a aplicação do algoritmo a esta rede, verifica-se uma redução de cerca de 22% nas perdas

de potência activa da rede, com um aumento do módulo da tensão mínima. Dado que todos os ramos

da rede original possuem a mesma impedância e as cargas são iguais para todos os barramentos, a

configuração final simétrica era esperada.

17

3.1.2.2. Rede de 16 barramentos

De seguida, foi testada a rede de distribuição da Figura 3.5, constituída por 3 pontos de

alimentação (barramentos 1, 2 e 3), 13 barramentos de carga e 3 ramos possíveis de inserir: 5-11, 10-

14 e 7-16.

Figura 3.5 ‐ Rede de 16 barramentos

Os dados da rede são os seguintes:

Ramo Resistência

(p.u.) Reactância

(p.u.)

PL no barramento de recepção (MW)

QL no barramento de

recepção (MVAr)

Bateria de condensadores no

barramento de recepção (MVAr)

1-4 0.075 0.1 2.0 1.6 – 4-5 0.08 0.11 3.0 1.5 1.1 4-6 0.09 0.18 2.0 0.8 1.2 6-7 0.04 0.04 1.5 1.2 – 2-8 0.11 0.11 4.0 2.7 – 8-9 0.08 0.11 5.0 3.0 1.2

8-10 0.11 0.11 1.0 0.9 – 9-11 0.11 0.11 0.6 0.1 0.6 9-12 0.08 0.11 4.5 2.0 3.7 3-13 0.11 0.11 1.0 0.9 – 13-14 0.09 0.12 1.0 0.7 1.8 13-15 0.08 0.11 1.0 0.9 – 15-16 0.04 0.04 2.1 1.0 1.8

Tie Lines 5-11 0.04 0.04 – – – 10-14 0.04 0.04 – – – 7-16 0.12 0.12 – – –

Tabela 3.4 ‐ Dados da rede de 16 barramentos

De modo a exemplificar o funcionamento do algoritmo, a Tabela 3.5 apresenta os passos

seguidos pelo SLE. Tal como aconteceu na rede anterior, nesta os barramentos 2 e 3 foram

considerados como sendo o barramento 1.

18

Para uma potência de base de 100 MVA, as perdas iniciais são de 0.514029 MW.

Tabela 3.5 ‐ Passos seguidos pelo SLE na rede de 16 barramentos

Quando se insere o ramo 5-11, verifica-se que as perdas da rede diminuem se for removido o ramo 11-9. O mesmo acontece para o ramo 10-14, com

a remoção do ramo 8-10. Para os ramos inseridos a seguir, 7-16 e 11-9, verifica-se que a remoção de qualquer ramo dos loops criados não leva à redução de

perdas. O passo seguinte seria inserir o ramo 8-10 na rede. Porém, este ramo foi o último a ser retirado, fazendo com que não seja necessário continuar com

a execução algoritmo.

Ramos em aberto Ramo inserido Loop criado Ramo retirado (teste) Perdas (MW) Ramo retirado

5-11 10-14 7-16

5-11 1-4-5-11-9-8-1

1-4 1.366144

11-9 4-5 0.682129 11-9 0.495995 9-8 0.712176 8-1 1.384534

11-9 10-14 7-16

10-14 1-8-10-14-13-1

1-8 1.375231

8-10 8-10 0.468330

14-13 0.514717

13-1 0.755020

11-9 8-10 7-16

7-16 1-4-6-7-16-15-13-1

1-4 1.026326

Nenhum

4-6 0.538485 6-7 0.483007

16-15 0.496647 15-13 0.531177 13-1 0.719388

11-9 8-10 7-16

11-9 1-4-5-11-9-8-1

1-4 1.300834

Nenhum 4-5 0.643779 5-11 0.485768 9-8 0.709627 8-1 1.207721

19

Os resultados obtidos após a aplicação do algoritmo foram:

Configuração original Depois da reconfiguração

Ramos em aberto 5-11, 10-14, 7-16 11-9, 8-10, 7-16

Perdas de potência activa (kW) 514.029 468.330

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9682 (barramento 12)

Vmin = 0.9707 (barramento 12)

Número de trocas 2

Redução das perdas 8.89 %

Número de trânsitos de energia 21

Tabela 3.6 ‐ Dados da rede de 16 barramentos original e após a reconfiguração com o SLE

Figura 3.6 ‐ Rede de 16 barramentos após reconfiguração

Como as potências de carga são muito elevadas nos barramentos 8, 9 e 12, o ponto de

alimentação 2 “livra-se” das cargas dos barramentos 10 e 11, as quais passam a ficar alimentadas

pelos pontos de alimentação 3 e 1, respectivamente, levando a uma redução de 8,89% das perdas na

rede.

20

3.1.2.3. Rede de 33 barramentos

Figura 3.7 ‐ Rede de 33 barramentos

A terceira rede a ser testada (Figura 3.7) tem um único ponto de alimentação (barramento 1),

32 barramentos de carga e 5 ramos possíveis de inserir: 8-21, 9-15, 12-22, 18-33 e 25-29. A tensão

nominal é de 12.66kV.

Na tabela seguinte encontram-se os dados da rede:

Ramo R (Ω) X (Ω) PL no barramento de recepção (kW)

QL no barramento de recepção

(kVAr)

1-2 0.09922 0.047 100 60 2-3 0.493 0.2511 90 40 3-4 0.366 0.1844 120 80 4-5 0.3811 0.1941 60 30 5-6 0.819 0.707 60 20 6-7 0.1872 0.6188 200 100 7-8 0.7114 0.2351 200 100 8-9 1.03 0.74 60 20 9-10 1.044 0.74 60 20 10-11 0.1966 0.065 45 30 11-12 0.3744 0.1238 60 35 12-13 1.468 1.155 60 35 13-14 0.5416 0.7129 120 80 14-15 0.591 0.526 60 10 15-16 0.7463 0.545 60 20 16-17 1.289 1.721 60 20 17-18 0.732 0.574 90 40 2-19 0.164 0.1565 90 40

21

19-20 1.5042 1.3554 90 40 20-21 0.4095 0.4784 90 40 21-22 0.7089 0.9373 90 40 3-23 0.4512 0.3083 90 40 23-24 0.898 0.7091 420 200 24-25 0.896 0.7011 420 200 6-26 0.203 0.1034 60 25 26-27 0.2842 0.1447 60 25 27-28 1.059 0.9337 60 20 28-29 0.8042 0.7006 120 70 29-30 0.5075 0.2585 200 600 30-31 0.9744 0.963 150 70 31-32 0.3105 0.3619 210 100 32-33 0.341 0.5302 60 40

Tie Lines 8-21 2 2 – – 9-15 2 2 – – 12-22 2 2 – – 18-33 0.5 0.5 – – 25-29 0.5 0.5 – –

Tabela 3.7 ‐ Dados da rede de 33 barramentos

Para uma potência de base de 100kVA, os resultados foram os seguintes:

Configuração original Depois da reconfiguração

Ramos em aberto 8-21, 9-15, 12-22, 18-33, 25-29 7-8, 14-15, 9-10, 32-33, 25-29

Perdas de potência activa (kW) 202.677 139.551

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9131 (barramento 18)

Vmin = 0.9378 (barramento 32)

Número de trocas 4

Redução das perdas 31.15 %

Número de trânsitos de energia 75

Tabela 3.8 ‐ Dados da rede de 33 barramentos original e após a reconfiguração com o SLE

22

Figura 3.8 ‐ Rede de 33 barramentos após reconfiguração

A reconfiguração desta rede ocorre no sentido de tirar carga ao ramo central (ramos 2 a 18

com ramificação dos ramos 6 a 33). Como o ramo do lado direito (ramos 3 a 25) contém dois

barramentos com potências de carga muito elevadas (barramentos 24 e 25), este não podia “aguentar”

com mais cargas. Por este motivo, o ramo do lado esquerdo (ramos 2 a 22) é o responsável por aliviar

a carga do ramo central.

Apesar das resistências dos ramos a inserir serem superiores às resistências dos ramos da

rede, quatro dos primeiros são inseridos, sendo um mal necessário para reduzir as perdas na rede (em

31.15%), as quais eram provocadas maioritariamente pela sobrecarga do ramo central.

23

3.1.2.4. Rede de 94 barramentos

A última rede a ser testada foi a rede da Figura 3.9, com 11 pontos de alimentação (A a K), 83

barramentos de carga e 13 ramos possíveis de inserir. A tensão nominal é de 11.4kV. Os dados desta

rede encontram-se no Anexo A.

Figura 3.9 ‐ Rede de 94 barramentos

Com uma potência de base de 1MVA, os resultados obtidos são apresentados na Tabela 3.9:

Configuração original Depois da reconfiguração

Ramos em aberto

5-55, 7-60, 11-43, 12-72, 13-76, 14-18, 16-26, 20-83, 28-32, 29-39, 34-

46, 40-42, 53-64

6-7, 12-13, 33-34, 38-39, 41-42, 54-55, 61-62, 71-72, 82-83, 11-43, 14-18, 16-

26, 28-32 Perdas de

potência activa (kW)

531.994 469.877

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9285 (barramento 9)

Vmin = 0.9532 (barramento 71)

Número de trocas

11

Redução das perdas

11.68 %

Número de trânsitos de

energia 331

Tabela 3.9 ‐ Dados da rede de 94 barramentos original e após a reconfiguração com o SLE

24

Mais uma vez, a reconfiguração é feita no sentido de diminuir a carga dos ramos mais

sobrecarregados, aumentando a mesma nos ramos com menos carga. Os resultados finais são uma

redução de 11.68% das perdas de potência activa e um aumento significativo do módulo da tensão

mínima (de 0,9285 p.u. para 0.9532 p.u.).

3.2. Multiple Link Exchange

No seguimento do SLE vem o MLE. Este algoritmo tem como objectivo verificar se as perdas

obtidas no após a reconfiguração são menores que as obtidas a partir do SLE, já que em vez de inserir

e remover um só ramo de cada vez, insere e remove múltiplos ramos. Dado o aumento exponencial de

complexidade à medida que o número de ramos a inserir e a remover de cada vez aumenta, o MLE

restringe-se ao branch exchange de dois ramos de cada vez.

Dada uma configuração inicial, o algoritmo insere dois ramos na rede, encontra os dois loops

criados pela inserção dos mesmos e, se houver redução de perdas na rede, remove um ou dois ramos

da rede (um de cada loop).

3.2.1. Estrutura do algoritmo

Os passos do MLE são:

1. Realiza um trânsito de energia, para calcular as perdas iniciais da rede.

2. Insere um ramo na rede, da lista de ramos a inserir.

3. Encontra o loop criado pela inserção do ramo.

4. Repete os passos 2 e 3 para o ramo seguinte da lista de ramos a inserir, removendo o ramo

inserido em 2, de modo a que o loop encontrado seja diferente do encontrado em 3. Depois de

encontrado o loop, insere novamente o ramo.

5. Remove ramo do primeiro loop.

6. Caso o ramo removido do primeiro loop não seja comum ao segundo loop, remove os ramos

deste último um a um e calcula as perdas da rede após a remoção de cada ramo, de modo a

descobrir o ramo que conduz ao mínimo de perdas de potência na rede. Caso contrário, insere

o ramo removido.

7. Repete os passos 5 e 6 para todos os ramos do primeiro loop.

8. Caso os loops contenham ramos em comum, segue para o passo 9. Caso contrário, segue

para o passo 12.

9. Remove ramo do segundo loop.

10. Caso o ramo removido do segundo loop não seja comum ao primeiro loop, remove os ramos

deste último um a um e calcula as perdas da rede após a remoção de cada ramo, de modo a

25

descobrir o ramo que conduz ao mínimo de perdas de potência na rede. Caso contrário, insere

o ramo removido.

11. Repete os passos 9 e 10 para todos os ramos do segundo loop.

12. Se a remoção dos ramos descobertos nos passos 6 e 10 contribuir para redução de perdas na

rede, procede à remoção destes ramos, os quais passam para a lista de ramos a inserir.

13. Repete os passos 2 a 12, inserindo os ramos seguintes da lista de ramos a inserir, até encontrar

a configuração óptima.

Na Figura 3.10 encontra-se representado o algoritmo em forma de fluxograma.

As funções usadas no algoritmo SLE são usadas também neste algoritmo, à excepção da

própria função do algoritmo. As novas funções são as seguintes:

net = MultipleLinkExchange(network,Z1): função do algoritmo MLE, cujos parâmetros são os

mesmos da função do algoritmo SLE.

[net,Z1,pf] = PerdasMulti(network,Z2,ind1,ind2,pf): esta função retira os ramos um a um de

dois loops e calcula a melhor configuração da rede, com base no mínimo de perdas de potência

da mesma rede. Recebe a estrutura da rede network, os dados dos ramos a inserir (na matriz

Z2), os índices dos ramos da lista a inserir ind1 e ind2 e pf, contador de trânsitos de energia.

Retorna a rede modificada net, a lista de ramos a inserir actualizada Z1 e o contador pf.

26

27

Figura 3.10 ‐ Fluxograma do algoritmo MLE

28

3.2.2. Redes de teste

De modo a verificar a funcionalidade do algoritmo MLE, bem como as diferenças em relação

ao SLE, este foi aplicado às mesmas quatro redes de distribuição.

3.2.2.1. Rede de 8 barramentos

Figura 3.11 ‐ Rede de 8 barramentos

Para uma base de 100MVA, os resultados foram os seguintes:

Configuração original Depois da reconfiguração

Ramos em aberto 2-3, 5-7 3-4, 6-7

Perdas de potência activa (kW) 433.002 337.550

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9817 (barramentos 3 e 7)

Vmin = 0.9879 (barramentos 3,4,6 e 7)

Número de trocas 1

Redução das perdas 22.04 %

Número de trânsitos de energia 31

Tabela 3.10 ‐ Dados da rede de 8 barramentos original e após a reconfiguração com o MLE

29

3.2.2.2. Rede de 16 barramentos

Figura 3.12 ‐ Rede de 16 barramentos

Como foi feito para o Single Link Exchange, na Tabela 3.12 apresentam-se os passos seguidos

pelo algoritmo Multiple Link Exchange, para melhor percepção do mesmo.

Para uma potência de base de 100 MVA, os resultados obtidos foram:

Configuração original Depois da reconfiguração

Ramos em aberto 5-11, 10-14, 7-16 11-9, 8-10, 7-16

Perdas de potência activa (kW) 514.029 468.330

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9682 (barramento 12)

Vmin = 0.9707 (barramento 12)

Número de trocas 1

Redução das perdas 8.89 %

Número de trânsitos de energia 179

Tabela 3.11 ‐ Dados da rede de 16 barramentos original e após a reconfiguração com o MLE

30

Para uma potência de base de 100 MVA, as perdas iniciais são de 0.514029 MW.

Tabela 3.12 ‐ Passos seguidos pelo MLE na rede de 16 barramentos

Ramos em aberto Ramos inseridos Loops criados Ramos retirados (teste) Perdas (MW) Ramos retirados

5-11 10-14 7-16

5-11 10-14

1-4-5-11-9-8-1 1-8-10-14-13-1

1-4/8-10 1.300834

11-9 8-10

4-5/8-10 0.643779 5-11/8-10 0.485768 11-9/8-10 0.468330 9-8/14-13 0.709610 8-10/11-9 0.468330 10-14/11-9 0.495995 14-13/11-9 0.514717 13-1/11-9 0.755020

11-9 8-10 7-16

8-10 7-16

1-8-10-14-13-1 1-4-6-7-16-15-13-1

1-8/15-13 1.317531

Nenhum

8-10/7-16 0.468330 10-14/7-16 0.495995 14-13/7-16 0.514717 1-4/10-14 1.020838 4-6/8-10 0.538485 6-7/8-10 0.483007 7-16/8-10 0.468330 16-15/8-10 0.496647 15-13/8-10 0.531177

11-9 8-10 7-16

7-16 11-9

1-4-6-7-16-15-13-1 1-4-5-11-9-8-1

4-6/11-9 0.538485

Nenhum

6-7/11-9 0.483007 7-16/11-9 0.468330 16-15/11-9 0.496647 15-13/11-9 0.531177 13-1/11-9 0.719388 4-5/7-16 0.643779 5-11/7-16 0.485768 11-9/7-16 0.468330

9-8/6-7 0.695752 8-1/6-7 1.172104

31

3.2.2.3. Rede de 33 barramentos

Figura 3.13 ‐ Rede de 33 barramentos

Para uma potência de base de 100kVA, os resultados foram os seguintes:

Configuração original Depois da reconfiguração

Ramos em aberto 8-21, 9-15, 12-22, 18-33, 25-29 7-8, 14-15, 9-10, 32-33, 25-29

Perdas de potência activa (kW) 202.677 139.551

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9131 (barramento 18)

Vmin = 0.9378 (barramento 32)

Número de trocas 3

Redução das perdas 31.15 %

Número de trânsitos de energia 981

Tabela 3.13 ‐ Dados da rede de 33 barramentos original e após a reconfiguração com o MLE

32

3.2.2.4. Rede de 94 barramentos

Figura 3.14 ‐ Rede de 94 barramentos

Com uma potência de base de 1MVA, os resultados obtidos são apresentados na Tabela 3.14:

Configuração original Depois da reconfiguração

Ramos em aberto

5-55, 7-60, 11-43, 12-72, 13-76, 14-18, 16-26, 20-83, 28-32, 29-39, 34-46,

40-42, 53-64

6-7, 12-13, 33-34, 38-39, 41-42, 54-55, 61-62, 71-72, 82-83, 11-43, 14-18, 16-

26, 28-32 Perdas de

potência activa (kW)

531.994 469.877

Módulo da tensão (p.u.)

Vmax = 1.0000 (barramento 1)

Vmax = 1.0000 (barramento 1)

Vmin = 0.9285 (barramento 9)

Vmin = 0.9532 (barramento 71)

Número de trocas

9

Redução das perdas

11.68 %

Número de trânsitos de

energia 2579

Tabela 3.14 ‐ Dados da rede de 94 barramentos original e após a reconfiguração com o MLE

33

3.3. Comparação de resultados

Após o teste dos dois algoritmos em quatro redes de distribuição, é altura de comparar os dois

quanto à redução de perdas da rede, o número de trocas de ramos e o número de trânsitos de energia

realizados.

Figura 3.15 ‐ Comparação dos algoritmos quanto à redução de perdas nas redes

Quanto à redução de perdas de potência activa nas redes, verifica-se na Figura 3.15, que

ambos os algoritmos chegam à mesma solução em todas as redes testadas. De facto, os dois

algoritmos encontram a melhor solução local em cada iteração, sendo a solução final a soma das

soluções locais encontradas. No entanto, o MLE, em cada iteração, inserindo e removendo dois ramos,

encontra a melhor solução numa região maior que a região onde o SLE actua, aproximando-se mais

de uma solução óptima global. Portanto, seria de esperar que o MLE levasse a uma maior redução de

perdas.

Em relação às características das redes, já foi verificado que as cargas variam grandemente

nas redes, sendo que a reconfiguração ocorre no sentido de aliviar a carga nos ramos mais

sobrecarregados. Quanto aos ramos, observa-se que a resistência (parâmetro da impedância com mais

influência na perdas de potência activa) destes varia do seguinte modo: a rede de 8 barramentos é

constituída por ramos cuja resistência é igual para todos, a rede de 16 barramentos tem como máximo

de resistência 0.12 e mínimo de 0.04, sendo o máximo 3 vezes superior ao mínimo, a rede de 33

barramentos tem como máximo e mínimo de resistência 2 e 0.164 respecivamente, o que dá um factor

de 12 e a rede de 94 barramentos tem com máximo de resistência 0.5371 e mínimo 0.0243, sendo o

quociente entre ambos de aproximadamente 22. De facto, a diferença entre o máximo e o mínimo de

resistência destas redes não é muito grande, o que pode justificar o facto de o MLE chegar aos mesmos

resultados que o SLE. No próximo capítulo, são testados vários valores de resistência em diversos

ramos, para verificar o comportamento dos algoritmos em situações adversas.

22,04

8,89

31,15

11,68

22,04

8,89

31,15

11,68

0

5

10

15

20

25

30

35

Rede de 8barramentos

Rede de 16barramentos

Rede de 33barramentos

Rede de 94barramentos

Redução das perdas (%)

Single Link Exchange Multiple Link Exchange

34

Figura 3.16 ‐ Comparação dos algoritmos quanto ao número de trocas efectuadas

Dado que o MLE insere e remove dois ramos de cada vez, enquanto o SLE apenas insere e

remove um ramo de cada vez, seria de esperar que as trocas efectuadas pelo segundo fossem menores

que as trocas efectuadas pelo primeiro algoritmo, como se verifica na Figura 3.16. O número de trocas

aumenta com o aumento do número de ramos a inserir e do número de barramentos da rede.

Figura 3.17 ‐ Comparação dos algoritmos quanto ao número de trânsitos de energia efectuados

A Figura 3.17 demonstra a maior complexidade do algoritmo MLE, face ao SLE: o número de

trânsitos de energia realizados pelo segundo algoritmo é muito menor que pelo primeiro e esta diferença

é maior, quanto maior é a dimensão da rede. Este aumento do número de trânsitos de energia traduz-

se num aumento do tempo de execução do algoritmo.

2 2

4

11

1 1

3

9

0

2

4

6

8

10

12

Rede de 8barramentos

Rede de 16barramentos

Rede de 33barramentos

Rede de 94barramentos

Número de trocas

Single Link Exchange Multiple Link Exchange

13 21 75331

31 179

981

2579

0

500

1000

1500

2000

2500

3000

Rede de 8barramentos

Rede de 16barramentos

Rede de 33barramentos

Rede de 94barramentos

Número de trânsitos de energia

Single Link Exchange Multiple Link Exchange

35

4. Aumento de resistências nas redes

Para verificar o comportamento dos algoritmos em condições adversas, foram alterados os

valores das resistências de diversos ramos nas redes de 8 e 16 barramentos, enquanto os outros

parâmetros da rede (reactâncias e potências de carga activa e reactiva) se mantiveram inalterados.

4.1. Rede de 8 barramentos

Figura 4.1 ‐ Rede de 8 barramentos

Em primeiro lugar, foi aumentada progressivamente a resistência de dois ramos, um ligado ao

ponto de alimentação e outro não. Os resultados apresentam-se nas figuras abaixo.

Figura 4.2 ‐ Aumento da resistência dos ramos 1‐2 e 2‐6 na rede de 8 barramentos

Na Figura 4.2, pode-se observar que o SLE chega sempre ao mesmo valor de perdas finais

que o MLE, até um determinado valor de perdas iniciais limite, a partir do qual o trânsito de energia não

consegue ser calculado. Porém, pode-se verificar que, para um mesmo valor de resistência, o ramo 1-

2 conduz a maiores perdas na rede que o ramo 2-6, já que o primeiro é um ramo de ligação a um ponto

36

de alimentação. Também é de notar que o trânsito de energia não consegue ser calculado para um

valor de resistência menor do ramo 1-2 (aproximadamente 1.4 p.u.) que do ramo 2-6 (aproximadamente

2 p.u.), comprovando a maior sensibilidade do sistema para este ramo.

De seguida foi aumentada a resistência de quatro ramos dois a dois, dois ligados ao ponto de

alimentação e outros dois não:

Figura 4.3 ‐ Aumento da resistência dos ramos 1‐2 e 5‐1, 2‐6 e 4‐5 na rede de 8 barramentos

Figura 4.4 ‐ Aproximação do aumento da resistência dos ramos 1‐2,5‐1 na rede de 8 barramentos

Finalmente foram encontradas situações em que o MLE consegue chegar a uma rede de

perdas de potência mínimas menores que o SLE. Apesar de não estarem representados, foram

encontradas situações idênticas às da Figura 4.3, gráfico da direita, com o aumento das resistências

dos ramos 2-6 e 3-4, 3-4 e 6-7 e 6-7 e 4-5. Analisando as Figuras 4.3 e 4.4, verifica-se que o SLE pára

de conseguir “acompanhar” o MLE para um valor de resistência muito mais baixo dos ramos 1-2 e 5-1

(0.044 p.u.) que dos ramos 2-6 e 4-5 (0.73 p.u.) e dos ramos mencionados acima. E mais, a partir de

37

aproximadamente 0.5 p.u., para os ramos 1-2 e 5-1, o MLE também deixa de conseguir encontrar uma

configuração melhor que a configuração original, evidenciando-se, mais uma vez, a sensibilidade da

rede face aos ramos de ligação ao ponto de alimentação.

O último teste a ser feito consistiu no aumento da resistência de todos os ramos da rede:

Figura 4.5 ‐ Aumento da resistência em todos os ramos na rede de 8 barramentos

Neste teste, também se verificou que o MLE consegue chegar a perdas mínimas menores que

o SLE a partir da resistência de 0.24 p.u. e, a partir de aproximadamente 0.4 p.u. o MLE também já não

consegue encontrar uma configuração melhor que a configuração original. Finalmente, para um valor

de resistência de sensivelmente 0.8 p.u., o trânsito de energia já não consegue ser calculado.

De modo a tentar chegar a conclusões, foram feitos testes idênticos para a rede de 16

barramentos.

38

4.2. Rede de 16 barramentos

Figura 4.6 ‐ Rede de 16 barramentos

Em primeiro lugar, aumentou-se progressivamente a resistência dos ramos 1-8 e 8-9,

individualmente, e os resultados foram os seguintes:

Figura 4.7 ‐ Aumento da resistência dos ramos 1‐8 e 8‐9 na rede de 16 barramentos

As conclusões a tirar são as mesmas que as tiradas no mesmo teste na rede de 8 barramentos

e pode-se observar, mais uma vez, que o SLE chega sempre ao mesmo valor de perdas finais que o

MLE, quando é aumentada a resistência de um só ramo.

De seguida, foram aumentadas as resistências dos ramos ligados ao ponto de alimentação,

dois a dois:

39

Figura 4.8 ‐ Aumento da resistência dos ramos 1‐4 e 1‐8, 1‐4 e 1‐13, 1‐8 e 1‐13 na rede de 16 barramentos

Por observação da Figura 4.8, conclui-se que MLE consegue chegar a perdas mínimas

menores que o SLE, com o aumento da resistência dos ramos 1-4 e 1-8 e 1-4 e 1-13. No entanto, para

os ramos 1-8 e 1-13 tal não acontece.

Nos ramos 1-4 e 1-8, o SLE deixa de acompanhar o MLE para valores de resistência acima de

0.975 p.u., e nos ramos 1-4 e 1-13 para valores acima de 1.575 p.u..

O terceiro teste consistiu no aumento da resistência de quatro ramos, dois a dois, não ligados

ao ponto de alimentação:

40

Figura 4.9 ‐ Aumento da resistência dos ramos 4‐6 e 9‐11, 13‐15 e 8‐10 na rede de 16 barramentos

Quando se aumenta a resistência dos ramos 4-6 e 9-11, o SLE consegue sempre chegar à

rede óptima. Porém, quando se aumenta nos ramos 13-15 e 8-10, tal não acontece e o SLE não

consegue chegar à rede de perdas de potência mínimas, a partir de uma resistência de quase 7 p.u.

(do ramo 13-15).

O último teste consistiu no aumento da resistência de todos os ramos da rede:

Figura 4.10‐ Aumento da resistência em todos os ramos na rede de 16 barramentos

Pela Figura 4.10, pode verificar-se que ambos os algoritmos chegam à solução óptima até um

valor de resistência do ramo 1-4 de 0.3 p.u.. No entanto, o algoritmo MLE não consegue chegar a

perdas mínimas menores que o SLE.

Após a realização destes testes na rede de 16 barramentos, os quais não se revelaram muito

conclusivos e são de difícil comparação com os resultados obtidos para a rede de 8 barramentos,

41

tornou-se necessário realizar os testes para uma rede de 16 barramentos cujos ramos fossem todos

iguais, bem como as potências de carga (tal como acontece na rede de 8 barramentos).

4.3. Rede de 16 barramentos pura

Nesta rede, a impedância dos ramos é de 0.04+j0.04 p.u. e a potência de carga de 2+j2 MVA,

não existindo baterias de condensadores em nenhum barramento.

Aumentando as resistências dos ramos ligados ao ponto de alimentação, dois a dois,

obtiveram-se os seguintes resultados:

Figura 4.11 ‐ Aumento da resistência dos ramos 1‐4 e 1‐8, 1‐4 e 1‐13, 1‐8 e 1‐13 na rede de 16 barramentos pura

Na Figura 4.11, pode-se observar que o algoritmo MLE consegue chegar a perdas de potência

mínimas menores que o SLE, para o aumento da resistência de todos os ramos ligados ao ponto de

alimentação, dois a dois, ao contrário do teste efectuado para a rede de 16 barramentos original.

42

De facto, o SLE deixa de conseguir chegar à rede óptima a partir da resistência dos ramos em

teste de 1 p.u..

No teste seguinte, aumentou-se a resistência de quatro ramos, dois a dois, não ligados ao

ponto de alimentação:

Figura 4.12 ‐ Aumento da resistência dos ramos 4‐6 e 9‐11, 13‐15 e 8‐10 na rede de 16 barramentos pura

Ao contrário do que sucedeu para a rede de 16 barramentos original, o SLE não consegue

encontrar a rede óptima a partir da resistência de quase 4 p.u., para o aumento dos ramos 4-6 e 9-11.

Para o aumento dos ramos 13-15 e 8-10, o valor de resistência para o qual só o MLE consegue

encontrar a rede de perdas mínimas é o mesmo que para os ramos 4-6 e 9-11, sendo muito inferior ao

da rede de 16 barramentos original (7 p.u.).

Por fim, procedeu-se ao aumento da resistência de todos os ramos da rede:

Figura 4.13 ‐ Aumento da resistência em todos os ramos na rede de 16 barramentos pura

43

Na Figura 4.13, pode-se observar que o algoritmo MLE não consegue chegar a perdas mínimas

menores que o SLE, tal como acontece na rede de 16 barramentos original. No entanto, os algoritmos

conseguem alcançar a rede de perdas mínimas até uma resistência superior, de aproximadamente 0.5

p.u..

4.4. Comparação de resultados

Depois de feitos alguns testes nestas três redes, é altura de comparar os resultados obtidos e

tentar tirar algumas conclusões sobre o funcionamento dos algoritmos.

Em primeiro lugar pode-se concluir que, quando se aumenta progressivamente a resistência

num só ramo, o algoritmo SLE chega sempre ao mesmo valor de perdas finais que o MLE. Tratando-

se de um ramo de ligação ao ponto de alimentação, a rede vai ter que se “apoiar” noutro ramo do

mesmo tipo, se existente, levando a um aumento de perdas muito superior do que se se tratasse de

um ramo em que nenhum barramento fosse um ponto de alimentação. Dado que o aumento de perdas

é superior, o trânsito de energia não consegue ser calculado para um valor de resistência menor.

Em relação às redes cujos parâmetros têm os mesmos valores, verifica-se que, quando se

aumenta a resistência de dois ramos ligados ao ponto de alimentação, em simultâneo, a partir de uma

certa resistência o algoritmo SLE não consegue encontrar a rede de perdas mínimas, ao contrário do

algoritmo MLE. Quanto ao aumento da resistência de dois ramos não ligados ao ponto de alimentação,

também simultaneamente, chegou-se à conclusão que estes têm de pertencer a loops diferentes para

que o MLE chegue a uma rede de perdas menores do que a rede encontrada pelo SLE, e a sua

resistência deve ser elevada.

A rede de 16 barramentos original destaca-se das outras duas por não ter os parâmetros da

rede todos iguais. O que é verificado nessas redes verifica-se parcialmente nesta rede, possivelmente

devido à diferente distância entre os ramos, ou mesmo à diferença entre as potências de carga dos

barramentos.

Finalmente, quando se aumenta a resistência de todos os ramos em simultâneo da rede de 8

barramentos, a partir de um determinado valor de resistência verifica-se que o SLE deixa de conseguir

chegar à rede óptima, obtida pelo MLE. Tal não ocorre na rede de 16 barramentos, em que o aumento

da resistência de todos os ramos tem como consequência a rápida transgressão das restrições de

corrente e tensão.

Através das observações feitas, podemos concluir que existem situações em que a utilização

do SLE não é suficiente, isto é, não chega à rede de perdas de potência mínimas, sendo necessário

aplicar o MLE. Este algoritmo, apesar de ser computacionalmente mais exigente que o primeiro,

raramente fica preso numa solução local optimum, encontrando uma solução ideal entre todas as

possíveis.

44

5. Impedâncias aleatórias das redes

Neste capítulo, foi estudado o comportamento dos algoritmos quando a rede é constituída por

impedâncias aleatórias. Com este objectivo, foi utilizada a função randn do MATLAB, a qual retorna um

valor pseudoaleatório, retirado da Distribuição Gaussiana.

De entre os vários testes realizados na rede de 8 barrramentos, apresentam-se de seguida dois

deles.

5.1. Teste 1

Neste teste, as impedâncias dos ramos da rede, bem como da lista de ramos a inserir, foram:

Ramo 1 2 3 4 5 6 7

1 0 -0.0248 + j0.2979

0 0 0.2818 + j0.2834

0 0

2 -0.0248 + j0.2979

0 0 0 0 0.1343 - j0.2415

0

3 0 0 0 0.1434 + j0.3260

0 0 0

4 0 0 0.1434 + j0.3260

0 0.0978 + j0.2069

0 0

5 0.2818 + j0.2834

0 0 0.0978 + j0.2069

0 0 0

6 0 0.1343 - j0.2415

0 0 0 0 0.1454 - j0.0607

7 0 0 0 0 0 0.1454 - j0.0607

0

Tabela 5.1 – Impedâncias dos ramos da rede de 8 barramentos em p.u. no teste 1

Ramo Impedância

2-3 0.0588 - j0.1575

5-7 0.1777 - j0.2294

Tabela 5.2 ‐ Impedâncias dos ramos a inserir em p.u. no teste 1

45

Os resultados obtidos foram:

Estado Ramos em aberto Perdas (kW) Redução das perdas

Inicial 2-3 5-7

2299.192 -

Após algoritmo SLE 4-5 5-7

405.920 82.345 %

Após algoritmo MLE 4-5 5-7

405.920 82.345 %

Tabela 5.3 ‐ Comparação dos resultados obtidos no teste 1

De facto, para as impedâncias dos ramos da rede e dos ramos a inserir, das Tabelas 5.1 e 5.2,

os algoritmos SLE e MLE chegam ao mesmo valor de perdas finais, reduzindo as perdas da rede em

82.345%.

5.2. Teste 2

Neste segundo teste, as impedâncias dos ramos da rede de 8 barramentos e dos ramos a

inserir na mesma foram:

Ramo 1 2 3 4 5 6 7

1 0 -0.1663 - j0.1958

0 0 -0.2313 - j0.1067

0 0

2 -0.1663 - j0.1958

0 0 0 0 -0.4005 + j0.1928

0

3 0 0 0 0.1040 - j0.0040

0 0 0

4 0 0 0.1040 - j0.0040

0 -0.0070 - j0.1596

0 0

5 -0.2313 - j0.1067

0 0 -0.0070 - j0.1596

0 0 0

6 0 -0.4005 + j0.1928

0 0 0 0 0.2037 - j0.0266

7 0 0 0 0 0 0.2037 - j0.0266

0

Tabela 5.4 ‐ Impedâncias dos ramos da rede de 8 barramentos em p.u. no teste 2

46

Ramo Impedância

2-3 -0.1429 + j0.2703

5-7 -0.0450 - j0.1178

Tabela 5.5 ‐ Impedâncias dos ramos a inserir em p.u. no teste 2

Para as impedâncias das Tabelas 5.4 e 5.5, obtiveram-se os seguintes resultados:

Estado Ramos em aberto Perdas (kW) Redução das perdas

Inicial 2-3 5-7

-2177.865 -

Após algoritmo SLE 3-4 5-7

-2249.207 -3.276 %

Após algoritmo MLE 2-3 2-6

-2483.632 -14.040 %

Tabela 5.6 ‐ Comparação dos resultados obtidos no teste 2

A partir da Tabela 5.6, podemos concluir que o SLE não consegue obter a rede óptima, ao

contrário do MLE.

Devido ao facto de inicialmente as perdas da rede terem valor negativo, após a reconfiguração

este valor é ainda mais negativo.

5.3. Comparação de resultados

Dado que alguns valores de resistência e reactância aleatórios eram negativos, originando em

alguns casos perdas negativas, percebe-se logo que este é um problema não aplicável nas redes de

distribuição de energia eléctrica, mas apenas num circuito eléctrico.

Em relação aos resultados obtidos para os dois testes apresentados, verificou-se que o SLE

consegue obter a mesma rede óptima que o MLE nuns casos, mas não noutros, devendo-se tal,

possivelmente, ao elevado módulo da resistência em alguns ramos.

47

6. Analogia do método de Jacobi-Gauss-Seidel aos algoritmos

6.1. Descrição do método

O método de Jacobi-Gauss-Seidel é um algoritmo utilizado para determinar a solução de um

sistema de equações lineares. Este método iterativo é eficiente em termos de cálculo e armazenamento

para sistemas de grande dimensão, com muitas entradas a zero, já que os sistemas de pequenas

dimensões são resolvidos por técnicas directas, como a eliminação de Gauss.

Dado o sistema de equações lineares:

(42)

Com

⋯⋯

⋮ ⋮ ⋱ ⋮…

(43)

⋮ (44)

⋮ (45)

E decompondo em

(46)

Onde

0 ⋯ 00 ⋯ 0⋮ ⋮ ⋱ ⋮0 0 …

(47)

0 … 0 0⋱ ⋮ ⋮

⋮ ⋱ 0 ⋮… , 0

(48)

48

0 ⋯⋮ ⋱ ⋱ ⋮0 … 0 ,

0 … … 0

(49)

Pode-se reescrever o sistema de equações lineares como:

(50)

Este método iterativo é dado por:

(51)

Ou

1

, 1,2, … , (52)

Partindo de um vector inicial , o algoritmo vai calcular os valores de , até à

convergência. De notar que o cálculo de utiliza apenas os elementos de que já haviam

sido calculados.

Este método converge sempre, se a matriz A for estritamente diagonal dominante, isto é, se

para todas as linhas ou colunas da matriz, o módulo do valor na diagonal da matriz for superior à soma

dos módulos dos restantes valores da linha ou coluna, ou seja:

| | ∑ ou | | ∑ (53)

6.2. Comparação aos algoritmos

O algoritmo SLE pode ser comparado a este algoritmo, na medida em que partindo de uma

configuração inicial da rede e de um conjunto de ramos em aberto ( ), insere e remove ramos até o

método convergir para a solução óptima, sendo a solução do problema um conjunto de ramos em

aberto final ( ). Em cada passo, o algoritmo insere um ramo ( ), do conjunto de ramos em aberto,

na rede e remove o mesmo ramo, se a sua inserção não for benéfica para a rede, ou outro ramo, sendo

o ramo removido a solução . Na inserção do ramo seguinte ( ), o algoritmo tem em conta a

alteração efectuada no passo anterior

49

Quanto ao critério de convergência, não existe um critério quantificável para o SLE, existindo

situações em que o algoritmo não converge para a solução óptima, como foi verificado anteriormente

neste trabalho.

Em relação ao algoritmo MLE, sabe-se que este insere dois ramos, do conjunto de ramos em

aberto, na rede e remove dois ramos. Se a rede tiver quatro ramos possíveis de inserir, vamos ter o

seguinte sistema, utilizando a conotação :

(54)

Dado que os dois primeiros ramos são inseridos, o objectivo é chegar à solução . Como,

(55)

Então,

(56)

Para os dois ramos a inserir de seguida, quere-se chegar à solução , que é dada por:

(57)

E assim sucessivamente até ao fim da lista de ramos a inserir.

Como estamos perante sistemas do tipo

(58)

Que pode ser reescrito como

(59)

O método de Jacobi-Gauss-Seidel também pode ser usado para resolver estes sistemas, já

é uma matriz quadrada e a dimensão de é igual à dimensão de .

50

O método iterativo, para cada par de soluções, é então dado por:

(60)

Tal como foi feito para os algoritmos SLE e MLE, aqui testaram-se estes dois métodos de

Jacobi-Gauss-Seidel (equação (51) equipara-se ao SLE e conjunto de equações (60) equiparam-se ao

MLE), a várias matrizes. Mantendo a matriz 84

12 constante, os resultados obtidos para 100

iterações (nos métodos de Jacobi-Gauss-Seidel) foram os seguintes:

Matriz A Método Solução x Número de iterações

5 1 11 4 22 1 6

1.44681.95741.1915

-

Jacobi-Gauss-Seidel-SLE 1.44681.95741.1915

12

Jacobi-Gauss-Seidel-MLE 1.44681.95741.1915

7

2 1 11 1 22 1 3

171

-

Jacobi-Gauss-Seidel-SLE 1.44873.62192.1731

10 100

Jacobi-Gauss-Seidel-MLE 171

19

1 1 11 1 22 1 2

1.60007.20000.8000

-

Jacobi-Gauss-Seidel-SLE 1.49982.99962.9996

10 100

Jacobi-Gauss-Seidel-MLE 2.28181.52121.5212

10 100

Tabela 6.1 ‐ Teste aos métodos de Jacobi‐Gauss‐Seidel

A primeira matriz A, sendo estritamente diagonal dominante, leva a que ambos os métodos

cheguem à solução correcta do sistema. Para a segunda matriz A, os valores da diagonal da primeira

matriz são reduzidos, levando a que a matriz deixe de ser estritamente diagonal dominante. Como

consequência, o primeiro método não converge. Porém, o segundo método converge para a solução

correcta do sistema, o que pode ser justificado pelo facto de a matriz estar perto de ser estritamente

diagonal dominante, já que para algumas linhas ou colunas a condição (53) é satisfeita. Continuando

51

a reduzir-se os valores da diagonal, chega-se à terceira matriz A, para a qual os dois métodos não

convergem para a solução do sistema.

De facto, os resultados dos testes para estes dois métodos são muito semelhantes aos

resultados obtidos ao longo do trabalho para os algoritmos desenvolvidos: nos testes em redes

uniformizadas e reais, ambos os algoritmos chegam ao mesmo valor de perdas finais; aumentando a

desordem dos sistemas, através do aumento das resistências de vários ramos, a partir de um certo

valor de resistência o SLE não consegue chegar ao mesmo valor de perdas que o MLE e, continuando

a aumentar as resistências, verifica-se que nenhum dos algoritmos consegue encontrar uma

configuração melhor que a configuração original.

Em relação ao número de iterações realizadas pelos métodos, verifica-se que o método que se

equipara ao MLE converge em menos iterações, o que pode ser comparado com o facto de o MLE

realizar menos trocas que o SLE.

52

7. Comparação com outros algoritmos

Neste capítulo, comparam-se os resultados obtidos através dos algoritmos desenvolvidos com

outros algoritmos de reconfiguração de redes de distribuição: Ant Colony Search Algorithm, Genetic

Algorithm e Tabu Search Algorithm.

Quanto ao primeiro algoritmo, este imita o comportamento de formigas. Inicialmente, as

formigas deslocam-se aleatoriamente e, quando encontram comida, retornam à sua colónia, deixando

um rasto de feromonas. Quando as outras formigas encontram esse rasto, é provável que o sigam e o

reforcem. No entanto, há medida que o tempo passa, os rastos de feromonas vão se evaporando,

reduzindo o seu poder de atracção. Quanto menor o caminho, maior a densidade de feromonas, já que

este é percorrido mais frequentemente. A vantagem da evaporação das feromonas é o facto de evitar

a convergência para um local optimum, já que, se esta não existisse, os caminhos escolhidos pelas

primeiras formigas seriam excessivamente atractivos para as outras formigas, delimitando o espaço de

exploração.

O algoritmo genético (Genetic Algorithm) consiste na evolução de uma população em busca de

melhores soluções, onde cada indivíduo tem uma série de propriedades que podem ser alteradas. A

evolução começa com uma população de indivíduos gerados aleatoriamente e consiste num processo

iterativo, em que cada iteração corresponde a uma geração. Em cada geração, o valor da função

objectivo do problema de optimização de cada indivíduo é avaliada e os indivíduos mais capazes são

selecionados para formar uma nova geração, sendo as suas propriedades recombinadas ou mutadas.

O algoritmo termina quando um número máximo de gerações produzidas é atingido ou o valor da função

objectivo do problema de optimização da população é alcançado.

O terceiro algoritmo é um algoritmo de pesquisa local. As pesquisas locais pegam numa

potencial solução para um problema e verificam os vizinhos imediatos (soluções similares), com o

objectivo de encontrarem uma solução aperfeiçoada. No entanto, têm tendência a ficar presas em

regiões subóptimas. A pesquisa Tabu melhora a execução destas técnicas, usando estruturas de

memória que contêm as soluções visitadas ou um conjunto de regras definidas. Se uma potencial

solução foi visitada dentro de um determinado período de tempo, ou se viola alguma regra, esta é

marcada como “tabu” (proibida). Esta característica faz com que o algoritmo seja capaz de superar as

soluções localmente óptimas e atingir um resultado óptimo global.

Note-se que estes algoritmos de reconfiguração não foram todos testados nas mesmas redes

e os resultados apresentados são os resultados presentes nas respectivas referências.

53

7.1. Rede de 33 barramentos

Na rede de 33 barramentos foi testado apenas o Genetic Algorithm:

Original SLE MLE Genetic [10]

Ramos em aberto 8-21, 9-15, 12-

22, 18-33, 25-298-7, 14-15, 10-9,

32-33, 25-29 8-7, 14-15, 10-9,

32-33, 25-29 8-7, 14-15, 10-9,

32-33, 25-29

Perdas (kW) 202.677 139.551 139.551 139.6

Tempo de Execução (seg.)

- 4 56 5

Tabela 7.1 ‐ Comparação com outros algoritmos na rede de 33 barramentos

Para a rede de 33 barramentos, verifica-se que o SLE e o MLE chegam ao mesmo valor de

perdas final que o Genetic Algorithm. De facto, o tempo de execução do SLE é semelhante ao tempo

de execução do Genetic, ao contrário do MLE.

7.2. Rede de 94 barramentos

Esta rede foi testada com o Ant Colony Search Algorithm:

Original SLE MLE Ant Colony Search [5]

Ramos em aberto

6-56, 8-61, 12-44, 13-73, 14-77, 15-19, 17-27, 21-84, 29-33, 30-40, 35-

47, 41-43, 54-65

56-55, 7-8, 12-44, 73-72, 13-14, 15-19, 17-27, 84-83, 29-33, 40-39, 34-

35, 42-43, 63-62

56-55, 7-8, 12-44, 73-72, 13-14, 15-19, 17-27, 84-83, 29-33, 40-39, 34-

35, 42-43, 63-62

55-56, 7-8, 12-44, 72-73, 13-14, 15-19, 17-27, 83-84, 29-33, 39-40, 34-

35, 42-43, 62-63

Perdas (kW) 531.994 469.877 469.877 469.88

Tempo de Execução (seg.)

- 117 1340 241

Tabela 7.2 ‐ Comparação com outros algoritmos na rede de 94 barramentos

Observa-se que, para esta rede, a configuração final alcançada pelos algoritmos desenvolvidos

é a mesma que a alcançada pelo Ant Colony Search. O algoritmo SLE é o que leva um menor tempo

de execução.

54

7.3. Rede de 135 barramentos

Dado que os algoritmos Genetic e Tabu Search foram testados nesta rede, testaram-se

também os algoritmos SLE e MLE. Esta rede é constituída por 135 barramentos, dos quais 8 são de

alimentação e 21 tie lines. A tensão nominal da rede é de 13.8 kV e os dados da mesma encontram-se

no Anexo B.

Os resultados obtidos foram os seguintes:

Original SLE MLE Genetic [10] Tabu Search

[11]

Ramos em aberto

142-73, 9-24, 15-83, 38-135, 25-51, 50-96, 55-98, 62-120, 66-79, 79-131,

84-135, 91-104, 90-129, 90-103, 92-104, 92-132, 96-120, 110-47, 126-76,

128-77, 135-98

142-141, 24-9, 15-83, 98-135, 51-48, 96-95, 52-53, 118-

104, 66-79, 79-131, 84-135, 91-104, 90-

129, 89-90, 92-104, 92-132, 96-50, 106-

105, 126-125, 128-77, 35-38

142-141, 24-9, 15-83, 98-135, 51-48, 96-95, 52-53, 118-

104, 66-79, 79-131, 84-135, 91-104, 90-

129, 89-90, 92-104, 92-132, 96-50, 106-

105, 126-125, 128-77, 35-38

141-142, 48-51, 52-53, 83-84, 89-90, 95-96, 105-106,

104-118, 125-126, 127-128, 9-24, 15-83,

38-135, 50-96, 92-104, 92-132, 96-120, 110-47, 126-76, 128-77,

135-98

141-142, 48-51, 52-53, 83-84, 89-90, 95-96, 105-106,

104-118, 125-126, 127-128, 9-24, 15-83,

38-135, 50-96, 66-79, 79-131,

91-104, 90-129, 92-104, 92-132, 135-

98 Perdas (kW)

320.268 279.836 279.836 280.2 280.16

Tempo de Execução

(seg.) - 978 15466 240 47

Tabela 7.3 ‐ Comparação com outros algoritmos na rede de 135 barramentos

Para esta rede, observa-se que os algoritmos SLE e MLE chegam à mesma configuração final,

como acontece para as outras redes. Em relação aos outros dois algoritmos, verifica-se que as

configurações finais diferem uma da outra e da obtida com os algoritmos SLE e MLE. No entanto o

valor de perdas final é idêntico. A diferença nas configurações pode dever-se a variações nos dados

da rede original.

Em relação ao tempo de execução, para esta rede os algoritmos desenvolvidos foram os mais

demorados, sendo o Tabu Search o algoritmo mais rápido, seguido do Genetic Algorithm, SLE e, por

fim, MLE.

55

7.4. Comparação de resultados

Após os testes realizados em várias redes, verifica-se que ambos os algoritmos desenvolvidos

obtêm a mesma rede final que os outros algoritmos. E mais, para redes mais pequenas, o tempo de

execução do algoritmo SLE é idêntico ou ainda inferior ao dos algoritmos comparados. Para a rede

maior, tal já não se verifica.

Quanto ao algoritmo MLE, observa-se que o tempo de execução do mesmo é muito superior

ao dos outros algoritmos. De facto, em redes reais, como as duas últimas testadas, ou redes cujos

parâmetros são relativamente uniformizados, este algoritmo é ultrapassado pelo SLE, o qual tem um

tempo de execução muito menor, apresentando os mesmos resultados.

Apesar de, para redes maiores, o SLE ter um tempo de execução maior, é computacionalmente

pouco exigente, o que faz com que seja uma viável alternativa aos outros algoritmos de reconfiguração

de redes de distribuição.

56

8. Conclusões e Trabalhos Futuros

Este trabalho tinha como objectivos o desenvolvimento de dois algoritmos de optimização de

redes de distribuição, o SLE e o MLE, optimização esta no sentido de minimizar as perdas de potência

activa nas redes, e posteriormente compará-los e descobrir as suas limitações.

Testando os algoritmos em quatro redes, conseguiu-se chegar às primeiras conclusões: o

algoritmo MLE, apesar de realizar menos trocas que o SLE, é computacionalmente muito mais exigente,

realizando muito mais trânsitos de energia, o que se traduz num tempo de execução muito superior.

Quanto ao aumento da resistência de alguns ramos de redes cujos parâmetros têm os mesmos

valores, este permitiu revelar fraquezas no SLE: se a resistência de dois ramos ligados ao ponto de

alimentação ou dois ramos não ligados ao ponto de alimentação, mas de loops diferentes, for muito

elevada, o algoritmo SLE não consegue encontrar a rede de perdas de potência mínimas, ficando preso

numa solução local optimum, ao contrário do algoritmo MLE.

Aquando da geração de impedâncias aleatórias nas redes, chegou-se à conclusão que o

algoritmo SLE também não consegue encontrar a rede óptima, ao contrário do MLE, para alguns casos.

Outra conclusão a que se chegou foi que o método dos algoritmos desenvolvidos é idêntico ao

método iterativo de Jacobi-Gauss-Seidel para determinar a solução de um sistema de equações

lineares, demonstrando a menor complexidade destes algoritmos face a outros algoritmos de

reconfiguração de redes de distribuição, como os algoritmos introduzidos no capítulo 7.

Também se chegou à conclusão que o SLE apresenta os mesmos resultados que o MLE, em

redes reais ou redes cujos parâmetros são relativamente uniformizados, e que estes apresentam

resultados idênticos aos obtidos por outros algoritmos de reconfiguração de redes de distribuição.

No final, a conclusão a que se chega é que o MLE, ao contrário do SLE, é muito exigente

computacionalmente, levando a um tempo de execução muito elevado, mas é um algoritmo que

apresenta uma maior confiança na obtenção da rede óptima, já que raramente fica preso numa solução

localmente óptima.

Quantos às sugestões de trabalhos futuros, seria importante executar os algoritmos

apresentados no capítulo anterior na mesma máquina onde são testados os algoritmos desenvolvidos,

para que a comparação dos resultados fosse mais precisa.

Também seria interessante inserir geração distribuída nas redes e verificar os impactos da

mesma no problema de reconfiguração de redes.

57

Referências Bibliográficas

[1] J. P. Sucena Paiva, “Redes de Energia Eléctrica – Uma Análise Sistémica”, IST Press, Abril 2005.

[2] P. F. Gomes Manageiro, “Cálculo de perdas em redes de distribuição através de redes adjuntas”,

Dissertação para obtenção do Grau de Mestre em Engenharia Electrotécnica e de Computadores,

Instituto Superior Técnico, Dezembro 2007.

[3] M. Chakravorty, D. Das, “Voltage stability analysis of radial distribution networks”, International

Journal of Electrical Power & Energy Systems, vol. 23, issue 2, Feb. 2001, pp. 129–135.

[4] C. Ababei, R. Kavasseri, “Speeding-up network reconfiguration by minimum cost maximum flow

based branch exchanges,” in Proc. 2010 IEEE PES T&D Conf. Expo., New Orleans, LA.

[5] C.T. Su, C.F. Chang, J.P. Chiou, “Distribution network reconfiguration for loss reduction by ant

colony search algorithm”, Electric Power Systems Research 75 (2005) 190–199.

[6] M.E. Baran, F.F. Wu, “Network reconfiguration in distribution systems for loss reduction and load

balancing,” IEEE Trans. Power Delivery, vol. 4, no. 2, pp. 1401-1407, Apr. 1989.

[7] J.P. Chiou, C.F. Chang, C.T. Su, “Variable Scaling Hybrid Differential Evolution for Solving Network

Reconfiguration of Distribution Systems”, IEEE Trans. Power Systems, vol. 20, no. 2, May 2005.

[8] C. J. S. Alves, “Métodos Iterativos para Sistemas Lineares”, Jun. 2001, acesso em 28 Set. 2013.

Disponível em http://www.math.ist.utl.pt/~calves/cursos/SisLin-Iter.htm.

[9] R. Kavasseri, C. Ababei, REDS: REpository of Distribution Systems (Internet), actualizada em 19

Jun. 2012, acesso em 20 Set. 2013. Disponível em http://www.dejazzer.com/reds.html.

[10] M. A. N. Guimaraes, C. A. Castro, R. Romero, “Reconfiguration of distribution systems by a

modified genetic algorithm,” in Proc. IEEE Power Tech, Lausanne, Switzerland, 2007, pp. 401–

406.

[11] M. A. N. Guimaraes, C. A. Castro, “Reconfiguration of Distribution Systems for Loss Reduction

using Tabu Search”, 15th PSCC, Liege, 22-26, Aug. 2005.

58

Anexos

A. Dados da rede de 94 barramentos

Ramo Resistência (Ω) Reactância (Ω) PL no barramento de recepção (kW)

QL no barramento de recepção

(kVAr) A-1 0.1944 0.6624 0 0 1-2 0.2096 0.4304 100 50 2-3 0.2358 0.4842 300 200 3-4 0.0917 0.1883 350 250 4-5 0.2096 0.4304 220 100 5-6 0.0393 0.0807 1100 800 6-7 0.0405 0.1380 400 320 7-8 0.1048 0.2152 300 200 7-9 0.2358 0.4842 300 230 7-10 0.1048 0.2152 300 260 B-11 0.0786 0.1614 0 0 11-12 0.3406 0.6944 1200 800 12-13 0.0262 0.0538 800 600 12-14 0.0786 0.1614 700 500 C-15 0.1134 0.3864 0 0 15-16 0.0524 0.1076 300 150 16-17 0.0524 0.1076 500 350 17-18 0.1572 0.3228 700 400 18-19 0.0393 0.0807 1200 1000 19-20 0.1703 0.3497 300 300 20-21 0.2358 0.4842 400 350 21-22 0.1572 0.3228 50 20 21-23 0.1965 0.4035 50 20 23-24 0.1310 0.2690 50 10 D-25 0.0567 0.1932 50 30 25-26 0.1048 0.2152 100 60 26-27 0.2489 0.5111 100 70 27-28 0.0486 0.1656 1800 1300 28-29 0.1310 0.2690 200 120 E-30 0.1965 0.3960 0 0 30-31 0.1310 0.2690 1800 1600 31-32 0.1310 0.2690 200 150 32-33 0.0262 0.0538 200 100 33-34 0.1703 0.3497 800 600 34-35 0.0524 0.1076 100 60 35-36 0.4978 1.0222 100 60 36-37 0.0393 0.0807 20 10 37-38 0.0393 0.0807 20 10 38-39 0.0786 0.1614 20 10 39-40 0.2096 0.4304 20 10 38-41 0.1965 0.4035 200 160 41-42 0.2096 0.4304 50 30 F-43 0.0486 0.1656 0 0 43-44 0.0393 0.0807 30 20 44-45 0.1310 0.2690 800 700 45-46 0.2358 0.4842 200 150 G-47 0.2430 0.8280 0 0

59

47-48 0.0655 0.1345 0 0 48-49 0.0655 0.1345 0 0 49-50 0.0393 0.0807 200 160 50-51 0.0786 0.1614 800 600 51-52 0.0393 0.0807 500 300 52-53 0.0786 0.1614 500 350 53-54 0.0524 0.1076 500 300 54-55 0.1310 0.2690 200 80 H-56 0.2268 0.7728 0 0 56-57 0.5371 1.1029 30 20 57-58 0.0524 0.1076 600 420 58-59 0.0405 0.1380 0 0 59-60 0.0393 0.0807 20 10 60-61 0.0262 0.0538 20 10 61-62 0.1048 0.2152 200 130 62-63 0.2358 0.4842 300 240 63-64 0.0243 0.0828 300 200 I-65 0.0486 0.1656 0 0

65-66 0.1703 0.3497 50 30 66-67 0.1215 0.4140 0 0 67-68 0.2187 0.7452 400 360 68-69 0.0486 0.1656 0 0 69-70 0.0729 0.2484 0 0 70-71 0.0567 0.1932 2000 1500 71-72 0.0262 0.0528 200 150 J-73 0.3240 1.1040 0 0

73-74 0.0324 0.1104 0 0 74-75 0.0567 0.1932 1200 950 75-76 0.0486 0.1656 300 180 K-77 0.2511 0.8556 0 0 77-78 0.1296 0.4416 400 360 78-79 0.0486 0.1656 2000 1300 79-80 0.1310 0.2640 200 140 80-81 0.1310 0.2640 500 360 81-82 0.0917 0.1883 100 30 82-83 0.3144 0.6456 400 360

Tie Lines 5-55 0.1310 0.2690 – – 7-60 0.1310 0.2690 – – 11-43 0.1310 0.2690 – – 12-72 0.3406 0.6994 – – 13-76 0.4585 0.9415 – – 14-18 0.5371 1.0824 – – 16-26 0.0917 0.1883 – – 20-83 0.0786 0.1614 – – 28-32 0.0524 0.1076 – – 29-39 0.0786 0.1614 – – 34-46 0.0262 0.0538 – – 40-42 0.1965 0.4035 – – 53-64 0.0393 0.0807 – –

Tabela A.1 ‐ Dados da rede de 94 barramentos

60

B. Dados da rede de 135 barramentos

Ramo Barramento

de envio Barramento de recepção

Resistência (Ω)

Reactância (Ω)

PL no barramento de recepção

(kW)

QL no barramento de recepção

(kVAr) 0 0 136 0.33205 0.76653 0 0 1 136 137 0.00188 0.00433 47.78 19.009 2 137 138 0.2234 0.51535 42.551 16.929 3 138 139 0.09943 0.22953 87.022 34.622 4 139 140 0.15571 0.35945 311.31 123.855 5 140 141 0.16321 0.37677 148.869 59.228 6 141 142 0.11444 0.26417 238.672 94.956 7 141 8 0.05675 0.05666 62.299 24.786 8 8 9 0.52124 0.27418 124.598 49.571 9 8 10 0.10877 0.1086 140.175 55.768 10 10 11 0.39803 0.20937 116.813 46.474 11 10 12 0.91744 0.31469 249.203 99.145 12 10 13 0.11823 0.11805 291.447 115.592 13 13 14 0.50228 0.26421 303.72 120.835 14 13 15 0.05675 0.05666 215.396 85.695 15 15 16 0.29379 0.15454 198.586 79.007 16 1 17 0.33205 0.76653 0 0 17 17 18 0.00188 0.00433 0 0 18 18 19 0.22324 0.51535 0 0 19 19 20 0.10881 0.25118 30.127 14.729 20 20 21 0.71078 0.37388 230.972 112.92 21 20 22 0.18197 0.42008 60.256 29.459 22 22 23 0.30326 0.15952 230.972 112.92 23 22 24 0.02439 0.0563 120.507 58.915 24 24 25 0.04502 0.10394 0 0 25 25 26 0.01876 0.04331 56.981 27.857 26 26 27 0.11823 0.1123 364.665 178.281 27 27 28 0.02365 0.02361 0 0 28 28 29 0.18954 0.0997 124.647 60.939 29 29 30 0.39803 0.20937 56.981 27.857 30 28 31 0.05675 0.05666 0 0 31 31 32 0.09477 0.04985 85.473 41.787 32 32 33 0.41699 0.21934 0 0 33 33 34 0.11372 0.05982 396.735 193.96 34 31 35 0.07566 0.07555 0 0 35 35 36 0.3696 0.19442 181.152 88.563 36 36 37 0.26536 0.13958 242.172 118.395 37 35 38 0.05675 0.0566 75.316 36.821 38 2 39 0.33205 0.76653 0 0 39 39 40 0.11819 0.27283 1.254 0.531 40 40 41 2.96288 1.01628 6.274 2.66 41 40 42 0.00188 0.00433 0 0 42 42 43 0.06941 0.16024 117.88 49.971 43 43 44 0.81502 0.42872 62.668 25.566 44 43 45 0.06378 0.14724 172.285 73.034 45 45 46 0.13132 0.30315 458.556 194.388 46 46 47 0.06191 0.14291 262.962 111.473 47 47 48 0.11444 0.26417 235.761 99.942 48 48 49 0.28374 0.28331 0 0 49 49 50 0.28374 0.28321 109.215 46.298

61

50 48 51 0.04502 0.10394 0 0 51 51 52 0.02626 0.06063 72.809 30.865 52 52 53 0.06003 0.13858 258.473 109.57 53 53 54 0.03002 0.06929 69.169 29.322 54 54 55 0.02064 0.04764 21.843 9.26 55 52 56 0.10881 0.25118 0 0 56 56 57 0.25588 0.1346 20.527 8.702 57 57 58 0.41699 0.21934 150.548 63.819 58 58 59 0.50228 0.26421 220.687 93.552 59 59 60 0.3317 0.17448 92.384 39.163 60 60 61 0.20849 0.10967 0 0 61 47 62 0.13882 0.32047 226.693 96.098 62 3 63 0.0075 0.01732 0 0 63 63 64 0.27014 0.62362 294.016 116.974 64 64 65 0.3827 0.88346 83.015 33.028 65 65 66 0.33018 0.7622 83.015 33.028 66 66 67 0.3283 0.75787 103.77 41.285 67 67 68 0.17072 0.39409 176.408 70.184 68 68 69 0.55914 0.29412 83.015 33.028 69 68 70 0.05816 0.13425 217.917 86.698 70 70 71 0.7013 0.3689 23.294 9.267 71 71 72 1.02352 0.53839 5.075 2.019 72 70 73 0.06754 0.15591 72.638 28.899 73 73 74 1.32352 0.45397 405.99 161.523 74 4 75 0.01126 0.02598 0 0 75 75 76 0.72976 1.68464 100.182 42.468 76 76 77 0.22512 0.51968 142.523 60.417 77 77 78 0.20824 0.48071 96.042 40.713 78 78 79 0.0469 0.10827 300.454 127.366 79 79 80 0.6195 0.61857 141.238 59.873 80 80 81 0.34049 0.33998 279.847 118.631 81 81 82 0.56862 0.29911 87.312 37.013 82 81 83 0.10877 0.1086 243.849 103.371 83 83 84 0.56862 0.29911 247.75 105.025 84 5 85 0.01126 0.02598 0 0 85 85 86 0.41835 0.96575 89.878 38.101 86 86 87 0.10499 0.13641 1137.28 482.108 87 86 88 0.43898 1.01338 458.339 194.296 88 88 89 0.0752 0.02579 385.197 163.29 89 89 90 0.07692 0.17756 0 0 90 90 91 0.33205 0.76653 79.608 33.747 91 91 92 0.08442 0.19488 87.312 37.013 92 92 93 0.1332 0.30748 0 0 93 93 94 0.2932 0.29276 74.001 31.37 94 94 95 0.21753 0.21721 232.05 98.369 95 95 96 0.26482 0.26443 141.819 60.119 96 93 97 0.10318 0.23819 0 0 97 97 98 0.13507 0.31181 76.449 32.408 98 6 99 0.00938 0.02165 0 0 99 99 100 0.16884 0.38976 51.322 21.756 100 100 101 0.11819 0.27283 59.874 25.381 101 101 102 2.28608 0.78414 9.065 3.843 102 101 103 0.45587 1.05236 2.092 0.887 103 103 104 0.696 1.60669 16.735 7.094 104 104 105 0.45774 1.05669 1506.522 638.634 105 105 106 0.20298 0.26373 313.023 132.694 106 106 107 0.21348 0.27737 79.831 33.842 107 107 108 0.54967 0.28914 51.322 21.756

62

108 108 109 0.54019 0.28415 0 0 109 107 110 0.0455 0.05911 202.435 85.815 110 110 111 0.47385 0.24926 60.823 25.874 111 111 112 0.86241 0.45364 45.618 19.338 112 112 113 0.56862 0.29911 0 0 113 108 114 0.77711 0.40878 157.07 66.584 114 114 115 1.08038 0.5683 0 0 115 109 116 1.06633 0.57827 250.148 106.041 116 116 117 0.47385 0.24926 0 0 117 104 118 0.32267 0.74488 68.809 28.593 118 118 119 0.14633 0.33779 32.072 13.596 119 119 120 0.12382 0.28583 61.084 25.894 120 7 121 0.01126 0.02598 0 0 121 121 122 0.6491 1.49842 94.622 46.26 122 122 123 0.04502 0.10394 49.858 24.375 123 123 124 0.5264 0.18056 123.164 60.214 124 123 125 0.02064 0.04764 78.35 38.304 125 125 126 0.53071 0.27917 145.475 71.121 126 125 127 0.09755 0.2252 21.369 10.447 127 127 128 0.11819 0.27283 74.789 36.564 128 127 129 0.13882 0.32047 227.926 111.431 129 129 130 0.04315 0.09961 35.614 17.411 130 130 131 0.09192 0.2122 249.295 121.877 131 131 132 0.16134 0.37244 316.722 154.842 132 132 133 0.37832 0.37775 333.817 163.199 133 133 134 0.39724 0.39664 249.295 121.877 134 134 135 0.2932 0.29276 0 0

Tie Lines 135 142 73 0.13132 0.30315 - -136 9 24 0.26536 0.13958 - -137 15 83 0.14187 0.14166 - -138 38 135 0.08512 0.08499 - -139 25 51 0.04502 0.10394 - -140 50 96 0.14187 0.14166 - -141 55 98 0.14187 0.14166 - -142 62 120 0.0394 0.09094 - -143 66 79 0.12944 0.29882 - -144 79 131 0.01688 0.03898 - -145 84 135 0.3317 0.17448 - -146 91 104 0.14187 0.17166 - -147 90 129 0.07692 0.17756 - -148 90 103 0.07692 0.17756 - -149 92 104 0.07692 0.17756 - -150 92 132 0.07692 0.17756 - -151 96 120 0.26482 0.26443 - -152 110 47 0.49696 0.64567 - -153 126 76 0.17059 0.08973 - -154 128 77 0.05253 0.12126 - -155 135 98 0.2932 0.29276 - -

Tabela A.2 ‐ Dados da rede de 135 barramentos

63

C. Código em MATLAB

Função SingleLink Exchange

function net = SingleLinkExchange(network,Z1) % Função que aplica o algoritmo Single Link Exchange net=network; pf=0; display(sprintf('\nRamos em aberto:')); for i=1:size(Z1,1) display(sprintf('%d-%d',Z1(i,1),Z1(i,2))); end [V,S_barr,net.perdas]=NewtonRaphson(net,[]); pf=pf+1; a=1; for i=1:size(V,2) if abs(V(i))<a && V(i)~=0 a=abs(V(i)); b=i; end end display(a); display(b); Perdas_iniciais=net.perdas; net.perdasinic=Perdas_iniciais; display(sprintf('\nPerdas inicias: %f MW\n',real(net.perdas)*net.Sb)); a=1; iter=0; ind=size(Z1,1); changes=0; while a~=0 trocas=zeros(1,size(Z1,1)); aux=0; for i=1:ind net.Z(Z1(i,1),Z1(i,2))=Z1(i,3); net.Z(Z1(i,2),Z1(i,1))=Z1(i,3); path=EncontraLoop(net.Z,net.gerador); if size(path,2)==1 path=EncontraLoop(net.Z,Z1(i,1)); if size(path,2)==1 path=EncontraLoop(net.Z,Z1(i,2)); end end [losses1,losses2,losses3,pf]=Perdas(path,Z1(i,1),Z1(i,2),net,[],net.gerador,pf); display(sprintf('%d-%d->%d-%d:%f',Z1(i,1),Z1(i,2),losses1,losses2,losses3*net.Sb)); iter=iter+1; if losses3<net.perdas ind=size(Z1,1); trocas(i)=1;

64

display(sprintf('\nTroca %d-%d->%d-%d:%f\n',Z1(i,1),Z1(i,2),losses1,losses2,losses3*net.Sb)); net.perdas=losses3; net.Z(Z1(i,1),Z1(i,2))=Z1(i,3); net.Z(Z1(i,2),Z1(i,1))=Z1(i,3); Z1(i,1)=losses1; Z1(i,2)=losses2; Z1(i,3)=net.Z(losses1,losses2); net.Z(losses1,losses2)=0; net.Z(losses2,losses1)=0; changes=changes+1; else net.Z(Z1(i,1),Z1(i,2))=0; net.Z(Z1(i,2),Z1(i,1))=0; end end if sum(trocas==0)~=size(Z1,1) && i~=size(Z1,1) for j=i+1:size(Z1,1) net.Z(Z1(j,1),Z1(j,2))=Z1(j,3); net.Z(Z1(j,2),Z1(j,1))=Z1(j,3); path=EncontraLoop(net.Z,net.gerador); if size(path,2)==1 path=EncontraLoop(net.Z,Z1(j,1)); if size(path,2)==1 path=EncontraLoop(net.Z,Z1(j,2)); end end [losses1,losses2,losses3,pf]=Perdas(path,Z1(j,1),Z1(j,2),net,[],net.gerador,pf); display(sprintf('%d-%d->%d-%d:%f',Z1(j,1),Z1(j,2),losses1,losses2,losses3*net.Sb)); iter=iter+1; if losses3<net.perdas ind=size(Z1,1); trocas(j)=1; display(sprintf('\nTroca %d-%d->%d-%d:%f\n',Z1(j,1),Z1(j,2),losses1,losses2,losses3*net.Sb)); net.perdas=losses3; net.Z(Z1(j,1),Z1(j,2))=Z1(j,3); net.Z(Z1(j,2),Z1(j,1))=Z1(j,3); Z1(j,1)=losses1; Z1(j,2)=losses2; Z1(j,3)=net.Z(losses1,losses2); net.Z(losses1,losses2)=0; net.Z(losses2,losses1)=0; changes=changes+1; else net.Z(Z1(j,1),Z1(j,2))=0; net.Z(Z1(j,2),Z1(j,1))=0; end end end for k=2:size(trocas,2)-1 if trocas(k)==1 && trocas(k+1)==0 aux=1; ind=k-1; end end if trocas(end)==1 aux=1;

65

ind=size(Z1,1)-1; end if aux==0 break end end display(sprintf('\nNúmero de iterações: %d',iter)); display(sprintf('Número de power flows: %d',pf)); display(sprintf('Número de trocas: %d',changes)); display(sprintf('Perdas finais: %f MW',real(net.perdas)*net.Sb)); display(sprintf('Redução das perdas: %f %%',(real(Perdas_iniciais)-real(net.perdas))/real(Perdas_iniciais)*100)); display(sprintf('\nRamos em aberto:')); for i=1:size(Z1,1) display(sprintf('%d-%d',Z1(i,1),Z1(i,2))); end end Função NewtonRaphson

function [V,S_barr,Perdas1] = NewtonRaphson(net,pv) % Função que calcula o trânsito de energia para uma rede % Método: Newton-Raphson V=net.V; S_barr=net.S_barr; Z=net.Z; B1=net.B1; Qc=net.Qc; gerador=net.gerador; n_barr=size(V,2); delta=ones(1,(sum(V~=0)-1)*2); deltaP=zeros(1,sum(V~=0)-1); deltaQ=deltaP; H=zeros(sum(V~=0)-1); N=H; J=H; L=H; iter=0; ang=zeros(1,sum(V~=0)-1); abs_V=ang; Y=zeros(n_barr); for i=1:n_barr if V(i)~=0 for j=1:n_barr if i~=j && Z(i,j)~=0 Y(i,j)=-1/Z(i,j);

66

Y(i,i)=Y(i,i)+1i*B1(i,j)/2+1/Z(i,j); end end Y(i,i)=Y(i,i)+1i*Qc(i); end end G=real(Y); B=imag(Y); while max(abs(delta))>1e-4 P=zeros(1,n_barr); Q=zeros(1,n_barr); for i=1:n_barr if V(i)~=0 for j=1:n_barr P(i)=P(i)+abs(V(i))*abs(V(j))*(G(i,j)*cos(angle(V(i))-angle(V(j)))+B(i,j)*sin(angle(V(i))-angle(V(j)))); Q(i)=Q(i)+abs(V(i))*abs(V(j))*(G(i,j)*sin(angle(V(i))-angle(V(j)))-B(i,j)*cos(angle(V(i))-angle(V(j)))); end end end a=1; for i=2:n_barr if V(i)~=0 && i~=gerador deltaP(a)=real(S_barr(i))-P(i); deltaQ(a)=imag(S_barr(i))-Q(i); a=a+1; end end delta=[deltaP deltaQ]'; a=1; for i=1:n_barr-1 if V(i+1)~=0 && i+1~=gerador b=1; for j=1:n_barr-1 if V(j+1)~=0 && j+1~=gerador if i==j H(a,b)=-Q(i+1)-B(i+1,i+1)*abs(V(i+1))^2; N(a,b)=P(i+1)+G(i+1,i+1)*abs(V(i+1))^2; J(a,b)=P(i+1)-G(i+1,i+1)*abs(V(i+1))^2; L(a,b)=Q(i+1)-B(i+1,i+1)*abs(V(i+1))^2; else H(a,b)=abs(V(i+1))*abs(V(j+1))*(G(i+1,j+1)*sin(angle(V(i+1))-angle(V(j+1)))-B(i+1,j+1)*cos(angle(V(i+1))-angle(V(j+1)))); L(a,b)=H(a,b); N(a,b)=abs(V(i+1))*abs(V(j+1))*(G(i+1,j+1)*cos(angle(V(i+1))-angle(V(j+1)))+B(i+1,j+1)*sin(angle(V(i+1))-angle(V(j+1)))); J(a,b)=-N(a,b); end b=b+1; end

67

end a=a+1; end end Jac=[H N; J L]; Acresc=Jac\delta; a=1; aux=0; for i=1:n_barr-1 if V(i+1)~=0 && i+1~=gerador ang(a)=angle(V(i+1))+Acresc(a); abs_V(a)=abs(V(i+1))+Acresc(size(Acresc,1)/2+a-aux)*abs(V(i+1)); a=a+1; end end a=1; for i=1:n_barr if V(i)~=0 && i~=gerador V(i)=abs_V(a)*(cos(ang(a))+1i*sin(ang(a))); a=a+1; end end iter=iter+1; if iter>6 break end end S_barr(gerador)=P(gerador)+1i*Q(gerador); Perdas1=0; if iter<=6 for i=1:n_barr if V(i)~=0 Perdas1=Perdas1+S_barr(i); end end end end

68

Função EncontraLoop function path = EncontraLoop(Z,barr) % Função que encontra um caminho o qual torne a rede não radial n_barr=size(Z,2); visit=zeros(1,n_barr); Adj=zeros(n_barr); for i=1:n_barr for j=1:n_barr if Z(i,j)~=0 Adj(i,j)=1; end end Adj(i,i)=1; end visit(barr)=2; path=barr; path=PesquisaLoop(barr,Adj,visit,path); end Função PesquisaLoop function path = PesquisaLoop(barr,Adj,visit,path) % Função recursiva de procura num grafo % Pára quando encontra o barr de origem, ou todos os barramentos já tiverem % sido visitados if visit(barr)==0 visit(barr)=1; end for i=1:size(visit,2) if size(path,2)>1 && visit(path(end))==2 break end if Adj(barr,i)~=0 if visit(i)==0 path=[path i]; path=PesquisaLoop(i,Adj,visit,path); end if visit(i)==2 && i~=barr && size(path,2)>2 && path(1)~=path(end) path=[path i]; end end if size(path,2)>1 && visit(path(end))~=2 if barr==path(end-1) path(end)=[]; end end end end

69

Função Perdas function [ind1,ind2,perdas1,pf] = Perdas(path,index1,index2,network,pv,ss,pf) % Função retira os ramos um a um de um loop e calcula a melhor configuração % da rede, com base no mínimo de perdas da mesma rede ind1=0; ind2=0; perdas1=1000; net=network; nospv=pv; for i=1:size(path,2)-1 if (path(i)~=index1 || path(i+1)~=index2) && (path(i+1)~=index1 || path(i)~=index2) net.Z(path(i),path(i+1))=0; net.Z(path(i+1),path(i))=0; b=0; if path(i)==ss || path(i+1)==ss if sum(net.Z(path(i),:)==0)==size(net.Z,2) || sum(net.Z(path(i+1),:)==0)==size(net.Z,2) b=1; end end if b==1 net.Z(path(i),path(i+1))=network.Z(path(i),path(i+1)); net.Z(path(i+1),path(i))=network.Z(path(i+1),path(i)); else a=0; [V,S_barr,perdas]=NewtonRaphson(net,nospv); pf=pf+1; if perdas==0 perdas2=2000; % display(sprintf('PF não converge com barr %d-%d retirado',path(i),path(i+1))); else perdas2=perdas; end for l=1:size(V,2) if abs(V(l))~=0 && (abs(V(l))<=0.9 || abs(V(l))>=1.1) a=1; break end end if real(perdas2)<1000 % display(sprintf('%d-%d: %f',path(i),path(i+1),real(perdas2)*net.Sb)); end if real(perdas2)<perdas1 && a==0 ind1=path(i); ind2=path(i+1); perdas1=real(perdas2); end net.Z(path(i),path(i+1))=network.Z(path(i),path(i+1)); net.Z(path(i+1),path(i))=network.Z(path(i+1),path(i)); end end end end

70

Função MultipleLinkExchange function net = MultipleLinkExchange(network,Z1) % Função que aplica o algoritmo Multiple Link Exchange net=network; pf=0; for i=1:size(Z1,1) network.Z(Z1(i,1),Z1(i,2))=Z1(i,3); network.Z(Z1(i,2),Z1(i,1))=Z1(i,3); end display(sprintf('\nRamos em aberto:')); for i=1:size(Z1,1) display(sprintf('%d-%d',Z1(i,1),Z1(i,2))); end [V,S_barr,net.perdas]=NewtonRaphson(net,[]); pf=pf+1; Perdas_iniciais=net.perdas; net.perdasinic=Perdas_iniciais; display(sprintf('\nPerdas inicias: %f MW\n',real(net.perdas)*net.Sb)); a=1; iter=0; ind=size(Z1,1); changes=0; while a~=0 aux=0; if size(Z1,1)>2 trocas=zeros(1,size(Z1,1)); for i=1:ind if i==size(Z1,1) perdas1=net.perdas; [net,Z1,pf]=PerdasMulti(net,Z1,i,1,pf); if perdas1~=net.perdas trocas(i)=1; changes=changes+1; end iter=iter+1; else perdas1=net.perdas; [net,Z1,pf]=PerdasMulti(net,Z1,i,i+1,pf); if perdas1~=net.perdas trocas(i)=1; changes=changes+1; end iter=iter+1; end end if sum(trocas==0)~=size(Z1,1) && i~=size(Z1,1) for j=i+1:size(Z1,1) if j==size(Z1,1) perdas1=net.perdas; [net,Z1,pf]=PerdasMulti(net,Z1,j,1,pf); if perdas1~=net.perdas trocas(j)=1; changes=changes+1;

71

end iter=iter+1; else perdas1=net.perdas; [net,Z1,pf]=PerdasMulti(net,Z1,j,j+1,pf); if perdas1~=net.perdas trocas(j)=1; changes=changes+1; end iter=iter+1; end end end else trocas=0; [net,Z1,pf]=PerdasMulti(net,Z1,1,2,pf); iter=iter+1; changes=changes+1; end for k=2:size(trocas,2)-1 if trocas(k)==1 && trocas(k+1)==0 aux=1; ind=k-1; end end if trocas(end)==1 aux=1; ind=size(Z1,1)-1; end if aux==0 break end end display(sprintf('\nNúmero de iterações: %d',iter)); display(sprintf('Número de power flows: %d',pf)); display(sprintf('Número de trocas: %d',changes)); display(sprintf('Perdas finais: %f MW',real(net.perdas)*net.Sb)); display(sprintf('Redução das perdas: %f %%',(real(Perdas_iniciais)-real(net.perdas))/real(Perdas_iniciais)*100)); display(sprintf('\nRamos em aberto:')); for i=1:size(Z1,1) display(sprintf('%d-%d',Z1(i,1),Z1(i,2))); end end

72

Função PerdasMulti

function [net,Z1,pf] = PerdasMulti(network,Z2,ind1,ind2,pf) net=network; Z1=Z2; losses5=0; losses6=0; losses7=0; losses8=0; losses9=10000; network.Z(Z1(ind1,1),Z1(ind1,2))=Z1(ind1,3); network.Z(Z1(ind1,2),Z1(ind1,1))=Z1(ind1,3); network.Z(Z1(ind2,1),Z1(ind2,2))=Z1(ind2,3); network.Z(Z1(ind2,2),Z1(ind2,1))=Z1(ind2,3); net.Z(Z1(ind1,1),Z1(ind1,2))=Z1(ind1,3); net.Z(Z1(ind1,2),Z1(ind1,1))=Z1(ind1,3); path1=EncontraLoop(net.Z,net.gerador); if size(path1,2)==1 path1=EncontraLoop(net.Z,Z1(ind1,1)); if size(path1,2)==1 path1=EncontraLoop(net.Z,Z1(ind1,2)); end end net.Z(Z1(ind1,1),Z1(ind1,2))=0; net.Z(Z1(ind1,2),Z1(ind1,1))=0; net.Z(Z1(ind2,1),Z1(ind2,2))=Z1(ind2,3); net.Z(Z1(ind2,2),Z1(ind2,1))=Z1(ind2,3); losses1=Z1(ind1,1); losses2=Z1(ind1,2); losses3=Z1(ind2,1); losses4=Z1(ind2,2); path2=EncontraLoop(net.Z,net.gerador); if size(path2,2)==1 path2=EncontraLoop(net.Z,Z1(ind2,1)); if size(path2,2)==1 path2=EncontraLoop(net.Z,Z1(ind2,2)); end end net.Z(Z1(ind1,1),Z1(ind1,2))=Z1(ind1,3); net.Z(Z1(ind1,2),Z1(ind1,1))=Z1(ind1,3); display(sprintf('%d-%d/%d-%d\n',Z1(ind1,1),Z1(ind1,2),Z1(ind2,1),Z1(ind2,2))); for j=1:size(path1,2)-1 net.Z(path1(j),path1(j+1))=0; net.Z(path1(j+1),path1(j))=0; b=0; if path1(j)==net.gerador || path1(j+1)==net.gerador if sum(net.Z(path1(j),:)==0)==size(net.Z,2) || sum(net.Z(path1(j+1),:)==0)==size(net.Z,2) b=1; end end c=0; for l=1:size(path2,2)-1 if path1(j)==path2(l) || path1(j+1)==path2(l) c=c+0.5;

73

end end if b==1 || c==1 net.Z(path1(j),path1(j+1))=network.Z(path1(j),path1(j+1)); net.Z(path1(j+1),path1(j))=network.Z(path1(j+1),path1(j)); else [index1,index2,index3,pf]=Perdas(path2,path1(j),path1(j+1),net,[],net.gerador,pf); if index3<losses9 losses5=path1(j); losses6=path1(j+1); losses7=index1; losses8=index2; losses9=index3; end display(sprintf('%d-%d/%d-%d:%f',path1(j),path1(j+1),index1,index2,index3*net.Sb)); net.Z(path1(j),path1(j+1))=network.Z(path1(j),path1(j+1)); net.Z(path1(j+1),path1(j))=network.Z(path1(j+1),path1(j)); end end d=0; for m=1:size(path1,2) for n=1:size(path2,2) if path1(m)==path2(n) && (path1(m)~=net.gerador || path2(n)~=net.gerador) d=d+1; end end end if d>0 for j=1:size(path2,2)-1 net.Z(path2(j),path2(j+1))=0; net.Z(path2(j+1),path2(j))=0; b=0; if path2(j)==net.gerador || path2(j+1)==net.gerador if sum(net.Z(path2(j),:)==0)==size(net.Z,2) || sum(net.Z(path2(j+1),:)==0)==size(net.Z,2) b=1; end end c=0; for l=1:size(path1,2)-1 if path2(j)==path1(l) || path2(j+1)==path1(l) c=c+0.5; end end if b==1 || c==1 net.Z(path2(j),path2(j+1))=network.Z(path2(j),path2(j+1)); net.Z(path2(j+1),path2(j))=network.Z(path2(j+1),path2(j)); else [index1,index2,index3,pf]=Perdas(path1,path2(j),path2(j+1),net,[],net.gerador,pf); if index3<losses9 losses5=path2(j); losses6=path2(j+1); losses7=index1; losses8=index2; losses9=index3;

74

end display(sprintf('%d-%d/%d-%d:%f',path2(j),path2(j+1),index1,index2,index3*net.Sb)); net.Z(path2(j),path2(j+1))=network.Z(path2(j),path2(j+1)); net.Z(path2(j+1),path2(j))=network.Z(path2(j+1),path2(j)); end end end net.Z(Z1(ind1,1),Z1(ind1,2))=0; net.Z(Z1(ind1,2),Z1(ind1,1))=0; net.Z(Z1(ind2,1),Z1(ind2,2))=0; net.Z(Z1(ind2,2),Z1(ind2,1))=0; display(sprintf('\n%d-%d/%d-%d:%f\n',losses5,losses6,losses7,losses8,losses9*net.Sb)); if losses9<net.perdas display(sprintf('Troca %d-%d/%d-%d->%d-%d/%d-%d:%f\n',losses1,losses2,losses3,losses4,losses5,losses6,losses7,losses8,losses9*net.Sb)); net.perdas=losses9; aux=0; if (losses5==losses1 && losses6==losses2) || (losses5==losses2 && losses6==losses1) net.Z(losses3,losses4)=Z1(ind2,3); net.Z(losses4,losses3)=Z1(ind2,3); Z1(ind2,1)=losses7; Z1(ind2,2)=losses8; Z1(ind2,3)=net.Z(losses7,losses8); net.Z(losses7,losses8)=0; net.Z(losses8,losses7)=0; aux=1; end if (losses7==losses1 && losses8==losses2) || (losses7==losses2 && losses8==losses1) net.Z(losses3,losses4)=Z1(ind2,3); net.Z(losses4,losses3)=Z1(ind2,3); Z1(ind2,1)=losses5; Z1(ind2,2)=losses6; Z1(ind2,3)=net.Z(losses5,losses6); net.Z(losses5,losses6)=0; net.Z(losses6,losses5)=0; aux=1; end if (losses5==losses3 && losses6==losses4) || (losses5==losses4 && losses6==losses3) net.Z(losses1,losses2)=Z1(ind1,3); net.Z(losses2,losses1)=Z1(ind1,3); Z1(ind1,1)=losses7; Z1(ind1,2)=losses8; Z1(ind1,3)=net.Z(losses7,losses8); net.Z(losses7,losses8)=0; net.Z(losses8,losses7)=0; aux=1; end if (losses7==losses3 && losses8==losses4) || (losses7==losses4 && losses8==losses3) net.Z(losses1,losses2)=Z1(ind1,3); net.Z(losses2,losses1)=Z1(ind1,3); Z1(ind1,1)=losses5; Z1(ind1,2)=losses6; Z1(ind1,3)=net.Z(losses5,losses6); net.Z(losses5,losses6)=0;

75

net.Z(losses6,losses5)=0; aux=1; end if aux==0 net.Z(losses1,losses2)=Z1(ind1,3); net.Z(losses2,losses1)=Z1(ind1,3); Z1(ind1,1)=losses5; Z1(ind1,2)=losses6; Z1(ind1,3)=net.Z(losses5,losses6); net.Z(losses5,losses6)=0; net.Z(losses6,losses5)=0; net.Z(losses3,losses4)=Z1(ind2,3); net.Z(losses4,losses3)=Z1(ind2,3); Z1(ind2,1)=losses7; Z1(ind2,2)=losses8; Z1(ind2,3)=net.Z(losses7,losses8); net.Z(losses7,losses8)=0; net.Z(losses8,losses7)=0; end end end

Métodos Jacobi-Gauss-Seidel

%% Jacobi-Gauss-Seidel clear all clc A=[5 1 -1 1 -4 2 2 1 6]; B=[8 -4 12]'; %% x=inv(A)*B x=A\B; display(x); %% SingleLink D=[A(1,1) 0 0 0 A(2,2) 0 0 0 A(3,3)]; L=[0 0 0 A(2,1) 0 0 A(3,1) A(3,2) 0]; U=[0 A(1,2) A(1,3) 0 0 A(2,3) 0 0 0]; x=zeros(size(B)); a=0; iter=0;

76

while a==0 aux2=x; x=(D+L)\(B-U*x); iter=iter+1; if max(abs(aux2-x))<1e-5 || iter>99 break end end display(iter); display(x); %% Multiple Link D1=[A(1,1) 0 0 A(2,2)]; L1=[0 0 A(2,1) 0]; U1=[0 A(1,2) 0 0]; B1=[B(1) B(2)]'; C1=[A(1,3) A(2,3)]'; D2=[A(2,2) 0 0 A(3,3)]; L2=[0 0 A(3,2) 0]; U2=[0 A(2,3) 0 0]; B2=[B(2) B(3)]'; C2=[A(2,1) A(3,1)]'; D3=[A(1,1) 0 0 A(3,3)]; L3=[0 0 A(3,1) 0]; U3=[0 A(1,3) 0 0]; B3=[B(1) B(3)]'; C3=[A(1,2) A(3,2)]'; x=zeros(size(B)); a=0; iter=0; while a==0 aux2=x; x12=(D1+L1)\(B1-C1*x(3)-U1*[x(1) x(2)]'); x(1)=x12(1); x(2)=x12(2); x23=(D2+L2)\(B2-C2*x(1)-U2*[x(2) x(3)]'); x(2)=x23(1); x(3)=x23(2); x13=(D3+L3)\(B3-C3*x(2)-U3*[x(1) x(3)]'); x(1)=x13(1); x(3)=x13(2); iter=iter+1; if max(abs(aux2-x))<1e-5 || iter>99 break end end display(iter); display(x);