Ant Colony Optimization e Swarm Intelligence Fabr í cio Olivetti de Fran ç a CAMPINAS,

Slides:



Advertisements
Apresentações semelhantes
Algoritmos de Caminho Mínimo em Grafos
Advertisements

Otimização com Simulated Annealing e Tabu Search
UNICAMP Universidade Estadual de Campinas Centro Superior de Educação Tecnológica Divisão de Telecomunicações Propagação de Ondas e Antenas Prof.Dr. Leonardo.
Programação Dinâmica Dual (Modelo Newave)
GRASP Greedy Randomized Adaptative Search Procedure
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Livro: Introdução à Pesquisa Operacional
Wesley Martins Teles, Li Weigang, Célia Ghedini Ralha
Dárlinton B. Feres Carvalho
Colônia de Formigas (Ant Colony Optimization)
São João del-Rei, 23 a 26 de novembro de 2004
Rodrigo Geraldo Ribeiro Denis Pinto Pinheiro Camila Leles Rezende
Reconhecimento de Padrões Computação Evolutiva
Reconhecimento de Padrões Inteligência de Enxame
Swarm Intelligence (Inteligência Coletiva)
Prof. Rafael Stubs Parpinelli
Otimização por Colônias de Formigas – ACO (Ant Colony Optimization)
Algoritmo das formigas
Inteligência Artificial Distribuída
Inteligência Artificial
Thales Eduardo Nazatto
INF 1771 – Inteligência Artificial
AntColonySwarm: Simulação do Comportamento de uma Colônia de Formigas
Aprendizado de Máquina Aula 13
Finding and Evaluating Community Structure in Networks
Otimização por Colônia de Formigas (ACO)
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
Nuvem de Partículas PSO - Particle Swarm Optimization (1995)
Tópicos em Inteligência Artificial – opt. CI309A inf. ufpr
Otimização.
Algoritmos Culturais.
AntNet Algoritmos de formigas aplicados a encaminhamento de pacotes em redes Pedro Neves nº
Aluno: Rodolfo A. L. Costa Orientador: Prof. Frederico G. Guimarães
Otimização Inteira 5a. Aula Franklina.
Conceitos Básicos Alysson e Franklina 2ºs/
Algoritmos Genéticos.
Uso de Sistemas Imunológicos Artificiais para Detecção de Falhas em Plantas da Indústria de Petróleo. Aluno: Alexandre Willig Quintino dos Santos Orientador:
Otimização por Colônia de Formigas Ant Colony Optimization
Aula T06 – BCC202 Análise de Algoritmos (Parte 4) Túlio Toffolo
Meta-Heurística Colônia de Formigas
Avaliação de Clusteres Parte II
Aprendizagem de Máquina
Problema do menor Caminho
Algoritmos de Busca Local
Redes ADSA António Câmara.
1. Introdução Heitor L. Polidoro 1, Denis F. Wolf 2 Laboratório de Robótica móvel Departamento de Sistemas de Computação Instituto de Ciências Matemáticas.
Sobre uma abordagem do número de estabilidade de um grafo baseada em técnicas de optimização quadrática Carlos J. Luz Instituto Politécnico de Setúbal.
Disciplina Análise de Algoritmos BCC-UFU Profa. Sandra de Amo
Busca Combinatorial e Métodos de Heurística
Leandro M. Almeida OTIMIZAÇÃO BASEADA EM COLÔNIA DE FORMIGAS (ACO) E POR ENXAMES DE PARTÍCULAS (PSO) Leandro M. Almeida
Roteamento Baseado em Crédito/Punição Rafael dos Santos Alves.
Métodos de Resolução Solução Analítica Solução Numérica
Problemas em DLS, são todos NP-Hard ? Pela definição anterior, a resposta é `Não´. Vejamos alguns: O TSP é um problema DLS. Seja n o número de arestas.
Otimização com Colônias de Formigas
Inteligência de Enxame 2 – The Ant Colony Optimization Metaheuristic CPE-730 Filipe de Almeida Araujo Vital Aluno de Graduação em Engenharia de Controle.
Cap. 3 – Algorítimos de otimização por colônia de formigas para o problema do caixeiro viajante Aluno: Luiz Évora Disciplina: CPE 730 – Inteligência de.
Redes de transporte Uma rede ou grafo consiste num número finito de pontos chamados nós ou vértices interligados por arcos. Muitos sistemas, físicos ou.
Otimização por Nuvem de Partículas Maurice Cler Traduzido por A. Pozo.
Mineração de Grafos e Predição de Links
ACO – From Real To Artificial Ants ACO- Ant Colony Optimization From Real To Artificial Ants Rafael Cruz - PESC Disciplina: Inteligência de enxame Professor:
REDES COMPLEXAS Rafael Dahis Engenharia de Computação e Informação UFRJ Redes de Computadores II – 2009/2 Professores: Luis Henrique Otto.
Sistemas de Informação Inteligentes Prof. Nadilma Nunes.
Computação Evolutiva Nome dado ao estudo de algoritmos cuja inspiração é o processo de evolução natural das espécies. Origem: trabalho de um pesquisador.
Disciplina: Inteligência de Enxame Aluno: Benito Fontes Monteiro Filho Professor: Seixas 2011/2.
ASrank Carlos Carlim.
Comunicação Assíncrona em Equipes Distribuídas: Requisitos e Meios Utilizados Cleyton Carvalho da Trindade Universidade Federal de.
Ant Colony Optimization Theory Rio de Janeiro 2011 Disciplina: Inteligência de Enxame Docente: José Manoel Seixas Discente: José Dilermando Costa Junior.
Sistemas de Informação Inteligentes Aula 4 Nadilma Nunes
Algoritmos BioInspirados: Inteligência de Enxames
Ant Colony Optimization Eraylson Galdino da Silva Universidade Federal de Pernambuco Centro de Informática Tópicos Avançados em Inteligência.
Transcrição da apresentação:

Ant Colony Optimization e Swarm Intelligence Fabr í cio Olivetti de Fran ç a CAMPINAS, SP – BRASILagosto / 2006 Departamento de Engenharia de Computação e Automação Industrial Faculdade de Engenharia Elétrica e de Computação Unicamp

Swarm Intelligence Algoritmos em que agentes atuam localmente realizando alguma interação com o grupo Individualismo x Coletivo As ações individuais de cada agente somadas e a interação entre eles formam a solução do problema como um todo Algoritmos populares: Ant Colony Optimization e Particle Swarm Optimization

Travelling Salesman Problem (TSP) G. B. Dantzig, R. Fulkerson, and S. M. Johnson, Solution of a large-scale traveling salesman problem, Operations Research 2 (1954), Um caixeiro viajante deve partir de sua cidade, visitar “n” cidades diferentes, e retornar a sua origem.

Travelling Salesman Problem (TSP) Qual a seqüência de de cidades que devo percorrer de modo que eu gaste o menor tempo possível? Em outras palavras: qual o ciclo hamiltoniano de menor custo?

Travelling Salesman Problem (TSP) A solução ótima pode ser intuitiva para casos simples do problema

Travelling Salesman Problem (TSP) A solução ótima pode ser intuitiva para casos simples do problema

Travelling Salesman Problem (TSP) Mas aumentando um pouco a complexidade do problema, nota-se que a solução já não é mais intuitiva

? Travelling Salesman Problem (TSP) Mas aumentando um pouco a complexidade do problema, nota-se que a solução já não é mais intuitiva

? Travelling Salesman Problem (TSP) Mas aumentando um pouco a complexidade do problema, nota-se que a solução já não é mais intuitiva

? Travelling Salesman Problem (TSP) Mas aumentando um pouco a complexidade do problema, nota-se que a solução já não é mais intuitiva

No exemplo anterior temos 8 cidades. Isso dá um total de (8-1)! = 5040 combinações possíveis. Fácil de resolver! Se aumentarmos para 20 cidades, teríamos (20-1)! = Não é tão simples. Travelling Salesman Problem (TSP)

Agora em um problema típico com 100 cidades, teríamos (100-1)! = 9x combinações possíveis!!!! Se um computador de 10THz consegue processar combinações por ciclo, levaríamos 9x ciclos para completar essa tarefa, 9x segundos, que é igual a 3x anos. O universo tem aproximadamente 13,7x10 9 anos. Travelling Salesman Problem (TSP)

Ant Colony Optimization Goss, S., S. Aron e J. L. Deneubourg. Self-organized shortcuts in the Argentine ant. Naturwissenschaften, v.76, p

Ant Colony Optimization

Foi observado o comportamento das formigas na busca pelos alimentos. Inicialmente cada formiga segue um caminho aleatório Após algum tempo elas tendiam a seguir um único caminho, considerado ótimo Cada formiga utiliza uma comunicação indireta para indicar para as outras o quão bom foi o caminho que ela escolheu Para isso elas espalham uma substância chamada “feromônio”

Ant Colony Optimization Foi colocado um ninho de formigas em um aquário com uma fonte de alimentos na outra ponta. Para chegar até esse alimento foram criados dois caminhos, sendo um maior que o outro. Como as formigas que escolheram o menor caminho faziam o percurso mais rapidamente que as outras, elas acabavam depositando uma maior quantidade de feromônio nesse caminho em relação ao outro em um mesmo instante de tempo. Logo, em um determinado momento a intensidade do feromônio no caminho mais curto estará tão alta que quase todas as formigas seguirão por ele.

Ant Colony Optimization Em 1992, Dorigo percebeu que as formigas resolviam um problema muito similar ao TSP e, inspirado nesse comportamento, resolveu modelá-lo computacionalmente e verificar como se comportava em algumas instâncias conhecidas do problema.

Ant Colony Optimization Dado um grafo com n vértices, colocar uma formiga artificial em cada um destes.

Ant Colony Optimization Cada formiga traça um caminho seguindo uma fórmula probabilística em função do feromônio “depositado” em cada aresta do grafo.

Ant Colony Optimization

Após a construção de todos os caminhos a intensidade de feromônio em cada aresta é acrescida proporcional a qualidade da solução gerada.

While it < max_it do, for each ant do, build_solution(); endfor update_pheromone(); endwhile Ant Colony Optimization Dorigo, M. Optimization, Learning and Natural Algorithms. Politecnico di Milano, Italy, 1992.

Ant Colony Optimization build_solution() Onde: J K é a lista de vértices não visitados; τ i,j é a quantidade de feromônio na aresta (i,j); η i,j é a informação de qualidade dessa aresta (geralmente determinada pelo inverso da distância) α e β são parâmetros que definem o grau de importância de τ e η respectivamente. Para construir a solução cada formiga utiliza iterativamente uma função probabilística para decidir se incluirá ou não determinada aresta na solução.

Ant Colony Optimization update_pheromone() Onde: ρ é a taxa de evaporação do feromônio; Δτ i,j é a quantidade de feromônio que será depositada na aresta (i,j); f(S) é o custo total da solução “S” Para atualizar a trilha de feromônio nas arestas é calculada inicialmente a quantidade a ser depositada em cada uma delas proporcional a qualidade das soluções que elas pertencem

Aplicações TSP Cada vértice representa uma cidade

Aplicações TSP Dorigo M., V. Maniezzo & A. Colorni (1996). Ant System: Optimization by a colony of cooperating agents. IEEE Transactions on Systems, Man, and Cybernetics-Part B, 26(1):29-41 Colorni A., M.Dorigo, F.Maffioli, V. Maniezzo, G. Righini, M. Trubian (1996). Heuristics from Nature for Hard Combinatorial Problems. International Transactions in Operational Research, 3(1):1-21. Dorigo M. & L.M. Gambardella (1997). Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem. IEEE Transactions on Evolutionary Computation, 1(1): (Also Tecnical Report TR/IRIDIA/1996-5, IRIDIA, Université Libre de Bruxelles.) Dorigo M. & L.M. Gambardella (1997). Ant Colonies for the Traveling Salesman Problem. BioSystems, 43: Also Tecnical Report TR/IRIDIA/1996-3, IRIDIA, Université Libre de Bruxelles: Bullnheimer B., R. F. Hartl & C. Strauss (1999). A New Rank Based Version of the Ant System: A Computational Study. Central European Journal for Operations Research and Economics, 7(1):25-38, Also available as Working paper POM 3/97, Institute of Management Science, University of Vienna, Austria:

Aplicações Sequential Ordering Problem Igual ao TSP, mas com restrição de precedência (deve-se visitar um certo vértice i antes de passar pelo vértice j)

Aplicações Sequential Ordering Problem Gambardella L. M. and M. Dorigo (1997). HAS-SOP: An Hybrid Ant System for the Sequential Ordering Problem. Tech. Rep. No. IDSIA 97-11, IDSIA, Lugano, Switzerland.

Aplicações Vehicle Routing É formado por vários problemas de TSP partindo sempre de um ponto central

Aplicações Vehicle Routing Bullnheimer B., R.F. Hartl and C. Strauss (1999). An Improved Ant system Algorithm for the Vehicle Routing Problem. Paper presented at the Sixth Viennese workshop on Optimal Control, Dynamic Games, Nonlinear Dynamics and Adaptive Systems, Vienna (Austria), May 21-23, 1997, to appear in: Annals of Operations Research (Dawid, Feichtinger and Hartl (eds.): Nonlinear Economic Dynamics and Control, Bullnheimer B., R.F. Hartl and C. Strauss (1999). Applying the Ant System to the Vehicle Routing Problem. In: Voss S., Martello S., Osman I.H., Roucairol C. (eds.), Meta-Heuristics: Advances and Trends in Local Search Paradigms for Optimization, Kluwer:Boston. Bullnheimer B. (1999). Ant Colony Optimization in Vehicle Routing. Doctoral thesis, University of Vienna, January 1999.

Aplicações Telecommunications Roteamento de dados em uma rede. É um problema dinâmico, ou seja, existem alterações no ambiente otimizado em função do tempo. Ex.: uma máquina é desconectada, uma linha de transmissão fica congestionada,...

Aplicações Telecommunications Schoonderwoerd R., O. Holland, J. Bruten and L. Rothkrantz (1997). Ant-based Load Balancing in Telecommunications Networks. Adaptive Behavior, 5(2): Schoonderwoerd R., O. Holland and J. Bruten (1997). Ant-like Agents for Load Balancing in Telecommunications Networks. Proceedings of Agents'97, Marina del Rey, CA, ACM Press, Di Caro G. and M. Dorigo (1997). AntNet: A Mobile Agents Approach to Adaptive Routing. Tech. Rep. IRIDIA/97-12, Université Libre de Bruxelles, Belgium. Di Caro G. and M. Dorigo (1998). Mobile Agents for Adaptive Routing. Proceedings of the 31st Hawaii International Conference on System, IEEE Computer Society Press, Los Alamitos, CA, Di Caro G. & Dorigo M. (1998). AntNet: Distributed Stigmergetic Control for Communications Networks. Journal of Artificial Intelligence Research (JAIR), 9: Journal of Artificial Intelligence Research (JAIR), Navarro Varela G. and M.C. Sinclair (1999). Ant Colony Optimisation for Virtual-Wavelength-Path Routing and Wavelength Allocation. Proceedings of the Congress on Evolutionary Computation (CEC'99), Washington DC, USA, July Ducatelle, F., G. Di Caro and L. M. Gambardella (2005). Using Ant Agents to Combine Reactive and Proactive Strategies for Routing in Mobile Ad Hoc Networks. International Journal of Computational Intelligence and Applications (IJCIA), Special Issue on Nature-Inspired Approaches to Networks and Telecommunications, Volume 5, Number 2, Pages , June 2005

Aplicações Quadratic Assigment Problem Dado p pontos denominados “centros”, alocar n pontos para um centro de forma a minimizar a distância total percorrida. Ex.: redes de distribuição de uma fábrica.

Aplicações Quadratic Assigment Problem Maniezzo V., A. Colorni and M. Dorigo (1994). The Ant System Applied to the Quadratic Assignment Problem. Tech. Rep. IRIDIA/94-28, Université Libre de Bruxelles, Belgium. Maniezzo V., L. Muzio, A. Colorni and M. Dorigo (1994). Il sistema formiche applicato al problema dell'assegnamento quadratico. Technical Report No , Politecnico di Milano, Italy, in Italian. Taillard E. and L. M. Gambardella (1997). An Ant Approach for Structured Quadratic Assignment Problems. 2nd Metaheuristics International Conference (MIC-97), Sophia-Antipolis, France - July 21-24, Maniezzo V. (1998). Exact and approximate nondeterministic tree-search procedures for the quadratic assignment problem. Research Report CSR 98-1, Scienze dell'Informazione, UniversitÂ^ di Bologna, Sede di Cesena, Italy. Gambardella L. M., E. Taillard and M. Dorigo (1999). Ant Colonies for the Quadratic Assignment Problem. Journal of the Operational Research Society, 50: Maniezzo V. and A. Colorni (1999). The Ant System Applied to the Quadratic Assignment Problem. IEEE Transactions on Knowledge and Data Engineering, to appear. Stützle T. and M. Dorigo (1999). ACO Algorithms for the Quadratic Assignment Problem. In D. Corne, M. Dorigo and F. Glover, editors, New Ideas in Optimization, McGraw-Hill.

Aplicações P-Medianas O mesmo problema anterior mas também é necessário escolher a localização dos centros. Ex.: planejamento de instalações de novas fábricas

Aplicações P-Medianas De França, F. O., F. J. Von Zuben e L. N. De Castro. Definition of Capacited p-Medians by a Modified Max Min Ant System with Local Search. ICONIP th International Conference on Neural Information Processing - SPECIAL SES-SION ON ANT COLONY AND MULTI-AGENT SYSTEMS, v.3316, 2004, p a. De França, F. O., F. J. Von Zuben e L. N. De Castro. A Max Min Ant System Applied To The Capacitated Clustering Problem IEEE Workshop on Machine Learning for Signal Processing. São Luiz, Brasil: Proceedings of the 2004 IEEE International Workshop on Machine Learning for Signal Processing, 2004b p. De França, F. O., F. J. Von Zuben e L. N. De Castro. Max Min Ant System and Capacitated p-Medians: Extensions and Improved Solutions. Informatica, v.29, n.2, p b.

Aplicações Scheduling (escalonamento) Dividir n tarefas para m máquinas de forma obter o máximo aproveitamento ou menor tempo de processamento possível. Ex.: escalonamento de processos em uma CPU, divisão de projetos em uma empresa, compartilhamento de máquinas em linha de produção.

Aplicações Scheduling Colorni A., M. Dorigo, V. Maniezzo and M. Trubian (1994). Ant system for Job-shop Scheduling. JORBEL - Belgian Journal of Operations Research, Statistics and Computer Science, 34(1): Forsyth P. and A. Wren (1997). An Ant System for Bus Driver Scheduling. Presented at the 7th International Workshop on Computer-Aided Scheduling of Public Transport, Boston, August 1997.

Particle Swarm Optimization - PSO

Craig Reynolds percebeu que a movimentação de bandos de pássaros e cardumes de peixes eram sincronizados sem existir um controle central. Ele então criou um modelo do movimento de bandos de pássaros composto apenas por 4 regras: Separação: para evitar que cada pássaro colidisse com um outro Alinhamento: para fazer com que cada pássaro seguisse a mesma direção de seus vizinhos Coesão: para que cada pássaro seguisse a mesma posição de seus vizinhos Desvio: para que cada pássaro desviasse de obstáculos a frente

Particle Swarm Optimization - PSO Em 1995, James Kennedy and Russell Eberhart seguiram o modelo de Reynolds para aplicar em problemas de otimização contínua. Para isso eles utilizaram as regras de alinhamento e coesão e criaram um sistema de particulas denominado Particle Swarm Optimization (PSO)

Particle Swarm Optimization - PSO [x*] = PSO() P = inicia_particulas(); Para i=1 até max_it, Para cada particula p em P faça, fp = f(p); If fp melhor do que f(pBest) pBest = p; Fim Fim gBest = melhor p em P; Para cada partícula p em P faça, v = v + c1*rand*(pBest – p) + c2*rand*(gBest-p); p = p + v; Fim Fim

Particle Swarm Optimization - PSO Regra de atualização do posicionamento das partículas: p = p + v com: v = v + c1*rand*(pBest – p) + c2*rand*(gBest-p) onde p = posição da partícula v = direção de caminhada c1 = importância da informação local c2 = importância da informação global pBest = melhor posição do passado dessa partícula gBest = melhor posição global dos vizinhos dessa partícula rand = variável aleatória

Particle Swarm Optimization - PSO

Inicialmente no algoritmo, diversas partículas são espalhadas aleatoriamente no espaço de busca. Nas ilustrações a seguir o gráfico anterior estará mapeado em um ambiente 2D para melhor visualização.

Particle Swarm Optimization - PSO Iterativamente cada partícula utiliza a informação de sua melhor posição no passado (em cinza) e da melhor posição atual entre seus vizinhos. Melhor solução na vizinhança Melhor solução dessa partícula em iterações passadas

Particle Swarm Optimization - PSO E então ela se move em uma combinação linear desses dois vetores, com pesos diferentes, em uma nova posição.

Particle Swarm Optimization - PSO

Eberhart, R. C. and Kennedy, J. A new optimizer using particle swarm theory. Proceedings of the Sixth International Symposium on Micromachine and Human Science, Nagoya, Japan. pp , 1995 Kennedy, J. and Eberhart, R. C. Particle swarm optimization. Proceedings of IEEE International Conference on Neural Networks, Piscataway, NJ. pp , 1995 Kannan, S., Slochanal, S. M. R., Subbaraj, P., and Padhy, N. P., "Application of particle swarm optimization technique and its variants to generation expansion planning problem," Electric Power Systems Research, vol. In Press, Corrected Proof Onwubolu, G. C. and Clerc, M., "Optimal path for automated drilling operations by a new heuristic approach using particle swarm optimization," International Journal of Production Research, vol. 4 pp , 2004.

Particle Swarm Optimization - PSO Using Particle Swarm Optimization for Offline Training in a Racing Game

Próxima Aula Dia 12/09 – Sistemas Imunológicos Artificiais