Otimização em Colônias de Formigas. Prof. Eduardo R. Hruschka (Slides adaptados dos originais elaborados pelo Prof. André C. P. L. F.

Documentos relacionados
Otimização por Colônia de Formigas (ACO)

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

Ant Colony Optimization

Metaheurísticas de Otimização Bio-Inspiradas

Tópicos Especiais em Otimização

Problemas de otimização

Optimização através de colónias de formigas. Guy Theraulaz

Fundamentos de Inteligência Artificial [5COP099]

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO)

Inteligência de Enxame

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

Os machos também são alados e consideravelmente menores que as rainhas. Tem vida curta e morrem após o acasalamento.

1. Computação Evolutiva

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP)

Inteligência Coletiva. Prof. Eduardo R. Hruschka (Slides adaptados dos originais elaborados pelo Prof. André C. P. L. F.

Iterated Local Search. Helena R. Lorenço, Olivier Martinz and THOMAS STUTZLE

5 VNS com Filtro e Reconexão por Caminhos

Computação Evolucionária

2 Modelos Baseados no Comportamento de Formigas

Inteligência Artificial - IA. Resolução de problemas por meio de busca

Uma Introdução à Busca Tabu André Gomes

Estatística e Modelos Probabilísticos - COE241

Estatística e Modelos Probabilísticos - COE241

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO)

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Ciclo de Vida do Cupim

Estatística e Modelos Probabilísticos - COE241

Colônia Evolucionária de Formigas: Uma Proposta Inicial Aplicada ao Problema do Caixeiro Viajante

RESOLUÇÃO DE PROBLEMAS POR MEIO DE BUSCA (PARTE 1) *Capítulo 3 (Russel & Norvig)

OTIMIZAÇÃO POR COLÔNIA DE FORMIGAS PARA O ROTEAMENTO EM REDES DE COMPUTADORES.

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

3. Resolução de problemas por meio de busca

Optimização por colónias de formigas (Ant colony optimization)

Aula 14. Aula de hoje. Aula passada

Metaheurísticas de Otimização Bio-Inspiradas

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

Inteligência Artificial

FORMIGAS BIOLOGIA E CONTROLE

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 04 Prof. Vitor Hugo Ferreira

Inteligência de enxame e o algoritmo das abelhas

Teoria dos Grafos Aula 14

Teoria da Computação. Complexidade computacional classes de problemas

Problema do Caminho Mínimo

Departamento de Engenharia de Produção UFPR 22

meio de busca Seções 3.1, 3.2 e 3.3

O que é? Swarm Intelligence. Qual a origem? Cardume. Qualquer tentativa de projetar algoritmos ou técnicas de resolução distribuída de

Modelagem e Análise de Sistemas - COS767

3 Extensões dos modelos matemáticos

Resolução de problemas por meio de busca. Capítulo 3 Inteligência Artificial Sistemas de Informação

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

4. MÉTODO DO FORMIGUEIRO (ANT COLONY OPTIMIZATION ACO)

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato:

3 Aprendizado por reforço

Buscas Informadas ou Heurísticas - Parte III

Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá

Algoritmos Genéticos

Pesquisa Operacional Aplicada à Mineração

Buscas Informadas ou Heurísticas - Parte II

4 Métodos Existentes. 4.1 Algoritmo Genético

Problema do Caixeiro Viajante (The Travelling Salesman Problem-TSP) (Problema Del viajante)

Inteligência Artificial

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula II Algoritmos básicos de busca cega

Otimização por colônia de formigas Ant Colony Optimization ACO - Algoritmo de classificação

Modelos Baseados em Agentes. Agentes Reativos. Prof. André Campos Aula #4

11/1/2012. Agenda. Classe de problemas de interesse. Busca Local. Busca Local. Exemplo de Espaço de Estados

Busca Local Iterada. Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial

CTC-17 Inteligência Artificial Problema de Satisfação de Restrições. Prof. Paulo André Castro

