Metaheurísticas de
Otimização Bio-Inspiradas
Prof. Dr. Hugo Valadares Siqueira
Aula 11 – Otimização por Enxame de Partículas – Parte 1*
Swarm Intelligence
O que é?
• Algoritmos em que agentes atuam
localmente realizando alguma interação com o grupo;
Características:
• Individualismo x Coletivo;
• Cada agente interage localmente com o ambiente;
• Essa iteração causa um padrão coerente de forma global resolvendo um problema;
• Não existe centralização;
• Coordenação sem comunicação evidente; • Algoritmos populares: Ant Colony
• Na natureza, criaturas simples apresentam comportamentos complexos;
• Os comportamentos destes são alterados com coerência conforme o ambiente muda; • Esse comportamento é observado em:
Insetos; Pássaros; Bactérias;
Na Natureza:
• Busca pelo menor caminho entre o ninho e a fonte de alimento;
• Organização dos corpos de indivíduos mortos e lixos dentro do ninho;
• Emigração de um bando; • Construção do ninho;
• Voo em grupo; No dia-a-dia:
• Trânsito (a ação dos indivíduos influi na organização do todo);
• Atribuição de pequenas tarefas para uma equipe em um grande projeto;
• Linha de montagem; • Cirurgia Médica.
• Várias espécies se beneficiam da sociabilidade:
i. a vida em grupos sociais aumenta a probabilidade de acasalamento;
ii. facilita a caça e coleta de alimentos;
iii. reduz a probabilidade de ataque por predadores; iv. permite a divisão de trabalho, etc;
• Comportamentos sociais também inspiraram o
desenvolvimento de diversas ferramentas computacionais para a solução de problemas e estratégias de coordenação e controle de robôs;
• O termo swarm intelligence foi proposto no fim da década de 1980, quando se referia a
sistemas robóticos compostos por uma coleção de agentes simples em um ambiente interagindo de acordo com regras locais.
• Algumas definições de swarm intelligence: o termo “enxame” (ou coletivo) é utilizado de forma genérica para se referir a qualquer coleção estruturada de agentes capazes de interagir;
• O exemplo clássico de um enxame é um enxame de abelhas;
• Entretanto, a metáfora de um enxame pode ser estendida a outros sistemas com uma arquitetura similar;
Uma colônia de formigas pode ser vista como um enxame, onde os agentes são formigas;
Uma revoada de pássaros é um enxame, em que os agentes são pássaros;
Um engarrafamento é um enxame, no qual os agentes são carros;
Uma multidão é um enxame de
pessoas, um sistema imunológico é um enxame de células e moléculas, e uma economia é um enxame de agentes econômicos;
• Embora a noção de enxame sugira um aspecto de movimento coletivo no espaço, como em um ‘enxame de pássaros’,
estamos interessados em todos os tipos de comportamentos coletivos, não apenas movimento espacial;
• A inteligência de enxame inclui qualquer tentativa de projetar algoritmos ou dispositivos distribuídos de solução de
problemas inspirados no comportamento coletivo de insetos sociais e outras sociedades animais (BONABEAU et al.,
• A inteligência coletiva é uma propriedade de sistemas
compostos por agentes não (ou pouco) inteligentes e com capacidade individual limitada, capazes de apresentar
comportamentos coletivos inteligentes (WHITE & PAGUREK, 1998).
• Algumas propriedades da inteligência coletiva:
Proximidade: os agentes devem ser capazes de interagir; Qualidade: os agentes devem ser capazes de avaliar seus
comportamentos;
Diversidade: permite ao sistema reagir a situações inesperadas; Estabilidade: nem todas as variações ambientais devem afetar o
comportamento de um agente;
Adaptabilidade: capacidade de se adequar a variações ambientais.
• Sendo assim, um sistema de enxame é aquele composto por um conjunto de agentes capazes de interagir entre si e com o meio ambiente;
• A inteligência de enxame é uma propriedade emergente de um
sistema coletivo;
• Duas principais linhas de pesquisa podem ser observadas em inteligência de enxame:
Trabalhos inspirados por comportamentos sociais de insetos e outros animais;
Trabalhos inspirados na habilidade das sociedades humanas em processar conhecimento;
• Embora existam diferenças entre essas abordagens, elas possuem a seguinte
característica importante em comum: população de
indivíduos capazes de interagir entre si e com o ambiente.
• Insetos sociais são aqueles que vivem em comunidades ou colônias; • Exemplos: Formigas, abelhas, vespas e cupins;
• Uma colônia pode ser definida como uma grande família de insetos (sem hierarquia, na maioria dos casos);
• Dentro de uma colônia existe uma sobreposição entre gerações de pais e filhos;
• Cada inseto parece ter sua própria agenda; mesmo assim, uma colônia parece extremamente bem organizada;
• A integração de todas as atividades individuais não requer supervisão, trata-se de um fenômeno auto-organizado.
• Formigas do tipo leafcutter cortam folhas de plantas e árvores para cultivar fungos;
• Formigas trabalhadoras buscam por alimento a grandes distâncias do
ninho, criando literalmente caminhos de e para o ninho;
• Formigas do tipo weaver formam correntes com seus próprios corpos permitindo que elas atravessem
grandes buracos e carreguem alimento para o ninho;
• Durante sua fase de movimentação e busca por alimento, as formigas do tipo army organizam frentes de
• As abelhas constroem uma série de pentes paralelos formando correntes que induzem um aumento local de temperatura;
• Desta forma, fica mais fácil moldar a colmeia;
• As fontes de alimento são exploradas de acordo com sua qualidade e
distância do ninho;
• Exemplos de problemas resolvidos por insetos sociais: encontrar alimento,
construir ou aumentar o ninho, dividir a mão de obra, alimentar a colônia,
responder a desafios externos (clima, predadores, etc.), soar alarmes,
encontrar um local apropriado para construir o ninho, etc.
Adaptação Social do Conhecimento
• A técnica de otimização baseada em enxame de partículas (Particle Swarm Optimization – PSO) possui como uma de suas principais motivações criar uma simulação do
comportamento social humano, particularmente a capacidade humana de processar conhecimento; • Assim como todas as outras
abordagens de inteligência de enxame, ela está baseada em uma população de indivíduos capazes de interagir entre si e com o meio ambiente;
• Comportamentos globais serão, portanto, resultados emergentes dessas interações.
• Uma teoria sociocognitiva muito simples está por trás do PSO:
Cada indivíduo de uma população possui sua própria experiência e é capaz de avaliar a qualidade desta experiência;
Como os indivíduos são sociais, eles também possuem
conhecimentos sobre como seus vizinhos se comportaram (desempenharam);
• Estes dois tipos de informação correspondem à
aprendizagem individual (cognitiva) e à transmissão cultural (social), respectivamente;
• Portanto, a probabilidade de um determinado indivíduo tomar uma certa decisão será uma função de seu
desempenho no passado e do desempenho de alguns de seus vizinhos.
• Pensar é um ato social:
“Embora alguns possam afirmar que o cérebro é o local físico de processamento mental, isto requer que nós tratemos a
cognição como uma atividade fundamentalmente individual e até mesmo privada. Aqui estamos preparados para
argumentar que toda a atividade mental - do reconhecimento perceptual para a memória para a resolução de problemas -envolva representações de outras pessoas ou o uso de
artefatos e formas culturais que têm uma história social.” – Levine, Resnick e Higgins (1993)
• Crenças, memórias, atitudes e processos de pensamento são fortemente influenciados pelo meio em que o indivíduo se
encontra;
• Experimentos indicam que memórias formadas por sugestão são indistinguíveis das memórias de fatos vivenciados pelos indivíduos através de suas percepções (Memória como
construção social) (Loftus, 1994);
• Assim, a cultura tem um papel fundamental para a
Como se formam as culturas?
• Modelo cultural de Axelrod (1997):
Indivíduos são formados por vetores de características;
Organização dos indivíduos em uma grade, tendo vizinhos acima, abaixo e aos lados.
• Modelo cultural de Axelrod
Probabilidade de interação com vizinho é proporcional à quantidade de características iguais;
Na ocorrência de uma interação, o indivíduo “imita” uma das características do vizinho;
• Assim como ocorre com a cultura, formam-se agrupamentos locais que compartilham características comuns.
• E se alterarmos o algoritmo para que os agentes busquem resolver algum problema, imitando seu vizinho não mais
quando ele é similar, mas quando ele é mais bem-sucedido?
Resolução do problema do caixeiro viajante (Kennedy, 1997)
• Apesar de nenhum agente individualmente saber como resolver o problema, eles foram capazes coletivamente de resolver um problema relativamente complexo;
• A cognição move-se da mente individual para as relações interpessoais;
• Observa-se, também, que a cultura otimiza a cognição: as
interações são locais, mas as inovações são transmitidas para toda a sociedade através da cultura (no-trial learning);
• Conforme as habilidades vão se espalhando pela sociedade, a
população converge para processos ótimos (Bandura, 1965);
• A sociedade pode ser vista, portanto, como uma entidade
distribuída de processamento de informação.
• Verifica-se em sociedades humanas de forma similar a capacidade de resolver eficientemente problemas de forma descentralizada: Organização em tribos: alguns responsáveis pela caça, outros pelo
cultivo e outros pelo cuidado com as crianças;
Sociedade moderna e o trabalho especializado: aumento de eficiência mas também aumento na interdependência;
Economia de livre-mercado: a composição de decisões individuais é capaz de prover uma alocação eficiente de recursos, sendo raras as ocorrências de desabastecimentos, mesmo que nenhum indivíduo tenha conhecimento completo (ou mesmo suficiente) das
necessidades de cada pessoa;
• O funcionamento de sociedades humanas é, portanto, um processo auto-organizado.
“Pensar é social”
• Pensar é uma atividade social;
• A cultura (grupo) e a cognição (indivíduo) fazem parte de um mesmo processo;
• Indivíduos aprendem localmente através de seus vizinhos, compartilhando conhecimento;
• Uma sociedade é um
sistema auto-organizável cujas propriedades não
podem ser preditas a partir de seus componentes;
• A interação cultural (grupo) melhora a capacidade
• Segundo o Modelo Cultural Adaptativo - ACM (Robert Axelrod):
As pessoas se tornam mais similares à medida que interagem entre si;
As pessoas são atraídas por aquelas que compartilham seus ideais;
• Baseado em três processos básicos:
Avaliar (classificar estímulos em positivos ou negativos); Comparar (definição de um
referencial);
Imitar (forma efetiva
encontrada na natureza de aprendizado).
• Simulações do ACM podem encontrar soluções para alguns problemas combinatórios, porém este não é seu objetivo;
• O modelo ACM é a base teórica da Otimização por Enxame de Partículas;
• O ACM explica o comportamento “imite o melhor do grupo” da técnica PSO;
• Outros modelos também são utilizados para explicar o comportamento do PSO.
Auto-organização
• Conjunto de mecanismos dinâmicos pelos quais múltiplos elementos conseguem estabelecer ordem sem imposição por quaisquer forças externas;
• Ingredientes principais: realimentação positiva e negativa, amplificação das perturbações e múltiplas interações
(Bonabeau et al, 1999);
• Aumento da capacidade coletiva: o todo é mais do que a mera soma dos indivíduos;
• Regras muito simples: economia para codificação; • Forte interação dos elementos com seus vizinhos;
• Uso apenas de informações locais, sem referência ao padrão global almejado.
• O conjunto como um todo é a principal estrutura de
controle, e não um líder centralizado;
• Demanda poucos recursos dos componentes do sistema;
• Baixas exigências no que tange a estrutura de
comunicação;
• Ordem robusta e flexível: permite respostas diferentes a
cenários diferentes, mesmo sem a codificação explícita
nas regras do sistema.
• Craig Reynolds percebeu que a movimentação de bandos de pássaros e cardumes de peixes eram sincronizados sem existir um controle central;
• Ele então criou um modelo do movimento de bandos de pássaros composto apenas por 4 regras:
i) Separação: para evitar que cada pássaro colidisse com um outro;
ii) Alinhamento: para fazer com que cada pássaro seguisse a mesma direção de seus vizinhos;
iii) Coesão: para que cada pássaro seguisse a mesma posição de seus vizinhos;
iv) Desvio: para que cada pássaro desviasse de obstáculos à frente.
• KENNEDY et al. (2001) utilizaram três princípios para resumir o processo de adaptação cultural:
Avalie os indivíduos possuem a
capacidade de sentir o ambiente de forma a avaliar seu próprio
comportamento;
Compare os indivíduos usam uns aos outros como material comparativo;
Imite: a imitação é central em
organizações sociais humanas e é importante para a aquisição e
manutenção das habilidades mentais.
Particle Swarm Optimization
• Técnica de otimizaçãobaseada em uma população de soluções (como nos AEs); • Criada por Kennedy e
Eberhart em meados da década de 90;
• Técnica inspirada no
comportamento social de revoadas de pássaros;
• Os resultados obtidos com a simulação das revoadas
• Baseado no modelo ACM (avaliar, comparar e imitar);
• Uma população de soluções é mantida;
• Cada indivíduo da população
(partícula) é um vetor de reais que corresponde a uma possível
solução;
• Cada partícula possui uma posição e uma velocidade no n ;
• O processo de atualização de uma partícula possui dois componentes: Melhor experiência (posição
visitada) pessoal;
Melhor experiência (posição visitada) do grupo;
PSO
• Em 1995, James Kennedy andRussell Eberhart seguiram o
modelo de Reynolds para resolver problemas de otimização
contínua;
• Para isso, eles utilizaram as
regras de alinhamento e coesão e criaram um sistema de partículas denominado Particle Swarm
Optimization (PSO);
• Inicialmente, no algoritmo, diversas partículas são
espalhadas aleatoriamente no espaço de busca.
• Iterativamente cada partícula utiliza a informação de sua melhor posição no passado (em cinza) e da melhor
posição atual entre seus vizinhos:
• E então ela se move em uma combinação linear desses
dois vetores, com pesos diferentes, em uma nova posição: