Constrained Real-Parameter Optimization with
Generalized Differential Evolution
Saku Kukkonen and Jouni Lampinen
Abstract— This paper presents results for the CEC 2006
Special Session on Constrained Real-Parameter Optimization
where the Generalized Differential Evolution (GDE) has been
used to solve given test problems. The given problems consist
of 24 problems having one objective function and one or more
in-/equality constraints. Almost all the problems were solvable
in a given maximum number of solution candidate evaluations.
The paper also shows how GDE actually needs lower number
of function evaluations than usually required.
I. I NTRODUCTION
Many practical problems have multiple objectives and sev-
eral aspects cause multiple constraints in the problems. For
example, mechanical design problems have several objectives
such as obtained performance and manufacturing costs, and
available resources may cause limitations. Constraints can be
divided into boundary constraints and constraint functions.
Boundary constraints are used when the value of a decision
variable is limited to some range, and constraint functions
represent more complicated constraints, which are expressed
as functions.
A mathematically constrained multi-objective optimization
can be presented in the form:
minimize {f
1
(x),f
2
(x),...,f
M
(x)}
subject to (g
1
(x),g
2
(x),...,g
K
(x))
T
≤
0.
Thus, there are M functions to be optimized and K constraint
functions. Maximization problems can be easily transformed
to minimization problems and different constraints can be
converted into form g
j
(x) ≤ 0, thereby the formulation
above is without loss of generality.
Problems used in this paper are single-objective problems
with constraints, and they have been defined in [1] for the
CEC 2006 Special Session on Constrained Real-Parameter
Optimization. The problems have different number of vari-
ables and in-/equality constraints, and difficulties of functions
vary from linear to non-linear. Also evaluation criteria are
given in [1].
This paper continues describing the basic Differential
Evolution (DE) in Section II and its extension Generalized
Differential Evolution (GDE) in Section III. Section IV
describes experiments and finally conclusions are given in
Section V.
The authors are with the Department of Information Technology,
Lappeenranta University of Technology, P.O. Box 20, FIN-53851 Lappeen-
ranta, Finland; email: saku.kukkonen@lut.fi.
II. DIFFERENTIAL EVOLUTION
The DE algorithm [2], [3] was introduced by Storn and
Price in 1995 and it belongs to the family of Evolutionary
Algorithms (EAs). The design principles of DE are simplic-
ity, efficiency, and the use of floating-point encoding instead
of binary numbers. As a typical EA, DE has a random initial
population that is then improved using selection, mutation,
and crossover operations. Several ways exist to determine
a stopping criterion for EAs but usually a predefined upper
limit G
max
for the number of generations to be computed
provides an appropriate stopping condition. Other control
parameters for DE are the crossover control parameter CR,
the mutation factor F , and the population size NP .
In each generation G, DE goes through each D dimen-
sional decision vector x
i,G
of the population and creates
the corresponding trial vector u
i,G
as follows in the most
common DE version, DE/rand/1/bin [4]:
r
1
,r
2
,r
3
∈{1, 2, . . . , NP } , (randomly selected,
except mutually different and different from i)
j
rand
= floor (rand
i
[0, 1) · D)+1
for(j = 1; j ≤ D; j = j + 1)
{
if(rand
j
[0, 1) < CR ∨ j = j
rand
)
u
j,i,G
= x
j,r3,G
+ F · (x
j,r1,G
- x
j,r2,G
)
else
u
j,i,G
= x
j,i,G
}
In this DE version, NP must be at least four and it remains
fixed along CR and F during the whole execution of the al-
gorithm. Parameter CR ∈ [0, 1], which controls the crossover
operation, represents the probability that an element for the
trial vector is chosen from a linear combination of three
randomly chosen vectors and not from the old vector x
i,G
.
The condition “j = j
rand
” is to make sure that at least
one element is different compared to the elements of the
old vector. The parameter F is a scaling factor for mutation
and its value is typically (0, 1+]
1
. In practice, CR controls
the rotational invariance of the search, and its small value
(e.g., 0.1) is practicable with separable problems while larger
values (e.g., 0.9) are for non-separable problems. The control
parameter F controls the speed and robustness of the search,
i.e., a lower value for F increases the convergence rate but
it also adds the risk of getting stuck into a local optimum.
Parameters CR and NP have the same kind of effect on the
convergence rate as F has.
1
Notation means that the upper limit is about 1 but not strictly defined.
0-7803-9487-9/06/$20.00/©2006 IEEE
2006 IEEE Congress on Evolutionary Computation
Sheraton Vancouver Wall Centre Hotel, Vancouver, BC, Canada
July 16-21, 2006
207
Authorized licensed use limited to: Nanyang Technological University. Downloaded on March 24,2010 at 21:48:14 EDT from IEEE Xplore. Restrictions apply.