Upload
others
View
10
Download
0
Embed Size (px)
Citation preview
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
Evolução DiferencialIntrodução e Conceitos Básicos
Levy BoccatoRomis Ribeiro de Faissol Attux
Fernando J. Von Zuben
DCA - UNICAMP
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
Resumo
Introdução
Computação Evolutiva
Evolução Diferencial
Conclusão
Referências
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
IntroduçãoMeta-Heurísticas
◮ Uma meta-heurística é um conjunto de mecanismos degerenciamento que atua sobre métodos heurísticosaplicáveis a um extenso conjunto de diferentesproblemas. Em outras palavras, uma meta-heurísticapode ser vista como uma estrutura algorítmica geral quepode ser aplicada a diferentes problemas de otimizaçãocom relativamente poucas modificações que possamadaptá-la a um problema específico.
1 Simulated Annealing2 Busca Tabu3 Otimização por colônias de formigas4 Algoritmos evolutivos
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
IntroduçãoMeta-Heurísticas
◮ Por que estudar meta-heurísticas?◮ Características indesejáveis:
1. Não garantem a obtenção da solução ótima.2. Não têm garantia de convergência.3. Não têm garantia de custo máximo para se chegar a
uma solução.
◮ O grande atrativo: em diversas aplicações, ainda nãoforam concebidos algoritmos exatos de solução oumesmo heurísticas específicas. Além disso, os métodosconvencionais que garantem a localização da melhorsolução são infactíveis. Nestas situações, asmeta-heurísticas se tornam candidatas interessantes.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Síntese
Esqueleto básico
Evolução
Diferencial
Conclusão
Referências
Computação EvolutivaSíntese
◮ A computação evolutiva se inspira em princípios dateoria da evolução e seleção natural e utiliza modelosdestes processos naturais para a solução de problemas.
◮ Principais Ramos:1. Algoritmos Genéticos2. Estratégias Evolutivas3. Programação Evolutiva4. Programação Genética5. Sistemas Classificadores
Evolução
Diferencial
Introdução
Computação
Evolutiva
Síntese
Esqueleto básico
Evolução
Diferencial
Conclusão
Referências
Computação EvolutivaEsqueleto Básico
◮ Gere aleatoriamente uma população de soluçõescandidatas.
◮ Enquanto o critério de parada não for satisfeito, faça:1. recombine alguns indivíduos da população2. mute alguns indivíduos da população3. avalie todo o repertório de soluções candidatas4. selecione segundo algum critério quais soluções irão
para a próxima geração
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialHistórico
◮ 1995 - primeira publicação sobre differential evolution (DE).
◮ 1996 - DE participa da Primeira Competição Internacionalem Computação Evolutiva, realizada em Nagoya, durante oIEEE Congress on Evolutionary Computation, e conquista oterceiro lugar geral.
◮ 1997 - Storn, R. e Price, K.,“Differential Evolution - a Simpleand Efficient Heuristic for Global Optimization overContinuous Spaces”, Journal of Global Optimization.
◮ 1999 - seção dedicada a DE no livro New Ideas in
Optimization.
◮ 2005 - primeiro livro dedicado a DE, intitulado Differential
Evolution: A Practical Approach to Global Optimization.
◮ 2006 - sessão especial sobre DE no WCCI-CEC’06.
◮ 2008 - Advances in Differential Evolution.
◮ 2009 - tópico dedicado a DE na IEEE Transactions on
Evolutionary Computation.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialResumo
◮ Este algoritmo utiliza NP vetores de parâmetrosD-dimensionais xi ,G , i = 1, . . . ,NP , como população emcada geração G .
◮ O conjunto inicial de vetores é gerado aleatoriamente edeve cobrir todo o espaço de busca. Na ausência dequalquer conhecimento acerca do espaço de busca(regiões promissoras ou mesmo soluções parciais),utiliza-se uma distribuição uniforme para a populaçãoinicial.
◮ DE gera novos vetores de parâmetros através da adiçãoda diferença ponderada entre dois vetores de parâmetrosa um terceiro indivíduo. Considere esta operação comouma mutação.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialResumo
◮ Os vetores de parâmetros mutados são entãocombinados com outros vetores pré-determinados,denomidados target vectors, a fim de gerar os trialvectors. Esta combinação de parâmetros é referida comocrossover em DE. É importante ressaltar que cada vetorpresente na atual população deve ser usado uma vezcomo target vector.
◮ Caso o trial vector forneça um valor de fitness maior(maximização) que aquele associado ao respectivotarget vector, este último dará lugar ao primeiro napróxima geração. Esta operação corresponde à seleção.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialMutação
◮ Para cada target vector xi ,G , i = 1, . . . ,NP , um novovetor é gerado por meio da seguinte relação:
vi ,G+1 = xr1,G + F · (xr3,G − xr2,G ) (1)
◮ r1,r2,r3 ∈ 1, 2, . . . ,NP são índices mutuamente distintose também diferentes do índice i .
◮ F é uma constante real ∈ [0, 2] que determina otamanho do passo a ser dado na direção definida pelovetor diferença xr3,G − xr2,G .
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplo: Mutação
◮ Seja xi ,G o atual target vector.
x1
x0
xi ,G
xr2,G
xr3,G
F (xr3,G − xr2,G )
xr1,G
xr1,G + F (xr3,G − xr2,G )
Figura: Exemplo bidimensional do processo de mutação.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialCrossover
◮ Com a finalidade de aumentar a diversidade dos vetoresde parâmetros mutados, um procedimento similar aocrossover é utilizado.
◮ Seja xi ,G o target vector sob análise e vi ,G+1 orespectivo vetor mutado obtido por meio da relação (1)apresentada anteriormente.
◮ O vetor ui ,G+1 = (u1i ,G+1 u2i ,G+1 . . . uDi ,G+1),denominado trial vector, é obtido da seguinte maneira:
uji ,G+1 =
{
vji ,G+1, se rj ≤ CR ou j = Ii
xji ,G , se rj > CR e j 6= Ii, (2)
onde j = 1, . . . ,D, rj ∽ U(0,1), CR ∈ [0, 1] é umaconstante definida pelo usuário e Ii é um índicealeatoriamente escolhido ∈ 1, . . . ,D, o que garante queui ,G+1 recebe pelo menos uma componente de vi ,G+1.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplo: Crossover
◮ Seja xi ,G o target vector sob análise e vi ,G+1 orespectivo vetor mutado obtido por meio da relação (1).A Figura abaixo esboça o processo de geração do trialvector ui ,G+1.
j = 1 j = 1j = 12 223 334 445 556 667 778 889 9910 101011 1111
xi ,G vi ,G+1 ui ,G+1
rj ≤ CR
rj ≤ CR
j = Ii
Figura: Exemplo do processo de crossover.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialSeleção
◮ Após as etapas de mutação e crossover, nas quais todosos NP vetores serviram como target vector, a seleçãodos vetores que serão preservados para a próximageração é feita usando um critério guloso.
◮ Seja xi ,G o target vector sob análise e ui ,G+1 seurespectivo trial vector.
1 Se f (ui,G+1) > f (xi,G ), então xi,G+1 = ui,G+1.(maximização)
2 Caso contrário, xi,G+1 = xi,G .
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialPseudo-Código
Quadro 1 Evolução DiferencialFunction x = DE(NP,CR,F ,range,f)x ⇐ random(range,NP)fitx ⇐ f(x)while critério de parada não for satisfeito do
for i = 1 até NP do
vi,G+1 ⇐ mutação(xi,G ,F )ui,G+1 ⇐ crossover(xi,G ,vi,G+1,CR)
end for
fitu ⇐ f(u)for i = 1 até NP do
if fitu(i) > fitx (i) then
xi,G+1 ⇐ ui,G+1
else
xi,G+1 ⇐ xi,G
end if
end for
end while
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialNotação
◮ A fim de facilitar a discriminação das principais variantesde DE, a notação DE/x/y/z foi introduzida, onde:
1. x - especifica o vetor a ser mutado, isto é, xr1,G .2. y - determina o número de vetores diferença (direções)
utilizados na etapa de mutação.3. z - indica o esquema de crossover adotado.
◮ DE/rand/1/bin corresponde ao algoritmo apresentadonas seções anteriores e representa a proposta clássica daevolução diferencial.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialOutros operadores de mutação
◮ DE/rand/2• mutação:
vi,G+1 = xr1,G + F · (xr3,G − xr2,G ) + F · (xr5,G − xr4,G )
◮ DE/best/2• mutação:
vi,G+1 = xbest,G + F · (xr2,G − xr1,G )+ F · (xr4,G − xr3,G )
◮ DE/target-to-best/1 - não parece o particle swarm?• mutação:
vi,G+1 = xi,G + F · (xbest,G − xi,G ) + F · (xr2,G − xr1,G )
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialOutros operadores de crossover
◮ DE/exp
Seja xi ,G o target vector sob análise e vi ,G+1 o respectivovetor mutado. O trial vector ui ,G+1, é obtido da seguintemaneira:
uji ,G+1 =
{
vji ,G+1, para j = 〈n〉D , . . . , 〈n + L − 1〉Dxji ,G , para todos os outros j ∈ [1,D]
, (3)
onde n é um inteiro aleatoriamente escolhido ∈ 1, . . . ,D, Ldenota o número de componentes que ui ,G+1 recebe devi ,G+1 e 〈·〉D denota a função mod com módulo D.O valor de L é determinado da seguinte maneira: Dadoa = [a1 . . . aD ], onde ai ∽ U(0, 1), então
L = maxi{i ∈ [1,D] | ai ≤ CR e i 6= D}.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialDE satisfaz alguns requisitos interessantes
capacidade de lidar com funções custo não-lineares,não-diferenciáveis e multimodais.
passível de paralelização.
acessibilidade - poucas variáveis de controle cujosvalores são ajustados de maneira relativamente simples.
auto-ajuste do passo de adaptação - conforme apopulação converge, os passos são cada vez menores.
boas propriedades de convergência.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplos
◮ Maximizar a funçãof (x , y) = xsin(4πx)− ysin(4πy + π) + 1, x ,y ∈ [−1, 2].O máximo global situa-se no ponto (1,62888, 1,62888).
◮ Parâmetros DE: NP = 100, CR = 0,9, F = 0,5.
−1
0
1
2
−1
0
1
2−4
−2
0
2
4
6
xy
f(x,y
)
0 20 40 60 80 1001
1.5
2
2.5
3
3.5
4
4.5
fitness médio
fitness do melhor indivíduo
Figura: População final e curvas de fitness.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplos
◮ Minimizar a função de Michalewicz definida como
f (x , y) = −
D∑
i=1
sin (xi ) sin (ixi2/π)
2p,
com x ,y ∈ [0, π]. O parâmetro p define a superfície dafunção. Neste exemplo, usamos p = 10. Com D = 2, o valormínimo de f (x , y) é igual a −1,8013.
◮ Parâmetros DE: NP = 100, CR = 0,9, F = 0,5.
0
1
2
3
4
0
1
2
3
4−2
−1.5
−1
−0.5
0
xy
f(x,y
)
0 20 40 60 80 100−2
−1.8
−1.6
−1.4
−1.2
−1
−0.8
−0.6
−0.4
−0.2
fitness médio
fitness do melhor indivíduo
Figura: População final e curvas de fitness.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplos
◮ Minimizar a função de Rosenbrock:
f (x) =
D−1∑
i=1
(1 − xi )2 + 100(xi+1 − xi
2)2,
com xi ∈ [−1, 2]. Neste exemplo, adotamos D = 10. O mínimo globalde f (x) está situado no ponto (x1, . . . , xD) = (1, . . . , 1).
◮ Parâmetros DE: NP = 100, CR = 0,9, F = 0,5.◮ Após 1000 gerações, a DE foi capaz de localizar o ótimo global
precisamente. Na verdade, todos os NP indivíduos atingiram o ótimoglobal.
◮ A Figura abaixo mostra a superfície desta função no caso D = 2.
−1
0
1
2
−1
0
1
20
500
1000
1500
2000
2500
3000
xy
f(x,y
)
Figura: Superfície da função de Rosenbrock.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplos de Aplicações
◮ Projeto de Filtros:
1. Storn, R., “Designing Nonstandard Filters withDifferential Evolution”,IEEE Signal Processing
Magazine, 2005, pp. 103 - 106.2. Storn, R., “Differential Evolution Design of an
IIR-Filter”,Proceedings of IEEE International Conference
on Evolutionary Computation, pp. 268 - 273, 1996.
◮ Redes Neurais:
1. Masters, T. e Land, W., “A new training algorithm forthe general regression neural network”, Proceedings of
IEEE International Conference on Systems, Man, and
Cybernetics, pp. 1990 - 1994, 1997.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplos de Aplicações
◮ Telecomunicações:
1. Mendes, S.P., Gomez Pulido, J.A., Vega rodriguez,M.A., Jaraiz simon, M.D. e Sanchez Perez, J.M.,“ADifferential Evolution Based Algorithm to Optimize theRadio Network Design Problem”, Proceedings of the
Second IEEE International Conference on e-Science and
Grid Computing, 2006.
◮ Otimização e Controle:
1. Babu, B.V. e M.M.L. Jehan, “Differential Evolution forMulti-Objective Optimization”, Proceedings of IEEE
Congress on Evolutionary Computation, pp. 2696-2703,2003.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialExemplos de Aplicações
◮ Otimização Discreta:1. Onwubolu, G. e Davendra, D., “Scheduling flow shops using
differential evolution algorithm”, European Journal of Operational
Research, vol. 171, no. 2, pp. 674-692, 2006.2. Sauer, J.G. e Coelho, L.S. “Discrete Differential Evolution with
local search to solve the Traveling Salesman Problem:Fundamentals and case studies”, IEEE International Conference
on Cybernetic Intelligent Systems, 2008.3. Tasgetiren, M.F., Pan, Q.K., Suganthan, P.N. e Liang, Y.C., “A
discrete differential evolution algorithm for the total earliness andtardiness penalties with a common due date on a single-machine”,Proceedings of IEEE Symposium on Computational Intelligence in
Scheduling, pp. 271-278, 2007.4. Tasgetiren, M.F., Pan, Q.K., Suganthan, P.N. e Liang, Y.C., “A
discrete differential evolution algorithm for the no-wait flowshopscheduling problem with total flowtime criterion”, Proceedings of
IEEE Symposium on Computational Intelligence in Scheduling,pp. 271-278, 2007.
5. Tasgetiren, M.F., Suganthan, P.N. e Pan, Q.K., “A discretedifferential evolution algorithm for the permutation flowshopscheduling problem”, Proceedings of Genetic and Evolutionary
Computation Conference, pp. 158-167, 2007.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Histórico
Resumo
Mutação
Crossover
Seleção
Pseudo-Código
Notação
Outros operadores
Requisitos
Exemplos
Aplicações
Auto-adaptação
Conclusão
Referências
Evolução DiferencialAuto-adaptação
◮ Estratégias Evolutivas: os parâmetros da mutaçãogaussiana são incorporados ao genótipo de cadaindivíduo da população.
◮ Idéia: adaptar os parâmetros CR e F juntamente comos vetores de parâmetros xi ,G .
◮ Cada indivíduo passa a ser representado da seguintemaneira: [x1i ,G . . . xDi ,G CRi ,G Fi ,G ].
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
ConclusãoConsiderações finais
◮ Evolução Diferencial constitui uma vertente interessantedentro da Computação Evolutiva. Tal abordagem se mostrabastante simples e eficiente em diversos contextos.
◮ Tópicos de interesse na sessão dedicada a DE (WCCI 2006):
1 Theory of differential evolution.2 Analysis of parameter settings (scale factor, crossover
rate, population size).3 Multi-objective differential evolution.4 Differential evolution for noisy problems.5 Differential evolution for constrained optimization.6 Hybridization (with local search and other soft
computing approaches).7 Applications in diverse domains.
◮ Novas contribuições certamente serão úteis e pesquisas nestaárea são encorajadas.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
ReferênciasEvolução Diferencial
◮ Storn, R. e Price, K., “Differential Evolution - a Simple and EfficientAdaptive Scheme for Global Optimization over Continuous Spaces” ,Technical Report TR-95-012, ICSI, 1995.
◮ Storn, R. e Price, K.,“Differential Evolution - a Simple and EfficientHeuristic for Global Optimization over Continuous Spaces”, Journal of
Global Optimization, Kluwer Academic Publishers, vol. 11, pp. 341 -359, 1997.
◮ Das, S. e Suganthan, P. N., “Differential Evolution: A Survey of theState-of-the-Art”, IEEE Transactions on Evolutionary Computation, vol.15, no. 1, pp. 4–31, 2011.
◮ Dasrupta, S., Das, S., Biswas, A. e Abraham, A., “On Stability andConvergence of the Population-Dynamics in Differential Evolution”, AI
Communications, vol. 22, 2009.
◮ Brest,J., Greiner, S., Boskovic, B., Mernik, M. e Zumer,V.,“Self-Adapting Control Parameters in Differential Evolution: AComparative Study on Numerical Benchmark Problems”, IEEE
Transactions on Evolutionary Computation, vol. 10, no. 6, pp.646–657, 2006.
Evolução
Diferencial
Introdução
Computação
Evolutiva
Evolução
Diferencial
Conclusão
Referências
Referências - CEC’09Evolução Diferencial
◮ Yang, Z., Zhang, J., Tang, K., Yao, X. e Sanderson, A.C., “An AdaptiveCoevolutionary Differential Evolution Algorithm for Large-scaleOptimization”, Proceedings of the IEEE Congress on Evolutionary
Computation, 2009.
◮ Tirronen, V., Neri, F. e Rossi, T., “Enhancing Differential EvolutionFrameworks by Scale Factor Local Search - Part I”, Proceedings of the
IEEE Congress on Evolutionary Computation, 2009.
◮ Neri, F., Tirronen, V. e Kärkkäinen, T., “Enhancing DifferentialEvolution Frameworks by Scale Factor Local Search - Part II”,Proceedings of the IEEE Congress on Evolutionary Computation, 2009.
◮ Davendra, D., Zelinka, I. e Onwubolu, G., “Clustered PopulationDifferential Evolution Approach to Quadratic Assignment Problem”,Proceedings of the IEEE Congress on Evolutionary Computation, 2009.
◮ Brest,J., Zamuda, A., Boskovic, B., Maucec, M.S., e Zumer,V.,“Dynamic Optimization using Self-Adaptive Differential Evolution”,Proceedings of the IEEE Congress on Evolutionary Computation, 2009.