arXiv:1703.06263v1 [] 18 Mar 2017

An Adaptive Framework to Tune the Coordinate
Systems in Evolutionary Algorithms
Zhi-Zhong Liu, Yong Wang, Shengxiang Yang, and Ke Tang *†‡§
March 21, 2017

Abstract
In the evolutionary computation research community, the performance of most
evolutionary algorithms (EAs) depends strongly on their implemented coordinate
system. However, the commonly used coordinate system is fixed and not well
suited for different function landscapes, EAs thus might not search efficiently. To
overcome this shortcoming, in this paper we propose a framework, named ACoS,
to adaptively tune the coordinate systems in EAs. In ACoS, an Eigen coordinate
system is established by making use of the cumulative population distribution information, which can be obtained based on a covariance matrix adaptation strategy
and an additional archiving mechanism. Since the population distribution information can reflect the features of the function landscape to some extent, EAs in
the Eigen coordinate system have the capability to identify the modality of the
function landscape. In addition, the Eigen coordinate system is coupled with the
original coordinate system, and they are selected according to a probability vector. The probability vector aims to determine the selection ratio of each coordinate
system for each individual, and is adaptively updated based on the collected information from the offspring. ACoS has been applied to two of the most popular
EA paradigms, i.e., particle swarm optimization (PSO) and differential evolution
(DE), for solving 30 test functions with 30 and 50 dimensions at the 2014 IEEE
Congress on Evolutionary Computation. The experimental studies demonstrate its
effectiveness.

1

Introduction

Evolutionary algorithms (EAs) are a class of population-based meta-heuristic algorithms inspired by biological evolution. EAs exploit bio-inspired mechanisms such as
* Zhi-Zhong Liu is with the School of Information Science and Engineering, Central South University,
Changsha 410083, China (Email: zhizhongliu@csu.edu.cn)
† Y. Wang is with the School of Information Science and Engineering, Central South University, Changsha
410083, China, and also with the Centre for Computational Intelligence (CCI), School of Computer Science
and Informatics, De Montfort University, Leicester LE1 9BH, UK. (Email: ywang@csu.edu.cn)
‡ S. Yang is with the Centre for Computational Intelligence (CCI), School of Computer Science and
Informatics, De Montfort University, Leicester LE1 9BH, UK. (Email: syang@dmu.ac.uk)
§ K. Tang is with Department of Computer Science and Engineering Southern University of Science and
Technology, Shenzhen 518055, China. (Email: ketang@ustc.edu.cn)

1

reproduction, mutation, crossover, and selection to evolve a population of candidate
solutions toward the optimal solution. Up to now, numerous EA paradigms, such as
evolutionary programming (EP) [5], evolution strategy (ES) [18], genetic algorithm
(GA) [10], genetic programming (GP) [12], differential evolution (DE) [24], and
particle swarm optimization (PSO) [4], have been proposed. Compared with other
types of optimization methods, EAs have some advantages such as ease of use, simple
structure, efficiency, and robustness. Therefore, EAs have been broadly applied to diverse fields such as art [20], economics [14], route planning [17], robotics [23], and
graphic processing [15].
For most EAs, their performance relies crucially on their implemented coordinate
system. However, the original coordinate system, which is the most frequently used coordinate system in current EAs, is fixed throughout the evolutionary process. Under this
condition, EAs may fail to produce promising solutions matching the requirements of
different function landscapes or even one function landscape at different evolutionary
stages. As a result, it is difficult for EAs to search efficiently in the original coordinate
system.
To remedy this issue, in some variants of ES and DE, the Eigen coordinate system is established by making use of the population distribution information. Since the
population distribution information can reflect the features of the function landscape
to a certain degree, EAs implemented in the Eigen coordinate system thus possess the
capability to identify the modality of the function landscape and search efficiently. In
2001, a famous ES called CMA-ES was proposed by Hansen and Ostermeier [9]. In
CMA-ES, an Eigen coordinate system is established by utilizing the cumulative population distribution information (i.e., the current and historical population distribution
information). Afterward, the offspring population is sampled from this Eigen coordinate system. Overall, CMA-ES shows very fast convergence speed and is significantly
superior to the ordinary ES. Recently, three attempts (i.e., DE/eig [6] , CoBiDE [26],
and CPI-DE [27]) have been made to enhance DE’s performance by implementing
the crossover operator in both the Eigen coordinate system and the original coordinate
system. In DE/eig and CoBiDE, only the current population distribution information
is extracted to establish the Eigen coordinate system, while like CMA-ES, in CPI-DE
the cumulative population distribution information is employed to construct the Eigen
coordinate system. It is interesting to note that all these three attempts in DE draw the
similar conclusions: 1) each coordinate system has its own advantages and is suitable
for certain kinds of optimization problems, and 2) combining these two coordinate systems can obtain better performance than just using one of them during the evolution.
The above conclusions motivate us to design an adaptive scheme to make full use of
these two coordinate systems.
This paper presents an adaptive framework, called ACoS, to tune the coordinate
systems in EAs. ACoS takes advantage of a covariance matrix adaptation strategy and
an additional archiving mechanism to extract cumulative population distribution information, with the aim of establishing the Eigen coordinate system. Moreover, this
Eigen coordinate system is synthesized with the original coordinate system, and they
are selected based on a probability vector. This probability vector determines the selection ratio of each coordinate system for each individual and is adaptively updated
according to the collected information from the offspring. ACoS has been applied to
2

two of the most popular EA paradigms: PSO and DE. The effectiveness of ACoS has
been validated by comprehensive experimental studies on 30 test functions with 30
and 50 dimensions at the 2014 IEEE Congress on Evolutionary Computation (IEEE
CEC2014) [13].
The main contributions of this paper are summarized as follows:
• This paper provides a new point of view toward how to describe an evolutionary
operator in the original coordinate system, and also offers a convenient transformation from an evolutionary operator in the original coordinate system to the
corresponding evolutionary operator in the Eigen coordinate system.
• A simple yet effective approach is proposed to establish the Eigen coordinate
system, which consists of two main elements, i.e., a covariance matrix adaptation strategy and an additional archiving mechanism. In comparison with the
previous methods, the cumulative population distribution information derived
from our approach is more sufficient.
• By using a probability vector, this paper presents an adaptive scheme to select an
appropriate coordinate system from the original coordinate system and the Eigen
coordinate system for each individual during the evolution.
• The proposed framework (i.e., ACoS) can be readily applied to various EAs. In
this paper, we have verified that ACoS is able to improve the performance of two
of the most popular EA paradigms: PSO and DE. To the best of our knowledge,
it is the first attempt to improve PSO’s performance by adjusting the coordinate
systems in an adaptive fashion.
The rest of this paper is organized as follows. Section 2 briefly introduces PSO and
DE. Section 3 presents the coordinate systems and their related work. The proposed
ACoS and its implementation details are presented in Section 4. The experimental
results and the performance comparisons are given in Section 5. Finally, Section 6
concludes this paper.

2

Particle Swarm Optimization (PSO) and Differential
Evolution (DE)

PSO and DE have become two of the most popular EA paradigms. In this section, we
will briefly introduce them.

2.1

Particle Swarm Optimization (PSO)

PSO [4] is a population-based stochastic search technique inspired by swarm behavior.
It searches with a population (called swarm) of candidate solutions (called particles or
individuals). Each particle moves around the search space to seek the global optimum,
and its movement is guided by its own personal historical best experience as well as
the entire swarm’s best experience. Due to ease of use and efficiency, PSO has been
successful applied to a variety of real-world optimization problems.
3

PSO contains two core equations: the velocity updating equation and the position
updating equation. At generation g, PSO updates the dth dimension of the ith particle’s
g
g
g
velocity ~vig = [vi,1
, vi,2
, ..., vi,D
]T and position ~xgi = [xgi,1 , xgi,2 , ..., xgi,D ]T as follows:
g+1
g
g
vi,d
= vi,d
+ c1 r1,d (Pbesti,d
− xgi,d ) + c2 r2,d (Ggbest,d − xgi,d )

(1)

g+1
g
xg+1
i,d = vi,d + xi,d

(2)

