SOES #49 - Ant Colony Optimization

Page 1

Universidade Estadual do Ceará - UECE Grupo de Otimização em Engenharia de Software - GOES

Ant Colony Optimization Otimização com Inspiração Biológica

Thiago do Nascimento Ferreira


Roteiro 1.

Introdução

2.

Inspiração Biológica

3.

Ant System

4.

ACO e suas Variações

5.

Problemas

6.

Referências


Introdução


Algoritmos Bio-Inspirados ●

Sistemas biológicos servem de modelo para o desenvolvimento de algoritmos de otimização.

Algoritmo Genético

PSO

Colônia de Abelhas

Redes Neurais

Colônia de Vespas

Têmpera Simulada


Computação Natural

“Computação Natural é o ramo da ciência da computação destinado a estudar, compreender e aplicar, padrões complexos encontrados na natureza, utilizando-os como base para resolução de problemas, desenvolvimento de novas tecnologias e aperfeiçoamento de sistemas já existentes.”


Computação Natural ● Não necessariamente incluem todos os detalhes do sistema natural ● Simplificações são necessárias ● Possui métodos Estocásticos (não determinísticos) ● Não garantem que a solução ótima será encontrada, mas sim a “quase ótima”


Solução Ótima? Onde está a solução ótima da função?


Solução Ótima? Onde está a solução ótima da função?


Solução Ótima? Qual solução é melhor: A ou B?

B

A


Computação Natural Algoritmos Evolucionários

● ● ● ● ●

Algoritmos Genéticos Programação Genética Evolução Gramatical Estratégias Evolucionárias Programação Evolucionária

Inteligência Coletiva

● ●

Colônias de Formigas Algs. de Enxames de Partículas (PSO)

Redes Neurais

● ● ● ●

MLP – Multi-layer Perceptrons RBF- Radio Basis Function Net SOM- Self-Organizing Maps ARTMap

Sistemas Imunológicos Artificiais

● ● ●

Alg. de Seleção Negativa Alg. de Expansão Clonal Alg. de Redes

Algoritmos Bio-Inspirados


Computação Natural Algoritmos Evolucionários

● ● ● ● ●

Algoritmos Genéticos Programação Genética Evolução Gramatical Estratégias Evolucionárias Programação Evolucionária

Inteligência Coletiva

● ●

Colônias de Formigas Algs. de Enxames de Partículas (PSO)

Redes Neurais

● ● ● ●

MLP – Multi-layer Perceptrons RBF- Radio Basis Function Net SOM- Self-Organizing Maps ARTMap

Sistemas Imunológicos Artificiais

● ● ●

Alg. de Seleção Negativa Alg. de Expansão Clonal Alg. de Redes

Algoritmos Bio-Inspirados

Híbridos


Inspiração Biológica


Pierre-Paul Grassé ●

1895 - 1985

Francês.

Cientista Evolucionista

Doutor em Ciências Biológicas.

Presidente da Academia das Ciências da França.

Enciclopédia biológica ambulante.

Editor dos 28 volumes do livro “Traité de Zoologie”.

300+ Publicações.


Estigmergia

“Traço deixado no ambiente por qualquer ação que estimula o desempenho de outra ação, pelo mesmo agente, ou por agentes diferentes” Pierre-Paul Grassé em 1959


Estigmergia â—?

Exemplos


Estigmergia â—?

Exemplos na Natureza


Estigmergia


Estigmergia

Ferom么nio


Feromônio ●

Comunicação Quimica

Usado em: ○

Defesa do Ninho

Atividade Sexual

Recrutamento para uma fonte de Alimento

Algumas

espécieis

de

mariposas

sentem o feromônio de sua espécie a cerca de 20 km de distância


Feromônio ●

Comunicação Quimica

Usado em: ○

Defesa do Ninho

Atividade Sexual

Recrutamento para uma fonte de Alimento

Algumas

espécieis

de

mariposas

sentem o feromônio de sua espécie a cerca de 20 km de distância Evaporação do Feromônio


Jean-Louis Deneubourg ●

Professor da Faculdade de Ciências da Universidade Livre de Bruxelas

Pesquisador Associado Sênior no Belgium National Science Foundation

Suas pesquisas incluem abordagens experimentais e teóricos no comportamento coletivo de grupos de organismos.


Ponte Binรกria


Ponte Binรกria


Ponte Binรกria


Ponte Binรกria


Marco Dorigo ●

PHD em Engenharia de Sistemas e Informação

Professor e pesquisador no Instituto de Pesquisas Interdisciplinares e de Desenvolvimentos (IRIDIA)

Inventor da metaheuristica Ant Colony Optimization para problemas de otimização combinatorial


Ant Colony Optimization ● Características semelhantes a formigas reais ○ Colônia de agentes que se movimentam de forma assíncrona e simultânea, buscando as melhores soluções ○ Mudança das variáveis de estado (comunicação indireta), simulando as trilhas de feromônios (cooperação) ○ Política de decisão estocástica sobre o caminho a ser percorrido, baseada em informação local ○ Evaporação do feromônio (buscar novas soluções)


