2. Sumário Espaços de Soluções Métodos de procura Algoritmos Genéticos 01-10-2010 Aprendizagem Automática / Machine Learning 2
3. Problema (Caixeiro Viajante) 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. 01-10-2010 Aprendizagem Automática / Machine Learning 3
4. Espaço de soluções 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 Podemos ver estas soluções ligadas entre si como um espaço / grafo Umas soluções podem ser transformadas noutras por (por exemplo) troca de posições entre duas cidades 01-10-2010 Aprendizagem Automática / Machine Learning 4
5. Espaço de Soluções 01-10-2010 Aprendizagem Automática / Machine Learning 5 Custo Solução de mais baixo custo Soluçõespossíveis
6. Problema dos mínimos Locais Mínimos locais Custo Valores de um Parâmetro 01-10-2010 Aprendizagem Automática / Machine Learning 6
7. Métodos de procura Sequencial (experimentar todas as combinações) Aleatório (experimentar várias combinações, escolher a melhor) A* (fazer todas as alterações possíveis à melhor solução encontrada até ao momento) SimulatedAnnealing (Arrefecimento simulado) Algoritmos Genéticos (Genetic / EvolutionaryAlgorithms) 01-10-2010 Aprendizagem Automática / Machine Learning 7
8.
9. Com uma probabilidade decrescente, mesmo quando é pior (prob. controlada por diferença ao melhor e temperatura)01-10-2010 Aprendizagem Automática / Machine Learning 8
11. Algoritmos Genéticos (GA)[Holland 75] Inspirado na teoria da evolução das espécies Tenta encontrar soluções com maior aptidão: gerando uma “população” de soluções possíveis, avaliando-as mutando ou recombinando as mais promissoras, gerando nova população 01-10-2010 Aprendizagem Automática / Machine Learning 10
12. GA: Aptidão / Fitness Capacidade para resolver o problema Inverso do erro / custo Adequação de um padrão à resolução do problema Conveniente que seja um número real e que as diferenças nas soluções sejam tão precisas quanto possível Avaliação dos “sobreviventes”: Proporcional à qualidade da solução N melhores Torneio … 01-10-2010 Aprendizagem Automática / Machine Learning 11
13. GA: Ciclo de Vida Para N gerações (ou até Fbest > E ) Para Si (Espécime/Specimen) em população Avaliar Si -> Fi (Aptidão/Fitness) Escolher os melhores (Bi) (selectedpool / survivors) Gerar nova população, para Si Si = mutate(Ba): a = rand (prioridade aos mais aptos)? OU Si = crossover(Ba, Bb): a, b = rand 01-10-2010 Aprendizagem Automática / Machine Learning 12
14. Problema 1 (KnapSack) Dada uma mochila com capacidade limitada (peso ou volume) Cada “pacote” tem um peso e um valor (monetário por exemplo) Como escolher que pacotes levar de modo a maximizar o valor dos pacotes, sem exceder o peso 01-10-2010 Aprendizagem Automática / Machine Learning 13
15. Problema 1 (KnapSack) Formulação para GA 01-10-2010 Aprendizagem Automática / Machine Learning 14 (20,2) (24,3) (10,2) (3,2) … 1 1 0 1 … Cada quadrado indica se o pacote n é levado ou não
16. Problema 2 (Topologia) Dado um conjunto de problemas, qual a melhor topologia de rede para os resolver? 01-10-2010 Aprendizagem Automática / Machine Learning 15
17. Problema 2 (Topologia) Qual a melhor topologia de uma rede neuronal? 01-10-2010 Aprendizagem Automática / Machine Learning 16
18. Problema 3 (Caixeiro Viajante) Ordem das cidades a visitar de modo a diminuir o custo / distância B, A, C, F, D, … 01-10-2010 Aprendizagem Automática / Machine Learning 17
23. Referências [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. [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. [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 [Goldberg 89] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Kluwer Academic Publishers, Boston, MA, 1989. [Fogel 06] D. B. Fogel, Evolutionary Computation: Toward a New Philosophy of Machine Intelligence, IEEE Press, Piscataway, NJ. Third Edition, 2006. [Holland 75] John H. Holland, Adaptation in Natural and Artificial Systems, University of Michigan Press, Ann Arbor, 1975 [Koka 92] John Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, MIT Press. ISBN 0-262-11170-5, 1992 [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. RecursosváriossobreGA 01-10-2010 Aprendizagem Automática / Machine Learning 22
24. Sumário Espaços de Soluções Métodos de procura Algoritmos Genéticos 01-10-2010 Aprendizagem Automática / Machine Learning 23