• Nenhum resultado encontrado

DESENVOLVIMENTO DO SOFTWARE

3.2. Fluxo de carga: Soma de Potências

3.3.3. Seleção por roleta

A roleta é utilizada para selecionar os indivíduos da população para um possível cruzamento, sendo modelada de forma que os mais aptos tenham uma possibilidade maior de serem escolhidos. Assim, a probabilidade de um indivíduo ser selecionado depende de sua aptidão, ou seja, quanto maior seu valor de fitness, maior a probabilidade de ser escolhido.

Para geração de um “filho”, é necessário “girar” a roleta duas vezes, escolhendo os dois “pais”. Esta, por sua vez, é executada um número de vezes igual ao número de indivíduos, para criar uma população de “filhos” com o mesmo tamanho da população anterior, onde cada par de “pais” gera dois “filhos”.

A Figura 2.8 resume como o algoritmo da seleção por roleta deve ser programado. O “giro” da roleta é implementado mediante utilização da função aleatória

rand( ), a qual fornece um valor no intervalo compreendido entre zero e um.

3.3.4. Crossover

O cruzamento, ou crossover, é um operador genético que pode, ou não, ocorrer entre dois indivíduos de uma mesma população, mediante aplicação de uma taxa de

crossover pré-definida, após seleção do algoritmo da roleta. Assim, é definida a taxa

de crossover que representa a probabilidade de haver cruzamento entre o par. As simulações computacionais mostram que, em geral, a taxa de 80% apresenta bons resultados para a convergência do AG e garante uma adequada diversidade à população.

37 Após seleção para cruzamento pelo método da roleta, os dois indivíduos não necessariamente sofrem um crossover. É aplicada uma probabilidade de cruzamento que, se estabelecida, fará com que os “pais” gerem os “filhos” com parte de suas características genéticas. Contudo, caso a taxa de crossover não seja atendida, após utilização da função aleatória rand( ), o cruzamento não ocorrerá e os indivíduos “filhos” serão cópias idênticas dos “pais”.

A Tabela 3.1 resume a condição de ocorrência, ou não, do crossover. Dado o parâmetro aleatório 𝜇, compreendido entre 0,0 e 1,0, se o valor gerado for menor que 0,8, a condição de cruzamento é estabelecida. Contudo, se estiver entre 0,8 e 1,0, não há crossover e os filhos são cópias idênticas dos pais.

Tabela 3.1 – Condição para realização de crossover

Valor aleatório µ [0-1] Cruzamento Filhos

0 ≤ 𝜇 ≤ 0,8 Sim Resultados do crossover

0,8 < 𝜇 ≤ 1,0 Não Filhos são cópias

idênticas dos pais Fonte: Elaboração do autor

Caso a condição de cruzamento seja estabelecida, é realizada a operação do

Blend Crossover entre as partes dos indivíduos relativas às potências dos geradores

(conforme detalhado no item 3.3.4.1). Nas partes referentes às barras de conexão das cargas, é gerado um ponto de corte aleatório para realização do cruzamento convencional (conforme detalhado no item 3.3.4.2).

A Figura 3.6, representada a seguir, exemplifica uma situação de escolha do ponto de crossover, considerando-se o indivíduo composto por 4 geradores e 4 cargas. As potências dos quatro geradores são representadas pelos componentes PG1, PG2, PG3 e PG4, onde PG é a abreviação de Potência do Gerador. As quatro Barras de Cargas, BC, são representadas pelos componentes BC1, BC2, BC3 e BC4.

Figura 3.6 – Ponto de cruzamento

Fonte: Elaboração do autor

3.3.4.1. Crossover – potências dos geradores

A potências dos geradores dos indivíduos filhos são calculadas mediante uma operação entre as potências dos indivíduos pais: Blend Crossover (BLX-α) proposto por (ESHELMAN & SHAFFER, 1993).

O trabalho de (ESHELMAN & SHAFFER, 1993) mostra que dados dois cromossomos 𝑃1 e 𝑃2, é produzido um cromossomo 𝐶 da seguinte forma:

𝐶 = 𝑃1+ 𝛽(𝑃2− 𝑃1) (3.1)

Onde:

