Research Article

A New Modified Artificial Bee Colony Algorithm with Exponential Function Adaptive Steps

Algorithm 3

Flowchart of MABC.
) Initialization phase
() Food Number = , that is, the number of food sources equals to half of the colony size
() Based on the opposition-based learning of population initialization as in Section 3.1
() Calculate their fitness values
() Based on -type sub-population grouping described in Section 3.2
() trial = zeros (1, Food Number). Initialize trial counters to be zeros
() Initialize elitists to be food sources
() Memorize the best food source
Iter = 0;
while Iter max iteration
Select a better elitist by sensitivity-pheromone option in Section 3.3
() Employed bees phase
  for = 1 to Food Number
     () Update step length of each food source by (7) and generate a new solution by (10)
     () Evaluate the new solution
     () Iter = Iter + 1
     () A sensitivity-pheromone selection is applied between the current solution and its mutant.
        If the mutant solution is better than the current solution , replace the solution
        with the mutant and reset the trial counter of solution . Otherwise, increase
        its trial counter.
  end
Calculate probabilities using (6)
() Onlooker bees phase
  () Select a food source by sensitivity-pheromone method in Section 3.3
  () For each onlooker bee, update step length of each food source by (7) and generate a new solution by (10)
  () Iter = Iter + 1
  () A sensitivity-pheromone selection is applied between the current solution and its mutant.
    If the mutant solution is better than the current solution, replace the solution
    with the mutant and reset the trial counter of solution.
    Otherwise, increase its trial counter.
The optimal solution is memorized
() Scout bees phase
  () Determine the food sources whose trial counter exceeds the “limit” value,
    and only one scout bee is allowed to occur in each iteration
  () Use a scout bee to carry out randomly search
if Food Number max iteration
end while
Return the optimal solution