Normalized Population Diversity in Particle Swarm Optimization

27 downloads 0 Views 402KB Size Report
which is a simplified personal matrix with only one particle's best position which is either the global best position in global star structure or a particle's personal.
Normalized Population Diversity in Particle Swarm Optimization Shi Cheng1,2 and Yuhui Shi2 1

Dept. of Electrical Engineering and Electronics, University of Liverpool, Liverpool, UK [email protected] 2 Dept. of Electrical & Electronic Engineering, Xi’an Jiaotong-Liverpool University, Suzhou, China [email protected]

Abstract. Particle swarm optimization (PSO) algorithm can be viewed as a series of iterative matrix computation and its population diversity can be considered as an observation of the distribution of matrix elements. In this paper, PSO algorithm is first represented in the matrix format, then the PSO normalized population diversities are defined and discussed based on matrix analysis. Based on the analysis of the relationship between pairs of vectors in PSO solution matrix, different population diversities are defined for separable and non-separable problems, respectively. Experiments on benchmark functions are conducted and simulation results illustrate the effectiveness and usefulness of the proposed normalized population diversities. Keywords: Particle swarm optimization, diversity, normalized population diversity, matrix analysis, vector norm, matrix norm, matrix iterative computation.

1

Introduction

Particle Swarm Optimization (PSO), which was introduced by Russ Eberhart and James Kennedy in 1995 [1,2], is a population-based evolutionary computation technique. It models the social behaviors observed in flocking birds. Each particle, which represents a potential solution, flies through the solution (search) space with a velocity that is dynamically adjusted according to its own and its companion’s historical behaviors. The particles have a tendency to fly toward better search areas over the course of a search process [3]. Diversity has been defined to measure the search process of an evolutionary algorithm. Generally, it is not to measure whether the algorithm find a “good enough” solution or not, but to measure the distribution of individuals in the 

The authors’ work was supported by National Natural Science Foundation of China under grant No. 60975080, and Suzhou Science and Technology Project under Grant No. SYJG0919.

Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 38–45, 2011. c Springer-Verlag Berlin Heidelberg 2011 

Normalized Population Diversity in Particle Swarm Optimization

39

population (current solutions). Shi and Eberhart introduced three different definitions on population diversity to measure the PSO search process [4]. Olorunda and Engelbrecht utilized swarm diversity to measure the state of exploration or exploitation during particles searching [5]. Because different problems have different dynamic ranges, the dynamic ranges of these defined diversities generally will be different. As a consequence, the diversity observation on one problem will be different from that on another problem. Therefore it is necessary to have normalized diversity definitions. In this paper, the basic PSO algorithm, fundamental concepts of matrix computation, and the importance of diversity are reviewed in Section 2. In Section 3, definitions of position diversity, velocity diversity, and cognitive diversity are given for separable problem and non-separable problem, respectively. In Section 4, experiments on measuring population diversity are tested on benchmark functions and simulation results are discussed to illustrate the effectiveness and usefulness of the proposed normalized diversity definitions. Finally, conclusions are given in Section 5 together with some remarks and future research directions.

2 2.1

Preliminaries Particle Swarm Optimization

The original PSO algorithm is simple in concept and easy in implementation. The basic equations are usually given as follow [6]: vij = wvij + c1 rand()(pij − xij ) + c2 Rand()(pnj − xij ) xij = xij + vij

(1) (2)

