## 3 The Hybrid PSOCS Algorithm
### Cuckoo Search Algorithm  
Cuckoo Search is an optimization algorithm introduced by [PERSON] and [PERSON] [20,21]. This algorithm was inspired by the special lifestyle of the cuckoo species. The cuckoo bird lays its eggs in the nest of a host bird; however, in the process, they may remove the eggs of the host bird. Some of these eggs, which look similar to the host bird's eggs, have the opportunity to grow up and become adult cuckoos. In other cases, the eggs are discovered by host birds and the host birds will throw them away or leave their nests and find other places to build new ones. The aim of the CS is to maximize the survival rate of the eggs. Each egg in a nest stands for a solution, and a cuckoo egg stands for a new solution. The CS uses new and potentially better solutions to replace the not-so-good solutions in the nests. The CS is based on the following rules: each cuckoo lays one egg at a time, and dumps this egg in a randomly chosen nest; the best nests with high quality eggs (solutions) will carry over to the next generation; and the number of available host nests is fixed, and a host bird can detect an alien egg with a probability of \\(p_{a}\\in\\ [0,\\,1]\\). In this case, the host bird can either throw the egg away or abandon the nest to build a new one elsewhere. The last assumption can be estimated by the fraction \\(p_{a}\\) of the \\(n\\) nests being replaced by new nests (with new random solutions). For a maximization problem, the quality or fitness of a solution can be proportional to the objective function. Other forms of fitness can be defined in a similar way to the fitness function in genetic algorithms. Based on the above-mentioned rules, the steps of the CS can be described as the pseudo code in Figure 1. The algorithm can be extended when each nest has multiple eggs representing a set of solutions.  
When generating new solutions, \\(x^{(t+\\ t)}\\), for the \\(ith\\) cuckoo at iteration (\\(t+1\\)), the following Levy flight is performed:  
\\[x_{t}^{(t+\\ 1)}=x_{t}^{(t)}+\\alpha\\ S(x_{t}^{(t)}-x_{\\rm best}^{(t)})\\ r \\tag{3}\\]  
where \\(x_{\\rm best}^{(t)}\\) is the current best solution, \\(\\alpha\\) is the step size parameter, \\(r\\) is a random number from a standard normal distribution, and \\(S\\) is a random walk based on the Levy flight. The Levy flight basically gives a random walk with a step length drawn from a Levy distribution. There are several ways to apply Levy flights; however, the Mantegna algorithm is the most efficient. Therefore in this research, the Mantegna algorithm will be utilized. In the Mantegna algorithm, the step length \\(S\\) is calculated by  
\\[S=\\mu/|\
u|^{1/\\beta} \\tag{4}\\]  
where \\(\\beta\\) is a parameter between [1,2], and \\(\\mu\\) and \\(\
u\\) are from normal distribution as  
\\[{\\rm M}\\sim{\\rm N}(0,\\,{\\sigma_{\\mu}}^{2})\\ {\\rm and}\\ \
u\\sim{\\rm N}(0,\\,{ \\sigma_{\
u}}^{2}) \\tag{5}\\]  
\\[{\\rm with}\\ \\ {\\sigma_{\\mu}}=\\left(\\frac{\\Gamma(1+\\beta)\\sin(\\pi\\beta/2)}{\\Gamma [(1+\\beta)/\\,2]\\ \\beta\\ 2^{(\\beta-1)/2}}\\right)^{1/\\beta},\\ {\\sigma_{\
u}}=1 \\tag{6}\\]  
Studies have shown that standard CS is very efficient in dealing with optimization problems. However, several recent studies made some improvements to make the CS more practical for a wider range of  
Figure 1: Pseudo code of the Cuckoo Search (CS).  
applications without losing the advantages of the standard CS. [PERSON] and [PERSON] [38] have provided a review of the latest CS developments as well as its applications and future research.