Discussão do artigo "Algoritmos de otimização populacionais: enxame de pássaros (Bird Swarm Algorithm, BSA)"

 

Novo artigo Algoritmos de otimização populacionais: enxame de pássaros (Bird Swarm Algorithm, BSA) foi publicado:

O artigo explora o BSA, um algoritmo baseado no comportamento das aves, inspirado na interação coletiva das aves em bando na natureza. Diferentes estratégias de busca dos indivíduos no BSA, incluindo a alternância entre comportamento de voo, vigilância e procura de alimento, tornam esse algoritmo multifacetado. Ele utiliza os princípios de comportamento de bando, comunicação, adaptabilidade, liderança e acompanhamento das aves para a busca eficaz de soluções ótimas.

O Bird Swarm Algorithm (BSA) é um algoritmo evolutivo fascinante, inspirado na biologia e que utiliza a inteligência de enxame, baseado nas interações sociais e no comportamento de bandos de aves. Criado por Meng e sua equipe em 2015, o BSA traz uma abordagem única para otimização, unindo três aspectos principais do comportamento das aves: voobusca por alimento, vigilância. Nos enxames eletrônicos, cada "ave" tem suas próprias táticas e estratégias, criando um sistema de interação coletiva cheio de inteligência algorítmica e criatividade. Aqui, o que conta não são apenas os esforços individuais, mas também a capacidade de colaborar, trocar informações e apoiar uns aos outros na busca por um objetivo comum de otimização.  

Indivíduos diferentes no BSA podem adotar diferentes estratégias de busca. As aves podem alternar aleatoriamente entre comportamento de voo, vigilância e busca por alimento. O algoritmo de design biônico inclui a busca por alimento com base na aptidão global e individual. As aves também tentam se deslocar para o centro da população, o que pode levar à competição com outras aves ou ao afastamento do bando. O comportamento das aves envolve voos regulares e migrações, além de alternar entre os papéis de "produtor" e "pedinte". No contexto do BSA, cada indivíduo em uma determinada iteração segue sua própria estratégia de busca, o que torna o algoritmo versátil e eficiente.

Autor: Andrey Dik

 
Qual AO converge mais rapidamente (número de cálculos FF)? Não importa para onde ele converge. Desde que haja um mínimo de etapas.
 
fxsaber #:
Qual AO converge mais rapidamente (número de cálculos FF)? Não importa para onde ele converge. Desde que haja um mínimo de etapas.
Qualquer um dos 5 primeiros converge muito rapidamente.
 
Andrey Dik #:
Qualquer um dos 5 primeiros, muito rápido para convergir.

Gostaria que houvesse um valor numérico para a rapidez.

 
fxsaber #:

É uma pena que não exista um valor numérico para a rapidez.

Você poderia fazer isso, realizar várias execuções de testes, salvar os valores de FF em cada época e calcular a melhoria média em cada época correspondente. É claro que haverá valores diferentes para cada número de variáveis. Isso ocorre se você for muito exigente com os indicadores numéricos de "velocidade de convergência".

Em cada primeiro teste para todas as três funções de teste (10 parâmetros), os 5 primeiros da lista estarão muito próximos do máximo teórico já por volta da 100ª época (com uma população de 50).

 
Andrey Dik #:

É claro que você pode fazer isso, realizar várias execuções de testes, salvar os valores de FF em cada época, calcular a melhoria média em cada época correspondente. É claro que, para cada número de variáveis, haverá indicadores diferentes. Isso se você for muito exigente com os indicadores numéricos de "velocidade de convergência".

Em cada primeiro teste para todas as três funções de teste (10 parâmetros), os 5 primeiros da lista estarão muito próximos do máximo teórico já por volta da 100ª época (com uma população de 50).

~5000 FF?

 
fxsaber #:

~5000 FF?

Sim. Mesmo na 50ª época já estará em torno de 70-80% do máximo teórico.

Bem, é claro que isso ocorre com a etapa 0 do parâmetro (como eu faço ao testar). Se a etapa for diferente de 0, a convergência será ainda maior.