2) Mutation: After initialization operation, for each target vector x
G
i
in
the current population, a mutation strategy is utilized to produce a
mutant vector v
G
i
. Some useful mutation operators are given as
follows:
“DE=rand=1”: v
G
i
¼ x
G
r
1
þ F ⋅
x
G
r
2
x
G
r
3
; (2)
“DE=rand=2”: v
G
i
¼ x
G
r
1
þ F ⋅
x
G
r
2
x
G
r
3
þ F ⋅
x
G
r
4
x
G
r
5
; (3)
“DE=current to beat=1”: v
G
i
¼ x
G
i
þ F ⋅
x
G
best
x
G
i
þ F ⋅
x
G
r
1
x
G
r
2
;
(4)
“DE=current to best=2”: v
G
i
¼ x
G
i
þ F ⋅
x
G
best
x
G
i
þ F ⋅
x
G
r
1
x
G
r
2
þ x
G
r
3
x
G
r
4
;
(5)
“DE=rand to best=1”: v
G
i
¼ x
G
r
1
þ F ⋅
x
G
best
x
G
i
þ F ⋅
x
G
r
2
x
G
r
3
;
(6)
where r
1
, r
2
, r
3
, r
4
, and r
5
are mutually exclusive integers randomly
chosen within the range [1, NP], and are also different from the index i
(i.e. r
1
6¼ r
2
6¼ r
3
6¼ r
4
6¼ r
5
6¼ i); x
G
best
is the target vector with the best
fitness value at G-th generation.
3) Crossover: For each target vector
l
x
G
i
, a trial vector u
G
i
is generated as
follows:
u
G
ij
¼
(
v
G
ij
; rand
j
CR or j ¼ j
rand
x
G
ij
; otherwise
; (7)
where rand
j
and j
rand
are a random number uniformly generated within
the range [0, 1] and a randomly selected integer within the range [1, D],
respectively.
4) Selection: The trial vector u
G
i
competes with its target vector x
G
i
and
then the better one will be selected for the next generation:
x
Gþ1
i
¼
u
G
i
; f
u
G
i
f
x
G
i
x
G
i
; otherwise
; (8)
5) Implement Steps 2 to 4 repeatedly until the number of generations is
equal to G
max
.
3. Related work
Although DE is one of the most competitive meta-heuristic algorithms
and has been applied to solve a variety of optimization problems in
practice, its performance is heavily dependent on parameter settings and
selected strategies. To alleviate this problem, DE researchers proposed
various techniques [22,23] to enhance the performance of DE. In the
following, a number of popular DE variants are reviewed according to the
parameter control method, strategy improvement, and use of other
methods.
3.1. Parameter control method
DE has three main control parameters, i.e., mutation control param-
eter F, crossover control parameter CR, and population size NP. These
parameters significantly affect the performance of DE. Therefore, many
empirical guidelines of parameter setting [9,24–27] have been intro-
duced to enhance the performance of DE. However, these guidelines are
often inconsistent or even confusing, as they are based on individual
experiments [28]. To avoid handcrafting the control parameters, various
techniques have been developed to automatically determine the control
parameters F and CR. For Example, Abbass [29] utilized a normal dis-
tribution function to generate the control parameters F and CR in a
self-adaptive Pareto DE algorithm (SPDE). In Ref. [30], a DE with
self-adaptive parameter control (jDE) is proposed. In jDE, F and CR are
encoded into each individual and are generated by a uniform distribution
function. In a self-adaptive DE (SaDE) [28], F in each individual is
randomly generated from a normal distribution function, while CR of
each individual in population is self-adaptively generated by a normal
distribution function in which a mean value is updated by the previous
successful experience. Ghosh et al. [31] used the objective function value
of each individual to update the control parameters. Wang et al. [32]
introduced a DE based on covariance matrix learning and bimodal dis-
tribution parameter setting (CoBiDE), in which F and CR of each indi-
vidual are generated using bimodal distribution consisting of two Cauchy
distribution functions. In Ref. [33], a success-history based mechanism is
utilized to automatically produce F and CR in success-history based
adaptive DE (SHADE), which is a modified version of JADE. This
parameter adaptation mechanism is also used in Ref. [34]. Fan and Yan
[35] used a weighted average value to update the mean value of a normal
distribution function. Moreover, the encodings of
F and CR are at the
gene and individual levels, respectively. Recently, zoning evolution
proposed by Fan and Yan [36] is utilized to generate appropriate com-
binations of F and CR in a self-adaptive DE with zoning evolution of
control parameters and adaptive mutation strategies (ZEPDE). In addi-
tion to the above methods, constant control parameter combination
methods have also been used to enhance the performance of DE. For
example, an ensemble of mutation strategies and control parameters with
DE (EPSDE) is proposed in Ref. [16]. Similar to EPSDE, Wang et al. [37]
used three fixed combinations of control parameters F and CR in a
composite DE (CoDE). Overall, adaptive and self-adaptive parameter
control methods can effectively improve the performance of DE, although
it still needs further study to evaluate their performance under different
trial vector generation strategies [38].
3.2. Strategy improvement
The optimization performance of DE is strongly influenced by the
choice of mutation and crossover strategies. For Example, it is known that
mutation strategy DE/rand/1 is suited for exploration, while mutation
strategy DE/best/1 is better for exploitation. To improve mutation and
crossover strategies, Islam et al. [39] proposed a modified DE with p-best
crossover (MDE_pBX). In MDE_pBX, novel mutation crossover strategies
are utilized to enhance the optimization performance. Wang et al. [40]
presented an orthogonal crossover operator based on orthogonal design.
In Ref. [41], a normal random variable is utilized to enhance the muta-
tion strategy. Gong et al. [42] proposed a crossover rate repair method, in
which a number of DE variants are integrated. Yu et al. [43] presented a
variant of the greedy mutation operator DE/best/1 in an adaptive DE
(ADE). Guo and Yang [44] presented an eigenvector-based crossover
operator, which can significantly enhance the DE performance on some
non-separable unimodal functions. A multiple exponential recombina-
tion is proposed in Ref. [45], where it was shown that the proposed
crossover operator is effective compared with the binomial crossover
strategy. Cai and Wang [46] proposed a hybrid linkage crossover (HLX)
to solve the weakness of linkage-blind in DE.
For ensemble of multiple strategies, Qin et al. [28] used a pool of
mutation strategies in SaDE, where the selection of mutation strategy is
based on the previous successful experience. Wang et al. [37] selected
three mutation strategies for enhancing the performance of DE. In
Ref. [47], a strategy adaptation mechanism (SaM) is proposed to auto-
matically choose a more suitable mutation strategy to deal with a
particular type of optimization problem. In Refs. [35,36], two different
techniques are proposed to carry out the adaptation of mutation strategy.
Q. Fan et al. Swarm and Evolutionary Computation 44 (2019) 1–17
3