Escolar Documentos
Profissional Documentos
Cultura Documentos
Disciplina: ODST Professores: Jos Oliveira e Maria Carravilla Aluno: Marcelo Nogueira
FEUP FEVEREIRO 2008
Introduo
Algoritmos de formigas: propostos inicialmente por Dorigo para soluo de problemas de optimizao combinatria Inspirado na observao de colnias de formigas reais Formiga: insecto social, ou seja, vive em colnias e tem comportamento direccionado para a sobrevivncia da colnia ao invs de um nico individuo da colnia
Formigueiro
Comida
Formigueiro
Comida
Formigueiro
Comida
Formigueiro
Comida
Formigueiro
Comida
Formigueiro
Comida
Percorrer_caminho() Iniciar aleatoriamente em uma cidade do grafo Enquanto(caminho incompleto) escolher prxima cidade ainda no visitada de acordo com a regra de probabilidades incluir tal cidade na soluo parcial Fim_enquanto Calcular custo do camiho Para a formiga k decorar caminho realizado e custo Fim
Parmetros do AS
Existem basicamente 3 parmetros a serem ajustados:
Alpha: informa a importncia do feromnio na escolha da prxima cidade Beta: informa a importncia da distancia entre cidades (visibilidade) na escolha da prxima cidade Rho: taxa de evaporao do feromnio
Variaes do AS
Actualizao do feromnio na medida que cada formiga termina seu caminho
Enquanto (criterio de parada) Para cada formiga k J actualiza o feromnio Percorrer_caminho() das arestas Atualizar_feromonio() fim_para Decorar_melhor_solucao_atual() Fim_enquanto
Actualizao do feromnio na medida que cada formiga faz seu caminho: ao passar por uma aresta, a formiga deposita uma certa quantidade Q de feromnio
Enquanto (criterio de parada) Para cada formiga k Percorrer_caminho(){ Atualizar_feromonio() } fim_para Decorar_melhor_solucao_atual() Fim_enquanto
Aplicaes
Principalmente para o TSP, mas tambm pode ser aplica do a:
Scheduling Network synthesis Vehicle routing
Vantagens e Desvantagens
Walter Gutjahr provou que um algoritmo particular de ACO converge para a soluo optima. Mas tal algoritmo no foi implementando e bem difente de qualquer impletao j feira AS fornece boms resultados para grafos pequenos (30 cidades), mas para grafos maiores os resultados pioram, e exigem variaes do AS Para problemas grandes, uma grande quantidade de memria usada Mtodo lento: muitos clculos de ponto flutuante (probabilidades)
Resultados obtidos
29 cidades: arquivo 51 cidades: arquivo
Resultados obtidos
1002 cidades - ptimo: 259045
1 5 0.9 e 50 iteraes com numero de formigas reduzido 50 formigas( 15 minutos)
Custo= 363833
1 7 0.9 e 50 iteraes
Custo= 333268
Concluses
Algoritmo novo, ainda em desenvolvimento Resultados muito bons para problemas pequenos. Para problemas grandes temos que utilizar modificaes do AS
Bibliografia
http://www.aco-metaheuristic.org visitada em 29/01/2008 Ant Algorithms for Discrete Optimization, Marco Dorigo, Gianni Di Caro and Luca M. Gambardella The Ant System: Optimization by a colony of cooperating agents, Marco Dorigo, Vittorio Maniezzo, and Alberto Colorni www.wikipedia.org, visitada em 29/01/2008 Ant colony optimization theory: A survey, Marco Dorigo and Christian Blum The ant Colony Optimization Meta-Heuristic, Marco Dorigo and Gianni Di Caro