# A Particle Swarm Optimization Variant with an Inner Variable Learning Strategy

Authors: Guohua Wu; Witold Pedrycz; Manhao Ma; Dishan Qiu; Haifeng Li; Jin Liu
Journal: The Scientific World Journal
 (2014)

---

## Abstract

Although Particle Swarm Optimization (PSO) has demonstrated competitive performance in solving global optimization problems, it exhibits some limitations when dealing with optimization problems with high dimensionality and complex landscape. In this paper, we integrate some problem-oriented knowledge into the design of a certain PSO variant. The resulting novel PSO algorithm with an inner variable learning strategy (PSO-IVL) is particularly efficient for optimizing functions with symmetric variables. Symmetric variables of the optimized function have to satisfy a certain quantitative relation. Based on this knowledge, the inner variable learning (IVL) strategy helps the particle to inspect the relation among its inner variables, determine the exemplar variable for all other variables, and then make each variable learn from the exemplar variable in terms of their quantitative relations. In addition, we design a new trap detection and jumping out strategy to help particles escape from local optima. The trap detection operation is employed at the level of individual particles whereas the trap jumping out strategy is adaptive in its nature. Experimental simulations completed for some representative optimization functions demonstrate the excellent performance of PSO-IVL. The effectiveness of the PSO-IVL stresses a usefulness of augmenting evolutionary algorithms by problem-oriented domain knowledge.


---

## Body

## 1. Introduction

Optimization plays an important role in scientific research, management, industry, and so forth, given the fact that many problems in the real world are essentially optimization tasks. However, with the increase of complexity of optimization problems associated with multimodality, noise, and high dimensionality of problems, “traditional” optimization methods (e.g., gradient-based methods) are no longer completely effective when searching for optimal or satisfactory solutions within the bounds of reasonable computation cost. In light of these challenges, many bioinspired algorithms, such as Genetic Algorithms (GAs) and Ant Colony Optimization (ACO), have emerged. Particle Swarm Optimization (PSO), developed by Kennedy and Eberhart [1, 2], is a competitive population-based algorithm being particularly efficient when dealing with continuous optimization problems. It is a swarm intelligence [3] algorithm that emulates swarm behaviors such as birds flocking and fish schooling [4]. Each particle in PSO adjusts its flying speed and direction by learning from its own past experience and neighbors’ experience, attempting to search for better position gradually [5].Due to its powerful capability and relatively low number of parameters, PSO has drawn wide attention since its inception. To enhance the efficiency of the generic version of the PSO method, many variants have been presented. These variants are realized through different augmentations of the generic method, generally including parameter tuning [6–11], topology structure adjustment [12–16], intelligent combination of various search strategies [17–19], and hybridization with other classical optimization techniques [20–23]. Although significant progress and achievements have been obtained, still a fundamental challenge on how to make PSO successful in determining optimal or near optimal solutions for optimization problems with complicated landscapes and of high dimensionality still remains. In addition, even though PSO has been praised for many merits, including simple implementation, it has been criticized for suffering from premature and the quick performance degradation in case of increasing dimensionality of the optimization problem [24].Noticeably, previous PSO variants generally focus on the modification of particle’s behaviors, to strengthen simultaneously its exploration and exploitation capabilities. These efforts indeed improve significantly the effectiveness of the generic PSO. Another promising direction in improving the PSO performance is to acquire and utilize the domain knowledge associated with the optimization problems at hand. Subsequently this domain knowledge can be integrated into the search strategy in anticipation of delivering more effective search guidance for the particles. As a matter of fact, the combination of knowledge-based strategy with the heuristics of swarm optimization has been demonstrated to be effective in discrete optimization [25–27]. Note that the problem domain knowledge in discrete optimization (e.g., the scheduling problem [26, 27] and the spatial geoinformation services composition problem [28, 29]) is dependent on concrete problems considered and the knowledge extraction and discovery process is relatively subjective. In [30], the authors proposed a variable reduction strategy by utilizing the knowledge of derivative equations of unconstraint optimization problems, to reduce the complexity of original optimization problems.The notion of variable symmetry can be encountered in optimization functions. Variable symmetry means that all or some variables encountered in the function under optimization are symmetric; namely, they can exchange positions through linear transformation without affecting the original function. We refer to such functions in which all variables are symmetric as completely symmetric function. There are functions in which only some variables are symmetric giving rise to the concept of partially symmetric function. In general, symmetric functions are developed by using operators of summation and product (“∑” and “∏”). According to this observation, we note that all symmetric variables in the optimal solutions of such a function are supposed to satisfy a certain quantitative relation. The domain knowledge acquired about symmetric functions becomes useful in the enhancement of the search performance. The underlying motivation of this study is to utilize such domain knowledge to strengthen the PSO’s capability in solving optimization problems with symmetric variables.The major contributions of the paper can be summarized as follows.(1)
Based on the knowledge that symmetric variables in the optimal solution of an optimization function satisfy a certain quantitative relation, we present an inner variable learning (IVL) strategy to provide particles with exact and efficient search guidance.
(2)
We design a trap detection strategy, by which one can determine if the particle has been trapped in a local optimum. We also employ an adaptive Gaussian mutation-based trap jumping out strategy to help particles to escape from local optima.
(3)
We propose a new knowledge-driven PSO variant, named PSO-IVL, which is integrated with the IVL strategy, trap detection and jumping out strategy, and the basic PSO.
(4)
Extensive experimental simulations and analysis are conducted to demonstrate the efficiency of PSO-IVL in solving global optimization functions with symmetric variables and offer a comparison with some other state-of-the-art PSO variants.The paper is structured as follows. Section2 briefly introduces the basic PSO and reviews related work existing in the literature. Section 3 details the IVL strategy. Section 4 introduces the trap detection and jumping out strategy and proposes the algorithm framework of PSO-IVL. Section 5 reports experimental simulations and offers a detailed performance analysis. Section 6 concludes this paper identifying future research directions.


## 2. Related Studies

PSO has undergone significant progress since its introduction in 1995. A large number of PSO variants have been proposed to improve the performance of traditional PSO. Comprehensive reviews of PSO can be found in [36–38]. In addition, Valle et al. [39] surveyed PSO along with its basic concepts, variants, and applications in power systems. Rana et al. [40] reviewed PSO and its application to data clustering. In this section, we first briefly introduce the basic PSO and then survey the major PSO variants.


### 2.1. Basic PSO

Analogous to some other evolutionary algorithms, such as Genetic Algorithm and Ant Colony Optimization, PSO is a population-based stochastic optimization algorithm. A swarm of particles in PSO attempt to search for superior solutions through learning, communication, and interaction. The position of each particle refers to a solution. Then the position moving process of a particle in the solution space relates to a solution search process. The state of particlei is described by its current position x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
D
] and velocity v
i
=
[
v
i
1
,
v
i
2
,
…
,
v
i
D
], where D stands for the number of variables encountered in the optimization problem. In the generic PSO with inertia weight [31], the position and velocity of particle i are updated during the evolutionary process:
(1)
v
i
d
′
⟵
w
×
v
i
d
+
c
1
×
r
1
d
×
(
p
Bes
t
i
d
-
x
i
d
)
+
c
2
×
r
2
d
×
(
g
Bes
t
d
-
x
i
d
)
,
(2)
x
i
d
′
⟵
x
i
d
+
v
i
d
′
,
where x
i
d
′ and x
i
d represent the dth variable (or dimension) of the next and current positions of particle i; v
i
d
′ and v
i
d denote the dth variable of the next and current velocities of particle i; p
Bes
t
i
d is the dth variable of the personal historical best position found by particle i up to now, and g
Bes
t
d is the dth variable of the global best position found by the overall particles so far; c
1 and c
2 are acceleration parameters which are commonly set to 2.0; r
1
d and r
2
d are two random numbers drawn from a uniform distribution over [
0,1
]; and w denotes the inertia weight, which is used to set up the balance between the abilities of global and local search features of PSO. The inertia weight parameter is widely adopted by major PSO variants [31].The behavior of the particle is specified by its velocity and position update realized according to (1) and (2) [39, 41]. The first inertia weight component of (1) models the tendency of the particle to continue in the same direction as before. The second component of (1) is referred to as the particle’s “memory,” “self-knowledge,” “nostalgia,” or “remembrance” [39, 41]. It reflects the self-learning behavior of the particle. The third component in (1) is referred to as “cooperation,” “social knowledge,” “group knowledge,” or “shared information” [39, 41]. It reflects the social learning behavior of the particle. Equation (2) indicates that the position of the particle in the solution space will be changed in terms of its current position and next velocity.After each update, we check the position and velocity of each particle to guarantee them being within a predefined certain range. In our study, if the position and velocity exceed the range, they are modified as follows:(3)
v
i
d
′
⟵
min
⁡
(
v
d
max
⁡
,
max
⁡
(
v
d
min
⁡
,
v
i
d
′
)
)
,
x
i
d
′
⟵
p
Bes
t
i
d
¯
,
where v
d
max
⁡ and v
d
min
⁡ are maximum and minimum value of dth variable of the velocities, respectively. p
Bes
t
i
d
¯ is the mean value of dth variable of the personal historical best positions of all particles.


### 2.2. Major PSO Variants

“Standard” PSO exhibits some deficiencies, including suffering from being premature and inefficient in solving complex multimodal optimization problems. One way to strengthen the capability of PSO is to dynamically adapt its parameters when running the particles’ evolutionary process. The inertia weight parameterw is set to linearly decrease over iterations [31, 42]. In addition, a fuzzy adaptive mechanism was used to tune the value of w [9]. Kennedy and Eberhart recommended that the proper value for the acceleration parameters c
1 and c
2 could be fixed and set to 2.0. These values were adopted in many works. In comparison, Suganthan [13] suggested that the usage of ad hoc selected values for c
1 and c
2 rather than the fixed value for different problems could result in better performance. Ratnaweera et al. [8] presented a PSO variant with linearly time-varying acceleration coefficients (HPSO-TVAC). Zhan et al. [17] proposed an adaptive PSO, which enables the automatic control of inertia weight, acceleration coefficients, and other algorithmic parameters at run time according to four evolutionary states, that is, exploration, exploitation, convergence, and jumping out state. Ismail and Engelbrecht [10] controlled the parameters of PSO by embedding them in the position vector of particles, which enhanced the performance of comprehensive learning PSO (CLPSO) [35].Besides parameter adaptation, topological structures of the particle swarm were also extensively studied. For example, Kennedy [12, 16] suggested that a small neighborhood might be more suitable to complicated multimodal problems while a larger neighborhood might be more effective for relatively simple unimodal problems. In [16], Kennedy and Mendes evaluated some typical topologies including global best topology, ring topology, wheel topology, pyramid topology, and Von Neumann topology. They suggested that the Von Neumann topology configuration may perform better compared to others. However, the selection of an appropriate neighborhood structure is generally problem oriented. Being aware of the noticeable effect of neighborhood structures, the neighborhood structure dynamic adaptation mechanisms were also investigated by some researchers [13, 43]. Mendes et al. [33] presented a fully informed particle swarm (FIPS) in which each individual learns the experience of all its neighbors rather than just the best one and itself.Another natural evolution of the Particle Swarm Optimization can be achieved by incorporating operators or techniques that are effectively used in other evolutionary algorithms [39]. Angeline [20] developed a hybrid PSO by introducing the selection operator coming from Genetic Algorithm. A hybrid PSO based on genetic programming was presented by Poli et al. [23]. In [44], Juang integrated GA with PSO for designing artificial neural network. Other operators and techniques, such as crossover [45], mutation [46], local search [15], and differential evolution [47, 48], were adopted in PSO as well.An intelligent integration of different learning strategy in to the swarm evolutionary process is a promising direction for designing efficient PSO variants. Usually one prepares a collection of learning strategies, which possess different capabilities, such as exploitation, exploration, and jumping out from local optimum, and then, through a sophisticated adaptation mechanism, enables each particle to automatically choose learning strategies to determine the next move. Many state-of-the-art PSO variants have been developed following this development strategy. Liang et al. [35] proposed a comprehensive learning particle swarm optimizer (CLPSO), which uses a novel learning strategy whereby all other particles’ historical best information is used to update a particle’s velocity. Wang et al. [24] proposed a self-adaptive learning based PSO (SLPSO). SLPSO adopts four adaptive learning mechanisms, which are automatically chosen by particles based on each strategy’s past performance. In [4], Zhan et al. proposed an orthogonal learning (OL) strategy for PSO to discover more useful information that lies in two particles’ experiences via orthogonal experimental design. Experimental results demonstrated that OLPSO significantly improves the performance of PSO, offering faster convergence, higher solution quality, and stronger robustness. Hu et al. [18] proposed a PSO variant by intelligently combining a nonuniform mutation-based method and an adaptive subgradient method. A Cauchy mutation operator was further utilized to prevent premature convergence. Wang et al. [49] presented an enhanced PSO variant called GOBL, which employed generalized opposition-based learning (GOBL) and Cauchy mutation to overcome the deficiency of premature. Li et al. [19] presented a self-learning particle swarm optimizer, in which each particle has four strategies to cope with different situations in the search space. An adaptive cooperation mechanism was implemented at the individual level, which enables a particle to choose the rational strategy according to its own local fitness landscape.


