Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Recozimento Simulado

Madson Dias
December 11, 2016

Recozimento Simulado

Apresentação Básica sobre Recozimento Simulado (simulated annealing, SA)

Madson Dias

December 11, 2016
Tweet

More Decks by Madson Dias

Other Decks in Science

Transcript

  1. Recozimento Simulado Madson L. Dantas Dias1 1Programa de Pós-Graduação em

    Ciência da Computação, Instituto Federal de Educação, Ciência e Tecnologia do Ceará. 12 de dezembro de 2016 DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 1 / 17
  2. Agenda 1 Introdução 2 Algoritmo 3 Problema real 4 Conclusões

    5 Exercícios DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 2 / 17
  3. Agenda 1 Introdução 2 Algoritmo 3 Problema real 4 Conclusões

    5 Exercícios DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 3 / 17
  4. Introdução Recozimento (Annealing) Resfriamento rápido conduz a produtos de maior

    energia interna Resfriamento lento conduz a produtos de menor energia Probabilidade de mudança de Ei para Ej P(Ej ) = exp − Ej − Ei kBT , (1) em que kB é uma constante de Boltzmann e T é a temperatura Metropolis et al. [1] propôs melhorias no processo de Annealing DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 4 / 17
  5. Introdução Proposto por S. Kirkpatrick et al. [2] e V.

    Čern` y [3] separadamente Tabela 1: Analogias entre annealing e um problema de otimização. Annealing Problema de otimização Estado do sistema Solução factível Energia Função custo Estado fundamental Solução heuristica Temperatura Parâmetro de controle Mudança de estado Solução vizinha Recozimento Simulado (Simulated Annealing, SA) Metaheurística de otimização de exploração local Reduz a probabilidade de ficar preso em mínimos locais DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 5 / 17
  6. Agenda 1 Introdução 2 Algoritmo 3 Problema real 4 Conclusões

    5 Exercícios DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 6 / 17
  7. Algoritmo Entradas Solução inicial: α0 Temperatura inicial: T0 Temperatura final:

    Tf Valor desejado de energia: Sf Requerimentos Função de agendamento de temperaturas: W (T) Função de energia: H(α) Função de vizinhança: Next(α) Função de repetição: F(T) DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 7 / 17
  8. Algoritmo Recozimento-Simulado(α0, T0, Tf , Sf ) 1 T ←

    T0 2 α ← α0 3 while T > Tf and H(α) > Sf 4 do for i = 1 to F(T) 5 do α ← Next(α) 6 ∆ ← H(α ) - H(α) 7 if ∆ < 0 8 then α ← α 9 elseif Rand[0, 1] < exp(−∆ T ) 10 then α ← α 11 T ← W (T) 12 return α DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 8 / 17
  9. Agenda 1 Introdução 2 Algoritmo 3 Problema real 4 Conclusões

    5 Exercícios DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 9 / 17
  10. Travelling Salesman Problem, TSP Determinar a menor rota para percorrer

    uma série de cidades Visitando uma única vez cada uma delas (restrição) Retornar a cidade de origem Figura 1: travelling salesman problem (https://xkcd.com/399/) DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 10 / 17
  11. Travelling Salesman Problem, TSP Entradas Solução inicial: α0 Temperatura inicial:

    T0 Temperatura final: Tf Valor desejado de energia: Sf Requerimentos Função de agendamento de temperaturas: W (T) Função de energia: H(α) Função de vizinhança: Next(α) Função de repetição: F(T) DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 11 / 17
  12. Travelling Salesman Problem, TSP Entradas Solução inicial: α0 = Sequência

    de cidades sem repetições Temperatura inicial: T0 = 1 Temperatura final: Tf = 1e − 10 Valor desejado de energia: Sf = 0 Requerimentos Função de agendamento de temperaturas: W (T) = 0.8T Função de energia: H(α) = Calcular distância da rota Função de vizinhança: Next(α) = swap Função de repetição: F(T) = 50 DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 11 / 17
  13. Agenda 1 Introdução 2 Algoritmo 3 Problema real 4 Conclusões

    5 Exercícios DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 12 / 17
  14. Conclusões Fácil implementação Alto controle das soluções Ideal para problemas

    com restrições Requer o mínimo de conhecimento sobre o problema Parâmetros adequados são obtidos através de experimentação DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 13 / 17
  15. Agenda 1 Introdução 2 Algoritmo 3 Problema real 4 Conclusões

    5 Exercícios DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 14 / 17
  16. Exercícios 1. Usar SA1 para otimizar os pesos de uma

    multilayer perceptron (MLP). 1Código disponível em: http://github.com/omadson/metaheuristics/ DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 15 / 17
  17. Referências I N. Metropolis, A. W. Rosenbluth, M. N. Rosenbluth,

    A. H. Teller, and E. Teller, “Equation of state calculations by fast computing machines,” The journal of chemical physics, vol. 21, no. 6, pp. 1087–1092, 1953. S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi, “Optimization by simulated annealing,” Science, vol. 220, no. 4598, pp. 671–680, 1983. V. Čern` y, “Thermodynamical approach to the traveling salesman problem: An efficient simulation algorithm,” Journal of optimization theory and applications, vol. 45, no. 1, pp. 41–51, 1985. DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 16 / 17
  18. Perguntas e Contato Perguntas? Contato Madson L. Dantas Dias ([email protected])

    Apresentação disponível em: http://speakerdeck.com/omadson/ DIAS, M. L. D. (PPGCC / IFCE) Recozimento Simulado 12 de dezembro de 2016 17 / 17