29
Evolução Diferencial Introdução Computação Evolutiva Evolução Diferencial Conclusão Referências Evolução Diferencial Introdução e Conceitos Básicos Levy Boccato Romis Ribeiro de Faissol Attux Fernando J. Von Zuben DCA - UNICAMP

Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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

Page 2: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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

Page 3: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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

Page 4: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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.

Page 5: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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

Page 6: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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

Page 7: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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.

Page 8: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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

◮ 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.

Page 9: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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.

Page 10: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 .

Page 11: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 12: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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.

Page 13: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 14: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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 .

Page 15: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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

Page 16: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 17: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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 )

Page 18: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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}.

Page 19: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 20: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 21: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 22: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 23: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 24: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 25: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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.

Page 26: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computaçã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 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 ].

Page 27: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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.

Page 28: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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.

Page 29: Evolu o Diferencial - Introdu o e Conceitos B sicoslboccato/topico_11_evolucao_diferencial.pdf · Fernando J. Von Zuben DCA - UNICAMP. Evolução Diferencial Introdução Computação

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.