## 2.1. Basic PSO

Analogous to some other evolutionary algorithms, such as Genetic Algorithm and Ant Colony Optimization, PSO is a population-based stochastic optimization algorithm. A swarm of particles in PSO attempt to search for superior solutions through learning, communication, and interaction. The position of each particle refers to a solution. Then the position moving process of a particle in the solution space relates to a solution search process. The state of particlei is described by its current position x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
D
] and velocity v
i
=
[
v
i
1
,
v
i
2
,
…
,
v
i
D
], where D stands for the number of variables encountered in the optimization problem. In the generic PSO with inertia weight [31], the position and velocity of particle i are updated during the evolutionary process:
(1)
v
i
d
′
⟵
w
×
v
i
d
+
c
1
×
r
1
d
×
(
p
Bes
t
i
d
-
x
i
d
)
+
c
2
×
r
2
d
×
(
g
Bes
t
d
-
x
i
d
)
,
(2)
x
i
d
′
⟵
x
i
d
+
v
i
d
′
,
where x
i
d
′ and x
i
d represent the dth variable (or dimension) of the next and current positions of particle i; v
i
d
′ and v
i
d denote the dth variable of the next and current velocities of particle i; p
Bes
t
i
d is the dth variable of the personal historical best position found by particle i up to now, and g
Bes
t
d is the dth variable of the global best position found by the overall particles so far; c
1 and c
2 are acceleration parameters which are commonly set to 2.0; r
1
d and r
2
d are two random numbers drawn from a uniform distribution over [
0,1
]; and w denotes the inertia weight, which is used to set up the balance between the abilities of global and local search features of PSO. The inertia weight parameter is widely adopted by major PSO variants [31].The behavior of the particle is specified by its velocity and position update realized according to (1) and (2) [39, 41]. The first inertia weight component of (1) models the tendency of the particle to continue in the same direction as before. The second component of (1) is referred to as the particle’s “memory,” “self-knowledge,” “nostalgia,” or “remembrance” [39, 41]. It reflects the self-learning behavior of the particle. The third component in (1) is referred to as “cooperation,” “social knowledge,” “group knowledge,” or “shared information” [39, 41]. It reflects the social learning behavior of the particle. Equation (2) indicates that the position of the particle in the solution space will be changed in terms of its current position and next velocity.After each update, we check the position and velocity of each particle to guarantee them being within a predefined certain range. In our study, if the position and velocity exceed the range, they are modified as follows:(3)
v
i
d
′
⟵
min
⁡
(
v
d
max
⁡
,
max
⁡
(
v
d
min
⁡
,
v
i
d
′
)
)
,
x
i
d
′
⟵
p
Bes
t
i
d
¯
,
where v
d
max
⁡ and v
d
min
⁡ are maximum and minimum value of dth variable of the velocities, respectively. p
Bes
t
i
d
¯ is the mean value of dth variable of the personal historical best positions of all particles.


## 2.2. Major PSO Variants

“Standard” PSO exhibits some deficiencies, including suffering from being premature and inefficient in solving complex multimodal optimization problems. One way to strengthen the capability of PSO is to dynamically adapt its parameters when running the particles’ evolutionary process. The inertia weight parameterw is set to linearly decrease over iterations [31, 42]. In addition, a fuzzy adaptive mechanism was used to tune the value of w [9]. Kennedy and Eberhart recommended that the proper value for the acceleration parameters c
1 and c
2 could be fixed and set to 2.0. These values were adopted in many works. In comparison, Suganthan [13] suggested that the usage of ad hoc selected values for c
1 and c
2 rather than the fixed value for different problems could result in better performance. Ratnaweera et al. [8] presented a PSO variant with linearly time-varying acceleration coefficients (HPSO-TVAC). Zhan et al. [17] proposed an adaptive PSO, which enables the automatic control of inertia weight, acceleration coefficients, and other algorithmic parameters at run time according to four evolutionary states, that is, exploration, exploitation, convergence, and jumping out state. Ismail and Engelbrecht [10] controlled the parameters of PSO by embedding them in the position vector of particles, which enhanced the performance of comprehensive learning PSO (CLPSO) [35].Besides parameter adaptation, topological structures of the particle swarm were also extensively studied. For example, Kennedy [12, 16] suggested that a small neighborhood might be more suitable to complicated multimodal problems while a larger neighborhood might be more effective for relatively simple unimodal problems. In [16], Kennedy and Mendes evaluated some typical topologies including global best topology, ring topology, wheel topology, pyramid topology, and Von Neumann topology. They suggested that the Von Neumann topology configuration may perform better compared to others. However, the selection of an appropriate neighborhood structure is generally problem oriented. Being aware of the noticeable effect of neighborhood structures, the neighborhood structure dynamic adaptation mechanisms were also investigated by some researchers [13, 43]. Mendes et al. [33] presented a fully informed particle swarm (FIPS) in which each individual learns the experience of all its neighbors rather than just the best one and itself.Another natural evolution of the Particle Swarm Optimization can be achieved by incorporating operators or techniques that are effectively used in other evolutionary algorithms [39]. Angeline [20] developed a hybrid PSO by introducing the selection operator coming from Genetic Algorithm. A hybrid PSO based on genetic programming was presented by Poli et al. [23]. In [44], Juang integrated GA with PSO for designing artificial neural network. Other operators and techniques, such as crossover [45], mutation [46], local search [15], and differential evolution [47, 48], were adopted in PSO as well.An intelligent integration of different learning strategy in to the swarm evolutionary process is a promising direction for designing efficient PSO variants. Usually one prepares a collection of learning strategies, which possess different capabilities, such as exploitation, exploration, and jumping out from local optimum, and then, through a sophisticated adaptation mechanism, enables each particle to automatically choose learning strategies to determine the next move. Many state-of-the-art PSO variants have been developed following this development strategy. Liang et al. [35] proposed a comprehensive learning particle swarm optimizer (CLPSO), which uses a novel learning strategy whereby all other particles’ historical best information is used to update a particle’s velocity. Wang et al. [24] proposed a self-adaptive learning based PSO (SLPSO). SLPSO adopts four adaptive learning mechanisms, which are automatically chosen by particles based on each strategy’s past performance. In [4], Zhan et al. proposed an orthogonal learning (OL) strategy for PSO to discover more useful information that lies in two particles’ experiences via orthogonal experimental design. Experimental results demonstrated that OLPSO significantly improves the performance of PSO, offering faster convergence, higher solution quality, and stronger robustness. Hu et al. [18] proposed a PSO variant by intelligently combining a nonuniform mutation-based method and an adaptive subgradient method. A Cauchy mutation operator was further utilized to prevent premature convergence. Wang et al. [49] presented an enhanced PSO variant called GOBL, which employed generalized opposition-based learning (GOBL) and Cauchy mutation to overcome the deficiency of premature. Li et al. [19] presented a self-learning particle swarm optimizer, in which each particle has four strategies to cope with different situations in the search space. An adaptive cooperation mechanism was implemented at the individual level, which enables a particle to choose the rational strategy according to its own local fitness landscape.


## 3. The Inner Variable Learning Strategy

In this section, we introduce the knowledge employed in the inner variable learning (IVL) strategy and discuss the detailed implementation of the IVL strategy.


### 3.1. Knowledge Employed in the Inner Variable Learning Strategy

As mentioned before, adaptive learning is an important concept in designing evolutionary algorithms. In the basic PSO, each particle flies through the search space aiming to obtain a satisfactory solution, with its velocity and position being dynamically updated referring to its flying experience and its companions’ experience. Two typical learning strategies are included in basic PSO: the first one is the self-learning strategy, which enables each particle to consider its past velocity and personal local best position when determining the next search direction and speed; the second one is the companion learning strategy, by which each particle takes into account the flying experience of its companions (such as learning from the global best position or all its neighbors’ positions) in its space search process. It can be found from the review in Section2 that current learning strategies (or cooperation and interaction) of PSO mainly happen at the swarm or particle level. However, the learning strategy at the variable level is rarely studied. We think that variable level based learning mechanisms would be more effective, since different variables of a particle are evolved independently. In addition, it is also meaningful to extract useful knowledge from the optimization problem to provide more exact and effective guidance for the search behavior of particles.We find that, in many optimization functions, different variables come in the same form; that is, they are symmetric. Such functions usually combine the variables by using the operators of summation and product (“∑” and “∏”). For example, with regard to the Rosenbrock function: f
(
x
)
=
∑
i
=
1
D
(
100
(
x
i
2
-
x
i
+
1
)
2
+
(
x
i
-
1
)
2
), this function is multimodal and nonseparable and exhibits a very narrow valley moving from local optimum to global optimum [50]. Note that different variables in the Rosenbrock function are symmetric, since we can exchange the positions of any two variables x
i and x
j without affecting the function. Then, in the optimal solution, any two variables x
i and x
j are supposed to satisfy the relationship x
i
=
x
j. More generally, let us consider an optimization function f
(
a
x
-
b
), where a
=
[
a
1
,
a
2
,
…
,
a
D
], x
=
[
x
1
,
x
2
,
…
,
x
D
], and b
=
[
b
1
,
b
2
,
…
,
b
D
]. Let us formally define the concept of variable symmetry.Variable Symmetry. two variables are symmetric if they can exchange their positions in the function through some linear transformation without affecting this function.For instance, with regard to the two variablesx
i and x
j in a given function, if we exchange these two variables by letting x
i
=
(
a
j
x
j
+
b
j
-
b
i
)
/
a
i and x
j
=
(
a
i
x
i
+
b
i
-
b
j
)
/
a
j without changing the function, then we say variables x
i and x
j are symmetric. If x
i and x
j are symmetric, then, in the optimal solution, there should exist the relationship a
i
x
i
+
b
i
=
a
j
x
j
+
b
j. As an example, let us take the Shift Rastrigin function. In Rastrigin f
2
(
x
)
=
∑
i
=
1
n
(
y
i
2
-
10
cos
⁡
(
2
π
y
i
)
+
10
), y
i
=
x
i
-
o
i, o is a shift vector. Consider the original Shift Rastrigin function with two variables:
(4)
(
(
x
1
-
o
1
)
2
-
10
cos
⁡
(
2
π
(
x
1
-
o
1
)
)
+
10
)
+
(
(
x
2
-
o
2
)
2
-
10
cos
⁡
(
2
π
(
x
2
-
o
2
)
)
+
10
)
.
Then we let x
1
=
x
2
-
o
2
+
o
1 and x
2
=
x
1
-
o
1
+
o
2 and substitute them into the above form:
(5)
(
(
x
2
-
o
2
+
o
1
-
o
1
)
2
-
10
cos
⁡
(
2
π
(
x
2
-
o
2
+
o
1
-
o
1
)
)
+
10
)
+
(
(
x
1
-
o
1
+
o
2
-
o
2
)
2
-
10
cos
⁡
(
2
π
(
x
1
-
o
1
+
o
2
-
o
2
)
)
+
10
(
x
1
-
o
1
)
2
)
which gives rise to the expression
(6)
(
(
x
2
-
o
2
)
2
-
10
cos
⁡
(
2
π
(
x
2
-
o
2
)
)
+
10
)
+
(
(
x
1
-
o
1
)
2
-
10
cos
⁡
(
2
π
(
x
1
-
o
1
)
)
+
10
)
.It becomes clear that (6) and (4) are equal. The same situation happens for any other two variables. Therefore, the Shift Rastrigin function is completely symmetric. Different variables in the optimal solution of the Shift Rastrigin function have to satisfy x
i
-
o
i
=
x
j
-
o
j.It should be noted that the relation of variable symmetry is reflexive and transitive. We can determine the property of variable symmetry of the optimized function by exchanging positions of any two variables and checking the properties of reflexivity and transitivity. Sometimes, intuitive hints are also helpful.Having noted the knowledge that symmetric variables of the optimal solution of a function should satisfy a certain quantitative relation, we can develop an inner variable learning (IVL) strategy in which different variables in the same function can realize learning from each other during the problem solving process. The idea of this learning strategy is simple and straightforward. Namely, in the course of learning, we check the variables of a particle and determine which variable’s value is the best exemplar of other variables to optimize the function to the highest extent.


