From Handwiki In mathematical optimization, computer science and operations research, the Mayfly Optimization Algorithm (MA) was developed by Zervoudakis K. and Dr. Tsafarakis S. to address both continuous and discrete optimization problems and is inspired from the flight behavior and the mating process of mayflies. It is a hybrid algorithmic structure of particle swarm optimization, firefly algorithm and genetic algorithm. The processes of nuptial dance and random flight enhance the balance between the algorithm's exploration and exploitation properties and assist its escape from local optima. Its performance is superior to that of other popular metaheuristics like PSO, DE, GA and FA, in terms of convergence rate and convergence speed.[1]
The MA was developed to address both single objective and multi objective optimization problems.[2] Since its first presentation the mayfly optimization algorithm has been used by researchers to address various optimization problems.[3][4][5][6][7]
MA pseudocode [8]
Objective function f(x), x=(x_1,…,x_d )^T
Initialize the male mayfly population x_i (i=1,2,…,N) and velocities v_mi
Initialize the female mayfly population y_i (i=1,2,…,M) and velocities v_fi
Evaluate solutions
Find global best gbest
Do While stopping criteria are not met
Update velocities and positions of males and females
Evaluate solutions
Rank the mayflies
Mate the mayflies
Evaluate offspring
Separate offspring to male and female randomly
Replace worst solutions with the best new ones
Update pbest and gbest
end while
MOMA pseudocode[9]
Initialize the male mayfly population 𝑥𝑖
(𝑖 = 1,2, … , 𝑁) and velocities 𝑣𝑚𝑖
Initialize the female mayfly population 𝑦𝑖
(𝑖 = 1,2, … , 𝑀) and velocities 𝑣𝑓𝑖
Evaluate solutions using the predefined objective functions
Store the nondominated solutions found in an external repository
Sort the mayflies
Do While stopping criteria are not met
Update velocities and positions of males and females
Evaluate solutions
If a new mayfly dominates its personal best
Replace personal best with the new solution
If no one dominates the other
The new solution has a chance of 50% to replace the personal best
Rank the mayflies
Mate the mayflies
Evaluate offspring
Separate offspring to male and female randomly
If an offspring dominates its same-sex parent
Replace parent with the offspring
Insert all the new nondominated solutions found in the external repository
Sort the nondominated solutions and truncate the repository if needed
end while
Categories: [Optimization algorithms and methods]