1. Cuckoo Search Optimization Algorithm
AlgorithmDesign CS435
Group Members :
Arjun
Feressa
Haymanot
James
June 2014
2. What is Cuckoo Search?
Cuckoo search (CS) is an optimization
algorithm developed by Xin-she Yang and
Suash De b in 2009.
It was inspired by the obligatebroodparasitism
of some cuckoo species by laying their eggs in
the nests of other host birds (of other species).
An obligate parasite is a parasitic organism
that cannot complete its life cycle without
exploiting a suitable host.
a cuckoo which hatches and is raised by non-
relatives, is known as a brood parasite.
3.
4. Consequence
Some host birds can engage direct conflict
with the intruding cuckoos.
For example, if a host bird discovers the
eggs are not their own, it will either throw
these alien eggs away or simply abandon its
nest and build a new nest elsewhere.
5. Adaptation, and Evolution
Some cuckoo species have evolved in such
a way that the female parasitic cuckoos are
often very specialized in the mimicry in colors
and pattern of the eggs of a few chosen host
species.
6. Inspiration
Cuckoo search idealized such breeding
behavior, and thus can be applied for various
optimization problems.
It seems that it can outperform other m e ta-
he uristic alg o rithm s in applications.
Note:-
Heuristic: experience-based techniques for problem solving,
A heuristic is still a kind of an algorithm, but one that will not
explore all possible states of the problem,
7. Representations
Each egg in a nest represents a solution, and a
cuckoo egg represents a new solution.
The aim is to use the new and potentially better
solutions (cuckoos) to replace a not-so-good
solution in the nests.
In the simplest form, each nest has one egg. The
algorithm can be extended to more complicated
cases in which each nest has multiple eggs
representing a set of solutions.
8. Three idealized rules of Cuckoo
Search
Each cuckoo lays one egg at a time, and
dumps its egg in a randomly chosen nest;
The best nests with high quality of eggs will
carry over to the next generation;
The number of available hosts nests is fixed,
and the egg laid by a cuckoo is discovered by
the host bird with a probability pa (0,1).
9. • As a further approximation, this last assumption can be
approximated by a fraction pa of the n nests being
replaced by new nests (with new random solutions at
new locations).
• For a maximization problem, the quality or fitness of a
solution can simply be proportional to the objective
function. Other forms of fitness can be defined in a
similar way to the fitness function in genetic algorithms.
10. Lé vy flig ht
When generating new solutions x(t+1)
for, say cuckoo i , a L´evy
flight is performed
xi
(t+1)
= xi
(t)
+ α ⊕ L´evy(λ ) ……. . (1)
Where α > 0 is the step size, which should be related to the
scales of the problem of interest. In most cases, we can use α = 1
New Solution Current
Location
The transition
probability
11. Use of Lé vy flig ht
Some of the new solutions should be
generated by L´evy walk around the best
solution obtained so far, this will speed up the
local search.
However, a substantial fraction of the new
solutions should be generated by far field
randomization and whose locations should be
far enough from the current best solution, this
will make sure the system will not be trapped
in a local optimum.
12. Replace j by the new
Solution
End
Start
Initialize a Random population
of n host nests, xi
Get a Cuckoo randomly ,i
Evaluate its Fitness Fi
Select a nest among n
randomly , j
Let j as the solution
Abandon a fraction pa of worse
nests and build new one at new
locations
Keep the Current Best
Find the best nest
Fi>=Fj
T<=MaxIterationsNo
Yes
No
Yes
13. Let Eggs Grow
Initialize Cuckoos
with Eggs
Lay Eggs in
different nests
Some of Eggs are
detected and killed
Determine Egg
Laying Radius for
each Cuckoo
Move all Cuckoos
to wards best
environment
Determine Cuckoo
Societies
Find nests with
best Survival rate
Start
Check Survival of
Eggs in nests
Kill Cuckoos in
worst Area
Stop
Condition
Population
< MaxValue
yes
No
No
yes End
14. PSEUDO CODE OF CUCKOO SEARCH ALGORITHM
Begin
Objective function f(x), x = (x1, ..., xd) ;
Initial a population of n host nests xi (i = 1, 2, ..., n);
while (t <MaxGeneration) or (stop criterion)
Get a cuckoo (say i) randomly by Lévyflights;
Evaluate its quality/fitness Fi;
Choose a nest among n (say j) randomly;
if (Fi > Fj)
Replace j by the new solution;
end
Abandon a fraction (pa) of worse nests and build new ones at
new locations via L´evy flights;
Keep the best solutions (or nests with quality solutions);
Rank the solutions and find the current best;
end while
Postprocess results and visualization;
End
15. Comparison with other Meta Heuristic
Algorithms
An important advantage of this algorithm
is its simplicity.
Compared to other metaheuristic
algorithms there is essentially only a
single parameter(Pa) in Cuckoo Search
(apart from the population size n).
It is very easy to implement.
16. Applications
The applications of Cuckoo Search in engineering
optimization.
Solve NP-Hard problems like Traveling Salesman Problem
and Nurse Scheduling Problem.
Spring design and Welded beam design problems.
Solve nurse scheduling problem.
An efficient computation for data fusion in wireless sensor
networks.
A new quantum-inspired cuckoo search was developed to
solve Knapsack problems.
Efficiently generate independent test paths for structural
software testing and test data generation.