Firefly Algorithm (FFA)
The firefly algorithm was inspired by the flashing light of fireflies and developed by Xin-She Yang [15]. All the fireflies are considered unisexual and their attraction is directly proportional to the intensity of their flash. Therefore if a firefly particle had the choice of moving towards either of two fireflies, it will be more attracted towards the firefly with higher brightness and moves in that direction. If there are no fireflies nearby, the firefly will move in a random direction. The brightness of flash is associated with the fitness function. As a firefly’s attractiveness is proportional to the light intensity seen by adjacent fireflies, the attractiveness β of a firefly can be defined as a function of the Cartesian distance r between the fireflies [15,16]:
(35)
where β 0 is the attractiveness at r = 0 and γ is the absorption coefficient. The movement of a fireflyi is attracted to another more attractive (brighter) fireflyj is determined by
(36)
where α is the randomization parameter and ε is the vector of random numbers taken from Gaussian distribution. At the end of all generations, the firefly with the highest brightness i.e. the best fitness value is concluded as the optimal solution to the problem