### 3.2. Implementation of the Inner Variable Learning Strategy

The previous learning strategies, such as the self-learning strategy and companion learning strategy, enable particles to learn their past flying experience or their companions’ past flying experience, which are at the swarm or particle level. In comparison, the new learning strategy to be presented here is realized at the variable level and thus referred to as inner variable learning (IVL) strategy. The IVL strategy enables a particle to inspect the relation among its variables of the position, determine the exemplar variable for other variables, and then make each variable learn from the exemplar variable by modifying the values of other variables in terms of their quantitative relation with the exemplar variable and the value of the exemplar variable. This strategy will lead particles to fly to a better position quickly. Note that this learning strategy has originated from the knowledge of variable symmetry of optimized functions, such that it can be applied to any function involving symmetric variables.If we execute the IVL strategy on each particle at every generation of PSO, it could be a little time consuming since every time we need to evaluate the effectiveness of each variable and select out an exemplar variable. In addition, performing the IVL strategy too frequently may cause PSO to suffer from premature convergence and make it get trapped in a local optimum at the early stage. That is because once a particle executes the IVL strategy, all its variables will be directly modified according to the value of the exemplar variable. In this study, the particle executes the IVL strategy immediately after it visits the personal best position or jumps out from a local optimum. This is because under these two occasions, the particle may have potential high-quality exemplar variable.At each evolutionary generation, once the particlei determines its personal best position or executes the trap jumping operation, it will execute the inner learning strategy accordingly. Assume that the current personal best position and the corresponding velocity of particle i are x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
D
] and v
i
=
[
v
i
1
,
v
i
2
,
…
,
v
i
D
]. We test the effectiveness of every variable x
i
d in the optimization function and take the best variable as the exemplar variable. That is to say, the exemplar variable is determined by first trying to let every variable be the exemplar variable and then ascertaining the best one as the ultimate exemplar variable. To obtain the effectiveness of variable x
i
d, we just let x
i
d be the temporal exemplar variable, modify the value of any other variable x
i
k according to x
i
k
=
(
a
d
x
i
d
+
b
d
-
b
k
)
/
a
k, and then calculate the function fitness. The temporary exemplar variable resulting in the best function fitness will be the ultimate exemplar variable. Assume that the ultimate exemplar variable is denoted by d. The procedure of the IVL strategy of particle i is described in Algorithm 1. Note that when a particle executes the IVL strategy once, it performs D evaluations of the fitness function.Algorithm 1:InnerVariableLearning(i).
/*particlei has reached its personal best position*/
f
i
t
n
e
s
s
=
f
(
a
x
i
+
b
);
d
=
1;
For  j
=
1:  D
/*everyjth variable as the temporal exemplar variable*/
For  k
=
1:  D
x
^
i
k
=
(
a
j
x
i
j
+
b
j
-
b
k
)
a
k;
End for
If
f
(
a
x
^
i
+
b
)
<
f
i
t
n
e
s
s
f
i
t
n
e
s
s
=
f
(
a
x
^
i
+
b
);
d
=
j; /*d records the best exemplar variable up to now*/
End if
End for
/*all other variables are modified in terms of the exemplar variable marked byd*/
For  j
=
1:  D
x
i
j
=
(
a
d
x
i
d
+
b
d
-
b
j
)
a
j;
End for
If
f
(
a
x
i
+
b
)
<
f
(
p
Bes
t
i
)
p
Bes
t
i
=
x
i;
End if
If
f
(
a
x
i
+
b
)
<
f
(
g
Best
)
g
Best
=
x
i;
End if


## 3.1. Knowledge Employed in the Inner Variable Learning Strategy

As mentioned before, adaptive learning is an important concept in designing evolutionary algorithms. In the basic PSO, each particle flies through the search space aiming to obtain a satisfactory solution, with its velocity and position being dynamically updated referring to its flying experience and its companions’ experience. Two typical learning strategies are included in basic PSO: the first one is the self-learning strategy, which enables each particle to consider its past velocity and personal local best position when determining the next search direction and speed; the second one is the companion learning strategy, by which each particle takes into account the flying experience of its companions (such as learning from the global best position or all its neighbors’ positions) in its space search process. It can be found from the review in Section2 that current learning strategies (or cooperation and interaction) of PSO mainly happen at the swarm or particle level. However, the learning strategy at the variable level is rarely studied. We think that variable level based learning mechanisms would be more effective, since different variables of a particle are evolved independently. In addition, it is also meaningful to extract useful knowledge from the optimization problem to provide more exact and effective guidance for the search behavior of particles.We find that, in many optimization functions, different variables come in the same form; that is, they are symmetric. Such functions usually combine the variables by using the operators of summation and product (“∑” and “∏”). For example, with regard to the Rosenbrock function: f
(
x
)
=
∑
i
=
1
D
(
100
(
x
i
2
-
x
i
+
1
)
2
+
(
x
i
-
1
)
2
), this function is multimodal and nonseparable and exhibits a very narrow valley moving from local optimum to global optimum [50]. Note that different variables in the Rosenbrock function are symmetric, since we can exchange the positions of any two variables x
i and x
j without affecting the function. Then, in the optimal solution, any two variables x
i and x
j are supposed to satisfy the relationship x
i
=
x
j. More generally, let us consider an optimization function f
(
a
x
-
b
), where a
=
[
a
1
,
a
2
,
…
,
a
D
], x
=
[
x
1
,
x
2
,
…
,
x
D
], and b
=
[
b
1
,
b
2
,
…
,
b
D
]. Let us formally define the concept of variable symmetry.Variable Symmetry. two variables are symmetric if they can exchange their positions in the function through some linear transformation without affecting this function.For instance, with regard to the two variablesx
i and x
j in a given function, if we exchange these two variables by letting x
i
=
(
a
j
x
j
+
b
j
-
b
i
)
/
a
i and x
j
=
(
a
i
x
i
+
b
i
-
b
j
)
/
a
j without changing the function, then we say variables x
i and x
j are symmetric. If x
i and x
j are symmetric, then, in the optimal solution, there should exist the relationship a
i
x
i
+
b
i
=
a
j
x
j
+
b
j. As an example, let us take the Shift Rastrigin function. In Rastrigin f
2
(
x
)
=
∑
i
=
1
n
(
y
i
2
-
10
cos
⁡
(
2
π
y
i
)
+
10
), y
i
=
x
i
-
o
i, o is a shift vector. Consider the original Shift Rastrigin function with two variables:
(4)
(
(
x
1
-
o
1
)
2
-
10
cos
⁡
(
2
π
(
x
1
-
o
1
)
)
+
10
)
+
(
(
x
2
-
o
2
)
2
-
10
cos
⁡
(
2
π
(
x
2
-
o
2
)
)
+
10
)
.
Then we let x
1
=
x
2
-
o
2
+
o
1 and x
2
=
x
1
-
o
1
+
o
2 and substitute them into the above form:
(5)
(
(
x
2
-
o
2
+
o
1
-
o
1
)
2
-
10
cos
⁡
(
2
π
(
x
2
-
o
2
+
o
1
-
o
1
)
)
+
10
)
+
(
(
x
1
-
o
1
+
o
2
-
o
2
)
2
-
10
cos
⁡
(
2
π
(
x
1
-
o
1
+
o
2
-
o
2
)
)
+
10
(
x
1
-
o
1
)
2
)
which gives rise to the expression
(6)
(
(
x
2
-
o
2
)
2
-
10
cos
⁡
(
2
π
(
x
2
-
o
2
)
)
+
10
)
+
(
(
x
1
-
o
1
)
2
-
10
cos
⁡
(
2
π
(
x
1
-
o
1
)
)
+
10
)
.It becomes clear that (6) and (4) are equal. The same situation happens for any other two variables. Therefore, the Shift Rastrigin function is completely symmetric. Different variables in the optimal solution of the Shift Rastrigin function have to satisfy x
i
-
o
i
=
x
j
-
o
j.It should be noted that the relation of variable symmetry is reflexive and transitive. We can determine the property of variable symmetry of the optimized function by exchanging positions of any two variables and checking the properties of reflexivity and transitivity. Sometimes, intuitive hints are also helpful.Having noted the knowledge that symmetric variables of the optimal solution of a function should satisfy a certain quantitative relation, we can develop an inner variable learning (IVL) strategy in which different variables in the same function can realize learning from each other during the problem solving process. The idea of this learning strategy is simple and straightforward. Namely, in the course of learning, we check the variables of a particle and determine which variable’s value is the best exemplar of other variables to optimize the function to the highest extent.


## 3.2. Implementation of the Inner Variable Learning Strategy

