Theory


O algoritmo de Firefly aprimorado com base nas diferenças de gênero e sua convergência é uma extensão do algoritmo de Firefly original, que introduz uma abordagem baseada em gênero para melhorar a exploração do espaço de busca e a convergência para soluções ótimas. Este algoritmo reflete o processo de interação entre fireflies, onde fireflies mais brilhantes (com soluções melhores) são atraídos para fireflies menos brilhantes (com soluções piores), resultando em um movimento em direção a soluções ótimas [1].

Nesta versão aprimorada do algoritmo de firefly, a população é segmentada em dois subgrupos distintos: fireflies masculinos e femininos [1].

Na dinâmica aprimorada do algoritmo de firefly, os fireflies masculinos selecionam de forma aleatória duas fireflies femininas para atualizar suas posições. Para isso, dois fatores discriminantes são empregados para orientar o movimento desses fireflies masculinos [1].

Já as fireflies femininas direcionam-se em direção à firefly masculina mais luminosa. Tal abordagem as conduz a explorar regiões da solução em busca de ótimas soluções, contribuindo para aprimorar a qualidade do resultado final [1].

Nesta versão, foram propostas duas fórmulas de busca distintas para os dois subgrupos. Uma dessas fórmulas prioriza a busca global, enquanto a outra foca na busca local [1].

A fórmula de atualização é determinada pelo modo de movimento das fireflies. A intensidade luminosa de cada firefly é ajustada de acordo com a qualidade da solução que ela representa. Para os fireflies machos, eles selecionam aleatoriamente duas fireflies fêmeas para atualizar sua posição (equação [2]),enquanto as fireflies fêmeas ajustam suas posições movendo-se em direção ao melhor firefly macho, (equação [3]).

Position update formula of male firefly

A fórmula de atualização do firefly macho foi concebida para realizar uma busca global, explorando todo o espaço disponível. Cada firefly macho (representado por Xi) seleciona aleatoriamente duas fêmeas (Yk, Yj). Dois fatores discriminantes (d1,d2) são calculados com base na comparação do brilho entre o firefly macho e as duas fêmeas, determinando se o movimento será em direção às fêmeas no espaço de busca ou para longe delas. Veja a equação [1].

Ao comparar a intensidade luminosa entre os fireflies macho e fêmea, o fator discriminante é atribuído com valores distintos. Se o valor da função yk for menor que o valor de xi, o primeiro fator discriminante d1 é estabelecido como 1; caso contrário, é definido como -1. A configuração de d2 segue a mesma lógica do d1 [1].

</tr> </table>

Observando a equação [1] é evidente que a firefly macho voará em direção à firefly fêmea selecionada quando a qualidade da solução feminina exceder a do macho. Caso contrário, eles se afastarão em busca de outro espaço. Com base nessa análise, a fórmula de atualização das fireflies machos é derivada da seguinte maneira: λ e μ representam números aleatórios no intervalo [0, 1], enquanto a atratividade entre duas fireflies é calculada pela equação [4]. β1 denota a atratividade entre xi e yk, e β2 é a atratividade entre xi e yj [1]. Consulte a fórmula de atualização da firefly macho na equação [2].

d = {1-1 f (y) < f (x)

(1)

</tr> </table>

Position update formula of male firefly

A firefly fêmea é direcionada pelo firefly macho mais brilhante, para atualizar sua posição no espaço de busca [1]. Essa dinâmica permite que as fireflies fêmeas se desloquem estrategicamente em direção às regiões mais promissoras do espaço de solução, colaborando assim para o aprimoramento do processo de busca. Consulte a fórmula de atualização da firefly fêmea na equação [3].

xit+1 = xit + d1β1λ (ykt - xit) +d2β2μ (yjt - xit)

(2)

</tr> </table>

Na equação [3] xbest representa o firefly macho mais luminoso, β é o fator de atração entre yi e xbest, e φ é um número aleatório em [0, 1]. Durante o processo de atualização, ambos os subgrupos desempenham papéis específicos: os fireflies machos se dedicam à busca global, enquanto as fêmeas de vaga-lume focam na busca local. No entanto, nenhum deles pode, por si só, alcançar soluções altamente precisas de maneira eficiente. Assim, através da cooperação entre fireflies machos e fêmeas, o algoritmo aprimorado é capaz de equilibrar melhor a exploração e a explotação, resultando em uma estratégia de busca mais eficaz [1].

The attractiveness of each firefly

A atratividade de cada firefly é determinada da seguinte maneira:

yit+1 = yit + βφ (Xbestt - yit)

(3)

</tr> </table>

Algorithm

```python 1: Input initial parameters (p_c, p_m, n_population,n_iteration, x_lower, x_upper, fit_function, obj_function, n_dimensions) 2: Input initial guess (x_pop) 3: Calculate of and fit (initial population) 4: for iter in range(n_iterations): 5: Apply selection operator 6: r = random number [0,1] 7: if r <=p_c: 8: Apply crossover operator 9: r = random number [0,1] 10: if r <= p_m: 11: Apply mutation operator 12: if fit(x_temp) > fit(x_pop): 13: x_pop(iter+1) = x_temp 14: else: 15: x_pop(iter+1) = x_pop(iter) ```

See GA algorithm in METApy Framework.

Reference list

β(r) = β0 e γ r2

(4)

ID Reference

[1]

Chun-Feng Wang, Wen-Xin Song, A novel firefly algorithm based on gender difference and its convergence,Applied Soft Computing, Volume 80, 2019, Pages 107-124, ISSN 1568-4946,/a></p></td> </tr> </tbody> </table> # Logistic chaos map: https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8977567