2009 - Multi-Objective Optimization Using Evolutionary Algorithms
2009 - Multi-Objective Optimization Using Evolutionary Algorithms
Evolutionary Algorithms
Progress report by
3. Future work
i
Table of contents
1 Introduction 1
1.1 Main concepts of multi-objective optimization . . . . . . . . . . . . . . 1
1.2 Multi-objective optimization using evolutionary algorithms . . . . . . . 3
1.2.1 The history of multi-objective evolutionary algorithms . . . . . 4
1.2.2 Goals of multi-objective evolutionary algorithms . . . . . . . . . 5
1.2.3 Basic operators of multi-objective evolutionary algorithms . . . 6
2 Contributions 8
2.1 Genetic algorithms versus Differential Evolution . . . . . . . . . . . . . 8
2.1.1 Content and ideas . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.3 Evaluation and discussion . . . . . . . . . . . . . . . . . . . . . 13
2.1.4 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Multiobjective Distinct Candidate Optimization . . . . . . . . . . . . . 14
2.2.1 Introduction, arguments and goals . . . . . . . . . . . . . . . . . 14
2.2.2 Evaluation and discussion . . . . . . . . . . . . . . . . . . . . . 17
2.2.3 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3 Cluster-Forming Differential Evolution . . . . . . . . . . . . . . . . . . 17
2.3.1 Content and ideas . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.3 Evaluation and discussion . . . . . . . . . . . . . . . . . . . . . 25
3 Future work 26
3.1 Testing MODCO algorithms on Grundfos problems . . . . . . . . . . . 26
3.1.1 Constrained problems . . . . . . . . . . . . . . . . . . . . . . . 27
3.1.2 Many-objective optimization . . . . . . . . . . . . . . . . . . . . 27
3.1.3 The effect of changing MODCO parameters . . . . . . . . . . . 28
3.1.4 A more efficient search? . . . . . . . . . . . . . . . . . . . . . . 28
3.2 Inventing performance indices . . . . . . . . . . . . . . . . . . . . . . . 29
3.3 Inventing alternate MODCO algorithms . . . . . . . . . . . . . . . . . 30
3.4 Relevant conferences and journals . . . . . . . . . . . . . . . . . . . . . 31
List of figures 32
List of algorithms 32
References 32
ii
1 Introduction
This section will introduce the main concepts of multi-objective optimization, as well
as motivate the use of evolutionary algorithms for this.
Multi-objective problems are problems with two or more, usually conflicting, objec-
tives. The main difference from single-objective optimization is that a multi-objective
problem does not have one single optimal solution, but instead has a set of optimal
solutions, where each represents a trade-off between objectives.
At Grundfos, a danish company manufacturing pumps, an example of a multi-
objective problem is that of designing centrifugal pumps. The designs of centrifugal
pumps are complex, and each design lead to a different efficiency rate and produc-
tion price. Grundfos is naturally interested in making their pumps have maximum
efficiency, which may be measured as the throughput of water per second. However,
Grundfos do not want the pumps to cost too much to manufacture and sell, so at
the same time they want to minimize the production cost. Typically, increasing the
efficiency of a pump will also increase the production cost. This way optimal pump
designs will have trade-off between cost and efficiency, ranging from maximum effi-
ciency at maximum cost to minimum efficiency at minimum cost. However, finding
the optimal designs is not easy, and the task calls for optimization procedures.
A way to avoid the complexities of multi-objective optimization is to convert the
multi-objective problem into a single-objective problem by assigning weights to the
different objectives, calculating a single fitness value. The major problem with this
weighted sum approach, is that it is subjective, as it ultimately leaves it to a deci-
sion maker (DM) to assign weights according to the subjective importance of the
corresponding objectives. The approach further assumes that the DM has a priori
knowledge of the importance of the different objectives, which is often hard or impos-
sible to come by. The objective approach uses Pareto compliant ranking of solutions,
as explained in the following section. This approach favours solutions which are better
in a true, multi-objective sense. Only the latter approach has been investigated in my
work, as this makes no assumptions and does not rely on higher level knowledge.
1
The problem may be constrained, so Equation 1 also shows J inequality and K
equality constraints. Solutions satisfying these constraints are feasible, and belong to
the feasible part of the decision space; SD ⊂ D which the constraint functions map to
the feasible part of objective space SZ ⊂ Z.
2
From the definition of dominance, several other important definitions can be de-
rived. When optimizing, we are interested in locating the non-dominated set of solu-
tions. Among a set of solutions P , the non-dominated set of solutions P 0 are those
that are not dominated by any other member of the set P .
Correspondingly, we define the globally Pareto-optimal set as the non-dominated
set of the entire feasible search space S ∈ D. This is also referred to simply as the
Pareto-optimal set, and our goal using multi-objective optimizers is to approximate
this set. In objective space, the mapping from the Pareto-optimal set is denoted the
true Pareto-optimal front or simply the true Pareto front. See figure 1 for illustration.
3
The greatest difference between single-objective EAs and multi-objective EAs
(MOEAs), is that for single-objective optimization, it is simple to return the most
optimal solution in a population, as scalar based evaluation automatically implies a
total order on solutions. For MOEAs, the situation is very different. Due to the higher
dimensionality of the objective space, all resulting individuals of the population may
be incomparable to each other, each representing an optimal trade-off between ob-
jectives. That is, the result of running a MOEA is typically a set of non-dominated
solutions. From this result set, it is up to the decision maker to find out which
solution(s) to realise. The full process is illustrated in figure 2.
IDEAL
Multi−objective optimizer Step 1: Optimization
Higher−level information
on all candidate solutions
4
Later, an old idea made its way to the field of MOEAs. Differential Evolution is
an alternative way of varying EA individuals based on vector difference, which was
published in 1997 by Price and Storn [8]. The approach was adopted in a number
of MOEAs, where we will consider only the most relevant to this research. Recently,
Robič and Filipič combined NSGA-II and SPEA-2 selection with the Differential Evo-
lution (DE) scheme for solution reproduction to create DEMO (DEMO: Differential
Evolution for Multi-objective Optimization). The DE-based MOEAs were named
DEMON SII and DEMOSP 2 , and these have been shown to outperform both NSGA-II
and SPEA2 [9; 10].
As MOEAs have become increasingly popular over the last decade, it has been
noted that the cardinality of the resulting populations of MOEAs is often too high for
decision makers to make their final choice of candidate solutions. One way of dealing
with this problem is by applying clustering, such that solutions within the same area
of the objective space are reported as a single solution. Very recently, Knowles and
Handl have suggested clustering by k-means (MOCK) [16], where solutions are being
assigned clusters after an optimization run. Alternatively, this author and fellow
researcher have suggested an approach for optimizing distinct candidates (MODCO)
[2] during the run. The main difference in these approaches besides when applied is
that in MODCO, the user directly sets the number of returned solutions, whereas the
number of clusters are automatically determined using MOCK.
In general, decreasing the result cardinality introduce some interesting options wrt.
decreasing the population size along with the number of generations performed. Fur-
thermore, this drastically decreases the amount of post-processing of results needed,
as will be discussed later in this report.
5
true Pareto front, since these must be closest to it. Optimally, all returned solutions
from a MOEA lie on the true Pareto front.
The second goal of MOEAs is to cover as much of the Pareto front as possible, and
this goal is very specific to multi-objective optimization. Having an even distribution
of solutions on the Pareto front ensures a diverse set of trade-offs between objectives.
Having a set of solutions all equidistant to their nearest neighbour provides the DM
with an overview of the Pareto front, while also making the final selection possible,
based on the range of trade-offs between objectives represented by the population, as
illustrated in figure 2.
The third goal is very connected to the second. Having a high spread means to
have a high distance between the extreme solutions in objective space, and as before,
this is to ensure coverage of the Pareto front. Ensuring population diversity is most
often done by applying a density or crowding measure which penalise individuals, that
are close to each other in objective space. Such measure also ensures a high spread,
since it will force the full population to spread as far as possible.
From an application point of view, the first goal is by far the most important,
since it directly determines how optimal the returned solutions are. The second goal
is important, but not crucial, since most often only a few solutions from the final
population will be chosen for further investigation. Finally, the third goal is practically
irrelevant, since extreme solutions are rarely, if ever, implemented in reality.
To pursue the three goals, traditional MOEAs employ two mechanisms directly
meant to promote Pareto-front convergence and a good solution distribution. The
first mechanism is elitism, which ensures that solutions closest to the true Pareto-
front will never be eliminated from the population under evolution, i.e. the number
of non-dominated solutions in the population can only increase. The second is a
measure of crowding or density among solutions, a secondary fitness which is often
incorporated into the Pareto-rank to form a single, final fitness.
• Evaluation
• Selection
• Variation
6
Evaluation is typically based on the dominance relation, as described above. It
is intended to give an indication of the level of dominance for each individual by as-
signing a Pareto-rank, which bases itself on the number of other individuals in the
population that are dominated by the individual in question. This ranking must be
Pareto-compliant. Depending on which method used for Pareto ranking, it can be
more or less graded. Traditional MOEAs further incorporate a second fitness crite-
rion when assigning the final fitness, in order to induce a total order on the quality
of individuals before selection. Evaluation is performed in objective space, and is
depending on the objective functions, which again are problem dependent.
Selection comes in two variants, and often base itself on the fitness assigned dur-
ing evaluation. The first selection to be applied, is called mating selection or sexual
selection, where it is decided which individuals of the current generation get to mate
and spawn offspring. This selection is often random or may include all individuals,
in order to give all current generation individuals an equal chance to mate. Envi-
ronmental selection is applied after variation is performed, by applying the famous
rule of survival of the fittest, such that only the best of the combined set of parents
and offspring survive to the next generation. This typically truncates the expanded
population to its original size. Both kinds of selection are performed in objective space.
Variation is applied after mating selection to the individuals, who were selected
for mating. These individuals then get to create offspring, which are a variation of
its parents. Here, two variation operators are typically applied; mutation and recom-
bination. Mutation is intended to cause only small changes in the offspring, whereas
the recombination operator makes it possible to retain good parts of several parents
in the offspring. In general, we say that mutation enhances exploitation, whereas
recombination enhances exploration of the search space. Common for all variation
operators, is that they are applied in decision space.
Mating
Selection
Evaluation Variation
Environmental
Selection
7
2 Contributions
This section is devoted to the contributions made by this author and affiliates. To a
large part, my research so far has been focused on two main areas:
• Genetic algorithms versus Differential Evolution
• Multi-objective Distinct Candidate Optimization (MODCO)
We will go through these areas, first introducing the relevant articles submitted
for conferences in the MOEA society. We then go through the contributions with the
following taxonomy:
1. Content and ideas
2. Results
3. Evaluation and discussion
4. Future work
The content and idea section is intended to present the content and general ideas
expressed in the contribution, while the results section will present results, both in the
form of data and in the form of implemented algorithms or operators. Evaluation and
discussion is concerned with evaluating and discussing the contribution wrt. related
research, and finally the section on future work intends to sketch future investigations.
8
Genetic algorithms Using genetic algorithms, parents are stochastically selected
and copied to an offspring vector, and are then subject to recombination and mutation
operators in order to form offspring. After this, parents and offspring are joined in one
population, subject to truncation by environmental selection based on fitness. This
is illustrated in figure 4, where it may be noted that the population size always varies
from 2N to N during truncation.
Evaluation
Variation
Mating selection
Environmental selection
9
Given parent x spawning offspring y, the elitist rules are:
• If y ≺ x, x is replaced with y.
• If x ≺ y, y is discarded.
Evaluation
Environmental selection
10
A full NSGA-II run is to perform non-dominated sorting on the combined pop-
ulation and offspring population. From here, as many fronts as possible are accom-
modated in the next population. The last front to be inserted is sorted using the
crowding-sort procedure, and only the best individuals wrt. crowding distance is cho-
sen for inclusion. This truncation mechanism favors rank first, and good crowding
distance next, just as the binary crowded tournament selection operator which NSGA-
II applies to the parent part of the population to fill the offspring vector. Finally all
individuals in the offspring vector are subject to crossover and mutation operators.
The density estimation in SPEA2 is based on the k-th nearest neighbour method,
using Euclidean distance in objective space. In short, density for an individual i is
calculated as an inverse to its distance to its k-th nearest neighbour σik , where k = 1
corresponds to the closest neighbour:
1
D(i) = . (5)
σik +2
Finally, each individual ∈ Pt ⊕ At is assigned a fitness value equal to the sum of its
raw fitness and its density value; F (i) = R(i) + D(i) to provide a single value to judge
by.
After fitness assignment, non-dominated solutions ∈ Pt ⊕ At with F (i) < 1 are
first archived, i.e. placed in At+1 . In case the archive is then too small, N − |At+1 |
dominated individuals ∈ Pt ⊕ At are archived, where individuals are chosen according
to their assigned fitness value. Otherwise, if the archive is too large, it is truncated
by recursively removing the individual with the worst density from archive, i.e. the
individual who is closest to its k-th nearest (non-deleted) neighbour is repeatedly
chosen for deletion until the archive size is reached. After this, mating selection is
applied using binary tournament on the archive, in order to fill the offspring vector,
which is then subject to recombination and crossover operators.
11
DEMO versions The Differential Evolution versions of the above genetic algo-
rithms are called DEMON SII and DEMOSP 2 [9; 10]. In the article [1], DEMOSP 2 is
denoted SPDE2 (Strength Pareto Differential Evolution 2), as we thought this was a
novel approach. However, the alternate DEMO version had already been investigated
under the name DEMOSP 2 , and so we will use this.
The DE versions of NSGA-II and SPEA2 are using the corresponding Pareto-
ranking, secondary fitness assignment and truncation mechanism as their origins.
The difference lies in applying the elitist rules, and in using several individuals for
offspring creation, as seen in Algorithm 1 and in figure 5. Using DE, the elitist rules
ensure the spread of good decision variables, while using several individuals increase
the chance of retaining good parts of the decision variables and decrease the risk of
premature stagnation by introducing more diversity than genetic variation operators.
2.1.2 Results
Here, we summarize the results of our contribution. Overall, the results from this
contribution have been:
1. Implementation of NSGA-II and SPEA2 with genetic operators.
2. Implementation of DEMON SII and DEMOSP 2 .
3. Implementation of 5 ZDT (Zitzler, Deb, Thiele) test problems.
4. Implementation of 5 different performance indices (PIs)
5. Data from runs using all algorithms on all test problems with all PIs.
12
Performance indices As the true Pareto-fronts of the ZDT problems are known, it
was possible to implement performance indices directly minded on giving an indication
of the MOEA performance wrt. the 3 goals of MOEAs described earlier. 2 PIs on
closeness, 2 PIs on distribution and 1 on spread were implemented.
Data To gather data, each algorithm was run 10 times on each test problem. From
the resulting populations and the known true Pareto-fronts, the PIs were calculated,
averaged, analyzed and discussed. It was clear, that the DEMO versions of NSGA-
II and SPEA2 performed better than their original versions on all indices. Further,
DEMOSP 2 was observed to perform slightly better than DEMON SII , possibly due to
a more fine-grained Pareto-ranking and a recursive density assignment procedure.
I further made a few investigations into the differences in distribution achieved by
the genetic and the DEMO algorithms, and found a discrepancy between DE and the
crowding/density measure of NSGA-II and SPEA2, as DE itself does not promote a
good distribution. Thus, DE - based algorithms seem to be more prone to generate
offspring, which are removed due to crowding and thus does not contribute to the
steady qualitative improvement in the population.
13
2.1.4 Future work
No future work is intended to follow up on this contribution. The implemented algo-
rithms all have been tested to work well on a range of problems, especially the DE
based ones. However, there seems to be little to gain in making further research in
this direction, as much is already thoroughly covered in [10]. Still, the algorithms have
been a basis for experimenting with new algorithms, partly based on the techniques
of NSGA-II, SPEA2 and the DEMO versions. Especially the pareto ranking methods
and the elite preserving truncation mechanism have been used in newly developed
algorithms, along with Differential Evolution.
14
MODCO basics MODCO tries to circumvent this problem by incorporating gen-
eral, higher level information to the search, replacing step 2 in figure 2. This info
includes relevant practical information such as:
1. How much time and money can be spend on post-processing the solution set?
This information is relevant, and these questions must be answered, for most real-
life applications. The goal of MODCO is to use this information as a guide towards
a small, final set of distinct candidates, replacing step 2 in figure 2, such that this
final selection is not only the responsibility of the DM, but is incorporated in the
optimization process.
15
percent of tolerance is acceptable in simulation. However, if the simulator inaccuracy
is greater than the difference between neighbor solutions from the MOEA resulting
population, a lot of these will not be distinguishable from each other. Again, a smaller,
more distinct set of candidate solutions would be preferable.
Choosing among large sets of solutions implies problems for the DM, wrt.
human factors. The DM may not have the technical background, or the knowledge
on optimization to be able to select among 100-500 different Pareto-optimal solutions
to a problem with high dimensionality. The amount of solutions makes it infeasible
to inspect and evaluate the different trade-offs, and further it is often not possible to
state explicit preference rules in order to guide this final selection. The only general
rule is, that solutions in knee regions in the objective space are preferred. Knee regions
are areas in the objective space, where a small improvement in one objective leads to
a high deterioration in another, or put another way, a convex part of the Pareto front.
Hence, a small set of solutions in knee regions would be preferable from a DM point
of view.
Algorithmic perspectives on MODCO reveal a few points where the search
for only small set of solutions should have advantages over traditional MOEA result
sets. First of all, allowing a decrease in the local population diversity may result in
a more focused search, in some ways similar to local search, which results in a better
convergence toward the true Pareto front. Secondly, the approach makes it possible
to use a smaller population size, since we are now no longer interested in covering the
full Pareto front, but only in locating a few distinct candidates. This naturally implies
fewer computational steps, especially function evaluations, but without compromising
the quality of the found distinct candidates. Finally, if we are able to locate knee
regions, these are indeed the interesting areas, so no other solutions need be reported.
The search for knees may further improve convergence towards the true Pareto front,
as will be argued later.
MODCO goals The goals of MODCO are related to, but different from the goals
of traditional MOEAs, and are inspired by the desire of finding a small set of optimal,
distinct candidates, preferably in knee sections. The features of the ideal MODCO
algorithm are described in more detail in [2], but in general, the goals of a MODCO
algorithm are:
1. Closeness towards the true Pareto front. Ideally, solutions are placed on the
true Pareto front, but otherwise they should be as close as possible.
2. Global distinctiveness in the returned solutions, i.e. that solutions are dis-
tinguishable wrt. performance or design. Ideally, this feature is parametrized,
in order for the user to set how distinct returned solutions should be.
16
The first goal corresponds to the first goal of traditional MOEAs, as we are still
interested in optimizing our results. The two last goals are different, and based on the
idea of a decreased cardinality in the result set. That is, if we want to decrease the
result set cardinality, we need other ways of controlling the global diversity. Further,
as argued earlier, results in knee regions are more interesting for a DM, and so these
should be reported.
The paper on MODCO was rejected for the EMO 2009 conference, mostly due to its
non-technical nature. Much of the argumentation is based on experience, and thus
deals with many non-technical issues related to decision making and the quantification
of DM preferences. The connection to the more concrete paper on the CFDE algorithm
is strong and is pointed out several places, but this was not enough to be accepted.
On afterthought, the MODCO article could have been compressed, and maybe
inserted in the beginning of the CFDE paper, simply giving the goals and a short
argumentation. This could have increased the correlation between the theory and
the practical appliance of MODCO. However, we wanted to separate the theory from
practical experiments in order to be able to argue for the soundness and use of both.
The future work for the MODCO article includes a rewrite, incorporating some more
technical material from the technical report [4] also related to MODCO. This is due
to the criticism of the articles non-technical nature, and in order to make correlations
to CFDE more clear. As the MODCO paper gives much of the argumentation for
why this class of algorithms should even be considered, it is further important for the
CFDE article. Thus we need the article to be publicly available, and as such it must
be well founded.
Further, we are currently discussing the MODCO branch of MOO with a few well
known writers within the MOEA community, in order to establish the usability and
related issues of the MODCO branch of MOO. A few answers have so far been positive
towards the idea and have suggested further reading.
17
2.3.1 Content and ideas
The article [3] demonstrates the first instance of a MODCO algorithm; the Cluster-
Forming Differential Evolution (CFDE) algorithm. It is intended as a sequel to the
article introducing MODCO as described above, implementing and evaluating a con-
crete instance of the suggested algorithm class. The algorithm follows the goals of
MODCO, resulting in the following features:
These features corresponds to the MODCO goals, also used for evaluating the
CFDE algorithm performance. For reference, the CFDE algorithm is depicted in
Algorithm 2. As usual we have a population P of size N , but the primary data struc-
ture is now a vector of subpopulations Pi ∈ P of size N/KN C each, assuming WLOG
that N mod KN C = 0, as seen in figure 6. Further, a vector holding subpopulation
centroids, and a temporary offspring vector are used. minDist(Ci ) is the function re-
turning the minimum distance from centroid Ci to the nearest other centroid, whereas
the calculation of σ is depending on both KP D and the current problem.
18
K
NC
N/ K Parent part
NC
N/ K Offspring part
NC
19
Still, CFDE maintain focus on convergence towards the true pareto-front, so it
then assigns to each individual a global pareto rank using the NSGA-II non-dominated
sorting. This is used for assigning each individual a final fitness, such that the final
fitness incorporates both rank and secondary fitness measure in a total order.
Finally each subpopulation is truncated to the original size of N/KN C using the
truncation mechanism of NSGA-II. Here, the main differences are, that truncation
is done locally in subpopulations, and that the subpopulations are truncated using
one of the two secondary fitness measures, which is incorporated in the final fitness.
Hence, some subpopulations may be truncated using distance, and others using the
knee utility function. This way subpopulations may be attracted to different knee
regions, while forming clusters during the evolutionary process. As we return only
one solution from each subpopulation, we get the wanted number of distinct solutions
returned.
Novel contributions In the article [3], a more thorough walktrough of all the
mechanisms of the CFDE algorithm is found, but here we will only go through the
novel contributions and their compliance to the MODCO goals. This is due to many
mechanisms used in the CFDE algorithm having already been explained in this report.
The novel contributions in the CFDE algorithm are:
1. Flexible subpopulation based Differential Evolution.
2. Centroid calculation for each subpopulation allowing for migration.
3. Subpopulation centroid distance based secondary fitness.
4. Alternating secondary fitness assignment to subpopulations.
The idea of subpopulations is not new in itself, and has also been used in single-
objective optimization, e.g. in multi-modal optimization, where decision spaces con-
tains several global optima to be discovered, not unlike multi-objective optimization.
However, to this authors knowledge, this is the first algorithm with a parametrized
amount of subpopulations subject to Differential Evolution. The subpopulation ap-
proach is naturally crucial for the full algorithm, in that it allows for reporting back
the wanted number of distinct candidates.
The centroid calculation for each subpopulation is simple and based on the place-
ment of the parent part of each subpopulation in objective space. It gives the average
placement of the elite (parent) part of each subpopulation, and is used for both migra-
tion and the centroid distance calculation used in the secondary fitness assignment.
Thus, calculating centroids is essential for the clustering ability of CFDE. For each
subpopulation Pi , we calculate the centroid Ci = [Ci,1 , Ci,2 ...Ci,M ] as the average point
of the elite in objective space:
PN/KN C
j=1 fm (xi,j )
Ci,m = , m = 1..M. (6)
N/KN C
20
The centroid distance calculation enhances clustering by penalizing the individuals
of any subpopulation with the distance to the nearest other subpopulation centroid.
As this is to be maximized, solutions created far from the subpopulation centroid are
most prone for penalty, as they are most likely to be close to the centroid of another
subpopulation. This further makes subpopulations reject each other, as solutions gen-
erated the furthest away from other centroids are then favored. Let dist(x, y) denote
the distance in objective space between point x and point y, each of dimension M .
Further, let min(S) denote the minimal element of the set S. For the subpopulation
Pi , we then assign to each individual x ∈ Pi a secondary fitness SF as:
SF (x) = min({dist(f (x), Cj ), j = 1..KN C , j 6= i}) (7)
The subpopulation approach of CFDE also makes it possible to assign alternating
secondary fitnesses, according to case. To this authors knowledge, this is also a
new idea, facilitating the use of an arbitrary amount of secondary fitness functions.
However, this calls for a priority among secondary fitnesses. In the case of CFDE, we
are only interested in distinct candidates, and thus the two secondary fitness measures
conflicts only if knee regions are located too close wrt. σ, i.e. we may not report back
solutions in knee regions located too close too each other, as they are not considered
distinct. Otherwise, knee search will not deteriorate clustering, as knee regions are
typically small, and likewise, the centroid distance assignment will not prevent knees
from being found when distinctiveness is achieved for any subpopulation.
The alternate secondary fitness measure, the utility function proposed in [12], is
intended to discover knee regions by calculating an average fitness value for a large
number of randomly sampled weight vectors. If this average fitness is good, the
individual is more likely to reside in a knee region. Knee regions are characterized by
the fact that a small improvement in one objective, will result in large deterioration in
another objective. The utility function takes only one argument, precision, denoting
the number of sample P weight vectors to apply. Let λ denote the weight vector of
dimension M , with m λm = 1. Then we calculate the secondary fitness SF with
precision precision of each individual x ∈ Pi as:
Pprecision
p=1 λp · f (x)
SF (x) = (8)
precision
Lastly, let us see how CFDE comply with the goals of MODCO, and how this is
supported by the novel contributions. Goal 1 of convergence is ensured by elitism
within subpopulations, i.e. the number of globally non-dominated solutions within a
subpopulation can only increase. Further this is enhanced by the elitism rules using
Differential Evolution. Goal 2 of distinctiveness is achieved using the subpopulation
approach, which together with the centroid calculation, migration and centroid dis-
tance penalty forms clusters from the initial random subpopulations, each reporting
back a distinct solution. Further, the subpopulation approach is easily parametrized
to enable user setting. Goal 3 of detecting knees is achieved using Brancke’s knee
utility function when distinctiveness is reached.
21
2.3.2 Results
To provide results, the CFDE algorithm was demonstrated on 3 kinds of problems
from MOEA literature; the 2D ZDT problems [6; 5], the knee problems of Branke et
al. [12], and all non-constrained 3D DTLZ problems [11], all with problem settings
as suggested in the respective papers. The experiments were performed with respect
to the MODCO goals:
First, we check CFDE convergence against the DEMO versions, which have demon-
strated good performance on many problems [9; 10]. Next, we want to demonstrate
convergence to KN C clusters, how we may change solution diversity by setting KP D ,
and finally that CFDE are able to locate knees.
We demonstrate the use of KP D only on knee problems, as this is only relevant
for such problems. For ZDT and DTLZ problems, we therefore always set σ = ∞,
effectively disabling knee search. For the 3D DTLZ problems, we have used a higher
KN C to ensure that we find both extreme and intermediate trade-offs. All other
settings of the algorithms investigated can be found in [3], Section 3, Table 1 and 2.
22
1 1
20 runs - 5 clusters 20 runs - 10 clusters
20 runs - 5 clusters
0.8
0.5
0.6
F2
F2
0
0.4
-0.5
0.2
0 -1
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
F1 F1
The results on each of the test problems can be found in Table 3 and 4 in [3] along
with a more thorough walkthrough, but here we will only note that the CFDE results
are almost never dominated by results from the DEMO versions, in fact only on a
single test problem with a high number of local Pareto fronts near the global one,
the DEMO versions seems to outperform CFDE. On the rest of the 15 test problems,
CFDE demonstrates equal or superior convergence, with up to 87 % dominating
solutions produced compared to the most similar DEMO counterparts. Overall, the
CFDE algorithm appears to be superior to the DEMO versions wrt. convergence.
23
points z ∗∗ = (0, 0, 0) and z I = (8, 8, 8), which span the interesting part of the objective
space. Then we can calculate:
√
σ = KP D /KN C · ||z ∗∗ − z I || = 1/5 · 192 ≈ 2.77 (9)
In this setting, subpopulations will repel each other if they get within a distance
of 2.77 of each others centroids. Setting KP D = 1 should ensure maximum global
distinctiveness, such that we get clusters uniformly spread across the objective space
spanned by the reference points. Contrary, setting KP D close to zero enables clusters
to get closer to each other while searching for knees.
True front
KPD=1.0 - 20 runs
KPD=0.5 - 20 runs
KPD=0.2 - 20 runs
8
7
6
5
4
F3
3
2
1 2 10
3
0 0 1 2 3 4 6 5 4 F1
F2 5 6 7 8 87
Figure 9 illustrates the results of setting KP D to 0.2, 0.5 and 1.0. For KP D = 1,
the 5 clusters are equidistant around the single knee, where one cluster is placed. The
four clusters not in the knee are repelled from each other as they reach a distance of
2.77 between centroids, as was demonstrated in the example calculation above. The
four clusters not in the knee are located in the partial knees on the lines forming a
cross. For KP D = 0.5, we always hit the knee with one cluster. Further, it can be
seen that some solutions has found other knee regions, crawling towards the one in
the middle, but not being allowed to get too close. Setting KP D = 0.2 results in all
clusters getting very close to the single knee region. Overall, it is clear that increasing
KP D indeed makes clusters repel each other more.
24
8 8
true front true front
7 20 runs - 5 clusters 7 20 runs
6 6
5 5
F2
F2
4 4
3 3
2 2
1 1
0 0
0 1 2 3 4 5 0 1 2 3 4 5 6 7 8
F1 F1
Figure 10: DO2DK plot - 20 runs - 5 clus- Figure 11: DEB2DK plot - 20 runs - 4 clus-
ters - 4 knees ters - 4 knees
settings as has been used for creating the results illustrated in figure 4 in [12]. For
the 20 runs depicted in figure 10, it may be noticed, that the density of solutions near
knee regions is very high. When using KN C = 5, CFDE finds the 4 knee regions very
precisely, while one cluster typically hits an outer solution, or is caught in-between
knee regions. For DO2DK, we have used KP D = 0.75 corresponding to σ = 1.5. This
way we keep clusters separated, while still allowing for knees to be found.
For the DEB2DK problem, we have used K = 4 to replicate the results illustrated
in figure 5 in [12]. In figure 11, we again see that for the 20 runs the density of
solutions near knees are very high. Here, we have to set KN C to be equal to the
number of knees, and it is clear that all knees are discovered in all runs. Here, we
have used KP D = 0.2 corresponding to σ = 0.5. This is low, so the centroid distance
assignment is rarely used. Hence, subpopulations converge to knees, and as long as
σ > 0, the clusters formed will not overlap.
From the figures 10 and 11, and further figure 9, it is clear, that CFDE is indeed
able to locate knee regions. Further, it has been demonstrated how to balance the
search using KP D resulting in different σ values.
25
3 Future work
This section is devoted to my future work, which mainly will be concerned with the
appliance of MODCO algorithms in relation to Grundfos problems, with the CFDE
algorithm being the first. The major challenge will be applying the newly developed
algorithms to the real world problems supplied by Grundfos, which are typically much
more complex than test problems, along with being constrained.
Apart from working on Grundfos problems, new performance indices, possibly
facilitating comparison between MOEAs of different result set cardinality are to be
invented, along with new versions of MODCO algorithms. Lastly, we will investigate
which conferences and journals could be relevant to submit to, and how this could
coincide with my research.
In general, the hope is a synergy between the new knowledge acquired from testing
on real world problems, and the general appliance of MOEAs. Grundfos have both
problems and decision makers, which are both required in order to investigate the full
multiobjective optimization process, which is of general interest to computer scientists
in the MOO area. On the other hand, the resulting designs of these investigations
should be of interest to Grundfos, as they are presumably both distinct and optimal,
wrt. user settings and the precision used in simulations.
26
• An approach for constrained problems.
27
MODCO algorithms, and with this the CFDE algorithm, are potentially well suited
for many-objective problems with high-dimensional Pareto fronts, since the more fo-
cused search does not need to put any effort into covering the full pareto-front, which
can be very difficult in high dimensional spaces, as argued above. As higher dimen-
sional problems also calls for larger population sizes, the problem with choosing from
the result set again becomes apparent for standard MOEAs, whereas this is circum-
vented using MODCO algorithms, e.g. CFDE.
28
is depending on the population size, we may decrease the number of computations
correspondingly. The question is, how much we can decrease population size without
having the quality of results deteriorating. Further, the secondary fitness assignment
of CFDE requires less computations than the density measures of NSGA-II or SPEA2,
but we still need some research on the efficiency of the alternating measures, wrt.
newly developed performance indices, as discussed below.
29
position wrt. neighboring solutions. Using these different indicators, we may see to
which extent the intended distinctiveness is achieved, based on statistical analysis.
The third goal of MODCO is to discover knee regions, and so we need indicators
to reveal this, as knee regions are not in general known a priori, as was the case with
the knee problems used for illustration in [3]. One such indicator is suggested in [4],
based on knowledge of an ideal corner of the hypercube spanned by the objective
functions. However, the utility function of Brance used in the CFDE algorithm will
give a similar indication of knee regions, and this is very simple to both understand,
adjust and use.
30
3.4 Relevant conferences and journals
Here, we will provide an overview of the conferences and journals, to which we may
submit future publications. We will first list conferences and then journals, as well
as give an early indication of what work may be done by these deadlines. The list
further shows approximate dates for the conferences.
These conferences are all focused on evolutionary computation, and are all well
suited for papers on new algorithms or new applications. EMO is more specialized, in
that it is more focused on multiobjective optimization, and thus is very relevant to this
author. So the acceptance of [3] for this conference is a good opportunity to discuss my
work here. However, as CEC and GECCO are much further away in the future (2010),
relevant submission will here include reports on testing new MODCO algorithms on
Grundfos problems including new performance indices, as will be developed by the
end of 2009, the approximate deadline for submissions to these conferences.
Relevant journals include:
31
List of Figures
1 Mapping from decision space to objective space - assuming maximization 3
2 Multi-objective optimization process . . . . . . . . . . . . . . . . . . . 4
3 Multi-Objective Evolutionary Algorithm main loop . . . . . . . . . . . 7
4 Genetic algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5 Differential Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6 Population after migration . . . . . . . . . . . . . . . . . . . . . . . . . 19
7 ZDT1 plot - 20 runs - 5 clusters . . . . . . . . . . . . . . . . . . . . . . 23
8 ZDT3 plot - 20 runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
9 DEB3DK plot - investigating user defined performance distinctiveness . 24
10 DO2DK plot - 20 runs - 5 clusters - 4 knees . . . . . . . . . . . . . . . 25
11 DEB2DK plot - 20 runs - 4 clusters - 4 knees . . . . . . . . . . . . . . . 25
List of Algorithms
1 Differential Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2 Cluster-Forming Differential Evolution . . . . . . . . . . . . . . . . . . 18
References
[1] Justesen, P.D. and Ursem, R.K.: Multiobjective Distinct Candidates Optimization
(MODCO): A Cluster-Forming Differential Evolution Algorithm. In: Accepted at
the Evolutionary Multiobjective Optimization (EMO 2009) conference. Prelimi-
nary download:
www.daimi.au.dk/∼ursem/publications/Justesen EMO2009 CFDE.pdf
[3] Justesen, P.D. and Ursem, R.K.: Introducing SPDE2: A Novel DE Based Ap-
proach for Multiobjective Optimization. Rejected at the Parallel Problem Solving
from Nature X (PPSN 2008) conference. Download:
www.daimi.au.dk/∼juste/MOEA/article.pdf
32
[5] Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective
genetic algorithm: NSGA-II. In: IEEE transactions on Evolutionary Computation
6, 2002, pp. 182 - 197.
[7] Zitzler, E., Laumanns, M. Thiele, L.: SPEA2: Improving the strength pareto
evolutionary algorithm. In: Technical Report 103, Computer Engineering and
Networks Laboratory (TIK), Swiss Federal Institute of Technology (ETH) Zurich,
Gloriastrasse 35, CH-8092 Zurich, Switzerland (2001).
[8] Price, K. V., Storn, R.: Differential Evolution - a simple evolution strategy for
fast optimization. In: Dr. Dobb’s journal 22, 1997, pp. 18 - 24.
[9] Robič, T., Filipič, B.: DEMO: Differential Evolution for Multiobjective Optimiza-
tion. In: LNCS 3410/2005, pp. 520 - 533.
[10] Robič, T., Filipič, B.: Differential Evolution Versus Genetic Algorithms in Mul-
tiobjective Optimization. In: LNCS volume 4403/2007, pp. 257 - 271.
[11] Deb, K., Thiele, L., Laumanns M., Zitzler, E.: Scalable Test Problems for Evo-
lutionary Multi-Objective Optimization. In: Proceedings of the 2002 Congress on
Evolutionary Computation, CEC ’02, pp. 825 - 830.
[12] Branke, J., Deb, K., Dierolf H, Osswald, M.: Finding Knees in Multi-objective
Optimization. In: LNCS volume 3242/2004, pp. 722-731.
[14] Kukkonen S., Lampinen, J.: GDE3: The third Evolution Step of Generalized
differential evolution. In: Proceedings of the 2005 Congress on Evolutionary Com-
putation, CEC ’05, pp. 443 - 450.
[15] Karthis, S., Deb, K., Miettinen, A.: A Local Search Based Evolutionary Multi-
objective Optimization for Fast and Accurate Convergence. In: LNCS volume
5199/2008, pp. 815 - 824.
33