Aula 2d - Estrategias Evolutivas.ppt [Modo de Compatibilidade] · (vwudwpjldv (yroxwlydv...

29
Estratégias Evolutivas EEs Prof. Juan Moisés Mauricio Villanueva [email protected] www.cear.ufpb.br/juan

Transcript of Aula 2d - Estrategias Evolutivas.ppt [Modo de Compatibilidade] · (vwudwpjldv (yroxwlydv...

Estratégias Evolutivas EEs

Prof. Juan Moisés Mauricio Villanueva

[email protected]

www.cear.ufpb.br/juan

Estratégias Evolutivas

• Desenvolvidas por Rechenberg e Schwefel, eestendida por Herdy, Kursawe e outros autores, foraminicialmente propostas com o objeto de solucionarproblemas de otimização de parâmetros, tantodiscretos como contínuos.

2

Estrutura

3

Algoritmo EE’sIníciot0;Inicialize P(t);Avalie P(t);Enquanto (não condição de parada) FaçaInício

tt+1; Selecione P(t) a partir de P(t-1); Cruzamento P(t); Mutação P(t); Avalie P(t);

FimRetorna a melhor solução;Fim

Codificação da População

• Em contraste com a representação binária dosindivíduos em algoritmos genéticos, as estratégiasevolutivas são diretamente baseadas emrepresentações com vetores de valores reais.

• Os algoritmos evolutivos com codificação real sãogeralmente aplicados para resolver problemas deotimização:– multi-variável

– não lineares

– com restrições

– com máximos ou mínimos locais e/ou globais.

4

Codificação da População• Em problemas de otimização restrita, a codificação

adotada pode fazer com que indivíduos modificadospelos operadores de cruzamento e mutação sejaminválidos.

• Nestes casos, cuidados especiais devem ser tomadosna definição da codificação e na aplicação dosoperadores, observando-se as restrições no domíniodas variáveis.

5

min max

min max min

[ , ]

random

x x x

x x x x rand

rand é um número aleatório entre [0, 1]

Seleção

• A seleção deve ser tal que produza um balançoadequado entre a pressão seletiva e a variaçãointroduzida pelos operadores genéticos.

• Por exemplo, métodos de seleção com elevadapressão seletiva, tendem a gerar super-indivíduos,isto é, indivíduos com aptidão superiores aos demais,reduzindo a diversidade genética da população.

• A presença de um super-indivíduo pode gerar umaconvergência prematura no processo de evolução.

6

Seleção

• Métodos de seleção com baixa pressão seletivatendem a produzir progressos muito lentos noprocesso evolutivo.

• Métodos de Seleção:

– Seleção Proporcional à Função de Aptidão (Fitness)

– Seleção Baseada na Classificação (Rank)

7

Seleção Proporcional ao Fitness

• Também conhecido como roleta ou Roulette Wheel,atribui-se a cada indivíduo de uma população umaprobabilidade de passar à próxima geração proporcionalà sua aptidão ou fitness.

• Indivíduos com maior valor do fitness terão maiorprobabilidade de passar à próxima geração.

• Este método pode fazer com que indivíduos bemadaptados sejam perdidos, ou seja, não passem para apróxima geração, isto devido a que este método éprobabilístico.

8

Seleção Proporcional ao Fitness

• Para uma população de n indivíduos, na qual o i-ésimoindivíduo tem associado a ele uma medida de aptidãopositiva e não nula, a probabilidade deste indivíduo serselecionado é dada por:

9

1

ixi n

jj

fitness xProb

fitness x

Seleção Baseada na Classificação (Rank)

• A seleção proporcional considerando a aptidão dosindivíduos pode ser problemática se os indivíduos dapopulação apresentarem desempenhos muito próximosentre si.

• Além disso, se o tamanho da população é pequeno, aperda de diversidade genética pode levar à convergênciaprematura, pois a busca fica reduzida a poucos pontos,causando uma diminuição no poder de exploração doalgoritmo genético.

10

Seleção Baseada na Classificação (Rank)

• Uma opção para se evitar o surgimento de super-indivíduos (relativos aos demais existentes na populaçãoatual) e a ocorrência de convergência prematura éreduzir as diferenças entre estes, a través de ummecanismo de seleção baseado em rank.

• Esta estratégia utiliza as posições dos indivíduos quandosão ordenados de acordo com o fitness para determinara probabilidade de seleção. Podem ser usadosmapeamentos lineares ou não-lineares para determinar aprobabilidade de seleção.

11

Seleção Baseada na Classificação (Rank)

• Para uma população de n indivíduos P={x1,x2,...,xn}, sãoarranjados em ordem crescente de aptidão ou fitness, talque fitness(xi)<fitness(xj), para todo 1 i j n.

• Define-se SP como a pressão de seleção do ambientesobre os indivíduos. Neste caso, o valor da função deaptidão pode ser calculado por:

• Ranking Linear: O ranking linear permite valores depressão de seleção SP entre [1 ; 2].

12

2.( 1).( 1)( ) 2

1

SP iF i SP

n

Seleção Baseada na Classificação (Rank)

• Ranking Não Linear: O ranking não linear permitevalores de pressão de seleção entre SP[1 ; n-2].

sendo que v é calculado como a raiz do polinômio:

13

1

1

.: 1,...,

n

nj

j

n vF i Para i n

v

1 2. ... 0n nSP n v SP v SP

Seleção Baseada na Classificação (Rank)

• A seleção por Rank tem a desvantagem de exigir aordenação de toda a população, o que pode representarum custo computacional em algumas aplicações.

14

Elitismo

• O termo elitismo está associado à adoção de umaoperação adicional junto aos métodos de seleção, queforça o algoritmo evolutivo a reter o melhor indivíduo ouum número de melhores indivíduos, a cada geração.

• Estes indivíduos poderiam ser perdidos se não fossemselecionados de forma determinística para compor apróxima geração, ou então fossem modificados poroperadores de cruzamento ou mutação.

• Em grande parte dos casos, estratégias elitistasassociadas aos métodos de seleção melhoram odesempenho do algoritmo evolutivo.

15

Operador de Cruzamento

• É responsável pelo intercâmbio de informação genéticaentre os indivíduos de uma população, produzindo novassoluções candidatas ou potencias com algumascaracterísticas já existentes dos pais.

• O processo de cruzamento depende da escolha dospares (ou grupos) de indivíduos. A probabilidade deocorrência de recombinação entre dois indivíduos de umapopulação é denominada taxa de cruzamento que variaentre 0,5 e 1,0.

16

Operador de Cruzamento

• No entanto, uma alta probabilidade de cruzamento fazcom que indivíduos com uma maior aptidão, sejameliminados antes que o processo de seleção possaproduzir aperfeiçoamento.

• Por outro lado, uma baixa probabilidade de cruzamentopode convergir lentamente devido à baixa taxa deexploração das características genéticas.

17

Operador de Cruzamento Aritmético

• Operador de cruzamento desenvolvidos para uso comcodificação em ponto flutuante.

• Este operador esta definido como uma combinação linearde dois vetores (cromossomos): sejam x1 e x2 doisindivíduos selecionados para cruzamento, então os doisfilhos resultantes serão:

sendo a uma variável aleatória definida no intervalo a[0, 1].

18

'1 1 2. 1 .x a x a x

'2 1 21 . .x a x a x

Operador de Cruzamento Aritmético

• Este operador é particularmente apropriado paraproblemas de otimização numérica com restrições, ondea região factível é convexa.

• Isto porque, se x1 e x2 pertencem à região factível,combinações convexas de x1 e x2 serão também factíveis.Assim, garante-se que o operador de cruzamento nãogera indivíduos inválidos.

19

Operador de Mutação

• O operador de mutação modifica aleatoriamente um oumais genes de um cromossomo.

• A probabilidade de ocorrência de mutação em um gene édenominada taxa de mutação. Usualmente, sãoatribuídos valores pequenos para a taxa de mutação.

• A principal contribuição do operador de mutação é criaruma variabilidade extra na população, mas sem destruir oprogresso já obtido com a busca.

20

Operador de Mutação

• No caso de problemas com codificação em pontoflutuante, os operadores de mutação mais populares são:

mutação uniforme

mutação não uniforme

mutação gaussiana

21

Operador de Mutação Uniforme

• O operador mutação uniforme seleciona aleatoriamenteum componente k{1, 2, ..., n} do cromossomo

x = [x1 ... xk .... xn] e gera um indivíduo :

x´=[x1 ... x´k ...xn],

sendo x´k é um número aleatório (com distribuição deprobabilidade uniforme) amostrado no intervalo:

xk [xkmin, xkmax]

22

Operador de Mutação Não Uniforme

• O operador mutação não uniforme foi especialmentedesenvolvido para problemas de otimização comrestrições e codificação em ponto flutuante, destinada arealizar a sintonia fina aos indivíduos da população.

23

x = [x1 ... xk .... xn] e gera um indivíduo :x´=[x1 ... x´k ...xn],

Neste caso, xk sofrerá uma variação para gerar umnovo valor. Esta variação dependerá do problema.

Operador de Mutação Gaussiana

• No caso do operador de mutação gaussiana, todos oscomponentes de um cromossomo x = [x1, ..., xn] sãomodificados na forma.

sendo N(0,) um vetor de variáveis aleatórias gaussianasindependentes, com média zero e desvio padrão .

24

x´ = x + N(0,)

Exemplo: Projeto de um Filtro Passa-Faixa

• Filtro Passa-Faixa

• Largura de banca [100 Hz , 10 kHz]

• Ganho no estágio k=2

• Fator de Qualidade

25

Solução= [RA RB Rf Ri CA CB]

Estratégias Evolutivas

0,101corteLOW corteHIGH

corteHIGH corteLOW

f fQ

f f

Exemplo: Projeto de um Filtro Passa-Faixa

• Estrutura do Filtro Passa-Faixa com frequencia de corteem [100 Hz , 10 kHz].

26

Solução= [RA RB Rf Ri CA CB]

Restrições dos valores dos componentes eletrônicos:

Rmin = 10 ohmRmax = 10k ohmCmin = 10 nFCmax = 500 uF

Função de Fitness

• Pode ser definida uma função de aptidão minimizando oserros quadráticos entre o valor especificado e o valorobtido, para cada conjunto de soluções:

e2fL = Erro Quadrático da Frequência de corte inferior

e2fH = Erro Quadrático da Frequência de corte superior

e2Q = Erro Quadrático do Fator de qualidade

e2k = Erro Quadrático do Ganho

27

2 2 2 21

4 fL fH Q kfitness e e e e

População Inicial

• Geração de números aleatórios dos componenteseletrônicos de acordo às restrições do problema.

• Determinar um tamanho da população, por exemplo 100

28

RA1 RB1 Rf1 Ri1 CA1 CB1RA2 RB2 Rf2 Ri2 CA2 CB2...

RA100 RB100 Rf100 Ri100 CA100 CB100

P0=

100×6

Seleção e Reprodução

• Seleção por Roleta

• Cruzamento Aritmético

• Mutação Gaussiana com valor médio zero e:– Desvio padrão para resistores 1k ohm

– Desvio padrão para capacitores de 1F

• Elitismo:– Os 5 melhores descendentes substituirão aos 5 piores pais

• Parâmetros:– Pc = 0,85 Pm = 0,01 #Gerações = 10000

29