where i ∈ {1, . . . , N P }, d ∈ {1, . . . , D}, N P is the population size, D is the dig
g
g
g
mension of the search space, P~besti
= [Pbesti,1
, Pbesti,2
, ..., Pbesti,D
]T denotes the ith
g
g
g
g
T
~
particle’s historical best position, G
best = [Gbest,1 , Gbest,2 , ..., Gbest,D ] means the entire swarm’s best position, c1 and c2 are the acceleration parameters, and r1,d and r2,d
refer to two uniformly distributed random numbers between 0 and 1.
From Eq.(1) and Eq.(2), it is apparent that PSO works dimension by dimension.
Based on the updating of each dimension, the whole velocity and position of a particle
are updated as follows:
g
~ g − ~xg )
~vig+1 = ~vig + c1 R1 (P~besti
− ~xgi ) + c2 R2 (G
i
best

(3)

~xg+1
= ~vig+1 + ~xgi
i

(4)

where R1 = diag(r1,1 , r1,2 , . . . , r1,D ) and R2 = diag(r2,1 , r2,2 , . . . , r2,D ).
Since PSO’s inception, many researchers have improved its performance in different ways. One way is to control or adjust the particle’s velocity. Shi and Eberhart [22]
incorporated an inertial weight w into the original PSO’s velocity updating, and Eq.(3)
is thus modified into Eq.(5)
g
~ g − ~xg )
~vig+1 = w~vig + c1 R1 (P~besti
− ~xgi ) + c2 R2 (G
i
best

(5)

The only difference between Eq.(3) and Eq.(5) is that in Eq.(5) w is attached to ~vig . In
Eq.(5), the value of w decreases linearly from 0.9 to 0.4 over the course of search. It
is because a larger w in the early stage of evolution is beneficial to exploration, and
a smaller w in the later stage of evolution can facilitate the exploitation. In addition,
Clerc and Kennedy [2] introduced a constriction factor χ to reformulate the particle’s
velocity updating:
g
~ g − ~xg )]
~vig+1 = χ[~vig + c1 R1 (P~besti
− ~xgi ) + c2 R2 (G
(6)
i
best
p
where χ = 2/|2 − ϕ − ϕ2 − 4ϕ| and ϕ = c1 + c2 . χ is preferably set to 0.729
together with c1 = c2 = 2.05. For the sake of convenience, the PSO variants in [22]
and [2] are called PSO-w and PSO-cf in this paper, respectively, which are two of the
most popular PSO variants.

2.2

Differential Evolution (DE)

DE [24] is another simple yet efficient EA paradigm which has been successfully used
to deal with a wide spectrum of optimization problems [3]. Similar to other EAs, DE
searches with a population of N P individuals: Pg = {~xgi = [xgi,1 , xgi,2 , ...xgi,D ]T , i =
4

1, 2, ..., N P }, where g denotes the generation number, N P means the population size,
and D refers to the dimension of the search space. In DE, at generation g = 0, the
initial population P0 is randomly sampled from the search space. After initialization,
DE employs mutation, crossover, and selection operators to steer the population toward
the global optimum.
Mutation: The aim of the mutation operator is to generate a mutant vector ~vig for
each individual ~xgi (also called a target vector). The following are four commonly used
mutation operators in the literature:
• DE/rand/1
~vig = ~xgr1 + F × (~xgr2 − ~xgr3 )

(7)

~vig = ~xgr1 + F × (~xgr2 − ~xgr3 ) + F × (~xgr4 − ~xgr5 )

(8)

• DE/rand/2

• DE/current-to-best/1
~vig+ = ~xgi + F × (~xgbest − ~xgi ) + F × (~xgr1 − ~xgr2 )

(9)

• DE/rand-to-best/1
~vig = ~xgr1 + F × (~xgbest − ~xgr1 ) + F × (~xgr2 − ~xgr3 )

(10)

where the indices r1 , r2 , r3 , r4 , and r5 are mutually different integers randomly selected from [1, 2, ...N P ] and are also different from i, ~xgbest denotes the best target
vector in the current population, and F refers to the scaling factor.
Crossover: After mutation, the crossover operator is performed on each pair of ~xgi
and ~vig to generate a trial vector ~ugi = [ugi,1 , ugi,2 , ..., ugi,D ]T . The binomial crossover is
expressed as follows:
( g
vi,j , if randj ≤ CR or j = jrand
g
ui,j =
(11)
xgi,j , otherwise
where jrand is a random integer between 1 and D, randj is a uniformly distributed
random number between 0 and 1 for each j, and CR denotes the crossover control
parameter. The condition “j = jrand ” makes ~ugi different from ~xgi by at least one
dimension.
From Eq.(11), it is easy to see that the crossover operator is implemented dimension
by dimension. The updating of the whole trial vector can be described as follows:
~ugi = ~xgi + Cr (~vig − ~xgi )
(12)
(
1, if randj ≤ CR or j = jrand
where Cr = diag(s1 , s2 , ..., sD ), and sj =
,j =
0, otherwise
1, 2, ..., D.
5

Selection: The selection operator is designed to select the better one between ~ugi
and ~xgi to enter the next generation. For a minimization problem, it can be described as
follows:
( g
~ui , if f (~ugi ) ≤ f (~xgi )
g+1
(13)
~xi =
~xgi , otherwise
DE has also attracted much attention and a considerable number of DE variants
have been proposed. Among them, jDE [1], SaDE [16], and JADE [28] are three
state-of-the-art DE variants. jDE is a DE with self-adaptive control parameter settings.
It encodes the control parameters F and CR into individual level and evolves them.
For each individual, the new F is randomly generated within [0.1, 0.9] with a probability τ1 , and the new CR takes a random value from 0.0 to 1.0 with a probability
τ2 . SaDE adaptively adjusts the trial vector generation strategies and control parameter settings simultaneously by learning from the previous experience. It maintains a
strategy candidate pool which contains four different trial vector generation strategies.
Each individual selects a trial vector generation strategy from that pool in an adaptive way to yield its trial vector. JADE is an adaptive DE with an optional external
archive. In JADE, the “DE/current-to-pbest/1” mutation operator is proposed which
is a generalization of the classical “DE/current-to-best/1”. This mutation operator exploits the information of multiple best individuals in the population. Moreover, the
optional external archive utilizes the difference between the current solutions and the
recently explored inferior solutions to produce promising directions. JADE generates
F and CR based on their historical record of success.

3
3.1

The Coordinate Systems and Their Related Work
The coordinate systems

In this subsection, we will introduce the original coordinate system, the Eigen coordinate system, and the difference between them.
3.1.1

The original coordinate system

The original coordinate system is a default coordinate system in most EAs. It is formed
by the columns of the unity matrix I, and thus is a fixed coordinate system. The evolutionary operators of PSO and DE in Section 2 are conducted in the original coordinate
system. By analyzing these evolutionary operators, we find that each of them can be
described with the usage of three elements: the coefficients, the diagonal matrixes, and
the vectors. Therefore, we propose a new point of view toward how to describe an
evolutionary operator in the original coordinate system:
~rO =

m
X

αi ~yi +

i=1

n
X

Wi ~zi

(14)

i=1

where ~rO denotes the resultant vector, m and n are nonnegative integers, αi is a coefficient, Wi = diag(w1 , w2 , ..., wD ), w1 , w2 , ..., wD are real numbers, and ~yi and
6

~zi mean two vectors in the original coordinate system. Eq.(14) can be considered as a
general form of the evolutionary operators in PSO and DE. For example, if ~rO = ~vig+1 ,
g
~g ,
, W2 = c2 R2 , ~z2 = G
m = 1, αi = 1, ~y1 = ~vig , n = 3, W1 = c1 R1 , ~z1 = P~besti
best
g
W3 = −(c1 R1 + c2 R2 ), and ~z3 = ~xi , then Eq.(14) is revised to
i
h
g
~ g − (c1 R1 + c2 R2 )~xg
+ c2 R2 G
~vig+1 = ~vig + c1 R1 P~besti
i
best
(15)
g
g
g
g
g
~
~
= ~vi + c1 R1 (Pbesti − ~xi ) + c2 R2 (Gbest − ~xi )
Clearly, Eq.(15) is equivalent to Eq.(3) and both of them are the velocity updating
equation in PSO. Indeed, apart from PSO and DE, Eq.(14) is also an effective way to
describe the evolutionary operators in other EA paradigms such as cultural algorithm
[19], artificial bee colony algorithm [11], fireworks algorithm [25], and brain storm
optimization algorithm [21].
Pm
Pn
Note that the right-hand side of Eq.(14) involves two parts: i=1 αi ~yi and i=1 wi ~zi .
Since the first part is a linear operation of different vectors, it is irrelevant to the coordinate system. In terms of the second part, Wi is a diagonal matrix used for scaling ~zi
within the original coordinate system. Since the original coordinate system is a fixed
coordinate system, Wi can only optimize ~zi in the deterministic directions, thus failing to identify the modality of different function landscapes or even a single function
landscape at different optimization stages. As a result, the search process guided by
Eq.(14) may not be efficient.
Remark 1: Each evolutionary operator in Section 2 can be rewritten as Eq.(14). It
can be found that the right-hand side of the velocity updating equation in PSO (i.e.,
Eq.(3))
and the crossover operator in DE (i.e., Eq.(12)) contains the second part (i.e.,
Pn
W
zi ), which suggests that these two operators may fail to search efficiently in
i~
i=1
the original coordinate system.
3.1.2

The Eigen coordinate system

In this paper, the Eigen coordinate system is established by the columns of an orthogonal matrix B, which comes from the Eigen decomposition of the covariance matrix
C:
C = BD2 BT
(16)
where B is an orthogonal matrix, BT is the transposed matrix of B, and D is a diagonal
matrix. Each column of B is an eigenvector of C, and each diagonal element of D is the
square root of an eigenvalue of C. The fundamental issue in Eq.(16) is how to construct
the covariance matrix C. In general, the coveriance matrix C is constructed and updated
according to the feedback information resulting from the evolution. Therefore, unlike
the orginal coordinate system, the Eigen coordinate system is dynamic throughout the
evolutionary process, with the aim of suiting the function landscape.
Next, we will discuss how to construct an evolutionary operator in the Eigen coordinate system. It contains three steps. Firstly, BT is applied to transform the vectors in
the original coordinate system into the Eigen coordinate system. Subsequently, these

7

vectors in the Eigen coordinate system are combined with the coefficients and diagonal matrixes following Eq.(14), and thus an offspring vector is obtained. Finally, this
offspring vector is transformed back into the original coordinate system by making use
of B, with the aim of evaluating its fitness. Specifically, an evolutionary operator in the
Eigen coordinate system can be described as:
!
m
n
X
X
T
T
~rE = B
αi (B ~yi ) +
Wi (B ~zi )
i=1

=

m
X

αi ~yi +

i=1

i=1
n
X

(17)

T

BWi B ~zi

i=1

where ~rE denotes the resultant vector. By comparing Eq.(17) with Eq.(14), it can be
seen that: if we replace Wi with BWi BT on the right-hand side of Eq.(14), then the
evolutionary operator in the original coordinate system is transformed into the corresponding evolutionary operator in the Eigen coordinate system. Compared with Wi ~zi ,
in BWi BT ~zi , BT transforms ~zi into the Eigen coordinate system, then Wi scales BT ~zi
within the Eigen coordinate system, and finally B transforms the vector Wi BT ~zi back
into the original coordinate system.
Remark 2: PSO’s velocity updating equation (i.e., Eq.(3)) and DE’s crossover operator
(i.e., Eq.(12)) in the Eigen coordinate system can be expressed as Eq.(18) and Eq.(19),
respectively.

3.1.3

g
~ g − ~xg )
~vig+1 = ~vig + c1 BR1 BT (P~besti
− ~xgi ) + c2 BR2 BT (G
i
best

(18)

~ugi = ~xgi + BCr BT (~vig − ~xgi )

(19)

The difference between the original coordinate system and the Eigen coordinate system

Next, we will investigate EA’s search behaviors in the original and Eigen coordinate
systems. To make a clear explanation, we take the basic PSO as an example. For
simplicity, suppose that the velocity ~vig of a particle is equal to ~0, c1 = c2 = 2, the
g
position ~xgi is just its historical best position P~besti
, and the dimension of the search
space is equal to two. As a result, in the original coordinate system, the new velocity
~vig+1 is updated as Eq.(20), and then the new position ~xg+1
is renewed as Eq.(21):
i
g
~ g − ~xg )
~vig+1 = ~vig + c1 R1 (P~besti
− ~xgi ) + c2 R2 (G
i
best
~ g − ~xg )
= 2R2 (G

(20)

~ g − ~xg )
~xg+1
= ~xgi + ~vig+1 = ~xgi + 2R2 (G
i
i
best

(21)

best

i

where R2 = diag(r2,1 , r2,2 ), and r2,1 and r2,2 are two uniformly distributed random
numbers between 0 and 1. By replacing R2 with BR2 BT in Eq.(21), the new position
~xg+1
is generated in the Eigen coordinate system:
i
~ g − ~xg )
~xg+1
= ~xgi + 2BR2 BT (G
i
i
best
8

(22)

x1

b'

x1

G
xig +1
b

G
xig +1

c
Gg
Gbest

G
xig a

c
Gg
Gbest

G a
xig

d

x1'

x2'

o

Global Optimum

d'

Global Optimum

x2

x2

o

(a)

(b)

Figure 1: PSO works in different coordinate systems. In this figure, the dashed el~ g means the entire
lipses display the contour lines, ~xgi denotes the current position, G
best
g+1
swarm’s best position, and ~xi is the new position which is located in the blue area.
(a) PSO in the original coordinate system (i.e., ox1 x2 ). (b) PSO in the Eigen coordinate
0
0
system (i.e., ox1 x2 ).

Fig. 1 shows the difference between PSO in the original coordinate system (Fig. 1(a))
and in the Eigen coordinate system (Fig. 1(b)) for an optimization problem with variable correlation. The original coordinate system is fixed and denoted as ox1 x2 . As
pointed out, the Eigen coordinate system is dynamically updated during the evolution.
0
0
Suppose that for this example the Eigin coordinate system is ox1 x2 , which can suit the
contour lines well. In Fig. 1, ~xg+1
in the original coordinate system and the Eigen
i
coordinate system is generated as Eq.(23) and Eq.(24), respectively.
−
−
→
~ g − ~xg ) = ~xg + r2,1 × →
~xg+1
= ~xgi + 2R2 (G
ab + r2,2 × ad
i
i
i
best

(23)

−0
−
→0
~ g − ~xg ) = ~xg + r2,1 × →
~xg+1
= ~xgi + 2BR2 BT (G
ab + r2,2 × ad
i
i
i
best

(24)

Since r2,1 and r2,2 are two uniformly distributed random numbers between 0 and 1,
~xg+1
generated in the original and Eigen coordinate systems can be any point in the
i
0
0
rectangular areas abcd and ab cd , respectively. As shown in Fig. 1, abcd does not
0
0
contain the global optimal solution, while ab cd contains the global optimal solution
and its neighborhood. This phenomenon signifies that PSO may search more efficiently
in the Eigen coordinate system.

3.2

The related work on the Eigen coordinate system

In this paper, the related work on the Eigen coordinate system are classified into two
categories, according to the way of conducting the evolutionary operators.
In the first category, the evolutionary operators are implemented only in the Eigen
coordinate system. In 2001, CMA-ES [9] was proposed which samples the offspring

9

population according to:
=m
~ g + σ g N (~0, Cg ), i = 1, 2, ..., λ
~xg+1
i
=m
~ g + σ g (Cg )1/2 N (~0, I), i = 1, 2, ..., λ
g

g

(25)

g T

=m
~ + σ B D (B ) N (~0, I), i = 1, 2, ..., λ
g

g

where m
~ g denotes the mean vector of the search distribution at generation g, σ g denotes the step size, Cg refers to a covariance matrix, Bg is an orthogonal matrix, Dg
is a diagonal matrix, N (~0, Cg ) is a multivariate normal distribution with zero mean
and covariance matrix Cg , and N (~0, I) is a multivariate normal distribution with zero
mean and identity covariance matrix I. By comparing Eq.(25) with Eq.(17), it can be
found that Eq.(25) is a special case of Eq.(17), which means that the sampling operation of CMA-ES only occurs in the Eigen coordinate system. In CMA-ES, this Eigen
coordinate system comes from the Eigen decomposition of the covariance matrix Cg ,
and two strategies, namely the rank-µ-update strategy and the rank-one-update strategy
[8], are designed to adapt Cg . In the rank-µ-update strategy, a weighted combination
of the µ best out of λ offspring is used to compute Cg+1
µ , which is an estimator of the
distribution of the current population:
Cg+1
=
µ

µ
X

wi (~xg+1
~ g )(~xg+1
~ g )T
i:λ − m
i:λ − m

(26)

i=1
(g+1)

where wi is the ith weight coefficient, λ is the population size, and ~xi:λ means the
ith best individual among the λ offspring. Thereafter, the information from both the
previous and current generations are used to compute the covariance matrix Cg+1 :
Cg+1 = (1 − cµ )Cg +

cµ
Cg+1
(σ g )2 µ

(27)

where cµ is the learning rate for the rank-µ-update strategy. In terms of the rank-oneupdate strategy, it exploits correlation between consecutive generations and constructs
an evolution path to update the covariance matrix. Thus, its implementation is much
more complex than the rank-µ-update strategy. These two strategies are combined together in CMA-ES to update the covariance matrix. Since CMA-ES is able to detect
the features of the function landscape, it shows a significant superiority over the ordinary ES. To further expand CMA-ES, an adaptive encoding mechanism called AECMA
[7] is proposed. In AECMA , a more general approach for covariance matrix adaptation
is proposed, which can be applied to ES and estimation of distribution algorithm [29].
Again, in AECMA , the evolutionary operators are executed only in the Eigen coordinate
system.
In the second category, the evolutionary operators are considered in both the Eigen
and original coordinate systems at each generation of EAs. For instance, DE/eig [6]
and CoBiDE [26] implement the crossover operator of DE in both the Eigen and
original coordinate systems in a random manner. As a result, similar to the classical
DE, one trial vector is created for one target vector. In DE/eig, all individuals from the

10

current generation are used to compute the covariance matrix:
Cg+1 =

NP
NP
NP
1 X g
1 X g g
1 X g T
(~xi −
~xj )(~xi −
~x )
NP −1 i=1
NP j=1
NP j=1 j

(28)

where N P is the population size, and ~xgi and ~xgj mean the ith and jth individuals,
0
respectively. While in CoBiDE, the N P best out of the individuals from the current
population are employed to update the covariance matrix:
0

C

g+1

0

NP
NP
X g
1 X g
1
(~
x
−
~x
)×
=
NP 0 −1 i=1 i:NP NP 0 j=1 j:NP
0

(29)

NP
1 X g
(~xgi:NP −
~x
)T
0
NP j=1 j:NP
0

where N P = ps × N P , ps ∈ [0, 1] is a user-defined parameter, and ~xgi:N P and ~xgj:N P
denote the ith and jth best individuals, respectively. From Eq.(28) and Eq.(29), it can
be seen that only the current population distribution information is utilized to compute
the covariance matrix. Very recently, a novel DE framework called CPI-DE [27] is
proposed. In CPI-DE, DE’s crossover operator is executed in both the Eigen and original coordinate systems in a deterministic manner and, consequently, two trial vectors
are generated for each target vector. Thereafter, the best one among the target vector
and its two trial vectors will survive into the next generation. The covariance matrix
in CPI-DE is estimated by the rank-N P -update strategy, which can be regarded as an
extension of the rank-µ-update strategy in CMA-ES. This rank-N P -update strategy
contains two steps. In the first step, the N P best out of 2 × N P offspring (note that in
CPI-DE, the offspring population consists of 2 × N P trial vectors) are used to estimate
the current population distribution:
Cg+1
NP =

NP
X

wi (~xg+1
~ g )(~xg+1
~ g )T
i:2∗N P − m
i:2∗N P − m

(30)

i=1

where wi is the ith weight coefficient and ~xg+1
i:2∗N P represents the ith best individual
in the offspring population. In the second step, the population distribution information
from the current and historical generations are used to adapt the covariance matrix:
Cg+1 = (1 − cN P )Cg +

cµ
Cg+1
(σ g )2 N P

(31)

where cN P is the learning rate and σ g is the step size. It is claimed in CPI-DE [27]
that there is no necessary to adapt the step size for DE, since DE has a different search
pattern with ES. In fact, σ g is set to 1 in CPI-DE, which means that the covariance
matrix is of equal importance at each generation. It is necessary to note that CPIDE does not utilize the rank-one-update strategy. The reason is that the rank-oneupdate strategy plays a less important role when the population size is large, and DE
11

usually maintains a relatively large population compared with ES. Besides, the rankone-update strategy is much more complex than the rank-µ-update strategy. Therefore,
by eliminating the rank-one-update strategy, the adaptation of the covariance matrix in
CPI-DE becomes simpler. There is an agreement from the above three attempts: the
usage of both the Eigen and original coordinate systems at each generation can reach
better performance than the usage of one of them during the whole evolution.
Our work in this paper falls into the second category. Moreover, the Eigen and
original coordinate systems are adaptively tuned as the evolution proceeds.

4
4.1

Proposed Approach
Motivation and general framework

We continue the work on the coordinate systems and propose a novel framework named
ACoS. The motivation of ACoS comes from three aspects:
• A large population can provide more information to estimate the Eigen coordinate system, compared with a small population. However, given the maximum
number of fitness evaluations, the increase of the population size will lead to the
decrease of the generation number, which might cause incomplete convergence
of EAs. Consequently, it is necessary to design a mechanism to strike the balance
between the accuracy of estimation and the convergence performance.
• As introduced in Section 3.2, some researchers have recognized the importance
of combining the original coordinate system with the Eigen coordinate system in
the evolutionary computation research community. However, the current methods adjust these two coordinate systems in either a random way or a deterministic
way. How to exploit the feedback information from the evolution to adaptively
tune them has not yet been investigated.
• The coordinate systems play a very important role in the performance of EAs.
Note, however, that in current studies the coordinate systems have been applied
to enhance the performance of few EA paradigms (e.g., ES and DE). It is an
interesting topic to boost the research on the coordinate systems to other EA
paradigms.
ACoS aims at addressing the above three issues. In ACoS, an additional archiving
mechanism is designed to maintain the offspring not only in the current generation but
also in the past several generations. Therefore, sufficient information can be obtained
to estimate an appropriate Eigen coordinate system without adding the population size
and reducing the generation number. As a result, ACoS achieves a balance between
the accuracy of estimation and the convergence performance. Afterward, the Eigen
and original coordinate systems are selected in an adaptive way (rather than a random
or deterministic way) according to a probability vector, which is updated based on the
collected information from the offspring. ACoS can be readily applied to various EAs,
and in this paper we consider two of the most popular EA paradigms: PSO and DE.
The general framework of ACoS has been given in Algorithm 1.
12

Algorithm 1 The framework of ACoS
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:

Initialize g = 0, P0 = {~x01 , ~x02 , ..., ~x0N P }, archive A = ∅, and C0 = B0 = I;
Initialize the probability vector~
p = (p1 , p2 , ..., pN P ) = (0.5, 0.5, ..., 0.5);
while the termination criterion is not met do
for i = 1 to N P do
if rand ≤ pi then
Implement the mutation and crossover operators of EAs in the Eigen coordinate system to generate the ith offspring;
else
Implement the mutation and crossover operators of EAs in the original coordinate system to generate the ith offspring;
end if
end for
Evaluate the offspring population;
Implement the selection operator of EAs to get Pg+1 ;
Update A, Cg+1 , and Bg+1 based on Section 4.2;
Update p~ according to Section 4.3;
g = g + 1;
end while

In Algorithm 1, rand denotes a uniformly distributed random number on the interval [0, 1]. In the initialization process, the population P0 = {~x01 , ~x02 , ..., ~x0N P } is
randomly sampled from the search space, the archive A is initialized to be empty, the
covariance matrix C0 and the orthogonal matrix B0 are set to be the unity matrix I, and
the probability vector p~ = (p1 , p2 , ..., pN P ) is initialized to be p~ = (0.5, 0.5, ..., 0.5).
During the evolution, to generate the ith offspring, the mutation and crossover operators of EAs are implemented in the Eigen and original coordinate systems with the
probabilities pi and 1 − pi , respectively. Afterward, the offspring population is evaluated and the selection operator of EAs is executed to obtain Pg+1 . Subsequently, A,
Cg+1 , and Bg+1 are updated according to Section 4.2. Finally, p~ is renewed according
to Section 4.3.
Obviously, ACoS is different from the canonical EAs due to the simultaneous use
and adaptive tuning of the Eigen and original coordinate systems. Next, we will introduce two core components of ACoS: the updating of the Eigen coordinate system and
the updating of p~.

4.2

The updating of the Eigen coordinate system

The Eigen coordinate system is updated by making use of an additional archiving
mechanism and the rank-µ-update strategy [8].
The additional archiving mechanism adopts an external archive A to store the offspring in both the current generation and the past several generations. It is because the
search area may not change dramatically in the continuous several generations of EAs,
and thus the offspring in the past several generations, other than the offspring in the

13

current generation, can also provide the important information to estimate an appropriate Eigen coordinate system. Actually, the implementation of this additional archiving
mechanism is very simple. Firstly, A is initialized to be an empty set. Then at each
generation, the newly generated offspring are added into A. If the archive size (called
AS) exceeds a certain threshold, say 3 × N P , then the earlier offspring in A will be
removed based on the “first-in-first-out” rule to keep the archive size at 3 × N P . Note
that unlike the main population Pg , A does not undergo any evolutionary operators.
Therefore, this additional archiving mechanism can obtain sufficient information to estimate the Eigen coordinate system while never affecting the population size and the
generation number.
Subsequently, the rank-µ-update strategy extracts the population distribution information from A. The previous research has demonstrated that the rank-µ-update strategy
is an efficient technique to adapt the covariance matrix [8]. In this paper, the size of A
is larger than that of Pg . Therefore, the rank-µ-update can benefit from this relatively
larger size to get a reliable estimator of the covariance matrix. Before executing the
rank-µ-update strategy, we need to initialize the mean vector of the search distribution
m
~ g in Eq.(26) and the covariance matrix Cg . In this paper, m
~ 0 is set to be a randomly
0
generated point in the search space and C is set to be the unity matrix I. Then, at
generation g + 1, m
~ g+1 is updated according to:
m
~ g+1 =

µ
X

ωi~ai:AS

(32)

i=1

where µ = AS/2 is the number of the selected solutions, ~ai:AS denotes the ith best
solution out of A (i.e., f (~a1:AS ) ≤ f (~a2:AS ) ≤ ... ≤ f (~aµ:AS )), and ωi refers to the
ith weight coefficient computed as:
ωi =

ln(µ + 0.5) − ln i
Pµ
, i = 1, 2, ..., µ
n ln(µ + 0.5) − j=1 ln i

(33)

Afterward, an estimator of the current population distribution Cg+1
is obtained by:
µ
Cg+1
=
µ

µ
X

ωi (~ai:AS − m
~ g )(~ai:AS − m
~ g )T

(34)

i=1

Finally, the covariance matrix Cg+1 is updated by making use of the cumulative population distribution information:
Cg+1 = (1 − cµ )Cg + cµ Cg+1
µ

(35)

Pµ
where cµ ≈ 31 µef f /D2 denotes the learning rate, µef f = ( i=1 ωi2 )−1 is the variance
effective selection mass, and D is the dimension of the search space.
After Cg+1 is obtained, an Eigen decomposition is performed on Cg+1 according to
Eq.(16) to produce the orthogonal matrix Bg+1 , the columns of which form the Eigen
coordinate system.

14

Algorithm 2 The updating of the probability vector
1: switch (the case of the collected information from the offspring)
2: case Eigen coordinate system is better:
3:
pi ← pi + r(pi );
4: case Eigen coordinate system is worse:
5:
pi ← pi − η × r(pi );
6: case original coordinate system is better:
7:
pi ← pi − r(1 − pi );
8: case original coordinate system is worse:
9:
pi ← pi + η × r(1 − pi );
10: end switch

4.3

The updating of the probability vector

The probability vector p~ = (p1 , p2 , ..., pN P ) determines the selection ratio of each
coordinate system for each individual. Since there is no priori knowledge about the
characteristics of the function landscapes, the Eigen and original coordinate systems
are considered to be of equal importance at the beginning of evolution, i.e., p~ =
(0.5, 0.5, ..., 0.5). Then, p~ is adaptively updated during the evolution according to the
collected information derived from the offspring.
In this paper, we collect the information including which coordinate system is used
to generate the offspring and how about the quality of the generated offspring. It is
easy to identify which coordinate system is used to produce the offspring. However,
how to measure the quality of the offspring is usually dependent on a specific EA. For
PSO, if a particle’s new position is better than its personal historical best position, then
the offspring performs better, otherwise, it performs worse. In terms of DE, if the trial
vector outperforms its corresponding target vector, then the offspring performs better;
otherwise, it performs worse. Without loss of generality, the collected information
derived from the offspring can be categorized into four cases:
• Eigen coordinate system is better: the Eigen coordinate system is used to generate the offspring and the offspring performs better;
• Eigen coordinate system is worse: the Eigen coordinate system is used to generate the offspring but the offspring performs worse;
• Original coordinate system is better: the original coordinate system is used to
generate the offspring and the offspring performs better;
• Original coordinate system is worse: the original coordinate system is used to
generate the offspring but the offspring performs worse.
These four cases have been considered fully in Algorithm 2 to adaptively update p~.
The main principle behind Algorithm 2 is the “use it or lose it” rule: if one coordinate
system is used to generate the offspring and the offspring performs better, the selection
ratio for this coordinate system will increase; otherwise, the selection ratio for this
coordinate system will decrease. More specifically, for the ith individual:
15

• In the case of Eigen coordinate system is better, a reward r(pi ) is added into pi .
r(•) denotes a reward function defined as r(x) = ε(1 − x)e−2x , x ∈ [0, 1].
In this reward function, ε is a constriction factor to clamp the reward value into
[0, ε], and (1 − x)e−2x is a concave function whose value decreases from 1 to 0
when the variable x increases from 0 to 1. As a result, a larger pi will receive a
smaller r(pi ). It is reasonable since a larger pi means that the Eigen coordinate
system already has more potential to be chosen, and a smaller reward would
restrain the dramatic increasing of pi and adapt pi to a proper value in a more
robust way.
• In the case of Eigen coordinate system is worse, a punishment η × r(pi ) is added
into pi . In η × r(pi ), η is a punishment coefficient on the interval (0, 1). Therefore, η×r(pi ) is smaller than r(pi ), which implies that the case Eigen coordinate
system is worse has less influence on pi than the case Eigen coordinate system is
better at one time. The reason is the following. EA is a trial-and-error method
and the case Eigen coordinate system is worse is more likely to happen compared with the case Eigen coordinate system is better. Therefore, the more likely
occurred case (i.e., Eigen coordinate system is worse) should have less influence
on pi than the less likely occurred case (i.e., Eigen coordinate system is better)
at one time due to the fact that these two cases’ whole effects on pi should be
similar.
• In the case of original coordinate system is better, the selection ratio of the original coordinate system will increase and, therefore, pi will decrease. The reduced
value is equal to r(1 − pi ).
• In the case of original coordinate system is worse, the selection ratio of the original coordinate system will decrease and pi thus will increase. The increased
value is equal to η × r(1 − pi ).

4.4

The application of ACoS in PSO and DE

ACoS has a simple structure and can be easily applied to various EAs. For a specific
EA, if it is under the framework of ACoS, it will dynamically select one of the Eigen
and original coordinate systems according to p~ to generate the offspring. Since the
updating of the Eigen coordinate system and p~ has been introduced previously, when
implementing a specific EA under the framework of ACoS, we only need to consider
how to generate the offspring in different coordinate systems and how to use the selection operator. In this paper, we apply ACoS to two of the most popular EA paradigms,
namely PSO and DE.
For PSO, the offspring are generated via the velocity updating equation and the
position updating equation. These two equations in the original coordinate system
have been given in Eq.(3) and Eq.(4), respectively. According to Section 3, Eq.(4) is
irrelevant to the coordinate systems. With respect to Eq.(3), it depends on the coordinate systems and its implementation in the Eigen coordinate system has been given in
Eq.(18). It is necessary to note that PSO does not employ the selection operator and,
therefore, the selection operator in Step (12) of Algorithm 1 can be eliminated.
16

For DE, the offspring are produced through the mutation and crossover operators.
These two operators in the original coordinate system have been given in Eqs.(7)-(10)
and Eq.(4), respectively. In fact, the mutation operator is independent of the coordinate
systems, while the crossover operator relies on the coordinate systems, the implementation of which in the Eigen coordinate system has been given in Eq.(19). In addition,
the selection operator of ACoS is the same with that of the original DE.

4.5

Characteristics of ACoS

Next, we compare ACoS with other related work introduced in Section 3. Compared
with CMA-ES which samples all the individuals in the Eigen coordinate system, ACoS
has some advantages listed as follows:
• It makes use of both the Eigen and original coordinate systems. The Eigen coordinate system enables EAs to identify the modality of the fitness landscape and
enhance the search efficiency, while the original coordinate system can maintain
the superiority of the original EAs.
• The updating of the Eigen coordinate system in ACoS is simpler. ACoS eliminates the much more complex rank-one-update strategy and only adopts the
rank-µ-update strategy to estimate the Eigen coordinate system. In addition, an
additional archiving mechanism with negligible computational cost is designed
to improve the estimation accuracy.
• ACoS can be readily applied to other EAs. This can be attributed to the fact
that the step-size control, which plays a very important role in CMA-ES, can be
ignored in many other EAs due to their different search patterns with CMA-ES.
Compared with DE/eig, CoBiDE and CPI-DE which focus on enhancing DE’s performance, ACoS has the following advantages:
• ACoS is designed to improve the performance of not only DE but also other EAs.
• To update the Eigen coordinate system, DE/eig and CoBiDE only utilize the current population distribution information, therefore the established Eigen coordinate system might be inappropriate due to insufficient information. In CPI-DE
and ACoS, the cumulative population distribution information is used to update
the Eigen coordinate system. Note, however, that ACoS employs an additional
archiving mechanism which can obtain more sufficient information while having
no influence on the population size and the generation number.
• Although both the Eigen and original coordinate systems are utilized in DE/eig,
CoBiDE, CPI-DE, and ACoS, DE/eig and CoBiDE adjust these two coordinate
systems in a random manner which ignores the feedback information from the
evolutionary search and, therefore, is not well suited for different kinds of fitness
landscapes. In addition, CPI-DE generates two offspring for each target vector, one in the Eigen coordinate system and the other in the original coordinate
system, which inevitably spends more fitness evaluations at each generation. In

17

Table 1: Experimental results of PSO-w, ACoS-PSO-w, PSO-cf, and ACoS-PSO-cf
over 51 independent runs on 30 test functions with 30D from IEEE CEC2014 using
300,000 FEs.
Test Functions with 30D
from IEEE CEC2014
cf1
Unimodal
cf2
Functions
cf3
cf4
cf5
cf6
cf7
cf8
Simple
cf9
cf10
Multimodal
cf11
Functions
cf12
cf13
cf14
cf15
cf16
cf17
cf18
Hybrid
cf19
cf20
Functions
cf21
cf22
cf23
cf24
cf25
Composition
cf26
cf27
Functions
cf28
cf29
cf30
+
−
≈

PSO-w
ACoS-PSO-w
PSO-cf
ACoS-PSO-cf
Mean Error±Std Dev Mean Error±Std Dev Mean Error±Std Dev Mean Error±Std Dev
1.53E+08±1.34E+08− 1.86E+06±3.60E+06 6.68E+07±7.48E+07− 1.08E+03±2.62E+03
1.67E+10±7.67E+09− 1.00E+03±5.14E+03 7.77E+09±5.94E+09− 0.00E+00±0.00E+00
4.72E+04±3.37E+04− 1.75E+01±1.23E+02 1.17E+04±1.59E+04− 0.00E+00±0.00E+00
1.28E+03±9.00E+02− 1.00E+02±6.30E+01 8.37E+02±9.65E+02− 1.83E+01±2.88E+01
2.07E+01±1.35E-01≈ 2.07E+01±1.22E-01 2.02E+01±2.83E-01+ 2.07E+01±1.41E-01
2.07E+01±2.92E+00− 1.97E+01±3.30E+00 2.10E+01±3.35E+00− 1.81E+01±4.17E+00
1.76E+02±7.89E+01− 1.06E+01±7.76E+00 1.05E+02±7.63E+01− 1.11E-02±1.34E-02
9.63E+01±2.67E+01− 7.19E+01±1.82E+01 9.59E+01±3.56E+01− 8.62E+01±2.35E+01
1.50E+02±3.10E+01− 1.19E+02±2.38E+01 1.38E+02±4.02E+01− 9.55E+01±2.65E+01
3.36E+03±7.42E+02− 2.69E+03±5.82E+02 2.72E+03±8.03E+02+ 3.04E+03±6.17E+02
3.65E+03±7.20E+02− 3.45E+03±7.27E+02 3.62E+03±6.73E+02≈ 3.63E+03±5.65E+02
7.19E-01±5.24E-01+ 1.17E+00±6.17E-01 3.26E-01±1.08E-01+ 6.81E-01±4.43E-01
3.03E+00±1.25E+00− 6.99E-01±9.79E-02 2.39E+00±1.25E+00− 4.32E-01±1.04E-01
5.11E+01±2.68E+01− 1.19E+00±2.59E-01 4.19E+01±3.13E+01− 5.77E-01±2.56E-01
7.52E+04±2.33E+05− 1.08E+03±3.81E+03 1.03E+04±3.49E+04− 5.24E+00±1.70E+00
1.13E+01±6.30E-01≈ 1.15E+01±5.00E-01 1.14E+01±6.21E-01≈ 1.13E+01±6.22E-01
4.99E+06±5.88E+06− 8.00E+04±2.34E+05 2.26E+06±4.46E+06− 1.73E+03±3.74E+02
2.16E+08±4.65E+08− 5.48E+03±5.47E+03 7.51E+07±2.94E+08− 9.38E+03±8.31E+03
6.84E+01±6.64E+01− 2.60E+01±2.66E+01 6.00E+01±5.33E+01− 1.13E+01±2.07E+00
1.87E+04±2.46E+04− 5.62E+02±8.51E+02 6.61E+03±1.58E+04− 3.21E+02±1.33E+02
8.45E+05±1.06E+06− 2.56E+04±9.06E+04 8.93E+05±3.76E+06− 1.20E+03±7.46E+02
6.53E+02±3.21E+02− 4.72E+02±1.97E+02 6.36E+02±2.39E+02− 4.93E+02±1.97E+02
4.03E+02±6.51E+01− 3.18E+02±7.06E+00 3.65E+02±4.81E+01− 3.15E+02±4.54E-13
2.70E+02±2.30E+01− 2.45E+02±7.89E+00 2.61E+02±2.35E+01− 2.42E+02±7.12E+00
2.19E+02±1.05E+00− 2.05E+02±2.49E+00 2.16E+02±8.63E+00− 2.07E+02±5.45E+00
1.30E+02±6.78E+01− 1.20E+02±6.50E+01 1.32E+02±6.43E+01− 1.14E+02±5.36E+01
1.05E+03±1.81E+02− 9.18E+02±2.17E+02 9.16E+02±2.77E+02≈ 9.10E+02±2.07E+02
1.93E+03±4.66E+02− 1.34E+03±2.97E+02 1.89E+03±4.67E+02− 1.65E+03±4.43E+02
1.70E+07±1.54E+07− 8.49E+06±1.05E+07 1.64E+07±1.21E+07− 8.30E+06±1.14E+07
2.06E+05±1.89E+05− 1.13E+04±2.43E+04 1.37E+05±1.12E+05− 3.59E+03±1.73E+03
1
3
27
24
2
3

contrast, ACoS adapts these two coordinate systems in an adaptive way as the
evolution proceeds, thus exploiting the feedback information and producing only
one offspring for each target vector simultaneously.

5

Experimental Study

In this section, our experiments were conducted on 30 test functions with 30 dimensions (30D) and 50 dimensions (50D) at IEEE CEC2014. These 30 test functions are
denoted as cf1 -cf30 , and their details can be available from [13]. In general, these 30
test functions can be grouped into four classes: 1) Unimodal functions cf1 -cf3 ; 2) Sim18

ple multimodal functions cf4 -cf16 ; 3) Hybrid functions cf17 -cf22 ; and 4) Composition
functions cf23 -cf30 .
In our experiments, 51 independent runs were carried out for each test function.
A run will terminate if the maximum number of fitness evaluations (FEs) is reached,
which was recommended to be 10000 ∗ D [13]. At the end of a run, the function
error value (f (~xbest ) − f (~x∗ )) was recorded, where ~x∗ is the optimal solution and
~xbest denotes the searched best solution. If the function error value is less than 10−8 ,
it was taken as zero. The average and standard deviation of the function error values
in all runs (denoted as “Mean Error” and “Std Dev”) were used to measure the performance of an algorithm. Besides, to test the statistical significance of the experimental
results between two algorithms, the Wilcoxon’s rank sum test at a 0.05 significance
level was performed. There are two new parameters in ACoS: the archive size AS and
the punishment coefficient η, which were fixed to be 3×N P and 0.1 in all simulations,
respectively.
For the sake of convenience, if a specific EA is under the framework of ACoS, the
name of this EA will be modified by adding four letters “ACoS-”. For example, PSO-w
under our framework is named as ACoS-PSO-w.

5.1

ACoS for two popular PSO variants

Firstly, we applied ACoS to two of the most popular PSO variants: PSO-w and PSOcf, which have been introduced in Section 2.1. The resultant methods are denoted as
ACoS-PSO-w and ACoS-PSO-cf, respectively.
The population size of these two PSO variants and their augmented algorithms was
set to be 40 and 60 when the dimension of the search space was equal to 30 and 50,
respectively. The experimental results on cf1 -cf30 with 30D and 50D are given in
Tables I-II, where “+”, “−”, and “≈” denote that PSO-w or PSO-cf performs better
than, worse than, and similar to its augmented algorithm, respectively. The last three
rows of Tables I-II summarize the experimental results.
Important observations can be obtained from Tables I-II:
• In the case of D = 30, ACoS-PSO-w and ACoS-PSO-cf have an edge over
their original algorithms on 27 and 24 test functions, respectively. With respect
to D = 50, both ACoS-PSO-w and ACoS-PSO-cf achieve better performance
than their original algorithms on 26 test functions. However, PSO-w and PSOcf cannot surpass their augmented algorithms on more than three test functions
when D = 30 and D = 50.
• ACoS-PSO-w and ACoS-PSO-cf are never inferior to their original algorithms
on any unimodal functions, hybrid functions, and composition functions, regardless of the number of the decision variables.
• ACoS is able to achieve great performance improvement toward PSO-w and
PSO-cf on all the unimodal functions (i.e., cf1 -cf3 ), five simple modal functions
(i.e., cf4 , cf7 , and cf13 -cf15 ), four hybrid functions (i.e., cf17 , cf18 , cf20 , and
cf21 ), and two composition functions (i.e., cf29 and cf30 ). Moreover, ACoS of-

19

Table 2: Experimental results of PSO-w, ACoS-PSO-w, PSO-cf, and ACoS-PSO-cf
over 51 independent runs on 30 test functions with 50D from IEEE CEC2014 using
500,000 FEs.
Test Functions with 50D
from IEEE CEC2014
cf1
Unimodal
cf2
Functions
cf3
cf4
cf5
cf6
cf7
cf8
Simple
cf9
cf10
Multimodal
cf11
Functions
cf12
cf13
cf14
cf15
cf16
cf17
cf18
Hybrid
cf19
cf20
Functions
cf21
cf22
cf23
cf24
cf25
Composition
cf26
cf27
Functions
cf28
cf29
cf30
+
−
≈

PSO-w
ACoS-PSO-w
PSO-cf
ACoS-PSO-cf
Mean Error±Std Dev Mean Error±Std Dev
Mean Error Std Dev Mean Error±Std Dev
5.23E+08±2.85E+08− 6.60E+06±7.39E+06 3.30E+08±2.76E+08− 1.23E+05±8.87E+04
5.62E+10±1.57E+10− 1.48E+08±7.73E+08 3.06E+10±1.31E+10− 1.91E+03±4.55E+03
7.77E+04±3.61E+04− 1.76E+02±5.88E+02 1.42E+04±1.81E+04− 0.00E+00±0.00E+00
6.92E+03±3.34E+03− 1.63E+02±1.75E+02 2.24E+03±1.75E+03− 9.10E+01±3.14E+01
2.10E+01±8.68E-02≈ 2.10E+01±8.98E-02 2.02E+01±2.65E-01+ 2.10E+01±1.44E-01
4.46E+01±5.13E+00− 4.11E+01±4.91E+00 4.10E+01±4.75E+00− 3.87E+01±5.60E+00
4.89E+02±1.52E+02− 1.14E+01±1.91E+01 2.64E+02±1.27E+02− 4.92E-03±7.13E-03
2.75E+02±3,86E+01− 1.79E+02±3.43E+01 2.23E+02±5.38E+01− 1.75E+02±3.69E+01
3.60E+02±6.32E+01− 2.37E+02±5.10E+01 3.18E+02±7.13E+01− 2.03E+02±5.37E+01
6.95E+03±1.04E+03− 5.76E+03±1.02E+03 5.72E+03±1.11E+03+ 6.34E+03±8.75E+02
7.21E+03±9.63E+02− 7.02E+03±1.17E+03 6.91E+03±9.82E+02− 6.67E+03±9.22E+02
8.91E-01±6.81E-01+ 1.46E+00±8.14E-01 4.64E-01±1.47E-01+ 9.89E-01±6.14E-01
4.85E+00±8.24E-01− 8.10E-01±1.06E-01 3.50E+00±1.20E+00− 5.19E-01±9.60E-02
1.33E+02±3.27E+01− 1.49E+00±2.53E-01 7.60E+01±3.75E+01− 5.63E-01±2.74E-01
4.54E+05±5.86E+05− 1.82E+03±6.01E+03 1.65E+05±3.04E+05− 1.02E+01±2.70E+00
2.07E+01±7.28E-01≈ 2.08E+01±7.38E-01 2.07E+01±8.18E-01≈ 2.07E+01±5.94E-01
2.89E+07±2.86E+07− 3.29E+05±4.22E+05 1.50E+07±2.04E+07− 3.51E+03±2.73E+03
1.42E+09±1.12E+09− 1.95E+03±1.61E+03 1.02E+09±9.81E+08− 4.23E+03±1.89E+03
3.53E+02±1.82E+02− 6.41E+01±3.97E+01 2.89E+02±2.52E+02− 2.52E+01±9.93E+00
5.37E+04±3.90E+04− 9.46E+02±5.10E+02 7.94E+03±1.40E+04− 6.09E+02±1.62E+02
9.21E+06±1.10E+07− 2.59E+05±4.70E+05 5.14E+06±8.56E+06− 2.11E+03±7.27E+02
1.57E+03±4.43E+02− 1.10E+03±3.12E+02 1.54E+03±3.85E+02− 1.04E+03±2.97E+02
6.62E+02±1.45E+02− 3.49E+02±1.87E+01 5.29E+02±1.16E+02− 3.44E+02±4.69E-13
4.04E+02±4.57E+01− 2.99E+02±1.83E+01 3.49E+02±3.44E+01− 2.91E+02±6.15E+00
2.52E+02±2.15E+01− 2.13E+02±5.08E+00 2.29E+02±1.33E+01− 2.17E+02±9.18E+00
1.86E+02±1.19E+02≈ 1.88E+02±1.18E+02 1.87E+02±9.95E+01− 1.32E+02±9.67E+01
1.75E+03±1.22E+02− 1.52E+03±1.42E+02 1.62E+03±1.80E+02− 1.51E+03±2.09E+02
3.68E+03±8.30E+02− 2.42E+03±5.84E+02 3.73E+03±9.88E+02− 2.93E+03±8.20E+02
1.23E+08±5.07E+07− 7.00E+07±4.64E+07 1.25E+08±7.59E+07− 3.88E+07±4.56E+07
7.35E+05±6.25E+05− 1.96E+04±1.16E+03 5.77E+05±4.36E+05− 1.43E+04±2.44E+03
1
3
26
26
3
1

fers the optimal solutions for three cases in all runs, which have been highlighted
in boldface in Tables 1-2.
• It seems that the increase of the dimension (i.e., from D = 30 to D = 50)
does not have a remarkable influence on the performance improvement of our
framework.
From the above observations, our framework significantly improves the performance of these two popular PSO variants, which indicates that: 1) there is a necessity to consider both the Eigen and original coordinate systems in the design of PSO
variants, and 2) the adaptive scheme in ACoS is capable of effectively utilizing these
two coordinate systems. The convergence graphs of the average function error values
20

