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