where xij represents a particle, i represents the number of particle which is from 1 to m, and j is for dimension from 1 to n. The equations above can also be written in matrix form as follow: V = wV + c1 RAnd()(P − X) + c2 RAND()(N − X) X= X+V where RAnd() and RAND() are different for each matrix element, and ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ x11 x12 · · · x1n v1 v11 v12 · · · v1n x1 ⎢ v2 ⎥ ⎢ v21 v22 · · · v2n ⎥ ⎢ x2 ⎥ ⎢ x21 x22 · · · x2n ⎥ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ V=⎢ . ⎥=⎢ . X=⎢ . ⎥=⎢ . ⎥ . .. ⎥ . . . ⎦ ⎣ ⎦ ⎣ ⎣ .. ⎦ ⎣ .. xij . . . vij . ⎦ xm xm1 xm2 · · · xmn vm vm1 vm2 · · · vmn ⎡ ⎤ ⎡p p ··· p ⎤ ⎡ ∗ ⎤ ⎡ p∗ p∗ · · · p∗ ⎤ 11 12 1n 11 12 1n p1 p1 p∗21 p∗22 · · · p∗2n ⎥ p p · · · p ⎢ p2 ⎥ ⎢ ⎢ p∗2 ⎥ ⎢ 21 22 2n ⎥ ⎥ ⎥ ⎢ ⎢ ⎥ ⎥ P=⎢ N=⎢ .. .. ⎥ . .. ⎥ ⎣· · ·⎦ = ⎢ ⎣ · · ·⎦ = ⎢ ∗ ⎦ ⎣ .. ⎣ . pij . ⎦ pij . ∗ ∗ ∗ pm p m pm1 pm2 · · · pmn pm1 pm2 · · · p∗mn

(3) (4)

40

S. Cheng and Y. Shi

The above four matrix are termed as position matrix X, velocity matrix V, cognitive (personal best) matrix P, and social (neighboring best) matrix N, which is a simplified personal matrix with only one particle’s best position which is either the global best position in global star structure or a particle’s personal best in this neighborhood in other structures, e.g., local ring. Shi and Eberhart gave three definitions on population diversity, which are position diversity, velocity diversity and cognitive diversity [7]. According to the PSO matrix representation, diversity is a measurement of variance of different elements in each dimension or in whole matrix. Position diversity is used to measure the distribution of particles’ current positions, that is, it concerns elements in matrix X. Velocity diversity is used to measure the distribution of swarm’s current velocity, that is, it concerns elements in matrix V. Cognitive diversity measures the distribution of best positions for each particles find so far, that is, it concerns elements in matrix P. Which diversity definition to be utilized to measure the diversity of swarm is determined by the property of particle swarm algorithms and the problems to be solved. Each vector xi , where xi = [xi1 , · · · , xin ] in position matrix X, is a solution of problem. An optimization problem can be a separable problem or a non-separable problem. For a separable problem, it is independent to evaluate the contribution of each xij to the fitness value of xi ; while for non-separable problem, it is not independent. Therefore, for separable problems, it is preferred to use dimensionwise diversity measurement, while for non-separable problems it is preferred to use element-wise diversity measurement. This conclusion can be observed in Figure 1, which shows simulation results of different PSO population diversities for one separable problem (Fig. a) and one non-separable problem (Fig. b). The dimension-wise diversity measurement is better for separable function as shown in Fig. a, on the contrary, element-wise measurement is better for non-separable function as shown in Fig. b.

4

2

10

10

2

1

10

10

0

0

10

10

−2

−1

10

10

−4

10

−6

10

dimension−wise L1

10

element−wise dimension−wise L2

10

element−wise dimension−wise L2

−3

−8

−4

10

10

−10

10

dimension−wise L1

−2

−5

0

10

1

10

2

10

(a)

3

10

4

10

10

0

10

1

10

2

10

3

10

4

10

(b)

Fig. 1. Different definition of PSO population diversity. Global star structure: (a) Separable Ackley’s function: f3 position, (b) Non-separable generalized Rosenbrock’s function: f4 position.

Normalized Population Diversity in Particle Swarm Optimization

2.2

41

Vector Norm and Matrix Norm

A vector norm is a map function f : Rn → R. All norms on Rn are equivalent, i.e., if  · α and  · β are norms on Rn , there exist positive constants, c1 and c2 such that c1 xα ≤ xβ · · · ≤ c2 xα , Vector norm have the property that: x1 ≥ x2 · · · ≥ x∞

