Aula 2d - Estrategias Evolutivas.ppt [Modo de Compatibilidade] · (vwudwpjldv (yroxwlydv...
Transcript of Aula 2d - Estrategias Evolutivas.ppt [Modo de Compatibilidade] · (vwudwpjldv (yroxwlydv...
Estratégias Evolutivas EEs
Prof. Juan Moisés Mauricio Villanueva
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