Otimização por Colônia de Formigas (Ant Colony Optimization)

Cap. 4 Busca com Informações e Exploração. do livro de Russel e Norvig

BIOLOGIA - 2 o ANO MÓDULO 24 SIMBIOSES HARMÔNICAS

METAHEURÍSTICA COLÔNIA DE FORMIGAS APLICADA A UM PROBLEMA DE ROTEAMENTO DE VEÍCULOS: CASO DA ITAIPU BINACIONAL

Inteligência Artificial

Estatística e Modelos Probabilísticos - COE241

3. Resolução de problemas por meio de busca

Organização. 1. Introdução 2. Medidas de Similaridade. hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters

METAHEURÍSTICA Encontrar soluções boas ou até mesmo ótima

Metaheurísticas de Otimização Bio-Inspiradas

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

3. Resolução de problemas por meio de busca

AULA 13 PROJETO E ANÁLISE DE ALGORITMOS. Problema do caminho mais curto de uma única origem em grafos Karina Valdivia Delgado

Algoritimos e Estruturas de Dados III CIC210

ESCOLA SUPERIOR DE AGRICULTURA LUIZ DE QUEIROZ - USP DEPARTAMENTO DE ENTOMOLOGIA E ACAROLOGIA

Resolução Para o Problema n-rainhas Utilizando ACO

COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS

4 Metodologia de solução do problema

BUSCA LOCAL (PARTE 4 Resolução de problemas por meio de busca) (C)Russell & Norvig, capítulo 4

Programação Dinâmica. Prof. Anderson Almeida Ferreira. Adaptado do material elaborado por Andrea Iabrudi Tavares

Resolução de Problemas. Universidade Católica de Pelotas Engenharia da Computação Disciplina: Inteligência Artificial

Insetos Úteis e Introdução ao Controle de Pragas

Exemplo do jogo dos fósforos Terça-feira, 9 de maio. Exemplo para o Problema do Corpo de Bombeiros. Exemplo: Localidade do Corpo de Bombeiros

Redes Neurais Artificial. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Busca com informação e exploração. Inteligência Artificial. Busca pela melhor escolha. Romênia com custos em km. Busca com informação (ou heurística)

Tópicos Especiais: Inteligência Artificial BUSCA COM INFORMAÇÃO E EXPLORAÇÃO

Busca com informação e exploração. Inteligência Artificial. Busca pela melhor escolha. Romênia com custos em km 9/13/2010

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste

Implementação de Otimização Colônia de Formigas

Controle de Formigas Cortadeiras

Aprendizado por Reforço

Algoritmos Probabilísticos

Transcrição:

Otimização em Colônias de Formigas Prof. Eduardo R. Hruschka (Slides adaptados dos originais elaborados pelo Prof. André C. P. L. F. de Carvalho)

Principais tópicos Introdução Colônias de Formigas Formação de Colônias de Formigas Simulações 2

Introdução Colônias de formigas (e de outros insetos sociais) são sistemas distribuídos Indivíduos simples Grupo apresenta uma organização social fortemente estruturada Colônias podem lidar com tarefas complexas 3

Introdução Novos algoritmos: Baseados no comportamento de formigas Aplicações: Problemas de otimização Problemas de controle distribuído 4

Introdução Princípios de auto-organização Permitem comportamento coordenado Podem ser utilizados para coordenar populações de agentes artificiais 5

Introdução Diversos comportamentos das colônias têm inspirado estes algoritmos Criação de trilhas Divisão de trabalhos Transporte cooperativo... Stigmergia norteia o processo 6

Introdução Stigmergia Forma indireta de comunicação que ocorre por modificações no ambiente Ex: formiga deposita feromônio em uma trilha 7