𝛽~ ⋃(−𝛼, 1 + 𝛼) (3.2)

Onde U representa uma distribuição uniforme. Adotando-se 𝛼 = 0,5, tem-se que 𝛽~ ⋃(−0,5 ; 1,5). Logo, para todo crossover, é gerado um valor de 𝛽 aleatório dentro deste intervalo.

Visando aumento da diversidade da população, optou-se por utilizar valores diferentes e aleatórios de 𝛽 para cada crossover dos pares de potências dos indivíduos selecionados.

Aplicando (3.1) e (3.2) ao problema proposto neste trabalho, tem-se as seguintes correspondências:

39 𝛽: distribuição uniforme

𝛼: parâmetro com valor igual a 0,25 ou 0,5 𝑃1: valor de potência ativa do indivíduo Pai-1 𝑃2: valor de potência ativa do indivíduo Pai-2 𝐶1: valor de potência ativa do indivíduo Filho-1 𝐶2: valor de potência ativa do indivíduo Filho-2

3.3.4.2. Crossover – barras de conexões das cargas

A Figura 3.7 exemplifica o crossover de dois indivíduos (pais), gerando dois indivíduos (filhos). Observa-se que a parte do cromossomo dos filhos referentes às potências dos geradores são valores contínuos e foram obtidos mediante aplicação da Equação (3.1). Já as partes relativas às barras de conexão das cargas, por serem valores discretos, foram obtidas mediante aplicação do crossover de 1 ponto.

A operação do crossover deve ser realizada entre as partes equivalentes de cada indivíduo, ou seja, as informações relativas às potências de um indivíduo só devem ser cruzadas com as potências do outro indivíduo. Similarmente, os dados relativos às barras de conexão contidas em um indivíduo só devem ser combinados com os dados das barras do outro indivíduo.

Figura 3.7 – Exemplo de crossover com 4 geradores e 4 cargas

3.3.5. Mutação

Para aumentar a diversidade da população, de forma que o espaço de busca seja explorado de maneira mais eficiente, o algoritmo prevê a criação de indivíduos mutantes. Ou seja, a cada geração, aplicando-se uma taxa de mutação especificada, algumas características de um grupo de indivíduos são modificadas aleatoriamente, surgindo indivíduos mutantes de forma que o algoritmo tenha condições de explorar novos espaços, até então inalcançados.

Na mutação, é realizado um processo iterativo de forma que todos os componentes de todos os indivíduos sejam analisados. Para cada parte do indivíduo, é utilizada uma função aleatória (randômica) para verificar a existência da mutação. Caso o valor obtido seja menor que a taxa de mutação, 1%, essa característica do indivíduo deve ser alterada de forma aleatória.

Caso a mutação ocorra na parte relativa às potências dos geradores, tal potência deve ser substituída por outro valor aleatório – compreendido entre zero e a potência nominal do equipamento. Por outro lado, caso exista mutação em uma barra de carga da rede, esta deve ser alterada por outra, aleatoriamente.

A Figura 3.8 exemplifica a mutação em um indivíduo: tanto na potência do gerador, quanto na barra de carga. Observa-se que há mutação na potência do segundo gerador, alterando o valor de 214,7 kW para 574,9 kW. Além disso, há modificação na barra de conexão da última carga, tendo seu valor alterado de 20 para 3.

Figura 3.8 – Exemplo de mutação

41 Como cada componente do indivíduo é testado independentemente no processo de mutação, é possível que haja indivíduos que não tenham suas características alteradas, enquanto que outros tenham várias partes modificadas. Porém, dado que a taxa de mutação é relativamente baixa, observa-se que, normalmente, no máximo dois componentes de um indivíduo têm seus valores modificados.

3.3.6. Fitness

Como os indivíduos são selecionados de forma proporcional à aptidão, é necessário utilizar a função do fluxo de carga para cada um deles, de forma que os valores de fitness se sejam fornecidos ao AG.

Após definidas as injeções ótimas de potência e as barras para conexão das cargas, executa-se um fluxo de carga para cada indivíduo, considerando as suas características de gerações e cargas. Este valor, por sua vez, é fornecido ao algoritmo genético para continuidade do processamento e obtenção dos resultados.

Documentos relacionados