Ant Colony Optimization ● Características diferentes a formigas reais ○ Mundo discreto e movimentos são transições entre estados do ambiente ○ Estado Interno (Memória) ○ Atualização das variáveis de estado (depósito de feromônio), proporcional à qualidade da solução encontrada


Ant Colony Optimization Algoritmo

Set parameters and Initialize pheromones trails

procedure ACO while(not_termination) foreach ant generateSolutions() end_foreach ApplyLocalSearch() (Optional) pheromoneUpdate() end_while end_procedure


Ant Colony Optimization ● Considerações Importantes ○

O problema é representado por um grafo G=(V,A) formado por um conjunto de vértices V e arestas A.

As

formigas

percorrem

o

grafo

construindo sua solução ○

No

percurso,

as

formigas

depositam

feromônio sobre cada aresta visitada. ○

No ACO, um vértice deve está ligado a todos os vértices (Grafo Completo)

Exemplo de Grafos


Simulação


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante


Problema do Caixeiro Viajante Tempo gasto gerando todos os possíveis caminhos e selecionando o de menor distância:


Ant System Primeiro Algoritmo


Ant System ● O algoritmo considera: ○

Distância entre as cidades i e j

Feromônio entre as cidades i e j

Várias formigas, cada uma percorrendo uma rota

Número máximo de iterações


Ant System Como a formiga escolhe o pr贸ximo v茅rtice? 2

4

1

3

5


Ant System Como a formiga escolhe o próximo vértice? 2

4

1

3 Regra de Transição

5


Ant System Como a formiga deposita ferom么nio?

x

y


Ant System Como a formiga deposita ferom么nio?

x

Regra de atualiza莽茫o de ferom么nio (todas as arestas)

y


Ant Colony System O mais utilizado


Ant Colony System ●

Modificações no AS ○

Regra de transição entre as cidades i e j

Atualizações locais de feromônios


Ant Colony System ●

Regra de Transição saindo do vértice i para o vértice j

Atualização Local do feromônio

Atualização Global do feromônio


ACO e suas variações ●

Elitist Ant System ○

A melhor solução global deposita feromônio em a cada iteração junto com todas as formigas

Max-Min ant system (MMAS) ○

Adiciona quantidades máximas (τmax) e mínimas (τmin) de feromônio. Somente a melhor solução global ou a melhor solução da iteração depositam feromônio. Todas as arestas são inicializadas para τmax e reinicializadas para τmax quando se aproxima de estagnação.

Rank-based Ant System (ASrank) ○

Todas as soluções são classificadas de acordo com o seu tamanho. A quantidade de feromônio depositado é então ponderados para cada solução, de tal forma que as soluções com caminhos mais curtos depositam mais feromônio do que as soluções com caminhos mais longos.

Continuous Orthogonal Ant Colony (COAC) ○

Usando um método de design ortogonal, formigas no domínio viável pode explorar suas regiões escolhidas de forma rápida e eficiente, com maior capacidade de pesquisa global e precisão.

Recursive Ant Colony Optimization ○

Forma recursiva do Ant System


Aplicações Ciêntíficas


Problemas Estรกticos


Problemas Din창micos


Pesquisas no Brasil usando ACO ●

Recarga de reatores nucleares

Roteamento em redes de comunicação

Alocação de capacitores em redes elétricas

Predição de estruturas protéicas

Problemas de corte e empacotamento

Problemas logísticos da força aérea brasileira

(Lima et al., 2008) – COPPE/UFRJ; (Andrade, 2003) – UFLA - MG; (Lacer da et al., 2008) - UFRN;

(Parpinelli et al., 2008) – UDESC - SC; (Oliveira, 2007) – UFF - RJ;

EPUSP;

Roteamento de veículos

(Lopes et al., 2007) – UTFPR.

(Gualda e Abrahão, 2004) – ILA e


Pesquisas no Mundo usando ACO ●

Roteamento em redes de computadores

(Dhillon and Mieghem, 2007) – Países

Baixos;

Reconstrução filogenética

Escalonamento de tarefas em ambiente grid

Design de circuitos eletrônicos

Robótica

(Hernandez et al., 2003) - Suíça; (Chen and Zhang, 2009) - China;

(Zhang et al., 2009) – China

(Tewolde and Sheng,2008) - EUA;


Referências 1.

“Algoritmos Bio-Inspirados” - “http://homepages.dcc.ufmg.br/~glpappa/cverao/CursoVeraoParte1.pdf”

2.

“Algoritmos Genéticos - Otimização com Inspiração Biológica” - http://www.dep.uminho. pt/EscolaEAs2012/slides/Francisco_GA_ELBCE_2012_SaoCarlos.pdf

3.

“Marco Dorigo Web Page” - http://iridia.ulb.ac.be/~mdorigo/HomePageDorigo/

4.

“ACO Metaheuristic” - http://www.aco-metaheuristic.org/


Site Acesse o site para maiores informaçþes


Livro


Obrigado


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.