(5)

Also, a matrix norm is a map function f : Rm×n → R. The matrix norm have n m   |aij |, and A∞ = max |aij |. the properties that: A1 = max1≤j≤n i=1

1≤i≤m j=1

By applying matrix norms in PSO, the meaning of matrix norm is as follows: for each dimension, calculating the sum of absolute position value for every particle, the maximum is the matrix norm L1 for position matrix; for every particle, finding the sum of absolute position value in each dimension, the maximum is the matrix norm L∞ for position matrix. The distinction between matrix L1 norm and matrix L∞ norm is the perspectives taken on the position matrix. Matrix L1 norm measures the largest value on dimension, while matrix L∞ norm measures the largest value on particles. Considered the property whether vectors are dependent on each other or not, vector norms are preferred to be applied to normalize population diversity for separable problems and matrix L∞ norms are preferred to be used for non-separable problems.

3

Normalized Population Diversity

Vector norms are applied to normalize population diversity on separable problem, while matrix norms are applied to non-separable problem for the property that each dimension is not independent in non-separable problems. The matrix elements (position, velocity, personal best position) are normalized at first, and the definitions of PSO population diversities based on vector L1 norm, which introduced by Cheng and Shi [8], are given as follow: 3.1

Position Diversity

Position diversity measures distribution of particles’ current position. The swarm is going to diverge into wider search space or converge in a small area can be obtained from this measurement. Position diversity concerns the elements in position matrix. Separable Problem. For separable problem, each vector in position matrix are independent. Vector norms are preferred to normalize the position, and three methods are as follow. These normalizations are based on the vector L1 norm, or n L∞ norm, or maximum value of position: xnor = x /x = x / ij 1 ij ij j=1 |xij |,or nor nor xij = xij /x∞ = xij / max |xij |,or xij = xij /Xmax. Considered the inequality (5), normalized position based on other vector norms is always larger than position based on L1 norm and smaller than position based on L∞ norm.

42

S. Cheng and Y. Shi

Normalized position diversities for separable problems are calculated as follow: m n p 1 m 1 1 nor p nor p ¯ nor = m x ¯nor j |, and D = n i=1 xij , and D = m i=1 |xij − x j=1 Dj . where Dp = [D1p , · · · , Dnp ] are the diversities on each dimension, and Dp is the normalized position diversity for particles. Non-separable Problem. For non-separable problem, a vector in position matrix is relative to other vector or vectors. This connection should be considered in diversity measurement. Three methods are preferred to normalize the position of each particle max |xij | in matrix X, matrix L∞ norm for X, or the maximum value of position. Normalized position is as follows: xnor = xij / max |xij |, or ij n nor nor xij = xij /X∞ = xij / max1≤i≤m j=1 |xij |, or xij = xij /Xmax . After normalized the position, normalized position non-separable mdiversity n for 1 p xnor = problems is calculated as follows: x ¯nor = m×n ij , and D i=1 j=1 m n 1 nor nor p |x − x ¯ |. where D is the normalized position diversity ij i=1 j=1 m×n for particles at this running step. 3.2

Velocity Diversity

Velocity diversity, which gives the tendency information of particles, measures the distribution of particles’ current velocity. In other words, velocity diversity measures the “activity” information of particles. Based on the measurement of velocity diversity, particle’s tendency of expansion or convergence could be obtained. Separable Problem. Vector in velocity matrix is independent for separable problem. Vector norm L1 , or L∞ , or maximum is applied to n value of velocity nor nor normalize velocity: vij = vij /v1 = vij / j=1 |vij |, or vij = vij /v∞ = nor = vij /Vmax . vij / max |vij |, or vij Normalized velocity for  separable problems are calculated as follow: m nor diversities m n 1 1 1 v nor nor v v ¯ nor = m v v , and D = |v − v ¯ |, and D = j i=1 ij i=1 ij j=1 Dj . m n v v v v where D = [D1 , · · · , Dn ] are the diversities on each dimension, and D is the normalized velocity diversity for particles. Non-separable Problem. For non-separable problem, vectors is not independent in velocity matrix. Three operators: max |vij | in velocity matrix, or matrix L∞ norm of V, or maximum value of velocity is applied to normalize  the velocnor nor = vij / max |vij |, or vij = vij /V∞ = vij / max1≤i≤m nj=1 |vij |, or ity. vij nor vij = vij /Vmax . Normalized velocity for non-separable problems is calculated as folmdiversity n m  n 1 1 nor v nor v , and D = − v¯nor |. lows: v¯nor = m×n i=1 j=1 ij i=1 j=1 |vij m×n v where D is the normalized velocity diversity for particles at this running step. 3.3