12

10

10

Average Function Error Value

Average Function Error Value

10

8

10

6

10

PSO−w
ACoS−PSO−w
PSO−cf
ACoS−PSO−cf

4

10

8

10

6

10

4

10

2

2

10

PSO−w
ACoS−PSO−w
PSO−cf
ACoS−PSO−cf

10

10

0

60000

120000

180000

240000

300000

FEs

(a) cf1 with 30D

10

0

60000

120000

180000

240000

300000

FEs

(b) cf18 with 30D

Figure 2: Evolution of the average function error values derived from two popular PSO
versions (PSO-w and PSO-cf ) and their augmented algorithms versus the number of
FEs on cf1 with 30D and cf18 with 30D

derived from these two PSO variants and their augmented algorithms are plotted in Fig.
2 for two test functions (i.e., cf1 with 30D and cf18 with 30D).

5.2

ACoS for three state-of-the-art DE variants

subsequently, we investigated the influence of ACoS on three famous DE variants:
JADE, jDE, and SaDE. To ensure the comparison fair, the parameter settings of JADE,
jDE, and SaDE were identical with their original papers, and remained unchanged
when they were under the framework of ACoS. Tables III-IV show the comparison
results on cf1 -cf30 with 30D and 50D, where “+”, “−”, and“≈” denote that a stateof-the-art DE variant performs better than, worse than, and similar to its augmented
algorithm, respectively. The last three rows of Tables 5-6 summarize the results.
As can be seen from Tables III-IV, ACoS significantly improves JADE, jDE, and
SaDE on many test functions. Specifically, compared with their original algorithms,
when D = 30, ACoS-JADE, ACoS-jDE and ACoS-SaDE obtain significance on 17,
13, and 21 test functions, respectively; meanwhile in the case of D = 50, they outperform on 12, 14, and 23 test functions, respectively. In contrast, JADE, jDE, and
SaDE cannot beat their augmented algorithms on more than four test functions. Besides, under our framework, these three state-of-the-art DE variants can consistently
solve 14 cases, which have been highlighted in boldface in Tables 5-6. Moreover, the
superiority of ACoS-jDE and ACoS-SaDE over their original algorithms increases as
the dimension of the search space increases (i.e., from D = 30 to D = 50).
The above comparison confirms that ACoS is an effective framework to improve
the performance of these three state-of-the-art DE variants, which verifies the necessity to consider both the Eigen and original coordinate systems in an adaptive fashion
when designing DE. Two convergence graphs are given in Fig. 3 for the performance
comparison between these three state-of-the-art DE variants and their augmented algorithms.
21

