Cloud Model Glowworm Swarm Optimization Algorithm for Functions Optimization Qiang Zhou1, Yongquan Zhou2, and Xin Chen1 1
College of Information Science and Engineering, Guangxi University for Nationalities, Nanning, Guangxi, 530006, China 2 Guangxi Key Laboratory of Hybrid Computation and IC Design Analysis, Nanning, Guangxi, 530006, China
[email protected]
Abstract. For basic artificial glowworm swarm optimization algorithm has a slow convergence and easy to fall into local optimum, and the cloud model has excellent characteristics with uncertainty knowledge representation, an artificial glowworm swarm optimization algorithm based on cloud model is presented by utilizing these characteristics. The algorithm selects an optimal value of each generation as the center point of the cloud model, compares with cloud droplets and then achieves the better search value of groups which can avoid falling into the local optimum and can speed up the convergence rate of the algorithm. Finally, we use the standard function to test the algorithm. And the test results show that the convergence and the solution accuracy of our proposed algorithm have been greatly improved compared with the basic artificial glowworm swarm optimization algorithm. Keywords: cloud model, glowworm swarm optimization algorithm, standard function, optimal value.
1
Introduction
In order to simulate the foraging or courtship behavior of glowworm swarm in nature, a novel bionic swarm intelligence optimization algorithm named Glowworm Swarm Optimization (GSO) [1] [2] had been designed. It was presented by the two Indian scholars Krishnanad K. N and D. Ghose. In recent years, GSO has been paid more and more attention and gradually becomes a new research focus in the field of computational intelligence. And it also has been successfully applied in the sensor noise test [3], the harmful gas leak positioning and simulation robot [4], etc. Though GSO algorithm is more versatile and has a faster convergence rate, it is prone to reach a precocious state and lacks of precision. In order to make up for the defects of the basic GSO algorithm, a glowworm swarm optimization algorithm based on cloud model(CGSO) is presented by adopting the global and local search strategies of the GSO according to the tendentious stability and randomness characteristics of the cloud model. Compared to the basic GSO algorithm and the improved MMGSO [10], the overall optimization performance of the CGSO algorithm achieves a larger improvement and enhancement. D.-S. Huang et al. (Eds.): ICIC 2013, LNAI 7996, pp. 189–197, 2013. © Springer-Verlag Berlin Heidelberg 2013
190
2
Q. Zhou, Y. Zhou, and X. Chen
Glowworm Swarm Optimization Algorithm
In the basic GSO, each artificial glowworm is randomly distributed in the defined domain of objective function. They all carry the same luciferin, and have their localdecision range. Glowworms move and look for their neighbors, and then gather together. Finally, most of the glowworms will gather together in the position of the larger objective function value. 2.1
Deployment Stage
The aim in this phase is to let the glowworms evenly distribute within the defined domain of the objective function. At the same time, each glowworm carries the same initial brightness and sensing radius. 2.2
The Fluorescein Updating Stage
A glowworms' brightness represents whether the location is good or not. The more light brightness is, the better location is represented. And there are more possible to attract other glowworms to move towards this direction. From the beginning of the next iteration, all glowworms' brightness will update. The formula for updating the glowworms' fluorescein value is described as follows:
li (t ) = (1 − ρ )li (t − 1) + γJ ( xi (t ))
(1)
Among the formula, l i (t ) is the i th glowworm's fluorescein value of the t th generation, ρ ∈ (0,1) is a parameter to control the fluorescein value, γ is a parameter, and J ( x i (t )) is the value of fitness function. 2.3
Movement Stage
The glowworms will choose one direction of its neighbors at the movement stage. Each glowworm must consider two factors. The first one is the glowworms in its own radius area, and the second is the glowworms which are brighter than itself within its radius range. We can use formula (2) to determine the number of glowworms within the decision range.
N i (t ) = { j : x j (t ) − xi (t ) < rdi ; li (t ) < l j (t )}
(2)
where rdi is the decision radius of the i-th glowworm, x j (t ) is the j-th glowworm's position of the t-th generation and l i (t ) is the i-th glowworm's fluorescein value of the t-th generation.
Cloud Model Glowworm Swarm Optimization Algorithm for Functions Optimization
191
The location updates according to the formula (3). Location updating formula:
x (t ) − x i (t ) xi (t + 1) = xi (t ) + s j x j (t ) − x i (t ) Where 2.4
(3)
s is a step size parameter of glowworm's movement. Region Decision-Radius Updating
The purpose to update the radius is to make the regional decision radius be able to obtain adaptive adjustment with the change of the number of neighbors. If the neighbor density is small, the radius will increase, thereby the chance will increase to search the neighbors. The decision radius updates according to the formula (4) after each iteration. Decision range updating formula is described as follows.
rdi (t + 1) = min{rs , max{0, rdi (t ) + β (nt − N i (t ) )}}
(4)
Where rdi (t + 1) represents the decision radius of the i-th glowworm of t th generation after t + 1 times iteration. rs is sensing range. β is a constant to control adjacent glowworm variation range. n t is a neighborhood threshold to control the number of adjacent glowworms. N i (t ) is the number of glowworms with higher fluorescein value within the decision-making radius.
3
The Cloud-Model-Based Artificial Glowworm Swarm Optimization Algorithm
3.1
The Cloud Model
The cloud model introduced by Li De-yi in 1998 [6][7] is an uncertainty transformation model between a qualitative concept and its quantitative representation. The desired variable E x , entropy E n , and hyper entropy H are applied to represent the mathematical characteristics of the cloud. The fuzziness and randomness are integrated to constitute a mapping between the quantity and quality. Here, the center value of the cloud is the desired variable E x . The entropy determines the width of the cloud distribution and the hyper entropy H determines cloud dispersion. This paper uses MATLAB to generate an instance of cloud model C (18,2,0.2), which consists of 1000 cloud droplets. The cloud model converts the multiple information of the same concept to a single concept particle through three digital characteristics. It’s time complexity is determined by the number of cloud droplets generated. Assume a cloud model generates n cloud droplets, and then its time complexity is O(n) .
192
Q. Zhou, Y. Zhou, and X. Chen
The one-dimensional normal cloud algorithm steps are as follows: (1). Use E n as the desired value, H as Standard deviation and then generate a normal random number E_N . (2). Use E n as the desired value, the absolute value of E_N as the standard deviation to generate a normal random number x which is called the domain space cloud droplets. (3). Repeat the steps (2) and (3), till produce N cloud droplets. Due to the characteristics of stability in the uncertainty and varying in the stability of the cloud model [9]. Therefore, the cloud model is adopted. 3.2
The Normal-Cloud-Based Glowworm Swarm Optimal Search Strategy
The GSO algorithm looks for the glowworm which has a higher fluorescein value than itself. This process has a higher randomicity, and is not enough steady. The precision of search is difficult to increase when it searches a specific iteration times. Due to the steady and randomicity of the cloud model. This paper improves the glowworm's location updating so as to increase the local search ability of the algorithm and solution precision of GSO algorithm, and raise its convergence speed. Assume the location of current generation glowworm is X i .There are three equations in the one dimension normal cloud C ( E x , E n , H ) , such as E x = X i j , E n = et , H = E n / 10 .Where, j ∈ {1,2, , m} and et is a variable. Cloud droplets X i j generated through the normal cloud is the value of the j-th dimension. In order to guarantee the cloud droplets X i j in the definition domain, formula (5) is applied to process the cross-border of cloud droplets.
a, X ij = b,
X ij < a X ij > b
(5)
Where, X ij ∈[a, b] a, b is the maximum and minimum of the definition domain respectively. The lager the value E n is, the more widely the cloud droplets distributes, otherwise, more narrowly. When the iteration reaches particular times, the value of the glowworm swarm is more close to the optimal value. So the nonlinear degression strategy is used to control the value of et to improved the precision of the solving [8].
et = −( Emax − Emin )(t / Tmax ) 2 + Emax
(6)
In the formula, we set the value of E max and E min according to the definition domain of the object function. And t ∈ {1,2, , Tmax } , here t is current iteration times, and T max is the maximum iteration times.
Cloud Model Glowworm Swarm Optimization Algorithm for Functions Optimization
3.3
193
Implement Steps of the CGSO Algorithm
1). Initial the parameters ρ , γ , β , s, l , m, n and the position, decision radius and the value of fluorescein of the glowworm. 2). Update the fluorescein value of each glowworm i referring to the formula (1). 3). Select the glowworm which satisfies the requirements according to the formula (2). Use the roulette way to choose the move direction of the glowworm j , and apply the formula (3) to update its location and process the glowworm's location which has been updated. 4). Compute the optimal value of the glowworms' position of the current generation. Use the optimal value as the center. Produce a particular amount of cloud droplets according to 2.2, and adopt the greedy algorithm to choose the best value of y cloud droplets. Then compare it with the optimal value of the glowworm of the current generation. 5). Update the decision radius of the glowworm referring to the formula (4). 6). Start the next iteration after one iteration, and judge whether it satisfy the condition or not, if it meets the needs, then quit the loop and record the result. Otherwise, turn to 2).
4
Simulation Experiment
In our simulation, MATLAB 7.0 is applied to compile the program codes. The experiment is operated on a PC with a Windows XP OS, a AMD Athlon 640 processor and a 4GB size memory. 4.1
Test Function and Initial Parameters [5]
In order to check the effectively of the algorithm, 8 base test functions are chose to compared with GSO algorithm and MMGSO. Which are as follows: m
F1 : f1 ( x) = xi2 ,−100 ≤ xi ≤ 100(i = 1.2, , m; m = 10) , i =1
The global minimum value is zero; m
F2 : f 2 ( x) = ( xi2 + 0.5) 2 ,−10 ≤ xi ≤ 10(i = 1,2, , m; m = 10) , i =1
The global minimum value is zero; m
F3 : f 3 ( x) = − exp(−0.5 xi2 ),−1 ≤ xi ≤ 1(i = 1,2, , m; m = 10) , i =1
The global minimum value is -1;
194
Q. Zhou, Y. Zhou, and X. Chen m
F4 : f 4 ( x) = ixi2 ,−5.12 < x < 5.12(i = 1,2, , m; m = 10) , i =1
The global minimum value is zero;
F5 : f5 ( x) = [1 + ( x1 + x2 + 1) 2 (19 − 14 x1 + 3 x12 − 14 x2 + 6 x1 x2 + 3 x22 )] [30 + (2 x1 − 3 x2 ) 2 (18 − 32 x1 + 12 x12 + 48 x2 − 36 x2 + 27 x22 )], − 2 ≤ xi ≤ 2, i = {1, 2} The global minimum value in (0,0) is zero;
F6 : f 6 ( x) = 0.5 −
sin x12 + x22 − 0.5 ,−100 ≤ xi ≤ 100, i = {1,2} , [1 + 0.001( x12 + x22 )]2
The global minimum value in (0,-1) is 3;
F7 : f 7 ( x) = ( x12 + x22 )1 / 4 [sin 2 (50( x12 + x22 )1 /10 ) + 1.0], −100 < x < 100, The global minimum value in (0,0) is zero; m
F8 : f 8 ( x) = 10m + [ xi2 − 10 cos(2π xi )], −5.12 < xi < 5.12 i =1
(i = 1, 2, , m; m = 10), The global minimum value is zero; Set the parameter of CGSO as follows: max t = 200 , s = 0.03 , n = 100 , β = 0.08 , γ = 0.6 , l = 0.5 , n t = 5 , y = 30 . 4.2
Comparison of CGSO,GSO and MMGSO
In the experiment, functions F1 ~ F8 are tested for 20 times independently, the optimal value; the worst value and the average value are obtained. From the Table 1, we can see that the accuracy of the CGSO algorithm which is compared with the GSO and MMGSO algorithm has been significantly improved after optimizing the eight standard functions above. The CGSO algorithm is closer to the theoretically optimum value. In particularly, the algorithm has been greatly improved in accuracy on F1 F2 F4 and F7 . F1 reaches 10 −2 , F2 reaches 10 −3 , F4 reaches 10 −4 and F7
、 、
reaches 10 −2 . From the test results, CGSO is More significantly superior to the basic GSO and MMGSO.
Cloud Model Glowworm Swarm Optimization Algorithm for Functions Optimization
195
Table 1. Comparison of the results of the test functions Function
F1
F2
F3
F4
F5
F6
F7
F8
Algorithm
Optimal value
Worst value
Average value
CGSO
4.3869369275E-02
3.5580026695E+00
1.0187481346E+00
GSO
2.3588555795E+03
5.4519947600E+03
4.0954059282E+03
MMGSO
2.4622496906E+ 03
3.5261024196E+ 03
3.0293045177E+ 03
CGSO
2.5625310318E-03
1.7153111934E-02
7.2781937529E-03
GSO
2.5527377372E+01
5.8518932075E+01
4.2047405524E+01
MMGSO
2.4511797054E+01
3.5948040784E+01
3.0402824004E+01
CGSO
-9.9999296438E-01
-9.9858049952E-01
-9.9979094498E-01
GSO
-8.9889802232E-01
-7.5375454723E-01
-8.2389941922E-01
MMGSO
-7.2261158393E-01
-6.9745197732E-01
-0.7108969951E-01
CGSO
2.0922935343E-04
1.9517179871E-02
1.6445397737E-03
GSO
3.2499235773E+01
7.7112489815E+01
5.3377856031E+01
MMGSO
2.7046904761E+01
2.8864106889E+01
2.8060252860E+01
CGSO
3.0000000435
3.0002932923
3.0000648932
GSO
3.0039141969
5.4326001069
3.7716431499
MMGSO
3.0000008381
3.0000066951
3.0000036463
CGSO
2.4558581811E-03
2.4561330150E-03
2.4559044092E-03
GSO
2.4558595486E-03
1.5260097807E-01
5.4110901953E-02
MMGSO
2.4560806E-03
3.2138358E-03
2.7391065E-03
CGSO
5.5270557680E-02
1.7868865702E-01
9.6506152596E-02
GSO
1.0131463148
2.4575967511
1.7611353619
MMGSO
0.5393870922
1.5793736647
1.0982276798
CGSO
2.8882505418E+01
5.9721144823E+01
4.2567094272E+01
GSO
5.3984615100E+01
7.6788165292E+01
6.7553289291E+01
MMGSO
5.4144331901E+01
6.8399067513E+01
6.3460667071E+01
Figure 3~10 is the convergence curves about the iteration times and the objective function value of CGSO, basic GSO and MMGSO10. 14000 CGSO GSO MMGSO
150 CGSO GSO MMGSO
10000 objective function value
objective function value
12000
8000 6000 4000
100
50
2000 0
0
50
100
150
200
iterations
Fig. 1. The convergence of the function F1
0
0
50
100
150
200
iterations
Fig. 2. The convergence of the function F2
196
Q. Zhou, Y. Zhou, and X. Chen 150
200
objective function value
objective function value
CGSO GSO MMGSO 100
50
CGSO GSO MMGSO
150
100
50
0 0
50
100
150
0 0
200
50
iterations
Fig. 3. The convergence of the function F3
10
2
objec tive function v alue
CGSO GSO MMGSO
10
10
1
50
100
150
0
10
10
10
200
-1
-2
-3
0
50
100
150
200
iterations
iterations
Fig. 5. The convergence of the function F5
Fig. 6. The convergence of the function F6 110
6 CGSO GSO MMGSO
4 3 2
CGSO GSO MMGSO
100 objective function value
5 objective function value
200
CGSO GSO MMGSO
0
0
150
Fig. 4. The convergence of the function F4
objec tiv e func tion v alue
10
100 iterations
90 80 70 60 50
1 0 0
40 50
100
150
200
iterations
Fig. 7. The convergence of the function F7
30 0
50
100
150
200
iterations
Fig. 8. The convergence of the function F8
Especially in Figure 1, 2,4,6,8, it can be seen the convergence speed or the solving accuracy.CGSO algorithm effects more preferably than the basic GSO algorithm and MMGSO algorithm and we can find a better value in a multi-extreme point function.
5
Conclusions
For the basic glowworms swarm optimization algorithm is easy to fall into the local optimum, an artificial glowworms swarm optimization based on cloud model algorithm is presented in this paper. Experiments show that CGSO has a more rapid
Cloud Model Glowworm Swarm Optimization Algorithm for Functions Optimization
197
global search capability and can avoid premature convergence. In terms of solution precision and convergence rate, GSO algorithm has been improved. Acknowledgment. This work is supported by 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.
References 1. Krishnan, K.N., Ghose, D.: Glowworm swarm optimization: a new method for optimizing multi-modal functions. Computational Intelligence Studies 1, 93–119 (2009) 2. Krishnanand, K.N.: Glowworm swarm optimization: a multimodal function optimization paradigm with applications to multiple signal source localization tasks. Indian Institute of Science, Indian (2007) 3. Krishnanand, K.N., Ghose, D.: A glowworm swarm optimization based multi-robot system for signal source localization. In: Liu, D., Wang, L., Tan, K.C. (eds.) Design and Control of Intelligent Robotic Systems. SCI, vol. 177, pp. 49–68. Springer, Heidelberg (2009) 4. Krishnanand, K.N., Ghose, D.: Multiple mobile signal sources:a gloworm swarm optimizationapproach. In: Proc. of the 3rd Indian International Conference on Artificial Intelligence (2007) 5. Liu, J.-K., Zhou, Y.-Q.: A parallel artificial glowworm algorithm With a master-slave structure. Computer Engineering and Applications 48, 33–38 (2012) 6. Li, D.-Y., Yang, Z.-H.: Two-dimensional cloud model and its application in predicting. Journal of Computers 21, 961–969 (1998) 7. Li, D.-Y., Meng, H.-J., Shi, X.-M.: Membership clouds and membership cloud generators. Computer Research and Development 32, 16–20 (1995) 8. Ye, D.-Y., Lin, X.-J.: The cloud variability artificial bee colony algorithm. Computer Application 32, 2538–2541 (2010) 9. Zhang, G.-W., He, R., Liu, Y.: Evolutionary algorithm based on cloud model. Journal of Computers 31, 1082–1091 (2008) 10. Liu, J.-K., Zhou, Y.-Q.: A artificial glowworm algorithm of a maximum and minimum fluorescein value. Application Research of Computers 28, 3662–3665 (2011)