Cognitive Diversity

Cognitive diversity represents the target distribution of all particles found currently. The measurement of cognitive diversity is as same as position diversity except using each particle’s current personal best position instead of current position. Therefore, the analysis for position diversity is also effective for cognitive diversity.

Normalized Population Diversity in Particle Swarm Optimization

43

Separable Problem. The normalized cognitive positions are as follow: pnor ij =  nor pij /p1 = pij / nj=1 |pij |, or pnor = p /p = p / max |p |, or p = ij ∞ ij ij ij ij pij /Xmax . Normalized  cognitive diversities for  separable problems are calculated n as folm m 1 1 1 nor c nor nor c v ¯ nor = m v , and D = |v −¯ v |, and D = low: p j i=1 ij i=1 ij j=1 Dj . m n c c c c where D = [D1 , · · · , Dn ] are the diversities on each dimension, and D is the normalized cognitive diversity for particles. Non-separable Problem. Like the definition of position diversity, the normal= pij / maxi,j |pij |, or pnor = ized personal best positions are as follow: pnor ij ij n nor pij /P∞ = pij / max1≤i≤m j=1 |pij |, or pij = pij /Xmax Normalized cognitive for non-separable problems as m diversity n m nis calculated 1 1 nor c nor ¯nor |. follows: p¯nor = m×n i=1 j=1 pij , and D = m×n i=1 j=1 |pij − p where Dc is the normalized cognitive diversity for particles at this iterative step.

4

Experimental Studies

The experiments have been conducted to test more than 10 benchmark functions; some of them are given in the Table 1. All functions are tested for 50 times, and random shift of the location of optimum is utilized in dimensions each time. For the reason of generalization, whether each benchmark function is either a unimodal or a multimodal function as well as a separable or a non-separable function is known. Figure 2 gives a diversity measurement for separable problems, which (a) is velocity diversity of unimodal function f1 and (b) is position diversity of multimodal function f3 . Fig. a and b showed that diversity based on L1 norm nearly have the same curve as diversity based on the maximum value of the position matrix. Figure 3 gives a diversity measurement for non-separable problems, which (a) is velocity diversity of unimodal function f2 and (b) is position diversity of 0.7

0.4

0.6

0.35 0.3

0.5

vector L norm

0.4

velocity maximum vector L norm

vector L norm

1

1

0.25

position maximum vector L norm





0.2 0.3 0.15 0.2

0.1

0.1

0 0 10

0.05

1

10

2

10

(a)

3

10

4

10

0 0 10

1

10

2

10

3

10

4

10

(b)

Fig. 2. Normalized PSO population diversity for separable problem. Local ring structure: (a) unimodal function f1 velocity diversity; Global star structure: (b) multimodal function f3 position diversity.

44

S. Cheng and Y. Shi

0

0

10

10

−1

10

max x

−1

ij

10

position maximum matrix L∞ norm

−2

10

−2

10 −3

10

max v

ij

velocity maximum matrix L norm ∞

−4

10

0

10

1

10

−3

2

10

3

10

4

10

10

0

10

1

10

(a)

2

10

3

10

4

10

(b)