22

Test Functions with 30D
from IEEE CEC2014
cf1
Unimodal
cf2
Functions
cf3
cf4
cf5
cf6
cf7
cf8
Simple
cf9
Multimodal
cf10
Functions
cf11
cf12
cf13
cf14
cf15
cf16
cf17
cf18
Hybrid
cf19
Functions
cf20
cf21
cf22
cf23
cf24
cf25
Composition
cf26
Functions
cf27
cf28
cf29
cf30
+
−
≈

JADE
Mean Error±Std Dev
6.09E+02±1.18E+03−
0.00E+00±0.00E+00≈
9.86E-04±5.95E-03−
0.00E+00±0.00E+00≈
2.03E+01±3.23E-02≈
9.15E+00±2.21E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.62E+01±4.96E+00−
8.16E-03±1.18E-02−
1.67E+03±2.13E+02≈
2.67E-01±3.57E-02≈
2.20E-01±3.25E-02≈
2.41E-01±3.18E-02−
3.20E+00±4.55E-01≈
9.30E+00±4.61E-01≈
1.91E+04±1.08E+05−
1.14E+02±1.97E+02−
4.48E+00±7.56E-01≈
3.11E+03±3.01E+03−
1.33E+04±4.12E+04−
1.44E+02±7.74E+01−
3.15E+02±4.01E-13≈
2.25E+02±3.60E+00≈
2.03E+02±1.13E+00≈
1.02E+02±1.39E+01≈
3.35E+02±4.68E+01≈
7.96E+02±4.63E+01≈
8.28E+02±3.27E+02−
1.66E+03±7.61E+02−
0
17
13

