Butterfly Optimization Algorithm (B.O.A) Step-by-Step Explanation ~xRay ...
Butterfly Optimization Algorithm (B.O.A)
Butterfly are Flying Insects.
About Butterfly
Butterfly Features: Small Head, 2 compound eyes. Butterfly basically feed on Nectar from flowers. Adult Butterfly consume only liquid [nectar from flowers]. They use their Antenna to sense air from wind and fragrance. Butterfly can fly only when their temperature is 27℃ or 81℉. Largest butterfly in the world: Queen Alexandra Birdwing. Butterflies also derive nourishment from rotting fruits, dung, decaying flesh, dissolved minerals in the dirt/ sand.
Butterfly Lifecycle
An Adult Butterfly lay eggs on the food plant. From Eggs to Larva [Larva consume plant leaves].
When metamorphosis complete. Puppet skin splits and adult insect climb out. When wings dry it can fly.
Butterfly Optimization Algorithm (B.O.A.)
Butterfly Optimization Algorithm (B.O.A.) is a latest Nature-Inspired Population Based Algorithm. Butterfly Optimization Algorithm is basically inspired by the foraging and mating behavior of butterflies. Butterfly Optimization Algorithm (B.O.A.) is basically inspired by various foraging strategies of butterfly. Butterflies use their sense of Smell, Sight, Taste, Touch, and Hearing.
In Butterfly Optimization Algorithm Butterfly are Search Agents. In this algorithm, butterfly will generate fragrance [i.e., Fitness Values]. As butterfly move from one location to another, their fragrance/fitness values change accordingly. Butterfly can sense the fragrance. When any butterfly is able to sense the fragrance from other butterfly it moves toward it [I.e., Global Search]. When any butterfly is not able to sense the fragrance from the surrounding, then it will move randomly [i.e., Local Search].
In Butterfly Optimization Algorithm Butterfly MOVEMENT
1.) All butterflies are suppose to emit some fragrance. Which enable the butterflies to attract each other.
2.) Butterflies will move Randomly or toward the best butterfly [emitting more fragrance].
Butterfly Optimization Algorithm Pseudocode
Objective function f(x).
Generate Initial Population of n Butterflies.
Calculate Fitness values / Intensity Values for each butterfly.
Define sensor modality c, power exponent a and switch probability p.
While Check stopping criteria
For Each butterfly in the population
Calculate Fragrance.
End For
Find out Best Butterfly among all.
For Each butterfly in the population
Generate a random number r from [0,1].
Check if(r < p)
Move towards best butterfly / Solution.
Else
Move butterfly randomly.
End if
End For
Update the value of a
End While
Print best solution obtained
How to Calculate Fragrance for each butterfly?
How to Move towards best butterfly / Solution?
How to Move butterfly randomly in the search space.
No comments