UNIVERSIDADE PRESBITERIANA MACKENZIE Laboratório de Computação Natural LCoN I ESCOLA DE COMPUTAÇÃO NATURAL Inteligência de Enxame Alexandre Szabo Diego Almeida Orientador: Leandro Nunes de Castro Outubro/2012 www.computacaonatural.com.br
Animais Sociais: Características Comportamentais 2 Diversas espécies vivem em sociedade Abelhas, Formigas, Cupins, Aves, Peixes Vantagens Facilidade de acasalamento Defesa do bando Busca por alimento Aprendizagem www.computacaonatural.com.br 2
Animais Sociais: Características Comportamentais 3 Autonomia e Auto-Organização Comportamento descentralizado e cooperação entre agentes Estigmergia Comunicação por meio de mudanças no ambiente Emergência Surgimento de padrões a partir de interações simples www.computacaonatural.com.br 3
Inteligência de Enxame: Inteligência de Enxame: Termo cunhado em 1989 (Beni & Wang) após observar o comportamento de robôs que usavam regras baseadas em formigas Insetos são agentes simples sob o ponto de vista cognitivo, mas da interação social emerge a inteligência do enxame Agentes interagem entre si e com o ambiente para um objetivo comum Metáfora Básica: Sociocognição 4 www.computacaonatural.com.br 4
Aplicações: Animação Flock of birds Boids in action Boids Batman Begins Robótica Swarm of Flying Box-pushing Inteligência de Enxame: 5 www.computacaonatural.com.br 5
Aplicações: Agrupamento de Dados Inteligência de Enxame: Agrupamento por Colônia de Formigas http://lvcon.tuilux.com.br/experimento?id=16 Otimização Otimização por Colônia de Formigas http://lvcon.tuilux.com.br/experimento?id=1 6 www.computacaonatural.com.br 6
Inteligência de Enxame: Algoritmos Baseados em Enxame de Partículas: Particle Swarm Optimization (Kennedy & Eberhart, 1995) Cada partícula (indivíduo) é representada por um vetor, com posição e velocidade individuais Cada partícula tem uma memória que representa sua experiência O enxame possui uma memória global que representa a experiência do enxame O princípio básico é a movimentação de partículas (indivíduos) e estas competem entre si e compartilham a melhor solução 7 www.computacaonatural.com.br 7
Inteligência de Enxame: Algoritmos Baseados em Enxame de Partículas: Particle Swarm Optimization (Kennedy & Eberhart, 1995) Alguma função deve ser otimizada O número de partículas é informado pelo usuário A dimensão das partículas depende do número de variáveis da função 8 www.computacaonatural.com.br 8
Inteligência de Enxame: Particle Swarm Optimization (Kennedy & Eberhart, 1995) Enquanto o critério de parada não for satisfeito Para cada partícula x j do enxame X Se f(x j ) < f(p j ) 9 Fim p j = x j Fim Se Se f(x j ) < f(g) g = x j Fim Se v j (t+1) = ω*v j (t)+φ1 (p j -x j (t))+ φ2 (g-x j ) x j (t+1) = x j (t)+v j (t+1) Fim Para t = t+1 Testar critério de parada www.computacaonatural.com.br 9
Inteligência de Enxame: Particle Swarm Clustering (Cohen & de Castro, 2006) Base de dados a ser agrupada Todas as partículas configuram uma única solução O número de partículas deve ser no mínimo igual ao número de classes na base de dados Não usa função explícita; a distância Euclidiana é usada como medida de avaliação entre partícula e objeto Um termo de auto-organização é adicionado à equação de velocidade da partícula 10 www.computacaonatural.com.br 10
Particle Swarm Clustering (Cohen & de Castro, 2006) Enquanto o critério de parada não for satisfeito Para cada objeto y i da base de dados Y Para cada partícula x j do enxame X dist(j) = distance(y i,x j ) Fim Para I=arg_min(dist) Inteligência de Enxame: Se distance(y i,x I ) < distance(y i,p i I) 11 p i I = x I Fim Se Se distance(y i,x I ) < distance(y i,g i ) g i = x I Fim Se v I (t+1)=ω*v I (t)+φ1 (pi I -x I (t))+φ2 (g-x I )+φ3 (y i -x I ) x I (t+1) = x I (t)+v I (t+1) Fim Para t = t+1 Testar critério de parada Fim Enquanto www.computacaonatural.com.br 11
Inteligência de Enxame: Particle Swarm Clustering (Cohen & de Castro, 2006) Simulação Base de dados: 75 objetos, 4 classes 12 www.computacaonatural.com.br 12
Inteligência de Enxame 13 Os algoritmos bioinspirados fazem uso de conceitos comuns Metáfora Básica: Sóciocognição Aplicações Práticas www.computacaonatural.com.br 13