Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Successfully reported this slideshow.

Like this presentation? Why not share!

No Downloads

Total views

2,330

On SlideShare

0

From Embeds

0

Number of Embeds

4

Shares

0

Downloads

298

Comments

0

Likes

3

No embeds

No notes for slide

- 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. 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.
- 4. 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.
- 5. 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,
- 6. 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.
- 7. 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).
- 8. • 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.
- 9. 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
- 10. 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.
- 11. 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
- 12. 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
- 13. 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
- 14. 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.
- 15. 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.
- 16. Thank You

No public clipboards found for this slide

Be the first to comment