Page 1

ANT COLONY OPTIMIZATION Uma breve introdução desde sua origem até as versões multiobjetivos do algoritmo Thiago do Nascimento Ferreira


INSPIRAÇÃO BIOLÓGICA


INSPIRAÇÃO BIOLÓGICA 

Pierre-Paul Grassé Francês  Doutor em Ciência Biológicas  1895-1985  300 Publicações 


ESTIGMERGIA “Mecanismo de coordenação, espontânea e indireta entre agentes ou ações, onde o traço deixado no meio de uma ação estimula a realização de uma ação posterior, pelo mesmo ou por um agente diferente”


JEAN-LOUIS DENEUBOURG


FORMIGAS


EXPERIMENTO DA PONTE BINÁRIA

Formigueiro

Fonte de Alimento


EXPERIMENTO DA PONTE BINÁRIA

Formigueiro

Fonte de Alimento


EXPERIMENTO DA PONTE BINÁRIA


FEROMテ年IO


MARCO DORIGO ●

Ph.D. em Engenharia de Sistema e Informação Diretor Pesquisador do IRIDIA Inventor do Ant Colony Optimization


ANT SYSTEM ALGORITHM Proposto por Marco Dorigo e colaboradores  Primeiro algoritmo inspirado no comportamento das formigas;  Peculiaridades: 

Ao tomar um caminho, a formiga deixa uma certa quantidade de feromônio;  Escolha do caminho através de uma função probabilística (informação + feromônio) 


FUNÇÃO PROBABILÍSTICA

• τij é a quantidade de feromônio associado •

a aresta i-j; α e β determinam a influência do feromônio ou da informação heurística; ηijk é a vizinhança factível da formiga K;


ATUALIZAÇÃO DO FEROMÔNIO

Onde 0 < ρ ≤ 1 é a taxa de evaporação


ALGORITMO Set parameters, initialize pheromone trails while termination conditions not met do ConstructAntSolutions ApplyLocalSearch {Optional} UpdatePheromones end while


EXEMPLO Problema do Caixeiro Viajante


PROBLEMA DO CAIXEIRO VIAJANTE 4

5

3

1

2


PROBLEMA DO CAIXEIRO VIAJANTE 4

5

3

1

2


PROBLEMA DO CAIXEIRO VIAJANTE 4

5

3

1

2

?


PROBLEMA DO CAIXEIRO VIAJANTE 

Características  ηijk será o inverso da distância entre a cidade i e a

cidade j  Terá que visitar obrigatoriamente todas as cidades


PROBLEMA DO CAIXEIRO VIAJANTE 4

5

3

1

2


EXEMPLO Problema do Pr贸ximo Release


PROBLEMA DO PRÓXIMO RELEASE 4

5

3

1

2


OUTROS MODELOS DE ACO Elitist Ant System (EAS)  Rank-Based Ant System (ASrank)  Ant Colony System (ACS)  Ant-Q 


ANT-Q Algoritmo de Formigas baseado em Q-Learning


ANT-Q Criado por Gambardella e Dorigo (1995)  Extensão do Ant System  Combinação de ACO com Q-Learning 


ANT-Q

â&#x20AC;˘ AQ(r,s) â&#x20AC;&#x201C; Ant-Q-Value - NĂşmero positivo associado a aresta (r,s). Indica o quĂŁo bom ĂŠ mover da cidade r para s â&#x20AC;˘ AQ(r,s) ĂŠ alterado durante a execução â&#x20AC;˘ HE(r,s) â&#x20AC;&#x201C; Informação HeurĂ­stica associada a aresta (r,s) usada para mover para o melhor vĂŠrtice â&#x20AC;˘ đ??˝đ?&#x2018;&#x2DC; (r) - VĂŠrtices nĂŁo visitados


AQ-VALUES

• ∆AQ(r,s) sempre zero, exceto depois que cada agente terminou seu trajeto; • α e γ são as etapas de aprendizagem e desconto respectivamente


FUNÇÃO PROBABILÍSTICA 

O “S” depende da implementação podendo ser um cidade escolhida aleatoriamente ou então usando a função:


â&#x2C6;&#x2020;AQ(R,S)

â&#x20AC;˘ đ??žđ?&#x2018;&#x201D;đ?&#x2018;? agente com o melhor percurso â&#x20AC;˘ L tamanho do percurso do melhor agente â&#x20AC;˘ W â&#x20AC;&#x201C; Constante igual a 10 (encontrado por ser um bom valor no AS)


MOAQ Multi-Objective Ant-Q


FRENTE DE PARETO


MOAQ Desenvolvido por Mariano e Morales (1999)  Idéia similar ao Ant-Q, contudo utiliza famílias de Agentes para cada objetivo  Todas as famílias possuem o mesmo número de agentes  Soluções de uma família, influenciam o ponto de partida da próxima família  Quando todas as famílias terminam, se tiverem soluções não-dominadas, uma recompensa é dada. Se violarem alguma restrição, são punidas. 


MOAQ Cada família executa uma só vez  Todo o processo é repetido até que só existam soluções não-dominadas na frente de pareto ou extrapolou o número de interações 


ALGORITMO IN=0 Inicializa todos os Q values para todas as familias Enquanto tiver somente soluções não dominadas na frente de pareto ou IN > N faça: Encontre a solução para o objetivo (família) 1 Para todas as famílias restantes faça: Inicialize a família i Encontre a solução para o objetivo i Avalie as soluções encontradas Para cada solução encontrada Se a solução violou qualquer restrição, aplica punição a todos os componentes Se a solução é não-dominada, aplicar recompensa e adicionar na frente de pareto Senão: não aplica nem recompensa ou punição


TRABALHOS FUTUROS 

Implementar Ant-Q e executar em alguma instância do problema do Caixeiro Viajante

Implementar MOAQ e estudar a sua aplicação em problemas multiobjetivos

Buscar outras implementações de ACO multiobjetivos na literatura


FIM

SOES #42 - Ant Colony Optimization - Multi-objective  
Read more
Read more
Similar to
Popular now
Just for you