Colônias de formigas Formigas exercem atividades benéficas Espalham sementes - reflorestamento Promovem a germinação das sementes, ao remover a polpa de frutas Polenizam flores, quando se alimentam de substâncias vegetais (seiva, néctar) Poda de plantas, estimulando seu crescimento Aeração do solo Predadoras de pragas agrícolas 8

Colônias de formigas Divisão de tarefas está relacionada à presença de diferentes castas Em um formigueiro geralmente existem duas castas de formigas Casta das reprodutoras Rainhas Machos Casta das estéreis ou operárias 9

Colônias de formigas Casta das reprodutoras Rainhas: As maiores formigas da colônia Aladas até serem fecundadas Vivem muitos anos controlando a colônia Rainhas de saúvas podem viver até 20 anos Rainhas de colônias domésticas vivem de 2 a 4 anos Depositam ovos 10

Colônias de formigas Casta das operárias Escavação e limpeza do ninho Procura/transporte de água/alimento para o ninho Alimentação: Larvas e rainha(s) Outras operárias Cuida da prole Defesa da colônia 11

Comunicação Formigas se comunicam através de: Substâncias químicas voláteis (odores) Substâncias solúveis (sabores) Quando produzidas para se comunicar com outros indivíduos da sua espécie, essas substâncias são denominadas feromônios 12

Comunicação Existem diferentes tipos de feromônio Feromônio de alarme Altamente volátil Se dispersa no ar por grandes distâncias ( 60 cm) Alerta as companheiras sobre perigos Toda a colônia pode ser alertada em segundos Feromônio de recrutamento Depositado no solo, em forma de trilha, para informar às companheiras da presença de alimento Feromônio territorial marcar os territórios de uso exclusivo da colônia 13

Feromônio de Recrutamento Frequentemente utilizado para encontrar fonte de alimento Depositado na trilha percorrida pela formiga em sua busca por alimento (e retorno ao ninho) Quanto mais formigas passarem na trilha, maior a quantidade de feromônio depositada Quanto mais recente a passagem da formiga, maior a quantidade de feromônio na trilha Quanto maior a quantidade de feromônio na trilha, mais formigas são atraídas 14

Feromônio de Recrutamento Permite encontrar menor caminho: No início, formigas percorrem caminhos aleatórios Feromônio permite que o caminho mais curto entre o ninho e a fonte de alimento seja encontrado Caminho mais curto entre ninho e fonte de alimento Percorrido com maior freqüência Recebe mais feromônio Atrai mais formigas (feedback positivo) 15

Ilustração Formiga 2 Instante de tempo i Ponte B Ponte A Formiga 1 24/05/2013 André de Carvalho - ICMC/USP 16

Ilustração Formiga 2 Instante de tempo i + k Formiga 1 17

Otimização baseada em Colônias de Formigas (OCF) Modelo computacional distribuído Inspirado na disposição de feromônio de recrutamento Problemas de otimização discreta Baseado em: Feedback positivo Heurística gulosa construtiva 18

OCF Feedback positivo Exemplo de auto-organização das formigas Um padrão macroscópico emerge de processos e iterações que ocorrem em um nível microscópico Comportamento macroscópico coletivo: Convergência do caminho das formigas A partir de interações locais entre formigas 19

OCF Heurística gulosa construtiva Escolhe melhor alternativa corrente, sem considerar futuras consequências; Uma vez tomada uma decisão, ela não é mais alterada 20

Colônias Artificiais (Dorigo, 1992): Formigas artificiais apresentam características que não estão presentes nas formigas naturais Vivem em um mundo discreto Movimentos são transições entre estados discretos Têm um estado interno Memórias das ações anteriores da formiga Período para atualização do depósito de feromônio pode depender de encontrar ou não uma solução Podem apresentar capacidades adicionais 21

Algoritmo OCF Formigas podem percorrer dois caminhos: Ninho fonte Fonte ninho Neste algoritmo, formigas podem ter memória das trilhas percorridas anteriormente permitem encontrar eficientemente soluções para o problema de menor caminho 22

