IAC 2024 - IA Fast Track to Search Focused AI Solutions
Borgulya
1. CEJOR manuscript No.
(will be inserted by the editor)
A Multi-objective Evolutionary Algorithm
with a Separate Archive
Istv´n Borgulya
a
University of P´cs, Faculty of Business and Economics, H 7621 P´cs R´k´czi ut
e e a o ´
80, Hungary, e-mail: borgulya@ktk.pte.hu
Received: date 24.06.2004 / Revised version: 16.11.2004
Abstract In this paper a new algorithm has been developed for solving
constrained non-linear multi-objective optimization problems. This algo-
rithm was acquired by the modification of an earlier algorithm, while we
use other selection and recombination operators from the earlier algorithm,
we extended the algorithm with a separate archive (population). The archive
continuously stores the new potential Pareto optimal solutions, when it be-
comes full, the algorithm deletes a part of the archive. The new version
gives results which show a substantial improvement in quality over the ear-
lier version and performs slightly better then NSGA II on the chosen test
problems.
1 Multi-objective optimization problem
We can examine a constrained nonlinear multi-objective optimization
problem (MOP) with the following form
Minimize f (x) = (f 1 ( x),... ,f k ( x))
where x=(x 1 ,...,x m )∈ F ⊆S , x is the decision vector, S the decision space
and where we have k objective functions f i : m → .
Let us suppose that the domain S of dimension m is
m
S = {x∈ | ai ≤ xi ≤ bi , ai , bi , xi ∈ ,i=1,2,...,m}
whereas the feasible region F ⊆ S is defined by a set of r additional linear
The Hungarian Research Program OTKA T 042448 supported the study.
2. 24 I. Borgulya
and/or non-linear constraints (r ≥0): gj (x) ≤0, j = 0, 1, 2,..., r. Con-
straints in terms of equations e.g. h( x)=0, can be replaced by a pair of
inequalities: h( x)- 0, - h( x)- 0 where an additional parameter δ is used to
define the tolerance of the algorithm.
Let us review some corresponding concepts and definitions:
Pareto dominance: A solution x =(x 1 , x 2 , ... ,x m )∈ S is said to dominate
a solution z=(z 1 , z 2 , ... ,z m )∈ S (notation: x z ) if and only if
∀ i ∈{1,2,...,k} f i ( x ) ≤f i ( z )∧∃j ∈{1,2,...,k} f j ( x )< f j ( z).
Pareto optimality: A solution x ∈S is Pareto optimal if and only if
z∈ S: z x.
Pareto optimal set: For a given multi-objective problem (MOP), the
Pareto optimal set (PS) is defined as: PS= {x ∈S | z ∈S: z x }.
Pareto front: For a given MOP and Pareto optimal set PS, the Pareto
front (PF) is defined as: PF= {f (x) | x ∈PS}.
The solving of MOPs is a significantly more complex task than solving
scalar optimization problems, because their solution is usually not a single
value. The applicability of the best-known, classical methods for solving
MOPs is mostly restricted to linear objective functions [28]. In order to solve
the problem these methods reduce the objective functions to one function by
means of weighting; for example, they use a lexicographic order or use linear
programming procedures. In several cases the decision-maker’s possibilities
are widened by interactive facilities to allow the results to be monitored, to
set parameters and to influence the directions of the search [28], [20].
In the case of non-linear objective functions the solving of the MOP
is generally more difficult. We may choose from families of methods based
on a fuzzy system (e.g. [25], [26]), based on methods applying parame-
ter optimization (e.g. [17]) and we may choose heuristics methods. Various
heuristic methods are frequently used to solve MOP, such as simulated an-
nealing, tabu search, evolutionary algorithm (EA) and versions (e.g. genetic
algorithm (GA), evolutionary strategy (ES)).
EAs are well suited to MOP and a number of different algorithms has
been developed [30]. If we focus on the applied technique, we can dif-
ferentiate aggregation-based methods, population-based methods, Pareto-
dominance principle based techniques and niche-method- based techniques
[30]. The majority of the methods use the Pareto-dominance principle.
During the execution of an EA, a local set of Pareto optimal solutions is
determined at each EA generation. Many algorithms also use a secondary
population storing all, or some Pareto optimal solutions found through the
generations [30]. This is due to the EA method’s stochastic nature, which
does not guarantee that desirable solutions, once found, remain in the popu-
lation until the algorithm terminates. This secondary population is regularly
updated, and it can generally be used in two ways. The first of these ways
is when the individuals of the secondary population take part in the evo-
lutionary process (e.g. in the selection and recombination operations) [31],
[22], whilst in the second way the secondary population is a separate archive
and stores only the potential Pareto optimal solutions found [5], [7].
3. A Multi-objective Evolutionary Algorithm 25
In this paper we show a new algorithm for MOP. In [3] we have demon-
strated an EA to solve the MOP. This method, named MOSCA (M ulti-
objective Optimum S earch with C luster-based Aalgorithm) is a cluster-
based EA also using the Pareto-dominance principle and which produces
the approximation of PF with the decision maker. The MOSCA can han-
dle nonlinear continuous objective functions and takes constraints into ac-
count. The new method is an extended and improved version of MOSCA.
The difference between the old and the new version (named MOSCA2) is
as following:
– MOSCA2 uses subpopulations instead of clusters,
– MOSCA2 use truncation selection instead of random selection,
– MOSCA2 is extended with recombination operator and
– MOSCA2 is extended with a separate archive (population) also.
The new algorithm is capable of solving unconstrained or constrained
continuous nonlinear MOPs, and by increasing the size of the archive it
produces more and more high quality solutions. It can apply to cases of
1-100 numbers of dimensions.
In the remainder of the paper we review the technique of the new algo-
rithm, compare with other techniques, discuss the new algorithm in detail,
and show the computation results with a comparison with other methods.
2 About the used techniques
In the opinion of researchers (e.g. [13], [4]) there are two important tasks
for solving the MOP: to reach a good convergence to the PF and to cover
all points of PF with different solutions. Analyzing the methods we find dif-
ferent techniques solve this task. Let us see the techniques of our algorithm
with a comparison of the techniques of three well known Pareto-based ap-
proaches; with the PESA (the Pareto Envelope-based Selection Algorithm)
[6], with the SPEA2 (Strength Pareto evolutionary algorithm 2) [33] and
with the NSGAII (Non-dominated sorting genetic algorithm II) [9]. By this
comparison we analyze the convergence, the diversity preservation and the
handling of the archive.
We can say in general that the methods reach a good convergence with a
selection operator. They usually apply a fitness function based on the Pareto
dominance, and use a niching method (e.g. crowding) for the formation and
maintenance of a stable subpopulation within the population. We usually
can’t separate the technique which has an influence on the convergence or
an influence on the diversity preservation. Let us see the techniques of the
chosen methods.
The PESA is a conventional GA, in which selection and diversity main-
tenance are controlled with a hyper-grid based scheme. PESA use a small
internal population and a larger external population or archive for the ac-
tually non-dominated solutions. The archive (and the objective space) is
4. 26 I. Borgulya
divided into hyper-box. Each individual in the archive is associated with a
hyper-box, and has an attribute called a squeeze factor, which is the total
number of individuals in the same box (this is a crowding measure). The
squeeze factor is used for selective fitness by tournament selection, where
the individuals with the lowest squeeze factor are chosen. With this selec-
tion the search is oriented to areas of the PF, where the population has
little representation. This squeeze factor is also used for the archive update;
if the archive fills, we can remove the individual with the highest squeeze
factor from the archive.
The SPEA2 is a conventional GA too, in which selection and diversity
maintenance is based on a fine grained fitness function. Like PESA, SPEA2
uses a small internal population and a larger external population or archive
for the non-dominated solutions. The fitness function is based on two values:
for each individual it takes into account how many individuals it dominates
and density information. The density estimation technique is an adaptation
of the k-th nearest method, and the density at any individual is a function of
the distance to the k-th nearest individuals. Based on this fitness function
the SPEA2 uses a binary tournament selection with replacement on the
archive. For archive update the SPEA2 uses a truncation procedure. If the
archive fills, the truncation procedure removes iteratively individuals, which
have the minimum distance to another individual.
The NSGAII is a conventional GA with binary tournament selection,
recombination and mutation operators. The idea behind NSGAII is that
a ranking selection method is used to emphasize current non-dominated
points and a niching (crowding) method is used to maintain diversity in the
population. In this ranking method the NSGAII uses density information.
To get an estimate of the density of a solution, NSGAII computes a crowding
distance to every solution. The crowding distance serves as an estimate of
the size of the largest cuboid enclosing the point i without including any
other point in the population. During the ranking process the algorithm uses
this crowding distance: between two solutions with the same non-dominated
ranks it prefers the point where the size of the cuboid enclosing it is larger.
To get good convergence the NSGAII also has an elitist strategy. After the
child population is formed from the parent population, both populations
are combined and the ranking method is performed. The new population
will constructed from the best individuals based on the ranking.
Finally the MOSCA2. Our algorithm is a steady-state ES. It uses a
subpopulation structure in the population, a separate archive for the non-
dominated solutions and a fitness function based on a Pareto-based ranking
method. To obtain good convergence our algorithm uses a truncation selec-
tion method, and to speed up the convergence it uses a deleting procedure
The deleting procedure deletes a given percentage of the most dominated
individuals from the subpopulations periodically.
The diversity maintenance is based on the subpopulation structure with-
out density information or niching method. Our algorithm uses only a re-
combination operator and the deleting procedure to reach uniformly dis-
5. A Multi-objective Evolutionary Algorithm 27
tributed solutions along the PF. The selection method selects the parents
from two subpopulations, and the recombination operator chooses the two
parents from different subpopulations. The deleting procedure can delete
complete subpopulation where elements are mostly dominated (The deleted
subpopulation will be replaced new ones).
The subpopulation structure also helps to maintain the diversity. The
members of the population are segregated into t subpopulations, each sub-
population will approximate another part of the PF sought. Each subpop-
ulation stores only non-dominated individuals of the possible members of
the subpopulation (in a limited amount). The dominance of a new descen-
dant which enters into the subpopulation is determined by comparing it
to a designated non-dominated individual, the prototype. If it finds a non-
dominated descendant superior to the previous prototype, it deletes the
former members of the subpopulation, and replaces the prototype by the
new descendant.
In our algorithm we also use a separate archive. This separate archive
(notation: SARC ) improves the quality of the solutions. The archive period-
ically stores the new potential Pareto optimal solutions found. The archive
has a limited size and when it is full, the algorithm deletes a given percent-
age of its elements. We select the most dominated individuals for deletion. If
further elements still need to be deleted from the archive, then a part of the
remaining non-dominated solutions are deleted. This is a filtering process,
which selects iteratively one of the solutions close to each other, the other
ones are deleted.
Our algorithm can solve constrained problems as well and only the NS-
GAII has a similar technique. The principle of the constrained problem-
solving is as follows: the constraints at a point of the search domain (S ) are
regarded in the form of a measure that is a degree of violation of constraints.
Each point of S is characterized with a D distance from the constraint space,
on the grounds of this distance the points may be accepted or rejected and
points outside the constraint space (infeasible points) are successfully uti-
lized [2].
Let us see the structure of the algorithm. This is different from the struc-
ture of the earlier methods. Regarding the function of the algorithm this can
be divided into two steady-state EAs. The first EA, or first stage, improves
the quality of the initial population. In this stage the subpopulations have
only one individual, the ”prototype”. The second EA, or second stage, is
a steady-stage ES, and approximates the PF sought with more and more
points. In each iteration it focuses on a subpopulation, looks for new, better
solutions and inserts new non-dominated descendants into the subpopula-
tion. It update the SARC and uses the deleting procedure periodically.
In conclusion we can say, that the MOSCA2 represents a new technique.
It has a different algorithm and population structure compared to the well
known methods. With the help of the subpopulation, the deleting proce-
dure and the recombination operator it can preserve the diversity of the
population and without density information or niching method we get a
6. 28 I. Borgulya
uniformly distributed solution along the PF. The MOSCA2 therefore uses
a new diversity preservation method.
3 The new algorithm
3.1 The main steps of MOSCA2
6 parameters affect the run of the algorithm: t, subt, arct, itend, , and .
Their individual roles are:
t - the number of subpopulations.
subt- parameter of the subpopulations. The maximum size of each subpop-
ulation may be subt.
arcn - parameter of the SARC. arcn is the maximum size of the SARC.
itend - parameter for the stopping condition. The procedure terminates if
the value of it is more than itend.
σ- parameter of the second stage. σ is the common standard deviation of
N(0, σ) at the beginning.
δ- is used to define the tolerance of the algorithm by equation constraints.
Variables:
it - the number of the iterations, itt - the number of iterations in the
first stage, P - the population, SUBP - a subpopulation, kn - variable which
determines the timing of checks, p i - prototype.
The main steps of MOSCA2 are as follows:
Procedure MOSCA2 (t, subt, arcn, itend, σ, δ, SARC ).
it=0, SUBP i = ∅ (i=1,2,...,t) /* The initial values.
itt=1400, kn=100.
Let p i ∈SUBP i (i=1,2, ..., t): SARC = ∅ /* Initial population
*First stage*
Ranking of P
Do itt times
it=it+1
Random selection.
Reinsertion.
od .
* Second stage*
Repeat
Do kn times
it=it+1.
Truncation selection, recombination, mutation.
Reinsertion.
od
Ranking of P, Update of SARC, Deleting
Update of the parameters.
7. A Multi-objective Evolutionary Algorithm 29
until it > itend.
end
The results of the test examples show that the algorithm yields more
accurate results if the elements are transformed to the [0, 1] interval (the
[0, 1]m hypercube).
3.2 The characteristics of the EAs
The main functions and characteristics of the EAs of the first and second
stage are as follows:
Initial population. The p 1 , p 2 , ..., p t individuals of the P population are
randomly generated from S. These are the first prototypes.
Population-subpopulations. Both EAs are using the same P population
and SUBP 1 , SUBP 2 ,..., SUBP t (P= ∪ SUBP i ) subpopulations. The p 1 ,
p 2 ,..., p t individuals are the members of the SUBP 1 , SUBP 2 , ..., SUBP t
subpopulations, respectively. The sizes of the subpopulations vary, but their
maximal size is given.
Constraints. Let D(x) be the measure of violation of the constraints. (If
x ∈F or no constraints are specified, THEN D(x)=0 ):
1/2
r
D(x)= j=1 max{gj (x), 0}2
We utilize the value D(x) for the characterization of the decision vector
x in the following way: A vector x is better than a vector z if D(x)<D(z).
In case D(x) = D( z) the characterizing depends on the Pareto dominance.
Modified Pareto dominance. Based on the D measure, we use a modified
Pareto dominance in our algorithm. The definition of the modified Pareto
dominance is as follows: a decision vector x dominates the decision vector z
based on D (notation: x z) if D(x)<D(z), or in the D(x) = D(z) case if
x z. (This is a similar constraint handling technique as in NSGAII [11]).
Fitness functions. The value of the fitness function is a rank number.
The rank numbers are determined according to the Pareto ranking method
by Goldberg [16] using the modified Pareto dominance. A rank number of 1
is assigned to the non-dominated individuals of the population, and a higher
integer value to the dominated ones.
Selection operator. In the first stage descendants are randomly selected
from S, without the application of any further operators (recombination,
mutation). In the second stage the algorithm selects parents from the ith
and j th (i= j ) subpopulations. Truncation-selection is used for both sub-
populations separately (according to the rank numbers), and the parents
originating from different subpopulations are stored separately (there are
two selection pools).
Recombination operator. In the second stage the algorithm selects on a p r
probability basis two parents from the selection pools, and the descendant is
8. 30 I. Borgulya
constructed with single-point recombination. The two parents are randomly
chosen from different selection pools. Otherwise it chooses a single parent,
and the descendant is built by copy-making.
Mutation operator. The values of continuous variables are modified by
the value of N(0, σ), where N(0, σ) is a normal distribution with mean
0 and standard deviation. σ decreases parallel to the increasing number of
iterations. The values of discrete variables are modified by the step size with
p md probability.
There are some problems that we can solve more successfully, if we allow
a few variables to take any possible ”noise” values. This ”noise” is a random
number from [a i ,b i ] and it is applied on the specified variables with a p m
probability basis.
Reinsertion. On reinsertion in a subpopulation we do not use the rank
numbers: it is enough to examine the modified Pareto dominance between
a prototype and a descendant.
In the first stage, the algorithm compares the descendant with the most
similar prototype. If the descendent dominates ( ) the former solution, it
is replaced by the descendent. (The measure of similarity of two decision
vectors x and z is H(x, z)= 1/(1 + d(x, z)), where d(x, z) is the Euclidean
distance of the vectors).
In the second stage the algorithm compares the descendant to the pro-
totype of the ith subpopulation. If the descendant dominates ( ) the pro-
totype, the members of the subpopulation are deleted, and the prototype
is replaced by the new descendant (the rank number does not change). If
both the prototype and the descendant are non-dominated, the descendant
is added to the ith subpopulation as a new individual (if the subpopulation
size can be still extended)
Ranking. P, or SARC is ranked based on the modified Pareto dominance
periodically. The procedure Ranking calculates the rank numbers of the
individuals. (This is a version of Goldberg’s Pareto ranking method [16]).
Update of the SARC. A copy of the non-dominated individuals is stored
in the SARC periodical. The use of the SARC is regulated in the following
way:
– all the solutions in the SARC are different;
– new, non-dominated solutions found are stored in SARC, if the maxi-
mum SARC size has not been reached yet.
– if a new non-dominated solution is found and the maximum SARC size
has already been reached, a part of SARC is deleted first, and then the
new non-dominated solution is stored.
– When the SARC is full, sdp percentage of its elements are deleted as
follows:
1. SARC is ranked with the Ranking procedure .
2. We select the most dominated individuals for deletion.
3. If further elements still need to be deleted then a part of the remaining
non-dominated solutions are deleted. This is a filtering process, and we
9. A Multi-objective Evolutionary Algorithm 31
select only one of the solutions close to each other, the other ones are
deleted (x and x’ are close to each other if the d(x,x’) is less than a
predefined h value (initial value: h=min i |a i -b i |/1000)). If still further
elements need to be deleted after the filtering procedure, we double the
value of h and re-apply the filtering procedure. This is repeated until
the necessary number of elements has been deleted.
Deleting. In order to keep the diversity of the P, during the control a
given percentage of the most dominated individuals are deleted by the Delet-
ing procedure: ddp percent of the most dominated individuals in P will be
deleted based on the rank number. The deleted subpopulations (prototypes)
will be replaced with new ones. (We used ddp as an initial value. The value
of ddp decreases as the number of iterations increases).
Stopping criteria. The algorithm is terminated if a pre-determined num-
ber of iterations have been performed. The non-dominated individuals from
the SARC will be the results, and the algorithm saves the results in a file
and prints a graph.
4 Solutions of test problems
4.1 Test problems.
Deb [8] has identified several features that may cause difficulties for multi-
objective EAs in converging to the PF and maintaining diversity within the
population. Based on these features, Ziztler et al. [32] constructed six test
function (notation ZDT1,..., ZDT6). Each test function involves a particular
feature that is known to cause difficulty in the evolutionary optimization
process, mainly in converging to the PF (e.g. multimodality and deception).
For some years the researchers use these test problems as benchmark prob-
lems to demonstrate the possibilities of a new method. Other test problems
often used are: e.g. the problem of Kursawe [19] (notation KUR), the prob-
lem of Fonseca et al.[15] (notation FON) and the problem of Poloni [23]
(notation POL).
For constrained problem we found less test problems. Deb et al. [12]
proposed seven test problems to analyze the ability of the methods (notation
CTP1,..., CTP7), and there are some other test problem in used in the
papers, e.g. the constrained test problem of Srinivas et al [27] (notation
F3) and the welded beam design problem Deb [11] (notation WBD) from
mechanical component design problems.
To demonstrate the capabilities of MOSCA2, we chose the following
12 benchmark problems: ZDT1, ZDT2, ZDT3, ZDT4, ZDT5, ZDT6, KUR,
FON, POL, CTP7, F3 and WBD. All problems have two objective functions
and the CTP7, F3 and WBD have only constraints. The problems, showing
the number of variables, their bound, the Pareto optimal solution known
and the features are as follows:
T1: n=30, variable bounds [0, 1]
10. 32 I. Borgulya
f 1 (x)=x 1 ,f 2 (x)=g(x)(1- x1 /g(x)),g(x)=1+9( n xi )/(n − 1)
i=2
Optimal solution: x 1 ∈ [0, 1] ,xi =0, i=2,...,n.
Feature: PF is convex.
T2: n=30, variable bounds [0, 1]
n
f 1 (x)=x 1 ,f 2 (x)=g(x)(1-( x1 /g(x))2 ),g(x)=1+9( i=2 xi )/(n − 1)
Optimal solution: x 1 ∈ [0, 1] ,xi =0, i=2,...,n.
Feature: PF is nonconvex.
T3: n=30, variable bounds [0, 1]
xi
f 1 (x)=x 1 ,f 2 (x)=g(x)(1- x1 /g(x) − g(x) sin(10πx1 )),
n
g(x)=1+9( i=2 xi )/(n − 1)
Optimal solution: x1 ∈ [0, 1] ,x i =0, i=2,...,n.
Feature: PF consists of several noncontiguous convex parts.
T4: n=10, variable bounds x 1 ∈ [0, 1], xi ∈ [−5, 5] i = 2, ..., n
f1 (x)=x 1 ,f 2 (x)=g(x)(1- x1 /g(x)),
n
g(x)=1+10(n-1)+ i=2 (x2 − 10 cos(4πxi ))
i
Optimal solution: x 1 ∈ [0, 1] ,x i =0, i=2,...,n.
Feature: There are 219 local Pareto fronts.
T5: m=11, variable bounds x 1 ∈ {0, 1}30, x2 , ..., xm ∈ {0, 1}5
f 1 (x)=1+u(x 1),f 2 (x)=g(x)(1/f 1 (x)),
m
g(x)= i=2 v(u(xi ))
2 + u(xi ) if u(xi ) < 5
v(u(x i ))=
1 if u(xi ) = 5
Optimal solution: g(x)=10.
Feature: There is a deceptive problem, the (discrete) PF is convex.
T6: n=10, or 100, variable bounds [0, 1]
f 1 (x)=1-exp(-4x 1 ) sin6 (4πx1 ),f 2 (x)=g(x)(1-( x1 /g(x))2 ),
g(x)=1+9(( n xi )/(n − 1))0.25
i=2
Optimal solution: x 1 ∈ [0, 1] ,x i =0, i=2,...,n.
Feature: The PF is nonconvex and non-uniformly distributed.
KUR: n=3, variable bounds [−5, 5]
n−1 2
f 1 (x)= i=1 (−10 exp(−0.2 xi + x2 )),
i+1
n 0.8
f 2 (x)= i=1 (|xi | + 5 sin x3 )
i
Feature: PF is nonconvex.
FON: n=3, variable bounds [−4, 4]
f 1 (x)=1-exp(- 3 (xi − √3 )2 ),
i=1
1
3 1
f 2 (x)=1-exp(- √ )2 )
i=1 (xi + 3
1 1
Optimal solution: x 1 =x 2 = x3 ∈ − √3 , √3
Feature: PF is nonconvex.
POL: n=2, variable bounds [−π, π]
f 1 (x)= 1 + (A1 − B1 )2 + (A2 − B2 )2
f 2 (x)= (xi + 3)2 + (x2 + 1)2
A1 =0.5sin 1-2cos 1+sin 2-1.5cos 2
A2 =1.5sin 1-cos 1+2sin 2-0.5cos 2
B 1 =0.5sin x 1 -2cos x 1 +sin x 2 -1.5cos x 2
11. A Multi-objective Evolutionary Algorithm 33
B 2 = 1.5sin x 1 -cos x 1 +2sin x 2 -0.5cos x 2
Feature: PF is nonconvex and disconnected.
CPT7: n=10, variable bounds [0, 1]
n
f 1 (x)=x 1 ,f 2 (x)=g(x)(1-( x1 /g(x))),g(x)=1+9( i=2 xi /(n − 1)0.5
subject: cos(θ)(f2 (x) − e) − sin(θ)f1 (x) ≥
d
α [sin(bπ(sin(θ)(f2 (x) − e) + cos(θ)f1 (x))e ]
where θ = −0.05π, α = 40, b = 5, c = 1, d = 6, e = 0
Optimal solution: g(x)=1.
Feature: PF is disconnected.
F3: n=2 variable bounds [−20, 20]
f 1 (x)=(x 1 -2) 2 +(x 2 -1) 2 , f 2 (x)=9x 1 -(x 2 -1) 2 ,
2 2
subj.: x 1 +x 2 -225 ≤ 0, x1 − 3x2 + 10 ≤ 0
Optimal solution: x 1 = 2.5,x 2 ∈ [2.5, 14.79]
WBD: n=4, variable bounds x 1 , x 4 ∈ [0.125, 5.0] , x2 , x3 ∈ [0.1, 10.0]
and x 1 , x 3 ,x 4 are discrete variables with a resolution of 0.0625.
2
f 1 (x)=1.10471 x 1 x 2 + 0.04811 x 3 x 4 (14 + x 2 ),
f 2 (x)=2.1952 / (x 3 x 4 )
3
subjects: g 1 (x)=13.600-τ (x) ≥ 0
g 2 (x)=30.000-σ(x) ≥ 0
g 3 (x)=x 4-x 1 ≥ 0
g 4 (x)=P c(x)-6.000 ≥ 0
τ (x) = d2 + e2 + (x2 de)/ 0.25x2 + (x1 + x3 )2
2
√
√ 6.000(14+0.5x2 ) 0.25(x2 +(x1 +x3 )2 )
d=6.000/ 2x1 x2 , e = 2 0.707x x (x2 /12+0.25(x +x )2 )
2
[ 1 2 2 1 3 ]
σ(x) = 504.000/(x2x4 )
3
3
P c (x)=64.746022(1-0.0282346x 3 )x 3 x 4 .
Feature: PF is convex.
4.1.1 Parameter selection To achieve a quick and accurate solution we
need appropriate parameter values. Studying some of the test problems, we
analyzed how the parameter values were affecting the speed of the conver-
gence and the finding of PF.
Therefore we analyzed the number of subpopulations, the subpopulation
size, the value of the standard deviation σ, the p m , p md , p r probabilities,
the value of the ddp, sdp percentage and the SARC size, which should be
used in MOSCA2 to achieve a good trade-off between the probability of
finding good solutions and the necessary running time to do so. In general,
we have found:
– Best behavior was obtained with a number of subpopulations between
10 and 60. With an inadequate number of subpopulations (t<10), only
a few points of PF were found and those rather quickly. With a larger
number of subpopulations MOSCA2 often achieves higher probabilities
of finding more points of the PF, but with an increasing running time.
Therefore, for the test problems (where the population size is generally
12. 34 I. Borgulya
100 in the different methods), the number of subpopulations of 10 was
found appropriate (t=10).
– The subpopulation size (subt) affects the approximation of the points of
the PF similarly. Although good approximations can be achieved with
small sizes (subt=2), by increasing the subpopulation size (subt= 10, 20
or 50) we can increase the number of the well approximating points, and
so we chose a subpopulation size of 10 for the test problems (subt=10).
– The value of σ is considerably task-dependent. Usually σ ∈ [0.001, 0.5]
and we can obtain a good result with σ=0.1.
– As a next step, we studied the p m , p md probabilities of the mutation, the
p r probabilities of the recombination operator and the ddp percentage in
the Deleting procedure. We found that we can use similar probabilities
as by the GAs: p r =0.9 and p md =1/m for the discrete variable. We got
good results with p m =0.1 in generally.
There were many possible values found for the ddp percentage; the val-
ues between 0.1 and 0.5 were usually satisfactory, but we had faster
convergence to the PF with higher values. So we used the value of 0.5
for the test.
– Finally, we studied the SARC sizes between 50 and 1000 and the value
of the sdp percentage. We found that with the increasing size of the
archive we obtained more and more solutions of better and better qual-
ity without significantly lengthening the running time (because fewer
removal steps are needed). There were many possible values found for
the sdp percentage. When the sdp value is small many deletions are
needed increasing computation time. High sdp values require less com-
putation but can result in the loss of ”important” individual from the
SARC. We searched a balance between the small and high sdp values
and in the end we used the value 0.1 for the test.
4.1.2 Performance metrics We use the following performance metrics in-
troduced by Zitzler et al. [32]:
1
M ∗ (Y )= |Y | p ∈Y min{||p − p||; p ∈ P O}
1
M ∗ (Y ) = |Y 1
2 −1|
∗
p ∈Y |{ q’∈ Y ; |||p − q || > σ }|
n
M ∗ (Y ) =
3 i=1 max{||pi − qi ||; p , q ∈ Y }
where Y’ is the set of objective vectors corresponding to the non-
dominated solution found, and PO is a set of uniform Pareto-optimal ob-
jective vectors. A neighborhood parameter σ*>0 is used in M ∗ to calculate
2
the distribution of the non-dominated solutions. M ∗ (Y’) gives the average
1
distance from Y’ to PO. M ∗ (Y’) describes how well the solution in Y’ are
2
distributed. The value of M ∗ is in [0, |Y’|], and the higher value is better
2
for the distribution. M ∗ (Y’) measures the spread of Y’.
3
(In our test we chose 500 points from a uniform distribution from the
true Pareto front PO by all problems, and σ* was set to 0.01).
4.1.3 Computation results When setting the values of the parameters, our
aim was to obtain results which were comparable to the results of other
13. A Multi-objective Evolutionary Algorithm 35
methods. Therefore, we adopted the maximal number of function evalua-
tions (itend ) from other publications. (itend =80000 at each problem, except
F3 where itend =10000). The size of the population proved itself to be more
difficult to adapt, but we chose the maximal size of P (|P|=t*subt) in com-
pliance with the usual sizes of populations in other publications. (The SARC
is another population, different from P ).
During the test we studied the SARC size. We tried different sizes (50,
100, 250, 500 and 1000) and we compared the results. Besides the visual
comparisons, we used the M ∗ , M ∗ and M ∗ metric and the running times for
1 2 3
a quantitative comparison of results (MOSCA2 was implemented in Visual
Basic and ran on a Pentium 4, 1.8 GHz with 256 MB RAM).
Table 1. Average values of the M ∗ metrics.
1
task/arcn 50 100 250 500 1000
ZDT1 7.0E-4 7.6E-4 7.4E-4 6.6E-4 6.2E-4
ZDT2 6.6E-3 6.8E-4 6.6E-4 6.3E-4 6.2E-4
ZDT3 3.8E-3 3.8E-3 3.1E-3 2.7E-3 2.7E-3
ZDT4 1.4E-2 1.2E-3 3.9E-4 9.6E-4 9.6E-4
ZDT5 0.81 0.78 0.77 0.72 0.74
ZDT610 0.25 0.21 0.17 0.14 0.08
ZDT6100 0.36 0.25 0.17 0.16 0.09
FON 1.1E-2 1.2E-2 5.8E-3 5.5E-3 9.2E-3
CPT7 2.7E-2 1.3E-3 8.1E-4 1.1E-3 7.5E-4
F3 5.4 5.9 5.4 6.1 4.9
∗
Table 2. Average values of the M 2 metrics.
task/arcn 50 100 250 500 1000
ZDT1 45.3 89.2 235.6 495.1 906.2
ZDT2 45.6 87.8 236.6 469.4 845.2
ZDT3 43.6 94.8 229.6 326.1 316.5
ZDT4 43.5 91.0 225.1 469.6 773.1
ZDT5 22.0 21.5 23.0 22.5 21.0
ZDT610 48.1 92.5 246.1 492.2 960.6
ZDT6100 46.1 95.1 237.0 482.6 931.0
FON 41.5 85.6 184.0 290.1 296.5
CPT7 23.2 55.3 148.5 239.2 477.3
F3 48.0 93.0 178.3 377.2 753.1
KUR 44.0 90.5 228.5 384.0 503.2
POL 38.3 77.0 218.5 435.2 758.3
WBD 46.0 85.0 222.5 435.5 879.0
14. 36 I. Borgulya
Table 3. Average values of the M ∗ metrics.
3
task/arcn 50 100 250 500 1000
ZDT1 1.41 1.41 1.41 1.41 1.41
ZDT2 1.41 1.41 1.41 1.41 1.41
ZDT3 1.71 1.62 1.62 1.62 1.62
ZDT4 1.65 1.41 1.68 1.41 1.41
ZDT5 5.00 5.18 5.21 5.01 4.87
ZDT610 1.70 1.28 1.28 1.70 1.78
ZDT6100 102.10 113.10 106.10 123.20 166.20
FON 1.15 1.22 1.21 1.19 1.22
CPT7 1.46 1.41 1.41 1.33 1.41
F3 20.60 20.60 24.00 30.00 24.30
KUR 3.95 4.14 4.12 4.13 4.13
POL 6.60 6.37 6.45 6.59 6.55
WBD 5.80 5.70 11.90 21.50 12.10
Table 4. Average running times in CPU seconds.
task/arcn 50 100 250 500 1000
ZDT1 39.6 41.5 32.5 34.2 34.4
ZDT2 36.8 40.8 30.8 31.0 32.2
ZDT3 31.0 26.8 26.1 28.9 28.0
ZDT4 34.2 41.2 28.2 30.0 41.0
ZDT5 52.3 51.8 52.4 51.0 52.0
ZDT610 67.5 99.5 65.8 73.1 111.8
ZDT6100 102.1 113.1 106.3 123.1 166.2
FON 22.0 23.5 20.2 21.7 26.8
CPT7 22.1 16.3 22.5 21.1 25.4
F3 96.4 99.3 37.5 23.9 11.9
KUR 32.2 45.1 28.1 25.9 33.2
POL 37.8 39.2 22.0 24.1 29.5
WBD 54.2 53.0 42.5 40.6 47.1
As MOSCA2 is a stochastic method, each problem was run ten times
with the same parameter values. The results presented in the Table 1, 2,
3 and 4 are mean values calculated from the 10 runs. In all tables we can
show the results by different SARC size (arcn).
We present some typical non-dominated fronts visually also. Figure 1
and 2 show problems with arcn=1000. On the graphs of the solutions (on
the pictures) we drew the PF with a thin line, except for the problems KUR,
POL and WBD, where we do not know the PF; the bold lines or points on
the picture are the non-dominated solutions of the problems. E.g. the solu-
tions of problems ZDT1, ZDT2, ZDT3, ZDT4, ZDT6 and F3 approximate
the PF extremely well, we do not see or we hardly see the thin lines of the
PFs (by the problem ZDT3 we can see the boundary of the Pareto optimal
region too).The solutions of problem FON do not approximate all points of
PF well and the solutions of problem ZDT5 approximate only a local PF
15. A Multi-objective Evolutionary Algorithm 37
of the problem. For the problem CPT7 the unconstrained Pareto optimal
region becomes infeasible in the presence of the constraint. The periodic
nature of the constraint boundary makes the Pareto optimal region discon-
tinuous, having a number of disconnected continuous regions. We can see
that our algorithm approximates the disconnected PF of the problem CPT7
well (the sets of PF lie on the thin line).
From the figures it can be clearly seen that the solutions of the MOSCA2
fit very well and that they approximate the PF extremely well. On analyzing
the results we can state that, by increasing the size of SARC, we obtain more
∗
and more good solutions: the number of point of PF increases (˜M 2 ) and
the distance from the true PF decreases (M ∗ ). Therefore the quality of the
1
solutions continues to improve and we obtain the best solutions by higher
size of SARC (arcn=500 or 1000). The running times, however, do not share
this tendency, the running time itself is clearly problem dependent. For the
majority of the problems studied (except problem F3 and T6) increasing
the SARC size the running times hardly change. However, it is a fact: the
running time has the higher value generally by arcn=100.
4.2 Comparative results
In the section 2 we compared the MOSCA2 with other methods based on
the used techniques. Let us compare the computation results of different
methods now.
In our multiobjective topic the new method is compared with the state-
of-art-methods; recently with the NSGAII and SPEA2. Generally the new
method is compared with one method: with the NSGAII (e.g. [24], [1]) or
with the SPEA2 (e.g. [21]). But there are some papers, where both methods,
the NSGAII and the SPEA2 are compared with other methods (e.g. [29],
[33]). Based on [29] we can establish, that the results of NSGAII and SPEA2
are similar, there is not significant difference between the results of the two
methods generally.
Various performance measures have been proposed in the literature for
evaluating a set of non-dominated solutions, so we find in the papers dif-
ferent performance metrics generally. As a metric we find, e.g. the M ∗ , M ∗
1 2
and M ∗ metrics (e.g. in [1]), the hyperarea metric (e.g. in [21]), the aver-
3
age quality metric (e.g. in [29]), the error ratio, generational distance and
spacing metrics (e.g. in [24]). To compare the results we chose the M ∗ , M ∗
1 2
and M ∗ metrics from [1],where the NSGAII was compared with an other
3
method based on the ZDT1, ZDT2, ZDT3, ZDT4 and ZDT6 problems.
To compare the results of the MOSCA2, we chose first the MOSCA [3]
and then the NSGAII [9] methods. With our comparison between MOSCA
and MOSCA2 we can demonstrate the superior potential of the new ver-
sion, and with our comparison of NSGAII and MOSCA2 we show the high
quality of the results of MOSCA2. The results were also compared using
the problems ZDT1, ZDT2, ZDT3, ZDT4 and ZDT610 .
16. 38 I. Borgulya
Fig. 1 Non-dominated solutions on ZDT1, ZDT2, ZDT3, ZDT4, ZDT5, and
ZDT6100
18. 40 I. Borgulya
Table 5 shows the result of the comparison between MOSCA and
MOSCA2. Analyzing the results, we can state that
– The values of the M ∗ metric by MOSCA2 are 3-4 times better than for
1
MOSCA,
– The values of the M ∗ metric by MOSCA2 are better by 60-80 % than
2
for MOSCA,
– The values of the M ∗ metric are similar in both of the methods.
3
We can, therefore, conclude that MOSCA2 produces substantially better
results with SARC size 100 based on the performance metrics than MOSCA.
Table 5. Results of the comparison between MOSCA (MO)
and MOSCA2 (MO2) with arcn=100.
M∗ 1 M∗2 M∗
3
Problem MO MO2 MO MO2 MO MO2
ZDT1 4.7E-3 7.6E-4 20.1 89.2 1.41 1.41
ZDT2 4.1E-3 6.6E-4 22.4 87.8 1.41 1.41
ZDT3 6.2E-3 3.8E-3 13.4 94.8 1.60 1.62
ZDT4 9.4E-3 1.2E-3 19.9 91.0 1.41 1.41
ZDT610 0.69 0.21 20.1 92.5 1.28 1.28
Table 6 shows the result of the comparison between MOSCA2 and NS-
GAII. A population size of 100 was used for the NSGAII, where 100 descen-
dants were added to each generation. A crossover rate of 0.9 was used for
NSGAII and it was real-coded [18]. In the Table 6 we can show MOSCA2
with arcn=1000.
Analyzing the results we can state that
– The values of the M ∗ metric differ the most. MOSCA2 with arcn=100
1
has a better value in case of T1, the values are similar in case of T2 and
T4, and NSGAII has better values in cases T3 and T610 (see Table 5).
In case of MOSCA2 with arcn=1000, the results are better: MOSCA2
has better values in cases of T1, T2 and T4, the values are similar in
case T610 , and NSGAII has better values in case T3.
– The values of the M ∗ metric by NSGAII are 4-5% better than by
2
MOSCA2 with arcn=100. In the case of MOSCA2 with arcn=1000,
the results are better, MOSCA2 has 4-8 times better values.
– The values of the M ∗ metric are similar in both of the methods.
3
We can, therefore, conclude that MOSCA2 with arcn=1000 is similar,
or little bit better as the NSGAII on a set of test problems.
19. A Multi-objective Evolutionary Algorithm 41
Table 6. Results of the comparison between NSGAII (NSG)
and MOSCA2 (MO2) with arcn=1000.
M∗1 M∗2 M∗ 3
Problem NSG MO2 NSG MO2 NSG MO2
ZDT1 1.0E-3 6.2E-4 99.4 906.1 1.41 1.41
ZDT2 6.7E-4 6.2E-4 86.1 845.2 1.23 1.41
ZDT3 2.8E-4 2.8E-3 98.1 316.7 1.60 1.62
ZDT4 1.2E-3 9.6E-4 96.2 773.1 1.37 1.41
ZDT610 7.0E-2 8.5E-2 99.1 960.6 1.25 1.78
5 Conclusion
In this paper, we have introduced a subpopulation based EA, named
MOSCA2, for non-linear constrained MOPs. This method is the modifi-
cation of a previous algorithm, which enables the further resolution of con-
strained continuous non-linear MOPs. Due to modifications in the search
operations and due to introducing a separate archive the results of MOSCA2
have substantially improved quality compared with the earlier version. A
comparison with a state-of-the-art method, the NSGAII, shows that it gives
similar, or slightly better results on a set of test problems.
In general, by increasing the size of the archive we achieved more and
more results of higher and higher quality without significantly lengthening
the running time. The size of the archive can be set in a flexible way and so
the decision-maker has the opportunity to decide if he wants more results
of higher quality in spite of greater memory usage.
References
1. Antony W.I., Xiaodong L.: A Cooperative Coevolutionary Multiobjective Al-
gorithm Using Non-dominated Sorting. In: Deb K. et al. (Eds.): GECCO 2004,
Springer-Verlag Berlin Heidelberg LNCS 3102, (2004) 537-548.
2. Borgulya, I.: Constrained optimization using a clustering algorithm Central
European Journal of Operations Research. 8 (1) (2000) 13-34.
3. Borgulya, I.: A Cluster-based Evolutionary Algorithm for Multi-objective Op-
timization. In.: Reusch (ed): Computation intelligence Theory and Applica-
tions. LNCS 2206 Springer-Verlag Heidelberg, (2001) 357-368.
4. Coello Coello C.A., Van Veldhuizen D.A., Lamont G.B., Evolutionary Algo-
rithms for Solving Multi-Objective Problems, Kluwer Academic Publishers,
2002.
5. Cort´s N.C., Coello Coello, C.A.: Multiobjective Optimization Using Ideas
e
from the Clonal Selection Principle. In: Cant´-Paz E. et al. (Eds): GECCO
u
2003, LNCS 2723, Springer-Verlag Heidelberg, (2002) 158-170.
6. Corne D.W., Knowles J.D., Oates M.J.,: The Pareto envelope-based selection
algorithm for multiobjective optimization. Proceedings of the Sixth Inter-
national Conference on Parallel Problem Solving from Nature (PPSN VI).
Springer, (2000) 839-848.
20. 42 I. Borgulya
7. Costa, L., Oliveira, P.: An Elitist Genetic Algorithm for Multiobjective op-
timization. MIC’ 2001 - 4th Metaheuristics International Conference Porto.
(2001) 205-209.
8. Deb, K.: Multi-objective Genetic Algorithms: Problem Difficulties and Con-
struction of Test Problems. Evolutionary Computing Vol. 7. No. 3. (1999)
205-230.
9. Deb, K., Agrawal, S., Pratap, A., Meyarivan, T.: A Fast Elitist Non-
dominated Sorting Genetic Algorithm for Multi-objective Optimization:
NSGA-II In: Schoenauer M (ed): Parallel problem solving from nature: 6th
int. conference; proceedings/ PPSN VI. Paris LNCS 1917 Springer-Verlag
Heidelberg (2000) 849-858
10. Deb K., Pratap A., Meyarivan T.: Constrained test Problems for Multi-
Objective Evolutionary Optimization. KanGAL Report (2000) No. 200002.
11. Deb, K., Pratap, A., Moitra S.: Mechanical Component Design for Multiple
Objectives Using Elitist Non-dominated Sorting GA In: Schoenauer M (ed):
Parallel problem solving from nature: 6th int. conference; proceedings/ PPSN
VI. Paris LNCS 1917 Springer-Verlag Heidelberg (2000) 859-868
12. Deb, K., Pratap, A., Agarwal, S., Meyarivan T.: A Fast and Elitist Multi-
Objective Genetic Algorithm: NSGA-II. Kanpur, India, KanGAL Report No.
200001. (2000)
13. Deb K.: Multi-objective Optimization Using Evolutionary Algorithms. John
Wiley & Sons, New York (2001).
14. Fonseca, C.M, Fleming, P.J.: An Overview of Evolutionary Algorithms in
Multiobjective Optimization. Evolutionary Computing Vol. 3. No. 1. (1995)
1-16.
15. Fonseca C.M., Fleming P.J.: Multi-objective genetic algorithm made easy:
Selection, sharing and mating restriction. International Conference on Genetic
Algorithm in Engineering Systems: Innovations and Application, UK, (1995)
12-14.
16. Goldberg, D.E.: Genetic Algorithm for Search, Optimization and Machine
Learning. Addison-Wesley, Reading, Massachusetts. (1989).
17. Gouljashki V. G, Kirilov L. M, Nerula S. C, Vassilev V. S.: A reference Di-
rection Interactive Algorithm of the Multiple Objective Nonlinear Integer
Programming. In: Fandel G., Gal T. (ed.): Multiple criteria Decision Making,
Springer-Verlag Berlin Heidelberg (1997) 308-317.
18. Iorio, A.W., Li, X.: A Cooperative Coevolutionary Multiobjctive Algorithm
Using Non-dominated Sorting. In: Deb, K. Et al. (Eds): GECCO 2004, LNCS
3102, Springer-Verlag Berlin Heidelberg (2004) pp. 537-548.
19. Kursawe F.: A variant of evolution strategies for vector optimization. In:
Schwefel H.P., Manner R. (Eds.): Parallel Problem Solving from Nature. 1st
Workshop, PPSN 1, Springer-Verlag Berlin Heidelberg, LNCS, vol. 496, (1990)
193-197
20. Miettiinen K, M¨kel¨ M. M.: Interactive multiobjective optimization sys-
a a
tem WWW.NIMBUS on the Internet. Computer & Operations Research 27.
(2000)709-723
21. Negro F.T., Ortega J., Ros E., Mota S., Paechter B., Mart´ J.M.: PSFGA:
ın
Parallel processing and evolutionary computation for multiobjective optimiza-
tion. Parallel Computing 30 (2004) 721-739.
22. Parks, G.T., Miller I.: Selective Breeding in a Multiobjective Genetic Algo-
rithm. PPSN V. LNCS 1498, Springer-Verlag Heidelberg (1998) 250-259.
21. A Multi-objective Evolutionary Algorithm 43
23. Poloni C., Giurgevich A., Onesti L., Pediroda V.: Hybridization of a multi-
objective genetic algorithm: A neural network and a classical optimizer for
a complex design problem in .uid dynamics. Computer Methods in Applied
Mechanics and Engineering 186 (2-4), (2000)403-420.
24. Pulido G.T., Coello Coello C.A.: Using Techniques to Improve the Perfor-
mance of a Multi-objective Particle Swarm Optimizer. In: Ded K. et al. (Eds):
GECCO 2004. Springer-Verlag Berlin Heidelberg LNCS 3102, (2004) 225-237.
25. Sakawa M.: Fuzzy sets and interactive multiobjective optimization. Plenum
Press, New York (1993)
26. Sakawa M, Yauchi K.: An interactive fuzzy satisficing method for multiob-
jective nonconvex programming problems through floating point genetic al-
gorithm. European Journal of Operation Researches 117. (1999)113-124.
27. Srinivas, N., Deb, K.: ”Multi-Objective function optimization using non-
dominated sorting genetic algorithms” Evolutionary Computation, Vol. 2.
(1995) 221-248.
28. Steuer R. E : Multiple Criteria Optimization. R. E. Klieger Pub. Com. Florida
(1989)
29. Tan K.C., Goh C.K., Yang Y.J., Lee Z.H.: Evolving better population distrib-
ution and exploration in evolutionary multi-objective optimization. European
Journal of Operational research. In print.
30. Van Veldhuizen, D.A, Lamont, G.B.: Multiobjective Evolutionary Algorithms:
Analyzing the State-of-the Art. Evolutionary Computing Vol. 8. No. 2. (2000)
125-147.
31. Zitzler, E., Thiele, L.: Multiobjective Evolutionary Algorithms: A compara-
tive Case Study and the Strength Pareto Approach. IEEE Transactions on
Evolutionary Computation. Vol.3. No. 4. (1999) 257-271.
32. Zitzler, E., Deb, K., Thiele, L.: Comparison of Multiobjective Evolutionary
Algorithms: Empirical Results. Evolutionary Computing Vol. 8. No. 2. (2000)
173-195.
33. Zitzler E., Laumans M., Thiele L.: SPEA2: Improving the Strength Pareto
Evolutionary Algorithm for Multiobjective Optimization.In: Giannakoglou
K.,Tsahalis D., Periaux J., Fogarty T. (Eds): Evolutionary Methods fot
Desing, Optimization asd Control. CIMNE, Barcelona, Spain, (2002).