1 / 26

Meta-Heurística Colônia de Formigas

Meta-Heurística Colônia de Formigas. Disciplina: ODST Professores: José Oliveira e Maria Carravilla Aluno: Marcelo Nogueira. FEUP FEVEREIRO 2008. Introdução. Algoritmos de formigas: propostos inicialmente por Dorigo para solução de problemas de optimização combinatória

kalona
Télécharger la présentation

Meta-Heurística Colônia de Formigas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Meta-Heurística Colônia de Formigas Disciplina: ODST Professores: José Oliveira e Maria Carravilla Aluno: Marcelo Nogueira FEUP FEVEREIRO 2008

  2. Introdução • Algoritmos de formigas: propostos inicialmente por Dorigo para solução de problemas de optimização combinatória • Inspirado na observação de colónias de formigas reais • Formiga: insecto social, ou seja, vive em colónias e tem comportamento direccionado para a sobrevivência da colónia ao invés de um único individuo da colónia

  3. Colónias de formigas (ACO) • Chamaram atenção dos cientistas devido ao seu alto grau de estruturação quando comparado com a simplicidade de um único individuo da colónia • Formigas, que são quase cegas, conseguem achar o caminho mais curto entre sua colónia a uma fonte de alimento. Como?

  4. Caminho mais curto por colónias de formigas (biológicas) • Formigas se comunicam através de marcas químicas deixadas no chão chamadas feromônio • Ao passar por um local uma formiga deixa uma certa quantidade de feromônio no chão formando assim trilhas • Outras formigas podem detectar tais trilhas com feromônio, e tendem a escolher seu caminho por trilhas com mais feromônio

  5. Caminho mais curto por colónias de formigas (biológicas) • Quando mais formigas passarem por uma trilha, mais feromônio esta terá, formando assim uma realimentação positiva • Este comportamento simples de seguir trilhas faz emergir um comportamento mais complexo de encontrar trilhas mais curtas entre dois pontos

  6. Caminho mais curto por colónias de formigas (biológicas) Comida Formigueiro Formigas andando aleatoriamente

  7. Caminho mais curto por colónias de formigas (biológicas) Comida Formigueiro Achou a comida e vai voltar para o formigueiro

  8. Caminho mais curto por colónias de formigas (biológicas) Comida Formigueiro Achou a comida e vai voltar para o formigueiro

  9. Caminho mais curto por colónias de formigas (biológicas) Achou a comida e vai voltar para o formigueiro Comida Formigueiro Achou a comida e vai voltar para o formigueiro

  10. Caminho mais curto por colónias de formigas (biológicas) Comida Formigueiro

  11. Caminho mais curto por colónias de formigas (biológicas) Tem maior probabilidade de ir por baixo (trilha onde passaram mais formigas - mais feromônio) Comida Formigueiro

  12. Caminho mais curto por colónias de formigas (biológicas) Comida Formigueiro

  13. Algoritmo AS (AntSystem) para o TSP • Formigas artificiais: passeiam pelo grafo realizando caminhos • A partir da ciadade “i” a escolha da proxima cidade “j” depende da distancia entre “i” e “j” e da quantidade de feromônio no arco “i-j”

  14. Algoritmo AS (AntSystem) para o TSP • Ao terminar um caminho com custo “Lk”, a formiga k deposita feromônio em todas as arestas visitadas neste caminho numa quantidade inversamente proporcional a “Lk” 1

  15. Algoritmo AS (AntSystem) para o TSP • Ao final de todas as formigas terem realizado o “passeio”, a quantidade de feromônio em cada aresta é actualizada • Para evitar estagnação (formigas percorrendo sempre o mesmo caminho – mínimo local) , o feromônio das trilhas possui uma taxa de evaporação  < 1

  16. Algoritmo AS (AntSystem) para o TSP Enquanto (criterio de parada) Para cada formiga k Percorrer_caminho() fim_para Atualizar_feromonio() Decorar_melhor_solucao_atual() Fim_enquanto só depois de todas a formigas terem feito seus caminhos

  17. Percorrer_caminho() Iniciar aleatoriamente em umacidade do grafo Enquanto(caminho incompleto) escolher próxima cidade ainda não visitada de acordo com a regra de probabilidades incluir tal cidade na solução parcial Fim_enquanto Calcular custo do camiho Para a formiga k decorar caminho realizado e custo Fim

  18. Parâmetros do AS • Existem basicamente 3 parâmetros a serem ajustados: • Alpha: informa a importância do feromônio na escolha da próxima cidade • Beta: informa a importância da distancia entre cidades (visibilidade) na escolha da próxima cidade • Rho: taxa de evaporação do feromônio

  19. Variações do AS • Actualização do feromônio na medida que cada formiga termina seu caminho Enquanto (criterio de parada) Para cada formiga k Percorrer_caminho() • Atualizar_feromonio() fim_para Decorar_melhor_solucao_atual() Fim_enquanto Já actualiza o feromônio das arestas

  20. Actualização do feromônio na medida que cada formiga faz seu caminho: ao passar por uma aresta, a formiga deposita uma certa quantidade Q de feromônio Enquanto (criterio de parada) Para cada formiga k Percorrer_caminho(){ … • Atualizar_feromonio() • } fim_para Decorar_melhor_solucao_atual() Fim_enquanto Actualiza dentro da função Percorrer_caminho()

  21. Aplicações • Principalmente para o TSP, mas também pode ser aplica do a: • Scheduling • Networksynthesis • Vehiclerouting

  22. Vantagens e Desvantagens • WalterGutjahr provou que um algoritmo particular de ACO converge para a solução optima. Mas tal algoritmo não foi implementando e é bem difente de qualquer impletação já feira • AS fornece boms resultados para grafos pequenos (30 cidades), mas para grafos maiores os resultados pioram, e exigem variações do AS • Para problemas grandes, uma grande quantidade de memória é usada • Método lento: muitos cálculos de ponto flutuante (probabilidades)

  23. Resultados obtidos • 29 cidades: arquivo • 51 cidades: arquivo

  24. Resultados obtidos • 1002 cidades - óptimo: 259045 • 1 5 0.9 e 50 iterações com numero de formigas reduzido – 50 formigas( 15 minutos) • Custo= 363833 • 1 7 0.9 e 50 iterações • Custo= 333268 • Inserção mais barata: 304672

  25. Conclusões • Algoritmo novo, ainda em desenvolvimento • Resultados muito bons para problemas pequenos. Para problemas grandes temos que utilizar modificações do AS

  26. Bibliografia • http://www.aco-metaheuristic.org visitada em 29/01/2008 • AntAlgorithmsfor DiscreteOptimization, Marco Dorigo, Gianni Di Caro and LucaM. Gambardella • TheAntSystem: 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 Dorigoand Christian Blum • The ant Colony Optimization Meta-Heuristic, Marco Dorigo and Gianni Di Caro

More Related