Algoritmo OCF Comportamentos: Construção de soluções probabilísticas influenciadas pelas trilhas de feromônio Sem atualização dos feromônios nas trilhas Caminho de volta determinístico com eliminação de loops e atualização de feromônio na trilha Avaliação da qualidade das soluções geradas Usar avaliação para definir quantidade de feromônio a ser depositada Também pode ter evaporação de feromônio 23

Algoritmo OCF Alterar representação dos caminhos Facilita uso de grafos 1 1 Longo (l) 3 Curto (c) 2 2 24

Algoritmo OCF Caminhos representados por G = (N, A) Onde N = nós e A = arcos do grafo G Dois nós i e j N são vizinhos se: existe arco (i, j) A 25

Algoritmo OCF Inicialmente, a cada arco (trilha) do grafo G = (N,A) é associada uma quantidade inicial de feromônio Quantidade de feromônio entre i e j : f ij Trihas de feromônio são atualizadas 26

Algoritmo OCF Cada formiga constrói, a partir do ninho, uma solução para o problema aplicando uma política de decisão passo-a-passo Em cada nó Informações armazenadas no nó ou em nós dos arcos saindo dele são percebidas pela formiga Informações são usadas estocasticamente para decidir a qual nó deve se mover No início da busca, todos os arcos recebem a mesma quantidade de feromônio Ex.: f ij = 1 (i, j) A 27

Algoritmo OCF No nó i, formiga k usa a trilha de feromônio f ij para computar p k ij de escolher j como próximo nó V i k é a vizinhança da formiga k no nó i Não inclui o nó visitado antes do nó i p k ij l 0 f k V i ij f il se se j V j V k i k i 28

Algoritmo OCF Vizinhança do nó i Contém todos os nós diretamente conectados a i no grafo G = (N, A) Exceto o predecessor do nó i Evitar retornar para o mesmo nó que visitaram imediatamente antes do nó i Predecessor só é incluso quando V ik = Corresponde ao final do grafo 29

Algoritmo OCF Formigas caminham repetidamente de nó em nó usando esta política de decisão até atingir o nó destino Diferentes caminhos, encontrados por diferentes formigas, fazem com que elas atinjam o destino em tempos distintos 30

Algoritmo OCF Alteração do feromônio Ocorre no retorno ao ninho f ij = f ij + f k Escolha do f k Mesmo valor para todas as formigas Função do tamanho da trilha Quanto mais curta a trilha, mais feromônio é depositado pela formiga 31

Evaporação do feromônio Mecanismo de exploração que evita convergência rápida para um caminho sub-ótimo Favorece: Exploração de caminhos diferentes Esquecimento de erros ou caminhos ruins Permite o contínuo aprimoramento da solução Quantidade máxima de feromônio presente em um caminho não assume um valor muito elevado 32

Algoritmo OCF Evaporação do feromônio Pode ser intercalada com o depósito de feromônio Após formiga k ter se movido para um novo nó, trilhas de feromônio podem ser evaporadas: f ij = (1 - ) f ij (i, j) A, (0, 1] é um parâmetro. 33

Algoritmo OCF Inicializar valores de feromônio nas arestas Enquanto critério de parada não for atingido faça Para toda formiga faça Mover a formiga por um caminho completo até obter uma solução Avaliar a solução obtida Atualizar quantidade de feromônio em cada aresta Aumentar quantidade nas arestas percorridas Evaporar uma parte de todas as arestas Até critério de parada ser atingido 34

Observações Poucas formigas podem fazer com que o algoritmo convirja para caminhos mais longos Aleatoriedade nas primeiras decisões Número de formigas tem que ser muito maior que um para garantir convergência para o menor caminho Depositar quantidade de feromônio proporcional à qualidade da solução pode melhorar o algoritmo Quanto maior o número de formigas, melhor é a convergência (maior tempo de execução). 35