- About this Journal ·
- Abstracting and Indexing ·
- Advance Access ·
- Aims and Scope ·
- Annual Issues ·
- Article Processing Charges ·
- Articles in Press ·
- Author Guidelines ·
- Bibliographic Information ·
- Citations to this Journal ·
- Contact Information ·
- Editorial Board ·
- Editorial Workflow ·
- Free eTOC Alerts ·
- Publication Ethics ·
- Reviewers Acknowledgment ·
- Submit a Manuscript ·
- Subscription Information ·
- Table of Contents
Journal of Applied Mathematics
Volume 2013 (2013), Article ID 912056, 9 pages
A Cooperative Coevolutionary Cuckoo Search Algorithm for Optimization Problem
1Guangxi Key Laboratory of Hybrid Computation and Integrated Circuit Design Analysis, Nanning, Guangxi 530006, China
2College of Information Science and Engineering, Guangxi University for Nationalities, Nanning, Guangxi 530006, China
Received 24 May 2013; Accepted 8 July 2013
Academic Editor: Xin-She Yang
Copyright © 2013 Hongqing Zheng and Yongquan Zhou. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Taking inspiration from an organizational evolutionary algorithm for numerical optimization, this paper designs a kind of dynamic population and combining evolutionary operators to form a novel algorithm, a cooperative coevolutionary cuckoo search algorithm (CCCS), for solving both unconstrained, constrained optimization and engineering problems. A population of this algorithm consists of organizations, and an organization consists of dynamic individuals. In experiments, fifteen unconstrained functions, eleven constrained functions, and two engineering design problems are used to validate the performance of CCCS, and thorough comparisons are made between the CCCS and the existing approaches. The results show that the CCCS obtains good performance in the solution quality. Moreover, for the constrained problems, the good performance is obtained by only incorporating a simple constraint handling technique into the CCCS. The results show that the CCCS is quite robust and easy to use.
High dimension numerical optimization problems tend to be complex, and general basic intelligent algorithms are difficult to obtain the global optimal solution. In order to solve this problem, many improved methods are put forward, such as evolutionary programming made faster , orthogonal genetic algorithm , and good point set based genetic algorithm , and these methods have achieved good effect.
Recently, a novel heuristic search algorithm, called Cuckoo Search (CS) in , has been proposed by Yang and Deb in 2009. The CS is a search algorithm based on the interesting breeding behavior such as brood parasitism of certain species of cuckoos. Each nest within the swarm is represented by a vector in multidimensional search space; the CS algorithm also determines how to update the position of cuckoo laid egg. Each cuckoo updates it position of lay egg based on current step size via Lévy flights. It has been shown that this simple model has been applied successfully to continuous nonlinear function, engineering optimization problem in , and so forth. Intelligent algorithm is based on the selection of the fittest in biological systems which have evolved by natural selection over millions of years, between organisms in nature not only competition but also cooperation. Potter et al. earlier proposed a cooperative coevolutionary genetic algorithm to function optimization (CCGA) , and Bergh et al. apply this idea to the standard particle group Algorithm to construct a new collaborative model (CPSO-SK) . Liu et al. proposed an organizational evolutionary algorithm for numerical optimization , Mu et al. put forward M-elite coevolutionary algorithm for numerical optimization , and Fister et al. proposed memetic artificial bee colony algorithm for large-scale global optimization . They have obtained the good effect in the numerical optimization problem. Based on this idea and combining evolutionary operators, this paper proposes a new algorithm of solving high-dimensional unconstrained, constrained, and engineering optimization problem, namely, a cooperative coevolutionary cuckoo search algorithm (CCCS) algorithm. Population of the algorithm is divided into M groups, each group has a leader, by annexation and collaborative operation between different organizations, and uses the cuboids crossover operator, discrete crossover operator, flip crossover operator, and mutation operator to achieve the exchange of information between individuals, to promote the evolution of the population. Simulation experiments show that CCCS optimization ability is very strong, can well solve the unconstrained optimization, constrained optimization, and engineering optimization problems and so on.
The remainder of this paper is organized as follows: Section 2 briefly introduces the original cuckoo search algorithm. This is followed in Section 3 by new cooperative coevolutionary implements of the CS algorithm. Section 4 describes the definition of a constrained optimization and a unconstrained optimization problem in the penalty function approach. The results can be found and discussed in Section 5. Finally, some directions for future research are discussed in Section 6.
2. Original CS
CS is a heuristic search algorithm which has been proposed recently by Yang and Deb. The algorithm is inspired by the reproduction strategy of cuckoos. At the most basic level, cuckoos lay their eggs in the nests of other host birds, which may be of different species. The host bird may discover that the eggs are not it’s own and either destroy the egg or abandon the nest all together. This has resulted in the evolution of cuckoo eggs which mimic the eggs of local host birds. To apply this as an optimization tool, Yang and Deb  used three ideal rules.(1)Each cuckoo lays one egg, which represents a set of solution coordinates, at a time, and dumps it in a random nest.(2)A fraction of the nests containing the best eggs, or solutions, will carry over to the next generation.(3)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.
This algorithm uses a balanced combination of a local random walk and the global explorative random walk, controlled by a switching parameter . The local random walk can be written as where and are two different solutions selected randomly by random permutation, is a Heaviside function, is a random number drawn from a uniform distribution, and is the step size. On the other hand, the global random walk is carried out by using Lévy flights where Here is the step-size-scaling factor, which should be related to the scales of the problem of interests. In most cases, we can use , and can be more effective and can avoid flying too far.
3. A Cooperative Coevolutionary Cuckoo Search Algorithm
In section, taking inspiration from an organizational evolutionary algorithm, we present a cooperative coevolutionary cuckoo search algorithm (CCCS) which integers annexing operator and cooperating operator, in the core the cuckoo search algorithm. This proposed model will focus on enhancing diversity and the performance of the cuckoo search algorithm.
3.1. Splitting Operator
When a size is too large usually it is split into several small organizations; let be the parameter controlling the maximum size of organization.
3.2. Annexing Operator
Two organizations, and , are randomly selected from the current generation. Choose their leaders using CS algorithm. If the is the winner; thus will annex to generate a new organization, , where , . Let be a predefined parameter. Then, if , , are generated by (4). Otherwise they are generated by (5). is the leader of an organization and are new member After , are generated, , are determined in (6):
3.3. Cooperating Operator
Two organizations, and , are randomly selected from the current generation. Let be a predefined parameter; if , the child organization is generated in (7). , are the leader of organization respectively. Otherwise use (8); is random integer and uses flip operator; (8)
3.4. The Pseudo Code of the Proposed Algorithm is Shown in Algorithm 1
In the initialization, each organization has only one member, and the population has total organizations. During the evolutionary process, the number of the organizations changes; this is just to maintain the diversity of the population. The main difference between the CCCS and the OEA is that populations changes during the optimization process, in OEA, the number of populations in the optimization process is the same. In contrast, the number of the population in CCCS is changing. In addition, cooperating operators of CCCS and OEA are also different.
4. Problem Definition
A unconstrained optimization problems (UCOPs) are formulated as solving the objective function where defines the search space which is an -dimensional space bounded by the parametric constraints , . Thus, , where and .
A constrained optimization problems (COPs) can be formulated as solving objective function where is the same with that of (9), and the feasible region is where , are constraints.
4.1. Constraint Handling
In the penalty function approach, nonlinear constraints can be collapsed with the cost function into a response functional. By doing this, the constrained optimization problem is transformed into an unconstrained optimization problem simpler to solve . For example, if there are some nonlinear equality constraints and some inequality constraints , the response functional PI can be defined as follows: where and . The coefficients of penalty terms should be large enough; their values may depend on the specific optimization problem. The contribution of any equality constraints function to the response functional is null but increases significantly as soon as the constraint is violated. The same applies to inequality constraints when they become critical.
5. Implementation in Optimization Problems
All computational experiments are conducted with Matlab R2010a and run on Celeron(R) Dual-core CPU T3100, 1.90 GHZ with 2 GB memory capacity under windows7.
5.1. Experimental Studies on Unconstrained Optimization Problems
In this section, 15 benchmark functions (–) are used to test the performance of CCCS in solving UCOPS. – are in  and , are , in . The problem dimension is set to 30 for – and 100 for and . In this manner, these functions have so many local minima that they are challenging enough for performance evaluation. The parameters of CCCS are set as follows: the number of organization is 10, others refer to , and the number of iterations is 2500.
5.1.1. Experimental Results of CCCS
Table 1 summarizes the experimental results of CCCS, which include the best, the mean, the standard deviation, and the worst function values found. As can be seen, besides , , other function values reached the theoretical value or are very close to the theoretical value. What should be noted is that the global optimum for is 0 every time, but both MECA (M-elite co-evolutionary algorithm for numerical optimization) and OEA (An organizational evolutionary algorithm for numerical optimization) cannot find the global optimal solution. Convergence curve of and as shown in Figures 1 and 2 respectively, other convergence curve figure has been omitted.
5.1.2. Comparison between CCCS, MECA, and OEA
Table 2 shows statistical results of the CCCS optimization. As can be seen, as for functions , , , , , , and , the mean function values of CCCS is better than MECA; as for functions and , both CCCS and MECA can find the global optimal solution. It is a pity that the results of these functions (, , , , and ) is worse than MECA.
5.1.3. Comparison between MECA, CCGA, CPSO, and CCCS
Table 3 summarizes the experimental results of comparison between MECA, CCGA, CPSO, and CCCS. Data of CCGA and CPSO algorithm results from the literature , MECA, CCGA, and CPSO requite 200000 function evaluations. But CCCS requires 2500 function evaluations to complete the optimization process. As a whole, the results of CCCS are better than those of MECA, OEA.
5.2. Experimental Studies on Constrained Optimization Problems
In this section, 11 benchmark functions (–) and 2 engineering design problems (welded beam design, pressure vessel design) are used to validate the performance of CCCS in solving constrained optimization problems. These functions are described in . The equality constraints have been converted into inequality constraints, , using the degree of violation , the same with that of  (see Figures 3 and 5).
The parameters of CCCS are set as follows: the number of iterations is 2500. However, the others of OEA are 24000. The experimental results of OEA are obtained over 50 independent trials. The running environment is the same as the previously. Table 4 shows the comparison results between OEA, SMES, and CCCS. As can be seen, besides , other function values reached the theoretical value or are very close to the theoretical value. On the whole, the result of CCCS is better than those of SMES and CCCS.
5.3. Implementation in Structural Optimization Problems
Case I (welded beam design). The objective function and parameters of Case I are refers to in . With 25 nests, CCCS found the global optimum requiring 1000 iterations per optimization run. Table 5 compares the optimization results found by CCCS with similar data reported in the literature. CCCS obtained the best design overall of 2.1730. Mahdavi et al.  and Fesanghary et al.  found a better desgin. “But for the continuous optimization problem equal to 1.7248’’ is deleted. In addition, CCCS requires only 25,000 function evaluations to complete the optimization process, hence much less than the literature. Convergence curve of Case I as shown in Figure 4.
Case II (pressure vessel design). The objective function and parameters of the Case II are refers to in . With 25 nests, CCCS found the global optimum requiring 1000 iterations per optimization run. Table 6 compares the optimization results found by CCCS with similar data reported in the literature. CCCS obtained the best design overall of 5885.3. In addition, CCCS requires only 25,000 function evaluations to complete the optimization process, hence much less than the literature. Here, represents no records in the literature. Convergence curve of Case II is shown in Figure 6.
Taking inspiration from the OEA, a new numerical optimization algorithm, CCCS, has been proposed in this paper. The experimental results in Tables 1–6 indicate that CCCS outperforms the MECA and OEA. On the whole, CCCS obtains a good performance for the unconstrained functions, constrained functions, and 2 engineering design problems. These benefits mainly from the following three aspects. One is the dynamics population, and the other is three evolutionary operators. The third aspect is a combination of CS algorithm. 28 experiments illustrate that CCCS has an effective searching mechanism. However, the number of dynamic populations, is difficult to control, which spends lots of computational cost. How to control the number of dynamic population is the future research work.
This work is supported by the National Science Foundation of China under Grant no. 61165015, Key Project of Guangxi Science Foundation under Grant no. 2012GXNSFDA053028, Key Project of Guangxi High School Science Foundation under Grant no. 20121ZD008, Open Research Fund Program of Key Lab of Intelligent Perception and Image Understanding of Ministry of Education of China under Grant no. IPIU01201100 and the Innovation Project of Guangxi Graduate Education under Grant no. YCSZ2012063.
- X. Yao, Y. Liu, and G. M. Lin, “Evolutionary programming made faster,” IEEE Transactions on Evolutionary Computation, vol. 3, no. 2, pp. 82–102, 1999.
- Y. W. Leung and Y. P. Wang, “An orthogonal genetic algorithm with quantization for global numerical optimization,” IEEE Transactions on Evolutionary Computation, vol. 5, no. 1, pp. 41–53, 2001.
- L. Zhang and B. Zhang, “Good point set based genetic algorithm,” Chinese Journal of Computers, vol. 24, no. 9, pp. 917–922, 2001.
- X. S. Yang and S. Deb, “Cuckoo search via Lévy flights,” in Proceeding of the World Congress on Nature and Biologically Inspired Computing (NABIC '09), pp. 210–214, Coimbatore, India, December 2009.
- X. S. Yang and S. Deb, “Engineering optimisation by cuckoo search,” International Journal of Mathematical Modelling and Numerical Optimisation, vol. 1, no. 4, pp. 330–343, 2010.
- M. A. Potter and K. A. De Jong, “A cooperative coevolutionary approach to function optimization,” in Parallel Problem Solving from Nature—PPSN III, Y. Davidor, H. P. Schwefel, and R. Mnner, Eds., vol. 866 of Lecture Notes in Computer Science, pp. 249–257, Springer, Berlin, Germany, 1994.
- F. van den Bergh and A. P. Engelbrecht, “A cooperative approach to participle swam optimization,” IEEE Transactions on Evolutionary Computation, vol. 8, no. 3, pp. 225–239, 2004.
- J. Liu, W. C. Zhong, and L. C. Jiao, “An organizational evolutionary algorithm for numerical optimization,” IEEE Transactions on Systems, Man, and Cybernetics B, vol. 37, no. 4, pp. 1052–1064, 2007.
- C. Mu, L. Jiao, and Y. Liu, “M-elite coevolutionary algorithm for numerical optimization,” Ruan Jian Xue Bao/Journal of Software, vol. 20, no. 11, pp. 2925–2938, 2009.
- I. Fister, I. Fister Jr., J. Brest, and V. Žumer, “Memetic artificial bee colony algorithm for large-scale global optimization,” in Proceedings of the IEEE Congress on Evolutionary Computation, pp. 1–8, Brisbane, Australia, 2012.
- C. A. C. Coello, “Use of a self-adaptive penalty approach for engineering optimization problems,” Computers in Industry, vol. 41, no. 2, pp. 113–127, 2000.
- J. P. B. Leite and B. H. V. Topping, “Improved genetic operators for structural engineering optimization,” Advances in Engineering Software, vol. 29, no. 7–9, pp. 529–562, 1998.
- K. Deb, “Optimal design of a welded beam via genetic algorithms,” AIAA Journal, vol. 29, no. 11, pp. 2013–2015, 1991.
- A. C. C. Lemonge and H. J. C. Barbosa, “An adaptive penalty scheme for genetic algorithms in structural optimization,” International Journal for Numerical Methods in Engineering, vol. 59, no. 5, pp. 703–736, 2004.
- H. S. Bernardino, H. J. C. Barbosa, and A. C. C. Lemonge, “A hybrid genetic algorithm for constrained optimization problems in mechanical engineering,” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC 2007), pp. 646–653, Singapore, September 2007.
- M. M. Atiqullah and S. S. Rao, “Simulated annealing and parallel processing: an implementation for constrained global design optimization,” Engineering Optimization, vol. 32, no. 5, pp. 659–685, 2000.
- A. R. Hedar and M. Fukushima, “Derivative-free filter simulated annealing method for constrained continuous global optimization,” Journal of Global Optimization, vol. 35, no. 4, pp. 521–649, 2006.
- J. L. Liu, “Novel orthogonal simulated annealing with fractional factorial analysis to solve global optimization problems,” Engineering Optimization, vol. 37, no. 5, pp. 499–519, 2005.
- S. F. Hwang and R. S. He, “A hybrid real-parameter genetic algorithm for function optimization,” Advanced Engineering Informatics, vol. 20, no. 1, pp. 7–21, 2006.
- K. E. Parsopoulos and M. N. Vrahatis, “Unified particle swarm optimization for solving constrained engineering optimization problems,” in Advances in Natural Computation, vol. 3612 of Lecture Notes in Computer Science, pp. 582–591, 2005.
- S. He, E. Prempain, and Q. H. Wu, “An improved particle swarm optimizer for mechanical design optimization problems,” Engineering Optimization, vol. 36, no. 5, pp. 585–605, 2004.
- J. Zhang, C. Liang, Y. Huang, J. Wu, and S. Yang, “An effective multiagent evolutionary algorithm integrating a novel roulette inversion operator for engineering optimization,” Applied Mathematics and Computation, vol. 211, no. 2, pp. 392–416, 2009.
- C. A. C. Coello, “Constraint-handling using an evolutionary multiobjective optimization technique,” Civil Engineering and Environmental Systems, vol. 17, no. 4, pp. 319–346, 2000.
- K. S. Lee and Z. W. Geem, “A new meta-heuristic algorithm for continuous engineering optimization: harmony search theory and practice,” Computer Methods in Applied Mechanics and Engineering, vol. 194, no. 36–38, pp. 3902–3933, 2005.
- M. Mahdavi, M. Fesanghary, and E. Damangir, “An improved harmony search algorithm for solving optimization problems,” Applied Mathematics and Computation, vol. 188, no. 2, pp. 1567–1579, 2007.
- M. Fesanghary, M. Mahdavi, M. Minary-Jolandan, and Y. Alizadeh, “Hybridizing harmony search algorithm with sequential quadratic programming for engineering optimization problems,” Computer Methods in Applied Mechanics and Engineering, vol. 197, no. 33–40, pp. 3080–3091, 2008.
- J. N. Siddall, Analytical Decision-Making in Engineering Design, Prentice-Hall, Englewood Cliffs, NJ, USA, 1972.
- S. Akhtar, K. Tai, and T. Ray, “A socio-behavioral simulation model for engineering design optimization,” Engineering Optimization, vol. 34, no. 4, pp. 341–354, 2002.
- T. Ray and K. M. Liew, “Society and civilization: an optimization algorithm based on the simulation of social behavior,” IEEE Transactions on Evolutionary Computation, vol. 7, no. 4, pp. 386–396, 2003.
- E. M. Montes and B. H. Oca, “Modified bacterial foraging optimization for engineering design,” in Proceedings of the Intelligent Engineering Systems through Artificial Neural Networks (ANNIE '2009), C. H. Dagli, K. M. Bryden, and S. M. Corns, Eds., vol. 19 of ASME Press Series, pp. 357–364.
- M. Zhang, W. Luo, and X. Wang, “Differential evolution with dynamic stochastic selection for constrained optimization,” Information Sciences, vol. 178, no. 15, pp. 3043–3074, 2008.
- A. H. Gandomi, X. S. Yang, and A. H. Alavi, “Mixed variable structural optimization using Firefly algorithm,” Computers and Structures, vol. 89, no. 23-24, pp. 2325–2336, 2011.
- Y. Yu, X. Yu, and Y. Li, “Solving engineering optimization problem by Augmented Lagrange particle swarm optimization,” Journal of Mechanical Engineering, vol. 45, no. 12, pp. 167–172, 2009.
- G. G. Dimopoulos, “Mixed-variable engineering optimization based on evolutionary and social metaphors,” Computer Methods in Applied Mechanics and Engineering, vol. 196, no. 4–6, pp. 803–817, 2007.
- X. S. Yang, Engineering Optimization: An Introduction with Metaheuristic Applications, John Wiley & Sons, New York, NY, USA, 2010.
- Y. W. Leung and Y. P. Wang, “An orthogonal genetic algorithm with quantization for global numerical optimization,” IEEE Transactions on Evolutionary Computation, vol. 5, no. 1, pp. 41–53, 2001.
- T. P. Runarsson and X. Yao, “Stochastic ranking for constrained evolutionary optimization,” IEEE Transactions on Evolutionary Computation, vol. 4, no. 3, pp. 284–294, 2000.