Artificial Bee Colony Algorithm (ABC)
Artificial bee colony algorithm was inspired by the intelligent behavior of bees and developed by Karaboga and Basturk [9]. In the ABC algorithm, there are three types of bees: employed bees, onlookers, and scouts. The position of a food source represents a possible solution to the optimization problem, and the nectar amount of a food source corresponds to the quality of the solution represented by that food source [10].
In the employed bee phase, the employed bees are responsible for searching for new food sources in the neighborhood of current food sources, and calculating the nectar amount of these sources. The location of the new food sources is determined as follows:
i =1, 2, …, N ; (32)
where is a randomly chosen solution different from , and is the new solution (food source). is a uniform random number between [-1, 1].
If the new food source has equal or better nectar than the old source, it is replaced with the old one in the memory. Otherwise, the old one is retained in the memory.
In the onlooker bee phase, onlooker bees select a food source for themselves with a probabilistic calculation method by using the fitness values of the food sources. The onlookers search for better food source in the neighborhood of current food source by using equation (32). If the new nectar amount is better than the nectar amount of the old resource, then the old resource is abandoned. Otherwise, the abandonment counter of that food resource is increased by one. This process is repeated until all onlookers are distributed among the food sources [10].
If the nectar amount of a food source has been exhausted or the profitability of the food source decreases under a certain level, the employed bee associated with that food source becomes a scout. This scout starts searching a new food source randomly without any guidance in the search space. This abandoning and scouting mechanism assist the algorithm to escape local optimums [11].