1. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Artificial Bee Colony Algorithm
By:
Dr. Harish Sharma
Associate Professor
Department of Computer Engineering
Rajasthan Technical University, Kota
Email: hsharma@rtu.ac.in
Mob. No. 9461174365
2. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Nature-Inspired Algorithms
Swarm Intelligence
Nature-Inspired Algorithms I
Nature-Inspired Algorithms can be defined as population based stochastic
metaheuristic which imitate some natural phenomenon to find an optimum
solution of a problem.
The main idea of these algorithms is: individuals updates itself using:
1 The knowledge of the environment (its fitness value)
2 The individual’s previous history of states (its memory)
3 The previous history of states of the individual’s neighborhood
Often real world provides some complex optimization problems that can not be
easily dealt with available mathematical optimization methods. If the user is not
very conscious about the exact solution of the problem in hand then
nature-inspired algorithms may be used to solve these kind of problems.
3. Introduction
When We Use NIAs ??
If any deterministic method is available for the optimization problems, we do not
need to switch for NIAs.
But sometime complex optimization problems can not be easily deal with
available mathematical optimization methods.
So when the user is not very conscious about the exact solution of the problem
in hand, then nature-inspired algorithms may be used to solve these kind of
problems.
4. Introduction
Why We Use NIAs ??
Applicable to wider set of problems i.e. mathematical formation of function is not
required.
Use the stochastic or probabilistic approach i.e. random approach.
Gives near optimal solution to these problems.
Works on the basis of fitness evaluation.
5. Introduction
Optimization
An art of selecting the best alternative(s) amongst a given set of options or finding the
values of the variable that maximize or minimize the objective function while satisfying the
constraints.
F(X) = X2
1 + X2
2
Main components of an optimization problem
F(X) = Objective Function
X1 and X2 = Decision Variables
limit = −5 ≤ X1, X2 ≤ 5
Dimensions = 2
The main objective is to find the values of X1 and X2 Such that objective function F(X)
should be minimized.
10. Introduction
Some Basic Terminologies in NIA I
Exploration
Exploration is the process of visiting entirely new regions of a search space.
Exploitation
Exploitation is the process of visiting those regions of a search space within the neighborhood of
previously visited points.
Stagnation
Stagnation refers to a situation in which the optimum seeking process stagnates before finding a
globally optimal solution.
Premature Convergence
A population for an optimization problem converged too early, resulting in being suboptimal.
11. Introduction
Some Basic Terminologies in NIA
Stochastic Nature
Intelligence + Randomness + Previous Experience
Heuristic and Meta-heuristics
Heuristics are problem-dependent techniques and Meta-heuristics problem-independent
techniques.
12. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Nature-Inspired Algorithms
Swarm Intelligence
Nature-Inspired Algorithms
Important Classes ofPopulationbased
StochasticOptimizationAlgorithms
Evolutionary
Algorithms
Swarm-Intelligence
based Algorithms
Evolutionary algorithm (EA).
Swarm Intelligence: The definition given by Bonabeau is
Any attempt to design algorithms or distributed problem-solving devices inspired by the
collective behaviour of social insect colonies and other animal societies
13. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Bee Behaviour
Dance
Artificial Bee Colony algorithm (ABC), introduced by D.
Karaboga in 2005, is a swarm-intelligence based optimization
algorithm.
The minimal model of forage selection that leads to the
emergence of collective intelligence of honey bee swarms
consists of three essential components:
1 Food sources,
2 Employed foragers
3 Unemployed foragers
i Scouts
ii Onlookers
14. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Bee Behaviour
Dance
(a) (b) (c)
Food Sources: The value of a food source depends on its proximity to the nest, its richness,
and the ease of extracting nectar.
Employed foragers: They are associated with a particular food source which they are
currently exploiting or are “employed at. They carry with them information about this
particular source, its distance and direction from the nest and share this information with a
certain probability.
Unemployed foragers: They are continually at look out for a food source to exploit. There
are two types of unemployed foragers:
1 Scouts: searching the environment surrounding the nest for new food sources and
2 Onlookers: waiting in the nest and establishing a food source through the information shared by
employed foragers
15. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Bee Behaviour
Dance
After unloading the nectar, the forager bee which has found a rich source performs
special movements called dance on the area of the comb in order to share her
information about the food source such as how plentiful it is, its direction and distance
and recruits the other bees for exploiting that rich source.
While dancing, other bees touch her with their antenna and learn the scent and the
taste of the source she is exploiting. She dances on different areas of the comb in
order to recruit more bees and goes on to collect nectar from her source.
1 Round dance: If the distance of the source to the hive is less than 100 meters.
Round dance does not give direction information.
2 waggle dance: When the source is far away. In case of waggle dance, direction
of the source according to the sun is transferred to other bees. Longer distances
cause quicker dances.
3 Tremble dance: When the foraging bee perceives a long delay in unloading its
nectar.
16. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Bee Behaviour
Dance
Social behaviour of Honey Bees
Figure: Social behaviour of Honey Bees
17. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
Basic Step of position update of an individual
Position updated procedure is an important and crucial part of the nature inspired algorithms as it is
the step where members learn from society and update itself accordingly.
New Position = Persistence + Social Influence
The social learning/Social Influence of ABC is based on difference vectors i.e. variation component.
The generalized position updated equation of the algorithms is as follows:
xnext = xcurrent + B ×
Variation Component
z }| {
(x1 − x2)
| {z }
Step size
.
18. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
ABC I
Initialization of the population
Each food source is generated as follows:.
xij = xminj + rand[0, 1](xmaxj − xminj ) (1)
where xminj and xmaxj are bounds of xi in jth direction and rand[0, 1] is a uniformly
distributed random number in the range [0, 1].
Employed bee phase
The position update equation for ith candidate in this phase is
vij = xij + φij (xij − xkj ) (2)
where k ∈ {1, 2, ..., SN} and j ∈ {1, 2, ..., D} are randomly chosen indices. k must be
different from i. φij is a random number between [-1, 1].
Slide 10/ 17
19. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
ABC II
(a)
x1
x2
xij
vij
vij
'
vij
'
'
vij
'
'
'
(b)
Figure: (a) Illustrating a simple position update equation execution,
(b) Different possible new vectors formed in neighborhood of xij due
to position update equation in 2-D search space.
20. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Engineering Optimization Problems
ABC III
Onlooker bees phase
The probability pi may be calculated using following expression:
pi =
fiti
PSN
i=1 fiti
(3)
where fiti is the fitness value of the solution i.
Scout bees phase
If the position of a food source is not updated up to predetermined number of cycles,
then the food source is assumed to be abandoned and scout bees phase starts.
Harish Sharma
21. Introduction
Behaviour of Honey Bee Swarm
Position update process in NIAs
Artificial Bee Colony (ABC) algorithm
Artificial Bee Colony Algorithm
Initialize the population of solutions, xi (i = 1, 2, ...; SN);
cycle = 1;
while cycle <> MCN do
Produce new solutions vi for the employed bees and evaluate them;
Apply the greedy selection process for the employed bees;
Calculate the probability values pi for the solutions xi ;
Produce the new solutions vi for the onlookers from the solutions xi selected
depending on pi and evaluate them;
Apply the greedy selection process for the onlookers;
Determine the abandoned solution for the scout, if exists, and replace it with a
new randomly produced solution xi ;
Memorize the best solution achieved so far;
cycle = cycle + 1;
end while
ABC Step by Step Example