The previous learning strategies, such as the self-learning strategy and companion learning strategy, enable particles to learn their past flying experience or their companions’ past flying experience, which are at the swarm or particle level. In comparison, the new learning strategy to be presented here is realized at the variable level and thus referred to as inner variable learning (IVL) strategy. The IVL strategy enables a particle to inspect the relation among its variables of the position, determine the exemplar variable for other variables, and then make each variable learn from the exemplar variable by modifying the values of other variables in terms of their quantitative relation with the exemplar variable and the value of the exemplar variable. This strategy will lead particles to fly to a better position quickly. Note that this learning strategy has originated from the knowledge of variable symmetry of optimized functions, such that it can be applied to any function involving symmetric variables.If we execute the IVL strategy on each particle at every generation of PSO, it could be a little time consuming since every time we need to evaluate the effectiveness of each variable and select out an exemplar variable. In addition, performing the IVL strategy too frequently may cause PSO to suffer from premature convergence and make it get trapped in a local optimum at the early stage. That is because once a particle executes the IVL strategy, all its variables will be directly modified according to the value of the exemplar variable. In this study, the particle executes the IVL strategy immediately after it visits the personal best position or jumps out from a local optimum. This is because under these two occasions, the particle may have potential high-quality exemplar variable.At each evolutionary generation, once the particlei determines its personal best position or executes the trap jumping operation, it will execute the inner learning strategy accordingly. Assume that the current personal best position and the corresponding velocity of particle i are x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
D
] and v
i
=
[
v
i
1
,
v
i
2
,
…
,
v
i
D
]. We test the effectiveness of every variable x
i
d in the optimization function and take the best variable as the exemplar variable. That is to say, the exemplar variable is determined by first trying to let every variable be the exemplar variable and then ascertaining the best one as the ultimate exemplar variable. To obtain the effectiveness of variable x
i
d, we just let x
i
d be the temporal exemplar variable, modify the value of any other variable x
i
k according to x
i
k
=
(
a
d
x
i
d
+
b
d
-
b
k
)
/
a
k, and then calculate the function fitness. The temporary exemplar variable resulting in the best function fitness will be the ultimate exemplar variable. Assume that the ultimate exemplar variable is denoted by d. The procedure of the IVL strategy of particle i is described in Algorithm 1. Note that when a particle executes the IVL strategy once, it performs D evaluations of the fitness function.Algorithm 1:InnerVariableLearning(i).
/*particlei has reached its personal best position*/
f
i
t
n
e
s
s
=
f
(
a
x
i
+
b
);
d
=
1;
For  j
=
1:  D
/*everyjth variable as the temporal exemplar variable*/
For  k
=
1:  D
x
^
i
k
=
(
a
j
x
i
j
+
b
j
-
b
k
)
a
k;
End for
If
f
(
a
x
^
i
+
b
)
<
f
i
t
n
e
s
s
f
i
t
n
e
s
s
=
f
(
a
x
^
i
+
b
);
d
=
j; /*d records the best exemplar variable up to now*/
End if
End for
/*all other variables are modified in terms of the exemplar variable marked byd*/
For  j
=
1:  D
x
i
j
=
(
a
d
x
i
d
+
b
d
-
b
j
)
a
j;
End for
If
f
(
a
x
i
+
b
)
<
f
(
p
Bes
t
i
)
p
Bes
t
i
=
x
i;
End if
If
f
(
a
x
i
+
b
)
<
f
(
g
Best
)
g
Best
=
x
i;
End if


## 4.  The Trap Detection and Jumping out Techniques

The PSO algorithm is easy to implement and has been empirically shown to perform well on numerous optimization problems. However, it may easily get trapped in a local optimum when solving complex multimodal problems [35], such that effective mechanisms for particle detecting and jumping out of trap state become necessary.Many researchers noted that it is helpful to improve the performance of PSO by intelligently tuning the particle’s behaviors according to the current evolutionary states, which is usually evaluated by the statistic information of the swarm’s distribution. For instance, Zhan et al. [17] determined the evolutionary states (i.e., exploration, exploitation, convergence, and jumping out) with the statistic of the position distribution information of the population, which was used for guiding the automatic parameter adjustment. The distribution information was obtained by calculating the mean distance of each particle to all the other particles. Chen et al. [51] also used the distance between particles to evaluate the diversity of PSO in the evolutionary process. They incorporated diversity into the objective function to optimize the optimization problem as well as guarantee the diversity of the overall swarm. It can be seen that the above methods are established at the swarm level, which means that the authors checked the diversity (or distribution information) of the overall swarm each time and adjusted the behaviors of particles accordingly. This may be not good for the adaptation and flexibility of a single particle, though. Although sometimes the diversity of the whole swarm is satisfactory according to certain criteria, some of the particles may actually have been trapped in optima.To enable a particle to react to its solution space search situation more efficiently, we will check the diversity of particlei when g
Bes
t
i has not been improved continuously for M generations. In addition, let m
i denote the number of stagnation generation of particle i. At each generation, if the g
Bes
t
i has not improved, m
i is increased by 1; otherwise, m
i will be set to 1. Two criteria are considered to determine whether the particle is trapped in a local optimum.Now let us take particlei as an example. The first criterion concerns the difference between the function fitness of the previous position x
i
′′ and that of the current position x
i of particle i. Let δ denote a threshold value of the difference of function fitness. In our study, we set δ
=
α
·
t
/
maxEF, where maxEF denotes the maximum number of function fitness evaluations, t denotes the current consumed number of function fitness evaluations, and α is scale coefficient. δ changes adaptively with the evolution of particles. If the function fitness difference is lower than δ, the particle may be considered to be trapped in a local optimum:
(7)
|
f
(
x
i
′′
)
-
f
(
x
i
)
|
<
δ
.The second criterion is as follows: if the distance between two consecutive positions of particlei is smaller than a predefined threshold value ξ, particle i may have been trapped:
(8)
∥
x
i
′′
-
x
i
∥
=
∑
d
D
(
x
i
d
′′
-
x
i
d
)
2
D
<
ξ
.We setξ
=
D
·
β
2, where D is the number of variables and β is the scale coefficient.However, none of above two criterions can judge the trap state independently. That is because, on the one hand, as for the first criterion, a particle may have very close function fitness at two distant positions (meaning the particle is not trapped). On the other hand, the optimization function may be very sensitive to the landscape, so small deviation of the position of a particle may result in significant difference (similarly, meaning the particle is not trapped) of the function fitness. Therefore, the two criterions should be taken into account simultaneously. And if both of the above criterions are met, particlei is safely considered to be trapped in a local optimum.Once we detect that a particle is trapped, a mutation operator will be employed to help particles to escape from the local optimum. Mutation is an indispensable operator in Genetic Algorithm. Due to the effectiveness of mutation operator in enhancing the diversity of population-based algorithms, it is also popularly adopted in many PSO variants. Generally, Cauchy mutation [18, 51] and Gaussian mutation [17, 49] methods are mostly used. Andrews [46] utilized a PSO algorithm incorporating different mutation operators to cope with both mathematical and constrained optimization problems. His results showed that the addition of a mutation operator to PSO could enhance optimization performance and insight was gained into how to design mutation operators dependent on the nature of the problem being optimized. The Gaussian mutation operator is utilized in the discussed PSO variant:
(9)
x
i
d
′
=
x
i
d
+
ω
·
(
x
max
⁡
,
d
-
x
min
⁡
,
d
)
·
λ
·
Gaussian
(
0,1
)
,
where x
max
⁡
,
d and x
min
⁡
,
d stand for the upper and low bound of the dth variable of the optimization problem and ω and λ are coefficients controlling the mutation scale:
(10)
λ
=
1
-
σ
·
t
maxEF
.Like the inertia weight parameter, mutation scale parameterλ linearly decreases with the evolutionary process, that is, starts declining from 1.0 to (1
-
σ) gradually. σ (0
<
σ
<
1) reflects the decreased speed. The linear decrease of the mutation scale parameter enables the PSO to exhibit higher exploration capability at the early stage of the evolution and strong exploitation ability at the later evolutionary stage.In addition, ifg
Bes
t
i has not been improved for each N successive generation, particle i will perform the mutation operator. The PSO variant integrated with the IVL strategy, trap detection and jumping out strategy, and the basic PSO is shown as Algorithm 2.Algorithm 2:Procedure of PSO-IVL.
Initialize the positionx
i and velocity   v
i   for each particle i;
Letg
Bes
t
i
←
x
i and calculate the g
Best;
Sett
=
0;
Initialize parametersp
s, δ, ξ, maxEF, M and N
While(t
<
maxEF)
For i
=1: p
s
If  m
i
%
M
=
=
0  /*determine whether particle i gets trapped*/
If
|
f
(
a
x
i
′′
+
b
)
-
f
(
a
x
i
+
b
)
|
<
δ && |
|
x
i
′′
-
x
i
|
|
=
∑
d
D
(
x
i
d
′′
-
x
i
d
)
2
/
p
s
<
ξ
λ
=
1
-
0.9
·
t
/
maxEF
x
i
d
=
x
i
d
+
ω
·
(
x
max
⁡
,
d
-
x
min
⁡
,
d
)
·
λ
·
Gaussian
(
0,1
)
Execute the strategy of InnerVariableLearning(i);
t
=
t
+
D; /*increase the number of fitness evaluations*/
End if
End if
If
m
i
%
N
=
=
0
x
i
d
=
x
i
d
+
ω
·
(
x
max
⁡
,
d
-
x
min
⁡
,
d
)
·
λ
·
Gaussian
(
0,1
)
Execute the strategy of InnerVariableLearning(i);
t
=
t
+
D;
End if
/*Update the position and velocity of the ith particle*/
v
i
d
=
w
×
v
i
d
+
c
1
×
r
1
d
×
(
p
B
e
s
t
i
d
-
x
i
d
)
+
c
2
×
r
2
d
×
(
g
B
e
s
t
d
-
x
i
d
);
x
i
d
=
x
i
d
+
v
i
d
t
=
t
+
1;
If
f
(
a
x
i
+
b
)
<
f
(
p
Bes
t
i
)
p
Bes
t
i
←
x
i;
Execute the strategy of InnerVariableLearning(i);
t
=
t
+
D;
m
i
=
1
Else
m
i
=
m
i
+
1;
End if
If
f
(
a
x
i
+
b
)
<
f
(
g
Best
)
g
Best
=
x
i;
End if
End for
If
g
Best
is the optimal solution
Break;
End if
w
=
0.9
-
0.5
·
t
/
maxEva;
End while


## 5. Experimental Tests

### 5.1. Experimental Setting

