To expand the information of nest individuals, the idea of complexvalued encoding is used in cuckoo search (PCS); the gene of individuals is denoted by plurality, so a diploid swarm is structured by a sequence plurality. The value of independent variables for objective function is determined by modules, and a sign of them is determined by angles. The position of nest is divided into two parts, namely, real part gene and imaginary gene. The updating relation of complexvalued swarm is presented. Six typical functions are tested. The results are compared with cuckoo search based on realvalued encoding; the usefulness of the proposed algorithm is verified.
Recently, a new metaheuristic search algorithm, called Cuckoo Search (CS) [
Complexvalued encoding method is already used to express neural network weights [
CS is a heuristic search algorithm which has been proposed recently by Yang and Deb [
Each Cuckoo lays one egg, which represents a set of solution coordinates, at a time, and dumps it in a random nest.
A fraction of the nests containing the best eggs, or solutions, will be carried over to the next generation.
The number of nests is fixed and there is a probability that a host can discover an alien egg. If this happens, the host can either discard the egg or the nest and this results in building a new nest in a new location.
Based on these three rules, the basic steps of the Cuckoo Search (CS) can be summarized as the pseudo code shown in Algorithm
Cuckoo search via Lévy flight algorithm:
Objective function
Generate initial population of
Get a cuckoo randomly by Lévy flight
Evaluate its quality/fitness
Choose a nest among
If (
replace
A fraction (
Keep the best solutions (or nests with quality solutions);
Rank the solutions and find the current best
Post process results and visualization
When generating new solution
The product
Obviously, the generation of step size s samples is not trivial using Lévy flights. A simple scheme discussed in detail by Yang can be summarized as
Containing the
Nest chromosome structure shown.


… 

Assume that the variable interval of function is
Test the improved algorithm’s benchmark functions.
Functions  Dim  Domain  Theoretical value 


10 

0 

15 

0 

20 

0 

30 

0 

2 



10 

0 
The method of module update is as follows:
The method of angle update is as follows:
In order to solve the fitness function, plural Bird's Nest must be changed into a real number; the real value of objective function is determined by modules, and sign of them is determined by amplitude angle, specific practices are as follows:
Based on above analysis, the basic steps of complexvalued encoding (PCS) can be summarized as the pseudo code shown in Algorithm
Complexvalued Cuckoo search via Lévy flight algorithm:
Objective function
Generate initial population of
Setting the Max Generation, and find the best modules, angles and fmin.
Keep the best module, angle for the SAN
Get a new module and angle randomly by Lévy flight according to (
Plurality nest be transformed into real nest according to (
Evaluate its quality/fitness
If (
Replace
A fraction (
Compare rand with
Evaluate its quality/fitness
Rank the solutions and find the current best nest, module and angle.
Post process results and visualization
In this section, the performance of the PCS algorithm is extensively investigated by a large number of benchmark optimization problems. All computational experiments are conducted with Matlab7.0 and run on CPU T3100, 1.90 GHZ with 2 GB memory capacity.
Algorithm parameters are set as follows: because the updates of bird's nest locations are divided into two steps in the complexvalued encoding, there are two update calculations; when the two types of encoding have the same sizes of population, the computational complexity of the complexvalued encoding is approximately two times the one of the real encoding. To compare with the performance of the two methods, the size of plurality population nest is half of the one of real population nest. The size of complexvalued encoding nest is 20, the size of real encoding nest is 40, and the maximum iteration times is 200,
In this section, we test on six different functions to verify that the algorithm proposed in this paper is feasible and effective. 20 independent runs are made for the PCS algorithms, and the results obtained by the PCS algorithms are presented in Table
The results of experiment in running 20 times.
Functions  Algorithm  Best  Worst  Mean  Variance 

Rosenbrock  CS  671.2474 









Sphere  CS  0.0648  0.1723  0.1141  0.0012 






Rastrigin  CS  112.8084  128.5006  120.8996  20.0181 






Ackley  CS  10.7296  13.7988  12.3351  0.5920 






Easom  CS 










Griewank  CS  0.4814  0.9043  0.7230  0.0111 





The evolution graph of the average fitness in 20 trails.
Function Rosenbrock evolution curve
Function Sphere evolution curve
Function Rastrigin evolution curve
Function Ackley evolution curve
Function Easom evolution curve
Function Griewank evolution curve
In industry process, people generally implement ZieglerNichlos rule in determining PID controller parameters; the control effect is generally difficult to meet the requirements of the control system. In this section, we implement PCS in determining PID controller parameters and compare the results with CS and PSO results. The parameters of controller are mapped bird’s nest, then optimizing them by the PCS method. In the previous work [
In the experiments, we implement PSO, CS, and PCS in determining PID controller parameters. The results obtained by the three algorithms are presented in Table
PID Controller tuning parameters.
Tuning method 




PSO  0.0100  2.0000  1.0518 
CS  0.6491  2.0000  2.0000 
PCS  0.8096  1.9738  1.9995 
The comparison of unit step response curve.
In Figure
This paper proposes Cuckoo search based on complexvalued encoding; the individual of Bird's Nest is denoted by plurality, so a diploid swarm is structured by a sequence plurality; the Bird's Nest can express the space dimension much more than the realcoded one. Compared with traditional realcoded, the Bird's Nest also has to contain more information, so that the algorithm improves the search capabilities of the global optimum. To verify the proposed PCS algorithm, also a number of benchmark optimization problems and PID controller parameter tuning are solved using this concept and quite satisfactory results are obtained. CS is the algorithm proposed in the last two years; the theoretical analysis and other applications require further study.
This work is supported by National Science Foundation of China under Grant no. 61165015, Key Project of Guangxi Science Foundation under Grant no. 2012GXNSFDA053028, and Key Project of Guangxi High School Science Foundation under Grant no. 20121ZD008 and funded by Open Research Fund Program of Key Lab of Intelligent Perception and Image Understanding of Ministry of Education of China under Grant no. IPIU01201100.