ACoS-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.03E+01±6.08E-02
6.11E+00±3.54E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.47E+01±3.89E+00
4.89E-03±9.84E-03
1.69E+03±1.88E+02
2.80E-01±3.76E-02
2.21E-01±3.64E-02
2.24E-01±3.04E-02
3.16E+00±3.76E-01
9.41E+00±4.33E-01
4.11E+02±1.56E+02
2.94E+01±1.95E+01
4.48E+00±7.83E-01
1.22E+01±4.65E+00
1.40E+02±1.00E+02
1.12E+02±7.46E+01
3.15E+02±3.59E-13
2.24E+02±1.85E+00
2.03E+02±4.16E-01
1.00E+02±4.27E-02
3.34E+02±4.61E+01
7.96E+02±4.57E+01
6.12E+02±2.00E+02
1.02E+03±4.21E+02

jDE
Mean Error±Std Dev
7.35E+04±6.12E+04−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
5.09E+00±1.48E+01−
2.03E+01±3.80E-02≈
3.39E+00±3.97E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
4.40E+01±5.33E+00≈
1.22E-03±4.94E-03≈
2.41E+03±3.11E+02≈
4.56E-01±6.46E-02+
3.04E-01±3.54E-02−
2.83E-01±2.95E-02−
5.89E+00±7.23E-01≈
9.85E+00±3.81E-01≈
1.13E+03±9.03E+02−
1.66E+01±6.53E+00−
4.36E+00±5.94E-01−
1.16E+01±3.51E+00−
2.74E+02±1.71E+02−
1.08E+02±7.15E+01−
3.15E+02±4.01E-13≈
2.25E+02±2.56E+00≈
2.03E+02±5.31E-01≈
1.00E+02±4.02E-02≈
3.62E+02±4.69E+01≈
7.99E+02±2.68E+01≈
8.13E+02±7.12E+01−
1.40E+03±5.06E+02−
1
13
16