In order to evaluate the performance of PSO-IVL, we compare it with some other state-of-the-art PSO alternatives. The parameters of the algorithms selected for comparison are summarized in Table1. For comparison, the experimental settings of benchmark PSO variants are similar to that of [24]; that is, the population size of particles is 50 and the number of variables (dimensions) of each test function is set to 30, which is a typical setting encountered in the literature. Choosing proper parameters for an evolutionary algorithm is always time consuming since parameters are always related. According to analysis of extensive experimental work, the parameters of the PSO-IVL algorithm are specified as follows: p
s
=
20, maxEF
=
300,000, c
1
=
c
2
=
2.0, α
=
0.1, δ
=
0.1
·
t
/
maxEF, β
=
0.1, ξ
=
0.01
D, ω
=
0.05, σ
=
0.9, λ
=
1
-
(
0.9
·
t
/
maxEF
), M
=
50, and N
=
200.Table 1
PSO variants used in comparative studies.
PSO variants
Parameters setting
PSO-w: PSO with inertia weight [31]
w
=
0.9
-
0.5
·
g
maxGen, f
1
=
f
2
=
1.49
PSO-cf: PSO with constriction factor [32]
w
=
0.729, c
1
=
c
2
=
1.49445
PSO-cf-local: local version of PSO with constriction factor [16]
w
=
0.729, c
1
=
c
2
=
1.49445
FIPS-PSO: fully informed PSO [33]
w
=
0.729, c
1
=
c
2
=
2.0
CPSO-H: cooperative based PSO [34]
w
=
0.9
-
0.5
·
g
maxGen, c
1
=
c
2
=
2.0
CLPSO: comprehensive learning PSO [35]
w
=
0.9
-
0.5
·
g
maxGen, c
1
=
c
2
=
1.49445
SLPSO: self-adaptive learning based Particle Swarm Optimization [24]
p
r
o
S
T
R
i
=
0.25, G
s
=
10, w
i
=
log
⁡
(
p
s
-
i
+
1
)
/
(
log
⁡
(
1
)
+
⋯
+
log
⁡
(
p
s
)
)To realize a comprehensive analysis of the PSO-IVL and other PSO variants listed above, we conducted a series of experiments by employing 18 classical numerical optimization problems with different characteristics, including unimodality, multimodality, rotation, ill-conditionality, misscale, and noise. The optimization functions used in the experiments are listed below;M is the orthogonal matrix and o is the shifted vector:Sphere:f
1
(
x
)
=
∑
i
=
1
n
y
i
2, y
=
x
-
o,
Rastrigin:f
2
(
x
)
=
∑
i
=
1
n
(
y
i
2
-
10
cos
⁡
(
2
π
y
i
)
+
10
), y
=
x
-
o,
Rosenbrock:f
3
(
x
)
=
∑
i
=
1
n
(
100
(
y
i
2
-
y
i
+
1
)
2
+
(
y
i
-
1
)
2
), y
=
x
-
o,
Griewank:f
4
(
z
)
=
(
1
/
4000
)
∑
i
=
1
n
y
i
2
+
1
-
∏
i
=
1
n
cos
⁡
(
y
i
/
i
), y
=
x
-
o,
Ackley:f
5
(
x
)
=
-
20
·
exp
⁡
(
-
0.2
(
1
/
n
)
∑
i
=
1
n
y
i
2
)
+
20
-
exp
⁡
(
(
1
/
n
)
∑
i
=
1
n
cos
⁡
(
2
π
y
i
)
)
+
e, y
=
x
-
o,
Schwefel 1.2:f
6
(
x
)
=
∑
i
=
1
n
(
∑
j
=
1
i
y
j
2
), y
=
x
-
o,
Scaled Rosenbrock 100:f
7
(
x
)
=
∑
i
=
1
n
(
100
(
(
a
i
y
i
)
2
-
(
a
i
+
1
y
i
+
1
)
)
2
+
(
a
i
y
i
-
1
)
2
)
,
a
i
=
10
0
(
i
-
1
)
/
(
n
-
1
), y
=
x
-
o,
Scaled Rastrigin 10:f
8
(
x
)
=
∑
i
=
1
n
(
(
a
i
y
i
)
2
-
10
cos
⁡
(
2
π
(
a
i
y
i
)
)
+
10
)
,
a
i
=
1
0
(
i
-
1
)
/
(
n
-
1
), y
=
x
-
o,
Noise Schwefel 1.2:f
9
(
x
)
=
∑
i
=
1
n
(
∑
j
=
1
i
y
j
2
)
·
(
1
+
0.4
|
N
(
0,1
)
|
), y
=
x
-
o,
Rotated Sphere:f
10
(
x
)
=
∑
i
=
1
n
z
i
2
,
z
=
M
·
(
x
-
o
),
Rotated Schwefel 2.21:f
11
(
x
)
=
max
⁡
|
z
i
|, z
=
M
·
(
x
-
o
),
Rotated Ellipse:f
12
(
x
)
=
∑
i
=
1
n
(
2
0
(
i
-
1
)
/
(
n
-
1
)
z
i
)
2, z
=
M
·
x,
Rotated Rosenbrock:f
13
(
x
)
=
∑
i
=
1
n
(
100
(
z
i
2
-
x
i
+
1
)
2
+
(
z
i
-
1
)
2
), z
=
M
·
(
x
-
o
),
Rotated Ackley:f
14
(
x
)
=
-
20
·
exp
⁡
(
-
0.2
(
1
/
n
)
∑
i
=
1
n
z
i
2
)
+
20
-
exp
⁡
(
(
1
/
n
)
∑
i
=
1
n
cos
⁡
(
2
π
z
i
)
)
+
e, z
=
M
·
(
x
-
o
),
Rotated Griewank:f
15
(
z
)
=
(
1
/
4000
)
∑
i
=
1
n
z
i
2
+
1
-
∏
i
=
1
n
cos
⁡
(
z
i
/
i
), z
=
M
·
(
x
-
o
),
Rotated Rastrigin:f
16
(
x
)
=
∑
i
=
1
n
(
z
i
2
-
10
cos
⁡
(
2
π
z
i
)
+
10
), z
=
M
·
(
x
-
o
),
Noise Rotated Schwefel 1.2:f
17
(
x
)
=
∑
i
=
1
n
(
∑
j
=
1
i
z
j
2
)
·
(
1
+
0.4
|
N
(
0,1
)
|
), z
=
M
·
(
x
-
o
),
Noise Rotated Quadric:f
18
(
x
)
=
∑
i
=
1
n
i
z
i
4
+
random
[
0,1
), z
=
M
·
(
x
-
o
).


### 5.2. Comparative Analysis

The simulation results for each optimized function produced by PSO-w, PSO-cf, PSO-cf-local, FIPS-PSO, CPSO-H, CLPSO, and SLPSO are reported from [24]. Each optimization function is run by each PSO variant 30 times. The computational results are listed in Table 2 including the average value of the results along with their standard deviation. Suc denotes the number of successful runs. According to [24], a run is considered to be successful (i.e., has obtained a satisfactory solution) if a solution is obtained whose fitness value is not worse than (
f
i
t
(
x
*
)
+
(
1.0
E
-
5
)
), where x
* is the theoretical global optimal solution. FEs denotes the average number of function evaluations required to find the satisfactory solution when all 30 runs are successful.Table 2
Optimization results obtained for the test functions; the best results are shown in boldface.
FunctionsAlgorithm
Mean
StdDev
Suc
FEs
Mean
StdDev
Suc
FEs
Mean
StdDev
Suc
FEs
Sphere
Rastrigin
Rosenbrock
PSO-w
0.00
E
+
00
0.00
E
+
00
30
193,017
1.75
E
+
01
5.97
E
+
00
0
6.46
E
+
01
8.01
E
+
01
0
PSO-cf
0.00E + 00
0.00E + 00
30
20,333
6.45
E
+
01
2.05
E
+
01
0
8.88
E
+
00
1.46
E
+
01
0
PSO-cf-local
0.00
E
+
00
0.00
E
+
00
30
40,295
4.10
E
+
01
1.13
E
+
01
0
2.98
E
+
01
4.07
E
+
01
0
FIPS-PSO
0.00
E
+
00
0.00
E
+
00
30
146,179
6.39
E
+
01
1.12
E
+
01
0
2.52
E
+
01
9.08
E
-
01
0
CPSO-H
0.00
E
+
00
1.49
E
-
08
30
149,044
3.32
E
-
02
1.82
E
-
01
29
2.77
E
+
01
2.86
E
+
01
0
CLPSO
0.00
E
+
00
0.00
E
+
00
30
122,161
0.00
E
+
00
0.00
E
+
00
30
195,815
4.95
E
+
00
3.79
E
+
00
0
SLPSO
0.00
E
+
00
0.00
E
+
00
30
43,980
0.00
E
+
00
0.00
E
+
00
30
196,749
2.66
E
-
01
1.01
E
+
00
8
PSO-IVL
0.00
E
+
00
0.00
E
+
00
30
81,950
0.00E + 00
0.00E + 00
30
99,430
0.00E + 00
0.00E + 00
30
136,250
Algorithms
Griewank
Schwefel 1.2
Ackley
PSO-w
8.73
E
-
02
1.18
E
-
01
2
0.00
E
+
00
1.11
E
+
00
0
2.18
E
+
05
4.83
E
-
14
30
211,209
PSO-cf
1.71
E
-
02
1.78
E
-
02
8
1.29
E
-
12
3.88
E
-
11
30
151,095
8.51
E
-
01
1.01
E
+
00
15
PSO-cf-local
5.34
E
-
03
7.46
E
-
03
17
1.53
E
-
04
1.68
E
-
04
1
0.00
E
+
00
0.00
E
+
00
30
56,976
FIPS-PSO
2.72
E
-
07
1.18
E
-
06
30
183,581
2.08
E
+
02
8.98
E
+
01
0
1.39
E
-
08
2.98
E
-
09
30
CPSO-H
1.20
E
-
01
2.18
E
-
01
4
2.79
E
+
03
5.98
E
+
03
2.44
E
-
05
1.35
E
-
05
1
CLPSO
0.00
E
+
00
0.00
E
+
00
30
151,708
1.16
E
+
03
2.44
E
+
02
0
7.77
E
-
13
1.49
E
-
13
30
166,425
SLPSO
1.81
E
-
03
4.79
E
-
03
26
7.69
E
-
13
4.27
E
-
13
30
149,872
0.00E + 00
0.00E + 00
30
51,585
PSO-IVL
0.00E + 00
0.00E + 00
30
81,960
0.00E + 00
0.00E + 00
30
92,600
0.00
E
+
00
0.00
E
+
00
30
83,330
Algorithms
Scaled Rosenbrock 100
Scaled Rastrigin 10
Noise Schwefel 1.2
PSO-w
2.18
E
+
05
8.24
E
+
05
0
2.18
E
+
05
6.59
E
+
00
0
4.68
E
+
02
3.14
E
+
02
0
PSO-cf
2.57
E
+
04
4.91
E
+
04
0
2.57
E
+
04
2.85
E
+
01
0
1.99
E
+
02
2.89
E
+
02
0
PSO-cf-local
9.11
E
+
04
3.72
E
+
05
0
2.57
E
+
04
1.35
E
+
01
0
5.71
E
+
02
4.59
E
+
02
0
FIPS-PSO
7.37
E
+
04
3.14
E
+
05
0
7.37
E
+
04
9.23
E
+
00
0
1.52
E
+
03
5.44
E
+
02
0
CPSO-H
3.71
E
+
06
4.38
E
+
06
0
1.23
E
+
07
1.86
E
-
07
0
2.44
E
+
04
8.49
E
+
03
0
CLPSO
1.09
E
+
03
3.45
E
+
03
0
0.00
E
+
00
0.00
E
+
00
30
226,863
7.25
E
+
03
1.37
E
+
03
0
SLPSO
7.88
E
+
02
2.56
E
+
03
0
0.00
E
+
00
0.00
E
+
00
30
234,253
2.32
E
-
02
8.92
E
-
02
0
PSO-IVL
2.32E + 01
2.54E − 03
0
0.00E + 00
0.00E + 00
30
83,660
0.00E + 00
0.00E + 00
30
97,530
Algorithms
Rotated Sphere
Rotated Schwefel 2.21
Rotated Ellipse
PSO-w
0.00
E
+
00
4.56
E
-
14
30
201,639
2.50
E
-
01
3.03
E
-
01
0
1.15
E
+
02
1.49
E
+
02
0
PSO-cf
0.00E + 00
0.00E + 00
30
24,010
4.11
E
-
02
1.40
E
-
01
17
3.46
E
-
03
1.13
E
-
02
0
PSO-cf-local
0.00
E
+
00
0.00
E
+
00
30
47,289
7.98
E
-
02
2.03
E
-
01
14
7.66
E
-
01
1.09
E
+
00
0
FIPS-PSO
7.54
E
-
13
3.26
E
-
13
30
1.36
E
-
04
4.89
E
-
05
0
1.51
E
+
03
7.14
E
+
02
0
CPSO-H
8.10
E
-
08
1.02
E
-
07
30
5.43
E
+
01
7.52
+
00
0
7.63
E
+
03
6.69
E
+
03
0
CLPSO
4.21
E
-
10
6.18
E
-
10
30
190,125
9.71
E
-
01
2.38
E
-
01
0
4.07
E
+
03
9.37
E
+
02
0
SLPSO
0.00
E
+
00
0.00
E
+
00
30
49,396
4.51
E
-
11
1.16
E
-
10
30
81,481
2.22
E
-
12
7.06
E
-
13
30
146,787
PSO-IVL
0.00
E
+
00
0.00
E
+
00
30
84,750
0.00E + 00
0.00E + 00
30
129,880
0.00E + 00
0.00E + 00
30
97800
Algorithms
Rotated Rosenbrock
Rotated Ackley
Rotated Griewank
PSO-w
4.62
E
+
05
7.88
E
+
05
0
2.34
E
+
00
7.59
E
-
01
1
2.07
E
-
01
3.84
E
-
01
0
PSO-cf
1.18
E
+
03
2.98
E
+
03
0
1.95
E
+
00
9.55
E
-
01
4
9.85
E
-
03
7.99
E
-
03
8
PSO-cf-local
6.16
E
+
02
1.93
E
+
03
0
2.40
E
-
01
4.98
E
-
01
24
1.04
E
-
02
1.03
E
-
02
9
FIPS-PSO
2.89
E
+
01
4.15
E
+
00
0
2.24
E
-
08
5.60
E
-
09
30
213,274
1.14
E
-
03
3.00
E
-
03
8
CPSO-H
1.62
E
+
03
3.78
E
+
03
0
1.76
E
+
01
3.96
E
+
00
0
1.66
E
+
00
2.10
E
-
01
0
CLPSO
2.56
E
+
02
3.04
E
+
02
0
1.16
E
-
02
9.10
E
-
03
0
3.36
E
-
02
2.00
E
-
02
0
SLPSO
1.20
E
+
02
3.81
E
+
02
0
0.00E + 00
0.00E + 00
30
52,575
5.34
E
-
03
6.82
E
-
03
17
PSO-IVL
2.38E + 01
2.80E − 03
0
0.00
E
+
00
0.00
E
+
00
30
95,230
0.00E + 00
0.00E + 00
30
84910
Algorithms
Rotated Rastrigin
Noise Rotated Schwefe1.2
Noise Quadric
PSO-w
8.29
E
+
01
5.00
E
+
01
0
4.88
E
+
02
3.51
E
+
02
0
1.64
E
-
02
6.28
E
-
03
0
PSO-cf
1.09
E
+
02
3.63
E
+
01
0
2.39
E
+
02
2.97
E
+
02
0
6.07
E
-
03
2.83
E
-
03
0
PSO-cf-local
5.26
E
+
01
1.43
E
+
01
0
5.96
E
+
02
3.86
E
+
02
0
6.84
E
-
03
2.05
E
-
03
0
FIPS-PSO
1.75
E
+
02
8.79
E
+
00
0
1.47
E
+
03
5.40
E
+
02
0
8.61
E
-
03
2.12
E
-
03
0
CPSO-H
3.77
E
+
02
1.10
E
+
02
0
2.54
E
+
04
1.15
E
+
04
0
5.30
E
-
02
2.17
E
-
02
0
CLPSO
1.03
E
+
02
1.26
E
+
01
0
6.96
E
+
03
1.49
E
+
03
0
1.86
E
-
02
7.92
E
-
03
0
SLPSO
3.15
E
+
01
6.41
E
+
00
0
7.79
E
-
04
2.24
E
-
03
7
2.43
E
-
03
7.71
E
-
04
0
PSO-IVL
0.00E + 00
0.00E + 00
30
116,660
0.00E + 00
0.00E + 00
30
102,080
7.55E − 05
7.51E − 08
0From the computational results given in Table2, we can conclude that PSO-IVL produced the best result for every test function. However, for Sphere function f
1
(
x
), Ackley function f
5
(
x
), Rotated Sphere function f
10
(
x
), and Rotated Ackley function f
14
(
x
), although PSO-IVL can find the optimal solution, its efficiency is not the highest. Moreover, PSO-IVL can find the optimal solution for all optimization functions only except Scaled Rosenbrock 100 f
7
(
x
), Rotated Rosenbrock f
13
(
x
), and Noise Quadric f
18
(
x
). Especially for some noisy and rotated functions, such as Noise Schwefel 1.2 f
9
(
x
), Rotated Ellipse f
12
(
x
), Rotated Rastrigin f
16
(
x
), and Noisy Rotated Schwefel 1.2 f
17
(
x
), other peer PSO variants cannot effectively acquire satisfactory solutions; however, PSO-IVL is successful in these cases. As a result, based on the reported results, Table 2, we conclude that the performance of PSO-IVL reported on the test functions is fairly competitive compared to other PSO variants.


