Zhenwu Wang and Chengfeng Yin
(Department of Computer Science and Technology, China University of Mining and Technology, Beijing 100083, China)
Abstract: Considering the problem that a rooster in chicken swarm optimization (CSO) easily falls into a local optimum and cannot fully demonstrate the population wisdom, the paper proposed an improved CSO algorithm, which based on behavior feedback from hens to rooster and rooster behavior logic reversal, therefore it is named behavior feedback and logic reversal CSO (BFLRCSO). The proposed algorithm changes the original rooster behavior logic to boost the convergence rate, which can accelerate the rooster optimization process, and the algorithm also introduces a feedback mechanism from hens to rooster which can prevent swarm dropping into a local optimum. The experiment results demonstrated that the BFLRCSO algorithm is not easy to fall into a local optimum, which has a better optimization result and shorter optimization time compared with the original CSO algorithm in both high and low dimensional search space.
Key words: chicken swarm optimization (CSO) algorithm; population wisdom; behavior feedback; behavior logic reversal
With good application effects, bionic optimization algorithms have been widely used in searching global optimal solutions in the fields of computation, engineering and management, which utilize the multiple member population behavior in nature, and solve the multi-dimensional global optimization problem based on the swarm intelligence of its population. Different algorithms have been proposed, such as genetic algorithm (GA)[1], particle swarm optimization (PSO) algorithm[2], artificial bee colony (ABC) algorithm[3], artificial fish swarm (AFS) algorithm[4], bat algorithm (BA)[5], and so on.
Chicken swarm optimization (CSO) algorithm[6]was proposed in 2014, which imitated the social relation structure in the chicken population, the corresponding organization form and activity mode of searching food behavior. CSO divides the population members into roosters, hens and chicks, and each of whom has different behavioral norms. The chicken swarm is organized as several groups which have a competitive relationship, and each group has a rooster, many hens and a small number of chicks which have independent social stratum and labor division. Meng[6]compared CSO with PSO, BA and the difference algorithm in low dimensional space, and the experimental results have shown that CSO has higher optimization accuracy and faster optimal speed in contrast to the other three methods, but CSO is easy to fall into a local optimal solution and has the premature convergence problem in high dimensional space. In details, although roosters have the minimal number, they play guiding roles in the whole population, and the hens have the maximum quantity, but they do not provide feedbacks to roosters, which makes the algorithm rapidly fall into local optimal solution when roosters sink into a local minima. This work improved the rooster’s behavior pattern and introduced the feedback mechanism from hens to roosters in each group which explores the population intelligence sufficiently.
The rest of this paper is organized as follows. Section 1 gives the related work about the CSO algorithm, the details of the proposed CSO based on behavior feedback and logic reversal (BFLRCSO) algorithm have been discussed in Section 2 and Section 3 analyzes the experimental results carefully, at last this work is concluded in Section 4.
Although CSO has been put forward in recent years, the theoretical research work[6-10]shown that it has obvious advantages compared with GA and PSO algorithms, and it has been applied in different domains[11-19].CSO has some basic premise hypothesis:
①There are some groups in the whole chicken population, and each group has one rooster, some hens and chicks.
②The identities of roosters, hens and chicks are determined by their fitness values, in which the least suitable part is the roosters, the worst part is the chicks and the other is the hens; Each hen randomly chooses one rooster as her spouse, and each chick also selects one hen as her mother.
③The individual identity, spouse relationship and mother-child relationship remain unchanged within several generations, and after that (suppose the update cycle isG)they will be updated.
④In each group, hens follow their spouse rooster to look for food, and randomly compete with other individuals for food, the individuals with better fitness values are more likely to get food when they compete with each other.
(1)
(2)
where Randn(0,σ2) represents the random number which follows a Gaussian distribution where the expectation is 0 and the variance isσ2.εis the minimum constant,kis the label of another randomly selected rooster,fiandfkis the fitness value of theithand thekthroosters, respectively. The hen’s position can be updated by the following formulas.
(3)
(4)
C2=exp (fr2-fi)
(5)
where Rand is the random number which follows a uniform distribution that falls in [0,1],r1is the tag of theithhen’s spouse rooster,r2is the tag of another randomly selected rooster or hen,r1≠r2.The chicks have been updated by
These days having a best friend seems so important to girls. You want to be special. However I have learned1 the hard way that having one best friend is not the way to go. It s so much better to have many great friends.
(6)
CSO has also been applied in different fields. Liang[11]used a hybrid cuckoo search-chicken swarm algorithm to optimize sidelobe-level suppression for linear and circular antenna arrays; Feng[12]applied CSO to solve the deadlock-free migration for virtual machine consolidation; Chen[13]used CSO to estimate parameter of nonlinear systems, Hafez[14]integrated CSO to an estimation function to realize the feature selection, Banerjee[15]applied CSO to optimize serially concatenated convolution turbo code which can improve the bit error rate of communication system, Chen[16]used CSO to adjust the space searching direction of wireless sensor network(WSN) adaptively in order to optimize the convergence of WSN location algorithm; Khaled[17]adopted CSO to detect community in social network, Li[18]used CSO to optimize the ascent trajectory of hypersonic vehicles, and Nursyiva[19]applied CSO to compete data clustering.
Although different scholars[6-19]studied CSO in theory and applications, it is still easy to fall into local optimums in high dimensional space. For this problem, this work improves the rooster’s behavior logic to accelerate its convergence speed, and also introduces the feedback from hens to roosters to prevent falling into a local optimal solution, the principle of proposed BFLRCSO is discussed in Section 2.
Fig.1 Flowchart of CSO algorithm
As described in Fig.1, CSO algorithm firstly initializes parameters, such asN,M,G,Nr,Nh,NcandNm, allocates position for each individual randomly, and then the fitness values of individuals are computed, the global and local optimal positions are set, and the iterative number is 1; If the current iterative numbertreachesG, CSO sorts all the individuals by the fitness values from high to low, theNrindividuals are chosen as roosters, which have the best fitness values, the worstNcindividuals are the chicks, others are hens, the population is divided into different groups, each group has one rooster, hens choose roosters as their spouses randomly and chicks randomly select hens as their mothers and join the corresponding groups; The positions of roosters, hens and chicks are updated by Eqs.(1)(3)(6),and the corresponding fitness values are computed; The individual local optimal positions and the global best position are updated, and CSO goes to the next iteration, if satisfies end conditions algorithm finished, and the termination conditions aret≤Mor the global optimal position satisfies the threshold value.
Ref.[8] pointed out that hens, which have the maximum quantity play an important role in the optimization, but hens’ influence on roosters cannot be reflected in the original CSO algorithm. At the same time, according to the update rules of roosters, if their fitness values are higher, the searching scopes are larger. However, according to CSO optimization rules, a better fitness value indicates that the corresponding individual is closer to food, and searching food in a small scope can have a high probability, so the searching scope should be smaller as the fitness becomes better. In addition, in order to prevent roosters falling into a local optimum, the BFLRCSO algorithm introduces a feedback mechanism from hens to roosters, and the update formula of roosters is modified as follows
(7)
(8)
S=exp (fave-fi)
(9)
Herefaverepresents the average fitness value of all the hens which belong to the roosterigroup, Eq.(7) shows thatσ2is smaller when rooster has a smaller fitness value, which indicates that the rooster with a better fitness value is closer to food(the global optimum), and it can accurately confirm the searching scope in the next iteration. At the same time,S≥1 indicates that when rooster updates the position, the grouped hens can delay the efficiency of searching food. In other words, they can enlarge the rooster’s searching scope. But if the grouped hens have better fitness values,favewould be smaller, andSis closer to 1, which indicates that the grouped hens play less influence on the rooster.
In order to test the optimization effects, 7 popular test functions are chosen to compare the BFLRCSO algorithm with the standard CSO algorithm, which are described in Tab.1.
Tab.1 7 standard test functions
In order to ensure the validity of the results, each algorithm will perform 100 times independently, the particle number of each algorithm is 100, and the iterative number is 1 000. The platform’s hardware and software specifics are listed as follows. CPU is Intel(R) Core(TM) i5-4210H 2.90 GHz, the memory is RAM 4.00 GB, the operating system is Windows 10 64 bit, the software development platform is VS.NET 2013,and the programming language is C#. All test functions will be tested in the search space with the dimension is 5 and 50 respectively, and the initial parameters of each algorithm is described in Tab.2.
Tab.2 Parameters of compared algorithms
Tab.3 Experimental data under D=5
Tab.4 Experimental data under D=50
According to Tab.3, it can be observed that the optimal, the worst, the average and the standard deviation values of BFLRCSO algorithm are all better than (or equal to) those standard CSO algorithms for F1,F2,F3,F5,F6 and F7.All the above values of BFLRCSO obtained the best results(zero) on F1,F3,F6 and F7,and its results on F2 and F5 are obviously better than those of standard CSOs. For F4, the optimal values of the two algorithms have little difference, and the average, the worst and the standard deviation values of BFLRCSO are better than those of standard CSO algorithms.
As described in Tab.4, in high dimension space, all the experimental results of BFLRCSO algorithm are better than those of CSO on F1,F2,F3,F4,F6 and F7. BFLRCSO got the optimal values (zero) on F1,F3,F6 and F7. The experimental results of BFLRCSO are obviously better than those of CSO on F2,F3,F4 and F6;On F5,the optimal value of CSO is better than those of BFLRCSO,but the difference is very little, and the worst, the average values of BFLRCSO are better than those of CSO.
Therefore from the above discussion, the BFLRCSO algorithm has obvious advantages (better accuracy) than CSO in most cases not only in low dimension space but also in high dimension space. In order to make a more accurate description of the algorithm efficiency, this paper analyzes the change of the global optimal fitness in each iteration. The change curves of global fitness values under 7 test functions are shown in Figs.2-8 forD=5. Theyaxis values in these figures are the mean values of the global fitness under the corresponding iterations in 100 independent experiments. Since the BFLRCSO algorithm has reached the global optimum after a small amount of iterations, the fitness change curves are shown for the first 50 iterations.
Through Tab.3 and Figs.2-8, it can be seen that BFLRCSO can reach the global optimum in a few iterations on F1-F7 compared with the CSO algorithm, which indicates that BFLRCSO has higher searching efficiency and accuracy. That is to say, BFLRCSO can find the global optimum more quickly within the same number of iterations compared with the CSO algorithm. The change curves of global fitness values under 7 test functions are shown in Figs. 9-15 forD=50. Theyaxis values in these figures are the mean values of the global fitness under the corresponding iterations in 100 independent experiments. Since the BFLRCSO algorithm has reached the global optimum after a small amount of iterations, the fitness change curves are also displayed for the first 50 iterations.
Fig.2 F1 global optimum adaptation curves under D=5
Fig.3 F2 global optimum adaptation curves under D=5
Fig.5 F4 global optimum adaptation curves under D=5
Fig.6 F5 global optimum adaptation curves under D=5
Fig.7 F6 global optimum adaptation curves under D=5
Fig.8 F7 global optimum adaptation curves under D=5
From Tab.4 and Figs.9-15 it is obvious that BFLRCSO converges very fast on the global optimal values in most cases (F1, F2, F3, F4, F6 and F7) in high dimension space, and its optimized accuracy and efficiency have been improved obviously, under the certain optimization accuracy constraints. BFLRCSO has a less iterative number. So the results in Figs.2-15 indicate that BFLRCSO has obvious advantages on conver-gence speed and optimized accuracy compared with CSO both on low and high dimension space.
Fig.9 F1 global optimum adaptation curves under D=50
Fig.10 F2 global optimum adaptation curves under D=50
Fig.11 F3 global optimum adaptation curves under D=50
Fig.12 F4 global optimum adaptation curves under D=50
In the CSO algorithm, there is a competitive relationship between roosters. If the rooster’s fitness is better, the search scope is larger, but this is not consistent with the actual situation. In practice, the fitness value is represented by the distance between the individual and the food. If the fitness value is smaller, it should be closer to the food (global optimum). At the same time, the hens in each group had no feedback on the rooster in the CSO algorithm, that is, the location information of other members in the group was not effectively utilized for the rooster.
Fig.13 F5 global optimum adaptation curves under D=50
Fig.14 F6 global optimum adaptation curves under D=50
Fig.15 F7 global optimum adaptation curves under D=50
To deal with the first problem, this paper assumes that if the individual is more outstanding, the search range is smaller. So the individual fitness is more likely to be close to the global optimum. For the latter problem, this paper introduces a feedback mechanism from grouped hens to rooster to enhance the utilization rate of the information within the group. Namely, it is assumed that the grouped hens will slow the convergence speed of rooster, if the hens are more excellent, they would play a less influence on the rooster. In BFLRCSO, the above improvement make roosters avoid falling into local optimums. With the more effective utilization of the swarm information, the convergence rate of rooster fitness is faster. Because roosters are the important part in the chicken population and they are in charge of guiding the direction and speed of the whole swarm optimization, the BFLRCSO enhances the overall optimized speed and avoids falling into local optimal solutions.
CSO is a novel swarm intelligence optimization algorithm which imitates the structure of social relations in chicken population. Compared with PSO and GA, CSO has obvious advantages in high dimensional problem. In order to give full play to swarm intelligence, this work adds a feedback mechanism from hens to roosters to the CSO algorithm, and optimizes the rooster’s update method. The experimental results shown that the proposed BFLRCSO algorithm has higher searching accuracy and faster optimization speed compared with CSO both in low and high dimension spaces. In the future, the CSO applications in different fields should be studied deeply, especially for high dimensional problems. The proposed algorithm also can be further improved in some aspects, such as the establishment of chicken social relations, the random death of individuals in the population, and so on.
Journal of Beijing Institute of Technology2018年3期