ACoS-jDE
Mean Error±Std Dev
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
1.24E+00±8.87E+00
2.03E+01±4.44E-02
1.32E+00±2.31E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
4.30E+01±5.65E+00
1.22E-03±4.94E-03
2.55E+03±3.02E+02
4.92E-01±6.51E-02
2.82E-01±3.55E-02
2.63E-01±3.44E-02
5.88E+00±8.14E-01
9.99E+00±2.49E-01
2.86E+02±1.25E+02
1.39E+01±9.31E+00
4.16E+00±6.71E-01
8.51E+00±1.90E+00
1.01E+02±8.28E+01
7.21E+01±5.14E+01
3.15E+02±3.73E-13
2.23E+02±7.89E-01
2.02E+02±3.67E-01
1.00E+02±3.64E-02
3.70E+02±4.53E+01
8.01E+02±3.54E+01
5.43E+02±2.29E+02
7.83E+02±3.71E+02

SaDE
Mean Error±Std Dev
3.60E+05±2.74E+05−
0.00E+00±0.00E+00≈
1.92E+01±5.60E+01−
4.13E+01±3.65E+01−
2.05E+01±4.94E-02≈
4.86E+00±2.15E+00−
1.12E-02±1.50E-02−
5.85E-02±2.36E-01−
3.72E+01±8.61E+00+
2.82E-01±4.35E-01−
3.25E+03±5.37E+02−
7.95E-01±9.96E-02−
2.66E-01±4.05E-02+
2.35E-01±3.70E-02≈
4.10E+00±1.40E+00+
1.10E+01±2.64E-01−
1.40E+04±1.36E+04−
3.52E+02±4.95E+02−
6.31E+00±1.15E+01−
1.39E+02±2.02E+02−
4.46E+03±7.23E+03−
1.54E+02±5.78E+01−
3.15E+02±2.24E-13≈
2.26E+02±2.79E+00≈
2.08E+02±2.54E+00≈
1.11E+02±3.24E+01−
4.20E+02±4.42E+01−
8.93E+02±3.46E+01−
1.10E+03±2.16E+02−
1.48E+03±5.40E+02−
3
21
6

ACoS-SaDE
Mean Error±Std Dev
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.03E+01±3.50E-02
2.93E+00±3.65E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
4.58E+01±7.67E+00
4.32E-02±3.08E-02
2.62E+03±2.87E+02
5.13E-01±6.75E-02
2.99E-01±4.94E-02
2.31E-01±2.73E-02
6.41E+00±8.18E-01
1.01E+01±3.12E-01
9.00E+02±4.25E+02
5.94E+01±3.10E+01
4.58E+00±7.50E-01
2.12E+01±1.08E+01
2.38E+02±1.24E+02
1.45E+02±8.03E+01
3.15E+02±2.45E-13
2.24E+02±9.64E-01
2.03E+02±1.62E+00
1.00E+02±4.15E-02
3.66E+02±4.28E+01
8.18E+02±4.69E+01
6.12E+02±1.67E+02
9.75E+02±4.91E+02

Table 3: Experimental results of JADE, ACoS-JADE, jDE, ACoS-jDE, SaDE and ACoS-SaDE over 51 independent runs on 30 test
functions with 30D from IEEE CEC2014 using 300,000 FEs.

23

Test Functions with 50D
from IEEE CEC2014
cf1
Unimodal
cf2
Functions
cf3
cf4
cf5
cf6
cf7
cf8
Simple
cf9
Multimodal
cf10
Functions
cf11
cf12
cf13
cf14
cf15
cf16
cf17
cf18
Hybrid
cf19
Functions
cf20
cf21
cf22
cf23
cf24
cf25
Composition
cf26
Functions
cf27
cf28
cf29
cf30
+
−
≈

JADE
Mean Error±Std Dev
1.45E±04 9.43E+03−
0.00E+00±0.00E+00≈
3.96E+03±2.41E+03−
2.35E+01±4.12E+01−
2.03E+01±2.81E-02≈
1.56E+01±6.56E+00−
2.84E-03±6.74E-03−
0.00E+00±0.00E+00≈
5.15E+01±7.85E+00≈
1.17E-02±1.33E-02−
3.84E+03±3.04E+02≈
2.50E-01±3.42E-02≈
3.29E-01±4.25E-02−
3.04E-01±8.56E-02≈
7.17E+00±8.18E-01+
1.77E+01±3.71E-01≈
2.40E+03±6.31E+02≈
1.74E+02±5.03E+01≈
1.30E+01±6.01E+00−
8.27E+03±6.67E+03−
1.25E+03±3.07E+02+
4.81E+02±1.58E+02−
3.44E+02±4.26E-13≈
2.74E+02±1.66E+00≈
2.16E+02±7.03E+00−
1.00E+02±1.33E-01≈
4.48E+02±5.03E+01+
1.18E+03±5.71E+01≈
9.00E+02±6.73E+01−
9.71E+03±7.21E+02≈
3
12
15

ACoS-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
1.10E+01±3.07E+01
2.03E+01±3.68E-02
1.17E+01±7.19E+00
8.69E-04±2.73E-03
0.00E+00±0.00E+00
5.28E+01±6.61E+00
9.79E-03±1.09E-02
3.93E+03±3.76E+02
2.64E-01±3.71E-02
3.16E-01±4.45E-02
2.98E-01±9.03E-02
7.35E+00±8.60E-01
1.78E+01±5.19E-01
2.42E+03±5.03E+02
1.88E+02±4.92E+01
1.07E+01±3.80E+00
2.38E+02±7.09E+01
1.41E+03±4.21E+02
4.32E+02±1.54E+02
3.44E+02±4.98E-13
2.74E+02±2.20E+00
2.09E+02±2.64E+00
1.00E+02±6.88E-02
4.77E+02±6.60E+01
1.17E+03±9.34E+01
8.72E+02±8.50E+01
9.89E+03±1.08E+03

jDE
Mean Error±Std Dev
4.58E+05±2.03E+05−
9.19E-09±1.83E-08−
0.00E+00±0.00E+00≈
8.70E+01±1.92E+01−
2.04E+01±3.30E-02≈
8.88E+00±7.14E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
9.15E+01±9.51E+00−
7.34E-04±2.96E-03+
5.22E+03±3.62E+02≈
4.93E-01±5.40E-02≈
3.84E-01±4.45E-02−
3.26E-01±5.50E-02−
1.20E+01±1.28E+00≈
1.82E+01±3.72E-01≈
2.16E+04±1.32E+04−
5.91E+02±7.38E+02−
1.30E+01±4.48E+00≈
4.86E+01±1.64E+01−
8.53E+03±7.94E+03−
5.40E+02±1.12E+02−
3.44E+02±4.17E-13≈
2.68E+02±2.17E+00≈
2.07E+02±1.47E+00≈
1.00E+02±3.69E-02≈
4.48E+02±7.13E+01−
1.09E+03±3.35E+01≈
1.04E+03±1.95E+02−
8.70E+03±4.77E+02≈
1
14
15

ACoS-jDE
Mean Error Std Dev
2.94E+02±1.30E+03
0.00E+00±0.00E+00
0.00E+00±0.00E+00
4.45E+01±3.94E+01
2.04E+01±3.39E-02
6.34E+00±5.31E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
8.92E+01±1.12E+01
2.69E-03±5.18E-03
5.26E+03±3.88E+02
5.02E-01±5.75E-02
3.68E-01±3.80E-02
2.95E-01±3.04E-02
1.19E+01±1.39E+00
1.84E+01±4.20E-01
2.09E+03±5.36E+02
1.22E+02±4.01E+01
1.20E+01±2.89E+00
4.43E+01±1.89E+01
9.80E+02±2.91E+02
4.30E+02±1.50E+02
3.44E+02±2.87E-13
2.67E+02±2.45E+00
2.07E+02±1.44E+00
1.00E+02±5.47E-02
4.04E+02±6.10E+01
1.13E+03±5.82E+01
8.22E+02±5.41E+01
8.88E+03±5.72E+02

SaDE
Mean Error±Std Dev
9.38E+05±2.96E+05−
3.65E+03±4.02E+03−
3.04E+03±1.64E+03−
9.34E+01±3.89E+01−
2.07E+01±4.62E-02≈
1.77E+01±3.55E+00−
1.43E-02±1.36E-02−
1.46E+00±1.78E+00−
8.78E+01±1.45E+01+
1.57E+00±1.11E+00−
6.49E+03±1.70E+03−
1.10E+00±1.10E-01−
4.26E-01±5.82E-02−
3.09E-01±3.72E-02−
1.46E+01±4.25E+00+
2.01E+01±3.19E-01−
5.72E+04±3.41E+04−
5.82E+02±5.63E+02−
1.39E+01±6.45E+00+
8.79E+02±6.50E+02−
6.25E+04±3.33E+04−
4.80E+02±1.43E+02+
3.44E+02±2.85E-13≈
2.75E+02±3.44E+00≈
2.17E+02±8.71E+00−
1.94E+02±2.36E+01−
7.67E+02±6.81E+01−
1.41E+03±1.25E+02−
1.43E+03±3.82E+02−
1.19E+04±1.78E+03−
4
23
3

ACoS-SaDE
Mean Error±Std Dev
4.63E+03 6.03E+03
2.90E+02 6.17E+02
0.00E+00 0.00E+00
2.84E+01 3.24E+01
2.05E+01 3.40E-02
7.77E+00±2.56E+00
3.28E-03±4.56E-03
0.00E+00±0.00E+00
1.01E+02±2.16E+01
1.06E-01±1.35E-01
6.07E+03±4.09E+02
6.27E-01±8.33E-02
4.01E-01±6.71E-02
2.93E-01±2.95E-02
1.74E+01±2.32E+00
1.88E+01±3.95E-01
2.12E+03±5.72E+02
4.93E+02±4.00E+01
1.67E+01±1.04E+01
1.54E+02±7.20E+01
1.18E+03±5.07E+02
5.04E+02±1.08E+02
3.44E+02±2.87E-13
2.69E+02±4.68E+00
2.10E+02±9.31E+00
1.23E+02±4.26E+01
5.69E+02±6.85E+01
1.20E+03±6.72E+01
9.32E+02±1.06E+02
9.99E+03±9.46E+02

Table 4: Experimental results of JADE, ACoS-JADE, jDE, ACoS-jDE, SaDE and ACoS-SaDE over 51 independent runs on 30 test
functions with 50D from IEEE CEC2014 using 500,000 FEs.