### 5.3. Convergence Analysis of PSO-IVL

To provide an intuitive illustration of the optimization behavior of PSO-IVL, in Figure1, we display the evolutionary process of a particle and the global-best-so-far solution when PSO-IVL is utilized to solve each optimization function. It should be noted that in the basic PSO and many typical PSO variants, for a particle, the number of generations and the number of fitness evaluations are usually equal. However, the situation is different in our study. At any generation, if the particle does not perform the IVL strategy, a single fitness evaluation is required; thus in this case one generation is corresponding to one fitness evaluation. In comparison, if the particle executes the IVL strategy at a given generation, then there are D (D is the number of variables associated with the functions considered) numbers of fitness evaluation operation to complete. As a result, in this situation, one generation is related to D of fitness evaluations. The evolutionary process of other PSO alternatives can be found in [24].Evolutionary process of a particle and the global best solution with regard to each test function.
(a)
Sphere function
(b)
Rastrigin function
(c)
Rosenbrock function
(d)
Griewank function
(e)
Schwefel 1.2 function
(f)
Ackley function
(g)
Scaled Rosenbrock 100 function
(h)
Scaled Rastrigin 10 function
(i)
Noise Schwefel 1.2 function
(j)
Rotated Sphere function
(k)
Rotated Schwefel 2.21 function
(l)
Rotated Ellipse function
(m)
Rotated Rosenbrock function
(n)
Rotated Ackley function
(o)
Rotated Griewank function
(p)
Rotated Rastrigin function
(q)
Noise Rotated Schwefel 1.2 function
(r)
Noise Rotated Quadric functionThe larger figure shows how the fitness of the position visited by a particle in PSO-IVL changes with the increase of the number of function fitness evaluations while the smaller figure visualizes how the fitness of the global-best-so-far solution evolves. Since the global-best-so-far solution converges to a good value very fast, it would be unclear to see its overall evolution. We enlarge and display the evolutionary process of global-best-so-far solution at some stages.Two observations are worth making here. First, the fitness of the particle fluctuates quite substantially at the early stage of PSO-IVL but gradually diminishes and finally converges to the optimal solution. This is because of the trap detection and jumping out strategy adopted in PSO-IVL. During the evolutionary process, if the particle is detected to be trapped in a local optimum, the particle performs Gaussian mutation, which adaptively enables the particle to randomly move to a new position. The adaptive Gaussian mutation operator makes the particle fluctuate to a large extent in the early stage of optimization. In addition, the learning and interaction strategies realized within the swarm enable the particle to always converge to a good solution.Second, the particle exhibits a certain probability to determine high-quality solutions at the early stage. The reason is that PSO-IVL employs the IVL strategy, which enables the particle to learn among different variables. As a result, just a good value of a variable can quickly lead the particle to reach a position with good fitness.The smaller figures indicate that PSO-IVL can converge to a high-quality solution fast on each test function and finally find the optimal solutions for most functions. This can be explained by the fact that the IVL strategy indeed enables the particle to find high-quality position at high speed and high probability; meanwhile, the trap detection and jumping out strategy can help particles escape from local optima. As a conclusion, the combination of the IVL strategy, the trap detection and jumping out strategy, and the basic PSO forms an efficient optimization environment.


### 5.4. Analysis of the Impact of the Inner Variable Learning Strategy

As we know, some optimization functions may be partial symmetric. In this case, when we use PSO-IVL to carry out optimization, only a portion of their variables can be utilized to realize the IVL strategy. Therefore, it is important to investigate the impact of the number of variables being involved in the IVL strategy. For convenient comparison, we selected six complex optimization functions (where it is hard to obtain an optimal or near optimal solution for these functions without using the IVL strategy) and solved them by using PSO-IVL with a different number of variables involved in the IVL strategy. This means that, even though in these functions all variables are symmetric, each time we only set a certain number of variables to run the IVL strategy. The obtained results are listed in Table3, where n stands for the number of variables executed by the IVL strategy. We set n to 0, 5, 10, 15, 25, and 30, respectively. When n is equal to 0, this means that in fact the IVL strategy is not invoked. When n equals 30, all variables are viewed as symmetric and adopted to execute the IVL strategy.Table 3
Results of different numbers of variables being executed with the IVL strategy.
Functions
n
=
0
n
=
5
n
=
10
n
=
15
n
=
20
n
=
25
n
=
30
Scaled Rosenbrock 100:f
7
8
.
45
E
+
0
4
2
.
34
E
+
0
4
5
.
82
E
+
0
3
3
.
65
E
+
0
3
1.48
E
+
02
7.55
E
+
01
2
.
32
E
+
01
Noise Schwefel 1.2:f
9
9
.
82
E
+
0
2
6.37
E
+
0
1
1.46
E
+
00
8
.
17
E
-
04
3
.
2
5
E
-
0
8
9.72
E
-
1
3
0.00
E
+
00
Rotated Schwefel 2.21:f
11
6.63
E
-
01
1
.
16
E
-
01
3.61
E
-
02
8.28
E
-
0
4
2.52
E
-
08
1.07
E
-
14
0.00
E
+
00
Rotated Ellipse:f
12
2.91
E
+
0
2
3.97
E
+
00
1.76
E
-
0
3
5.11
E
-
0
6
5.34
E
-
1
1
6.28
E
-
19
0.00
E
+
00
Rotated Rosenbrock:f
13
1
.
82
E
+
0
4
8
.
82
E
+
0
3
2
.
57
E
+
0
3
9
.
07
E
+
02
2.93
E
+
0
2
5
.
64
E
+
0
1
2
.
87
E
+
01
Noise Rotated Schwefe1.2:f
17
2.77
E
+
03
5.75
E
+
02
6.03
E
+
00
4.23
E
-
0
4
2.45
E
-
09
1.87
E
-
15
0.00
E
+
00From the results displayed in Table3, we can find that, for every selected optimization function, the solution obtained by PSO-IVL is getting better with the increase of the values of n. Therefore, we can come to some conclusions. (
1
) The effectiveness of the IVL strategy is significant. (
2
) More variables in an optimization function being utilized the IVL strategy (i.e., more variables are symmetric) will lead to much better solutions. (
3
) Even if there are only less symmetric variables in an optimization function, the employment of the IVL strategy on these variables has potential to improve the optimization process.


## 5.1. Experimental Setting

