AprendizagemAutomática<br />Mestrado  em Engenharia Informática<br />
Sumário<br />Espaços de Soluções<br />Métodos de procura<br />Algoritmos Genéticos<br />01-10-2010<br />Aprendizagem Autom...
Problema (Caixeiro Viajante)<br />Dado um conjunto de pontos e as distâncias entre eles, qual a ordem de visita que minimi...
Espaço de soluções<br />Dadas as cidades (pontos) A, B, C ... as soluções são todas as combinações possíveis em que estão ...
Espaço de Soluções<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />5<br />Custo<br /> Solução de mais...
Problema dos mínimos Locais<br />Mínimos locais<br />Custo<br />                                Valores de um Parâmetro<br...
Métodos de procura<br />Sequencial (experimentar todas as combinações)<br />Aleatório (experimentar várias combinações, es...
SimulatedAnnealing[Kirkpatrick et al. 83]<br />Semelhante ao processo de arrefecimento de ligas metálicas<br />Tenta preve...
Com uma probabilidade decrescente, mesmo quando é pior (prob. controlada por diferença ao melhor e temperatura)</li></ul>0...
SimulatedAnnealing[Kirkpatrick et al. 83]<br />Probabilidade de aceitação de novo estado<br />01-10-2010<br />Aprendizagem...
Algoritmos Genéticos (GA)[Holland 75]<br />Inspirado na teoria da evolução das espécies<br />Tenta encontrar soluções com ...
GA: Aptidão / Fitness<br />Capacidade para resolver o problema<br />Inverso do erro / custo<br />Adequação de um padrão à ...
GA: Ciclo de Vida<br />Para N gerações (ou até Fbest > E )<br />Para Si (Espécime/Specimen) em população<br />Avaliar Si -...
Problema 1 (KnapSack)<br />Dada uma mochila com capacidade limitada (peso ou volume)<br />Cada “pacote” tem um peso e um v...
Problema 1 (KnapSack)<br />Formulação para GA<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />14<br /...
Problema 2 (Topologia)<br />Dado um conjunto de problemas, qual a melhor topologia de rede para os resolver?<br />01-10-20...
Problema 2 (Topologia)<br />Qual a melhor topologia de uma rede neuronal?<br />01-10-2010<br />Aprendizagem Automática / M...
Problema 3 (Caixeiro Viajante)<br />Ordem das cidades a visitar de modo a diminuir o custo / distância<br />   B, A, C, F,...
GA: Um espécime / specimen<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />18<br />1<br />1<br />0<br...
GA: Mutação (Mutation)<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />19<br />1<br />1<br />0<br />0...
GA: Recombinação (Crossover)<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />20<br />+<br />crossover...
EvolutionaryAlgorithms<br />Principais sub-tipos(ver discussão em GA-FAQ) [Heitkoetteret al. 94]<br />GeneticAlgorithms<br...
Referências<br />[Metropolis et al. 53] N. Metropolis, A.W. Rosenbluth, M.N. Rosenbluth, A.H. Teller, and E. Teller. "Equa...
Upcoming SlideShare
Loading in...5
×

Algoritmos Genéticos

856

Published on

Disciplina da Aprendizagem Automática, Luís.Nunes@iscte.pt, módulo de GA

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
856
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
40
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Algoritmos Genéticos

  1. 1. AprendizagemAutomática<br />Mestrado em Engenharia Informática<br />
  2. 2. Sumário<br />Espaços de Soluções<br />Métodos de procura<br />Algoritmos Genéticos<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />2<br />
  3. 3. Problema (Caixeiro Viajante)<br />Dado um conjunto de pontos e as distâncias entre eles, qual a ordem de visita que minimiza o caminho percorrido passando por todos os pontos, uma única vez em cada ponto.<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />3<br />
  4. 4. Espaço de soluções<br />Dadas as cidades (pontos) A, B, C ... as soluções são todas as combinações possíveis em que estão representadas apenas uma vez todas as cidades<br />Podemos ver estas soluções ligadas entre si como um espaço / grafo<br />Umas soluções podem ser transformadas noutras por (por exemplo) troca de posições entre duas cidades<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />4<br />
  5. 5. Espaço de Soluções<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />5<br />Custo<br /> Solução de mais baixo custo<br /> Soluçõespossíveis<br />
  6. 6. Problema dos mínimos Locais<br />Mínimos locais<br />Custo<br /> Valores de um Parâmetro<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />6<br />
  7. 7. Métodos de procura<br />Sequencial (experimentar todas as combinações)<br />Aleatório (experimentar várias combinações, escolher a melhor)<br />A* (fazer todas as alterações possíveis à melhor solução encontrada até ao momento)<br />SimulatedAnnealing (Arrefecimento simulado)<br />Algoritmos Genéticos (Genetic / EvolutionaryAlgorithms)<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />7<br />
  8. 8. SimulatedAnnealing[Kirkpatrick et al. 83]<br />Semelhante ao processo de arrefecimento de ligas metálicas<br />Tenta prevenir problema dos mínimos locais<br />Exploração aleatória<br />Aceita novo estado<br /><ul><li> Sempre que estado é melhor
  9. 9. Com uma probabilidade decrescente, mesmo quando é pior (prob. controlada por diferença ao melhor e temperatura)</li></ul>01-10-2010<br />Aprendizagem Automática / Machine Learning<br />8<br />
  10. 10. SimulatedAnnealing[Kirkpatrick et al. 83]<br />Probabilidade de aceitação de novo estado<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />9<br />
  11. 11. Algoritmos Genéticos (GA)[Holland 75]<br />Inspirado na teoria da evolução das espécies<br />Tenta encontrar soluções com maior aptidão:<br />gerando uma “população” de soluções possíveis, <br />avaliando-as<br />mutando ou recombinando as mais promissoras, gerando nova população<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />10<br />
  12. 12. GA: Aptidão / Fitness<br />Capacidade para resolver o problema<br />Inverso do erro / custo<br />Adequação de um padrão à resolução do problema<br />Conveniente que seja um número real e que as diferenças nas soluções sejam tão precisas quanto possível<br />Avaliação dos “sobreviventes”: <br />Proporcional à qualidade da solução<br />N melhores<br />Torneio<br />…<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />11<br />
  13. 13. GA: Ciclo de Vida<br />Para N gerações (ou até Fbest > E )<br />Para Si (Espécime/Specimen) em população<br />Avaliar Si -> Fi (Aptidão/Fitness)<br />Escolher os melhores (Bi) (selectedpool / survivors)<br />Gerar nova população, para Si<br />Si = mutate(Ba): a = rand (prioridade aos mais aptos)? OU<br />Si = crossover(Ba, Bb): a, b = rand<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />12<br />
  14. 14. Problema 1 (KnapSack)<br />Dada uma mochila com capacidade limitada (peso ou volume)<br />Cada “pacote” tem um peso e um valor (monetário por exemplo)<br />Como escolher que pacotes levar de modo a maximizar o valor dos pacotes, sem exceder o peso<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />13<br />
  15. 15. Problema 1 (KnapSack)<br />Formulação para GA<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />14<br />(20,2)<br />(24,3)<br />(10,2)<br />(3,2)<br />…<br />1<br />1<br />0<br />1<br />…<br />Cada quadrado indica se o pacote n é levado ou não<br />
  16. 16. Problema 2 (Topologia)<br />Dado um conjunto de problemas, qual a melhor topologia de rede para os resolver?<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />15<br />
  17. 17. Problema 2 (Topologia)<br />Qual a melhor topologia de uma rede neuronal?<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />16<br />
  18. 18. Problema 3 (Caixeiro Viajante)<br />Ordem das cidades a visitar de modo a diminuir o custo / distância<br /> B, A, C, F, D, …<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />17<br />
  19. 19. GA: Um espécime / specimen<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />18<br />1<br />1<br />0<br />0<br />1<br />0<br />1<br />…<br />B, A, C, F, D, …<br />
  20. 20. GA: Mutação (Mutation)<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />19<br />1<br />1<br />0<br />0<br />1<br />0<br />1<br />…<br />1<br />1<br />1<br />0<br />0<br />0<br />1<br />…<br />A, B, C, …<br />A, C, B, ….<br />
  21. 21. GA: Recombinação (Crossover)<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />20<br />+<br />crossover-point<br />1<br />1<br />0<br />0<br />1<br />1<br />0<br />…<br />0<br />1<br />1<br />0<br />0<br />0<br />1<br />…<br />1<br />1<br />0<br />0<br />1<br />0<br />1<br />…<br />
  22. 22. EvolutionaryAlgorithms<br />Principais sub-tipos(ver discussão em GA-FAQ) [Heitkoetteret al. 94]<br />GeneticAlgorithms<br />EvolutionaryProgramming / EvolutionStrategies<br />GeneticProgramming<br />ClassifierSystems<br />(NeuroEvolution)<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />21<br />
  23. 23. Referências<br />[Metropolis et al. 53] N. Metropolis, A.W. Rosenbluth, M.N. Rosenbluth, A.H. Teller, and E. Teller. "Equations of State Calculations by Fast Computing Machines". Journal of Chemical Physics, 21(6):1087-1092, 1953.<br />[Kirkpatrick et al. 83] Kirkpatrick, S.; C. D. Gelatt, M. P. Vecchi (1983-05-13). "Optimization by Simulated Annealing". Science. New Series 220 (4598): 671-680. ISSN 00368075. <br />[Cerny 85] V. Cerny, A thermodynamical approach to the travelling salesman problem: an efficient simulation algorithm. Journal of Optimization Theory and Applications, 45:41-51, 1985<br />[Goldberg 89] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Kluwer Academic Publishers, Boston, MA, 1989.<br />[Fogel 06] D. B. Fogel, Evolutionary Computation: Toward a New Philosophy of Machine Intelligence, IEEE Press, Piscataway, NJ. Third Edition, 2006.<br />[Holland 75] John H. Holland, Adaptation in Natural and Artificial Systems, University of Michigan Press, Ann Arbor, 1975<br />[Koka 92] John Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, MIT Press. ISBN 0-262-11170-5, 1992<br />[Heitkoetter et al. 94] Heitkoetter, Joerg and Beasley, David, eds. (1994) "The Hitch- Hiker's Guide to Evolutionary Computation: A list of Frequently Asked Questions (FAQ)", USENET : comp.ai.genetic. <br />RecursosváriossobreGA<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />22<br />
  24. 24. Sumário<br />Espaços de Soluções<br />Métodos de procura<br />Algoritmos Genéticos<br />01-10-2010<br />Aprendizagem Automática / Machine Learning<br />23<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×