Fig. 3. Normalized PSO population diversity for non-separable problem. Local ring structure: (a) unimodal function f2 velocity diversity; Global star structure: (b) multimodal function f4 position diversity. Table 1. Representative functions used in our experimental study, where n is the dimension of the function, z = (x − o), oi is an randomly generated number in each function’s search space S, global optimum x∗ = o, fmin is the minimum value of the function, and S ⊆ Rn Function name Test function  Quadric Noise f1 (x) = n izi4 + random[0, 1) i=1  n Schwefel’s p1.2 f2 (x) = i=1 ( ik=1 zk )2 √ 1 n 2 −0.2 n z i=1 i f3 (x) = −20e Ackley 1 n cos(2πzi ) i=1 n + 20 + e −e n Generalized f4 (x) = i=1 [100(zi+1 − zi2 )2 + (zi − 1)2 ] Rosenbrock

n S fmin n 100 [−1.28, 1.28] bias[4] 100 [−100, 100]n bias[2] 100

[−32, 32]n

bias[9]

100

[−10, 10]n

bias[5]

multimodal function f4 . Fig.a and b showed that diversity based on max xij nearly have the same curve as diversity based on the maximum value of the position matrix. As Figures shown, this definition of normalized diversity measurement gives some useful information during particles search process. Position diversity and Velocity diversity always have a continuous vibrate, this proved that particles “fly” from one side of optimum to another side on each dimension continually.

5

Conclusion

This paper proposed an analysis of population diversity based on the category of separable and non-separable problems. If vectors are not independent in position matrix; diversity observation should consider the correlation among dependent vectors. Considered the property whether vectors are dependent on each other or not, vector norms are preferred to normalize population diversity for separable problems and matrix L∞ norm is preferred to be used for non-separable problems.

Normalized Population Diversity in Particle Swarm Optimization

45

Particles on the state of “expansion” or “converge” can be determined by this diversity measurement. After obtained this information, performance of optimization algorithm can be improved by adjusting population diversity dynamically during PSO search process. Particles with different topology structure also have different vector dependence in position or velocity matrix. Seeking the influence of topology structure and vector partial dependence analysis is the research need to be explored further. The idea of normalized population diversity measuring can also be applied to other evolutionary algorithms, e.g., genetic algorithm, differential evolution for evolutionary algorithms have the same concepts of current population solutions and search step. The performance of evolutionary algorithms can be improved on this measurement of population diversity. Dynamically adjusting the population diversity controls the algorithm’s ability of exploration or exploitation, hence, algorithm has large possibility to reach optimum.

References 1. Eberhart, R., Kennedy, J.: A new optimizer using particle swarm theory. In: Processings of the Sixth International Symposium on Micro Machine and Human Science, pp. 39–43 (1995) 2. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Processings of IEEE International Conference on Neural Networks (ICNN), pp. 1942–1948 (1995) 3. Eberhart, R., Shi, Y.: Computational Intelligence: Concepts to Implementations, 1st edn. Morgan Kaufmann Publisher, San Francisco (2007) 4. Shi, Y., Eberhart, R.C.: Population diversity of particle swarms. In: Proceedings of the 2008 Congress on Evolutionary Computation, pp. 1063–1067 (2008) 5. Olorunda, O., Engelbrecht, A.P.: Measuring exploration/exploitation in particle swarms using swarm diversity. In: Proceedings of the 2008 Congress on Evolutionary Computation, pp. 1128–1134 (2008) 6. Eberhart, R., Shi, Y.: Particle swarm optimization: Developments, applications and resources. In: Proceedings of the 2001 Congress on Evolutionary Computation, pp. 81–86 (2001) 7. Shi, Y., Eberhart, R.: Monitoring of particle swarm optimization. Frontiers of Computer Science 3(1), 31–37 (2009) 8. Cheng, S., Shi, Y.: Diversity control in particle swarm optimization. In: Proceedings of IEEE Swarm Intelligence Symposium 2011, Paris, France (April 2011)