Artificial Bee Colony (ABC) Algorithm

Self-organization and division of labour are necessary and sufficient properties to obtain swarm intelligent behaviour (Bonabeau, Dorigo and Theraulaz, Swarm Intelligence: From Natural to Artificial Systems, Oxford University Press, 1999). Four basic properties on which self organization relies are positive feedback, negative feedback, fluctuations and multiple interactions. When the behaviour of honey bees is examined carefully (Seeley, The Wisdom of The Hive, Harvard University Press, 1995), it is seen that these four properties are inherent in foraging honey bees: i) Positive feedback: As the nectar amount of food sources increases, the number of onlookers visiting them increases, too; ii) Negative feedback: As the nectar amount of food sources decreases, their employed bees’ dance duration decreases and finally recruiting is stopped; iii) Fluctuations: The scouts carry out a random search process for discovering new rich food sources; iv) Multiple interactions: Bees share their information about the food sources with their nest mates via dances on the dance area.

Artificial Bee Colony (ABC) is one of the most recently defined algorithms by Dervis Karaboga in 2005, motivated by the intelligent behavior of honey bees. It is as simple as Particle Swarm Optimization (PSO) and Differential Evolution (DE) algorithms, and uses only common control parameters such as colony size and maximum cycle number. ABC as an optimization tool, provides a population-based search procedure in which individuals called foods positions are modified by the artificial bees with time and the bee’s aim is to discover the places of food sources with high nectar amount and finally the one with the highest nectar. In ABC system, artificial bees fly around in a multidimensional search space and some (employed and onlooker bees) choose food sources depending on the experience of themselves and their nest mates, and adjust their positions. Some (scouts) fly and choose the food sources randomly without using experience. If the nectar amount of a new source is higher than that of the previous one in their memory, they memorize the new position and forget the previous one. Thus, ABC system combines local search methods, carried out by employed and onlooker bees, with global search methods, managed by employed bees and scouts, attempting to balance exploitation and exploration processes. A good analogy exists between the intelligent foraging behaviour of honey bees and the intelligent optimization process performed by ABC algorithm as in the table:

Analogy   
Real foraging honey bee colony    Artificial bee colony-ABC (Optimization)    
Working in continuous time     Discrete time    
Having memory    Memory   
Maximizing the honey inside a hive    Max/Minimizing objective function(s) for a problem   
Accessible food sources around a hive    Possible solutions for an optimization problem   
Number of accessible food sources around a hive Population size of possible solutions in a search space
Nectar amount (profitability) of a food source    Fitness (quality) of a solution to the optimization problem   
Five-dimensional search space    n-dimensional search space   
Employed bees    Local-global search ability using her memory   
Onlooker bees-positive feedback    Enhancing local search ability in the vicinity of possible good solutions   
Scout bees-fluctations    Enhancing global search ability by the abondonment mechanism and random   search   
Multiple interactions:
   i) Dance based
   ii)Pheromone based
Dance based interaction
Adaptation to new conditions in the hive and changes in the environment    Balance between exploration and exploitation based on “limit” parameter   

Since 2005, some members of the intelligent systems research group, the head of the group is D.Karaboga, have studied on ABC algorithm and its applications to real world-problems. Karaboga and Basturk have studied on the version of ABC algorithm for unconstrained numerical optimization problems and its extended version for the constrained optimization problems.

Dervis Karaboga (2010) Artificial bee colony algorithm. Scholarpedia, 5(3):6915.

NEW A survey on the Artificial Bee Colony algorithm variants for binary, integer and mixed integer programming problems

NEW A review on the studies employing artificial bee colony algorithm to solve combinatorial optimization problems

NEW A survey on the studies employing machine learning (ML) for enhancing artificial bee colony (ABC) optimization algorithm




NEW Rust code of the Artificial Bee Colony (ABC) algorithm has been released (24.10.2024).

Python code of the basic Artificial Bee Colony algorithm has been released (27.05.2020).

C# code of the Artificial Bee Colony Programming (ABCP) has been released (10.09.2019).

Two new improved implemantation codes of ABC have been published in Information Sciences: M. Mernik, SH. Liu, D. Karaboga, M. Crepinsek, "On clarifying misconceptions when comparing variants of the Artificial Bee Colony Algorithm by offering a new implementation", Information Sciences, DOI: 10.1016/j.ins.2014.08.040.

An implementation of the Artificial Bee Colony (ABC) Algorithm (R-package, A new version).

A version of ABC algorithm in CRAN (The Comprehensive R Archive) by George G. Vega Yon (Pure R code).

A demo program of Artificial Bee Colony Programming -ABCP-

Artificial Bee Colony Programming -ABCP- for Symbolic Regression

A Special Session on Artificial Bee Colony Algorithm in CEC 2012

ABC Algorithm Source Code by Delphi for Constrained Optimization has been released (17.05.2011)

Step by Step Procedure of ABC Algorithm can be downloaded from here (pdf) (16.05.2011)

Neural Network Training by ABC algorithm, XOR Problem Example has been released (15.03.2011)

A Special Session on Artificial Bee Colony Algorithm in CEC 2011

JAVA Code of the ABC algorithm has been released (15.04.2010)

C Code of the ABC algorithm has been released (14.12.2009)

MATLAB Code of the ABC algorithm version 2 has been released (14.12.2009) (more optimized coding)

MATLAB code of the basic ABC algorithm has been released (30.12.2008). Please click for downloading.

You can download the software demonstrating the scatter of bees in the search space from here (26.11.2008)

Detailed Pseudo-code of the ABC Algorithm can be downloaded from here (pdf) (14.10.2008)

Our Visitors Statistics....:
 
 

Intelligent Systems Research Group, Department of Computer Engineering, Erciyes University, Turkiye