8

10

10

Average Function Error Value

Average Function Error Value

10

5

10

0

10

−5

10

−10

10

0

JADE
ACoS−JADE
jDE
ACoS−jDE
SaDE
ACoS−SaDE
60000

JADE
ACoS−JADE
jDE
ACoS−jDE
SaDE
ACoS−SaDE

6

10

4

10

2

10

0

120000

180000

240000

300000

FEs

(a) cf1 with 30D

10

0

60000

120000

180000

240000

300000

FEs

(b) cf20 with 30D

Figure 3: Evolution of the average function error values derived from three state-ofthe-art DE variants (JADE, jDE and SaDE ) and their augmented algorithms versus the
number of FEs on cf1 with 30D and cf20 with 30D

5.3

Comparison between ACoS with other Eigen coordinate system based methods

The aim of this subsection is to compare ACoS with other Eigen coordinate system
based methods: CoBiDE, DE/eig, and CPI-DE. Due to its outstanding performance,
JADE was selected as the instance algorithm. Afterward, we applied ACoS, CoBiDE,
DE/eig, and CPI-DE to JADE and obtained ACoS-JADE, CoJADE, JADE/eig, and
CPI-JADE, respectively. For fair comparison, CoJADE, JADE/eig, and CPI-JADE
adopted the same parameter settings of F , CR, and N P with the original JADE, while
the other parameter settings were identical with their own original papers. cf1 -cf30
with 30D were employed in the comparative study, and Table V summarizes the experimental results, where“+”, “−”, and “≈” denote that the performance of the corresponding algorithm is better than, worse than, and similar to that of ACoS-JADE,
respectively.
As shown in Table V, ACoS-JADE exhibits the best performance among the four
compared methods. It outperforms CoJADE, JADE/eig, and CPI-JADE on 14, 16 and
10 test functions, respectively; while only loses on no more than two test functions.
It is worth noting that ACoS-JADE is never inferior to the three competitors on any
unimodal functions, hybrid functions, and composition functions. Compared with CoJADE and JADE/eig, CPI-JADE and ACoS-JADE reach significantly better performance, which demonstrates the potential of utilizing the cumulative population distribution information rather than the single population distribution information to estimate the Eigen coordinate system. Compared with CPI-JADE, ACoS-JADE’s superior
performance is largely attributed to the usage of the additional archiving mechanism
and the probability vector p~.

24

Table 5: Experimental results of CoJADE, JADE/eig, CPI-JADE, and ACoS-JADE
over 51 independent runs on 30 test functions with 30D from IEEE CEC2014 using
300,000 FEs.
Test Functions with
30D from IEEE CEC2014
cf1
Unimodal
cf2
Functions
cf3
cf4
cf5
cf6
cf7
cf8
Simple
cf9
cf10
Multimodal
cf11
Functions
cf12
cf13
cf14
cf15
cf16
cf17
cf18
Hybrid
cf19
cf20
Functions
cf21
cf22
cf23
cf24
cf25
Composition
cf26
cf27
Functions
cf28
cf29
cf30
+
−
≈

5.4

CoJADE
Mean Error±Std Dev
3.96E+01±1.27E+02−
0.00E+00±0.00E+00≈
5.90E-01±6.44E-01−
0.00E+00±0.00E+00≈
2.03E+01±1.09E-01≈
7.67E+00±3.51E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.66E+01±4.25E+00−
7.57E-02±3.08E-02−
1.76E+03±2.41E+02≈
2.93E-01±4.28E-02−
2.19E-01±3.64E-02≈
2.31E-01±3.02E-02≈
3.23E+00±3.59E-01≈
9.62E+00±2.93E-01−
1.26E+03±3.76E+02−
1.01E+02±3.33E+01−
4.66E+00±8.20E-01−
5.55E+02±7.08E+02−
1.45E+03±5.33E+03−
1.07E+02±6.93E+01≈
3.15E+02±4.01E-13≈
2.24E+02±1.72E+00≈
2.03E+02±9.00E-01≈
1.00E+02±4.71E-02≈
3.41E+02±4.96E+01≈
8.02E+02±3.81E+01≈
7.31E+02±1.26E+01−
1.77E+03±8.13E+02−
0
14
16

JADE/eig
Mean Error±Std Dev
1.00E+02±3.12E+02−
0.00E+00±0.00E+00≈
2.30E-02±3.83E-02−
0.00E+00±0.00E+00≈
2.03E+01±4.46E-02≈
6.98E+00±4.06E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.46E+01±4.80E+00≈
5.47E-01±1.55E-01−
1.83E+03±2.25E+02−
3.14E-01±5.91E-02−
2.23E-01±4.05E-02≈
2.31E-01±3.00E-02−
3.27E+00±4.45E-01≈
9.76E+00±3.48E-01−
1.42E+03±4.38E+02−
9.73E+01±3.70E+01−
4.59E+00±6.63E-01≈
2.52E+02±2.57E+02−
6.95E+02±1.11E+03−
1.03E+02±6.94E+02≈
3.15E+02±4.01E-13≈
2.25E+02±3.53E+00≈
2.03E+02±6.41E-01≈
1.00E+02±4.53E-02≈
3.45E+02±4.85E+01−
8.06E+02±3.69E+01−
7.30E+02±3.79E+01−
1.68E+03±7.22E+02−
0
16
14

CPI-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.03E+01±3.68E-02≈
3.44E+00±3.57E+00+
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.24E+01±5.33E+00≈
3.83E-01±7.47E-02−
1.77E+03±2.55E+02≈
3.95E-01±8.64E-02−
2.04E-01±3.38E-02+
2.32E-01±3.35E-02≈
3.26E+00±3.78E-01≈
9.70E+00±2.79E-01−
1.16E+03±3.81E+02−
9.47E+01±3.42E+01−
4.89E+00±7.64E-01−
1.12E+01±5.24E+00≈
3.33E+02±1.54E+02−
9.99E+01±6.09E+01≈
3.15E+02±4.01E-13≈
2.24E+02±2.93E+00≈
2.03E+02±5.77E-01≈
1.00E+02±2.92E-02≈
3.53E+02±5.03E+01−
8.02E+02±4.34E+01≈
8.13E+02±7.12E+01−
1.40E+03±7.24E+02−
2
10
18

ACoS-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.03E+01±6.08E-02
6.11E+00±3.54E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.47E+01±3.89E+00
4.89E-03±9.84E-03
1.69E+03±1.88E+02
2.80E-01±3.76E-02
2.21E-01±3.64E-02
2.24E-01±3.04E-02
3.16E+00±3.76E-01
9.41E+00±4.33E-01
4.11E+02±1.56E+02
2.94E+01±1.95E+01
4.48E+00±7.83E-01
1.22E+01±4.65E+00
1.40E+02±1.00E+02
1.12E+02±7.46E+01
3.15E+02±3.59E-13
2.24E+02±1.85E+00
2.03E+02±4.16E-01
1.00E+02±4.27E-02
3.34E+02±4.61E+01
7.96E+02±4.57E+01
6.12E+02±2.00E+02
1.02E+03±4.21E+02

The Benefit of ACoS’s Components

We are interested in identifying the benefit of two distinguished components of ACoS:
the additional archiving mechanism and the probability vector p~. To this end, we still
selected JADE as the instance algorithm and two groups of experiments were carried
out. In the first group, the archiving mechanism was eliminated and the offspring in
the current generation played the role of the archive A in ACoS accordingly, while the
other parts were kept untouched. This compared method is denoted as nonAr-ACoSJADE. With respect to the second group, instead of adaptive tuning, p~ was fixed during
the evolution. We tested three different values for each element of p~: 0, 0.5, and 1,
and these three values represent different conditions, i.e., only the original coordinate

25

26

Test Functions with
30D from IEEE CEC2014
cf1
Unimodal
cf2
Functions
cf3
cf4
cf5
cf6
cf7
cf8
Simple
cf9
Multimodal
cf10
Functions
cf11
cf12
cf13
cf14
cf15
cf16
cf17
cf18
Hybrid
cf19
Functions
cf20
cf21
cf22
cf23
cf24
cf25
Composition
cf26
cf27
Functions
cf28
cf29
cf30
+
−
≈

nonAr-JADE,
Mean Error±Std Dev
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.03E+01±4.03E-02≈
6.60E+00±3.66E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.41E+01±3.40E+00≈
6.93E-03±9.91E-03−
1.72E+03±2.41E+02≈
2.85E-01±3.95E-02≈
2.19E-01±3.15E-02≈
2.27E-01±3.29E-02≈
3.11E+00±4.27E-01≈
9.52E+00±3.68E-01−
4.11E+02±1.56E+02≈
9.21E+01±2.98E+01−
4.79E+00±8.02E-01−
2.29E+01±1.11E+01−
3.66E+02±1.99E+02−
1.30E+02±6.55E+01−
3.15E+02±4.01E-13≈
2.24E+02±1.81E+00≈
2.03E+02±5.71E-01≈
1.06E+02±2.37E+01−
3.43E+02±4.75E+01≈
8.01E+02±4.06E+01≈
1.80E+05±1.28E+06−
1.53E+03±7.69E+02−
0
11
19

JADE
Mean Error±Std Dev
6.09E+02±1.18E+03−
0.00E+00±0.00E+00≈
9.86E-04±5.95E-03−
0.00E+00±0.00E+00≈
2.03E+01±3.23E-02≈
9.15E+00±2.21E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.62E+01±4.96E+00−
8.16E-03±1.18E-02−
1.67E+03±2.13E+02≈
2.67E-01±3.57E-02≈
2.20E-01±3.25E-02≈
2.41E-01±3.18E-02−
3.20E+00±4.55E-01≈
9.30E+00±4.61E-01≈
1.91E+04±1.08E+05−
1.14E+02±1.97E+02−
4.48E+00±7.56E-01≈
3.11E+03±3.01E+03−
1.33E+04±4.12E+04−
1.44E+02±7.74E+01−
3.15E+02±4.01E-13≈
2.25E+02±3.60E+00≈
2.03E+02±1.13E+00≈
1.02E+02±1.39E+01≈
3.35E+02±4.68E+01≈
7.96E+02±4.63E+01≈
8.28E+02±3.27E+02−
1.66E+03±7.61E+02−
0
13
17

half-ACoS-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.03E+01±6.08E-02≈
6.70E+00±3.44E+00−
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.46E+01±4.42E+00≈
5.64E-01±1.46E-01−
1.82E+03±2.19E+02−
2.95E-01±4.39E-02−
2.18E-01±3.79E-02≈
2.34E-01±3.28E-02−
3.22E+00±3.49E-01≈
9.68E+00±3.43E-01−
3.87E+02±1.94E+02+
2.04E+01±1.42E+01+
4.48E+00±7.72E-01≈
1.18E+01±9.27E+00≈
1.60E+02±8.74E+01−
9.76E+01±6.22E+01+
3.15E+02±4.01E-13≈
2.24E+02±2.59E+00≈
2.02E+02±2.99E-01≈
1.00E+02±3.50E-02≈
3.49E+02±4.80E+01−
8.06E+02±3.56E+01−
7.07E+02±8.30E+02−
1.13E+03±4.87E+02−
3
11
16

Eig-ACoS-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
0.00E+00±0.00E+00≈
2.07E+01±3.02E-01−
8.19E+00±4.90E+00−
9.17E-04±2.95E-03−
2.69E+01±5.05E+00−
2.79E+01±5.73E+00−
2.35E+03±2.35E+02−
2.75E+03±2.75E+02−
6.32E-01±1.42E-01−
2.32E-01±4.46E-02−
2.15E-01±6.23E-02≈
4.00E+00±6.87E-01−
1.08E+01±5.39E-01−
5.52E+02±2.33E+02−
8.60E+01±2.63E+01−
5.89E+00±1.11E+00−
4.69E+01±2.02E+01−
4.51E+02±1.34E+02−
1.48E+02±7.06E+01−
3.15E+02±4.01E-13≈
2.27E+02±4.62E+00≈
2.03E+02±5.66E-01≈
1.00E+02±5.39E-02≈
3.82E+02±4.18E+01−
8.58E+02±6.96E+01−
4.60E+05±2.31E+06−
1.27E+03±6.65E+02−
0
21
9