In order to evaluate the performance of PSO-IVL, we compare it with some other state-of-the-art PSO alternatives. The parameters of the algorithms selected for comparison are summarized in Table1. For comparison, the experimental settings of benchmark PSO variants are similar to that of [24]; that is, the population size of particles is 50 and the number of variables (dimensions) of each test function is set to 30, which is a typical setting encountered in the literature. Choosing proper parameters for an evolutionary algorithm is always time consuming since parameters are always related. According to analysis of extensive experimental work, the parameters of the PSO-IVL algorithm are specified as follows: p
s
=
20, maxEF
=
300,000, c
1
=
c
2
=
2.0, α
=
0.1, δ
=
0.1
·
t
/
maxEF, β
=
0.1, ξ
=
0.01
D, ω
=
0.05, σ
=
0.9, λ
=
1
-
(
0.9
·
t
/
maxEF
), M
=
50, and N
=
200.Table 1
PSO variants used in comparative studies.
PSO variants
Parameters setting
PSO-w: PSO with inertia weight [31]
w
=
0.9
-
0.5
·
g
maxGen, f
1
=
f
2
=
1.49
PSO-cf: PSO with constriction factor [32]
w
=
0.729, c
1
=
c
2
=
1.49445
PSO-cf-local: local version of PSO with constriction factor [16]
w
=
0.729, c
1
=
c
2
=
1.49445
FIPS-PSO: fully informed PSO [33]
w
=
0.729, c
1
=
c
2
=
2.0
CPSO-H: cooperative based PSO [34]
w
=
0.9
-
0.5
·
g
maxGen, c
1
=
c
2
=
2.0
CLPSO: comprehensive learning PSO [35]
w
=
0.9
-
0.5
·
g
maxGen, c
1
=
c
2
=
1.49445
SLPSO: self-adaptive learning based Particle Swarm Optimization [24]
p
r
o
S
T
R
i
=
0.25, G
s
=
10, w
i
=
log
⁡
(
p
s
-
i
+
1
)
/
(
log
⁡
(
1
)
+
⋯
+
log
⁡
(
p
s
)
)To realize a comprehensive analysis of the PSO-IVL and other PSO variants listed above, we conducted a series of experiments by employing 18 classical numerical optimization problems with different characteristics, including unimodality, multimodality, rotation, ill-conditionality, misscale, and noise. The optimization functions used in the experiments are listed below;M is the orthogonal matrix and o is the shifted vector:Sphere:f
1
(
x
)
=
∑
i
=
1
n
y
i
2, y
=
x
-
o,
Rastrigin:f
2
(
x
)
=
∑
i
=
1
n
(
y
i
2
-
10
cos
⁡
(
2
π
y
i
)
+
10
), y
=
x
-
o,
Rosenbrock:f
3
(
x
)
=
∑
i
=
1
n
(
100
(
y
i
2
-
y
i
+
1
)
2
+
(
y
i
-
1
)
2
), y
=
x
-
o,
Griewank:f
4
(
z
)
=
(
1
/
4000
)
∑
i
=
1
n
y
i
2
+
1
-
∏
i
=
1
n
cos
⁡
(
y
i
/
i
), y
=
x
-
o,
Ackley:f
5
(
x
)
=
-
20
·
exp
⁡
(
-
0.2
(
1
/
n
)
∑
i
=
1
n
y
i
2
)
+
20
-
exp
⁡
(
(
1
/
n
)
∑
i
=
1
n
cos
⁡
(
2
π
y
i
)
)
+
e, y
=
x
-
o,
Schwefel 1.2:f
6
(
x
)
=
∑
i
=
1
n
(
∑
j
=
1
i
y
j
2
), y
=
x
-
o,
Scaled Rosenbrock 100:f
7
(
x
)
=
∑
i
=
1
n
(
100
(
(
a
i
y
i
)
2
-
(
a
i
+
1
y
i
+
1
)
)
2
+
(
a
i
y
i
-
1
)
2
)
,
a
i
=
10
0
(
i
-
1
)
/
(
n
-
1
), y
=
x
-
o,
Scaled Rastrigin 10:f
8
(
x
)
=
∑
i
=
1
n
(
(
a
i
y
i
)
2
-
10
cos
⁡
(
2
π
(
a
i
y
i
)
)
+
10
)
,
a
i
=
1
0
(
i
-
1
)
/
(
n
-
1
), y
=
x
-
o,
Noise Schwefel 1.2:f
9
(
x
)
=
∑
i
=
1
n
(
∑
j
=
1
i
y
j
2
)
·
(
1
+
0.4
|
N
(
0,1
)
|
), y
=
x
-
o,
Rotated Sphere:f
10
(
x
)
=
∑
i
=
1
n
z
i
2
,
z
=
M
·
(
x
-
o
),
Rotated Schwefel 2.21:f
11
(
x
)
=
max
⁡
|
z
i
|, z
=
M
·
(
x
-
o
),
Rotated Ellipse:f
12
(
x
)
=
∑
i
=
1
n
(
2
0
(
i
-
1
)
/
(
n
-
1
)
z
i
)
2, z
=
M
·
x,
Rotated Rosenbrock:f
13
(
x
)
=
∑
i
=
1
n
(
100
(
z
i
2
-
x
i
+
1
)
2
+
(
z
i
-
1
)
2
), z
=
M
·
(
x
-
o
),
Rotated Ackley:f
14
(
x
)
=
-
20
·
exp
⁡
(
-
0.2
(
1
/
n
)
∑
i
=
1
n
z
i
2
)
+
20
-
exp
⁡
(
(
1
/
n
)
∑
i
=
1
n
cos
⁡
(
2
π
z
i
)
)
+
e, z
=
M
·
(
x
-
o
),
Rotated Griewank:f
15
(
z
)
=
(
1
/
4000
)
∑
i
=
1
n
z
i
2
+
1
-
∏
i
=
1
n
cos
⁡
(
z
i
/
i
), z
=
M
·
(
x
-
o
),
Rotated Rastrigin:f
16
(
x
)
=
∑
i
=
1
n
(
z
i
2
-
10
cos
⁡
(
2
π
z
i
)
+
10
), z
=
M
·
(
x
-
o
),
Noise Rotated Schwefel 1.2:f
17
(
x
)
=
∑
i
=
1
n
(
∑
j
=
1
i
z
j
2
)
·
(
1
+
0.4
|
N
(
0,1
)
|
), z
=
M
·
(
x
-
o
),
Noise Rotated Quadric:f
18
(
x
)
=
∑
i
=
1
n
i
z
i
4
+
random
[
0,1
), z
=
M
·
(
x
-
o
).


## 5.2. Comparative Analysis

The simulation results for each optimized function produced by PSO-w, PSO-cf, PSO-cf-local, FIPS-PSO, CPSO-H, CLPSO, and SLPSO are reported from [24]. Each optimization function is run by each PSO variant 30 times. The computational results are listed in Table 2 including the average value of the results along with their standard deviation. Suc denotes the number of successful runs. According to [24], a run is considered to be successful (i.e., has obtained a satisfactory solution) if a solution is obtained whose fitness value is not worse than (
f
i
t
(
x
*
)
+
(
1.0
E
-
5
)
), where x
* is the theoretical global optimal solution. FEs denotes the average number of function evaluations required to find the satisfactory solution when all 30 runs are successful.Table 2
Optimization results obtained for the test functions; the best results are shown in boldface.
FunctionsAlgorithm
Mean
StdDev
Suc
FEs
Mean
StdDev
Suc
FEs
Mean
StdDev
Suc
FEs
Sphere
Rastrigin
Rosenbrock
PSO-w
0.00
E
+
00
0.00
E
+
00
30
193,017
1.75
E
+
01
5.97
E
+
00
0
6.46
E
+
01
8.01
E
+
01
0
PSO-cf
0.00E + 00
0.00E + 00
30
20,333
6.45
E
+
01
2.05
E
+
01
0
8.88
E
+
00
1.46
E
+
01
0
PSO-cf-local
0.00
E
+
00
0.00
E
+
00
30
40,295
4.10
E
+
01
1.13
E
+
01
0
2.98
E
+
01
4.07
E
+
01
0
FIPS-PSO
0.00
E
+
00
0.00
E
+
00
30
146,179
6.39
E
+
01
1.12
E
+
01
0
2.52
E
+
01
9.08
E
-
01
0
CPSO-H
0.00
E
+
00
1.49
E
-
08
30
149,044
3.32
E
-
02
1.82
E
-
01
29
2.77
E
+
01
2.86
E
+
01
0
CLPSO
0.00
E
+
00
0.00
E
+
00
30
122,161
0.00
E
+
00
0.00
E
+
00
30
195,815
4.95
E
+
00
3.79
E
+
00
0
SLPSO
0.00
E
+
00
0.00
E
+
00
30
43,980
0.00
E
+
00
0.00
E
+
00
30
196,749
2.66
E
-
01
1.01
E
+
00
8
PSO-IVL
0.00
E
+
00
0.00
E
+
00
30
81,950
0.00E + 00
0.00E + 00
30
99,430
0.00E + 00
0.00E + 00
30
136,250
Algorithms
Griewank
Schwefel 1.2
Ackley
PSO-w
8.73
E
-
02
1.18
E
-
01
2
0.00
E
+
00
1.11
E
+
00
0
2.18
E
+
05
4.83
E
-
14
30
211,209
PSO-cf
1.71
E
-
02
1.78
E
-
02
8
1.29
E
-
12
3.88
E
-
11
30
151,095
8.51
E
-
01
1.01
E
+
00
15
PSO-cf-local
5.34
E
-
03
7.46
E
-
03
17
1.53
E
-
04
1.68
E
-
04
1
0.00
E
+
00
0.00
E
+
00
30
56,976
FIPS-PSO
2.72
E
-
07
1.18
E
-
06
30
183,581
2.08
E
+
02
8.98
E
+
01
0
1.39
E
-
08
2.98
E
-
09
30
CPSO-H
1.20
E
-
01
2.18
E
-
01
4
2.79
E
+
03
5.98
E
+
03
2.44
E
-
05
1.35
E
-
05
1
CLPSO
0.00
E
+
00
0.00
E
+
00
30
151,708
1.16
E
+
03
2.44
E
+
02
0
7.77
E
-
13
1.49
E
-
13
30
166,425
SLPSO
1.81
E
-
03
4.79
E
-
03
26
7.69
E
-
13
4.27
E
-
13
30
149,872
0.00E + 00
0.00E + 00
30
51,585
PSO-IVL
0.00E + 00
0.00E + 00
30
81,960
0.00E + 00
0.00E + 00
30
92,600
0.00
E
+
00
0.00
E
+
00
30
83,330
Algorithms
Scaled Rosenbrock 100
Scaled Rastrigin 10
Noise Schwefel 1.2
PSO-w
2.18
E
+
05
8.24
E
+
05
0
2.18
E
+
05
6.59
E
+
00
0
4.68
E
+
02
3.14
E
+
02
0
PSO-cf
2.57
E
+
04
4.91
E
+
04
0
2.57
E
+
04
2.85
E
+
01
0
1.99
E
+
02
2.89
E
+
02
0
PSO-cf-local
9.11
E
+
04
3.72
E
+
05
0
2.57
E
+
04
1.35
E
+
01
0
5.71
E
+
02
4.59
E
+
02
0
FIPS-PSO
7.37
E
+
04
3.14
E
+
05
0
7.37
E
+
04
9.23
E
+
00
0
1.52
E
+
03
5.44
E
+
02
0
CPSO-H
3.71
E
+
06
4.38
E
+
06
0
1.23
E
+
07
1.86
E
-
07
0
2.44
E
+
04
8.49
E
+
03
0
CLPSO
1.09
E
+
03
3.45
E
+
03
0
0.00
E
+
00
0.00
E
+
00
30
226,863
7.25
E
+
03
1.37
E
+
03
0
SLPSO
7.88
E
+
02
2.56
E
+
03
0
0.00
E
+
00
0.00
E
+
00
30
234,253
2.32
E
-
02
8.92
E
-
02
0
PSO-IVL
2.32E + 01
2.54E − 03
0
0.00E + 00
0.00E + 00
30
83,660
0.00E + 00
0.00E + 00
30
97,530
Algorithms
Rotated Sphere
Rotated Schwefel 2.21
Rotated Ellipse
PSO-w
0.00
E
+
00
4.56
E
-
14
30
201,639
2.50
E
-
01
3.03
E
-
01
0
1.15
E
+
02
1.49
E
+
02
0
PSO-cf
0.00E + 00
0.00E + 00
30
24,010
4.11
E
-
02
1.40
E
-
01
17
3.46
E
-
03
1.13
E
-
02
0
PSO-cf-local
0.00
E
+
00
0.00
E
+
00
30
47,289
7.98
E
-
02
2.03
E
-
01
14
7.66
E
-
01
1.09
E
+
00
0
FIPS-PSO
7.54
E
-
13
3.26
E
-
13
30
1.36
E
-
04
4.89
E
-
05
0
1.51
E
+
03
7.14
E
+
02
0
CPSO-H
8.10
E
-
08
1.02
E
-
07
30
5.43
E
+
01
7.52
+
00
0
7.63
E
+
03
6.69
E
+
03
0
CLPSO
4.21
E
-
10
6.18
E
-
10
30
190,125
9.71
E
-
01
2.38
E
-
01
0
4.07
E
+
03
9.37
E
+
02
0
SLPSO
0.00
E
+
00
0.00
E
+
00
30
49,396
4.51
E
-
11
1.16
E
-
10
30
81,481
2.22
E
-
12
7.06
E
-
13
30
146,787
PSO-IVL
0.00
E
+
00
0.00
E
+
00
30
84,750
0.00E + 00
0.00E + 00
30
129,880
0.00E + 00
0.00E + 00
30
97800
Algorithms
Rotated Rosenbrock
Rotated Ackley
Rotated Griewank
PSO-w
4.62
E
+
05
7.88
E
+
05
0
2.34
E
+
00
7.59
E
-
01
1
2.07
E
-
01
3.84
E
-
01
0
PSO-cf
1.18
E
+
03
2.98
E
+
03
0
1.95
E
+
00
9.55
E
-
01
4
9.85
E
-
03
7.99
E
-
03
8
PSO-cf-local
6.16
E
+
02
1.93
E
+
03
0
2.40
E
-
01
4.98
E
-
01
24
1.04
E
-
02
1.03
E
-
02
9
FIPS-PSO
2.89
E
+
01
4.15
E
+
00
0
2.24
E
-
08
5.60
E
-
09
30
213,274
1.14
E
-
03
3.00
E
-
03
8
CPSO-H
1.62
E
+
03
3.78
E
+
03
0
1.76
E
+
01
3.96
E
+
00
0
1.66
E
+
00
2.10
E
-
01
0
CLPSO
2.56
E
+
02
3.04
E
+
02
0
1.16
E
-
02
9.10
E
-
03
0
3.36
E
-
02
2.00
E
-
02
0
SLPSO
1.20
E
+
02
3.81
E
+
02
0
0.00E + 00
0.00E + 00
30
52,575
5.34
E
-
03
6.82
E
-
03
17
PSO-IVL
2.38E + 01
2.80E − 03
0
0.00
E
+
00
0.00
E
+
00
30
95,230
0.00E + 00
0.00E + 00
30
84910
Algorithms
Rotated Rastrigin
Noise Rotated Schwefe1.2
Noise Quadric
PSO-w
8.29
E
+
01
5.00
E
+
01
0
4.88
E
+
02
3.51
E
+
02
0
1.64
E
-
02
6.28
E
-
03
0
PSO-cf
1.09
E
+
02
3.63
E
+
01
0
2.39
E
+
02
2.97
E
+
02
0
6.07
E
-
03
2.83
E
-
03
0
PSO-cf-local
5.26
E
+
01
1.43
E
+
01
0
5.96
E
+
02
3.86
E
+
02
0
6.84
E
-
03
2.05
E
-
03
0
FIPS-PSO
1.75
E
+
02
8.79
E
+
00
0
1.47
E
+
03
5.40
E
+
02
0
8.61
E
-
03
2.12
E
-
03
0
CPSO-H
3.77
E
+
02
1.10
E
+
02
0
2.54
E
+
04
1.15
E
+
04
0
5.30
E
-
02
2.17
E
-
02
0
CLPSO
1.03
E
+
02
1.26
E
+
01
0
6.96
E
+
03
1.49
E
+
03
0
1.86
E
-
02
7.92
E
-
03
0
SLPSO
3.15
E
+
01
6.41
E
+
00
0
7.79
E
-
04
2.24
E
-
03
7
2.43
E
-
03
7.71
E
-
04
0
PSO-IVL
0.00E + 00
0.00E + 00
30
116,660
0.00E + 00
0.00E + 00
30
102,080
7.55E − 05
7.51E − 08
0From the computational results given in Table2, we can conclude that PSO-IVL produced the best result for every test function. However, for Sphere function f
1
(
x
), Ackley function f
5
(
x
), Rotated Sphere function f
10
(
x
), and Rotated Ackley function f
14
(
x
), although PSO-IVL can find the optimal solution, its efficiency is not the highest. Moreover, PSO-IVL can find the optimal solution for all optimization functions only except Scaled Rosenbrock 100 f
7
(
x
), Rotated Rosenbrock f
13
(
x
), and Noise Quadric f
18
(
x
). Especially for some noisy and rotated functions, such as Noise Schwefel 1.2 f
9
(
x
), Rotated Ellipse f
12
(
x
), Rotated Rastrigin f
16
(
x
), and Noisy Rotated Schwefel 1.2 f
17
(
x
), other peer PSO variants cannot effectively acquire satisfactory solutions; however, PSO-IVL is successful in these cases. As a result, based on the reported results, Table 2, we conclude that the performance of PSO-IVL reported on the test functions is fairly competitive compared to other PSO variants.


