Cuckoo Search Algorithm (CS)
Cuckoo search algorithm is based on the obligate brood parasitic behaviour of some cuckoo species in combination with the Lévy flight behaviour of some birds and fruit flies [18]. This algorithm uses three idealized rules: (i) Each cuckoo lays one egg at a time and dumps it in a randomly chosen nest; (ii) The best nests with high quality of eggs (fitness) will carry over to the next generations; (iii) The number of available host nests is fixed, and the egg laid by a cuckoo is discovered by the host bird with a probability pa[0, 1]. In this case, the host bird can either throw the egg away or abandon the nest, and build a completely new nest.
A new cuckoo (solution) by Lévy flights is generated as follows:
(42)
where α > 0 is the step size which should be related to the scales of the problem of interest. The Lévy flight essentially provides a random walk while the random step length is drawn from a Lévy distribution which has an infinite variance with an infinite mean. Here the steps essentially form a random walk process with a powerlaw step-length distribution with a heavy tail. Some of the new solutions should be generated by Lévy 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 [18].