ACoS-JADE
Mean Error±Std Dev
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.03E+01±6.08E-02
6.11E+00±3.54E+00
0.00E+00±0.00E+00
0.00E+00±0.00E+00
2.47E+01±3.89E+00
4.89E-03±9.84E-03
1.69E+03±1.88E+02
2.80E-01±3.76E-02
2.21E-01±3.64E-02
2.24E-01±3.04E-02
3.16E+00±3.76E-01
9.41E+00±4.33E-01
4.11E+02±1.56E+02
2.94E+01±1.95E+01
4.48E+00±7.83E-01
1.22E+01±4.65E+00
1.40E+02±1.00E+02
1.12E+02±7.46E+01
3.15E+02±3.59E-13
2.24E+02±1.85E+00
2.03E+02±4.16E-01
1.00E+02±4.27E-02
3.34E+02±4.61E+01
7.96E+02±4.57E+01
6.12E+02±2.00E+02
1.02E+03±4.21E+02

Table 6: Experimental results of nonAr-JADE, JADE, half-ACoS-JADE, Eig-ACoS-JADE, and ACoS-JADE over 51 independent runs on
30 test functions with 30D from IEEE CEC2014 using 300,000 FEs.

system is used, the Eigen and original coordinate systems have an equal probability to
be selected, and only the Eigen coordinate system is utilized, respectively. It is evident
that the first condition is equivalent to the original JADE. These compared methods are
named as JADE, half-ACoS-JADE, and Eig-ACoS-JADE, respectively.
We conducted the experiments on cf1 -cf30 with 30D. Experimental results are presented in Table VI, where “+”, “−”, and “≈” denote that the performance of the corresponding algorithm is better than, worse than, and similar to that of ACoS-JADE,
respectively. From Table VI, ACoS-JADE performs the best among the five compared methods. Compared with nonAr-ACoS-JADE, ACoS-JADE is significantly better on 11 test functions and does not lose on any test functions. Although ACoS-JADE
and nonAr-ACoS-JADE achieve comparable performance on the unimodal functions,
ACoS-JADE outperforms nonAr-ACoS-JADE on more complex functions (i.e., Simple multimodal functions, hybrid functions, and composition functions). The reason is
probably that the additional archiving mechanism preserves the offspring not only in
the current generation but also in the past several generations, thus providing sufficient
information to estimate a more reliable Eigen coordinate system in complex environments. Compared with JADE, half-ACoS-JADE, and Eig-ACoS-JADE, ACoS-JADE
produces better results on 13, 11 and 20 test functions, respectively; while the three
competitors cannot outperform ACoS-JADE on more than three test functions. This
phenomenon suggests that the updating of p~ in our framework has the capability to
provide a more proper coordinate system. It is noteworthy that ACoS-JADE and halfACoS-JADE have an advantage over JADE and Eig-ACoS-JADE, which again verifies
the effectiveness of combining both the Eigen and original coordinate systems together.
From the above discussion, one can conclude that both the additional archiving
mechanism and the probability vector p~ play very important roles in ACoS. The former
is beneficial to estimate a more reliable Eigen coordinate system, and the latter enables
each individual to select a more appropriate coordinate system. In addition, the utilization of both the Eigen and original coordinate systems is quite necessary in the design
of an EA.

5.5

Evolution of the probability vector in ACoS

Since the probability vector p~ = (p1 , p2 , ...pN P ) determines the selection ratio of each
coordinate system for each individual, one may be interested in investigating the dynamic changes of p~ during P
the evolutionary search. For this purpose, the mean value
NP
of p~, referred as pm = N1P i=1 pi , is monitored in this subsection.
We still chose JADE as the instance algorithm and tested ACoS-JADE on three
test functions with 30D from IEEE CEC2014: the unimodal function cf1 , the simple
multimodal function cf10 , and the composite function cf23 . These three different kinds
of test functions aim to provide a comprehensive study on the changes of p~. To visualize
the results, Fig. 4 plots the evolution of the average values of pm and 1 − pm over 51
independent runs.
As shown in Fig. 4, there are three different types of curves. In the first type (see
Fig. 4(a)), the Eigen coordinate system has a larger probability to be selected than
the original coordinate system. Nevertheless, in the second type (see Fig. 4 (b)), the
situation is opposite. For the third type (see Fig. 4(c)), these two coordinate systems
27

1

1

0.8

pm

0.8

pm

0.6

1−pm

0.6

1−pm

0.4

0.4

0.2

0.2

0
0

60000

120000

180000

FEs

240000

0

300000

(a) cf1 with 30D

60000

120000

180000

FEs

240000

300000

(b) cf10 with 30D

1

pm

0.8

1−pm

0.6
0.4
0.2

0

60000

120000

180000

FEs

240000

300000

(c) cf23 with 30D

Figure 4: The evolution of the average values of pm and 1 − pm in ACoS-JADE in the
optimization of cf1 , cf10 and cf23

have the similar probability to be chosen over the course of evolution. It can be seen
from Table VI that Eig-ACoS-JADE outperforms JADE on cf1 , JADE surpasses EigACoS-JADE on cf10 , and Eig-ACoS-JADE and JADE reach the similar performance
on cf23 , which implies that the Eigen coordinate system is more appropriate for cf1 ,
the original coordinate system is a better choice for cf10 , and these two coordinate
systems are both important for cf23 , respectively. Interestingly, the changes of pm and
1 − pm in Fig. 4 are consistent with the above analysis, which indicates that ACoS
is able to adapt p~ to a reasonable value to match different function landscapes. In
summary, the following concludes can be made: 1) there does not exist a one-sizefits-all coordinate system, and 2) our proposed framework can effectively select the
appropriate coordinate system for different optimization problems.

6

Conclusion

An adaptive framework for tuning the coordinate systems in EAs referred as ACoS
has been proposed in this paper. ACoS provides a simple yet efficient approach to
establish the Eigen coordinate system via an additional archiving mechanism and the
rank-µ-update strategy. Thereafter, it adopts a probability vector p~, which is adaptively
updated by making use of the collected information from the offspring, to select an
appropriate coordinate system between the Eigen and original coordinate systems for
an EA. This paper also presents a new point of view toward how to transform an evolutionary operator in the original coordinate system into the corresponding evolutionary
28

operator in the Eigen coordinate system. We have applied ACoS to two of the most
popular EA paradigms, namely PSO and DE, for solving test functions with 30D and
50D from IEEE CEC2014. Simulation results demonstrate that ACoS is capable of
significantly enhancing the performance of both PSO and DE. Comparing with some
other Eigen coordinate system based methods, ACoS also achieves quite promising
results. In the future, we will apply ACoS to improve the performance of other EA
paradigms.
The Matlab source code of ACoS can be obtained from the authors upon request.

References
[1] Janez Brest, Sao Greiner, Borko Boskovic, Marjan Mernik, and Viljem Zumer.
Self-adapting control parameters in differential evolution: A comparative study
on numerical benchmark problems. IEEE Transactions on Evolutionary Computation, 10(6):646–657, 2006.
[2] Maurice Clerc and James Kennedy. The particle swarm-explosion, stability, and
convergence in a multidimensional complex space. IEEE Transactions on Evolutionary Computation, 6(1):58–73, 2002.
[3] Swagatam Das and Ponnuthurai Nagaratnam Suganthan. Differential evolution:
A survey of the state-of-the-art. IEEE Transactions on Evolutionary Computation, 15(1):4–31, 2011.
[4] Russell Eberhart and James Kennedy. A new optimizer using particle swarm
theory. In Micro Machine and Human Science, 1995. MHS’95., Proceedings of
the Sixth International Symposium on, pages 39–43. IEEE, 1995.
[5] L J Fogel and A J Owens. Artificial intelligence through simulated evolution.
London John Wiley, 1966.
[6] Shu-Mei Guo and Chin-Chang Yang. Enhancing differential evolution utilizing
eigenvector-based crossover operator. IEEE Transactions on Evolutionary Computation, 19(1):31–49, 2015.
[7] Nikolaus Hansen. Variable metrics in evolutionary computation. 2009. https:
//www.lri.fr/˜hansen/hansen-habil-manu.pdf.
[8] Nikolaus Hansen. The CMA evolution strategy: A tutorial. arXiv preprint
arXiv:1604.00772, 2016.
[9] Nikolaus Hansen and Andreas Ostermeier. Completely derandomized selfadaptation in evolution strategies. Evolutionary Computation, 9(2):159–195,
2001.
[10] John H Holland. Adaptation in natural and artificial systems: an introductory
analysis with applications to biology, control, and artificial intelligence. MIT
press, 1992.
29

[11] Dervis Karaboga and Bahriye Basturk. A powerful and efficient algorithm for
numerical function optimization: artificial bee colony (abc) algorithm. Journal of
Global Optimization, 39(3):459–471, 2007.
[12] John R Koza. Genetic programming: on the programming of computers by means
of natural selection. MIT press, 1992.
[13] JJ Liang, BY Qu, and PN Suganthan. Problem definitions and evaluation
criteria for the cec 2014 special session and competition on single objective
real-parameter numerical optimization. Computational Intelligence Laboratory,
Zhengzhou University, Zhengzhou China and Technical Report, Nanyang Technological University, Singapore, 2013.
[14] Gwo-Ching Liao. A novel evolutionary algorithm for dynamic economic dispatch with energy saving and emission reduction in power system integrated wind
power. Energy, 36(2):1018–1029, 2011.
[15] A Nguyen, J Yosinski, and J Clune. Understanding innovation engines: Automated creativity and improved stochastic optimization via deep learning. Evolutionary Computation, 24(3):959–966, 2016.
[16] A Kai Qin, Vicky Ling Huang, and Ponnuthurai N Suganthan. Differential evolution algorithm with strategy adaptation for global numerical optimization. IEEE
Transactions on Evolutionary Computation, 13(2):398–417, 2009.
[17] Alma AM Rahat, Richard M Everson, and Jonathan E Fieldsend. Hybrid evolutionary approaches to maximum lifetime routing and energy efficiency in sensor
mesh networks. Evolutionary Computation, 23(3):481–507, 2015.
[18] Ingo Rechenberg. Evolutionsstrategien. In Simulationsmethoden in der Medizin
und Biologie, pages 83–114. Springer, 1978.
[19] Robert G Reynolds. An introduction to cultural algorithms. In Proceedings of
the third annual conference on evolutionary programming, volume 131139. Singapore, 1994.
[20] Juan J Romero and Penousal Machado. The art of artificial evolution: a handbook
on evolutionary art and music. Springer Science & Business Media, 2007.
[21] Yuhui Shi. Brain storm optimization algorithm. In International Conference in
Swarm Intelligence, pages 303–309. Springer, 2011.
[22] Yuhui Shi and Russell Eberhart. A modified particle swarm optimizer. In Evolutionary Computation Proceedings, 1998. IEEE World Congress on Computational Intelligence., The 1998 IEEE International Conference on, pages 69–73.
IEEE, 1998.
[23] Fernando Silva, Paulo Urbano, Luı́s Correia, and Anders Lyhne Christensen.
odNEAT: An algorithm for decentralised online evolution of robotic controllers.
Evolutionary Computation, 23(3):421–449, 2015.
30

[24] Rainer Storn and Kenneth Price. Differential evolution–a simple and efficient
heuristic for global optimization over continuous spaces. Journal of Global Optimization, 11(4):341–359, 1997.
[25] Ying Tan and Yuanchun Zhu. Fireworks algorithm for optimization. In International Conference in Swarm Intelligence, pages 355–364. Springer, 2010.
[26] Yong Wang, Han-Xiong Li, Tingwen Huang, and Long Li. Differential evolution
based on covariance matrix learning and bimodal distribution parameter setting.
Applied Soft Computing, 18:232–247, 2014.
[27] Yong Wang, Zhi-Zhong Liu, Jianbin Li, Han-Xiong Li, and Gary G Yen. Utilizing
cumulative population distribution information in differential evolution. Applied
Soft Computing, 48:329–346, 2016.
[28] Jingqiao Zhang and Arthur C Sanderson. JADE: Adaptive differential evolution
with optional external archive. IEEE Transactions on Evolutionary Computation,
13(5):945–958, 2009.
[29] Q Zhang, A Zhou, and Y Jin. RM-MEDA: A regularity model-based multiobjective estimation of distribution algorithm. IEEE Transactions on Evolutionary
Computation, 12(1):41–63, 2008.

31