## 5.3. Convergence Analysis of PSO-IVL

To provide an intuitive illustration of the optimization behavior of PSO-IVL, in Figure1, we display the evolutionary process of a particle and the global-best-so-far solution when PSO-IVL is utilized to solve each optimization function. It should be noted that in the basic PSO and many typical PSO variants, for a particle, the number of generations and the number of fitness evaluations are usually equal. However, the situation is different in our study. At any generation, if the particle does not perform the IVL strategy, a single fitness evaluation is required; thus in this case one generation is corresponding to one fitness evaluation. In comparison, if the particle executes the IVL strategy at a given generation, then there are D (D is the number of variables associated with the functions considered) numbers of fitness evaluation operation to complete. As a result, in this situation, one generation is related to D of fitness evaluations. The evolutionary process of other PSO alternatives can be found in [24].Evolutionary process of a particle and the global best solution with regard to each test function.
(a)
Sphere function
(b)
Rastrigin function
(c)
Rosenbrock function
(d)
Griewank function
(e)
Schwefel 1.2 function
(f)
Ackley function
(g)
Scaled Rosenbrock 100 function
(h)
Scaled Rastrigin 10 function
(i)
Noise Schwefel 1.2 function
(j)
Rotated Sphere function
(k)
Rotated Schwefel 2.21 function
(l)
Rotated Ellipse function
(m)
Rotated Rosenbrock function
(n)
Rotated Ackley function
(o)
Rotated Griewank function
(p)
Rotated Rastrigin function
(q)
Noise Rotated Schwefel 1.2 function
(r)
Noise Rotated Quadric functionThe larger figure shows how the fitness of the position visited by a particle in PSO-IVL changes with the increase of the number of function fitness evaluations while the smaller figure visualizes how the fitness of the global-best-so-far solution evolves. Since the global-best-so-far solution converges to a good value very fast, it would be unclear to see its overall evolution. We enlarge and display the evolutionary process of global-best-so-far solution at some stages.Two observations are worth making here. First, the fitness of the particle fluctuates quite substantially at the early stage of PSO-IVL but gradually diminishes and finally converges to the optimal solution. This is because of the trap detection and jumping out strategy adopted in PSO-IVL. During the evolutionary process, if the particle is detected to be trapped in a local optimum, the particle performs Gaussian mutation, which adaptively enables the particle to randomly move to a new position. The adaptive Gaussian mutation operator makes the particle fluctuate to a large extent in the early stage of optimization. In addition, the learning and interaction strategies realized within the swarm enable the particle to always converge to a good solution.Second, the particle exhibits a certain probability to determine high-quality solutions at the early stage. The reason is that PSO-IVL employs the IVL strategy, which enables the particle to learn among different variables. As a result, just a good value of a variable can quickly lead the particle to reach a position with good fitness.The smaller figures indicate that PSO-IVL can converge to a high-quality solution fast on each test function and finally find the optimal solutions for most functions. This can be explained by the fact that the IVL strategy indeed enables the particle to find high-quality position at high speed and high probability; meanwhile, the trap detection and jumping out strategy can help particles escape from local optima. As a conclusion, the combination of the IVL strategy, the trap detection and jumping out strategy, and the basic PSO forms an efficient optimization environment.


## 5.4. Analysis of the Impact of the Inner Variable Learning Strategy

As we know, some optimization functions may be partial symmetric. In this case, when we use PSO-IVL to carry out optimization, only a portion of their variables can be utilized to realize the IVL strategy. Therefore, it is important to investigate the impact of the number of variables being involved in the IVL strategy. For convenient comparison, we selected six complex optimization functions (where it is hard to obtain an optimal or near optimal solution for these functions without using the IVL strategy) and solved them by using PSO-IVL with a different number of variables involved in the IVL strategy. This means that, even though in these functions all variables are symmetric, each time we only set a certain number of variables to run the IVL strategy. The obtained results are listed in Table3, where n stands for the number of variables executed by the IVL strategy. We set n to 0, 5, 10, 15, 25, and 30, respectively. When n is equal to 0, this means that in fact the IVL strategy is not invoked. When n equals 30, all variables are viewed as symmetric and adopted to execute the IVL strategy.Table 3
Results of different numbers of variables being executed with the IVL strategy.
Functions
n
=
0
n
=
5
n
=
10
n
=
15
n
=
20
n
=
25
n
=
30
Scaled Rosenbrock 100:f
7
8
.
45
E
+
0
4
2
.
34
E
+
0
4
5
.
82
E
+
0
3
3
.
65
E
+
0
3
1.48
E
+
02
7.55
E
+
01
2
.
32
E
+
01
Noise Schwefel 1.2:f
9
9
.
82
E
+
0
2
6.37
E
+
0
1
1.46
E
+
00
8
.
17
E
-
04
3
.
2
5
E
-
0
8
9.72
E
-
1
3
0.00
E
+
00
Rotated Schwefel 2.21:f
11
6.63
E
-
01
1
.
16
E
-
01
3.61
E
-
02
8.28
E
-
0
4
2.52
E
-
08
1.07
E
-
14
0.00
E
+
00
Rotated Ellipse:f
12
2.91
E
+
0
2
3.97
E
+
00
1.76
E
-
0
3
5.11
E
-
0
6
5.34
E
-
1
1
6.28
E
-
19
0.00
E
+
00
Rotated Rosenbrock:f
13
1
.
82
E
+
0
4
8
.
82
E
+
0
3
2
.
57
E
+
0
3
9
.
07
E
+
02
2.93
E
+
0
2
5
.
64
E
+
0
1
2
.
87
E
+
01
Noise Rotated Schwefe1.2:f
17
2.77
E
+
03
5.75
E
+
02
6.03
E
+
00
4.23
E
-
0
4
2.45
E
-
09
1.87
E
-
15
0.00
E
+
00From the results displayed in Table3, we can find that, for every selected optimization function, the solution obtained by PSO-IVL is getting better with the increase of the values of n. Therefore, we can come to some conclusions. (
1
) The effectiveness of the IVL strategy is significant. (
2
) More variables in an optimization function being utilized the IVL strategy (i.e., more variables are symmetric) will lead to much better solutions. (
3
) Even if there are only less symmetric variables in an optimization function, the employment of the IVL strategy on these variables has potential to improve the optimization process.


## 6. Conclusions

In this work, we have introduced a new knowledge-driven PSO variant (PSO-IVL), which integrates the generic PSO, a novel inner variable learning (IVL) strategy, and a novel trap detection and jumping out strategy. The IVL strategy is based on the knowledge that the values of symmetric variables in an optimization function will satisfy certain relations in the optimal solution. The trap detection and jumping out strategy is established at the level of individual particles rather than the swarm level, which improves the flexibility and adaptability of particles and helps particles escape from local optima. Experimental simulations completed for some classical optimization functions demonstrate the competitive performance of PSO-IVL, which is superior to all the selected state-of-the-art peer PSO variants.Although we choose completely symmetric functions in which all variables are symmetric to test our algorithm’s performance, the proposed algorithm can also be applied to partial symmetric functions (in which only some variables are symmetric). In this case, we just need to let the IVL strategy be performed on the symmetric variables. Moreover, the IVL strategy can be integrated into existing PSO alternatives.PSO-IVL will be effective in optimization functions possessing symmetric variables. However, it is meaningful for three reasons. Firstly, it can obtain good solutions (usually the optimal solutions) for many benchmark functions. Secondly and more importantly, the efficiency of PSO-IVL indicates that the combination of the problem-oriented knowledge and PSO would be a promising direction for applying PSO to optimization problems. Thirdly, since symmetry is a general phenomenon existing in nature and engineering, it could be beneficial to check the variable symmetry when we try to use PSO or other evolutionary algorithms to solve a new complex optimization problem.The future research can be carried out in three directions. One can look at discovering and formalizing domain knowledge (e.g., generic quantitative relations among different variables) existing in optimization problems and integrate it into the design of more advanced PSO schemes. The second one is to attempt to apply PSO-IVL to some real-life optimization problems. The third direction could be to formulate a general framework for guiding knowledge discovery in optimization problems and its integration into evolutionary algorithms.



---

*Source: 713490-2014-01-23.xml*