Escolar Documentos
Profissional Documentos
Cultura Documentos
E
d
Author: Thomas Weise
tweise@gmx.de
Edition: third
Version: 2011-12-07-15:31
Newest Version: http://www.it-weise.de/projects/book.pdf
Sources/CVS-Repository: goa-taa.cvs.sourceforge.net
2
Don
,
tprintme!
Also think about
the trees that
would have to
dieforthepaper!
This book is much more
useful as electronic resource:
youcansearchtermsandclick
links. You can t do that in a
printedbook.
,
Thebookisfrequentlyupdatedandimprovedas
well.Printedversionswilljustoutdate.
Don
,
tprintme!
Preface
This e-book is devoted to Global Optimization algorithms, which are methods for nding
solutions of high quality for an incredible wide range of problems. We introduce the basic
concepts of optimization and discuss features which make optimization problems dicult
and thus, should be considered when trying to solve them. In this book, we focus on
metaheuristic approaches like Evolutionary Computation, Simulated Annealing, Extremal
Optimization, Tabu Search, and Random Optimization. Especially the Evolutionary Com-
putation methods, which subsume Evolutionary Algorithms, Genetic Algorithms, Genetic
Programming, Learning Classier Systems, Evolution Strategy, Dierential Evolution, Par-
ticle Swarm Optimization, and Ant Colony Optimization, are discussed in detail.
In this third edition, we try to make a transition from a pure material collection and
compendium to a more structured book. We try to address two major audience groups:
1. Our book may help students, since we try to describe the algorithms in an under-
standable, consistent way. Therefore, we also provide the fundamentals and much
background knowledge. You can nd (short and simplied) summaries on stochastic
theory and theoretical computer science in Part VI on page 638. Additionally, appli-
cation examples are provided which give an idea how problems can be tackled with
the dierent techniques and what results can be expected.
2. Fellow researchers and PhD students may nd the application examples helpful too.
For them, in-depth discussions on the single approaches are included that are supported
with a large set of useful literature references.
The contents of this book are divided into three parts. In the rst part, dierent op-
timization technologies will be introduced and their features are described. Often, small
examples will be given in order to ease understanding. In the second part starting at page
530, we elaborate on dierent application examples in detail. Finally, in the last part fol-
lowing at page 638, the aforementioned background knowledge is provided.
In order to maximize the utility of this electronic book, it contains automatic, clickable
links. They are shaded with dark gray so the book is still b/w printable. You can click on
1. entries in the table of contents,
2. citation references like Heitkotter and Beasley [1220],
3. page references like 253,
4. references such as see Figure 28.1 on page 254 to sections, gures, tables, and listings,
and
5. URLs and links like http://www.lania.mx/
ccoello/EMOO/ [accessed 2007-10-25]. We can neither guarantee that their content remains unchanged, nor
that these sites stay available. We also assume no responsibility for anything we linked to.
4 PREFACE
The following scenario is an example for using the book: A student reads the text and
nds a passage that she wants to investigate in-depth. She clicks on a citation which seems
interesting and the corresponding reference is shown. To some of the references which are
online available, links are provided in the reference text. By clicking on such a link, the
Adobe Reader
R
2
will open another window and load the regarding document (or a browser
window of a site that links to the document). After reading it, the student may use the
backwards button in the Acrobat Readers navigation utility to go back to the text initially
read in the e-book.
If this book contains something you want to cite or reference in your work, please use
the citation suggestion provided in Chapter A on page 945. Also, I would be very happy
if you provide feedback, report errors or missing things that you have (or have not) found,
criticize something, or have any additional ideas or suggestions. Do not hesitate to contact
me via my email address tweise@gmx.de. Matter of fact, a large number of people helped
me to improve this book over time. I have enumerated the most important contributors in
Chapter D Thank you guys, I really appreciate your help! At many places in this book
we refer to Wikipedia The Free Encyclopedia [2938] which is a great source of knowledge.
Wikipedia The Free Encyclopedia contains articles and denitions for many of the aspects
discussed in this book. Like this book, it is updated and improved frequently. Therefore,
including the links adds greatly to the books utility, in my opinion.
The updates and improvements will result in new versions of the book, which will
regularly appear at http://www.it-weise.de/projects/book.pdf. The complete
L
A
T
E
X source code of this book, including all graphics and the bibliography, is hosted
at SourceForge under http://sourceforge.net/projects/goa-taa/ in the CVS
repository goa-taa.cvs.sourceforge.net. You can browse the repository under
http://goa-taa.cvs.sourceforge.net/goa-taa/ and anonymously download the
complete sources of it by using the CVS command given in Listing 1.
3
cvs -z3 -d:pserver:anonymous@goa-taa.cvs.sourceforge.net:/cvsroot/goa-taa
checkout -P Book
Listing 1: The CVS command for anonymously checking out the complete book sources.
Compiling the sources requires multiple runs of L
A
T
E
X, BibT
E
X, and makeindex because of
the nifty way the references are incorporated. In the repository, an Ant-Script is provided for
doing this. Also, the complete bibliography of this book is stored in a MySQL
4
database and
the scripts for creating this database as well as tools for querying it (Java) and a Microsoft
Access
5
frontend are part of the sources you can download. These resources as well as all
contents of this book (unless explicitly stated otherwise) are licensed under the GNU Free
Documentation License (FDL, see Chapter B on page 947). Some of the algorithms provided
are made available under the LGPL license (see Chapter C on page 955)
Copyright c _ 2011 Thomas Weise.
Permission is granted to copy, distribute and/or modify this document under the terms of
the GNU Free Documentation License, Version 1.3 or any later version published by the Free
Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the Chapter B on page 947 entitled GNU Free
Documentation License (FDL).
2
The Adobe Reader
R
is available for download at http://www.adobe.com/products/reader/ [ac-
cessed 2007-08-13].
3
More information can be found at http://sourceforge.net/scm/?type=cvs&group_id=264352
4
http://en.wikipedia.org/wiki/MySQL [accessed 2010-07-29]
5
http://en.wikipedia.org/wiki/Microsoft_Access [accessed 2010-07-29]
Contents
Title Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Part I Foundations
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.1 What is Global Optimization? . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.1.1 Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.1.2 Algorithms and Programs . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.1.3 Optimization versus Dedicated Algorithms . . . . . . . . . . . . . . . 24
1.1.4 Structure of this Book . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.2 Types of Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.2.1 Combinatorial Optimization Problems . . . . . . . . . . . . . . . . . . 24
1.2.2 Numerical Optimization Problems . . . . . . . . . . . . . . . . . . . . 27
1.2.3 Discrete and Mixed Problems . . . . . . . . . . . . . . . . . . . . . . 29
1.2.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.3 Classes of Optimization Algorithms . . . . . . . . . . . . . . . . . . . . . . . 31
1.3.1 Algorithm Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.3.2 Monte Carlo Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.3.3 Heuristics and Metaheuristics . . . . . . . . . . . . . . . . . . . . . . 34
1.3.4 Evolutionary Computation . . . . . . . . . . . . . . . . . . . . . . . . 36
1.3.5 Evolutionary Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 37
1.4 Classication According to Optimization Time . . . . . . . . . . . . . . . . . 37
1.5 Number of Optimization Criteria . . . . . . . . . . . . . . . . . . . . . . . . 39
1.6 Introductory Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2 Problem Space and Objective Functions . . . . . . . . . . . . . . . . . . . . 43
2.1 Problem Space: How does it look like? . . . . . . . . . . . . . . . . . . . . . 43
2.2 Objective Functions: Is it good? . . . . . . . . . . . . . . . . . . . . . . . . . 44
3 Optima: What does good mean? . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.1 Single Objective Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.1.1 Extrema: Minima and Maxima of Dierentiable Functions . . . . . . 52
3.1.2 Global Extrema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2 Multiple Optima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.3 Multiple Objective Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6 CONTENTS
3.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3.2 Lexicographic Optimization . . . . . . . . . . . . . . . . . . . . . . . 59
3.3.3 Weighted Sums (Linear Aggregation) . . . . . . . . . . . . . . . . . . 62
3.3.4 Weighted Min-Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.3.5 Pareto Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.4 Constraint Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.4.1 Genome and Phenome-based Approaches . . . . . . . . . . . . . . . . 71
3.4.2 Death Penalty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.4.3 Penalty Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.4.4 Constraints as Additional Objectives . . . . . . . . . . . . . . . . . . 72
3.4.5 The Method Of Inequalities . . . . . . . . . . . . . . . . . . . . . . . 72
3.4.6 Constrained-Domination . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.4.7 Limitations and Other Methods . . . . . . . . . . . . . . . . . . . . . 75
3.5 Unifying Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.5.1 External Decision Maker . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.5.2 Prevalence Optimization . . . . . . . . . . . . . . . . . . . . . . . . . 76
4 Search Space and Operators: How can we nd it? . . . . . . . . . . . . . . 81
4.1 The Search Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.2 The Search Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.3 The Connection between Search and Problem Space . . . . . . . . . . . . . . 85
4.4 Local Optima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.4.1 Local Optima of single-objective Problems . . . . . . . . . . . . . . . 89
4.4.2 Local Optima of Multi-Objective Problems . . . . . . . . . . . . . . . 89
4.5 Further Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
5 Fitness and Problem Landscape: How does the Optimizer see it? . . . . 93
5.1 Fitness Landscapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.2 Fitness as a Relative Measure of Utility . . . . . . . . . . . . . . . . . . . . . 94
5.3 Problem Landscapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6 The Structure of Optimization: Putting it together. . . . . . . . . . . . . 101
6.1 Involved Spaces and Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.2 Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.3 Other General Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.3.1 Gradient Descend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.3.2 Iterations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.3.3 Termination Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.3.4 Minimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.3.5 Modeling and Simulating . . . . . . . . . . . . . . . . . . . . . . . . . 106
7 Solving an Optimization Problem . . . . . . . . . . . . . . . . . . . . . . . . 109
8 Baseline Search Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
8.1 Random Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
8.2 Random Walks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
8.2.1 Adaptive Walks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
8.3 Exhaustive Enumeration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
9 Forma Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
CONTENTS 7
10 General Information on Optimization . . . . . . . . . . . . . . . . . . . . . . 123
10.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
10.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
10.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
10.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Part II Diculties in Optimization
11 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
12 Problem Hardness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
12.1 Algorithmic Complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
12.2 Complexity Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
12.2.1 Turing Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
12.2.2 T, AT, Hardness, and Completeness . . . . . . . . . . . . . . . . . . 146
12.3 The Problem: Many Real-World Tasks are AT-hard . . . . . . . . . . . . . 147
12.4 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
13 Unsatisfying Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
13.2 The Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
13.2.1 Premature Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . 152
13.2.2 Non-Uniform Convergence . . . . . . . . . . . . . . . . . . . . . . . . 152
13.2.3 Domino Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
13.3 One Cause: Loss of Diversity . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
13.3.1 Exploration vs. Exploitation . . . . . . . . . . . . . . . . . . . . . . . 155
13.4 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
13.4.1 Search Operator Design . . . . . . . . . . . . . . . . . . . . . . . . . . 157
13.4.2 Restarting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
13.4.3 Low Selection Pressure and Population Size . . . . . . . . . . . . . . 157
13.4.4 Sharing, Niching, and Clearing . . . . . . . . . . . . . . . . . . . . . . 157
13.4.5 Self-Adaptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
13.4.6 Multi-Objectivization . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
14 Ruggedness and Weak Causality . . . . . . . . . . . . . . . . . . . . . . . . . 161
14.1 The Problem: Ruggedness . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
14.2 One Cause: Weak Causality . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
14.3 Fitness Landscape Measures . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
14.3.1 Autocorrelation and Correlation Length . . . . . . . . . . . . . . . . . 163
14.4 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
15 Deceptiveness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
15.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
15.2 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
15.3 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
16 Neutrality and Redundancy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
16.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
16.2 Evolvability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
16.3 Neutrality: Problematic and Benecial . . . . . . . . . . . . . . . . . . . . . 172
16.4 Neutral Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
16.5 Redundancy: Problematic and Benecial . . . . . . . . . . . . . . . . . . . . 174
16.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
16.7 Needle-In-A-Haystack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
8 CONTENTS
17 Epistasis, Pleiotropy, and Separability . . . . . . . . . . . . . . . . . . . . . 177
17.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
17.1.1 Epistasis and Pleiotropy . . . . . . . . . . . . . . . . . . . . . . . . . 177
17.1.2 Separability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
17.1.3 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
17.2 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
17.3 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
17.3.1 Choice of the Representation . . . . . . . . . . . . . . . . . . . . . . . 182
17.3.2 Parameter Tweaking . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
17.3.3 Linkage Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
17.3.4 Cooperative Coevolution . . . . . . . . . . . . . . . . . . . . . . . . . 184
18 Noise and Robustness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
18.1 Introduction Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
18.2 The Problem: Need for Robustness . . . . . . . . . . . . . . . . . . . . . . . 188
18.3 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
19 Overtting and Oversimplication . . . . . . . . . . . . . . . . . . . . . . . . 191
19.1 Overtting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
19.1.1 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
19.1.2 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
19.2 Oversimplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
19.2.1 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
19.2.2 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
20 Dimensionality (Objective Functions) . . . . . . . . . . . . . . . . . . . . . . 197
20.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
20.2 The Problem: Many-Objective Optimization . . . . . . . . . . . . . . . . . . 198
20.3 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
20.3.1 Increasing Population Size . . . . . . . . . . . . . . . . . . . . . . . . 201
20.3.2 Increasing Selection Pressure . . . . . . . . . . . . . . . . . . . . . . . 201
20.3.3 Indicator Function-based Approaches . . . . . . . . . . . . . . . . . . 201
20.3.4 Scalerizing Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . 202
20.3.5 Limiting the Search Area in the Objective Space . . . . . . . . . . . . 202
20.3.6 Visualization Methods . . . . . . . . . . . . . . . . . . . . . . . . . . 202
21 Scale (Decision Variables) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
21.1 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
21.2 Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
21.2.1 Parallelization and Distribution . . . . . . . . . . . . . . . . . . . . . 204
21.2.2 Genetic Representation and Development . . . . . . . . . . . . . . . . 204
21.2.3 Exploiting Separability . . . . . . . . . . . . . . . . . . . . . . . . . . 204
21.2.4 Combination of Techniques . . . . . . . . . . . . . . . . . . . . . . . . 205
22 Dynamically Changing Fitness Landscape . . . . . . . . . . . . . . . . . . . 207
23 The No Free Lunch Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
23.1 Initial Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
23.2 The Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
23.3 Implications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
23.4 Innite and Continuous Domains . . . . . . . . . . . . . . . . . . . . . . . . 213
23.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
CONTENTS 9
24 Lessons Learned: Designing Good Encodings . . . . . . . . . . . . . . . . . 215
24.1 Compact Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
24.2 Unbiased Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
24.3 Surjective GPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
24.4 Injective GPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
24.5 Consistent GPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
24.6 Formae Inheritance and Preservation . . . . . . . . . . . . . . . . . . . . . . 217
24.7 Formae in Genotypic Space Aligned with Phenotypic Formae . . . . . . . . . 217
24.8 Compatibility of Formae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
24.9 Representation with Causality . . . . . . . . . . . . . . . . . . . . . . . . . . 218
24.10Combinations of Formae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
24.11Reachability of Formae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
24.12Inuence of Formae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
24.13Scalability of Search Operations . . . . . . . . . . . . . . . . . . . . . . . . . 219
24.14Appropriate Abstraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
24.15Indirect Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
24.15.1Extradimensional Bypass: Example for Good Complexity . . . . . . . 219
Part III Metaheuristic Optimization Algorithms
25 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
25.1 General Information on Metaheuristics . . . . . . . . . . . . . . . . . . . . . 226
25.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 226
25.1.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
25.1.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 227
25.1.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
26 Hill Climbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
26.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
26.2 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
26.3 Multi-Objective Hill Climbing . . . . . . . . . . . . . . . . . . . . . . . . . . 230
26.4 Problems in Hill Climbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
26.5 Hill Climbing With Random Restarts . . . . . . . . . . . . . . . . . . . . . . 232
26.6 General Information on Hill Climbing . . . . . . . . . . . . . . . . . . . . . . 234
26.6.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 234
26.6.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
26.6.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 234
26.6.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
26.7 Raindrop Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
26.7.1 General Information on Raindrop Method . . . . . . . . . . . . . . . 236
27 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
27.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
27.1.1 Metropolis Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
27.2 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
27.2.1 No Boltzmanns Constant . . . . . . . . . . . . . . . . . . . . . . . . . 246
27.2.2 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
27.3 Temperature Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
27.3.1 Logarithmic Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . 248
27.3.2 Exponential Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . 249
27.3.3 Polynomial and Linear Scheduling . . . . . . . . . . . . . . . . . . . . 249
27.3.4 Adaptive Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
27.3.5 Larger Step Widths . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
10 CONTENTS
27.4 General Information on Simulated Annealing . . . . . . . . . . . . . . . . . . 250
27.4.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 250
27.4.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
27.4.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 250
27.4.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
28 Evolutionary Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
28.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
28.1.1 The Basic Cycle of EAs . . . . . . . . . . . . . . . . . . . . . . . . . . 254
28.1.2 Biological and Articial Evolution . . . . . . . . . . . . . . . . . . . . 255
28.1.3 Historical Classication . . . . . . . . . . . . . . . . . . . . . . . . . . 263
28.1.4 Populations in Evolutionary Algorithms . . . . . . . . . . . . . . . . . 265
28.1.5 Conguration Parameters of Evolutionary Algorithms . . . . . . . . . 269
28.2 Genotype-Phenotype Mappings . . . . . . . . . . . . . . . . . . . . . . . . . 270
28.2.1 Direct Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
28.2.2 Indirect Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
28.3 Fitness Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
28.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
28.3.2 Weighted Sum Fitness Assignment . . . . . . . . . . . . . . . . . . . . 275
28.3.3 Pareto Ranking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
28.3.4 Sharing Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
28.3.5 Variety Preserving Fitness Assignment . . . . . . . . . . . . . . . . . 279
28.3.6 Tournament Fitness Assignment . . . . . . . . . . . . . . . . . . . . . 284
28.4 Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
28.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
28.4.2 Truncation Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
28.4.3 Fitness Proportionate Selection . . . . . . . . . . . . . . . . . . . . . 290
28.4.4 Tournament Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
28.4.5 Linear Ranking Selection . . . . . . . . . . . . . . . . . . . . . . . . . 300
28.4.6 Random Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
28.4.7 Clearing and Simple Convergence Prevention (SCP) . . . . . . . . . . 302
28.5 Reproduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
28.6 Maintaining a Set of Non-Dominated/Non-Prevailed Individuals . . . . . . . 308
28.6.1 Updating the Optimal Set . . . . . . . . . . . . . . . . . . . . . . . . 308
28.6.2 Obtaining Non-Prevailed Elements . . . . . . . . . . . . . . . . . . . . 309
28.6.3 Pruning the Optimal Set . . . . . . . . . . . . . . . . . . . . . . . . . 311
28.7 General Information on Evolutionary Algorithms . . . . . . . . . . . . . . . 314
28.7.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 314
28.7.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
28.7.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 317
28.7.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
29 Genetic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
29.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
29.1.1 History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
29.2 Genomes in Genetic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 326
29.2.1 Classication According to Length . . . . . . . . . . . . . . . . . . . . 326
29.2.2 Classication According to Element Type . . . . . . . . . . . . . . . . 327
29.2.3 Classication According to Meaning of Loci . . . . . . . . . . . . . . 327
29.2.4 Introns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
29.3 Fixed-Length String Chromosomes . . . . . . . . . . . . . . . . . . . . . . . 328
29.3.1 Creation: Nullary Reproduction . . . . . . . . . . . . . . . . . . . . . 328
29.3.2 Mutation: Unary Reproduction . . . . . . . . . . . . . . . . . . . . . 330
29.3.3 Permutation: Unary Reproduction . . . . . . . . . . . . . . . . . . . . 333
CONTENTS 11
29.3.4 Crossover: Binary Reproduction . . . . . . . . . . . . . . . . . . . . . 335
29.4 Variable-Length String Chromosomes . . . . . . . . . . . . . . . . . . . . . . 339
29.4.1 Creation: Nullary Reproduction . . . . . . . . . . . . . . . . . . . . . 340
29.4.2 Insertion and Deletion: Unary Reproduction . . . . . . . . . . . . . . 340
29.4.3 Crossover: Binary Reproduction . . . . . . . . . . . . . . . . . . . . . 340
29.5 Schema Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
29.5.1 Schemata and Masks . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
29.5.2 Wildcards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
29.5.3 Hollands Schema Theorem . . . . . . . . . . . . . . . . . . . . . . . . 342
29.5.4 Criticism of the Schema Theorem . . . . . . . . . . . . . . . . . . . . 345
29.5.5 The Building Block Hypothesis . . . . . . . . . . . . . . . . . . . . . 346
29.5.6 Genetic Repair and Similarity Extraction . . . . . . . . . . . . . . . . 346
29.6 The Messy Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . 347
29.6.1 Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
29.6.2 Reproduction Operations . . . . . . . . . . . . . . . . . . . . . . . . . 347
29.6.3 Overspecication and Underspecication . . . . . . . . . . . . . . . . 348
29.6.4 The Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
29.7 Random Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
29.8 General Information on Genetic Algorithms . . . . . . . . . . . . . . . . . . 351
29.8.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 351
29.8.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
29.8.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 353
29.8.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
30 Evolution Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
30.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
30.2 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
30.3 Recombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
30.3.1 Dominant Recombination . . . . . . . . . . . . . . . . . . . . . . . . . 362
30.3.2 Intermediate Recombination . . . . . . . . . . . . . . . . . . . . . . . 362
30.4 Mutation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
30.4.1 Using Normal Distributions . . . . . . . . . . . . . . . . . . . . . . . . 364
30.5 Parameter Adaptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
30.5.1 The 1/5th Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
30.5.2 Endogenous Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 370
30.6 General Information on Evolution Strategies . . . . . . . . . . . . . . . . . . 373
30.6.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 373
30.6.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
30.6.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 373
30.6.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
31 Genetic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
31.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
31.1.1 History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
31.2 General Information on Genetic Programming . . . . . . . . . . . . . . . . . 382
31.2.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 382
31.2.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
31.2.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 383
31.2.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
31.3 (Standard) Tree Genomes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
31.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
31.3.2 Creation: Nullary Reproduction . . . . . . . . . . . . . . . . . . . . . 389
31.3.3 Node Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
31.3.4 Unary Reproduction Operations . . . . . . . . . . . . . . . . . . . . . 393
12 CONTENTS
31.3.5 Recombination: Binary Reproduction . . . . . . . . . . . . . . . . . . 398
31.3.6 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
31.4 Linear Genetic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
31.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
31.4.2 Advantages and Disadvantages . . . . . . . . . . . . . . . . . . . . . . 404
31.4.3 Realizations and Implementations . . . . . . . . . . . . . . . . . . . . 405
31.4.4 Recombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
31.4.5 General Information on Linear Genetic Programming . . . . . . . . . 408
31.5 Grammars in Genetic Programming . . . . . . . . . . . . . . . . . . . . . . . 409
31.5.1 General Information on Grammar-Guided Genetic Programming . . . 409
31.6 Graph-based Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
31.6.1 General Information on Grahp-based Genetic Programming . . . . . 409
32 Evolutionary Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
32.1 General Information on Evolutionary Programming . . . . . . . . . . . . . . 414
32.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 414
32.1.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
32.1.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 414
32.1.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
33 Dierential Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
33.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
33.2 Ternary Recombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
33.2.1 Advanced Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
33.3 General Information on Dierential Evolution . . . . . . . . . . . . . . . . . 421
33.3.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 421
33.3.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
33.3.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 421
33.3.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
34 Estimation Of Distribution Algorithms . . . . . . . . . . . . . . . . . . . . . 427
34.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
34.2 General Information on Estimation Of Distribution Algorithms . . . . . . . 428
34.2.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 428
34.2.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
34.2.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 429
34.2.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
34.3 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
34.4 EDAs Searching Bit Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
34.4.1 UMDA: Univariate Marginal Distribution Algorithm . . . . . . . . . 434
34.4.2 PBIL: Population-Based Incremental Learning . . . . . . . . . . . . . 438
34.4.3 cGA: Compact Genetic Algorithm . . . . . . . . . . . . . . . . . . . . 439
34.5 EDAs Searching Real Vectors . . . . . . . . . . . . . . . . . . . . . . . . . . 442
34.5.1 SHCLVND: Stochastic Hill Climbing with Learning by Vectors of
Normal Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
34.5.2 PBIL
C
: Continuous PBIL . . . . . . . . . . . . . . . . . . . . . . . . 444
34.5.3 Real-Coded PBIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
34.6 EDAs Searching Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
34.6.1 PIPE: Probabilistic Incremental Program Evolution . . . . . . . . . . 447
34.7 Diculties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
34.7.1 Diversity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
34.7.2 Epistasis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
CONTENTS 13
35 Learning Classier Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
35.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
35.2 Families of Learning Classier Systems . . . . . . . . . . . . . . . . . . . . . 457
35.3 General Information on Learning Classier Systems . . . . . . . . . . . . . . 459
35.3.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 459
35.3.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
35.3.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 459
35.3.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
36 Memetic and Hybrid Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 463
36.1 Memetic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
36.2 Lamarckian Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
36.3 Baldwin Eect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
36.4 General Information on Memetic Algorithms . . . . . . . . . . . . . . . . . . 467
36.4.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 467
36.4.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
36.4.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 467
36.4.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
37 Ant Colony Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
37.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
37.2 General Information on Ant Colony Optimization . . . . . . . . . . . . . . . 473
37.2.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 473
37.2.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
37.2.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 473
37.2.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
38 River Formation Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
38.1 General Information on River Formation Dynamics . . . . . . . . . . . . . . 478
38.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 478
38.1.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
38.1.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 478
38.1.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
39 Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
39.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
39.2 The Particle Swarm Optimization Algorithm . . . . . . . . . . . . . . . . . . 481
39.2.1 Communication with Neighbors Social Interaction . . . . . . . . . . 482
39.2.2 Particle Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
39.2.3 Basic Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
39.3 General Information on Particle Swarm Optimization . . . . . . . . . . . . . 483
39.3.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 483
39.3.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
39.3.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 483
39.3.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
40 Tabu Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
40.1 General Information on Tabu Search . . . . . . . . . . . . . . . . . . . . . . 490
40.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 490
40.1.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
40.1.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 490
40.1.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
14 CONTENTS
41 Extremal Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
41.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
41.1.1 Self-Organized Criticality . . . . . . . . . . . . . . . . . . . . . . . . . 493
41.1.2 The Bak-Sneppen model of Evolution . . . . . . . . . . . . . . . . . . 493
41.2 Extremal Optimization and Generalized Extremal Optimization . . . . . . . 494
41.3 General Information on Extremal Optimization . . . . . . . . . . . . . . . . 496
41.3.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 496
41.3.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
41.3.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 496
41.3.4 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
42 GRASPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
42.1 General Information on GRAPSs . . . . . . . . . . . . . . . . . . . . . . . . 500
42.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 500
42.1.2 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 500
42.1.3 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
43 Downhill Simplex (Nelder and Mead) . . . . . . . . . . . . . . . . . . . . . . 501
43.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
43.2 General Information on Downhill Simplex . . . . . . . . . . . . . . . . . . . 502
43.2.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 502
43.2.2 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 502
43.2.3 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
44 Random Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
44.1 General Information on Random Optimization . . . . . . . . . . . . . . . . . 506
44.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 506
44.1.2 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 506
44.1.3 Journals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
Part IV Non-Metaheuristic Optimization Algorithms
45 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
46 State Space Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
46.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
46.1.1 The Baseline: A Binary Goal Criterion . . . . . . . . . . . . . . . . . 511
46.1.2 State Space and Neighborhood Search . . . . . . . . . . . . . . . . . . 511
46.1.3 The Search Space as Graph . . . . . . . . . . . . . . . . . . . . . . . . 512
46.1.4 Key Eciency Features . . . . . . . . . . . . . . . . . . . . . . . . . . 514
46.2 Uninformed Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
46.2.1 Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
46.2.2 Depth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
46.2.3 Depth-Limited Search . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
46.2.4 Iteratively Deepening Depth-First Search . . . . . . . . . . . . . . . . 516
46.2.5 General Information on Uninformed Search . . . . . . . . . . . . . . . 517
46.3 Informed Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
46.3.1 Greedy Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
46.3.2 A
Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
46.3.3 General Information on Informed Search . . . . . . . . . . . . . . . . 520
CONTENTS 15
47 Branch And Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
47.1 General Information on Branch And Bound . . . . . . . . . . . . . . . . . . 524
47.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 524
47.1.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
47.1.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 524
48 Cutting-Plane Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
48.1 General Information on Cutting-Plane Method . . . . . . . . . . . . . . . . . 528
48.1.1 Applications and Examples . . . . . . . . . . . . . . . . . . . . . . . . 528
48.1.2 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
48.1.3 Conferences and Workshops . . . . . . . . . . . . . . . . . . . . . . . 528
Part V Applications
49 Real-World Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
49.1 Symbolic Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
49.1.1 Genetic Programming: Genome for Symbolic Regression . . . . . . . 531
49.1.2 Sample Data, Quality, and Estimation Theory . . . . . . . . . . . . . 532
49.1.3 Limits of Symbolic Regression . . . . . . . . . . . . . . . . . . . . . . 535
49.2 Data Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
49.2.1 Classication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
49.3 Freight Transportation Planning . . . . . . . . . . . . . . . . . . . . . . . . . 536
49.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
49.3.2 Vehicle Routing in Theory and Practice . . . . . . . . . . . . . . . . . 538
49.3.3 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
49.3.4 Evolutionary Approach . . . . . . . . . . . . . . . . . . . . . . . . . . 542
49.3.5 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
49.3.6 Holistic Approach to Logistics . . . . . . . . . . . . . . . . . . . . . . 549
49.3.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
50 Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
50.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
50.2 Bit-String based Problem Spaces . . . . . . . . . . . . . . . . . . . . . . . . . 553
50.2.1 Kaumans NK Fitness Landscapes . . . . . . . . . . . . . . . . . . . 553
50.2.2 The p-Spin Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
50.2.3 The ND Family of Fitness Landscapes . . . . . . . . . . . . . . . . . . 557
50.2.4 The Royal Road . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
50.2.5 OneMax and BinInt . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
50.2.6 Long Path Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
50.2.7 Tunable Model for Problematic Phenomena . . . . . . . . . . . . . . 566
50.3 Real Problem Spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
50.3.1 Single-Objective Optimization . . . . . . . . . . . . . . . . . . . . . . 580
50.4 Close-to-Real Vehicle Routing Problem Benchmark . . . . . . . . . . . . . . 621
50.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
50.4.2 Involved Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625
50.4.3 Problem Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
50.4.4 Objectives and Constraints . . . . . . . . . . . . . . . . . . . . . . . . 634
50.4.5 Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
Part VI Background
16 CONTENTS
51 Set Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639
51.1 Set Membership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639
51.2 Special Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
51.3 Relations between Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
51.4 Operations on Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
51.5 Tuples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
51.6 Permutations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
51.7 Binary Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
51.8 Order Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
51.9 Equivalence Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
51.10Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
51.10.1Monotonicity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
51.11Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
51.11.1Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
51.11.2Searching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
51.11.3Transformations between Sets and Lists . . . . . . . . . . . . . . . . . 650
52 Graph Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
53 Stochastic Theory and Statistics . . . . . . . . . . . . . . . . . . . . . . . . . 653
53.1 Probability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
53.1.1 Probabily as dened by Bernoulli (1713) . . . . . . . . . . . . . . . . 654
53.1.2 Combinatorics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
53.1.3 The Limiting Frequency Theory of von Mises . . . . . . . . . . . . . . 655
53.1.4 The Axioms of Kolmogorov . . . . . . . . . . . . . . . . . . . . . . . . 656
53.1.5 Conditional Probability . . . . . . . . . . . . . . . . . . . . . . . . . . 657
53.1.6 Random Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
53.1.7 Cumulative Distribution Function . . . . . . . . . . . . . . . . . . . . 658
53.1.8 Probability Mass Function . . . . . . . . . . . . . . . . . . . . . . . . 659
53.1.9 Probability Density Function . . . . . . . . . . . . . . . . . . . . . . . 659
53.2 Parameters of Distributions and their Estimates . . . . . . . . . . . . . . . . 659
53.2.1 Count, Min, Max and Range . . . . . . . . . . . . . . . . . . . . . . . 660
53.2.2 Expected Value and Arithmetic Mean . . . . . . . . . . . . . . . . . . 661
53.2.3 Variance and Standard Deviation . . . . . . . . . . . . . . . . . . . . 662
53.2.4 Moments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
53.2.5 Skewness and Kurtosis . . . . . . . . . . . . . . . . . . . . . . . . . . 665
53.2.6 Median, Quantiles, and Mode . . . . . . . . . . . . . . . . . . . . . . 665
53.2.7 Entropy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
53.2.8 The Law of Large Numbers . . . . . . . . . . . . . . . . . . . . . . . . 668
53.3 Some Discrete Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
53.3.1 Discrete Uniform Distribution . . . . . . . . . . . . . . . . . . . . . . 668
53.3.2 Poisson Distribution
. . . . . . . . . . . . . . . . . . . . . . . . . . 671
53.3.3 Binomial Distribution B(n, p) . . . . . . . . . . . . . . . . . . . . . . 674
53.4 Some Continuous Distributions . . . . . . . . . . . . . . . . . . . . . . . . . 676
53.4.1 Continuous Uniform Distribution . . . . . . . . . . . . . . . . . . . . 676
53.4.2 Normal Distribution N
_
,
2
_
. . . . . . . . . . . . . . . . . . . . . . 678
53.4.3 Exponential Distribution exp() . . . . . . . . . . . . . . . . . . . . . 682
53.4.4 Chi-square Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . 684
53.4.5 Students t-Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . 687
53.5 Example Throwing a Dice . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
53.6 Estimation Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
53.6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
53.6.2 Likelihood and Maximum Likelihood Estimators . . . . . . . . . . . . 693
53.6.3 Condence Intervals . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696
CONTENTS 17
53.7 Statistical Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
53.7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
Part VII Implementation
54 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705
55 The Specication Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707
55.1 General Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707
55.1.1 Search Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708
55.1.2 Genotype-Phenotype Mapping . . . . . . . . . . . . . . . . . . . . . . 711
55.1.3 Objective Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712
55.1.4 Termination Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . 712
55.1.5 Optimization Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . 713
55.2 Algorithm Specic Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
55.2.1 Evolutionary Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 717
55.2.2 Estimation Of Distribution Algorithms . . . . . . . . . . . . . . . . . 719
56 The Implementation Package . . . . . . . . . . . . . . . . . . . . . . . . . . . 723
56.1 The Optimization Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . 724
56.1.1 Algorithm Base Classes . . . . . . . . . . . . . . . . . . . . . . . . . . 724
56.1.2 Baseline Search Patterns . . . . . . . . . . . . . . . . . . . . . . . . . 729
56.1.3 Local Search Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 735
56.1.4 Population-based Metaheuristics . . . . . . . . . . . . . . . . . . . . . 746
56.2 Search Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784
56.2.1 Operations for String-based Search Spaces . . . . . . . . . . . . . . . 784
56.2.2 Operations for Tree-based Search Spaces . . . . . . . . . . . . . . . . 809
56.2.3 Multiplexing Operators . . . . . . . . . . . . . . . . . . . . . . . . . . 818
56.3 Data Structures for Special Search Spaces . . . . . . . . . . . . . . . . . . . 824
56.3.1 Tree-based Search Spaces as used in Genetic Programming . . . . . . 824
56.4 Genotype-Phenotype Mappings . . . . . . . . . . . . . . . . . . . . . . . . . 833
56.5 Termination Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835
56.6 Comparator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837
56.7 Utility Classes, Constants, and Routines . . . . . . . . . . . . . . . . . . . . 839
57 Demos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859
57.1 Demos for String-based Problem Spaces . . . . . . . . . . . . . . . . . . . . . 859
57.1.1 Real-Vector based Problem Spaces X R
n
. . . . . . . . . . . . . . . 859
57.1.2 Permutation-based Problem Spaces . . . . . . . . . . . . . . . . . . . 887
57.2 Demos for Genetic Programming . . . . . . . . . . . . . . . . . . . . . . . . 905
57.2.1 Demos for Genetic Programming Applied to Mathematical Problems 905
57.3 The VRP Benchmark Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 914
57.3.1 The Involved Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . 914
57.3.2 The Optimization Utilities . . . . . . . . . . . . . . . . . . . . . . . . 925
Appendices
A Citation Suggestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945
18 CONTENTS
B GNU Free Documentation License (FDL) . . . . . . . . . . . . . . . . . . . 947
B.1 Applicability and Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
B.2 Verbatim Copying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949
B.3 Copying in Quantity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949
B.4 Modications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949
B.5 Combining Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
B.6 Collections of Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
B.7 Aggregation with Independent Works . . . . . . . . . . . . . . . . . . . . . . 951
B.8 Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952
B.9 Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952
B.10 Future Revisions of this License . . . . . . . . . . . . . . . . . . . . . . . . . 952
B.11 Relicensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
C GNU Lesser General Public License (LGPL) . . . . . . . . . . . . . . . . . 955
C.1 Additional Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955
C.2 Exception to Section 3 of the GNU GPL . . . . . . . . . . . . . . . . . . . . 955
C.3 Conveying Modied Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . 956
C.4 Object Code Incorporating Material from Library Header Files . . . . . . . . 956
C.5 Combined Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956
C.6 Combined Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
C.7 Revised Versions of the GNU Lesser General Public License . . . . . . . . . 957
D Credits and Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1190
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1209
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1213
List of Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1217
List of Listings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1221
Part I
Foundations
20 CONTENTS
Chapter 1
Introduction
1.1 What is Global Optimization?
One of the most fundamental principles in our world is the search for optimal states. It begins
in the microcosm in physics, where atom bonds
1
minimize the energy of electrons [2137].
When molecules combine to solid bodies during the process of freezing, they assume crystal
structures which come close to energy-optimal congurations. Such a natural optimization
process, of course, is not driven by any higher intention but the result from the laws of
physics.
The same goes for the biological principle of survival of the ttest [2571] which, together
with the biological evolution [684], leads to better adaptation of the species to their environ-
ment. Here, a local optimum is a well-adapted species that can maintain a stable population
in its niche.
biggest...
smallest...
fastest...
cheapest...
...withleastenergy
mostprecise...
mostsimilarto...
maximal...
fastest...
mostrobust...
...thatfulfillsalltimingconstraints
...withleastaerodynamicdrag
...onthesmallestpossiblearea
besttrade-offsbetween....
minimal...
Figure 1.1: Terms that hint: Optimization Problem (inspired by [428])
1
http://en.wikipedia.org/wiki/Chemical_bond [accessed 2007-07-12]
22 1 INTRODUCTION
As long as humankind exists, we strive for perfection in many areas. As sketched in
Figure 1.1 there exists an incredible variety of dierent terms that indicate that a situation
is actually an optimization problem. For example, we want to reach a maximum degree
of happiness with the least amount of eort. In our economy, prot and sales must be
maximized and costs should be as low as possible. Therefore, optimization is one of the oldest
sciences which even extends into daily life [2023]. We also can observe the phenomenon of
trade-os between dierent criteria which are also common in many other problem domains:
One person may choose to work hard with the goal of securing stability and pursuing wealth
for her future life, accepting very little spare time in its current stage. Another person can,
deliberately, choose a lax life full of joy in the current phase but rather unsecure in the
long term. Similar, most optimization problems in real-world applications involve multiple,
usually conicting, objectives.
Furthermore, many optimization problems involve certain constraints. The guy with the
relaxed lifestyle, for instance, regardless how lazy he might become, cannot waive dragging
himself to the supermarket from time to time in order to acquire food. The eager beaver, on
the other hand, will not be able to keep up with 18 hours of work for seven days per week in
the long run without damaging her health considerably and thus, rendering the goal of an
enjoyable future unattainable. Likewise, the parameters of the solutions of an optimization
problem may be constrained as well.
1.1.1 Optimization
Since optimization covers a wide variety of subject areas, there exist dierent points of view
on what it actually is. We approach this question by rst clarifying the goal of optimization:
solving optimization problems.
Denition D1.1 (Optimization Problem (Economical View)). An optimization prob-
lem is a situation which requires deciding for one choice from a set of possible alternatives
in order to reach a predened/required benet at minimal costs.
Denition D1.2 (Optimization Problem (Simplied Mathematical View)). Solving
an optimization problem requires nding an input value x
).
Every task which has the goal of approaching certain congurations considered as optimal in
the context of pre-dened criteria can be viewed as an optimization problem. After giving
these rough denitions which we will later rene in Section 6.2 on page 103 we can also
specify the topic of this book:
Denition D1.3 (Optimization). Optimization is the process of solving an optimization
problem, i. e., nding suitable solutions for it.
Denition D1.4 (Global Optimization). Global optimization is optimization with the
goal of nding solutions x
jx[i]
a
j
_
_
b (1.1)
Finding whether this equation holds or not is known to be AT-complete. The question
could be transformed into an optimization problem with the goal of to nd the smallest
9
http://en.wikipedia.org/wiki/Combinatorial_optimization [accessed 2010-08-04]
10
http://en.wikipedia.org/wiki/Bin_packing_problem [accessed 2010-08-27]
26 1 INTRODUCTION
number k of bins of size b which can contain all the objects listed in a. Alternatively, we
could try to nd the mapping x for which the function f
bp
given in Equation 1.2 takes on
the lowest value, for example.
f
bp
(x) =
k1
i=0
max
_
_
_
0,
_
_
jx[i]
a
j
_
_
b
_
_
_
(1.2)
This problem is known to be AT-hard. See Section 12.2 for a discussion on
AT-completeness and AT-hardness and Task 67 on page 238 for a homework task con-
cerned with solving the bin packing problem.
Example E1.2 (Circuit Layout).
Given are a card with a nite set S of slots, a set C : [C[ [S[ of circuits to be placed on
A B D J
C
E
F G
H
I
K
L
M
20slots
11
slots
(A,B),(B,C),(C,F),(C,G),(C,M),
(D,E),(D,J),(E,F),(F,K),(G,J),(G,M),
(H,J),(H,I),(H,L),(I,K),(I,L),(K,L),
(L,M)
R={
}
C={A,B,C,D,E,F,G,H,I,J,K,L,M}
S=20 11
Figure 1.3: An example for circuit layouts.
that card, and a connection list R C C where (c
1
, c
2
) R means that the two circuits
c
1
, c
2
C have to be connected. The goal is to nd a layout x which assigns each circuit
c C to a location s S so that the overall length of wiring required to establish all the
connections r R becomes minimal, under the constraint that no wire must cross another
one. An example for such a scenario is given in Figure 1.3.
Similar circuit layout problems exist in a variety of forms for quite a while now [1541]
and are known to be quite hard. They may be extended with constraints such as to also
minimize the heat emission of the circuit and to minimize cross-wire induction and so on.
They may be extended to not only evolve the circuit location but also the circuit types and
numbers [1479, 2792] and thus, can become arbitrarily complex.
Example E1.3 (Job Shop Scheduling).
Job Shop Scheduling
11
(JSS) is considered to be one of the hardest classes of scheduling
problems and is also AT-complete [1026]. The goal is to distribute a set of tasks to machines
in a way that all deadlines are met.
In a JSS, a set T of jobs t
i
T is given, where each job t
i
consists of a number of
sub-tasks t
i,j
. A partial order is dened on the sub-tasks t
i,j
of each job t
i
which describes
the precedence of the sub-tasks, i. e., constraints in which order they must be processed.
In the case of a beverage factory, 10 000 bottles of cola (t
1
. . . t
10 000
) and 5000 bottles of
lemonade (t
10 001
. . . t
15 000
).
For the cola bottles, the jobs would consist of three subjobs, t
i,1
to t
i,2
for i 1..10 000,
since the bottles rst need to labeled, then they are lled with cola, and nally closed. It is
clear that the bottles cannot be closed before they are lled t
i,2
t
i,3
whereas the labeling
11
http://en.wikipedia.org/wiki/Job_Shop_Scheduling [accessed 2010-08-27]
1.2. TYPES OF OPTIMIZATION PROBLEMS 27
can take place at any time. For the lemonade, all production steps are the same as the
ones for the cola bottles, except that step t
i,2
i 10 001..15 000 is replaced with lling the
bottles with lemonade.
It is furthermore obvious that the dierent sub-jobs have to be performed by dierent
machines m
i
M. Each of the machines m
i
can only process a single job at a time. Finally,
each of the jobs has a deadline until which it must be nished.
The optimization algorithm has to nd a schedule S which denes for each job when it has
to be executed and on what machine while adhering to the order and deadline constraints.
Usually, the optimization process would start with random congurations which violate
some of the constraints (typically the deadlines) and step by step reduces the violations
until results are found that fulll all requirements.
The JSS can be considered as a combinatorial problem since the optimizer creates a
sequence and assignment of jobs and the set of possible starting times (which make sense)
is also nite.
Example E1.4 (Routing).
In a network N composed of numNodesN nodes, nd the shortest path from one node n
1
to another node n
2
. This optimization problem consists of composing a sequence of edges
which form a path from n
1
to n
2
of the shortest length. This combinatorial problem is
rather simple and has been solved by Dijkstra [796] a long time ago. Nevertheless, it is an
optimization problem.
1.2.2 Numerical Optimization Problems
Denition D1.9 (Numerical Optimization Problem). Numerical optimization prob-
lems
12
[1281, 2040] are problems that are dened over problem spaces which are subspaces
of (uncountable innite) numerical spaces, such as the real or complex vectors (X R
n
or
X C
n
).
Numerical problems dened over R
n
(or any kind of space containing it) are called contin-
uous optimization problems. Function optimization [194], engineering design optimization
tasks [2059], classication and data mining tasks [633] are common continuous optimiza-
tion problems. They often can eciently be solved with Evolution Strategies (Chapter 30),
Dierential Evolution (Chapter 33), Evolutionary Programming (Chapter 32), Estimation
of Distribution Algorithms (Chapter 34) or Particle Swarm Optimization (Chapter 39), for
example.
Example E1.5 (Function Roots and Minimization).
The task Find the roots of function g(x) dened in Equation 1.3 and sketched in Figure 1.4
can at least by the authors limited mathematical capabilities hardly be solved manually.
g(x) = 5 + ln
sin
_
x
2
+e
x
tan x
_
+ cosx
arctan [x 3[ (1.3)
However, we can transform it into the optimization problem Minimize the objective function
f
1
(x) = [0 g(x)[ = [g(x)[ or Minimize the objective function f
2
(x) = (0 g(x))
2
= (g(x))
2
.
Dierent from the original formulation, the objective functions f
1
and f
2
provide us with a
12
http://en.wikipedia.org/wiki/Optimization_(mathematics) [accessed 2010-08-04]
28 1 INTRODUCTION
-4
-2
0
2
4
-5 0 5
g(x)
x
x
1
x
2
x
3
x
4
Figure 1.4: The graph of g(x) as given in Equation 1.3 with the four roots x
1
to x
4
.
measure of how close an element x is to be a valid solution. For the global optima x
of
the problem, f
1
(x
) = f
2
(x
with f
1
(x
) = f
2
(x
Metaheuristics
Part III [1068, 1887]
Hill Climbing
Chapter 26 [2356]
Simulated Annealing
Chapter 27 [1541, 2043]
Tabu Search
Chapter 40 [1069, 1228]
Extremal Optimization
Chapter 41 [345, 725]
GRASP
Chapter 42 [902, 906]
Downhill Simplex
Chapter 43 [1655, 2017]
Random Optimization
Chapter 44 [526, 2926]
Harmony Search
[1033]
Evolutionary Computation
[715, 847, 863, 1220, 3025, 3043]
Evolutionary Algorithms
Chapter 28 [167, 171, 599]
Genetic Algorithms
Chapter 29 [1075, 1912]
Evolution Strategies
Chapter 30 [300, 2279]
Genetic Programming
Chapter 31 [1602, 2199]
SGP
Section 31.3 [1602, 1615]
LGP
Section 31.4 [209, 394]
GGGP
Section 31.5 [1853, 2358]
Graph-based
Section 31.6 [1901, 2191]
Dierential Evolution
Chapter 33 [2220, 2621]
EDAs
Chapter 34 [1683, 2153]
Evol. Programming
Chapter 32 [940, 945]
LCS
Chapter 35 [430, 1256]
Swarm Intelligence
[353, 881, 1524]
ACO
Chapter 37 [809, 810]
RFD
Chapter 38 [229, 230]
PSO
Chapter 39 [589, 853]
Memetic Algorithms
Chapter 36 [1141, 1961]
Deterministic Approaches
[1103, 1271, 2040, 2126]
Search Algorithms
Chapter 46 [635, 2356]
Uninformed Search
Section 46.2 [1557, 2140]
BFS
Section 46.2.1
DFS
Section 46.2.2
IDDFS
Section 46.2.4 [2356]
Informed Search
Section 46.3 [1557, 2140]
Greedy Search
Section 46.3.1 [635]
Search
Section 46.3.2 [758]
Cutting-Plane Method
Chapter 48 [152, 643]
is found
16
. . .
An umbrella term closely related to Monte Carlo algorithms is Soft Computing
17
(SC),
which summarizes all methods that nd solutions for computational hard tasks (such as
AT-complete problems, see Section 12.2.2) in relatively short time, again by trading in
optimality for higher computation speed [760, 1242, 1430, 2685].
1.3.3 Heuristics and Metaheuristics
Most ecient optimization algorithms which search good individuals in some targeted way,
i. e., all methods better than uninformed searches, utilize information from objective (see
Section 2.2) or heuristic functions. The term heuristic stems from the Greek heuriskein
which translates to to nd or to to discover.
1.3.3.1 Heuristics
Heuristics used in optimization are functions that rates the utility of an element and provides
support for the decision regarding which element out of a set of possible solutions is to be
examined next. Deterministic algorithms usually employ heuristics to dene the processing
order of the candidate solutions. Approaches using such functions are called informed search
methods (which will be discussed in Section 46.3 on page 518). Many probabilistic methods,
on the other hand, only consider those elements of the search space in further computations
that have been selected by the heuristic while discarding the rest.
Denition D1.14 (Heuristic). A heuristic
18
[1887, 2140, 2276] function is a problem
dependent approximate measure for the quality of one candidate solution.
A heuristic may, for instance, estimate the number of search steps required from a given
solution to the optimal results. In this case, the lower the heuristic value, the better the
solution would be. It is quite clear that heuristics are problem class dependent. They can be
considered as the equivalent of tness or objective functions in (deterministic) state space
search methods [1467] (see Section 46.3 and the more specic Denition D46.5 on page 518).
An objective function f(x) usually has a clear meaning denoting an absolute utility of a
candidate solution x. Dierent from that, heuristic values (p) often represent more indirect
criteria such as the aforementioned search costs required to reach the global optimum [1467]
from a given individual.
Example E1.9 (Heuristic for the TSP from Example E2.2).
A heuristic function in the Traveling Salesman Problem involving ve cities in China as
dened in Example E2.2 on page 45 could, for instance, state The total distance of this
candidate solution is 1024km longer than the optimal tour. or You need to swap no more
than three cities in this tour in order to nd the optimal solution. Such a statement has
a dierent quality from an objective function just stating the total tour length and being
subject to minimization.
16
Kindly refer to Chapter 12 for a more in-depth discussion of complexity.
17
http://en.wikipedia.org/wiki/Soft_computing [accessed 2007-09-17]
18
http://en.wikipedia.org/wiki/Heuristic_%28computer_science%29 [accessed 2007-07-03]
1.3. CLASSES OF OPTIMIZATION ALGORITHMS 35
We will discuss heuristics in more depth in Section 46.3. It should be mentioned that opti-
mization and articial intelligence
19
(AI) merge seamlessly with each other. This becomes
especially clear when considering that one most of important research areas of AI is the
design of good heuristics for search, especially for the state space search algorithms which
here, are listed as deterministic optimization methods.
Anyway, knowing the proximity of the meaning of the terms heuristics and objective
functions, it may as well be possible to consider many of the following, randomized ap-
proaches to be informed searches (which brings us back to the fuzzyness of terms). There
is, however, another dierence between heuristics and objective functions: They usually
involve more knowledge about the relation of the structure of the candidate solutions and
their utility as may have become clear from Example E1.9.
1.3.3.2 Metaheuristics
This knowledge is a luxury often not available. In many cases, the optimization algorithms
have a horizon limited to the search operations and the objective functions with unknown
characteristics. They can produce new candidate solutions by applying search operators to
the currently available genotypes. Yet, the exact result of the operators is (especially in
probabilistic approaches) not clear in advance and has to be measured with the objective
functions as sketched in Figure 1.8. Then, the only choices an optimization algorithm has
are:
1. Which candidate solutions should be investigated further?
2. Which search operations should be applied to them? (If more than one operator is
available, that is.)
f(x ) X
blackbox
(3,3)
(0,2) (0,0) (0,1) (0,3)
(1,0) (1,1) (1,2) (1,3)
(2,0) (2,1) (2,2) (2,3)
(3,0) (3,1) (3,2)
Pop(t)
f
(
x
)
1
(3,3)
(0,2) (0,0) (0,1) (0,3)
(1,0) (1,1) (1,2) (1,3)
(2,0) (2,1) (2,2) (2,3)
(3,0) (3,1) (3,2)
Pop(t+1)
computefitnessorheuristic,
selectbestsolutions,and
createnewonesvia
searchoperations
Figure 1.8: Black box treatment of objective functions in metaheuristics.
19
http://en.wikipedia.org/wiki/Artificial_intelligence [accessed 2007-09-17]
36 1 INTRODUCTION
Denition D1.15 (Metaheuristic). A metaheuristic
20
is a method for solving general
classes of problems. It combines utility measures such as objective functions or heuristics
in an abstract and hopefully ecient way, usually without utilizing deeper insight into their
structure, i. e., by treating them as black box-procedures [342, 1068, 1103].
Metaheuristics, which you can nd discussed in Part III, obtain knowledge on the struc-
ture of the problem space and the objective functions by utilizing statistics obtained from
stochastically sampling the search space. Many metaheuristics are inspired by a model of
some natural phenomenon or physical process. Simulated Annealing, for example, decides
which candidate solution is used during the next search step according to the Boltzmann
probability factor of atom congurations of solidifying metal melts. The Raindrop Method
emulates the waves on a sheet of water after a raindrop fell into it. There also are tech-
niques without direct real-world role model like Tabu Search and Random Optimization.
Unied models of metaheuristic optimization procedures have been proposed by Osman
[2103], Rayward-Smith [2275], Vaessens et al. [2761, 2762], and Taillard et al. [2650].
Obviously, metaheuristics are not necessarily probabilistic methods. The A
search, for
instance, a deterministic informed search approach, is considered to be a metaheuristic too
(although it incorporates more knowledge about the structure of the heuristic functions
than, for instance, Evolutionary Algorithms do). Still, in this book, we are interested in
probabilistic metaheuristics the most.
1.3.3.2.1 Summary: Dierence between Heuristics and Metaheuristics
The terms heuristic, objective function, tness function (will be introduced in 28.1.2.5
and Section 28.3 on page 274 in detail), and metaheuristic may easily be mixed up and
it is maybe not entirely obvious which is which and where is the dierence. Therefore, we
here want to give a short outline of the main dierences:
1. Heuristic. problem-specic measure of the potential of a solution as step towards the
global optimum. May be absolute/direct (describe the utility of a solution) or indirect
(e.g., approximate the distance of the solution to the optimum in terms of search
steps).
2. Objective Function. Problem-specic absolute/direct quality measure which rates one
aspect of candidate solution.
3. Fitness Function. Secondary utility measure which may combine information from a
set of primary utility measures (such as objective functions or heuristics) to a single
rating for an individual. This process may also take place relative to a set of given
individuals, i. e., rate the utility of a solution in comparison to another set of solutions
(such as a population in Evolutionary Algorithms).
4. Metaheuristic. general, problem-independent (ternary) approach to select solutions
for further investigation in order to solve an optimization problem. Therefore uses
a (primary or secondary) utility measure such as a heuristic, objective function, or
tness function.
1.3.4 Evolutionary Computation
An important class of probabilistic Monte Carlo algorithms is Evolutionary Computation
21
(EC). It encompasses all randomized metaheuristic approaches which iteratively rene a set
(population) of multiple candidate solutions.
20
http://en.wikipedia.org/wiki/Metaheuristic [accessed 2007-07-03]
21
http://en.wikipedia.org/wiki/Evolutionary_computation [accessed 2007-09-17]
1.4. CLASSIFICATION ACCORDING TO OPTIMIZATION TIME 37
Some of the most important EC approaches are Evolutionary Algorithms and Swarm
Intelligence, which will be discussed in-depth in this book. Swarm Intelligence is inspired
by fact that natural systems composed of many independent, simple agents ants in case of
Ant Colony Optimization (ACO) and birds or sh in case of Particle Swarm Optimization
(PSO) are often able to nd pieces of food or shortest-distance routes very eciently.
Evolutionary Algorithms, on the other hand, copy the process of natural evolution and
treat candidate solutions as individuals which compete and reproduce in a virtual envi-
ronment. Generation after generation, these individuals adapt better and better to the
environment (dened by the user-specied objective function(s)) and thus, become more
and more suitable solutions to the problem at hand.
1.3.5 Evolutionary Algorithms
Evolutionary Algorithms can again be divided into very diverse approaches, spanning from
Genetic Algorithms (GAs) which try to nd bit-or integer-strings of high utility (see, for
instance, Example E4.2 on page 83) and Evolution Strategies (ESs) which do the same with
vectors of real numbers to Genetic Programming (GP), where optimal tree data structures
or programs are sought. The variety of Evolutionary Algorithms is the focus of this book,
also including Memetic Algorithms (MAs) which are EAs hybridized with other search al-
gorithms.
1.4 Classication According to Optimization Time
The taxonomy just introduced classies the optimization methods according to their algo-
rithmic structure and underlying principles, in other words, from the viewpoint of theory. A
software engineer or a user who wants to solve a problem with such an approach is however
more interested in its interfacing features such as speed and precision.
Speed and precision are often conicting objectives, at least in terms of probabilistic
algorithms. A general rule of thumb is that you can gain improvements in accuracy of
optimization only by investing more time. Scientists in the area of global optimization
try to push this Pareto frontier
22
further by inventing new approaches and enhancing or
tweaking existing ones. When it comes to time constraints and hence, the required speed of
the optimization algorithm, we can distinguish two types of optimization use cases.
Denition D1.16 (Online Optimization). Online optimization problems are tasks that
need to be solved quickly in a time span usually ranging between ten milliseconds to a few
minutes.
In order to nd a solution in this short time, optimality is often signicantly traded in
for speed gains. Examples for online optimization are robot localization, load balancing,
services composition for business processes, or updating a factorys machine job schedule
after new orders came in.
Example E1.10 (Robotic Soccer).
Figure 1.9 shows some of the robots of the robotic soccer team
23
[179] as the play in the
RoboCup German Open 2009. In the games of the RoboCup competition, two teams, each
consisting of a xed number of robotic players, oppose each other on a soccer eld. The
rules are similar to human soccer and the team which scores the most goals wins.
When a soccer playing robot approaches the goal of the opposing team with the ball, it
has only a very limited time frame to decide what to do [2518]. Should it shoot directly at
22
Pareto frontiers have been discussed in Section 3.3.5 on page 65.
23
http://carpenoctem.das-lab.net
38 1 INTRODUCTION
Figure 1.9: The robotic soccer team CarpeNoctem (on the right side) on the fourth day of
the RoboCup German Open 2009.
the goal? Should it try to pass the ball to a team mate? Should it continue to drive towards
the goal in order to get into a better shooting position?
To nd a sequence of actions which maximizes the chance of scoring a goal in a contin-
uously changing world is an online optimization problem. If a robot takes too long to make
a decision, opposing and cooperating robots may already have moved to dierent locations
and the decision may have become outdated.
Not only must the problem be solved in a few milliseconds, this process often involves
nding an agreement between dierent, independent robots each having a possibly dierent
view on what is currently going on in the world. Additionally, the degrees of freedom in the
real world, the points where the robot can move or shoot the ball to, are basically innite.
It is clear that in such situations, no complex optimization algorithm can be applied.
Instead, only a smaller set of possible alternatives can be tested or, alternatively, predened
programs may be processed, thus ignoring the optimization character of the decision making.
Online optimization tasks are often carried out repetitively new orders will, for instance,
continuously arrive in a production facility and need to be scheduled to machines in a way
that minimizes the waiting time of all jobs.
Denition D1.17 (Oine Optimization). In oine optimization problems, time is not
so important and a user is willing to wait maybe up to days or weeks if she can get an
optimal or close-to-optimal result.
Such problems regard for example design optimization, some data mining tasks, or creating
long-term schedules for transportation crews. These optimization processes will usually be
carried out only once in a long time.
Before doing anything else, one must be sure about to which of these two classes the
problem to be solved belongs. There are two measures which characterize whether an opti-
mization is suited to the timing constraints of a problem:
1. The time consumption of the algorithm itself.
2. The number of evaluations until the optimum (or a suciently good candidate
solution) is discovered, i. e., the rst hitting time FHT (or its expected value).
An algorithm with high internal complexity and a low FHT may be suitable for a problem
where evaluating the objective functions takes long. On the other hand, it may be less
feasible than a simple approach if the quality of a candidate solution can be determined
quickly.
1.5. NUMBER OF OPTIMIZATION CRITERIA 39
1.5 Number of Optimization Criteria
Optimization algorithms can be divided into
1. such which try to nd the best values of single objective functions f (see Section 3.1
on page 51,
2. such that optimize sets f of target functions (see Section 3.3 on page 55, and
3. such that optimize one or multiple objective functions while adhering to additional
constraints (see Section 3.4 on page 70).
This distinction between single-objective, multi-objective, and constraint optimization will
be discussed in depth in Section 3.3. In this chapter, we will also introduced unifying
approaches which allow us to transform multi-objective problems into single-objective ones
and to gain a joint perspective on constrained and unconstrained optimization.
1.6 Introductory Example
In Algorithm 1.1, we want to give a short introductory example on how metaheuristic
optimization algorithms may look like and of which modules they can be composed. Algo-
rithm 1.1 is based in the bin packing Example E1.1 given on 25. It should be noted that
we do not claim that Algorithm 1.1 is any good in solving the problem, matter of fact, the
opposite is the case. However, it posses typical components which can be found in most
metaheuristics and can relatively easily be understood.
As stated in Example E1.1, the goal of bin packing is to whether an assignment x of n
objects (having the sizes a
1
, a
2
, .., a
n
) to (at most) k bins each able to hold a volume of b
exists where the capacity of no bin is exceeded. This decision problem can be translated
into an optimization problem where it is the goal to discover the x
R
+
: the current and best objective value . . . . . . . . . (see Denition D2.3)
Output: x X: the best phenotype found. . . . . . . . . . . . . . . . . . . . . . (see Denition D3.5)
1 begin
2 g
(1, 2, .., n)
3 y
+
4 repeat
// perform a random search step
5 g g
6 i randomUni[1, n)
7 repeat
8 j randomUni[1, n)
9 until i ,= j
10 t g[i]
11 g[i] g[j]
12 g[j] t
// compute the bins
13 x (, , . . .
. .
n times
)
14 bin 0
15 sum 0
16 for i 0 up to n 1 do
17 j g[i]
18 if ((sum+a
j
) > b) (bin < (k 1)) then
19 bin bin + 1
20 sum 0
21 x[bin] x[bin] j
22 sum sum+a
j
// compute objective value
23 y f
bp
(x)
// the search logic: always choose the better point
24 if y < y
then
25 g g
26 x x
27 y
y
28 until y
= 0
29 return x
1.6. INTRODUCTORY EXAMPLE 41
of them. Our Algorithm 1.1 tries to explore the search space by starting with putting the
objects into the bins in their original order (Line 2). In each optimization step, it randomly
exchanges two objects (Lines 5 to 12). This operation basically is a unary search operation
which maps the elements of the search space G to new elements in G and creates new
genotypes g. The initialization step can be viewed as a nullary search operation. The basic
denitions for search operations is given in Section 4.2 on page 83.
In Line 24, the optimizer compares the objective value of the best assignment x found
so far with the objective value of the candidate solution x decoded from the newly created
genotype g with the genotype-phenotype mapping gpm. If the new phenotype x is better
than the old one x, the search will from now on use its corresponding genotype (g
x)
for creating new candidate solutions with the search operation and remembers x as well as
its objective value y. A discussion on what the term better actually means in optimization
is given in Chapter 3.
The search process in Algorithm 1.1 continues until a perfect packing, i. e., one with no
overowing bin, is discovered. This termination criterion (see Section 6.3.3), checked in
Line 28, is chosen not too wise, since if no solution can be found, the algorithm will run
forever. Eectively, this Hill Climbing approach (see Chapter 26 on page 229) is thus a Las
Vegas algorithm (see Denition D12.2 on page 148).
In the following chapters, we will put a simple and yet comprehensive theory around
the structure of metaheuristics. We will give clear denitions for the typical modules of an
optimization algorithm and outline how they interact. Algorithm 1.1 here served as example
to show the general direction of where we will be going.
42 1 INTRODUCTION
Tasks T1
1. Name ve optimization problems which can be encountered in daily life. Describe
the criteria which are subject to optimization, whether they should be maximized or
minimized, and how the investigated space of possible solutions looks like.
[10 points]
2. Name ve optimization problems which can be encountered in engineering, business,
or science. Describe them in the same way as requested in Task 1.
[10 points]
3. Classify the problems from Task 1 and 2 into numerical, combinatorial, discrete, and
mixed integer programming, the classes introduced in Section 1.2 and sketched in Fig-
ure 1.6 on page 30. Check if dierent classications are possible for the problems and
if so, outline how the problems should be formulated in each case. The truss opti-
mization problem (see Example E1.6 on page 29) is, for example, usually considered
to be a numerical problem since the thickness of each beam is a real value. If there
is, however, a nite set of beam thicknesses we can choose from, it becomes a discrete
problem and could even be considered as a combinatorial one.
[10 points]
4. Implement Algorithm 1.1 on page 40 in a programming language of your choice. Apply
your implementation to the bin packing instance given in Figure 1.2 on page 25 and
to the problem k = 5, b = 6, a = (6, 5, 4, 3, 3, 3, 2, 2, 1) and (hence) n = 9. Does the
algorithm work? Describe your observations, use a step-by-step debugger if necessary.
[20 points]
5. Find at least three features which make Algorithm 1.1 on page 40 rather unsuitable for
practical applications. Describe these drawbacks, their impact, and point out possible
remedies. You may use an implementation of the algorithm as requested in Task 4 for
gaining experience with what is problematic for the algorithm.
[6 points]
6. What are the advantages and disadvantages of randomized/probabilistic optimization
algorithms?
[4 points]
7. In which way are the requirements for online and oine optimization dierent? Does
a need for online optimization inuence the choice of the optimization algorithm and
the general algorithm structure which can be used in your opinion?
[5 points]
8. What are the dierences between solving general optimization problems and specic
ones? Discuss especially the dierence between black box optimization and solving
functions which are completely known and maybe even can be dierentiated.
[5 points]
Chapter 2
Problem Space and Objective Functions
2.1 Problem Space: How does it look like?
The rst step which has to be taken when tackling any optimization problem is to dene the
structure of the possible solutions. For a minimizing a simple mathematical function, the
solution will be a real number and if we wish to determine the optimal shape of an airplanes
wing, we are looking for a blueprint describing it.
Denition D2.1 (Problem Space). The problem space (phenome) X of an optimization
problem is the set containing all elements x which could be its solution.
Usually, more than one problem space can be dened for a given optimization problem. A
few lines before, we said that as problem space for minimizing a mathematical function, the
real numbers R would be ne. On the other hand, we could as well restrict ourselves to
the natural numbers N
0
or widen the search to the whole complex plane C. This choice has
major impact: On one hand, it determines which solutions we can possible nd. On the
other hand, it also has subtle inuence on the way in which an optimization algorithm can
perform its search. Between each two dierent points in R, for instance, there are innitely
many other numbers, while in N
0
, there are not. Then again, unlike N
0
and R, there is no
total order dened on C.
Denition D2.2 (Candidate Solution). A candidate solution (phenotype) x is an ele-
ment of the problem space X of a certain optimization problem.
In this book, we will especially focus on evolutionary optimization algorithms. One of the
oldest such method, the Genetic Algorithm, is inspired by the natural evolution and re-uses
many terms from biology. In dependence on Genetic Algorithms, we synonymously refer
to the problem space as phenome and to candidate solutions as phenotypes. The problem
space X is often restricted by practical constraints. It is, for instance, impossible to take
all real numbers into consideration in the minimization process of a real function. On our
o-the-shelf CPUs or with the Java programming language, we can only use 64 bit oating
point numbers. With them numbers can only be expressed up to a certain precision. If the
computer can only handles numbers up to 15 decimals, an element x = 1 +10
16
cannot be
discovered.
44 2 PROBLEM SPACE AND OBJECTIVE FUNCTIONS
2.2 Objective Functions: Is it good?
The next basic step when dening an optimization problem is to dene a measure for what
is good. Such measures are called objective functions. As parameter, they take a candidate
solution x from the problem space X and return a value which rates its quality.
Denition D2.3 (Objective Function). An objective function f : X R is a mathe-
matical function which is subject to optimization.
In Listing 55.8 on page 712, you can nd a Java interface resembling Denition D2.3.
Usually, objective functions are subject to minimization. In other words, the smaller f(x),
the better is the candidate solution x X. Notice that although we state that an objective
function is a mathematical function, this is not always fully true. In Section 51.10 on
page 646 we introduce the concept of functions as functional binary relations (see ?? on
page ??) which assign to each element x from the domain X one and only one element from
the codomain (in case of the objective functions, the codomain is R). However, the evaluation
of the objective functions may incorporate randomized simulations (Example E2.3) or even
human interaction (Example E2.6). In such cases, the functionality constraint may be
violated. For the purpose of simplicity, let us, however, stick with the concept given in
Denition D2.3.
In the following, we will use several examples to build an understanding of what the
three concepts problem space X, candidate solution x, and objective function f mean. These
example should give an impression on the variety of possible ways in which they can be
specied and structured.
Example E2.1 (A Stones Throw).
A very simple optimization problem is the question Which is best velocity with which I should
throw
1
a stone (in an = 15
g9.81m/s
2
, =15
(2.3)
1
http://en.wikipedia.org/wiki/Trajectory [accessed 2009-06-13]
2.2. OBJECTIVE FUNCTIONS: IS IT GOOD? 45
This problem can easily be solved and we can obtain the (globally) optimal solution x
,
since we know that the best value which f can take on is zero:
f(x
) = 0
100m0.051s
2
/m (x
)
2
(2.4)
0.051s
2
/m (x
)
2
100m (2.5)
x
100m
0.051s
2
/m
_
1960.78m
2
/s
2
44.28m/s (2.6)
Example E2.1 was very easy. We had a very clear objective function f for which even the
precise mathematical denition was available and, if not known beforehand, could have
easily been obtained from literature. Furthermore, the space of possible solutions, the
problem space, was very simple since it equaled the (positive) real numbers.
Example E2.2 (Traveling Salesman Problem).
The Traveling Salesman Problem [118, 1124, 1694] was rst mentioned in 1831 by Voigt
[2816] and a similar (historic) problem was stated by the Irish Mathematician Hamil-
ton [1024]. Its basic idea is that a salesman wants to visit n cities in the shortest possible
time under the assumption that no city is visited twice and that he will again arrive at the
origin by the end of the tour. The pairwise distances of the cities are known. This problem
can be formalized with the aid of graph theory (see Chapter 52) as follows:
Denition D2.4 (Traveling Salesman Problem). The goal of the Traveling Salesman
Problem (TSP) is to nd a cyclic path of minimum total weight
2
which visits all vertices of
a weighted graph.
Beijing
Shanghai
Hefei
Guangzhou
Chengdu
Chengdu
Guangzhou
Beijing
Hefei
Chengdu
1854km
Guangzhou
2174km
1954km
Hefei
1044km
1615km
1257km
Shanghai
1244km
2095km
1529km
472km
w(a,b)
Figure 2.2: An example for Traveling Salesman Problems, based on data from GoogleMaps.
Assume that we have the task to solve the Traveling Salesman Problem given in Figure 2.2,
i. e., to nd the shortest cyclic tour through Beijing, Chengdu, Guangzhou, Hefei, and
Shanghai. The (symmetric) distance matrix
3
for computing a tours length is given in the
gure, too.
Here, the set of possible solutions X is not as trivial as in Example E2.1. Instead of
being a mapping from the real numbers to the real numbers, the objective function f takes
2
see Equation 52.3 on page 651
3
Based on the routing utility GoogleMaps (http://maps.google.com/ [accessed 2009-06-16]).
46 2 PROBLEM SPACE AND OBJECTIVE FUNCTIONS
one possible permutation of the ve cities as parameter. Since the tours which we want
to nd are cyclic, we only need to take the permutations of four cities into consideration.
If we, for instance, assume that the tour starts in Hefei, it will also end in Hefei and each
possible solution is completely characterized by the sequence in which Beijing, Chengdu,
Guangzhou, and Shanghai are visited. Hence, X is the set of all such permutations.
X = (Beijing, Chengdu, Guangzhou, Shanghai) (2.7)
We can furthermore halve the search space by recognizing that it plays no role for the
total distance in which direction we take our tour x X. In other words, a tour
(Hefei Shanghai Beijing Chengdu Guangzhou Hefei) has the same length and
is equivalent to (Hefei Guangzhou Chengdu Beijing Shanghai Hefei). Hence,
for a TSP with n cities, there are
1
2
(n 1)! possible solutions. In our case, this avails to
12 unique permutations.
f(x) = w(Hefei, x[0]) +
2
i=0
w(x[i], x[i + 1]) +w(x[3], Hefei) (2.8)
The objective function f : X R the criterion subject to optimization is the total
distance of the tours. It equals to the sum of distances between the consecutive cities x[i]
in the lists x representing the permutations and to the start and end point Hefei. We again
want to minimize it. Computing it is again rather simple, but dierent from Example E2.1,
we cannot simply solve it and compute the optimal result x
= x
12
, as the route over
Guangzhou, Chengdu, Beijing, and Shanghai, both starting and ending in Hefei. With a
total distance of f(x
12
) = 6781 km, it is more than 1500 km shorter than the worst solution
x
4
.
Enumerating all possible solutions is, of course, the most time-consuming optimization ap-
proach possible. For TSPs with more cities, it quickly becomes infeasible since the number
of solutions grows more than exponentially
__
n
3
_
n
n!
_
. Furthermore, in the simple Exam-
ple E2.1, enumerating all candidate solutions would have even been impossible since X = R.
From this example we can learn three things:
4
http://en.wikipedia.org/wiki/Brute-force_search [accessed 2009-06-16]
2.2. OBJECTIVE FUNCTIONS: IS IT GOOD? 47
1. The problem space containing the parameters of the objective functions is not re-
stricted to the real numbers but can, indeed, have a very dierent structure.
2. There are objective functions which cannot be resolved mathematically. Matter of
fact, most interesting optimization problem have this feature.
3. Enumerating all solutions is not a good optimization approach and only applicable in
small or trivial problem instances.
Although the objective function of Example E2.2 could not be solved for x, its results can
still be easily determined for any given candidate solution. Yet, there are many optimization
problems where this is not the case.
Example E2.3 (Antenna Design).
Designing antennas is an optimization problem which has been approached by many
researchers such as Chattoraj and Roy [532], Choo et al. [575], John and Ammann
[1450, 1451], Koza et al. [1615], Lohn et al. [1769, 1770], and Villegas et al. [2814], amongst
others. Rahmat-Samii and Michielssen dedicate no less than four chapters to it in their
book on the application of (evolutionary) optimization methods to electromagnetism-related
tasks [2250]. Here, the problem spaces X are the sets of feasible antenna designs with many
degrees of freedom in up to three dimensions, also often involving wire thickness and geom-
etry.
The objective functions usually involve maximizing the antenna gain
5
and bandwidth
together with constraints concerning, for instance, weight and shape of the proposed con-
structions. However, computing the gain (depending on the signal frequency and radiation
angle) of an arbitrarily structured antenna is not trivial. In most cases, a simulation envi-
ronment and considerable computational power is required. Besides the fact that there are
many possible antenna designs, dierent from Example E2.2 the evaluation of even small
sets of candidate solutions may take a substantial amount of time.
Example E2.4 (Analog Electronic Circuit Design).
A similar problem is the automated analog circuit design, where a circuit diagram involving
a combination of dierent electronic components (resistors, capacitors, inductors, diodes,
and/or transistors) is sought which fullls certain requirements. Here, the tasks span from
the synthesis of ampliers [1607, 1766], lters [1766], such as Butterworth [1608, 1763, 1764]
and Chebyche lters [1608], to analog robot controllers [1613].
Computing the features of analog circuits can be done by hand with some eort, but
requires deeper knowledge of electrical engineering. If an analysis of the frequency and timing
behavior is required, the diculty of the equations quickly goes out of hand. Therefore, in
order to evaluate the tness of circuits, simulation environments [2249] like SPICE [2815]
are normally used. Typically, a set of server computers is employed to execute these external
programs so the utility of multiple candidate solutions can be determined in parallel.
Example E2.5 (Aircraft Design).
Aircraft design is another domain where many optimization problems can be spotted.
Obayashi [2059] and Oyama [2111], for instance, tried to nd wing designs with minimal
drag and weight but maximum tank volume, whereas Chung et al. [579] searched a geometry
with a minimum drag and shock pressure/sonic boom for transonic aircrafts and Lee and
Hajela [1704, 1705] optimized the design of rotor blades for helicopters. Like in the electrical
engineering example, the computational costs of computing the objective values rating the
aforementioned features of the candidate solutions are high and involve simulating the air
ows around the wings and blades.
5
http://en.wikipedia.org/wiki/Antenna_gain [accessed 2009-06-19]
48 2 PROBLEM SPACE AND OBJECTIVE FUNCTIONS
Example E2.6 (Interactive Optimization).
Especially in the area of Evolutionary Computation, some interactive optimization methods
have been developed. The Interactive Genetic Algorithms
6
(IGAs) [471, 2497, 2529, 2651,
2652] outsource the objective function evaluation to human beings who, for instance, judge
whether an evolved graphic
7
or movie [2497, 2746] is attractive or music
8
[1453] sounds good.
By incorporating this information in the search process, esthetic works of art are created. In
this domain, it is not really possible to devise any automated method for assigning objective
values to the points in the problem space. When it comes to judging art, human beings will
not be replaced by machines for a long time.
In Kosorukos Human Based Genetic Algorithm
9
(HBGAs, [1583]) and Unemis graphic
and movie tool [2746], this approach is driven even further by also letting human agents
select and combine the most interesting candidate solutions step by step.
All interactive optimization algorithms have to deal with the peculiarities of their hu-
man modules, such as indeterminism, inaccuracy, ckleness, changing attention and loss
of focus which, obviously, also rub o on the objective functions. Nevertheless, similar fea-
tures may also occur if determining the utility of a candidate solution involves randomized
simulations or measuring data from real-world processes.
Let us now summarize the information gained from these examples. The rst step when
approaching an optimization problem is to choose the problem space X, as we will later
discuss in detail in Chapter 7 on page 109. Objective functions are not necessarily mere
mathematical expressions, but can be complex algorithms that, for example, involve multiple
simulations. Global Optimization comprises all techniques that can be used to nd the
best elements x
ij
means that there is no direct connection n
i
n
j
between node n
i
and n
j
. These
nodes may, however, be connected by a path which leads over other, intermediate
nodes, such as n
i
n
A
n
B
n
j
. In this case, n
j
can be reached from n
i
over
a path leading rst to n
A
and then to n
B
before nally arriving at n
j
. Hence, there
would be a connection of nite length.
We consider the specic optimization task Find the shortest connection between node
n
1
and n
2
. Develop a problem space X which is able to represent all paths between
the rst and second node in an arbitrary network with m 2. Note that there is not
necessarily a direct connection between n
1
and n
2
.
Dene a suitable objective function for this problem.
[15 points]
Chapter 3
Optima: What does good mean?
We already said that Global Optimization is about nding the best possible solutions for
given problems. Let us therefore now discuss what it is that makes a solution optimal
1
.
3.1 Single Objective Functions
In the case of optimizing a single criterion f, an optimum is either its maximum or minimum,
depending on what we are looking for. In the case of antenna design (Example E2.3), the
antenna gain was maximized and in Example E2.2, the goal was to nd a cyclic route of
minimal distance through ve Chinese cities. If we own a manufacturing plant and have to
assign incoming orders to machines, we will do this in a way that miniminzes the production
time. We will, however, arrange the purchase of raw material, the employment of sta, and
the placement of commercials in a way that maximizes the prot, on the other hand.
In Global Optimization, it is a convention that optimization problems are most often
dened as minimization tasks. If a criterion f is subject to maximization, we usually simply
minimize its negation (f) instead. In this section, we will give some basic denitions on
what the optima of a single (objective) function are.
Example E3.1 (two-dimensional objective function).
Figure 3.1 illustrates such a function f dened over a two-dimensional space X = (X
1
, X
2
)
R
2
. As outlined in this graphic, we distinguish between local and global optima. As illus-
trated, a global optimum is an optimum of the whole domain X while a local optimum is
an optimum of only a subset of X.
1
http://en.wikipedia.org/wiki/Maxima_and_minima [accessed 2007-07-03]
52 3 OPTIMA: WHAT DOES GOOD MEAN?
localmaximum
localminimum
globalminimum
localmaximum
globalmaximum
X
X
1
X
2
f
Figure 3.1: Global and local optima of a two-dimensional function.
3.1.1 Extrema: Minima and Maxima of Dierentiable Functions
A local minimum x
l
is a point which has the smallest objective value amongst its neighbors
in the problem space. Similarly, a local maximum x
l
has the highest objective value when
compared to its neighbors. Such points are called (local) extrema
2
. In optimization, a local
optimum is always an extremum, i. e., either a local minimum or maximum.
Back in high school, we learned: If f : X R (X R) has a (local) extremum at x
l
and is dierentiable at that point, then the rst derivative f
is zero at x
l
.
x
l
is local extremum f
(x
l
) = 0 (3.1)
Furthermore, if f can be dierentiated two times at x
l
, the following holds:
(f
(x
l
) = 0) (f
(x
l
) > 0) x
l
is local minimum (3.2)
(f
(x
l
) = 0) (f
(x
l
) < 0) x
l
is local maximum (3.3)
Alternatively, we can detect a local minimum or maximum also when the rst derivative
undergoes a sign change. If, for a small h, sign (f
(x
l
h)) ,= sign (f
(x
l
+h)), then we can
state that:
(f
(x
l
) = 0)
_
lim
h0
f
(x
l
h) < 0
_
_
lim
h0
f
(x
l
+h) > 0
_
x
l
is local minimum(3.4)
(f
(x
l
) = 0)
_
lim
h0
f
(x
l
h) > 0
_
_
lim
h0
f
(x
l
+h) < 0
_
x
l
is local maximum(3.5)
2
http://en.wikipedia.org/wiki/Maxima_and_minima [accessed 2010-09-07]
3.1. SINGLE OBJECTIVE FUNCTIONS 53
Example E3.2 (Extrema and Derivatives).
The function f(x) = x
2
+ 5 has the rst derivative f
(x) = 2. To solve f
(x
l
) = 0 we set 0 = 2x
l
and get, obviously, x
l
= 0. For x
l
= 0,
f
(x
l
) = 2 and hence, x
l
is a local minimum according to Equation 3.2.
If we take the function g(x) = x
4
2, we get g
(x) = 4x
3
and g
(x) = 12x
2
. At x
l
,
both g
(x
l
) and g
(x
l
) become 0. We cannot use Equation 3.2. However, if we take a small
step to the left, i. e., into x < 0, x < 0 (4x
3
) < 0 g
l
is a minimum of g(x).
From many of our previous examples such as Example E1.1 on page 25, Example E2.2 on
page 45, or Example E2.4 on page 47, we know that objective functions in many optimization
problems cannot be expressed in a mathematically closed form, let alone in one that can be
dierentiated. Furthermore, Equation 3.1 to Equation 3.5 can only be directly applied if the
problem space is a subset of the real numbers X R. They do not work for discrete spaces
or for vector spaces. For the two-dimensional objective function given in Example E3.1, for
example, we would need to a apply Equation 3.6, the generalized form of Equation 3.1:
x
l
is local extremum grad(f)(x
l
) = 0 (3.6)
For distinguishing maxima, minima, and saddle points, the Hessian matrix
3
would be needed.
Even if the objective function exists in a dierentiable form, for problem spaces X R
n
of larger scales n > 5, computing the gradient, the Hessian, and their properties becomes
cumbersome. Derivative-based optimization is hence only feasible in a subset of optimization
problems.
In this book, we focus on derivative-free optimization. The precise denition of local
optima without using derivatives requires some sort of measure of what neighbor means
in the problem space. Since this requires some further denitions, we will postpone it to
Section 4.4.
3.1.2 Global Extrema
The denitions of globally optimal points are much more straightforward and can be given
based on the terms we already have discussed:
Denition D3.1 (Global Maximum). A global maximum x x of one (objective) func-
tion f : X R is an input element with f( x) f(x) x X.
Denition D3.2 (Global Minimum). A global minimum x X of one (objective) func-
tion f : X R is an input element with f( x) f(x) x X.
Denition D3.3 (Global Optimum). A global optimum x
x
3
8x
2
(illustrated in Fig. 3.2.a) was subject to minimization, we
-100
0
100
200
-10 -5 0 5 10
x X
f(x)
x
1
^
x
2
^
Fig. 3.2.a:
x
3
8x
2
: a function with
two global minima.
-1
-0.5
0
0.5
1
-10 -5 0 5 10
x
0
^ x
-1
^ x ^
1
x X
f(x)
Fig. 3.2.b: The cosine function: in-
nitely many optima.
20
40
60
80
100
-10 -5 0 5 10
xX
f(x)
X
^
Fig. 3.2.c: A function with uncount-
able many minima.
Figure 3.2: Examples for functions with multiple optima
would nd that it has two global optimal x
1
= x
1
=
16
3
and x
2
= x
2
=
16
3
. Another
interesting example is the cosine function sketched in Fig. 3.2.b. It has global maxima x
i
at
x
i
= 2i and global minima x
i
at x
i
= (2i + 1) for all i Z. The correct solution of such
an optimization problem would then be a set X
X of an optimization problem is
the set that contains all its globally optimal solutions.
3.3. MULTIPLE OBJECTIVE FUNCTIONS 55
There are often multiple, sometimes even innite many optimal solutions in many optimiza-
tion problems. Since the storage space in computers is limited, it is only possible to nd a
nite (sub-)set of solutions. In the further text, we will denote the result of optimization
algorithms which return single candidate solutions (in sans-serif font) as x and the results
of algorithms which are capable to produce sets of possible solutions as X = x
1
, x
2
, . . . .
Denition D3.5 (Optimization Result). The set X X contains output elements x X
of an optimization process.
Obviously, the best outcome of an optimization process would be to nd X = X
. From
Example E3.3, we already know that this might actually be impossible if there are too
many global optima. Then, the goal should be to nd a X X
or X X
in a reasonable time.
3.3 Multiple Objective Functions
3.3.1 Introduction
Global Optimization techniques are not just used for nding the maxima or minima of single
functions f. In many real-world design or decision making problems, there are multiple
criteria to be optimized at the same time. Such tasks can be dened as in Denition D3.6
which will later be rened in Denition D6.2 on page 103.
Denition D3.6 (Multi-Objective Optimization Problem (MOP)). In a multi-objective
optimization problem (MOP), a set f : X R
n
consisting of n objective functions
f
i
: X R, each representing one criterion, is to be optimized over a problem space
X [596, 740, 954].
f = f
i
: X R : i 1..n (3.7)
f (x) = (f
1
(x) , f
2
(x) , . . . )
T
(3.8)
In the following, we will treat these sets as vector functions f : X R
n
which return a
vector of real numbers of dimension n when applied to a candidate solution x X. To the
R
n
we will in this case refer to as objective space Y. Algorithms designed to optimize sets
of objective functions are usually named with the prex multi-objective, like multi-objective
Evolutionary Algorithms (see Denition D28.2 on page 253).
Purshouse [2228, 2230] provides a nice classication of the possible relations between
the objective functions which we illustrate here as Figure 3.3. In the best case from the
56 3 OPTIMA: WHAT DOES GOOD MEAN?
relation
dependent independent
conflict harmony
Figure 3.3: The possible relations between objective functions as given in [2228, 2230].
optimization perspective, two objective functions f
1
and f
2
are in harmony, written as f
1
f
2
,
meaning that improving one criterion will also lead to an improvement in the other. Then, it
would suce to optimize only one of them and the MOP can be reduced to a single-objective
one.
Denition D3.7 (Harmonizing Objective Functions). In a multi-objective optimiza-
tion problem, two objective functions f
i
and f
j
are harmonizing (f
i
X
f
j
) in a subset X X
of the problem space X if Equation 3.9 holds.
f
i
X
f
j
[f
i
(x
1
) < f
i
(x
2
) f
j
(x
1
) < f
j
(x
2
) x
1
, x
2
X X] (3.9)
The opposite are conicting objectives where an improvement in one criterion leads to a
degeneration of the utility of the candidate solutions according to another criterion. If two
objectives f
3
and f
4
conict, we denote this as f
3
f
4
. Obviously, objective functions do not
need to be conicting or harmonic for their complete domain X, but instead may exhibit
these properties on certain intervals only.
Denition D3.8 (Conicting Objective Functions). In a multi-objective ptimization
problem, two objective functions f
i
and f
j
are conicting (f
i
X
f
j
) in a subset X X of
the problem space X if Equation 3.10 holds in a subset X of the problem space X.
f
i
X
f
j
[f
i
(x
1
) < f
i
(x
2
) f
j
(x
1
) > f
j
(x
2
) x
1
, x
2
X X] (3.10)
Besides harmonizing and conicting optimization criteria, there may be such which are
independent from each other. In a harmonious relationship, the optimization criteria can
be optimized simultaneously, i. e., an improvement of one leads to an improvement of the
other. If the criteria conict, the exact opposite is the case. Independent criteria, however,
do not inuence each other: It is possible to modify candidate solutions in a way that leads
to a change in one objective value while the other one remains constant (see Example E3.8).
Denition D3.9 (Independent Objective Functions). In a multi-objective optimiza-
tion problem, two objective functions f
i
and f
j
are independent from each other in a subset
X X of the problem space X if the MOP can be decomposed into two problems which can
optimized separately and whose solutions can then be composed to solutions of the original
problem.
If X = X, these relations are called total and the subscript X is left away in the notations. In
the following, we give some examples for typical situations involving harmonizing, conicting,
and independent optimization criteria. We also list some typical multi-objective optimization
applications in Table 3.1, before discussing basic techniques suitable for dening what is a
good solution in problems with multiple, conicting criteria.
3.3. MULTIPLE OBJECTIVE FUNCTIONS 57
Example E3.4 (Factory Example).
Multi-objective optimization often means to compromise conicting goals. If we go back to
our factory example, we can specify the following objectives that all are subject to optimiza-
tion:
1. Minimize the time between an incoming order and the shipment of the corresponding
product.
2. Maximize the prot.
3. Minimize the costs for advertising, personal, raw materials etc..
4. Maximize the quality of the products.
5. Minimize the negative impact of waste and pollution caused by the production process
on environment.
The last two objectives seem to clearly conict with the goal cost minimization. Between the
personal costs and the time needed for production and the product quality there should also
be some kind of contradictive relation, since producing many quality goods in short time
naturally requires many hands. The exact mutual inuences between optimization criteria
can apparently become complicated and are not always obvious.
Example E3.5 (Articial Ant Example).
Another example for such a situation is the Articial Ant problem
4
where the goal is to
nd the most ecient controller for a simulated ant. The eciency of an ant is not only
measured by the amount of food it is able to pile. For every food item, the ant needs to
walk to some point. The more food it aggregates, the longer the distance it needs to walk.
If its behavior is driven by a clever program, it may take the ant a shorter walk to pile the
same amount of food. This better path, however, would maybe not be discovered by an ant
with a clumsy controller. Thus, the distance the ant has to cover to nd the food (or the
time it needs to do so) has to be considered in the optimization process, too.
If two control programs produce the same results and one is smaller (i. e., contains
fewer instructions) than the other, the smaller one should be preferred. Like in the factory
example, these optimization goals conict with each other: A program which contains only
one instruction will likely not guide the ant to a food item and back to the nest.
From these both examples, we can gain another insight: To nd the global optimum could
mean to maximize one function f
i
f and to minimize another one f
j
f , (i ,= j). Hence,
it makes no sense to talk about a global maximum or a global minimum in terms of multi-
objective optimization. We will thus retreat to the notation of the set of optimal elements
x
= (x
1
, x
2
, x
3
)
T
by taking the
solutions x
1
and x
2
from the optimization of f
1
and x
2
from the optimization process solving
f
2
.
3.3. MULTIPLE OBJECTIVE FUNCTIONS 59
Example E3.9 (Robotic Soccer Cont.).
In Example E1.10 on page 37, we mentioned that in robotic soccer, the robots must try to
decide which action to take in order to maximize the chance of scoring a goal. If decision
making in robotic soccer was only based on this criteria, it is likely that most mates in
a robot team would jointly attack the goal of the opposing team, leaving the own one
unprotected. Hence, at least one second objective is important too: to minimize the chance
that the opposing team scores a goal.
Table 3.1: Applications and Examples of Multi-Objective Optimization.
Area References
Business-To-Business [1559]
Chemistry [306, 668]
Combinatorial Problems [366, 491, 527, 654, 690, 1034, 1429, 1440, 1442, 1553, 1696,
17561758, 1859, 2019, 2025, 2158, 2472, 2473, 2862, 2895];
see also Table 20.1
Computer Graphics [1661]; see also Table 20.1
Data Mining [2069, 2398, 2644, 2645]; see also Table 20.1
Databases [1696]
Decision Making [198, 320, 861, 1299, 1559, 1571, 1801]; see also Table 20.1
Digital Technology [789, 869, 1479]
Distributed Algorithms and Sys-
tems
[320, 605, 662, 663, 669, 861, 1299, 1488, 1559, 1571, 1574,
1801, 1840, 2071, 2644, 2645, 2862, 2897]
Economics and Finances [320, 662, 857, 1559]
Engineering [93, 519, 547, 548, 579, 605, 669, 737, 789, 869, 953, 1000,
1479, 1488, 1508, 1574, 1622, 1717, 1840, 1873, 2059, 2111,
2158, 2644, 2645, 2862, 2897]
Games [560, 997, 2102]
Graph Theory [669, 1488, 1574, 1840, 2025, 2897]
Logistics [527, 579, 861, 1034, 1429, 1442, 1553, 1756, 1859, 2059,
2111]
Mathematics [560, 662, 857, 869, 997, 1661, 2102]
Military and Defense [1661]
Multi-Agent Systems [1661]
Physics [1000]
Security [1508, 1661]
Software [1508, 1559, 2863, 2897]; see also Table 20.1
Testing [2863]
Water Supply and Management [1268]
Wireless Communication [1717, 1796, 2158]
3.3.2 Lexicographic Optimization
The maybe simplest way to optimize a set f of objective functions is to solve them according
to priorities [93, 860, 2291, 2820]. Without loss of generality, we could, for instance, assume
that f
1
is strictly more important than f
2
, which, in turn, is more important than f
3
, and
so on. We then would rst determine the optimal set X
(1)
according to f
1
. If this set
60 3 OPTIMA: WHAT DOES GOOD MEAN?
contains more than one solution, we will then retain only those elements in X
(1)
which
have the best objective values according to f
2
compared to the other members of X
(1)
and
obtain X
(1,2)
X
(1)
. This process is repeated until either
(1,2,... )
(1,2,..i1)
[860].
Denition D3.10 (Lexicographically Better). A candidate solution x
1
X is lexico-
graphically better than another element x
2
X (denoted by x
1
<
lex
x
2
) if
x
1
<
lex
x
2
(
i
f
i
(x
1
) <
i
f
i
(x
2
)) (i = min k : f
k
(x
1
) ,= f
k
(x
2
)) (3.13)
j
=
_
1 if f
j
should be minimized
1 if f
j
should be maximized
(3.14)
where the
j
in Equation 3.13 only denote whether f
j
should be maximized or minimized,
as specied in Equation 3.14.
Since we generally consider minimization problems, the
j
will be assumed to be 1 if not
explicitly stated otherwise. If n objective functions are to be optimized, there are n! =
[(1..n)[ possible permutations of them where (1..n) is the set of all permutations of the
natural numbers from 1 to n. For each such permutation, the described approach may lead
to dierent results. We can thus rene the previous denition of lexicographically better
by putting it into the context of a permutation of the objective functions:
Denition D3.11 (Lexicographically Better (Rened)). A candidate solution x
1
X is lexicographically better than another element x
2
X (denoted by x
1
<
lex,
x
2
) according
to a permutation (1..n) applied to the objective functions if
x
1
<
lex,
x
2
_
[i]
f
[i]
(x
1
) <
[i]
f
[i]
(x
2
)
_
_
i = min
_
k : f
k
(x
1
) ,= f
[k]
(x
2
)
__
(3.15)
where n = len(f ) is the number of objective functions, [i] is the i
th
element of the permu-
tation , and the
i
retain their meaning from Equation 3.14.
Based on the <
lex
-relation, we can now dene optimality.
Denition D3.12 (Lexicographic Optimality). A candidate solution x
is lexicograph-
ically optimal in terms of a permutation (1..n) applied to the objective functions (and
therefore, member of the optimal set X
,x X : x<
lex,
x
(3.16)
As lexicographically global optimal set X
for
all possible permutations of the rst n natural numbers:
X
=
_
(1..n)
X
(3.17)
X
or X
if we
use the lexicographical denition of optimality?
3.3. MULTIPLE OBJECTIVE FUNCTIONS 61
Example E3.10 (Example E3.4 Cont. Lexicographically).
In the factory example Example E3.4, we wished to minimize the production time
(f
1
,
1
= 1), maximize the prot (f
2
,
2
= 1), minimize the running costs (f
3
,
3
= 1),
maximize a product quality measure (f
4
,
4
= 1), and minimize environmental damage
(f
5
,
5
= 1). Determining lexicographically optimal set X
(1)
_
> 1
_
, we consider f
2
. Amongst all elements in X
(1)
, we then copied those
to X
(1,2)
which have the highest f
2
-value and so on. What we get in X
are congurations
which perform exceptionally well in terms of the production time but sacrice prot, running
costs, production quality, and will largely disregard any environmental issues. No trade-o
between the objectives will happen at all. Therefore, the set of all lexicographically optimal
solutions X
, if determined lexicographi-
cally, contains the
1. smallest possible program (length 0),
2. the program which leads to the highest possible food collection, and
3. the program which guides the ant along the shortest possible path (which is again the
empty program).
Example E3.12 (Example E3.6 Cont. Lexicographically).
There are exactly two lexicographically optimal points on the two functions illustrated in
Figure 3.4. The rst one x
1
is the single global maximum x
1
of f
1
and the other one (x
2
) is
the single global maximum x
2
of f
2
. In other words, X
(1,2)
= x
1
and X
(2,1)
= x
2
. Since
(1, 2) = (1, 2) , (2, 1), it follows that X
= X
(1,2)
X
(2,1)
= x
1
, x
2
.
Example E3.13 (Example E3.7 Cont. Lexicographically).
The two-dimensional objective functions f
3
and f
4
from Figure 3.5 each have two global
minima x
1
, x
2
and x
3
, x
4
, respectively. Although it is a bit hard to see in the gure itself,
f
4
( x
1
) = f
4
( x
2
) and f
3
( x
3
) = f
3
( x
4
) because of the symmetry in the two objective functions.
This means that X
(3,4)
= x
1
, x
2
, that X
(4,3)
= x
3
, x
4
, and that X
= X
(3,4)
X
(4,3)
=
x
1
, x
2
, x
3
, x
4
.
3.3.2.1 Problems with the Lexicographic Method
From these examples it should become clear that the lexicographic approach to dening what
is optimal and what not has some advantages and some disadvantages. On the positive side,
we nd that it is very easy realize and that it allows us to treat a multi-objective optimization
problem by iteratively solving single-objective ones. On the downside, it does not perform
any trade-o between the dierent objective functions at all and we only nd the extreme
values of the optimization criteria. In the factory example, for instance, we would surely
be interested in solutions which lead to a short production time but do not entirely ignore
any budget issues. Such dierentiations, however, are not possible with the lexicographic
method.
62 3 OPTIMA: WHAT DOES GOOD MEAN?
3.3.3 Weighted Sums (Linear Aggregation)
Another very simple method to dene what an optimal solution is, is to compute a weighted
sum ws(x) of all objective functions f
i
(x) f . Since a weighted sum is a linear aggregation
of the objective values, it is also often referred to as linear aggregating. Each objective f
i
is
multiplied with a weight w
i
representing its importance. Using signed weights allows us to
minimize one objective while maximizing another one. We can, for instance, apply a weight
w
a
= 1 to an objective function f
a
and the weight w
b
= 1 to the criterion f
b
. By minimizing
ws(x), we then actually minimize the rst and maximize the second objective function. If
we instead maximize ws(x), the eect would be inverse and f
b
would be minimized and while
f
a
is maximized. Either way, multi-objective problems are reduced to single-objective ones
with this method. As illustrated in Equation 3.19, a global optimum then is a candidate
solution x
X for which the weighted sum of all objective values is less or equal to those
of all other candidate solutions (if minimization of the weighted sum is assumed).
ws(x) =
n
i=1
w
i
f
i
(x) =
f
i
f
w
i
f
i
(x) (3.18)
x
ws(x
) ws(x) x X (3.19)
With this method, we can also emulate lexicographical optimization in many cases by simply
setting the weights to values of dierent magnitude. If the objective functions f
i
f all had
the range f
i
: X 0..10, for instance, setting the weights to w
i
= 10
i
would eectively
achieve this.
Example E3.14 (Example E3.6 Cont.: Weighted Sums).
Figure 3.6 demonstrates optimization with the weighted sum approach for the example given
in Example E3.6. The weights are both set to 1 = w
1
= w
2
. If we maximize ws
1
(x), we will
thus also maximize the functions f
1
and f
2
. This leads to a single optimum x
= x.
y
y =f (x)
1 1
y =f (x)
2 2
y=ws (x)=f (x)+f (x)
1 1 2
x^
xX
1
Figure 3.6: Optimization using the weighted sum approach (rst example).
Example E3.15 (Example E3.7 Cont.: Weighted Sums).
The sum of the two-dimensional functions f
3
and f
4
from the second graphical Example E3.7
is sketched in Figure 3.7. Again, we set the weights w
3
and w
4
to 1. The sum ws
2
, however,
is subject to minimization. The graph of ws
2
has two especially deep valleys. At the bottoms
of these valleys, the two global minima x
5
and x
6
can be found.
3.3. MULTIPLE OBJECTIVE FUNCTIONS 63
x
2 x
1
y
x
5
^
x
6
^
y=ws (x)=f (x)+f (x)
2 3 4
Figure 3.7: Optimization using the weighted sum approach (second example).
3.3.3.1 Problems with Weighted Sums
This approach has a variety of drawbacks. One is that it cannot handle functions that rise
or fall with dierent speed
5
properly. Whitley [2929] pointed out that the results of an
objective function should not be considered as a precise measure of utility. Adding multiple
such values up thus does not necessarily make sense.
Example E3.16 (Problematic Objectives for Weighted Sums).
In Figure 3.8, we have sketched the sum ws(x) of the two objective functions f
1
(x) = x
2
and f
2
(x) = e
x2
. When minimizing or maximizing this sum, we will always disregard
one of the two functions, depending on the interval chosen. For small x, f
2
is negligible
compared to f
1
. For x > 5 it begins to outpace f
1
which, in turn, will now become negligible.
Such functions cannot be added up properly using constant weights. Even if we would set
w
1
to the really large number 10
10
, f
1
will become insignicant for all x > 40, because
(40
2
)10
10
e
402
0.0005.
5
See Denition D12.1 on page 144 or http://en.wikipedia.org/wiki/Asymptotic_notation [ac-
cessed 2007-07-03] for related information.
64 3 OPTIMA: WHAT DOES GOOD MEAN?
45
35
25
15
-5
5
-5 -3 -1
-15
-25
1 3 5
y =f (x)
1 1
y =f (x)
2 2
y=g(x)
=f (x)+f (x)
1 2
Figure 3.8: A problematic constellation for the weighted sum approach.
Weighted sums are only suitable to optimize functions that at least share the same big-O
notation (see Denition D12.1 on page 144). Often, it is not obvious how the objective
functions will fall or rise. How can we, for instance, determine whether the objective max-
imizing the food piled by an Articial Ant rises in comparison to the objective minimizing
the distance walked by the simulated insect?
And even if the shape of the objective functions and their complexity class were clear,
the question about how to set the weights w properly still remains open in most cases [689].
In the same paper, Das and Dennis [689] also show that with weighted sum approaches, not
necessarily all elements considered optimal in terms of Pareto domination (see next section)
will be found. Instead, candidate solutions hidden in concavities of the trade-o curve will
not be discovered [609, 1621, 1622] (see Example E3.17 on the next page for dierent shapes
of trade-o curves). Also, the candidate solutions which will nally be contained in the
result set X will not necessarily be evenly spaced [1000]. Amongst further authors who
discuss the drawbacks of the linear aggregation method are Koski [1582] and Messac and
Mattson [1873].
3.3.4 Weighted Min-Max
The weighted min-max approach [1303, 1305, 1554, 1741] for multi-objective optimization
compares two candidate solutions x
1
and x
2
on basis of the minimum (or maximum) of
their weighted objective values. A candidate solution x
1
X is preferred in comparison
with x
2
X if Equation 3.20 holds
min w
i
f
i
(x
1
) : i 1..n < min w
i
f
i
(x
2
) : i 1..n (3.20)
where w
i
are the weights of the objective values. For objective functions subject to mini-
mization, w
i
> 0 is used and w
i
is set to a value below zero for functions to be maximized.
This approach which is also called Weighted Tschebychev Norm is able to nd solutions on
both, convex and concave trade-o surfaces (see Denition D3.15 on the facing page). The
weight vector describes a beam in direction (1/w
1
, 1/w
2
, .., 1/w
n
)
T
from the point of origin
in objective space to and along which the optimizer should converge.
3.3. MULTIPLE OBJECTIVE FUNCTIONS 65
3.3.5 Pareto Optimization
The mathematical foundations for multi-objective optimization which considers conicting
criteria in a fair way has been laid by Edgeworth [857] and Pareto [2127] around one hundred
fty years ago [1642]. Pareto optimality
6
became an important notion in economics, game
theory, engineering, and social sciences [560, 997, 2102, 2938]. It denes the frontier of
solutions that can be reached by trading-o conicting objectives in an optimal manner.
From this front, a decision maker (be it a human or an algorithm) can nally choose the
congurations that, in her opinion, suit best [264, 528, 952, 954, 1010, 1166, 2610]. The
notation of optimal in the Pareto sense is strongly based on the denition of domination:
Denition D3.13 (Domination). An element x
1
dominates (is preferred to) an element
x
2
(x
1
x
2
) if x
1
is better than x
2
in at least one objective function and not worse with
respect to all other objectives. Based on the set f of objective functions f, we can write:
x
1
x
2
i 1..n
i
f
i
(x
1
)
i
f
i
(x
2
)
j 1..n :
j
f
j
(x
1
) <
j
f
j
(x
2
) (3.21)
i
=
_
1 if f
i
should be minimized
1 if f
i
should be maximized
(3.22)
We provide a Java version of a comparison operator implementing the domination relation
in Listing 56.55 on page 838. Like in Equation 3.13 in the denition of the lexicographical
ordering of candidate solutions, the
i
again denote whether f
i
should be maximized or
minimized. Thus Equation 3.22 and Equation 3.14 are the same. Since we generally assume
minimization, the
i
will always be 1 if not explicitly stated otherwise in the rest of this
book. Then, if a candidate solution x
1
dominates another one (x
2
), f (x
1
) is partially less
than f (x).
The Pareto domination relation denes a strict partial order (an irreexive, asymmetric,
and transitive binary relation, see Denition D51.16 on page 645) on the space of possible
objective values Y. In contrast, the weighted sum approach imposes a total order by pro-
jecting the objective space Y it into the real numbers R. The use of Pareto domination in
multi-objective Evolutionary Algorithms was rst proposed by [1075] back in 1989 [2228].
Denition D3.14 (Pareto Optimal). An element x
,x X : x x
(3.23)
The Pareto optimal set will also comprise all lexicographically optimal solutions since, per
denition, it includes all the extreme points of the objective functions. Additionally, it
provides the trade-o solutions which we longed for in Section 3.3.2.1.
Denition D3.15 (Pareto Frontier). For a given optimization problem, the Pareto
front(ier) F
R
n
is dened as the set of results the objective function vector f creates
when it is applied to all the elements of the Pareto-optimal set X
.
F
= f (x
) : x
(3.24)
Example E3.17 (Shapes of Optimal Sets / Pareto Frontiers).
The Pareto front in Example E13.2 has a convex geometry, but there are other dierent
6
http://en.wikipedia.org/wiki/Pareto_efficiency [accessed 2007-07-03]
66 3 OPTIMA: WHAT DOES GOOD MEAN?
f
1
f
2
Fig. 3.9.a: Non-Convex
(Concave)
f
1
f
2
Fig. 3.9.b: Discon-
nected
f
1
f
2
Fig. 3.9.c: linear
f
1
f
2
Fig. 3.9.d: Non-
Uniformly Distributed
Figure 3.9: Examples of Pareto fronts [2915].
shapes as well. In Figure 3.9 [2915], we show some examples, including non-convex (concave),
disconnected, linear, and non-uniformly distributed Pareto fronts. Dierent structures of the
optimal sets pose dierent challenges to achieve good convergence and spread. Optimization
processes driven by linear aggregating functions will, for instance, have problems to nd all
portions of Pareto fronts with non-convex geometry as shown by Das and Dennis [689].
3.3. MULTIPLE OBJECTIVE FUNCTIONS 67
In this book, we will refer to candidate solutions which are not dominated by any element
in a reference set as non-dominated. This reference set may be the whole problem space X
itself (in which case the non-dominated elements are global optima) or any subset X x of
it. Many optimization algorithms, for instance, work on populations of candidate solutions
and in such a context, a non-dominated candidate solution would be one not dominated by
any other element in the population.
Denition D3.16 (Domination Rank). We dene the domination rank
#
dom(x, X) of
a candidate solution x relative to a reference set X as
#
dom(x, X) = [x
: (x
X) (x
x)[ (3.25)
Hence, an element x with
#
dom(x, X) = 0 is non-dominated in X and a candidate solution
x
with
#
dom(x
= [x
2
, x
3
] [x
5
, x
6
] which contains innite many
elements since it is composed of intervals on the real axis. In practice, of course, our
computers can only handle nitely many elements and we would not be able to nd all
optimal elements unless, of course, we could apply a method able to mathematically resolve
the objective functions and to return the intervals in a form similar to the notation we used
here. All candidate solutions not in the optimal set are dominated by at least one element
of X
.
y
x
1
x
2
x
3
x
4
x
5
x
6
y=f (x)
1
y=f (x)
2
xX
1
Figure 3.10: Optimization using the Pareto Frontier approach.
The points in the area between x
1
and x
2
(shaded in light gray) are dominated by other
points in the same region or in [x
2
, x
3
], since both functions f
1
and f
2
can be improved by
increasing x. In other words, f
1
and f
2
harmonize in [x
1
, x
2
): f
1
[x
1
,x
2
)
f
2
. If we start at
the leftmost point in X (which is position x
1
), for instance, we can go one small step
to the right and will nd a point x
1
+ dominating x
1
because f
1
(x
1
+ ) > f
1
(x
1
) and
f
2
(x
1
+ ) > f
2
(x
1
). We can repeat this procedure and will always nd a new dominating
point until we reach x
2
. x
2
demarks the global maximum of f
2
the point with the highest
possible f
2
value which cannot be dominated by any other element of X by denition (see
Equation 3.21).
68 3 OPTIMA: WHAT DOES GOOD MEAN?
From here on, f
2
will decrease for some time, but f
1
keeps rising. If we now go a
small step to the right, we will nd a point x
2
+ with f
2
(x
2
+ ) < f
2
(x
2
) but also
f
1
(x
2
+ ) > f
1
(x
2
). One objective can only get better if another one degenerates, i. e., f
1
and f
2
conict f
1
[x
2
,x
3
]
f
2
. In order to increase f
1
, f
2
would be decreased and vice versa
and hence, the new point is not dominated by x
2
. Although some of the f
2
(x) values of the
other points x [x
1
, x
2
) may be larger than f
2
(x
2
+ ), f
1
(x
2
+ ) > f
1
(x) holds for all of
them. This means that no point in [x
1
, x
2
) can dominate any point in [x
2
, x
4
] because f
1
keeps rising until x
4
is reached.
At x
3
however, f
2
steeply falls to a very low level. A level lower than f
2
(x
5
). Since the f
1
values of the points in [x
5
, x
6
] are also higher than those of the points in (x
3
, x
4
], all points
in the set [x
5
, x
6
] (which also contains the global maximum of f
1
) dominate those in (x
3
, x
4
].
For all the points in the white area between x
4
and x
5
and after x
6
, we can derive similar
relations. All of them are also dominated by the non-dominated regions that we have just
discussed.
Example E3.19 (Example E3.7 Cont.: Pareto Optimization).
Another method to visualize the Pareto relationship is outlined in Figure 3.11 for our second
graphical example. For a certain grid-based resolution X
2
X
2
of the problem space X
2
, we
counted the number
#
dom(x, X
2
) of elements that dominate each element x X
2
. Again,
the higher this number, the worst is the element x in terms of Pareto optimization. Hence,
those candidate solutions residing in the valleys of Figure 3.11 are better than those which are
part of the hills. This Pareto ranking approach is also used in many optimization algorithms
as part of the tness assignment scheme (see Section 28.3.3 on page 275, for instance). A
non-dominated element is, as the name says, not dominated by any other candidate solution.
These elements are Pareto optimal and have a domination rank of zero. In Figure 3.11, there
are four such areas X
1
, X
2
, X
3
, and X
4
.
x
2 x
1
#dom
X
1
X
2
X
3
X
4
Figure 3.11: Optimization using the Pareto Frontier approach (second example).
If we compare Figure 3.11 with the plots of the two functions f
3
and f
4
in Figure 3.5, we
can see that hills in the domination space occur at positions where both, f
3
and f
4
have high
values. Conversely, regions of the problem space where both functions have small values are
dominated by very few elements.
Besides these examples here, another illustration of the domination relation which may help
understanding Pareto optimization can be found in Section 28.3.3 on page 275 (Figure 28.4
and Table 28.1).
3.3. MULTIPLE OBJECTIVE FUNCTIONS 69
3.3.5.1 Problems of Pure Pareto Optimization
Besides the fact that we will usually not be able to list all Pareto optimal elements, the
complete Pareto optimal set is often also not the wanted result of the optimization process.
Usually, we are rather interested in some special areas of the Pareto front only.
Example E3.20 (Example E3.5 Articial Ant Cont.).
We can again take the Articial Ant example to visualize this problem. In Example E3.5
on page 57 we have introduced multiple conicting criteria in this problem.
1. Maximize the amount of food piled.
2. Minimize the distance covered or the time needed to nd the food.
3. Minimize the size of the program driving the ant.
If we applied pure Pareto optimization to these objective, we may yield for example:
1. A program x
1
consisting of 100 instructions, allowing the ant to gather 50 food items
when walking a distance of 500 length units.
2. A program x
2
consisting of 100 instructions, allowing the ant to gather 60 food items
when walking a distance of 5000 length units.
3. A program x
3
consisting of 50 instructions, allowing the ant to gather 61 food items
when walking a distance of 1 000 000 length units.
4. A program x
4
consisting of 10 instructions, allowing the ant to gather 1 food item
when walking a distance of 5 length units.
5. A program x
5
consisting of 0 instructions, allowing the ant to gather 0 food item when
walking a distance of 0 length units.
The result of the optimization process obviously contains useless but non-dominated indi-
viduals which occupy space in the non-dominated set. A program x
3
which forces the ant
to scan each and every location on the map is not feasible even if it leads to a maximum
in food gathering. Also, an empty program x
5
is useless because it will lead to no food
collection at all. Between x
1
and x
2
, the dierence in the amount of piled food is only 20%,
but the ant driven by x
2
has to cover ten times the distance created by x
1
. Therefore, the
question of the actual utility arises in this case, too.
If such candidate solutions are created and archived, processing time is invested in evaluating
them (and we have already seen that evaluation may be a costly step of the optimization
process). Ikeda et al. [1400] show that various elements, which are apart from the true
Pareto frontier, may survive as hardly-dominated solutions (called dominance resistant, see
Section 20.2). Also, such solutions may dominate others which are not optimal but fall into
the space behind the interesting part of the Pareto front. Furthermore, memory restrictions
usually force us to limit the size of the list of non-dominated solutions X found during
the search. When this size limit is reached, some optimization algorithms use a clustering
technique to prune the optimal set while maintaining diversity. On one hand, this is good
since it will preserve a broad scan of the Pareto frontier. In this case, on the other hand, a
short but dumb program is of course very dierent from a longer, intelligent one. Therefore,
it will be kept in the list and other solutions which dier less from each other but are more
interesting for us will be discarded.
Better yet, non-dominated elements usually have a higher probability of being explored
further. This then leads inevitably to the creation of a great proportion of useless ospring.
70 3 OPTIMA: WHAT DOES GOOD MEAN?
In the next iteration of the optimization process, these useless ospring will need a good
share of the processing time to be evaluated.
Thus, there are several reasons to force the optimization process into a wanted direction.
In ?? on page ?? you can nd an illustrative discussion on the drawbacks of strict Pareto
optimization in a practical example (evolving web service compositions).
3.3.5.2 Goals of Pareto Optimization
Purshouse [2228] identies three goals of Pareto optimization which also mirror the afore-
mentioned problems:
1. Proximity: The optimizer should obtain result sets X which come as close to the Pareto
frontier as possible.
2. Diversity: If the real set of optimal solutions is too large, the set X of solutions actually
discovered should have a good distribution in both uniformity and extent.
3. Pertinency: The set X of solutions discovered should match the interests of the decision
maker using the optimizer. There is no use in containing candidate solutions with no
actual merits for the human operator.
3.4 Constraint Handling
Often, there are feasibility limits for the parameters of the candidate solutions or the objec-
tive function values. Such regions of interest are one of the reasons for one further extension
of multi-objective optimization problems:
Denition D3.17 (Feasibility). In an optimization problem, p 0 inequality constraints
g and q 0 equality constraints h may be imposed additionally to the objective functions.
Then, a candidate solution x is feasible, if and only if it fulls all constraints:
isFeasible(x) g
i
(x) 0 i 1..p
h
j
(x) = 0 j 1..q
(3.26)
A candidate solution x for which isFeasible(x) does not hold is called infeasible. Obviously,
only a feasible individual can be a solution, i. e., an optimum, for a given optimization
problem. Constraint handling and the notation of feasibility can be combined with all the
methods for single-objective and multi-objective optimization previously discussed. Com-
prehensive reviews on techniques for such problems have been provided by Michalewicz
[1885], Michalewicz and Schoenauer [1890], and Coello Coello et al. [594, 599] in the con-
text of Evolutionary Computation. In Table 3.2, we give some examples for constraints in
optimization problems.
Table 3.2: Applications and Examples of Constraint Optimization.
Area References
Combinatorial Problems [237, 1161, 1735, 1822, 1871, 1921, 2036, 2072, 2658, 3034]
Computer Graphics [2487, 2488]
Databases [1735, 1822, 2658]
3.4. CONSTRAINT HANDLING 71
Decision Making [1801]
Distributed Algorithms and Sys-
tems
[1801, 3034]
Economics and Finances [530, 531, 3034]
Engineering [500, 519, 530, 547, 1881, 3070]
Function Optimization [1732]
3.4.1 Genome and Phenome-based Approaches
One approach to ensure that constraints are always obeyed is to ensure that only feasible
candidate solutions can occur during the optimization process.
1. Coding: This can be done as part of the genotype-phenotype mapping by using so-
called decoders. An example for a decoder is given in [2472, 2473]. [2228]
2. Repairing: Infeasible candidate solutions could be repaired, i. e., turned into feasible
ones [2228, 3041] as part of the genotype-phenotype mapping as well.
3.4.2 Death Penalty
Probably the easiest way of dealing with constraints in objective and tness space is to simply
reject all infeasible candidate solutions right away and not considering them any further in
the optimization process. This death penalty [1885, 1888] can only work in problems where
the feasible regions are very large. If the problem space contains only few or non-continuously
distributed feasible elements, such an approach will lead the optimization process to stagnate
because most eort is spent in sampling untargeted in the hope to nd feasible candidate
solutions. Once this has happened, the transition to other feasible elements may be too
complicated and the search only nds local optima. Additionally, if infeasible elements are
directly discarded, the information which could be gained from them is disposed with them.
3.4.3 Penalty Functions
Maybe one of the most popular approach for dealing with constraints, especially in the
area of single-objective optimization, goes back to Courant [647] who introduced the idea of
penalty functions in 1943. Here, the constraints are combined with the objective function f,
resulting in a new function f
-value than a feasible one with the same objective values. In [647], this is achieved
by dening f
as f
(x) = f(x) +v
p
i=1
[g
i
(x)]
1
in order to
ensure that the function g always stays larger than zero.
There are practically no limits for the ways in which a penalty for infeasibility can be
integrated into the objective functions. Several researchers suggest dynamic penalties which
incorporate the index of the current iteration of the optimizer [1458, 2072] or adaptive penal-
ties which additionally utilize population statistics [237, 1161, 2487]. Thorough discussions
on penalty functions have been contributed by Fiacco and McCormick [908] and Smith and
Coit [2526].
72 3 OPTIMA: WHAT DOES GOOD MEAN?
3.4.4 Constraints as Additional Objectives
Another idea for handling constraints would be to consider them as new objective functions.
If g(x) 0 must hold, for instance, we can transform this to a new objective function which
is subject to minimization.
f
r
i
] for each objective function f
i
.
Pohlheim [2190] outlines how this approach can be applied to the set f of objective
functions and combined with Pareto optimization: Based on the inequalities, three categories
of candidate solutions can be dened and each element x X belongs to one of them:
1. It fullls all of the goals, i. e.,
r
i
f
i
(x)
r
i
i 1.. [f [ (3.29)
2. It fullls some (but not all) of the goals, i. e.,
(i 1.. [f [ : r
i
f
i
(x)
r
i
) (j 1.. [f [ : (f
j
(x) < r
j
) (f
j
(x) >
r
j
)) (3.30)
3. It fullls none of the goals, i. e.,
(f
i
(x) < r
i
) (f
i
(x) >
r
i
) i 1.. [f [ (3.31)
Using these groups, a new comparison mechanism is created:
1. The candidate solutions which fulll all goals are preferred instead of all other indi-
viduals that either fulll some or no goals.
2. The candidate solutions which are not able to fulll any of the goals succumb to those
which fulll at least some goals.
3. Only the solutions that are in the same group are compared on basis on the Pareto
domination relation.
3.4. CONSTRAINT HANDLING 73
By doing so, the optimization process will be driven into the direction of the interesting
part of the Pareto frontier. Less eort will be spent on creating and evaluating individuals
in parts of the problem space that most probably do not contain any valid solution.
Example E3.21 (Example E3.6 Cont.: MOI).
In Figure 3.12, we apply the Pareto-based Method of Inequalities to the graphical Exam-
ple E3.6. We impose the same goal ranges on both objectives r
1
= r
2
and
r
1
=
r
2
. By
doing so, the second non-dominated region from the Pareto example Figure 3.10 suddenly
becomes infeasible, since f
1
rises over
r
1
. Also, the greater part of the rst optimal area
from this example is now infeasible because f
2
drops under r
2
. In the whole domain X of the
optimization problem, only the regions [x
1
, x
2
] and [x
3
, x
4
] fulll all the target criteria. To
these elements, Pareto comparisons are applied. It turns out that the elements in [x
3
, x
4
]
dominate all the elements [x
1
, x
2
] since they provide higher values in f
1
for same values in f
2
.
If we scan through [x
3
, x
4
] from left to right, we see that f
1
rises while f
2
degenerates, which
is why the elements in this area cannot dominat each other and hence, are all optimal.
y
x
1
x
2
x
3
x
4
y=f (x)
1
y=f (x)
2
r ,r
1 2
r ,r
1 2
xX
1
Figure 3.12: Optimization using the Pareto-based Method of Inequalities approach (rst
example).
Example E3.22 (Example E3.7 Cont.: MOI).
In Figure 3.13 we apply the Pareto-based Method of Inequalities to our second graphical
example (Example E3.7). For illustrating purposes, we dene two dierent ranges of interest
[ r
3
,
r
3
] and [ r
4
,
r
4
] on f
3
and f
4
, as sketched in Fig. 3.13.a.
Like we did in the second example for Pareto optimization, we want to plot the quality of
the elements in the problem space. Therefore, we rst assign a number c 1, 2, 3 to each
of its elements in Fig. 3.13.b. This number corresponds to the classes to which the elements
belong, i. e., 1 means that a candidate solution fullls all inequalities, for an element of class
2, at least some of the constraints hold, and the elements in class 3 fail all requirements.
Based on this class division, we can then perform a modied Pareto counting where each
candidate solution dominates all the elements in higher classes Fig. 3.13.c. The result is that
multiple single optima x
1
, x
2
, x
3
, etc., and even a set of adjacent, non-dominated elements
X
9
occurs. These elements are, again, situated at the bottom of the illustrated landscape
whereas the worst candidate solutions reside on hill tops.
74 3 OPTIMA: WHAT DOES GOOD MEAN?
x
2 x
2
x
1
x
1
f
4
f
3
r
3
r
3
r
4
r
4
c
l
a
s
s
1
2
3
Fig. 3.13.b: The Pareto-based Method of Inequalities
class division.
x
2
x
1
X
9
x
1
x
2
x
3
x
4
x
5
x
6
x
7
x
8
#dom
Fig. 3.13.c: The Pareto-based Method of Inequali-
ties ranking.
Figure 3.13: Optimization using the Pareto-based Method of Inequalities approach (rst
example).
3.5. UNIFYING APPROACHES 75
A good overview on techniques for the Method of Inequalities is given by Whidborne et al.
[2924].
3.4.6 Constrained-Domination
The idea of constrained-domination is very similar to the Method of Inequalities but natively
applies to optimization problems as specied in Denition D3.17. Deb et al. [749] dene
this principle which can easily be incorporated into the dominance comparison between any
two candidate solutions. Here, a candidate solutions x
1
X is preferred in comparison to
an element x
2
X [547, 749, 1297] if
1. x
1
is feasible while x
2
is not,
2. x
1
and x
2
both are infeasible but x
1
has a smaller overall constraint violation, or
3. x
1
and x
2
are both feasible but x
1
dominates x
2
.
3.4.7 Limitations and Other Methods
Other approaches for incorporating constraints into optimization are Goal Attainment [951,
2951] and Goal Programming
7
[530, 531]. Especially interesting in our context are methods
which have been integrated into Evolutionary Algorithms [736, 739, 2190, 2393, 2662], such
as the popular Goal Attainment approach by Fonseca and Fleming [951] which is similar to
the Pareto-MOI we have adopted from Pohlheim [2190]. Again, an overview on this subject
is given by Coello Coello et al. in [599].
3.5 Unifying Approaches
3.5.1 External Decision Maker
All approaches for dening what optima are and how constraints should be considered until
now were rather specic and bound to certain mathematical constructs. The more general
concept of an External Decision Maker which (or who) decides which candidate solutions
prevail has been introduced by Fonseca and Fleming [952, 954].
One of the ideas behind externalizing the assessment process on what is good and
what is bad is that Pareto optimization as well as, for instance, the Method of Inequalities,
impose rigid, immutable partial orders
8
on the candidate solutions. The rst drawback of
such a partial order is that elements may exists which neither succeed nor precede each
other. As we have seen in the examples discussed in Section 3.3.5, there can, for instance,
be two candidate solutions x
1
, x
2
X with neither x
1
x
2
nor x
2
x
1
. Since there can be
arbitrarily many such elements, the optimization process may run into a situation where it
set of currently discovered best candidate solutions X grows quickly, which leads to high
memory consumption and declining search speed.
The second drawback of only using rigid partial orders is that they make no statement
of the quality relations within X. There is no best of the best. We cannot decide which
of two candidate solutions not dominating each other is the most interesting one for further
7
http://en.wikipedia.org/wiki/Goal_programming [accessed 2007-07-03]
8
A denition of partial order relations is specied in Denition D51.16 on page 645.
76 3 OPTIMA: WHAT DOES GOOD MEAN?
investigation. Also, the plain Pareto relation does not allow us to dispose the weakest
element from X in order to save memory, since all elements in X are alike.
One example for introducing a quality measure additional to the Pareto relation is the
Pareto ranking which we already used in Example E3.19 and which we will discuss later
in Section 28.3.3 on page 275. Here, the utility of a candidate solution is dened by the
number of other candidate solutions it is dominated by. Into this number, additional den-
sity information which deems areas of X which have only sparsely been sampled as more
interesting than those which have already extensively been investigated.
While such ordering methods are a good default approaches able to direct the search
into the direction of the Pareto frontier and delivering a broad scan of it, they neglect the
fact that the user of the optimization most often is not interested in the whole optimal
set but has preferences, certain regions of interest [955]. This region would exclude, for
example, the infeasible (but Pareto optimal) programs for the Articial Ant as discussed in
Section 3.3.5.1. What the user wants is a detailed scan of these areas, which often cannot
be delivered by pure Pareto optimization.
utility/cost
results
apriori
knowledge
objectivevalues
(acquiredknowledge)
EA
(anoptimizer)
DM
(decisionmaker)
Figure 3.14: An external decision maker providing an Evolutionary Algorithm with utility
values.
Here comes the External Decision Maker as an expression of the users preferences [949]
into play, as illustrated in Figure 3.14. The task of this decision maker is to provide a cost
function u : Rn R (or utility function, if the underlying optimizer is maximizing) which
maps the space of objective values (R
n
) to the real numbers R. Since there is a total order
dened on the real numbers, this process is another way of resolving the incomparability-
situation. The structure of the decision making process u can freely be dened and may
incorporate any of the previously mentioned methods. u could, for example, be reduced
to compute a weighted sum of the objective values, to perform an implicit Pareto ranking,
or to compare individuals based on pre-specied goal-vectors. Furthermore, it may even
incorporate forms of articial intelligence, other forms of multi-criterion Decision Making,
and even interaction with the user (smilar to Example E2.6 on page 48, for instance). This
technique allows focusing the search onto solutions which are not only good in the Pareto
sense, but also feasible and interesting from the viewpoint of the user.
Fonseca and Fleming make a clear distinction between tness and cost values. Cost values
have some meaning outside the optimization process and are based on user preferences.
Fitness values on the other hand are an internal construct of the search with no meaning
outside the optimizer (see Denition D5.1 on page 94 for more details). If External Decision
Makers are applied in Evolutionary Algorithms or other search paradigms based on tness
measures, these will be computed using the values of the cost function instead of the objective
functions [949, 950, 956].
3.5.2 Prevalence Optimization
We have now discussed various ways to dene what optima in terms of multi-objective
optimization are and to steer the search process into their direction. Let us subsume all
3.5. UNIFYING APPROACHES 77
of them in general approach. From the concept of Pareto optimization to the Method of
Inequalities, the need to compare elements of the problem space in terms of their quality
as solution for a given problem winds like a read thread through this matter. Even the
weighted sum approach and the External Decision Maker do nothing else than mapping
multi-dimensional vectors to the real numbers in order to make them comparable.
If we compare two candidate solutions x
1
und x
2
, either x
1
is better than x
2
, vice versa,
or the result is undecidable. In the latter case, we assume that both are of equal quality.
Hence, there are three possible relations between two elements of the problem space. These
two results can be expressed with a comparator function cmp
f
.
Denition D3.18 (Comparator Function). A comparator function cmp : A
2
R
maps all pairs of elements (a
1
, a
2
) A
2
to the real numbers R according to a (strict)
partial order
9
R:
R(a
1
, a
2
) (cmp(a
1
, a
2
) < 0) (cmp(a
2
, a
1
) > 0) a
1
, a
2
A (3.32)
R(a
1
, a
2
) R(a
2
, a
1
) cmp(a
1
, a
2
) = cmp(a
2
, a
1
) = 0 a
1
, a
2
A (3.33)
R(a
1
, a
2
) R(a
1
, a
2
) a
1
, a
2
A (3.34)
cmp(a, a) = 0a A (3.35)
We provide an Java interface for the functionality of a comparator functions in Listing 55.15
on page 719. From the three dening equations, many features of cmp can be deduced.
It is, for instance, transitive, i. e., cmp(a
1
, a
2
) < 0 cmp(a
2
, a
3
) < 0 cmp(a
1
, a
3
)) < 0.
Provided with the knowledge of the objective functions f f , such a comparator function
cmp
f
can be imposed on the problem spaces of our optimization problems:
Denition D3.19 (Prevalence Comparator Function). A prevalence comparator func-
tion cmp
f
: X
2
R maps all pairs (x
1
, x
2
) X
2
of candidate solutions to the real numbers
R according to Denition D3.18.
The subscript f in cmp
f
illustrates that the comparator has access to all the values of the
objective functions in addition to the problem space elements which are its parameters. As
shortcut for this comparator function, we introduce the prevalence notation as follows:
Denition D3.20 (Prevalence). An element x
1
prevails over an element x
2
(x
1
x
2
) if
the application-dependent prevalence comparator function cmp
f
(x
1
, x
2
) R returns a value
less than 0.
x
1
x
2
cmp
f
(x
1
, x
2
) < 0 x
1
, x
2
, X (3.36)
(x
1
x
2
) (x
2
x
3
) x
1
x
3
x
1
, x
2
, x
3
X (3.37)
It is easy to see that we can t lexicographic orderings, Pareto domination relations, the
Method of Inequalities-based comparisons, as well as the weighted sum combination of ob-
jective values easily into this notation. Together with the tness assignment strategies for
Evolutionary Algorithms which will be introduced later in this book (see Section 28.3 on
page 274), it covers many of the most sophisticated multi-objective techniques that are pro-
posed, for instance, in [952, 1531, 2662]. By replacing the Pareto approach with prevalence
comparisons, all the optimization algorithms (especially many of the evolutionary tech-
niques) relying on domination relations can be used in their original form while oering the
additional ability of scanning special regions of interests of the optimal frontier.
9
Partial orders are introduced in Denition D51.15 on page 645.
78 3 OPTIMA: WHAT DOES GOOD MEAN?
Since the comparator function cmp
f
and the prevalence relation impose a partial order
on the problem space X like the domination relation does, we can construct the optimal set
X
x X : x ,= x
x x
(3.38)
For illustration purposes, we will exercise the prevalence approach on the examples of lexico-
graphic optimality (see Section 3.3.2) and dene the comparator function cmp
f ,lex
. For the
weighted sum method with the weights w
i
(see Section 3.3.3) we similarly provide cmp
f ,ws
and the domination-based Pareto optimization with the objective directions
i
as dened
in Section 3.3.5 can be realized with cmp
f ,
.
cmp
f ,lex
(x
1
, x
2
) =
_
_
1 if (1.. [f [) : (x
1
<
lex,
x
2
)
(1.. [f [) : (x
2
<
lex,
x
1
)
1 if (1.. [f [) : (x
2
<
lex,
x
1
)
(1.. [f [) : (x
1
<
lex,
x
2
)
0 otherwise
(3.39)
cmp
f ,ws
(x
1
, x
2
) =
_
_
|f |
i=1
(w
i
f
i
(x
1
) w
i
f
i
(x
2
))
_
_
ws(x
1
) ws(x
2
) (3.40)
cmp
f ,
(x
1
, x
2
) =
_
_
_
1 if x
1
x
2
1 if x
2
x
1
0 otherwise
(3.41)
Example E3.23 (Example E3.5 Articial Ant Cont.).
With the prevalence comparator, we can also easily solve the problem stated in Sec-
tion 3.3.5.1 by no longer encouraging the evolution of useless programs for Articial Ants
while retaining the benets of Pareto optimization. The comparator function can simply
be dened in a way that infeasible candidate solutions will always be prevailed by useful
programs. It therefore may incorporate the knowledge on the importance of the objective
functions. Let f
1
be the objective function with an output proportional to the food piled, f
2
denote the distance covered in order to nd the food, and f
3
be the program length. Equa-
tion 3.42 demonstrates one possible comparator function for the Articial Ant problem.
cmp
f ,ant
(x
1
, x
2
) =
_
_
1 if (f
1
(x
1
) > 0 f
1
(x
2
) = 0)
(f
2
(x
1
) > 0 f
2
(x
2
) = 0)
(f
3
(x
1
) > 0 f
1
(x
2
) = 0)
1 if (f
1
(x
2
) > 0 f
1
(x
1
) = 0)
(f
2
(x
2
) > 0 f
2
(x
1
) = 0)
(f
3
(x
2
) > 0 f
1
(x
1
) = 0)
cmp
f ,
(x
1
, x
2
) otherwise
(3.42)
Later in this book, we will discuss some of the most popular optimization strategies. Al-
though they are usually implemented based on Pareto optimization, we will always introduce
them using prevalence.
3.5. UNIFYING APPROACHES 79
Tasks T3
13. In Example E1.2 on page 26, we stated the layout of circuits as a combinatorial opti-
mization problem. Name at least three criteria which could be subject to optimization
or constraints in this scenario.
[6 points]
14. The job shop scheduling problem was outlined in Example E1.3 on page 26. The most
basic goal when solving job shop problems is to meet all production deadlines. Would
formulate this goal as a constraint or rather as an objective function? Why?
[4 points]
15. Let us consider the university life of a student as optimization problem with the goal
of obtaining good grades in all the subjects she attends. How could be formulate a
(a) single objective function for that purpose, or
(b) a set of objectives which can be optimized with, for example, the Pareto approach.
Additionally, phrase at least two constraints in daily life which, for example, prevent
the student from learning 24 hours per day.
[10 points]
16. Consider a bi-objective optimization problem with X = R as problem space and the two
objective functions f
1
(x) = e
|x3|
and f
2
(x) = [x 100[ both subject to minimization.
What is your opinion about the viability of solving this problem with the weighted
sum approach with both weights set to 1?
[5 points]
17. If we perform Pareto optimization of n = [f [ objective functions f
i
: i 1..n where
each of the objectives can take on m dierent values, there can be at most m
n1
non-dominated candidate solutions at a time. Sketch congurations of m
n1
non-
dominated candidate solutions in diagrams similar to Figure 28.4 on page 276 for
n 1, 2 and m 1, 2, 3, 4. Outline why the sentence also holds for n > 2.
[10 points]
18. In your opinion, is it good if most of the candidate solutions under investigation
by a Pareto-based optimization algorithm are non-dominated? For answering this
question, consider an optimization process that decides which individual should be
used for further investigation solely on basis of its objective values and, hence, the
Pareto dominance relation. Consider the extreme case that all points known to such
an algorithm are non-dominated to answer the question.
Based on your answer, make a statement about the expected impact of the fact dis-
cussed in Task 17 on the quality of solutions that a Pareto-based optimizer can deliver
for rising dimensionality of the objective space, i. e., for increasing values of n = [f [.
[10 points]
19. Use Equation 3.1 to Equation 3.5 from page 52 to determine all extrema (optima) for
(a) f(x) = 3x
5
+ 2x
2
x,
(b) g(x) = 2x
2
+x, and
(c) h(x) = sin x.
[15 points]
Chapter 4
Search Space and Operators: How can we nd it?
4.1 The Search Space
In Section 2.2, we gave various examples for optimization problems, such as from simple
real-valued problems (Example E2.1), antenna design (Example E2.3), and tasks in aircraft
development (Example E2.5). Obviously, the problem spaces X of these problems are quite
dierent. A solution of the stones throw task, for instance, was a real number of meters per
second. An antenna can be described by its blueprint which is structured very dierently
from the blueprints of aircraft wings or rotors.
Optimization algorithms usually start out with a set of either predened or automatically
generated elements from X which are far from being optimal (otherwise, optimization would
make not too much sense). From these initial solutions, new elements from X are explored
in the hope to improve the solution quality. In order to nd these new candidate solutions,
search operators are used which modify or combine the elements already known.
Since the problem spaces of the three aforementioned examples are dierent, this would
mean that dierent sets of search operators are required, too. It would, however, be cumber-
some to develop search operations time and again for each new problem space we encounter.
Such an approach would not only be error-prone, it would also make it very hard to formulate
general laws and to consolidate ndings.
Instead, we often reuse well-known search spaces for many dierent problems. After we
the problem space is dened, we will always look for ways to map it to such a search space
for which search operators are already available. This is not always possible, but in most of
the problems we will encounter, it will save a lot of eort.
Example E4.1 (Search Spaces for Example E2.1, E2.3, and E2.5).
The stones throw as well as many antenna and wing blueprints, for instance, can all be
represented as vectors of real numbers. For the stones throw, these vectors would have
length one (Fig. 4.1.a). An antenna consisting of n segments could be encoded as vector of
length 3n, where the element at index i species a length and i + 1 and i + 2 are angles
denoting into which direction the segment is bent as sketched in Fig. 4.1.b. The aircraft
wing could be represent as vector of length 3n, too, where the element at index i is the
segment width and i + 1 and i + 2 denote its disposition and height (Fig. 4.1.c).
82 4 SEARCH SPACE AND OPERATORS: HOW CAN WE FIND IT?
x=g=(g )
1
Fig. 4.1.a: Stones throw.
g
1
g
4
g
7
g
5
g
8
g
0
g
3
g
6
g
2
g=
g
g
g
g
0
1
2
...
()
Fig. 4.1.b: Antenna design.
g
0
g
3
g
6
g
9
g
1
g
4 g
7
g
10 g
13
g
14
g
11
g
8
g
5
g
2
g=
g
g
g
g
0
1
2
...
()
Fig. 4.1.c: Wing design.
Figure 4.1: Examples for real-coding candidate solutions.
Denition D4.1 (Search Space). The search space G (genome) of an optimization prob-
lem is the set of all elements g which can be processed by the search operations.
In dependence on Genetic Algorithms, we often refer to the search space synonymously as
genome
1
. Genetic Algorithms (see Chapter 29) are optimization algorithms inspired by the
biological evolution. The term genome was coined by the German biologist Winkler [2958]
as a portmanteau of the words gene and chromosome [1701].
2
In biology, the genome is
the whole hereditary information of organisms and the genotype is represents the heredity
information of an individual. Since in the context of optimization we refer to the search
space as genome, we call its elements genotypes.
Denition D4.2 (Genotype). The elements g G of the search space G of a given
optimization problem are called the genotypes.
As said, a biological genotype encodes the complete heredity information of an individual.
Likewise, a genotype in optimization encodes a complete candidate solution. If G ,= X, we
distinguish genotypes g G and phenotypes x X. In Example E4.1, the genomes all are
the vectors of real numbers but the problem spaces are either a velocity, an antenna design,
or a blueprint of a wing.
The elements of the search space rarely are unstructured aggregations. Instead, they
often consist of distinguishable parts, hierarchical units, or well-typed data structures. The
same goes for the chromosomes in biology. They consist of genes
3
, segments of nucleic acid,
which contain the information necessary to produce RNA strings in a controlled manner and
encode phenotypical or metabolical properties. A sh, for instance, may have a gene for the
color of its scales. This gene could have two possible values called alleles
4
, determining
whether the scales will be brown or gray. The Genetic Algorithm community has adopted
this notation long ago and we use it for specifying the detailed structure of the genotypes.
Denition D4.3 (Gene). The distinguishable units of information in genotypes g G
which encode properties of the candidate solutions x X are called genes.
1
http://en.wikipedia.org/wiki/Genome [accessed 2007-07-15]
2
The words gene, genotype, and phenotype have, in turn, been introduced [2957] by the Danish biologist
Johannsen [1448].
3
http://en.wikipedia.org/wiki/Gene [accessed 2007-07-03]
4
http://en.wikipedia.org/wiki/Allele [accessed 2007-07-03]
4.2. THE SEARCH OPERATIONS 83
Denition D4.4 (Allele). An allele is a value of specic gene.
Denition D4.5 (Locus). The locus
5
is the position where a specic gene can be found
in a genotype [634].
Example E4.2 (Small Binary Genome).
Genetic Algorithms are a widely-researched optimization approach which, in its original
form, utilizes bit strings as genomes. Assume that we wished to apply such a plain GA to
the minimization of a function f : (0..3 0..3) R such as the trivial f(x = (x[0], x[1])) =
x[0] x[1] : x[0] X
0
, x[1] X
1
.
genotypeg G
0 1 1 1
0 0 0 0
0 0 0 1
0 0 1 0
1 1 0 1
1 1 1 0
1 1 1 1
...
genome G
2
1
3
0
1 2 3
phenotypex X
x=gpm(g)
searchOp
2
1
3
0
1 2 3
phenome X=X X
0 1
g G
x X
(searchspace) (problemspace) (solutioncandidate)
allele,,11``
atlocus1
2 Gene
nd
allele,,01``
atlocus0
1 Gene
st
X
0
X
0
X
1
X
1
Figure 4.2: The relation of genome, genes, and the problem space.
Figure 4.2 illustrates how this can be achieved by using two bits for each, x[0] and x[1].
The rst gene resides at locus 0 and encodes x[0] whereas the two bits at locus 1 stand for
x[1]. Four bits suce for encoding two natural numbers in X
1
= X
2
= 1..3 and thus, for the
whole candidate solution (phenotype) x. With this trivial encoding, the Genetic Algorithm
can be applied to the problem and will quickly nd the solution x = (0, 3)
4.2 The Search Operations
Denition D4.6 (Search Operation). A search operation searchOp takes a xed
number n N
0
of elements g
1
..g
n
from the search space G as parameter and returns another
element from the search space.
searchOp : G
n
G (4.1)
Search operations are used an optimization algorithm in order to explore the search space.
n is an operator-specic value, its arity
6
. An operation with n = 0, i. e., a nullary operator,
receives no parameters and may, for instance, create randomly congured genotypes (see,
for instance, Listing 55.2 on page 708). An operator with n = 1 could randomly modify
5
http://en.wikipedia.org/wiki/Locus_%28genetics%29 [accessed 2007-07-03]
6
http://en.wikipedia.org/wiki/Arity [accessed 2008-02-15]
84 4 SEARCH SPACE AND OPERATORS: HOW CAN WE FIND IT?
its parameter the mutation operator in Evolutionary Algorithms is an example for this
behavior.
The key idea of all search operations which take at least one parameter (n > 0) (see
Listing 55.3) is that
1. it is possible to take a genotype g of a candidate solution x = gpm(g) with good
objective values f (x) and to
2. modify this genotype g to get a new one g
= searchOp(g, . . .) which
3. can be translated to a phenotype x
= gpm(g
).
This assumption is one of the most basic concepts of iterative optimization algorithms.
It is known as causality or locality and discussed in-depth in Section 14.2 on page 161
and Section 24.9 on page 218. If it does not hold then applying a small change to a genotype
leads to large changes in its utility. Instead modifying a genotype, we then could as well
create a new, random one directly.
Many operations which have n > 1 try to combine the genotypes they receive in the
input. This is done in the hope that positive characteristics of them can be joined into an
even better ospring genotype. An example for such operations is the crossover operator in
Genetic Algorithms. Dierential Evolution utilizes an operator with n = 3, i. e., which takes
three arguments. Here, the idea often is that good can step by step be accumulated and
united by an optimization process. This Building Block Hypothesis is discussed in detail
in Section 29.5.5 on page 346, where also criticism to this point of view is provided.
Search operations often are randomized, i. e., they are not functions in the mathematical
sense. Instead, the return values of two successive invocations of one search operation with
exactly the same parameters may be dierent. Since optimization processes quite often use
more than a single search operation at a time, we dene the set Op.
Denition D4.7 (Search Operation Set). Op is the set of search operations searchOp
Op which are available to an optimization process. Op(g
1
, g
2
, .., g
n
) denotes the application
of any n-ary search operation in Op to the to the genotypes g
1
, g
2
, G.
g
1
, g
2
, .., g
n
G
_
Op(g
1
, g
2
, .., g
n
) G if n-ary operation in Op
Op(g
1
, g
2
, .., g
n
) = otherwise
(4.2)
It should be noted that, if the n-ary search operation from Op which was applied is a random-
ized operator, obviously also the behavior of Op(. . .) is randomized as well. Furthermore,
if more than one n-ary operation is contained in Op, the optimization algorithm using Op
usually performs some form of decision on which operation to apply. This decision may
either be random or follow a specic schedule and the decision making process may even
change during the course of the optimization process. Writing Op(g) in order to denote the
application of a unary search operation from Op to the genotype g G is thus a simplied
expression which encompasses both, possible randomness in the search operations and in
the decision process on which operation to apply.
With Op
k
(g
1
, g
2
, . . .) we denote k successive applications of (possibly dierent) search
operators (with respect to their arities). The k
th
application receives all possible results of
the k-1
th
application of the search operators as parameter, i. e., is dened recursively as
Op
k
(g
1
, g
2
, . . .) =
_
G(P(Op
k1
(g
1
,g
2
,...)))
Op(G) (4.3)
where Op
0
(g
1
, g
2
, . . .) = g
1
, g
2
, . . . , T(G) is the power set of a set G, and (A) is the set
of all possible permutations of the elements of G.
If the parameter g is left away, i. e., just Op
k
is written, this chain has to start with
a search operation with zero arity. In the style of Badea and Stanciu [177] and Skubch
[2516, 2517], we now can dene:
4.3. THE CONNECTION BETWEEN SEARCH AND PROBLEM SPACE 85
Denition D4.8 (Completeness). A set Op of search operations searchOp is complete
if and only if every point g
1
in the search space G can be reached from every other point
g
2
G by applying only operations searchOp Op.
g
1
, g
2
G k N
1
: g
1
Op
k
(g
2
) (4.4)
Denition D4.9 (Weak Completeness). A set Op of search operations searchOp is
weakly complete if every point g in the search space G can be reached by applying only
operations searchOp Op.
g G k N
1
: g Op
k
(4.5)
A weakly complete set of search operations usually contains at least one operation without
parameters, i. e., of zero arity. If at least one such operation exists and this operation can
potentially return all possible genotypes, then the set of search operations is already weakly
complete. However, nullary operations are often only used in the beginning of the search
process (see, for instance, the Hill Climbing Algorithm 26.1 on page 230). If Op achieved its
weak completeness because of a nullary search operation, the initialization of the algorithm
would determine which solutions can be found and which not. If the set of search operations
is strongly complete, the search process, in theory, can nd any solution regardless of the
initialization.
From the opposite point of view, this means that if the set of search operations is not
complete, there are elements in the search space which cannot be reached from a random
starting point. If it is not even weakly complete, parts of the search space can never be
discovered. Then, the optimization process is probably not able to explore the problem
space adequately and may not nd optimal or satisfyingly good solution.
Denition D4.10 (Adjacency (Search Space)). A point g
2
is -adjacent to a point g
1
in the search space G if it can be reached by applying a single search operation searchOp
to g1 with a probability of more than [0, 1). Notice that the adjacency relation is not
necessarily symmetric.
adjacent
(g
2
, g
1
) P (Op(g
1
) = g
2
) > (4.6)
The probability parameter is dened here in order to allow us to dierentiate between
probable and improbable transitions in the search space. Normally, we will use the adjacency
relation with = 0 and abbreviate the notation with adjacent(g
2
, g
1
) adjacent
0
(g
2
, g
1
).
In the case of Genetic Algorithms with, for instance, single-bit ip mutation operators
(see Section 29.3.2.1 on page 330), adjacent(g
2
, g
1
) would be true for all bit strings g
2
which have a Hamming distance of no more than one from g
1
, i. e., which dier by at
most one bit from g
1
. However, if we assume a real-valued search space G = R and a
mutation operator which adds a normally distributed random value to a genotype, then
adjacent(g
2
, g
1
) would always be true, regardless of their distance. The adjacency relation
with = 0 has thus no meaning in this context. If we set to a very small number such
as 1 10
4
, we can get a meaningful impression on how likely it is to discover a point g
2
when starting from g
1
. Furthermore, this denition allows us to reason about limits such as
lim
0
adjacent
(g
2
, g
1
).
4.3 The Connection between Search and Problem Space
If the search space diers from the problem space, a translation between them is furthermore
required. In Example E4.2, we would need to transform the binary strings processed by the
Genetic Algorithm to tuples of natural numbers which can be processed by the objective
functions.
86 4 SEARCH SPACE AND OPERATORS: HOW CAN WE FIND IT?
Denition D4.11 (Genotype-Phenotype Mapping). The genotype-phenotype map-
ping (GPM, or ontogenic mapping [2134]) gpm : G X is a left-total
7
binary relation
which maps the elements of the search space G to elements in the problem space X. In
Section 28.2, you can nd a thorough discussion of dierent types of genotype-phenotype
mappings used in Evolutionary Algorithms.
g G x X : gpm(g) = x (4.7)
In Listing 55.7 on page 711, you can nd a Java interface which resembles Equation 4.7. The
only hard criterion we impose on genotype-phenotype mappings in this book is left-totality,
i. e., that they map each element of the search space to at least one candidate solution. The
GPM may be a functional relation if it is deterministic. Nevertheless, it is possible to create
mappings which involve random numbers and hence, cannot be considered to be functions
in the mathematical sense of Section 51.10 on page 646. In this case, we would rewrite
Equation 4.7 as Equation 4.8:
g G x X : P (gpm(g) = x) > 0 (4.8)
Genotype-phenotype mappings should further be surjective [2247], i. e., relate at least one
genotype to each element of the problem space. Otherwise, some candidate solutions can
never be found and evaluated by the optimization algorithm even if the search operations
are complete. Then, there is no guarantee whether the solution of a given problem can
be discovered or not. If a genotype-phenotype mapping is injective, which means that it
assigns distinct phenotypes to distinct elements of the search space, we say that it is free from
redundancy. There are dierent forms of redundancy, some are considered to be harmful for
the optimization process, others have positive inuence
8
. Most often, GPMs are not bijective
(since they are neither necessarily injective nor surjective). Nevertheless, if a genotype-
phenotype mapping is bijective, we can construct an inverse mapping gpm
1
: X G.
gpm
1
(x) = g gpm(g) = x x X, g G (4.9)
Based on the genotype-phenotype mapping and the denition of adjacency in the search
space given earlier in this section, we can also dene a neighboring relation for the problem
space, which, of course, is also not necessarily symmetric.
Denition D4.12 (Neighboring (Problem Space)). Under the condition that the can-
didate solution x
1
X was obtained from the element g
1
G by applying the genotype-
phenotype mapping, i. e., x
1
= gpm(g
1
), a point x
2
is -neighboring to x
1
if it can be reached
by applying a single search operation and a subsequent genotype-phenotype mapping to g
1
with at least a probability of [0, 1). Equation 4.10 provides a general denition of the
neighboring relation. If the genotype-phenotype mapping is deterministic (which usually is
the case), this denition boils down to Equation 4.11.
neighboring
(x
2
, x
1
)
_
_
g
2
:adjacent
0
(g
2
,g
1
)
P (Op(g
1
) = g
2
) P
_
x
2
= gpm(g
2
)[
Op(g
1
)=g
2
_
_
_
>
x
1
=gpm(g
1
)
(4.10)
neighboring
(x
2
, x
1
)
_
_
_
_
_
_
_
g
2
: adjacent
0
(g
2
, g
1
)
x
2
= gpm(g
2
)
P (Op(g
1
) = g
2
)
_
_
_
_
_
_
_
>
x
1
=gpm(g
1
)
(4.11)
7
See Equation 51.29 on page 644 to Point 5 for an outline of the properties of binary relations.
8
See Section 16.5 on page 174 for more information.
4.3. THE CONNECTION BETWEEN SEARCH AND PROBLEM SPACE 87
The condition x
1
= gpm(g
1
) is relevant if the genotype-phenotype mapping gpm is not
injective (see Equation 51.31 on page 644), i. e., if more than one genotype can map to
the same phenotype. Then, the set of -neighbors of a candidate solution x
1
depends
on how it was discovered, on the genotype g1 it was obtained from, as can be seen in
Example E4.3. Example E5.1 on page 96 shows an account on how the search operations and,
thus, the denition of neighborhood, inuence the performance of an optimization algorithm.
Example E4.3 (Neighborhoods under Non-Injective GPMs).
As an example for neighborhoods under non-injective genotype-phenotype mappings, let
111
011
001
100 101
1 2
110
010
GPM
X
G
ProblemSpace:
Thenaturalnumbers0,1,and2
= 0,1,2 { }
X
X
Genotype-PhenotypeMapping:gpm
gpm(g)=(g +g )
*
g
1 2 3
SearchSpace:
Thebitstringsoflength3
= = 0,1
3 3
{ }
G
G B
0
(g g ,g
1 2 3
, )=g
000
g
A
g
B
Figure 4.3: Neighborhoods under non-injective genotype-phenotype mappings.
us imagine that we have a very simple optimization problem where the problem space
X only consists of the three numbers 0, 1, and 2, as sketched in Figure 4.3. Imagine
further that we would use the bit strings of length three as search space, i. e., G = B
3
=
0, 1
3
. As genotype-phenotype mapping gpm : G X, we would apply the function
x = gpm(g) = (g
1
+ g
2
) g
3
. The two genotypes g
A
= 010 and g
B
= 110 both map to 0
since (0 + 1) 0 = (1 + 1) 0 = 0.
If the only search operation available would be a single-bit ip mutation, then all geno-
types which have a Hamming distance of 1 are adjacent in the search space. This means
that g
A
= 010 is adjacent to 110, 000, and 011 while g
B
= 110 is adjacent to 010, 100, and
111.
The candidate solution x = 0 is neighboring to 0 and 1 if it was obtained by applying the
genotype-phenotype mapping to g
A
= 010. With one search step, gpm(110) = gpm(000) =
0 and gpm(011) = 1 can be reached. However, if x = 0 was the result of by applying the
genotype-phenotype mapping to g
B
= 110, its neighborhood is 0, 2, since gpm(010) =
gpm(100) = 0 and gpm(111) = 2.
Hence, the neighborhood relation under non-injective genotype-phenotype mappings de-
pends on the genotypes from which the phenotypes under investigation originated. For
injective genotype-phenotype mappings, this is not the case.
If the search space G and the problem space X are the same (G = X) and the genotype-
phenotype mapping is the identity mapping, it follows that g
2
= x
2
and the sum in Equa-
tion 4.11 breaks down to P (Op(g
1
) = g
2
). Then the neighboring relation (dened on the
problem space) equals the adjacency relation (dened on the search space), as can be seen
88 4 SEARCH SPACE AND OPERATORS: HOW CAN WE FIND IT?
when taking a look at Equation 4.6. Since the identity mapping is injective, the condition
x
1
= gpm(g
1
) is always true, too.
(G = X) (gpm(g) = g g G) neighboring adjacent (4.12)
In the following, we will use neighboring
l
x
X
N
Figure 4.4: Minima of a single objective function.
be found. Obviously, every global optimum is also a local optimum. In the case of single-
objective minimization, it is also a local minimum, and a global minimum.
In order to dene what a local minimum is, as a rst step, we could say A (local)
minimum x
l
X of one (objective) function f : X R is an input element with f( x
l
) < f(x)
for all x neighboring to x
l
. However, such a denition would disregard locally optimal
plateaus, such as the set X
l
of candidate solutions sketched in Figure 4.4.
If we simply exchange the < in f( x
l
) < f(x) with a and obtain f( x
l
) f(x) however,
we would classify the elements in X
N
as a local optima as well. This would contradict the
intuition, since they are clearly worse than the elements on the right side of X
N
. Hence, a
more ne-grained denition is necessary.
Similar to Handl et al. [1178], let us start with creating a denition of areas in the search
space based on the specication of -neighboring (Denition D4.12).
Denition D4.13 (Connection Set). A set X X is -connected if all of its elements
can be reached from each other with consecutive search steps, each of which having at least
probability [0, 1), i. e., if Equation 4.13 holds.
x
1
,= x
2
neighboring
(x
1
, x
2
) x
1
, x
2
X (4.13)
4.4. LOCAL OPTIMA 89
4.4.1 Local Optima of single-objective Problems
Denition D4.14 (-Local Minimal Set). A -local minimal set
X
l
X under objec-
tive function f and problem space X is a connected set for which Equation 4.14 holds.
neighboring
(x, x
l
)
_
(x
X
l
) (f(x) = f( x
l
))
_
(x ,
X
l
) (f( x
l
) < f(x))
x
l
X
l
, x X
(4.14)
An -local minimum x
l
is an element of an -local minimal set. We will use the term local
minimum set and local minimum to denote scenarios where = 0.
Denition D4.15 (-Local Maximal Set). A -local maximal set
X
l
X under objec-
tive function f and problem space X is a connected set for which Equation 4.15 holds.
neighboring
(x, x
l
)
_
(x
X
l
) (f(x) = f( x
l
))
_
_
(x ,
X
l
) (f( x
l
) > f(x))
_
x
l
X
l
, x X
(4.15)
Again, an -local maximum x
l
is an element of an -local maximal set and we will use the
term local maximum set and local maximum to indicate scenarios where = 0.
Denition D4.16 (-Local Optimal Set (Single-Objective Optimization)). A-local
optimal set X
l
X is either a -local minimum set or a -local maximum set, depending
on the denition of the optimization problem.
Similar to the case of local maxima and minima, we will again use the terms -local optimum,
local optimum set, and local optimum.
4.4.2 Local Optima of Multi-Objective Problems
As basis for the denition of local optima in multi-objective problems we use the prevalence
relations and the concepts provided by Handl et al. [1178]. In Section 3.5.2, we showed
that these encompass the other multi-objective concepts as well. Therefore, in the following
denition, prevails can as well be read as dominates, which is probably the most common
use.
Denition D4.17 (-Local Optimal Set (Multi-Objective Optimization)). A-local
optimal set X
l
X under the prevalence operator and problem space X is a connected
set for which Equation 4.16 holds.
neighboring
(x, x
l
) [(x X
l
) (x x
l
)]
[(x , X
l
) (x
l
x)] x
l
X
l
, x X
(4.16)
Again, we use the term -local optimum to denote candidate solutions which are part of
-local optimal sets. If is omitted in the name, = 0 is assumed. See, for example, Exam-
ple E13.4 on page 158 for an example of local optima in multi-objective problems.
90 4 SEARCH SPACE AND OPERATORS: HOW CAN WE FIND IT?
4.5 Further Denitions
In order to ease the discussions of dierent Global Optimization algorithms, we furthermore
dene the data structure individual, which is the unison of the genotype and phenotype of
an individual.
Denition D4.18 (Individual). An individual p is a tuple p = (p.g, p.x) G X of an
element p.g in the search space G and the corresponding element p.x = gpm(p.g) in the
problem space X.
Besides this basic individual structure, many practical realizations of optimization algo-
rithms use extended variants of such a data structure to store additional information like
the objective and tness values. Then, we will consider individuals as tuples in GXW,
where W is the space of the additional information W = R
n
R, for instance. Such en-
dogenous information [302] often represents local optimization strategy parameters. It then
usually coexists with global (exogenous) conguration settings. In the algorithm denitions
later in this book, we will often access the phenotypes p.x without explicitly referring to
the genotype-phenotype mapping gpm, since gpm is already implicitly included in the
relation of p.x and p.g according to Denition D4.18. Again relating to the notation used
in Genetic Algorithms, we will refer to lists of such individual records as populations.
Denition D4.19 (Population). A population pop is a list consisting of ps individuals
which are jointly under investigation during an optimization process.
pop (GX)
ps
(p = (p.g, p.x) pop p.x = gpm(p.g)) (4.17)
4.5. FURTHER DEFINITIONS 91
Tasks T4
20. Assume that we are car salesmen and search for an optimal conguration for a car.
We have a search space X = X
1
X
2
X
3
X
4
where
X
1
= with climate control, without climate control,
X
2
= with sun roof, without sun roof,
X
3
= 5 gears, 6 gears, automatic 5 gears, automatic 6 gears, and
X
4
= red, blue, green, silver, white, black, yellow.
Dene a proper search space for this problem along with a unary search operation and
a genotype-phenotype mapping.
[10 points]
21. Dene a nullary search operation which creates new random points in the n-
dimensional search space G = 0, 1, 2
n
. A nullary search operation has no parameters
(see Section 4.2). 0, 1, 2
n
denotes a search space which consists of strings of the
length n where each element of the string is from the set 0, 1, 2. An example for
such a string for n = 5 is (1, 2, 1, 1, 0). A nullary search operation here would thus just
create a new, random string of this type.
[5 points]
22. Dene a unary search operation which randomly modies a point in the n-dimensional
search space G = 0, 1, 2
n
See Task 21 for a description of the search space. A unary
search operation for G = 0, 1, 2
n
has one parameter, one string of length n where
each element is from the set 0, 1, 2. A unary search operation takes such a string
g G and modies it. It returns a new string g
l
and one global optimum x
. Between
them, there is a hill, an area of very bad tness. The rest of the problem space exhibits a
small gradient into the direction of its center. The optimization algorithm will likely follow
this gradient and sooner or later discover x
l
or x
l
are higher,
since it is closer to the center of X and thus, has a bigger basin of attraction.
With this setting, we have recorded the traces of two experiments with 1.3 million runs of
the optimizer (8000 iterations each). From these records, we can approximate the problem
landscapes very good.
In the rst experiment, depicted in Figure 5.2, the Hill Climbing optimizer used a search
operation searchOp
1
: X X which creates a new candidate solution according to a (dis-
cretized) normal distribution around the old one. We divided X in a regular lattice and
in the second experiment series, we used an operator searchOp
2
: X X which produces
candidate solutions that are direct neighbors of the old ones in this lattice. The problem
landscape produced by this operator is shown in Figure 5.3. Both operators are complete,
since each point in the search space can be reached from each other point by applying them.
searchOp
1
(x) (x
1
+ randomNorm(0, 1) , x
2
+ randomNorm(0, 1)) (5.4)
searchOp
1
(x) (x
1
+ randomUni[1, 1) , x
2
+ randomUni[1, 1)) (5.5)
In both experiments, the probabilities of the elements in the problem space of being discov-
ered are very low, near to zero, and rather uniformly distributed in the rst few iterations.
To put it precise, since our problem space is a 3636 lattice, this probability is exactly
1
/36
2
in the rst iteration. Starting with the tenth or so evaluation, small peaks begin to form
around the places where the optima are located. These peaks then begin to grow.
5
Hill Climbing algorithms are discussed thoroughly in Chapter 26.
5.3. PROBLEM LANDSCAPES 97
0
0.2
0.4
0.6
0.8
F
(
x
,
0
)
X
Fig. 5.2.a: (x, 1)
0
0.2
0.4
0.6
0.8
F
(
x
,
2
)
X
Fig. 5.2.b: (x, 2)
0
0.2
0.4
0.6
0.8
F
(
x
,
5
)
X
Fig. 5.2.c: (x, 5)
0
0.2
0.4
0.6
0.8
F
(
x
,
1
0
)
X
Fig. 5.2.d: (x, 10)
0
0.2
0.4
0.6
0.8
F
(
x
,
5
0
)
X
Fig. 5.2.e: (x, 50)
0
0.2
0.4
0.6
0.8
F
(
x
,
1
0
0
)
X
Fig. 5.2.f: (x, 100)
0
0.2
0.4
0.6
0.8
F
(
x
,
5
0
0
)
X
Fig. 5.2.g: (x, 500)
0
0.2
0.4
0.6
0.8
F
(
x
,
1
0
0
0
)
X
Fig. 5.2.h: (x, 1000)
0
0.2
0.4
0.6
0.8
F
(
x
,
2
0
0
0
)
X
Fig. 5.2.i: (x, 2000)
0
0.2
0.4
0.6
0.8
F
(
x
,
4
0
0
0
)
X
Fig. 5.2.j: (x, 4000)
0
0.2
0.4
0.6
0.8
F
(
x
,
6
0
0
0
)
X
Fig. 5.2.k: (x, 6000)
0
0.2
0.4
0.6
0.8
F
(
x
,
8
0
0
0
)
X
Fig. 5.2.l: (x, 8000)
Figure 5.2: The problem landscape of the example problem derived with searchOp
1
.
985 FITNESS AND PROBLEM LANDSCAPE: HOW DOES THE OPTIMIZER SEE IT?
0
0.2
0.4
0.6
0.8
F
(
x
,
0
)
X
Fig. 5.3.a: (x, 1)
0
0.2
0.4
0.6
0.8
F
(
x
,
2
)
X
Fig. 5.3.b: (x, 2)
0
0.2
0.4
0.6
0.8
F
(
x
,
5
)
X
Fig. 5.3.c: (x, 5)
0
0.2
0.4
0.6
0.8
F
(
x
,
1
0
)
X
Fig. 5.3.d: (x, 10)
0
0.2
0.4
0.6
0.8
F
(
x
,
5
0
)
X
Fig. 5.3.e: (x, 50)
0
0.2
0.4
0.6
0.8
F
(
x
,
1
0
0
)
X
Fig. 5.3.f: (x, 100)
0
0.2
0.4
0.6
0.8
F
(
x
,
5
0
0
)
X
Fig. 5.3.g: (x, 500)
0
0.2
0.4
0.6
0.8
F
(
x
,
1
0
0
0
)
X
Fig. 5.3.h: (x, 1000)
0
0.2
0.4
0.6
0.8
F
(
x
,
2
0
0
0
)
X
Fig. 5.3.i: (x, 2000)
0
0.2
0.4
0.6
0.8
F
(
x
,
4
0
0
0
)
X
Fig. 5.3.j: (x, 4000)
0
0.2
0.4
0.6
0.8
F
(
x
,
6
0
0
0
)
X
Fig. 5.3.k: (x, 6000)
0
0.2
0.4
0.6
0.8
F
(
x
,
8
0
0
0
)
X
Fig. 5.3.l: (x, 8000)
Figure 5.3: The problem landscape of the example problem derived with searchOp
2
.
5.3. PROBLEM LANDSCAPES 99
Since the local optimum x
l
resides at the center of a large basin and the gradients point
straight into its direction, it has a higher probability of being found than the global optimum
x
. The dierence between the two search operators tested becomes obvious starting with
approximately the 2000th iteration. The process with the operator utilizing the normal
distribution, the value of the global optimum begins to rise farther and farther, nally
surpassing the one of the local optimum. Even if the optimizer gets trapped in the local
optimum, it will still eventually discover the global optimum and if we ran this experiment
longer, the according probability would have converge to 1. The reason for this is that with
the normal distribution, all points in the search space have a non-zero probability of being
found from all other points in the search space. In other words, all elements of the search
space are adjacent.
The operator based on the uniform distribution is only able to create candidate solutions
in the direct neighborhood of the known points. Hence, if an optimizer gets trapped in the
local optimum, it can never escape. If it arrives at the global optimum, it will never discover
the local one. In Fig. 5.3.l, we can see that (x
l
, 8000) 0.7 and (x
, 8000) 0.3. In
other words, only one of the two points will be the result of the optimization process whereas
the other optimum remains undiscovered.
From Example E5.1 we can draw four conclusions:
1. Optimization algorithms discover good elements with higher probability than elements
with bad characteristics, given the problem is dened in a way which allows this to
happen.
2. The success of optimization depends very much on the way the search is conducted,
i. e., the denition of neighborhoods of the candidate solutions (see Denition D4.12
on page 86).
3. It also depends on the time (or the number of iterations) the optimizer allowed to use.
4. Hill Climbing algorithms are no Global Optimization algorithms since they have no
general means of preventing getting stuck at local optima.
1005 FITNESS AND PROBLEM LANDSCAPE: HOW DOES THE OPTIMIZER SEE IT?
Tasks T5
29. What is are the similarities and dierences between tness values and traditional
heuristic values?
[10 points]
30. For many (single-objective) applications, a tness assignment process which assigns
the rank of an individual p in a population pop according to the objective value f(p.x)
of its phenotype p.x as its tness v(p) is highly useful. Specify an algorithm for such
an assignment process which sorts the individuals in a list (population pop) according
to their objective value and assigns the index of an individual in this sorted list as its
tness.
Should the individuals be sorted in ascending or descending order if f is subject to
maximization and the tness v is subject to minimization?
[10 points]
Chapter 6
The Structure of Optimization: Putting it together.
After discussing the single entities involved in optimization, it is time to put them together
to the general structure common to all optimization processes, to an overall picture. This
structure consists of the previously introduced well-dened spaces and sets as well as the
mappings between them. One example for this structure of optimization processes is given in
Figure 6.1 by using a Genetic Algorithm which encodes the coordinates of points in a plane
into bit strings as an illustration. The same structure was already used in Example E4.2.
6.1 Involved Spaces and Sets
At the lowest level, there is the search space G inside which the search operations navigate.
Optimization algorithms can usually only process a subset of this space at a time. The
elements of G are mapped to the problem space X by the genotype-phenotype mapping
gpm. In many cases, gpm is the identity mapping (if G = X) or a rather trivial, injective
transformation. Together with the elements under investigation in the search space, the
corresponding candidate solutions form the population pop of the optimization algorithm.
A population may contain the same individual record multiple times if the algorithm
permits this. Some optimization methods only process one candidate solution at a time.
In this case, the size of pop is one and a single variable instead of a list data structure is
used to hold the elements data. Having determined the corresponding phenotypes of the
genotypes produced by the search operations, the objective functions(s) can be evaluated.
In the single-objective case, a single value f(p.x) determines the utility of p.x. In case
of a multi-objective optimization, on the other hand, a vector f (p.x) of objective values
is computed for each candidate solution p.x in the population. Based on these objective
values, the optimizer may compute a real tness v(p) denoting how promising an individual
p is for further investigation, i. e., as parameter for the search operations, relative to the
other known candidate solutions in the population pop. Either based on such a tness value,
directly on the objective values, or on other criteria, the optimizer will then decide how to
proceed, how to generate new points in G.
102 6 THE STRUCTURE OF OPTIMIZATION: PUTTING IT TOGETHER.
(1,3)
(3,3)
(0,2)
(0,2)
(0,2)
(0,2) (0,0) (0,1) (0,2) (0,3)
(1,0) (1,1) (1,2) (1,3)
(2,0) (2,1) (2,2) (2,3)
(3,0) (3,1) (3,2) (3,3)
ProblemSpace X
SearchSpace G
0100
1010
1100 1101
0000 1000 1001
0101
0110 1110 1111 0111
0001
0010 0011 1011
ObjectiveSpace Y R
n
FitnessSpace R
+
(0,0) (0,1) (0,3)
(1,0) (1,1) (1,2) (1,3)
(2,0) (2,1) (2,2) (2,3)
(3,0) (3,1) (3,2) (3,3)
Population (Phenotypes)
Population (Genotypes)
ObjectiveValues
FitnessValues
1111
1111
1110
1000
0100
0111
0111
0010
0010
0010
0010
1111
f
i
t
n
e
s
s
f
(
x
)
1
f
(
x
)
1
Pop( ) G X
ps
Fi tness and heuri sti c val ues
(normally)haveonlyameaninginthe
context of a population or a set of
solution candidates..............................
optimal
solutions
f: XY Y R ( )
n
v: G X R
+
TheInvolvedSpaces TheInvolvedSets/Elements
FitnessAssignmentProcess FitnessAssignmentProcess
Genotype-PhenotypeMapping
ObjectiveFunction(s)
Genotype-PhenotypeMapping
ObjectiveFunction(s)
Pop ( ) G X
ps
l
if granted innite processing time and if such an
optimum exists. Usual prerequisites for eective problem solving are a weakly complete
set of search operations Op, a surjective genotype-phenotype mapping gpm, and that the
objective functions f do provide more information than needle-in-a-haystack congurations
(see Section 16.7 on page 175).
x
l
X : lim
(x
l
, ) = 1 (6.1)
From an abstract perspective, an optimization algorithm is characterized by
104 6 THE STRUCTURE OF OPTIMIZATION: PUTTING IT TOGETHER.
1. the way it assigns tness to the individuals,
2. the ways it selects them for further investigation,
3. the way it applies the search operations, and
4. the way it builds and treats its state information.
The best optimization algorithm for a given setup OptSetup is the one with the highest values
of (x
(x
1
, ) > lim
(x
2
, ) (6.2)
6.3 Other General Features
There are some further common semantics and operations that are shared by most optimiza-
tion algorithms. Many of them, for instance, start out by randomly creating some initial
individuals which are then rened iteratively. Optimization processes which are not allowed
to run innitely have to nd out when to terminate. In this section we dene and discuss
general abstractions for such similarities.
6.3.1 Gradient Descend
Denition D6.4 (Gradient). A gradient
1
of a scalar mathematical function (scalar eld)
f : R
n
R is a vector function (vector eld) which points into the direction of the greatest
increase of the scalar eld. It is denoted by f or grad(f).
lim
h0
[[f (x +h) f (x) grad(f)(x) h[[
[[h[[
= 0 (6.3)
In other words, if we have a dierentiable smooth function with low total variation
2
[2224],
the gradient would be the perfect hint for optimizer, giving the best direction into which
the search should be steered. What many optimization algorithms which treat objective
functions as black boxes do is to use rough estimations of the gradient for this purpose. The
Downhill Simplex (see Chapter 43 on page 501), for example, uses a polytope consisting of
n + 1 points in G = R
n
for approximating the direction with the steepest descend.
In most cases, we cannot directly dierentiate the objective functions with the Nabla op-
erator
3
f because its exact mathematical characteristics are not known or too complicated.
Also, the search space G is often not a vector space over the real numbers R.
Thus, samples of the search space are used to approximate the gradient. If we compare
two elements g
1
and g
2
via their corresponding phenotypes x
1
= gpm(g
1
) and x
2
= gpm(g
2
)
and nd x
1
x
2
, we can assume that there is some sort of gradient facing upwards from
x
1
to x
2
and hence, from g
1
to g
2
. When descending this gradient, we can hope to nd an
x
3
with x
3
x
1
and nally the global minimum.
1
http://en.wikipedia.org/wiki/Gradient [accessed 2007-11-06]
2
http://en.wikipedia.org/wiki/Total_variation [accessed 2009-07-01]
3
http://en.wikipedia.org/wiki/Del [accessed 2008-02-15]
6.3. OTHER GENERAL FEATURES 105
6.3.2 Iterations
Global optimization algorithms often proceed iteratively and step by step evaluate candi-
date solutions in order to approach the optima. We distinguish between evaluations and
iterations t.
Denition D6.5 (Evaluation). The value N
0
denotes the number of candidate solu-
tions for which the set of objective functions f has been evaluated.
Denition D6.6 (Iteration). An iteration
4
refers to one round in a loop of an algorithm.
It is one repetition of a specic sequence of instructions inside of the algorithm.
Algorithms are referred to as iterative if most of their work is done by cyclic repetition of
one main loop. In the context of this book, an iterative optimization algorithm starts with
the rst step t = 0. The value t N
0
is the index of the iteration currently performed by
the algorithm and t + 1 refers to the following step. One example for iterative algorithm
is Algorithm 6.1. In some optimization algorithms like Genetic Algorithms, for instance,
iterations are referred to as generations.
There often exists a well-dened relation between the number of performed evaluations
of candidate solutions and the index of the current iteration t in an optimization pro-
cess: Many Global Optimization algorithms create and evaluate exactly a certain number
of individuals per generation.
6.3.3 Termination Criterion
The termination criterion terminationCriterion
__
is a function with access to all the infor-
mation accumulated by an optimization process, including the number of performed steps
t, the objective values of the best individuals, and the time elapsed since the start of the
process. With terminationCriterion
__
, the optimizers determine when they have to halt.
Denition D6.7 (Termination Criterion). When the termination criterion function
terminationCriterion true, false evaluates to true, the optimization process will
stop and return its results.
In Listing 55.9 on page 712, you can nd a Java interface resembling Denition D6.7. Some
possible criteria that can be used to decide whether an optimizer should terminate or not
are [2160, 2622, 3088, 3089]:
1. The user may grant the optimization algorithm a maximum computation time. If this
time has been exceeded, the optimizer should stop. Here we should note that the time
needed for single individuals may vary, and so will the times needed for iterations.
Hence, this time threshold can sometimes not be abided exactly and may avail to
dierent total numbers of iterations during multiple runs of the same algorithm.
2. Instead of specifying a time limit, an upper limit for the number of iterations
t or
individual evaluations
integrateintorealapplication
afewrunsperconfiguration
Choosesearchspace,searchoperations,
andmappingtoproblemspace.
Areresults
satisfying?
yes
no
Aretherededi-
catedalgorithms?
no
yes
Usededicatedalgorithm!
Figure 7.2:
7 SOLVING AN OPTIMIZATION PROBLEM 111
7. Dene a genotype-phenotype mapping gpm between the search space G and the
problem space X (see Section 4.3).
8. Dene the set searchOperations of search operations searchOp Op navigating in
the search space (see Section 4.2). This decision may again be directly implied by the
choice in Point 5.
9. Congure the optimization algorithm, i. e., set all its parameters to values which look
reasonable.
10. Run a small-scale test with the algorithm and the settings and test, whether they
approximately meet the expectations. If not, go back to Point 9, 5, or even Point 1,
depending on how bad the results are. Otherwise, continue at Point 11
11. Conduct experiments with some dierent congurations and perform many runs for
each conguration. Obtain enough results to make statistical comparisons between
the congurations and with other algorithms (see e.g., Section 53.7). If the results are
bad, again consider to go back to a previous step.
12. Now either the results of the optimizer can be used and published or the developed
optimization system can become part of an application (see Part V and [2912] as an
example), depending on the goal of the work.
112 7 SOLVING AN OPTIMIZATION PROBLEM
Tasks T7
31. Why is it important to always look for traditional dedicated and deterministic alterna-
tives before trying to solve an optimization problem with a metaheuristic optimization
algorithm?
[5 points]
32. Why is a single experiment with a randomized optimization algorithm not enough to
show that this algorithm is good (or bad) for solving a given optimization task? Why
do we need comprehensive experiments instead, as pointed out in Point 11 on the
previous page?
[5 points]
Chapter 8
Baseline Search Patterns
Metaheuristic optimization algorithms trade in the guaranteed optimality of their results for
shorter runtime. This means that their results can be (but not necessarily are) worse than
the global optima of a given optimization problem. The results are acceptable as long as the
user is satised with them. An interesting question, however, is When is an optimization
algorithm suitable for a given problem?. The answer to this question is strongly related to
how well it can utilize the information it gains during the optimization process in order to
nd promising regions in the search space.
The primary information source for any optimizer is the (set of) objective functions.
Hence, it makes sense to declare an optimization algorithm as ecient if it can outperform
primitive approaches which do not utilize the information gained from evaluating candidate
solutions with objective functions, such as the random sampling and random walk methods
which will be introduced in this chapter. The comparison criterion should be the solution
quality in terms of objective values.
Denition D8.1 (Eectiveness). An optimization algorithm is eective if it can (statis-
tically signicantly) outperform random sampling and random walks in terms of solution
quality according to the objective functions.
A third baseline algorithm is exhaustive enumeration, the testing of all possible solutions. It
does not utilize the information gained from the objective functions as well. It can be used
as a yardstick in terms of optimization speed.
Denition D8.2 (Eciency). An optimization algorithm is ecient if it can meet the
criterion of eectiveness (Denition D8.1) with a lower-than-exponential algorithmic com-
plexity (see Section 12.1 on page 143), i. e., within fewer steps than required by exhaustive
enumeration.
8.1 Random Sampling
Random sampling is the most basic search approach. It is uninformed, i. e., does not make
any use of the information it can obtain from evaluating candidate solutions with the objec-
tive functions. As sketched in Algorithm 8.1 and implemented in Listing 56.4 on page 729,
it keeps creating genotypes of random conguration until the termination criterion is met.
In every iteration, it therefore utilizes the nullary search operation create which builds
a genotype p.g G with a random conguration and maps this genotype to a phenotype
p.x X with the genotype-phenotype mapping gpm. It checks whether the new pheno-
type is better than the best candidate solution discovered so far (x). If so, it is stored in
x.
114 8 BASELINE SEARCH PATTERNS
Algorithm 8.1: x randomSampling(f)
Input: f: the objective/tness function
Data: p: the current individual
Output: x: the result, i. e., the best candidate solution discovered
1 begin
2 x
3 repeat
4 p.g create
__
5 p.x gpm(p.g)
6 if (x = ) (f(p.x) < f(x)) then
7 x p.x
8 until terminationCriterion
__
9 return x
Notice that x is the only variable used for information aggregation and that there is
no form of feedback. The search makes no use of the knowledge about good structures of
candidate solutions nor does it further investigate a genotype which has produced a good
phenotype. Instead, if create samples the search space G in a uniform, unbiased way,
random sampling will be completely unbiased as well.
This unbiasedness and ignorance of available information turns random sampling into
one of the baseline algorithms used for checking whether an optimization method is suitable
for a given problem. If an optimization algorithm does not perform better than random
sampling on a given optimization problem, we can deduce that (a) it is not able to utilize the
information gained from the objective function(s) eciently (see Chapter 14 and 16), (b) its
search operations cannot modify existing genotypes in a useful manner (see Section 14.2),
or (c) the information given by the objective functions is largely misleading (see Chapter 15)..
It is well known as the No Free Lunch Theorem (see Chapter 23), that averaged over the set
of all possible optimization problems, no optimization algorithm can beat random sampling.
However, for specic families of problems and for most practically relevant problems in
general, outperforming random sampling is not too complicated. Still, a comparison to this
primitive algorithm is necessary whenever a new, not yet analyzed optimization task is to
be solved.
8.2 Random Walks
Like random sampling, random walks
1
[899, 1302, 2143] (sometimes also called drunkards
walks) can be considered as an uninformed, undirected search methods. They form the
second one of the two baseline algorithms to which optimization methods must be compared
for specic problems in order to test their utility. We specify the random walk algorithm in
Algorithm 8.2 and implement it in Listing 56.5 on page 732.
While random sampling algorithms make use of no information gathered so far, random
walks base their next search move on the most recently investigated genotype p.g. Instead
of sampling the search space uniformly as random sampling does, a random walk starts at one
(possibly random) point. In each iteration, it uses a unary search operation (in Algorithm 8.2
simply denoted as searchOp(p.g)) to move to the next point.
Because of this structure, random walks are quite similar in their structure to basic
optimization algorithms such as Hill Climbing (see Chapter 26). The dierence is that
optimization algorithms make use of the information they gain by evaluating the candidate
1
http://en.wikipedia.org/wiki/Random_walk [accessed 2010-08-26]
8.2. RANDOM WALKS 115
Algorithm 8.2: x randomWalk(f)
Input: f: the objective/tness function
Data: p: the current individual
Output: x: the result, i. e., the best candidate solution discovered
1 begin
2 x
3 p.g create
__
4 repeat
5 p.x gpm(p.g)
6 if (x = ) (f(p.x) < f(x)) then
7 x p.x
8 p.g searchOp(p.g)
9 until terminationCriterion
__
10 return x
solutions with the objective functions. In any useful conguration for optimization problems
which are not too ill-dened, they should thus be able to outperform random walks and
random sampling.
In cases where they cannot, applying one of these two uninformed, primitive strategies is
advised. Better yet, since optimization methods always introduce some bias into the search
process, always try to steer into the direction of the search space where they expected a
tness improvement, random walk or random sampling may even outperform them if the
problems are deceptive enough (see Chapter 15). Circumstances where random walks can
be the search algorithms of choice are, for example,
1. if a search algorithm encounters a state explosion because there are too many states
and transcending to them would consume too much memory.
2. In certain cases of online search it is not possible to apply systematic approaches
like breadth-rst search or depth-rst search. If the environment, for instance, is only
partially observable and each state transition represents an immediate interaction with
this environment, we are maybe not able to navigate to past states again. One example
for such a case is discussed in the work of Skubch [2516, 2517] about reasoning agents.
Random walks are often used in optimization theory for determining features of a tness
landscape. Measures that can be derived mathematically from a walk model include esti-
mates for the number of steps needed until a certain conguration is found, the chance to
nd a certain conguration at all, and the average dierence of the objective values of two
consecutive populations. From practically running random walks, some information about
the search space can be extracted. Skubch [2516, 2517], for instance, uses the number of en-
counters of certain state transition during the walk in order to successively build a heuristic
function.
Figure 8.1 illustrates some examples for random walks. The subgures 8.1.a to 8.1.c
each illustrate three random walks in which axis-parallel steps of length 1 are taken. The
dimensions range from 1 to 3 from the left to the right. The same goes for Fig. 8.1.d to
Fig. 8.1.f, each of which displaying three random walks with Gaussian (standard-normally)
distributed step widths and arbitrary step directions.
8.2.1 Adaptive Walks
An adaptive walk is a theoretical optimization method which, like a random walk, usually
works on a population of size 1. It starts at a random location in the search space and pro-
116 8 BASELINE SEARCH PATTERNS
s
t
e
p
s
Fig. 8.1.a: 1d, step length 1 Fig. 8.1.b: 2d, axis-parallel,
step length 1
Fig. 8.1.c: 3d, axis-parallel,
step length 1
s
t
e
p
s
Fig. 8.1.d: 1d, Gaussian step
length
Fig. 8.1.e: 2d, arbitrary angle,
Gaussian step length
Fig. 8.1.f: 3d, arbitrary angle,
Gaussian step length
Figure 8.1: Some examples for random walks.
ceeds by changing (or mutating) its single individual. For this modication, three methods
are available:
1. One-mutant change: The optimization process chooses a single new individual from
the set of one-mutant change neighbors. These neighbors dier from the current
candidate solution in only one property, i. e., are in its = 0-neighborhood. If the new
individual is better, it replaces its ancestor, otherwise it is discarded.
2. Greedy dynamics: The optimization process chooses a single new individual from the
set of one-mutant change neighbors. If it is not better than the current candidate
solution, the search continues until a better one has been found or all neighbors have
been enumerated. The major dierence to the previous form is the number of steps
that are needed per improvement.
3. Fitter Dynamics: The optimization process enumerates all one-mutant neighbors of
the current candidate solution and transcends to the best one.
From these elaborations, it becomes clear that adaptive walks are very similar to Hill Climb-
ing and Random Optimization. The major dierence is that an adaptive walk is a theoreti-
cal construct that, very much like random walks, helps us to determine properties of tness
landscapes whereas the other two are practical realizations of optimization algorithms.
Adaptive walks are a very common construct in evolutionary biology. Biological
populations are running for a very long time and so their genetic compositions are as-
sumed to be relatively converged [79, 1057]. The dynamics of such populations in near-
equilibrium states with low mutation rates can be approximated with one-mutant adaptive
walks [79, 1057, 2528].
8.3 Exhaustive Enumeration
Exhaustive enumeration is an optimization method which is as same as primitive as random
walks. It can be applied to any nite search space and basically consists of testing every single
8.3. EXHAUSTIVE ENUMERATION 117
possible solution for its utility, returning the best candidate solution discovered after all have
been tested. If the minimum possible objective value y is known for a given minimization
problem, the algorithm can also terminate sooner.
Algorithm 8.3: x exhaustiveSearch(f, y)
Input: f: the objective/tness function
Input: y: the lowest possible objective value, if unknown
Data: x: the current candidate solution
Data: t: the iteration counter
Output: x: the result, i. e., the best candidate solution discovered
1 begin
2 x gpm(G[0])
3 t 1
4 while (t < [G[) (f(x) > y) do
5 x gpm(G[t])
6 if f(x) > f(x) then x x
7 t t + 1
8 return x
Algorithm 8.3 contains a denition of the exhaustive search algorithm. It is based on the
assumption that the search space G can be traversed in a linear order, where the t
th
element
in the search space can be accessed as G[t]. The second parameter of the algorithm is the
lower limit y of the objective value. If this limit is known, the algorithm may terminate
before traversing the complete search space if it discovers a global optimum with f(x) = y
earlier. If no lower limit for f is known, y = can be provided.
It is interesting to see that for many hard problems such as AT-complete ones (Sec-
tion 12.2.2), no algorithms are known which can generally be faster than exhaustive enu-
meration. For an input size of n, algorithms for such problems need O(2
n
) iterations.
Exhaustive search requires exactly the same complexity. If G = B
n
, i. e., the bit strings of
length n, the algorithm will need exactly 2
n
steps if no lower limit y for the value of f is
known.
118 8 BASELINE SEARCH PATTERNS
Tasks T8
33. What is are the similarities and dierences between random walks, random sampling,
and adaptive walks?
[10 points]
34. Why should we consider an optimization algorithm as ineective for a given problem
if it does not perform better than random sampling or a random walk on the problem?
[5 points]
35. Is it possible that an optimization algorithm such as, for example, Algorithm 1.1 on
page 40 may give us even worse results than a random walk or random sampling? Give
reasons. If yes, try to nd a problem (problem space, objective function) where this
could be the case.
[5 points]
36. Implement random sampling for the bin packing problem as a comparison algorithm
for Algorithm 1.1 on page 40 and test it on the same problem instances used to
verify Task 4 on page 42. Discuss your results.
[10 points]
37. Compare your answers to Task 35 and 36. Is the experiment in Task 36 suitable
to validate your hypothesis? If not, can you nd some instances of the bin packing
problem where it can be used to verify your idea? If so, apply both Algorithm 1.1
on page 40 and your random sampling implementation to these instances. Did the
experiments support your hypothesis?
[15 points]
38. Can we implement an exhaustive search pattern to the nd the minimum of a math-
ematical function f dened over the real interval (1, 1)? Answer this question both
from
(a) a theoretical-mathematical perspective in an idealized execution environment
(i. e., with innite precision) and
(b) from a practical point of view based on real-world computers and requirements
(i. e., under the assumption that the available precision of oating point numbers
and of any given production process is limited).
[10 points]
39. Implement an exhaustive-search based optimization procedure for the bin packing
problem as a comparison algorithm for Algorithm 1.1 on page 40 and test it on the
same problem instances used to verify Task 4 on page 42 and 36. Discuss your results.
[10 points]
40. Implement an exhaustive search pattern to solve the instance of the Traveling Salesman
Problem given in Example E2.2 on page 45.
[10 points]
Chapter 9
Forma Analysis
The Schema Theorem has been stated for Genetic Algorithms by Holland [1250] in its seminal
work [711, 1250, 1253]. In this section, we are going to discuss it in the more general version
from Weicker [2879] as introduced by Radclie and Surry [22412243, 2246, 2634].
Denition D9.1 (Property). A property is a function which maps individuals, geno-
types, or phenotypes to a set of possible property values.
Each individual p in the population pop of an optimization algorithm is characterized by
its properties . Optimizers focus mainly on the phenotypical properties since these are
evaluated by the objective functions. In the forma analysis, the properties of the genotypes
are considered as well, since they inuence the features of the phenotypes via the genotype-
phenotype mapping. With Example E9.1, we want to clarify how possible properties could
look like.
Example E9.1 (Examples for Properties).
A rather structural property
1
of formulas z : R R in symbolic regression
1
would be
whether it contains the mathematical expression x + 1 or not:
1
: X true, false.
We can also declare a behavioral property
2
which is true if [z(0) 1[ 0.1 holds, i. e., if
the result of z is close to a value 1 for the input 0, and false otherwise:
2
= [z(0) 1[
0.1 z X.
Assume that the optimizer uses a binary search space G = B
n
and that the formulas
z are decoded from there to trees that represent mathematical expression by a genotype-
phenotype mapping. A genotypical
3
property then would be if a certain sequence of bits
occurs in the genotype p.g and another phenotypical property
4
is the number of nodes in
the phenotype p.x, for instance.
If we try to solve a graph-coloring problem, for example, a property
5
: X
black, white, gray could denote the color of a specic vertex q as illustrated in Figure 9.1.
In general, we can consider properties
i
to be some sort of functions that map the
individuals to property values.
1
and
2
both map the space of mathematical functions to
the set B = true, false whereas
5
maps the space of all possible colorings for the given
graph to the set white, gray, black and property f
4
maps trees to the natural numbers.
1
More information on symbolic regression can be found in Section 49.1 on page 531.
120 9 FORMA ANALYSIS
Af
5
=white
Af
5
=black
q
G
1
q
G
3
q
G
2
q
G
4
q
G
6
q
G
7
q
G
8
q
G
5
Af
5
=gray
Pop
( = )
X
G X
Figure 9.1: An graph coloring-based example for properties and formae.
On the basis of the properties
i
we can dene equivalence relations
2
i
:
p
1
i
p
2
i
(p
1
) =
i
(p
2
) p
1
, p
2
GX (9.1)
Obviously, for each two candidate solutions x
1
and x
2
, either x
1
i
x
2
or x
1
i
x
2
holds.
These relations divide the search space into equivalence classes A
i
=v
.
Denition D9.2 (Forma). An equivalence class A
i
=v
that contains all the individuals
sharing the same characteristic v in terms of the property
i
is called a forma [2241] or
predicate [2826].
A
i
=v
= p GX :
i
(p) = v (9.2)
p
1
, p
2
A
i
=v
p
1
i
p
2
(9.3)
The number of formae induced by a property, i. e., the number of its dierent characteristics,
is called its precision [2241]. Two formae A
i
=v
and A
j
=w
are said to be compatible, written
as A
i
=v
A
j
=w
, if there can exist at least one individual which is an instance of both.
A
i
=v
A
j
=w
A
i
=v
A
j
=w
,= (9.4)
A
i
=v
A
j
=w
p GX : p A
i
=v
p A
j
=w
(9.5)
A
i
=v
A
i
=w
w = v (9.6)
Of course, two dierent formae of the same property
i
, i. e., two dierent characteristics of
i, are always incompatible.
Example E9.2 (Examples for Formae (Example E9.1 Cont.)).
The precision of
1
and
2
in Example E9.1 is 2, for
5
it is 3. We can dene another
property
6
z(0) denoting the value a mathematical function has for the input 0. This
property would have an uncountable innitely large precision.
2
See the denition of equivalence classes in Section 51.9 on page 646.
9 FORMA ANALYSIS 121
z (x)=x+1
1
z (x)=x +1.1
2
2
z (x)=
3
x+2
z (x)=2(
4
x+1)
z (x)=(sin x)(x+1)
6
z (x)=(cos x)(x+1)
7
z (x)=(tan x)+1
8
z (x)=tan x
5
z
1
z
4
z
6
z
7
Af
1
=true
z
2
z
3
z
8
z
5
Af
1
=false
z
1 z
2
z
7
z
8
Af
2
=true
z
3
z
4
z
6
z
5
Af
2
=false
Af
4
=1
z
1
z
2
z
7
z
8
Af
4
=0
z
6
z
5
z
3
z
4
Af
4
=2
~
f
1
~
f
2
~
f
6
Af
4
=1.1
Pop
( = )
X
G X
Figure 9.2: Example for formae in symbolic regression.
In our initial symbolic regression example A
1
=true
, A
1
=false
holds, since it is not
possible that a function z contains a term x + 1 and at the same time does not contain
it. All formae of the properties
1
and
2
on the other hand are compatible: A
1
=false
A
2
=false
, A
1
=false
A
2
=true
, A
1
=true
A
2
=false
, and A
1
=true
A
2
=true
all
hold. If we take
6
into consideration, we will nd that there exist some formae compatible
with some of
2
and some that are not, like A
2
=true
A
6
=1
and A
2
=false
A
6
=2
, but
A
2
=true
, A
6
=0
and A
2
=false
, A
6
=0.95
.
The discussion of forma and their dependencies stems from the Evolutionary Algorithm
community and there especially from the supporters of the Building Block Hypothesis.
The idea is that an optimization algorithm should rst discover formae which have a good
inuence on the overall tness of the candidate solutions. The hope is that there are many
compatible ones under these formae that can gradually be combined in the search process.
In this text we have dened formae and the corresponding terms on the basis of individ-
uals p which are records that assign an element of the problem spaces p.x X to an element
of the search space p.g G. Generally, we will relax this notation and also discuss forma
directly in the context of the search space G or problem space X, when appropriate.
122 9 FORMA ANALYSIS
Tasks T9
41. Dene at least three reasonable properties on the individuals, genotypes, or phenotypes
of the Traveling Salesman Problem as introduced in Example E2.2 on page 45 and
further discussed in Task 26 on page 91.
[6 points]
42. List the relevant forma for each of the properties you have dened in based on your
denitions in Task 41 and in Task 26 on page 91.
[12 points]
43. List all the members of your forma given in Task 42 for the Traveling Salesman Problem
instance provided in Table 2.1 on page 46.
[10 points]
Chapter 10
General Information on Optimization
10.1 Applications and Examples
Table 10.1: Applications and Examples of Optimization.
Area References
Art see Tables 28.4, 29.1, and 31.1
Astronomy see Table 28.4
Business-To-Business see Table 3.1
Chemistry [623]; see also Tables 3.1, 22.1, 28.4, 29.1, 30.1, 31.1, 32.1,
40.1, and 43.1
Cloud Computing [2301, 2790, 3022, 3047]
Combinatorial Problems [5, 17, 115, 118, 130, 131, 178, 213, 241, 250, 251, 265, 315,
431, 432, 463, 475, 497, 533, 568, 571, 576, 578, 626628,
671, 680, 682, 783, 806, 822825, 832, 868, 1008, 1026, 1027,
1042, 1089, 1091, 1096, 1124, 1239, 1264, 1280, 1308, 1313,
1472, 1497, 1501, 1502, 1533, 1585, 1625, 1694, 1723, 1724,
1834, 1850, 1851, 1879, 1998, 2000, 2066, 2124, 2131, 2132,
2172, 2219, 2223, 2248, 2256, 2257, 2261, 2262, 22882290,
2330, 2422, 2449, 2508, 2511, 2512, 2667, 2673, 2692, 2717,
2812, 2813, 2817, 2885, 2900, 2990, 3016, 3017, 3047]; see
also Tables 3.1, 3.2, 18.1, 20.1, 22.1, 25.1, 26.1, 27.1, 28.4,
29.1, 30.1, 31.1, 33.1, 34.1, 35.1, 36.1, 37.1, 38.1, 39.1, 40.1,
41.1, 42.1, 46.1, 46.3, 47.1, and 48.1
124 10 GENERAL INFORMATION ON OPTIMIZATION
Computer Graphics [45, 327, 450, 844, 1224, 2506]; see also Tables 3.1, 3.2, 20.1,
27.1, 28.4, 29.1, 30.1, 31.1, 33.1, and 36.1
Control [1922]; see also Tables 28.4, 29.1, 31.1, 32.1, and 35.1
Cooperation and Teamwork [2238]; see also Tables 22.1, 28.4, 29.1, 31.1, and 37.1
Data Compression see Table 31.1
Data Mining [37, 40, 92, 115, 126, 189, 203, 217, 277, 281, 305, 310, 406,
450, 538, 656, 766, 805, 849, 889, 930, 961, 968, 975, 983,
991, 1035, 1036, 1100, 1168, 1176, 1194, 1259, 1425, 1503,
1959, 2070, 2088, 2202, 2234, 2272, 2312, 2319, 2357, 2459,
2506, 2602, 2671, 2788, 2790, 2824, 2839, 2849, 2939, 2961,
2999, 3047, 3066, 3077, 3078, 3103]; see also Tables 3.1, 20.1,
21.1, 22.1, 27.1, 28.4, 29.1, 31.1, 32.1, 34.1, 35.1, 36.1, 37.1,
39.1, and 46.3
Databases [115, 130, 131, 213, 533, 568, 571, 783, 991, 1096, 1308, 1585,
2692, 2824, 2971, 3016, 3017]; see also Tables 3.1, 3.2, 21.1,
26.1, 27.1, 28.4, 29.1, 31.1, 35.1, 36.1, 37.1, 39.1, 40.1, 46.3,
and 47.1
Decision Making [1194]; see also Tables 3.1, 3.2, 20.1, and 31.1
Digital Technology see Tables 3.1, 26.1, 28.4, 29.1, 30.1, 31.1, 34.1, and 35.1
Distributed Algorithms and Sys-
tems
[127, 204, 226, 330333, 492, 495, 506, 533, 565, 576, 617,
628, 650, 671, 822, 823, 1101, 1168, 1280, 1342, 1425, 1472,
1497, 1561, 1645, 1647, 1650, 1690, 1777, 1850, 1851, 1998,
2000, 2066, 2070, 2172, 2202, 2238, 2256, 2257, 2301, 2319,
2330, 2375, 2511, 2512, 2602, 2638, 2716, 2790, 2839, 2878,
2990, 3017, 3022, 3058]; see also Tables 3.1, 3.2, 18.1, 21.1,
22.1, 25.1, 26.1, 27.1, 28.4, 29.1, 30.1, 31.1, 32.1, 33.1, 34.1,
35.1, 36.1, 37.1, 39.1, 40.1, 41.1, 46.1, 46.3, and 47.1
E-Learning [506, 565, 2319]; see also Tables 28.4, 29.1, 37.1, and 39.1
Economics and Finances [204, 281, 310, 559, 1194, 1998, 2257, 2301, 2330, 2878, 3022];
see also Tables 3.1, 3.2, 27.1, 28.4, 29.1, 31.1, 33.1, 35.1, 36.1,
37.1, 39.1, 40.1, 46.1, and 46.3
Engineering [189, 199, 312, 1101, 1194, 1219, 1227, 1431, 1690, 1777, 2088,
2375, 2459, 2716, 2839, 2878, 3004, 3047, 3077, 3078]; see also
Tables 3.1, 3.2, 18.1, 21.1, 22.1, 26.1, 27.1, 28.4, 29.1, 30.1,
31.1, 32.1, 33.1, 34.1, 35.1, 36.1, 37.1, 39.1, 40.1, 41.1, 46.3,
and 47.1
Face Recognition [471]
Function Optimization [72, 613, 1136, 1137, 1188, 1942, 2333, 2708]; see also Tables
3.2, 21.1, 26.1, 27.1, 28.4, 29.1, 30.1, 32.1, 33.1, 34.1, 35.1,
36.1, 39.1, 40.1, 41.1, and 43.1
Games [1954, 23832385]; see also Tables 3.1, 28.4, 29.1, 31.1, and
32.1
Graph Theory [241, 576, 628, 650, 1219, 1263, 1472, 1625, 1690, 2172, 2375,
2716, 2839]; see also Tables 3.1, 18.1, 21.1, 22.1, 25.1, 26.1,
27.1, 28.4, 29.1, 30.1, 31.1, 33.1, 34.1, 35.1, 36.1, 37.1, 38.1,
39.1, 40.1, 41.1, 46.1, 46.3, and 47.1
Healthcare [45, 3103]; see also Tables 28.4, 29.1, 31.1, 35.1, 36.1, and
37.1
Image Synthesis [1637]; see also Tables 18.1 and 28.4
Logistics [118, 178, 241, 250, 251, 265, 495, 497, 578, 627, 680, 806,
824, 825, 832, 868, 1008, 1027, 1089, 1091, 1124, 1313, 1501,
1625, 1694, 1723, 1724, 1777, 2131, 2132, 2248, 2261, 2262,
22882290, 2508, 2673, 2717, 2812, 2813, 2817, 3047]; see
also Tables 3.1, 18.1, 22.1, 25.1, 26.1, 27.1, 28.4, 29.1, 30.1,
33.1, 34.1, 36.1, 37.1, 38.1, 39.1, 40.1, 41.1, 46.3, 47.1, and
48.1
10.2. BOOKS 125
Mathematics [405, 766, 930, 1020, 2200, 2349, 2357, 2418, 2572, 2885, 2939,
3078]; see also Tables 3.1, 18.1, 26.1, 27.1, 28.4, 29.1, 30.1,
31.1, 32.1, 33.1, 34.1, and 35.1
Military and Defense see Tables 3.1, 26.1, 27.1, 28.4, and 34.1
Motor Control see Tables 18.1, 22.1, 28.4, 33.1, 34.1, 36.1, and 39.1
Multi-Agent Systems [1818, 2081, 2667, 2919]; see also Tables 3.1, 18.1, 22.1, 28.4,
29.1, 31.1, 35.1, and 37.1
Multiplayer Games [127]; see also Table 31.1
News Industry [1425]
Nutrition [2971]
Operating Systems [2900]
Physics [1879]; see also Tables 3.1, 27.1, 28.4, 29.1, 31.1, 32.1, and
34.1
Police and Justice [471]
Prediction [405]; see also Tables 28.4, 29.1, 30.1, 31.1, and 35.1
Security [2459, 2878, 3022]; see also Tables 3.1, 22.1, 26.1, 27.1, 28.4,
29.1, 31.1, 35.1, 36.1, 37.1, 39.1, 40.1, and 46.3
Shape Synthesis see Table 26.1
Software [822, 823, 827, 1008, 1027, 1168, 1651, 1850, 1851, 2000, 2066,
2131, 2132, 2330, 2961, 2971, 3058]; see also Tables 3.1, 18.1,
20.1, 21.1, 22.1, 25.1, 26.1, 27.1, 28.4, 29.1, 30.1, 31.1, 33.1,
34.1, 36.1, 37.1, 40.1, 46.1, and 46.3
Sorting see Tables 28.4 and 31.1
Telecommunication see Tables 28.4, 37.1, and 40.1
Testing [1168, 1651]; see also Tables 3.1, 28.4, and 31.3
Theorem Proong and Automatic
Verication
see Tables 29.1, 40.1, and 46.3
Water Supply and Management see Tables 3.1 and 28.4
Wireless Communication [1219]; see also Tables 3.1, 18.1, 22.1, 26.1, 27.1, 28.4, 29.1,
31.1, 33.1, 34.1, 35.1, 36.1, 37.1, 39.1, 40.1, and 46.3
10.2 Books
1. Handbook of Evolutionary Computation [171]
2. New Ideas in Optimization [638]
3. Scalable Optimization via Probabilistic Modeling From Algorithms to Applications [2158]
4. Handbook of Metaheuristics [1068]
5. New Optimization Techniques in Engineering [2083]
6. Metaheuristics for Multiobjective Optimisation [1014]
7. Selected Papers from the Workshop on Pattern Directed Inference Systems [2869]
8. Applications of Multi-Objective Evolutionary Algorithms [597]
9. Handbook of Applied Optimization [2125]
10. The Traveling Salesman Problem: A Computational Study [118]
11. Intelligent Systems for Automated Learning and Adaptation: Emerging Trends and Applica-
tions [561]
12. Optimization and Operations Research [773]
13. Readings in Articial Intelligence: A Collection of Articles [2872]
14. Machine Learning: Principles and Techniques [974]
15. Experimental Methods for the Analysis of Optimization Algorithms [228]
16. Evolutionary Multiobjective Optimization Theoretical Advances and Applications [8]
17. Evolutionary Algorithms for Solving Multi-Objective Problems [599]
18. Pareto Optimality, Game Theory and Equilibria [560]
19. Pattern Classication [844]
20. The Traveling Salesman Problem: A Guided Tour of Combinatorial Optimization [1694]
21. Parallel Evolutionary Computations [2015]
22. Introduction to Global Optimization [2126]
126 10 GENERAL INFORMATION ON OPTIMIZATION
23. Global Optimization Algorithms Theory and Application [2892]
24. Computational Intelligence in Control [1922]
25. Introduction to Operations Research [580]
26. Management Models and Industrial Applications of Linear Programming [530]
27. Ecient and Accurate Parallel Genetic Algorithms [477]
28. Swarm Intelligence Focus on Ant and Particle Swarm Optimization [525]
29. Nonlinear Programming: Sequential Unconstrained Minimization Techniques [908]
30. Nonlinear Programming: Sequential Unconstrained Minimization Techniques [909]
31. Global Optimization: Deterministic Approaches [1271]
32. Soft Computing: Methodologies and Applications [1242]
33. Handbook of Global Optimization [1272]
34. New Learning Paradigms in Soft Computing [1430]
35. How to Solve It: Modern Heuristics [1887]
36. Numerical Optimization [2040]
37. Articial Intelligence: A Modern Approach [2356]
38. Electromagnetic Optimization by Genetic Algorithms [2250]
39. Soft Computing: Integrating Evolutionary, Neural, and Fuzzy Systems [2685]
40. Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations
[2961]
41. Multi-Objective Swarm Intelligent Systems: Theory & Experiences [2016]
42. Evolutionary Optimization [2394]
43. Rule-Based Evolutionary Online Learning Systems: A Principled Approach to LCS Analysis
and Design [460]
44. Multi-Objective Optimization in Computational Intelligence: Theory and Practice [438]
45. An Operations Research Approach to the Economic Optimization of a Kraft Pulping Process
[500]
46. Fundamental Methods of Mathematical Economics [559]
47. Einf uhrung in die K unstliche Intelligenz [797]
48. Stochastic and Global Optimization [850]
49. Machine Learning Applications in Expert Systems and Information Retrieval [975]
50. Nonlinear and Dynamics Programming [1162]
51. Introduction to Operations Research [1232]
52. Introduction to Stochastic Search and Optimization [2561]
53. Nonlinear Multiobjective Optimization [1893]
54. Heuristics: Intelligent Search Strategies for Computer Problem Solving [2140]
55. Global Optimization with Non-Convex Constraints [2623]
56. The Nature of Statistical Learning Theory [2788]
57. Advances in Greedy Algorithms [247]
58. Multiobjective Decision Making Theory and Methodology [528]
59. Multiobjective Optimization: Principles and Case Studies [609]
60. Multi-Objective Optimization Using Evolutionary Algorithms [740]
61. Multicriteria Optimization [860]
62. Multiple Criteria Optimization: Theory, Computation and Application [2610]
63. Global Optimization [2714]
64. Soft Computing [760]
10.3 Conferences and Workshops
Table 10.2: Conferences and Workshops on Optimization.
10.3. CONFERENCES AND WORKSHOPS 127
IJCAI: International Joint Conference on Articial Intelligence
History: 2009/07: Pasadena, CA, USA, see [373]
2007/01: Hyderabad, India, see [2797]
2005/07: Edinburgh, Scotland, UK, see [1474]
2003/08: Acapulco, Mexico, see [1118, 1485]
2001/08: Seattle, WA, USA, see [2012]
1999/07: Stockholm, Sweden, see [730, 731, 2296]
1997/08: Nagoya, Japan, see [1946, 1947, 2260]
1995/08: Montreal, QC, Canada, see [1836, 1861, 2919]
1993/08: Chambery, France, see [182, 183, 927, 2259]
1991/08: Sydney, NSW, Australia, see [831, 1987, 1988, 2122]
1989/08: Detroit, MI, USA, see [2593, 2594]
1987/08: Milano, Italy, see [1846, 1847]
1985/08: Los Angeles, CA, USA, see [1469, 1470]
1983/08: Karlsruhe, Germany, see [448, 449]
1981/08: Vancouver, BC, Canada, see [1212, 1213]
1979/08: Tokyo, Japan, see [2709, 2710]
1977/08: Cambridge, MA, USA, see [2281, 2282]
1975/09: Tbilisi, Georgia, USSR, see [2678]
1973/08: Stanford, CA, USA, see [2039]
1971/09: London, UK, see [630]
1969/05: Washington, DC, USA, see [2841]
AAAI: Annual National Conference on Articial Intelligence
History: 2011/08: San Francisco, CA, USA, see [3]
2010/07: Atlanta, GA, USA, see [2]
2008/06: Chicago, IL, USA, see [979]
2007/07: Vancouver, BC, Canada, see [1262]
2006/07: Boston, MA, USA, see [1055]
2005/07: Pittsburgh, PA, USA, see [1484]
2004/07: San Jose, CA, USA, see [1849]
2002/07: Edmonton, Alberta, Canada, see [759]
2000/07: Austin, TX, USA, see [1504]
1999/07: Orlando, FL, USA, see [1222]
1998/07: Madison, WI, USA, see [1965]
1997/07: Providence, RI, USA, see [1634, 1954]
1996/08: Portland, OR, USA, see [586, 2207]
1994/07: Seattle, WA, USA, see [1214]
1993/07: Washington, DC, USA, see [913]
1992/07: San Jose, CA, USA, see [2639]
1991/07: Anaheim, CA, USA, see [732]
1990/07: Boston, MA, USA, see [793]
1988/08: St. Paul, MN, USA, see [1916]
1987/07: Seattle, WA, USA, see [960]
128 10 GENERAL INFORMATION ON OPTIMIZATION
1986/08: Philadelphia, PA, USA, see [1512, 1513]
1984/08: Austin, TX, USA, see [381]
1983/08: Washington, DC, USA, see [1041]
1982/08: Pittsburgh, PA, USA, see [2845]
1980/08: Stanford, CA, USA, see [197]
HIS: International Conference on Hybrid Intelligent Systems
History: 2011/12: Melaka, Malaysia, see [14]
2010/08: Atlanta, GA, USA, see [1377]
2009/08: Shenyang, Liaonng, China, see [1375]
2008/10: Barcelona, Catalonia, Spain, see [2993]
2007/09: Kaiserslautern, Germany, see [1572]
2006/12: Auckland, New Zealand, see [1340]
2005/11: Rio de Janeiro, RJ, Brazil, see [2014]
2004/12: Kitakyushu, Japan, see [1421]
2003/12: Melbourne, VIC, Australia, see [10]
2002/12: Santiago, Chile, see [9]
2001/12: Adelaide, SA, Australia, see [7]
IAAI: Conference on Innovative Applications of Articial Intelligence
History: 2011/08: San Francisco, CA, USA, see [4]
2010/07: Atlanta, GA, USA, see [2361]
2009/07: Pasadena, CA, USA, see [1164]
2006/07: Boston, MA, USA, see [1055]
2005/07: Pittsburgh, PA, USA, see [1484]
2004/07: San Jose, CA, USA, see [1849]
2003/08: Acapulco, Mexico, see [2304]
2001/04: Seattle, WA, USA, see [1238]
2000/07: Austin, TX, USA, see [1504]
1999/07: Orlando, FL, USA, see [1222]
1998/07: Madison, WI, USA, see [1965]
1997/07: Providence, RI, USA, see [1634]
1996/08: Portland, OR, USA, see [586]
1995/08: Montreal, QC, Canada, see [51]
1994/08: Seattle, WA, USA, see [462]
1993/07: Washington, DC, USA, see [1]
1992/07: San Jose, CA, USA, see [2439]
1991/06: Anaheim, CA, USA, see [2533]
1990/05: Washington, DC, USA, see [2269]
1989/03: Stanford, CA, USA, see [2428]
ICCI: IEEE International Conference on Cognitive Informatics
History: 2011/08: Ban, AB, Canada, see [200]
2010/07: Beijng, China, see [2630]
2009/06: Kowloon, Hong Kong / Xi angg ang, China, see [164]
2008/08: Stanford, CA, USA, see [2857]
2007/08: Lake Tahoe, CA, USA, see [3065]
2006/07: Beijng, China, see [3029]
2005/08: Irvine, CA, USA, see [1339]
10.3. CONFERENCES AND WORKSHOPS 129
2004/08: Victoria, Canada, see [524]
2003/08: London, UK, see [2133]
2002/08: Calgary, AB, Canada, see [1337]
ICML: International Conference on Machine Learning
History: 2011/06: Seattle, WA, USA, see [2442]
2010/06: Haifa, Israel, see [1163]
2009/06: Montreal, QC, Canada, see [681]
2008/07: Helsinki, Finland, see [603]
2007/06: Corvallis, OR, USA, see [1047]
2006/06: Pittsburgh, PA, USA, see [602]
2005/08: Bonn, North Rhine-Westphalia, Germany, see [724]
2004/07: Ban, AB, Canada, see [426]
2003/08: Washington, DC, USA, see [895]
2002/07: Sydney, NSW, Australia, see [2382]
2001/06: Williamstown, MA, USA, see [427]
2000/06: Stanford, CA, USA, see [1676]
1999/06: Bled, Slovenia, see [401]
1998/07: Madison, WI, USA, see [2471]
1997/07: Nashville, TN, USA, see [926]
1996/07: Bari, Italy, see [2367]
1995/07: Tahoe City, CA, USA, see [2221]
1994/07: New Brunswick, NJ, USA, see [601]
1993/06: Amherst, MA, USA, see [1945]
1992/07: Aberdeen, Scotland, UK, see [2520]
1991/06: Evanston, IL, USA, see [313]
1990/06: Austin, TX, USA, see [2206]
1989/06: Ithaca, NY, USA, see [2447]
1988/06: Ann Arbor, MI, USA, see [1659, 1660]
1987: Irvine, CA, USA, see [1415]
1985: Skytop, PA, USA, see [2519]
1983: Monticello, IL, USA, see [1936]
1980: Pittsburgh, PA, USA, see [2183]
MCDM: Multiple Criteria Decision Making
History: 2011/06: Jyv askyl a, Finland, see [1895]
2009/06: Chengd u, S`chuan, China, see [2750]
2008/06: Auckland, New Zealand, see [861]
2006/06: Chania, Crete, Greece, see [3102]
2004/08: Whistler, BC, Canada, see [2875]
2002/02: Semmering, Austria, see [1798]
2000/06: Ankara, Turkey, see [1562]
1998/06: Charlottesville, VA, USA, see [1166]
1997/01: Cape Town, South Africa, see [2612]
1995/06: Hagen, North Rhine-Westphalia, Germany, see [891]
1994/08: Coimbra, Portugal, see [592]
1992/07: Taipei, Taiwan, see [2744]
1990/08: Fairfax, VA, USA, see [2551]
130 10 GENERAL INFORMATION ON OPTIMIZATION
1988/08: Manchester, UK, see [1759]
1986/08: Kyoto, Japan, see [2410]
1984/06: Cleveland, OH, USA, see [1165]
1982/08: Mons, Brussels, Belgium, see [1190]
1980/08: Newark, DE, USA, see [1960]
1979/08: Hagen/Konigswinter, West Germany, see [890]
1977/08: Bualo, NY, USA, see [3094]
1975/05: Jouy-en-Josas, France, see [2701]
SEAL: International Conference on Simulated Evolution and Learning
History: 2012/12: Hanoi, Vietnam, see [1179]
2010/12: Kanpur, Uttar Pradesh, India, see [2585]
2008/12: Melbourne, VIC, Australia, see [1729]
2006/10: Hefei,
Anhu, China, see [2856]
2004/10: Busan, South Korea, see [2123]
2002/11: Singapore, see [2661]
2000/10: Nagoya, Japan, see [1991]
1998/11: Canberra, Australia, see [1852]
1996/11: Taejon, South Korea, see [2577]
AI: Australian Joint Conference on Articial Intelligence
History: 2010/12: Adelaide, SA, Australia, see [33]
2006/12: Hobart, Australia, see [2406]
2005/12: Sydney, NSW, Australia, see [3072]
2004/12: Cairns, Australia, see [2871]
AISB: Articial Intelligence and Simulation of Behaviour
History: 2008/04: Aberdeen, Scotland, UK, see [1147]
2007/04: Newcastle upon Tyne, UK, see [2549]
2005/04: Bristol, UK and Hateld, England, UK, see [2547, 2548]
2003/03: Aberystwyth, Wales, UK and Leeds, UK, see [2545, 2546]
2002/04: London, UK, see [2544]
2001/03: Heslington, York, UK, see [2759]
2000/04: Birmingham, UK, see [2748]
1997/04: Manchester, UK, see [637]
1996/04: Brighton, UK, see [938]
1995/04: Sheeld, UK, see [937]
1994/04: Leeds, UK, see [936]
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
History: 2010/12: Boston, MA, USA, see [367]
2009/12: Avignon, France, see [1275]
2008/11: Awaji City, Hyogo, Japan, see [153]
2007/12: Budapest, Hungary, see [1342]
2006/12: Cavalese, Italy, see [509]
ICARIS: International Conference on Articial Immune Systems
History: 2011/07: Cambridge, UK, see [1203]
2010/07: Edinburgh, Scotland, UK, see [858]
2009/08: York, UK, see [2363]
2008/08: Phuket, Thailand, see [274]
10.3. CONFERENCES AND WORKSHOPS 131
2007/08: Santos, Brazil, see [707]
2006/09: Oeiras, Portugal, see [282]
2005/08: Ban, AB, Canada, see [1424]
2004/09: Catania, Sicily, Italy, see [2035]
2003/09: Edinburgh, Scotland, UK, see [2706]
: Canterbury, Kent, UK, see [2705]
MICAI: Mexican International Conference on Articial Intelligence
History: 2010/11: Pachuca, Mexico, see [2583]
2009/11: Guanajuato, Mexico, see [38]
2007/11: Aguascalientes, Mexico, see [1037]
2005/11: Monterrey, Mexico, see [1039]
2004/04: Mexico City, Mexico, see [1929]
2002/04: Merida, Yucat an, Mexico, see [598]
2000/04: Acapulco, Mexico, see [470]
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
History: 2011/10: Cluj-Napoca, Romania, see [2576]
2010/05: Granada, Spain, see [1102]
2008/11: Puerto de la Cruz, Tenerife, Spain, see [1620]
2007/11: Catania, Sicily, Italy, see [1619]
2006/06: Granada, Spain, see [2159]
SMC: International Conference on Systems, Man, and Cybernetics
History: 2014/10: San Diego, CA, USA, see [2386]
2013/10: Edinburgh, Scotland, UK, see [859]
2012/10: Seoul, South Korea, see [2454]
2011/10: Anchorage, AK, USA, see [91]
2009/10: San Antonio, TX, USA, see [1352]
2001/10: Tucson, AZ, USA, see [1366]
1999/10: Tokyo, Japan, see [1331]
1998/10: La Jolla, CA, USA, see [1364]
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
History: 2010/11: see [1029]
2009/11: see [1015]
2008/11: see [1857]
2007/10: see [151]
2006/09: see [2980]
2005: see [2979]
2004: see [2978]
2003: see [2977]
2002: see [2976]
2001: see [2975]
2000: see [2974]
1999/09: Nagoya, Japan, see [1993]
1998/08: Nagoya, Japan, see [1992]
1997/06: see [535]
1996/08: Nagoya, Japan, see [1001]
AIMS: Articial Intelligence in Mobile System
132 10 GENERAL INFORMATION ON OPTIMIZATION
History: 2003/10: Seattle, WA, USA, see [1624]
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
History: 2008/10: Cergy-Pontoise, France, see [3049]
2005/05: Muroran, Japan, see [11]
ECML: European Conference on Machine Learning
History: 2007/09: Warsaw, Poland, see [2866]
2006/09: Berlin, Germany, see [278]
2005/10: Porto, Portugal, see [2209]
2004/09: Pisa, Italy, see [2182]
2003/09: Cavtat, Dubrovnik, Croatia, see [512]
2002/08: Helsinki, Finland, see [1221]
2001/09: Freiburg, Germany, see [992]
2000/05: Barcelona, Catalonia, Spain, see [215]
1998/04: Chemnitz, Sachsen, Germany, see [537]
1997/04: Prague, Czech Republic, see [2781]
1995/04: Heraclion, Crete, Greece, see [1223]
1994/04: Catania, Sicily, Italy, see [507]
1993/04: Vienna, Austria, see [2809]
EPIA: Portuguese Conference on Articial Intelligence
History: 2011/10: Lisbon, Portugal, see [1744]
2009/10: Aveiro, Portugal, see [1774]
2007/12: Guimaraes, Portugal, see [2026]
2005/12: Covilh a, Portugal, see [275]
EUFIT: European Congress on Intelligent Techniques and Soft Computing
History: 1999/09: Aachen, North Rhine-Westphalia, Germany, see [2807]
1998/09: Aachen, North Rhine-Westphalia, Germany, see [2806]
1997/09: Aachen, North Rhine-Westphalia, Germany, see [3091]
1996/09: Aachen, North Rhine-Westphalia, Germany, see [877]
1995/08: Aachen, North Rhine-Westphalia, Germany, see [2805]
1994/09: Aachen, North Rhine-Westphalia, Germany, see [2803]
1993/09: Aachen, North Rhine-Westphalia, Germany, see [2804]
EngOpt: International Conference on Engineering Optimization
History: 2010/09: Lisbon, Portugal, see [1405]
2008/06: Rio de Janeiro, RJ, Brazil, see [1227]
GEWS: Grammatical Evolution Workshop
See Table 31.2 on page 385.
HAIS: International Workshop on Hybrid Articial Intelligence Systems
History: 2011/05: Warsaw, Poland, see [2867]
2009/06: Salamanca, Spain, see [2749]
2008/09: Burgos, Spain, see [632]
2007/11: Salamanca, Spain, see [631]
2006/10: Ribeirao Preto, SP, Brazil, see [184]
ICAART: International Conference on Agents and Articial Intelligence
History: 2011/01: Rome, Italy, see [1404]
2010/01: Val`encia, Spain, see [917]
10.3. CONFERENCES AND WORKSHOPS 133
2009/01: Porto, Portugal, see [916]
ICTAI: International Conference on Tools with Articial Intelligence
History: 2003/11: Sacramento, CA, USA, see [1367]
IEA/AIE: International Conference on Industrial and Engineering Applications of Articial Intel-
ligence and Expert Systems
History: 2004/05: Ottawa, ON, Canada, see [2088]
ISA: International Workshop on Intelligent Systems and Applications
History: 2011/05: W uh`an, H ubei, China, see [1380]
2010/05: W uh`an, H ubei, China, see [2846]
2009/05: W uh`an, H ubei, China, see [2847]
ISICA: International Symposium on Advances in Computation and Intelligence
History: 2007/09: W uh`an, H ubei, China, see [1490]
LION: Learning and Intelligent OptimizatioN
History: 2011/01: Rome, Italy, see [2318]
2010/01: Venice, Italy, see [2581]
2009/01: Trento, Italy, see [2625]
2007/02: Andalo, Trento, Italy, see [1273, 1826]
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
History: 2010/09: St Andrews, Scotland, UK, see [780]
2009/09: Lisbon, Portugal, see [779]
2008/09: Sydney, NSW, Australia, see [2011]
2007/09: Providence, RI, USA, see [2225]
2006/09: Nantes, France, see [583]
2005/10: Barcelona, Catalonia, Spain, see [1860]
2004/09: Toronto, ON, Canada, see [2715]
SoCPaR: International Conference on SOft Computing and PAttern Recognition
History: 2011/10: D` ali an, Liaonng, China, see [1381]
2010/12: Cergy-Pontoise, France, see [515]
2009/12: Malacca, Malaysia, see [1224]
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
History: 1992/09: Tutzing, Germany, see [2742]
1989: Germany, see [245]
1986/07: Neubiberg, Bavaria, Germany, see [244]
1983/06: Neubiberg, Bavaria, Germany, see [243]
AINS: Annual Symposium on Autonomous Intelligent Networks and Systems
History: 2003/06: Menlo Park, CA, USA, see [513]
ALIO/EURO: Workshop on Applied Combinatorial Optimization
History: 2011/05: Porto, Portugal, see [138]
2008/12: Buenos Aires, Argentina, see [137]
2005/10: Paris, France, see [136]
2002/11: Pucon, Chile, see [135]
1999/11: Erice, Italy, see [134]
1996/11: Valparaso, Chile, see [133]
1989/08: Rio de Janeiro, RJ, Brazil, see [132]
ANZIIS: Australia and New Zealand Conference on Intelligent Information Systems
History: 1994/11: Brisbane, QLD, Australia, see [1359]
134 10 GENERAL INFORMATION ON OPTIMIZATION
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
History: 2002/07: Ban, AB, Canada, see [1714]
EDM: International Conference on Educational Data Mining
History: 2009/07: Cordoba, Spain, see [217]
EWSL: European Working Session on Learning
Continued as ECML in 1993.
History: 1991/03: Porto, Portugal, see [1560]
1988/10: Glasgow, Scotland, UK, see [1061]
1987/05: Bled, Yugoslavia (now Slovenia), see [322]
1986/02: Orsay, France, see [2097]
FLAIRS: Florida Articial Intelligence Research Symposium
History: 1994/05: Pensacola Beach, FL, USA, see [1360]
FWGA: Finnish Workshop on Genetic Algorithms and Their Applications
See Table 29.2 on page 355.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
History: 2006/12: Vienna, Austria, see [2024]
ICMLC: International Conference on Machine Learning and Cybernetics
History: 2005/08: Guangzhou, Guangd ong, China, see [2263]
IICAI: Indian International Conference on Articial Intelligence
History: 2011/12: Tumkur, India, see [2736]
2009/12: Tumkur, India, see [2217]
2007/12: Pune, India, see [2216]
2005/12: Pune, India, see [2215]
2003/12: Hyderabad, India, see [2214]
ISIS: International Symposium on Advanced Intelligent Systems
History: 2007/09: Sokcho, Korea, see [1579]
MCDA: International Summer School on Multicriteria Decision Aid
History: 1998/07: Monte Estoril, Lisbon, Portugal, see [198]
PAKDD: Pacic-Asia Conference on Knowledge Discovery and Data Mining
History: 2011/05: Shenzh`en, Guangd ong, China, see [1294]
STeP: Finnish Articial Intelligence Conference
History: 2008/08: Espoo, Finland, see [2255]
TAAI: Conference on Technologies and Applications of Articial Intelligence
History: 2010/11: Hsinchu, Taiwan, see [1283]
2009/10: Wufeng Township, Taichung County, Taiwan, see [529]
2008/11: Chiao-hsi Shiang, I-lan County, Taiwan, see [2659]
2007/11: Douliou, Yunlin, Taiwan, see [2006]
2006/12: Kaohsiung, Taiwan, see [1493]
2005/12: Kaohsiung, Taiwan, see [2004]
2004/11: Wenshan District, Taipei City, Taiwan, see [2003]
TAI: IEEE Conference on Tools for Articial Intelligence
History: 1990/11: Herndon, VA, USA, see [1358]
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
History: 1997/09: Rytro, Poland, see [2362]
10.4. JOURNALS 135
Machine Intelligence Workshop
History: 1977: Santa Cruz, CA, USA, see [874]
TAINN: Turkish Symposium on Articial Intelligence and Neural Networks (Tuark Yapay Zeka ve
Yapay Sinir Aglar Sempozyumu)
History: 1993/06: Istanbul, Turkey, see [1643]
AGI: Conference on Articial General Intelligence
History: 2011/08: Mountain View, CA, USA, see [2587]
2010/03: Lugano, Switzerland, see [1786]
2009/03: Arlington, VA, USA, see [661]
2008/03: Memphis, TN, USA, see [1414]
AICS: Irish Conference on Articial Intelligence and Cognitive Science
History: 2007/08: Dublin, Ireland, see [764]
AIIA: Congress of the Italian Association for Articial Intelligence (AI*IA) on Trends in Articial
Intelligence
History: 1991/10: Palermo, Italy, see [124]
ECML PKDD: European Conference on Machine Learning and European Conference on Principles
and Practice of Knowledge Discovery in Databases
History: 2009/09: Bled, Slovenia, see [321]
2008/09: Antwerp, Belgium, see [114]
SEA: International Symposium on Experimental Algorithms
History: 2011/05: Chania, Crete, Greece, see [2098]
2010/05: Ischa Island, Naples, Italy, see [2584]
10.4 Journals
1. IEEE Transactions on Systems, Man, and Cybernetics Part B: Cybernetics published by
IEEE Systems, Man, and Cybernetics Society
2. Information Sciences Informatics and Computer Science Intelligent Systems Applications:
An International Journal published by Elsevier Science Publishers B.V.
3. European Journal of Operational Research (EJOR) published by Elsevier Science Publishers
B.V. and North-Holland Scientic Publishers Ltd.
4. Machine Learning published by Kluwer Academic Publishers and Springer Netherlands
5. Applied Soft Computing published by Elsevier Science Publishers B.V.
6. Soft Computing A Fusion of Foundations, Methodologies and Applications published by
Springer-Verlag
7. Computers & Operations Research published by Elsevier Science Publishers B.V. and Perg-
amon Press
8. Articial Intelligence published by Elsevier Science Publishers B.V.
9. Operations Research published by HighWire Press (Stanford University) and Institute for
Operations Research and the Management Sciences (INFORMS)
10. Annals of Operations Research published by J. C. Baltzer AG, Science Publishers and Springer
Netherlands
11. International Journal of Computational Intelligence and Applications (IJCIA) published by
Imperial College Press Co. and World Scientic Publishing Co.
12. ORSA Journal on Computing published by Operations Research Society of America (ORSA)
13. Management Science published by HighWire Press (Stanford University) and Institute for
Operations Research and the Management Sciences (INFORMS)
14. Journal of Articial Intelligence Research (JAIR) published by AAAI Press and AI Access
Foundation, Inc.
15. Computational Optimization and Applications published by Kluwer Academic Publishers and
Springer Netherlands
16. The Journal of the Operational Research Society (JORS) published by Operations Research
Society and Palgrave Macmillan Ltd.
17. Data Mining and Knowledge Discovery published by Springer Netherlands
136 10 GENERAL INFORMATION ON OPTIMIZATION
18. SIAM Journal on Optimization (SIOPT) published by Society for Industrial and Applied
Mathematics (SIAM)
19. Mathematics of Operations Research (MOR) published by Institute for Operations Research
and the Management Sciences (INFORMS)
20. Journal of Global Optimization published by Springer Netherlands
21. AIAA Journal published by American Institute of Aeronautics and Astronautics
22. Journal of Articial Evolution and Applications published by Hindawi Publishing Corporation
23. Applied Intelligence The International Journal of Articial Intelligence, Neural Networks,
and Complex Problem-Solving Technologies published by Springer Netherlands
24. Articial Intelligence Review An International Science and Engineering Journal published
by Kluwer Academic Publishers and Springer Netherlands
25. Annals of Mathematics and Articial Intelligence published by Springer Netherlands
26. IEEE Transactions on Knowledge and Data Engineering published by IEEE Computer Soci-
ety Press
27. IEEE Intelligent Systems Magazine published by IEEE Computer Society Press
28. ACM SIGART Bulletin published by ACM Press
29. Journal of Machine Learning Research (JMLR) published by MIT Press
30. Discrete Optimization published by Elsevier Science Publishers B.V.
31. Journal of Optimization Theory and Applications published by Plenum Press and Springer
Netherlands
32. Articial Intelligence in Engineering published by Elsevier Science Publishers B.V.
33. Engineering Optimization published by Informa plc and Taylor and Francis LLC
34. Optimization and Engineering published by Kluwer Academic Publishers and Springer
Netherlands
35. International Journal of Organizational and Collective Intelligence (IJOCI) published by Idea
Group Publishing (Idea Group Inc., IGI Global)
36. Journal of Intelligent Information Systems published by Springer-Verlag GmbH
37. International Journal of Knowledge-Based and Intelligent Engineering Systems published by
IOS Press
38. IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI) published by
IEEE Computer Society
39. Optimization Methods and Software published by Taylor and Francis LLC
40. Journal of Mathematical Modelling and Algorithms published by Springer Netherlands
41. Structural and Multidisciplinary Optimization published by Springer-Verlag GmbH
42. OR/MS Today published by Institute for Operations Research and the Management Sciences
(INFORMS) and Lionheart Publishing, Inc.
43. AI Magazine published by AAAI Press
44. Computers in Industry An International, Application Oriented Research Journal published
by Elsevier Science Publishers B.V.
45. International Journal Approximate Reasoning published by Elsevier Science Publishers B.V.
46. International Journal of Intelligent Systems published by Wiley Interscience
47. International Journal of Production Research published by Taylor and Francis LLC
48. International Transactions in Operational Research published by Blackwell Publishing Ltd
49. INFORMS Journal on Computing (JOC) published by HighWire Press (Stanford University)
and Institute for Operations Research and the Management Sciences (INFORMS)
50. OR Spectrum Quantitative Approaches in Management published by Springer-Verlag
51. SIAG/OPT Views and News: A Forum for the SIAM Activity Group on Optimization pub-
lished by SIAM Activity Group on Optimization SIAG/OPT
52. K unstliche Intelligenz (KI) published by Bottcher IT Verlag
Part II
Diculties in Optimization
138 10 GENERAL INFORMATION ON OPTIMIZATION
Chapter 11
Introduction
The classication of optimization algorithms in Section 1.3 and the table of contents of this
book enumerate a wide variety of optimization algorithms. Yet, the approaches introduced
here resemble only a fraction of the actual number of available methods. It is a justied
question to ask why there are so many dierent approaches, why is this variety needed? One
possible answer is simply because there are so many dierent kinds of optimization tasks.
Each of them puts dierent obstacles into the way of the optimizers and comes with own,
characteristic diculties.
In this part we want to discuss the most important of these complications, the major
problems that may be encountered during optimization [2915]. You may wish to read this
part after reading through some of the later parts on specic optimization algorithms or
after solving your rst optimization task. You will then realize that many of the problems
you encountered are discussed here in depth.
Some of subjects in the following text concern Global Optimization in general (multi-
modality and overtting, for instance), others apply especially to nature-inspired approaches
like Genetic Algorithms (epistasis and neutrality, for example). Sometimes, neglecting a
single one of these aspects during the development of the optimization process can render
the whole eorts invested useless, even if highly ecient optimization techniques are applied.
By giving clear denitions and comprehensive introductions to these topics, we want to raise
the awareness of scientists and practitioners in the industry and hope to help them to use
optimization algorithms more eciently.
In Figure 11.1, we have sketched a set of dierent types of tness landscapes (see Sec-
tion 5.1) which we are going to discuss. The objective values in the gure are subject to
minimization and the small bubbles represent candidate solutions under investigation. An
arrow from one bubble to another means that the second individual is found by applying
one search operation to the rst one.
Before we go more into detail about what makes these landscapes dicult, we should
establish the term in the context of optimization. The degree of diculty of solving a certain
problem with a dedicated algorithm is closely related to its computational complexity. We
will outline this in the next section and show that for many problems, there is no algorithm
which can exactly solve them in reasonable time.
As already stated, optimization algorithms are guided by objective functions. A function
is dicult from a mathematical perspective in this context if it is not continuous, not
dierentiable, or if it has multiple maxima and minima. This understanding of diculty
comes very close to the intuitive sketches in Figure 11.1.
In many real world applications of metaheuristic optimization, the characteristics of the
objective functions are not known in advance. The problems are usually very complex and it
is only rarely possible to derive boundaries for the performance or the runtime of optimizers
in advance, let alone exact estimates with mathematical precision.
In such cases, experience and general rules of thumb are often the best guides available
140 11 INTRODUCTION
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.a: Best Case
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.b: Low Variation
multiple(local)optima o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.c: Multi-Modal
nousefulgradientinformation
? ? ?
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
Fig. 11.1.d: Rugged
regionwithmisleading
gradientinformation
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.e: Deceptive
?
neutralarea
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.f: Neutral
?
?
neutral area or
areawithoutmuch
information
needle
(isolated
optimum)
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.g: Needle-In-A-Haystack
?
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 11.1.h: Nightmare
Figure 11.1: Dierent possible properties of tness landscapes (minimization).
11 INTRODUCTION 141
(see also Chapter 24). Empirical results based on models obtained from related research
areas such as biology are sometimes helpful as well. In this part, we discuss many such models
and rules, providing a better understanding of when the application of a metaheuristic is
feasible and when not, as well as on how to avoid dening problems in a way that makes
them dicult.
Chapter 12
Problem Hardness
Most of the algorithms we will discuss in this book, in particular the metaheuristics, usually
give approximations as results but cannot guarantee to always nd the globally optimal
solution. However, we are actually able to nd the global optima for all given problems (of
course, limited to the precision of the available computers). Indeed, the easiest way to do
so would be exhaustive enumeration (see Section 8.3), to simply test all possible values from
the problem space and to return the best one.
This method, obviously, will take extremely long so our goal is to nd an algorithm
which is better. More precisely, we want to nd the best algorithm for solving a given class
of problems. This means that we need some sort of metric with which we can compare the
eciency of algorithms [2877, 2940].
12.1 Algorithmic Complexity
The most important measures obtained by analyzing an algorithm
1
are the time that it takes
to produce the wanted outcome and the storage space needed for internal data [635]. We
call those the time complexity and the space complexity dimensions. The time-complexity
denotes how many steps algorithms need until they return their results. The space complex-
ity determines how much memory an algorithm consumes at most in one run. Of course,
these measures depend on the input values passed to the algorithm.
If we have an algorithm that should decide whether a given number is prime or not, the
number of steps needed to nd that out will dier if the size of the inputs are dierent.
For example, it is easy to see that telling whether 7 is prime or not can be done in much
shorter time than verifying the same property for 2
32 582 657
1. The nature of the input
may inuence the runtime and space requirements of an algorithm as well. We immediately
know that 1 000 000 000 000 000 is not prime, though it is a big number, whereas the answer
in case of the smaller number 100 000 007 is less clear.
2
Therefore, often best, average, and
worst-case complexities exist for given input sizes.
In order to compare the eciency of algorithms, some approximative notations have been
introduced [1555, 1556, 2510]. As we just have seen, the basic criterion inuencing the time
and space requirements of an algorithm applied to a problem is the size of the inputs, i. e.,
the number of bits needed to represent the number from which we want to nd out whether
it is prime or not, the number of elements in a list to be sorted, the number of nodes or
edges in a graph to be 3-colored, and so on. We can describe this dependency as a function
of this size.
In real systems however, the knowledge of the exact dependency is not needed. If we,
for example, know that sorting n data elements with the Quicksort algorithm
3
[1240, 1557]
1
http://en.wikipedia.org/wiki/Analysis_of_algorithms [accessed 2007-07-03]
2
100 000 007 is indeed a prime, in case youre wondering, 2
32 582 657
1 too.
3
http://en.wikipedia.org/wiki/Quicksort [accessed 2007-07-03]
144 12 PROBLEM HARDNESS
takes in average something about nlog n steps, this is sucient enough, even if the correct
number is 2nln n 1.39nlog n.
The Big-O-family notations introduced by Bachmann [163] and made popular by Landau
[1664] allow us to group functions together that rise at approximately the same speed.
Denition D12.1 (Big-O notation). The big-O notation
4
is a mathematical notation
used to describe the asymptotical upper bound of functions.
f (x) O(g(x)) x
0
, m R : m > 0 [f (x) [ m[g(x) [ x > x
0
(12.1)
In other words, a function f (x) is in O of another function g(x) if and only if there exists a
real number x
0
and a constant, positive factor m so that the absolute value of f (x) is smaller
(or equal) than m-times the absolute value of g(x) for all x that are greater than x
0
. f (x)
thus cannot grow (considerably) faster than g(x). Therefore, x
3
+x
2
+x+1 = f (x) O
_
x
3
_
since for m = 5 and x
0
= 2 it holds that 5x
3
> x
3
+x
2
+x + 1 x 2.
In terms of algorithmic complexity, we specify the amount of steps or memory units an
algorithm needs in dependency on the size of its inputs in the big-O notation. More gen-
erally, this specication is based on key-features of the input data. For a graph-processing
algorithm, this may be the number of edges [E[ and the number of vertexes [V [ of a graph
to be processed by a graph-processing algorithm and the algorithmic complexity may be
O
_
[V [
2
+
_
[E[[V [
_
. Some examples for single-parametric functions can be found in Ex-
ample E12.1.
Example E12.1 (Some examples of the big-O notation).
class examples description
O(1) f
1
(x) = 2
222
,
f
2
(x) = sinx
Algorithms that have constant runtime for all in-
puts are O(1).
O(log n) f
3
(x) = log x,
f
4
(x) = f
4
_
x
2
_
+
1; f
4
(x < 1) = 0
Logarithmic complexity is often a feature of al-
gorithms that run on binary trees or search algo-
rithms in ordered sets. Notice that O(log n) im-
plies that only parts of the input of the algorithm
is read/regarded, since the input has length n and
we only perform mlog n steps.
O(n) f
5
(x) = 23n + 4,
f
6
(x) =
n
2
Algorithms of O(n) require to access and process
their input a constant number of times. This is
for example the case when searching in a linked
list.
O(nlog n) f
7
(x) = 23x +xlog 7x Many sorting algorithms like Quicksort and
Mergesort are in O(nlog n)
O
_
n
2
_
f
8
(x) = 34x
2
,
f
9
(x) =
x+3
i=0
x 2
Some sorting algorithms like selection sort have
this complexity. For many problems, O
_
n
2
_
-
solutions are acceptable good.
O
_
n
i
_
:
i > 1, i R
f
10
(x) = x
5
x
2
The general polynomial complexity. In this group
we nd many algorithms that work on graphs.
O(2
n
) f
11
(x) = 23 2
x
Algorithms with exponential complexity perform
slowly and become infeasible with increasing in-
put size. For many hard problems, there exist
only algorithms of this class. Their solution can
otherwise only be approximated by the means of
randomized global optimization techniques.
12.2. COMPLEXITY CLASSES 145
f(x)=x
f(x)=x
2
f(x)=x
4
f(x)=x
8
1
10
100
1000
1million
1billion
1trillion
10
15
10
20
10
30
10
25
10
40
10
35
4 8 1 2 64 128 16 32 256 512 1024 2048
f(x)=x
10
f(x)=1.1
x
msperday
picoseconds
sincebigbang
f(x)=x
x
f(x)=x! f(x)=e
x
f(x)=2
x
f(x)
x
Figure 12.1: Illustration of some functions illustrating their rising speed, gleaned from [2365].
In Example E12.1, we give some examples for the big-O notation and name kinds of algo-
rithms which have such complexities. The rising behavior of some functions is illustrated in
Figure 12.1. From this gure it becomes clear that problems for which only algorithms with
high complexities such as O(2
n
) exist quickly become intractable even for small input sizes
n.
12.2 Complexity Classes
While the big-O notation is used to state how long a specic algorithm needs (at least/in
average/at most) for input with certain features, the computational complexity
5
of a problem
is bounded by the best algorithm known for it. In other words, it makes a statement about
how much resources are necessary for solving a given problem, or, from the opposite point
of view, tell us whether we can solve a problem with given available resources.
12.2.1 Turing Machines
The amount of resources required at least to solve a problem depends on the problem
itself and on the machine used for solving it. One of the most basic computer models are
deterministic Turing machines
6
(DTMs) [2737] as sketched in Fig. 12.2.a. They consist of
a tape of innite length which is divided into distinct cells, each capable of holding exactly
one symbol from a nite alphabet. A Turing machine has a head which is always located
at one of these cells and can read and write the symbols. The machine has a nite set of
possible states and is driven by rules. These rules decide which symbol should be written
and/or move the head one unit to the left or right based on the machines current state and
the symbol on the tape under its head. With this simple machine, any of our computers
and, hence, also the programs executed by them, can be simulated.
7
4
http://en.wikipedia.org/wiki/Big_O_notation [accessed 2007-07-03]
5
http://en.wikipedia.org/wiki/Computational_complexity_theory [accessed 2010-06-24]
6
http://en.wikipedia.org/wiki/Turing_machine [accessed 2010-06-24]
7
Another computational model, RAM (Random Access Machine) is quite close to todays computer
architectures and can be simulated with Turing machines eciently [1804] and vice versa.
146 12 PROBLEM HARDNESS
1 0
0
0
0
0
0 0 0
0
1
1
1
0
0
0
0
TapeSymbol State Print Motion NextState
A 0 1 Right A
A 1 0 Right B
B 0 1 B Right
B 1 1 Left C
C 1 0 Left C
C 0 1 Right A
Fig. 12.2.a: A deterministic Turing machine.
TapeSymbol State Print Motion NextState
A 0 1 Right A
B 0 1 B Right
B 1 1 Left C
C 1 0 Left C
C 0 Right 1 A
C 0 1 Left A
A 1 0 Right B
A 1 0 Right A
1 0
0
0
0
0
0 0 0
0
1
1 1 0
0 0
0
1 0
0
0
0
0
0 0 0
0
1
1 1 0
0 0
0
1 0
0
0
0
0
0 0 0
0
1
1 1 0
0 0
0
Fig. 12.2.b: A non-deterministic Turing machine.
Figure 12.2: Turing machines.
Like DTMs, non-deterministic Turing machine
8
(NTMs, see Fig. 12.2.b) are thought
experiments rather than real computers. They are dierent from DTMs in that they may
have more than one rule for a state/input pair. Whenever there is an ambiguous situation
where n > 1 rules could be applied, the NTM can be thought of to fork into n independent
NTMs running in parallel. The computation of the overall system stops when any of these
reaches a nal, accepting state. NTMs can be simulated with DTMs by performing a
breadth-rst search on the possible computation steps of the NTM until it nds an accepting
state. The number of steps required for this simulation, however, grows exponentially with
the length of the shortest accepting path of the NTM [1483].
12.2.2 P, NP, Hardness, and Completeness
The set of all problems which can be solved by a deterministic Turing machine within
polynomial time is called T [1025]. This means that for the problems within this class,
there exists at least one algorithm (for a DTM) with an algorithmic complexity in O(n
p
)
(where n is the input size and p N
1
is some natural number).
Algorithms designed for Turing machines can be translated to algorithms for normal PCs.
Since it quite easy to simulate a DTM (with nite tape) with an o-the-shelf computer and
vice versa, these are also the problems that can be solved within polynomial time by existing,
real computers. These are the problems which are said to be exactly solvable in a feasible
way [359, 1092].
AT, on the other hand, includes all problems which can be solved by a non-deterministic
Turing machine in a runtime rising polynomial with the input size. It is the set of all problems
for which solutions can be checked in polynomial time [1549].
Clearly, these include all the problems from T, since DTMs can be considered as a
subset of NTMs and if a deterministic Turing machine can solve something in polynomial
time, a non-deterministic one can as well. The other way around, i.e., the question whether
AT T and, hence, T = AT, is much more complicated and so far, there neither exists
proof against nor for it [1549]. However, it is strongly assumed that problems in AT need
super-polynomial, exponential, time to be solved by deterministic Turing machines and
therefore also by computers as we know and use them.
8
http://en.wikipedia.org/wiki/Non-deterministic_Turing_machine [accessed 2010-06-24]
12.3. THE PROBLEM: MANY REAL-WORLD TASKS ARE AT-HARD 147
If problem A can be transformed in a way so that we can use an algorithm for problem
B to solve A, we say A reduces to B. This means that A is no more dicult than B. A
problem is hard for a complexity class if every other problem in this class can be reduced
to it. For classes larger than T, reductions which take no more than polynomial time in the
input size are usually used. The problems which are hard for AT are called AT-hard. A
problem which is in a complexity class C and hard for C is called complete for C, hence the
name AT-complete.
12.3 The Problem: Many Real-World Tasks are NP-hard
From a practical perspective, problems in T are usually friendly. Everything with an algo-
rithmic complexity in O
_
n
5
_
and less can usually be solved more or less eciently if n does
not get too large. Searching and sorting algorithms, with complexities of between log n and
nlog n, are good examples for such problems which, in most cases, are not bothersome.
However, many real-world problems are AT-hard or, without formal proof, can be as-
sumed to be at least as bad as that. So far, no polynomial-time algorithm for DTMs has
been discovered for this class of problems and the runtime of the algorithms we have for
them increases exponentially with the input size.
In 1962, Bremermann [407] pointed out that No data processing system whether articial
or living can process more than 2 10
47
bits per second per gram of its mass. This is an
absolute limit to computation power which we are very unlikely to ever be able to unleash.
Yet, even with this power, if the number of possible states of a system grow exponentially
with its size, any solution attempt becomes infeasible quickly. Minsky [1907], for instance,
estimates the number of all possible move sequences in chess to be around 1 10
120
.
The Traveling Salesman Problem which we initially introduced in Example E2.2 on
page 45 (TSP) is a classical example for AT-complete combinatorial optimization problems.
Since many Vehicle Routing Problems (VRPs) [2912, 2914] are basically iterated variants
of the TSP, they fall at least into the same complexity class. This means that until now,
there exists no algorithm with a less-than exponential complexity which can be used to nd
optimal transportation plans for a logistics company. In other words, as soon as a logistics
company has to satisfy transportation orders of more than a handful of customers, it will
likely not be able to serve them in an optimal way.
The Knapsack problem [463], i. e., answering the question on how to t as many items
(of dierent weight and value) into a weight-limited container so that the totally value of
the items in the container is maximized, is AT-complete as well. Like the TSP, it occurs in
a variety of practical applications.
The rst known AT-complete problem is the satisability problem (SAT) [626]. Here,
the problem is to decide whether or not there is an assignment of values to a set of Boolean
variables x
1
, x
2
, . . . , x
n
which makes a given Boolean expression based on these variables,
parentheses, , , and evaluate to true.
These few examples and the wide area of practical application problems which can be
reduced to them clearly show one thing: Unless T = AT can be found at some point in
time, there will be no way to solve a variety of problems exactly.
12.4 Countermeasures
Solving a problem exactly to optimality is not always possible, as we have learned in the
previous section. If we have to deal with AT-complete problems, we will therefore have
to give up on some of the features which we expect an algorithm or a solution to have. A
randomized algorithm includes at least one instruction that acts on the basis of random de-
cision, as stated in Denition D1.13 on page 33. In other words, as opposed to deterministic
148 12 PROBLEM HARDNESS
algorithms
9
which always produce the same results when given the same inputs, a random-
ized algorithm violates the constraint of determinism. Randomized algorithms are also often
called probabilistic algorithms [1281, 1282, 1919, 1966, 1967]. There are two general classes
of randomized algorithms: Las Vegas and Monte Carlo algorithms.
Denition D12.2 (Las Vegas Algorithm). A Las Vegas algorithm
10
is a randomized
algorithm that never returns a wrong result [141, 1281, 1282, 1966]. It either returns the
correct result, reports a failure, or does not return at all.
If a Las Vegas algorithm returns, its outcome is deterministic (but not the algorithm itself).
The termination, however, cannot be guaranteed. There usually exists an expected runtime
limit for such algorithms their actual execution however may take arbitrarily long. In
summary, a Las Vegas algorithm terminates with a positive probability and is (partially)
correct.
Denition D12.3 (Monte Carlo Algorithm). A Monte Carlo algorithm
11
always ter-
minates. Its result, however, can be either correct or incorrect [1281, 1282, 1966].
In contrast to Las Vegas algorithms, Monte Carlo algorithms always terminate but are
(partially) correct only with a positive probability. As pointed out in Section 1.3, they are
usually the way to go to tackle complex problems.
9
http://en.wikipedia.org/wiki/Deterministic_computation [accessed 2007-07-03]
10
http://en.wikipedia.org/wiki/Las_Vegas_algorithm [accessed 2007-07-03]
11
http://en.wikipedia.org/wiki/Monte_carlo_algorithm [accessed 2007-07-03]
12.4. COUNTERMEASURES 149
Tasks T12
44. Find all big-O relationships between the following functions f
i
: N
1
R:
f
1
(x) = 9
x
f
2
(x) = log x
f
3
(x) = 7
f
4
(x) = (1.5)
x
f
5
(x) =
99
/x
f
6
(x) = e
x
f
7
(x) = 10x
2
f
8
(x) = (2 + (1)
x
)x
f
9
(x) = 2 ln x
f
10
(x) = (1 + (1)
x
)x
2
+x
[10 points]
45. Show why the statement The runtime of the algorithm is at least in O
_
n
2
_
makes
no sense.
[5 points]
46. What is the dierence between a deterministic Turing machine (DTM) and non-
deterministic one (NTM)?
[10 points]
47. Write down the states and rules of a deterministic Turing machine which inverts a
sequence of zeros and ones on the tape while moving its head to the right and that
stops when encountering a blank symbol.
[5 points]
48. Use literature or the internet to nd at least three more AT-complete problems. Dene
them as optimization problems by specifying proper problem spaces X and objective
functions f which are subject to minimization.
[15 points]
Chapter 13
Unsatisfying Convergence
13.1 Introduction
Denition D13.1 (Convergence). An optimization algorithm has converged (a) if it can-
not reach new candidate solutions anymore or (b) if it keeps on producing candidate solutions
from a small
1
subset of the problem space.
Optimization processes will usually converge at some point in time. In nature, a similar phe-
nomenon can be observed according to Koza [1602]: The niche preemption principle states
that a niche in a natural environment tends to become dominated by a single species [1812].
Linear convergence to the global optimum x
)[ c [f(x(t)) f(x
)[ , c [0, 1) (13.1)
One of the problems in Global Optimization (and basically, also in nature) is that it is often
not possible to determine whether the best solution currently known is situated on local or
a global optimum and thus, if convergence is acceptable. In other words, it is usually not
clear whether the optimization process can be stopped, whether it should concentrate on
rening the current optimum, or whether it should examine other parts of the search space
instead. This can, of course, only become cumbersome if there are multiple (local) optima,
i. e., the problem is multi-modal [1266, 2267] as depicted in Fig. 11.1.c on page 140.
Denition D13.2 (Multi-Modality). A mathematical function is multi-modal if it has
multiple (local or global) maxima or minima [711, 2474, 3090]. A set of objective functions
(or a vector function) f is multi-modal if it has multiple (local or global) optima depending
on the denition of optimum in the context of the corresponding optimization problem.
The existence of multiple global optima itself is not problematic and the discovery of only
a subset of them can still be considered as successful in many cases. The occurrence of
numerous local optima, however, is more complicated.
1
according to a suitable metric like numbers of modications or mutations which need to be applied to
a given solution in order to leave this subset
152 13 UNSATISFYING CONVERGENCE
13.2 The Problems
There are three basic problems which are related to the convergence of an optimization algo-
rithm: premature, non-uniform, and domino convergence. The rst one is most important
in optimization, but the latter ones may also cause large inconvenience.
13.2.1 Premature Convergence
Denition D13.3 (Premature Convergence). An optimization process has prema-
turely converged to a local optimum if it is no longer able to explore other parts of the
search space than the area currently being examined and there exists another region that
contains a superior solution [2417, 2760].
The goal of optimization is, of course, to nd the global optima. Premature convergence,
basically, is the convergence of an optimization process to a local optimum. A prematurely
converged optimization process hence provides solutions which are below the possible or
anticipated quality.
Example E13.1 (Premature Convergence).
Figure 13.1 illustrates two examples for premature convergence. Although a higher peak
exists in the maximization problem pictured in Fig. 13.1.a, the optimization algorithm solely
focuses on the local optimum to the right. The same situation can be observed in the
minimization task shown in Fig. 13.1.b where the optimization process gets trapped in the
local minimum on the left hand side.
globaloptimum
localoptimum
Fig. 13.1.a: Example 1: Maximization
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
Fig. 13.1.b: Example 2: Minimization
Figure 13.1: Premature convergence in the objective space.
13.2.2 Non-Uniform Convergence
13.2. THE PROBLEMS 153
Denition D13.4 (Non-Uniform Convergence). In optimization problems with in-
nitely many possible (globally) optimal solutions, an optimization process has non-
uniformly converged if the solutions that it provides only represent a subset of the optimal
characteristics.
This denition is rather fuzzy, but it becomes much clearer when taking a look on
Example E13.2. The goal of optimization in problems with innitely many optima is often
not to discover only one or two optima. Instead, usually we want to nd a set X of solutions
which has a good spread over all possible optimal features.
Example E13.2 (Convergence in a Bi-Objective Problem).
Assume that we wish to solve a bi-objective problem with f = (f
1
, f
2
). Then, the goal is to
nd a set X of candidate solutions which approximates the set X
1
and X
5
are globally optimal since they contain the elements with
lowest function value. x
l,2
, x
l,3
, and x
l,4
are three sets each containing exactly one locally
minimal point.
We now split up f to f
1
and f
2
and optimize either f (f
1
, f
2
) or f (f, f
1
, f
2
) together.
If we apply Pareto-based optimization (see Section 3.3.5 on page 65) and use the Deni-
tion D4.17 on page 89 of local optima (which is also used in [1178]), we nd that there are
only three locally optima regions remaining A
1
, A
2
, and A
3
.
A
1
, for example, is a continuous region which borders to elements it dominates. If we
go a small step to the left from the left border of A
1
, we will nd an element with the same
value of f
1
but with worse values in both f
2
and f. The same is true for its right border. A
3
has exactly the same behavior.
Any step to the left or right within A
2
leads to an improvement of either f
1
or f
2
and a
degeneration of the other function. Therefore, no element within A
2
dominates any other
element in A
2
. However, at the borders of A
2
, f
1
becomes constant while f
2
keeps growing,
13.4. COUNTERMEASURES 159
0
0.2
0.4
0.6
0.8
1
0.2 0.4 0.6 0.8 1
f(x)
mainobjective:f(x)=f (x)+f (x)
1 2
X
1
x
l,2
x
l,3 x
l,4
X
5
x X
Fig. 13.5.a: The original objective and its local op-
tima.
0
0.2
0.4
0.6
0.8
1
0.2 0.4 0.6 0.8 1
A
1
A
2
A
3
f (x)
1
f (x)
2
x X
Fig. 13.5.b: The helper objectives and the local op-
tima in the objective space.
Figure 13.5: Multi-Objectivization `a la Sum-of-Parts.
i. e., getting worse. The neighboring elements outside of A
2
shows us that it contains x
l,2
, x
l,3
, and
x
l,4
and since it is continuous also (uncountable) innitly many other points. In this
case, it would thus not be clear whether multi-objectivization would be benecial or not a
priori.
160 13 UNSATISFYING CONVERGENCE
Tasks T13
49. Sketch one possible objective function for a single-objective optimization problem
which has intely many solutions. Copy this graph three times and paint six points
into each copy which represent:
(a) the possible results of a possible prematurely converged optimization process,
(b) the possible results of a possible correctly converged optimization process with
non-uniform spread (convergence),
(c) the possible results of a possible optimization process which has converged nicely.
[10 points]
50. Discuss the dilemma of exploration versus exploitation. What are the advantages and
disadvantages of these two general search principles?
[5 points]
51. Discuss why the Hill Climbing optimization algorithm (Chapter 26) is particularly
prone to premature convergence and how Simulated Annealing (Chapter 27) mitigates
the cause of this vulnerability.
[5 points]
Chapter 14
Ruggedness and Weak Causality
unimodal multimodal somewhatrugged veryrugged
landscapedifficultyincreases
Figure 14.1: The landscape diculty increases with increasing ruggedness.
14.1 The Problem: Ruggedness
Optimization algorithms generally depend on some form of gradient in the objective or tness
space. The objective functions should be continuous and exhibit low total variation
1
, so the
optimizer can descend the gradient easily. If the objective functions become more unsteady
or uctuating, i. e., go up and down often, it becomes more complicated for the optimization
process to nd the right directions to proceed to as sketched in Figure 14.1. The more
rugged a function gets, the harder it gets to optimize it. For short, one could say ruggedness
is multi-modality plus steep ascends and descends in the tness landscape. Examples of
rugged landscapes are Kaumans NK tness landscape (see Section 50.2.1), the p-Spin
model discussed in Section 50.2.2, Bergman and Feldmans jagged tness landscape [276],
and the sketch in Fig. 11.1.d on page 140.
14.2 One Cause: Weak Causality
During an optimization process, new points in the search space are created by the search
operations. Generally we can assume that the genotypes which are the input of the search
operations correspond to phenotypes which have previously been selected. Usually, the
better or the more promising an individual is, the higher are its chances of being selected for
further investigation. Reversing this statement suggests that individuals which are passed
to the search operations are likely to have a good tness. Since the tness of a candidate
solution depends on its properties, it can be assumed that the features of these individuals
1
http://en.wikipedia.org/wiki/Total_variation [accessed 2008-04-23]
162 14 RUGGEDNESS AND WEAK CAUSALITY
are not so bad either. It should thus be possible for the optimizer to introduce slight changes
to their properties in order to nd out whether they can be improved any further
2
. Normally,
such exploitive modications should also lead to small changes in the objective values and
hence, in the tness of the candidate solution.
Denition D14.1 (Strong Causality). Strong causality (locality) means that small
changes in the properties of an object also lead to small changes in its behavior [2278,
2279, 2329].
This principle (proposed by Rechenberg [2278, 2279]) should not only hold for the search
spaces and operations designed for optimization (see Equation 24.5 on page 218 in Sec-
tion 24.9), but applies to natural genomes as well. The ospring resulting from sexual
reproduction of two sh, for instance, has a dierent genotype than its parents. Yet, it is
far more probable that these variations manifest in a unique color pattern of the scales, for
example, instead of leading to a totally dierent creature.
Apart from this straightforward, informal explanation here, causality has been investi-
gated thoroughly in dierent elds of optimization, such as Evolution Strategy [835, 2278],
structure evolution [1760, 1761], Genetic Programming [835, 1396, 2327, 2329], genotype-
phenotype mappings [2451], search operators [835], and Evolutionary Algorithms in gen-
eral [835, 2338, 2599].
Sendho et al. [2451, 2452] introduce a very nice denition for causality which combines
the search space G, the (unary) search operations searchOp
1
Op, the genotype-phenotype
mapping gpm and the problem space X with the objective functions f . First, a distance
measure dist caus based on the stochastic nature of the unary search operation searchOp
1
is dened.
3
dist caus(g
1
, g
2
) = log
_
1
P
id
P (g
2
= searchOp
1
(g
1
))
_
(14.1)
P
id
= P (g = searchOp
1
(g)) (14.2)
In Equation 14.1, g
1
and g
2
are two elements of the search space G, P (g
2
= searchOp
1
(g
1
))
is the probability that g
2
is the result of one application of the search operation searchOp
1
to
g
1
, and P
id
is the probability that the searchOp
1
maps an element to itself. dist caus(g
1
, g
2
)
falls with a rising probability the g
1
is mapped to g
2
. Sendho et al. [2451, 2452] then dene
strong causality as the state where Equation 14.3 holds:
g
1
, g
2
, g
3
G : [[f (gpm(g
1
)) f (gpm(g
2
))[[
2
< [[f (gpm(g
1
)) f (gpm(g
3
))[[
2
dist caus(g
1
, g
2
) < dist caus(g
1
, g
3
)
P (g
2
= searchOp
1
(g
1
)) > P (g
3
= searchOp
1
(g
1
)) (14.3)
In other words, strong causality means that the search operations have a higher chance to
produce points g
2
which (map to candidate solutions which) are closer in objective space
to their inputs g
1
than to create elements x
3
which (map to candidate solutions which) are
farther away.
In tness landscapes with weak (low) causality, small changes in the candidate solutions
often lead to large changes in the objective values, i. e., ruggedness. It then becomes harder
to decide which region of the problem space to explore and the optimizer cannot nd reliable
gradient information to follow. A small modication of a very bad candidate solution may
then lead to a new local optimum and the best candidate solution currently known may be
surrounded by points that are inferior to all other tested individuals.
The lower the causality of an optimization problem, the more rugged its tness landscape
is, which leads to a degeneration of the performance of the optimizer [1563]. This does not
necessarily mean that it is impossible to nd good solutions, but it may take very long to
do so.
2
We have already mentioned this under the subject of exploitation.
3
This measure has the slight drawback that it is undened for P (g
2
= searchOp
1
(g
2
)) = 0 or P
id
= 0.
14.3. FITNESS LANDSCAPE MEASURES 163
14.3 Fitness Landscape Measures
As measures for the ruggedness of a tness landscape (or their general diculty), many
dierent metrics have been proposed. Wedge and Kell [2874] and Altenberg [80] provide
nice lists of them in their work
4
, which we summarize here:
1. Weinberger [2881] introduced the autocorrelation function and the correlation length
of random walks.
2. The correlation of the search operators was used by Manderick et al. [1821] in con-
junction with the autocorrelation [2267].
3. Jones and Forrest [1467, 1468] proposed the tness distance correlation (FDC), the
correlation of the tness of an individual and its distance to the global optimum. This
measure has been extended by researchers such as Clergue et al. [590, 2784].
4. The probability that search operations create ospring tter than their parents, as
dened by Rechenberg [2278] and Beyer [295] (and called evolvability by Altenberg
[77]), will be discussed in Section 16.2 on page 172 in depth.
5. Simulation dynamics have been researched by Altenberg [77] and Grefenstette [1130].
6. Another interesting metric is the tness variance of formae (Radclie and Surry [2246])
and schemas (Reeves and Wright [2284]).
7. The error threshold method from theoretical biology [867, 2057] has been adopted
Ochoa et al. [2062] for Evolutionary Algorithms. It is the critical mutation rate be-
yond which structures obtained by the evolutionary process are destroyed by mutation
more frequently than selection can reproduce them [2062].
8. The negative slope coecient (NSC) by Vanneschi et al. [2785, 2786] may be considered
as an extension of Altenbergs evolvability measure.
9. Davidor [691] uses the epistatic variance as a measure of utility of a certain represen-
tation in Genetic Algorithms. We discuss the issue of epistasis in Chapter 17.
10. The genotype-tness correlation (GFC) of Wedge and Kell [2874] is a new measure for
ruggedness in tness landscape and has been shown to be a good guide for determining
optimal population sizes in Genetic Programming.
11. Rana [2267] dened the Static- and the Basin- metrics based on the notion of
schemas in binary-coded search spaces.
14.3.1 Autocorrelation and Correlation Length
As example, let us take a look at the autocorrelation function as well as the correlation
length of random walks [2881]. Here we borrow its denition from Verel et al. [2802]:
Denition D14.2 (Autocorrelation Function). Given a random walk (x
i
, x
i+1
, . . . ),
the autocorrelation function of an objective function f is the autocorrelation function
of the time series (f(x
i
) , f(x
i+1
) , . . . ).
(k, f) =
E[f(x
i
) f(x
i+k
)] E[f(x
i
)] E[f(x
i+k
)]
D
2
[f(x
i
)]
(14.4)
where E[f(x
i
)] and D
2
[f(x
i
)] are the expected value and the variance of f(x
i
).
4
Especially the one of Wedge and Kell [2874] is beautiful and far more detailed than this summary here.
164 14 RUGGEDNESS AND WEAK CAUSALITY
The correlation length =
1
log (1,f)
measures how the autocorrelation function decreases
and summarizes the ruggedness of the tness landscape: the larger the correlation length,
the lower the total variation of the landscape. From the works of Kinnear, Jr [1540] and
Lipsitch [1743] from twenty, however, we also know that correlation measures do not always
represent the hardness of a problem landscape full.
14.4 Countermeasures
To the knowledge of the author, no viable method which can directly mitigate the eects
of rugged tness landscapes exists. In population-based approaches, using large population
sizes and applying methods to increase the diversity can reduce the inuence of ruggedness,
but only up to a certain degree. Utilizing Lamarckian evolution [722, 2933] or the Baldwin
eect [191, 1235, 1236, 2933], i. e., incorporating a local search into the optimization pro-
cess, may further help to smoothen out the tness landscape [1144] (see Section 36.2 and
Section 36.3, respectively).
Weak causality is often a home-made problem because it results to some extent from
the choice of the solution representation and search operations. We pointed out that explo-
ration operations are important for lowering the risk of premature convergence. Exploitation
operators are as same as important for rening solutions to a certain degree. In order to
apply optimization algorithms in an ecient manner, it is necessary to nd representations
which allow for iterative modications with bounded inuence on the objective values, i. e.,
exploitation. In Chapter 24, we present some further rules-of-thumb for search space and
operation design.
14.4. COUNTERMEASURES 165
Tasks T14
52. Investigate the Weierstra Function
5
. Is it unimodal, smooth, multimodal, or even
rugged?
[5 points]
53. Why is causality important in metaheuristic optimization? Why are problems with
low causality normally harder than problems with strong causality?
[5 points]
54. Dene three objective functions by yourself: a uni-modal one (f
1
: R R
+
), a simple
multi-modal one (f
2
: R R
+
), and a rugged one (f
3
: R R
+
). All three functions
should have the same global minimum (optimum) 0 with objective value 0. Try to solve
all three function with a trivial implementation of Hill Climbing (see Algorithm 26.1 on
page 230) by applying it 30 times to each function. Note your observations regarding
the problem hardness.
[15 points]
5
http://en.wikipedia.org/wiki/Weierstrass_function [accessed 2010-09-14]
Chapter 15
Deceptiveness
15.1 Introduction
Especially annoying tness landscapes show deceptiveness (or deceptivity). The gradient
of deceptive objective functions leads the optimizer away from the optima, as illustrated in
Figure 15.1 and Fig. 11.1.e on page 140.
unimodal unimodalwith
neutrality
multimodal(center
andlimits)deceptive
verydeceptive
landscapedifficultyincreases
Figure 15.1: Increasing landscape diculty caused by deceptivity.
The term deceptiveness [288] is mainly used in the Genetic Algorithm
1
community in the
context of the Schema Theorem [1076, 1077]. Schemas describe certain areas (hyperplanes)
in the search space. If an optimization algorithm has discovered an area with a better
average tness compared to other regions, it will focus on exploring this region based on
the assumption that highly t areas are likely to contain the true optimum. Objective
functions where this is not the case are called deceptive [288, 1075, 1739]. Examples for
deceptiveness are the ND tness landscapes outlined in Section 50.2.3, trap functions (see
Section 50.2.3.1), and the fully deceptive problems given by Goldberg et al. [743, 1076, 1083]
and [288].
15.2 The Problem
Denition D15.1 (Deceptiveness). An objective function f : X R is deceptive if a Hill
Climbing algorithm (see Chapter 26 on page 229) would be steered in a direction leading
away from all global optima in large parts of the search space.
1
We are going to discuss Genetic Algorithms in Chapter 29 on page 325 and the Schema Theorem
in Section 29.5 on page 341.
168 15 DECEPTIVENESS
For Denition D15.1, it is usually also assumed that (a) the search space is also the problem
space (G = X), (b) the genotype-phenotype mapping is the identity mapping, and (c) the
search operations do not violate the causality (see Denition D14.1 on page 162).. Still,
Denition D15.1 remains a bit blurry since the term large parts of the search space is
intuitive but not precise. However, it reveals the basic problem caused by deceptiveness.
If the information accumulated by an optimizer actually guides it away from the optimum,
search algorithms will perform worse than a random walk or an exhaustive enumeration
method. This issue has been known for a long time [1914, 1915, 2696, 2868] and has been
subsumed under the No Free Lunch Theorem which we will discuss in Chapter 23.
15.3 Countermeasures
Solving deceptive optimization tasks perfectly involves sampling many individuals with very
bad features and low tness. This contradicts the basic ideas of metaheuristics and thus,
there are no ecient countermeasures against deceptivity. Using large population sizes,
maintaining a very high diversity, and utilizing linkage learning (see Section 17.3.3) are,
maybe, the only approaches which can provide at least a small chance of nding good
solutions.
A completely deceptive tness landscape would be even worse than the needle-in-a-
haystack problems outlined in Section 16.7 [? ]. Exhaustive enumeration of the search
space or searching by using random walks may be the only possible way to go in extremely
deceptive cases. However, the question what kind of practical problem would have such a
feature arises. The solution of a completely deceptive problem would be the one that, when
looking on all possible solutions, seems to be the most improbably one. However, when
actually testing it, this worst-looking point in the problem space turns out to be the best-
possible solution. Such kinds of problem are, as far as the author of this book is concerned,
rather unlikely and rare.
15.3. COUNTERMEASURES 169
Tasks T15
55. Why is deceptiveness fatal for metaheuristic optimization? Why are non-deceptive
problems usually easier than deceptive ones?
[5 points]
56. Construct two dierent deceptive objective functions f
1
, f
2
: R R
+
by yourself. Like
the three functions from Task 54 on page 165, they should have the global minimum
(optimum) 0 with objective value 0. Try to solve these functions with a trivial imple-
mentation of Hill Climbing (see Algorithm 26.1 on page 230) by applying it 30 times
to both of them. Note your observations regarding the problem hardness and compare
them to your results from Task 54.
[7 points]
Chapter 16
Neutrality and Redundancy
16.1 Introduction
unimodal notmuchgradient
distantfromoptimum
withsomeneutrality veryneutral
landscapedifficultyincreases
Figure 16.1: Landscape diculty caused by neutrality.
Denition D16.1 (Neutrality). We consider the outcome of the application of a search
operation to an element of the search space as neutral if it yields no change in the objective
values [219, 2287].
It is challenging for optimization algorithms if the best candidate solution currently known
is situated on a plane of the tness landscape, i. e., all adjacent candidate solutions have
the same objective values. As illustrated in Figure 16.1 and Fig. 11.1.f on page 140, an
optimizer then cannot nd any gradient information and thus, no direction in which to
proceed in a systematic manner. From its point of view, each search operation will yield
identical individuals. Furthermore, optimization algorithms usually maintain a list of the
best individuals found, which will then overow eventually or require pruning.
The degree of neutrality is dened as the fraction of neutral results among all possible
products of the search operations applied to a specic genotype [219]. We can generalize
this measure to areas G in the search space G by averaging over all their elements. Regions
where is close to one are considered as neutral.
g
1
G (g
1
) =
[g
2
: P (g
2
= Op(g
1
)) > 0 f (gpm(g
2
)) = f (gpm(g
1
))[
[g
2
: P (g
2
= Op(g
1
)) > 0[
(16.1)
G G (G) =
1
[G[
gG
(g) (16.2)
172 16 NEUTRALITY AND REDUNDANCY
16.2 Evolvability
Another metaphor in Global Optimization which has been borrowed from biological sys-
tems [1289] is evolvability
1
[699]. Wagner [2833, 2834] points out that this word has two
uses in biology: According to Kirschner and Gerhart [1543], a biological system is evolv-
able if it is able to generate heritable, selectable phenotypic variations. Such properties
can then be spread by natural selection and changed during the course of evolution. In its
second sense, a system is evolvable if it can acquire new characteristics via genetic change
that help the organism(s) to survive and to reproduce. Theories about how the ability
of generating adaptive variants has evolved have been proposed by Riedl [2305], Wagner
and Altenberg [78, 2835], Bonner [357], and Conrad [624], amongst others. The idea of
evolvability can be adopted for Global Optimization as follows:
Denition D16.2 (Evolvability). The evolvability of an optimization process in its cur-
rent state denes how likely the search operations will lead to candidate solutions with new
(and eventually, better) objectives values.
The direct probability of success [295, 2278], i. e., the chance that search operators produce
ospring tter than their parents, is also sometimes referred to as evolvability in the context
of Evolutionary Algorithms [77, 80].
16.3 Neutrality: Problematic and Benecial
The link between evolvability and neutrality has been discussed by many researchers [2834,
3039]. The evolvability of neutral parts of a tness landscape depends on the optimization
algorithm used. It is especially low for Hill Climbing and similar approaches, since the search
operations cannot directly provide improvements or even changes. The optimization process
then degenerates to a random walk, as illustrated in Fig. 11.1.f on page 140. The work of
Beaudoin et al. [242] on the ND tness landscapes
2
shows that neutrality may destroy
useful information such as correlation.
Researchers in molecular evolution, on the other hand, found indications that the major-
ity of mutations in biology have no selective inuence [971, 1315] and that the transformation
from genotypes to phenotypes is a many-to-one mapping. Wagner [2834] states that neutral-
ity in natural genomes is benecial if it concerns only a subset of the properties peculiar to
the ospring of a candidate solution while allowing meaningful modications of the others.
Toussaint and Igel [2719] even go as far as declaring it a necessity for self-adaptation.
The theory of punctuated equilibria
3
, in biology introduced by Eldredge and Gould
[875, 876], states that species experience long periods of evolutionary inactivity which are
interrupted by sudden, localized, and rapid phenotypic evolutions [185].
4
It is assumed that
the populations explore neutral layers
5
during the time of stasis until, suddenly, a relevant
change in a genotype leads to a better adapted phenotype [2780] which then reproduces
quickly. Similar phenomena can be observed/are utilized in EAs [604, 1838].
Uh?, you may think, How does this t together? The key to dierentiating between
good and bad neutrality is its degree in relation to the number of possible solutions
maintained by the optimization algorithms. Smith et al. [2538] have used illustrative ex-
amples similar to Figure 16.2 showing that a certain amount of neutral reproductions can
foster the progress of optimization. In Fig. 16.2.a, basically the same scenario of premature
1
http://en.wikipedia.org/wiki/Evolvability [accessed 2007-07-03]
2
See Section 50.2.3 on page 557 for a detailed elaboration on the ND tness landscape.
3
http://en.wikipedia.org/wiki/Punctuated_equilibrium [accessed 2008-07-01]
4
A very similar idea is utilized in the Extremal Optimization method discussed in Chapter 41.
5
Or neutral networks, as discussed in Section 16.4.
16.4. NEUTRAL NETWORKS 173
convergence as in Fig. 13.1.a on page 152 is depicted. The optimizer is drawn to a local opti-
mum from which it cannot escape anymore. Fig. 16.2.b shows that a little shot of neutrality
could form a bridge to the global optimum. The optimizer now has a chance to escape the
smaller peak if it is able to nd and follow that bridge, i. e., the evolvability of the system
has increased. If this bridge gets wider, as sketched in Fig. 16.2.c, the chance of nding the
global optimum increases as well. Of course, if the bridge gets too wide, the optimization
process may end up in a scenario like in Fig. 11.1.f on page 140 where it cannot nd any
direction. Furthermore, in this scenario we expect the neutral bridge to lead to somewhere
useful, which is not necessarily the case in reality.
globaloptimum
localoptimum
Fig. 16.2.a: Premature Conver-
gence
Fig. 16.2.b: Small Neutral Bridge Fig. 16.2.c: Wide Neutral Bridge
Figure 16.2: Possible positive inuence of neutrality.
Recently, the idea of utilizing the processes of molecular
6
and evolutionary
7
biology as
complement to Darwinian evolution for optimization gains interest [212]. Scientists like
Hu and Banzhaf [1286, 1287, 1289] began to study the application of metrics such as the
evolution rate of gene sequences [2973, 3021] to Evolutionary Algorithms. Here, the degree
of neutrality (synonymous vs. non-synonymous changes) seems to play an important role.
Examples for neutrality in tness landscapes are the ND family (see Section 50.2.3),
the NKp and NKq models (discussed in Section 50.2.1.5), and the Royal Road (see Sec-
tion 50.2.4). Another common instance of neutrality is bloat in Genetic Programming,
which is outlined in ?? on page ??.
16.4 Neutral Networks
From the idea of neutral bridges between dierent parts of the search space as sketched by
Smith et al. [2538], we can derive the concept of neutral networks.
Denition D16.3 (Neutral Network). Neutral networks are equivalence classes K of
elements of the search space G which map to elements of the problem space X with the
same objective values and are connected by chains of applications of the search operators
Op [219].
g
1
, g
2
G : g
1
K(g
2
) G k N
0
: P
_
g
2
= Op
k
(g
1
)
_
> 0
f (gpm(g
1
)) = f (gpm(g
2
)) (16.3)
6
http://en.wikipedia.org/wiki/Molecular_biology [accessed 2008-07-20]
7
http://en.wikipedia.org/wiki/Evolutionary_biology [accessed 2008-07-20]
174 16 NEUTRALITY AND REDUNDANCY
Barnett [219] states that a neutral network has the constant innovation property if
1. the rate of discovery of innovations keeps constant for a reasonably large amount of
applications of the search operations [1314], and
2. if this rate is comparable with that of an unconstrained random walk.
Networks with this property may prove very helpful if they connect the optima in the tness
landscape. Stewart [2611] utilizes neutral networks and the idea of punctuated equilibria
in his extrema selection, a Genetic Algorithm variant that focuses on exploring individuals
which are far away from the centroid of the set of currently investigated candidate solutions
(but have still good objective values). Then again, Barnett [218] showed that populations
in Genetic Algorithm tend to dwell in neutral networks of high dimensions of neutrality
regardless of their objective values, which (obviously) cannot be considered advantageous.
The convergence on neutral networks has furthermore been studied by Bornberg-Bauer
and Chan [361], van Nimwegen et al. [2778, 2779], and Wilke [2942]. Their results show that
the topology of neutral networks strongly determines the distribution of genotypes on them.
Generally, the genotypes are drawn to the solutions with the highest degree of neutrality
on the neutral network Beaudoin et al. [242].
16.5 Redundancy: Problematic and Benecial
Denition D16.4 (Redundancy). Redundancy in the context of Global Optimization is
a feature of the genotype-phenotype mapping and means that multiple genotypes map to
the same phenotype, i. e., the genotype-phenotype mapping is not injective.
g
1
, g
2
: g
1
,= g
2
gpm(g
1
) = gpm(g
2
) (16.4)
The role of redundancy in the genome is as controversial as that of neutrality [2880].
There exist many accounts of its positive inuence on the optimization process. Ship-
man et al. [2458, 2480], for instance, tried to mimic desirable evolutionary properties of
RNA folding [1315]. They developed redundant genotype-phenotype mappings using voting
(both, via uniform redundancy and via a non-trivial approach), Turing machine-like binary
instructions, Cellular automata, and random Boolean networks [1500]. Except for the trivial
voting mechanism based on uniform redundancy, the mappings induced neutral networks
which proved benecial for exploring the problem space. Especially the last approach pro-
vided particularly good results [2458, 2480]. Possibly converse eects like epistasis (see
Chapter 17) arising from the new genotype-phenotype mappings have not been considered
in this study.
Redundancy can have a strong impact on the explorability of the problem space. When
utilizing a one-to-one mapping, the translation of a slightly modied genotype will always
result in a dierent phenotype. If there exists a many-to-one mapping between genotypes
and phenotypes, the search operations can create ospring genotypes dierent from the
parent which still translate to the same phenotype. The optimizer may now walk along a
path through this neutral network. If many genotypes along this path can be modied to
dierent ospring, many new candidate solutions can be reached [2480]. One example for
benecial redundancy is the extradimensional bypass idea discussed in Section 24.15.1.
The experiments of Shipman et al. [2479, 2481] additionally indicate that neutrality
in the genotype-phenotype mapping can have positive eects. In the Cartesian Genetic
Programming method, neutrality is explicitly introduced in order to increase the evolvability
(see ?? on page ??) [2792, 3042].
16.6. SUMMARY 175
Yet, Rothlauf [2338] and Shackleton et al. [2458] show that simple uniform redundancy
is not necessarily benecial for the optimization process and may even slow it down. Ronald
et al. [2324] point out that the optimization may be slowed down if the population of the
individuals under investigation contains many isomorphic genotypes, i. e., genotypes which
encode the same phenotype. If this isomorphismcan be identied an removed, a signicant
speedup may be gained [2324]. We can thus conclude that there is no use in introducing
encodings which, for instance, represent each phenotypic bit with two bits in the genotype
where 00 and 01 map to 0 and 10 and 11 map to 1. Another example for this issue is given
in Fig. 24.1.b on page 220.
16.6 Summary
Dierent from ruggedness which is always bad for optimization algorithms, neutrality has
aspects that may further as well as hinder the process of nding good solutions. Generally
we can state that degrees of neutrality very close to 1 degenerate optimization processes
to random walks. Some forms of neutral networks accompanied by low (nonzero) values of
can improve the evolvability and hence, increase the chance of nding good solutions.
Adverse forms of neutrality are often caused by bad design of the search space or
genotype-phenotype mapping. Uniform redundancy in the genome should be avoided where
possible and the amount of neutrality in the search space should generally be limited.
16.7 Needle-In-A-Haystack
Besides fully deceptive problems, one of the worst cases of tness landscapes is the needle-
in-a-haystack (NIAH) problem [? ] sketched in Fig. 11.1.g on page 140, where the optimum
occurs as isolated [1078] spike in a plane. In other words, small instances of extreme rugged-
ness combine with a general lack of information in the tness landscape. Such problems
are extremely hard to solve and the optimization processes often will converge prematurely
or take very long to nd the global optimum. An example for such tness landscapes is
the all-or-nothing property often inherent to Genetic Programming of algorithms [2729], as
discussed in ?? on page ??.
176 16 NEUTRALITY AND REDUNDANCY
Tasks T16
57. Describe the possible positive and negative aspects of neutrality in the tness land-
scape.
[10 points]
58. Construct two dierent objective functions f
1
, f
2
: R R
+
which have neutral parts
in the tness landscape. Like the three functions from Task 54 on page 165 and the
two from Task 56 on page 169, they should have the global minimum (optimum) 0
with objective value 0. Try to solve these functions with a trivial implementation of
Hill Climbing (see Algorithm 26.1 on page 230) by applying it 30 times to both of
them. Note your observations regarding the problem hardness and compare them to
your results from Task 54.
[7 points]
Chapter 17
Epistasis, Pleiotropy, and Separability
17.1 Introduction
17.1.1 Epistasis and Pleiotropy
In biology, epistasis
1
is dened as a form of interaction between dierent genes [2170].
The term was coined by Bateson [231] and originally meant that one gene suppresses the
phenotypical expression of another gene. In the context of statistical genetics, epistasis was
initially called epistacy by Fisher [928]. According to Lush [1799], the interaction between
genes is epistatic if the eect on the tness of altering one gene depends on the allelic state
of other genes.
Denition D17.1 (Epistasis). In optimization, epistasis is the dependency of the con-
tribution of one gene to the value of the objective functions on the allelic state of other
genes. [79, 692, 2007]
We speak of minimal epistasis when every gene is independent of every other gene. Then,
the optimization process equals nding the best value for each gene and can most eciently
be carried out by a simple greedy search (see Section 46.3.1) [692]. A problem is maximally
epistatic when no proper subset of genes is independent of any other gene [2007, 2562]. Our
understanding and eects of epistasis come close to another biological phenomenon:
Denition D17.2 (Pleiotropy). Pleiotropy
2
denotes that a single gene is responsible for
multiple phenotypical traits [1288, 2944].
Like epistasis, pleiotropy can sometimes lead to unexpected improvements but often is harm-
ful for the evolutionary system [77]. Both phenomena may easily intertwine. If one gene
epistatically inuences, for instance, two others which are responsible for distinct phenotyp-
ical traits, it has both epistatic and pleiotropic eects. We will therefore consider pleiotropy
and epistasis together and when discussing the eects of the latter, also implicitly refer to
the former.
Example E17.1 (Pleiotropy, Epistasis, and a Dinosaur).
In Figure 17.1 we illustrate a ctional dinosaur along with a snippet of its ctional genome
1
http://en.wikipedia.org/wiki/Epistasis [accessed 2008-05-31]
2
http://en.wikipedia.org/wiki/Pleiotropy [accessed 2008-03-02]
178 17 EPISTASIS, PLEIOTROPY, AND SEPARABILITY
gene1
color
gene2 gene3 gene4
length
length
shape
Figure 17.1: Pleiotropy and epistasis in a dinosaurs genome.
consisting of four genes. Gene 1 inuences the color of the creature and is neither pleiotropic
nor has any epistatic relations. Gene 2, however, exhibits pleiotropy since it determines the
length of the hind legs and forelegs. At the same time, it is epistatically connected with
gene 3 which too, inuences the length of the forelegs maybe preventing them from looking
exactly like the hind legs. The fourth gene is again pleiotropic by determining the shape of
the bone armor on the top of the dinosaurs skull.
Epistasis can be considered as the higher-order or non-main eects in a model predicting
tness values based on interactions of the genes of the genotypes from the point of view of
Design of Experiments (DOE) [2285].
17.1.2 Separability
In the area of optimizing over continuous problem spaces (such as X R
n
), epistasis and
pleiotropy are closely related to the term separability. Separbility is a feature of the objective
functions of an optimization problem [2668]. A function of n variables is separable if it can
be rewritten as a sum of n functions of just one variable [1162, 2099]. Hence, the decision
variables involved in the problem can be optimized independently of each other, i. e., are
minimally epistatic, and the problem is said to be separable according to the formal denition
given by Auger et al. [147, 1181] as follows:
Denition D17.3 (Separability). A function f : X
n
R (where usually X R is
separable if and only if
arg min
(x
1
,..,x
n
)
f(x
1
, .., x
n
) = (arg min
x
1
f(x
1
, ..) , .., arg min
x
n
f(.., x
n
)) (17.1)
Otherwise, f(x) is called a nonseparable function.
17.2. THE PROBLEM 179
If a function f(x) is separable, the parameters x
1
, .., x
n
forming the candidate solution x X
are called independent. A separable problem is decomposable, as already discussed under
the topic of epistasis.
Denition D17.4 (Nonseparability). A function f : X
n
R (where usually x R
is m-nonseparable if at most m of its parameters x
i
are not independent. A nonseparable
function f(x) is called fully-nonseparable if any two of its parameters x
i
are not independent.
The higher the degree of nonseparability, the harder a function will usually become more
dicult for optimization [147, 1181, 2635]. Often, the term nonseparable is used in the sense
of fully-nonseparable. In other words, in between separable and fully nonseparable problems,
a variety of partially separable problems exists. Denition D17.5 is, hence, an alternative
for Denition D17.4.
Denition D17.5 (Partial Separability). If an objective function f : X
n
R
+
can be
expressed as
f(x) =
M
i=1
f
i
_
x
I
i,1
, .., x
I
i,|I
i
|
_
(17.2)
where each of the M component functions f
i
: X
|I
i
|
R depends on a subset I
i
1..n of
the n decision variables [612, 613, 1136, 1137].
17.1.3 Examples
Examples of problems with a high degree of epistasis are Kaumans NK tness land-
scape [1499, 1501] (Section 50.2.1), the p-Spin model [86] (Section 50.2.2), and the tun-
able model by Weise et al. [2910] (Section 50.2.7). Nonseparable objective functions often
used for benchmarking are, for instance, the Griewank function [1106, 2934, 3026] (see Sec-
tion 50.3.1.11) and Rosenbrocks Function [3026] (see Section 50.3.1.5). Partially separable
test problems are given in, for example, [2670, 2708].
17.2 The Problem
As sketched in Figure 17.2, epistasis has a strong inuence on many of the previously
discussed problematic features. If one gene can turn o or aect the expression of other
genes, a modication of this gene will lead to a large change in the features of the phenotype.
Hence, the causality will be weakened and ruggedness ensues in the tness landscape. It also
becomes harder to dene search operations with exploitive character. Moreover, subsequent
changes to the deactivated genes may have no inuence on the phenotype at all, which
would then increase the degree of neutrality in the search space. Bowers [375] found that
representations and genotypes with low pleiotropy lead to better and more robust solutions.
Epistasis and pleiotropy are mainly aspects of the way in which objective functions f f ,
the genome G, and the genotype-phenotype mapping are dened and interact. They should
be avoided where possible.
180 17 EPISTASIS, PLEIOTROPY, AND SEPARABILITY
ruggedness
multi-
modality
weakcausality
high
epistasis
causes
neutrality
Needleina
Haystack
Figure 17.2: The inuence of epistasis on the tness landscape.
Example E17.2 (Epistasis in Binary Genomes).
Consider the following three objective functions f
1
to f
3
all subject to maximization. All three
are based on a problem space consisting of all bit strings of length ve
_
X
B
= B
5
= 1, 0
5
_
.
f
1
(x) =
i=0
4x[i] (17.3)
f
2
(x) = (x[0] x[1]) + (x[2] x[3]) +x[4] (17.4)
f
3
(x) =
i=0
4x[i] (17.5)
Furthermore, the search space be identical to the problem space, i. e., G = X. In the
optimization problem dened by X
B
and f , the elements of the candidate solutions are
totally independent and can be optimized separately. Thus, f
1
is minimal epistatic. In f
2
,
only the rst two (x[0], x[1]) and second two (x[2], x[3]) genes of the each genotype inuence
each other. Both groups are independent from each other and from x[4]. Hence, the problem
has some epistasis. f
3
is a needle-in-a-haystack problem where all ve genes directly inuence
each other. A single zero in a candidate solution deactivates all other genes and the optimum
the string containing all ones is the only point in the search space with non-zero objective
values.
Example E17.3 (Epistasis in Genetic Programming).
Epistasis can be observed especially often Genetic Programming. In this area of Evolution-
ary Computation the problem spaces are sets of all programs in (usually) domain-specic
languages and we try to nd candidate solutions which solve a given problem algorithmi-
cally.
1 int gcd(int a, int b) { //skeleton code
2 int t; //skeleton code
3 while(b!=0) { // ------------------
4 t = b; //
5 b = a % b; // Evolved Code
6 a = t; //
7 } // ------------------
8 return a; //skeleton code
9 } //skeleton code
Listing 17.1: A program computing the greatest common divisor.
17.2. THE PROBLEM 181
Let us assume that we wish to evolve a program computing the greatest common divisor of
two natural numbers a, b N
1
in a C-style representation (X = C). Listing 17.1 would be
a program which fullls this task. As search space G we could, for instance, use all trees
where the inner nodes are chosen from while, =, !=, ==, %, +, -, each accepting two child
nodes, and the leaf nodes are either xa, b, t, 1, or 0. The evolved trees could be pasted by
the genotype-phenotype mapping into some skeleton code as indicated in Listing 17.1.
The genes of this representation are the nodes of the trees. A unary search operator
(mutation) could exchange a node inside a genotype with a randomly created one and a
binary search operator (crossover) could swap subtrees between two genotypes. Such a
mutation operator could, for instance, replace the t = b in Line 4 of Listing 17.1 with
a t = a. Although only a single gene of the program has been modied, its behavior
has now changed completely. Without stating any specic objective functions, it should be
clear that the new program will have very dierent (functional) objective values. Changing
the instruction has epistatic impact on the behavior of the rest of the program the loop
declared in Line 3, for instance, may now become an endless loop for many inputs a and b.
Example E17.4 (Epistasis in Combinatorial Optimization: Bin Packing).
In Example E1.1 on page 25 we introduced bin packing as a typical combinatorial optimiza-
tion problem. Later, in Task 67 on page 238 we propose a solution approach to a variant of
this problem. As discussed in this task and sketched in Figure 17.3, we suggest representing
a solution to bin packing as a permutation of the n objects to be packed into the bin and
to set G = X = (n). In other words, a candidate solution describes the order in which
the objects have to be placed into the bin and is processed from left to right. Whenever
the current object does not t into the current bin anymore, a new bin is opened. An
implementation of this idea is given in Section 57.1.2.1 and an example output of a test
program applying Hill Climbing, Simulated Annealing, a random walk, and the random
sampling algorithm is listen in Listing 57.16 on page 903.
As can be seen in that listing of results, neither Hill Climbing nor Simulated Annealing
can come very close to the known optimal solutions. One reason for this performance is
that the permutation representation for bin packing exhibits some epistasis. In Figure 17.3,
we sketch how the exchange of two genes near the beginning of a candidate solution x
1
can
lead to a new solution x
2
with a very dierent behavior: Due to the sequential packing of
objects into bins according to the permutation described by the candidate solutions, object
groupings way after the actually swapped objects may also be broken down. In other words,
the genes at the beginning of the representation have a strong inuence on the behavior at
its end. Interestingly (and obviously), this inuence is not mutual: the genes at the end of
the permutation have no inuence on the genes preceding them.
Suggestions for a better encoding, an extension of the permutation encoding with so-
called separators marking the beginning and ending of a bin, have been made by Jones and
Beltramo [1460] and Stawowy [2604]. Khuri et al. [1534] suggest a method which works
completely without permutations: Each gene of a string of length n stands for one of the
n objects and its (numerical) allele denotes the bin into which the object belongs. Though
this solution allows for infeasible solutions, it does not suer from the epistasis phenomenon
discussed in this example.
182 17 EPISTASIS, PLEIOTROPY, AND SEPARABILITY
0
a =2
0
1
a =3
1
2
a =3
2
3
a =3
3
4
a =4
4
5
a =5
5
6
a =6
6
7
a =7
7
8
a =8
8
9
a =9
9
10
a =10
10
11
a =12
11
g =
1
x =( ,11,6, ,2,9,4,8,5,7,1,3)
1
10 0 g =
1
x =( ,11,6, ,2,9,4,8,5,7,1,3)
2
0 10
0
a =2
0
1
a =3
1
2
a =3
2
3
a =3
3
4
a =4
4
5
a =5
5
6
a =6
6
7
a =7
7
8
a =8
8
9
a =9
9
10
a =10
10
11
a =12
11
bin1 bin2 bin3 bin4 bin5 bin6
b
i
n
s
i
z
e
1
4
12 objects (with identifiers 0 to 11) and
sizesa=(2,3,3,3,4,5,5,7,8,9,11,12)
shouldbepackedintobinsofsizeb=14
0
a =2
0
10
a =10
10
0
a =2
0
6
a =6
6
10
a =10
10
11
a =12
11
bin1 bin2 bin3 bin4 bin5 bin6 bin7
1
a =3
1
2
a =3
2
3
a =3
3
4
a =4
4
5
a =5
5
7
a =7
7
8
a =8
8
9
a =9
9
0
a =2
0
10
a =10
10
swapthefirstandfourthelementofthepermutation
Firstcandidatesolutionx requires6bins.
1
Candidatex ,aslightlymodifiedversionofx ,
requires7binsandhasaverydifferent
,
behavior
,
.
2 1
Figure 17.3: Epistasis in the permutation-representation for bin packing.
Generally, epistasis and conicting objectives in multi-objective optimization should be dis-
tinguished from each other. Epistasis as well as pleiotropy is a property of the inuence of
the editable elements (the genes) of the genotypes on the phenotypes. Objective functions
can conict without the involvement of any of these phenomena. We can, for example, dene
two objective functions f
1
(x) = x and f
2
(x) = x which are clearly contradicting regardless
of whether they both are subject to maximization or minimization. Nevertheless, if the can-
didate solutions x and the genotypes are simple real numbers and the genotype-phenotype
mapping is an identity mapping, neither epistatic nor pleiotropic eects can occur.
Naudts and Verschoren [2008] have shown for the special case of length-two binary string
genomes that deceptiveness does not occur in situations with low epistasis and also that
objective functions with high epistasis are not necessarily deceptive. [239] state the de-
ceptiveness is a special case of epistatic interaction (while we would rather say that it is
a phenomenon caused by epistasis). Another discussion about dierent shapes of tness
landscapes under the inuence of epistasis is given by Beerenwinkel et al. [248].
17.3 Countermeasures
We have shown that epistasis is a root cause for multiple problematic features of optimization
tasks. General countermeasures against epistasis can be divided into two groups. The
symptoms of epistasis can be mitigated with the same methods which increase the chance
of nding good solutions in the presence of ruggedness or neutrality.
17.3.1 Choice of the Representation
Epistasis itself is a feature which results from the choice of the search space structure, the
17.3. COUNTERMEASURES 183
search operations, the genotype-phenotype mapping, and the structure of the problem space.
Avoiding epistatic eects should be a major concern during their design.
Example E17.5 (Bad Representation Design: Algorithm 1.1).
Algorithm 1.1 on page 40 is a good example for bad search space design. There, the
assignment of n objects to k bins in order to solve the bin packing problem is represented
as a permutation of the rst n natural numbers. The genotype-phenotype mapping starts
to take numbers from the start of the genotype sequentially and places the corresponding
objects into the rst bin. If the object identied by the current gene does not ll into the
bin anymore, the GPM continues with the next bin.
Representing an assignment of objects to bins like this has one drawback: if the genes at
lower loci, i. e., close to the beginning of the genotype, are modied, this may change many
subsequent assignments. If a large object is swapped from the back to an early bin, the
other objects may be shifted backwards and many of them will land in dierent bins than
before. The meaning of the gene at locus i in the genotype depends on the allelic states of
all genes at loci smaller than i. Hence, this representation is quite epistatic.
Interestingly, using the representation suggested in Example E1.1 on page 25 and in
Equation 1.2 directly as search space would not only save us the work of implementing a
genotype-phenotype mapping, it would also exhibit signicantly lower epistasis.
Choosing the problem space and the genotype-phenotype mapping eciently can lead to a
great improvement in the quality of the solutions produced by the optimization process [2888,
2905]. Introducing specialized search operations can achieve the same [2478].
We outline some general rules for representation design in Chapter 24. Considering these
suggestions may further improve the performance of an optimizer.
17.3.2 Parameter Tweaking
Using larger populations and favoring explorative search operations seems to be helpful in
epistatic problems since this should increase the diversity. Shinkai et al. [2478] showed that
applying (a) higher selection pressure, i. e., increasing the chance to pick the best candidate
solutions for further investigation instead of the weaker ones, and (b) extinctive selection,
i. e., only working with the newest produced set of candidate solutions while discarding
the ones from which they were derived, can also increase the reliability of an optimizer to
nd good solutions. These two concepts are slightly contradicting, so careful adjustment of
the algorithm settings appears to be vital in epistatic environments. Shinkai et al. [2478]
observed higher selection pressure also leads to earlier convergence, a fact that we pointed
out in Chapter 13.
17.3.3 Linkage Learning
According to Winter et al. [2960], linkage is the tendency for alleles of dierent genes to
be passed together from one generation to the next in genetics. This usually indicates that
these genes are closely located in the same chromosome. In the context of Evolutionary
Algorithms, this notation is not useful since identifying spatially close elements inside the
genotypes g G is trivial. Instead, we are interested in alleles of dierent genes which have
a joint eect on the tness [1980, 1981].
Identifying these linked genes, i. e., learning their epistatic interaction, is very helpful
for the optimization process. Such knowledge can be used to protect building blocks
3
from
being destroyed by the search operations (such as crossover in Genetic Algorithms), for
instance. Finding approaches for linkage learning has become an especially popular discipline
3
See Section 29.5.5 for information on the Building Block Hypothesis.
184 17 EPISTASIS, PLEIOTROPY, AND SEPARABILITY
in the area of Evolutionary Algorithms with binary [552, 1196, 1981] and real [754] genomes.
Two important methods from this area are the messy GA (mGA, see Section 29.6) by
Goldberg et al. [1083] and the Bayesian Optimization Algorithm (BOA) [483, 2151]. Module
acquisition [108] may be considered as such an eort.
17.3.4 Cooperative Coevolution
Variable Interaction Learning (VIL) techniques can be used to discover the relations be-
tween decision variables, as introduced by Chen et al. [551] and discussed in the context of
cooperative coevolution in Section 21.2.3 on page 204.
17.3. COUNTERMEASURES 185
Tasks T17
59. What is the dierence between epistasis and pleiotropy?
[5 points]
60. Why does epistasis cause ruggedness in the tness landscape?
[5 points]
61. Why can epistasis cause neutrality in the tness landscape?
[5 points]
62. Why does pleiotropy cause ruggedness in the tness landscape?
[5 points]
63. How are epistasis and separability related with each other?
[5 points]
Chapter 18
Noise and Robustness
18.1 Introduction Noise
In the context of optimization, three types of noise can be distinguished. The rst form is
noise in the training data used as basis for learning or the objective functions [3019] (i). In
many applications of machine learning or optimization where a model for a given system is
to be learned, data samples including the input of the system and its measured response are
used for training.
Example E18.1 (Noise in the Training Data).
Some typical examples of situations where training data is the basis for the objective function
evaluation are
1. the usage of Global Optimization for building classiers (for example for predicting
buying behavior using data gathered in a customer survey for training),
2. the usage of simulations for determining the objective values in Genetic Programming
(here, the simulated scenarios correspond to training cases), and
3. the tting of mathematical functions to (x, y)-data samples (with articial neural
networks or symbolic regression, for instance).
Since no measurement device is 100% accurate and there are always random errors, noise is
present in such optimization problems.
Besides inexactnesses and uctuations in the input data of the optimization process, pertur-
bations are also likely to occur during the application of its results. This category subsumes
the other two types of noise: perturbations that may arise from (ii) inaccuracies in the pro-
cess of realizing the solutions and (iii) environmentally induced perturbations during the
applications of the products.
Example E18.2 (Creating the perfect Tire).
This issue can be illustrated by using the process of developing the perfect tire for a car
as an example. As input for the optimizer, all sorts of material coecients and geometric
constants measured from all known types of wheels and rubber could be available. Since
these constants have been measured or calculated from measurements, they include a certain
degree of noise and imprecision (i).
188 18 NOISE AND ROBUSTNESS
The result of the optimization process will be the best tire construction plan discovered
during its course and it will likely incorporate dierent materials and structures. We would
hope that the tires created according to the plan will not fall apart if, accidently, an extra
0.0001% of a specic rubber component is used (ii). During the optimization process,
the behavior of many construction plans will be simulated in order to nd out about their
utility. When actually manufactured, the tires should not behave unexpectedly when used in
scenarios dierent from those simulated (iii) and should instead be applicable in all driving
situations likely to occur.
The eects of noise in optimization have been studied by various researchers; Miller and
Goldberg [1897, 1898], Lee and Wong [1703], and Gurin and Rastrigin [1155] are some of
them. Many Global Optimization algorithms and theoretical results have been proposed
which can deal with noise. Some of them are, for instance, specialized
1. Genetic Algorithms [932, 1544, 2389, 2390, 2733, 2734],
2. Evolution Strategies [168, 294, 1172], and
3. Particle Swarm Optimization [1175, 2119] approaches.
18.2 The Problem: Need for Robustness
The goal of Global Optimization is to nd the global optima of the objective functions. While
this is fully true from a theoretical point of view, it may not suce in practice. Optimization
problems are normally used to nd good parameters or designs for components or plans to
be put into action by human beings or machines. As we have already pointed out, there will
always be noise and perturbations in practical realizations of the results of optimization.
There is no process in the world that is 100% accurate and the optimized parameters,
designs, and plans have to tolerate a certain degree of imprecision.
Denition D18.1 (Robustness). A system in engineering or biology isrobust if it is able
to function properly in the face of genetic or environmental perturbations [1288, 2833].
Therefore, a local optimum (or even a non-optimal element) for which slight disturbances
only lead to gentle performance degenerations is usually favored over a global optimum
located in a highly rugged area of the tness landscape [395]. In other words, local optima in
regions of the tness landscape with strong causality are sometimes better than global optima
with weak causality. Of course, the level of this acceptability is application-dependent.
Figure 18.1 illustrates the issue of local optima which are robust vs. global optima which
are not. Table 18.1 gives some examples on problems which require robust optimization.
Example E18.3 (Critical Robustness).
When optimizing the control parameters of an airplane or a nuclear power plant, the global
optimum is certainly not used if a slight perturbation can have hazardous eects on the
system [2734].
Example E18.4 (Robustness in Manufacturing).
Wiesmann et al. [2936, 2937] bring up the topic of manufacturing tolerances in multilayer
optical coatings. It is no use to nd optimal congurations if they only perform optimal
when manufactured to a precision which is either impossible or too hard to achieve on a
constant basis.
18.2. THE PROBLEM: NEED FOR ROBUSTNESS 189
Example E18.5 (Dynamic Robustness in Road-Salting).
The optimization of the decision process on which roads should be precautionary salted for
areas with marginal winter climate is an example of the need for dynamic robustness. The
global optimum of this problem is likely to depend on the daily (or even current) weather
forecast and may therefore be constantly changing. Handa et al. [1177] point out that it is
practically infeasible to let road workers follow a constantly changing plan and circumvent
this problem by incorporating multiple road temperature settings in the objective function
evaluation.
Example E18.6 (Robustness in Nature).
Tsutsui et al. [2733, 2734] found a nice analogy in nature: The phenotypic characteristics
of an individual are described by its genetic code. During the interpretation of this code,
perturbations like abnormal temperature, nutritional imbalances, injuries, illnesses and so
on may occur. If the phenotypic features emerging under these inuences have low tness,
the organism cannot survive and procreate. Thus, even a species with good genetic material
will die out if its phenotypic features become too sensitive to perturbations. Species robust
against them, on the other hand, will survive and evolve.
globaloptimum
robustlocaloptimum
f(x)
X
Figure 18.1: A robust local optimum vs. a unstable global optimum.
Table 18.1: Applications and Examples of robust methods.
Area References
Combinatorial Problems [644, 1177]
Distributed Algorithms and Sys-
tems
[52, 1401, 2898]
190 18 NOISE AND ROBUSTNESS
Engineering [52, 644, 1134, 1135, 2936, 2937]
Graph Theory [52, 63, 67, 644, 1401]
Image Synthesis [375]
Logistics [1177]
Mathematics [2898]
Motor Control [489]
Multi-Agent Systems [2925]
Software [1401]
Wireless Communication [63, 67, 644]
18.3 Countermeasures
For the special case where the phenome is a real vector space (X R
n
), several approaches
for dealing with the need for robustness have been developed. Inspired by Taguchi meth-
ods
1
[2647], possible disturbances are represented by a vector = (
1
,
2
, ..,
n
)
T
,
i
R in the method suggested by Greiner [1134, 1135]. If the distributions and inu-
ences of the
i
are known, the objective function f(x) : x X can be rewritten as
f(x, ) [2937]. In the special case where is normally distributed, this can be simplied
to
f
_
(x
1
+
1
, x
2
+
2
, .., x
n
+
n
)
T
_
. It would then make sense to sample the probability
distribution of a number of t times and to use the mean values of
of the objective function f is known, Equation 18.1 can be minimized. This approach is
also used in the work of Wiesmann et al. [2936, 2937] and basically turns the optimization
algorithm into something like a maximum likelihood estimator (see Section 53.6.2 and Equa-
tion 53.257 on page 695).
f
(x) =
1
t
t
i=1
_
y
f(x,
i
)
_
2
(18.1)
This method corresponds to using multiple, dierent training scenarios during the objective
function evaluation in situations where X , R
n
. By adding random noise and articial
perturbations to the training cases, the chance of obtaining robust solutions which are
stable when applied or realized under noisy conditions can be increased.
1
http://en.wikipedia.org/wiki/Taguchi_methods [accessed 2008-07-19]
Chapter 19
Overtting and Oversimplication
In all scenarios where optimizers evaluate some of the objective values of the candidate
solutions by using training data, two additional phenomena with negative inuence can be
observed: overtting and (what we call) oversimplication. This is especially true if the
solutions represent functional dependencies inside the training data S
t
.
Example E19.1 (Function Approximation).
Let us assume that S
t
S be the training data sample from a space S of possible data.
Let us assume in the following that this space would be the cross product S = A B of a
space B containing the values of the variables whose dependencies on input variables from
A should be learned. The structure of each single element s[i] of the training data sample
S
t
= (s[0], s[1], .., s[n 1]) is s[i] = (a[i], b[i]) : a[i] A, b[i] B. The candidate solutions would
actually be functions x : A B and the goal is to nd the optimal function x
which exactly
represents the (previously unknown) dependencies between A and B as they occur in S
t
,
i. e., a function with x
n1
i=0
[x(a[i]) b[i][ or f
SE
(x) =
n1
i=0
(x(a[i]) b[i])
2
.
19.1 Overtting
19.1.1 The Problem
Overtting
1
is the emergence of an overly complicated candidate solution in an optimization
process resulting from the eort to provide the best results for as much of the available
training data as possible [792, 1040, 2397, 2531].
Denition D19.1 (Overtting). A candidate solution ` x X optimized based on a set
of training data S
t
is considered to be overtted if a less complicated, alternative solution
x
X exists which has a smaller (or equal) error for the set of all possible (maybe even
innitely many), available, or (theoretically) producible data samples S S.
1
http://en.wikipedia.org/wiki/Overfitting [accessed 2007-07-03]
192 19 OVERFITTING AND OVERSIMPLIFICATION
Hence, overtting also stands for the creation of solutions which are not robust. Notice
that x
(a) = b for A = B = R
shown in Fig. 19.1.b has been sampled three times, as sketched in Fig. 19.1.a. There exists
no other polynomial of a degree of two or less that ts to these samples than x
. Optimizers,
however, could also nd overtted polynomials of a higher degree such as ` x in Fig. 19.1.c
which also match the data. Here, ` x plays the role of the overly complicated solution which
will perform as good as the simpler model x
.
a
b
x
Fig. 19.1.c: The overly complex
variant ` x.
Figure 19.1: Overtting due to complexity.
A very common cause for overtting is noise in the sample data. As we have already pointed
out, there exists no measurement device for physical processes which delivers perfect results
without error. Surveys that represent the opinions of people on a certain topic or randomized
simulations will exhibit variations from the true interdependencies of the observed entities,
too. Hence, data samples based on measurements will always contain some noise.
Example E19.3 (Overtting caused by Noise).
In Figure 19.2 we have sketched how such noise may lead to overtted results. Fig. 19.2.a
illustrates a simple physical process obeying some quadratic equation. This process has been
measured using some technical equipment and the n = 100 = [S[ noisy samples depicted in
Fig. 19.2.b have been obtained. Fig. 19.2.c shows a function ` x resulting from optimization
that ts the data perfectly. It could, for instance, be a polynomial of degree 99 which goes
right through all the points and thus, has an error of zero. Hence, both f
E
(` x) and f
SQ
(` x)
from Example E19.1 would be zero. Although being a perfect match to the measurements,
this complicated solution does not accurately represent the physical law that produced the
sample data and will not deliver precise results for new, dierent inputs.
2
We will discuss overtting in conjunction with Genetic Programming-based symbolic regression in Sec-
tion 49.1 on page 531.
3
http://en.wikipedia.org/wiki/Polynomial [accessed 2007-07-03]
4
http://en.wikipedia.org/wiki/Polynomial_interpolation [accessed 2008-03-01]
19.1. OVERFITTING 193
a
b
x
o
f
o
b
j
e
c
t
i
v
e
s
n
Figure 20.2: The proportion of non-dominated candidate solutions for several population
sizes ps and dimensionalities n.
The fraction of non-dominated elements in the random populations is illustrated in Fig-
ure 20.2. We nd that it again seems to rise exponentially with n. The population size ps in
Figure 20.2 seems to have only an approximately logarithmically positive inuence: If we list
the population sizes required to keep the fraction of non-dominated candidate solutions at the
same level of P (
#
dom = 0[ ps = 5, n = 2) 0.457, we nd P (
#
dom = 0[ ps = 12, n = 3)
0.466, P (
#
dom = 0[ ps = 35, n = 4) 0.447, P (
#
dom = 0[ ps = 90, n = 5) 0.455,
P (
#
dom = 0[ ps = 250, n = 6) 0.452, P (
#
dom = 0[ ps = 650, n = 7) 0.460, and
P (
#
dom = 0[ ps = 1800, n = 8) 0.459. An extremely coarse rule of thumb for this ex-
periment would hence be that around 0.6e
n
individuals are required in the population to
hold the proportion of non-dominated at around 46%.
20.3. COUNTERMEASURES 201
To sum things up, the increasing dimensionality of the objective space leads to three main
problems [1420]:
1. The performance of traditional approaches based solely on Pareto comparisons dete-
riorates.
2. The utility of the solutions cannot be understood by the human operator anymore.
3. The number of possible Pareto-optimal solutions may increase exponentially.
Finally, it should be noted that there exists also interesting research where objectives are
added to a single-objective problem to make it easier [1553, 2025] which you can nd sum-
marized in Section 13.4.6. Indeed, Brockho et al. [425] showed that in some cases, adding
objective functions may be benecial (while it is not in others).
20.3 Countermeasures
Various countermeasures have been proposed against the problem of dimensionality. Nice
surveys on contemporary approaches to many-objective optimization with evolutionary ap-
proaches, to the diculties arising in many-objective, and on benchmark problems have
been provided by Hiroyasu et al. [1237], Ishibuchi et al. [1420], and Lopez Jaimes and Coello
Coello [1775]. In the following we list some of approaches for many-objective optimization,
mostly utilizing the information provided in [1237, 1420].
20.3.1 Increasing Population Size
The most trivial measure, however, has not been introduced in these studies: increasing
the population size. Well, from Example E20.1 we know that this will work only for a
few objective functions and we have to throw in exponentially more individuals in order
to ght the inuence of many objectives. For ve or six objective functions, we may still
be able to obtain good results if we do this for the price of many additional objective
function evaluations. If we follow the rough approximation equation from the example, it
would already take a population size of around ps = 100 000 in order to keep the fraction of
non-dominated candidate solutions below 0.5 (in the scenario used there, that is). Hence,
increasing the population size can only get us so far.
20.3.2 Increasing Selection Pressure
A very simple idea for improving the way multi-objective approaches scale with increasing
dimensionality is to increase the exploration pressure into the direction of the Pareto frontier.
Ishibuchi et al. [1420] distinguish approaches which modify the denition of domination in
order to reduce the number non-dominated candidate solutions in the population [2403] and
methods which assign dierent ranks to non-dominated solutions [636, 829, 830, 1576, 1635,
2629]. Farina and Amato [894] propose to rely fuzzy Pareto methods instead of pure Pareto
comparisons.
20.3.3 Indicator Function-based Approaches
Ishibuchi et al. [1420] point further out that tness assignment methods could be used which
are not based on Pareto dominance. According to them, one approach is using indicator
functions such as those involving hypervolume metrics [1419, 2838].
202 20 DIMENSIONALITY (OBJECTIVE FUNCTIONS)
20.3.4 Scalerizing Approaches
Another tness assignment method are scalarizing functions [1420] which treat many-
objective problems with single-objective-style methods. Advanced single-objective optimiza-
tion like those developed by Hughes [1303] could be used instead of Pareto comparisons.
Wagner et al. [2837, 2838] support the results and assumptions of Hughes [1303] in terms
of single-objective being better in many-objective problems than traditional multi-objective
Evolutionary Algorithms such as NSGA-II [749] or SPEA 2 [3100], but also refute the gen-
eral idea that all Pareto-based cannot cope with their performance. They also show that
more recent approaches [880, 2010, 3096] which favor more than just distribution aspects
can perform very well. Other scalarizing methods can be found in [1304, 1416, 1417, 1437]
20.3.5 Limiting the Search Area in the Objective Space
Hiroyasu et al. [1237] point out that the search area in the objective space can be lim-
ited. This leads to a decrease of the number of non-dominated points [1420] and can be
achieved by either incorporating preference information [746, 933, 2695] or by reducing the
dimensionality [422424, 745, 2411].
20.3.6 Visualization Methods
Approaches for visualizing solutions of many-objective problems in order to make them
more comprehensible have been provided by Furuhashi and Yoshikawa [1002], K oppen and
Yoshida [1577], Obayashi and Sasaki [2060] and in [1893].
Chapter 21
Scale (Decision Variables)
In Chapter 20, we discussed how an increasing number of objective functions can threaten
the performance of optimization algorithms. We referred to this problem as dimensionality,
i. e., the dimension of the objective space. However, there is another space in optimization
whose dimension can make an optimization problem dicult: the search space G. The
curse of dimensionality
1
of the search space stands for the exponential increase of its
volume with the number of decision variables [260, 261]. In order to better distinguish
between the dimensionality of the search and the objective space, we will refer to the former
one as scale.
In Example E21.1, we give an example for the growth of the search space with the scale
of a problem and in Table 21.1, some large-scale optimization problems are listed.
Example E21.1 (Small-scale versus large-scale).
The problem of small-scale versus large-scale problems can best be illustrated using discrete
or continuous vector-based search spaces as example. If we search, for instance, in the
natural interval G = (1..10), there are ten points which could be the optimal solution.
When G = (1..10)
2
, there exist one hundred possible results and for G = (1..10)
3
, it is
already one thousand. In other words, if the number of points in G be n, then the number
of points in G
m
is n
m
.
Table 21.1: Applications and Examples of Large-Scale Optimization.
Area References
Data Mining [162, 994, 1748]
Databases [162]
Distributed Algorithms and Sys-
tems
[1748, 3031]
Engineering [2860]
Function Optimization [551, 1927, 2130, 2486, 3020]
Graph Theory [3031]
Software [3031]
21.1 The Problem
Especially in combinatorial optimization, the issue of scale has been considered for a long
time. Here, the computational complexity (see Section 12.1) denotes how many algorithm
1
http://en.wikipedia.org/wiki/Curse_of_dimensionality [accessed 2009-10-20]
204 21 SCALE (DECISION VARIABLES)
steps are needed to solve a problem which consists of n parameters. As sketched in Fig-
ure 12.1 on page 145, the time requirements to solve problems which require step numbers
growing exponentially with n quickly exceed any feasible bound. Here, especially AT-hard
problems should be mentioned, since they always exhibit this feature.
Besides combinatorial problems, numerical problems suer the curse of dimensionality
as well.
21.2 Countermeasures
21.2.1 Parallelization and Distribution
When facing problems of large-scale, the problematic symptom is the high runtime require-
ment. Thus, any measure to use as much computational power as available can be a remedy.
Obviously, there (currently) exists no way to solve large-scale AT-hard problems exactly
within feasible time. With more computers, cores, or hardware, only a linear improvement
of runtime can be achieved at most. However, for problems residing in the gray area between
feasible and infeasible, distributed computing [1747] may be the method of choice.
21.2.2 Genetic Representation and Development
The best way to solve a large-scale problem is to solve it as a small-scale problem. For some
optimization tasks, it is possible to choose a search space which has a smaller size than
the problem space ([G[ < [X[). Indirect genotype-phenotype mappings can link the spaces
together, as we will discuss later in Section 28.2.2.
Here, one option are generative mappings (see Section 28.2.2.1) which step-by-step con-
struct a complex phenotype by translating a genotype according to some rules. Grammatical
Evolution, for instance, unfolds a symbol according to a BNF grammar with rules identied
in a genotype. This recursive process can basically lead to arbitrarily complex phenotypes.
Another approach is to apply a developmental, ontogenic mapping (see Section 28.2.2.2)
that uses feedback from simulations or objective functions in this process.
Example E21.2 (Dimension Reduction via Developmental Mapping).
Instead of optimizing (may be up to a million) points on the surface of an airplanes wing
(see Example E2.5 and E4.1) in order to nd an optimal shape, the weights of an articial
neural network used to move surface points to a benecial conguration could be optimized.
The second task would involve signicantly fewer variables, since an articial neural network
with usually less than 1000 or even 100 weights could be applied. Of course, the number
of possible solutions which can be discovered by this approach decreases (it is at most [G[).
However, the problem can become tangible and good results may be obtained in reasonable
time.
21.2.3 Exploiting Separability
Sometimes, parts of candidate solutions are independent from each other and can be opti-
mized more or less separately. In such a case of low epistasis (see Chapter 17), a large-scale
problem can be divided into several problems of smaller-scale which can be optimized sepa-
rately. If solving a problem of scale n takes 2
n
algorithm steps, solving two problems of scale
0.5n will clearly lead to a great runtime reduction. Such a reduction may even be worth
21.2. COUNTERMEASURES 205
sacricing some solution quality. If the optimization problem at hand exhibits low epistasis
or is separable, such a sacrice may even be unnecessary.
Coevolution has shown to be an ecient approach in combinatorial optimization [1311].
If extended with a cooperative component, i. e., to Cooperative Coevolution [2210, 2211],
it can eciently exploit separability in numerical problems and lead to better results [551,
3020].
21.2.4 Combination of Techniques
Generally, it can be a good idea to concurrently use sets of algorithm [1689] or portfo-
lios [2161] working on the same or dierent populations. This way, the dierent strengths
of the optimization methods can be combined. In the beginning, for instance, an algorithm
with good convergence speed may be granted more runtime. Later, the focus can shift
towards methods which can retain diversity and are not prone to premature convergence.
Alternatively, a sequential approach can be performed, which starts with one algorithm and
switches to another one when no further improvements are found [? ]. This way, rst an
interesting area in the search space can be found which then can be investigated in more
detail.
Chapter 22
Dynamically Changing Fitness Landscape
It should also be mentioned that there exist problems with dynamically changing tness
landscapes [396, 397, 400, 1957, 2302]. The task of an optimization algorithm is then to
provide candidate solutions with momentarily optimal objective values for each point in time.
Here we have the problem that an optimum in iteration t will possibly not be an optimum in
iteration t +1 anymore. Problems with dynamic characteristics can, for example, be tackled
with special forms [3019] of
1. Evolutionary Algorithms [123, 398, 1955, 1956, 2723, 2941],
2. Genetic Algorithms [1070, 1544, 19481950],
3. Particle Swarm Optimization [316, 498, 499, 1728, 2118],
4. Dierential Evolution [1866, 2988], and
5. Ant Colony Optimization [1148, 1149, 1730].
The moving peaks benchmarks by Branke [396, 397] and Morrison and De Jong [1957] are
good examples for dynamically changing tness landscapes. You can nd them discussed
in ?? on page ??. In Table 22.1, we give some examples for applications of dynamic opti-
mization.
Table 22.1: Applications and Examples of Dynamic Optimization.
Area References
Chemistry [1909, 2731, 3007]
Combinatorial Problems [400, 644, 1148, 1446, 1486, 1730, 2120, 2144, 2499]
Cooperation and Teamwork [1996, 1997, 2424, 2502]
Data Mining [3018]
Distributed Algorithms and Sys-
tems
[353, 786, 962, 964966, 1401, 1733, 1840, 1909, 1935, 1982,
1995, 2387, 2425, 2694, 2731, 2791, 3007, 3032, 3106]
Engineering [556, 644, 786, 1486, 1733, 1840, 1909, 1982, 2144, 2425,
2499, 2694, 2731, 3007]
Graph Theory [353, 556, 644, 786, 962, 964966, 1401, 1486, 1733, 1840,
1909, 1935, 1982, 1995, 2144, 2387, 2425, 2502, 2694, 2731,
2791, 3032, 3106]
Logistics [1148, 1446, 1730, 2120]
Motor Control [489]
Multi-Agent Systems [2144, 2925]
208 22 DYNAMICALLY CHANGING FITNESS LANDSCAPE
Security [1486]
Software [1401, 1486, 1995, 3032]
Wireless Communication [556, 644, 1486, 2144, 2502]
Chapter 23
The No Free Lunch Theorem
By now, we know the most important diculties that can be encountered when applying an
optimization algorithm to a given problem. Furthermore, we have seen that it is arguable
what actually an optimum is if multiple criteria are optimized at once. The fact that there
is most likely no optimization method that can outperform all others on all problems can,
thus, easily be accepted. Instead, there exists a variety of optimization methods specialized
in solving dierent types of problems. There are also algorithms which deliver good results
for many dierent problem classes, but may be outperformed by highly specialized methods
in each of them. These facts have been formalized by Wolpert and Macready [2963, 2964]
in their No Free Lunch Theorems
1
(NFL) for search and optimization algorithms.
23.1 Initial Denitions
Wolpert and Macready [2964] consider single-objective optimization over a nite do-
main and dene an optimization problem (g) f(gpm(g)) as a mapping of a search
space G to the objective space R.
2
Since this denition subsumes the problem space
and the genotype-phenotype mapping, only skipping the possible search operations, it
is very similar to our Denition D6.1 on page 103. They further call a time-ordered
set d
m
of m distinct visited points in G R a sample of size m and write d
m
(d
g
m
(1), d
y
m
(1)) , (d
g
m
(2), d
y
m
(2)) , . . . , (d
g
m
(m), d
y
m
(m)). d
g
m
(i) is the genotype and d
y
m
(i)
the corresponding objective value visited at time step i. Then, the set D
m
= (GR)
m
is
the space of all possible samples of length m and D =
m0
D
m
is the set of all samples of
arbitrary size.
An optimization algorithm a can now be considered to be a mapping of the previously
visited points in the search space (i. e., a sample) to the next point to be visited. Formally,
this means a : D G. Without loss of generality, Wolpert and Macready [2964] only regard
unique visits and thus dene a : d D g : g , d.
Performance measures can be dened independently from the optimization algorithms
only based on the values of the objective function visited in the samples d
m
. If the objective
function is subject to minimization, (d
y
m
) = min d
y
m
: i = 1..m would be the appropriate
measure.
Often, only parts of the optimization problem are known. If the minima of the objective
function f were already identied beforehand, for instance, its optimization would be useless.
Since the behavior in wide areas of is not obvious, it makes sense to dene a probability
P () that we are actually dealing with and no other problem. Wolpert and Macready
[2964] use the handy example of the Traveling Salesman Problem in order to illustrate this
1
http://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization [accessed 2008-
03-28]
2
Notice that we have partly utilized our own notations here in order to be consistent throughout the
book.
210 23 THE NO FREE LUNCH THEOREM
issue. Each distinct TSP produces a dierent structure of . Yet, we would use the same
optimization algorithm a for all problems of this class without knowing the exact shape of .
This corresponds to the assumption that there is a set of very similar optimization problems
which we may encounter here although their exact structure is not known. We act as if there
was a probability distribution over all possible problems which is non-zero for the TSP-alike
ones and zero for all others.
23.2 The Theorem
The performance of an algorithm a iterated m times on an optimization problem can
then be dened as P (d
y
m
[, m, a), i. e., the conditional probability of nding a particular
sample d
y
m
. Notice that this measure is very similar to the value of the problem landscape
(x, ) introduced in Denition D5.2 on page 95 which is the cumulative probability that
the optimizer has visited the element x X until (inclusively) the th evaluation of the
objective function(s).
Wolpert and Macready [2964] prove that the sum of such probabilities over all possible
optimization problems on nite domains is always identical for all optimization algorithms.
For two optimizers a
1
and a
2
, this means that
P (d
y
m
[, m, a
1
) =
P (d
y
m
[, m, a
2
) (23.1)
Hence, the average over all of P (d
y
m
[, m, a) is independent of a.
23.3 Implications
From this theorem, we can immediately follow that, in order to outperform a
1
in one opti-
mization problem, a
2
will necessarily perform worse in another. Figure 23.1 visualizes this
issue. It shows that general optimization approaches like Evolutionary Algorithms can solve
a variety of problem classes with reasonable performance. In this gure, we have chosen a
performance measure subject to maximization, i. e., the higher its values, the faster will
the problem be solved. Hill Climbing approaches, for instance, will be much faster than
Evolutionary Algorithms if the objective functions are steady and monotonous, that is, in a
smaller set of optimization tasks. Greedy search methods will perform fast on all problems
with matroid
3
structure. Evolutionary Algorithms will most often still be able to solve these
problems, it just takes them longer to do so. The performance of Hill Climbing and greedy
approaches degenerates in other classes of optimization tasks as a trade-o for their high
utility in their area of expertise.
One interpretation of the No Free Lunch Theorem is that it is impossible for any opti-
mization algorithm to outperform random walks or exhaustive enumerations on all possible
problems. For every problem where a given method leads to good results, we can construct
a problem where the same method has exactly the opposite eect (see Chapter 15). As
a matter of fact, doing so is even a common practice to nd weaknesses of optimization
algorithms and to compare them with each other, see Section 50.2.6, for example.
3
http://en.wikipedia.org/wiki/Matroid [accessed 2008-03-28]
23.3. IMPLICATIONS 211
allpossibleoptimizationproblems
p
e
r
f
o
r
m
a
n
c
e
randomwalkorexhaustiveenumerationor...
generaloptimizationalgorithm-anEA,forinstance
specializedoptimizationalgorithm1;ahillclimber,forinstance
specializedoptimizationalgorithm2;adepth-firstsearch,forinstance
verycrudesketch
Figure 23.1: A visualization of the No Free Lunch Theorem.
Example E23.1 (Fitness Landscapes for Minimization and the NFL).
Let us assume that the Hill Climbing algorithm is applied to the objective functions given
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
r
i
g
h
t
r
i
g
h
t
w
r
o
n
g
I II III
Fig. 23.2.a: A landscape good for Hill
Climbing.
o
b
j
e
c
t
i
v
e
v
a
l
u
e
s
f
(
x
)
x
w
r
o
n
g
r
i
g
h
t
IV V
Fig. 23.2.b: A landscape bad for Hill
Climbing.
Figure 23.2: Fitness Landscapes and the NFL.
in Figure 23.2 which are both subject to minimization. We divided both tness landscapes
into sections labeled with roman numerals. A Hill Climbing algorithm will generate points
in the proximity of the currently best solution and transcend to these points if they are
better. Hence, in both problems it will always follow the downward gradient in all three
sections. In Fig. 23.2.a, this is the right decision in sections II and III because the global
optimum is located at the border between them, but wrong in the deceptive section I. In
Fig. 23.2.b, exactly the opposite is the case: Here, a gradient descend is only a good idea
in section IV (which corresponds to I in Fig. 23.2.a) whereas it leads away from the global
optimum in section V which has the same extend as sections II and III in Fig. 23.2.a.
Hence, our Hill Climbing would exhibit very dierent performance when applied to
212 23 THE NO FREE LUNCH THEOREM
Fig. 23.2.a and Fig. 23.2.b. Depending on the search operations available, it may be even
outpaced by a random walk on Fig. 23.2.b in average. Since we may not know the nature of
the objective functions before the optimization starts, this may become problematic. How-
ever, Fig. 23.2.b is deceptive in the whole section V, i. e., most of its problem space, which
is not the case to such an extent in many practical problems.
Another interpretation is that every useful optimization algorithm utilizes some form of
problem-specic knowledge. Radclie [2244] basically states that without such knowledge,
search algorithms cannot exceed the performance of simple enumerations. Incorporating
knowledge starts with relying on simple assumptions like if x is a good candidate solution,
than we can expect other good candidate solutions in its vicinity, i. e., strong causality.
The more (correct) problem specic knowledge is integrated (correctly) into the algorithm
structure, the better will the algorithm perform. On the other hand, knowledge correct
for one class of problems is, quite possibly, misleading for another class. In reality, we use
optimizers to solve a given set of problems and are not interested in their performance when
(wrongly) applied to other classes.
Example E23.2 (Arbitrary Landscapes and Exhaustive Enumeration).
An even simpler thought experiment than Example E23.1 on optimization thus goes as
follows: If we consider an optimization problem of truly arbitrary structure, then any element
in X could be the global optimum. In a arbitrary (or random) tness landscape where the
objective value of the global optimum is unknown, it is impossible to be sure that the best
candidate solution found so far is the global optimum until all candidate solutions have
been evaluated. In this case, a complete enumeration or uninformed search is the optimal
approach. In most randomized search procedures, we cannot fully prevent that a certain
candidate solution is discovered and evaluated more than once, at least without keeping all
previously discovered elements in memory which is infeasible in most cases. Hence, especially
when approaching full coverage of the problem space, these methods will waste objective
function evaluations and thus, become inferior.
The number of arbitrary tness landscapes should be at least as high as the number
of optimization-favorable ones: Assuming a favorable landscape with a single global op-
timum, there should be at least one position to which the optimum could be moved in
order to create a tness landscape where any informed search is outperformed by exhaustive
enumeration or a random walk.
The rough meaning of the NLF is that all black-box optimization methods perform equally
well over the complete set of all optimization problems [2074]. In practice, we do not want
to apply an optimizer to all possible problems but to only some, restricted classes. In terms
of these classes, we can make statements about which optimizer performs better.
Today, there exists a wide range of work on No Free Lunch Theorems for many dierent
aspects of machine learning. The website http://www.no-free-lunch.org/
4
gives
a good overview about them. Further summaries, extensions, and criticisms have been
provided by K oppen et al. [1578], Droste et al. [837, 838, 839, 840], Oltean [2074], and
Igel and Toussaint [1397, 1398]. Radclie and Surry [2247] discuss the NFL in the context
of Evolutionary Algorithms and the representations used as search spaces. The No Free
Lunch Theorem is furthermore closely related to the Ugly Duckling Theorem
5
proposed by
Watanabe [2868] for classication and pattern recognition.
4
accessed: 2008-03-28
5
http://en.wikipedia.org/wiki/Ugly_duckling_theorem [accessed 2008-08-22]
23.4. INFINITE AND CONTINUOUS DOMAINS 213
23.4 Innite and Continuous Domains
Recently, Auger and Teytaud [145, 146] showed that the No Free Lunch Theorem holds only
in a weaker form for countable innite domains. For continuous domains (i. e., uncountable
innite ones), it does not hold. This means for a given performance measure and a limit
of the maximally allowed objective function evaluations, it can be possible to construct an
optimal algorithm for a certain family of objective functions [145, 146].
A factor that should be considered when thinking about these issues is, that real ex-
isting computers can only work with nite search spaces, since they have nite memory.
In the end, even oating point numbers are nite in value and precision. Hence, there is
always a dierence between the behavior of the algorithmic, mathematical denition of an
optimization method and its practical implementation for a given computing environment.
Unfortunately, the author of this book nds himself unable to state with certainty whether
this means that the NFL does hold for realistic continuous optimization or whether the
proofs by Auger and Teytaud [145, 146] carry over to actual programs.
23.5 Conclusions
So far, the subject of this chapter was the question about what makes optimization prob-
lems hard, especially for metaheuristic approaches. We have discussed numerous dierent
phenomena which can aect the optimization process and lead to disappointing results.
If an optimization process has converged prematurely, it has been trapped in a non-
optimal region of the search space from which it cannot escape anymore (Chapter 13).
Ruggedness (Chapter 14) and deceptiveness (Chapter 15) in the tness landscape, often
caused by epistatic eects (Chapter 17), can misguide the search into such a region. Neu-
trality and redundancy (Chapter 16) can either slow down optimization because the appli-
cation of the search operations does not lead to a gain in information or may also contribute
positively by creating neutral networks from which the search space can be explored and
local optima can be escaped from. Noise is present in virtually all practical optimization
problems. The solutions that are derived for them should be robust (Chapter 18). Also,
they should neither be too general (oversimplication, Section 19.2) nor too specically
aligned only to the training data (overtting, Section 19.1). Furthermore, many practical
problems are multi-objective, i. e., involve the optimization of more than one criterion at
once (partially discussed in Section 3.3), or concern objectives which may change over time
(Chapter 22).
The No Free Lunch Theorem argues that it is not possible to develop the one optimization
algorithm, the problem-solving machine which can provide us with near-optimal solutions
in short time for every possible optimization task (at least in nite domains). Even though
this proof does not directly hold for purely continuous or innite search spaces, this must
sound very depressing for everybody new to this subject.
Actually, quite the opposite is the case, at least from the point of view of a researcher.
The No Free Lunch Theorem means that there will always be new ideas, new approaches
which will lead to better optimization algorithms to solve a given problem. Instead of being
doomed to obsolescence, it is far more likely that most of the currently known optimization
methods have at least one niche, one area where they are excellent. It also means that it
is very likely that the puzzle of optimization algorithms will never be completed. There
will always be a chance that an inspiring moment, an observation in nature, for instance,
may lead to the invention of a new optimization algorithm which performs better in some
problem areas than all currently known ones.
214 23 THE NO FREE LUNCH THEOREM
Evolutionary
Algorithms
ACO
PSO
Extremal
Optimiz.
Simulated
Annealing
EDA
Tabu
Search
Branch&
Bound
Dynamic
Program.
A
Search
IDDFS
Hill
Climbing
Memetic
Algorithms
Downhill
Simplex
GA,GP,ES,
DE,EP,...
LCS
RFD
Random
Optimiz.
Figure 23.3: The puzzle of optimization algorithms.
Chapter 24
Lessons Learned: Designing Good Encodings
Most Global Optimization algorithms share the premise that solutions to problems are either
(a) elements of a somewhat continuous space that can be approximated stepwise or (b) that
they can be composed of smaller modules which already have good attributes even when oc-
curring separately.Especially in the second case, the design of the search space (or genome)
G and the genotype-phenotype mapping gpm is vital for the success of the optimization
process. It determines to what degree these expected features can be exploited by dening
how the properties and the behavior of the candidate solutions are encoded and how the
search operations inuence them. In this chapter, we will rst discuss a general theory
on how properties of individuals can be dened, classied, and how they are related. We
will then outline some general rules for the design of the search space G, the search opera-
tions searchOp Op, and the genotype-phenotype mapping gpm. These rules represent
the lessons learned from our discussion of the possible problematic aspects of optimization
tasks.In software engineering, there exists a variety of design patterns
1
that describe good
practice and experience values. Utilizing these patterns will help the software engineer to
create well-organized, extensible, and maintainable applications.
Whenever we want to solve a problem with Global Optimization algorithms, we need to
dene the structure of a genome. The individual representation along with the genotype-
phenotype mapping is a vital part of Genetic Algorithms and has major impact on the
chance of nding good solutions. Like in software engineering, there exist basic patterns
and rules of thumb on how to design them properly.
Based on our previous discussions, we can now provide some general best practices for the
design of encodings from dierent perspectives. These principles can lead to nding better
solutions or higher optimization speed if considered in the design phase [1075, 2032, 2338].
We will outline suggestions given by dierent researchers transposed into the more general
vocabulary of formae (introduced in Chapter 9 on page 119).
24.1 Compact Representation
[1075] and Ronald [2323] state that the representations of the formae in the search space
should be as short as possible. The number of dierent alleles and the lengths of the dierent
genes should be as small as possible. In other words, the redundancy in the genomes should
be minimal. In Section 16.5 on page 174, we will discuss that uniform redundancy slows
down the optimization process.
24.2 Unbiased Representation
UnbiasednessThe search space G should be unbiased in the sense that all phenotypes are
1
http://en.wikipedia.org/wiki/Design_pattern_%28computer_science%29 [accessed 2007-08-12]
216 24 LESSONS LEARNED: DESIGNING GOOD ENCODINGS
represented by the same number of genotypes [2032, 2113, 2115]. This property allows to
eciently select an unbiased starting population which gives the optimizer the chance of
reaching all parts of the problem space.
x
1
, x
2
X [g G : x
1
= gpm(g)[ [g G : x
2
= gpm(g)[ (24.1)
Beyer and Schwefel [300, 302] furthermore also request for unbiased variation operators. The
unary mutation operations in Evolution Strategy, for example, should not give preference to
any specic change of the genotypes. The reason for this is that selection operations, i. e.,
the methods which chooses the candidate solutions already exploits tness information and
guides the search into one direction. The variation operators thus should not do this job as
well but instead try to increase the diversity. They should perform exploration as opposed
to the exploitation performed by selection.
Beyer and Schwefel [302] therefore again suggest to use normal distributions to mutate
real-valued vectors if G R
n
and Rudolph [2348] propose to use geometrically distributed
random numbers to oset genotype vectors in G Z
n
.
24.3 Surjective GPM
Palmer [2113], Palmer and Kershenbaum [2115] and Della Croce et al. [765] state that a
good search space G and genotype-phenotype mapping gpm should be able to repre-
sent all possible phenotypes and solution structures, i. e., be surjective (see Section 51.7 on
page 644) [2032].
x X g G : x = gpm(g) (24.2)
24.4 Injective GPM
In the spirit of Section 24.1 and with the goal to lower redundancy, the number of genotypes
which map to the same phenotype should be low [23222324] In Section 16.5 we provided a
thorough discussion of redundancy in the genotypes and its demerits (but also its possible
advantages). Combining the idea of achieving low uniform redundancy with the principle
stated in Section 24.3, Palmer and Kershenbaum [2113, 2115] conclude that the GPM should
ideally be both, simple and bijective.
24.5 Consistent GPM
The genotype-phenotype mapping should always yield valid phenotypes [2032, 2113, 2115].
The meaning of valid in this context is that if the problem space X is the set of all possible
trees, only trees should be encoded in the genome. If we use the R
3
as problem space,
no vectors with fewer or more elements than three should be produced by the genotype-
phenotype mapping. Anything else would not make sense anyway, so this is a pretty basic
rule. This form of validity does not imply that the individuals are also correct solutions in
terms of the objective functions.
Constraints on what a good solution is can, on one hand, be realized by dening them ex-
plicitly and making them available to the optimization process (see Section 3.4 on page 70).
On the other hand, they can also be implemented by dening the encoding, search opera-
tions, and genotype-phenotype mapping in a way which ensures that all phenotypes created
are feasible by default [1888, 2323, 2912, 2914].
24.6. FORMAE INHERITANCE AND PRESERVATION 217
24.6 Formae Inheritance and Preservation
The search operations should be able to preserve the (good) formae and (good) congurations
of multiple formae [978, 2242, 2323, 2879]. Good formae should not easily get lost during
the exploration of the search space.
From a binary search operation like recombination (e.g., crossover in GAs), we would
expect that, if its two parameters g
1
and g
2
are members of a forma A, the resulting element
will also be an instance of A.
g
1
, g
2
A G searchOp(g
1
, g
2
) A (24.3)
If we furthermore can assume that all instances of all formae A with minimal precision
(A mini) of an individual are inherited by at least one parent, the binary reproduction
operation is considered as pure. [2242, 2879]
g
3
= searchOp(g
1
, g
2
) G, A mini : g
3
A g
1
A g
2
A (24.4)
If this is the case, all properties of a genotype g
3
which is a combination of two others (g
1
, g
2
)
can be traced back to at least one of its parents. Otherwise, searchOp also performs an
implicit unary search step, a mutation in Genetic Algorithm, for instance. Such properties,
although discussed here for binary search operations only, can be extended to arbitrary n-ary
operators.
24.7 Formae in Genotypic Space Aligned with Phenotypic Formae
The optimization algorithms nd new elements in the search space G by applying the search
operations searchOp Op. These operations can only create, modify, or combine genotypical
formae since they usually have no information about the problem space. Most mathematical
models dealing with the propagation of formae like the Building Block Hypothesis and the
Schema Theorem
2
thus focus on the search space and show that highly t genotypical formae
will more probably be investigated further than those of low utility. Our goal, however, is to
nd highly t formae in the problem space X. Such properties can only be created, modied,
and combined by the search operations if they correspond to genotypical formae. According
to Radclie [2242] and Weicker [2879], a good genotype-phenotype mapping should provide
this feature.
It furthermore becomes clear that useful separate properties in phenotypic space can only
be combined by the search operations properly if they are represented by separate formae
in genotypic space too.
24.8 Compatibility of Formae
Formae of dierent properties should be compatible [2879]. Compatible Formae in phe-
notypic space should also be compatible in genotypic space. This leads to a low level of
epistasis [240, 2323] (see Chapter 17 on page 177) and hence will increase the chance of
success of the reproduction operations. The representations of dierent, compatible pheno-
typic formae should not inuence each other [1075]. This will lead to a representations with
minimal epistasis.
2
See Section 29.5 for more information on the Schema Theorem.
218 24 LESSONS LEARNED: DESIGNING GOOD ENCODINGS
24.9 Representation with Causality
Besides low epistasis, the search space, GPM, and search operations together should possess
strong causality (see Section 14.2). Generally, the search operations should produce small
changes in the objective values. This would, simplied, mean that:
x
1
, x
2
X, g G : x
1
= gpm(g) x
2
= gpm(searchOp(g)) f (x
2
) f x
1
(24.5)
24.10 Combinations of Formae
If genotypes g
1
, g
2
, . . . which are instances of dierent but compatible formae A
1
A
2
. . .
are combined by a binary (or n-ary) search operation, the resulting genotype g should be an
instance of both properties, i. e., the combination of compatible formae should be a forma
itself [2879].
g
1
A
1
, g
2
A
2
, searchOp(g
1
, g
2
, . . .) A
1
A
2
. . . (,= ) (24.6)
If this principle holds for many individuals and formae, useful properties can be combined by
the optimization step by step, narrowing down the precision of the arising, most interesting
formae more and more. This should lead the search to the most promising regions of the
search space.
24.11 Reachability of Formae
Beyer and Schwefel [300, 302] suggest that a good representation has the feature of reach-
ability that any other (nite) individual state can be reached from any parent state within
a nite number of (mutation) steps. In other words, the set of search operations should be
complete (see Denition D4.8 on page 85). Beyer and Schwefel state that this property is
necessary for proving global convergence.
The set of available search operations Op should thus include at least one (unary) search
operation which is theoretically able to reach all possible formae within nite steps. If the
binary search operations in Op all are pure, this unary operator is the only one (apart
from creation operations) able to introduce new formae which are not yet present in the
population. Hence, it should be able to nd any given forma [2879].
Generally, we just need to be able to generate all formae, not necessarily all genotypes
with such an operator, if formae can arbitrarily combined by the available n-ary search or
recombination operations.
24.12 Inuence of Formae
One rule which, in my opinion, was missing in the lists given by Radclie [2242] and Weicker
[2879] is that the absolute contributions of the single formae to the overall objective values
of a candidate solution should not be too dierent. Let us divide the phenotypic formae
into those with positive and those with negative or neutral contribution and let us, for
simplication purposes, assume that those with positive contribution can be arbitrarily
combined. If one of the positive formae has a contribution with an absolute value much
lower than those of the other positive formae, we will trip into the problem of domino
convergence discussed in Section 13.2.3 on page 153.
Then, the search will rst discover the building blocks of higher value. This, itself, is
not a problem. However, as we have already pointed out in Section 13.2.3, if the search is
24.13. SCALABILITY OF SEARCH OPERATIONS 219
stochastic and performs exploration steps, chances are that alleles of higher importance get
destroyed during this process and have to be rediscovered. The values of the less salient
formae would then play no role. Thus, the chance of nding them strongly depends on how
frequent the destruction of important formae takes place.
Ideally, we would therefore design the genome and phenome in a way that the dierent
characteristics of the candidate solution all inuence the objective values to a similar degree.
Then, the chance of nding good formae increases.
24.13 Scalability of Search Operations
The scalability requirement outlined by Beyer and Schwefel [300, 302] states that the strength
of the variation operator (usually a unary search operation such as mutation) should be
tunable in order to adapt to the optimization process. In the initial phase of the search,
usually larger search steps are performed in order to obtain a coarse idea in which general
direction the optimization process should proceed. The closer the focus gets to a certain local
or global optimum, the smaller should the search steps get in order to balance the genotypic
features in a ne-grained manner. Ideally, the optimization algorithm should achieve such
behavior in a self-adaptive way in reaction to the structure of the problem it is solving.
24.14 Appropriate Abstraction
The problem should be represented at an appropriate level of abstraction [240, 2323]. The
complexity of the optimization problem should evenly be distributed between the search
space G, the search operations searchOp Op, the genotype-phenotype mapping gpm,
and the problem space X. Sometimes, using a non-trivial encoding which shifts complexity
to the genotype-phenotype mapping and the search operations can improve the performance
of an optimizer and increase the causality [240, 2912, 2914].
24.15 Indirect Mapping
If a direct mapping between genotypes and phenotypes is not possible, a suitable develop-
mental approach should be applied [2323]. Such indirect genotype-phenotype mappings, as
we will discuss in Section 28.2.2 on page 272, are especially useful if large-scale and robust
structure designs should be constructed by the optimization process.
24.15.1 Extradimensional Bypass: Example for Good Complexity
Minimal-sized genomes are not always the best approach. An interesting aspect of genome
design supporting this claim is inspired by the works of the theoretical biologist Conrad
[621, 622, 623, 625]. According to his extradimensional bypass principle, it is possible to
transform a rugged tness landscape with isolated peeks into one with connected saddle
points by increasing the dimensionality of the search space [496, 544]. In [625] he states that
the chance of isolated peeks in randomly created tness landscapes decreases when their
dimensionality grows.
This partly contradicts Section 24.1 which states that genomes should be as compact
as possible. Conrad [625] does not suggest that nature includes useless sequences in the
genome but either genes which allow for
1. new phenotypical characteristics or
2. redundancy providing new degrees of freedom for the evolution of a species.
220 24 LESSONS LEARNED: DESIGNING GOOD ENCODINGS
In some cases, such an increase in freedom makes more than up for the additional costs
arising from the enlargement of the search space. The extradimensional bypass can be
considered as an example of positive neutrality (see Chapter 16).
G
G
f(x)
local
optimum
global
optimum
Fig. 24.1.a: Useful increase of dimensionality.
G
G
f(x)
local
optimum
global
optimum
Fig. 24.1.b: Useless increase of dimensionality.
Figure 24.1: Examples for an increase of the dimensionality of a search space G (1d) to G
(2d).
In Fig. 24.1.a, an example for the extradimensional bypass (similar to Fig. 6 in [355])
is sketched. The original problem had a one-dimensional search space G corresponding to
the horizontal axis up front. As can be seen in the plane in the foreground, the objective
function had two peeks: a local optimum on the left and a global optimum on the right,
separated by a larger valley. When the optimization process began climbing up the local
optimum, it was very unlikely that it ever could escape this hill and reach the global one.
Increasing the search space to two dimensions (G
.g create
__
3 p
.x gpm(p
.g)
4 while terminationCriterion
__
do
5 p
new
.g mutate(p
.g)
6 p
new
.x gpm(p
new
.g)
7 if f(p
new
.x) f(p
.x) then p
p
new
8 return p
.x
Although the search space G and the problem space X are most often the same in Hill
Climbing, we distinguish them in Algorithm 26.1 for the sake of generality. It should further
be noted that Hill Climbing can be implemented in a deterministic manner if, for each
genotype g
1
G, the set of adjacent points is nite (g
2
G : [adjacent(g
2
, g
1
)[ N
0
).
26.3 Multi-Objective Hill Climbing
As illustrated in Algorithm 26.2, we can easily extend Hill Climbing algorithms with a
support for multi-objective optimization by using some of the methods from Section 3.5.2
on page 76 and some which we later will discuss in the context of Evolutionary Algorithms.
This extended approach will then return a set X of the best candidate solutions found instead
of a single point x from the problem space as done in Algorithm 26.1.
The set of currently known best individuals archive may contain more than one element.
In each round, we pick one individual from the archive at random. We then use this individ-
ual to create the next point in the problem space with the mutate operator. The method
pruneOptimalSet(archive, as) checks whether the new candidate solution is non-prevailed
from any element in archive. If so, it will enter the archive and all individuals from archive
which now are dominated are removed. Since an optimization problem may potentially have
innitely many global optima, we subsequently have to ensure that the archive does not grow
too big: pruneOptimalSet(archive, as) makes sure that it contains at most as individuals and,
if necessary, deletes some individuals. In case of Algorithm 26.2, the archive can grow to
at most as + 1 individuals before the pruning, so at most one individual will be deleted.
When the loop ends because the termination criterion terminationCriterion
__
was met, we
extract all the phenotypes from the archived individuals (extractPhenotypes(archive)) and
return them as the set X. An example implementation of this method in Java can be found
in Listing 56.7 on page 737.
26.4. PROBLEMS IN HILL CLIMBING 231
Algorithm 26.2: X hillClimbingMO(OptProb, as)
Input: OptProb: a tuple (X, f , cmp
f
) of the problem space X, the objective functions
f , and a comparator function cmp
f
Input: as: the maximum archive size
Input: [implicit] terminationCriterion: the termination criterion
Data: p
old
: the individual used as parent for the next point
Data: p
new
: the new individual generated
Data: archive: the set of best individuals known
Output: X: the set of the best elements found
1 begin
2 archive ()
3 p
new
.g create
__
4 p
new
.x gpm(p
new
.g)
5 while terminationCriterion
__
do
// check whether the new individual belongs into archive
6 archive updateOptimalSet(archive, p
new
, cmp
f
)
// if the archive is too big, delete one individual
7 archive pruneOptimalSet(archive, as)
// pick random element from archive
8 p
old
archive[randomUni[0, len(archive))]
9 p
new
.g mutate(p
old
.g)
10 p
new
.x gpm(p
new
.g)
11 return extractPhenotypes(archive)
26.4 Problems in Hill Climbing
The major problem of Hill Climbing is premature convergence. We introduced this phe-
nomenon in Chapter 13 on page 151: The optimization gets stuck at a local optimum and
cannot discover the global optimum anymore.
Both previously specied versions of the algorithm are very likely to fall prey to this
problem, since the always move towards improvements in the objective values and thus,
cannot reach any candidate solution which is situated behind an inferior point. They will
only follow a path of candidate solutions if it is monotonously
3
improving the objective func-
tion(s). The function used in Example E5.1 on page 96 is, for example, already problematic
for Hill Climbing.
As previously mentioned, Hill Climbing in this form is a local search rather than Global
Optimization algorithm. By making a few slight modications to the algorithm however, it
can become a valuable technique capable of performing Global Optimization:
1. A tabu-list which stores the elements recently evaluated can be added. By preventing
the algorithm from visiting them again, a better exploration of the problem space X can
be enforced. This technique is used in Tabu Search which is discussed in Chapter 40
on page 489.
2. A way of preventing premature convergence is to not always transcend to the better
candidate solution in each step. Simulated Annealing introduces a heuristic based
on the physical model the cooling down molten metal to decide whether a superior
ospring should replace its parent or not. This approach is described in Chapter 27
on page 243.
3
http://en.wikipedia.org/wiki/Monotonicity [accessed 2007-07-03]
232 26 HILL CLIMBING
3. The Dynamic Hill Climbing approach by Yuret and de la Maza [3048] uses the last
two visited points to compute unit vectors. With this technique, the directions are
adjusted according to the structure of the problem space and a new coordinate frame
is created which points more likely into the right direction.
4. Randomly restarting the search after so-and-so many steps is a crude but ecient
method to explore wide ranges of the problem space with Hill Climbing. You can nd
it outlined in Section 26.5.
5. Using a reproduction scheme that not necessarily generates candidate solutions directly
neighboring p
.
3. Perturb x by randomly modifying one of its components. Let us refer to this randomly
selected component as s. This modication may lead to constraint violations.
4. If no constraint was violated, continue at Point 11, otherwise proceed as follows.
5. Set a distance value d to 0.
6. Create a list L of the components of x that lead to constraint violations. Here we
make use the knowledge of the interaction of components and constraints.
7. FromL, we pick the component c which is physically closest to s, that is, the component
with the minimum distance dist(c, s). In the original application of the Raindrop
Method, physically close was properly dened due to the fact that the candidate
solutions were basically two-dimensional maps. For applications dierent from forest
planning, appropriate denitions for the distance measure have to be supplied.
8. Set d = dist(c, s).
236 26 HILL CLIMBING
9. Find the next best value for c which does not introduce any new constraint violations
in components f which are at least as close to s, i. e., with dist(f, s) dist(c, s). This
change may, however, cause constraints violations in components farther away from s.
If no such change is possible, go to Point 13. Otherwise, modify the component c in
x.
10. Go back to step Point 4.
11. If x is better than x
, that is, x x
, set x
to the user.
The iteration counter here is used to allow the search to explore solutions more distance
from the current optimum x
. The higher the initial value max specied user, the more
iterations without improvement are allowed before reverting x to x
i=1
[cos (ln (1 +[x
i
[))] (26.1)
f
2
(x) = 0.5 0.5 cos
_
ln
_
1 +
n
i=1
[x
i
[
__
(26.2)
f
3
(x) = 0.01 max
n
i=1
_
x
i
2
_
(26.3)
in the real interval [10, 10]
n
.
(a) Run ten experiments for n = 2, n = 5, and n = 10 each. Note all parameter
settings of the algorithm you used (the number of algorithm steps, operators,
etc.), the results, the vectors discovered, and their objective values. [20 points]
(b) Compute the median (see Section 53.2.6 on page 665), the arithmetic mean (see
Section 53.2.2, especially Denition D53.32 on page 661) and the standard devi-
ation (see Section 53.2.3, especially Section 53.2.3.2 on page 663) of the achieved
objective values in the ten runs. [10 points]
(c) The three objective functions are designed so that their value is always in [0, 1]
in the interval [10, 10]
n
. Try to order the optimization problems according to
the median of the achieved objective values. Which problems seem to be the
hardest? What is the inuence of the dimension n on the achieved objective
values? [10 points]
(d) If you compare f
1
and f
2
, you nd striking similarities. Does one of the functions
seem to be harder? If so, which. . . and what, in your opinion, makes it harder?
[5 points]
[45 points]
65. Implement the Hill Climbing procedure Algorithm 26.1 on page 230 in a programming
language dierent from Java. You can specialize your implementation for only solving
continuous numerical problems, i. e., you do not need to follow the general, interface-
based approach we adhere to in Listing 56.6 on page 735. Apply your implementation
to the Sphere function (see Section 50.3.1.1 on page 581 and Listing 57.1 on page 859)
for n = 10 dimensions in order to test its functionality.
[20 points]
66. Extend the Hill Climbing algorithm implementation given in Listing 56.6 on page 735
to Hill Climbing with restarts, i. e., to a Hill Climbing which restarts the search pro-
cedure every n steps (while preserving the results of the optimization process in an
additional variable). You may use the discussion in Section 26.5 on page 232 as refer-
ence. However, you do not need to provide the multi-objective optimization capabilities
of Algorithm 26.3 on page 233. Instead, only extend the single-objective Hill Climbing
method in Listing 56.6 on page 735 or provide a completely new implementation of
Hill Climbing with restarts in a programming language of your choice. Test your im-
plementation on one of the previously discussed benchmark functions for real-valued,
continuous optimization (see, e.g., Task 64).
[25 points]
67. Let us now solve a modied version of the bin packing problem from Example E1.1
on page 25. In Table 26.5, we give four datasets from Data Set 1 in [2422]. Each
26.7. RAINDROP METHOD 239
dataset stands for one bin packing problem and provides the bin size b, the number
n of objects to be put into the bins, and the sizes a
i
of the objects (with i 1..n).
The problem space be the set of all possible assignments of objects to bins, where the
number k of bins is not provided. For each of the four bin packing problems, nd
a candidate solution x which contains an assignment of objects to as few as possible
bins of the given size b. In other words: For each problem, we do know the size b of
the bin, the number n of objects, and the object sizes a. We want to nd out how
many bins we need at least to store all the objects (k N
1
, the objective, subject to
minimization) and how we can store (x X) the objects in these bins.
Name [2422] b n a
i
k
N1C1W1 A 100 50 [50, 100, 99, 99, 96, 96, 92, 92, 91, 88, 87, 86, 85, 76, 74,
72, 69, 67, 67, 62, 61, 56, 52, 51, 49, 46, 44, 42, 40, 40,
33, 33, 30, 30, 29, 28, 28, 27, 25, 24, 23, 22, 21, 20, 17,
14, 13, 11, 10, 7, 7, 3]
25
N1C2W2 D 120 50 [50, 120, 99, 98, 98, 97, 96, 90, 88, 86, 82, 82, 80, 79, 76,
76, 76, 74, 69, 67, 66, 64, 62, 59, 55, 52, 51, 51, 50, 49,
44, 43, 41, 41, 41, 41, 41, 37, 35, 33, 32, 32, 31, 31, 31,
30, 29, 23, 23, 22, 20, 20]
24
N2C1W1 A 100 100 [100, 100, 99, 97, 95, 95, 94, 92, 91, 89, 86, 86, 85, 84, 80,
80, 80, 80, 80, 79, 76, 76, 75, 74, 73, 71, 71, 69, 65, 64,
64, 64, 63, 63, 62, 60, 59, 58, 57, 54, 53, 52, 51, 50, 48,
48, 48, 46, 44, 43, 43, 43, 43, 42, 41, 40, 40, 39, 38, 38,
38, 38, 37, 37, 37, 37, 36, 35, 34, 33, 32, 30, 29, 28, 26,
26, 26, 24, 23, 22, 21, 21, 19, 18, 17, 16, 16, 15, 14, 13,
12, 12, 11, 9, 9, 8, 8, 7, 6, 6, 5, 1]
48
N2C3W2 C 150 100 [100, 150, 100, 99, 99, 98, 97, 97, 97, 96, 96, 95, 95, 95,
94, 93, 93, 93, 92, 91, 89, 88, 87, 86, 84, 84, 83, 83, 82,
81, 81, 81, 78, 78, 75, 74, 73, 72, 72, 71, 70, 68, 67, 66,
65, 64, 63, 63, 62, 60, 60, 59, 59, 58, 57, 56, 56, 55, 54,
51, 49, 49, 48, 47, 47, 46, 45, 45, 45, 45, 44, 44, 44, 44,
43, 41, 41, 40, 39, 39, 39, 37, 37, 37, 35, 35, 34, 32, 31,
31, 30, 28, 26, 25, 24, 24, 23, 23, 22, 21, 20, 20]
41
Table 26.5: Bin Packing test data from [2422], Data Set 1.
Solve this optimization problem with Hill Climbing. It is not the goal to solve it to
optimality, but to get solutions with Hill Climbing which are as good as possible. For
the sake of completeness and in order to allow comparisons, we provide the lowest
known number k
of bins for the problems given by Scholl and Klein [2422] in the last
column of Table 26.5.
In order to solve this optimization problem, you may proceed as discussed in Chap-
ter 7 on page 109, except that you have to use Hill Climbing. Below, we give some
suggestions but you do not necessarily need to follow them:
(a) A possible problem space X for n objects would be the set of all permutations
of the rst n natural numbers (G = (1..n)). A candidate solution x X, i. e.,
such a permutation, could describe the order in which the objects have to be put
into bins. If a bin is lled to its capacity (or the current object does not t into
the bin anymore), a new bin is needed. This process is repeated until all objects
have been packed into bins.
(b) For the objective function, there exist many dierent choices.
i. As objective function f
1
, the number k(x) of bins required for storing the
objects according to a permutation x X could be used. This value can
easily be computed as discussed in our outline of the problem space X above.
You can nd an example implementation of this function in Listing 57.10 on
page 892.
240 26 HILL CLIMBING
ii. Alternatively, we could also sum up the squares of the free space left over in
each bin as f
2
. It is easy to see that if we put each object into a single bin,
the free capacity left over is maximal. If there was a way to perfectly ll each
bin with objects, the free capacity would become 0. Such a conguration
would also require the least number of bins, since using fewer bins would
mean to not store all objects. By summing up the squares of the free spaces,
we punish bins with lots of free space more severely. In other words, we
reward solutions where the bins are lled equally. Naturally one would feel
that such solutions are good. However, this approach may prevent us
from nding the optimum if it is a solution where the objects are distributed
uneven. We implement this objective function as Listing 57.11 on page 893.
iii. Also, a combination of the above would be possible, such as f
3
(x) = f
1
(x)
1
1+f
2
(x)
, for example. An example implementation of this function is given
as Listing 57.12 on page 894.
iv. Then again, we could consider the total number of bins required but ad-
ditionally try to minimize the space lastWaste(x) left over in the last bin,
i. e., set f
4
(x) = f
1
(x) + 1/(1 + lastWaste(x)). The idea here would be that
the dominating factor of the objective should still be the number of bins re-
quired. But, if two solutions require the same amount of bins, we prefer the
one where more space is free in the last bin. If this waste in the last bin is
increased more and more, this means that the volume of objects in that bin
is reduced. It may eventually become 0 which would equal leaving the bin
empty. The empty bin would not be used and hence, we would be saving one
bin. An implementation of such a function for the suggested problem space
is given at Listing 57.13 on page 896.
v. Finally, instead of only considering the remaining empty space in the last
bin, we could consider the maximum empty space over all bins. The idea
is pretty similar: If we have a bin which is almost empty, maybe we can
make it disappear with just a few moves (object swaps). Hence, we could
prefer solutions where there is one bin with much free space. In order to nd
such solutions, we go over all the bins required by the solution, and check how
much space is free in them. We then take the one bin with the most free space
mf and add this space as a factor to the bin count in the objective function,
similar to as we did in the previous function: f
5
(x) = f
1
(x) + 1/(1 + mf(x)).
An implementation of this function for the suggested problem space is given
at Listing 57.14 on page 897.
(c) If the suggested problem space is used, it could also be used as search space,
i. e., G = X. Then, a simple unary search operation (mutation) would swap the
elements of the permutation such as those provided in Listing 56.38 on page 806
and Listing 56.39. A creation operation could draw a permutation according to
the uniform distribution as shown in Listing 56.37.
Use the Hill Climbing Algorithm 26.1 given in Listing 56.6 on page 735 for solving the
task and compare its results with the results produced by equivalent random walks
and random sampling (see Chapter 8 and Section 56.1.2 on page 729). For your
experiments, you may use the program given in Listing 57.15 on page 899.
(a) For each algorithm or objective function you test, perform at least 30 independent
runs to get reliable results (Remember: our Hill Climbing algorithm is randomized
and can produce dierent results in each run.)
(b) For each of the four problems, write down the best assignment of objects to bins
that you have found (along with the number of bins required). You may add own
ideas as well
26.7. RAINDROP METHOD 241
(c) Discuss which of the objective functions and algorithm or algorithm conguration
performed best and give reasons.
(d) Also provide all your source code.
[40 points]
Chapter 27
Simulated Annealing
27.1 Introduction
In 1953, Metropolis et al. [1874] developed a Monte Carlo method for calculating the
properties of any substance which may be considered as composed of interacting individual
molecules. With this new Metropolis procedure stemming from statistical mechanics,
the manner in which metal crystals recongure and reach equilibriums in the process of
annealing can be simulated, for example. This inspired Kirkpatrick et al. [1541] to develop
the Simulated Annealing
1
(SA) algorithm for Global Optimization in the early 1980s and
to apply it to various combinatorial optimization problems. Independently around the same
time,
Cern y [516] employed a similar approach to the Traveling Salesman Problem. Even
earlier, Jacobs et al. [1426, 1427] use a similar method to optimize program code. Simulated
Annealing is a general-purpose optimization algorithm that can be applied to arbitrary
search and problem spaces. Like simple Hill Climbing, Simulated Annealing only needs a
single initial individual as starting point and a unary search operation and thus belongs to
the family of local search algorithms.
27.1.1 Metropolis Simulation
In metallurgy and material science, annealing
2
[1307] is a heat treatment of material
with the goal of altering properties such as its hardness. Metal crystals have small defects,
dislocations of atoms which weaken the overall structure as sketched in Figure 27.1. It
should be noted that Figure 27.1 is a very rough sketch and the following discussion is very
rough and simplied, too.
3
In order decrease the defects, the metal is heated to, for instance
0.4 times of its melting temperature, i. e., well below its melting point but usually already a
few hundred degrees Celsius. Adding heat means adding energy to the atoms in the metal.
Due to the added energy, the electrons are freed from the atoms in the metal (which now
become ions). Also, the higher energy of the ions makes them move and increases their
diusion rate. The ions may now leave their current position and assume better positions.
During this process, they may also temporarily reside in congurations of higher energy, for
example if two ions get close to each other. The movement decreases as the temperature
of the metal sinks. The structure of the crystal is reformed as the material cools down and
1
http://en.wikipedia.org/wiki/Simulated_annealing [accessed 2007-07-03]
2
http://en.wikipedia.org/wiki/Annealing_(metallurgy) [accessed 2008-09-19]
3
I assume that a physicist or chemist would beat for these simplications it. If you are a physicist or
chemist and have suggestions for improving/correcting the discussion, please drop me an email.
244 27 SIMULATED ANNEALING
t
T
T=getTemperature(1)
s
0K=getTemperature( )
physicalrolemodelof
SimulatedAnnealing
metalstructurewithdefects increasedmovementofatoms ionsinlow-energystructure
withfewerdefects
Figure 27.1: A sketch of annealing in metallurgy as role model for Simulated Annealing.
approaches its equilibrium state. During this process, the dislocations in the metal crystal
can disappear. When annealing metal, the initial temperature must not be too low and the
cooling must be done suciently slowly so as to avoid to stop the ions too early and to
prevent the system from getting stuck in a meta-stable non-crystalline state representing a
local minimum of energy.
In the Metropolis simulation of the annealing process, each set of positions pos of all
atoms of a system is weighted by its Boltzmann probability factor e
E(pos)
k
B
T
where E(pos) is
the energy of the conguration pos, T is the temperature measured in Kelvin, and k
B
is the
Boltzmanns constant
4
:
k
B
1.380 650 524 10
23
J/K (27.1)
The Metropolis procedure is a model of this physical process which could be used to simulate
a collection of atoms in thermodynamic equilibrium at a given temperature. A new nearby
geometry pos
i+1
was generated as a random displacement from the current geometry pos
i
of the atoms in each iteration. The energy of the resulting new geometry is computed and
E, the energetic dierence between the current and the new geometry, was determined.
The probability that this new geometry is accepted, P (E) is dened in Equation 27.3.
E = E(pos
i+1
) E(pos
i
) (27.2)
P (E) =
_
e
E
k
B
T
if E > 0
1 otherwise
(27.3)
Systems in chemistry and physics always strive to attain low-energy states, i. e., the lower
the energy, the more stable is the system. Thus, if the new nearby geometry has a lower
energy level, the change of atom positions is accepted in the simulation. Otherwise, a
uniformly distributed random number r = randomUni[0, 1) is drawn and the step will only
be realized if r is less or equal the Boltzmann probability factor, i. e., r P (E). At high
temperatures T, this factor is very close to 1, leading to the acceptance of many uphill steps.
4
http://en.wikipedia.org/wiki/Boltzmann%27s_constant [accessed 2007-07-03]
27.2. ALGORITHM 245
As the temperature falls, the proportion of steps accepted which would increase the energy
level decreases. Now the system will not escape local regions anymore and (hopefully) comes
to a rest in the global energy minimum at temperature T = 0K.
27.2 Algorithm
The abstraction of the Metropolis simulation method in order to allow arbitrary problem
spaces is straightforward the energy computation E(pos
i
) is replaced by an objective
function f or maybe even by the result v of a tness assignment process. Algorithm 27.1
illustrates the basic course of Simulated Annealing which you can nd implemented in List-
ing 56.8 on page 740. Without loss of generality, we reuse the denitions from Evolutionary
Algorithms for the search operations and set Op = create, mutate.
Algorithm 27.1: x simulatedAnnealing(f)
Input: f: the objective function to be minimized
Data: p
new
: the newly generated individual
Data: p
cur
: the point currently investigated in problem space
Data: T: the temperature of the system which is decreased over time
Data: t: the current time index
Data: E: the energy (objective value) dierence of the p
cur
.x and p
new
.x
Output: x: the best element found
1 begin
2 p
cur
.g create
__
3 p
cur
.x gpm(p
new
.g)
4 x p
cur
.x
5 t 1
6 while terminationCriterion
__
do
7 T getTemperature(t)
8 p
new
.g mutate(p
cur
.g)
9 p
new
.x gpm(p
new
.g)
10 E f(p
new
.x) f(p
cur
.x)
11 if E 0 then
12 p
cur
p
new
13 if f(p
cur
.x) < f(x) then x p
cur
.x
14 else
15 if randomUni[0, 1) < e
E
T
then p
cur
p
new
16 t t + 1
17 return x
Let us discuss in a very simplied way how this algorithm works. During the course of
the optimization process, the temperature T decreases (see Section 27.3). If the temperature
is high in the beginning, this means that, dierent from a Hill Climbing process, Simulated
Annealing accepts also many worse individuals. Better candidate solutions are always ac-
cepted. In summary, the chance that the search will transcend to a new candidate solution,
regardless whether it is better or worse, is high. In its behavior, Simulated Annealing is
then a bit similar to a random walk. As the temperature decreases, the chance that worse
individuals are accepted decreases. If T approaches 0, this probability becomes 0 as well
and Simulated Annealing becomes a pure Hill Climbing algorithm. The rationale of having
an algorithm that initially behaves like a random walk and then becomes a Hill Climber is
to make use of the benets of the two extreme cases-
246 27 SIMULATED ANNEALING
A random walk is a maximally-explorative and minimally-exploitive algorithm. It can
never get stuck at a local optimum and will explore all areas in the search space with
the same probability. Yet, it cannot exploit a good solution, i. e., is unable to make small
modications to an individual in a targeted way in order to check if there are better solutions
nearby.
A Hill Climber, on the other hand, is minimally-explorative and maximally-exploitive. It
always tries to modify and improve on the current solution and never investigates far-away
areas of the search space.
Simulated Annealing combines both properties, it performs a lot of exploration in order
to discover interesting areas of the search space. The hope is that, during this time, it will
discover the basin of attraction of the global optimum. The more the optimization process
becomes like a Hill Climber, the less likely will it move away from a good solution to a worse
one and will instead concentrate on exploiting the solution.
27.2.1 No Boltzmanns Constant
Notice the dierence between Line 15 in Algorithm 27.1 and Equation 27.3 on page 244:
Boltzmanns constant has been removed. The reason is that with Simulated Annealing, we
do not want to simulate a physical process but instead, aim to solve an optimization problem.
The nominal value of Boltzmanns constant, given in Equation 27.1 (something around
1.4 10
23
), has quite a heavy impact on the Boltzmann probability. In a combinatorial
problem, where the dierences in the objective values between two candidate solutions are
often discrete, this becomes obvious: In order to achieve an acceptance probability of 0.001
for a solution which is 1 worse than the best known one, one would need a temperature T
of:
P = 0.001 = e
1
k
B
T
(27.4)
ln 0.001 =
1
k
B
T
(27.5)
1
ln 0.001
= k
B
T (27.6)
1
k
B
ln 0.001
= T (27.7)
T 1.05 10
22
K (27.8)
Making such a setting, i. e., using a nominal value of the scale of 1 10
22
or more, for such
a problem is not obvious and hard to justify. Leaving the constant k
B
away leads to
P = 0.001 = e
1
T
(27.9)
ln 0.001 =
1
T
(27.10)
1
ln 0.001
= T (27.11)
T 0.145 (27.12)
In other words, a temperature of around 0.15 would be sucient to achieve an acceptance
probability of around 0.001. Such a setting is much easier to grasp and allows the algo-
rithm user to relate objective values, objective value dierences, and probabilities in a more
straightforward way. Since physical correctness is not a goal in optimization (while nd-
ing good solutions in an easy way is), k
B
is thus eliminated from the computations in the
Simulated Annealing algorithm.
If you take a close look on Equation 27.8 and Equation 27.12, you will spot another
dierence: Equation 27.8 contains the unit K whereas Equation 27.12 does not. The reason
is that the absence of k
B
in Equation 27.12 removes the physical context and hence, using
27.3. TEMPERATURE SCHEDULING 247
the unit Kelvin is no longer appropriate. Technically, we should also no longer speak about
temperature, but for the sake of simplicity and compliance with literature, we will keep that
name during our discussion of Simulated Annealing.
27.2.2 Convergence
It has been shown that Simulated Annealing algorithms with appropriate cooling strategies
will asymptotically converge to the global optimum [1403, 2043]. The probability that
the individual p
cur
as used in Algorithm 27.1 represents a global optimum approaches 1
for t . This feature is closely related to the property ergodicity
5
of an optimization
algorithm:
Denition D27.1 (Ergodicity). An optimization algorithm is ergodic if its result x X
(or its set of results X X) does not depend on the point(s) in the search space at which
the search process is started.
Nolte and Schrader [2043] and van Laarhoven and Aarts [2776] provide lists of the most
important works on the issue of guaranteed convergence to the global optimum. Nolte and
Schrader [2043] further list the research providing deterministic, non-innite boundaries
for the asymptotic convergence by Anily and Federgruen [111], Gidas [1054], Nolte and
Schrader [2042], and Mitra et al. [1917]. In the same paper, they introduce a signicantly
lower bound. They conclude that, in general, p
cur
.x in the Simulated Annealing process is
a globally optimal candidate solution with a high probability after a number of iterations
which exceeds the cardinality of the problem space. This is a boundary which is, well, slow
from the viewpoint of a practitioner [1403]: In other words, it would be faster to enumerate
all possible candidate solutions in order to nd the global optimum with certainty than
applying Simulated Annealing. Indeed, this makes sense: If this was not the case, Simulated
Annealing could be used to solve AT-complete problems in sub-exponential time. . .
This does not mean that Simulated Annealing is generally slow. It only needs that much
time if we insist on the convergence to the global optimum. Speeding up the cooling process
will result in a faster search, but voids the guaranteed convergence on the other hand. Such
speeded-up algorithms are called Simulated Quenching (SQ) [1058, 1402, 2405].
Quenching
6
, too, is a process in metallurgy. Here, a work piece is rst heated and then
cooled rapidly, often by holding it into a water bath. This way, steel objects can be hardened,
for example.
27.3 Temperature Scheduling
Denition D27.2 (Temperature Schedule). The temperature schedule denes how the
temperature parameter T in the Simulated Annealing process (as dened in Algorithm 27.1)
is set. The operator getTemperature : N
1
R
+
maps the current iteration index t to a
(positive) real temperature value T.
getTemperature(t) [1.. +) t N
1
(27.13)
5
http://en.wikipedia.org/wiki/Ergodicity [accessed 2010-09-26]
6
http://en.wikipedia.org/wiki/Quenching [accessed 2010-10-11]
248 27 SIMULATED ANNEALING
Equation 27.13 is provided as a Java interface in Listing 55.12 on page 717. As already
mentioned, the temperature schedule has major inuence on the probability that the Sim-
ulated Annealing algorithm will nd the global optimum. For getTemperature, a few
general rules hold. All schedules start with a temperature T
s
which is greater than zero.
getTemperature(1) = T
s
> 0 (27.14)
If the number of iterations t approaches innity, the temperature should approach 0. If the
temperature sinks too fast, the ergodicity of the search may be lost and the global optimum
may not be discovered. In order to avoid that the resulting Simulated Quenching algorithm
gets stuck at a local optimum, random restarting can be applied, which already has been
discussed in the context of Hill Climbing in Section 26.5 on page 232.
lim
t+
getTemperature(t) = 0 (27.15)
There exists a wide range of methods to determine this temperature schedule. Miki et al.
0.2T
s
0.4T
s
0.6T
s
0.8T
s
T
s
0 20 40 60 80 100
linearscaling
(i.e.,polynomialwith =1) a
polynomial
with a=2
exponentially
with e=0.05
logarithmically
exponentially
with e=0.025
t
Figure 27.2: Dierent temperature schedules for Simulated Annealing.
[1896], for example, used Genetic Algorithms for this purpose. The most established methods
are listed below and implemented in Paragraph 56.1.3.2.1 and some examples of them are
sketched in Figure 27.2.
27.3.1 Logarithmic Scheduling
Scale the temperature logarithmically where T
s
is set to a value larger than the greatest
dierence of the objective value of a local minimum and its best neighboring candidate
27.3. TEMPERATURE SCHEDULING 249
solution. This value may, of course, be estimated since it usually is not known. [1167, 2043]
An implementation of this method is given in Listing 56.9 on page 743.
getTemperature
ln
(t) =
_
T
s
if t < e
T
s
/ ln t otherwise
(27.16)
27.3.2 Exponential Scheduling
Reduce T to (1)T in each step (or ever m steps, see Equation 27.19), where the exact value
of 0 < < 1 is determined by experiment [2808]. Such an exponential cooling strategy will
turn Simulated Annealing into Simulated Quenching [1403]. This strategy is implemented
in Listing 56.10 on page 744.
getTemperature
exp
(t) = (1 )
t
T
s
(27.17)
27.3.3 Polynomial and Linear Scheduling
T is polynomially scaled between T
s
and 0 for
t
_
T
s
(27.18)
27.3.4 Adaptive Scheduling
Instead of basing the temperature solely on the iteration index t, other information may be
used for self-adaptation as well. After every m moves, the temperature T can be set to
times E
c
= f(p
cur
.x) f(x), where is an experimentally determined constant, f(p
cur
.x)
is the objective value of the currently examined candidate solution p
cur
.x, and f(x) is the
objective value of the best phenotype x found so far. Since E
c
may be 0, we limit the
temperature change to a maximum of T with 0 < < 1. [2808]
27.3.5 Larger Step Widths
If the temperature reduction should not take place continuously but only every m N
1
iterations, t
) instead of getTemperature(t).
t
= mt/m (27.19)
250 27 SIMULATED ANNEALING
27.4 General Information on Simulated Annealing
27.4.1 Applications and Examples
Table 27.1: Applications and Examples of Simulated Annealing.
Area References
Combinatorial Problems [190, 308, 344, 382, 516, 667, 771, 1403, 1454, 1455, 1486,
1541, 1550, 1896, 2043, 2105, 2171, 2640, 2770, 2901, 2966]
Computer Graphics [433, 1043, 1403, 2707]
Data Mining [1403]
Databases [771, 2171]
Distributed Algorithms and Sys-
tems
[616, 1926, 2058, 2068, 2631, 2632, 2901, 2994, 3002]
Economics and Finances [1060, 1403]
Engineering [437, 1058, 1059, 1403, 1486, 1541, 1550, 1926, 2058, 2250,
2405, 3002]
Function Optimization [1018, 1071, 2180, 2486]
Graph Theory [63, 344, 616, 1454, 1455, 1486, 1926, 2058, 2068, 2237, 2631,
2632, 2793, 3002]
Logistics [190, 382, 516, 667, 1403, 1550, 1896, 2043, 2770, 2966]
Mathematics [111, 227, 1043, 1674, 2180]
Military and Defense [1403]
Physics [1403]
Security [1486]
Software [1486, 1550, 2901, 2994]
Wireless Communication [63, 154, 1486, 2237, 2250, 2793]
27.4.2 Books
1. Genetic Algorithms and Simulated Annealing [694]
2. Simulated Annealing: Theory and Applications [2776]
3. Electromagnetic Optimization by Genetic Algorithms [2250]
4. Facts, Conjectures, and Improvements for Simulated Annealing [2369]
5. Simulated Annealing for VLSI Design [2968]
6. Introduction to Stochastic Search and Optimization [2561]
7. Simulated Annealing [2966]
27.4.3 Conferences and Workshops
Table 27.2: Conferences and Workshops on Simulated Annealing.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
27.4. GENERAL INFORMATION ON SIMULATED ANNEALING 251
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
27.4.4 Journals
1. Journal of Heuristics published by Springer Netherlands
252 27 SIMULATED ANNEALING
Tasks T27
68. Perform the same experiments as in Task 64 on page 238 with Simulated Annealing.
Therefore, use the Java Simulated Annealing implementation given in Listing 56.8 on
page 740 or develop an equivalent own implementation.
[45 points]
69. Compare your results from Task 64 on page 238 and Task 68. What are the dierences?
What are the similarities? Did you use dierent experimental settings? If so, what
happens if you use the same experimental settings for both tasks? Try to give reasons
for your results.
[10 points]
70. Perform the same experiments as in Task 67 on page 238 with Simulated Annealing and
Simulated Quenching. Therefore, use the Java Simulated Annealing implementation
given in Listing 56.8 on page 740 or develop an equivalent own implementation.
[25 points]
71. Compare your results from Task 67 on page 238 and Task 70. What are the dierences?
What are the similarities? Did you use dierent experimental settings? If so, what
happens if you use the same experimental settings for both tasks? Try to give reasons
for your results. Put your explanations into the context of the discussions provided
in Example E17.4 on page 181.
[10 points]
72. Try solving the bin packing problem again, this time by using the representation given
by Khuri, Sch utz, and Heitkotter in [1534]. Use both, Simulated Annealing and Hill
Climbing to evaluate the performance of the new representation similar to what we
do in Section 57.1.2.1 on page 887. Compare the results with the results listed in that
section and obtained by you in Task 70. Which method is better? Provide reasons for
your observation.
[50 points]
73. Compute the probabilities that a new solution with E
1
= 0, E
2
= 0.001, E
3
=
0.01, E
4
= 0.1, E
5
= 1.0, E
6
= 10.0, and E
7
= 100 is accepted by the Simulated
Annealing algorithm at temperatures T
1
= 0, T
2
= 1, T
3
= 10, and T
4
= 100. Use
the same formulas used in Algorithm 27.1 (consider the discussion in Section 27.2.1).
[15 points]
74. Compute the temperatures needed so that solutions with E
1
= 0, E
2
= 0.001,
E
3
= 0.01, E
4
= 0.1, E
5
= 1.0, E
6
= 10.0, and E
7
= 100 are accepted by the
Simulated Annealing algorithm with probabilities P
1
= 0, P
2
= 0.1, P
3
= 0.25, and
P
4
= 0.5. Base your calculations on the formulas used in Algorithm 27.1 and consider
the discussion in Section 27.2.1.
[15 points]
Chapter 28
Evolutionary Algorithms
28.1 Introduction
Denition D28.1 (Evolutionary Algorithm). Evolutionary Algorithms
1
(EAs) are
population-based metaheuristic optimization algorithms which use mechanisms inspired by
the biological evolution, such as mutation, crossover, natural selection, and survival of the
ttest, in order to rene a set of candidate solutions iteratively in a cycle. [167, 171, 172]
Evolutionary Algorithms have not been invented in a canonical form. Instead, they are a
large family of dierent optimization methods which have, to a certain degree, been de-
veloped independently by dierent researchers. Information on their historic development
is thus largely distributed amongst the chapters of this book which deal with the specic
members of this family of algorithms.
Like other metaheuristics, all EAs share the black box optimization character and
make only few assumptions about the underlying objective functions. Their consistent and
high performance in many dierent problem domains (see, e.g., Table 28.4 on page 314) and
the appealing idea of copying natural evolution for optimization made them one the most
popular metaheuristic.
As in most metaheuristic optimization algorithms, we can distinguish between single-
objective and multi-objective variants. The latter means that multiple, possibly conict-
ing criteria are optimized as discussed in Section 3.3. The general area of Evolutionary
Computation that deals with multi-objective optimization is called EMOO, evolutionary
multi-objective optimization and the multi-objective EAs are called, well, multi-objective
Evolutionary Algorithms.
Denition D28.2 (Multi-Objective Evolutionary Algorithm). A multi-objective Evo-
lutionary Algorithm (MOEA) is an Evolutionary Algorithm suitable to optimize multiple
criteria at once [595, 596, 737, 740, 954, 1964, 2783].
In this section, we will rst outline the basic cycle in which Evolutionary Algorithms proceed
in Section 28.1.1. EAs are inspired by natural evolution, so we will compare the natural
paragons of the single steps of this cycle in detail in Section 28.1.2. Later in this chapter,
we will outline possible algorithms which can be used for the processes in EAs and nally
give some information on conferences, journals, and books on EAs as well as it applications.
1
http://en.wikipedia.org/wiki/Artificial_evolution [accessed 2007-07-03]
254 28 EVOLUTIONARY ALGORITHMS
28.1.1 The Basic Cycle of EAs
All evolutionary algorithms proceed in principle according to the scheme illustrated in Fig-
Evaluation
computetheobjective
valuesofthesolution
candidates
GPM
applythegenotype-
phenotypemappingand
obtainthephenotypes
FitnessAssignment
usetheobjectivevalues
todeterminefitness
values
InitialPopulation
createaninitial
populationofrandom
individuals
createnewindividuals
fromthematingpoolby
crossoverandmutation
Reproduction
Selection
selectthefittestindi-
vidualsforreproduction
Figure 28.1: The basic cycle of Evolutionary Algorithms.
ure 28.1 which is a specialization of the basic cycle of metaheuristics given in Figure 1.8 on
page 35. We dene the basic EA for single-objective optimization in Algorithm 28.1 and the
multi-objective version in Algorithm 28.2.
1. In the rst generation (t = 1), a population pop of ps individuals p is created. The
function createPop(ps) produces this population. It depends on its implementation
whether the individuals p have random genomes p.g (the usual case) or whether the
population is seeded (see Paragraph 28.1.2.2.2).
2. the genotypes p.g are translated to phenotypes p.x (see Section 28.1.2.3). This
genotype-phenotype mapping may either directly be performed to all individuals
(performGPM) in the population or can be a part of the process of evaluating the
objective functions.
3. The values of the objective functions f f are evaluated for each candidate solu-
tion p.x in pop (and usually stored in the individual records) with the operation
computeObjectives. This evaluation may incorporate complicated simulations and
calculations. In single-objective Evolutionary Algorithms, f = f and, hence, [f [ = 1
holds.
4. With the objective functions, the utilities of the dierent features of the candidate
solutions p.x have been determined and a scalar tness value v(p) can now be assigned
to each of them (see Section 28.1.2.5). In single-objective Evolutionary Algorithms,
v f holds.
5. A subsequent selection process selection(pop, v, mps) (or selection(pop, f, mps), if v f,
as is the case in single-objective Evolutionary Algorithms) lters out the candidate
solutions with bad tness and allows those with good tness to enter the mating pool
with a higher probability (see Section 28.1.2.6).
6. In the reproduction phase, ospring are derived from the genotypes p.g of the selected
individuals p mate by applying the search operations searchOp Op (which are
28.1. INTRODUCTION 255
called reproduction operations in the context of EAs, see Section 28.1.2.7). There usu-
ally are two dierent reproduction operations: mutation, which modies one genotype,
and crossover, which combines two genotypes to a new one. Whether the whole popu-
lation is replaced by the ospring or whether they are integrated into the population as
well as which individuals recombined with each other depends on the implementation
of the operation reproducePop. We highlight the transition between the generations
in Algorithm 28.1 and 28.2 by incrementing a generation counter t and annotating the
populations with it, i. e., pop(t).
7. If the terminationCriterion
__
is met, the evolution stops here. Otherwise, the algo-
rithm continues at Point 2.
Algorithm 28.1: X simpleEA(f, ps, mps)
Input: f: the objective/tness function
Input: ps: the population size
Input: mps: the mating pool size
Data: t: the generation counter
Data: pop: the population
Data: mate: the mating pool
Data: continue: a Boolean variable used for termination detection
Output: X: the set of the best elements found
1 begin
2 t 1
3 pop(t = 1) createPop(ps)
4 continue true
5 while continue do
6 pop(t) performGPM(pop(t) , gpm)
7 pop(t) computeObjectives(pop(t) , f)
8 if terminationCriterion
__
then
9 continue false
10 else
11 mate selection(pop(t) , f, mps)
12 t t + 1
13 pop(t) reproducePop(mate, ps)
14 return extractPhenotypes(extractBest(pop(t) , f))
Algorithm 28.1 is strongly simplied. The termination criterion terminationCriterion
__
,
for example, is usually invoked after each and every evaluation of the objective functions.
Often, we have a limit in terms of objective function evaluations (see, for instance Sec-
tion 6.3.3). Then, it is not sucient to check terminationCriterion
__
after each generation,
since a generation involves computing the objective values of multiple individuals. You can
nd a more precise version of the basic Evolutionary Algorithm scheme (with steady-state
population treatment) is specied in Listing 56.11 on page 746.
Also, the return value(s) of an Evolutionary Algorithm often is not the best individual(s)
from the last generation, but the best candidate solution discovered so far. This, however,
demands for maintaining an archive, a thing which especially in the case of multi-objective
or multi-modal optimization.
An example implementation of Algorithm 28.2 is given in Listing 56.12 on page 750.
28.1.2 Biological and Articial Evolution
The concepts of Evolutionary Algorithms are strongly related to the way in which the
256 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.2: X simpleMOEA(OptProb, ps, mps)
Input: OptProb: a tuple (X, f , cmp
f
) of the problem space X, the objective functions
f , and a comparator function cmp
f
Input: ps: the population size
Input: mps: the mating pool size
Data: t: the generation counter
Data: pop: the population
Data: mate: the mating pool
Data: v: the tness function resulting from the tness assigning process
Data: continue: a Boolean variable used for termination detection
Output: X: the set of the best elements found
1 begin
2 t 1
3 pop(t = 1) createPop(ps)
4 continue true
5 while continue do
6 pop(t) performGPM(pop(t) , gpm)
7 pop(t) computeObjectives(pop(t) , f)
8 if terminationCriterion
__
then
9 continue false
10 else
11 v assignFitness(pop(t) , cmp
f
)
12 mate selection(pop, v, mps)
13 t t + 1
14 pop(t) reproducePop(mate, ps)
15 return extractPhenotypes(extractBest(pop, cmp
f
))
28.1. INTRODUCTION 257
development of species in nature could proceed. We will outline the historic ideas behind
evolution and put the steps of a multi-objective Evolutionary Algorithm into this context.
28.1.2.1 The Basic Principles from Nature
In 1859, Darwin [684] published his book On the Origin of Species
2
in which he identied
the principles of natural selection and survival of the ttest as driving forces behind the
biological evolution. His theory can be condensed into ten observations and deductions
[684, 1845, 2938]:
1. The individuals of a species possess great fertility and produce more ospring than
can grow into adulthood.
2. Under the absence of external inuences (like natural disasters, human beings, etc.),
the population size of a species roughly remains constant.
3. Again, if no external inuences occur, the food resources are limited but stable over
time.
4. Since the individuals compete for these limited resources, a struggle for survival ensues.
5. Especially in sexual reproducing species, no two individuals are equal.
6. Some of the variations between the individuals will aect their tness and hence, their
ability to survive.
7. Some of these variations are inheritable.
8. Individuals which are less t are also less likely to reproduce. The ttest individuals
will survive and produce ospring more probably.
9. Individuals that survive and reproduce will likely pass on their traits to their ospring.
10. A species will slowly change and adapt more and more to a given environment during
this process which may nally even result in new species.
These historic ideas themselves remain valid to a large degree even today. However, some
of Darwins specic conclusions can be challenged based on data and methods which simply
were not available at his time. Point 10, the assumption that change happens slowly over
time, for instance, became controversial as fossils indicate that evolution seems to at rest
for longer times which exchange with short periods of sudden, fast developments [473, 2778]
(see Section 41.1.2 on page 493).
28.1.2.2 Initialization
28.1.2.2.1 Biology
Until now, it is not clear how life started on earth. It is assumed that before the rst organ-
isms emerged, an abiogenesis
3
, a chemical evolution took place in which the chemical com-
ponents of life formed. This process was likely divided in three steps: (1) In the rst step,
simple organic molecules such as alcohols, acids, purines
4
(such as adenine and guanine),
and pyrimidines
5
(such as thymine, cytosine, and uracil) were synthesized from inorganic
2
http://en.wikipedia.org/wiki/The_Origin_of_Species [accessed 2007-07-03]
3
http://en.wikipedia.org/wiki/Abiogenesis [accessed 2009-08-05]
4
http://en.wikipedia.org/wiki/Purine [accessed 2009-08-05]
5
http://en.wikipedia.org/wiki/Pyrimidine [accessed 2009-08-05]
258 28 EVOLUTIONARY ALGORITHMS
substances. (2) Then, simple organic molecules were combined to the basic components of
complex organic molecules such as monosaccharides, amino acids
6
, pyrroles, fatty acids, and
nucleotides
7
. (3) Finally, complex organic molecules emerged.Many dierent theories exist
on how this could have taken place [176, 1300, 1698, 1713, 1837, 2084, 2091, 2432]. An impor-
tant milestone in the research in this area is likely the Miller-Urey experiment
8
[1904, 1905]
where it was shown that amino acids can form under conditions such as those expected to be
present in the early time of the earth from inorganic substances. The rst single-celled life
most probably occurred in the Eoarchean
9
, the earth age 3.8 billion years ago, demarking
the onset of evolution.
28.1.2.2.2 Evolutionary Algorithms
Usually, when an Evolutionary Algorithm starts up, there exists no information about what
is good or what is bad. Basically, only random genes are coupled together as individuals
in the initial population pop(t = 0). This form of initialization can be considered to be
similar to the early steps of chemical and biological evolution, where it was unclear which
substances or primitive life form would be successful and nature experimented with many
dierent reactions and concepts.
Besides random initialization, Evolutionary Algorithms can also be seeded [1126, 1139,
1471]. If seeding is applied, a set of individuals which already are adapted to the optimization
criteria is inserted into the initial population. Sometimes, the entire rst population consists
of such individuals with good characteristics only. The candidate solutions used for this may
either have been obtained manually or by a previous optimization step [1737, 2019].
The goal for seeding is be to achieve faster convergence and better results in the evolu-
tionary process. However, it also raises the danger of premature convergence (see Chapter 13
on page 151), since the already-adapted candidate solutions will likely be much more com-
petitive than the random ones and thus, may wipe them out of the population. Care must
thus be taken in order to achieve the wanted performance improvement.
28.1.2.3 Genotype-Phenotype Mapping
28.1.2.3.1 Biology
TODO
Example E28.1 (Evolution of Fish).
In the following, let us discuss the evolution on the example of sh. We can consider a sh as
an instance of its heredity information, as one possible realization of the blueprint encoded
in its DNA.
28.1.2.3.2 Evolutionary Algorithms
At the beginning of every generation in an EA, each genotype p.g is instantiated as a
new phenotype p.x = gpm(p.g). Genotype-phenotype mappings are discussed in detail in
Section 28.2.
6
http://en.wikipedia.org/wiki/Amino_acid [accessed 2009-08-05]
7
http://en.wikipedia.org/wiki/Nucleotide [accessed 2009-08-05]
8
http://en.wikipedia.org/wiki/MillerUrey_experiment [accessed 2009-08-05]
9
http://en.wikipedia.org/wiki/Eoarchean [accessed 2007-07-03]
28.1. INTRODUCTION 259
28.1.2.4 Objective Values
28.1.2.4.1 Biology
There are dierent criteria which determine whether an organism can survive in its environ-
ment. Often, individuals are good in some characteristics but rarely reach perfection in all
possible aspects.
Example E28.2 (Evolution of Fish (Example E28.1) Cont.).
The survival of the genes of the sh depends on how good the sh performs in the ocean.
Its tness, however, is not only determined by one single feature of the phenotype like its
size. Although a bigger sh will have better chances to survive, size alone does not help if
it is too slow to catch any prey. Also its energy consumption in terms of calories per time
unit which are necessary to sustain its life functions should be low so it does not need to eat
all the time. Other factors inuencing the tness positively are formae like sharp teeth and
colors that blend into the environment so it cannot be seen too easily by its predators such
as sharks. If its camouage is too good on the other hand, how will it nd potential mating
partners? And if it is big, it will usually have higher energy consumption. So there may be
conicts between the desired properties.
28.1.2.4.2 Evolutionary Algorithms
To sum it up, we could consider the life of the sh as the evaluation process of its genotype
in an environment where good qualities in one aspect can turn out as drawbacks from other
perspectives. In multi-objective Evolutionary Algorithms, this is exactly the same. For each
problem that we want to solve, we can specify one or multiple so-called objective functions
f f . An objective function f represents one feature that we are interested in.
Example E28.3 (Evolution of a Car).
Let us assume that we want to evolve a car (a pretty weird assumption, but lets stick with
it). The genotype p.g G would be the construction plan and the phenotype p.x X the
real car, or at least a simulation of it. One objective function f
a
would denitely be safety.
For the sake of our children and their children, the car should also be environment-friendly,
so thats our second objective function f
b
. Furthermore, a cheap price f
c
, fast speed f
d
, and
a cool design f
e
would be good. That makes ve objective functions from which for example
the second and the fourth are contradictory (f
b
f
d
).
28.1.2.5 Fitness
28.1.2.5.1 Biology
As stated before, dierent characteristics determine the tness of an individual. The biolog-
ical tness is a scalar value that describes the number of ospring of an individual [2542].
260 28 EVOLUTIONARY ALGORITHMS
Example E28.4 (Evolution of Fish (Example E28.1) Cont.).
In Example E28.1, the sh genome is instantiated and proved its physical properties in
several dierent categories in Example E28.2. Whether one specic sh is t or not, however,
is still not easy to say: tness is always relative; it depends on the environment. The tness
of the sh is not only dened by its own characteristics but also results from the features of
the other sh in the population (as well as from the abilities of its prey and predators). If
one sh can beat another one in all categories, i. e., is bigger, stronger, smarter, and so on,
it is better adapted to its environment and thus, will have a higher chance to survive. This
relation is transitive but only forms a partial order since a sh which is strong but not very
clever and a sh that is clever but not strong maybe have the same probability to reproduce
and hence, are not directly comparable.
It is not clear whether a weak sh with a clever behavioral pattern is worse or better
than a really strong but less cunning one. Both traits are useful in the evolutionary process
and maybe, one sh of the rst kind will sometimes mate with one of the latter and produce
an ospring which is both, intelligent and powerful.
Example E28.5 (Computer Science and Sports).
Fitness depends on the environment. In my department, I may be considered as average t.
If took a stroll to the department of sports science, however, my relative physical suitability
will decrease. Yet, my relative computer science skills will become much better.
28.1.2.5.2 Evolutionary Algorithms
The tness assignment process in multi-objective Evolutionary Algorithms computes one
scalar tness value for each individual p in a population pop by building a tness function
v (see Denition D5.1 on page 94). Instead of being an a posteriori measure of the number
of ospring of an individual, it rather describes the relative quality of a candidate solution,
i. e., its ability to produce ospring [634, 2987].
Optimization criteria may contradict, so the basic situation in optimization very much
corresponds to the one in biology. One of the most popular methods for computing the tness
is called Pareto ranking
10
. It performs comparisons similar to the ones we just discussed.
Some popular tness assignment processes are given in Section 28.3.
28.1.2.6 Selection
28.1.2.6.1 Biology
Selection in biology has many dierent facets [2945]. Let us again assume tness to be a
measure for the expected number of ospring, as done in Paragraph 28.1.2.5.1. How t an
individual is then does not necessarily determine directly if it can produce ospring and, if
so, how many. There are two more aspects which have inuence on this: the environment
(including the rest of the population) and the potential mating partners. These factors are
the driving forces behind the three selection steps in natural selection
11
: (1) environmental
selection
12
(or survival selection and ecological selection) which determines whether an in-
dividual survives to reach fertility [684], (2) sexual selection, i. e., the choice of the mating
partner(s) [657, 2300], and (3) parental selection possible choices of the parents against
pregnancy or newborn [2300].
10
Pareto comparisons are discussed in Section 3.3.5 on page 65 and Pareto ranking is introduced in
Section 28.3.3.
11
http://en.wikipedia.org/wiki/Natural_selection [accessed 2010-08-03]
12
http://en.wikipedia.org/wiki/Ecological_selection [accessed 2010-08-03]
28.1. INTRODUCTION 261
Example E28.6 (Evolution of Fish (Example E28.1) Cont.).
An intelligent sh may be eaten by a shark, a strong one can die from a disease, and even
the most perfect sh could die from a lighting strike before ever reproducing. The process
of selection is always stochastic, without guarantees even a sh that is small, slow, and
lacks any sophisticated behavior might survive and could produce even more ospring than
a highly t one. The degree to which a sh is adapted to its environment therefore can
be considered as some sort of basic probability which determines its expected chances to
survive environment selection. This is the form of selection propagated by Darwin [684] in
his seminal book On the Origin of Species.
The sexual or mating selection describes the fact that survival alone does not guarantee
reproduction: At least for sexually reproducing species, two individuals are involves in this
process. Hence, even a sh which is perfectly adapted to its environment will have low
chances to create ospring if it is unable to attract female interest. Sexual selection is
considered to be responsible for many of natures beauty, such as the colorful wings of a
buttery or the tail of a peacock [657, 2300].
Example E28.7 (Computer Science and Sports (Example E28.5) cnt.).
For todays noble computer scientist, survival selection is not the threatening factor. Further-
more, our relative tness is on par with the tness of the guys with the sports department,
at least in terms trade-o between theoretical and physical abilities. Yet, surprisingly, the
sexual selection is less friendly to some of us. Indeed, parallels with human behavior and
peacocks which prefer mating partners with colorful feathers over others regardless of their
further qualities can be drawn.
The third selection factor, parental , may lead to examples for reinforcement of certain phys-
ical characteristics which are much more extreme than Example E28.7. Rich Harris [2300]
argues that after the fertilization, i. e., before or after birth, parents may make a choice
for or against the life of their ospring. If the ospring does or is likely to exhibit certain
unwanted traits, this decision may be negative. A negative decision may also be caused by
environmental or economical decisions. A negative decision, however, may also again be
overruled after birth if the ospring turns out to possess especially favorable characteris-
tics. Rich Harris [2300], for instance, argues that parents in prehistoric European and Asian
cultures may this way have actively selected hairlessness and pale skin.
28.1.2.6.2 Evolutionary Algorithms
In Evolutionary Algorithms, survival selection is always applied in order to steer the op-
timization process towards good areas in the search space. From time to time, also a
subsequent sexual selection is used. For survival selection, the so-called selection algorithms
mate = selection(pop, v, mps) determine the mps individuals from the population pop which
should enter the mating pool mate based on their scalar tness v. selection(pop, v, mps)
usually picks the ttest individuals and places them into mate with the highest probability.
The oldest selection scheme is called Roulette wheel and will be introduced in Section 28.4.3
on page 290 in detail. In the original version of this algorithm (intended for tness maxi-
mization), the chance of an individual p to reproduce is proportional to its tness v(p)pop.
More information on selection algorithms is given in Section 28.4.
28.1.2.7 Reproduction
262 28 EVOLUTIONARY ALGORITHMS
28.1.2.7.1 Biology
Last but not least, there is the reproduction. For this purpose, two approaches exist in
nature: the sexual and the asexual method.
Example E28.8 (Evolution of Fish (Example E28.1) Cont.).
Fish reproduce sexually. Whenever a female sh and a male sh mate, their genes will
be recombined by crossover. Furthermore, mutations may take place which slightly al-
ter the DNA. Most often, the mutations aect the characteristics of resulting larva only
slightly [2303]. Since t sh produce ospring with higher probability, there is a good
chance that the next generation will contain at least some individuals that have combined
good traits from their parents and perform even better than them.
Asexual reproducing species basically create clones of themselves, a process during which,
again, mutations may take place. Regardless of how they were produced, the new generation
of ospring now enters the struggle for survival and the cycle of evolution starts in another
round.
28.1.2.7.2 Evolutionary Algorithms
In Evolutionary Algorithms, individuals usually do not have such a gender. Yet, the
concept of recombination, i. e., of binary search operations, is one of the central ideas of this
metaheuristic. Each individual from the mating pool can potentially be recombined with
every other one. In the car example, this means that we could copy the design of the engine
of one car and place it into the construction plan of the body of another car.
The concept of mutation is present in EAs as well. Parts of the genotype (and hence,
properties of the phenotype) can randomly be changed with a unary search operation. This
way, new construction plans for new cars are generated. The common denitions for repro-
duction operations in Evolutionary Algorithms are given in Section 28.5.
28.1.2.8 Does the Natural Paragon Fit?
At this point it should be mentioned that the direct reference to Darwinian evolution in
Evolutionary Algorithms is somehow controversial. The strongest argument against this
reference is that Evolutionary Algorithms introduce a change in semantics by being goal-
driven [2772] while the natural evolution is not.
Paterson [2134] further points out that neither GAs [Genetic Algorithms] nor GP [Ge-
netic Programming] are concerned with the evolution of new species, nor do they use natural
selection. On the other hand, nobody would claim that the idea of selection has not been
borrowed from nature although many additions and modications have been introduced in
favor for better algorithmic performance.
An argument against close correspondence between EAs and natural evolution concerns
the development of dierent species. It depends on the denition of species: According to
Wikipedia The Free Encyclopedia [2938], a species is a class of organisms which are very
similar in many aspects such as appearance, physiology, and genetics. In principle, there
is some elbowroom for us and we may indeed consider even dierent solutions to a single
problem in Evolutionary Algorithms as members of a dierent species especially if the
binary search operation crossover/recombination applied to their genomes cannot produce
another valid candidate solution.
In Genetic Algorithms, the crossover and mutation operations may be considered to be
strongly simplied models of their natural counterparts. In many advanced EAs there may
be, however, operations which work entirely dierently. Dierential Evolution, for instance,
features a ternary search operation (see Chapter 33). Another example is [2912, 2914], where
28.1. INTRODUCTION 263
the search operations directly modify the phenotypes (G = X) according to heuristics and
intelligent decision.
Paterson [2134] points out that neither GAs [Genetic Algorithms] nor GP [Genetic
Programming] are concerned with the evolution of new species, nor do they use natural
selection. Nonetheless, nobody would claim that the idea of selection has not been borrowed
from nature although many additions and modications have been introduced in favor for
better algorithmic performance.
Furthermore, although the concept of tness
13
in nature is controversial [2542], it is often
considered as an a posteriori measurement. It then denes the ratio between the numbers
of occurrences of a genotype in a population after and before selection or the number of
ospring an individual has in relation to the number of ospring of another individual. In
Evolutionary Algorithms, tness is an a priori quantity denoting a value that determines
the expected number of instances of a genotype that should survive the selection process.
However, one could conclude that biological tness is just an approximation of the a priori
quantity arisen due to the hardness (if not impossibility) of directly measuring it.
My personal opinion (which may as well be wrong) is that the citation of Darwin here is
well motivated since there are close parallels between Darwinian evolution and Evolutionary
Algorithms. Nevertheless, natural and articial evolution are still two dierent things and
phenomena observed in either of the two do not necessarily carry over to the other.
28.1.2.9 Formae and Implicit Parallelistm
Let us review our introductory sh example in terms of forma analysis. Fish can, for instance,
be characterized by the properties clever and strong. For the sake of simplicity, let us
assume that both properties may be true or false for a single individual. They hence
dene two formae each. A third property can be the color, for which many dierent possible
variations exist. Some of them may be good in terms of camouage, others maybe good in
terms of nding mating partners. Now a sh can be clever and strong at the same time, as
well as weak and green. Here, a living sh allows nature to evaluate the utility of at least
three dierent formae.
This issue has rst been stated by Holland [1250] for Genetic Algorithms and is termed
implicit parallelism (or intrinsic parallelism). Since then, it has been studied by many dif-
ferent researchers [284, 1128, 1133, 2827]. If the search space and the genotype-phenotype
mapping are properly designed, implicit parallelism in conjunction with the crossover/re-
combination operations is one of the reasons why Evolutionary Algorithms are such a suc-
cessful class of optimization algorithms. The Schema Theorem discussed in Section 29.5.3
on page 342 gives a further explanation for this from of parallel evaluation.
28.1.3 Historical Classication
The family of Evolutionary Algorithms historically encompasses ve members, as illustrated
in Figure 28.2. We will only enumerate them here in short. In-depth discussions will follow
in the corresponding chapters.
1. Genetic Algorithms (GAs) are introduced in Chapter 29 on page 325. GAs subsume
all Evolutionary Algorithms which have string-based search spaces G in which they
mainly perform combinatorial search.
2. The set of Evolutionary Algorithms which explore the space of real vectors X R
n
,
often using more advanced mathematical operations, is called Evolution Strategies (ES,
see Chapter 30 on page 359). Closely related is Dierential Evolution, a numerical
optimizer using a ternary search operation.
13
http://en.wikipedia.org/wiki/Fitness_(biology) [accessed 2008-08-10]
264 28 EVOLUTIONARY ALGORITHMS
3. For Genetic Programming (GP), which will be elaborated on in Chapter 31 on page 379,
we can provide two denitions: On one hand, GP includes all Evolutionary Algorithms
that grow programs, algorithms, and these alike. On the other hand, also all EAs that
evolve tree-shaped individuals are instances of Genetic Programming.
4. Learning Classier Systems (LCS), discussed in Chapter 35 on page 457, are learning
approaches that assign output values to given input values. They often internally use
a Genetic Algorithm to nd new rules for this mapping.
5. Evolutionary Programming (EP, see Chapter 32 on page 413) approaches usually fall
into the same category as Evolution Strategies, they optimize vectors of real numbers.
Historically, such approaches have also been used to derive algorithm-like structures
such as nite state machines.
EvolutionaryAlgorithms
LearningClassifier
Systems
GeneticAlgorithms
Differential
Evolution
GeneticProgramming
GGGP
LGP
SGP
Evolutionary
Programming
EvolutionStrategy
Figure 28.2: The family of Evolutionary Algorithms.
The early research [718] in Genetic Algorithms (see Section 29.1 on page 325), Genetic
Programming (see Section 31.1.1 on page 379), and Evolutionary Programming (see ??
on page ??) date back to the 1950s and 60s. Besides the pioneering work listed in these
sections, at least other important early contribution should not go unmentioned here: The
Evolutionary Operation (EVOP) approach introduced by Box and Draper [376, 377] in the
late 1950s. The idea of EVOP was to apply a continuous and systematic scheme of small
changes in the control variables of a process. The eects of these modications are evaluated
and the process is slowly shifted into the direction of improvement. This idea was never
realized as a computer algorithm, but Spendley et al. [2572] used it as basis for their simplex
method which then served as progenitor of the Downhill Simplex algorithm
14
by Nelder and
Mead [2017]. [718, 1719] Satterthwaites REVOP [2407, 2408], a randomized Evolutionary
Operation approach, however, was rejected at this time [718].
Like in Section 1.3 on page 31, we here classied dierent algorithms according to their
semantics, in other words, corresponding to their specic search and problem spaces and
the search operations [634]. All ve major approaches can be realized with the basic scheme
dened in Algorithm 28.1. To this simple structure, there exist many general improve-
ments and extensions. Often, these do not directly concern the search or problem spaces.
14
We discuss Nelder and Meads Downhill Simplex [2017] optimization method in Chapter 43 on page 501.
28.1. INTRODUCTION 265
Then, they also can be applied to all members of the EA family alike. Later in this chap-
ter, we will discuss the major components of many of todays most ecient Evolutionary
Algorithms [593]. Some of the distinctive features of these EAs are:
1. The population size and the number of populations used.
2. The method of selecting the individuals for reproduction.
3. The way the ospring is included into the population(s).
28.1.4 Populations in Evolutionary Algorithms
Evolutionary Algorithms try to simulate processes known from biological evolution in order
to solve optimization problems. Species in biology consist of many individuals which live
together in a population. The individuals in a population compete but also mate and with
each other generation for generation. In EAs, it is quite similar: the population pop
(GX)
ps
is a set of ps individuals p G X where each individual p possesses heredity
information (its genotype p.g) and a physical representation (the phenotype p.x).
There exist various way in which an Evolutionary Algorithm can process its population.
Especially interesting is how the population pop(t + 1) of the next generation is formed
from (1) the individuals selected from pop(t) which are collected in the mating pool mate
and (2) the new ospring derived from them.
28.1.4.1 Extinctive/Generational EAs
If it the new population only contains the ospring, we speak of extinctive selection [2015,
2478]. Extinctive selection can be compared with ecosystems of small single-cell organisms
(protozoa
15
) which reproduce in a asexual ssiparous
16
manner, i. e., by cell division. In this
case, of course, the elders will not be present in the next generation. Other comparisons can
partly be drawn to the sexual reproducing to octopi, where the female dies after protecting
the eggs until the larvae hatch, or to the black widow spider where the female devours
the male after the insemination. Especially in the area of Genetic Algorithms, extinctive
strategies are also known as generational algorithms.
Denition D28.3 (Generational). In Evolutionary Algorithms that are genera-
tional [2226], the next generation will only contain the ospring of the current one and
no parent individuals will be preserved.
Extinctive Evolutionary Algorithms can further be divided into left and right selec-
tion [2987]. In left extinctive selections, the best individuals are not allowed to reproduce in
order to prevent premature convergence of the optimization process. Conversely, the worst
individuals are not permitted to breed in right extinctive selection schemes in order to reduce
the selective pressure since they would otherwise scatter the tness too much [2987].
28.1.4.2 Preservative EAs
In algorithms that apply a preservative selection scheme, the population is a combination of
the previous population and its ospring [169, 1461, 2335, 2772]. The biological metaphor for
such algorithms is that the lifespan of many organisms exceeds a single generation. Hence,
parent and child individuals compete with each other for survival.
Even in preservative strategies, it is not granted that the best individuals will always
survive, unless truncation selection (as introduced in Section 28.4.2 on page 289) is applied.
In general, most selection methods are randomized. Even if they pick the best candidate
solutions with the highest probabilities, they may also select worse individuals.
15
http://en.wikipedia.org/wiki/Protozoa [accessed 2008-03-12]
16
http://en.wikipedia.org/wiki/Binary_fission [accessed 2008-03-12]
266 28 EVOLUTIONARY ALGORITHMS
28.1.4.2.1 Steady-State Evolutionary Algorithms
Steady-state Evolutionary Algorithms [519, 2041, 2270, 2316, 2641], abbreviated by SSEA,
are preservative Evolutionary Algorithms which usually do not allow inferior individuals to
replace better ones in the population. Therefore, the binary search operator (crossover/re-
combination) is often applied exactly once per generation. The new ospring then replaces
the worst member of the population if and only if it has better tness.
Steady-state Evolutionary Algorithms often produce better results than generational
EAs. Chafekar et al. [519], for example, introduce steady-state Evolutionary Algorithms
that are able to outperform generational NSGA-II (which you can nd summarized in ??
on page ??) for some dicult problems. In experiments of Jones and Soule [1463] (primarily
focused on other issues), steady-state algorithms showed better convergence behavior in a
multi-modal landscape. Similar results have been reported by Chevreux [558] in the context
of molecule design optimization. The steady-state GENITOR has shown good behavior in
an early comparative study by Goldberg and Deb [1079]. On the other hand, with a badly
congured steady-state approach, we run also the risk of premature convergence. In our own
experiments on a real-world Vehicle Routing Problem discussed in Section 49.3 on page 536,
for instance, steady-state algorithms outperformed generational ones but only if sharing
was applied [2912, 2914].
28.1.4.3 The - Notation
The - notation has been developed to describe the treatment of parent and ospring
individuals in Evolution Strategies (see Chapter 30) [169, 1243, 2437]. Now it is often used
in other Evolutionary Algorithms as well. Usually, this notation implies truncation selection,
i. e., the deterministic selection of the best individuals from a population. Then,
1. denotes the number of ospring (to be) created and
2. is the number of parent individuals, i. e., the size of the mating pool (mps = ).
The population adaptation strategies listed below have partly been borrowed from the Ger-
man Wikipedia The Free Encyclopedia [2938] site for Evolution Strategy
17
:
28.1.4.3.1 ( +)-EAs
Using the reproduction operations, from parent individuals ospring are created from
parents. From the joint set of ospring and parents, i. e., a temporary population of size ps =
+, only the ttest ones are kept and the worst ones are discarted [302, 1244]. ( +)-
strategies are thus preservative. The naming ( + ) implies that only unary reproduction
operators are used. However, in practice, this part of the convention is often ignored [302].
28.1.4.3.2 (, )-EAs
For extinctive selection patterns, the (, )-notation is used, as introduced by Schwefel
[2436]. EAs named according to this pattern create child individuals from the
available genotypes. From these, they only keep the best individuals and discard the
parents as well as the worst children [295, 2436]. Here, corresponds to the population
size ps.
Again, this notation stands for algorithms which employ no crossover operator but mu-
tation only. Yet, many works on (, ) Evolution Strategies, still apply recombination [302].
28.1.4.3.3 (1 + 1)-EAs
The EA only keeps track a single individual which is reproduced. The elder and the ospring
together form the population pop, i. e., ps = 2. From these two, only the better individual
will survive and enter the mating pool mate (mps = 1). This scheme basically is equivalent
to Hill Climbing introduced in Chapter 26 on page 229.
17
http://en.wikipedia.org/wiki/Evolutionsstrategie [accessed 2007-07-03]
28.1. INTRODUCTION 267
28.1.4.3.4 (1, 1)-EAs
The EA creates a single ospring from a single parent. The ospring then replaces its parent.
This is equivalent to a random walk and hence, does not optimize very well, see Section 8.2
on page 114.
28.1.4.3.5 ( + 1)-EAs
Here, the population contains individuals from which one is drawn randomly. This indi-
vidual is reproduced. Alternatively, two parents can be chosen and recombined [302, 2278].
From the joint set of its ospring and the current population, the least t individual is
removed.
28.1.4.3.6 (/, )-EAs
The notation (/, ) is a generalization of (, ) used to signify the application of -ary
reproduction operators. In other words, the parameter is added to denote the number of
parent individuals of one ospring. Normally, only unary mutation operators ( = 1) are
used in Evolution Strategies, the family of EAs the - notation stems from. If (binary)
recombination is also applied (as normal in general Evolutionary Algorithms), = 2 holds. A
special case of (/, ) algorithms is the (/, ) Evolution Strategy [1843] which, basically,
is similar to an Estimation of Distribution Algorithm.
28.1.4.3.7 (/ +)-EAs
Analogously to (/, )-Evolutionary Algorithms, the (/ + )-Evolution Strategies are
generalized (, ) approaches where denotes the number of parents of an ospring indi-
vidual.
28.1.4.3.8 (
(, )
)-EAs
Geyer et al. [1044, 1045, 1046] have developed nested Evolution Strategies where
o-
spring are created and isolated for generations from a population of the size
. In each
of the generations, children are created from which the ttest are passed on to the
next generation. After the generations, the best individuals from each of the isolated
candidate solutions propagated back to the top-level population, i. e., selected. Then, the
cycle starts again with
A
l
g
o
r
i
t
h
m
F
i
t
n
e
s
s
A
s
s
i
g
n
m
e
n
t
P
r
o
c
e
s
s
S
e
a
r
c
h
S
p
a
c
e
a
n
d
S
e
a
r
c
h
O
p
e
r
a
t
io
n
s
G
e
n
o
t
y
p
e
-
P
h
e
n
o
t
y
p
e
M
a
p
p
i
n
g
(
p
o
p
u
l
a
t
i
o
n
s
i
z
e
,
m
u
-
t
a
t
i
o
n
a
n
d
c
r
o
s
s
o
v
e
r
r
a
t
e
s
)
Figure 28.3: The conguration parameters of Evolutionary Algorithms.
Figure 28.3 illustrates these parameters. The performance and success of an evolutionary
optimization approach applied to a problem given by a set of objective functions f and a
problem space X is dened by
270 28 EVOLUTIONARY ALGORITHMS
1. its basic parameter settings such as the population size ps or the crossover rate cr and
mutation rate mr,
2. whether it uses an archive archive of the best individuals found and, if so, the archive
size as and which pruning technology is used to prevent it from overowing,
3. the tness assignment process assignFitness and the selection algorithm selection,
4. the choice of the search space G and the search operations Op, and, nally
5. the genotype-phenotype mapping gpm connecting the search Space and the problem
space.
In ??, we go more into detail on how to state the conguration of an optimization algorithm
in order to fully describe experiments and to make them reproducible.
28.2 Genotype-Phenotype Mappings
In Evolutionary Algorithms as well as in any other optimization method, the search space
G is not necessarily the same as the problem space X. In other words, the elements g
processed by the search operations searchOp Op may dier from the candidate solutions
x X which are evaluated by the objective functions f : X R. In such cases, a mapping
between G and X is necessary: the genotype-phenotype mapping (GPM). In Section 4.3 on
page 85 we gave a precise denition of the term GPM. Generally, we can distinguish four
types of genotype-phenotype mappings:
1. If G = X, the genotype-phenotype mapping is the identity mapping. The search
operations then directly work on the candidate solutions.
2. In many cases, direct mappings, i. e., simple functional transformations which directly
relate parts of the genotypes and phenotypes are used (see Section 28.2.1).
3. In generative mappings, the phenotypes are built step by step in a process directed by
the genotypes. Here, the genotypes serve as programs which direct the phenotypical
developments (see Section 28.2.2.1).
4. Finally, the third set of genotype-phenotype mappings additionally incorporates feed-
back from the environment or the objective functions into the developmental process
(see Section 28.2.2.2).
Which kind of genotype-phenotype mapping should be used for a given optimization task
strongly depends on the type of the task at hand. For most small-scale and many large-
scale problems, direct mappings are completely sucient. However, especially if large-scale,
possibly repetitive or recursive structures are to be created, generative or ontogenic mappings
can be the best choice [777, 2735].
28.2.1 Direct Mappings
Direct mappings are explicit functional relationships between the genotypes and the phe-
notypes [887]. Usually, each element of the phenotype is related to one element in the
genotype [2735] or to a group of genes. Also, the algorithmic complexity of these mappings
usually is usually not above O(nlog n) where n is the length of a genotype. Based on the
work of Devert [777], we dene explicit or direct mappings as follows:
28.2. GENOTYPE-PHENOTYPE MAPPINGS 271
Denition D28.5 (Explicit Representation). An explicit (or direct) representation is
a representation for which a computable functions exists that takes as argument the size
the genotype and gives an upper bound for the number of algorithm steps of the genotype-
phenotype mapping until the phenotype-building process has converged to a stable pheno-
type.
The algorithm steps mentioned in Denition D28.5 can be, for example, the write operations
to the phenotype. In the direct mappings we discuss in the remainder of this section, usually
each element of a candidate solution is written to exactly once. If bit strings are transformed
to vectors of natural numbers, for example, each element of the numerical vector is set to
one value. The same goes when scaling real vectors: the elements of the resulting vectors are
written to once. In the following, we provide some examples for direct genotype-phenotype
mappings.
Example E28.9 (Binary Search Spaces: Gray Coding).
Bit string genomes are sometimes complemented with the application of gray coding
18
during
the genotype-phenotype mapping. If the value of a natural number changes by one, in its
binary complement representation, an arbitrary number of bit may change. 8
10
has the
binary representation 1000
2
but 7
10
has 0111
2
. In gray code, only one bit changes: (one
possible) the gray code representation of 8
10
is 1100
2g
and 7
10
then corresponds to 0100
g2
.
Using gray code may thus be good to preserve locality (see Section 14.2) and to reduce
hidden biases [504] when dealing with bit-string encoded numbers in optimization. Collins
and Eaton [610] studied further encodings for Genetic Algorithms and found that their
E-code outperform both gray and direct binary coding in function optimization.
Example E28.10 (Real Search Spaces: Normalization).
If bounded real-valued, continuous problem spaces X R
n
are investigated, it is possible
that the bounds of the dimensions dier signicantly. Depending on the optimization algo-
rithm and search operations applied, this may deceive the optimization process to give more
emphasis to dimensions with large bounds while neglecting dimensions with smaller bounds.
Example E28.11 (Neglecting One Dimension of X).
Assume that a two dimensional problem space X was searched for the best solution of an
optimization task. The bounds of the rst dimension are x
1
= 1 and
x
1
= 1 and the
bounds of the second dimension are x
2
= 10
9
and
x
2
= 10
9
. The only search operation
available would add random numbers normally distributed with expected value = 0 and
standard deviation = 0.01 to each dimension of the candidate vector. Then, a more or
less ecient search in the rst dimension would be possible.
A genotype-phenotype mapping which allows the search to operate on G = [0, 1]
n
instead
of X = [ x
1
,
x
1
] [ x
2
,
x
2
] [ x
n
,
x
n
], where x
i
R and
x
i
R are the lower and upper
bounds of the i
th
dimension of the problem space X, respectively, would prevent such pitfalls
from the beginning:
gpm
scale
(g) = ( x
i
+g[i] (
x
i
x
i
i 1 . . . n) (28.1)
18
http://en.wikipedia.org/wiki/Gray_coding [accessed 2007-07-03]
272 28 EVOLUTIONARY ALGORITHMS
28.2.2 Indirect Mappings
Dierent from direct mappings, in the phenotype-building process in indirect mappings is
more complex [777]. The basic idea of such developmental approaches is that the phenotypes
are constructed from the genotypes in an iterative way, by stepwise applications of rules and
renements. These renements take into consideration some state information such as the
structure of the phenotype. The genotypes usually represent the rules and transformations
which have to be applied to the candidate solutions during the construction phase.
In nature, life begins with a single cell which divides
19
time and again until a mature
individual is formed
20
after the genetic information has been reproduced. The emergence
of a multi-cellular phenotype from its genotypic representation is called embryogenesis
21
in biology. Many researchers have drawn their inspiration for indirect mappings from this
embryogenesis, from the developmental process which embryos undergo when developing to
a fully-functional being inside an egg or the womb of their mother.
Therefore, developmental mappings received colorful names such as articial embryo-
geny [2601], articial ontongeny (AO) [356], computational embryogeny [273, 1637], cellular
encoding [1143], morphogenesis [291, 1431] and articial development [2735].
Natural embryogeny is a highly complex translation from hereditary information to phys-
ical structures. Among other things, the DNA, for instance, encodes the structural design
information of the human brain. As pointed out by Manos et al. [1829], there are only
about 30 thousand active genes in the human genome (2800 million amino acids) for over
100 trillion neural connections in our cerebrum. A huge manifold of information is hence
decoded from data which is of a much lower magnitude. This is possible because the same
genes can be reused in order to repeatedly create the same pattern. The layout of the light
receptors in the eye, for example, is always the same just their wiring changes.
If we draw inspiration from such a process, we nd that features such as gene reuse and
(phenotypic) modularity seem to be benecial. Indeed, allowing for the repetition of the
same modules (cells, receptors, . . . ) encoded in the same way many times is one of the
reasons why natural embryogeny leads to the development of organisms whose number of
modules surpasses the number of genes in the DNA by far.
The inspiration we get from nature can thus lead to good ideas which, in turn, can lead
to better results in optimization. Yet, we would like to point out that being inspired by
nature does by far not mean to be like nature. The natural embryogenesis processes
are much more complicated than the indirect mappings applied in Evolutionary Algorithms.
The same goes for approaches which are inspired by chemical diusion and such and such.
Furthermore, many genotype-phenotype mappings based on gene reuse, modularity, and
feedback between the phenotypes and the environment are not related to and not inspired
by nature.
In the following, we divide indirect mappings into two categories. We distinguish GPMs
which solely use state information (such as the partly-constructed phenotype) and such that
additionally incorporate feedback from external information sources, the environment, into
the phenotype building process.
28.2.2.1 Generative Mappings: Phenotypic Interaction
In the following, we provide some examples for generative genotype-phenotype mappings.
28.2.2.1.1 Genetic Programming
19
http://en.wikipedia.org/wiki/Cell_division [accessed 2007-07-03]
20
Matter of fact, cell division will continue until the individual dies. However, this is not important here.
21
http://en.wikipedia.org/wiki/Embryogenesis [accessed 2007-07-03]
28.2. GENOTYPE-PHENOTYPE MAPPINGS 273
Example E28.12 (Grammar-Guided Genetic Programming).
Genetic Programming, as we will discuss in Chapter 31, is the family of Evolutionary Algo-
rithms which deals with the evolutionary synthesis of programs. In grammar-guided Genetic
Programming, usually the grammar of the programming language in which these programs
are to be specied is given. Each gene in the genotypes of these approaches usually encodes
for the application of a single rule of the grammar, as is, for instance, the case in Gads
(see ?? on page ??) which uses an integer string genome where each integer corresponds to
the ID of a rule. This way, step by step, complex sentences can be built by unfolding the
genotype. In Grammatical Evolution (??), integer strings with genes identifying grammati-
cal productions are used as well. Depending on the un-expanded variables in the phenotype,
these genes may have dierent meanings. Applying the rules identied by them may intro-
duce new unexpanded variables into the phenotype. Hence, the runtime of such a mapping
is not necessarily known in advance.
Example E28.13 (Graph-creating Trees).
In Standard Genetic Programming approaches, the genotypes are trees. Trees are very useful
to express programs and programs can be used to create many dierent structures. In a
genotype-phenotype mapping, the programs may, for example, be executed to build graphs
(as in Luke and Spectors Edge Encoding [1788] discussed here in ?? on page ??) or electrical
circuits [1608]. In the latter case, the structure of the phenotype strongly depends on how
and how often given instructions or automatically dened functions in the genotypes are
called.
28.2.2.2 Ontogenic Mappings: Environmental Interaction
Full ontogenic (or developmental [887]) mappings even go a step farther than just utilizing
state information during the transformation of the genotypes to phenotypes [777]. This
additional information can stem from the objective functions. If simulations are involved
in the computation of the objective functions, the mapping may access the full simulation
information as well.
Example E28.14 (Developmental Wing Construction).
The phenotype could, for instance, be a set of points describing the surface of an airplanes
wing. The genotype could be a real vector holding the weights of an articial neural network.
The articial neural network may then represent rules for moving the surface points as feed-
back to the air pressure on them given by a simulation of the wing. These rules can describe
a distinct wing shape which develops according to the feedback from the environment.
Example E28.15 (Developmental Termite Nest Construction).
Estevez and Lipson [887] evolved rules for the construction of a termite nest. The phenotype
is the nest which consists of multiple cells. The tness of the cell depends on how close the
temperature in each cell comes to a given target temperature. The rules which were evolved
in Estevez and Lipsons work are directly applied to the phenotypes in the simulations.
The decide whether and where cells were added to or removed from the nest based on the
temperature and density of the cells in the simulation.
274 28 EVOLUTIONARY ALGORITHMS
28.3 Fitness Assignment
28.3.1 Introduction
In multi-objective optimization, each candidate solution p.x is characterized by a vector
of objective values f (p.x). The early Evolutionary Algorithms, however, were intended to
perform single-objective optimization, i. e., were capable of nding solutions for a single
objective function alone. Historically, many algorithms for survival and mating selection
base their decision on such a scalar value.
A tness assignment process, as dened in Denition D5.1 on page 94 in Section 5.2 is
thus used to transform the information given by the vector of objective values f (p.x) for
the phenotype p.x X of an individual p G X to a scalar tness value v(p). This
assignment process takes place in each generation of the Evolutionary Algorithm and, as
stated in Section 5.2, may thus change in each iteration.
Including a tness assignment step may also be benecial in a MOEA, but can also
prove useful in a single-objective scenario: The tness assigned to an individual may not
just reect the absolute utility of an individual, but its suitability relative to the other
individuals in the population pop. Then, the tness function has the character of a heuristic
function (see Denition D1.14 on page 34).
Besides such ranking data, tness can also incorporate density/niching information. This
way, not only the quality of a candidate solution is considered, but also the overall diversity
of the population. Therefore, either the phenotypes p.x X or the genotypes p.g G may
be analyzed and compared. This can improve the chance of nding the global optima as
well as the performance of the optimization algorithm signicantly. If many individuals in
the population occupy the same rank or do not dominate each other, for instance, such
information will be very helpful.
The tness v(p.x) thus may not only depend on the candidate solution p.x itself, but
on the whole population pop of the Evolutionary Algorithm (and on the archive archive of
optimal elements, if available). In practical realizations, the tness values are often stored
in a special member variable in the individual records. Therefore, v(p) can be considered as
a mapping that returns the value of such a variable which has previously been stored there
by a tness assignment process assignFitness(pop, cmp
f
).
Denition D28.6 (Fitness Assignment Process). A tness assignment process assignFitness
uses a comparison criterion cmp
f
(see Denition D3.20 on page 77) to create a function
v : GX R
+
(see Denition D5.1 on page 94) which relates a scalar tness value to each
individual p in the population pop as stated in Equation 28.2 (and archive archive, if an
archive is available Equation 28.3).
v = assignFitness(pop, cmp
f
) v(p) R
+
p pop (28.2)
v = assignFitnessArch(pop, archive, cmp
f
) v(p) R
+
p pop archive (28.3)
Listing 55.14 on page 718 provides a Java interface which enables us to implement dierent
tness assignment processes according to Denition D28.6. In the context of this book, we
generally minimize tness values, i. e., the lower the tness of a candidate solution, the
better. If no density or sharing information is included and the tness only reects the
strict partial order introduced by the Pareto (see Section 3.3.5) or a prevalence relation (see
Section 3.5.2), Equation 28.4 will hold. If further information such as diversity metrics are
included in the tness, this equation may no longer be applicable.
p
1
.x p
2
.x v(p
1
) < v(p
2
) p
1
, p
2
pop archive (28.4)
28.3. FITNESS ASSIGNMENT 275
28.3.2 Weighted Sum Fitness Assignment
The most primitive tness assignment strategy would be to just use a weighted sum of
the objective values. This approach is very static and brings about the same problems as
weighted sum-based approach for dening what an optimum is discussed in Section 3.3.3 on
page 62. It makes no use of Pareto or prevalence relations. For computing the weighted sum
of the dierent objective values of a candidate solution, we reuse Equation 3.18 on page 62
from the weighted sum optimum denition. The weights have to be chosen in a way that
ensures that v(p) R
+
holds for all individuals p.x X.
v(p) = assignFitnessWeightedSum(pop) (p pop v(p) = ws(p.x)) (28.5)
28.3.3 Pareto Ranking
Another simple method for computing tness values is to let them directly reect the Pareto
domination (or prevalence) relation. There are two ways for doing this:
1. We can assign a value inversely proportional to the number of other individuals p
2
it
prevails to each individual p
1
.
v
1
(p
1
)
1
[p
2
pop : p
1
.x p
2
.x[ + 1
(28.6)
2. or we can assign the number of other individuals p3 it is dominated by to it.
v
2
(p
1
) [p
3
pop : p
3
.x p
2
.x[ (28.7)
In case 1, individuals that dominate many others will here receive a lower tness value
than those which are prevailed by many. Since tness is subject to minimization they will
strongly be preferred. Although this idea looks appealing at rst glance, it has a decisive
drawback which can also be observed in Example E28.16: It promotes individuals that reside
in crowded region of the problem space and underrates those in sparsely explored areas. If an
individual has many neighbors, it can potentially prevail many other individuals. However,
a non-prevailed candidate solution in a sparsely explored region of the search space may not
prevail any other individual and hence, receive tness 1, the worst possible tness under v
1
.
Thus, the tness assignment process achieves exactly the opposite of what we want.
Instead of exploring the problem space and delivering a wide scan of the frontier of best
possible candidate solutions, it will focus all eort on a small set of individuals. We will
only obtain a subset of the best solutions and it is even possible that this tness assignment
method leads to premature convergence to a local optimum.
A much better second approach for tness assignment has rst been proposed by Gold-
berg [1075]. Here, the idea is to assign the number of individuals it is prevailed by to each
candidate solution [1125, 1783]. This way, the previously mentioned negative eects will not
occur and the exploration pressure is applied to a much wider area of the Pareto frontier.
This so-called Pareto ranking can be performed by rst removing all non-prevailed (non-
dominated) individuals from the population and assigning the rank 0 to them (since they
are prevailed by no individual and according to Equation 28.7 should receive v
2
). Then, the
same is performed with the rest of the population. The individuals only dominated by those
on rank 0 (now non-dominated) will be removed and get the rank 1. This is repeated until
all candidate solutions have a proper tness assigned to them. Since we follow the idea of the
freer prevalence comparators instead of Pareto dominance relations, we will synonymously
refer to this approach as Prevalence ranking and dene Algorithm 28.4 which is implemented
in Java in Listing 56.16 on page 759. It should be noted that this simple algorithm has
a complexity of O
_
ps
2
[f [
_
. A more ecient approach with complexity O
_
ps log
|f |1
ps
_
has been introduced by Jensen [1441] based on a divide-and-conquer strategy.
276 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.4: v
2
assignFitnessParetoRank(pop, cmp
f
)
Input: pop: the population to assign tness values to
Input: cmp
f
: the prevalence comparator dening the prevalence relation
Data: i, j, cnt: the counter variables
Output: v
2
: a tness function reecting the Prevalence ranking
1 begin
2 for i len(pop) 1 down to 0 do
3 cnt 0
4 p pop[i]
5 for j len(pop) 1 down to 0 do
// Check whether cmp
f
(pop[j].x, p.x) < 0
6 if (j ,= i) (pop[j].x p.x) then cnt cnt + 1
7 v
2
(p) cnt
8 return v
2
Example E28.16 (Pareto Ranking Fitness Assignment).
Figure 28.4 and Table 28.1 illustrate the Pareto relations in a population of 15 individuals
and their corresponding objective values f
1
and f
2
, both subject to minimization.
f
1
f
2
8
0
1
2
3
4
5
6
7
8
10
1 2 3 4 5 6 7 8 9 10 12
11
13
9
10
1 6
7
2
15
14
12
5
3
4
ParetoFrontier
Figure 28.4: An example scenario for Pareto ranking.
28.3. FITNESS ASSIGNMENT 277
p.x dominates is dominated by v
1
(p) v
2
(p)
1 5, 6, 8, 9, 14, 15
1
/7 0
2 6, 7, 8, 9, 10, 11, 13, 14, 15
1
/10 0
3 12, 13, 14, 15
1
/5 0
4 1 0
5 8, 15 1
1
/3 1
6 8, 9, 14, 15 1, 2
1
/5 2
7 9, 10, 11, 14, 15 2
1
/6 1
8 15 1, 2, 5, 6
1
/2 4
9 14, 15 1, 2, 6, 7
1
/3 4
10 14, 15 2, 7
1
/3 2
11 14, 15 2, 7
1
/3 2
12 13, 14, 15 3
1
/4 1
13 15 2, 3, 12
1
/2 3
14 15 1, 2, 3, 6, 7, 9, 10, 11, 12
1
/2 9
15 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 1 13
Table 28.1: The Pareto domination relation of the individuals illustrated in Figure 28.4.
We computed the tness values for both approaches for the individuals in the population
given in Figure 28.4 and noted them in Table 28.1. In column v
1
(p), we provide the tness
values are inversely proportional to the number of individuals which are dominated by p.
A good example for the problem that approach 1 prefers crowded regions in the search
space while ignoring interesting candidate solutions in less populated regions are the four
non-prevailed individuals 1, 2, 3, 4 on the Pareto frontier. The best tness is assigned to
the element 2, followed by individual 1. Although individual 7 is dominated (by 1), its
tness is better than the tness of the non-dominated element 3.
The candidate solution 4 gets the worst possible tness 1, since it prevails no other
element. Its chances for reproduction are similarly low than those of individual 15 which
is dominated by all other elements except 4. Hence, both candidate solutions will most
probably be not selected and vanish in the next generation. The loss of individual 4 will
greatly decrease the diversity and further increase the focus on the crowded area near 1 and
2.
Column v
2
(p) in Table 28.1 shows that all four non-prevailed individuals now have the
best possible tness 0 if the method given as Algorithm 28.4 is applied. Therefore, the focus
is not centered to the overcrowded regions.
However, the region around the individuals 1 and 2 has probably already extensively
been explored, whereas the surrounding of candidate solution 4 is rather unknown. More
individuals are present in the top-left area of Figure 28.4 and at least two individuals with
the same tness as 3 and 4 reside there. Thus, chances are sill that more individuals
from this area will be selected than from the bottom-right area. A better approach of
tness assignment should incorporate such information and put a bit more pressure into the
direction of individual 4, in order to make the Evolutionary Algorithm investigate this area
more thoroughly. Algorithm 28.4 cannot fulll this hope.
28.3.4 Sharing Functions
Previously, we have mentioned that the drawback of Pareto ranking is that it does not
incorporate any information about whether the candidate solutions in the population reside
closely to each other or in regions of the problem space which are only sparsely covered
by individuals. Sharing, as a method for including such diversity information into the
278 28 EVOLUTIONARY ALGORITHMS
tness assignment process, was introduced by Holland [1250] and later rened by Deb [735],
Goldberg and Richardson [1080], and Deb and Goldberg [742] and further investigated
by [1899, 2063, 2391].
Denition D28.7 (Sharing Function). A sharing function Sh : R
+
R
+
is a function
that maps the distance d = dist(p
1
, p
2
) between two individuals p
1
and p
2
to the real interval
[0, 1]. The value of Sh
(d = dist(p
1
, p
2
)) =
_
_
_
1 if d 0
[0, 1] if 0 < d <
0 otherwise
(28.8)
Sharing functions can be employed in many dierent ways and are used by a variety of tness
assignment processes [735, 1080]. Typically, the simple triangular function Sh tri [1268]
or one of its either convex (Sh cvex
(d) =
_
1
d
if 0 d <
0 otherwise
(28.9)
Sh cvex
,
(d) =
_
_
1
d
if 0 d <
0 otherwise
(28.10)
Sh ccav
,
(d) =
_
1
_
d
if 0 d <
0 otherwise
(28.11)
Sh exp
,
(d) =
_
_
1 if d 0
0 if d
e
d
e
1e
otherwise
(28.12)
For sharing, the distance of the individuals in the search space G as well as their distance
in the problem space X or the objective space Y may be used. If the candidate solutions
are real vectors in the R
n
, we could use the Euclidean distance of the phenotypes of the
individuals directly, i. e., compute dist eucl(p
1
.x, p
2
.x). However, this makes only sense in
lower dimensional spaces (small values of n), since the Euclidean distance in R
n
does not
convey much information for high n.
In Genetic Algorithms, where the search space is the set of all bit strings G = B
n
of the length n, another suitable approach would be to use the Hamming distance
22
dist ham(p
1
.g, p
2
.g) of the genotypes. The work of Deb [735] indicates that phenotypical
sharing will often be superior to genotypical sharing.
Denition D28.8 (Niche Count). The niche count m(p, P) [738, 1899] of an individual
p P is the sum of its sharing values with all individual in a list P.
p P m(p, P) =
P
Sh
(dist(p, p
)) (28.13)
The niche count m is always greater than or equal to 1, since p P and, hence,
Sh
(dist(p, p)) = 1 is computed and added up at least once. The original sharing ap-
proach was developed for tness assignment in single-objective optimization where only one
objective function f was subject to maximization. In this case, the objective value was sim-
ply divided by the niche count, punishing solutions in crowded regions [1899]. The goal of
22
See ?? on page ?? for more information on the Hamming distance.
28.3. FITNESS ASSIGNMENT 279
sharing was to distribute the population over a number of dierent peaks in the tness land-
scape, with each peak receiving a fraction of the population proportional to its height [1268].
The results of dividing the tness by the niche counts strongly depends on the height dif-
ferences of the peaks and thus, on the complexity class
23
of f. On f
1
O(x), for instance,
the inuence of m is much bigger than on a f
2
O(e
x
).
By multiplying the niche count m to predetermined tness values v
assignFitness(pop, cmp
f
) (28.14)
Sharing was traditionally combined with tness proportionate, i. e., roulette wheel selec-
tion
24
. Oei et al. [2063] have shown that if the sharing function is computed using the
parental individuals of the old population and then navely combined with the more so-
phisticated tournament selection
25
, the resulting behavior of the Evolutionary Algorithm
may be chaotic. They suggested to use the partially lled new population to circumvent
this problem. The layout of Evolutionary Algorithms, as dened in this book, bases the
tness computation on the whole set of new individuals and assumes that their objec-
tive values have already been completely determined. In other words, such issues simply
do not exist in multi-objective Evolutionary Algorithms as introduced here and the chaotic
behavior does occur.
For computing the niche count m, O
_
n
2
_
comparisons are needed. According to
Goldberg et al. [1085], sampling the population can be sucient to approximate min
order to avoid this quadratic complexity.
28.3.5 Variety Preserving Fitness Assignment
Using sharing and the niche counts navely leads to more or less unpredictable eects. Of
course, it promotes solutions located in sparsely populated niches but how much their tness
will be improved is rather unclear. Using distance measures which are not normalized can
lead to strange eects, too. Imagine two objective functions f
1
and f
2
. If the values of f
1
span from 0 to 1 for the individuals in the population whereas those of f
2
range from 0 to
10 000, the components of f
1
will most often be negligible in the Euclidian distance of two
individuals in the objective space Y. Another problem is that the eect of simple sharing
on the pressure into the direction of the Pareto frontier is not obvious either or depends on
the sharing approach applied. Some methods simply add a niche count to the Pareto rank,
which may cause non-dominated individuals having worse tness than any others in the
population. Other approaches scale the niche count into the interval [0, 1) before adding it
which not only ensures that non-dominated individuals have the best tness but also leave
the relation between individuals at dierent ranks intact which, however, does not further
variety very much.
In some of our experiments [2888, 2912, 2914], we applied a Variety Preserving Fitness
Assignment, an approach based on Pareto ranking using prevalence comparators and well-
dosed sharing. We developed it in order to mitigate the previously mentioned side eects
and balance the evolutionary pressure between optimizing the objective functions and max-
imizing the variety inside the population. In the following, we will describe it in detail and
give its specication in Algorithm 28.5.
Before this tness assignment process can begin, it is required that all individuals with
innite objective values must be removed from the population pop. If such a candidate
solution is optimal, i. e., if it has negative innitely large objectives in a minimization process,
for instance, it should receive tness zero, since tness is subject to minimization. If the
23
See Chapter 12 on page 143 for a detailed introduction into complexity and the O-notation.
24
Roulette wheel selection is discussed in Section 28.4.3 on page 290.
25
You can nd an outline of tournament selection in Section 28.4.4 on page 296.
280 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.5: v assignFitnessVariety(pop, cmp
f
)
Input: pop: the population
Input: cmp
f
: the comparator function
Input: [implicit] f : the set of objective functions
Data: . . .: sorry, no space here, well discuss this in the text
Output: v: the tness function
1 begin
/
*
If needed: Remove all elements with infinite objective
values from pop and assign fitness 0 or
len(pop) +
_
len(pop) + 1 to them. Then compute the
prevalence ranks.
*
/
2 ranks createList(len(pop) , 0)
3 maxRank 0
4 for i len(pop) 1 down to 0 do
5 for j i 1 down to 0 do
6 k cmp
f
(pop[i].x, pop[j].x)
7 if k < 0 then ranks[j] ranks[j] + 1
8 else if k > 0 then ranks[i] ranks[i] + 1
9 if ranks[i] > maxRank then maxRank ranks[i]
// determine the ranges of the objectives
10 mins createList([f [ , +)
11 maxs createList([f [ , )
12 foreach p pop do
13 for i [f [ down to 1 do
14 if f
i
(p.x) < mins[i 1] then mins[i 1] f
i
(p.x)
15 if f
i
(p.x) > maxs[i 1] then maxs[i 1] f
i
(p.x)
16 rangeScales createList([f [ , 1)
17 for i [f [ 1 down to 0 do
18 if maxs[i] > mins[i] then rangeScales[i] 1/ (maxs[i] mins[i])
// Base a sharing value on the scaled Euclidean distance of
all elements
19 shares createList(len(pop) , 0)
20 minShare +
21 maxShare
22 for i len(pop) 1 down to 0 do
23 curShare shares[i]
24 for j i 1 down to 0 do
25 dist 0
26 for k [f [ down to 1 do
27 dist dist + [(f
k
(pop[i].x) f
k
(pop[j].x)) rangeScales[k 1]]
2
28 s Sh exp
|f |,16
_
dist
_
29 curShare curShare +s
30 shares[j] shares[j] +s
31 shares[i] curShare
32 if curShare < minShare then minShare curShare
33 if curShare > maxShare then maxShare curShare
// Finally, compute the fitness values
34 scale
_
1/ (maxShare minShare) if maxShare > minShare
1 otherwise
35 for i len(pop) 1 down to 0 do
36 if ranks[i] > 0 then
37 v(pop[i]) ranks[i] +
p
o
t
e
n
t
i
a
l
1
5
6
8
2
9
7
10
11
14
15
3
12
13
4
ParetoFrontier
Figure 28.5: The sharing potential in the Variety Preserving Example E28.17.
28.3. FITNESS ASSIGNMENT 283
x f
1
f
2
rank share/u share/s v(x)
1 1 7 0 0.71 0.779 0.779
2 2 4 0 0.239 0.246 0.246
3 6 2 0 0.201 0.202 0.202
4 10 1 0 0.022 0 0
5 1 8 1 0.622 0.679 3.446
6 2 7 2 0.906 1 5.606
7 3 5 1 0.531 0.576 3.077
8 2 9 4 0.314 0.33 5.191
9 3 7 4 0.719 0.789 6.845
10 4 6 2 0.592 0.645 4.325
11 5 5 2 0.363 0.386 3.39
12 7 3 1 0.346 0.366 2.321
13 8 4 3 0.217 0.221 3.797
14 7 7 9 0.094 0.081 9.292
15 9 9 13 0.025 0.004 13.01
Table 28.2: An example for Variety Preserving based on Figure 28.4.
But rst things rst; as already mentioned, we know the Pareto ranks of the candidate
solutions from Table 28.1, so the next step is to determine the ranges of values the objective
functions take on for the example population. These can again easily be found out from
Figure 28.4. f
1
spans from 1 to 10, which leads to rangeScale[0] =
1
/9. rangeScale[1] =
1
/8
since the maximum of f
2
is 9 and its minimum is 1. With this, we now can compute the
(dimensionally scaled) distances amongst the candidate solutions in the objective space,
the values of
|f |,16
_
dist
_
. We noted these in Table 28.3, using the upper
triangle of the table for the distances and the lower triangle for the shares.
Upper triangle: distances. Lower triangle: corresponding share values.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 0.391 0.836 1.25 0.125 0.111 0.334 0.274 0.222 0.356 0.51 0.833 0.863 0.667 0.923
2 0.012 0.51 0.965 0.512 0.375 0.167 0.625 0.391 0.334 0.356 0.569 0.667 0.67 0.998
3 7.7E-5 0.003 0.462 0.933 0.767 0.502 0.981 0.708 0.547 0.391 0.167 0.334 0.635 0.936
4 6.1E-7 1.8E-5 0.005 1.329 1.163 0.925 1.338 1.08 0.914 0.747 0.417 0.436 0.821 1.006
5 0.243 0.003 2.6E-5 1.8E-7 0.167 0.436 0.167 0.255 0.417 0.582 0.914 0.925 0.678 0.898
6 0.284 0.014 1.7E-4 1.8E-6 0.151 0.274 0.25 0.111 0.255 0.417 0.747 0.765 0.556 0.817
7 0.023 0.151 0.003 2.9E-5 0.007 0.045 0.512 0.25 0.167 0.222 0.51 0.569 0.51 0.833
8 0.045 0.001 1.5E-5 1.5E-7 0.151 0.059 0.003 0.274 0.436 0.601 0.933 0.914 0.609 0.778
9 0.081 0.012 3.3E-4 4.8E-6 0.056 0.284 0.059 0.045 0.167 0.334 0.669 0.67 0.444 0.712
10 0.018 0.023 0.002 3.2E-5 0.009 0.056 0.151 0.007 0.151 0.167 0.502 0.51 0.356 0.67
11 0.003 0.018 0.012 2.1E-4 0.001 0.009 0.081 0.001 0.023 0.151 0.334 0.356 0.334 0.669
12 8E-5 0.002 0.151 0.009 3.2E-5 2.1E-4 0.003 2.6E-5 0.001 0.003 0.023 0.167 0.5 0.782
13 5.7E-5 0.001 0.023 0.007 2.9E-5 1.7E-4 0.002 3.2E-5 0.001 0.003 0.018 0.151 0.391 0.635
14 0.001 0.001 0.001 9.3E-5 4.6E-4 0.002 0.003 0.001 0.007 0.018 0.023 0.003 0.012 0.334
15 2.9E-5 1.2E-5 2.5E-5 1.1E-5 3.9E-5 9.7E-5 8E-5 1.5E-4 3.1E-4 0.001 0.001 1.4E-4 0.001 0.023
Table 28.3: The distance and sharing matrix of the example from Table 28.2.
The value of the sharing function can be imagined as a scalar eld, as illustrated in
Figure 28.5. In this case, each individual in the population can be considered as an electron
that will build an electrical eld around it resulting in a potential. If two electrons come
284 28 EVOLUTIONARY ALGORITHMS
close, repulsing forces occur, which is pretty much the same what we want to do with Variety
Preserving. Unlike the electrical eld, the power of the sharing potential falls exponentially,
resulting in relatively steep spikes in Figure 28.5 which gives proximity and density a heavier
inuence. Electrons in atoms on planets are limited in their movement by other inuences
like gravity or nuclear forces, which are often stronger than the electromagnetic force. In
Variety Preserving, the prevalence rank plays this role as you can see in Table 28.2, its
inuence on the tness is often dominant.
By summing up the single sharing potentials for each individual in the example, we
obtain the fth column of Table 28.3, the unscaled share values. Their minimum is around
0.022 and the maximum is 0.94. Therefore, we must subtract 0.022 from each of these values
and multiply the result with 1.131. By doing so, we build the column shares/s. Finally, we
can compute the tness values v(x) according to lines 38 and 37 in Algorithm 28.5.
The last column of Table 28.2 lists these results. All non-prevailed individuals have
retained a tness value less than one, lower than those of any other candidate solution in
the population. However, amongst these best individuals, candidate solution 4 is strongly
preferred, since it is located in a very remote location of the objective space. Individual
1 is the least interesting non-dominated one, because it has the densest neighborhood in
Figure 28.4. In this neighborhood, the individuals 5 and 6 with the Pareto ranks 1 and 2 are
located. They are strongly penalized by the sharing process and receive the tness values
v(5) = 3.446 and v(6) = 5.606. In other words, individual 5 becomes less interesting than
candidate solution 7 which has a worse Pareto rank. 6 now is even worse than individual 8
which would have a tness better by two if strict Pareto ranking was applied.
Based on these tness values, algorithms like Tournament selection (see Section 28.4.2)
or tness proportionate approaches (discussed in Section 28.4.3) will pick elements in a
way that preserves the pressure into the direction of the Pareto frontier but also leads to a
balanced and sustainable variety in the population. The benets of this approach have been
shown, for instance, in [2188, 2888, 2912, 2914].
28.3.6 Tournament Fitness Assignment
In tournament tness assignment which is a generalization of the q-level (binary) tournament
selection introduced by Weicker [2879], the tness of each individual is computed by letting
it compete q times against r other individuals (with r = 1 as default) and counting the
number of competitions it loses. For a better understanding of the tournament metaphor
see Section 28.4.4 on page 296, where the tournament selection scheme is discussed. The
number of losses will approximate the Pareto rank of the individual, but it is a bit more
randomized than that. If the number of tournaments won was instead of the losses, the
same problems than in the rst idea of Pareto ranking would be encountered.
28.4. SELECTION 285
Algorithm 28.6: v assignFitnessTournament(q, r, pop, cmp
f
)
Input: q: the number of tournaments per individuals
Input: r: the number of other contestants per tournament, normally 1
Input: pop: the population to assign tness values to
Input: cmp
f
: the comparator function providing the prevalence relation
Data: i, j, k, z: counter variables
Data: b: a Boolean variable being true as long as a tournament isnt lost
Data: p: the individual currently examined
Output: v: the tness function
1 begin
2 for i len(pop) 1 down to 0 do
3 z q
4 p pop[i]
5 for j q down to 1 do
6 b true
7 k r
8 while (k > 0) b do
9 b pop[randomUni0len(pop)].x p.x
10 k k 1
11 if b then z z 1
12 v(p) z
13 return v
28.4 Selection
28.4.1 Introduction
Denition D28.9 (Selection). In Evolutionary Algorithms, the selection
27
operation
mate = selection(pop, v, mps) chooses mps individuals according to their tness values v
(subject to minimization) from the population pop and places them into the mating pool
mate [167, 340, 1673, 1912].
mate = selection(pop, v, mps) p mate p pop
p pop p GX
v(p) R
+
p pop
(len(mate) min len(pop) , mps) (len(mate) mps)
(28.15)
Denition D28.10 (Mating Pool). The mating pool mate in an Evolutionary Algorithm
contains the individuals which are selected for further investigation and on which the repro-
duction operations (see Section 28.5 on page 306) will subsequently be applied.
27
http://en.wikipedia.org/wiki/Selection_%28genetic_algorithm%29 [accessed 2007-07-03]
286 28 EVOLUTIONARY ALGORITHMS
Selection may behave in a deterministic or in a randomized manner, depending on the
algorithm chosen and its application-dependant implementation. Furthermore, elitist Evo-
lutionary Algorithms may incorporate an archive archive in the selection process, as outlined
in ??.
Generally, there are two classes of selection algorithms: such with replacement (annotated
with a subscript
r
in this book) and such without replacement (here annotated with a
subscript
w
) [2399]. In Figure 28.6, we present the transition from generation t to t + 1 for
both types of selection methods.In a selection algorithm without replacement, each individual
A B C
E F
I
D
H G
A B C
D G
Populationingenerationt
Pop(t);ps=9
selection
with
replacement
individualscanenter
matingpoolmorethanonce
B D C A
D
A
A B
B
G
C D B
A B A D
B
A
B D
C
B
D A D
individualsentermating
poolatmostonce
duplication,
mutation,
crossover
...
duplication,
mutation,
crossover
...
Populationingenerationt+1
Pop(t+1);ps=9
matingpoolattimestept
Mate(t);ms 5 =
selection
without
replacement
insomeEAs(steady-state,( + )ES,...)
theparentscompetewiththeoffsprings
m l
B A A
D B
matingpoolattimestept
Mate(t);ms 5 =
Figure 28.6: Selection with and without replacement.
from the population pop can enter the mating pool mate at most once in each generation.
If a candidate solution has been selected, it cannot be selected a second time in the same
generation. This process is illustrated in the bottom row of Figure 28.6.
The mating pool returned by algorithms with replacement can contain the same indi-
vidual multiple times, as sketched in the top row of Figure 28.6. The dashed gray line in
this gure stands for the possibility to include the parent generation in the next selection
process. In other words, the parents selected into mate(t) may compete with their children
in popt+1 and together take part in the next environmental selection step. This is the case
in ( + )-Evolution Strategies and in steady-state Evolutionary Algorithms, for example.
In extinctive/generational EAs, such as, for example, (, )-Evolution Strategies, the parent
generation simply is discarded, as discussed in Section 28.1.4.1.
mate = selection
w
(pop, v, mps) count(p, mate) = 1 p mate (28.16)
mate = selection
r
(pop, v, mps) count(p, mate) 1 p mate (28.17)
The selection algorithms have major impact on the performance of Evolutionary Algorithms.
Their behavior has thus been subject to several detailed studies, conducted by, for instance,
Blickle and Thiele [340], Chakraborty et al. [520], Goldberg and Deb [1079], Sastry and
Goldberg [2400], and Zhong et al. [3079], just to name a few.
Usually, tness assignment processes are carried out before selection and the selection
algorithms base their decisions solely on the tness v of the individuals. It is possible to
28.4. SELECTION 287
rely on the prevalence or dominance relation, i. e., to write selection(pop, cmp
f
, mps) instead
of selection(pop, v, mps), or, in case of single-objective optimization, to use the objective
values directly (selection(pop, f, mps)) and thus, to save the costs of the tness assignment
process. However, this can lead to the same problems that occurred in the rst approach of
Pareto-ranking tness assignment (see Point 1 in Section 28.3.3 on page 275).
As outlined in Paragraph 28.1.2.6.2, Evolutionary Algorithms generally apply survival
selection, sometimes followed by a sexual selectionSelection!sexual procedure. In this section,
we will focus on the former one.
28.4.1.1 Visualization
In the following sections, we will discuss multiple selection algorithms. In order to ease
understanding them, we will visualize the expected number of ospring ESp of an indi-
vidual, i. e., the number of times it will take part in reproduction. If we assume uniform
sexual selection (i. e., no sexual selection), this value will be proportional to its number of
occurrences in the mating pool.
Example E28.18 (Individual Distribution after Selection).
Therefore, we will use the special case where we have a population pop of the constant size
of ps(t) = ps(t + 1) = 1000 individuals. The individuals are numbered from 0 to 999, i. e.,
p
0
..p
999
. For the sake of simplicity, we assume that sexual selection from the mating pool
mate is uniform and that only a unary reproduction operation such as mutation is used.
The tness of an individual strongly inuence its chance for reproduction. We consider four
cases with tness subject to minimization:
1. As sketched in Fig. 28.7.a, the individual p
i
has tness i, i. e., v
1
(p
0
) = 0, v
1
(p
1
) =
1, . . . , v
1
(p
999
) = 999.
2. Individual p
i
has tness (i + 1)
3
, i. e., v
2
(p
0
) = 1, v
2
(p
1
) = 3, . . . , v
2
(p
999
) =
1 000 000 000, as illustrated in Fig. 28.7.b.
288 28 EVOLUTIONARY ALGORITHMS
0
200
400
600
800
1000
200 400 600 800
i
v (p)
1 i
Fig. 28.7.a: Case 1: v
1
(p
i
) = i
0
2e8
4e8
6e8
8e8
1e9
200 400 600 800
i
v (p)
2 i
Fig. 28.7.b: Case 2: v
2
(p
i
) = (i + 1)
3
0
0.4
0.8
1.2
1.6
2.0
200 400 600 800
i
v (p)
3 i
Fig. 28.7.c: Case 3: v
3
(p
i
) =
0.0001i if i < 999, 1 otherwise
0
0.4
0.8
1.2
1.6
2.0
200 400 600 800
i
v (p)
4 i
Fig. 28.7.d: Case 4: v
4
(p
i
) = 1 + v
3
(p
i
)
Figure 28.7: The four example tness cases.
28.4. SELECTION 289
28.4.2 Truncation Selection
Truncation selection
28
, also called deterministic selection, threshold selection, or breeding
selection, returns the k mps best elements from the list pop. The name breeding selection
stems from the fact that farmers who breed animals or crops only choose the best individuals
for reproduction, too [302]. The selected elements are copied as often as needed until the
mating pool size mps is reached. Most often k equals the mating pool size mps which usually
is signicantly smaller than the population size ps.
Algorithm 28.7 realizes truncation selection with replacement (i. e., where individuals
may enter the mating pool mate more than once) and Algorithm 28.8 represents truncation
selection without replacement. You can nd both algorithms are implemented in one single
class whose sources are provided in Listing 56.13 on page 754. They rst sort the population
in ascending order according to the tness v. For truncation selection without replacement,
k = mps and k < ps always holds, since otherwise, this approach would make no sense since
it would select all individuals. Algorithm 28.8 simply returns the best mps individuals from
the population. Algorithm 28.7, on the other hand, iterates from 0 to mps 1 after the
sorting and inserts only the elements with indices from 0 to k 1 into the mating pool.
Algorithm 28.7: mate truncationSelection
r
(k, pop, v, mps)
Input: pop: the list of individuals to select from
Input: [implicit] ps: the population size, ps = len(pop)
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Input: k: cut-o rank, usually k = mps
Data: i: counter variable
Output: mate: the survivors of the truncation which now form the mating pool
1 begin
2 mate ()
3 k min k, ps
4 pop sortAsc(pop, v)
5 for i 1 up to mps do
6 mate addItem(mate, pop[i mod k])
7 return mate
Algorithm 28.8: mate truncationSelection
w
(mps, pop, v)
Input: pop: the list of individuals to select from
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Output: mate: the survivors of the truncation which now form the mating pool
1 begin
2 pop sortAsc(pop, v)
3 return deleteRange(pop, mps, ps mps)
Truncation selection is typically applied in Evolution Strategies with ( +) and (, )
Evolution Strategies as well as in steady-state EAs. In general Evolutionary Algorithms, it
28
http://en.wikipedia.org/wiki/Truncation_selection [accessed 2007-07-03]
290 28 EVOLUTIONARY ALGORITHMS
should be combined with a tness assignment process that incorporates diversity information
in order to prevent premature convergence. Recently, Lassig and Homann [1686], Lassig
et al. [1687] have proved that threshold selection, a truncation selection method where a cut-
o tness is dened after which no further individuals are selected is the optimal selection
strategy for crossover, provided that the right cut-o value is used. In practical applications,
this value is normally not known.
Example E28.19 (Truncation Selection (Example E28.18 cntd)).
In Figure 28.8, we sketch the number of ospring for the individuals p pop from Exam-
0
1
2
3
4
5
6
7
ES(p)
i
9
k=
k=
0.100 * ps
0.250 * ps
k= 0.125 * ps
k= 0.500 * ps
k= 1.000 * ps
100 200 300 400 500 600 700 i 900
100 200 300 400 500 600 700 900 v (p)
1 i
1e6 8e6 3e7 6e7 1e8 2e8 3e8 7e8 v (p)
2 i
0
0
1
0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.09 v (p)
3 i
0
1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.09 1 v (p)
4 i
Figure 28.8: The number of expected ospring in truncation selection.
ple E28.18 if truncation selection would be applied. As stated, k is less or equal to the
mating pool size mps. Under the assumption that no sexual selection takes place, ESp only
depends on k.
Under truncation selection, the diagram will look exactly the same regardless which of
the four example tness congurations we use. Here, only the order of individuals and not
on the numerical relation of their tness is important. If we set k = ps, each individual will
have one ospring in average. If k =
1
2
mps, the top-50% individuals will have two ospring
and the others none. For k =
1
10
mps, only the best 100 from the 1000 candidate solutions
will reach the mating pool and reproduce 10 times in average.
28.4.3 Fitness Proportionate Selection
Fitness proportionate selection
29
was the selection method applied in the original Genetic
Algorithms as introduced by Holland [1250] and therefore is one of the oldest selection
29
http://en.wikipedia.org/wiki/Fitness_proportionate_selection [accessed 2008-03-19]
28.4. SELECTION 291
schemes. In this Genetic Algorithm, tness was subject to maximization. Under tness
proportionate selection, as its name already implies, the probability P (select(p)) of an in-
dividual p pop to enter the mating pool is proportional to its tness v(p). This relation
in its original form is dened in Equation 28.18 below: The probability P (select(p)) that
individual p is picked in each selection decision corresponds to the fraction of its tness in
the sum of the tness of all individuals.
P (select(p)) =
v(p)
pop
v(p
)
(28.18)
There exists a variety of approaches which realize such probability distributions [1079], like
stochastic remainder selection [358, 409] and stochastic universal selection [188, 1133]. The
most commonly known method is the Monte Carlo roulette wheel selection by De Jong
[711], where we imagine the individuals of a population to be placed on a roulette
30
wheel
as sketched in Fig. 28.9.a. The size of the area on the wheel standing for a candidate solution
is proportional to its tness. The wheel is spun, and the individual where it stops is placed
into the mating pool mate. This procedure is repeated until mps individuals have been
selected.
In the context of this book, tness is subject to minimization. Here, higher tness values
v(p) indicate unt candidate solutions p.x whereas lower tness denotes high utility. Fur-
thermore, the tness values are normalized into a range of [0, 1], because otherwise, tness
proportionate selection will handle the set of tness values 0, 1, 2 in a dierent way than
10, 11, 12. Equation 28.22 denes the framework for such a (normalized) tness propor-
tionate selection. It is realized in Algorithm 28.9 as a variant with and in Algorithm 28.10
without replacement.
minV = min v(p) p pop (28.19)
maxV = max v(p) p pop (28.20)
normV(p) =
maxVv(p.x)
maxVminV
(28.21)
P (select(p))
normV (p)
pop
normV (p
)
(28.22)
30
http://en.wikipedia.org/wiki/Roulette [accessed 2008-03-20]
292 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.9: mate rouletteWheelSelection
r
(pop, v, mps)
Input: pop: the list of individuals to select from
Input: [implicit] ps: the population size, ps = len(pop)
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Data: i: a counter variable
Data: a: a temporary store for a numerical value
Data: A: the array of tness values
Data: min, max, sum: the minimum, maximum, and sum of the tness values
Output: mate: the mating pool
1 begin
2 A createList(ps, 0)
3 min
4 max
// Initialize fitness array and find extreme fitnesses
5 for i 0 up to ps 1 do
6 a v(pop[i])
7 A[i] a
8 if a < min then min a
9 if a > max then max a
// break situations where all individuals have the same
fitness
10 if max = min then
11 max max + 1
12 min min 1
/
*
aggregate fitnesses: A = (normV(pop[0]),normV(pop[0]) +
normV(pop[1]),normV(pop[0]) +normV(pop[1]) +normV(pop[2]),. . . )
*
/
13 sum 0
14 for i 0 up to ps 1 do
15 sum sum+
max A[i]
max min
16 A[i] sum
/
*
spin the roulette wheel: the chance that a uniformly
distributed random number lands in A[i] is (inversely)
proportional to v(pop[1])
*
/
17 for i 0 up to mps 1 do
18 a searchItemAS(randomUni[0, sum) , A)
19 if a < 0 then a a 1
20 mate addItem(mate, pop[a])
21 return mate
28.4. SELECTION 293
Algorithm 28.10: mate rouletteWheelSelection
w
(pop, v, mps)
Input: pop: the list of individuals to select from
Input: [implicit] ps: the population size, ps = len(pop)
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Data: i: a counter variable
Data: a, b: temporary stores for numerical values
Data: A: the array of tness values
Data: min, max, sum: the minimum, maximum, and sum of the tness values
Output: mate: the mating pool
1 begin
2 A createList(ps, 0)
3 min
4 max
// Initialize fitness array and find extreme fitnesses
5 for i 0 up to ps 1 do
6 a v(pop[i])
7 A[i] a
8 if a < min then min a
9 if a > max then max a
// break situations where all individuals have the same
fitness
10 if max = min then
11 max max + 1
12 min min 1
/
*
aggregate fitnesses: A = (normV(pop[0]),normV(pop[0]) +
normV(pop[1]),normV(pop[0]) +normV(pop[1]) +normV(pop[2]),. . . )
*
/
13 sum 0
14 for i 0 up to ps 1 do
15 sum sum+
max A[i]
max min
16 A[i] sum
/
*
spin the roulette wheel: the chance that a uniformly
distributed random number lands in A[i] is (inversely)
proportional to v(pop[1])
*
/
17 for i 0 up to min mps, ps 1 do
18 a searchItemAS(randomUni[0, sum) , A)
19 if a < 0 then a a 1
20 if a = 0 then b 0
21 else b A[a 1]
22 b A[a] b
// remove the element at index a from A
23 for j a + 1 up to len(A) 1 do
24 A[j] A[j] b
25 sum sumb
26 mate addItem(mate, pop[a])
27 pop deleteItem(pop, a)
28 A deleteItem(A, a)
29 return mate
294 28 EVOLUTIONARY ALGORITHMS
Example E28.20 (Roulette Wheel Selection).
In Figure 28.9, we illustrate the tness distribution on the roulette wheel for tness max-
v(p )=10
A(p )= / A
1
1
10
1
v(p )=20
A(p )= / A
2
2
5
1
v(p )=30
A(p )= / A
3
3
3
1
v(p )=40
A(p )= / A
4
4
5
2
Fig. 28.9.a: Example for tness maximiza-
tion.
v(p )=10
A(p )= / A=
1
1
60
30
2
1
/ A
v(p )=20
A(p )= / A= / A
2
2
60 3
20 1
v(p )=30
A(p )= / A
= / A
3
3
60
6
10
1
v(p )=40
A(p )= / A
=
4
4
60
0
0A
Fig. 28.9.b: Example for normalized tness mini-
mization.
Figure 28.9: Examples for the idea of roulette wheel selection.
imimization (Fig. 28.9.a) and normalized minimization (Fig. 28.9.b). In this example we
compute the expected proportion in which each of the four element p
1
..p
4
will occur in the
mating pool mate if the tness values are v(p
1
) = 10, v(p
2
) = 20, v(p
3
) = 30, and v(p
4
) = 40.
Amongst others, Whitley [2929] points out that even tness normalization as performed here
cannot overcome the drawbacks of tness proportional selection methods. In order to clarify
these drawbacks, let us visualize the expected results of roulette wheel selection applied to
the special cases stated in Section 28.4.1.1.
Example E28.21 (Roulette Wheel Selection (Example E28.18 cntd)).
Figure 28.10 illustrates the expected number of occurrences ES(p
i
) of an individual p
i
if
roulette wheel selection is applied with replacement.
In such cases, usually parents for each ospring are selected into the mating pool, which
then is as large as the population (mps = ps = 1000). Thus we draw one thousand times a
single individual from the population pop. Each single choice is based on the proportion of
the individual tness in the total tness of all individuals, as dened in Equation 28.18 and
Equation 28.22.
In scenario 1 with the tness sum
999998
2
= 498501, the relation ES(p
i
) = mps
i
498501
holds for tness maximization and ES(p
i
) = mps
999i
498501
for minimization. As result
(sketched in Fig. 28.10.a), the ttest individuals produce (on average) two ospring, whereas
the worst candidate solutions will always vanish in this example.
For scenario 2 with v
2
(p
i
.x) = (i +1)
3
, the total tness sum is approximately 2.51 10
11
and ES(p
i
) = mps
(i+1)
3
2.52 10
11
holds for maximization. The resulting expected values depicted
in Fig. 28.10.b are signicantly dierent from those in Fig. 28.10.a.
The meaning of this is that the design of the objective functions (or the tness assign-
ment process) has a very strong inuence on the convergence behavior of the Evolutionary
Algorithm. This selection method only works well if the tness of an individual is indeed
something like a proportional measure for the probability that it will produce better o-
spring.
The drawback becomes even clearer when comparing the two tness functions v
3
and
v
4
. v
4
is basically the same as v
3
just shifted upwards by 1. From a balanced selection
28.4. SELECTION 295
0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
1.8
200 400 600
fitnessminimization
fitnessmaximization
ES(p)
i
i
200 400 600 v (p)
1
0
0
Fig. 28.10.a: v
1
(p
i
.x) = i
0
200 400 600
fitnessminimization
fitnessmaximization
ES(p)
i
i
8.12e6 6.48e7 2.17e8 v (p)
2
0
1
0.5
1.0
1.5
2.0
2.5
3.5
Fig. 28.10.b: v
1
(p
i
.x) = (i + 1)
3
fitnessmaximization
0
5
10
15
20
ES(p)
i
200 400 600 i
0.02 0.04 0.06 v (p)
3
0
0
Fig. 28.10.c: v
3
(p
i
) =
0.0001i if i < 999, 1 otherwise
0
0.5
1.0
1.5
2.0
200 400 600
fitnessmaximization
ES(p)
i
i
1.02 1.04 1.06 v (p)
4
0
0
Fig. 28.10.d: v
4
(p
i
) = 1 + v
3
(p
i
)
Figure 28.10: The number of expected ospring in roulette wheel selection.
296 28 EVOLUTIONARY ALGORITHMS
method, we would expect that it produces similar mating pools for two functions which are
that similar. However, the result is entirely dierent. For v
3
, the individual at index 999
is totally outstanding with its tness of 1 (which is more than ten times the tness of the
next-best individual). Hence, it receives many more copies in the mating pool. In the case
of v
4
, however, it is only around twice as good as the next best individual and thus, only
receives around twice as many copies. From this situation, we can draw two conclusions:
1. The number of copies that an individual receives changes signicantly when the vertical
shift of the tness function changes even if its other characteristics remain constant.
2. In cases like v
3
, where one individual has outstanding tness, this may degenerate the
Genetic Algorithm to a better Hill Climber, since this individual will unite most of
the slots in the mating pool on itself. If the Genetic Algorithm behaves like a Hill
Climber, its benets, such as the ability to trace more than one possible solution at a
time, disappear.
Roulette wheel selection has a bad performance compared to other schemes like tournament
selection or ranking selection [1079]. It is mainly included here for the sake of completeness
and because it is easy to understand and suitable for educational purposes.
28.4.4 Tournament Selection
Tournament selection
31
, proposed by Wetzel [2923] and studied by Brindle [409], is one
of the most popular and eective selection schemes. Its features are well-known and have
been analyzed by a variety of researchers such as Blickle and Thiele [339, 340], Lee et al.
[1707], Miller and Goldberg [1898], Sastry and Goldberg [2400], and Oei et al. [2063]. In
tournament selection, k elements are picked from the population pop and compared with
each other in a tournament. The winner of this competition will then enter mating pool
mate. Although being a simple selection strategy, it is very powerful and therefore used in
many practical applications [81, 96, 461, 1880, 2912, 2914].
Example E28.22 (Binary Tournament Selection).
As example, consider a tournament selection (with replacement) with a tournament size of
two [2931]. For each single tournament, the contestants are chosen randomly according to a
uniform distribution and the winners will be allowed to enter the mating pool. If we assume
that the mating pool will contain about as same as many individuals as the population, each
individual will, on average, participate in two tournaments. The best candidate solution of
the population will win all the contests it takes part in and thus, again on average, contributes
approximately two copies to the mating pool. The median individual of the population is
better than 50% of its challengers but will also loose against 50%. Therefore, it will enter the
mating pool roughly one time on average. The worst individual in the population will lose
all its challenges to other candidate solutions and can only score even if competing against
itself, which will happen with probability (
1
/mps)
2
. It will not be able to reproduce in the
average case because mps (
1
/mps)
2
=
1
/mps < 1 mps > 1.
Example E28.23 (Tournament Selection (Example E28.18 cntd)).
For visualization purposes, let us go back to Example E28.18 with a population of 1000
individuals p
0
..p
999
and mps = ps = 1000. Again, we assume that each individual has an
unique tness value of v
1
(p
i
) = i, v
2
(p
i
) = (i +1)
3
, v
3
(p
i
) = 0.0001i if i < 999, 1 otherwise,
and v
4
(p
i
) = 1 +v
3
(p
i
), respectively. If we apply tournament selection with replacement in
31
http://en.wikipedia.org/wiki/Tournament_selection [accessed 2007-07-03]
28.4. SELECTION 297
this special scenario, the expected number of occurrences ES(p
i
) of an individual p
i
in the
mating pool can be computed according to Blickle and Thiele [340] as
ES(p
i
) = mps
_
_
1000 i
1000
_
k
_
1000 i 1
1000
_
k
_
(28.23)
The absolute values of the tness play no role in tournament selection. The only thing that
k=10
k=5
k=4
k=3
k=2
k=1
100 200 300 400 500 600 700 i 900
100 200 300 400 500 600 700 900 v (p)
1 i
1e6 8e6 3e7 6e7 1e8 2e8 3e8 7e8 v (p)
2 i
0
0
1
0
1
2
3
4
5
6
7
ES(p)
i
9
0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.09 v (p)
3 i
0
1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.09 1 v (p)
4 i
Figure 28.11: The number of expected ospring in tournament selection.
matters is whether or not the tness of one individual is higher as the tness of another
one, not tness dierence itself. The expected numbers of ospring for the four example
cases 1 and 2 from Example E28.18 are the same. Tournament selection thus gets rid of the
problematic dependency on the relative proportions of the tness values in roulette-wheel
style selection schemes.
Figure 28.11 depicts the expected ospring numbers for dierent tournament sizes k
1, 2, 3, 4, 5, 10. If k = 1, tournament selection degenerates to randomly picking individuals
and each candidate solution will occur one time in the mating pool on average. With rising
k, the selection pressure increases: individuals with good tness values create more and
more ospring whereas the chance of worse candidate solutions to reproduce decreases.
Tournament selection with replacement (TSR) is presented in Algorithm 28.11 which has
been implemented in Listing 56.14 on page 756. Tournament selection without replacement
(TSoR) [43, 1707] can be dened in two forms. In the rst variant specied as Algo-
rithm 28.12, a candidate solution cannot compete against itself. This method is dened in.
In Algorithm 28.13, on the other hand, an individual may enter the mating pool at most
once.
298 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.11: mate tournamentSelection
r
(k, pop, v, mps)
Input: pop: the list of individuals to select from
Input: [implicit] ps: the population size, ps = len(pop)
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Input: [implicit] k: the tournament size
Data: i, j, a, b: counter variables
Output: mate: the winners of the tournaments which now form the mating pool
1 begin
2 mate ()
3 for i 1 up to mps do
4 a randomUni[0, ps)
5 for j 1 up to k 1 do
6 b randomUni[0, ps)
7 if v(pop[b]) < v(pop[a]) then a b
8 mate addItem(mate, pop[a])
9 return mate
Algorithm 28.12: mate tournamentSelection
w
(k, pop, v, mps)
Input: pop: the list of individuals to select from
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Input: [implicit] k: the tournament size
Data: i, j, a, b: counter variables
Output: mate: the winners of the tournaments which now form the mating pool
1 begin
2 mate ()
3 pop sortAsc(pop, v)
4 for i 1 up to min len(pop) , mps do
5 a randomUni[0, len(pop))
6 for j 1 up to min len(pop) , k 1 do
7 b randomUni[0, ps)
8 if v(pop[b]) < v(pop[a]) then a b
9 mate addItem(mate, pop[a])
10 pop deleteItem(pop, a)
11 return mate
28.4. SELECTION 299
Algorithm 28.13: mate tournamentSelection
w
(k, pop, v, mps)
Input: pop: the list of individuals to select from
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Input: [implicit] k: the tournament size
Data: A: the list of contestants per tournament
Data: a: the tournament winner
Data: i, j: counter variables
Output: mate: the winners of the tournaments which now form the mating pool
1 begin
2 mate ()
3 pop sortAsc(pop, v)
4 for i 1 up to mps do
5 A ()
6 for j 1 up to mink, len(pop) do
7 repeat
8 searchItemUS(a, A)0
9 until a randomUni[0, len(pop))
10 A addItem(A, a)
11 a minA
12 mate addItem(mate, pop[a])
13 return mate
The algorithms specied here should more precisely be entitled as deterministic tour-
nament selection algorithms since the winner of the k contestants that take part in each
tournament enters the mating pool. In the non-deterministic variants, this is not necessarily
the case. There, a probability is dened. The best individual in the tournament is selected
with probability , the second best with probability (1), the third best with probability
(1 )
2
and so on. The i
th
best individual in a tournament enters the mating pool with
probability (1)
i
. Algorithm 28.14 realizes this behavior for a tournament selection with
replacement. Notice that it becomes equivalent to Algorithm 28.11 on the preceding page
if is set to 1. Besides the algorithms discussed here, a set of additional tournament-based
selection methods has been introduced by Lee et al. [1707].
300 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.14: mate tournamentSelectionND
r
(, k, pop, v, mps)
Input: pop: the list of individuals to select from
Input: [implicit] ps: the population size, ps = len(pop)
Input: v: the tness values
Input: mps: the number of individuals to be placed into the mating pool mate
Input: [implicit] : the selection probability, [0, 1]
Input: [implicit] k: the tournament size
Data: A: the set of tournament contestants
Data: i, j: counter variables
Output: mate: the winners of the tournaments which now form the mating pool
1 begin
2 mate ()
3 pop sortAsc(pop, v)
4 for i 1 up to mps do
5 A ()
6 for j 1 up to k do
7 A addItem(A, randomUni[0, ps))
8 A sortAsc(A, cmp(a
1
, a
2
) (a
1
a
2
))
9 for j 0 up to len(A) 1 do
10 if (randomUni[0, 1) ) (j len(A) 1) then
11 mate addItem(mate, pop[A[j]])
12 j
13 return mate
28.4.5 Linear Ranking Selection
Linear ranking selection [340], introduced by Baker [187] and more thoroughly discussed by
Blickle and Thiele [340], Whitley [2929], and Goldberg and Deb [1079] is another approach
for circumventing the problems of tness proportionate selection methods. In ranking se-
lection [187, 1133, 2929], the probability of an individual to be selected is proportional to
its position (rank) in the sorted list of all individuals in the population. Using the rank
smoothes out larger dierences of the tness values and emphasizes small ones. Generally,
we can consider the conventional ranking selection method as the application of a tness
assignment process setting the rank as tness (which can be achieved with Pareto ranking,
for instance) and a subsequent tness proportional selection.
In its original denition discussed in [340], linear ranking selection was used to maximize
tness. Here, we will discuss it again for tness minimization. In linear ranking selection with
replacement, the probability P (select(p
i
)) that the individual at rank i 0..ps is picked in
each selection decision is given in Equation 28.24 below. Notice that each individual always
receives a dierent rank and even if two individuals have the same tness, they must be
assigned to dierent ranks [340].
P (select(p
i
)) =
1
ps
_
+
_
_
ps i 1
ps 1
_
(28.24)
In Equation 28.24, the best individual (at rank 0) will have the probability
+
ps
of being
28.4. SELECTION 301
picked while the worst individual (rank ps 1) is chosen with
ps
chance:
P (select(p
0
)) =
1
ps
_
+
_
_
ps 0 1
ps 1
_
=
1
ps
_
+
_
__
=
+
ps
(28.25)
P (select(p
ps1
)) =
1
ps
_
+
_
_
ps (ps 1) 1
ps 1
_
(28.26)
=
1
ps
_
+
_
_
0
ps 1
_
=
ps
(28.27)
It should be noted that all probabilities must add up to one, i. e., :
ps1
i=0
P (select(p
i
)) = 1 (28.28)
1 =
ps1
i=0
1
ps
_
+
_
_
ps i 1
ps 1
_
(28.29)
=
1
ps
ps1
i=0
_
+
_
_
ps i 1
ps 1
_
(28.30)
=
1
ps
_
ps
+
ps1
i=0
_
_
ps i 1
ps 1
_
(28.31)
=
1
ps
_
ps
+
_
_
ps1
i=0
ps i 1
ps 1
_
(28.32)
=
1
ps
_
ps
+
+
ps 1
ps1
i=0
ps i 1
_
(28.33)
=
1
ps
_
ps
+
+
ps 1
_
ps (ps 1)
ps1
i=0
i
__
(28.34)
=
1
ps
_
ps
+
+
ps 1
_
ps (ps 1)
1
2
ps (ps 1)
__
(28.35)
=
1
ps
_
ps
+
+
ps 1
1
2
ps (ps 1)
_
(28.36)
=
1
ps
_
ps
+
1
2
ps
_
_
_
(28.37)
=
1
ps
_
1
2
ps
+
1
2
ps
+
_
(28.38)
1 =
1
2
+
1
2
+
(28.39)
1
1
2
=
1
2
+
(28.40)
2
=
+
(28.41)
The parameters
and
+
must be chosen in a way that 2
=
+
and, obviously,
0 <
and 0 <
+
must hold as well. If the selection algorithm should furthermore make
sense, i. e., prefer individuals with a lower tness rank over those with a higher tness rank
(again, tness is subject to minimization), 0
<
+
2 is true.
Koza [1602] determines the slope of the linear ranking selection probability function by
a factor r
m
in his implementation of this selection scheme. According to [340], this factor
302 28 EVOLUTIONARY ALGORITHMS
can be transformed to
and
+
by the following equations.
=
2
r
m
+ 1
(28.42)
+
=
2r
m
r
m
+ 1
(28.43)
2
=
+
2
2
r
m
+ 1
=
2r
m
r
m
+ 1
(28.44)
2 (r
m
+ 1) 2 = 2r
m
(28.45)
2r
m
= 2r
m
q.e.d. (28.46)
As mentioned, we can simply emulate this scheme by (1) rst building a secondary t-
ness function v
(p
i
) = 1 P (select(p
i
)) (since Al-
gorithm 28.9 on page 292 minimizes tness).
28.4.6 Random Selection
Random selection is a selection method which simply lls the mating pool with randomly
picked individual from the population. Obviously, to use this selection scheme for sur-
vival/environmental selection, i. e., to determine which individuals are allowed to produce
ospring (see Section 28.1.2.6 on page 260) makes little sense. This would turn the Evolu-
tionary Algorithm into some sort of parallel random walk, since it means to disregard all
tness information.
However, after an actual mating pool has been lled, it may make sense to use random
selection to choose the parents for the dierent individuals, especially in cases where there
are many parents such as in Evolution Strategies which are introduced in Chapter 30 on
page 359.
Algorithm 28.15: mate randomSelection
r
(pop, mps)
Input: pop: the list of individuals to select from
Input: [implicit] ps: the population size, ps = len(pop)
Input: mps: the number of individuals to be placed into the mating pool mate
Data: i: counter variable
Output: mate: the randomly picked parents
1 begin
2 mate ()
3 for i 1 up to mps do
4 mate addItem(mate, pop[randomUni[0, ps)])
5 return mate
Algorithm 28.15 provides a specication of random selection with replacement. An
example implementation of this algorithm is given in Listing 56.15 on page 758.
28.4.7 Clearing and Simple Convergence Prevention (SCP)
In our experiments, especially in Genetic Programming [2888] and problems with discrete
objective functions [2912, 2914], we often use a very simple mechanism to prevent premature
convergence. Premature convergence, as outlined in Chapter 13, means that the optimization
process gets stuck at a local optimum and loses the ability to investigate other areas in the
28.4. SELECTION 303
search space, in particular the area where the global optimum resides. OurSCP method
is neither a tness nor a selection algorithm, but instead more of a lter which is placed
after computing the objectives and before applying a tness assignment process. Since our
method actively deletes individuals from the population, we placed it into this section.
The idea is simple: the more similar individuals exist in the population, the more likely
the optimization process has converged. It is not clear whether it converged to a global
optimum or to a local one. If it got stuck at a local optimum, the fraction of the population
which resides at that spot should be limited. Then, some individuals necessarily will be
located somewhere else and, if they survive, may nd a path away from the local optimum
towards a dierent area in the search space. In case that the optimizer indeed converged to
the global optimum, such a measure does not cause problems because in the end, because
better points than the global optimum cannot be discovered anyway.
28.4.7.1 Clearing
The rst one to apply an explicit limitation of the number of individuals in an area of
the search space was Petrowski [2167, 2168] whose clearing approach is applied in each
generation and works as specied in Algorithm 28.16 where tness is subject to minimization.
Basically, clearing divides the population of an EA into several sub-populations according
Algorithm 28.16: v
clearingFilter(pop, , k, v)
Input: pop: the list of individuals to apply clearing to
Input: : the clearing radius
Input: k: the nieche capacity
Input: [implicit] v: the tness values
Input: [implicit] dist: a distance measure in the genome or phenome
Data: n: the current number of winners
Data: i, j: counter variables
Data: P: counter variables
Output: v
fitnf
3 P sortAsc(pop, v)
4 for i 0 up to len(P) 1 do
5 if v(P[i]) < then
6 n 1
7 for j i + 1 up to len(P) 1 do
8 if (v(P[j]) < ) (dist(P[i], P[j]) < ) then
9 if n < k then n n + 1
10 else v
(P[j])
11 return v
to a distance measure dist applied in the genotypic (G) or phenotypic space (X) in each
generation. The individuals of each sub-population have at most the distance to the
ttest individual in this niche. Then, the tness of all but the k best individuals in such a
sub-population is set to the worst possible value. This eectively prevents that a niche can
get too crowded. Sareni and Krahenb uhl [2391] showed that this method is very promising.
Singh and Deb [2503] suggest a modied clearing approach which shifts individuals that
would be cleared farther away and reevaluates their tness.
304 28 EVOLUTIONARY ALGORITHMS
28.4.7.2 SCP
We modify this approach in two respects: We measure similarity not in form of a distance
in the search space G or the problem space X, but in the objective space Y R
|f |
. All
individuals are compared with each other. If two have exactly the same objective values
32
,
one of them is thrown away with probability
33
c [0, 1] and does not take part in any further
comparisons. This way, we weed out similar individuals without making any assumptions
about G or X and make room in the population and mating pool for a wider diversity of
candidate solutions. For c = 0, this prevention mechanism is turned o, for c = 1, all
remaining individuals will have dierent objective values.
Although this approach is very simple, the results of our experiments were often
signicantly better with this convergence prevention method turned on than without
it [2188, 2888, 2912, 2914]. Additionally, in none of our experiments, the outcomes were
inuenced negatively by this lter, which makes it even more robust than other methods for
convergence prevention like sharing or variety preserving. Algorithm 28.17 species how our
simple mechanism works. It has to be applied after the evaluation of the objective values of
the individuals in the population and before any tness assignment or selection takes place.
Algorithm 28.17: P scpFilter(pop, c, f )
Input: pop: the list of individuals to apply convergence prevention to
Input: c: the convergence prevention probability, c [0, 1]
Input: [implicit] f : the set of objective function(s)
Data: i, j: counter variables
Data: p: the individual checked in this generation
Output: P: the pruned population
1 begin
2 P ()
3 for i 0 up to len(P) 1 do
4 p pop[i]
5 for j len(P) 1 down to 0 do
6 if f (p.x) = f (pop
[j].x) then
7 if randomUni[0, 1) < c then
8 P deleteItem(P, j)
9 P addItem(P, p)
10 return P
If an individual p occurs n times in the population or if there are n individuals with
exactly the same objective values, Algorithm 28.17 cuts down the expected number of their
occurrences ESp to
ES(p) =
n
i=1
(1 c)
i1
=
n1
i=0
(1 c)
i
=
(1 c)
n
1
c
=
1 (1 c)
n
c
(28.47)
In Figure 28.12, we sketch the expected number of remaining instances of the individual p
after this pruning process if it occurred n times in the population before Algorithm 28.17
was applied.
From Equation 28.47 follows that even a population of innite size which has fully con-
verged to one single value will probably not contain more than
1
c
copies of this individual
32
The exactly-the-same-criterion makes sense in combinatorial optimization and many Genetic Program-
ming problems but may easily be replaced with a limit imposed on the Euclidian distance in real-valued
optimization problems, for instance.
33
instead of dening a xed threshold k
28.4. SELECTION 305
5 10 15 n 25
cp=0.7
cp=0.5
cp=0.3
cp=0.2
cp=0.1
0
1
2
3
4
5
6
7
ES(p)
9
Figure 28.12: The expected numbers of occurrences for dierent values of n and c.
after the simple convergence prevention has been applied. This threshold is also visible in
Figure 28.12.
lim
n
ES(p) = lim
n
1 (1 c)
n
c
=
1 0
c
=
1
c
(28.48)
28.4.7.3 Discussion
In Petrowskis clearing approach [2167], the maximum number of individuals which can
survive in a niche was a xed constant k and, if less than k individuals resided in a niche,
none of them would be aected. Dierent from that, in SCP, an expected value of the
number of individuals allowed in a niche is specied with the probability c and may be
both, exceeded or undercut.
Another dierence of the approaches arises from the space in which the distance is
computed: Whereas clearing prevents the EA from concentrating too much on a certain area
in the search or problem space, SCP stops it from keeping too many individuals with equal
utility. The former approach works against premature convergence to a certain solution
structure while the latter forces the EA to keep track of a trail to candidate solutions
with worse tness which may later evolve to good individuals with traits dierent from
the currently exploited ones. Furthermore, since our method does not need to access any
information apart from the objective values, it is independent from the search and problem
space and can, once implemented, combined with any kind of population-based optimizer.
Which of the two approaches is better has not yet been tested with comparative ex-
periments and is part of our future work. At the present moment, we assume that in
real-valued search or problem spaces, clearing should be more suitable whereas we know
from experiments using our approach only that SCP performs very good in combinatorial
problems [2188, 2914] and Genetic Programming [2888].
306 28 EVOLUTIONARY ALGORITHMS
28.5 Reproduction
An optimization algorithm uses the information gathered up to step t for creating the can-
didate solutions to be evaluated in step t + 1. There exist dierent methods to do so. In
Evolutionary Algorithms, the aggregated information corresponds to the population pop
and the archive archive of best individuals, if such an archive is maintained. The search
operations searchOp Op used in the Evolutionary Algorithm family are called reproduc-
tion operation, inspired by the biological procreation mechanisms
34
of mother nature [2303].
There are four basic operations:
1. Creation simply creates a new genotype without any ancestors or heritage.
2. Duplication directly copies an existing genotype without any modication.
3. Mutation in Evolutionary Algorithms corresponds to small, random variations in the
genotype of an individual, exactly natural mutation
35
.
4. Like in sexual reproduction, recombination
36
combines two parental genotypes to a
new genotype including traits from both elders.
In the following, we will discuss these operations in detail and provide general denitions
form them. When an Evolutionary Algorithm starts, no information about the search space
has been gathered yet. Hence, unless seeding is applied (see Paragraph 28.1.2.2.2, we cannot
use existing candidate solutions to derive new ones and search operations with an arity higher
than zero cannot be applied. Creation is thus used to ll the initial population pop(t = 1).
Denition D28.11 (Creation). The creation operation create
__
is used to produce a new
genotype g G with a random conguration.
g = create
__
g G (28.49)
For creating the initial population of the size ps, we dene the function createPop(ps) in
Algorithm 28.18.
Algorithm 28.18: pop createPop(ps)
Input: ps: the number of individuals in the new population
Input: [implicit] create: the creation operator
Data: i: a counter variable
Output: pop: the new population of randomly created individuals (len(pop) = s)
1 begin
2 pop ()
3 for i 0 up to ps 1 do
4 p
5 p.g create
__
6 pop addItem(pop, p)
7 return pop
Duplication is just a placeholder for copying an element of the search space, i. e., it is
what occurs when neither mutation nor recombination are applied. It is useful to increase
the share of a given type of individual in a population.
34
http://en.wikipedia.org/wiki/Reproduction [accessed 2007-07-03]
35
http://en.wikipedia.org/wiki/Mutation [accessed 2007-07-03]
36
http://en.wikipedia.org/wiki/Sexual_reproduction [accessed 2008-03-17]
28.5. REPRODUCTION 307
Denition D28.12 (Duplication). The duplication operation duplicate : G G is used
to create an exact copy of an existing genotype g G.
g = duplicate(g) g G (28.50)
In most EAs, a unary search operation, mutation, is provided. This operation takes one
genotype as argument and modies it. The way this modication is performed is application-
dependent. It may happen in a randomized or in a deterministic fashion. Together with
duplication, mutation corresponds to the asexual reproduction in nature.
Denition D28.13 (Mutation). The mutation operation mutate : G G is used to
create a new genotype g
n
G by modifying an existing one.
g
n
= mutate(g) : g G g
n
G (28.51)
Like mutation, the recombination is a search operation inspired by natural reproduction. Its
role model is sexual reproduction. The goal of implementing a recombination operation is to
provide the search process with some means to join benecial features of dierent candidate
solutions. This may happen in a deterministic or randomized fashion.
Notice that the term recombination is more general than crossover since it stands for
arbitrary search operations that combines the traits of two individuals. Crossover, however,
is only used if the elements search space G are linear representations. Then, it stands for
exchanging parts of these so-called strings.
Denition D28.14 (Recombination). The recombination
37
operation recombine : G
G G is used to create a new genotype g
n
G by combining the features of two existing
ones.
g
n
= recombine(g
a
, g
b
) : g
a
, g
b
G g
n
G (28.52)
It is not unusual to chain the application of search operators, i. e., to perform something
like mutate(recombine(g
1
, g
2
)). The four operators are altogether used to reproduce whole
populations of individuals.
Denition D28.15 (reproducePop). The population reproduction operation pop =
reproducePop(mate, ps) is used to create a new population pop of ps individuals by applying
the reproduction operations to the mating pool mate.
In Algorithm 28.19, we give a specication on how Evolutionary Algorithms usually would
apply the reproduction operations dened so far to create a new population of ps individuals.
This procedure applies mutation and crossover at specic rates mr [0, 1] and cr [0, 1],
respectively.
37
http://en.wikipedia.org/wiki/Recombination [accessed 2007-07-03]
308 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.19: pop reproducePopEA(mate, ps, mr, cr)
Input: mate: the mating pool
Input: [implicit] mps: the mating pool size
Input: ps: the number of individuals in the new population
Input: mr: the mutation rate
Input: cr: the crossover rate
Input: [implicit] mutate, recombine: the mutation and crossover operators
Data: i, j: counter variables
Output: pop: the new population (len(pop) = ps)
1 begin
2 pop ()
3 for i 0 up to ps do
4 p duplicate(mate[i mod mps])
5 if (randomUni[0, 1) < cr) (mps > 1) then
6 repeat
7 j randomUni[0, mps)
8 until j = (i mod mps)
9 p.g recombine(p.g, mate[j].g)
10 if randomUni[0, 1) < mr then p.g mutate(p.g)
11 pop addItem(pop, p)
12 return pop
28.6 Maintaining a Set of Non-Dominated/Non-Prevailed
Individuals
Most multi-objective optimization algorithms return a set X of best solutions x discovered
instead of a single individual. Many optimization techniques also internally keep track of
the set of best candidate solutions encountered during the search process. In Simulated An-
nealing, for instance, it is quite possible to discover an optimal element x
and subsequently
depart from it to a local optimum x
l
. Therefore, optimizers normally carry a list of the
non-prevailed candidate solutions ever visited with them.
In scenarios where the search space G diers from the problem space X it often makes
more sense to store the list of individual records P instead of just keeping a set x of the
best phenotypes X. Since the elements of the search space are no longer required at the
end of the optimization process, we dene the simple operation extractPhenotypes which
extracts them from a set of individuals P.
x extractPhenotypes(P) p P : x = p.x (28.53)
28.6.1 Updating the Optimal Set
Whenever a new individual p is created, the set P holding the best individuals known so far
may change. It is possible that the new candidate solution must be included in the optimal
set or even prevails some of the phenotypes already contained therein which then must be
removed.
Denition D28.16 (updateOptimalSet). The function updateOptimalSet updates a
set of elements P
old
with the new individual p
new
.x. It uses knowledge of the prevalence
28.6. MAINTAINING A SET OF NON-DOMINATED/NON-PREVAILED INDIVIDUALS309
relation and the corresponding comparator function cmp
f
.
P
new
= updateOptimalSet(P
old
, p
new
, , ) P
old
, P
new
GX, p
new
GX :
p
1
P
old
p
2
P
old
: p
2
.x p
1
.x P
new
P
old
p
new
p
1
P
new
p
2
P
new
: p
2
.x
(28.54)
We dene two equivalent approaches in Algorithm 28.20 and Algorithm 28.21 which perform
the necessary operations. Algorithm 28.20 creates a new, empty optimal set and successively
inserts non-prevailed elements whereas Algorithm 28.21 removes all elements which are pre-
vailed by the new individual p
new
from the old set P
old
.
Algorithm 28.20: P
new
updateOptimalSet(P
old
, p
new
, cmp
f
)
Input: P
old
: a set of non-prevailed individuals as known before the creation of p
new
Input: p
new
: a new individual to be checked
Input: cmp
f
: the comparator function representing the domainance/prevalence
relation
Output: P
new
: the set updated with the knowledge of p
new
1 begin
2 P
new
3 foreach p
old
P
old
do
4 if (p
new
.x p
old
.x) then
5 P
new
P
new
p
old
6 if p
old
.x p
new
.x then return P
old
7 return P
new
p
new
Algorithm 28.21: P
new
updateOptimalSet(P
old
, p
new
, cmp
f
) (
nd
Version)
Input: P
old
: a set of non-prevailed individuals as known before the creation of p
new
Input: p
new
: a new individual to be checked
Input: cmp
f
: the comparator function representing the domainance/prevalence
relation
Output: P
new
: the set updated with the knowledge of p
new
1 begin
2 P
new
P
old
3 foreach p
old
P
old
do
4 if p
new
.x p
old
.x then
5 P
new
P
new
p
old
6 else if p
old
.x p
new
.x then
7 return P
old
8 return P
new
p
new
Especially in the case of Evolutionary Algorithms, not a single new element is created
in each generation but a set P. Let us dene the operation updateOptimalSetN for this
purpose. This operation can easily be realized by iteratively applying updateOptimalSet,
as shown in Algorithm 28.22.
28.6.2 Obtaining Non-Prevailed Elements
The function updateOptimalSet helps an optimizer to build and maintain a list of optimal
310 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.22: P
new
updateOptimalSetN(P
old
, P, cmp
f
)
Input: P
old
: the old set of non-prevailed individuals
Input: P: the set of new individuals to be checked for non-prevailedness
Input: cmp
f
: the comparator function representing the domainance/prevalence
relation
Data: p: an individual from P
Output: P
new
: the updated set
1 begin
2 P
new
P
old
3 foreach p P do P
new
updateOptimalSet(P
new
, p, cmp
f
)
4 return P
new
individuals. When the optimization process nishes, the extractPhenotypes can then be
used to obtain the non-prevailed elements of the problem space and return them to the
user. However, not all optimization methods maintain an non-prevailed set all the time.
When they terminate, they have to extracts all optimal elements the set of individuals pop
currently known.
Denition D28.17 (extractBest). The function extractBest function extracts a set P
of non-prevailed (non-dominated) individuals from any given set of individuals pop according
to the comparator cmp
f
.
P pop GX, P = extractBest(pop, cmp
f
) p
1
P ,p
2
pop : p
2
.x p
1
.x
(28.55)
Algorithm 28.23 denes one possible realization of extractBest. By the way, this approach
could also be used for updating an optimal set.
updateOptimalSet(P
old
, p
new
, cmp
f
) extractBest(P
old
cupp
new
, cmp
f
) (28.56)
Algorithm 28.23: P extractBest(pop, cmp
f
)
Input: pop: the list to extract the non-prevailed individuals from
Data: p
any
, p
chk
: candidate solutions tested for supremacy
Data: i, j: counter variables
Output: P: the non-prevailed subset extracted from pop
1 begin
2 P pop
3 for i len(P) 1 down to 1 do
4 for j i 1 down to 0 do
5 if P[i] P[j] then
6 P deleteItemPj
7 i i 1
8 else if P[j] P[i] then
9 P deleteItemPi
10 return listToSetP
28.6. MAINTAINING A SET OF NON-DOMINATED/NON-PREVAILED INDIVIDUALS311
28.6.3 Pruning the Optimal Set
In some optimization problems, there may be very many if not innite many optimal indi-
viduals. The set X of the best discovered candidate solutions computed by the optimization
algorithms, however, cannot grow innitely because we only have limited memory. The same
holds for the archives archive of non-dominated individuals maintained by several MOEAs.
Therefore, we need to perform an action called pruning which reduces the size of the set of
non-prevailed individuals to a given limit k [605, 1959, 2645].
There exists a variety of possible pruning operations. Morse [1959] and Taboada and Coit
[2644], for instance, suggest to use clustering algorithms
38
for this purpose. In principle, also
any combination of the tness assignment and selection schemes discussed in Chapter 28
would do. It is very important that the loss of generality during a pruning operation is
minimized. Fieldsend et al. [912], for instance, point out that if the extreme elements of
the optimal frontier are lost, the resulting set may only represent a small fraction of the
optima that could have been found without pruning. Instead of working on the set X of best
discovered candidate solutions x, we again base our approach on a set of individuals P and
we dene:
Denition D28.18 (pruneOptimalSet). The pruning operation pruneOptimalSet re-
duces the size of a set P
old
of individuals to t to a given upper boundary k.
P
new
P
old
subseteqGX, k N
1
: P
new
= pruneOptimalSet(P
old
, k) [P
new
[ k
(28.57)
28.6.3.1 Pruning via Clustering
Algorithm 28.24 uses clustering to provide the functionality specied in this denition and
thereby realizes the idea of Morse [1959] and Taboada and Coit [2644]. Basically, any given
clustering algorithm could be used as replacement for cluster see ?? on page ?? for more
information on clustering.
Algorithm 28.24: P
new
pruneOptimalSet
c
(P
old
, k)
Input: P
old
: the set to be pruned
Input: k: the maximum size allowed for the set (k > 0)
Input: [implicit] cluster: the clustering algorithm to be used
Input: [implicit] nucleus: the function used to determine the nuclei of the clusters
Data: B: the set of clusters obtained by the clustering algorithm
Data: b: a single cluster b B
Output: P
new
: the pruned set
1 begin
// obtain k clusters
2 B cluster(P
old
)
3 P
new
4 foreach b B do P
new
P
new
nucleus(b)
5 return P
new
38
You can nd a discussion of clustering algorithms in ??.
312 28 EVOLUTIONARY ALGORITHMS
28.6.3.2 Adaptive Grid Archiving
Let us discuss the adaptive grid archiving algorithm (AGA) as example for a more sophis-
ticated approach to prune the set of non-dominated / non-prevailed individuals. AGA has
been introduced for the Evolutionary Algorithm PAES
39
by Knowles and Corne [1552] and
uses the objective values (computed by the set of objective functions f ) directly. Hence, it
can treat the individuals as [f [-dimensional vectors where each dimension corresponds to one
objective function f f . This [f [-dimensional objective space Y is divided in a grid with d
divisions in each dimension. Its span in each dimension is dened by the corresponding min-
imum and maximum objective values. The individuals with the minimum/maximum values
are always preserved. This circumvents the phenomenon of narrowing down the optimal
set described by Fieldsend et al. [912] and distinguishes the AGA approach from clustering-
based methods. Hence, it is not possible to dene maximum set sizes k which are smaller
than 2[f [. If individuals need to be removed from the set because it became too large, the
AGA approach removes those that reside in regions which are the most crowded.
The original sources outline the algorithm basically with with descriptions and deni-
tions. Here, we introduce a more or less trivial specication in Algorithm 28.25 on the next
page and Algorithm 28.26 on page 314.
The function divideAGA is internally used to perform the grid division. It transforms
the objective values of each individual to grid coordinates stored in the array lst. Further-
more, divideAGA also counts the number of individuals that reside in the same coordi-
nates for each individual and makes it available in cnt. It ensures the preservation of border
individuals by assigning a negative cnt value to them. This basically disables their later
disposal by the pruning algorithm pruneOptimalSetAGA since pruneOptimalSetAGA
deletes the individuals from the set P
old
that have largest cnt values rst.
39
PAES is discussed in ?? on page ??
28.6. MAINTAINING A SET OF NON-DOMINATED/NON-PREVAILED INDIVIDUALS313
Algorithm 28.25: (P
l
, lst, cnt) divideAGA(P
old
, d)
Input: P
old
: the set to be pruned
Input: d: the number of divisions to be performed per dimension
Input: [implicit] f : the set of objective functions
Data: i, j: counter variables
Data: mini, maxi, mul: temporary stores
Output: (P
l
, lst, cnt): a tuple containing the list representation P
l
of P
old
, a list lst
assigning grid coordinates to the elements of P
l
and a list cnt containing
the number of elements in those grid locations
1 begin
2 mini createList([f [, )
3 maxi createList([f [, )
4 for i [f [ 1 down to 0 do
5 mini[i 1] minf
i
(p.x) p P
old
6 maxi[i 1] maxf
i
(p.x) p P
old
7 mul createList([f [, 0)
8 for i [f [ 1 down to 0 do
9 if maxi[i] ,= mini[i] then
10 mul[i]
d
maxi[i] mini[i]
11 else
12 maxi[i] maxi[i] + 1
13 mini[i] mini[i] 1
14 P
l
setToListP
old
15 lst createList(len(P
l
) , )
16 cnt createList(len(P
l
) , 0)
17 for i len(P
l
) 1 down to 0 do
18 lst[i] createList([f [, 0)
19 for j 1 up to [f [ do
20 if (f
j
(P
l
[i]) mini[j 1]) (f
j
(P
l
[i]) maxi[j 1]) then
21 cnt[i] cnt[i] 2
22 lst[i][j 1] (f
j
(P
l
[i]) mini[j 1]) mul[j 1]
23 if cnt[i] > 0 then
24 for j i + 1 up to len(P
l
) 1 do
25 if lst[i] = lst[j] then
26 cnt[i] cnt[i] + 1
27 if cnt[j] > 0 then cnt[j] cnt[j] + 1
28 return (P
l
, lst, cnt)
314 28 EVOLUTIONARY ALGORITHMS
Algorithm 28.26: P
new
pruneOptimalSetAGA(P
old
, d, k)
Input: Pold: the set to be pruned
Input: d: the number of divisions to be performed per dimension
Input: k: the maximum size allowed for the set (k 2[f [)
Input: [implicit] f : the set of objective functions
Data: i: a counter variable
Data: P
l
: the list representation of P
old
Data: lst: a list assigning grid coordinates to the elements of P
l
Data: cnt: the number of elements in the grid locations dened in lst
Output: P
new
: the pruned set
1 begin
2 if len(P
old
) k then return P
old
3 (P
l
, lst, cnt) divideAGA(P
old
, d)
4 while len(P
l
) > k do
5 idx 0
6 for i len(P
l
) 1 down to 1 do
7 if cnt[i] > cnt[idx] then idx i
8 for i len(P
l
) 1 down to 0 do
9 if (lst[i] = lst[idx]) (cnt[i] > 0) then cnt[i] cnt[i] 1
10 P
l
deleteItemP
l
idx
11 cnt deleteItemcntidx
12 lst deleteItemlstidx
13 return listToSetP
l
28.7 General Information on Evolutionary Algorithms
28.7.1 Applications and Examples
Table 28.4: Applications and Examples of Evolutionary Algorithms.
Area References
Art [1174, 2320, 2445]; see also Tables 29.1 and 31.1
Astronomy [480]
Chemistry [587, 678, 2676]; see also Tables 29.1, 30.1, 31.1, and 32.1
Combinatorial Problems [308, 354, 360, 371, 400, 444, 445, 451, 457, 491, 564, 567,
619, 644, 649, 690, 802, 807, 808, 810, 812, 820, 10111013,
1117, 1145, 1148, 1149, 1177, 1290, 1311, 1417, 1429, 1437,
1486, 1532, 1618, 1653, 1696, 1730, 1803, 18221825, 1830,
1835, 1859, 1871, 1884, 1961, 2025, 2055, 2105, 2144, 2162,
2188, 2189, 2245, 2335, 2448, 2499, 2535, 2633, 2663, 2669,
2772, 2811, 2862, 3027, 3064, 3071, 3101]; see also Tables
29.1, 30.1, 31.1, 33.1, 34.1, and 35.1
28.7. GENERAL INFORMATION ON EVOLUTIONARY ALGORITHMS 315
Computer Graphics [1452, 1577, 1661, 2096, 2487, 2488, 2651]; see also Tables
29.1, 30.1, 31.1, and 33.1
Control [1710]; see also Tables 29.1, 31.1, 32.1, and 35.1
Cooperation and Teamwork [1996, 2424]; see also Tables 29.1 and 31.1
Data Compression see Table 31.1
Data Mining [144, 360, 480, 1048, 1746, 2213, 2503, 2644, 2645, 2676,
3018]; see also Tables 29.1, 31.1, 32.1, 34.1, and 35.1
Databases [371, 567, 1145, 1696, 1822, 1824, 1825, 2633, 3064, 3071];
see also Tables 29.1, 31.1, and 35.1
Decision Making see Table 31.1
Digital Technology [1479]; see also Tables 29.1, 30.1, 31.1, 34.1, and 35.1
Distributed Algorithms and Sys-
tems
[89, 112, 125, 156, 202, 328, 352354, 404, 439, 545, 605,
663, 669, 702, 705, 786, 811, 843, 871, 882, 963, 1006, 1007,
1094, 1225, 1292, 1298, 1532, 1574, 1633, 1718, 1733, 1749,
1800, 1835, 1838, 1863, 1883, 1995, 2020, 2058, 2071, 2100,
2387, 2425, 2440, 2448, 2470, 2493, 2628, 2644, 2645, 2663,
2694, 2791, 2862, 2864, 2893, 2903, 3027, 3061, 3085]; see
also Tables 29.1, 30.1, 31.1, 32.1, 33.1, 34.1, and 35.1
E-Learning [1158, 1298, 2628, 2763]; see also Table 29.1
Economics and Finances [549, 585, 1718, 1825, 2622]; see also Tables 29.1, 31.1, 33.1,
and 35.1
Engineering [112, 156, 267, 517, 535, 567, 579, 605, 644, 669, 677, 777,
786, 787, 853, 871, 882, 953, 1094, 1225, 1310, 1323, 1479,
1486, 1508, 1574, 1710, 1717, 1733, 1746, 1749, 1830, 1835,
1838, 1883, 2058, 2059, 2083, 2111, 2144, 2189, 2320, 2364,
2425, 2448, 2468, 2499, 2535, 2644, 2645, 2663, 2677, 2693,
2694, 2743, 2799, 2858, 2861, 2862, 2864]; see also Tables
29.1, 30.1, 31.1, 32.1, 33.1, 34.1, and 35.1
Function Optimization [742, 795, 853, 855, 1018, 1523, 1727, 1927, 1986, 2099, 2210,
2799]; see also Tables 29.1, 30.1, 32.1, 33.1, 34.1, and 35.1
Games [2350]; see also Tables 29.1, 31.1, and 32.1
Graph Theory [39, 63, 67, 89, 112, 202, 328, 329, 353, 354, 439, 644, 669,
786, 804, 843, 882, 963, 1007, 1094, 1225, 1290, 1486, 1532,
1574, 1733, 1749, 1800, 1835, 1863, 1883, 1934, 1995, 2020,
2025, 2058, 2100, 2144, 2189, 2237, 2387, 2425, 2440, 2448,
2470, 2493, 2663, 2677, 2694, 2772, 2791, 2864, 3027, 3085];
see also Tables 29.1, 30.1, 31.1, 33.1, 34.1, and 35.1
Healthcare [567, 2021, 2537]; see also Tables 29.1, 31.1, and 35.1
Image Synthesis [291, 777, 2445, 2651]
Logistics [354, 444, 445, 451, 517, 579, 619, 802, 808, 810, 812, 820,
1011, 1013, 1148, 1149, 1177, 1429, 1653, 1730, 1803, 1823,
1830, 1859, 1869, 1884, 1961, 2059, 2111, 2162, 2188, 2189,
2245, 2669, 2811, 2912]; see also Tables 29.1, 30.1, 33.1, and
34.1
Mathematics [376, 377, 550, 1217, 1661, 2350, 2407, 2677]; see also Tables
29.1, 30.1, 31.1, 32.1, 33.1, 34.1, and 35.1
Military and Defense [439, 1661, 1872]; see also Table 34.1
Motor Control [489]; see also Tables 33.1 and 34.1
Multi-Agent Systems [967, 1661, 2144, 2268, 2693, 2766]; see also Tables 29.1, 31.1,
and 35.1
Multiplayer Games see Table 31.1
Physics [407, 678]; see also Tables 29.1, 31.1, 32.1, and 34.1
316 28 EVOLUTIONARY ALGORITHMS
Prediction [144, 1045]; see also Tables 29.1, 30.1, 31.1, and 35.1
Security [404, 540, 871, 1486, 1507, 1508, 1661, 1749]; see also Tables
29.1, 31.1, and 35.1
Software [703, 842, 1486, 1508, 1791, 1934, 1995, 2213, 2677, 2863,
2887]; see also Tables 29.1, 30.1, 31.1, 33.1, and 34.1
Sorting [1233]; see also Table 31.1
Telecommunication [820]
Testing [2863]; see also Table 31.3
Theorem Proong and Automatic
Verication
see Table 29.1
Water Supply and Management [1268, 1986]
Wireless Communication [39, 63, 67, 68, 155, 644, 787, 1290, 1486, 1717, 1934, 2144,
2189, 2237, 2364, 2677]; see also Tables 29.1, 31.1, 33.1, 34.1,
and 35.1
28.7.2 Books
1. Handbook of Evolutionary Computation [171]
2. Variants of Evolutionary Algorithms for Real-World Applications [567]
3. New Ideas in Optimization [638]
4. Multiobjective Problem Solving from Nature From Concepts to Applications [1554]
5. Natural Intelligence for Scheduling, Planning and Packing Problems [564]
6. Advances in Evolutionary Computing Theory and Applications [1049]
7. Bio-inspired Algorithms for the Vehicle Routing Problem [2162]
8. Evolutionary Computation 1: Basic Algorithms and Operators [174]
9. Nature-Inspired Algorithms for Optimisation [562]
10. Telecommunications Optimization: Heuristic and Adaptive Techniques [640]
11. Hybrid Evolutionary Algorithms [1141]
12. Success in Evolutionary Computation [3014]
13. Computational Intelligence in Telecommunications Networks [2144]
14. Evolutionary Design by Computers [272]
15. Evolutionary Computation in Economics and Finance [549]
16. Parameter Setting in Evolutionary Algorithms [1753]
17. Evolutionary Computation in Dynamic and Uncertain Environments [3019]
18. Applications of Multi-Objective Evolutionary Algorithms [597]
19. Introduction to Evolutionary Computing [865]
20. Nature-Inspired Informatics for Intelligent Applications and Knowledge Discovery: Implica-
tions in Business, Science and Engineering [563]
21. Evolutionary Computation [847]
22. Evolutionary Computation [863]
23. Evolutionary Multiobjective Optimization Theoretical Advances and Applications [8]
24. Evolutionary Computation 2: Advanced Algorithms and Operators [175]
25. Evolutionary Algorithms for Solving Multi-Objective Problems [599]
26. Genetic and Evolutionary Computation for Image Processing and Analysis [466]
27. Evolutionary Computation: The Fossil Record [939]
28. Swarm Intelligence: Collective, Adaptive [1524]
29. Parallel Evolutionary Computations [2015]
30. Evolutionary Computation in Practice [3043]
31. Design by Evolution: Advances in Evolutionary Design [1234]
32. New Learning Paradigms in Soft Computing [1430]
33. Designing Evolutionary Algorithms for Dynamic Environments [1956]
34. How to Solve It: Modern Heuristics [1887]
35. Electromagnetic Optimization by Genetic Algorithms [2250]
36. Advances in Metaheuristics for Hard Optimization [2485]
37. Soft Computing: Integrating Evolutionary, Neural, and Fuzzy Systems [2685]
28.7. GENERAL INFORMATION ON EVOLUTIONARY ALGORITHMS 317
38. The Art of Articial Evolution: A Handbook on Evolutionary Art and Music [2320]
39. Evolutionary Optimization [2394]
40. Rule-Based Evolutionary Online Learning Systems: A Principled Approach to LCS Analysis
and Design [460]
41. Multi-Objective Optimization in Computational Intelligence: Theory and Practice [438]
42. Computer Simulation in Genetics [659]
43. Evolutionary Computation: A Unied Approach [715]
44. Genetic Algorithms in Search, Optimization, and Machine Learning [1075]
45. Evolutionary Computation in Data Mining [1048]
46. Introduction to Stochastic Search and Optimization [2561]
47. Advances in Evolutionary Algorithms [1581]
48. Self-Adaptive Heuristics for Evolutionary Computation [1617]
49. Representations for Genetic and Evolutionary Algorithms [2338]
50. Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Pro-
gramming, Genetic Algorithms [167]
51. Search Methodologies Introductory Tutorials in Optimization and Decision Support Tech-
niques [453]
52. Data Mining and Knowledge Discovery with Evolutionary Algorithms [994]
53. Evolution are Algorithmen [2879]
54. Advances in Evolutionary Algorithms Theory, Design and Practice [41]
55. Evolutionary Algorithms in Molecular Design [587]
56. Multi-Objective Optimization Using Evolutionary Algorithms [740]
57. Evolutionary Dynamics in Time-Dependent Environments [2941]
58. Evolutionary Computation: Theory and Applications [3025]
59. Evolutionary Computation [2987]
28.7.3 Conferences and Workshops
Table 28.5: Conferences and Workshops on Evolutionary Algorithms.
GECCO: Genetic and Evolutionary Computation Conference
History: 2011/07: Dublin, Ireland, see [841]
2010/07: Portland, OR, USA, see [30, 31]
2009/07: Montreal, QC, Canada, see [2342, 2343]
2008/07: Atlanta, GA, USA, see [585, 1519, 1872, 2268, 2537]
2007/07: London, UK, see [905, 2579, 2699, 2700]
2006/07: Seattle, WA, USA, see [1516, 2441]
2005/06: Washington, DC, USA, see [27, 304, 2337, 2339]
2004/06: Seattle, WA, USA, see [751, 752, 1515, 2079, 2280]
2003/07: Chicago, IL, USA, see [484, 485, 2578]
2002/07: New York, NY, USA, see [224, 478, 1675, 1790, 2077]
2001/07: San Francisco, CA, USA, see [1104, 2570]
2000/07: Las Vegas, NV, USA, see [1452, 2155, 2928, 2935, 2986]
1999/07: Orlando, FL, USA, see [211, 482, 2093, 2502]
CEC: IEEE Conference on Evolutionary Computation
History: 2011/06: New Orleans, LA, USA, see [2027]
2010/07: Barcelona, Catalonia, Spain, see [1354]
2009/05: Trondheim, Norway, see [1350]
318 28 EVOLUTIONARY ALGORITHMS
2008/06: Hong Kong (Xiangg ang), China, see [1889]
2007/09: Singapore, see [1343]
2006/07: Vancouver, BC, Canada, see [3033]
2005/09: Edinburgh, Scotland, UK, see [641]
2004/06: Portland, OR, USA, see [1369]
2003/12: Canberra, Australia, see [2395]
2002/05: Honolulu, HI, USA, see [944]
2001/05: Gangnam-gu, Seoul, Korea, see [1334]
2000/07: La Jolla, CA, USA, see [1333]
1999/07: Washington, DC, USA, see [110]
1998/05: Anchorage, AK, USA, see [2496]
1997/04: Indianapolis, IN, USA, see [173]
1996/05: Nagoya, Japan, see [1445]
1995/11: Perth, WA, Australia, see [1361]
1994/06: Orlando, FL, USA, see [1891]
EvoWorkshops: Real-World Applications of Evolutionary Computing
History: 2011/04: Torino, Italy, see [788]
2009/04: T ubingen, Germany, see [1052]
2008/05: Naples, Italy, see [1051]
2007/04: Val`encia, Spain, see [1050]
2006/04: Budapest, Hungary, see [2341]
2005/03: Lausanne, Switzerland, see [2340]
2004/04: Coimbra, Portugal, see [2254]
2003/04: Colchester, Essex, UK, see [2253]
2002/04: Kinsale, Ireland, see [465]
2001/04: Lake Como, Milan, Italy, see [343]
2000/04: Edinburgh, Scotland, UK, see [464]
1999/05: G oteborg, Sweden, see [2197]
1998/04: Paris, France, see [1310]
PPSN: Conference on Parallel Problem Solving from Nature
History: 2012/09: Taormina, Italy, see [2675]
2010/09: Krakow, Poland, see [2412, 2413]
2008/09: Birmingham, UK and Dortmund, North Rhine-Westphalia, Germany, see
[2354, 3028]
2006/09: Reykjavik, Iceland, see [2355]
2002/09: Granada, Spain, see [1870]
2000/09: Paris, France, see [2421]
1998/09: Amsterdam, The Netherlands, see [866]
1996/09: Berlin, Germany, see [2818]
1994/10: Jerusalem, Israel, see [693]
1992/09: Brussels, Belgium, see [1827]
1990/10: Dortmund, North Rhine-Westphalia, Germany, see [2438]
WCCI: IEEE World Congress on Computational Intelligence
History: 2012/06: Brisbane, QLD, Australia, see [1411]
2010/07: Barcelona, Catalonia, Spain, see [1356]
2008/06: Hong Kong (Xiangg ang), China, see [3104]
2006/07: Vancouver, BC, Canada, see [1341]
28.7. GENERAL INFORMATION ON EVOLUTIONARY ALGORITHMS 319
2002/05: Honolulu, HI, USA, see [1338]
1998/05: Anchorage, AK, USA, see [1330]
1994/06: Orlando, FL, USA, see [1324]
EMO: International Conference on Evolutionary Multi-Criterion Optimization
History: 2011/04: Ouro Preto, MG, Brazil, see [2654]
2009/04: Nantes, France, see [862]
2007/03: Matsushima, Sendai, Japan, see [2061]
2005/03: Guanajuato, Mexico, see [600]
2003/04: Faro, Portugal, see [957]
2001/03: Z urich, Switzerland, see [3099]
AE/EA: Articial Evolution
History: 2011/10: Angers, France, see [2586]
2009/10: Strasbourg, France, see [608]
2007/10: Tours, France, see [1928]
2005/10: Lille, France, see [2657]
2003/10: Marseilles, France, see [1736]
2001/10: Le Creusot, France, see [606]
1999/11: Dunkerque, France, see [948]
1997/10: Nmes, France, see [1191]
1995/09: Brest, France, see [75]
1994/09: Toulouse, France, see [74]
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
History: 2011/04: Ljubljana, Slovenia, see [2589]
2009/04: Kuopio, Finland, see [1564]
2007/04: Warsaw, Poland, see [257, 258]
2005/03: Coimbra, Portugal, see [2297]
2003/04: Roanne, France, see [2142]
2001/04: Prague, Czech Republic, see [1641]
1999/04: Protoroz, Slovenia, see [801]
1997/04: Vienna, Austria, see [2527]
1995/04: Al`es, France, see [2141]
1993/04: Innsbruck, Austria, see [69]
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
ICNC: International Conference on Advances in Natural Computation
History: 2012/05: Ch ongq`ng, China, see [574]
2011/07: Sh`angh ai, China, see [1379]
2010/08: Yantai, Shandong, China, see [1355]
2009/08: Tianjn, China, see [2848]
2008/10: J`n an, Shandong, China, see [1150]
2007/08: Haik ou, Hainan, China, see [1711]
2006/09: Xan, Shanx, China, see [1443, 1444]
2005/08: Ch angsha, H unan, China, see [28502852]
320 28 EVOLUTIONARY ALGORITHMS
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
History: 2012/05: Bohinj, Slovenia, see [349]
2010/05: Ljubljana, Slovenia, see [921]
2008/10: Ljubljana, Slovenia, see [920]
2006/10: Ljubljana, Slovenia, see [919]
2004/10: Ljubljana, Slovenia, see [918]
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
FEA: International Workshop on Frontiers in Evolutionary Algorithms
History: 2005/07: Salt Lake City, UT, USA, see [2379]
2003/09: Cary, NC, USA, see [546]
2002/03: Research Triangle Park, NC, USA, see [508]
2000/02: Atlantic City, NJ, USA, see [2853]
1998/10: Research Triangle Park, NC, USA, see [2293]
1997/03: Research Triangle Park, NC, USA, see [2475]
ICARIS: International Conference on Articial Immune Systems
See Table 10.2 on page 130.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
History: 2006/11: Sydney, NSW, Australia, see [1923]
2005/11: Vienna, Austria, see [1370]
CIS: International Conference on Computational Intelligence and Security
History: 2009/12: Beijng, China, see [1393]
2008/12: S uzhou, Ji angs u, China, see [1392]
2007/12: Harbin, Heilongjiang China, see [1390]
2006/11: Guangzhou, Guangd ong, China, see [557]
2005/12: Xan, Shanx, China, see [1192, 1193]
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
28.7. GENERAL INFORMATION ON EVOLUTIONARY ALGORITHMS 321
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
History: 2009/04: T ubingen, Germany, see [645]
2008/03: Naples, Italy, see [2775]
2007/04: Val`encia, Spain, see [646]
2006/04: Budapest, Hungary, see [1116]
2005/03: Lausanne, Switzerland, see [2252]
2004/04: Coimbra, Portugal, see [1115]
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
History: 2009/06: Sh`angh ai, China, see [3000]
GEM: International Conference on Genetic and Evolutionary Methods
History: 2011/07: Las Vegas, NV, USA, see [2552]
2010/07: Las Vegas, NV, USA, see [119]
2009/07: Las Vegas, NV, USA, see [121]
2008/06: Las Vegas, NV, USA, see [120]
2007/06: Las Vegas, NV, USA, see [122]
GEWS: Grammatical Evolution Workshop
See Table 31.2 on page 385.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
History: 19931994: Australia, see [3023]
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
History: 2001/11: Dunedin, New Zealand, see [1498]
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
EvoNUM: European Event on Bio-Inspired Algorithms for Continuous Parameter Optimisation
History: 2011/04: Torino, Italy, see [2588]
FOCI: IEEE Symposium on Foundations of Computational Intelligence
History: 2007/04: Honolulu, HI, USA, see [1865]
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
IJCCI: International Conference on Computational Intelligence
History: 2010/10: Val`encia, Spain, see [914]
2009/10: Madeira, Portugal, see [1809]
IWNICA: International Workshop on Nature Inspired Computation and Applications
History: 2011/04: Hefei,
Anhu, China, see [2754]
322 28 EVOLUTIONARY ALGORITHMS
2010/10: Hefei,
Anhu, China, see [2758]
2008/05: Hefei,
Anhu, China, see [2757]
2006/10: Hefei,
Anhu, China, see [1122]
2004/10: Hefei,
Anhu, China, see [2755, 2756]
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NaBIC: World Congress on Nature and Biologically Inspired Computing
History: 2011/11: Salamanca, Spain, see [2368]
2010/12: Kitakyushu, Japan, see [1545]
2009/12: Coimbatore, India, see [12]
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
History: 2010/09: Vienna, Austria, see [2311]
2007/07: London, UK, see [905]
2005/06: Oslo, Norway, see [479]
EvoRobots: International Symposium on Evolutionary Robotics
History: 2001/10: Tokyo, Japan, see [1099]
ICEC: International Conference on Evolutionary Computation
History: 2010/10: Val`encia, Spain, see [1276]
2009/10: Madeira, Portugal, see [2325]
IWACI: International Workshop on Advanced Computational Intelligence
History: 2010/08: S uzhou, Ji angs u, China, see [2995]
2009/10: Mexico City, Mexico, see [1875]
2008/06: Macau, China, see [2752]
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
History: 2010/12: Chennai, India, see [2595]
SSCI: IEEE Symposium Series on Computational Intelligence
Conference series which contains many other symposia and workshops.
History: 2011/04: Paris, France, see [1357]
2009/03: Nashville, TN, USA, see [1353]
2007/04: Honolulu, HI, USA, see [1345]
28.7.4 Journals
1. IEEE Transactions on Evolutionary Computation (IEEE-EC) published by IEEE Computer
Society
2. Evolutionary Computation published by MIT Press
3. IEEE Transactions on Systems, Man, and Cybernetics Part B: Cybernetics published by
IEEE Systems, Man, and Cybernetics Society
4. International Journal of Computational Intelligence and Applications (IJCIA) published by
Imperial College Press Co. and World Scientic Publishing Co.
5. Genetic Programming and Evolvable Machines published by Kluwer Academic Publishers and
Springer Netherlands
6. Natural Computing: An International Journal published by Kluwer Academic Publishers and
Springer Netherlands
7. Journal of Heuristics published by Springer Netherlands
8. Journal of Articial Evolution and Applications published by Hindawi Publishing Corporation
9. International Journal of Computational Intelligence Research (IJCIR) published by Research
India Publications
10. The International Journal of Cognitive Informatics and Natural Intelligence (IJCINI) pub-
lished by Idea Group Publishing (Idea Group Inc., IGI Global)
28.7. GENERAL INFORMATION ON EVOLUTIONARY ALGORITHMS 323
11. IEEE Computational Intelligence Magazine published by IEEE Computational Intelligence
Society
12. Journal of Optimization Theory and Applications published by Plenum Press and Springer
Netherlands
13. Computational Intelligence published by Wiley Periodicals, Inc.
14. International Journal of Swarm Intelligence and Evolutionary Computation (IJSIEC) pub-
lished by Ashdin Publishing (AP)
324 28 EVOLUTIONARY ALGORITHMS
Tasks T28
75. Implement a general steady-state Evolutionary Algorithm. You may use Listing 56.11
as blueprint and create a new class derived from EABase (given in ?? on page ??) which
provides the steady-state functionality described in Paragraph 28.1.4.2.1 on page 266.
[20 points]
76. Implement a general Evolutionary Algorithm with archive-based elitism. You may use
Listing 56.11 as blueprint and create a new class derived from EABase (given in ?? on
page ??) which provides the steady-state functionality described in Section 28.1.4.4 on
page 267.
[20 points]
77. Implement the linear ranking selection scheme given in Section 28.4.5 on page 300
for your version of Evolutionary Algorithms. You may use Listing 56.14 as blueprint
implement the interface ISelectionAlgorithm given in Listing 55.13 in a new class.
[20 points]
Chapter 29
Genetic Algorithms
29.1 Introduction
Genetic Algorithms
1
(GAs) are a subclass of Evolutionary Algorithms where (a) the
genotypes g of the search space G are strings of primitive elements (usually all of the
same type) such as bits, integer, or real numbers, and (b) search operations such as
mutation and crossover directly modify these genotypes.. Because of the simple struc-
ture of the search spaces of Genetic Algorithms, often a non-identity mapping is used
as genotype-phenotype mapping to translate the elements g G to candidate solutions
x X [1075, 1220, 1250, 2931].
Genetic Algorithms are the original prototype of Evolutionary Algorithms and adhere to
the description given in Section 28.1.1. They provide search operators which try to closely
copy sexual and asexual reproduction schemes from nature. In such sexual search opera-
tions, the genotypes of the two parents genotypes will recombine. In asexual reproduction,
mutations are the only changes that occur.
29.1.1 History
The roots of Genetic Algorithms go back to the mid-1950s, where biologists like Barri-
celli [220, 221, 222, 223] and the computer scientist Fraser [941, 988, 989] began to apply
computer-aided simulations in order to gain more insight into genetic processes and the
natural evolution and selection. Bremermann [407] and Bledsoe [323, 324, 325, 326] used
evolutionary approaches based on binary string genomes for solving inequalities, for func-
tion optimization, and for determining the weights in neural networks in the early 1960s.
At the end of that decade, important research on such search spaces was contributed by
Bagley [180] (who introduced the term Genetic Algorithm), Rosenberg [2331], Cavicchio, Jr.
[510, 511], and Frantz [985] all under the advice of Holland at the University of Michigan.
As a result of Hollands work [12471250] Genetic Algorithms as a new approach for prob-
lem solving could be formalized nally became widely recognized and popular. As same as
important was the work of De Jong [711] on benchmarking GAs for function optimization
from 1975 preceded by Hollstiens PhD thesis [1258]. Today, there are many applications
in science, economy, and research and development [564, 2232] that can be tackled with
Genetic Algorithms.
It should further be mentioned that, because of the close relation to biology and since
Genetic Algorithms were originally applied to single-objective optimization, the objective
functions f here are often referred to as tness functions. This is a historically grown
1
http://en.wikipedia.org/wiki/Genetic_algorithm [accessed 2007-07-03]
326 29 GENETIC ALGORITHMS
misnaming which should not be mixed up with the tness assignment processes discussed
in Section 28.3 on page 274 and the tness values v used in the context of this book.
29.2 Genomes in Genetic Algorithms
Most of the terminology which we have dened in Part I and used throughout this book stems
from the GA sector. The search spaces G of Genetic Algorithms, for instance, are referred
to genomes and their elements are called genotypes because of their historical development.
Thymine Adenine Guanine Cytosine
Deoxyribose(sugar) Phosphate
HydrogenBond
g G
SearchSpace : G allbitstringsofagivenlength
specificbitstrings Genotypesg:
roughsimplification
0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1
Figure 29.1: A Sketch of a DNA Sequence.
Genotypes in nature encompass the whole hereditary information of an organism en-
coded in the DNA illustrated of the DNA. The DNA is a string of base pairs that encodes
the phenotypical characteristics of the creature it belongs to. Like their natural proto-
types, the genomes in Genetic Algorithms are strings, linear sequences of certain data
types [1075, 1253, 1912]. Because of the linear structure, these genotypes are also often
called chromosomes. Originally, Genetic Algorithms worked on bit strings of xed length,
as sketched in Figure 29.1. Today, a string chromosome can either be a xed-length tuple
(Equation 29.1) or a variable-length list (Equation 29.3) of elements.
29.2.1 Classication According to Length
In the rst case, the loci i of the genes g[i] are constant and hence, each gene can have a
xed meaning. Then, the tuples may contain elements of dierent types G
i
.
G = (g[0], g[1], .., g[n 1]) : g[i] G
i
i 0..n 1 (29.1)
G = G
0
G
1
.. G
n1
(29.2)
This is not given in variable-length string genomes. Here, the positions of the genes may
shift when the reproduction operations are applied. Thus, all elements of such genotypes
must have the same type G
T
.
G = lists g : g[i] G
T
0 i < len(g) (29.3)
G = G
T
(29.4)
29.2. GENOMES IN GENETIC ALGORITHMS 327
29.2.2 Classication According to Element Type
The most common string chromosomes are (1) bit strings, (2) vectors of integer numbers,
and (3) vectors of real numbers.. Genetic Algorithms with numeric vector genomes, i. e.,
where G R
n
, are called real-coded [1509]. GAs with bit string genome are referred to as
binary-coded if no re-coding genotype-phenotype mapping is applied. In, for example, gray
coding is used as discussed in Example E28.9, we would refer to the GA as gray-coded.
29.2.3 Classication According to Meaning of Loci
Let us shortly recapitulate the structure of the elements g of the search space G given in
Section 4.1. A gene (see Denition D4.3 on page 82) is the basic informational unit in a
genotype g. In biology, a gene is a segment of nucleic acid that contains the information
necessary to produce a functional RNA product in a controlled manner. An allele (see
Denition D4.4) is a value of specic gene in nature and in EAs alike. The locus (see
Denition D4.5) is the position where a specic gene can be found in a chromosome.
As stated in Section 29.2.1, in xed-length chromosomes there may be a specic meaning
assigned to each locus in the genotype (if direct genotype-phenotype mappings are applied
as outlined in Section 28.2.1). In Example E17.1 on page 177, for instance, gene 1 stands
for the color of the dinosaurs neck whereas gene 4 codes the shape of its head. Although
this was an example from nature, in a xed-length string genome, each locus may have a
direct connection to an element of the phenotype.
In many applications, this connection of locus to meaning is loose. When, for example,
solving the Traveling Salesman Problem given in Example E2.2 on page 45, each gene may
be an integer number identifying a city within China and the genotype, a permutation of
these identiers, would represent the order in which they are visited. Here, the genes do not
code for distinct and dierent features of the phenotypes. Instead, the phenotypic features
have more uniform meanings. Yet, the sequence of the genes is still important.
Messy genomes (see Section 29.6) where introduced to improve locality by linkage learn-
ing: Here, the genes do not only code for a specic phenotypic element, but also for the
position in the phenotype where this element should be placed.
Finally, there exist indirect genotype-phenotype mappings (Section 28.2.2) and encod-
ings where there is no relation between the location of a gene and its meaning or interpre-
tation. A good example for the latter are Algorithmic Chemistries which we will discuss
in ?? on page ??. In their use in linear Genetic Programming developed by Lasarczyk and
Banzhaf [207, 1684, 1685], each gene stands for an instruction. Unlike normal computer pro-
grams, the Algorithmic Chemistry programs in execution are not interpreted sequentially.
Instead, at each step, the processor randomly chooses one instruction from the program.
Hence, the meaning of a gene (an instruction) here only depends on its allelic state (its
value) and not on its position (its locus) inside the chromosome.
29.2.4 Introns
Besides the functional genes and their alleles, there are also parts of natural genomes which
have no (obvious) function [1072, 2870]. The American biochemist Gilbert [1056] coined the
term intron
2
for such parts. In some representations in Evolutionary Algorithms, similar
structures can be observed, especially in variable-length genomes.
Denition D29.1 (Intron). An intron is a part of a genotype g G that does not con-
tribute to the phenotype x = gpm(g), i. e., plays no role during the genotype-phenotype
mapping.
2
http://en.wikipedia.org/wiki/Intron [accessed 2007-07-05]
328 29 GENETIC ALGORITHMS
Biological introns have often been thought of as junk DNA or old code, i. e., parts of the
genome that were translated to proteins in evolutionary past, but now are not used anymore.
Currently though, many researchers assume that introns are maybe not as useless as initially
assumed [660]. Instead, they seem to provide support for ecient splicing, for instance.
Similarly, in some cases, the role introns in Genetic Algorithms is mysterious as well.
They represent a form of redundancy which may have positive as well as negative eects, as
outlined in Section 16.5 on page 174 and ??.
29.3 Fixed-Length String Chromosomes
Especially widespread in Genetic Algorithms are search spaces based on xed-length chro-
mosomes. The properties of their reproduction operations such as crossover and mutation
are well known and an extensive body of research on them is available [1075, 1253].
29.3.1 Creation: Nullary Reproduction
29.3.1.1 Fully-Random Genotypes
The creation of random xed-length string individuals means to create a new tuple of the
structure dened by the genome and initialize it with random values. In reference to Equa-
tion 29.1 on page 326, we could roughly describe this process with Equation 29.5 for xed-
length genomes where the elementary types G
i
from G
0
G
1
.. G
n1
= G are nite sets
and their j
th
elements can be accessed with an index G
i
[j]. Although creation is a nullary
reproduction operation, i. e., one which does not receive any genotypes g G as parameter,
in Equation 29.5 we provide n, the dimension of the search space, as well as the search space
G to the operation in order to keep the denition general. In Algorithm 29.1, we show how
this general equation can be implemented for xed-length bit-string genomes, i. e., we dene
an algorithm createGAFLBin(n) createGAFL(n, B
n
) which creates bit strings g G of
length n (G = B
n
).
createGAFL(n, G) (g[1], g[2], .., g[n]) : g[i] = G
i
[randomUni[0, len(G
i
))] i 1..n (29.5)
Algorithm 29.1: g createGAFLBin(n)
Input: n: the length of the individuals
Data: i 1..n: the running index
Data: v B: the running index
Output: g: a new bit string of length n with random contents
1 begin
2 i n
3 g ()
4 while i > 0 do
5 if randomUni[0, 1) < 0.5 then v 0
6 else v 1
7 i i 1
8 g addItem(g, v)
9 return g
29.3. FIXED-LENGTH STRING CHROMOSOMES 329
29.3.1.2 Permutations
Besides on arbitrary vectors over some vector space (be it B
n
, N
n
0
, or R
n
), Genetic Algorithms
can also work on permutations, as dened in Section 51.6 on page 643. If G is the space of all
possible permutations of the n natural numbers from 0 to n 1, i. e., G = (0..n 1), we
can create a new genotype g G using the algorithm Algorithm 29.2 which is implemented
in Listing 56.37 on page 804.
Algorithm 29.2: g createGAPerm(n)
Input: n: the number of elements to permutate
Data: tmp: a temporary list
Data: i, j: indices into tmp and g
Output: g: the new random permutation of the numbers 0..n 1
1 begin
2 tmp (0, 1, . . . , n 2, n 1)
3 i n
4 g ()
5 while i > 0 do
6 j randomUni[0, i)
7 i i 1
8 g addItem(g, tmp[j])
9 tmp[j] tmp[i]
10 return g
From a more general perspective, we can consider the problem space X to be the space
X = (S) of all permutations of the elements s
i
: i 0..n 1 of a given set S. Usually,
of course, S = 0..n 1 and s
i
= i i 0..n 1. The genotypes g in the search space
G are vectors of natural numbers from 0 to n 1. The mapping of these vectors to the
permutations can be done implicitly or explicitly according to the following Equation 29.6.
gpm
(g, S) = x : x[i] = s
g[i]
i 0..n 1 (29.6)
In other words, the gene at locus i in the genotype g G denes which element s from the
set S should appear at position i in the permutation x X = (S). More precisely, the
allelic value g[i] of the gene is the index of the element s
g[i]
S which will appear at that
position in the phenotype x.
330 29 GENETIC ALGORITHMS
29.3.2 Mutation: Unary Reproduction
Mutation is an important method for preserving the diversity of the candidate solutions by
introducing small, random changes into them.
Fig. 29.2.a: Single-gene mutation. Fig. 29.2.b: Consecutive multi-gene mutation
(i).
Fig. 29.2.c: Uniform multi-gene mutation (ii). Fig. 29.2.d: Complete mutation.
Figure 29.2: Value-altering mutation of string chromosomes.
29.3.2.1 Single-Point Mutation
In xed-length string chromosomes, this can be achieved by randomly modifying the value
(allele) of a gene, as illustrated in Fig. 29.2.a. If the genome consists of bit strings, this
single-point mutation is called single-bit ip mutation. In this case, this operation creates a
neighborhood where all points which have a Hamming distance of exactly one are adjacent
(see Denition D4.10 on page 85).
adjacent
(g
2
, g
1
) = dist ham(g
2
, g
1
) = 1 (29.7)
29.3.2.2 Multi-Point Mutation
It is also possible to perform a multi-point mutation, to change 0 < n len(g
p
) locations in
the genotype g
p
are changed at once (Fig. 29.2.b and Fig. 29.2.c). If parts of the genotype
interact epistatically (see Chapter 17), such a multi-point mutation may be the only way to
escape local optima.
In this case, the method sketched in Fig. 29.2.c is far more ecient than the one in
Fig. 29.2.b. This becomes clear when assuming that the search space was the bit strings of
length n, i. e., G = B
n
. The former method, illustrated in Fig. 29.2.c, creates a neighborhood
as dened in Equation 29.8: depending on the probability (l) of modifying exactly 0 <
l n elements, all individuals in Hamming distance of exactly l become adjacent (with a
probability of exactly exactly (l)). The method sketched in Fig. 29.2.b, on the other hand,
can only put strings into adjacency which have a Hamming distance of l and where the
modied bits additionally from a consecutive sequence. Of course, similar considerations
would hold for any kind of string-based search space.
adjacent
(l)
(g
2
, g
1
) = dist ham(g
2
, g
1
) = l (29.8)
If a multi-point mutation operator is applied, the number of bits to be modied at once
can be drawn from a (bounded) exponential distribution (see Section 53.4.3 on page 682).
29.3. FIXED-LENGTH STRING CHROMOSOMES 331
This would increase the probability (l) that only few genes are changed (l is low), which
makes sense since one of the basic assumptions in Genetic Algorithms is that there exists
at least some locality ( Denition D14.1 on page 162) in the search space, i. e., that some
small changes in the genotype also lead to small changes in the phenotype. However, bigger
modications (l n in search spaces of dimension n) would still be possible and happen
from time to time with such a choice.
Algorithm 29.3: g mutateGAFLBinRand(g
p
, n)
Input: g
p
: the parent individual
Input: n 1..len(g
p
): the highest possible number of bits to change
Data: i, j: temporary variables
Data: q: the rst len(g
p
) natural numbers
Output: g: the new random permutation of the numbers 0..n 1
1 begin
2 g g
p
3 q (0, 1, 2, .., len(g) 1)
4 repeat
5 i randomUni[0, len(g))
6 j q[i]
7 q deleteItem(q, j)
8 g[j] g[j]
9 until (len(q) = 0) (randomUni[0, 1) < 0.5)
10 return g
In Algorithm 29.3, we provide an implementation of the mutation operation sketched in
Fig. 29.2.c which modies a roughly exponentially distributed number of genes (bits) in a
genotype from a bit-string based search space (G B
n
). It does so by randomly selecting
loci and toggling the alleles (values) of the genes (bits) at these positions. It stops if it has
toggled all bits (i. e., all loci have been used) or a random number uniformly distributed
in [0, 1) becomes lower than 0.5. The latter condition has the eect that only one gene is
modied with probability 0.5. With probability (1 0.5) 0.5 = 0.25, exactly two genes are
changed. With probability (1 0.5)
2
0.5 = 0.125, the operator modies three genes and
so on.
29.3.2.3 Vector Mutation
In real-coded genomes, it is common to instead modify all genes as sketched in Fig. 29.2.d.
This would make little sense in binary-coded search space, since the inversion of all bits
means to completely discard all information of the parent individual.
29.3.2.4 Mutation: Binary and Real Genomes
Changing a single gene in binary-coded chromosomes, i. e., encodings where each gene is a
single bit, means that the value at a given locus is simply inverted as sketched in Fig. 29.3.a.
This operation is referred to as bit-ip mutation.
For real-encoded genomes, modifying an element g[i] can be done by replacing it with a
number drawn from a normal distribution (see Section 53.4.2) with expected value g[i] and
some standard deviation , i. e., g[i]
new
N
_
g[i],
2
_
which we illustrated in Fig. 29.3.b and
outline in detail in Section 30.4.1 on page 364.
332 29 GENETIC ALGORITHMS
Fig. 29.3.a: Mutation in binary genomes.
g[i]+s g[i]-s
g[i] g[i]
Fig. 29.3.b: Mutation in real genomes.
Figure 29.3: Mutation in binary- and real-coded GAs
29.3. FIXED-LENGTH STRING CHROMOSOMES 333
29.3.3 Permutation: Unary Reproduction
The permutation operation is an alternative mutation method where the alleles of two genes
are exchanged as sketched in Figure 29.4. This, of course, makes only sense if all genes have
similar data types and the location of a gene has inuence on its meaning. Permutation is,
for instance, useful when solving problems that involve nding an optimal sequence of items,
like the Traveling Salesman Problem as mentioned in Example E2.2. Here, a genotype g
could encode the sequence in which the cities are visited. Exchanging two alleles then equals
of switching two cities in the route.
Figure 29.4: Permutation applied to a string chromosome.
29.3.3.1 Single Permutation
In Algorithm 29.4 which is implemented in Listing 56.38 on page 806, we provide a sim-
ple unary search operation which exchanges the alleles of two genes, exactly as sketched
in Figure 29.4. If the genotype was a proper permutation obeying the conditions given
in Denition D51.13 on page 643, these conditions will hold for the new ospring as well.
Algorithm 29.4: g mutateSinglePerm(n)
Input: g
p
: the parental genotype
Data: i, j: indices into g
Data: t: a temporary variable
Output: g: the new, permutated genotype
1 begin
2 g g
p
3 i randomUni[0, len(g))
4 repeat
5 j randomUni[0, len(g))
6 until i ,= j
7 t g[i]
8 g[i] g[j]
9 g[j] t
10 return g
29.3.3.2 Multiple Permutations
Dierent from Algorithm 29.4, Algorithm 29.5 (implemented in Listing 56.39 on page 808)
repetitively exchanges elements. The number of elements which are swapped is roughly
exponentially distributed (see Section 53.4.3). This operation also preserves the validity of
the conditions for permutations given in Denition D51.13 on page 643.
334 29 GENETIC ALGORITHMS
Algorithm 29.5: g mutateMultiPerm(g
p
)
Input: g
p
: the parental genotype
Data: i, j: indices into g
Data: t: a temporary variable
Output: g: the new, permutated genotype
1 begin
2 g g
p
3 repeat
4 i randomUni[0, len(g))
5 repeat
6 j randomUni[0, len(g))
7 until i ,= j
8 t g[i]
9 g[i] g[j]
10 g[j] t
11 until randomUni[0, 1) 0.5
12 return g
29.3. FIXED-LENGTH STRING CHROMOSOMES 335
29.3.4 Crossover: Binary Reproduction
There is an incredible wide variety of crossover operators for Genetic Algorithms. In his
2006 book [1159], Gwiazda mentions alone 11 standard, 66 binary-coded, and 89 real-coded
crossover operators. Here, we only can discuss a small fraction of those.
Amongst all Evolutionary Algorithms, some of the recombination operations which
probably comes closest to the natural paragon can be found in Genetic Algorithms. Fig-
ure 29.5 outlines the most basic methods to recombine two string chromosomes, the so-called
crossover, which is performed by swapping parts of two genotypes. Although these still can-
not nearly resemble the idea of natural crossover, they at least mirror the school book view
on it.
()
Fig. 29.5.a: Single-point
Crossover (SPX, 1-PX).
()
Fig. 29.5.b: Two-point
Crossover (TPX, 2-PX).
()
Fig. 29.5.c: Multi-point
Crossover (MPX, k-PX).
()
p=0.5
p=0.5
p=0.5
p=0.5
p=0.5
p=0.5
p=0.5
p=0.5
p=0.5
p=0.5
Fig. 29.5.d: Uniform
Crossover (UX).
Figure 29.5: Crossover (recombination) operators for xed-length string genomes.
29.3.4.1 Single-Point Crossover (SPX, 1-PX)
When performing single-point crossover (SPX
3
, 1-PX, [1159]), both parental chromosomes
are split at a randomly determined crossover point. Subsequently, a new child genotype is
created by appending the second part of the second parent to the rst part of the rst parent
as illustrated in Fig. 29.5.a. With crossover, it is possible that two ospring are created at
once from the two parents. The second ospring is shown in the long parentheses. Doing so
it, however, not mandatory.
29.3.4.2 Two-Point Crossover (TPX)
In two-point crossover (TPX, 2-PX, sketched in Fig. 29.5.b), both parental genotypes are
split at two points and a new ospring is created by using parts number one and three from
the rst, and the middle part from the second parent chromosome. The second possible
ospring of this operation is again displayed in parentheses.
29.3.4.3 Multi-Point Crossover (MPX, k-PX)
In Algorithm 29.6, the generalized form of this technique is specied: The k-point crossover
operation (k-PX, [1159]), also called multi-point crossover (MPX). The operator takes the
two parent genotypes g
p1
and g
p2
from an n-dimensional search space as well as the number
0 < k < n of crossover points as parameter.
By setting the parameter k to 1 or 2, single-point and two-point crossover can be emulated
and with k = n 1, becomes uniform crossover (see Section 29.3.4.4). It furthermore is
possible to choose k randomly from 1..n 1 for each application of the operator, maybe by
picking it with a bounded exponential distribution. This way, many dierent recombination
operations can be performed with the same algorithm.
3
This abbreviation is also used for simplex crossover, see ??.
336 29 GENETIC ALGORITHMS
Algorithm 29.6: g recombineMPX(g
p1
, g
p2
, k)
Input: g
p1
, g
p2
G: the parental genotypes
Input: [implicit] n: the dimension of the search space G
Input: k: the number of crossover points
Data: i: a counter variable
Data: cp: a randomly chosen crossover point candidate
Data: CP: the list of crossover points
Data: s, e: the segment start and end indices
Data: b: a Boolean variable for choosing the segment
Data: g
u
G: the currently used parent
Output: g G: a new genotype
1 begin
// find k crossover points from 0 to n 1
2 CP (n)
3 for i 1 up to k do
4 repeat
5 cp randomUni[0, n 1) + 1
6 until cp , CP
7 CP addItem(CP, cp)
8 CP sortAsc(CP, <)
// perform the crossover by copying sub-strings
9 g ()
10 s 0
11 b true
12 g
u
g
p1
13 for i 0 up to k do
14 e CP[i]
15 if b then g
u
g
p1
16 else g
u
g
p2
// add substring of length e s from g
u
starting at index
s to g
17 g appendList(g, subList(g
u
, s, e s))
18 b b
19 s e
20 return g
29.3. FIXED-LENGTH STRING CHROMOSOMES 337
In Algorithm 29.6, rst k dierent crossover points cp are picked according to the uniform
distribution and the ospring is initialized as empty list. Then, the algorithm iterates
through the sorted list CP of crossover points. It copies string sub-sequences between each
two crossover points. Depending on whether it is in an odd (b = 1) or even (b = 0) iteration,
either a portion from the rst parent g
p1
or the second parent g
p2
is copied. Notice that
n, the dimension of the search space, is also part of the list CP since we need to copy the
sub-sequence between the last crossover point and the end of one of parent genotypes as
well.
An example for the application of this algorithm illustrated in Fig. 29.5.c. For xed-
length strings, the crossover points for both parents are always identical whereas for variable-
length strings (discussed in Section 29.4 and sketched in Fig. 29.8.c on page 341), the algo-
rithm could be redesigned to use dierent crossover points for the two parents.
29.3.4.4 Uniform Crossover (UX)
Uniform crossover (UX [1159, 2563], sketched in Fig. 29.5.d, specied in Algorithm 29.7, and
exemplarily implemented in Listing 56.36 on page 803) follows another scheme: Here, for
each locus in the ospring chromosome, the allelic value if chosen with the same probability
(50%) from the same locus of the rst parent or from the same locus of the second parent.
Dominant (discrete) recombination which is introduced in Section 30.3.1 on page 362 is a
generalization of UX to an -ary operator, i. e., to an operator which creates one child from
parents.
Algorithm 29.7: g recombineUX(g
p1
, g
p2
)
Input: g
p1
, g
p2
G: the parental genotypes
Data: i: a counter variable
Output: g G: a new genotype
1 begin
2 g g
p1
3 for i 0 up to len(g) 1 do
4 if randomUni[0, 1) < 0.5 then g[i] g
p2
[i]
5 return g
29.3.4.5 (Weighted) Average Crossover
The previously discussed crossover methods have primarily been developed for bit string
genomes G = B
n
. If they combine two strings g
1
and g
2
, the ospring will necessarily be
located on one of the corners of the hypercube described by both parents [2099] and sketched
in Figure 29.6. In binary-coded Genetic Algorithms, this makes indeed sense.
For real-valued genomes, we would like to explore the volume inside the hypercube as
well. Therefore, we can use a (weighted) average of the two parent vectors as ospring. One
way to do so is Equation 29.9 for search spaces G R
n
. In this equation, each element of
the two parents g
1
and g
2
are combined by a weighted average to g
new
. For pure average
crossover, the weight will always be set to = 0.5. If the average is randomly weighted,
as weight we can use
1. a new random number ru uniformly distributed in (0, 1),
2. 0.5 (0.5 (ru
n
)) where n is a natural number in order to prefer points which are
somewhat centered between the original coordinates and for , either + or is chosen
randomly (as done in Listing 56.29 on page 792, for example), or
338 29 GENETIC ALGORITHMS
(g [0],g [1],g [2])
1 1 1
(g [0],g [1],g [2])
2 2 2
G
0
R
G
1
R
G
2
R
G
1
R
G
2
R
G
0
R
G
1
R
G
2
R
1
-
P
X
,
2
-
P
X
,
M
-
P
X
,
U
X
W
e
i
g
h
t
e
d
A
v
e
r
a
g
e
C
r
o
s
s
o
v
e
r
,
e
t
c
.
possibleoffspring parents
Figure 29.6: The points sampled by dierent crossover operators.
3. an approximately normally distributed random number with mean = 0.5, again
within the bounds (0, 1) for each locus i.
g
new
[i] = g
1
[i] + (1 )g
2
[i] i 1..n (29.9)
The intermediate recombination operator discussed in Section 30.3.2 on page 362 is an
extension of average crossover to parents.
29.3.4.6 Homologous Crossover (HRO, HX)
According to Banzhaf et al. [209], natural crossover is very restricted and usually exchanges
only genes that express the same functionality and are located at the same positions (loci)
on the chromosomes.
Denition D29.2 (Homology). In genetics, homology
4
of protein-coding DNA sequences
means that they code for the same protein which may indicate common functionality. Ho-
mologous chromosomes
5
are either chromosomes in a biological cell that pair during meiosis
or non-identical chromosomes which code for the same functional feature by containing
similar genes in dierent allelic states.
In other words, homologous genetic material is very similar and in nature, only such material
is exchanged in sexual reproduction. Park et al. [2128] propose that a similar approach
should be useful in Genetic Algorithms. As basis for their analysis they take multi-point
crossover (MPX, k-PK) as introduced here in Algorithm 29.6. In MPX, k > 0 crossover
points are chosen randomly and subsequences between two points (as well as the start of the
string and the rst crossover point and the last crossover point and the end of the parent
strings) are exchanged.
Park et al. [2128] point out that such an exchange is likely to destroy schemas which
extend over crossover points while leaving only those completely embedded in a sequence
subject to exchange intact. They thus make exchange of genetic information conditional:
4
http://en.wikipedia.org/wiki/Homology_(biology) [accessed 2008-06-17]
5
http://en.wikipedia.org/wiki/Homologous_chromosome [accessed 2008-06-17]
29.4. VARIABLE-LENGTH STRING CHROMOSOMES 339
their HRO (Homologous Recombination Operator, HX) always chooses the subsequence
from the rst parent g
p1
if
1. it would be the turn of g
p1
anyway (b = true in Algorithm 29.6 on Line 15), if
2. the exchanged sequence would be too short, i. e., its length would be below a given
threshold w, or if
3. the sequences are not dierent enough. As measure for dierence, the Hamming
distance dist ham divided by the sequence length (e s). If this value is above
a threshold u, again the sequence from g
p1
is used.
Homologous crossover can be implemented by changing the condition in the alternative in
Line 15 in Algorithm 29.6 to Equation 29.10.
b ((e s) < w)
_
dist ham(subList(g
p1
, s, e s) , subList(g
p2
, s, e s))
e s
u
_
(29.10)
Besides the schema-preservation which was the reason for the invention of HRO, another
argument for the measured better performance of homologous crossover [2128] would be the
discussion on similarity extraction given in Section 29.5.6 on page 346.
The reader should be informed that in Point 3 of the enumeration and in Equation 29.10,
we deviate from the suggestions given in [1159, 2128]. There, combining the two subse-
quences with xor and then counting the number of 1-bits is suggested as similarity measure.
Actually, like the Hamming distance it is a dissimilarity measure. Therefore, in Equa-
tion 29.10, we permit an information exchange between the parental chromosomes only if
it is below a threshold u while using the genes from the rst parent if it is above or equal
the threshold. Either the quoted works just contain a small typo regarding that issue or the
author of this book misunderstood the concept of homology. . .
29.3.4.7 Random Crossover
In his 1995 paper [1466], Jones introduces an experiment to test whether a crossover operator
is ecient or not. His random crossover or headless chicken crossover [101] (g
3
, g
4
)
recombine
R
(g
1
, g
2
) uses an internal crossover operation recombine
i
and a genotype creation
routine create. It receives two parent individuals g
1
and g
2
and produces two ospring
g
3
and g
4
. However, it does not perform real crossover. Instead, it internally creates two
new (random) genotypes g
5
, g
6
and uses the internal operator recombine
i
to recombine each
of them with one of the parents.
(g
3
, g
4
) = recombine
R
(g
1
, g
2
) (recombine
i
_
g
1
, create
___
,
recombine
i
_
g
2
, create
___
)
(29.11)
If the performance of Genetic Algorithm which uses recombine
i
as crossover operator is not
better than with recombine
R
using recombine
i
, than the eciency of recombine
i
is ques-
tionable. In the experiments of Jones [1466] with recombine
i
= TPX, two-point crossover
outperformed random crossover only in problems where there are well-dened building blocks
while not leading to better results in problems without this feature.
29.4 Variable-Length String Chromosomes
Variable-length genomes for Genetic Algorithms where rst proposed by Smith in his PhD
thesis [2536]. There, he introduced a new variant of classier systems (see Chapter 35) with
the goal of evolving programs for playing poker [2240, 2536].
340 29 GENETIC ALGORITHMS
29.4.1 Creation: Nullary Reproduction
Variable-length strings can be created by rst randomly drawing a length l > 0 and then
creating a list of that length lled with random elements. l could be drawn from a bounded
exponential distribution.
createGAVL(G
T
) = createGAFL
_
l, G
T
l
_
l exp (29.12)
29.4.2 Insertion and Deletion: Unary Reproduction
If the string chromosomes are of variable length, the set of mutation operations introduced
in Section 29.3 can be extended by two additional methods. First, we could insert a couple
Fig. 29.7.a: Insertion of random genes. Fig. 29.7.b: Deletion of genes.
Figure 29.7: Search operators for variable-length strings (additional to those from Sec-
tion 29.3.2 and Section 29.3.3).
of genes with randomly chosen alleles at any given position into a chromosome as sketched
in Fig. 29.7.a. Second, this operation can be reversed by deleting elements from the string
as shown in Fig. 29.7.b. It should be noted that both, insertion and deletion, are also
implicitly be performed by crossover. Recombining two identical strings with each other
can, for example, lead to deletion of genes. The crossover of dierent strings may turn out
as an insertion of new genes into an individual.
29.4.3 Crossover: Binary Reproduction
For variable-length string chromosomes, the same crossover operations are available as for
xed-length strings except that the strings are no longer necessarily split at the same loci.
The lengths of the new strings resulting from such a cut and splice operation may dier from
the lengths of the parents, as sketched in Figure 29.8. A special case of this type of recom-
bination is the homologous crossover, where only genes at the same loci and with similar
content are exchanged, as discussed in Section 29.3.4.6 on page 338 and in Section 31.4.4.1
on page 407.
29.5. SCHEMA THEOREM 341
()
Fig. 29.8.a: Single-Point
Crossover
()
Fig. 29.8.b: Two-Point
Crossover
()
Fig. 29.8.c: Multi-Point
Crossover
Figure 29.8: Crossover of variable-length string chromosomes.
29.5 Schema Theorem
The Schema Theorem is a special instance of forma analysis (discussed in Chapter 9 on
page 119) for Genetic Algorithms. Matter of fact, it is older than its generalization and
was rst stated by Holland back in 1975 [711, 1250, 1253]. Here we will rst introduce the
basic concepts of schemata, masks, and wildcards before going into detail about the Schema
Theorem itself, its criticism, and the related Building Block Hypothesis.
29.5.1 Schemata and Masks
Assume that the genotypes g in the search space G of Genetic Algorithms are strings of
a xed-length l over an alphabet
6
, i. e., G =
l
. Normally, is the binary alphabet
= true, false = 0, 1. From forma analysis, we know that properties can be
dened on the genotypic or the phenotypic space. For xed-length string genomes, we can
consider the values at certain loci as properties of a genotype. There are two basic principles
on dening such properties: masks and do not care symbols.
Denition D29.3 (Mask). For a xed-length string genome G =
l
, the set of all geno-
typic masks M(l) is the power set
7
of the valid loci M(l) = T(0..l 1) [2879]. Every mask
m
i
M(l) denes a property
i
and an equivalence relation:
g
i
h g[j] = h[j] j m
i
(29.13)
Denition D29.4 (Order). The order order(m
i
) of the mask m
i
is the number of loci
dened by it:
order(m
i
) = [m
i
[ (29.14)
Denition D29.5 (Dened Length). The dened length (m
i
) of a mask m
i
is the max-
imum distance between two indices in the mask:
(m
i
) = max [j k[ j, k m
i
(29.15)
A mask contains the indices of all elements in a string that are interesting in terms of the
property it denes.
Denition D29.6 (Schema). A forma dened on a string genome concerning the values
of the characters at specied loci is called Schema [558, 1250]
6
Alphabets and such and such are dened in ?? on page ??.
7
The power set you can nd described in Denition D51.9 on page 642.
342 29 GENETIC ALGORITHMS
29.5.2 Wildcards
The second method of specifying such schemata is to use dont care symbols (wildcards)
to create blueprints H of their member individuals. Therefore, we place the dont care
symbol
*
at all irrelevant positions and the characterizing values of the property at the
others.
j 0..l 1 H(j) =
_
g[j] if j m
i
otherwise
(29.16)
H(j) j 0..l 1 (29.17)
Schemas correspond to masks and thus, denitions like the dened length and order can
easily be transported into their context.
Example E29.1 (Masks and Schemas on Bit Strings).
Assume we have bit strings of the length l = 3 as genotypes (G = B
3
). The set of valid
masks M(3) is then M(3) = 0 , 1 , 2 , 0, 1 , 0, 2 , 1, 2 , 0, 1, 2. The mask m
1
=
1, 2, for example, species that the values at the loci 1 and 2 of a genotype denote the
value of a property
1
and the value of the bit at position 3 is irrelevant. Therefore,
it denes four formae A
1
=(0,0)
= (0, 0, 0) , (0, 0, 1), A
1
=(0,1)
= (0, 1, 0) , (0, 1, 1),
A
1
=(1,0)
= (1, 0, 0) , (1, 0, 0), and A
1
=(1,1)
= (1, 1, 0) , (1, 1, 1).
( , , ) 1 0 0
( , , ) 0 0 0
( , , ) 1 1 0
( , , ) 0 1 0
( , , ) 1 0 1 ( , , ) 0 0 1
( , , ) 1 1 1
( , , ) 0 1 1
g
1
g
0
g
2
H =( , , )
2
0 1 *
H =( , , )
1
0 0 *
H =( , , )
3
1 0 *
H =( , , )
4
1 1 *
H =( , , )
5
1 * *
Figure 29.9: An example for schemata in a three bit genome.
These formae can be dened with masks as well: A
1
=(0,0)
H
1
= (0, 0, ), A
1
=(0,1)
H
2
= (0, 1, ), A
1
=(1,0)
H
3
= (1, 0, ), and A
1
=(1,1)
H
4
= (1, 1, ). These schemata
mark hyperplanes in the search space G, as illustrated in Figure 29.9 for the three bit
genome.
29.5.3 Hollands Schema Theorem
The Schema Theorem
8
was dened by Holland [1250] for Genetic Algorithms which use
tness-proportionate selection (see Section 28.4.3 on page 290) where tness is subject to
8
http://en.wikipedia.org/wiki/Holland%27s_Schema_Theorem [accessed 2007-07-29]
29.5. SCHEMA THEOREM 343
maximization [711, 1253]. Let us rst only consider selection, tness proportionate selec-
tion for tness maximization and with replacement in particular, and ignore reproduction
operations such as mutation and crossover.
For tness proportionate selection in this case, Equation 28.18 on page 291 denes the
probability to pick an individual in a single selection choice according its tness. We here
print this equation in a slightly adapted form. If the genotype of p
H,i
is an instance of the
schema H, its probability of being selected with this method equals its tness divided by
the sum of the tness of all other individuals (p
pop(t)
v(p
)
(29.18)
The chance to select any instance of schema H, here denoted as P (select(p
H
)), is thus
simply the sum of the probabilities of selecting any of the count(H, pop(t)) instances of this
schema in the current population:
P (select(p
H
)) =
count(H,pop(t))
i=1
P (select(p
H,i
)) =
count(H,pop(t))
i=1
v(p
H,i
)
pop(t)
v(p
)
(29.19)
We can rewrite this equation to represent the arithmetic mean v
t
(H) of the tness of all
instances of the schema in the population:
v
t
(H) =
1
count(H, pop(t))
count(H,pop(t))
i=1
v(p
H,i
) (29.20)
count(H,pop(t))
i=1
v(p
H,i
) = count(H, pop(t)) v
t
(H) (29.21)
P (select(p
H
)) =
count(H, pop(t)) v
t
(H)
ps1
j=0
v(p
j
)
(29.22)
We can do a similar thing to compute the mean tness v
t
of all the ps individuals p
in the
population of generation t:
v
t
=
1
ps
pop(t)
v(p
) (29.23)
pop(t)
v(p
) = ps v
t
(29.24)
P (select(p
H
)) =
count(H, pop(t)) v
t
(H)
ps v
t
(29.25)
In order to ll the new population pop(t + 1) of generation t + 1, we need to select ps
individuals. In other words, we have repeat the decision given in Equation 29.25 exactly ps
times. The expected value E[count(H, pop(t + 1))] of the number count(H, pop(t + 1)) of
instances of the schema H selected into pop(t + 1) of generation t + 1 then evaluates to:
E[count(H, pop(t + 1))] = ps P (select(p
H
)) (29.26)
= ps
count(H, pop(t)) v
t
(H)
ps v
t
(29.27)
E[count(H, pop(t + 1))] =
count(H, pop(t)) v
t
(H)
v
t
(29.28)
344 29 GENETIC ALGORITHMS
From this equation we can see that schemas with better (higher) tness are likely to be
present to a higher proportion in the next generation. Also, we can expect that schemas
with lower average tness are likely to have fewer instances after selection. The next thing to
consider in the Schema Theorem are reproduction operations. Each individual application
search operation may either:
1. Leave the schema untouched when reproducing an individual. If the parent was in-
stance of the schema, then the child is as well. If the parent was not instance of the
schema, the child will be neither.
2. Destroy an occurrence of the schema: The parent individual was an instance of the
schema, but the child is not.
3. Create a new instance of the schema, i. e., the parent was not a schema instance, but
the child is.
Holland [1250] was only interested in nding a lower bound for the expected value and thus
considered only the rst two cases. If is the probability that an instance of the schema is
destroyed, Equation 29.28 changes to Equation 29.29.
E[count(H, pop(t + 1))] =
count(H, pop(t)) v
t
(H)
v
t
(1 ) (29.29)
If we apply single-point crossover to an individual which is already a member of the schema
H, this can lead to the loss of the schema only if the crossover point separates the bits which
are not declared as
*
in H. In a search space G = B
l
, we have l 1 possible crossover points:
between loci 0 and 1, between 1 and 2, . . . , and between l 2 and l 1. Amongst them, only
(H) points are dangerous. The dened length (H) of H is the number of possible crossover
points lying within the schema (see, for example, Figure 29.10 on page 347). Furthermore,
in order to actually destroy the schema instance, we would have to pick a second parent
which has at least one wrong value in the genes it provides for the non-dont care points it
covers after crossover. We assume that this probability would be P
diff
and, since we want
to nd a lower bound, simply assume P
diff
= 1, i. e., the worst possible luck when choosing
the parent. Under these circumstances
c
, the probability to destroy an instance of H with
crossover, becomes Equation 29.30.
c
=
(H)
l 1
P
diff
(H)
l 1
(29.30)
For single-point mutation, on the other hand, solely the number of non-dont care points in
the schema H is interesting, the order order(H). Here, amongst the l loci we could hit (with
uniform probability), exactly order(H) will lead to the destruction of the schema instance.
In other words, the probability
m
to do this with mutation is given in Equation 29.31.
m
=
order(H)
l
(29.31)
What we see is that both reproduction operations favor short schemas over long ones. The
lower the dened length of a schema and the lower its order, the higher is its chance to
survive mutation and crossover. Finally, we now can put Equation 29.30 and Equation 29.31
together. If we assume that either mutation is applied (with probability mr), crossover
is applied (with probability cr), or neither operation is used and the individual survives
without modication, we get Equation 29.32 and, by substituting it into Equation 29.29,
Equation 29.33.
mr
m
+ cr
c
= mr
order(H)
l
+ cr
(H)
l 1
(29.32)
E[count(H, pop(t + 1))]
count(H, pop(t)) v
t
(H)
v
t
_
1 mr
order(H)
l
cr
(H)
l 1
_
(29.33)
29.5. SCHEMA THEOREM 345
The fact that Equation 29.29 and Equation 29.33 hold for any possible schema at any
given point in time accounts for what is called implicit parallelism and introduced in Sec-
tion 28.1.2.9.
In Equation 29.29, we can already see that the number of instances of a schema is likely
to increase as long as
1 <
v
t
(H)
v
t
(1 ) (29.34)
1 < v
t
(H)
1
v
t
(29.35)
1 >
1
v
t
(H)
v
t
1
(29.36)
v
t
(H) >
v
t
1
(29.37)
If was 0, i. e., if instances of the schema H would never get lost, this just means that the
schema tness v
t
(H) must be higher than the average population tness v
t
. For non-zero
s, the schema tness must be higher in order to compensate for the destroyed instances
appropriately.
If the relation of v
t
(H) to v
t
would remain constant for multiple generations (and of such
a quality that leads to an increase of instances), the number of schema instances would grow
exponentially (since it would multiply with a constant factor in each generation).
29.5.4 Criticism of the Schema Theorem
From Equation 29.29 or Equation 29.33, one could assume that short, highly t schemas
would spread exponentially in the population since their number would multiply with a cer-
tain factor in every generation. This deduction is however a very optimistic assumption and
not generally true, maybe even misleading. If a highly t schema has many ospring with
good tness, this will also improve the overall tness of the population. Hence, the proba-
bilities in Equation 29.29 will shift over time. Generally, the Schema Theorem represents a
lower bound that will only hold for one generation [2931]. Trying to derive predictions for
more than one or two generations using the Schema Theorem as is will lead to deceptive or
wrong results [1129, 1133].
Furthermore, the population of a Genetic Algorithm only represents a sample of limited
size of the search space G. This limits the reproduction of the schemata and also makes
statements about probabilities in general more complicated. Since we only have samples
of the schemata H, we cannot be sure if v
t
(H) really represents the average tness of all
the members of the schema. That is why we annotate it with
t
instead of writing v(H).
Thus, even reproduction operators which preserve the instances of the schema may lead to
a decrease of v
t+...
(H) by time. It is also possible that parts of the population already have
converged and other members of a schema will not be explored anymore, so we do not get
further information about its real utility.
Additionally, we cannot know if it is really good if one specic schema spreads fast, even
it is very t. Remember that we have already discussed the exploration versus exploitation
topic and the importance of diversity in Section 13.3.1 on page 155.
Another issue is that we implicitly assume that most schemata are compatible and can
be combined, i. e., that there is low interaction between dierent genes. This is also not
generally valid: Epistatic eects, for instance, can lead to schema incompatibilities. The
expressiveness of masks and blueprints even is limited and can be argued that there are
properties which we cannot specify with them. Take the set D
3
of numbers divisible by
three for example D
3
= 3, 6, 9, 12, . . . . Representing them as binary strings will lead
to D
3
= 0011, 0110, 1001, 1100, . . . if we have a bit-string genome of the length 4.
Obviously, we cannot seize these genotypes in a schema using the discussed approach. They
346 29 GENETIC ALGORITHMS
may, however, be gathered in a forma. The Schema Theorem, however, cannot hold for such
a forma since the probability p of destruction may be dierent from instance to instance.
Finally, we mentioned that the Schema Theorem gives rise to implicit parallelism since it
holds for any possible schema at the same time. However, it should be noted that (a) only a
small subset of schemas is usually actually instantiated within the population and (b) only a
few samples are usually available per schema (if any).Generally, this assumption (like many
others) about the Schema Theorem makes only sense if the population size is assumed to
be innite and the sampling of the population and the schema would be really uniform.
29.5.5 The Building Block Hypothesis
According to Harik [1196], the substructure of a genotype which allows it to match to
a schema is called a building block. The Building Block Hypothesis (BBH) proposed by
Goldberg [1075], Holland [1250] is based on two assumptions:
1. When a Genetic Algorithm solves a problem, there exist some low-order, low-dening
length schemata with above-average tness (the so-called building blocks).
2. These schemata are combined step by step by the Genetic Algorithm in order to form
larger and better strings. By using the building blocks instead of testing any possible
binary conguration, Genetic Algorithms eciently decrease the complexity of the
problem. [1075]
Although it seems as if the Building Block Hypothesis is supported by the Schema Theorem,
this cannot be veried easily. Experiments that originally were intended to proof this theory
often did not work out as planned [1913]. Also consider the criticisms of the Schema Theorem
mentioned in the previous section which turns higher abstractions like the Building Block
Hypothesis into a touchy subject. In general, there exists much criticism of the Building
Block Hypothesis and, although it is a very nice model, it cannot yet be considered as proven
suciently.
29.5.6 Genetic Repair and Similarity Extraction
The GR Hypothesis by Beyer [298] based on the Genetic Repair (GR) Eect [296] takes
a counter position to the Building Block Hypothesis [302]. It states that not the dier-
ent schemas are combined from the parent individuals to form the child, but instead the
similarities are inherited.
Let us take a look on uniform crossover (UX) for bit-string based search spaces, as
introduced in Section 29.3.4.4 on page 337. Here, the value for each locus of the child
individual g
c
is chosen randomly from the values at the same locus in one of the two parents
g
p,a
and g
p,b
. This means that if the parents have the same value in locus i, then the
child will inherit this value too g
p,a
[i] = g
p,b
[i] g
c
[i] = g
p,a
[i] = g
p,b
[i]. If the two parents
disagree in one locus j, however, the value at that locus in g
c
is either 1 or 0 both with
a probability of 50%. In other words, uniform crossover preserves the positions where the
parents are equal and randomly lls up the remaining genes.
If a sequence of genes carries the same alleles in both parents, there are three possible
reasons: (a) either it emerged randomly which has a probability of 2
l
for length-l sequences
which is thus very unlikely, (b) both parents inherited the sequence, or (c) a combination
of inherited sequences of length m less than l and a random coincidence of l m equal bits
(resulting, for example, from mutation). The latter two cases, the inheritance of the sequence
or subsequence, imply that the sequence (or parts thereof) was previously selected, i. e.,
seemingly has good tness. Uniform crossover preserves these components. The remaining
bits are uninteresting, maybe even harmful, so they can be replaced. In UX, this is done
with maximum entropy, in a maximally random fashion [302].
29.6. THE MESSY GENETIC ALGORITHM 347
Hence, the idea of Genetic Repair is that useful gene sequences which step-by-step are
built by mutation (or the variation resulting from crossover) are aggregated. The useless
sequences, however, are dampened or destroyed by the same operator. This theory has been
explained for bit-string based as well as real-valued vector based search spaces alike [298,
302].
29.6 The Messy Genetic Algorithm
According to the schema theorem specied in Equation 29.29 and Equation 29.33, a schema
is likely to spread in the population if it has above-average tness, is short (i. e., low dened
length) and is of low order [180]. Thus, according to Equation 29.33, from two schemas of
the same average tness and order, the one with the lesser dened length will be propagated
to more ospring, since it is less likely to be destroyed by crossover. Therefore, placing
dependent genes close to each other would be a good search space design approach since it
would allow good building blocks to proliferate faster. These building blocks, however, are
not known at design time otherwise the problem would already be solved. Hence, it is not
generally possible to devise such a design.
The messy Genetic Algorithms (mGAs) developed by Goldberg et al. [1083] use a coding
scheme which is intended to allow the Genetic Algorithm to re-arrange genes at runtime.
Because of this feature, it can place the genes of a building block spatially close together.
This method of linkage learning may thus increase the probability that building blocks, i. e.,
sets of epistatically linked genes, are preserved during crossover operations, as sketched in
Figure 29.10. It thus mitigates the eects of epistasis as discussed in Section 17.3.3.
destroyedin6outof9casesbycrossover
destroyedin1outof9casesbycrossover
rearrange
Figure 29.10: Two linked genes and their destruction probability under single-point
crossover.
29.6.1 Representation
The idea behind the genomes used in messy GAs goes back to the work Bagley
[180] from 1967 who rst introduced a representation where the ordering of the
genes was not xed. Instead, for each gene a tuple (, ) with its position (lo-
cus) and value (allele) was used. For instance, the bit string 000111 can
be represented as g
1
= ((0, 0) , (1, 0) , (2, 0) , (3, 1) , (4, 1) , (5, 1)) but as well as g
2
=
((5, 1) , (1, 0) , (3, 1) , (2, 0) , (0, 0) , (4, 1)) where both genotypes map to the same phenotype,
i. e., gpm(g
1
) = gpm(g
2
).
29.6.2 Reproduction Operations
29.6.2.1 Inversion: Unary Reproduction
The inversion operator reverses the order of genes between two randomly chosen loci [180,
1196]. With this operation, any particular ordering can be produced in a relatively small
number of steps. Figure 29.11 illustrates, for example, how the possible building block com-
ponents (1, 0), (3, 0), (4, 0), and (6, 0) can be brought together in two steps. Nevertheless,
the eects of the inversion operation were rather disappointing [180, 985].
348 29 GENETIC ALGORITHMS
(0, ) 0 (1, ) 0 (2, ) 0 (3, ) 0 (4, ) 1 (5, ) 1 (6, ) 1 (7, ) 1
(0, ) 0 (1, ) 0 (2, ) 0 (3, ) 0 (4, ) 1 (5, ) 1 (6, ) 1 (7, ) 1
(0, ) 0 (1, ) 0 (2, ) 0 (3, ) 0 (4, ) 1 (5, ) 1 (6, ) 1 (7, ) 1
firstinversion
secondinversion
Figure 29.11: An example for two subsequent applications of the inversion operation [1196].
29.6.2.2 Cut: Unary Reproduction
The cut operator splits a genotype g into two with the probability p
c
= (len(g) 1) p
K
where
p
K
is a bitwise probability and len(g) the length of the genotype [1551]. With p
K
= 0.1, the
g
1
= ((0, 0) , (1, 0) , (2, 0) , (3, 1) , (4, 1) , (5, 1)) has a cut probability of p
c
= (6 1)0.1 = 0.5.
A cut at position 4 would lead to g
3
= ((0, 0) , (1, 0) , (2, 0) , (3, 1)) and g
4
= ((4, 1) , (5, 1)).
29.6.2.3 Splice: Binary Reproduction
The splice operator joins two genotypes with a predened probability p
s
by simply attach-
ing one to the other [1551]. Splicing g
2
= ((5, 1) , (1, 0) , (3, 1) , (2, 0) , (0, 0) , (4, 1)) and g
4
=
((4, 1) , (5, 1)), for instance, leads to g
5
= ((5, 1) , (1, 0) , (3, 1) , (2, 0) , (0, 0) , (4, 1) , (4, 1) , (5, 1)).
In summary, the application of two cut and a subsequent splice operation to two genotypes
has roughly the same eect as a single-point crossover operator in variable-length string
chromosomes Section 29.4.3.
29.6.3 Overspecication and Underspecication
The genotypes in messy GAs have a variable length and the cut and splice operators
can lead to genotypes being over or underspecied. If we assume a three bit genome,
the genotype g
6
= ((2, 0) , (0, 0) , (2, 1) , (1, 0)) is overspecied since it contains two (in this
example, dierent) alleles for the third gene (at locus 2). g
7
= ((2, 0) , (0, 0)), in turn, is
underspecied since it does not contain any value for the gene in the middle (at locus 1).
Dealing with overspecication is rather simple [847, 1551]: The genes are processed from
left to right during the genotype-phenotype mapping, and the rst allele found for a specic
locus wins. In other words, g
6
from above codes for 000 and the second value for locus 2
is discarded. The loci left open during the interpretation of underspecied genes are lled
with values from a template string [1551]. If this string was 000, g
7
would code for 000, too.
29.6.4 The Process
In a simple Genetic Algorithm, building blocks are identied and recombined simultaneously,
which leads to a race between recombination and selection [1196]. In the messy GA [1083,
1084], this race is avoided by separating the evolutionary process into two stages:
1. In the primordial phase, building blocks are identied. In the original conception of
the messy GA, all possible building blocks of a particular order k are generated. Via
selection, the best ones are identied and spread in the population.
29.7. RANDOM KEYS 349
2. These building blocks are recombined with the cut and splice operators in the subse-
quent juxtapositional phase.
The complexity of the original mGA needed a bootstrap phase in order to identify the order-
k building blocks which required to identify the order-k 1 blocks rst. This bootstrapping
was done by applying the primordial and juxtapositional phases for all orders from 1 to
k 1. This process was later improved by using a probabilistic complete initialization
algorithm [1087] instead.
29.7 Random Keys
In Section 29.3.1.2 and 29.3.3, we introduce operators for processing strings which directly
represent permutations of the elements from a given set S = s
0
, s
1
, .., s
n1
. This direct
representation is achieved by using a search space Gwhich contains the n-dimensional vectors
over the natural numbers from 0 to n 1, i. e., G = [0..n 1]
n
. The gene g[i] at locus i of
the genotype g G hence has a value j = g[i] 1..n and species that element s
j
should be
at position i in the permutation, as dened in the genotype-phenotype mapping introduced
in Equation 29.6 on page 329.
It is quite clear that every number in 1..n must occur exactly once in each genotype.
Performing a simple single-point crossover on two dierent genotypes is hence not feasi-
ble. The two genotypes g
1
= (1, 2, 3, 5, 4) and g
2
= (4, 2, 3, 5, 1) could lead to the ospring
(1, 2, 3, 4, 1) or (4, 2, 3, 5, 4), both of which containing one number twice while missing an-
other one. We can therefore not apply Algorithm 29.6 nor Algorithm 29.7 to such genotypes.
The Random Keys encoding dened by Bean [236] is a simple idea how to circumvent
this problem. It introduces a genotype-phenotype mapping which translates n-dimensional
vectors of real numbers (G R
n
) to permutations of length n. Each gene g[i] of a genotype
g with i 0..n 1 is thus a real number or, most commonly, an element of the subset [0, 1]
of the real numbers. The gene at locus i stands for the element s
i
. The permutation of these
elements, i. e., the position at which the element s
i
appears in the phenotype, is dened by
the position of the gene g[i] in the sorted list of all genes. In Algorithm 29.8, we present
an algorithm which performs the Random Keys genotype-phenotype mapping. An example
implementation of the algorithm in Java is given in Listing 56.52 on page 834.
Algorithm 29.8: x gpm
RK
(g, S)
Input: g G R
n
: the genotype
Input: S = s
0
, s
1
, .., s
n1
: The set of elements in the permutation. Often S N
0
and s
i
= i
Data: i: a counter variable
Data: j: the position index of the allele of the i
th
gene
Data: g
: a temporary genotype
Output: x X = (S): the corresponding phenotype
1 begin
2 g
()
3 x ()
4 for i 0 up to len(g) 1 do
5 j searchItemAS(g[i], g
)
6 if j < 0 then j ((j) 1)
7 g
insertItem(g
, j, g[i])
8 x insertItem(x, j, s
j
)
9 return x
350 29 GENETIC ALGORITHMS
In other words, the genotype g
3
= (0.2, 0.45, 0.17, 0.84, 0.59) would be translated to the
phenotype x
3
= (s
2
, s
0
, s
1
, s
4
, s
3
), since 0.17 (i. e., g
3
[2]) is the smallest number and hence,
s
2
comes rst. The next smaller number is 0.2, the value of the gene at locus 0. Hence, s
0
will occur at the second place of the phenotype, and so on. Finally, the gene at locus 3 has
the largest allele (g
3
[3] = 0.84) and thus, s
3
is the last element in the permutation.
With this genotype-phenotype mapping, we can translate a combinatorial problem where
a given set of elements must be ordered into a numerical optimization problem dened over
a continuous domain. Bean [236] used the Random Keys method to solve Vehicle Routing
Problems, Traveling Salesman Problems, quadratic assignment problems, scheduling and
resource allocation problems. Snyder and Daskin [2540] combine a Genetic Algorithm, the
Random Keys encoding, and a local search method to, as well, tackle generalized Traveling
Salesman Problems.
29.8. GENERAL INFORMATION ON GENETIC ALGORITHMS 351
29.8 General Information on Genetic Algorithms
29.8.1 Applications and Examples
Table 29.1: Applications and Examples of Genetic Algorithms.
Area References
Art [1953, 2497, 2529]
Chemistry [214, 558, 668, 2729]
Combinatorial Problems [16, 41, 65, 81, 190, 236, 237, 240, 382, 402, 429, 436, 527,
573, 629, 640, 654, 765, 978, 1126, 1161, 1270, 1440, 1442,
1446, 1447, 1460, 1471, 1534, 1538, 1558, 1581, 1686, 1706,
1709, 1737, 1756, 1757, 17791781, 1896, 1969, 1971, 2019,
2075, 2267, 2324, 2338, 2373, 2374, 2472, 2473, 2540, 2656,
2658, 2686, 2713, 2732, 2795, 2796, 2865, 2901, 2923, 3024,
3044, 3062, 3084]
Computer Graphics [56, 466, 511, 541, 757, 2732]
Control [541, 1074]
Cooperation and Teamwork [2922]
Data Mining [633, 683, 717, 911, 973, 994, 1081, 1082, 1105, 1241, 1487,
1581, 1906, 1910, 2147, 2148, 2168, 2643, 2819, 2894, 2902,
3076]
Databases [640, 1269, 1270, 1706, 17791781, 2658, 2795, 2796, 2865,
3015, 3044, 3062, 3063]
Digital Technology [240, 575, 789]
Distributed Algorithms and Sys-
tems
[15, 71, 335, 410, 541, 629, 721, 769, 872, 896, 1291, 1488,
1537, 1538, 1558, 1636, 1657, 1750, 1840, 1935, 1982, 2068,
2113, 2114, 2177, 2338, 2370, 2498, 2656, 2720, 2729, 2796,
2901, 2909, 2922, 2950, 2989, 3002, 3076]
E-Learning [71, 721, 1284, 3076]
Economics and Finances [1060, 1906]
Engineering [56, 240, 303, 355, 410, 519, 532, 556, 575, 640, 757, 769, 789,
1211, 1269, 1450, 1488, 1494, 1636, 1640, 1657, 1704, 1705,
1725, 17631765, 17671770, 1829, 1840, 1894, 1982, 2018,
2163, 2178, 2232, 2250, 2270, 2498, 2656, 2729, 2732, 2814,
2959, 3002, 3055, 3056]
Function Optimization [103, 169, 409, 610, 711, 713, 714, 735, 1080, 1258, 1709,
1841, 2128, 2324, 2933, 2981, 3079]
Games [998]
Graph Theory [15, 410, 556, 575, 629, 640, 769, 872, 896, 1284, 1450, 1471,
1488, 1558, 1636, 1657, 1750, 17671770, 1840, 1935, 1982,
2068, 2113, 2114, 2177, 2338, 2370, 2372, 2374, 2498, 2655,
2656, 2729, 2814, 2950, 3002]
Healthcare [2022]
Logistics [41, 65, 81, 190, 236, 382, 402, 436, 527, 978, 1126, 1442,
1446, 1447, 1581, 1704, 1705, 1709, 1756, 1896, 1971, 2075,
2270, 2324, 2540, 2686, 2713, 2720, 3024, 3084]
352 29 GENETIC ALGORITHMS
Mathematics [240, 520, 652, 998, 2284, 2285, 2416]
Multi-Agent Systems [1494]
Physics [532, 575]
Prediction [1285]
Security [1725]
Software [620, 652, 790, 998, 2901]
Theorem Proong and Automatic
Verication
[640]
Wireless Communication [154, 532, 556, 575, 640, 679, 826, 1284, 1450, 1494, 1535,
17671770, 1796, 2250, 2371, 2372, 2374, 2655, 2814]
29.8.2 Books
1. Handbook of Evolutionary Computation [171]
2. Genetic Algorithms and Evolution Strategy in Engineering and Computer Science: Recent
Advances and Industrial Applications [2163]
3. Evolutionary Computation 1: Basic Algorithms and Operators [174]
4. Genetic Algorithms and Genetic Programming at Stanford [1601]
5. Telecommunications Optimization: Heuristic and Adaptive Techniques [640]
6. Genetic Algorithms and Simulated Annealing [694]
7. Handbook of Genetic Algorithms [695]
8. Adaptation in Natural and Articial Systems: An Introductory Analysis with Applications
to Biology, Control, and Articial Intelligence [1250]
9. Practical Handbook of Genetic Algorithms: New Frontiers [522]
10. Genetic and Evolutionary Computation for Image Processing and Analysis [466]
11. Evolutionary Computation: The Fossil Record [939]
12. Genetic Algorithms for Applied CAD Problems [1640]
13. Extending the Scalability of Linkage Learning Genetic Algorithms Theory & Practice [552]
14. Ecient and Accurate Parallel Genetic Algorithms [477]
15. Electromagnetic Optimization by Genetic Algorithms [2250]
16. Genetic Fuzzy Systems: Evolutionary Tuning and Learning of Fuzzy Knowledge Bases [634]
17. Genetic Algorithms Reference Volume 1 Crossover for Single-Objective Numerical Opti-
mization Problems [1159]
18. Foundations of Learning Classier Systems [443]
19. Practical Handbook of Genetic Algorithms: Complex Coding Systems [523]
20. Evolutionary Computation: A Unied Approach [715]
21. Genetic Algorithms in Search, Optimization, and Machine Learning [1075]
22. Introduction to Stochastic Search and Optimization [2561]
23. Advances in Evolutionary Algorithms [1581]
24. Representations for Genetic and Evolutionary Algorithms [2338]
25. Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Pro-
gramming, Genetic Algorithms [167]
26. Evaluation of the Eectiveness of Genetic Algorithms in Combinatorial Optimization [2923]
27. Data Mining and Knowledge Discovery with Evolutionary Algorithms [994]
28. Evolution are Algorithmen [2879]
29. Genetic Algorithm and its Application (Ychuan Su`anfa J Q Y`ngy` ong) [541]
30. Advances in Evolutionary Algorithms Theory, Design and Practice [41]
31. Cellular Genetic Algorithms [66]
32. Adaptation in Natural and Articial Systems: An Introductory Analysis with Applications
to Biology, Control, and Articial Intelligence [1252]
33. An Introduction to Genetic Algorithms [1912]
34. Genetic Algorithms + Data Structures = Evolution Programs [1886]
35. Practical Handbook of Genetic Algorithms: Applications [521]
29.8. GENERAL INFORMATION ON GENETIC ALGORITHMS 353
29.8.3 Conferences and Workshops
Table 29.2: Conferences and Workshops on Genetic Algorithms.
GECCO: Genetic and Evolutionary Computation Conference
See Table 28.5 on page 317.
CEC: IEEE Conference on Evolutionary Computation
See Table 28.5 on page 317.
EvoWorkshops: Real-World Applications of Evolutionary Computing
See Table 28.5 on page 318.
ICGA: International Conference on Genetic Algorithms and their Applications
History: 1997/07: East Lansing, MI, USA, see [166]
1995/07: Pittsburgh, PA, USA, see [883]
1993/07: Urbana-Champaign, IL, USA, see [969]
1991/07: San Diego, CA, USA, see [254]
1989/06: Fairfax, VA, USA, see [2414]
1987/07: Cambridge, MA, USA, see [1132]
1985/06: Pittsburgh, PA, USA, see [1131]
PPSN: Conference on Parallel Problem Solving from Nature
See Table 28.5 on page 318.
WCCI: IEEE World Congress on Computational Intelligence
See Table 28.5 on page 318.
EMO: International Conference on Evolutionary Multi-Criterion Optimization
See Table 28.5 on page 319.
FOGA: Workshop on Foundations of Genetic Algorithms
History: 2011/01: Schwarzenberg, Austria, see [301]
2009/01: Orlando, FL, USA, see [29]
2005/01: Aizu-Wakamatsu City, Japan, see [2983]
2002/09: Torremolinos, Spain, see [719]
2001/07: Charlottesville, VA, USA, see [2565]
1998/07: Madison, WI, USA, see [208]
1996/08: San Diego, CA, USA, see [256]
1994/07: Estes Park, CO, USA, see [2932]
1992/07: Vail, CO, USA, see [2927]
1990/07: Bloomington, IN, USA, see [2562]
AE/EA: Articial Evolution
See Table 28.5 on page 319.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
See Table 28.5 on page 319.
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
354 29 GENETIC ALGORITHMS
ICNC: International Conference on Advances in Natural Computation
See Table 28.5 on page 319.
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
See Table 28.5 on page 320.
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
EUROGEN: Evolutionary Methods for Design Optimization and Control
History: 2007/06: Jyv askyl a, Finland, see [2751]
2005/09: Munich, Bavaria, Germany, see [2419]
2003/09: Barcelona, Catalonia, Spain, see [216]
2001/09: Athens, Greece, see [1053]
1999/05: Jyv askyl a, Finland, see [1894]
1997/11: Triest, Italy, see [2232]
1995/12: Las Palmas de Gran Canaria, Spain, see [2959]
FEA: International Workshop on Frontiers in Evolutionary Algorithms
See Table 28.5 on page 320.
MENDEL: International Mendel Conference on Genetic Algorithms
History: 2009/06: Brno, Czech Republic, see [411, 412]
2007/09: Prague, Czech Republic, see [2107]
2006/05: Brno, Czech Republic, see [413]
2005/06: Brno, Czech Republic, see [421]
2004/06: Brno, Czech Republic, see [420]
2003/06: Brno, Czech Republic, see [1842]
2002/06: Brno, Czech Republic, see [419]
2001/06: Brno, Czech Republic, see [2522]
2000/06: Brno, Czech Republic, see [2106]
1998/06: Brno, Czech Republic, see [417]
1997/06: Brno, Czech Republic, see [416, 418]
1996/06: Brno, Czech Republic, see [415]
1995/09: Brno, Czech Republic, see [414]
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
See Table 28.5 on page 320.
29.8. GENERAL INFORMATION ON GENETIC ALGORITHMS 355
CIS: International Conference on Computational Intelligence and Security
See Table 28.5 on page 320.
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
See Table 28.5 on page 321.
GALESIA: International Conference on Genetic Algorithms in Engineering Systems
History: 1997/09: Glasgow, Scotland, UK, see [3056]
1995/09: Sheeld, UK, see [3055]
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
See Table 28.5 on page 321.
GEM: International Conference on Genetic and Evolutionary Methods
See Table 28.5 on page 321.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
See Table 28.5 on page 321.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
See Table 28.5 on page 321.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
COGANN: International Workshop on Combinations of Genetic Algorithms and Neural Networks
History: 1992/06: Baltimore, MD, USA, see [2415]
EvoNUM: European Event on Bio-Inspired Algorithms for Continuous Parameter Optimisation
See Table 28.5 on page 321.
FOCI: IEEE Symposium on Foundations of Computational Intelligence
See Table 28.5 on page 321.
FWGA: Finnish Workshop on Genetic Algorithms and Their Applications
Later continued as NWGA.
History: 1995/06: Vaasa, Finland, see [59]
1994/03: Vaasa, Finland, see [58]
356 29 GENETIC ALGORITHMS
1992/11: Espoo, Finland, see [57]
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
IJCCI: International Conference on Computational Intelligence
See Table 28.5 on page 321.
IWNICA: International Workshop on Nature Inspired Computation and Applications
See Table 28.5 on page 321.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NWGA: Nordic Workshop on Genetic Algorithms
History: 1998/07: Trondheim, Norway, see [62]
1997/08: Helsinki, Finland, see [61]
1996/08: Vaasa, Finland, see [60]
1995/06: Vaasa, Finland, see [59]
NaBIC: World Congress on Nature and Biologically Inspired Computing
See Table 28.5 on page 322.
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
See Table 28.5 on page 322.
EvoRobots: International Symposium on Evolutionary Robotics
See Table 28.5 on page 322.
ICEC: International Conference on Evolutionary Computation
See Table 28.5 on page 322.
IWACI: International Workshop on Advanced Computational Intelligence
See Table 28.5 on page 322.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
See Table 28.5 on page 322.
SSCI: IEEE Symposium Series on Computational Intelligence
See Table 28.5 on page 322.
29.8.4 Journals
1. IEEE Transactions on Evolutionary Computation (IEEE-EC) published by IEEE Computer
Society
2. Genetic Programming and Evolvable Machines published by Kluwer Academic Publishers and
Springer Netherlands
29.8. GENERAL INFORMATION ON GENETIC ALGORITHMS 357
Tasks T29
78. Perform the same experiments as in Task 64 on page 238 (and 68) with a Genetic
Algorithm. Use a bit-string based search space and utilize an appropriate genotype-
phenotype mapping.
[40 points]
79. Perform the same experiments as in Task 64 on page 238 (and 68 and 78) with a
Genetic Algorithm. Use a real-vector based search space. Implement an appropriate
crossover operator.
[40 points]
80. Compare your results from Task 64 on page 238, 68, and 78. What are the dierences?
What are the similarities? Did you use dierent experimental settings? If so, what
happens if you use the same experimental settings for all three tasks? Try to give
reasons for your results.
[10 points]
81. Perform the same experiments as in Task 67 on page 238 (and 70) with a Genetic
Algorithm. If you use a permutation-based search space, you may re-use the nullary
and unary search operations we already have developed for this task. Yet, you need
to dene a recombination operation which does not violate the permutation-character
of the genotypes.
[40 points]
82. Compare your results from Task 67 on page 238, 70 and 81. What are the dierences?
What are the similarities? Did you use dierent experimental settings? If so, what
happens if you use the same experimental settings for both tasks? Try to give reasons
for your results. Put your explanations into the context of the discussions provided
in Example E17.4 on page 181.
[10 points]
83. Try solving the bin packing problem again, this time by reproducing the experiments
given in Khuri, Sch utz, and Heitkotter in [1534]. Compare the results with the results
listed in that section and obtained by you in Task 70 and 70. Which method is better?
Provide reasons for your observation.
[50 points]
84. In Paragraph 56.2.1.2.1 on page 801, we provide a Java implementation of some of the
standard operators of Genetic Algorithms based on arrays of boolean. Obviously, using
boolean[] is a bit inecient, since it wastes memory. Each boolean will take up at least
1 byte, probably even 4, 8, or maybe even 16 bytes. Since it only represents a single bit,
i. e., one eighth of a byte, it would be more economically to represent bit strings as array
of int or long and access specic bits via bit arithmetic (via, e.g., &, |, , <<, or >>>).
Please re-implement the operators from Paragraph 56.2.1.2.1 on page 801 in a more
ecient way, by either using byte[], int[], or long[], or a specic class such as java
.util.BitSet for storing the bit strings instead of boolean[].
[30 points]
Chapter 30
Evolution Strategies
30.1 Introduction
Evolution Strategies
1
(ES) introduced by Rechenberg [2277, 2278, 2279] and Schwefel [2433,
2434, 2435] are a heuristic optimization technique based in the ideas of adaptation and
evolution, a special form of Evolutionary Algorithms [170, 300, 302, 1220, 22772279, 2437].
The rst Evolution Strategies were quite similar to Hill Climbing methods. They did not
yet focus on evolving real-valued, numerical vectors and only featured two rules for nding
good solutions (a) slightly modifying one candidate solution and (b) keeping it only if it
is at least as good as its parent. Since there was only one parent and one ospring in this
form of Evolution Strategy, this early method more or less resembles a (1 + 1) population
discussed in Paragraph 28.1.4.3.3 on page 266. From there on, ( +) and (, ) Evolution
Strategies were developed a step into a research direction which was not very welcomed
back in the 1960s [302].
The search space of todays Evolution Strategies normally are vectors from the R
n
, but
bit strings or integer strings are common as well [302]. Here, we will focus mainly on the
former, the real-vector based search spaces. In this case, the problem space is often identical
with the search space, i. e., X = G R
n
. ESs normally follow one of the population handling
methods classied in the - notation given in Section 28.1.4.3.
Mutation and selection are the primary reproduction operators and recombination is
used less often in Evolution Strategies. Most often, normal distributed random numbers
are used for mutation. The parameter of the mutation is the standard deviation of these
random numbers. The Evolution Strategy may either
1. maintain an a single standard deviation parameter and use identical normal dis-
tributions for generating the random numbers added to each element of the solution
vectors,
2. use a separate standard deviation (from a standard deviation vector ) for each element
of the genotypes, i. e., create random numbers from dierent normal distributions
for mutations in order to facilitate dierent strengths and resolutions of the decision
variables (see, for instance, Example E28.11), or
3. use a complete covariance matrix C for creating random vectors distributed in a hy-
perellipse and thus also taking into account binary interactions between the elements
of the solution vectors.
The standard deviations are governed by self-adaptation [1185, 1617, 1878] and may result
from a stochastic analysis of the elements in the population [11821184, 1436]. They are often
1
http://en.wikipedia.org/wiki/Evolution_strategy [accessed 2007-07-03]
360 30 EVOLUTION STRATEGIES
treated as endogenous strategy parameters which can directly be stored in the individual
records p and evolve along with them [302]. The idea of self-adaption can be justied
with the following thoughts. Assume we have a Hill Climbing algorithm which uses a xed
mutation step size to modify the (single) genotype it currently has under investigation.
1. If a large value is used for , the Hill Climber will initially quickly nd interesting
areas in the search space. However, due to its large step size, it will often jump in and
out of smaller highly t areas without being able to investigate them thoroughly.
2. If a small value is used for , the Hill Climber will progress very slowly. However, once
it nds the basin of attraction of an optimum, it will be able to trace that optimum
and deliver solutions.
It thus makes sense to adapt the step width of the mutation operation. Starting with a larger
step size, we may reduce it while approaching the global optimum, as we will lay down in
Section 30.5. The parameters and , on the other hand, are called exogenous parameters
and are usually kept constant during the evolutionary optimization process [302].
We can describe the idea of endogenous parameters for governing the search step width
as follows. Evolution Strategies are Evolutionary Algorithms which usually add the step
length vector as endogenous information to the individuals. This vector undergoes selec-
tion, recombination, and mutation together with the individual. The idea is that the EA
selects individuals which are good. By doing so, it also selects step width that led to its
creation. This step width can be considered to be good since it was responsible for creating
a good individual. Bad step widths, on the other hand, will lead to the creation of inferior
candidate solutions and thus, perish together with them during selection. In other words,
the adaptation of the step length of the search operations is governed by the same selection
and reproduction mechanisms which are applied in the Evolutionary Algorithm to nd good
solutions. Since we expect these mechanisms to work for this purpose, it makes sense to
also assume that they can do well to govern the adaptation of the search steps. We can
further expect that initially, larger steps are favored by the evolution, which help the algo-
rithm to explore wide areas in the search space. Later, when the basin(s) of attraction of
the optimum/optima are reached, only small search steps can lead to improvements in the
objective values of the candidate solutions. Hence, individuals created by search operations
which perform small modications will be selected. These individuals will hold endogenous
information which leads to small step sizes. Mutation and recombination will lead to the
construction of endogenous information which favors smaller and smaller search steps the
optimization process converges.
30.2 Algorithm
In Algorithm 30.1 (and in the corresponding Java implementation in Listing 56.17 on
page 760) we present the basic single-objective Evolution Strategy algorithm as specied
by Beyer and Schwefel [302]. The algorithm can facilitate the two basic strategies (/, )
(Paragraph 28.1.4.3.6) and (/ + ) (Paragraph 28.1.4.3.7). These general strategies also
encompass (, ) (/1, ) and ( +) (/1 +) population treatment.
The algorithm starts with the creation of a population of random individuals in Line 3,
maybe by using a procedure similar to the Java code given in Listing 56.24. In each
generation, rst a genotype-phenotype mapping may be performed (Line 6) and then the
objective function is evaluated in .
In every generation (except the rst one with t = 1), there are individuals in the
population pop. We therefore have to select from them into the mating pool mate. The
way in which this selection is performed depends on the type of the Evolution Strategy.
In the (/, ), only the individuals of generation t in pop(t) are considered (Line 13). If
the Evolution Strategy is a (/ +) strategy, then also the previously selected individuals
30.2. ALGORITHM 361
Algorithm 30.1: X generalES(f, , , )
Input: f: the objective/tness function
Input: : the mating pool size
Input: : the number of osprings
Input: : the number of parents
Input: [implicit] strategy: the population strategy, either (/, ) or (/ +)
Data: t: the generation counter
Data: pop: the population
Data: mate: the mating pool
Data: P: a set of parents pool for a single ospring
Data: p
n
: a single ospring
Data: g
, w
: temporary variables
Data: continue: a Boolean variable used for termination detection
Output: X: the set of the best elements found
1 begin
2 t 1
3 pop(t = 1) createPop()
4 continue true
5 while continue do
6 pop(t) performGPM(pop(t) , gpm)
7 pop(t) computeObjectives(pop(t) , f)
8 if terminationCriterion
__
then
9 continue false
10 else
11 if t > 1 then
12 if strategy = (/, ) then
13 mate(t) truncationSelection
w
(pop(t) , f, )
14 else
15 mate(t) truncationSelection
w
(pop(t) mate(t 1) , f, )
16 else
17 mate(t) pop(t)
18 pop(t + 1)
19 for i 1 up to do
20 P selection
w
(mate(t) , f, )
21 p
n
22 g
recombine
G
(p.g p P)
23 w
recombine
W
(p.w p P)
24 p
n
.w mutate
W
(w
)
25 p
n
.g mutate
G
(g
, p
n
.w)
26 pop(t + 1) addItem(pop(t + 1) , p
n
)
27 t t + 1
28 return extractPhenotypes(extractBest(pop(t) pop(t 1) . . . , f))
362 30 EVOLUTION STRATEGIES
from mate(t 1) can be selected. In any way, the selection method chosen for this usually
is truncation selection without replacement, i. e., each candidate solution can be selected at
most once.
After the mating pool mate has been lled, the new individuals can be built. In a
(/
+
,
) strategy, there are parents for each ospring. For each of the ospring p
n
to
be constructed, we therefore rst select parents into a parent pool P in Line 20. This
selection is usually a uniform random process which does not consider the objective values.
Furthermore, again a selection method without replacement is generally used.
The genotype p
n
.g of the ospring p
n
is then created by recombining the genotypes
of all of the parents with an operator recombine (Line 22). This genotype, a vector,
may, for instance, be the arithmetic mean of all parent genotype vectors. The endogenous
information p
n
.w W to be stored in p
n
is created in a similar fashion with the operator
recombine in Line 22. p
n
.w could be the covariance matrix of all parent genotype vectors.
In the next step Line 24, this information is modied, i. e., mutated. This mutated
information record is then used to mutate the newly created genotype in Line 25 with
the operator mutate. Here, a random number normally distributed according to the
covariance stored in p
n
.w could be added to p.gn, for example. The order of rst mutating
the information record and then the genotype is important for the selection round in the
following generation since we want information records which create good individuals to be
selected. However, if the information was mutated after the genotype was created, it would
not be clear whether its features are still good after mutation, it might have become bad.
Finally, the new individual can be added to the next population popt+1 in Line 26 and a
new generation can begin. The algorithm should, during all the iterations, keep track of the
best candidate solutions found so far. In single-objective optimization, most often a single
result will be returned, but even then, a whole set X of equally good candidate solutions
may be discovered. The optimizer can maintain such a set during the generations by using
an archive and pruning techniques. For the sake of simplicity, we sketched that the best
solutions found in all populations over all generations would be returned in Line 28 which
symbolizes such bookkeeping. Of course, no one would implement it like this in reality, but
in order to keep the algorithm denition a bit smaller and to not have too many variables,
we chose this notation.
30.3 Recombination
The standard recombination operators in Evolution Strategy basically resemble generaliza-
tions of uniform crossover and average crossover to 1 parents for (/
+
,
) strategies.
If > 2, we speak of multi-recombination.
30.3.1 Dominant Recombination
Dominant (discrete) recombination, as specied in Algorithm 30.2 and implemented in List-
ing 56.32 on page 798, is a generalization of uniform crossover (see Section 29.3.4.4 on
page 337) to parents. Like in uniform crossover, for the i
th
locus in the child chro-
mosome g
, we randomly pick an allele from the same locus from any of the parents
g
p,1
, g
p,2
, . . . , g
p,
.
30.3.2 Intermediate Recombination
The intermediate recombination operator can be considered to be an extension of average
crossover (discussed in Section 29.3.4.5 on page 337) to parents. Here, the value of the i
th
gene of the ospring g
recombineDiscrete(P)
Input: P: the list of parent individuals, len(P) =
Data: i: a counter variable
Data: p: a parent individual
Output: g
[i] p.g[i]
5 return g
Algorithm 30.3: g
recombineIntermediate(P)
Input: P: the list of parent individuals, len(P) =
Data: i, j: counter variables
Data: s: the sum of the values
Data: p: a parent individual
Output: g
[i]
s
n
8 return g
,
2
_
, or we add a
normal distribution with mean 0 to the genotype, i. e., do g
+ randomNorm
_
0,
2
_
. For a
multi-dimensional case, where the genotypes are vectors g
R
n
, the procedure is exactly
the same.
30.4. MUTATION 365
For the parameter of the normal distribution, however, things are a little bit more
complicated. Usually, this value is usually stored as endogenous strategy parameter and
adapted over time.
Basically, there exist three simple methods for dening the second parameter of the
normal distribution(s) for mutation. They are illustrated exemplarily in Figure 30.1. In this
gure, we assume that the new genotype g
R
n
with a normal distribution is given in Algo-
Algorithm 30.4: g mutate
G,
(g
, w = )
Input: g
R
n
: the input vector
Input: R: the standard deviation of the mutation
Data: i: a counter variable
Output: g R
n
: the mutated version of g
1 begin
2 for i 0 up to n 1 do
3 g[i] g
[i] +randomNorm(0, 1)
// Line 3 g[i] randomNorm
_
g
[i],
2
_
4 return g
rithm 30.4 and implemented in Listing 56.25 on page 786. Here, the endogenous information
is a scalar number w = . For each dimension i 0..n 1, a random value normally dis-
tributed with N
_
,
2
_
is drawn and added to g
[i].
As illustrated in part (B) of Figure 30.1, this operation creates an unbiased distribution
of possible genotypes g. The mutants are symmetrically distributed around g
. The dis-
tribution is isotropic, i. e., the surfaces of constant density form concentric spheres around
g
.
The advantage of this mutation operator is that it only needs a single, scalar endogenous
parameter, w = . The drawback is that the resulting genotype distribution is always
isotropic and cannot reect dierent scales along the axes. In Example E28.11 on page 271
we pointed out that the inuence of the genes of a genotype on the objective values, i. e.,
the inuence of the dimensions of the search space, may dier largely. Furthermore, it may
even change depending on which area of the search space is currently investigated by the
optimization process.
Figure 30.1 is the result of an experiment where we illustrate the distribution of a sampled
point cloud. For the normal distribution in part (B), we chose a standard deviation which
equals the mean of the standard deviations along both axes G
0
and G
1
.
30.4.1.2 n Univariate Normal Distributions
By using n dierent standard deviations, i. e., a vector , we can scale the cloud of points
along the axes of the coordinate system as can be seen in part (C) of Figure 30.1. Algo-
rithm 30.5 illustrates how this can be done and Listing 56.25 on page 786 again provides a
366 30 EVOLUTION STRATEGIES
Algorithm 30.5: g mutate
G,
(g
, w = )
Input: g
R
n
: the input vector
Input: R
n
: the standard deviation of the mutation
Data: i: a counter variable
Output: g R
n
: the mutated version of g
1 begin
2 for i 0 up to n 1 do
3 g[i] g
[i] +[i]randomNorm(0, 1)
// Line 3 g[i] randomNorm
_
g
[i], [i]
2
_
4 return g
suitable implementation of the idea. Instead of sampling all dimensions from the same nor-
mal distribution N
_
0,
2
_
, we now use n distinct univariate normal distributions N(0, [i])
with i 0..n1. For Figure 30.1 part (C), we sampled points with the standard deviations
of the parent points along the axes.
The endogenous parameter w = now has n dimensions as well. Even though the
problem of axis scale has been resolved, we still cannot sample an arbitrarily rotated cloud
of points the main axes of the iso-density ellipsoids of the distribution are still always
parallel to the main axes of the coordinate system.
30.4.1.3 n-dimensional Multivariate Normal Distribution
Algorithm 30.6 shows how to mutate vectors sespel
, w = M)
Input: g
R
n
: the input vector
Input: M R
nn
: an (orthogonal) rotation matrix
Data: i, j: a counter variable
Data: t: a temporary vector
Output: g R
n
: the mutated version of g
1 begin
2 for i 0 up to n 1 do
3 t[i] randomNorm(0, 1)
4 g g
// g g +Mt
5 for i 0 up to n 1 do
6 for j 0 up to n 1 do
7 g[i] g[i] +M[i, j] t[j]
8 return g
follow normally distributions with rotated iso-density ellipsoids. With a ma-
trix M we scale and rotate standard-normal distributed random vectors t =
(randomNorm(0, 1) , randomNorm(0, 1) , . . . , randomNorm(0, 1))
T
. The result of the mul-
tiplication Mt is then shifted by g
.
We are thus able to, for instance, sample points similar distributions than the selected
parents as sketched in Figure 30.1, part (D). The advantage of this sampling method is
imminent: we can create points which are similarly distributed than a selected cloud of
parents and thus better represent the information gathered so far.
30.5. PARAMETER ADAPTATION 367
There are also three disadvantages: (a) First, the size of the endogenous Parameter w
increases to
n(n+1)
2
if G R
n
: the main diagonal of M has n elements. The matrix elements
above and below the diagonal are the same and thus, need to be stored only once. (b) The
second problem is that sampling now has a complexity of O
_
n
2
_
, as can easily be seen in
Algorithm 30.6. (c) Finally, obtaining M is another interesting question. As it turns out,
computing M has a higher complexity than using it for sampling. The matrix M can be
constructed from the covariance matrix C of the individuals selected for becoming parents
P. We therefore utilize Denition D53.41 on page 664, i. e., by applying Equation 30.1:
C[i, j] =
pP
_
p.g[i] p.g[i]
_ _
p.g[j] p.g[j]
_
[P[
(30.1)
We then can set, for example, the rotation and scaling matrix M to be the matrix of all
the normalized and scaled (n dimensional) Eigenvectors
i
(C) : i 1..n of the covariance
matrix C. These vectors are normalized by dividing them by their length, i. e., by [[
i
(C)[[
2
.
Then, they are scaled with the square roots of the corresponding Eigenvalues
i
(C). By
multiplying a vector of n independent standard normal distributions with the matrix of
normalized Eigenvectors, it is rotated to be aligned to the covariance matrix C. By scaling
the Eigenvectors with the square roots
_
i
(C) of the corresponding Eigenvalues, we stretch
the standard normal distributions from spheres to ellipsoids with the same shape as described
by the covariance matrix.
M =
_
_
i
(C)
[[
i
(C)[[
2
i
(C)
_
for i from 1 to n (30.2)
If C is a diagonal matrix, M[i, j] =
. The mutation
operators randomly picked points in the search space which are distributed around g
. The
distribution chosen for this purpose depends on endogenous strategy parameters such as ,
, and M.
One of the general, basic principles of metaheuristics is that the optimization process
should converge to areas of the search space which contain highly-t individuals. At the
beginning, the best a metaheuristic algorithm can do is to uniformly sample the search
space. The more information it acquires by evaluating the candidate solutions, the smaller
the interesting area should become.
From this perspective, it makes sense to initially sample a wide area around the inter-
mediate genotypes g
i=1
x
i
2
with G = X R
n
(30.3)
The isotropic mutation operator samples points in a sphere around the intermediate genotype
g
have a better objective value and all points with larger distance have a worse objective
value.
Both, P
S
and , depend on the value of . If is very small, the chance P
S
of sampling
a point g with a smaller norm [[g[[
2
than g
.g create
__
6 p
.x gpm(p
.g)
7 p
n
p
8 continue true
9 while continue do
10 p
n
.x gpm(p
n
.g)
11 if terminationCriterion
__
then
12 continue false
13 else
14 if f(p
n
.x) < f(p
.x) then
15 p
p
n
16 s s + 1
17 if (t mod L) = 0 then
18 P
S
s
L
19 if P
S
< 0.2 then a
20 else if P
S
> 0.2 then /a
21 s 0
22 p
n
.g mutate
G,
(p
.g, )
23 t t + 1
24 return p
.x
370 30 EVOLUTION STRATEGIES
other hand, the fraction of accepted mutations falls below 0.2, the step size is too large and
must be reduced.
In Algorithm 30.7 we present a (1 + 1)-Evolution Strategy (1+1)-ES which implements
the
1
/5th Rule. The algorithm estimates the success probability P
S
every L generations. If it
falls below 0.2, i. e., if the mutation steps are too long, the mutation strength is multiplied
with a factor a (0, 1), i. e., reduced. If the mutations are too weak and P
S
> 0.2, the
reverse operation is performed and the mutation strength is divided by a.
Beyer and Schwefel [302] propose that if the dimension n of the search space G R
n
is
suciently large (n 30), setting L = n would be a good choice. Schwefel [2435] suggests
to keep a in 0.85 < a < 1 for good results.
30.5.2 Endogenous Parameters
In the introductory Section 30.1 as well as in the beginning of this section, we stated that the
some of the control parameters of Evolution Strategies, such as the mutation strength, are
endogenous. So far, we gave little evidence why this is actually is the case, what implications
this design has, and what it is actually good for. If we look back at the
1
/5th rule, we nd
three drawbacks.
1. First, it only covers one special case. It is suitable for (1+1)-Evolution Strategies and
requires a certain level of causality in the search space. If the tness landscape is too
rugged (see Chapter 14 on page 161), this adaptation mechanism may be misled by
the information gained from sampling.
2. Second, it adapts only one single strategy parameter and thus cannot support
more sophisticated mutation operators such as those discussed in Section 30.4.1.2 and
30.4.1.3.
3. Finally, the adapted parameter holds for the complete population. It does not allow the
optimization algorithm to trace down dierent local or global optima with potentially
dierent topology. (Which is not possible with a (1+1)-ES anyway, but could be done
with an extension of the rule to ( +)-Evolution Strategies.)
In order to nd a more general way to perform self-adaptation, the control parameters are
considered to be endogenous information of each individual in the population. This step
leads to three decisive changes in the adaptation process:
1. Instead of a global parameter set, the parameters are now local,
2. undergo selection together with the individuals owning them, and
3. are processed by reproduction operations.
As can be seen in the basic Evolution Strategy algorithm given in Algorithm 30.1 on page 361,
the endogenous strategy parameters p.w are responsible for the nal individual creation step
(mutation). They are part of the individual p whose genotype p.g they helped building. If
the genotype p.g has a corresponding phenotype p.x = gpm(p.g) with a good objective
value f(p.x), it has a high chance of surviving the selection step. In this case, it will take
the endogenous parameters p.w which lead to its creation with it. On the other hand, if p.x
has bad characteristics, it will perish and doom its genotype p.g and the control parameters
p.w to peril as well. Mutation steps which were involved into the successful production of
good ospring will thus be selected and may lead to the creation of more good candidate
solutions.
30.5.2.1 Recombining the Mutation Strength (Vectors)
Beyer and Schwefel [302] state that mutating the strategy parameters can lead to uctuations
which slow down the optimization process. The similarity-preserving eect of intermediate
recombination (see Section 30.3.2 on page 362 and Section 29.5.6 on page 346) can work
against this phenomenon, especially if many parents are used. For recombining the mutation
strengths, Beyer and Schwefel [302] hence propose to use Algorithm 30.3 on page 363 as well.
30.5. PARAMETER ADAPTATION 371
30.5.2.2 Mutating the Mutation Strength
The mutation of the single strategy parameter , the mutation strength, can be achieved
by multiplying it a positive number . If 0 < < 1, the strength decreases and if 1 < , the
mutation will become more volatile. The interesting question is how to create this number.
Rechenbergs Two-Point Rule [2279] sets = with 50% probability and to
1
otherwise.
> 1 is a xed exogenous strategy parameter. We can then dene the operation mutate
W,
(for the recombined mutation strength
) =
_
otherwise
(30.8)
= 1 + (30.9)
According to Beyer [297], nearly optimal behavior of the Evolution Strategy can be achieved
if is set according to Equation 30.9. The meaning of will be discussed below and values
for it will be given in Equation 30.11. The interesting thing about Equation 30.8 is that it
creates an extremely limited neighborhood of -values if we extend the concept of adjacency
from Denition D4.10 on page 85 to the space of endogenous information W. Matter of fact,
only the values
0
i
: i Z can be reached at all if the mutation strength is initialized
with
0
. Only the direct predecessor and successor of an element in this series can be found
in one step by mutation.
The = 0 adjacency for the strategy parameter can be extended to the whole R
+
by
setting the multiplication parameter to e raised to the power of a normally distributed
number. Since all real numbers are = 0-adjacent under a normal distribution, all values
in R
+
0 are adjacent under e
N(0,1)
.
mutate
W,
(
) =
e
randomNorm(0,1)
(30.10)
1
N
(30.11)
The exogenous parameter is used to scale the standard deviation of the random numbers.
Beyer and Schwefel [302] that it should be to = 1/
2n can be used.
30.5.2.3 Mutating the Strength Vector
Algorithm 30.8 presents a way to mutate vectors
Input:
R
n
: the old mutation strength vector
Data: i: a counter variable
Output: R
n
: the new mutation strength vector
1 begin
2 e
0
randomNorm(0,1)
3 0
4 for i 0 up to n 1 do
5 [i] e
randomNorm(0,1)
[i]
6 return
strengths.
0
=
c
2n
(30.12)
=
c
_
2
n
(30.13)
For R
n
, the settings in Equation 30.12 and Equation 30.13 are recommended by Beyer
and Schwefel [302]. For a (10, 100)-Evolution Strategy, Schwefel [2437] further suggests to
use c = 1.
30.6. GENERAL INFORMATION ON EVOLUTION STRATEGIES 373
30.6 General Information on Evolution Strategies
30.6.1 Applications and Examples
Table 30.1: Applications and Examples of Evolution Strategies.
Area References
Chemistry [1573]
Combinatorial Problems [292, 299, 1617, 2604]
Computer Graphics [3087]
Digital Technology [3042]
Distributed Algorithms and Sys-
tems
[2683]
Engineering [303, 778, 1135, 1586, 1881, 1894, 2163, 2232, 2266, 2279,
2433, 2434, 2683, 2936, 2937, 2959, 3042, 3087]
Function Optimization [169, 3087]
Graph Theory [2683]
Logistics [292, 299, 1586, 1617, 2279]
Mathematics [227, 302, 520, 778, 1182, 1183, 1186, 1187, 1436, 2279]
Prediction [1044]
Software [2279]
30.6.2 Books
1. Handbook of Evolutionary Computation [171]
2. Genetic Algorithms and Evolution Strategy in Engineering and Computer Science: Recent
Advances and Industrial Applications [2163]
3. Self-Adaptive Heuristics for Evolutionary Computation [1617]
4. Evolutionsstrategie: Optimierung technischer Systeme nach Prinzipien der biologischen Evo-
lution [2278]
5. Evolutionsstrategie 94 [2279]
6. Evolution and Optimum Seeking [2437]
7. Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Pro-
gramming, Genetic Algorithms [167]
8. The Theory of Evolution Strategies [300]
9. Cybernetic Solution Path of an Experimental Problem [2277]
10. Numerical Optimization of Computer Models [2436]
30.6.3 Conferences and Workshops
Table 30.2: Conferences and Workshops on Evolution Strategies.
GECCO: Genetic and Evolutionary Computation Conference
See Table 28.5 on page 317.
CEC: IEEE Conference on Evolutionary Computation
See Table 28.5 on page 317.
EvoWorkshops: Real-World Applications of Evolutionary Computing
374 30 EVOLUTION STRATEGIES
See Table 28.5 on page 318.
PPSN: Conference on Parallel Problem Solving from Nature
See Table 28.5 on page 318.
WCCI: IEEE World Congress on Computational Intelligence
See Table 28.5 on page 318.
EMO: International Conference on Evolutionary Multi-Criterion Optimization
See Table 28.5 on page 319.
AE/EA: Articial Evolution
See Table 28.5 on page 319.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
See Table 28.5 on page 319.
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
ICNC: International Conference on Advances in Natural Computation
See Table 28.5 on page 319.
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
See Table 28.5 on page 320.
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
EUROGEN: Evolutionary Methods for Design Optimization and Control
See Table 29.2 on page 354.
FEA: International Workshop on Frontiers in Evolutionary Algorithms
See Table 28.5 on page 320.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
See Table 28.5 on page 320.
CIS: International Conference on Computational Intelligence and Security
See Table 28.5 on page 320.
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
30.6. GENERAL INFORMATION ON EVOLUTION STRATEGIES 375
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
See Table 28.5 on page 321.
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
See Table 28.5 on page 321.
GEM: International Conference on Genetic and Evolutionary Methods
See Table 28.5 on page 321.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
See Table 28.5 on page 321.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
See Table 28.5 on page 321.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
EvoNUM: European Event on Bio-Inspired Algorithms for Continuous Parameter Optimisation
See Table 28.5 on page 321.
FOCI: IEEE Symposium on Foundations of Computational Intelligence
See Table 28.5 on page 321.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
IJCCI: International Conference on Computational Intelligence
See Table 28.5 on page 321.
IWNICA: International Workshop on Nature Inspired Computation and Applications
See Table 28.5 on page 321.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NaBIC: World Congress on Nature and Biologically Inspired Computing
See Table 28.5 on page 322.
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
See Table 28.5 on page 322.
EvoRobots: International Symposium on Evolutionary Robotics
376 30 EVOLUTION STRATEGIES
See Table 28.5 on page 322.
ICEC: International Conference on Evolutionary Computation
See Table 28.5 on page 322.
IWACI: International Workshop on Advanced Computational Intelligence
See Table 28.5 on page 322.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
See Table 28.5 on page 322.
SSCI: IEEE Symposium Series on Computational Intelligence
See Table 28.5 on page 322.
30.6.4 Journals
1. IEEE Transactions on Evolutionary Computation (IEEE-EC) published by IEEE Computer
Society
2. Genetic Programming and Evolvable Machines published by Kluwer Academic Publishers and
Springer Netherlands
30.6. GENERAL INFORMATION ON EVOLUTION STRATEGIES 377
Tasks T30
85. Implement the simple Evolution Strategy Algorithm 30.7 on page 369 in a program-
ming language of your choice.
[40 points]
86. How does the parameter adaptation method in Algorithm 30.7 on page 369 dier from
the method applied in Algorithm 30.1 on page 361? What is the general dierence be-
tween endogenous and exogenous parameters and the underlying ideas of adaptation?
[10 points]
87. How do the parameters , , and of an Evolution Strategy relate to the population
size ps and the mating pool size mps used in general Evolutionary Algorithms? You
may use Section 28.1.4 on page 265 as a reference.
[10 points]
88. How does the n-ary domination recombination algorithm in Evolution Strategies
(see Section 30.3.1 on page 362) relate to the uniform crossover operator (see Sec-
tion 29.3.4.4 on page 337) in Genetic Algorithms? What are the similarities? What
are the dierences?
[10 points]
89. Perform the same experiments as in Task 67 on page 238 (and 70 and Task 81 on
page 357) with a Evolution Strategy using the Random Keys encoding given in Sec-
tion 29.7 on page 349. In Section 57.1.2.1 on page 887, you can nd the necessary
code for that. How does the Evolution Strategy perform in comparison with the other
algorithms and previous experimental results? What conclusions can we draw about
the utility of the Random Keys genotype-phenotype mapping?
[10 points]
90. Apply an Evolution Strategy using the Random Keys encoding given in Section 29.7
on page 349 to the Traveling Salesman Problem instance att48 taken from [2288] and
listed in Paragraph 57.1.2.2.1.
As already discussed in Example E2.2 on page 45, a solution to an n-city Traveling
Salesman Problem can be represented by a permutation of length n 1. Such per-
mutations can be created and optimized in a way very similar to what we already did
with the bin packing problem a few times. Only the objective function needs to be
re-dened. Additionally to the Evolution Strategy, also apply a simple Hill Climber
to the same problem, using a method similar to what we did in Task 67 on page 238
and a representation according to Section 29.3.1.2 on page 329.
How does the Evolution Strategy perform in comparison with the Hill Climber on
this problem? What conclusions can we draw about the utility of the Random Keys
genotype-phenotype mapping? How close do the algorithms come to the optimal,
shortest path for this problem which has the length 10 628?
[50 points]
Chapter 31
Genetic Programming
31.1 Introduction
The term Genetic Programming
1
(GP) [1220, 1602, 2199] has two possible mean-
ings. (a) First, it is often used to subsume all Evolutionary Algorithms that have tree data
structures as genotypes. (b) Second, it can also be dened as the set of all Evolutionary
Algorithms that breed programs, algorithms, and similar constructs. In this chapter, we
focus on the latter denition which still includes discussing tree-shaped genomes.
Process
(runningProgram)
output input
samplesareknown
tobefoundwithgeneticprogramming
Figure 31.1: Genetic Programming in the context of the IPO model.
The well-known input-processing-output model from computer science states that a run-
ning instance of a program uses its input information to compute and return output data.
In Genetic Programming, usually some inputs and corresponding output data samples are
known, can be produced, or simulated. The goal then is to nd a program that connects
them or that exhibits some kind of desired behavior according to the specied situations, as
sketched in Figure 31.1.
31.1.1 History
The history of Genetic Programming [102] goes back to the early days of computer science
as sketched in Figure 31.2. In 1957, Friedberg [995] left the rst footprints in this area by
using a learning algorithm to stepwise improve a program. The program was represented as
a sequence of instructions for a theoretical computer called Herman [995, 996]. Friedberg
did not use an evolutionary, population-based approach for searching the programs the
idea of Evolutionary Computation had not been developed yet at that time, as you can see
1
http://en.wikipedia.org/wiki/Genetic_programming [accessed 2007-07-03]
380 31 GENETIC PROGRAMMING
FirstSteps
(Friedberg,1958;Samuel1959)
Tree-based
(Forsyth,1981)
StandardGP
(Koza,1988)
Strongly-typedGP
(Montana,1993)
LinearGP
(Nordin,1994)
Grammars
(Antonisse,1990) TAG3P
(Nguyen,2004)
RBGP
(Weise,2007)
PDGP
(Poli,1996)
CartesianGP
(Miller/Thomson,1998)
EvolutionaryProgramming
(Fogeletal.,1966)
GrammaticalEvolution
(Ryanetal.,1995)
GADS1/2
(Paterson/Livesey,1995)
LOGENPRO
(Wong/Leung,1995)
1960 1980 1990
1995
2000
2005
1970 1985
(Brameier/Banzhaf,2001)
String-to-TreeMappings
(Cramer,1985)
GeneExpressionProgramming
(Ferreira,2001)
Figure 31.2: Some important works on Genetic Programming illustrated on a time line.
in Section 29.1.1 on page 325. Also, the computational capacity of the computers of that era
was very limited and would not have allowed for experiments an program synthesis driven
by a (population-based) Evolutionary Algorithm.
Around the same time, Samuel applied machine learning to the game of checkers and, by
doing so, created the worlds rst self-learning program. In the future development section
of his 1959 paper [2383], he suggested that eort could be spent into allowing the (checkers)
program to learn scoring polynomials an activity which would be similar to symbolic
regression. Yet, in his 1967 follow-up work [2385], he could not report any progress in this
issue.
The Evolutionary Programming approach for evolving Finite State Machine by Fogel
et al. [945] (see also Chapter 32 on page 413) dates back to 1966. In order to build predictors,
dierent forms of mutation (but no crossover) were used for creating ospring from successful
individuals.
Fourteen years later, the next generation of scientists began to look for ways to evolve
programs. New results were reported by Smith [2536] in his PhD thesis in 1980. Forsyth
[972] evolved trees denoting fully bracketed Boolean expressions for classication problems
in 1981 [972, 973, 975].
The mid-1980s were a very productive period for the development of Genetic Program-
ming. Cramer [652] applied a Genetic Algorithm in order to evolve a program written in
a subset of the programming language PL in 1985. This GA used a string of integers as
genome and employed a genotype-phenotype mapping that recursively transformed them
into program trees. We discuss this approach in ?? on page ??.
At the same time, the undergraduate student Schmidhuber [2420] also used a Genetic Al-
gorithm to evolve programs at the Siemens AG. He re-implemented his approach in Prolog
at the TU Munich in 1987 [790, 2420]. Hicklin [1230] and Fujuki [999] implemented re-
production operations for manipulating the if-then clauses of LISP programs consisting of
single COND-statements. With this approach, Fujiko and Dickinson [998] evolved strategies
for playing the iterated prisoners dilemma game. Bickel and Bickel [309] evolved sets of
rules which were represented as trees using tree-based mutation crossover operators.
Genetic Programming became fully accepted at the end of this productive decade mainly
because of the work of Koza [1590, 1591]. Koza studied many benchmark applications of
Genetic Programming, such as learning of Boolean functions [1592, 1596], the Articial Ant
31.1. INTRODUCTION 381
problem (as discussed in ?? on page ??) [1594, 1595, 1602], and symbolic regression [1596,
1602], a method for obtaining mathematical expressions that match given data samples
(see Section 49.1 on page 531). Koza formalized (and patented [1590, 1598]) the idea of
employing genomes purely based on tree data structures rather than string chromosomes as
used in Genetic Algorithms. We will discuss this form of Genetic Programming in-depth in
Section 31.3.
In the rst half of the 1990s, researchers such as Banzhaf [205], Perkis [2164], Openshaw
and Turton [2085, 2086], and Crepeau [653], on the other hand, began to evolve programs in
a linear shape. Similar to programs written in machine code, string genomes used in linear
Genetic Programming (LGP) consist of single, simple commands. Each gene identies an
instruction and its parameters. Linear Genetic Programming is discussed in Section 31.4.
Also in the rst half of the 1990s, Genetic Programming systems which are driven by a
given grammar were developed. Here, the candidate solutions are sentences in a language
dened by, for example, an EBNF. Antonisse [113], Stefanski [2605], Roston [2336], and
Mizoguchi et al. [1920] we the rst ones to delve into grammar-guided Genetic Programming
(GGGP, G3P) which is outlined in Section 31.5.
382 31 GENETIC PROGRAMMING
31.2 General Information on Genetic Programming
31.2.1 Applications and Examples
Table 31.1: Applications and Examples of Genetic Programming.
Area References
Art [1234, 1449, 1453, 2746]
Chemistry [487, 798, 799, 958, 1684, 1685, 1909, 27292731, 2889, 3007,
3009]; see also Table 31.3
Combinatorial Problems [2338]
Computer Graphics [97, 581, 1195, 1591, 1596, 1726, 2646]; see also Table 31.3
Control [2541, 2566]; see also Tables 31.3 and 31.4
Cooperation and Teamwork [98, 1215, 1317, 1320, 1789, 1805, 2239, 2502]
Data Compression [336]; see also Table 31.3
Data Mining [76, 99, 350, 351, 481, 972, 973, 993, 994, 1021, 1022, 1422,
1593, 1597, 1721, 1726, 1867, 1985, 2109, 2513, 2728, 2819,
2854, 2855, 2996, 3080]; see also Tables 31.3 and 31.4
Databases [993, 2514, 2904]
Decision Making [2728]
Digital Technology [336, 337, 455, 581, 704, 869, 870, 1478, 1591, 1592, 1600,
1602, 1665, 1787, 2560, 2954]; see also Tables 31.3, 31.4, and
31.5
Distributed Algorithms and Sys-
tems
[52, 76, 150, 543, 614, 615, 658, 798, 799, 1120, 1215, 1317,
1320, 1401, 1456, 1542, 1785, 1805, 1909, 2239, 2338, 2377,
2500, 2501, 27292731, 2904, 2905, 3007, 3009]; see also Ta-
ble 31.3
Economics and Finances [455, 846, 1021, 1022, 1721, 1805, 2728, 2854]; see also Ta-
ble 31.4
Engineering [52, 98, 271, 303, 337, 455, 581, 704, 869, 1120, 1195, 1234,
1317, 1320, 1456, 1478, 1542, 1591, 1592, 1600, 1602, 1607,
1608, 16131615, 1665, 1769, 1785, 1787, 1894, 1909, 1932,
2090, 2500, 2501, 2513, 2514, 2560, 2566, 2567, 2729, 2731,
2954, 3007]; see also Tables 31.3, 31.4, and 31.5
Games [998, 2328]
Graph Theory [52, 76, 1120, 1216, 1401, 1456, 1542, 1615, 1769, 1785, 1909,
2338, 25002502, 2729, 2731]; see also Table 31.3
Healthcare [350, 351]; see also Table 31.3
Mathematics [149, 455, 542, 581, 652, 846, 869, 924, 998, 1157, 1456, 1514,
1596, 1602, 1658, 1674, 1772, 1787, 1855, 1856, 1932, 2251,
2377, 2532, 2997]; see also Tables 31.3, 31.4, and 31.5
Multi-Agent Systems [98, 269, 270, 1317, 1320, 1789, 1805, 2239, 2240]
Multiplayer Games [98, 581]
Physics [487, 2568]
Prediction [351, 1021, 1721, 2728]; see also Table 31.3
Security [76, 658, 1785, 2090, 2513, 2514]; see also Table 31.3
Software [652, 704, 772, 790, 972, 998, 999, 1120, 1230, 1401, 1423,
1591, 1623, 1665, 2681, 2682, 2897, 2970]; see also Tables
31.3 and 31.4
31.2. GENERAL INFORMATION ON GENETIC PROGRAMMING 383
Sorting [1610]; see also Table 31.5
Testing see Table 31.3
Wireless Communication [1615, 1769, 2502]; see also Table 31.3
31.2.2 Books
1. Advances in Genetic Programming II [106]
2. Handbook of Evolutionary Computation [171]
3. Advances in Genetic Programming [2569]
4. Genetic Algorithms and Genetic Programming at Stanford [1601]
5. Genetic Programming IV: Routine Human-Competitive Machine Intelligence [1615]
6. Dynamic, Genetic, and Chaotic Programming: The Sixth-Generation [2559]
7. Genetic Programming: An Introduction On the Automatic Evolution of Computer Pro-
grams and Its Applications [209]
8. Design by Evolution: Advances in Evolutionary Design [1234]
9. Linear Genetic Programming [394]
10. A Field Guide to Genetic Programming [2199]
11. Representations for Genetic and Evolutionary Algorithms [2338]
12. Automatic Quantum Computer Programming A Genetic Programming Approach [2568]
13. Data Mining and Knowledge Discovery with Evolutionary Algorithms [994]
14. Evolution are Algorithmen [2879]
15. Foundations of Genetic Programming [1673]
16. Genetic Programming II: Automatic Discovery of Reusable Programs [1599]
31.2.3 Conferences and Workshops
Table 31.2: Conferences and Workshops on Genetic Programming.
GECCO: Genetic and Evolutionary Computation Conference
See Table 28.5 on page 317.
CEC: IEEE Conference on Evolutionary Computation
See Table 28.5 on page 317.
EvoWorkshops: Real-World Applications of Evolutionary Computing
See Table 28.5 on page 318.
EuroGP: European Workshop on Genetic Programming
History: 2011/04: Torino, Italy, see [2492]
2010/04: Istanbul, Turkey, see [886]
2009/04: T ubingen, Germany, see [2787]
2008/03: Naples, Italy, see [2080]
2007/04: Val`encia, Spain, see [856]
2006/04: Budapest, Hungary, see [607]
2005/03: Lausanne, Switzerland, see [1518]
2004/04: Coimbra, Portugal, see [1517]
2003/04: Colchester, Essex, UK, see [2360]
2002/04: Kinsale, Ireland, see [977]
2001/04: Lake Como, Milan, Italy, see [1903]
384 31 GENETIC PROGRAMMING
2000/04: Edinburgh, Scotland, UK, see [2198]
1999/05: G oteborg, Sweden, see [2196]
1998/04: Paris, France, see [210, 2195]
PPSN: Conference on Parallel Problem Solving from Nature
See Table 28.5 on page 318.
WCCI: IEEE World Congress on Computational Intelligence
See Table 28.5 on page 318.
EMO: International Conference on Evolutionary Multi-Criterion Optimization
See Table 28.5 on page 319.
GP: Annual Conference of Genetic Programming
History: 1998/06: Madison, WI, USA, see [1605, 1612]
1997/07: Stanford, CA, USA, see [1604, 1611]
1996/07: Stanford, CA, USA, see [1603, 1609]
AE/EA: Articial Evolution
See Table 28.5 on page 319.
GPTP: Genetic Programming Theory and Practice
History: 2011/05: Ann Arbor, MI, USA, see [2753]
2010/05: Ann Arbor, MI, USA, see [2310]
2009/05: Ann Arbor, MI, USA, see [2309]
2008/05: Ann Arbor, MI, USA, see [2308]
2007/05: Ann Arbor, MI, USA, see [2575]
2006/05: Ann Arbor, MI, USA, see [2307]
2004/05: Ann Arbor, MI, USA, see [2089]
2003/05: Ann Arbor, MI, USA, see [2306]
1995/07: Tahoe City, CA, USA, see [2326]
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
See Table 28.5 on page 319.
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
ICNC: International Conference on Advances in Natural Computation
See Table 28.5 on page 319.
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
See Table 28.5 on page 320.
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
FEA: International Workshop on Frontiers in Evolutionary Algorithms
See Table 28.5 on page 320.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
31.2. GENERAL INFORMATION ON GENETIC PROGRAMMING 385
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
See Table 28.5 on page 320.
CIS: International Conference on Computational Intelligence and Security
See Table 28.5 on page 320.
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
See Table 28.5 on page 321.
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
See Table 28.5 on page 321.
GEM: International Conference on Genetic and Evolutionary Methods
See Table 28.5 on page 321.
GEWS: Grammatical Evolution Workshop
History: 2004/06: Seattle, WA, USA, see [2079]
2003/07: Chicago, IL, USA, see [2078]
2002/07: New York, NY, USA, see [2077]
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
See Table 28.5 on page 321.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
See Table 28.5 on page 321.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
386 31 GENETIC PROGRAMMING
EvoNUM: European Event on Bio-Inspired Algorithms for Continuous Parameter Optimisation
See Table 28.5 on page 321.
FOCI: IEEE Symposium on Foundations of Computational Intelligence
See Table 28.5 on page 321.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
IJCCI: International Conference on Computational Intelligence
See Table 28.5 on page 321.
IWNICA: International Workshop on Nature Inspired Computation and Applications
See Table 28.5 on page 321.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NaBIC: World Congress on Nature and Biologically Inspired Computing
See Table 28.5 on page 322.
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
See Table 28.5 on page 322.
EvoRobots: International Symposium on Evolutionary Robotics
See Table 28.5 on page 322.
ICEC: International Conference on Evolutionary Computation
See Table 28.5 on page 322.
IWACI: International Workshop on Advanced Computational Intelligence
See Table 28.5 on page 322.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
See Table 28.5 on page 322.
SSCI: IEEE Symposium Series on Computational Intelligence
See Table 28.5 on page 322.
31.2.4 Journals
1. IEEE Transactions on Evolutionary Computation (IEEE-EC) published by IEEE Computer
Society
2. Genetic Programming and Evolvable Machines published by Kluwer Academic Publishers and
Springer Netherlands
31.3 (Standard) Tree Genomes
31.3.1 Introduction
Tree-based Genetic Programming (TGP), usually referred to as Standard Genetic Program-
ming, SGP) is the most widespread Genetic Programming variant, both for historical reasons
and because of its eciency in many problem domains. Here, the genotypes are tree data
structures. Generally, a tree can represent a rule set [1867], a mathematical expression [1602],
a decision tree [1597], or even the blueprint of an electrical circuit [1608].
31.3. (STANDARD) TREE GENOMES 387
31.3.1.1 Function and Terminal Nodes
In tree-based Genetic Programming, there usually is a semantic distinction between inner
nodes and leaf nodes of the genotypes. In Standard Genetic Programming, every node is
characterized by a type i which denes how many child nodes it can have. We distinguish
between terminal and non-terminal nodes (or node types).
Denition D31.1 (Terminal Node Types). The set contains the node types i which
do not allow their instances t to have child nodes. The nodes t with typeOf (t) i i
are thus always leaf nodes.
typeOf (t) i i numChildren(t) = 0 (31.1)
Denition D31.2 (Non-Terminal Node Types). Each node type i from the set of non-
terminal (function) node types in a Genetic Programming system has a denite number k
N
1
of children (k > 1). The nodes t which belong to a non-terminal node type typeOf (t)
i i N thus are always inner nodes of a tree.
typeOf (t) i i (numChildren(t) = k) k > 0 (31.2)
In Section 56.3.1 on page 824, we provide simple Java implementations for basic tree node
classes (Listing 56.48)). In this implementation, each node belongs to a specic type (List-
ing 56.49. Such a node type does not only describe the number of children that its instance
nodes can have. In our example implementation, we go one step further and also dene
the possible types of children a node can have by specifying a type set (Listing 56.50) for
each possible child node location. We thus provide a fully-edged Strongly-Typed Genetic
Programming (STGP) Montana [1930, 1931, 1932] implementation.
Example E31.1 (GP of Mathematical Expressions: Symbolic Regression).
Trees also provide a very intuitive representation for mathematical functions. This method
a
b
e sin
x
x
3
0.5
+
*
e
sinx
+3 x
a
b
Figure 31.3: The formula e
sinx
+ 3
_
[x[ expressed as tree.
is called symbolic regression and is discussed in detail in Section 49.1 on page 531, but
it can serve here as a good example for the abilities of Genetic Programming. SGP has
initially been used by Koza to evolve them. Here, an inner node stands for a mathematical
operation and its child nodes are the parameters of the operation. Leaf nodes then are
terminal symbols like numbers or variables. With
1. a terminal set of = (x, e, R) where x is a variable, e is Eulers number, and R stands
for a random-valued constant and
2. a function set of N =
_
+, , , /, sin, cos, a
b
_
where a
b
means a to the power of b
388 31 GENETIC PROGRAMMING
we can already express and evolve a large number of mathematical formulas such as the
one given in Figure 31.3. In this gure, the root node is a + operation. Since trees natu-
rally comply with the inx
2
, this + would be the last operation which is evaluated when
computing the value of the formula. Before this nal step, rst the value of its left child
(e
sinx
) and then the value of the right child (3 [x[
0.5
) will be determined. Evaluating a
tree-encoded function requires a depth-rst traversal of the tree where the value of a node
can be computed after the values of all of its children have been calculated.
31.3.1.2 Similarity to High-Level Programming Languages
Trees are very (and deceptively) close to the natural structure of algorithms and programs.
The syntax of most of the high-level programming languages, for example, leads to a certain
hierarchy of modules and alternatives. Not only does this form normally constitute a tree
compilers even use tree representations internally.
AbstractSyntaxTreeRepresentation
Algorithm
1
2
3
4
5
6
7
8
List<IIndividual>createPop(s){
List<Individual>Xpop;
Xpop=newArrayList<IIndividual>(s);
for(inti=s;i>0;i--){
Xpop.add(create());
}
returnXpop;
}
Program
(SchematicJava,High-LevelLanguage)
Pop =createPop(s)
Input:sthesizeofthepopulationtobecreated
Data:iacountervariable
Output:Popthenew,randompopulation
1
2
3
whilei 0do > 4
5
6
returnPop 7
begin
end 8
Pop()
is
Pop appendList(Pop,create())
i i-1
Pop
() i
s
i 0
Pop
1 i
i
Pop create
appendList
ret
>
while
{block}
{block}
Figure 31.4: The AST representation of algorithms/programs.
When reading the source code of a program, compilers rst split it into tokens
3
. Then
2
http://en.wikipedia.org/wiki/Infix_notation [accessed 2010-08-21]
3
http://en.wikipedia.org/wiki/Lexical_analysis [accessed 2007-07-03]
31.3. (STANDARD) TREE GENOMES 389
they parse
4
these tokens. Finally, an abstract syntax tree
5
(AST) is created [1278, 1462].
The internal nodes of ASTs are labeled by operators and the leaf nodes contain the operands
of these operators. In principle, we can illustrate almost every
6
program or algorithm as such
an AST (see Figure 31.4). Tree-based Genetic Programming directly evolves individuals in
this form.
It should, however, be pointed out that Genetic Programming is not suitable to evolve
programs such as the one illustrated in Figure 31.4. As we will discuss in ??, programs in
representations which we know from our everyday life as students or programmers exhibit
too much epistasis. Synthesizing them is thus not possible with GP.
31.3.1.3 Structure and Human-Readability
Another interesting aspect of the tree genome is that it has no natural role model. While Ge-
netic Algorithms match their direct biological metaphor, the DNA, to some degree, Genetic
Programming introduces completely new characteristics and traits.
Genetic Programming is one of the few techniques that are able to learn structures
of potentially unbounded complexity. It can be considered as more general than Genetic
Algorithms because it makes fewer assumptions about the shape of the possible solutions.
Furthermore, it often oers white-box solutions that are human-interpretable. Many other
learning algorithms like articial neural networks, for example, usually generate black-box
outputs, which are highly complicated if not impossible to fully grasp [1853].
31.3.2 Creation: Nullary Reproduction
Before the evolutionary process in Standard Genetic Programming can begin, an initial
population composed of randomized individuals is needed. In Genetic Algorithms, a set
of random bit strings is created for this purpose. In Genetic Programming, random trees
instead of such one-dimensional sequences are constructed.
Normally, there is a maximum depth
d specied that the tree individuals are not allowed
to surpass. Then, the creation operation will return only trees where the path between the
root and the most distant leaf node is not longer than
d. There are three basic ways for
realizing the create
__
and createPop operations from for trees which can be distinguished
according to the depth of the produced individuals.
31.3.2.1 Full
The full method illustrated in Figure 31.5 creates trees where each (non-backtracking)
maximumdepth
Figure 31.5: Tree creation by the full method.
4
http://en.wikipedia.org/wiki/Parse_tree [accessed 2007-07-03]
5
http://en.wikipedia.org/wiki/Abstract_syntax_tree [accessed 2007-07-03]
6
Excluding such algorithms and programs that contain jumps (the infamous goto) that would produce
crossing lines in the owchart (http://en.wikipedia.org/wiki/Flowchart [accessed 2007-07-03]).
390 31 GENETIC PROGRAMMING
Algorithm 31.1: g createGPFull
_
d, N,
_
Input: N: the set of function types
Input: : the set terminal types
Input:
d: the maximum depth
Data: j: a counter variable
Data: i N : the selected tree node type
Output: g G: a new genotype
1 begin
2 if
d > 1 then
3 i N[randomUni[0, len(N))]
4 g instantiate(i)
5 for j 1 up to numChildren(i) do
6 g addChild
_
g, createGPFull
_
d 1, N,
__
7 else
8 i [randomUni[0, len())]
9 g instantiate(i)
10 return g
path from the root to the leaf nodes has exactly the length
d. Algorithm 31.1 illustrates
this process: For each node of a depth below
d, the type is chosen from the non-terminal
symbols (the functions N). A chain of function nodes is recursively constructed until the
maximum depth minus one. If we reach
d, of course, only leaf nodes (with types from )
can be attached.
31.3.2.2 Grow
The grow method depicted in Figure 31.6 and specied in Algorithm 31.2, also creates trees
maximumdepth
Figure 31.6: Tree creation by the grow method.
where each (non-backtracking) path from the root to the leaf nodes is not longer than
d but
may be shorter. This is achieved by deciding randomly for each node if it should be a leaf or
not when it is attached to the tree. Of course, to nodes of the depth
d 1, only leaf nodes
can be attached to.
31.3.2.3 Ramped Half-and-Half
Koza [1602] additionally introduced a mixture method called ramped half-and-half dened
here in Algorithm 31.3. For each tree to be created, this algorithm draws a number r
uniformly distributed between 2 and
d: (r = randomUni
_
2,
d + 1
_
). Now either full or
31.3. (STANDARD) TREE GENOMES 391
Algorithm 31.2: g createGPGrow
_
d, N,
_
Input: N: the set of function types
Input: : the set terminal types
Input:
d: the maximum depth
Data: j: a counter variable
Data: V = N : the joint list of function and terminal node types
Data: i V : the selected tree node type
Output: g: a new genotype
1 begin
2 if
d > 1 then
3 V N
4 i V [randomUni[0, len(V ))]
5 g instantiate(i)
6 for j 1 up to numChildren(i) do
7 g G addChild
_
g, createGPFull
_
d 1, N,
__
8 else
9 i [randomUni[0, len())]
10 g instantiate(i)
11 return g
Algorithm 31.3: g createGPRamped
_
d, N,
_
Input: N: the set of function types
Input: : the set terminal types
Input:
d: the maximum depth
Data: r: the maximum depth chosen for the genotype
Output: g G: a new genotype
1 begin
2 r
_
randomUni
_
2,
d + 1
__
3 if randomUni[0, 1) < 0.5 then return createGPGrow(r, N, )
4 else return createGPFull(r, N, )
392 31 GENETIC PROGRAMMING
grow is chosen to nally create a tree with the maximum depth r (in place of
d). This
method is often preferred since it produces an especially wide range of dierent tree depths
and shapes and thus provides a great initial diversity. The Ramped Half-and-Half algorithm
for Strongly-Typed Genetic Programming is implemented in Listing 56.42 on page 814.
31.3.3 Node Selection
In most of the reproduction operations for tree genomes, in mutation as well as in recom-
bination, certain nodes in the trees need to be selected. In order to apply mutation, for
instance, we rst need to nd the node which is to be altered. For recombination, we need
one node in each parent tree. These nodes are then exchanged. We introduce an operator
selectNode for choosing these nodes.
Denition D31.3 (Node Selection Operator). The operator t
c
= selectNode(t
r
)
chooses one node t
c
from the tree whose root is given by t
r
.
31.3.3.1 Uniform Selection
A good method for doing so could select all nodes t
c
in the tree t
c
with exactly the
Algorithm 31.4: t
c
selectNode
uni
(t
r
)
Input: t
r
: the (root of the) tree to select a node from
Data: b, d: two Boolean variables
Data: w: a value uniformly distributed in [0, nodeWeight(t
c
)]
Data: i: an index
Output: t
c
: the selected node
1 begin
2 b true
3 t
c
t
r
4 while b do
5 w randomUni[0, nodeWeight(t
c
))
6 if w nodeWeight(t
c
) 1 then
7 b false
8 else
9 i numChildren(t
c
) 1
10 while i 0 do
11 w w nodeWeight(t
c
.children[i])
12 if w < 0 then
13 t
c
t
c
.children[i]
14 i 1
15 else
16 i i 1
17 return t
c
same probability as done by the method selectNode
uni
given in Algorithm 31.4. There,
P (selectNode
uni
(t
r
) = t
c
) = P (selectNode
uni
(t
r
) = t
n
) for all nodes t
c
and t
n
in the tree
with root t
r
.
31.3. (STANDARD) TREE GENOMES 393
In order to achieve such behavior, we rst we dene the weight nodeWeight(t
n
) of a tree
node t
n
to be the total number of nodes in the subtree with t
n
as root, i. e., the tree which
contains t
n
itself, its children, grandchildren, grand-grandchildren, and so on.
nodeWeight(t) = 1 +
numChildren(t)1
i=0
nodeWeight(t.children[i]) (31.3)
Thus, the weight of the root of a tree is the number of all nodes in the tree and the weight of
each of the leaves is exactly 1. In selectNode
uni
, the probability for a node of being selected
in a tree with root t
r
is thus
1
/nodeWeight(t
r
). We provide an example implementation such a
node selection method in Listing 56.41 on page 811.
A tree descend where with probabilities dierent from these dened here may lead to
unbalanced node selection probability distributions. Then, the reproduction operators will
prefer accessing some parts of the trees while very rarely altering the other regions. We
could, for example, descend the tree by starting at the root t and would return the current
node with probability 0.5 or recursively go to one of its children (also with 50% probability).
Then, the root t
r
would have a 50 : 50 chance of being the starting point of reproduction
operation. Its direct children have at most probability
0.5
2
/numChildren(t
r
) each, and their
children would have a base multiplier of 0.5
3
for their probabilities and so on. Hence, the
leaves would almost never take actively part in reproduction.
We could also choose other probabilities which strongly prefer going down to the children
of the tree, but then, the nodes near to the root will most likely be left untouched during
reproduction. Often, this approach is favored by selection methods, although leaves in
dierent branches of the tree are not chosen with the same probabilities if the branches
dier in depth. When applying Algorithm 31.4 on the other hand, there exist no regions in
the trees that have lower selection probabilities than others.
31.3.4 Unary Reproduction Operations
31.3.4.1 Mutation: Unary Reproduction
Tree genotypes may undergo small variations during the reproduction process in the Evo-
lutionary Algorithm. Such a mutation is usually dened as the random selection of a node
in the tree, removing this node and all of its children, and nally replacing it with another
node [1602]. Algorithm 31.5 shows one possible way to realize such a mutation. First, a
copy g G from the original genotype g
p
G is created. Then, a random parent node t
is selected from g. One child of this node is replaced with a newly created subtree. For
creating this tree, we pick the ramped half-and-half method with a maximum depth similar
to the one of the child which we replace by it. The possible outcome of this algorithm
is illustrated in Fig. 31.7.a and an example implementation in Java for Strongly-Typed
Genetic Programming is given in Listing 56.43 on page 815.
Furthermore, in the special case that the tree nodes may have a variable number of chil-
dren, two additional operations for mutation become available: (a) insertions of new nodes
or small trees (Fig. 31.7.b), and (b) the deletion of nodes, as illustrated in Fig. 31.7.c.The
eects of insertion and deletion can, of course, also be achieved with replacement.
394 31 GENETIC PROGRAMMING
Algorithm 31.5: g mutateGP(g
p
)
Input: g
p
G: the parent genotype
Input: [implicit] N: the set of function types
Input: [implicit] : the set terminal types
Data: t: the selected tree node
Data: j: the selected child index
Output: g G: a new genotype
1 begin
2 g g
p
3 repeat
4 t selectNode(g)
5 until numChildren(t) > 0
6 j randomUni[0, numChildren(t))
7 t.children[j] createGPRamped(max 2, treeDepth(t.children[j]) , N, )
8 return g
maximumdepth
Fig. 31.7.a: Subtree replacement.
maximumdepth
Fig. 31.7.b: Subtree insertions.
maximumdepth
Fig. 31.7.c: Subtree deletion.
Figure 31.7: Possible tree mutation operations.
31.3. (STANDARD) TREE GENOMES 395
Example E31.2 (Mutation Example E31.1 Cont.).
Based on Example E31.1 on page 387, Figure 31.8 shows one possible application of Algo-
replacearandomly
chosennodewith
arandomlycreated
subtree
randomly
created
12 x
/
x
3
*
+
12 x
/
x
x
3
+
*
+
11
cutrandomnode
Figure 31.8: Mutation of a mathematical expression represented as a tree.
rithm 31.5 to a mathematical expression encoded as a tree. The initial genotype represents
the mathematical formula (11 + x) (3 + [x[). From this tree, the portion (11 + x) is re-
placed with a randomly created subtree which resembles the expression x/12. The resulting
genotype then stands for the formula (x/12) (3 +[x[).
31.3.4.2 Permutation: Unary Reproduction
The tree permutation operation illustrated in Figure 31.9 resembles the permutation oper-
ation of string genomes or the inversion used in messy GA (Section 29.6.2.1, [1602]). Like
mutation, it is used to reproduce one single tree. It rst selects an internal node of the
parental tree. The child nodes attached to that node are then shued randomly, i. e., per-
mutated. If the tree represents a mathematical formula and the operation represented by
the node is commutative, this has no direct eect. The main goal of this operation is to
re-arrange the nodes in highly t subtrees in order to make them less fragile for other oper-
ations such as recombination. The eects of this operation are questionable and most often,
it is not applied [1602].
Figure 31.9: Tree permutation (asexually) shuing subtrees.
396 31 GENETIC PROGRAMMING
31.3.4.3 Editing: Unary Reproduction
Editing is to trees in Genetic Programming what simplifying is to formulas in mathematics.
Editing a tree means to create a new ospring tree which is more ecient (e.g., in size)
but equivalent to its parent in terms of functional aspects. It is thus a very domain-specic
operation.
Example E31.3 (Editing Example E31.1 Cont.).
Let us take the mathematical formula sketched in Figure 31.10 x = b + (7 4) + (1 a)
+
a
1
*
+
b
-
7 4
+
a +
b 3
Figure 31.10: Tree editing (asexual) optimization.
for instance. This expression clearly can be written in a shorter way by replacing (7 4)
with 3 and (1 a) with a. By doing so, we improve its readability and also decrease the
computational time needed to evaluate the expression for concrete values of a and b. Similar
measures can often be applied to algorithms and program code.
The positive aspect of editing here is that it reduces the number of nodes in the tree by
removing useless expressions. This makes it more easy for recombination operations to pick
important building blocks. At the same time, the expression (7 4) is now less likely to
be destroyed by the reproduction processes since it is replaced by the single terminal node
3.
A negative aspect would be if (in our example) a tter expression was (7 (4 a)) and a
is a variable close to 1. Then, transforming (74) into 3 prevents an evolutionary transition
to the tter expression.
Besides the aspects mentioned in Example E31.3, editing also reduces the diversity in the
genome which could degrade the performance by decreasing the variety of structures avail-
able. In Kozas experiments, Genetic Programming with and without editing showed equal
performance, so the overall benets of this operation are not fully clear [1602].
31.3.4.4 Encapsulation: Unary Reproduction
The idea behind the encapsulation operation is to identify potentially useful subtrees and to
turn them into atomic building block as sketched in Figure 31.11. To put it plain, we create
new terminal symbols that (internally hidden) are trees with multiple nodes. This way,
they will no longer be subject to potential damage by other reproduction operations. The
new terminal may spread throughout the population in the further course of the evolution.
According to Koza, this operation has no substantial eect but may be useful in special
applications like the evolution of articial neural networks [1602].
31.3.4.5 Wrapping: Unary Reproduction
Applying the wrapping operation means to rst select an arbitrary node n in the tree. A new
non-terminal node m is created outside of the tree. In m, at least one child node position is
31.3. (STANDARD) TREE GENOMES 397
Figure 31.11: An example for tree encapsulation.
Figure 31.12: An example for tree wrapping.
left unoccupied. Then, n (and all its potential child nodes) is cut from the original tree and
append it to m by plugging it into the free spot. Finally, m is hung into the tree position
that formerly was occupied by n.
The purpose of this reproduction method illustrated in Figure 31.12 is to allow modi-
cations of non-terminal nodes that have a high probability of being useful. Simple mutation
would, for example, cut n from the tree or replace it with another expression. This will
always change the meaning of the whole subtree below n dramatically.
Example E31.4 (Wrapping Example E31.1 Cont.).
If we evolve mathematical expressions, a candidate solution could be the formula (b +a) 5.
A simple mutation operator could replace the node a with a randomly created subtree such
as (
a 7), arriving at (b +(
ProgramwithADF
variablex=0
subroutiney()
begin
x++
returnx
end
out: +
macro
ADM(parama) (a+a)
main_program
begin
print(ADM(y))
end
ProgramwithADM
Figure 31.16: Comparison of functions and macros.
31.4. LINEAR GENETIC PROGRAMMING 403
The ideas of automatically dened macros and automatically dened functions are very
close to each other. Automatically dened macros are likely to be useful in scenarios where
context-sensitive or side-eect-producing operators play important roles [2566, 2567]. In
other scenarios, there is no much dierence between the application of ADFs and ADMs.
Finally, it should be mentioned that the concepts of automatically dened functions and
macros are not restricted to the standard tree genomes but are also applicable in other forms
of Genetic Programming, such as linear Genetic Programming (see Section 31.4) or PADO
(see ?? on page ??).
31.4 Linear Genetic Programming
31.4.1 Introduction
In the beginning of this chapter, it was stated that one of the two meanings of Genetic
Programming is the automated, evolutionary synthesis of programs that solve a given set of
problems. It was discussed that tree genomes are suitable to encode programs or formulas
and how the genetic operators can be applied to them.
Nevertheless, trees are not the only way for representing programs. Matter of fact, a
computer processes programs them as sequences of simple machine instructions instead.
These sequences may contain branches in form of jumps to other places in the code. Ev-
ery possible owchart describing the behavior of a program can be translated into such a
sequence. It is therefore only natural that the rst approach to automated program gener-
ation developed by Friedberg [995] at the end of the 1950s used a xed-length instruction
sequence genome [995, 996]. The area of Genetic Programming focused on such instruction
string genomes is called linear Genetic Programming (LGP).
Example E31.8 (LGP versus SGP: Syntax).
The general idea of LGP, as opposed to SGP, is that tree-based GP is close to high-level
representations such as LISP S-expressions whereas linear Genetic Programming breeds
instruction sequences resembling programs in assembler language or machine code. This
distinction in philosophy goes as far as down to the naming conventions of the instructions
and variables: In symbolic regression in Standard Genetic Programming, for instance, func-
tion names such as +, , , and sin are common and the variables are usually called x (or
x
1
, x
2
, . . . ). In linear Genetic Programming for the same purpose, the instructions would
usually be named like ADD, SUB ,MUL, SIN and instead of variables, the data is stored in reg-
isters such as R[0], R[1], . . . An ADD instruction in LGP could have, for example, three
parameters: the two input registers and the register to store the result of the computation.
In Standard Genetic Programming, on the other hand, + would have two child nodes and
return the result of the addition to the calling node without explicitly storing it somewhere.
In linear Genetic Programming, instruction strings (or bit/integer strings encoding tem)
are the center of the evolution and contain the program code directly. This distinguishes it
from many grammar-guided Genetic Programming approaches like Grammatical Evolution
(see ?? on page ??), where strings are just genotypic, intermediate representations that
encode the program trees. Some of the most important early contributions to LGP come
from [2199]:
404 31 GENETIC PROGRAMMING
1. Banzhaf [205], who used a genotype-phenotype mapping with repair mechanisms to
translate a bit string to nested simple arithmetic instructions in 1993,
2. Perkis [2164] (1994), whose stack-based GP evaluated arithmetic expressions in Re-
verse Polish Notation (RPN),
3. Openshaw and Turton [2086] (1994) who also used Perkiss approach but already
represented mathematical equations as xed-length bit string back in the 1980s [2085],
and
4. Crepeau [653], who developed a machine code GP system around an emulator for the
Z80 processor.
Besides the methods discussed in this section (and especially in Section 31.4.3), other inter-
esting approaches to linear Genetic Programming are the LGP variants developed by Eklund
[870] and Leung et al. [536, 1715] on specialized hardware, the commercial system by Foster
[976], and the MicroGP (GP) system for test program induction by Corno et al. [642, 2592].
31.4.2 Advantages and Disadvantages
The advantage of linear Genetic Programming lies in the straightforward evaluation of the
evolved algorithms. Like a normal computer program, a (simulated) processor starts at the
beginning of the instruction string. It reads the rst instruction and its operands from the
string and carries it out. Then, it moves to the second instruction and so on. The size of
the status information needed by an interpreter for tree-based programs is in Od (where d
is the depth of the tree), because a recursive depth-rst traversal of the trees is required.
For processing a linear instruction sequence, the required status information is of O1 since
only the index of the currently executed instruction needs to be stored.
Because of this structure, it is also easy to limit the runtime in the program evalua-
tion and even simulating parallelism. Like Standard Genetic Programming, LGP is most
often applied with a simple function set comprised of primitive instructions and some math-
ematical operators. In SGP, such an instruction set can be extended with alternatives
(if-then-else) and loops. Similarly, in linear Genetic Programming jump instructions may
be added to allow for the evolution of a more complex control ow.
Then, the drawback arises that simply reusing the genetic operators for variable-length
string genomes (discussed in Section 29.4 on page 339), which randomly insert, delete, or
toggle bits, is no longer feasible. jump instructions are highly epistatic (see Chapter 17 and
??).
Example E31.9 (Linear Genetic Programming with Jumps).
We can visualize, for example, that the alternatives and loops which we know from high-level
programming languages are mapped to conditional and unconditional jump instructions in
machine code. These jumps target to either absolute or relative addresses inside the program.
Let us consider the insertion of a single, new command into the instruction string, maybe as
result of a mutation or recombination operation. If we do not perform any further corrections
after this insertion, it is well possible that the resulting shift of the absolute addresses of the
subsequent instructions in the program invalidates the control ow and renders the whole
program useless. This issue is illustrated in Fig. 31.17.a.
Nordin et al. [2048, 2048] point out that standard crossover is highly disruptive. Even
though the subtree crossover in tree-genomes is shown to be not very ecient either (see [101]
and Section 31.3.5.2 on page 399), in comparison, tree-based genomes are less vulnerable
in this aspect. As can be seen in Fig. 31.17.b, the insertion of an instruction into a loop
represented as a tree in Standard Genetic Programming is less critical.
31.4. LINEAR GENETIC PROGRAMMING 405
(beforeinsertion)
...50019A103833838F0350... 5001
(afterinsertion:loopbeginshifted)
...50019A10233833838F0350... 5001
Fig. 31.17.a: Inserting into an instruction string.
0.5
b 1 b
a
*
(afterInsertion)
a b
b
=
0 = =
> { } ...
while
{ } ...
Fig. 31.17.b: Inserting in a tree representation.
Figure 31.17: The impact of insertion operations in Genetic Programming
One approach to increase the locality in linear Genetic Programming with jumps is to use
intelligent mutation and crossover operators which preserve the control ow of the program
when inserting or deleting instructions. Such operations could, for instance, analyze the
program structure and automatically correct jump targets. Operations which are restricted
to have only minimal eect on the control ow from the start can also easily be introduced.
In Section 31.4.3.4, we shortly outline some of the work of Brameier and Banzhaf [391],
who dene some interesting approaches to this issue. Section 31.4.4.1 discusses the homol-
ogous crossover operation which represents another method for decreasing the destructive
eects of reproduction in LGP.
31.4.3 Realizations and Implementations
31.4.3.1 The Compiling Genetic Programming System
One of the early linear Genetic Programming approaches was developed by Nordin [2044],
who was dissatised with the performance of GP systems written in an interpreted language
which, in turn, interpret the programs evolved using a tree-shaped genome. In 1994, he
published his work on a new Compiling Genetic Programming System (CGPS) written in the
C programming language
8
[1525] directly manipulating individuals represented as machine
code.
CGPS evolves linear programs which accept some input data and produce output data
as result. Each candidate solution in CGPS consists of (a) a prologue for shoveling the
input data from the stack into registers, (b) a set of instructions for information process-
ing, (c) and an epilogue for terminating the function [2045]. The prologue and epilogue
were never modied by the genetic operations. As instructions for the middle part, the
8
http://en.wikipedia.org/wiki/C_(programming_language) [accessed 2008-09-16]
406 31 GENETIC PROGRAMMING
Genetic Programming system had arithmetical operations and bit-shift operators at its dis-
posal in [2044], but no control ow manipulation primitives like jumps or procedure calls.
These were added in [2046] along with ADFs, making this LGP approach Turing-complete.
Nordin [2044] used the classication of Swedish words as task in the rst experiments
with this new system. He found that it had approximately the same capability for grow-
ing classiers as articial neural networks but performed much faster. Another interesting
application of his system was the compression of images and audio data [2047].
31.4.3.2 Automatic Induction of Machine Code by Genetic Programming
CGPS originally evolved code for the Sun Sparc processors, which is a member of the RISC
9
processor class. This had the advantage that all instructions have the same size. In the Au-
tomatic Induction of Machine Code with GP system (AIM-GP, AIMGP), the successor of
CGPS, the support for multiple other architectures was added by Nordin, Banzhaf, and
Francone [2050, 2053], including Java bytecode
10
and CISC
11
CPUs with variable instruc-
tion widths such as Intel 80x86 processors. A new interesting application for linear Genetic
Programming tackled with AIMGP is the evolution of robot behavior such as obstacle avoid-
ing and wall following [2052].
31.4.3.3 Java Bytecode Evolution
Besides AIMGP, there exist numerous other approaches to the evolution of linear Java
bytecode functions. The Java Bytecode Genetic Programming system (JBGP, also Java
Method Evolver, JME) by Lukschandl et al. [17921795] is written in Java. A genotype
in JBGP contains the maximum allowed stack depth together with a linear list of instruc-
tion descriptors. Each instruction descriptor holds information such as the corresponding
bytecode and a branch oset. The genotypes are transformed with a genotype-phenotype
mapping into methods of a Java class which then can be loaded into the JVM, executed,
and evaluated. [1206, 1207].
The JAPHET system of Klahold et al. [1547], the user provides an initial Java class
at startup. Classes are divided into a static and a dynamic part. The static parts contain
things like version information are not aected by the reproduction operations. The dynamic
parts, containing the methods, are modied by the genetic operations which add new byte
code [1206, 1207].
Harvey et al. [1206, 1207] introduce byte code GP (bcGP), where the whole population
of each generation is represented by one class le. Like in AIMGP, each individual is a linear
sequence of Java bytecode and is surrounded by a prologue and epilogue. Furthermore, by
adding buer space, each individual has the same size and, thus, the whole population can
be kept inside a byte array of a xed size, too.
31.4.3.4 Brameier and Banzhaf: LGP with Implicit Intron removal
In the Genetic Programming system developed by Brameier and Banzhaf [391] based on
former experience with AIMGP, an individual is represented as a linear sequence of simple
C instructions as outlined in the example Listing 31.1 (a slightly modied version of the
example given in [391]). Due to reproduction operations like as mutation and crossover,
linearly encoded programs may contain introns, i. e., instructions not inuencing the result
(see Denition D29.1 and ??). Given that the output of the program dened in Listing 31.1
will store its outputs in the registers v[0] and v[1], all the lines marked with (I) do not
contribute to the overall functional tness.
9
http://en.wikipedia.org/wiki/Reduced_Instruction_Set_Computing [accessed 2008-09-16]
10
http://en.wikipedia.org/wiki/Bytecode [accessed 2008-09-16]
11
http://en.wikipedia.org/wiki/Complex_Instruction_Set_Computing [accessed 2008-09-16]
31.4. LINEAR GENETIC PROGRAMMING 407
1 void ind(double[8] v) {
2 ...
3 v[0] = v[5] + 73;
4 v[7] = v[0] - 59; (I)
5 if(v[1] > 0)
6 if(v[5] > 23)
7 v[4] = v[2]
*
v[1];
8 v[2] = v[5] + v[4]; (I)
9 v[6] = v[0]
*
25; (I)
10 v[6] = v[4] - 4;
11 v[1] = sin(v[6]);
12 if(v[0] > v[1]) (I)
13 v[3] = v[5]
*
v[5]; (I)
14 v[7] = v[6]
*
2;
15 v[5] = v[7] + 115; (I)
16 if(v[1] <= v[6])
17 v[1] = sin(v[7]);
18 }
Listing 31.1: A genotype of an individual in Brameier and Banzhafs LGP system.
Brameier and Banzhaf [391] introduce an algorithm which removes these introns during
the genotype-phenotype mapping, before the tness evaluation. Basically, this approach can
be considered as an editing operation (see Section 31.3.4.3 on page 396) for linear Genetic
Programming. The GP system based on this approach was successfully tested with several
classication tasks [390392], function approximation and Boolean function synthesis [393].
In his doctoral dissertation, Brameier [388] elaborates that the control ow of linear
Genetic Programming more equals a graph than a tree because of jump and call instructions.
In the earlier work of Brameier and Banzhaf [391] mentioned just a few lines ago, introns were
only excluded by the genotype-phenotype mapping but preserved in the genotypes because
they were expected to make the programs robust against variations. In [388], Brameier
concludes that such implicit introns representing unreachable or ineective code have no
real protective eect but reduce the eciency of the reproduction operations and, thus,
should be avoided or at least minimized by them. Instead, the concept of explicitly dened
introns (EDIs) proposed by Nordin et al. [2051] is utilized in form of something like nop
instructions in order to decrease the destructive eect of crossover. Brameier nds that
introducing EDIs decreases the proportion of introns arising from unreachable or ineective
code and leads to better results. In comparison with standard tree-based GP, his linear
Genetic Programming approach performed better during experiments with classication,
regression, and Boolean function evolution benchmarks.
31.4.4 Recombination
31.4.4.1 Sticky (Homologous) Crossover
In Section 29.3.4.6 on page 338, we discussed homologous crossover for Genetic Algorithms.
Normal crossover operations like MPX may have a disruptive eect on building blocks. The
idea of homologous crossover is that, similar to nature Banzhaf et al. [209], only genes that
express the same functionality and are located at the same loci, are exchanged between
parental genotypes. It is assumed that such a recombination operator would have a lower
disruptiveness than plain MPX.
The programs which evolve in linear Genetic Programming are encoded in string chro-
mosome, usually of variable length. Hence, a homologous crossover mechanism could here
be benecial as well.
408 31 GENETIC PROGRAMMING
Francone et al. [982, 2050] introduce a sticky crossover operator which resembles ho-
mology by allowing the exchange of instructions between two genotypes (programs) only if
they reside at the same loci. In sticky crossover, rst a sequence of code in the rst parent
genotype is choosen. This sequence is then swapped with the sequence at exactly the same
position in the second parent.
31.4.4.2 Page-based LGP
An approach similar to Francone et al.s sticky crossover is the Page-based linear Genetic
Programming by Heywood and Zincir-Heywood [1229]. Here, programs are described as
sequences of pages. Each page includes the same number z of instructions.
Crossover exchanges exactly a single page between the parents but, dierent from the
homologous operators, is not locally bound. In other words, the third page of the rst
parent may be swapped with the fth page of the second parent. Since exactly one page is
exchanged, the length of the programs remains the same and the number of their instructions
does not change. This way of crossover is useful to identify and spread building blocks and
thus, is less destructive.
Heywood and Zincir-Heywood [1229] also device a dynamic page size adaptation method
for their crossover operator. Instead of keeping the page size z constant throughout the
evolution, an upper limit
z. In
other words, if
)
Input: mate: the selected individuals
Input: M
[i] + M
T
[i]
changed by a very small number. Also, the mating pool size was one, i. e., only the best
individual had inuence on M. Similar algorithms have been introduced by Kvasnicka et al.
[1652] (Hill Climbing with Learning, HCwL) and M uhlenbein [1973] (Incremental Univariate
Marginal Distribution Algorithm, IUMDA).
34.4.3 cGA: Compact Genetic Algorithm
The compact Genetic Algorithm (cGA) by Harik et al. [1198, 1199] again uses a vector of
(real-valued) probabilities to represent the estimation of the solutions with the best features
according to the objective function f. In Algorithm 34.8 we provide an outline of this
Algorithm 34.8: x cGA(f, ps)
Input: f: the objective function
Input: ps: the population size
Input: [implicit] n: the number of bits per genotype
Data: mate: the matingPool
Data: M: the stochastic model
Output: x: the best individual
1 begin
2 M (0.5, 0.5, . . . , 0.5)
3 while terminationCriterionCGA(M) do
4 mate sampleModelUMDA(M, 2)
5 mate performGPM(mate, gpm)
6 mate computeObjectives(mate, f)
7 M buildModelCGA(mate, M, ps)
8 return transformModelCompGA(M)
algorithm which modies this vector M so that there is a direct relation between it and the
population it represents [2153]. The idea of the cGA is the following: Assume that we have
a normal Genetic Algorithm and two individuals p
1
and p
2
compete in a binary tournament.
In the single-objective case, usually one of them will win and reproduce whereas the other
vanishes. Assume further that p
1
prevails in the competition, i. e., p
1
.x p
2
.x, because
f
p
1
.x
< f
p
2
.x
in case of minimization, for instance. Then, the absolute frequency of its
corresponding genotype p
1
.g in the population will increase by one. For a population of size
440 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
ps, this means that its relative frequency increases by
1
ps
. This obviously also holds for every
single gene in p
1
.g, since the individual is copied as a whole.
The cGA tries to emulate this situation by creating exactly two new genotypes
in each iteration by using the same sampling method already utilized in the UMDA
(sampleModelUMDA(M, 2), see Algorithm 34.4). These two individuals then compete with
each other and the genes of the winner then are used to update the model M as sketched in
Algorithm 34.9.
Algorithm 34.9: M buildModelCGA(mate, M
, ps)
Input: mate: the two individuals
Input: M
3 p
1
mate[0]
4 p
2
mate[1]
5 if p
2
.x p
1
.x then
6 p
1
p
2
7 p
2
mate[0]
8 for i n 1 down to 0 do
9 if p
1
.g[i] ,= p
2
.g[i] then
10 if p
1
.g[i] = 0 then M[i] M
[i] +
1
ps
11 else M[i] M
[i]
1
ps
The optimization process has converged if all elements of the model M became either 1
or 0. Then, only genotypes which exactly equal to the model can be sampled and the vector
will not change anymore. Hence, as termination criterion terminationCriterionCGA we
simply need to check whether this convergence already has taken place or not.
Algorithm 34.10: (true, false) terminationCriterionCGA(M)
Input: M: the model
Input: [implicit] n: the number of bits per genotype
Data: i: a counter
Output: (true, false): whether the cGA should terminate
1 begin
2 for i n 1 down to 0 do
3 if (M[i] > 0) (M[i] < 1) then return false
4 return true
The result of the optimization process is the phenotype gpm(g) corresponding to the
genotype g M dened by the model M in the converged state. The trivial way to produce
this element is specied here as Algorithm 34.11.
Further theoretical results concerning the eciency of the cGA can be found in [833,
34.4. EDAS SEARCHING BIT STRINGS 441
Algorithm 34.11: x transformModelCompGA(M)
Input: M: the model
Input: [implicit] n: the number of bits per genotype
Data: i: a counter
Data: g: the genotype, g G
Output: x: the optimization result, x X
1 begin
2 g ()
3 for i 0 up to n 1 do
4 if M[i] < 0.5 then g addItem(g, 0)
5 else g addItem(g, 1)
6 return gpm(g)
834, 2271]. Because of its compact structure only one real vector and two bit strings need
to be held in memory the cGA is especially suitable for implementation in hardware [117].
442 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
34.5 EDAs Searching Real Vectors
A variety of Estimation of Distribution Algorithms has been developed for nding optimal
real vectors from the R
n
, where n the number of elements of the genotypes. M uhlenbein
et al. [1976], for instance, introduce one of the rst real-valued EDAs and in the following,
we discuss multiple such approaches.
34.5.1 SHCLVND: Stochastic Hill Climbing with Learning by Vectors of
Normal Distribution
The Stochastic Hill Climbing with Learning by Vectors of Normal Distribution (SHCLVND)
by Rudlof and K oppen [2346] is kind of a real-valued version of the PBIL. For search spaces
Algorithm 34.12: x SHCLVND(f, ps, mps)
Input: f: the objective function
Input: ps: the population size
Input: mps: the mating pool size
Input: [implicit] terminationCriterion: the termination criterion
Input: [implicit] n: the number of elements of the genotypes
Input: [implicit]
G,
G: the minimum and maximum vector delimiting the problem
space G =
_
G[0],
G[0]
_
G[1],
G[1]
_
. . .
Input: [implicit] rangeToStdDev: a factor for converting the range to the initial
standard deviations , rangeToStdDev = 0.5 in [2346]
Data: pop: the population
Data: mate: the matingPool
Data: M = (, ): the stochastic model
Data: continue: a variable holding the termination criterion
Output: x: the best individual
1 begin
2 M.
1
2
_
G+
G
_
3 M. rangeToStdDev
_
G
G
_
4 x null
5 continue true
6 while continue do
7 pop sampleModelSHCLVND(M, ps)
8 pop performGPM(pop, gpm)
9 pop computeObjectives(pop, f)
10 mate truncationSelection(pop, f, mps)
11 if x = null then x extractBest(mate, f) [0]
12 else x extractBest(mate x , f) [0]
13 if terminationCriterion
__
then continue false
14 else M buildModelSHCLVND(mate, M)
15 return x
G R
n
, it builds models M which consist of a vector of expected values M. and a vector
of standard deviations M.. We introduce it here as Algorithm 34.12.
Initially, the expected value vector M. is set to the point right in the middle of the search
space which is delimited by the vector of minimum values
G and the vector of maximum
values
G. Notice that these limits are soft and genotypes may be created which lie outside
the limits (due to the unconstraint normal distribution used for sampling). The vector of
34.5. EDAS SEARCHING REAL VECTORS 443
standard deviations M. is initialized by multiplying a constant rangeToStdDev with the
range spanned by
G
G. The constant rangeToStdDev is set to rangeToStdDev = 0.5 in
the original paper by Rudlof and K oppen [2346].
Algorithm 34.13: pop sampleModelSHCLVND(M, ps)
Input: M = (, ): the model
Input: ps: the target population size
Input: [implicit] n: the number of elements of the genotypes
Data: i, j: counter variables
Data: p: an individual record and its corresponding genotype p.g
Data: : the vector of estimated expected values
Data: : the vector of standard deviations
Output: pop: the new population
1 begin
2 pop ()
3 M.
4 M.
5 for i 1 up to ps do
6 p.g ()
7 for j 0 up to n 1 do
8 p.g addItem(p.g, randomNorm([j], [j]))
9 pop addItem(pop, p)
Algorithm 34.13 illustrates how the models M = (, ) are sampled in order to create
new points in the search space. Therefore, one univariate normally distributed random
number randomNorm([j], [j])is created for each locus j of the genotypes according to
the value [j] denoting the expected location of the optimum in the j
th
dimension and the
prescribed standard deviation [j].
Algorithm 34.14: M buildModelSHCLVND(mate, M
)
Input: mate: the selected individuals
Input: M
i=0
mate[i].g
3 M. (1 ) M
. + g
4 M.
red
M
.
5 return M
After sampling a population pop of ps individuals, performing a genotype-phenotype
mapping gpm if necessary, and computing the objective values for the individual records
in the computeObjectives step, mps elements are selected using truncation selection
exactly like in the PBIL. These mps best elements are then used to update the model, a
process here dened as buildModelSHCLVND in Algorithm 34.14. Like PBILs model
444 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
updating step Algorithm 34.7, buildModelSHCLVND uses a learning rate for updating
the expected value vector model component M. which denes how much this vector is
shifted into the direction of the mean vector g of the genotypes p.g of the individuals p in
the mating pool mate.
The standard deviation vector M. model component is not learned. Instead, it is simply
multiplied with a simple reduction factor
red
[0, 1]. In the case where all elements of M.
are the same, Rudlof and K oppen [2346] assume a goal value
G
the standard deviations
are to take on after
t generations of the algorithm and set
red
=
t
G
(34.1)
which availed with
t = 2500 generations and
G
=
1
1000
to
red
0.997 241 in their experi-
ment [2346].
34.5.2 PBIL
C
: Continuous PBIL
Sebag and Ducoulombier [2443] suggest a similar extension of the PBIL to continuous search
spaces: PBIL
C
. For updating the center vector M. of the estimated distribution, the
consider the genotypes g
b,1
and g
b,2
of the two best and the genotype g
w
of the worst
individual discovered in the current generation. These vectors are combined in a way similar
to the reproduction operator used in Dierential Evolution [2220, 2621] and here listed in
Equation 34.2.
M. = (1 ) M
. + (g
b,1
+g
b,2
g
w
) (34.2)
For updating M., they suggest four possibilities:
1. Setting it to a constant value would, however, prevent the search from becoming very
specic or would slow it down signicantly, depending on the value,
2. to allow evolution to adjust M. itself in a way similar to Evolution Strategy,
3. to set each of its elements to the variance found in the corresponding loci of the K
best genotypes of the current generation,
4. or to adjust each of its elements to the variance found in the corresponding loci of the
K best genotypes of the current generation using the same learning mechanism as for
the center vector.
34.5.3 Real-Coded PBIL
The real-coded PBIL by Servet et al. [2455, 2456] follows a dierent approach. Here, the
model M consists of three vectors: the upper and lower boundary vectors M.
G and M.
G
limiting the current region of interest and vector M.P denoting the probability for each locus
j that a good genotype is located in the upper half of the interval
_
M.
G[j], M.
G[j]
_
. We
dene this real-coded PBIL as Algorithm 34.15 which basically proceeds almost exactly like
the PBIL for binary search spaces (see Algorithm 34.6). In the startup phase, the boundary
vectors M.
G and M.
G[j], M.
G[j]
_
for the j
th
gene from any of the n
loci, as done in Algorithm 34.16.
After a possible genotype-phenotype mapping, determining the objective values, and a
truncation selection step, the model M is to be updated with Algorithm 34.17. First, the
vector M.P by merging it with the information of whether good traits can be found in
34.5. EDAS SEARCHING REAL VECTORS 445
Algorithm 34.15: x RCPBIL(f, ps, mps)
Input: f: the objective function
Input: ps: the population size
Input: mps: the mating pool size
Input: [implicit] terminationCriterion: the termination criterion
Input: [implicit] n: the number of elements of the genotypes
Input: [implicit]
G,
G: the minimum and maximum vector delimiting the problem
space G =
_
G[0],
G[0]
_
G[1],
G[1]
_
. . .
Data: pop: the population
Data: mate: the matingPool
Data: M =
_
P,
G,
G
_
: the stochastic model
Data: continue: a variable holding the termination criterion
Output: x: the best individual
1 begin
2 M.
G
G
3 M.
G
G
4 M.P (0.5, 0.5, . . . , 0.5)
5 x null
6 continue true
7 while continue do
8 pop sampleModelRCPBIL(M, ps)
9 pop performGPM(pop, gpm)
10 pop computeObjectives(pop, f)
11 mate truncationSelection(pop, f, mps)
12 if x = null then x extractBest(mate, f) [0]
13 else x extractBest(mate x , f) [0]
14 if terminationCriterion
__
then continue false
15 else M buildModelRCPBIL(mate, M)
16 return x
Algorithm 34.16: M sampleModelRCPBIL(mate, M
)
Input: M: the model
Input: ps: the target population size
Input: [implicit] n: the number of elements of the genotypes
Data: i, j: counter variables
Data: p: an individual record and its corresponding genotype p.g
Output: pop: the new population
1 begin
2 pop ()
3 for i 1 up to ps do
4 p.g ()
5 for j 0 up to n 1 do
6 p.g addItem
_
p.g, randomUni
_
M.
G[j], M.
G[j]
__
7 pop addItem(pop, p)
446 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
Algorithm 34.17: M buildModelRCPBIL(mate, M
)
Input: mate: the selected individuals
Input: M
3 for i 0 up to len(mate) 1 do
4 g mate[i].g
5 for j 0 up to n 1 do
6 if g[j] >
1
2
_
M.
G[j] + M.
G[j]
_
then c 1
7 else c 0
8 M.P[j] (1 ) M.P[j] + c
9 for i 0 up to n 1 do
10 if M.P[j] 0.9 then
11 M.
G[j]
1
2
_
M.
G[j] + M.
G[j]
_
12 M.P[j] 0.5
13 else
14 if p 0.1 then
15 M.
G[j]
1
2
_
M.
G[j] + M.
G[j]
_
16 M.P[j] 0.5
17 return M
34.6. EDAS SEARCHING TREES 447
the upper or lower halves of the regions of interest for each locus. In case that the upper
halve of one dimension j of the region of interest is very promising, i. e., M.P[j] 0.9,
the lower boundary M.
G[j] + M.
G[j]
_
and M.P[j] is reset to 0.5. On the other hand, if the lower half of
dimension j of the region is very interesting and M.P[j] 0.1, the same is adjustment is
done with the upper boundary. In this respect, the real-coded PBIL works similar to a
(randomized) multi-dimensional binary search.
34.6 EDAs Searching Trees
Estimation of Distribution Algorithms cannot only be used for evolving bit strings or real
vectors, but also are applicable to tree-based spaces, i. e., for Genetic Programming as dis-
cussed in Chapter 31 and [1602, 2199].
34.6.1 PIPE: Probabilistic Incremental Program Evolution
Salustowicz and Schmidhuber [2380, 2381] dene such an EDA for learning (program) trees:
PIPE: Probabilistic Incremental Program Evolution. Here, we provide this GP approach
as Algorithm 34.18. Let us assume a Genetic Programming system would construct trees
consisting of inner nodes, each belonging to one of the types in the function set N and leaf
nodes, each belonging to one of the nodes in the terminal set .
The function set could, for instance, be N = +, , , /, sin and the terminal set could
be = X, R, where X stands for an input variable of the expression to be evolved and
R is a real constant. Programs are n-ary trees where n is the number of arguments of the
function with the most parameters in N. In the example conguration, n would be two
since, for instance, arityOf () = 2. Let V = N the set of all possible node types.
Salustowicz and Schmidhuber [2380, 2381] represent the probability distribution of pos-
sible trees with a so-called Probabilistic Prototype Tree (PPT). Each node t of such a tree
consists of a vector function N.P : V [0, 1] which assigns a probability N.P (i) to each
node type i such that
iV
N.P (i) = 1 for all the tree nodes holds. Furthermore, it
also contains one value N.R [0, 1] which stands for the constant value that the termi-
nal R takes on if it was selected. Each inner node N of a prototype tree has n children
N.children[0] to N.children[n 1] which again, are prototype tree nodes. The models M
are the complete prototype trees or, more precisely, their roots (and, due to the children
structure N.children, hold the complete tree data.
The initial prototype tree consists only of a single node as created by the function
newModelNodePIPE in Algorithm 34.19. Salustowicz and Schmidhuber [2381] prescribe
a start probability P
= 0.8 in their
experiments. All the [[ terminal symbols are given the same probability for creation and the
remaining share of the probability (1 P
)
3 p
null
4 continue true
5 while continue do
6 if (p
, M, p
)
8 else
9 pop sampleModelPIPE(M, ps)
10 pop performGPM(pop, gpm)
11 pop computeObjectives(pop, f)
12 mate truncationSelection(pop, f, 1)
13 if p
= null then p
extractBest(mate, f) [0]
14 else p
extractBest(mate p
, f) [0]
15 if terminationCriterion
__
then continue false
16 else M buildModelPIPE(mate, M, p
)
17 return p
.x
Algorithm 34.19: N newModelNodePIPE(N, , P
)
Input: N: the set of function types
Input: : the set terminal types
Input: P
[[
5 foreach i N do
6 N.P (i)
1 P
[N[
7 N.children
34.6. EDAS SEARCHING TREES 449
Algorithm 34.20: pop sampleModelPIPE(M, ps)
Input: M: the model
Input: ps: the target population size
Data: j: counter variable
Data: p: an individual record and its corresponding genotype p.g
Output: pop: the new population
1 begin
2 pop ()
3 for j 1 up to ps do
4 (M, p.g) buildTreePIPE(M)
5 pop addItem(pop, p)
current model. The selected type i is then instantiated as new node t to be inserted into
the genotype.
If i happens to be the type for real constants (which is kind of a problem-specic node
type and may be left away in implementations for other domains), the constant value t.val
is either set to a random value uniformly distributed in [0, 1) or to the constant value N.R
held in the prototype node, depending on whether the probability of choosing the type R
surpassed a given threshold P
R
. Salustowicz and Schmidhuber [2381] set P
R
to 0.3 in their
experiments.
If t is a function node, all necessary child nodes are created by recursively calling the
same procedure. In the case that for a required child node no corresponding node exists in
the prototype tree, this node is again created via Algorithm 34.19.
Updating the model in PIPE means to adapt it towards the direction of the genotype of
the best individual p
.g[ M) that this individual would occur given the current model M, as noted
in Equation 34.3.
P (t [N ) = N.P (typeOf (t))
_
numChildren(t)
i=0
if numChildren(t) > 0
1 otherwise
(34.3)
P
goal
(p.g [M, x) = P (g [M) + (1 P (p.g [M))
f(x)
f(gpm(g))
(34.4)
Based on a learning rate , the target probability P
goal
( p
discovered
during all generations with probability P
E
(0.2 in the original paper) or normal learning.
Also, the original work [2381] features a mutation operator which changes the probabilities
450 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
Algorithm 34.21: (N, t) buildTreePIPE(N
)
Input: N
3 p randomUni[0, 1)
4 V setToList(N )
5 j 0
6 while p > V [j] do
7 p p N.P (V [j])
8 j j + 1
9 i V [j]
10 t instantiate(i)
11 if i = R then
12 if N.P (V [j]) > P
R
then t.val N.R
13 else t.val randomUni[0, 1)
14 for j 0 up to arityOf (i) 1 do
15 if numChildren(N) j then
16 N
newModelNodePIPE(N, , P
)
17 N addChild(N, N
)
18 else
19 N
N.children[j]
20 (N
, t
) buildTreePIPE(N
)
21 N.children[j] N
22 t addChild(t, t
)
23 return (N, t)
34.6. EDAS SEARCHING TREES 451
Algorithm 34.22: M buildModelPIPE(mate, M
, x)
Input: mate: the individuals selected for mating
Input: M
, x)
4 M M
, t)
Input: N
3 i
c
typeOf (t)
4 if i
c
= R then
5 N.R t.val
6 N.P (i) N.P (i
c
) +c(1 N.P (i
c
))
7 s
iN
N.P (i)
8 foreach i N do
9 N.P (i)
1
s
N.P (i)
10 for j 0 up to numChildren(t) do
11 N.children[j] increasePropPIPE(N.children[j], t.children[j])
12 return N
452 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
Algorithm 34.24: N pruneTreePIPE(N
)
Input: N
3
P max N.P (i) : i N
4 if
P P
P
then
5 a max
_
arityOf (i) : i N N.P (i) =
P
_
6 for j a up to numChildren(N) 1 do
7 N deleteChild(N, a)
8 for j 0 up to a 1 do
9 N.children[j] pruneTreePIPE(N.children[j])
10 return N
in the prototype trees with a given probability (and normalizes them again).
34.7 Diculties
34.7.1 Diversity
Estimation of Distribution Algorithms evolve a model of how a perfect solution should
probably look like. The central idea is that such a model is dened by several parameters
which will converge and the span of possible values which can be sampled from it will become
smaller and smaller over time. As already stated, if everything goes well, at one point the
model should have become so specic that only the single, global optimum can be sampled
from it. If everything goes well, that is. Now not all problems are uni-modal, i. e., have a
single optimum. In fact, as we already pointed out in Chapter 13 and Section 3.2, many
problems are multi-modal, with many local or global optima.
Then, the danger arises that the EDA too quickly loses diversity [2843] and converges
towards a local optimum. Evolutionary Algorithms can preserve diversity in their population
by allowing with worse objective values candidate solutions to survive if they are located in
dierent areas of the search space. In EDAs, this is not possible. If we use such individuals
during the model updating process, the only thing we achieve is that the area where new
points are sampled stays very large, the search process does not converge, and many objective
function evaluations are wasted to candidate solutions with little chance of being good.
34.7.1.1 Model Mutation
A very simple way for increasing the diversity in EDAs is mutating the model itself from
time to time. By randomly modifying its parameters, new individuals will be sampled a bit
more distant from the congurations which are currently assumed to perform best. If the
newly explored parts of the search space are inferior, chances are that the EDA nds back
the previous parameters. If they are better, on the other hand, the EDA managed to escape
a local optimum. This approach is relatively old and has already been applied in PBIL [193]
and PIPE [2380, 2381].
34.7. DIFFICULTIES 453
34.7.1.2 Sampling Mutation
But diverse individuals can also be created without permanently mutating the model. In-
stead, a model mutation may be applied which only aects the sampling of one single
genotype and is reverted thereafter, i. e., which has very temporary characteristics. This
way, the danger that a good model may get lost is circumvented.
Such an operator is the Sampling Mutation by Wallin and Ryan [2843, 2844] who tem-
porarily invert the probability distribution describing one variable of the model. In a , for
instance, we could temporarily set the i
th
element of element of the model vector M to
1 M[i] during the sampling of one individual.
34.7.1.3 Clustering in the Objective Space
In their Evolutionary Bayesian Classier-based Optimization Algorithms (EBCOAs),
Miquelez et al. [1910] chose yet another approach. Before the model building phase, the
population pop is divided into xed number [K[ of classes. This is achieved by dividing the
population into equal-sized groups of individuals from the ttest to the lest t one [1910]. To
each individual p pop a label k(p). Some of the classes K
i
K : K
i
= p pop : k(p) = i
are discarded to facilitate learning and only [C[ [K[ classes are selected. Using only a
(strict) subset of classes for learning can be justied because it emphasizes the dierences
between the classes and reduces noise [1910, 2843].
The class variables (which indirectly represent the tness) tagged to the individuals are
treated as part of the individuals and incorporated into the model building process as well.
In other words, the modes M also try to estimate the distribution of the classes (additionally
to the parameters of the genotypes). In [1910] and [2843], Bayesian networks are learned as
models.
For the sampling process, Miquelez et al. [1910] suggest sampling a number m(i) of
individuals for a class i in the next generation proportional to the sum of the objective
values that the individuals achieved in the last generation:
m(i)
ppop:k(p)=i
f(p.x) (34.5)
Wallin and Ryan [2843] further combine such tness clustering with sampling mutation.
Pelikan et al. [2157], Sastry and Goldberg [2398] extend the method for multiple objective
functions. They dene a multi-objective version of their hBOA algorithm as a combination
of hBOA, NSGA-II, and clustering in the objective space.
Lu and Yao [1784] introduce a basic multi-model EDA scheme for real-valued optimiza-
tion. This scheme utilizes clustering in a way similar to our work presented here. However,
they focus mainly on numerical optimization whereas we introduce a general framework
together with one possible instantiation for numerical optimization. Platel et al. [2187] pro-
pose a quantum-inspired evolutionary algorithm which is an EDA for bit-string base search
spaces. This algorithm utilizes a structured population, similar to the use of demes in EAs,
which makes it a multi-model EDA. Gallagher et al. [1009] extend the PBIL algorithm to
real-valued optimization by using an Adaptive Gaussian mixture model density estimator.
This approach can deal with multi-modal problems but too, is more complex than multi-
model algorithms which utilize clustering
Niemczyk and Weise [2038] nally introduce a general multi-model EDA which unites
research on Estimation of Distribution Algorithmsand Evolutionary Algorithms: They sug-
gest divide the population into clusters and derive one model for each of them. These models
may then be recombined and sampled. In the case that one model is created for each se-
lected individual and additional models result from recombination, the algorithm behaves
exactly like a standard EA. If, on the other hand, only one single cluster is created and no
model recombination is performed, the algorithm equals a traditional EDA. Niemczyk and
454 34 ESTIMATION OF DISTRIBUTION ALGORITHMS
Weise [2038] point out that this scheme applies to arbitrary search and problem spaces and
clustering methods. They instantiate it for a continuous search space, but it could as well
be used for bit-string based or tree-based genomes.
34.7.1.4 Clustering in the Search Space
Symmetric optimization problems can be especially challenging for EDAs since optima with
similar objective values but located in dierent areas of the search space may hinder them
from converging. Pelikan and Goldberg [2147, 2148] rst applied clustering the search space
of general EAs and EDAs in order to alleviate this problem. In a Genetic Algorithm, they
would cluster the mating pool (i. e., the selected parents) according to the genotypes. Each
cluster will then be processed separately and yield its own ospring. The recombination
operator only uses parents which stem from the same cluster. The number of new genotypes
per cluster is proportional to its average tness or its size. This method hence facilitates
niching. In their work, Pelikan and Goldberg [2147, 2148] use k-means clustering [1503, 1808]
both, in a simple Genetic Algorithm and in UMDA, and found that it helps to achieve better
results in the presence of symmetry.
Bosman and Thierens [363, 364] too apply k-means clustering but also the randomized
leader algorithm and expectation maximization after selection. For each of the clusters,
again a separate model is created. These are combined to an overall distribution via a
weighted sum approach, where the weight of a cluster is proportional to its size.
Lu and Yao [1784] apply the heuristic competitive learning algorithm RPCL to cluster the
populations in their Clustering and Estimation of Gaussian Network Algorithms (CEGNA)
for continuous optimization problems. RPCL has the advantage that it can select the number
of clusters automatically [2999]. In CEGNA, after selection, the mating pool is clustered
into k clusters where both, the clusters and k, are determined by RPCL. For each of the
clusters, an independent model M
i
: i 1..k is derived. In the sampling step, N
i
new
genotypes are sampled for each cluster i where N
i
is proportional to the average tness of
the individuals in the cluster. The experimental results [1784] show that the new algorithm
performs well on multi-modal problems.
Other EDA approaches utilizing clustering have been provided in [42, 486, 2069]. Cluster-
ing has also been incorporated in EAs as, for example, niching method, by various research
groups [1081, 1241].
In [2357], Ruzgas et al. show that a multi-modal problem can be reduced to a set of
uni-modal ones and the quality of estimation procedures increases signicantly if applying
estimators rst to each cluster and later combining the results. Although their work was
not related to EDAs, it is another account for the successful integration of clustering into
distribution estimation.
34.7.2 Epistasis
34.7. DIFFICULTIES 455
Tasks T34
99. Implement the Royal Road function given in Section 50.2.4 on page 558 for genotypes
of lengths 64, 512, and 2048. Apply both, the UMDA (see Section 34.4.1) and a simple
Genetic Algorithm (see Section 29.3) to the three functions. Repeat the experiments
15 times. Describe your ndings.
[25 points]
100. Implement the OneMax function given in Section 50.2.5.1 on page 562 for genotypes
of lengths 64, 512, and 2048. Apply both, the UMDA (see Section 34.4.1) and a simple
Genetic Algorithm (see Section 29.3) to the three functions. Repeat the experiments
15 times. Describe your ndings.
[25 points]
101. Implement the BinInt function given in Section 50.2.5.2 on page 562 for genotypes
of lengths 16, 32, and 48. Apply both, the UMDA (see Section 34.4.1) and a simple
Genetic Algorithm (see Section 29.3) to the three functions. Repeat the experiments
15 times. Describe your ndings.
[25 points]
102. Implement the NK Fitness Landscape given in Section 50.2.1 on page 553 for N = 12
and 16 and K = 4 and K = 6 and random neighbors. Apply both, the UMDA (see
Section 34.4.1) and a simple Genetic Algorithm (see Section 29.3) to the four resulting
functions. Repeat the experiments 15 times. Describe your ndings.
[50 points]
103. Implement any of the real-valued Estimation of Distribution Algorithms dened in Sec-
tion 34.5 on page 442 and test them on suitable benchmark problems (such as those
given in Task 64 on page 238).
[50 points]
Chapter 35
Learning Classier Systems
35.1 Introduction
In the late 1970s, Holland, the father of Genetic Algorithms, also invented the concept of
classier systems (CS) [1251, 1254, 1256]. These systems are a special case of production
systems [696, 697] and consist of four major parts:
1. a set of interacting production rules, called classiers,
2. a performance algorithm which directs the actions of the system in the environment,
3. a learning algorithm which keeps track on the success of each classier and distributes
rewards, and
4. a Genetic Algorithm which modies the set of classiers so that variants of good classi-
ers persist and new, potentially better ones are created in an ecient manner [1255].
By time, classier systems have undergone some name changes. In 1986, reinforcement
learning was added to the approach and the name changed to Learning Classier Systems
1
(LCS) [1220, 2534]. Learning Classier Systems are sometimes subsumed under a machine
learning paradigm called evolutionary reinforcement learning (ERL) [1220] or Evolutionary
Algorithms for Reinforcement Learning (EARLs) [1951].
35.2 Families of Learning Classier Systems
The exact denition of Learning Classier Systems [1257, 1588, 1677, 2534] still seems con-
tentious and there exist many dierent implementations. There are, for example, versions
without message list where the action part of the rules does not encode messages but direct
output signals. The importance of the role of Genetic Algorithms in conjunction with the
reinforcement learning component is also not quite clear. There are scientists who emphasize
more the role of the learning components [2956] and others who tend to grant the Genetic
Algorithms a higher weight [655, 1256].
The families of Learning Classier Systems have been listed and discussed by Brownlee
[430] elaborately. Here we will just summarize their dierences in short. De Jong [712, 713]
and Grefenstette [1127] divide Learning Classier Systems into two main types, depending
on how the Genetic Algorithm acts: The Pitt approach originated at the University of
Pittsburgh with the LS-1 system developed by Smith [2536]. It was then developed further
and applied by Bacardit i Pe narroya [158, 159], De Jong and Spears [716], De Jong et al.
1
http://en.wikipedia.org/wiki/Learning_classifier_system [accessed 2007-07-03]
458 35 LEARNING CLASSIFIER SYSTEMS
[717], Spears and De Jong [2564], and Bacardit i Pe narroya and Krasnogor [161]. Pittsburgh-
style Learning Classier Systems work on a population of separate classier systems, which
are combined and reproduced by the Genetic Algorithm.
The original idea of Holland and Reitman [1256] were Michigan-style LCSs, where the
whole population itself is considered as classier system. They focus on selecting the best
rules in this rule set [706, 1074, 1751]. Wilson [2952, 2953] developed two subtypes of
Michigan-style LCS:
1. In ZCS systems, there is no message list use tness sharing [440, 442, 591, 2952] for a
Q-learning-like reinforcement learning approach called QBB.
2. ZCS have later been somewhat superseded by XCS systems in which the Bucket
Brigade Algorithm has fully been replaced by Q-learning. Furthermore, the credit
assignment is based on the accuracy (usefulness) of the classiers. The Genetic Algo-
rithm is applied to sub-populations containing only classiers which apply to the same
situations. [1587, 1681, 29532955]
35.3. GENERAL INFORMATION ON LEARNING CLASSIFIER SYSTEMS 459
35.3 General Information on Learning Classier Systems
35.3.1 Applications and Examples
Table 35.1: Applications and Examples of Learning Classier Systems.
Area References
Combinatorial Problems [2158]
Control [1074]
Data Mining [53, 158, 160, 162, 279, 633, 675, 676, 706, 717, 904, 994,
1527, 1587, 2095, 2461, 2674, 2894, 2902]
Databases [162]
Digital Technology [706, 1587, 2954]
Distributed Algorithms and Sys-
tems
[1218, 2461, 2767]
Economics and Finances [440]
Engineering [53, 706, 1218, 1587, 2158, 2767, 2954]
Function Optimization [713]
Graph Theory [1218, 2461, 2767]
Healthcare [1527, 2674]
Mathematics [591]
Multi-Agent Systems [440]
Prediction [1587]
Security [53, 1218, 2461]
Wireless Communication [2158]
35.3.2 Books
1. Rule-Based Evolutionary Online Learning Systems: A Principled Approach to LCS Analysis
and Design [460]
2. Foundations of Learning Classier Systems [443]
3. Data Mining and Knowledge Discovery with Evolutionary Algorithms [994]
4. Anticipatory Learning Classier Systems [459]
5. Applications of Learning Classier Systems [441]
35.3.3 Conferences and Workshops
Table 35.2: Conferences and Workshops on Learning Classier Systems.
GECCO: Genetic and Evolutionary Computation Conference
See Table 28.5 on page 317.
CEC: IEEE Conference on Evolutionary Computation
See Table 28.5 on page 317.
EvoWorkshops: Real-World Applications of Evolutionary Computing
See Table 28.5 on page 318.
PPSN: Conference on Parallel Problem Solving from Nature
See Table 28.5 on page 318.
460 35 LEARNING CLASSIFIER SYSTEMS
WCCI: IEEE World Congress on Computational Intelligence
See Table 28.5 on page 318.
EMO: International Conference on Evolutionary Multi-Criterion Optimization
See Table 28.5 on page 319.
AE/EA: Articial Evolution
See Table 28.5 on page 319.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
See Table 28.5 on page 319.
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
ICML: International Conference on Machine Learning
See Table 10.2 on page 129.
ICNC: International Conference on Advances in Natural Computation
See Table 28.5 on page 319.
IWLCS: International Workshop on Learning Classier Systems
History: 2007: London, UK, see [1589, 2579]
2006/07: Seattle, WA, USA, see [2441]
2005/06: Washington, DC, USA, see [27]
2004/06: Seattle, WA, USA, see [2280]
2003/07: Chicago, IL, USA, see [2578]
2002/09: Granada, Spain, see [1680]
2001/07: San Francisco, CA, USA, see [1679]
2000/09: Paris, France, see [1678]
1999/07: Orlando, FL, USA, see [2094]
1992: Houston, TX, USA, see [2002, 2534]
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
See Table 28.5 on page 320.
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
FEA: International Workshop on Frontiers in Evolutionary Algorithms
See Table 28.5 on page 320.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
35.3. GENERAL INFORMATION ON LEARNING CLASSIFIER SYSTEMS 461
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
See Table 28.5 on page 320.
CIS: International Conference on Computational Intelligence and Security
See Table 28.5 on page 320.
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
ECML: European Conference on Machine Learning
See Table 10.2 on page 132.
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
See Table 28.5 on page 321.
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
See Table 28.5 on page 321.
GEM: International Conference on Genetic and Evolutionary Methods
See Table 28.5 on page 321.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
See Table 28.5 on page 321.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
See Table 28.5 on page 321.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
EWSL: European Working Session on Learning
See Table 10.2 on page 134.
EvoNUM: European Event on Bio-Inspired Algorithms for Continuous Parameter Optimisation
See Table 28.5 on page 321.
FOCI: IEEE Symposium on Foundations of Computational Intelligence
See Table 28.5 on page 321.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
462 35 LEARNING CLASSIFIER SYSTEMS
See Table 10.2 on page 134.
ICMLC: International Conference on Machine Learning and Cybernetics
See Table 10.2 on page 134.
IJCCI: International Conference on Computational Intelligence
See Table 28.5 on page 321.
IWNICA: International Workshop on Nature Inspired Computation and Applications
See Table 28.5 on page 321.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NaBIC: World Congress on Nature and Biologically Inspired Computing
See Table 28.5 on page 322.
TAAI: Conference on Technologies and Applications of Articial Intelligence
See Table 10.2 on page 134.
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
See Table 28.5 on page 322.
ECML PKDD: European Conference on Machine Learning and European Conference on Principles
and Practice of Knowledge Discovery in Databases
See Table 10.2 on page 135.
EvoRobots: International Symposium on Evolutionary Robotics
See Table 28.5 on page 322.
ICEC: International Conference on Evolutionary Computation
See Table 28.5 on page 322.
IWACI: International Workshop on Advanced Computational Intelligence
See Table 28.5 on page 322.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
See Table 28.5 on page 322.
SSCI: IEEE Symposium Series on Computational Intelligence
See Table 28.5 on page 322.
35.3.4 Journals
1. IEEE Transactions on Evolutionary Computation (IEEE-EC) published by IEEE Computer
Society
2. Genetic Programming and Evolvable Machines published by Kluwer Academic Publishers and
Springer Netherlands
Chapter 36
Memetic and Hybrid Algorithms
Starting with the research contributed by Bosworth et al. [368] in 1972, Bethke [288] in 1980,
and Brady [382] in 1985, there is a long tradition of hybridizing Evolutionary Algorithms
with other optimization methods such as Hill Climbing, Simulated Annealing, or Tabu
Search [2507]. A comprehensive review on this topic has been provided by Grosan and
Abraham [1139, 1141].
Hybridization approaches are not limited to GAs as basis algorithm. In ?? for example,
we have already listed a wide variety of approaches to combine the Downhill Simplex with
population-based optimization methods spanning from Genetic Algorithms to Dierential
Evolution and Particle Swarm Optimization. Many of these approaches can be subsumed
under the umbrella term Memetic Algorithms
1
(MAs).
36.1 Memetic Algorithms
The principle of Genetic Algorithms is to simulate the natural evolution in order to solve
optimization problems. In nature, the features of phenotypes are encoded in the genes
of their genotypes. The term Memetic Algorithm was coined by Moscato [1961, 1962] as
allegory for simulating a social evolution where behavioral patterns are passed on in memes
2
.
A meme has been dened by Dawkins [700] as unit of imitation in cultural transmission.
With the simulation of social cooperation and competition, optimization problems can be
solved eciently.
Moscato [1961] uses the example of Chinese martial art Kung-Fu which has developed
over many generations of masters teaching their students certain sequences of movements,
the so-called forms. Each form is composed of a set of elementary aggressive and defensive
patterns. These undecomposable sub-movements can be interpreted as memes. New memes
are rarely introduced and only few amongst the masters of the art have the ability to do
so. Being far from random, such modications involve a lot of problem-specic knowledge
and almost always result in improvements. Furthermore, only the best of the population
of Kung-Fu practitioners can become masters and teach decibels. Kung-Fu ghters can
determine their tness by evaluating their performance or by competing with each other in
tournaments.
Based on this analog, Moscato [1961] creates an example algorithm for solving the Trav-
eling Salesman Problem [118, 1694] by using the three principles of
1. intelligent improvement based on local search with problem-specic operators,
2. competition in form of a selection procedure, and
3. cooperation in form of a problem-specic crossover operator.
1
http://en.wikipedia.org/wiki/Memetic_algorithm [accessed 2007-07-03]
2
http://en.wikipedia.org/wiki/Meme [accessed 2008-09-10]
464 36 MEMETIC AND HYBRID ALGORITHMS
Interesting research work directly focusing on Memetic Algorithms has been contributed,
amongst many others, by Moscato et al. in [329, 451, 1260, 1961, 1963, 2055], Radclie and
Surry [2245], Digalakis and Margaritis [794, 795], and Krasnogor and Smith [1618]. Further
early works on Genetic Algorithm hybridization are Ackley [19] (1987), Goldberg [1075]
(1989), Gorges-Schleuter [1107] (1989), M uhlenbein [1969, 1970, 1972] (1989), Brown et al.
[429] (1989) and Davis [695] (1991).
The denition of Memetic Algorithms given by Moscato [1961] is relatively general and
encompasses many dierent approaches. Even though Memetic Algorithms are a metaphor
based on social evolution, there also exist two theories in natural evolution which t to
the same idea of hybridizing Evolutionary Algorithms with other search methods [2112].
Lamarckism and the Baldwin eect are both concerned with phenotypic changes in living
creatures and their inuence on the tness and adaptation of species.
36.2 Lamarckian Evolution
Lamarckian evolution
3
is a model of evolution accepted by science before the discovery of
genetics. Superseding early the ideas of Erasmus Darwin [686] (the grandfather of Charles
Darwin), Lamarck [722] laid the foundations of the theory later known as Lamarckism with
his book Philosophie Zoologique published in 1809. Lamarckism has two basic principles:
1. Individuals can attain new, benecial characteristics during their lifetime and lose
unused abilities.
2. They inherit their traits (also those acquired during their life) to their ospring.
While the rst concept is obviously correct, the second one contradicts the state of knowledge
in modern biology. This does not decrease the merits of de Monet, Chevalier de Lamarck,
who provided an early idea about how evolution could proceed. In his era, things like genes
and the DNA simply had not been discovered yet. Weismann [2918] was the rst to argue
that the heredity information of higher organisms is separated from the somatic cells and,
thus, could not be inuenced by them [2739]. In nature, no phenotype-genotype mapping
can take place.
ian evolution can be included in Evolutionary Algorithms by performing a local search
starting with each new individual resulting from applications of the reproduction operations.
This search can be thought of as training or learning and its results are coded back into the
genotypes g G [2933]. Therefore, this local optimization approach usually works directly
in the search space G. Here, algorithms such as greedy search Hill Climbing, Simulated
Annealing, or Tabu Search can be utilized, but simply modifying the genotypes randomly
and remembering the best results is also possible.
36.3 Baldwin Eect
The Baldwin eect
4
, [2495, 2740, 2830, 2831] rst proposed by Baldwin [191, 192], Morgan
[1943, 1944], and Osborn [2101] in 1896, is a evolution theory which remains controversial
until today [710, 2179]. Suzuki and Arita [2637] describe it as a possible scenario of in-
teractions between evolution and learning caused by balances between benet and cost of
learning [2873]. Learning is a rather local phenomenon, normally involving only single
individuals, whereas evolution usually takes place in the global scale of a population. The
Baldwin eect combines both in two steps [2739]:
3
http://en.wikipedia.org/wiki/Lamarckism [accessed 2008-09-10]
4
http://en.wikipedia.org/wiki/Baldwin_effect [accessed 2008-09-10]
36.3. BALDWIN EFFECT 465
1. First, lifelong learning gives the individuals the chance to adapt to their environment
or even to change their phenotype. This phenotypic plasticity
5
may help the creatures
to increase their tness and, hence, their probability to produce more ospring. Dif-
ferent from Lamarckian evolution, the abilities attained this way do not inuence the
genotypes nor are inherited.
2. In the second phase, evolution step by step generates individuals which can learn
these abilities faster and easier and, nally, will have encoded them in their genome.
Genotypical traits then replace the learning (or phenotypic adaptation) process and
serve as an energy-saving shortcut to the benecial traits. This process is called genetic
assimilation
6
[28292832].
gG
f(gpm(g))
withlearning
withoutlearning
Fig. 36.1.a: The inuence of learning capabilities of individuals on the tness
landscape, extension of the gure in [1235, 1236].
gG
f(gpm(g))
Case2:
increased
gradient
Case3:
decreased
gradient
Dg Dg
Case1:
neutralizedlandscape
Case4:
smoothedoutlandscape
Fig. 36.1.b: The positive and negative inuence of learning capabilities of
individuals on the tness landscape, extension of the gure in [2637].
Figure 36.1: The Baldwin eect.
Hinton and Nowlan [1235, 1236] performed early experiments on the Baldwin eect with
Genetic Algorithms [253, 1208]. They found that the evolutionary interaction with learning
smoothens the tness landscape [1144] and illustrated this eect on the graphical example of
a needle-in-a-haystack problem. Mayley [1844] used experiments on Kaumans NK tness
landscapes [1501] (see Section 50.2.1) to show that the Baldwin eect can also have negative
inuence. We use Figure 36.1 to sketch both eects that can occur when the tness of an
5
http://en.wikipedia.org/wiki/Phenotypic_plasticity [accessed 2008-09-10]
6
http://en.wikipedia.org/wiki/Genetic_assimilation [accessed 2008-09-10]
466 36 MEMETIC AND HYBRID ALGORITHMS
individual is computed by performing a local search around it, returning the objective values
of the best candidate solution found (without preserving this optimized phenotype).
Whereas learning adds gradient information in regions of the search space which are
distant from local or global optima (case 2 in Fig. 36.1.b), it decreases the information in
their near proximity (called hiding eect [1457, 1844], case 3 in Fig. 36.1.b). Similarly, using
the Baldwin eect in the described way may smoothen out rugged tness landscapes (case
4), it could also reduce smaller gradient information (case 1). Suzuki and Arita [2637] found
that the Baldwin eect decreases the evolution speed in their rugged experimental tness
landscape, but also led to signicantly better results in the long term.
One interpretation of these issues is that learning capabilities help individuals to survive
in adverse conditions since they may nd good abilities by learning and phenotypic adap-
tation. On the other hand, it makes not much of a dierence whether an individual learns
certain abilities or whether it was already born with them when it can exercise them at the
same level of perfection. Thus, the selection pressure furthering the inclusion of good traits
in the heredity information decreases if a life form can learn or adapt its phenotypes.
Like Lamarckian evolution, the Baldwin eect can also be added to Evolutionary Al-
gorithms by performing a local search starting at each new ospring individual. Dierent
from Lamarckism, the abilities and characteristics attained by this process only inuence
the objective values of an individual and are not coded back to the genotypes. Hence, it
plays no role whether the search takes place in the search space G or in the problem space
X. The best objective values f (p
.x)).
36.4. GENERAL INFORMATION ON MEMETIC ALGORITHMS 467
36.4 General Information on Memetic Algorithms
36.4.1 Applications and Examples
Table 36.1: Applications and Examples of Memetic Algorithms.
Area References
Combinatorial Problems [451, 457, 619, 649, 1486, 1581, 1618, 1859, 1961, 2055, 2245,
2374, 2669, 3071]
Computer Graphics [2707]
Data Mining [1581]
Databases [3071]
Distributed Algorithms and Sys-
tems
[769, 872, 1007, 1435, 2020, 2897]
Economics and Finances [1060]
Engineering [769, 1435, 1486, 2897]
Function Optimization [795, 1927]
Graph Theory [63, 329, 769, 872, 1007, 1435, 1486, 2020, 2237, 2374, 2897]
Healthcare [2021, 2022]
Logistics [451, 619, 1581, 1859, 1961, 2245, 2669]
Motor Control [489, 490]
Security [1486]
Software [1486, 2897]
Wireless Communication [63, 1486, 2237, 2374]
36.4.2 Books
1. Recent Advances in Memetic Algorithms [1205]
2. Hybrid Evolutionary Algorithms [1141]
3. Advances in Evolutionary Algorithms [1581]
36.4.3 Conferences and Workshops
Table 36.2: Conferences and Workshops on Memetic Algorithms.
GECCO: Genetic and Evolutionary Computation Conference
See Table 28.5 on page 317.
CEC: IEEE Conference on Evolutionary Computation
See Table 28.5 on page 317.
EvoWorkshops: Real-World Applications of Evolutionary Computing
See Table 28.5 on page 318.
PPSN: Conference on Parallel Problem Solving from Nature
See Table 28.5 on page 318.
WCCI: IEEE World Congress on Computational Intelligence
See Table 28.5 on page 318.
EMO: International Conference on Evolutionary Multi-Criterion Optimization
468 36 MEMETIC AND HYBRID ALGORITHMS
See Table 28.5 on page 319.
AE/EA: Articial Evolution
See Table 28.5 on page 319.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
See Table 28.5 on page 319.
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
ICNC: International Conference on Advances in Natural Computation
See Table 28.5 on page 319.
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
See Table 28.5 on page 320.
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
FEA: International Workshop on Frontiers in Evolutionary Algorithms
See Table 28.5 on page 320.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
See Table 28.5 on page 320.
CIS: International Conference on Computational Intelligence and Security
See Table 28.5 on page 320.
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
See Table 28.5 on page 321.
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
See Table 28.5 on page 321.
36.4. GENERAL INFORMATION ON MEMETIC ALGORITHMS 469
GEM: International Conference on Genetic and Evolutionary Methods
See Table 28.5 on page 321.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
See Table 28.5 on page 321.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
See Table 28.5 on page 321.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
EvoNUM: European Event on Bio-Inspired Algorithms for Continuous Parameter Optimisation
See Table 28.5 on page 321.
FOCI: IEEE Symposium on Foundations of Computational Intelligence
See Table 28.5 on page 321.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
IJCCI: International Conference on Computational Intelligence
See Table 28.5 on page 321.
IWNICA: International Workshop on Nature Inspired Computation and Applications
See Table 28.5 on page 321.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NaBIC: World Congress on Nature and Biologically Inspired Computing
See Table 28.5 on page 322.
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
See Table 28.5 on page 322.
EvoRobots: International Symposium on Evolutionary Robotics
See Table 28.5 on page 322.
ICEC: International Conference on Evolutionary Computation
See Table 28.5 on page 322.
IWACI: International Workshop on Advanced Computational Intelligence
See Table 28.5 on page 322.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
470 36 MEMETIC AND HYBRID ALGORITHMS
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
See Table 28.5 on page 322.
SSCI: IEEE Symposium Series on Computational Intelligence
See Table 28.5 on page 322.
WOMA: International Workshop on Memetic Algorithms
History: 2009/03: Nashville, TN, USA, see [1394]
36.4.4 Journals
1. IEEE Transactions on Evolutionary Computation (IEEE-EC) published by IEEE Computer
Society
2. Genetic Programming and Evolvable Machines published by Kluwer Academic Publishers and
Springer Netherlands
3. Memetic Computing published by Springer-Verlag GmbH
Chapter 37
Ant Colony Optimization
37.1 Introduction
Inspired by the research done by Deneubourg et al. [767, 768, 1111] on real ants and probably
by the simulation experiments by Stickland et al. [2613], Dorigo et al. [810] developed the
Ant Colony Optimization
1
(ACO) Algorithm for problems that can be reduced to nding
optimal paths in graphs in 1996. [807, 811, 819, 1820, 1823] Ant Colony Optimization is
based on the metaphor of ants seeking food. In order to do so, an ant will leave the anthill
and begin to wander into a random direction. While the little insect paces around, it lays
a trail of pheromone. Thus, after the ant has found some food, it can track its way back.
By doing so, it distributes another layer of pheromone on the path. An ant that senses
the pheromone will follow its trail with a certain probability. Each ant that nds the food
will excrete some pheromone on the path. By time, the pheromone density of the path
will increase and more and more ants will follow it to the food and back. The higher the
pheromone density, the more likely will an ant stay on a trail. However, the pheromones
vaporize after some time. If all the food is collected, they will no longer be renewed and the
path will disappear after a while. Now, the ants will head to new, random locations.
This process of distributing and tracking pheromones is one form of stigmergy
2
and was
rst described by Grasse [1123]. Today, we subsume many dierent ways of communication
by modifying the environment under this term, which can be divided into two groups:
sematectonic and sign-based [2425]. According to Wilson [2948], we call modications in
the environment due to a task-related action which leads other entities involved in this task
to change their behavior sematectonic stigmergy. If an ant drops a ball of mud somewhere,
this may cause other ants to place mud balls at the same location. Step by step, these
eects can cumulatively lead to the growth of complex structures. Sematectonic stigmergy
has been simulated on computer systems by, for instance, Theraulaz and Bonabeau [2693]
and with robotic systems by Werfel and Nagpal [2431, 2920, 2921].
The second form, sign-based stigmergy, is not directly task-related. It has been attained
evolutionary by social insects which use a wide range of pheromones and hormones for
communication. Computer simulations for sign-based stigmergy were rst performed by
Stickland et al. [2613] in 1992.
The sign-based stigmergy is copied by Ant Colony Optimization [810], where optimiza-
tion problems are visualized as (directed) graphs. First, a set of ants performs randomized
walks through the graphs. Proportional to the goodness of the solutions denoted by the
paths, pheromones are laid out, i. e., the probability to walk into the direction of the paths
1
http://en.wikipedia.org/wiki/Ant_colony_optimization [accessed 2007-07-03]
2
http://en.wikipedia.org/wiki/Stigmergy [accessed 2007-07-03]
472 37 ANT COLONY OPTIMIZATION
is shifted. The ants run again through the graph, following the previously distributed
pheromone. However, they will not exactly follow these paths. Instead, they may deviate
from these routes by taking other turns at junctions, since their walk is still randomized.
The pheromones modify the probability distributions.
The intention of Ant Colony Optimization is solving combinatorial problems and not
simulating ants realistically [810]. The ants ACO thus dier from real ones in three major
aspects:
1. they have some memory,
2. they are not completely blind, and
3. they are simulated in an environment where time is discrete.
It is interesting to note that even real vector optimizations can be mapped to a graph
problem, as introduced by Korosec and
Silc [1580]. Thanks to such ideas, the applicability
of Ant Colony Optimization is greatly increased.
37.2. GENERAL INFORMATION ON ANT COLONY OPTIMIZATION 473
37.2 General Information on Ant Colony Optimization
37.2.1 Applications and Examples
Table 37.1: Applications and Examples of Ant Colony Optimization.
Area References
Combinatorial Problems [308, 354, 371, 444, 445, 802, 807, 808, 810, 812, 820, 1011
1013, 1145, 1148, 1149, 1486, 1730, 18221825, 1871, 2212,
2811, 3101]
Cooperation and Teamwork [2424]
Data Mining [2674]
Databases [371, 1145, 1822, 1824, 1825]
Distributed Algorithms and Sys-
tems
[328, 353, 354, 786, 811, 843, 871, 963, 1006, 1292, 1633,
1733, 1800, 1863, 2387, 2425, 2493, 2694]
E-Learning [1158, 2763]
Economics and Finances [1060, 1825]
Engineering [786, 787, 871, 1486, 1717, 1733, 2083, 2425, 2694]
Graph Theory [63, 328, 353, 354, 786, 843, 963, 1486, 1733, 1800, 1863,
2387, 2425, 2493, 2694]
Healthcare [2674]
Logistics [354, 444, 445, 802, 808, 810, 812, 820, 1011, 1013, 1148,
1149, 1730, 1823, 2212, 2811]
Multi-Agent Systems [967]
Security [540, 871, 1486]
Software [1486]
Telecommunication [820]
Wireless Communication [63, 787, 1486, 1717]
37.2.2 Books
1. Nature-Inspired Algorithms for Optimisation [562]
2. New Optimization Techniques in Engineering [2083]
3. Swarm Intelligent Systems [2013]
4. Swarm Intelligence: From Natural to Articial Systems [353]
5. Swarm Intelligence: Collective, Adaptive [1524]
6. Swarm Intelligence Introduction and Applications [341]
7. Swarm Intelligence Focus on Ant and Particle Swarm Optimization [525]
8. Advances in Metaheuristics for Hard Optimization [2485]
9. Ant Colony Optimization [809]
10. Fundamentals of Computational Swarm Intelligence [881]
37.2.3 Conferences and Workshops
Table 37.2: Conferences and Workshops on Ant Colony Optimization.
GECCO: Genetic and Evolutionary Computation Conference
See Table 28.5 on page 317.
474 37 ANT COLONY OPTIMIZATION
CEC: IEEE Conference on Evolutionary Computation
See Table 28.5 on page 317.
EvoWorkshops: Real-World Applications of Evolutionary Computing
See Table 28.5 on page 318.
PPSN: Conference on Parallel Problem Solving from Nature
See Table 28.5 on page 318.
WCCI: IEEE World Congress on Computational Intelligence
See Table 28.5 on page 318.
EMO: International Conference on Evolutionary Multi-Criterion Optimization
See Table 28.5 on page 319.
AE/EA: Articial Evolution
See Table 28.5 on page 319.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
IAAI: Conference on Innovative Applications of Articial Intelligence
See Table 10.2 on page 128.
ICANNGA: International Conference on Adaptive and Natural Computing Algorithms
See Table 28.5 on page 319.
ICCI: IEEE International Conference on Cognitive Informatics
See Table 10.2 on page 128.
ICNC: International Conference on Advances in Natural Computation
See Table 28.5 on page 319.
SEAL: International Conference on Simulated Evolution and Learning
See Table 10.2 on page 130.
ANTS: International Workshop on Ant Colony Optimization and Swarm Intelligence
History: 2010/09: Brussels, Belgium, see [434]
2008/09: Brussels, Belgium, see [2580]
2006/09: Brussels, Belgium, see [821]
2004/09: Brussels, Belgium, see [818]
2002/09: Brussels, Belgium, see [816]
2000/09: Brussels, Belgium, see [814, 815]
BIOMA: International Conference on Bioinspired Optimization Methods and their Applications
See Table 28.5 on page 320.
BIONETICS: International Conference on Bio-Inspired Models of Network, Information, and Com-
puting Systems
See Table 10.2 on page 130.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
MICAI: Mexican International Conference on Articial Intelligence
See Table 10.2 on page 131.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
37.2. GENERAL INFORMATION ON ANT COLONY OPTIMIZATION 475
WSC: Online Workshop/World Conference on Soft Computing (in Industrial Applications)
See Table 10.2 on page 131.
CIMCA: International Conference on Computational Intelligence for Modelling, Control and Au-
tomation
See Table 28.5 on page 320.
CIS: International Conference on Computational Intelligence and Security
See Table 28.5 on page 320.
CSTST: International Conference on Soft Computing as Transdisciplinary Science and Technology
See Table 10.2 on page 132.
EUFIT: European Congress on Intelligent Techniques and Soft Computing
See Table 10.2 on page 132.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
EvoCOP: European Conference on Evolutionary Computation in Combinatorial Optimization
See Table 28.5 on page 321.
GEC: ACM/SIGEVO Summit on Genetic and Evolutionary Computation
See Table 28.5 on page 321.
IEA/AIE: International Conference on Industrial and Engineering Applications of Articial Intel-
ligence and Expert Systems
See Table 10.2 on page 133.
ISA: International Workshop on Intelligent Systems and Applications
See Table 10.2 on page 133.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
SoCPaR: International Conference on SOft Computing and PAttern Recognition
See Table 10.2 on page 133.
Progress in Evolutionary Computation: Workshops on Evolutionary Computation
See Table 28.5 on page 321.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
AJWS: Australia-Japan Joint Workshop on Intelligent & Evolutionary Systems
See Table 28.5 on page 321.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
ASC: IASTED International Conference on Articial Intelligence and Soft Computing
See Table 10.2 on page 134.
FOCI: IEEE Symposium on Foundations of Computational Intelligence
See Table 28.5 on page 321.
FWGA: Finnish Workshop on Genetic Algorithms and Their Applications
See Table 29.2 on page 355.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
ICSI: International Conference on Swarm Intelligence
476 37 ANT COLONY OPTIMIZATION
See Table 39.2 on page 485.
IJCCI: International Conference on Computational Intelligence
See Table 28.5 on page 321.
IWNICA: International Workshop on Nature Inspired Computation and Applications
See Table 28.5 on page 321.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
NaBIC: World Congress on Nature and Biologically Inspired Computing
See Table 28.5 on page 322.
TAAI: Conference on Technologies and Applications of Articial Intelligence
See Table 10.2 on page 134.
WPBA: Workshop on Parallel Architectures and Bioinspired Algorithms
See Table 28.5 on page 322.
EvoRobots: International Symposium on Evolutionary Robotics
See Table 28.5 on page 322.
ICEC: International Conference on Evolutionary Computation
See Table 28.5 on page 322.
IWACI: International Workshop on Advanced Computational Intelligence
See Table 28.5 on page 322.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
SEMCCO: International Conference on Swarm, Evolutionary and Memetic Computing
See Table 28.5 on page 322.
SIS: IEEE Swarm Intelligence Symposium
See Table 39.2 on page 486.
SSCI: IEEE Symposium Series on Computational Intelligence
See Table 28.5 on page 322.
37.2.4 Journals
1. International Journal of Swarm Intelligence and Evolutionary Computation (IJSIEC) pub-
lished by Ashdin Publishing (AP)
Chapter 38
River Formation Dynamics
River Formation Dynamics (RFD) is a heuristic optimization method recently developed by
Basalo et al. [229, 230]. It is inspired by the way water forms rivers by eroding the ground
and depositing sediments. In its structure, it is very close to Ant Colony Optimization. In
Ant Colony Optimization, paths through a graph are searched by attaching attributes (the
pheromones) to its edges. The pheromones are laid out by ants (+) and vaporize as time
goes by (-). In River Formation Dynamics, the heights above sea level are the attributes
of the vertexes of the graph. On this landscape, rain begins to fall. Forced by gravity, the
drops ow downhill and try to reach the sea. The altitudes of the points in the graph are
decreased by erosion (-) when water ows over them and increased by sedimentation (+)
if drops end up in a dead end, vaporize, and leave the material which they have eroded
somewhere else behind. Sedimentation punishes inecient paths: If drops reaching a node
surrounded only by nodes of higher altitudes will increase height more and more until it
reaches the level of its neighbors and is not a dead end anymore. While owing over the
map, the probability that a drop takes a certain edge depends on gradient of the down slope.
This gradient, in turn, depends on the dierence in altitude of the nodes it connects and
their distance (i. e., the cost function). Initially, all nodes have the same altitude except for
the destination node which is a hole. New drops are inserted in the origin node and ow
over the landscape, reinforce promising paths, and either reach the destination or vaporize
in dead ends.
Dierent from ACO, cycles cannot occur in RFD because the water always ows downhill.
Of course, rivers in nature may fork and reunite, too. But, unlike ACO, River Formation
Dynamics implicitly creates direction information in its resulting graphs. If this information
is considered to be part of the solution, then cycles are impossible. If it is stripped away,
cycles may occur.
478 38 RIVER FORMATION DYNAMICS
38.1 General Information on River Formation Dynamics
38.1.1 Applications and Examples
Table 38.1: Applications and Examples of River Formation Dynamics.
Area References
Combinatorial Problems [229, 230]
Graph Theory [230]
Logistics [229]
38.1.2 Books
1. Ant Colony Optimization [809]
2. Fundamentals of Computational Swarm Intelligence [881]
3. Swarm Intelligence Focus on Ant and Particle Swarm Optimization [525]
4. Swarm Intelligence Introduction and Applications [341]
5. Swarm Intelligence: Collective, Adaptive [1524]
6. Swarm Intelligence: From Natural to Articial Systems [353]
7. Swarm Intelligent Systems [2013]
8. Nature-Inspired Algorithms for Optimisation [562]
9. New Optimization Techniques in Engineering [2083]
38.1.3 Conferences and Workshops
Table 38.2: Conferences and Workshops on River Formation Dynamics.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
MIC: Metaheuristics International Conference
See Table 25.2 on page 227.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
38.1. GENERAL INFORMATION ON RIVER FORMATION DYNAMICS 479
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
META: International Conference on Metaheuristics and Nature Inspired Computing
See Table 25.2 on page 228.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
38.1.4 Journals
1. Journal of Heuristics published by Springer Netherlands
Chapter 39
Particle Swarm Optimization
39.1 Introduction
Particle Swarm Optimization
1
(PSO), developed by Eberhart and Kennedy [853, 855, 1523]
in 1995, is a form of swarm intelligence in which the behavior of a biological social system
like a ock of birds or a school of sh [2129] is simulated. When a swarm looks for food, its
individuals will spread in the environment and move around independently. Each individual
has a degree of freedom or randomness in its movements which enables it to nd food
accumulations. So, sooner or later, one of them will nd something digestible and, being
social, announces this to its neighbors. These can then approach the source of food, too.
Particle Swarm Optimization has been discussed, improved, and rened by many researchers
such as Cai et al. [468], Gao and Duan [1018], Venter and Sobieszczanski-Sobieski [2799], and
Gao and Ren [1019]. Comparisons with other evolutionary approaches have been provided
by Eberhart and Shi [854] and Angeline [103].
With Particle Swarm Optimization, a swarm of particles (individuals) in a n-dimensional
search space G is simulated, where each particle p has a position p.g G R
n
and a
velocity p.v R
n
. The position p.g corresponds to the genotypes, and, in most cases,
also to the candidate solutions, i. e., p.x = p.g, since most often the problem space X
is also the R
n
and X = G. However, this is not necessarily the case and generally, we
can introduce any form of genotype-phenotype mapping in Particle Swarm Optimization.
The velocity vector p.v of an individual p determines in which direction the search will
continue and if it has an explorative (high velocity) or an exploitive (low velocity) character.
It represents endogenous parameters which we discussed under the subject of Evolution
Strategy in Chapter 30. Whereas the endogenous information in Evolution Strategy is used
for an undirected mutation, the velocity in Particle Swarm Optimization is used to perform
a directed modication of the genotypes (particles positions).
39.2 The Particle Swarm Optimization Algorithm
In the initialization phase of Particle Swarm Optimization, the positions and velocities of all
individuals are randomly initialized. In each step, rst the velocity of a particle is updated
and then its position. Therefore, each particle p has another endogenous parameter: a
memory holding its best position best(p) G.
1
http://en.wikipedia.org/wiki/Particle_swarm_optimization [accessed 2007-07-03]
482 39 PARTICLE SWARM OPTIMIZATION
39.2.1 Communication with Neighbors Social Interaction
In order to realize the social component of natural swarms, a particle furthermore has
a set of topological neighbors N(p). This set could be pre-dened for each particle at
startup. Alternatively, it could contain adjacent particles within a specic perimeter, i. e.,
all individuals which are no further away from p.g than a given distance according to a
certain distance measure
2
dist. Using the Euclidian distance measure dist eucl specied
in ?? on page ?? we get:
p, q pop : q N(p) dist eucl(p.g, q.g) (39.1)
Each particle can communicate with its neighbors, so the best position found so far by any
element in N(p) is known to all of them as best(N(p)). The best position ever visited by
any individual in the population (which the optimization algorithm always keeps track of)
is referred to as best(pop).
39.2.2 Particle Update
One of the basic methods to conduct Particle Swarm Optimization is to use either best(N(p))
or best(pop) for adjusting the velocity of the particle p. If the globally best position is
utilized, the algorithm will converge quickly but maybe prematurely, i. e., may not nd the
global optimum. If, on the other hand, neighborhood communication and best(N(p)) is
used, the convergence speed drops but the global optimum is found more likely.
The search operation q = psoUpdate(p, pop) applied in Particle Swarm Optimization
creates a new particles q to replace an existing one (p) by incorporating its genotype p.g and
its velocity p.v. We distinguish local updating (Equation 39.3) and global updating (Equa-
tion 39.2), which additionally uses the data from the whole population pop. psoUpdate
thus fullls one of these two equations and Equation 39.4, which shows how the i
th
compo-
nents of the corresponding vectors are computed.
q.v
i
= p.v
i
+ (randomUni[0, c
i
) (best(p) .g
i
p.g
i
)) +
(randomUni[0, d
i
) (best(pop) .g
i
p.g
i
))
(39.2)
q.v
i
= p.v
i
+ (randomUni[0, c
i
) (best(p) .g
i
p.g
i
)) +
(randomUni[0, d
i
) (best(N(p)) .g
i
p.g
i
))
(39.3)
q.g
i
= p.g
i
+p.v
i
(39.4)
The learning rate vectors c and d have strong inuence of the convergence speed of Par-
ticle Swarm Optimization. The search space G (and thus, also the values of p.g) is normally
conned by minimum and maximum boundaries. For the absolute values of the velocity,
normally maximum thresholds also exist. Thus, real implementations of psoUpdate have
to check and rene their results before the utility of the candidate solutions is evaluated.
39.2.3 Basic Procedure
Algorithm 39.1 illustrates the native form of the Particle Swarm Optimization using the
basic update procedure. Like Hill Climbing, this algorithm can easily be generalized for
multi-objective optimization and for returning sets of optimal solutions (compare with Sec-
tion 26.3 on page 230).
2
See ?? on page ?? for more information on distance measures.
39.3. GENERAL INFORMATION ON PARTICLE SWARM OPTIMIZATION 483
Algorithm 39.1: x
PSO(f, ps)
Input: f: the function to optimize
Input: ps: the population size
Data: pop: the particle population
Data: i: a counter variable
Output: x
n
i=1
(g[i]), since f(g) corresponds to the number of edges crossing the cut.
In general, the Extremal Optimization algorithm proceeds as follows:
1. Create an initial individual p with a random genotype p.g and set the currently best
known solution candidate x
to its phenotype: x
= p.x.
2. Sort all genes p.g[i] of p.g in a list in ascending order according to their tness contri-
bution (p.g[i]).
3. Then, the gene p.g[i] with the lowest tness contribution is selected from this list
and modied randomly, leading to a new individual p and a new solution candidate
x = p.x = gpm(p.g).
4. If p.x is better that x
, i. e., p.x x
, set x
= p.x.
5. If the termination criterion has not yet been met, continue at step Point 2.
Instead of always picking the weakest part of g, Boettcher and Percus [346] selected the
gene(s) to be modied randomly in order to prevent the method from getting stuck in local
optima. In their work, the probability of a gene at list index j for being drawn is proportional
to j
. This variation was called -EO and showed superior performance compared to the
simple Extremal Optimization. In the graph partitioning problem on which Boettcher and
Percus [346] have worked, two genes from dierent sets needed to be drawn this way in each
step, since always two nodes had to be swapped in order to keep the size of the sub-graphs
constant. Values of in 1.3 . . . 1.6 have been reported to produce good results [346].
The major problem a user is confronted with in Extremal Optimization is how to de-
termine the tness contributions (p.g[i]) of the elements p.g[i] of the genotypes p.g of the
solution candidates p.x. Boettcher and Percus [347] point out themselves that the drawback
41.2. EXTREMAL OPTIMIZATION AND GENERALIZED EXTREMAL OPTIMIZATION495
to EO is that a general denition of tness for individual variables may prove ambiguous or
even impossible [728]. de Sousa and Ramos [725, 727, 728] therefore propose and exten-
sion to EO, called the Generalized Extremal Optimization (GEO) for xed-length binary
genomes G = B
n
. Each gene (bit) p.g[i] in the element p.g of the search space currently
examined, the following procedure is performed:
1. Create a copy g
of p.g.
2. Toggle bit i in g
.
3. Set (p.g[i]) to f(gpm(g
)) in case of minimiza-
tion.
4
By doing so, (p.g[i]) becomes a measure for how adapted the gene is. If f is subject to
maximization, high positive values of f(gpm(g
))
indicated the mutating gene i would yield high improvements in the objective value.
4
In the original work of de Sousa et al. [728], f(x
= gpm(g
expand(g). [1228]
46.1.2.2 Features of the expand Operator
expand is the exploration operation of state space search algorithms. Dierent from the
mutation operator of Evolutionary Algorithms, it usually is deterministic and returns a set
of genotypes instead of single one. Applying it to the same element g values will thus usually
yield the same set G.
The realization of expand has severe impact on the performance of search algorithms.
An ecient implementation, for example, should not include states in the returned set that
have already been visited before by the search. If the same elements are returned, the same
candidate solutions and all of their children will possibly be evaluated multiple times, which
would be useless and time consuming.
Another problem may occur if there are two elements g
1
, g
2
G with g
1
expand(g
2
)
and g
2
expand(g
1
) exist. Especially the uninformed state space search algorithms which
we discuss in the next section may get trapped in an endless loop. Thus, visiting a genotype
twice should always be avoided in state space search. Often, it is possible to design the search
operations in a way preventing this from the start. Otherwise, tabu lists should be used, as
done in the previously discussed Tabu Search algorithm (see Chapter 40 on page 489).
46.1.2.3 Expansion to Individual Lists
Since we want to keep our algorithm denitions as general as possible, we will keep the
notation of individuals p that encompass a genotype p.g G and a phenotype p.x X.
Therefore, we need to an expansion operator that returns a set of individuals P rather than
a set G of elements of the search space. We therefore dene the operation expandP in
Algorithm 46.1.
46.1.3 The Search Space as Graph
In Figure 46.1 we sketch the search space G as a graph spanned by the search operations
searchOp (combined to the set Op used by the expand operator). The genotypes g
i
are
the vertexes in such a graph. A directed edge from a genotype g
i
to another genotype g
j
denotes that g
j
can be reached from g
i
with one search step, i. e., g
j
expand(g
i
). In order
to apply (uninformed) search operations eciently, this graph should by acyclic, meaning
that if there exists a path from g
i
to g
j
along the directed edges, there should not be a path
back from g
j
to g
i
, as we discussed before.
46.1. INTRODUCTION 513
Algorithm 46.1: P expandP(g)
Input: g G: the element of the search space G to be expanded
Data: i: a counter variable
Data: p: an individual record
Output: P: the list of individual records resulting from the expansion
1 begin
2 G expand(g)
3 P ()
4 for i 0 up to len(G) 1 do
5 p
6 p.g G[i]
7 p.x gpm(p.g)
8 P addItem(P, p)
9 return P
g
1
g
2
g
3
g
4
g
5
g
6
g
7
g
8
g
11
g
9
g
12
g
13
g
10
g
1
g
16
g
15
g
17
g
14
g
18
G
g
i
g
j
:g =searchOp(g)or,moregeneral:
j i
g Op (g) g expand(g)
j i j i
1
g
a
: isGoal(gpm(g ))=false
a
g
b
: isGoal(gpm(g ))=true
b
Figure 46.1: An example for a possible search space sketched as acyclic graph.
514 46 STATE SPACE SEARCH
46.1.4 Key Eciency Features
Many state space search methods fall into the category of local search algorithms as given
in Denition D26.1 on page 229. For all state space search strategies, we can dene four
criteria that tell if they are suitable for a given problem or not [797].
1. Completeness. Does the search algorithm guarantee to nd a solution (given that
there exists one)? (Do not mix up with the completeness of search operations specied
in Denition D4.8 on page 85.)
2. Time Consumption. How much time will the strategy need to nd a solution?
3. Memory Consumption. How much memory will the algorithm need to store inter-
mediate steps? Together with time consumption this property is closely related to
complexity theory, as discussed in ?? on page ??.
4. Optimiality. Will the algorithm nd an optimal solution if there exist multiple correct
solutions?
46.2 Uninformed Search
The optimization algorithms that we have considered up to now always use some sort of
utility measure to decide in which direction to search for optima: The objective functions
allow us to make ne distinctions between dierent individuals.
The only exceptions, the only uninformed optimization methods we discussed so far, are
the trivial random walk and sampling as well as exhaustive search algorithms (see Chapter 8
on page 113). Under some circumstances, however, only the criterion isGoal is given as a
form of Boolean objective function.
Denition D46.4 (Uninformed Search). An uninformed search algorithm is an opti-
mization algorithm which does not incorporate any utility information about the candidate
solutions into its search decisions. It only applies a Boolean criterion isGoal which distin-
guishes between phenotypes that are valid solutions from those which are not.
If the objective functions or utility criteria are of Boolean nature, the methods previously
discussed will not be able to estimate and descend some form of gradient. In the best case,
they will degenerate to random walks which still have some chances to nd an optimum. In
the worst case, they will converge to some area in the search space and cease to explore new
solutions soon.
Here, uninformed search strategies
2
are a viable alternative, since they do not require or
take into consideration any knowledge about the special nature of the problem (apart from
the knowledge represented by the expand operation, of course). Such algorithms are very
general and can be applied to a wide variety of problems with small search spaces.
Their common drawback is that they are not suitable if a deep search in a large search
space is required. Without the incorporation of information in form of heuristic functions,
for example, the search may take very long and quickly becomes infeasible [635, 797, 2356].
2
http://en.wikipedia.org/wiki/Uninformed_search [accessed 2007-08-07]
46.2. UNINFORMED SEARCH 515
46.2.1 Breadth-First Search
The uninformed state space search algorithms usually start at one initial local in the search
space. Breadth-rst search
3
(BFS) begins with expanding the neighborhood of the corre-
sponding root candidate solution. All of the states derived from this expansion are visited
and then all their children, and so on. In general, rst all states in depth d are expanded
before considering any state in depth d + 1.
BFS is complete, since it will always nd a solution if there exists one. If so, it will
also nd the solution that can be reached from the root state with the smallest number
of expansion steps. Hence, breadth-rst search is also optimal if the number of expansion
steps needed from the origin to a state is a monotonous function of the objective value of
a solution, i. e., if depth(p
1
.g) > depth(p
2
.g) f(p
1
.x) > f(p
2
.x) where depth(p.g) is the
number of expand steps from the root state r G to p.g.
Algorithm 46.2: X BFS(r, isGoal)
Input: r G: the root state to start the expansion at
Input: isGoal : X B: an operator that checks whether a state is a goal state or not
Data: p: the state currently processed
Data: P: the queue of states to explore
Output: X X: the set with the (single) solution found, or
1 begin
2 P (p = (p.g = r, p.x = gpm(r)))
3 while len(P) > 0 do
4 p P[0]
5 P deleteItem(P, 0)
6 if isGoal(p.x) then return p.x
7 P appendList(P, expandP(p.g))
8 return
Algorithm 46.2 illustrates how breadth-rst search works. The algorithm is initialized
with a root state r G which marks the starting point of the search. BFS uses a state list
P which initially only contains this root individual. In a loop, the rst element p is removed
from this list. If the goal predicate isGoal(p.x) evaluates to true, p.x is a goal state and
we can return a set X = p.x containing it as the solution. Otherwise, we expand p.g and
append the newly found individuals to the end of queue P. If no solution can be found, this
process will continue until the whole accessible search space has been enumerated and P
becomes empty. Then, an empty set is returned in place of X, because there is no element
x in the (accessible part of the) problem space X for which isGoal(x) becomes true.
In order to examine the space and time complexity of BFS, we assume a hypothetical
state space G
H
where the expansion of each state g G
H
will always return a set of
len(expand(g)) = b new states. In depth 0, we only have one state, the root state r. In
depth 1, there are b states, and in depth 2 we can expand each of them to again, b new
states which makes b
2
, and so on. The total number of states up to depth d is given in
Equation 46.3:
1 +b +b
2
+ +b
d
=
b
d+1
+ 1
b 1
O
_
b
d
_
(46.3)
Thus, the space and time complexity are both O
_
b
d
_
and thus, exponentially rise with d. In
the worst case, all nodes in depth d need to be stored, in the best case only those of depth
d 1.
3
http://en.wikipedia.org/wiki/Breadth-first_search [accessed 2007-08-06]
516 46 STATE SPACE SEARCH
46.2.2 Depth-First Search
Depth-rst search
4
(DFS) is very similar to BFS. From the algorithmic point of view, the
only dierence that it uses a stack instead of a queue as internal storage for states (compare
line 4 in Algorithm 46.3 with line 4 in Algorithm 46.2). Here, always the last state element
of the set of expanded states is considered next. Thus, instead of searching level for level
in the breath as BFS does, DFS searches in depth which believe it or not is the reason
for its name. Depth-rst search advances in depth until the current state cannot further be
expanded, i. e., expand(p.g) = (). Then, the search steps again up one level. If the whole
search space has been browsed and no solution is found, is returned.
Algorithm 46.3: X DFS(r, isGoal)
Input: r G: the root individual to start the expansion at
Input: isGoal : X B: an operator that checks whether a state is a goal state or not
Data: p: the state currently processed
Data: P: the stack of states to explore
Output: X X: the set with the (single) solution found, or
1 begin
2 P (p = (p.g = r, p.x = gpm(r)))
3 while len(P) > 0 do
4 p P[len(P) 1]
5 P deleteItem(P, len(P) 1)
6 if isGoal(p.x) then return p.x
7 P appendList(P, expandP(p.g))
8 return
The memory consumption of the DFS grows linearly with the search depth, because
in depth d, at most d b states are held in memory (if we again assume the hypothetical
search space G
H
from the previous section). If we assume a maximum depth m, the time
complexity is b
m
in the worst case where the solution is the last child state in the path which
is explored the last. If m is very large or innite, a depth-rst search may take very long to
discover a solution or will not nd it at all, since it may get stuck in a wrong branch of the
state space which maybe can be followed (expanded) for many step. Also, it may discover
a solution at a deep expansion level while another one may exist in a lower level in another,
not explored branch of the search graph. Hence, depth rst search is neither complete nor
optimal.
46.2.3 Depth-Limited Search
The depth-limited search
5
[2356] is a depth-rst search that only proceeds up to a given
maximum depth d. In other words, it does not examine candidate solutions that are more
than d expand-operations away from the root state r, as outlined in Algorithm 46.4 in
a recursive form. The time complexity now becomes b
d
and the memory complexity is in
O(b d). Of course, the depth-limited search can neither be complete nor optimal. However,
if the maximum depth of the possible solutions in the search tree is known, DLS can be
sucient.
46.2.4 Iteratively Deepening Depth-First Search
The iteratively deepening depth-rst search
6
(IDDFS, [2356]), dened in Algorithm 46.5,
4
http://en.wikipedia.org/wiki/Depth-first_search [accessed 2007-08-06]
5
http://en.wikipedia.org/wiki/Depth-limited_search [accessed 2007-08-07]
6
http://en.wikipedia.org/wiki/IDDFS [accessed 2007-08-08]
46.2. UNINFORMED SEARCH 517
Algorithm 46.4: X DLS(r, isGoal, d)
Input: r G: the root individual to start the expansion at
Input: isGoal : X B: an operator that checks whether a state is a goal state or not
Input: d: the (remaining) allowed depth steps
Input: x X: a phenotype
Input: g G: a genotype
Data: p: the state currently processed
Output: X
d after which the whole space would have be explored and the
algorithm should return if no solution was found.
46.2.5 General Information on Uninformed Search
46.2.5.1 Applications and Examples
518 46 STATE SPACE SEARCH
Table 46.1: Applications and Examples of Uninformed Search.
Area References
Combinatorial Problems [1999, 2065, 3013]
Distributed Algorithms and Sys-
tems
[49, 50, 225, 334, 335, 1146, 1295, 1569, 1570, 1816, 1999,
2065, 2265, 2909, 2998, 3011, 3013, 3067, 3073, 3074]
Economics and Finances [49, 50]
Graph Theory [49, 225, 3013]
Software [1569, 1570, 2265]
46.2.5.2 Conferences and Workshops
Table 46.2: Conferences and Workshops on Uninformed Search.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
46.3 Informed Search
In an informed search
7
, a heuristic function helps to decide which states are to be expanded
next. If the heuristic is good, informed search algorithms may dramatically outperform
uninformed strategies [1887, 2140, 2276]. Based on Denition D1.14 on page 34, we now
provide the more specic Denition D46.5.
Denition D46.5 (Heuristic Function). Heuristic functions : GX R
+
are prob-
lem domain dependent functions which map the individuals (comprised of genotypes p.g G
7
http://en.wikipedia.org/wiki/Search_algorithms#Informed_search [accessed 2007-08-08]
46.3. INFORMED SEARCH 519
and phenotypes p.x X) to the positive real numbers R
+
. All heuristics will be zero for the
elements which are (optimal) solutions, i. e.,
p GX(p.x X) : isGoal(p.x) (p) = 0 heuristics : GX R
+
(46.4)
There are two possible meanings of the values returned by a heuristic function :
1. In the above sense, the value of a heuristic function (p.x) for an individual p is the
higher, the more expand-steps p.g is probably (or approximately) away from nding
a valid solution. Hence, the heuristic function represents the distance of an individual
to a solution of the optimization problem.
2. The heuristic function can also represent an objective function in some way. Suppose
that we know the minimal value y for an objective function f or at least a value
from where on all solutions are feasible. If this is the case, we could set (p.x) =
max 0, f(p.x) y, assuming that f is subject to minimization. Now the value of
heuristic function will be the smaller, the closer an individual is to a possible correct
solution and Equation 46.4 still holds. In other words, a heuristic function may also
represent the distance to a solution in objective space.
Of course, both meanings are often closely related since states that are close to each other
in problem space are probably also close to each other in objective space (the opposite does
not necessarily hold).
Denition D46.6 (Best-Limited Search). A best-limited search
8
[2140] is a search al-
gorithm that incorporates a heuristic function in a way which ensures that promising
individuals p with low estimation values (p.x) are evaluated before other states q that
receive a higher values (q.x) > (p.x).
46.3.1 Greedy Search
A greedy search
9
is a best-limited search where the currently known candidate solution with
the lowest heuristic value is investigated next. The greedy algorithm internal sorts the list
of currently known states in descending order according to a heuristic function . Thus,
the elements with the best (lowest) heuristic value will be at the end of the list, which then
can be used as a stack. The greedy search as specied in Algorithm 46.6 now works like a
depth-rst search on this stack and thus, also shares most of the properties of the DFS. It
is neither complete nor optimal and its worst case time consumption is b
m
. On the other
hand, like breadth-rst search, its worst-case memory consumption is also b
m
.
Greedy Search algorithms always nd the best possible solutions very eciently if the
problem forms a matroid
10
[2110]. In other situations, however, greedy search can produce
very bad results and therefore should be used with extreme care [201].
46.3.2 A
Search
A
search
11
(pronounced A-star search) is a best-limited search that uses an estimation
function
: GX R
+
which is the sum of a heuristic function (p) that estimates the
costs needed to get from p to a valid solution and a function g : GX R
+
that computes
the costs of p.
search proceeds exactly like the greedy search outlined in Algorithm 46.6, if
is used
instead of the plain . For a given start state r G, an isGoal operator isGoal : X B,
and an estimation function
Search(r, isGoal,
) = greedySearch(r, isGoal,
) (46.6)
An A
search is optimal if the heuristic function used is admissible. Optimal in this case
means that there exists no search algorithm that can nd the same solution as the A
search
needing fewer expansion steps if using the same heuristic. If expand is implemented in a
way which prevents that a state is visited more than once, also needs to be monotone in
order for the search to be optimal. [1204]
46.3.3 General Information on Informed Search
46.3.3.1 Applications and Examples
Table 46.3: Applications and Examples of Informed Search.
12
see Denition D51.21 on page 647
46.3. INFORMED SEARCH 521
Area References
Combinatorial Problems [36, 54, 116, 201, 233, 266, 570, 640, 644, 687, 733, 762, 901,
1119, 1153, 1154, 1201, 1486, 1639, 1735, 1803, 1990, 2067,
2117, 2283, 2462, 2483, 2653, 2765, 2769, 2795, 2865, 3027]
Data Mining [116]
Databases [36, 116, 233, 570, 640, 762, 1119, 1153, 1154, 1201, 1639,
1735, 1814, 1990, 2117, 2462, 2483, 2765, 2795, 2865, 3012]
Distributed Algorithms and Sys-
tems
[4850, 54, 233, 334, 335, 687, 761, 1473, 1574, 1797, 2064,
2067, 2117, 2264, 2903, 2909, 3027, 3067, 3074]
Economics and Finances [49, 50, 1060, 2067, 2264]
Engineering [640, 644, 901, 1486, 1574]
Graph Theory [49, 201, 640, 644, 687, 1486, 1574, 2596, 2653, 3027]
Logistics [201, 733, 901, 1803, 2769]
Security [1486]
Software [1486]
Theorem Proong and Automatic
Verication
[640]
Wireless Communication [640, 644, 1486, 2596]
46.3.3.2 Conferences and Workshops
Table 46.4: Conferences and Workshops on Informed Search.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
Chapter 47
Branch And Bound
524 47 BRANCH AND BOUND
47.1 General Information on Branch And Bound
47.1.1 Applications and Examples
Table 47.1: Applications and Examples of Branch And Bound.
Area References
Combinatorial Problems [148, 1095, 1546, 2423]
Databases [1095]
Distributed Algorithms and Sys-
tems
[202]
Engineering [18]
Graph Theory [202]
Logistics [148, 1546]
47.1.2 Books
1. Introduction to Global Optimization [2126]
2. Global Optimization: Deterministic Approaches [1271]
47.1.3 Conferences and Workshops
Table 47.2: Conferences and Workshops on Branch And Bound.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
47.1. GENERAL INFORMATION ON BRANCH AND BOUND 525
See Table 10.2 on page 134.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
Chapter 48
Cutting-Plane Method
528 48 CUTTING-PLANE METHOD
48.1 General Information on Cutting-Plane Method
48.1.1 Applications and Examples
Table 48.1: Applications and Examples of Cutting-Plane Method.
Area References
Combinatorial Problems [252]
Logistics [252]
48.1.2 Books
1. Nonlinear Programming: Analysis and Methods [152]
48.1.3 Conferences and Workshops
Table 48.2: Conferences and Workshops on Cutting-Plane Method.
HIS: International Conference on Hybrid Intelligent Systems
See Table 10.2 on page 128.
NICSO: International Workshop Nature Inspired Cooperative Strategies for Optimization
See Table 10.2 on page 131.
SMC: International Conference on Systems, Man, and Cybernetics
See Table 10.2 on page 131.
EngOpt: International Conference on Engineering Optimization
See Table 10.2 on page 132.
LION: Learning and Intelligent OptimizatioN
See Table 10.2 on page 133.
LSCS: International Workshop on Local Search Techniques in Constraint Satisfaction
See Table 10.2 on page 133.
WOPPLOT: Workshop on Parallel Processing: Logic, Organization and Technology
See Table 10.2 on page 133.
ALIO/EURO: Workshop on Applied Combinatorial Optimization
See Table 10.2 on page 133.
GICOLAG: Global Optimization Integrating Convexity, Optimization, Logic Programming, and
Computational Algebraic Geometry
See Table 10.2 on page 134.
Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Globalna
See Table 10.2 on page 134.
SEA: International Symposium on Experimental Algorithms
See Table 10.2 on page 135.
Part V
Applications
530 48 CUTTING-PLANE METHOD
Chapter 49
Real-World Problems
49.1 Symbolic Regression
In this section, we want to discuss symbolic regression a bit more in detail, after already
shedding some light onto it in Example E31.1 on page 387. In statistics, regression analysis
examines the unknown relation : R
n
R of a dependent variable y R to specied
independent variables x R
m
. Since is not known, the goal is to nd a reasonable good
approximation
.
Denition D49.1 (Regression). Regression
1
[828, 980, 1548] is a statistic technique used
to predict the value of a variable which is dependent one or more independent variables.
The result of the regression process is a function
: R
m
R that relates the m independent
variables (subsumed in the vector x to one dependent variable y
2
= e
randomUni[0,10)
[c
old
[ (49.3)
Notice that the other reproduction operators for tree genomes have been discussed in detail
in Section 31.3 on page 386.
49.1.2 Sample Data, Quality, and Estimation Theory
In the following elaborations, we will reuse some terms that we have applied in our discus-
sion on likelihood in Section 53.6.2 on page 693 in order to nd out what measures will
49.1. SYMBOLIC REGRESSION 533
make good objective functions for symbolic regression problems.Again, we are given a nite
set of sample data A containing n = [A[ pairs of (x
i
, y
i
) where the vectors x
i
R
m
are
known inputs to an unknown function : R
m
R and the scalars y
i
are its observed
outputs (possible contaminated with noise and measurement errors subsumed in the term
i
, see Equation 53.242 on page 693). Furthermore, we can access a (possible innite large)
set of functions : R
m
R which are possible estimators of . For the inputs x
i
,
the results of these functions deviate by the estimation error (see Denition D53.56 on
page 692) from the y
i
.
y
i
= (x
i
) +
i
i [0..n 1] (49.4)
y
i
= (x
i
) +
i
() , i [0..n 1] (49.5)
In order to guide the evolution of estimators (in other words, for driving the regression
process), we need an objective function that furthers candidate solutions that represent the
sample data A and thus, resemble the function , closely. Let us call this driving force
quality function.
Denition D49.4 (Quality Function). The quality function f(, A) denes the quality
of the approximation of a function by a function . The smaller the value of the quality
function is, the more precisely is the approximation of by in the context of the sample
data A.
Under the conditions that the measurement errors
i
are uncorrelated and are all normally
distributed with an expected value of zero and the same variance (see Equation 53.243, Equa-
tion 53.244, and Equation 53.245 on page 693), we have shown in Section 53.6.2 that the best
estimators minimize the mean square error MSE (see Equation 53.258 on page 695, Def-
inition D53.62 on page 696 and Denition D53.59 on page 692). Thus, if the source of the
values y
i
complies at least in a simplied, theoretical manner with these conditions or even
is a real measurement process, the square error is the quality function to choose.
f
=0
(, A) =
lenA1
i=0
(y
i
(x
i
))
2
(49.6)
While this is normally true, there is one exception to the rule: The case where the values
y
i
are no measurements but direct results from and = 0. A common example for this
situation is if we apply symbolic regression in order to discover functional identities [1602,
2033, 2359] (see also Example E49.1 on the next page). Dierent from normal regression
analysis or estimation, we then know exactly and want to nd another function
that
is another, equivalent form of . Therefore, we will use to create sample data set A
beforehand, carefully selecting characteristic points x
i
. Thus, the noise and the measurement
errors
i
all become zero. If we would still regard them as normally distributed, their variance
s
2
would be zero, too.
The proof for the statement that minimizing the square errors maximizes the likelihood
is based on the transition from Equation 53.253 to Equation 53.254 on page 695 where we
cut divisions by s
2
. This is not possible if becomes zero. Hence, we may or may not select
metrics dierent from the square error as quality function. Its feature of punishing larger
deviation stronger than small ones, however, is attractive even if the measurement errors
become zero. Another metric which can be used as quality function in these circumstances
are the sums of the absolute values of the estimation errors:
f
=0
(, A) =
lenA1
i=0
[y
i
(x
i
)[ (49.7)
534 49 REAL-WORLD PROBLEMS
Example E49.1 (An Example and the Phenomenon of Overtting).
If multi-objective optimization can be applied, the quality function should be complemented
by an objective function that puts pressure in the direction of smaller estimations . In
symbolic regression by Genetic Programming, the problem of code bloat (discussed in ??
on page ??) is eminent. Here, functions do not only grow large because they include useless
expressions (like
xx+x
x
x1). A large function may consist of functional expressions only,
but instead of really representing or approximating , it is degenerated to just some sort of
mist decision table. This phenomenon is called overtting and has initially been discussed
in Section 19.1 on page 191.
Let us, for example, assume we want to nd a function similar to Equation 49.8. Of
course, we would hope to nd something like Equation 49.9.
y = (x) = x
2
+ 2x + 1 (49.8)
y =
(x) = (x + 1)
2
= (x + 1)(x + 1) (49.9)
i x
i
y
i
= (x
i
) f
2
(x
i
)
01 5 16 15.59
1 4.9 15.21 15.40
2 0.1 1.21 1.11
3 2.9 15.21 15.61
4 3 16 16
5 3.1 16.81 16.48
6 4.9 34.81 34.54
7 5 36 36.02
8 5.1 37.21 37.56
Table 49.1: Sample Data A = (x
i
, y
i
) : i [0..8] for Equation 49.8
For testing purposes, we choose randomly the nine sample data points listed in Table 49.1.
As result of Genetic Programming based symbolic regression we may obtain something like
Equation 49.10, outlined in Figure 49.2, which represents the data points quite precisely but
has nothing to do with the original form of our equation.
2
(x) = (((((0.934911896352446 * 0.258746335682841) - (x * ((x / ((x -
0.763517999368926) + ( 0.0452368900127981 - 0.947318140392111))) / ((x - (x + x)) +
(0.331546588012695 * (x + x)))))) + 0.763517999368926) + ((x - ((( 0.934911896352446 *
((0.934911896352446 / x) / (x + 0.947390132934724))) + (((x * 0.235903629190878) * (x -
0.331546588012695)) + ((x * x) + x))) / x)) * ((((x - (x * (0.258746335682841 /
0.455160839551232))) / (0.0452368900127981 - 0.763517999368926)) * x) *
(0.763517999368926 * 0.947318140392111)))) - (((((x - (x * (0.258746335682841 /
0.455160839551232))) / (0.0452368900127981 - 0.763517999368926)) * 0.763517999368926)
* x) + (x - (x * (0.258746335682841 * 0.934911896352446))))) 49.10
We obtained both functions
1
(in its second form) and
2
using the symbolic regression
applet of Hannes Planatscher which can be found at http://www.potschi.de/sr/ [ac-
cessed 2007-07-03]
4
. It needs to be said that the rst (wanted) result occurred way more often than
absurd variations like
2
. But indeed, there are some factors which further the evolution of
such eyesores:
1. If only few sample data points are provided, the set of prospective functions that have
a low estimation error becomes larger. Therefore, chances are that symbolic regression
provides results that only match those points but dier in all other points signicantly
from .
4
Another good applet for symbolic regression can be found at http://alphard.ethz.ch/gerber/
approx/default.html [accessed 2007-07-03]
49.1. SYMBOLIC REGRESSION 535
-20
-10
0
10
20
30
-4 -3 -2 1 2 4 3 -5 -1
y j
1
(x) (x)
y
2
(x)
1
(x) (x), and
2
(x).
2. If the sample data points are not chosen wisely, their expressiveness is low. We for
instance chose 4.9,5, and 5.1 as well as 2.9, 3 and 3.1 which form two groups with
members very close to each other. Therefore, a curve that approximately hits these
two clouds is rated automatically with a high quality value.
3. A small population size decreases the diversity and furthers incest between similar
candidate solutions. Due to a lower rate of exploration, only a local minimum of the
quality value will often be yielded.
4. Allowing functions of large depth and putting low pressure against bloat (see ?? on
page ??) leads to uncontrolled function growth. The real laws that we want to ap-
proximate with symbolic regression do usually not consist of more than 40 expressions.
This is valid for most physical, mathematical, or nancial equations. Therefore, the
evolution of large functions is counterproductive in those cases.
Although we made some of these mistakes intentionally, there are many situations where it
is hard to determine good parameter sets and restrictions for the evolution and they occur
accidentally.
49.1.3 Limits of Symbolic Regression
Often, we cannot obtain an optimal approximation of , especially if cannot be repre-
sented by the basic expressions available to the regression process. One of these situations
has already been discussed before: the case where has no closed arithmetical expression.
Another possibility is that the regression method tries to generate a polynomial that ap-
proximates the , but does contain dierent expressions like sin or e
x
or polynomials of
an order higher than available. Yet another problem is that the values y
i
are often not
results computed by directly but could, for example, be measurements taken from some
physical entity and we want to use regression to determine the interrelations between this
entity and some known parameters. Then, the measurements will be biased by noise and
systematic measurement errors. In this situation, f(
A
n1
K which can map such attribute vectors a to a corresponding class k K. The
training set A
t
usually contains only a small subset of the possible attribute vectors and may
even include contradicting samples (a
t,1
= a
t,2
: a
t,1
, a
t,2
A
t
class(a
t,1
) ,= class(a
t,2
)).
The better the classier C is, the more often it can correctly classify attribute vectors.
An overtted classier has no generalization capability: it learns only the exact relations
provided in the training sample but is unable to classify samples not included in A
t
with
reasonable precision. In order to test whether a classier C is overtted, not the complete
available data A is used for learning. Instead, A is divided into the training set A
t
and the
test set A
c
. If Cs precision on A
c
is much worse than on A
t
, it is overtted and should not
be used in a practical application.
49.3 Freight Transportation Planning
5
http://en.wikipedia.org/wiki/Data_mining [accessed 2007-07-03]
49.3. FREIGHT TRANSPORTATION PLANNING 537
49.3.1 Introduction
In this section, we outline a real-world application of Evolutionary Computation to freight
transportation planning which has been developed together with a set of partners in the
research project in.west and published in a set of scientic papers [2188, 2189, 29122914],
most prominently in the chapter Solving Real-World Vehicle Routing Problems with Evo-
lutionary Algorithms [2912] of Natural Intelligence for Scheduling, Planning and Packing
Problems [564] at 10.1007/978-3-642-04039-9 2.
0
400
800
1200
2005 2020 2035 2050
10 t*km
9
Figure 49.3: The freight trac on German roads in billion tons*kilometer.
According to the German Federal Ministry of Economics and Technology [447], the freight
trac volume on German roads will have doubled by 2050 as illustrated in Figure 49.3.
Reasons for this development are the eects of globalization as well as the central location
of the country in Europe. With the steadily increasing freight trac resulting from trade
inside the European Union and global import and export [2248], transportation and logistics
become more important [2768, 2825]. Thus, a need for intelligent solutions for the strategic
planning of logistics becomes apparent [447]. Such a planning process can be considered as
a multi-objective optimization problem which has the goals [2607, 2914] of increasing the
prot of the logistics companies by
1. ensuring on-time collection and delivery of all parcels,
2. utilizing all available means of transportation (rail, trucks) eciently, i. e., decreasing
the total transportation distances by using the capacity of the vehicles to the fullest,
while
3. reducing the CO
2
production in order to become more environment-friendly.
Fortunately, the last point is a side-eect of the others. By reducing the total distance
covered and by transporting a larger fraction of the freight via (inexpensive) trains, not only
the drivers work hours and the costs are decreased, but also the CO
2
production declines.
Ecient freight planning is not a static procedure. Although it involves building an
overall plan on how to deliver orders, it should also be able to dynamically react to unforeseen
problems such as trac jams or accidents. This reaction should lead to a local adaptation of
the plan and re-routing of all involved freight vehicles whereas parts of the plan concerning
geographically distant and uninvolved objects are supposed to stay unchanged.
In the literature, the creation of freight plans is known as the Vehicle Routing Prob-
lem [497, 1091, 2162]. In this section, we present an approach to Vehicle Routing for
real-world scenarios: the freight transportation planning component of the in.west system.
in.west, or Intelligente Wechselbr ucksteuerung in full, is a joint research project of DHL,
Deutsche Post AG, Micromata, BIBA, and OHB Teledata funded by the German Federal
Ministry of Economics and Technology.
6
In the following section, we discuss dierent avors of the Vehicle Routing Problem and
the general requirements of logistics departments which specify the framework for our freight
planning component. These specic conditions rendered the related approaches outlined in
Section 49.3.3 infeasible for our situation. In Section 49.3.4, we present an Evolutionary
6
See http://www.inwest.org/ [accessed 2008-10-29].
538 49 REAL-WORLD PROBLEMS
Algorithm for multi-objective, real-world freight planning problems [2189]. The problem-
specic representation of the candidate solutions and the intelligent search operators working
on them are introduced, as well as the objective functions derived from the requirements.
Our approach has been tested in many dierent scenarios and the experimental results are
summarized in Section 49.3.5. The freight transportation planning component described
in this chapter is only one part of the holistic in.west approach to logistics which will be
outlined in Section 49.3.6. Finally, we conclude with a discussion of the results and future
work in Section 49.3.7.
49.3.2 Vehicle Routing in Theory and Practice
49.3.2.1 Vehicle Routing Problems
The Vehicle Routing Problem (VRP) is one of the most famous combinatorial optimization
problems. In simple terms, the goal is to determine a set of routes than can satisfy sev-
eral geographically scattered customers demands while minimizing the overall costs [2162].
Usually, a eet of vehicles located in one depot is supposed to fulll these requests. In this
context, the original version of the VRP problem was proposed by Dantzig and Ramser
[680] in 1959 who addressed the calculation of a set of optimal routes for a eet of gasoline
delivery trucks.
As described next, a large number of variants of the VRP exist, adding dierent con-
straints to the original denition. Within the scope of in.west, we rst identied all the
restrictions of real-world Vehicle Routing Problems that occur in companies like and then
analyzed available approaches from the literature.
The Capacitated Vehicle Routing Problem (CVRP), for example, is similar to the classical
Vehicle Routing Problem with the additional constraint that every vehicle must have the
same capacity. A xed eet of delivery vehicles must service known customers demands
of a single commodity from a common depot at minimum transit costs [806, 2212, 2262].
The Distance Vehicle Routing Problem (DVRP) is a VRP extended with the additional
constraint on the maximum total distance traveled by each vehicle. In addition, Multiple
Depot Vehicle Routing Problems (MDVRP) have several depots from which customers can
be supplied. Therefore, the MDVPR requires the assignment of customers to depots. A
eet of vehicles is based at each depot. Each vehicle then starts at its corresponding depot,
services the customers assigned to that depot, and returns.
Typically, the planning period for a classical VRP is a single day. Dierent from this
approach are Periodic Vehicle Routing Problems (PVRP), where the planning period is ex-
tended to a specic number of days and customers have to be served several times with
commodities. In practice, Vehicle Routing Problems with Backhauls (VRPB), where cus-
tomers can return some commodities [2212] are very common. Therefore all deliveries for
each route must be completed before any pickups are made. Then, it also becomes necessary
to take into account that the goods which customers return to the deliverer must t into
the vehicle.
The Vehicle Routing Problem with Pick-up and Delivering (VRPPD) is a capacitated
Vehicle Routing Problem where each customer can be supplied with commodities as well
as return commodities to the deliverer. Finally the Vehicle Routing Problem with Time
Windows (VRPTW) is similar to the classical Vehicle Routing Problem with the additional
restriction that time windows (intervals) are dened in which the customers have to be
supplied [2212]. Figure 49.4 shows the hierarchy of Vehicle Routing Problem variants and
also the problems which are relevant in the in.west case.
49.3. FREIGHT TRANSPORTATION PLANNING 539
VRPSPD
VRPB
DVRP
PVRP
multi-depot periodic
d
i
s
t
a
n
c
e
o
r
t
i
m
e
c
o
n
s
t
r
a
i
n
t
s
c
a
p
a
c
i
t
y
c
o
n
s
t
r
a
i
n
t
s
t
i
m
e
w
i
n
d
o
w
s
capacitya.
timeor
const.
distance
w
.
l
o
a
d
i
n
g
a
.
u
n
l
o
a
d
i
n
g
b
a
c
k
h
a
u
l
d
e
p
o
t
i
s
s
r
c
a
n
d
d
e
s
t
VRP MDVRP
VRPTW
CVRP
VRPPD
DCVRP
real-worldproblem
intheDHL/in.west
Figure 49.4: Dierent avors of the VRP and their relation to the in.west system.
49.3.2.2 Model of a Real-World Situation
As it becomes obvious from Figure 49.4, the situation in logistics companies is relatively
complicated and involves many dierent aspects of Vehicle Routing. The basic unit of freight
considered in this work is a swap body b, a standardized container (C 745, EN 284 [2679])
with a dimension of roughly 7.5m 2.6m 2.7m and special appliances for easy exchange
between transportation vehicles or railway carriages. Logistics companies like DHL usually
own up to one thousand such containers. We refer to the union of all swap bodies as the set
B.
We furthermore dene the union of all possible means of transportation as the set F. All
trucks tr F can carry at most a certain maximum number v(tr) of swap bodies at once.
Commonly and also in the case of DHL, this limit is v(tr) = 2. The maximum load of trains
z F, on the other hand, is often more variable and usually ranges somewhere between
30 and 60 ( v(z) [30..60]). Trains have xed routes, departure, and arrival times whereas
freight trucks can move freely on the map. In many companies, trucks must perform cyclic
tours, i.e., return to their point of departure by the end of the day, in order to allow the
drivers to return home.
The clients and the depots of the logistics companies together can form more than one
thousand locations from which freight may be collected or to which it may be delivered.
We will refer to the set of all these locations as L. Each transportation order has a xed
time window [
t
s
,
t
s
] in which it must be collected from its source l
s
L. From there, it has
to be carried to its destination location l
d
L where it must arrive within a time window
[
t
d
,
t
d
]. An order furthermore has a volume v which we assume to be an integer multiple
of the capacity of a swap body. Hence, a transportation order o can fully be described by
the tuple o =
_
l
s
, l
d
, [
t
s
,
t
s
], [
t
d
,
t
d
], v
_
. In our approach, orders which require more than one
(v > 1) swap body will be split up into multiple orders requiring one swap body (v = 1)
each.
Logistics companies usually have to service up to a few thousand such orders per day.
The express unit of the project partner DHL, for instance, delivered between 100 and 3000
540 49 REAL-WORLD PROBLEMS
per day in 2007, depending on the day of the week as well as national holidays etc.
The result of the planning process is a set x of tours. Each single tour is described by
a tuple =
l
s
, l
d
, f,
t,
t, b, o
_
. l
s
and l
d
are the start and destination locations and
t and
t are the departure and arrival time of the vehicle f F. On this tour, f carries the set
b = b
1
, b
2
, . . . of swap bodies which, in turn, contain the orders o = o
1
, o
2
, . . . . It is
assumed that, for each truck, there is at least one corresponding truck driver and that the
same holds for all trains.
Tours are the smallest unit of freight transportation. Usually, multiple tours are com-
bined for a delivery: First, a truck tr may need to drive from the depot in Dortmund to
Bochum to pick up an unused swap body sb (
1
= Dortmund, Bochum, tr, 9am, 10am, , ).
In a subsequent tour
2
= Bochum, Essen, tr, 10.05am, 11am, sb , , it car-
ries the empty swap body sb to a customer in Essen. There, the order
o is loaded into sb and then transported to its destination o.l
d
= Hannover
(
3
= Essen, Hannover, tr, 11.30am, 4pm, sb , o).
Obviously, the set x must be physically sound. It must, for instance, not contain
any two intersecting tours
1
,
2
__
1
.
t <
2
.
t
_
2
.
t <
1
.
t
__
involving the same vehicle
(
1
.f =
2
.f), swap bodies (
1
.b
2
.b ,= ), or orders (
1
.o
2
.o ,= ). Also, it must be en-
sured that all objects involved in a tour reside at .l
s
at time .
i=0
f
i
(x
i
, x
i
1
, x
i
2
, .., x
i
K
) (50.1)
Whenever the value of a gene changes, all the tness values of the genes to whose neighbor set
it belongs will change too to values uncorrelated to their previous state. While N describes
the basic problem complexity, the intensity of this epistatic eect can be controlled with the
parameter K 0..N: If K = 0, there is no epistasis at all, but for K = N 1 the epistasis
is maximized and the tness contribution of each gene depends on all other genes. Two
dierent models are dened for choosing the K neighbors: adjacent neighbors, where the K
nearest other genes inuence the tness of a gene or random neighbors where K other genes
are therefore randomly chosen.
The single functions f
i
can be implemented by a table of length 2
K+1
which is indexed
by the (binary encoded) number represented by the gene x
i
and its neighbors. These tables
contain a tness value for each possible value of a gene and its neighbors. They can be lled
by sampling an uniform distribution in [0, 1) (or any other random distribution).
We may also consider the f
i
to be single objective functions that are combined to a
tness value F
N,K
by a weighted sum approach, as discussed in Section 3.3.3. Then, the
nature of NK problems will probably lead to another well known aspect of multi-objective
optimization: conicting criteria. An improvement in one objective may very well lead to
degeneration in another one.
The properties of the NK landscapes have intensely been studied in the past and the
most signicant results from Kauman [1500], Weinberger [2882], and Fontana et al. [959]
will be discussed here. We therefore borrow from the summaries provided by Altenberg [79]
and Platel et al. [2186]. Further information can be found in [572, 573, 1016, 2515, 2982]. An
analysis of the behavior of Estimation of Distribution Algorithms and Genetic Algorithms
in NK landscapes has been provided by Pelikan [2146].
50.2.1.1 K = 0
For K = 0, the tness function is not epistatic. Hence, all genes can be optimized separately
and we have the classical additive multi-locus model.
1. There is a single optimum x
log
2
(N1)1
i=0
2
i
.
6. With increasing N, the expected tness of local optima reached by an adaptive from
a random initial conguration decreases towards the mean tness F
N,K
=
1
2
of the
search space. This is called the complexity catastrophe [1500].
For K = N 1, the work of Flyvbjerg and Lautrup [935] is of further interest.
50.2.1.3 Intermediate K
1. For small K, the best local optima share many common alleles. As K increases, this
correlation diminishes. This degeneration proceeds faster for the random neighbors
method than for the nearest neighbors approach.
2. For larger K, the tness of the local optima approach a normal distribution with mean
m and variance s approximately
m = +
_
2 ln (K + 1)K + 1 (50.2)
s =
(K + 1)
2
N(K + 1 + 2(K + 2) ln (K + 1))
(50.3)
where is the expected value of the f
i
and
2
is their variance.
3. The mean distance between local optima, roughly twice the length of an adaptive walk,
is approximately
N log
2
(K+1)
2(K+1)
.
4. The autocorrelation function
4
(k, F
N,K
) and the correlation length are:
(k, F
N,K
) =
_
1
K + 1
N
_
k
(50.4)
=
1
ln
_
1
K + 1
N
_ (50.5)
4
See Denition D14.2 on page 163 for more information on autocorrelation.
556 50 BENCHMARKS
50.2.1.4 Computational Complexity
Altenberg [79] nicely summarizes the four most important theorems about the computational
complexity of optimization of NK tness landscapes. These theorems have been proven using
dierent algorithms introduced by Weinberger [2883] and Thompson and Wright [2703].
1. The NK optimization problem with adjacent neighbors is solvable in O
_
2
K
N
_
steps
and thus in T [2883].
2. The NK optimization problem with random neighbors is AT-complete for K
2 [2703, 2883].
3. The NK optimization problem with random neighbors and K = 1 is solvable in poly-
nomial time. [2703].
50.2.1.5 Adding Neutrality NKp, NKq, and Technological Landscapes
As we have discussed in Section 16.1, natural genomes exhibit a certain degree of neutral-
ity. Therefore, researchers have proposed extensions for the NK landscape which introduce
neutrality, too [1031, 1032]. Two of them, the NKp and NKq landscapes, achieve this by
altering the contributions f
i
of the single genes to the total tness. In the following, assume
that there are N tables, each with 2
K
entries representing these contributions.
The NKp landscapes devised by Barnett [219] achieves neutrality by setting a certain
number of entries in each table to zero. Hence, the corresponding allele combinations do
not contribute to the overall tness of an individual. If a mutation leads to a transition
from one such zero conguration to another one, it is eectively neutral. The parameter p
denotes the probability that a certain allele combination does not contribute to the tness.
As proven by Reidys and Stadler [2287], the ruggedness of the NKp landscape does not vary
for dierent values of p. Barnett [218] proved that the degree of neutrality in this landscape
depends on p.
Newman and Engelhardt [2028] follow a similar approach with their NKq model. Here,
the tness contributions f
i
are integers drawn from the range [0, q) and the total tness of a
candidate solution is normalized by multiplying it with
1
/q1. A mutation is neutral when
the new allelic combination resulting from it leads to the same contribution than the old
one. In NKq landscapes, the neutrality decreases with rising values of q. In [1032], you can
nd a thorough discussion of the NK, the NKp, and the NKq tness landscape.
With their technological landscapes, Lobo et al. [1754] follow the same approach from
the other side: the discretize the continuous total tness function F
N,K
. The parameter M
of their technological landscapes corresponds to a number of bins [0,
1
/M), [
1
/M,
2
/M), . . . ,
into which the tness values are sorted and put away.
50.2.2 The p-Spin Model
Motivated by the wish of researching the models for the origin of biological information
by Anderson [94, 2317] and Tsallis and Ferreira [2725], Amitrano et al. [86] developed
the p-spin model. This model is an alternative to the NK tness landscape for tunable
ruggedness [2884]. Other than the previous models, it includes a complete denition for all
genetic operations which will be discussed in this section.
The p-spin model works with a xed population size ps of individuals of an also xed
length N. There is no distinction between genotypes and phenotype, in other words, G = X.
Each gene of an individual x is a binary variable which can take on the values 1 and 1.
G = 1, 1
N
, x
i
[j] 1, 1 i [1..ps], j [0..N 1] (50.6)
50.2. BIT-STRING BASED PROBLEM SPACES 557
On the 2
N
possible genotypic congurations, a space with the topology of an N-dimensional
hypercube is dened where neighboring individuals dier in exactly one element. On this
genome, the Hamming distance dist ham can be dened as
dist ham(x
1
, x
2
) =
1
2
N1
i=0
(1 x
1
[i]x
2
[i]) (50.7)
Two congurations are said to be mutations away from each other if they have the Ham-
ming distance . Mutation in this model is applied to a fraction of the N ps genes in the
population. These genes are chosen randomly and their state is changed, i. e., x[i] x[i].
The objective function f
K
(which is called tness function in this context) is subject to
maximization, i. e., individuals with a higher value of f
K
are less likely to be removed from
the population. For very subset z of exactly K genes of a genotype, one contribution A(z)
is added to the tness.
f
K
(x) =
zP([0..K])|z|=K
A(x[z[0]], x[z[1]], . . . , x[z[K 1]]) (50.8)
A(z) = a
z
z[0] z[1] z[K 1] is the product of an evenly distributed random number a
z
and the elements of z. For K = 2, f
2
can be written as f
2
(x) =
K1
i=0
k1
j=0
a
ij
x[i]x[j], which
corresponds to the spin-glass [311, 1879] function rst mentioned by Anderson [94] in this
context. With rising values of K, this tness landscape becomes more rugged. Its correlation
length is approximately
N
/2K, as discussed thoroughly by Weinberger and Stadler [2884].
For selection, Amitrano et al. [86] suggest to use the measure P
D
(x) dened by Rokhsar
et al. [2317] as follows:
P
D
(x) =
1
1 +e
(f
K
(x)H
0
)
(50.9)
where the coecient is a sharpness parameter and H
0
is a threshold value. For ,
all individuals x with f
K
(x) < H
0
will die and for = 0, the death probability is always
1
2
.
The individuals which have died are then replaced with copies of the survivors.
50.2.3 The ND Family of Fitness Landscapes
The ND family of tness landscapes has been developed by Beaudoin et al. [242] in order
to provide a model problem with tunable neutrality.
The degree of neutrality is dened as the number (or, better, the fraction of) neutral
neighbors (i. e., those with same tness) of a candidate solution, as specied in Equation 16.1
on page 171. The populations of optimization processes residing on a neutral network
(see Section 16.4 on page 173) tend to converge into the direction of the individual which
has the highest degree of neutrality on it. Therefore, Beaudoin et al. [242] create a landscape
with a predened neutral degree distribution.
The search space is again the set of all binary strings of the length N, G = X = B
N
.
Thus, a genotype has minimally 0 and at most N neighbors with Hamming distance 1 that
have the same tness. The array D has the length N + 1 and the element D[i] represents
the fraction of genotypes in the population that have i neutral neighbors.
Beaudoin et al. [242] provide an algorithm that divides the search space into neutral
networks according to the values in D. Since this approach cannot exactly realize the
distribution dened by D, the degrees of neutrality of the single individuals are subsequently
rened with a Simulated Annealing algorithm. The objective (tness) function is created in
form of a complete table mapping X R. All members of a neutral network then receive
the same, random tness.
If it is ensured that all members in a neutral network always have the same tness,
its actual value can be modied without changing the topology of the network. Tunable
deceptiveness is achieved by setting the tness values according to the Trap Functions [19,
1467? ].
558 50 BENCHMARKS
50.2.3.1 Trap Functions
Trap functions f
b,r,x
: B
N
R are subject to maximization based on the Hamming distance
to a pre-dened global optimum x
)
Nb
if N dist ham(x, x
) < b
r(
1
N
dist ham(x,x
)b)
1b
otherwise
(50.10)
Equation 50.11 shows a similar Trap function dened by Ackley [19] where u(x) is the
number of ones in the bit string x of length n and z = 3n/4 [1467]. The objective function
f(x) is subject to maximization is sketched in Figure 50.1.
f(x) =
_
(8n/z) (z u(x)) if u(x) z
(10n/ (n z)) (u(x) z) otherwise
(50.11)
u(x)
f(x) globaloptimium
withsmallbasin
ofattraction
localoptimium
withlargebasin
ofattraction
Figure 50.1: Ackleys Trap function [19, 1467].
50.2.4 The Royal Road
The Royal Road functions developed by Mitchell et al. [1913] and presented rst at the
Fifth International Conference on Genetic Algorithms in July 1993 are a set of special tness
landscapes for Genetic Algorithms [970, 1464, 1913, 2233, 2780]. Their problem space X and
search space G are xed-length bit strings. The Royal Road functions are closely related
to the Schema Theorem
5
and the Building Block Hypothesis
6
and were used to study the
way in which highly t schemas are discovered. They therefore dene a set of schemas
S = s
1
, s
2
, . . . , s
n
and an objective function (here referred to as tness function), subject
to maximization, as
f(x) =
sS
c(s)(s, x) (50.12)
where x X is a bit string, c(s) is a value assigned to the schema s and (s, x) is dened as
(s, x) =
_
1 if x is an instance of s
1 otherwise
(50.13)
In the original version, c(s) is the order of the schema s, i. e., c(s) order(s), and S is
specied as follows (where
*
stands for the dont care symbol as usual).
5
See Section 29.5 on page 341 for more details.
6
The Building Block Hypothesis is elaborated on in Section 29.5.5 on page 346
50.2. BIT-STRING BASED PROBLEM SPACES 559
1 s
1
= 11111111
********************************************************
; c(s
1
) = 8
2 s
2
=
********
11111111
************************************************
; c(s
2
) = 8
3 s
3
=
****************
11111111
****************************************
; c(s
3
) = 8
4 s
4
=
************************
11111111
********************************
; c(s
4
) = 8
5 s
5
=
********************************
11111111
************************
; c(s
5
) = 8
6 s
6
=
****************************************
11111111
****************
; c(s
6
) = 8
7 s
7
=
************************************************
11111111
********
; c(s
7
) = 8
8 s
8
=
********************************************************
11111111; c(s
8
) = 8
9 s
9
= 1111111111111111
************************************************
; c(s
9
) = 16
10 s
10
=
****************
1111111111111111
********************************
; c(s
10
) = 16
11 s
11
=
********************************
1111111111111111
****************
; c(s
11
) = 16
12 s
12
=
************************************************
1111111111111111; c(s
12
) = 16
13 s
13
= 11111111111111111111111111111111
********************************
; c(s
13
) = 32
14 s
14
=
********************************
11111111111111111111111111111111; c(s
14
) = 32
15 s
15
= 1111111111111111111111111111111111111111111111111111111111111111; c(s
15
) = 64
Listing 50.1: An example Royal Road function.
By the way, from this example, we can easily see that a fraction of all mutation and crossover
operations applied to most of the candidate solutions will fall into the dont care areas. Such
modications will not yield any tness change and therefore are neutral.
The Royal Road functions provide certain, predened stepping stones (i. e., building
blocks) which (theoretically) can be combined by the Genetic Algorithm to successively
create schemas of higher tness and order. Mitchell et al. [1913] performed several tests
with their Royal Road functions. These tests revealed or conrmed that
1. Crossover is a useful reproduction operation in this scenario. Genetic Algorithms
which apply this operation clearly outperform Hill Climbing approaches solely based
on mutation.
2. In the spirit of the Building Block Hypothesis, one would expect that the intermediate
steps (for instance order 32 and 16) of the Royal Road functions would help the Genetic
Algorithm to reach the optimum. The experiments of Mitchell et al. [1913] showed the
exact opposite: leaving them away speeds up the evolution signicantly. The reason
is the tness dierence between the intermediate steps and the low-order schemas is
high enough that the rst instance of them will lead the GA to converge to it and wipe
out the low-order schemas. The other parts of this intermediate solution play no role
and may allow many zeros to hitchhike along.
Especially this last point gives us another insight on how we should construct genomes: the
tness of combinations of good low-order schemas should not be too high so other good
low-order schemas do not extinct when they emerge. Otherwise, the phenomenon of domino
convergence researched by Rudnick [2347] and outlined in Section 13.2.3 and Section 50.2.5.2
may occur.
50.2.4.1 Variable-Length Representation
The original Royal Road problems can be dened for binary string genomes of any given
length n, as long as n is xed. A Royal Road benchmark for variable-length genomes has
been dened by Platel et al. [2185].
The problem space X
is
determined by whether or not consecutive building blocks of the length b of the letters l
are present. This presence can be dened as
B
b
(x, l) =
_
1 if i : (0 i < (len(x) b)) (x[i +j] = l j : 0 j < (b 1))
0 otherwise
(50.14)
1. Where b 1 is the length of the building blocks,
560 50 BENCHMARKS
2. is the alphabet with N = [[ letters,
3. l is a letter in ,
4. x X
i=1
B
b
(x, [i]) (50.15)
An optimal individual x
solving the VLR Royal Road problem is thus a string that includes
building blocks of length b for all letters l . Notice that the position of these blocks plays
no role. The set X
b
of all such optima with f
b
(x
) = 1 is then
X
b
x
: B
b
(x
, l) = 1 l (50.16)
Such an optimum x
for b = 3 and = A, T, G, C is
x
= AAAGTGGGTAATTTTCCCTCCC (50.17)
The relevant building blocks of x
i=0
f
i
(B
b
(x, [i]), B
b
(x, [i
1
]), . . . , B
b
(x, [i
K
])) (50.19)
The only thing left is to ensure that the end of the road, i. e., the presence of all N building
blocks, also is the optimum of F
N,K,b
. This is done by exhaustively searching the space B
N
and dening the f
i
in a way that B
b
(x, l) = 1 l F
N,K,b
(x) = 1.
50.2. BIT-STRING BASED PROBLEM SPACES 561
50.2.4.3 Royal Trees
An analogue of the Royal Road for Genetic Programming has been specied by Punch et al.
[2227]. This Royal Tree problem species a series of functions A, B, C, . . . with increasing
arity, i. e., A has one argument, B has two arguments, C has three, and so on. Additionally,
a set of terminal nodes x, y, z is dened.
A
x
Fig. 50.2.a: Perfect A-level
A
x
A
x
B
Fig. 50.2.b: Perfect B-level
A
x
A
x
B
A
x
A
x
A
x
A
x
B
C
B
Fig. 50.2.c: Perfect C-level
Figure 50.2: The perfect Royal Trees.
For the rst three levels, the perfect trees are shown Figure 50.2. An optimal A-level
tree consists of an A node with an x leaf attached to it. The perfect level-B tree has a B as
root with two perfect level-A trees as children. A node labeled with C having three children
which all are optimal B-level trees is the optimum at C-level, and so on.
The objective function, subject to maximization, is computed recursively. The raw tness
of a node is the weighted sum of the tness of its children. If the child is a perfect tree at the
appropriate level, a perfect C tree beneath a D-node, for instance, its tness is multiplied
with the constant FullBonus, which normally has the value 2. If the child is not a perfect
tree, but has the correct root, the weight is PartialBonus (usually 1). If it is otherwise
incorrect, its tness is multiplied with Penalty, which is
1
3
per default. If the whole tree is
a perfect tree, its raw tness is nally multiplied with CompleteBonus which normally is
also 2. The value of a x leaf is 1.
From Punch et al. [2227], we can furthermore borrow three examples for this tness
assignment and outline them in Figure 50.3. A tree which represents a perfect A level has
the score of CompleteBonus FullBonus 1 = 2 2 1 = 4. A complete and perfect tree at
level B receives CompleteBonus(FullBonus4+FullBonus4) = 2(24+24) = 32. At
level C, this makes CompleteBonus(FullBonus 32+FullBonus 32+FullBonus 32) =
2(2 32 + 2 32 + 2 32) = 384.
A
x
A
x
B B
C
B
A
x
A
x
A
x
A
x
Fig. 50.3.a: 2(2 32 + 2 32 +
2 32) = 384
A
x
A
x
B B
C
B
A
x
A
x
x x
Fig. 50.3.b: 2(2 32 + 2 32 +
2
3
1) = 128
2
3
A
x
A
x
B
C
x x
Fig. 50.3.c: 2(2 32 +
1
3
1 +
1
3
1) = 64
2
3
Figure 50.3: Example tness evaluation of Royal Trees
562 50 BENCHMARKS
50.2.4.4 Other Derived Problems
Storch and Wegener [2616, 2617, 2618] used their Real Royal Road for showing that there
exist problems where crossover helps improving the performance of Evolutionary Algorithms.
Naudts et al. [2009] have contributed generalized Royal Road functions functions in order
to study epistasis.
50.2.5 OneMax and BinInt
The OneMax and BinInt are two very simple model problems for measuring the convergence
of Genetic Algorithms.
50.2.5.1 The OneMax Problem
The task in the OneMax (or BitCount) problem is to nd a binary string of length n
consisting of all ones. The search and problem space are both the xed-length bit strings
G = X = B
n
. Each gene (bit) has two alleles 0 and 1 which also contribute exactly this
value to the total tness, i. e.,
f(x) =
n1
i=0
x[i], x X (50.20)
For the OneMax problem, an extensive body of research has been provided by Ackley
[19], B ack [165], Blickle and Thiele [338], Miller and Goldberg [1898], M uhlenbein and
Schlierkamp-Voosen [1975], Thierens and Goldberg [2697], and Wilson and Kaur [2947].
50.2.5.2 The BinInt Problem
The BinInt problem devised by Rudnick [2347] also uses the bit strings of the length n as
search and problem space (G = X = B
n
). It is something like a perverted version of the
OneMax problem, with the objective function dened as
f(x) =
n1
i=0
2
ni1
x[i], x[i] 0, 1 i [0..n 1] (50.21)
Since the bit at index i has a higher contribution to the tness than all other bit at higher
indices together, the comparison between two candidate solutions x
1
and x
2
is won by the
lexicographically bigger one. Thierens et al. [2698] give the example x
1
= (1, 1, 1, 1, 0, 0, 0, 0)
and x
2
= (1, 1, 0, 0, 1, 1, 0, 0), where the rst deviating bit (underlined, at index 2) fully
determines the outcome of the comparison of the two.
We can expect that the bits with high contribution (high salience) will converge quickly
whereas the other genes with lower salience are only pressured by selection when all oth-
ers have already been fully converged. Rudnick [2347] called this sequential convergence
phenomenon domino convergence due to its resemblance with a row of falling domino
stones [2698] (see Section 13.2.3). Generally, he showed that rst, the highly salient genes
converge (i. e., take on the correct values in the majority of the population). Then, step
by step, the building blocks of lower signicance can converge, too. Another result of Rud-
nicks work is that mutation may stall the convergence because it can disturb the highly
signicant genes, which then counters the eect of the selection pressure on the less salient
ones. Then, it becomes very less likely that the majority of the population will have the
best alleles in these genes. This somehow dovetails with the idea of error thresholds from
theoretical biology [867, 2057] which we have mentioned in Section 14.3. It is also explains
some the experimental results obtained with the Royal Road problem from Section 50.2.4.
The BinInt problem was used in the studies of Sastry and Goldberg [2401, 2402].
50.2. BIT-STRING BASED PROBLEM SPACES 563
One of the maybe most important conclusions from the behavior of GAs applied to the
BinInt problem is that applying a Genetic Algorithm to solve a numerical problem (X R
n
)
whilst encoding the candidate solutions binary (G B
n
) in a straightforward manner will
like produce suboptimal solutions. Schraudolph and Belew [2429], for instance, recognized
this problem and suggested a Dynamic Parameter Encoding (DPE) where the values genes of
the bit string are readjusted over time: Initially, optimization takes place on a rather coarse
grained scale and after the optimum on this scale is approximated, the focus is shifted to a
ner interval and the genotypes are re-encoded to t into this interval. In their experiments,
this method works better as the direct encoding.
50.2.6 Long Path Problems
The long path problems have been designed by Horn et al. [1267] in order to construct a
unimodal, non-deceptive problem without noise which Hill Climbing algorithms still can
only solve in exponential time. The idea is to wind a path with increasing tness through
the search space so that any two adjacent points on the path are no further away than one
search step and any two points not adjacent on the path are away at least two search steps.
All points which are not on the path should guide the search to its origin.
The problem space and search space in their concrete realization is the space of the
binary strings G = X = B
l
of the xed, odd length l. The objective function f
lp
(x) is
subject to maximization. It is furthermore assumed that the search operations in Hill
Climbing algorithms alter at most one bit per search step, from which we can follow that
two adjacent points on the path have a Hamming distance of one and two non-adjacent
points dier in at least two bits.
The simplest instance of the long path problems that Horn et al. [1267] dene is the
Root2path P
l
. Paths of this type are constructed by iteratively increasing the search space
dimension. Starting with P
1
= (0, 1), the path P
l+2
is constructed from two copies P
a
l
= P
b
l
of the path P
l
as follows. First, we prepend 00 to all elements of the path P
a
l
and 11 to
all elements of the path P
b
l
. For l = 1 this makes P
a
1
= (000, 001) and P
b
l
= (110, 111).
Obviously, two elements on P
a
l
or on P
b
l
still have a Hamming distance of one whereas
each element from P
a
l
diers at least two bits from each element on P
b
l
. Then, a bridge
element B
l
is created that equals the last element of P
a
l
, but has 01 as the rst two bits,
i. e., B
1
= 011. Now the sequence of the elements in P
b
l
is reversed and P
a
l
, B
l
, and the
reversed P
b
l
are concatenated. Hence, P
3
= (000, 001, 011, 111, 110). Due to this recursive
structure of the path construction, the path length increases exponentially with l (for odd
l):
len(P
l+2
) = 2 len(P
l
) + 1 (50.22)
len(P
l
) = 3 2
l1
2
1 (50.23)
The basic tness of a candidate solution is 0 if it is not on the path and its (zero-based)
position on the path plus one if it is part of the path. The total number of points in the
space is B
l
is 2
l
and thus, the fraction occupied by the path is approximately 3 2
l+1
2
, i. e.,
decreases exponentially. In order to avoid that the long path problem becomes a needle-in-a-
haystack problem
7
, Horn et al. [1267] assign a tness that leads the search algorithm to the
paths origin to all o-path points x
o
. Since the rst point of the path is always the string 00.
..0 containing only zeros, subtracting the number of ones from l, i. e., f
lp
(x
o
) = l count1x
o
,
is the method of choice. To all points on the path, l is added to the basic tness, making
them superior to all other candidate solutions.
7
See Section 16.7 for more information on needle-in-a-haystack problems.
564 50 BENCHMARKS
100
000
101
110 111
001
010 011
f ( )=2
lp
100 f ( )=1
lp
101
f ( )=2
lp
010
f ( )=3
lp
000 f ( )=4
lp
001
f ( )=5
lp
011
f ( )=6
lp
111 f ( )=7
lp
110
Figure 50.4: The root2path for l = 3.
P
1
= (0, 1)
P
3
= (000, 001, 011, 111, 110)
P
5
= (00000, 00001, 00011, 00111, 00110, 01110, 11110, 11111, 11011, 11001, 11000)
P
7
= (0000000, 0000001, 0000011, 0000111, 0000110, 0001110, 0011110, 0011111,
0011011, 0011001, 0011000, 0111000, 1111000, 1111001, 1111011, 1111111,
1111110, 1101110, 1100110, 1100111, 1100011, 1100001, 1100000)
P
9
= (000000000, 000000001, 000000011, 000000111, 000000110, 000001110, 000011110,
000011111, 000011011, 000011001, 000011000, 000111000, 001111000, 001111001,
001111011, 001111111, 001111110, 001101110, 001100110, 001100111, 001100011,
001100001, 001100000, 011100000, 111100000, 111100001, 111100011, 111100111,
111100110, 111101110, 111111110, 111111111, 111111011, 111111001, 111111000,
110111000, 110011000, 110011001, 110011011, 110011111, 110011110, 110001110,
110000110, 110000111, 110000011, 110000001, 110000000)
P
11
= (00000000000, 00000000001, 00000000011, 00000000111, 00000000110,
00000001110, 00000011110, 00000011111, 00000011011, 00000011001,
00000011000, 00000111000, 00001111000, 00001111001, 00001111011,
00001111111, 00001111110, 00001101110, 00001100110, 00001100111,
00001100011, 00001100001, 00001100000, 00011100000, 00111100000,
00111100001, 00111100011, 00111100111, 00111100110, 00111101110,
00111111110, 00111111111, 00111111011, 00111111001, 00111111000,
00110111000, 00110011000, 00110011001, 00110011011, 00110011111,
00110011110, 00110001110, 00110000110, 00110000111, 00110000011,
00110000001, 00110000000, 01110000000, 11110000000, 11110000001,
11110000011, 11110000111, 11110000110, 11110001110, 11110011110,
11110011111, 11110011011, 11110011001, 11110011000, 11110111000,
11111111000, 11111111001, 11111111011, 11111111111, 11111111110,
11111101110, 11111100110, 11111100111, 11111100011, 11111100001,
11111100000, 11011100000, 11001100000, 11001100001, 11001100011,
11001100111, 11001100110, 11001101110, 11001111110, 11001111111,
11001111011, 11001111001, 11001111000, 11000111000, 11000011000,
11000011001, 11000011011, 11000011111, 11000011110, 11000001110,
11000000110, 11000000111, 11000000011, 11000000001, 11000000000)
50.2. BIT-STRING BASED PROBLEM SPACES 565
Table 50.1: Some long Root2paths for l from 1 to 11 with underlined bridge elements.
Algorithm 50.1: r f
lp
(x)
Input: x: the candidate solution with an odd length
Data: s: the current position in x
Data: sign: the sign of the next position
Data: isOnPath: true if and only if x is on the path
Output: r: the objective value
1 begin
2 sign 1
3 s len(x) 1
4 r 0
5 isOnPath true
6 while (s 0) isOnPath do
7 if s = 0 then
8 if x[0] = 1 then r r +sign
9 sub subListxs 22
10 if sub = 11 then
11 r r +sign
_
3 2
s
2
2
_
12 sign sign
13 else
14 if sub ,= 00 then
15 if (x[s] = 0) (x[s 1] = 1) (x[s 2] = 1) then
16 if (s = 2) [(x[s 3] = 1)
(count1subListx0s 3 = 0)]
then
r r +sign
_
3 2
s
2
1
1
_
17 else else isOnPath false
18 else isOnPath false
19 s s 2
20 if isOnPath then r r + len(x)
21 else r len(x) count1x 1
Some examples for the construction of Root2paths can be found in Table 50.1 and the
path for l = 3 is illustrated in Figure 50.4. In Algorithm 50.1 we try to outline how the
objective value of a candidate solution x can be computed online. Here, please notice two
things: First, this algorithm deviates from the one introduced by Horn et al. [1267] we
tried to resolve the tail recursion and also added some minor changes. Another algorithm
for determining f
lp
is given by Rudolph [2349]. The second thing to realize is that for small
l, we would not use the algorithm during the individual evaluation but rather a lookup
table. Each candidate solution could directly be used as index for this table which contains
the objective values. For l = 20, for example, a table with entries of the size of 4B would
consume 4MiB which is acceptable on todays computers.
The experiments of Horn et al. [1267] showed that Hill Climbing methods that only
concentrate on sampling the neighborhood of the currently known best solution perform very
poor on long path problems whereas Genetic Algorithms which combine dierent candidate
solutions via crossover easily nd the correct solution. Rudolph [2349] shows that it does so
in polynomial expected time. He also extends this idea long k-paths in [2350]. Droste et al.
[836] and Garnier and Kallel [1028] analyze this path and nd that also (1+1)-EAs can have
exponential expected runtime on such unimodal functions. H ohn and Reeves [1246] further
elaborate on why long path problems are hard for Genetic Algorithms.
566 50 BENCHMARKS
It should be mentioned that the Root2paths constructed according to the method de-
scribed in this section here do not have the maximum length possible for long paths. Horn
et al. [1267] also introduce Fibonacci paths which are longer than the Root2paths. The
problem of nding maximum length paths in a l-dimensional hypercube is known as the
snake-in-the-box
8
problem [682, 1505] which was rst described by Kautz [1505] in the late
1950s. It is a very hard problem suering from combinatorial explosion and currently, max-
imum snake lengths are only known for small values of l.
50.2.7 Tunable Model for Problematic Phenomena
What is a good model problem? Which model ts best to our purposes? These questions
should be asked whenever we apply a benchmark, whenever we want to use something for
testing the ability of a Global Optimization approach. The mathematical functions intro-
duced in ??, for instance, are good for testing special mathematical reproduction operations
like used in Evolution Strategies and for testing the capability of an Evolutionary Algorithm
for estimating the Pareto frontier in multi-objective optimization. Kaumans NK tness
landscape (discussed in Section 50.2.1) was intended to be a tool for exploring the relation
of ruggedness and epistasis in tness landscapes but can prove very useful for nding out
how capable an Global Optimization algorithm is to deal with problems exhibiting these
phenomena. In Section 50.2.4, we outlined the Royal Road functions, which were used to
investigate the ability of Genetic Algorithms to combine dierent useful formae and to test
the Building Block Hypothesis. The Articial Ant (??) and the GCD problem from ?? are
tests for the ability of Genetic Programming of learning algorithms.
All these benchmarks and toy problems focus on specic aspects of Global Optimization
and will exhibit dierent degrees of the problematic properties of optimization problems to
which we had devoted Part II:
1. premature convergence and multimodality (Chapter 13),
2. ruggedness (Chapter 14),
3. deceptiveness (Chapter 15),
4. neutrality and redundancy (Chapter 16),
5. overtting and oversimplication (Section 19.1), and
6. dynamically changing objective functions (Chapter 22).
With the exception of the NK tness landscape, it remains unclear to which degrees these
phenomena occur in the test problem. How much intrinsic epistasis does the Articial Ant
or the GCD problem emit? What is the quantity of neutrality inherent in Royal Road for
variable-length representations? Are the mathematical test functions rugged and, if so, to
which degree? All the problems are useful test instances for Global Optimization. They have
not been designed to give us answers to questions like: Which tness assignment process
can be useful when an optimization problem exhibits weak causality and thus has a rugged
tness landscape? How does a certain selection algorithm inuence the ability of a Genetic
Algorithm to deal with neutrality? Only Kaumans NK landscape provides such answers,
but only for epistatis. By ne-tuning its N and K parameters, we can generate problems
with dierent degrees of epistatis. Applying a Genetic Algorithm to these problems then
allows us to draw conclusions on its expected performance when being fed with high or low
epistatic real-world problems.
In this section, a new model problem is dened that exhibits ruggedness, epistasis, neu-
trality, multi-objectivity, overtting, and oversimplication features in a controllable manner
Niemczyk [2037], Weise et al. [2910]. Each of them is introduced as a distinct lter compo-
nent which can separately be activated, deactivated, and ne-tuned. This model provides
a perfect test bed for optimization algorithms and their conguration settings. Based on a
8
http://en.wikipedia.org/wiki/Snake-in-the-box [accessed 2008-08-13]
50.2. BIT-STRING BASED PROBLEM SPACES 567
rough estimation of the structure of the tness landscape of a given problem, tests can be
run very fast using the model as a benchmark for the settings of an optimization algorithm.
Thus, we could, for instance, determine a priori whether increasing the population size of
an Evolutionary Algorithm over an approximated limit is likely to provide a gain.
With it, we also can evaluate the behavior of an optimization method in the presence of
various problematic aspects, like epistasis or neutrality. This way, strengths and weaknesses
of dierent evolutionary approaches could be explored in a systematic manner. Additionally,
it is also well suited for theoretical analysis because of its simplicity. The layers of the model,
sketched using an example in Figure 50.5, are specied in the following.
010001100000111010000
gG
Genotype
tc=5, =1,o=1 e
IntroductionofOverfitting
*10001
0101 0 *
0 0111 *
01 0 1 1 *
100110 011010
T
1
T
2
T
3
T
4
h =4
*
h =2
*
h =5
*
h =3
*
h =2
*
h =2
*
h =2
*
h =3
*
f (x )=16
1,1,5 1
*
f (x )=14
1,1,5 2
*
11 101 *
T
5
h =3
*
h =4
*
IntroductionofNeutrality
u (g)
2
G
m=2
01 00 01 10 00 00 11 10 10 00
1 0 1 1 0 0 1 1 1 0
0
h=4
IntroductionofEpistasis
1011 0011 10
1001 0110 11
e
4
e
4
e
2
insufficientbits,
attheend,use
2insteadof
=4
h=
h
m=2,n=6
Multi-ObjectivityandPhenotype
100110 011010
1 0 0 1 0 1 1 0 1 1
x
1
x
2
x
[5]=0
padding:
(x ,x )
1 2
X
g=57, q=25
IntroductionofRuggedness
f (x )=16
1,1,5 1
r [f (x )]=17
57 1,1,5 1
f (x )=14
1,1,5 2
r f (x )) =15
57 1,1,5 2
[ ]
( (r )=82) D
g=57
g`=34
1
2
3
4
5
6
Figure 50.5: An example for the tness landscape model.
568 50 BENCHMARKS
50.2.7.1 Model Denition
The basic optimization task in this model is to nd a bit string x
of a predened length
n = len(x
) consisting of alternating zeros and ones in the space of all possible bit strings
X = B
, as sketched in box 1 in Figure 50.5. The tuning parameter for the problem size is
n N
1
.
Although the model is based on nding optimal bit strings, it is not intended to be a
benchmark for Genetic Algorithms. Instead, the purpose of the model is to provide problems
with specic tness landscape features to the optimization algorithm. An optimization algo-
rithm initially creates a set of random candidate solutions with a nullary creation operator.
It evaluates these solutions and selects promising solutions. To these individuals, unary and
binary reproduction operations are applied. New candidate solutions result, which subse-
quently again undergo selection and reproduction. Notice that the nature of the nullary,
unary, and binary operations and hence, the data structure used to represent the candi-
date solutions is not important from the perspective of the optimization algorithm. The
algorithm makes its selection decisions purely based on the obtained objective values and
also may use this information to decide how often mutation and recombination should be
applied. In other words, the behavior of a general optimization algorithm, such as an EA,
is purely based on the tness landscape features, and not on the precise data structures
representing genotypes and phenotypes.
From this perspective, a Genetic Algorithm is just an instantiation of an Evolutionary
Algorithm with search operations for bit strings. Genetic Programming is just an EA for
trees. If we can nd a good strategy with which a Genetic Algorithm can solve a highly
epistatic problem and this strategy does not involve changes inside the reproduction op-
erators, then this strategy is likely to hold for problems in Genetic Programming as well.
Hence, our benchmark model though working on bit-string based genomes is well suit-
able for providing insights which are helpful for other search spaces as well. It was used,
for example, in order to nd good setups for large-scale experimental studies on GP, where
each experiment was very costly and direct parameter tuning was not possible [2888].
x
= 0101010101010 . . . 01 (50.24)
50.2.7.1.1 Overtting and Oversimplication (box 5)
Searching this optimal string could be done by comparing each genotype g with x
. Therefore
we would use the Hamming distance
9
[1173] dist ham(a, b), which denes the dierence
between two bit strings a and b of equal length as the number of bits in which they dier
(see ??).
Instead of doing this directly, we test the candidate solution against tc training samples
T
1
, T
2
, .., T
tc
. These samples are modied versions of the perfect string x
.
As outlined in Section 19.1 on page 191, we can distinguish between overtting and
oversimplication. The latter is often caused by incompleteness of the training cases and
the former can originate from noise in the training data. Both forms can be expressed in
terms of our model by the objective function f
,o,tc
(based on a slightly extended version of
the Hamming distance dist
Ham
) which is subject to minimization.
dist
Ham
(a, b) = [i : (a[i] ,= b[i]) (b[i] ,= ) (0 i < [a[)[ (50.25)
f
,o,tc
(x) =
tc
i=1
dist
Ham
(x, T
i
) , f
,o,tc
(x) [0,
f] x X (50.26)
In the case of oversimplication, the perfect solution x
f =
tc
i=1
e(i) (50.29)
This process is illustrated as box 5 of Figure 50.5.
50.2.7.1.2 Neutrality (box 2)
We can create a well-dened amount of neutrality during the genotype-phenotype mapping
by applying a transformation u
that
translates a bit string z of length to a bit string e
(z
1
) , e
(z
2
)) 1 z
1
, z
2
B
(50.30)
The meaning of Equation 50.30 is that a change of one bit in a genotype g leads to the change
of at least 1 bits in the corresponding mapping e
as follows:
e
(z) [i] =
_
z[j]
j:0j<
j=(i1) mod
if 0 z < 2
1
, i. e., z[ 1] = 0
e
_
z 2
1
_
[i] otherwise
(50.31)
570 50 BENCHMARKS
In other words, for all strings z B
transformation of z
with the MSB cleared (the value of the MSB is 2
1
). This division in e is needed in order
to ensure its bijectiveness. This and the compliance with Equation 50.30 can be shown with
a rather lengthy proof omitted here.
In order to introduce this model of epistasis in genotypes of arbitrary length, we divide
them into blocks of the length and transform each of them separately with e
. If the length
of a given genotype g is no multiple of , the remaining len(g) mod bits at the end will be
transformed with the function e
len(g) mod
instead of e
0111 0001
1011 1001
1101 0101
1110 0011
1111 1110
z e (z)
4
0011 0110
0101 1010
0110 1100
1001 0010
1010 0100
1100 1000
z e (z)
4
Figure 50.6: An example for the epistasis mapping z e
4
(z).
The tunable parameter for the epistasis ranges from 2 to n m, the product of the
basic problem length n and the number of objectives m (see next section). If it is set to a
value smaller than 3, no additional epistasis is introduced. Figure 50.6 outlines the mapping
for = 4.
Again it should be noted that, besides the explicit epistasis introduced via this trans-
formation, implicit epistasis can occur through the neutrality and ruggedness (see ??) map-
pings. It is not possible to study these three eects completely separately, but with our
model, well-dosed degrees of epistasis, neutrality, and ruggedness can separately or jointly
generated.
50.2.7.1.4 Multi-Objectivity (box 4)
A multi-objective problem with m criteria can easily be created by interleaving m instances
of the benchmark problem with each other and introducing separate objective functions
for each of them. Instead of just dividing the genotype g in m blocks, each standing for
one objective, we scatter the objectives as illustrated in box 4 of Figure 50.5. The bits for
the rst objective function comprise x
1
= (g[0], g[m], g[2m], . . . ), those used by the second
objective function are x
2
= (g[1], g[m+ 1], g[2m+ 1], . . . ). Notice that no bit in g is used by
more than one objective function. Superuous bits (beyond index nm1) are ignored. If g
is too short, the missing bits in the phenotypes are replaced with the complement from x
,
i. e., if one objective misses the last bit (index n 1), it is padded by x
[n 1] which will
worsen the objective by 1 on average.
Because of the interleaving, the objectives will begin to conict if epistasis ( > 2) is
applied, similar to NK landscapes. Changing one bit in the genotype will change the outcome
of at most min , m objectives. Some of them may improve while others may worsen.
A non-functional objective function minimizing the length of the genotypes is added if
variable-length genomes are used during the evolution. If xed-length genomes are used,
they can be designed in a way that the blocks for the single objectives have always the right
length.
50.2. BIT-STRING BASED PROBLEM SPACES 571
50.2.7.1.5 Ruggedness (box 6)
There are two (possibly interacting) sources of ruggedness in a tness landscape. The rst
one, epistasis, has already been modeled and discussed. The other source concerns the
objective functions themselves, the nature of the problem. We will introduce this type
of ruggedness a posteriori by articially lowering the causality of the problem space. We
therefore shue the objective values with a permutation r : [0,
f] [0,
f], where
f the
abbreviation for the maximum possible objective value, as dened in Equation 50.29.
Before we do that, let us shortly outline what makes a function rugged. Ruggedness
is obviously the opposite of smoothness and causality. In a smooth objective function, the
objective values of the candidate solutions neighboring in problem space are also neighboring.
In our original problem with o = 0, = 0, and tc = 1 for instance, two individuals diering
in one bit will also dier by one in their objective values. We can write down the list of
objective values the candidate solutions will take on when they are stepwise improved from
the worst to the best possible conguration as
_
f,
f 1, .., 2, 1, 0
_
. If we exchange two of the
values in this list, we will create some articial ruggedness. A measure for the ruggedness
of such a permutation r is (r):
(r) =
f1
i=0
[r[i] r[i + 1][ (50.32)
The original sequence of objective values has the minimum value
=
f and the maximum
possible value is
=
f(
f+1)
2
. There exists at least one permutation for each value in
..
[0] = 0.
3. (r
) =
+.
With
_
0,
_
, we can ne-tune the ruggedness. For = 0, no ruggedness
is introduced. For a given
f, we can compute the permutations r
f
_
dened in Algorithm 50.2.
r
0
[f]
D( )=5 r
0
f
identity
g=0
r
1
[f]
f D(r =6
1
)
rugged
g=1
r
2
[f]
f D(r =7
2
)
rugged
g=2
r
3
[f]
f D(r =8
3
)
rugged
g=3
r
4
[f]
f D(r =9
4
)
rugged
g=4
f D(r =10
5
)
r
5
deceptive
g=5
r
6
f D(r =11
6
)
deceptive
g=60
r
7
f D(r =12
7
)
deceptive
g=7
f D(r =13
8
)
r
8
rugged
g=8
r
9
f D(r =14
9
)
rugged
g=9
r
10
f D(r )=15
10
rugged
g=10
Figure 50.7: An example for r
buildRPermutation
_
,
f
_
Input: : the value
Input:
f: the maximum objective value
Data: i, j, d, tmp: temporary variables
Data: k, start, r: parameters of the subalgorithm
Output: r
: the permutation r
1 begin
2 Subalgorithm r permutate(k, r, start)
3 begin
4 if k > 0 then
5 if k (
f 1) then
6 r permutate(k 1, r, start)
7 tmp r
_
f
_
8 r
_
f
_
r
_
f k
_
9 r
_
f k
_
tmp
10 else
11 i
_
start + 1
2
_
12 if (start mod 2) = 0 then
13 i
f + 1 i
14 d 1
15 else
16 d 1
17 for j start up to
f do
18 r[j] i
19 i i +d
20 r permutate
_
k
f +start, r, start + 1
_
21 r
_
0, 1, 2, ..,
f 1,
f
_
22 return permutate(, r, 1)
50.2. BIT-STRING BASED PROBLEM SPACES 573
Figure 50.7 outlines all ruggedness permutations r
o
f
G
e
n
e
r
a
t
i
o
n
s
Figure 50.8: The basic problem hardness.
20
30
40
50
60
70
80
90
100
110
0 500 1000 1500 2000 2500 3000
g
atn=80
rearranged ` g
original g
deceptivegaps
deceptivenes/
ruggnessfold
st
-
Figure 50.9: Experimental results for the ruggedness.
50.2. BIT-STRING BASED PROBLEM SPACES 575
correspond to gaps in the curve. With rising , the solvable problems require more and
more generations until they are solved. After a certain (earlier) threshold value, the
unsolvable sections become solvable. From there on, they become simpler with rising . At
some point, the two parts of the curve meet.
Algorithm 50.3: translate
_
f
_
Input:
f
_
f 1
_
2
3 i
_
f
2
_
f + 1
2
_
4 if
fi then
5 j
f + 2
2
f
2
4
+ 1
_
6 k j
_
f + 2
_
+j
2
+
f
7 return k + 2
_
j
_
f + 2
_
j
2
f
_
j
8 else
9 j
_
_
f mod 2
_
+ 1
2
+
_
1
_
f mod 2
_
4
+ 1 i
_
10 k
_
j
_
f mod 2
__
(j 1) 1 i
11 return l k 2j
2
+j
_
f mod 2
_
(2j + 1)
The reason for this behavior is rooted in the way that we construct the ruggedness
mapping r and illustrates the close relation between ruggedness and deceptiveness. Algo-
rithm 50.2 is a greedy algorithm which alternates between creating groups of mappings that
are mainly rugged and such that are mainly deceptive. In Figure 50.7 for instance, from
= 5 to = 7, the permutations exhibit a high degree of deceptiveness whilst just being
rugged before and after that range. Thus, it seems to be a good idea to rearrange these
sections of the ruggedness mapping. The identity mapping should still come rst, followed
by the purely rugged mappings ordered by their -values. Then, the permutations should
gradually change from rugged to deceptive and the last mapping should be the most de-
ceptive one ( = 10 in Figure 50.7). The black curve in Figure 50.9 depicts the results of
rearranging the -values with Algorithm 50.3. This algorithm maps deceptive gaps to higher
-values and, by doing so, makes the resulting curve continuous.
12
Fig. 50.10.a sketches the average success generations for the rearranged ruggedness prob-
lem for multiple values of n and
.
In Algorithm 50.2 and Algorithm 50.3, we use the maximum value of the functional
objective function (abbreviated with
f) in order to build and to rearrange the ruggedness
12
This is a deviation from our original idea, but this idea did not consider deceptiveness.
576 50 BENCHMARKS
0
2000
4000
6000
8000
g`
0
100
200
300
0
40
80
120
160
n
st
-
Fig. 50.10.a: Unscaled ruggedness st plot.
0
40
80
120
160
0
2
4
6
8
0
100
200
300
n
ru
g
g
ed
n
ess(sca
led
)
st
-
Fig. 50.10.b: Scaled ruggedness st plot.
40
80
120
160
0
2
4
6
8
0
100
200
n
d
e
c
e
p
tiv
e
n
e
ss(sc
a
le
d
)
st
-
Fig. 50.10.c: Scaled deceptiveness average success
generations st
40
80
120
160
0
2
4
8
6
0%
33%
66%
100%
n
d
e
c
e
p
tiv
e
n
e
ss(sc
a
le
d
)
1-s/r
Fig. 50.10.d: Scaled deceptiveness failed runs
Figure 50.10: Experiments with ruggedness and deceptiveness.
50.2. BIT-STRING BASED PROBLEM SPACES 577
permutations r. Since this value depends on the basic problem length n, the number of
dierent permutations and thus, the range of the
r
=
_
0.5
f
_
_
0.5
f
_
, and the minimum and maximum ruggedness values according
to Equation 50.32.
rugged:
= round(0.1g
r
) (50.33)
deceptive:
=
_
0 if g 0
r
+ round
_
0.1g
_
r
__
otherwise
(50.34)
When using this scaling mechanism, the curves resulting from experiments with dierent
n-values can be compared more easily: Fig. 50.10.b based on the scale from Equation 50.33,
for instance, shows much clearer how the problem diculty rises with increasing ruggedness
than Fig. 50.10.a. We also can spot some irregularities which always occur at about the
same degree of ruggedness, near g 9.5, and that we will investigate in future.
The experiments with the deceptiveness scale Equation 50.34 show the tremendous eect
of deceptiveness in the tness landscape. Not only does the problem hardness rise steeply
with g (Fig. 50.10.c), after certain threshold, the Evolutionary Algorithm becomes unable to
solve the model problem at all (in 1000 generations), and the fraction of failed experiments
in Fig. 50.10.d jumps to 100% (since the fraction s/r of solved ones goes to zero).
50.2.7.2.3 Epistasis
Fig. 50.11.a illustrates the relation between problem size n, the epistasis factor , and
0
40
80
120
160
10
20
30
40
50
0
200
400
600
800
n
h
st
-
Fig. 50.11.a: Epistasis and problem length n.
0
40
80
120
160
10
20
30
40
50
0
40%
80%
n
h
1-s/r
Fig. 50.11.b: Epistasis and problem length n:
failed runs.
Figure 50.11: Experiments with epistasis.
the average success generations. Although rising epistasis makes the problems harder, the
complexity does not rise as smoothly as in the previous experiments. The cause for this is
likely the presence of crossover if mutation was allowed solely, the impact of epistasis would
most likely be more intense. Another interesting fact is that experimental settings with odd
values of tend to be much more complex than those with even ones. This relation becomes
even more obvious in Fig. 50.11.b, where the proportion of failed runs, i. e., those which
were not able to solve problem in less than 1000 generations, is plotted. A high plateau
for greater values of is cut by deep valleys at positions where = 2 + 2i i N
1
. This
578 50 BENCHMARKS
phenomenon has thoroughly been discussed by Niemczyk [2037] and can be excluded from
the experiments by applying the scaling mechanism with parameter y [0, 10] as dened in
Equation 50.35:
epistasis: =
_
_
_
y 0 if 2
y 10 if 41
2 2y + 1 otherwise
(50.35)
50.2.7.2.4 Neutrality
Figure 50.12 illustrates the average number of generations st needed to grow an individual
0
0
40
80
120
160
10
20
30
40
50
100
200
300
n
m
st
-
Figure 50.12: The results from experiments with neutrality.
with optimal functional tness for dierent values of the neutrality parameter . Until
10, the problem hardness increases rapidly. For larger degrees of redundancy, only
minor increments in st can be observed. The reason for this strange behavior seems to be the
crossover operation. Niemczyk [2037] shows that a lower crossover rate makes experiments
involving the neutrality lter of the model problem very hard. We recommend using only
-values in the range from zero to eleven for testing the capability of optimization methods
of dealing with neutrality.
50.2.7.2.5 Epistasis and Neutrality
Our model problem consists of independent lters for the properties that may inuence the
hardness of an optimization task. It is especially interesting to nd out whether these lters
can be combined arbitrarily, i. e., if they are indeed free of interaction. In the ideal case, st
of an experiment with n = 80, = 8, and = 0 added to st of an experiment for n = 80,
= 0, and = 4 should roughly equal to st of an experiment with n = 80, = 8, and = 4.
In Figure 50.13, we have sketched these expected values (Fig. 50.13.a) and the results of the
corresponding real experiments (Fig. 50.13.b). In fact, these two diagrams are very similar.
The small valleys caused by the easier values of (see Paragraph 50.2.7.2.3) occur in both
charts. The only dierence is a stronger inuence of the degree of neutrality.
50.2.7.2.6 Ruggedness and Epistasis
It is a well-known fact that epistasis leads to ruggedness, since it violates the causality as
discussed in Chapter 17. Combining the ruggedness and the epistasis lter therefore leads
to stronger interactions. In Fig. 50.14.b, the inuence of ruggedness seems to be amplied
by the presence of epistasis when compared with the estimated results shown in Fig. 50.14.a.
Apart from this increase in problem hardness, the model problem behaves as expected. The
characteristic valleys stemming from the epistasis lter are clearly visible, for instance.
50.2. BIT-STRING BASED PROBLEM SPACES 579
0
100
300
1
3
5
7
9
3
5
7
9
m
h
st
-
Fig. 50.13.a: The expected results.
0
100
200
400
1
3
5
7
9
3
5
7
9
h
m
st
-
Fig. 50.13.b: The experimentally obtained re-
sults.
Figure 50.13: Expection and reality: Experiments involving both, epistasis and neutrality
0
100
300
1
3
5
7
9
0
2
4
6
8
h
r
u
g
g
e
d
n
e
s
s
(
s
c
a
l
e
)
st
-
Fig. 50.14.a: The expected results.
0
150
300
450
1
3
5
7
9
0
2
4
6
8
h
r
u
g
g
e
d
n
e
s
s
(
s
c
a
l
e
)
st
-
Fig. 50.14.b: The experimentally obtained re-
sults.
Figure 50.14: Expection and reality: Experiments involving both, ruggedness and epistasis
580 50 BENCHMARKS
50.2.7.3 Summary
In summary, this model problem has proven to be a viable approach for simulating prob-
lematic phenomena in optimization. It is
1. functional, i. e., allows us to simulate many problematic features,
2. tunable each lter can be tuned independently,
3. easy to understand,
4. allows for very fast tness computation,
5. easily extensible each lter can be replaced with other approaches for simulating the
same feature.
Niemczyk [2037] has written a stand-alone Java class implementing the model
problem which is provided at http://www.it-weise.de/documents/files/
TunableModel.java [accessed 2008-05-17]. This class allows setting the parameters discussed
in this section and provides methods for determining the objective values of individuals in
the form of byte arrays. In the future, some strange behaviors (like the irregularities in the
ruggedness lter and the gaps in epistasis) of the model need to be revisited, explained, and,
if possible, removed.
50.3 Real Problem Spaces
Mathematical benchmark functions are especially interesting for testing and comparing
techniques based on real vectors (X R
n
) like plain Evolution Strategy (see Chapter 30
on page 359), Dierential Evolution (see Chapter 33 on page 419), and Particle Swarm
Optimization (see Chapter 39 on page 481). However, they only require such vectors as
candidate solutions, i. e., elements of the problem space X. Hence, techniques with dier-
ent search spaces G, like Genetic Algorithms, can also be applied to them, given that a
genotype-phenotype mapping gpm : G X R
n
is provided accordingly.
The optima or the Pareto frontier of benchmark functions often have already been de-
termined theoretically. When applying an optimization algorithm to the functions, we are
interested in the number of candidate solutions which they need to process in order to nd
the optima and how close we can get to them. They also give us a great opportunity to
nd out about the inuence of parameters like population size, the choice of the selection
algorithm, or the eciency of reproduction operations.
50.3.1 Single-Objective Optimization
In this section, we list some of the most important benchmark functions for scenarios in-
volving only a single optimization criterion. This, however, does not mean that the search
space has only a single dimension even a single-objective optimization can take place in
n-dimensional space R
n
.
50.3. REAL PROBLEM SPACES 581
50.3.1.1 Sphere
The sphere functions listed by Suganthan et al. [2626] (or as F
1
by De Jong [711] and
in [2934], f
1
in [3020, 3026]) and dened here in Table 50.2 as f
RSO1
are a very simple mea-
sure of eciency of optimization methods. They have, for instance, been used by Rechenberg
[2278] for testing his Evolution Strategy-approach. In Table 50.3 we list some results ob-
tained for optimizing the sphere function from related work and in Figure 50.15, we illustrate
f
RSO1
for one-dimensional and two-dimensional problem spaces X. The code snippet provided
in Listing 50.2 shows how the sphere function can be computed and in Table 50.3, we list
some results for the application of optimizers to the sphere function from literature.
function: f
RSO1
(x) =
n
i=1
x
i
2
50.36
domain: X = [v, v]
n
, v 5.12, 10, 100 50.37
optimization: minimization
optimum: x
= (0, 0, .., 0)
T
, f
RSO1
(x
) = 0 50.38
separable: yes
multimodal: no
Table 50.2: Properties of the sphere function.
0
2000
4000
6000
8000
10000
-100 -50 0 50 100
f
x X
x
^
Fig. 50.15.a: 1d
-100
-50
0
50
100 -100
-50
0
50
100
0
6000
12000
18000
f
x X
x
^
Fig. 50.15.b: 2d
Figure 50.15: Examples for the sphere function (v = 100).
1 public static final double computeSphere(final double[] ind) {
2 int i;
3 double res;
4
5 res = 0;
6 for (i = (ind.length - 1); i >= 0; i--) {
7 res += (ind[i]
*
ind[i]);
8 }
9
10 return res;
11 }
Listing 50.2: A Java code snippet computing the sphere function.
Table 50.3: Results obtained for the sphere function with function evaluations.
582 50 BENCHMARKS
n, v f
RSO1
(x) Algorithm Class Reference
500, 100 2.5 10
6
2.41E-11 SaNSDE DE [3020]
500, 100 2.5 10
6
4.90E-8 FEPCC EA [3020]
500, 100 2.5 10
6
2.28E-21 DECC-O DE [3020]
500, 100 2.5 10
6
6.33E-27 DECC-G DE [3020]
1000, 100 5 10
6
6.97 SaNSDE DE [3020]
1000, 100 5 10
6
5.40E-8 FEPCC EA [3020]
1000, 100 5 10
6
1.77E-20 DECC-O DE [3020]
1000, 100 5 10
6
2.17E-25 DECC-G DE [3020]
50, 10 2.5 10
5
1.38E-18 LSRS HC [1140]
50, 10 1 10
7
1.534E1 GA [1140]
50, 10 1 10
7
1.0016E2 PSO [1140]
100, 10 2.5 10
5
6.94E-16 LSRS HC [1140]
100, 10 1 10
7
6.483E1 GA [1140]
100, 10 1 10
7
2.492E2 PSO [1140]
500, 10 2.5 10
6
9E-16 LSRS HC [1140]
500, 10 1 10
7
1.2E3 GA [1140]
500, 10 1 10
7
2.18035E3 PSO [1140]
1000, 10 2.5 10
6
1.25E-18 LSRS HC [1140]
1000, 10 1 10
7
3.45E3 GA [1140]
1000, 10 1 10
7
5.5E3 PSO [1140]
2000, 10 2.5 10
6
2.35E-33 LSRS HC [1140]
50.3. REAL PROBLEM SPACES 583
50.3.1.2 Schwefels Problem 2.22 (Schwefel Function)
This function is dened as f
2
in [3026]. Here, we name it f
RSO2
and list its features in
Table 50.4. In Figure 50.16 we sketch it one and two-dimensional version, Listing 50.3
contains a Java snippet showing how it can be computed, and provides some results for
this function from literature Table 50.5.
function f
RSO2
(x) =
n
i=1
[x
i
[ +
n
i=1
[x
i
[ 50.39
domain X = [v, v]
n
, v 10 50.40
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO2
(x
) = 0 50.41
separable yes
multimodal no
Table 50.4: Properties of Schwefels problem 2.22.
0
4
8
12
16
-10 -5 0 5 10
x
^
f
x X
Fig. 50.16.a: 1d
-10
-5
0
5
10 -10
-5
0
5
10
0
40
80
120
x
^
f
x X
Fig. 50.16.b: 2d
Figure 50.16: Examples for Schwefels problem 2.22.
1 public static final double computeSchwefel222(final double[] ind) {
2 int i;
3 double r1, r2, x;
4
5 r1 = 1d;
6 r2 = 0d;
7 for (i = (ind.length - 1); i >= 0; i--) {
8 x = Math.abs(ind[i]);
9 r1
*
= x;
10 r2 += x;
11 }
12
13 return (r1 + r2);
14 }
Listing 50.3: A Java code snippet computing Schwefels problem 2.22.
Table 50.5: Results obtained for Schwefels problem 2.22 with function evaluations.
584 50 BENCHMARKS
n, v f
RSO2
(x) Algorithm Class Reference
500, 10 2.5 10
6
5.27E-2 SaNSDE DE [3020]
500, 10 2.5 10
6
1.3E-3 FEPCC EA [3020]
500, 10 2.5 10
6
3.77E-10 DECC-O DE [3020]
500, 10 2.5 10
6
5.95E-15 DECC-G DE [3020]
500, 10 2.5 10
6
4.08E-19 LSRS HC [1140]
500, 10 1 10
7
6.0051E2 GA [1140]
500, 10 1 10
7
8.9119E2 PSO [1140]
1000, 10 5 10
6
1.24 SaNSDE DE [3020]
1000, 10 5 10
6
2.6E-3 FEPCC EA [3020]
1000, 10 5 10
6
+ DECC-O DE [3020]
1000, 10 5 10
6
5.37E-14 DECC-G DE [3020]
1000, 10 2.5 10
6
1.12E-17 LSRS HC [1140]
1000, 10 1 10
7
1.492E3 GA [1140]
1000, 10 1 10
7
4.1E47 PSO [1140]
50, 10 2.5 10
5
1.91E-11 LSRS HC [1140]
50, 10 1 10
7
1.346E1 GA [1140]
50, 10 1 10
7
4.68E1 PSO [1140]
100, 10 2.5 10
5
3.98E-10 LSRS HC [1140]
100, 10 1 10
7
4.007E1 GA [1140]
100, 10 1 10
7
1.0486E2 PSO [1140]
2000, 10 2.5 10
6
3.08E-17 LSRS HC [1140]
50.3. REAL PROBLEM SPACES 585
50.3.1.3 Schwefels Problem 1.2 (Quadric Function)
This function is dened as f
3
in [3026] and is here introduced as f
RSO3
in Table 50.6. In
Figure 50.17, we sketch this function for one and two dimensions, in Listing 50.4, we give a
Java code snippet showing how it can be computed, and Table 50.7 contains some results
from literature.
function f
RSO3
(x) =
n
i=1
_
_
i
j=1
x
i
_
_
2
50.42
domain X = [v, v]
n
, v 10, 100 50.43
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO3
(x
) = 0 50.44
separable no
multimodal no
Table 50.6: Properties of Schwefels problem 1.2.
0
2000
4000
6000
8000
10000
-100 -50 0 50 100
f
x X
x
^
Fig. 50.17.a: 1d
-100
-50
0
50
100 -100
-50
0
50
100
0
10e3
20e3
30e3
40e3
f
x
^
x X
Fig. 50.17.b: 2d
Figure 50.17: Examples for Schwefels problem 1.2.
1 public static final double computeSchwefel12(final double[] ind) {
2 int i, j;
3 double res, d;
4
5 res = 0d;
6 for (i = (ind.length - 1); i >= 0; i--) {
7 d = 0d;
8 for (j = 0; j <= i; j++) {
9 d += ind[j];
10 }
11 res += (d
*
d);
12 }
13
14 return res;
15 }
Listing 50.4: A Java code snippet computing Schwefels problem 1.2.
Table 50.7: Results obtained for Schwefels problem 1.2 with function evaluations.
586 50 BENCHMARKS
n, v f
RSO3
(x) Algorithm Class Reference
500, 100 2.5 10
6
2.03E-8 SaNSDE DE [3020]
500, 100 2.5 10
6
FEPCC EA [3020]
500, 100 2.5 10
6
2.93E-19 DECC-O DE [3020]
500, 100 2.5 10
6
6.17E-25 DECC-G DE [3020]
1000, 100 5 10
6
6.43E1 SaNSDE DE [3020]
1000, 100 5 10
6
FEPCC EA [3020]
1000, 100 5 10
6
8.69E-18 DECC-O DE [3020]
1000, 100 5 10
6
3.71E-23 DECC-G DE [3020]
50, 10 2.5 10
5
6.27E-19 LSRS HC [1140]
50, 10 1 10
7
6.113E3 GA [1140]
50, 10 1 10
7
7.81E4 PSO [1140]
100, 10 2.5 10
5
1.15E-15 LSRS HC [1140]
100, 10 1 10
7
2.22E5 GA [1140]
100, 10 1 10
7
7.81E5 PSO [1140]
500, 10 2.5 10
6
4.31E-11 LSRS HC [1140]
500, 10 1 10
7
1.25E8 GA [1140]
500, 10 1 10
7
1.47E8 PSO [1140]
1000, 10 2.5 10
6
1.38E-29 LSRS HC [1140]
1000, 10 1 10
7
6.28E8 GA [1140]
1000, 10 1 10
7
1.61E6 PSO [1140]
2000, 10 2.5 10
6
1.69E-7 LSRS HC [1140]
50.3. REAL PROBLEM SPACES 587
50.3.1.4 Schwefels Problem 2.21
This function is dened as f
4
in [3026] and is here introduced as f
RSO4
in Table 50.8. In
Figure 50.18, we sketch this function for one and two dimensions, in Listing 50.5, we give a
Java code snippet showing how it can be computed, and Table 50.9 contains some results
from literature.
function f
RSO4
(x) = max
i
[x
i
[ : i 1..n 50.45
domain X = [v, v]
n
, v 100 50.46
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO4
(x
) = 0 50.47
separable yes
multimodal no
Table 50.8: Properties of Schwefels problem 2.21.
0
20
40
60
80
100
-100 -50 0 50 100
x
^
f
x X
Fig. 50.18.a: 1d
-100
-50
0
50
100 -100
-50
0
50
100
0
30
60
90
x
^
f
x X
Fig. 50.18.b: 2d
Figure 50.18: Examples for Schwefels problem 2.21.
1 public static final double computeSchwefel221(final double[] ind) {
2 int i;
3 double res, d;
4
5 res = 0d;
6 for (i = (ind.length - 1); i >= 0; i--) {
7 d = ind[i];
8 if (d < 0d) {
9 d = -d;
10 }
11 if (d > res) {
12 res = d;
13 }
14 }
15
16 return res;
17 }
Listing 50.5: A Java code snippet computing Schwefels problem 2.21.
Table 50.9: Results obtained for Schwefels problem 2.21 with function evaluations.
588 50 BENCHMARKS
n, v f
RSO4
(x) Algorithm Class Reference
500, 100 2.5 10
6
4.07E1 SaNSDE DE [3020]
500, 100 2.5 10
6
9E-5 FEPCC EA [3020]
500, 100 2.5 10
6
6.01E1 DECC-O DE [3020]
500, 100 2.5 10
6
4.58E-5 DECC-G DE [3020]
1000, 100 5 10
6
4.99E1 SaNSDE DE [3020]
1000, 100 5 10
6
8.5E-5 FEPCC EA [3020]
1000, 100 5 10
6
7.92E1 DECC-O DE [3020]
1000, 100 5 10
6
1.01E1 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 589
50.3.1.5 Generalized Rosenbrocks Function
Originally proposed by Rosenbrock [2333] and also known under the name banana valley
function [1841], this function is dened as f
5
in [3026] and in [2934], the two-dimensional
variant is given as F
2
. The interesting feature of Rosenbrocks function is that it is unimodal
for two dimension but becomes multimodal for higher ones [2464]. Here, we introduce it
as f
RSO5
in Table 50.10. In Figure 50.19, we sketch this function for two dimensions, in
Listing 50.6, we give a Java code snippet showing how it can be computed, and Table 50.11
contains some results from literature.
function f
RSO5
(x) =
n1
i=1
_
100
_
x
i+1
x
i
2
_
2
+ (x
i
1)
2
_
50.48
domain X = [v
1
, v
2
]
n
, v
1
5, 30 , v
2
10, 30 50.49
optimization minimization
optimum x
= (1, 1, .., 1)
T
, f
RSO5
(x
) = 0 50.50
separable no
multimodal no for n 2, yes otherwise
Table 50.10: Properties of the generalized Rosenbrocks function.
-30
-20
-10
0
10
20
30 -30
-20
-10
0
10
20
30
0
2e+7
4e+7
6e+7
8e+7
x
^
f
x X
Figure 50.19: The 2d-example for the generalized Rosenbrocks function.
1 public static final double computeGenRosenbrock(final double[] ind) {
2 int i;
3 double res, ox, x, z;
4
5 res = 0d;
6 i = (ind.length - 1);
7 x = ind[i];
8 for (--i; i >= 0; i--) {
9 ox = x;
10 x = ind[i];
11
12 z = (ox + (x
*
x));
13 res += (100d
*
(z
*
z));
14 z = (x - 1);
15 res += (x
*
x);
16 }
17
18 return res;
19 }
Listing 50.6: A Java code snippet computing the generalized Rosenbrocks function.
590 50 BENCHMARKS
Table 50.11: Results obtained for the generalized Rosenbrocks function with function
evaluations.
n, X f
RSO5
(x) Algorithm Class Reference
500, [30, 30] 2.5 10
6
1.33E3 SaNSDE DE [3020]
500, [30, 30] 2.5 10
6
FEPCC EA [3020]
500, [30, 30] 2.5 10
6
6.64E2 DECC-O DE [3020]
500, [30, 30] 2.5 10
6
4.92E2 DECC-G DE [3020]
1000, [30, 30] 5 10
6
3.31E3 SaNSDE DE [3020]
1000, [30, 30] 5 10
6
FEPCC EA [3020]
1000, [30, 30] 5 10
6
1.48E3 DECC-O DE [3020]
1000, [30, 30] 5 10
6
9.87E2 DECC-G DE [3020]
50, [5, 10] 2.5 10
5
1.38E-18 LSRS HC [1140]
50, [5, 10] 1 10
7
5.534E1 GA [1140]
50, [5, 10] 1 10
7
5.9E4 PSO [1140]
100, [5, 10] 2.5 10
5
6.94E-16 LSRS HC [1140]
100, [5, 10] 1 10
7
2.74E4 GA [1140]
100, [5, 10] 1 10
7
2.19E5 PSO [1140]
500, [5, 10] 2.5 10
6
2.61E-11 LSRS HC [1140]
500, [5, 10] 1 10
7
5.6662E2 GA [1140]
500, [5, 10] 1 10
7
2.56E6 PSO [1140]
1000, [5, 10] 2.5 10
6
7.41E27 LSRS HC [1140]
1000, [5, 10] 1 10
7
1.12E3 GA [1140]
1000, [5, 10] 1 10
7
6.58E6 PSO [1140]
2000, [5, 10] 2.5 10
6
1.48E-26 LSRS HC [1140]
50.3. REAL PROBLEM SPACES 591
50.3.1.6 Step Function
This function is dened as f
6
in [3026] and a similar, ve-dimensional function is provided
as F
3
in [2934]. Here, the function is introduced as f
RSO6
in Table 50.12. In Figure 50.20, we
sketch this function for one dimension, in Listing 50.7, we give a Java code snippet showing
how it can be computed, and Table 50.13 contains some results from literature.
function f
RSO6
(x) =
n
i=1
x
i
+ 0.5
2
50.51
domain X = [v, v]
n
, v 10, 100 50.52
optimization minimization
optimum X
[0.5, 0.0]
n
, f
RSO6
(x
) = 0x
50.53
separable yes
multimodal no
Table 50.12: Properties of the step function.
0
20
40
60
80
100
-10 -8 -6 -4 -2 0 2 4 6 8 10
x
^
f
x X
Figure 50.20: The 1d-example for the step function (v = 10).
1 public static final double computeStepFunction(final double[] ind) {
2 int i;
3 double res, d;
4
5 res = 0d;
6 for (i = (ind.length - 1); i >= 0; i--) {
7 d = Math.floor(ind[i] + 0.5d);
8 res += (d
*
d);
9 }
10
11 return res;
12 }
Listing 50.7: A Java code snippet computing the step function function.
Table 50.13: Results obtained for the step function with function evaluations.
n, v f
RSO6
(x) Algorithm Class Reference
500, 100 2.5 10
6
3.12E2 SaNSDE DE [3020]
592 50 BENCHMARKS
500, 100 2.5 10
6
0 FEPCC EA [3020]
500, 100 2.5 10
6
0 DECC-O DE [3020]
500, 100 2.5 10
6
0 DECC-G DE [3020]
1000, 100 5 10
6
3.93E3 SaNSDE DE [3020]
1000, 100 5 10
6
0 FEPCC EA [3020]
1000, 100 5 10
6
0 DECC-O DE [3020]
1000, 100 5 10
6
0 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 593
50.3.1.7 Quartic Function with Noise
This function is dened as f
7
in [3026]. Whitley et al. [2934] denes a similar function as F
4
but uses normally distributed noise instead of uniformly distributed one. Here, the quartic
function with noise is introduced as f
RSO7
in Table 50.14. In Figure 50.21, we sketch this
function for one and two dimensions, in Listing 50.8, we give a Java code snippet showing
how it can be computed, and Table 50.15 contains some results from literature.
function f
RSO7
(x) =
n
i=1
ix
i
4
+ randomUni[0, 1) 50.54
domain X = [v, v]
n
, v 500 50.55
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO7
(x
) = 0 50.56
separable yes
multimodal no
Table 50.14: Properties of the quartic function with noise.
0
1e+10
2e+10
3e+10
4e+10
5e+10
6e+10
7e+10
-400 -200 0 200 400
x
^
f
x X
Fig. 50.21.a: 1d
-400
-200
0
200
400
-400
-200
0
200
400
0
4e+10
8e+10
1.2e+11
1.6e+11
2e+11
x
^
f
x X
Fig. 50.21.b: 2d
Figure 50.21: Examples for the quartic function with noise.
1 private static final Random RAND = new Random();
2
3 public static final double computeQuarticN(final double[] ind) {
4 int i;
5 double res, d;
6
7 res = 0d;
8 for (i = (ind.length - 1); i >= 0; i--) {
9 d = ind[i];
10 d
*
= d;
11 d
*
= d;
12 res += (i
*
d);
13 }
14
15 return res + (RAND.nextDouble());
16 }
Listing 50.8: A Java code snippet computing the quartic function with noise.
Table 50.15: Results obtained for the quartic function with noise with function evaluations.
594 50 BENCHMARKS
n, v f
RSO7
(x) Algorithm Class Reference
500, 500 2.5 10
6
1.28 SaNSDE DE [3020]
500, 500 2.5 10
6
FEPCC EA [3020]
500, 500 2.5 10
6
1.04E1 DECC-O DE [3020]
500, 500 2.5 10
6
1.5E-3 DECC-G DE [3020]
1000, 500 5 10
6
1.18E1 SaNSDE DE [3020]
1000, 500 5 10
6
FEPCC EA [3020]
1000, 500 5 10
6
2.21E1 DECC-O DE [3020]
1000, 500 5 10
6
8.4E-3 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 595
50.3.1.8 Generalized Schwefels Problem 2.26
This function is dened as f
8
in [3026] and as F
7
in [2934]. Here, we name it f
RSO8
and list
its features in Table 50.16. In Figure 50.22 we sketch it one and two-dimensional version,
Listing 50.9 contains a Java snippet showing how it can be computed, and provides some
results for this function from literature Table 50.17.
function f
RSO8
(x) =
n
i=1
_
x
i
sin
_
[x
i
[
_
50.57
domain X = [v, v]
n
, v 500 50.58
optimization minimization
optimum v = 500, x
) 418.983n 50.59
separable yes
multimodal yes
Table 50.16: Properties of Schwefels problem 2.26.
-500
-400
-300
-200
-100
0
100
200
300
400
500
-400 -200 0 200 400
x
^
f
x X
Fig. 50.22.a: 1d
-400
-200
0
200
400
-400
-200
0
200
400
-800
-400
0
400
800
x
^
f
x X
Fig. 50.22.b: 2d
Figure 50.22: Examples for Schwefels problem 2.26.
1 public static final double computeSchwefel221(final double[] ind) {
2 int i;
3 double res, d;
4
5 res = 0d;
6 for (i = (ind.length - 1); i >= 0; i--) {
7 d = ind[i];
8 res += ((-d)
*
Math.sin(Math.sqrt(Math.abs(d))));
9 }
10
11 return res;
12 }
Listing 50.9: A Java code snippet computing Schwefels problem 2.26 function.
Table 50.17: Results obtained for Schwefels problem 2.26 with function evaluations.
596 50 BENCHMARKS
n, v f
RSO8
(x) Algorithm Class Reference
500, 500 2.5 10
6
-201796.5 SaNSDE DE [3020]
500, 500 2.5 10
6
-209316.4 FEPCC EA [3020]
500, 500 2.5 10
6
-209491.0 DECC-O DE [3020]
500, 500 2.5 10
6
-209491.0 DECC-G DE [3020]
1000, 500 5 10
6
-372991.0 SaNSDE DE [3020]
1000, 500 5 10
6
-418622.6 FEPCC EA [3020]
1000, 500 5 10
6
-418983 DECC-O DE [3020]
1000, 500 5 10
6
-418983 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 597
50.3.1.9 Generalized Rastrigins Function
This function is dened as f
9
in [3026] and as F
6
in [2934]. In the context of this work, we
refer to it as f
RSO9
in Table 50.18. In Figure 50.23, we sketch this function for one and two
dimensions, in Listing 50.10, we give a Java code snippet showing how it can be computed,
and Table 50.19 contains some results from literature.
function f
RSO9
(x) =
n
i=1
_
x
i
2
10cos(2x
i
) + 10
50.60
domain X = [v, v]
n
, v 5.12 50.61
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO9
(x
) = 0 50.62
separable yes
multimodal yes
Table 50.18: Properties of the generalized Rastrigins function.
0
10
20
30
40
50
60
70
80
90
100
-600 -400 -200 0 200 400 600
x
^
f
x X
Fig. 50.23.a: 1d
-600
-400
-200
0
200
400
600
-600
-400
-200
0
200
400
600
0
40
80
120
160
200
x
^
f
x X
Fig. 50.23.b: 2d
Figure 50.23: Examples for the generalized Rastrigins function.
1 private static final double PI2 = Math.PI+Math.PI;
2
3 public static final double computeGenRastrigin(final double[] ind) {
4 int i;
5 double res, d;
6
7 res = 1d;
8 for (i = (ind.length - 1); i >= 0; i--) {
9 d = ind[i];
10 res += ((d
*
d) - (10d
*
Math.cos(PI2
*
d)) + 10d);
11 }
12
13 return res;
14 }
Listing 50.10: A Java code snippet computing the generalized Rastrigins function.
Table 50.19: Results obtained for the generalized Rastrigins function with function eval-
uations.
598 50 BENCHMARKS
n, v f
RSO9
(x) Algorithm Class Reference
500, 5.12 2.5 10
6
2.84E2 SaNSDE DE [3020]
500, 5.12 2.5 10
6
1.43E-1 FEPCC EA [3020]
500, 5.12 2.5 10
6
1.76E1 DECC-O DE [3020]
500, 5.12 2.5 10
6
0 DECC-G DE [3020]
1000, 5.12 5 10
6
8.69E2 SaNSDE DE [3020]
1000, 5.12 5 10
6
3.13E-1 FEPCC EA [3020]
1000, 5.12 5 10
6
3.12E1 DECC-O DE [3020]
1000, 5.12 5 10
6
3.55E-16 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 599
50.3.1.10 Ackleys Function
Ackleys function is dened as f
10
in [3026] and is here introduced as f
RSO10
in Table 50.20.
In Figure 50.24, we sketch this function for one and two dimensions, in Listing 50.11, we
give a Java code snippet showing how it can be computed, and Table 50.21 contains some
results from literature.
function f
RSO10
(x) = 20exp
_
0.2
_
1
n
n
i=1
x
i
2
_
exp
_
1
n
n
i=1
cos(2x
i
)
_
+20 +e
50.63
domain X = [v, v]
n
, 10, 32 50.64
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO10
(x
) = 0 50.65
separable yes
multimodal yes
Table 50.20: Properties of Ackleys function.
0
5
10
15
20
25
-30 -20 -10 0 10 20 30
x
^
f
x X
Fig. 50.24.a: 1d
-30
-20
-10
0
10
20
30
-30
-20
-10
0
10
20
30
0
5
10
15
20
25
x
^
f
x X
Fig. 50.24.b: 2d
Figure 50.24: Examples for Ackleys function.
1 private static final double PI2 = (Math.PI + Math.PI);
2
3 public static final double computeAckley(final double[] ind) {
4 int i;
5 final int dim;
6 double r1, r2, d;
7
8 r1 = 0d;
9 r2 = 0d;
10 dim = ind.length;
11 for (i = (dim - 1); i >= 0; i--) {
12 d = ind[i];
13 r1 += (d
*
d);
14 r2 += Math.cos(PI2
*
d);
15 }
16
17 r1 /= dim;
18 r2 /= dim;
19
20 return ((-20d
*
Math.exp(-0.2
*
Math.sqrt(r1))) - Math.exp(r2) + 20d + Math.E);
21 }
Listing 50.11: A Java code snippet computing Ackleys function.
600 50 BENCHMARKS
Table 50.21: Results obtained for Ackleys function with function evaluations.
n, v f
RSO10
(x) Algorithm Class Reference
500, 32 2.5 10
6
7.88 SaNSDE DE [3020]
500, 32 2.5 10
6
5.7E-4 FEPCC EA [3020]
500, 32 2.5 10
6
1.86E-11 DECC-O DE [3020]
500, 32 2.5 10
6
9.13E-14 DECC-G DE [3020]
1000, 32 5 10
6
1.12E1 SaNSDE DE [3020]
1000, 32 5 10
6
9.5E-4 FEPCC EA [3020]
1000, 32 5 10
6
4.39E-11 DECC-O DE [3020]
1000, 32 5 10
6
2.22E-13 DECC-G DE [3020]
50, 10 2.5 10
5
0 LSRS HC [1140]
50, 10 1 10
7
3.38 GA [1140]
50, 10 1 10
7
6.055 PSO [1140]
100, 10 2.5 10
5
0 LSRS HC [1140]
100, 10 1 10
7
4.43 GA [1140]
100, 10 1 10
7
6.78 PSO [1140]
500, 10 2.5 10
6
0 LSRS HC [1140]
500, 10 1 10
7
7.21 GA [1140]
500, 10 1 10
7
8.14 PSO [1140]
1000, 10 2.5 10
6
1.3E-18 LSRS HC [1140]
1000, 10 1 10
7
7.87 GA [1140]
1000, 10 1 10
7
9.02 PSO [1140]
2000, 10 2.5 10
6
0 LSRS HC [1140]
50.3. REAL PROBLEM SPACES 601
50.3.1.11 Generalized Griewank Function
The generalized Griewank function (also called Griewangk function [1106, 2934]) is dened
as f
11
in [3026] and as F
8
in [2934]. Locatelli [1755] showed that this function becomes
easier to optimize with increasing dimension n and Cho et al. [569] found a way to derive
the number of (local) minima of this function (wich grows exponentiall with n). Here, we
name the function f
RSO11
and list its features in Table 50.22. In Figure 50.25 we sketch it one
and two-dimensional version, Listing 50.12 contains a Java snippet showing how it can be
computed, and provides some results for this function from literature Table 50.23.
function f
RSO11
(x) =
1
4000
n
i=1
x
i
2
i=1
cos
_
x
i
i
_
+ 1 50.66
domain X = [v, v]
n
, v 600 50.67
optimization minimization
optimum x
= (0, 0, .., 0)
T
, f
RSO11
(x
) = 0 50.68
separable no
multimodal yes
Table 50.22: Properties of the generalized Griewank function.
0
10
20
30
40
50
60
70
80
90
100
-600 -400 -200 0 200 400 600
x
^
f
x X
Fig. 50.25.a: 1d
-600
-400
-200
0
200
400
600
-600
-400
-200
0
200
400
600
0
40
80
120
160
200
x
^
f
x X
Fig. 50.25.b: 2d
Figure 50.25: Examples for the generalized Griewank function.
1 public static final double computeGenGriewank(final double[] ind) {
2 int i;
3 double r1, r2, d;
4
5 r1 = 0d;
6 r2 = 1d;
7 for (i = (ind.length - 1); i >= 0; i--) {
8 d = ind[i];
9 r1 += (d
*
d);
10 r2
*
= (Math.cos(d / Math.sqrt(i + 1)));
11 }
12
13 return (1d + (r1 / 4000d) - r2);
14 }
Listing 50.12: A Java code snippet computing the generalized Griewank function.
602 50 BENCHMARKS
Table 50.23: Results obtained for the generalized Griewank function with function evalu-
ations.
50.3. REAL PROBLEM SPACES 603
n, v f
RSO11
(x) Algorithm Class Reference
500, 600 2.5 10
6
1.82E-1 SaNSDE DE [3020]
500, 600 2.5 10
6
2.9E-2 FEPCC EA [3020]
500, 600 2.5 10
6
5.02E-16 DECC-O DE [3020]
500, 600 2.5 10
6
4.4E-16 DECC-G DE [3020]
1000, 600 5 10
6
4.8E-1 SaNSDE DE [3020]
1000, 600 5 10
6
2.5E-2 FEPCC EA [3020]
1000, 600 5 10
6
2.04E-15 DECC-O DE [3020]
1000, 600 5 10
6
1.01E-15 DECC-G DE [3020]
604 50 BENCHMARKS
50.3.1.12 Generalized Penalized Function 1
This function is dened as f
12
in [3026] and is here introduced as f
RSO12
in Table 50.24. In
Figure 50.26, we sketch this function for one and two dimensions, in Listing 50.13, we give a
Java code snippet showing how it can be computed, and Table 50.25 contains some results
from literature.
function f
RSO12
(x) =
n
_
10sin
2
(y
1
) +
n1
i=1
(y
i
1)
2
_
1 + 10sin
2
(y
i+1
)
+ (y
n
1)
2
_
+
n
i=1
u(x
i
, 10, 100, 4)
50.69
u(x
i
, a, k, m) =
_
_
_
k (x
i
a)
m
if x
i
> a
0 if a x
i
a
k (x
i
a)
m
otherwise
50.70
y
i
= 1 +
x
i
+ 1
4
50.71
domain X = [v, v]
n
, v 50 50.72
optimization minimization
optimum x
= (1, 1, .., 1)
T
, f
RSO12
(x
) = 0 50.73
separable yes
multimodal yes
Table 50.24: Properties of the generalized penalized function 1.
0
5e+7
1e+8
1.5e+8
2e+8
2.5e+8
3e+8
-40 -20 0 20 40
x
^
f
x X
Fig. 50.26.a: 1d
-40
-20
0
20
40
-40
-20
0
20
40
0
2e+8
4e+8
6e+8
x
^
f
x X
Fig. 50.26.b: 2d
Figure 50.26: Examples for the general penalized function 1.
1 private static final double y(final double d) {
2 return (1d + 0.25
*
(d + 1d));
3 }
4
5 private static final double u(final double x, final int a, final int k,
6 final int m) {
7 if (x > a) {
8 return (k
*
Math.pow(x - a, m));
9 }
10 if (x < (-a)) {
11 return (k
*
Math.pow(-x - a, m));
12 }
13 return 0d;
14 }
15
50.3. REAL PROBLEM SPACES 605
16 public static final double computePenalizedA(final double[] ind) {
17 int i;
18 double r1, y, ly, s;
19
20 r1 = Math.sin(Math.PI
*
y(ind[0]));
21 r1
*
= r1;
22 r1
*
= 10d;
23
24 i = (ind.length - 1);
25 y = y(ind[i]);
26 r1 += ((y - 1)
*
(y - 1));
27
28 for (--i; i >= 0; i--) {
29 ly = y;
30 y = y(ind[i]);
31 s = Math.sin(Math.PI
*
ly);
32
33 r1 += ((y - 1)
*
(y - 1))
*
(1d + (10d
*
s
*
s));
34 }
35
36 r1
*
= Math.PI;
37 i = ind.length;
38 r1 /= i;
39
40 for (--i; i >= 0; i--) {
41 r1 += u(ind[i], 10, 100, 4);
42 }
43
44 return r1;
45 }
Listing 50.13: A Java code snippet computing the generalized penalized function 1.
Table 50.25: Results obtained for the generalized penalized function 1 with function
evaluations.
n, v f
RSO12
(x) Algorithm Class Reference
500, 50 2.5 10
6
2.96 SaNSDE DE [3020]
500, 50 2.5 10
6
FEPCC EA [3020]
500, 50 2.5 10
6
2.17E-25 DECC-O DE [3020]
500, 50 4.29 10
21
0 DECC-G DE [3020]
1000, 50 5 10
6
2.96 SaNSDE DE [3020]
1000, 50 5 10
6
FEPCC EA [3020]
1000, 50 5 10
6
1.08E-24 DECC-O DE [3020]
1000, 50 5 10
6
6.89E-25 DECC-G DE [3020]
606 50 BENCHMARKS
50.3.1.13 Generalized Penalized Function 2
This function is dened as f
13
in [3026] and is here introduced as f
RSO13
in Table 50.26. In
Figure 50.27, we sketch this function for one and two dimensions, in Listing 50.14, we give a
Java code snippet showing how it can be computed, and Table 50.27 contains some results
from literature.
function f
RSO13
(x) = 0.1
_
sin
2
(3x
i
) +
n1
i=1
(x
i
1)
2
_
1 + sin
2
(3x
i+1
)
+
(x
n
1)
2
_
1 + sin
2
(2x
n
)
_
+
n
i=1
u(x
i
, 5, 100, 4)
50.74
see Equation 50.70 for u(x
i
, a, k, m)
domain X = [v, v]
n
, v 50 50.75
optimization minimization
optimum x
= (1, 1, .., 1)
T
, f
RSO13
(x
) = 0 50.76
separable yes
multimodal yes
Table 50.26: Properties of the generalized penalized function 2.
0
5e+7
1e+8
1.5e+8
2e+8
2.5e+8
3e+8
3.5e+8
4e+8
4.5e+8
-40 -20 0 20 40
x
^
f
x X
Fig. 50.27.a: 1d
-40
-20
0
20
40
-40
-20
0
20
40
0
2e+8
4e+8
6e+8
8e+8
x
^
f
x X
Fig. 50.27.b: 2d
Figure 50.27: Examples for the general penalized function 2.
1 private static final double PI2 = (Math.PI + Math.PI);
2 private static final double PI3 = (PI2 + Math.PI);
3
4 private static final double u(final double x, final int a, final int k,
5 final int m) {
6 if (x > a) {
7 return (k
*
Math.pow(x - a, m));
8 }
9 if (x < (-a)) {
10 return (k
*
Math.pow(-x - a, m));
11 }
12 return 0d;
13 }
14
15 public static final double computePenalizedB(final double[] ind) {
16 double res, x, ox, xm1, s;
17 int i;
18
19 i = (this.m_dimensions - 1);
20 x = ind[i];
50.3. REAL PROBLEM SPACES 607
21
22 xm1 = (x - 1d);
23 s = Math.sin(PI2
*
x);
24 res = ((xm1
*
xm1)
*
(1d + (s
*
s)));
25
26 for (--i; i >= 0; i--) {
27 ox = x;
28 x = ind[i];
29
30 s = Math.sin(PI3
*
ox);
31 xm1 = (x - 1d);
32 res += ((xm1
*
xm1)
*
(1d + (s
*
s)));
33 }
34
35 s = Math.sin(PI3
*
x);
36 res += (s
*
s);
37 res
*
= 0.1d;
38
39 for (i = (this.m_dimensions - 1); i >= 0; i--) {
40 res += F12.u(ind[i], 5, 100, 4);
41 }
42
43 return res;
44 }
Listing 50.14: A Java code snippet computing the generalized penalized function 2.
Table 50.27: Results obtained for the generalized penalized function 2 with function
evaluations.
n, v f
RSO13
(x) Algorithm Class Reference
500, 50 2.5 10
6
1.89E2 SaNSDE DE [3020]
500, 50 2.5 10
6
FEPCC EA [3020]
500, 50 2.5 10
6
5.04E-23 DECC-O DE [3020]
500, 50 4.29 10
21
5.34E-18 DECC-G DE [3020]
1000, 50 5 10
6
7.41E2 SaNSDE DE [3020]
1000, 50 5 10
6
FEPCC EA [3020]
1000, 50 5 10
6
4.82E-22 DECC-O DE [3020]
1000, 50 5 10
6
2.55E-21 DECC-G DE [3020]
608 50 BENCHMARKS
50.3.1.14 Levys Function
This function is dened in [1140].
function f
RSO14
(x) = sin
2
(y
1
) +
n1
i=1
(y
i
1)
2
_
1 + 10sin
2
(y
i
+ 1)
+(y
n
1)
2
_
1 + sin
2
(2 x
n
)
50.77
y
i
= 1 +
x
i
+ 1
4
50.78
domain X = [v, v]
n
, v 10 50.79
optimization minimization
optimum x
= (1, 1, .., 1)
T
, f
RSO12
(x
) = 0 50.80
separable yes
multimodal yes
Table 50.28: Properties of Levys function.
0
2
4
6
8
10
12
14
16
-10 -5 0 5 10 10
x
^
f
x X
Fig. 50.28.a: 1d
-10
-5
0
5
10 -10
-5
0
5
10
0
20
40
60
80
100
x
^
f
x X
Fig. 50.28.b: 2d
Figure 50.28: Examples for Levys function.
Table 50.29: Results obtained for Levys function with function evaluations.
n, v f
RSO14
(x) Algorithm Class Reference
50, 10 2.5 10
5
2.9E-39 LSRS HC [1140]
50, 10 1 10
7
3.27E-1 GA [1140]
50, 10 1 10
7
1.888E1 PSO [1140]
100, 10 2.5 10
5
2.9E-39 LSRS HC [1140]
100, 10 1 10
7
6.509E-1 GA [1140]
100, 10 1 10
7
5.572E1 PSO [1140]
500, 10 2.5 10
6
2.9E-39 LSRS HC [1140]
500, 10 1 10
7
3.33 GA [1140]
500, 10 1 10
7
5.4602E2 PSO [1140]
1000, 10 2.5 10
6
2.9E-39 LSRS HC [1140]
1000, 10 1 10
7
7.17 GA [1140]
50.3. REAL PROBLEM SPACES 609
1000, 10 1 10
7
1.62E3 PSO [1140]
2000, 10 2.5 10
6
2.9E-39 LSRS HC [1140]
610 50 BENCHMARKS
50.3.1.15 Shifted Sphere
The sphere function given in Section 50.3.1.1 is shifted in X by a vector o and in the
objective space by a bias f
bias
. This function is dened as F
1
in [2626, 2627] and [2668].
Here, we specify it as f
RSO15
in Table 50.30 and provide a Java snipped showing how it can
be computed in Listing 50.15 before listing some results from the literature in Table 50.31.
function: f
RSO15
(x) =
n
i=1
z
2
i
+f
bias
50.81
z
i
= x
i
+o
i
50.82
domain: X = [100, 100]
n
50.83
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO15
(x
) = f
bias
50.84
separable: yes
multimodal: no
shifted: yes
rotated: no
scalable: no
Table 50.30: Properties of the shifted sphere function.
1 private static final double[] DATA = new double[] {
2 // shift data o
i
, see Tang et al. [2668]
3 };
4
5 public static final double computeShiftedSphere(final double[] ind) {
6 int i;
7 double res, x;
8
9 res = 0;
10 for (i = (ind.length - 1); i >= 0; i--) {
11 x = (ind[i] - DATA[i]);
12 res += (x
*
x);
13 }
14
15 return res + -450.0d; // bias f
bias
= 450, see [2668]
16 }
Listing 50.15: A Java code snippet computing the shifted sphere function.
Table 50.31: Results obtained for the shifted sphere function with function evaluations.
n, f
bias
f
RSO15
(x) Algorithm Class Reference
500, 0 2.5 10
6
2.61E-11 SaNSDE DE [3020]
500, 0 2.5 10
6
1.04E-12 DECC-O DE [3020]
500, 0 2.5 10
6
3.71E-13 DECC-G DE [3020]
1000, 0 5 10
6
1.17 SaNSDE DE [3020]
1000, 0 5 10
6
3.66E-8 DECC-O DE [3020]
1000, 0 5 10
6
6.84E-13 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 611
50.3.1.16 Shifted Rotated High Conditioned Elliptic Function
An ellipse is shifted in X by a vector o, rotated by the orthogonal matrix M, and shifted in
the objective space by a bias f
bias
. This function is dened as F
3
in [2626, 2627].
function: f
RSO16
(x) =
n
i=1
_
10
6
_
i1
n1
z
2
i
+f
bias
50.85
z = x o M 50.86
domain: X = [100, 100]
n
50.87
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO16
(x
) = f
bias
50.88
separable: no
multimodal: no
shifted: yes
rotated: yes
scalable: no
Table 50.32: Properties of the shifted and rotated elliptic function.
Table 50.33: Results obtained for the shifted and rotated elliptic function with function
evaluations.
n, f
bias
f
RSO16
(x) Algorithm Class Reference
500, ? 2.5 10
6
6.88E8 SaNSDE DE [3020]
500, ? 2.5 10
6
4.78E8 DECC-O DE [3020]
500, ? 2.5 10
6
3.06E8 DECC-G DE [3020]
1000, ? 5 10
6
2.34E9 SaNSDE DE [3020]
1000, ? 5 10
6
1.08E9 DECC-O DE [3020]
1000, ? 5 10
6
8.11E8 DECC-G DE [3020]
612 50 BENCHMARKS
50.3.1.17 Shifted Schwefels Problem 2.21
Schwefels problem 2.21 given in Section 50.3.1.4 is shifted in X by a vector o and in the
objective space by a bias f
bias
450. This function is named F
2
in [2668]. In Table 50.34,
we dene it as f
RSO17
and in Listing 50.16, we provide a Java snippet showing how it can be
computed.
function: f
RSO17
(x) = max
i
[z
i
[ +f
bias
50.89
z
i
= x
i
+o
i
50.90
domain: X = [100, 100]
n
50.91
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO17
(x
) = f
bias
50.92
separable: false
multimodal: no
shifted: yes
rotated: no
scalable: yes
Table 50.34: Properties of shifted Schwefels problem 2.21.
1 private static final double[] DATA = new double[] {
2 // shift data o
i
, see material accompanying Tang et al. [2668]
3 };
4
5 public static final double computeShiftedSchwefel221(final double[] ind) {
6 int i;
7 double res, d;
8
9 res = 0d;
10 for (i = (this.m_dimensions - 1); i >= 0; i--) {
11 d = ind[i] - DATA[i];
12 if (d < 0d) {
13 d = -d;
14 }
15 if (d > res) {
16 res = d;
17 }
18 }
19
20 return res + -450.0d; // bias f
bias
= 450, see [2668]
21 }
Listing 50.16: A Java code snippet computing shifted Schwefels problem 2.21.
50.3. REAL PROBLEM SPACES 613
50.3.1.18 Schwefels Problem 2.21 with Optimum on Bounds
This function is dened as F
5
in [2626, 2627]. In Equation 50.93, we dene it as f
RSO18
. In
the table, A is a n n matrix and its t
th
row is A
i
. det(A) ,= 0 holds and A is initialized
with random numbers from [500, 500]. B
i
is a vector of dimension n and computed by
multiplying the optimum vector o to A
i
, i. e., B
i
= A
i
o. o is initialized with random
numbers from [100, 100].
function: f
RSO18
(x) = max
i
A
i
x B
i
+f
bias
50.93
domain: X = [100, 100]
n
50.94
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO18
(x
) = f
bias
50.95
separable: yes
multimodal: no
shifted: yes
rotated: no
scalable: no
Table 50.35: Properties of Schwefels modied problem 2.21 with optimum on the bounds.
Table 50.36: Results obtained for Schwefels modied problem 2.21 with optimum on the
bounds with function evaluations.
n, f
bias
f
RSO18
(x) Algorithm Class Reference
500, 0 2.5 10
6
4.96E5 SaNSDE DE [3020]
500, 0 2.5 10
6
2.4E5 DECC-O DE [3020]
500, 0 2.5 10
6
1.15E5 DECC-G DE [3020]
1000, 0 5 10
6
5.03E5 SaNSDE DE [3020]
1000, 0 5 10
6
3.73E5 DECC-O DE [3020]
1000, 0 5 10
6
2.2E5 DECC-G DE [3020]
614 50 BENCHMARKS
50.3.1.19 Shifted Rosenbrocks Function
The generalized Rosenbrock function given in Section 50.3.1.5 is shifted in X by a vector o
and in the objective space by a bias f
bias
. This function is dened as F
6
in [2626, 2627] and as
F
3
in [2668]. Here, we specify it as f
RSO19
in Table 50.37 and provide a Java snipped showing
how it can be computed in Listing 50.17 before listing some results from the literature in
Table 50.38.
function: f
RSO19
(x) =
n1
i=1
_
100
_
z
2
i
z
i+1
_
2
+ (z
i
1)
2
_
+f
bias
50.96
z
i
= x
i
o
i
+ 1 50.97
domain: X = [100, 100]
n
50.98
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO19
(x
) = f
bias
50.99
separable: no
multimodal: yes
shifted: yes
rotated: no
scalable: yes
Table 50.37: Properties of the shifted Rosenbrocks function.
1 private static final double[] DATA = new double[] {
2 // shift data o
i
, see material accompanying Tang et al. [2668]
3 };
4
5 public static final double computeShiftedRosenbrock(final double[] ind) {
6 int i;
7 double res, ox, x, z;
8
9 res = 0d;
10 i = (ind.length - 1);
11 x = ind[i] - DATA[i] + 1;
12 for (--i; i >= 0; i--) {
13 ox = x;
14 x = ind[i] - DATA[i] + 1;
15
16 z = (ox + (x
*
x));
17 res += (100d
*
(z
*
z));
18 z = (x - 1);
19 res += (x
*
x);
20 }
21
22 return res + 390.0d; // bias f
bias
= 390, see [2668]
23 }
Listing 50.17: A Java code snippet computing the shifted Rosenbrocks function.
Table 50.38: Results obtained for the shifted Rosenbrocks function with function evalua-
tions.
n, f
bias
f
RSO19
(x) Algorithm Class Reference
500, ? 2.5 10
6
2.71E3 SaNSDE DE [3020]
500, ? 2.5 10
6
1.71E3 DECC-O DE [3020]
50.3. REAL PROBLEM SPACES 615
500, ? 2.5 10
6
1.56E3 DECC-G DE [3020]
1000, ? 5 10
6
1.35E4 SaNSDE DE [3020]
1000, ? 5 10
6
3.13E3 DECC-O DE [3020]
1000, ? 5 10
6
2.22E3 DECC-G DE [3020]
616 50 BENCHMARKS
50.3.1.20 Shifted Ackleys Function
Ackleys function provided in Section 50.3.1.10 is shifted in X by a vector o and in the
objective space by a bias f
bias
= 140. This function is dened as F
6
in [2668]. Here,
we specify it as f
RSO20
in Table 50.39 and provide a Java snipped showing how it can be
computed in Listing 50.18.
function f
RSO20
(x) = 20exp
_
0.2
_
1
n
n
i=1
z
2
i
_
exp
_
1
n
n
i=1
cos(2z
i
)
_
+20 +e
50.100
z
i
= x
i
o
i
50.101
domain X = [v, v]
n
, 10, 32 50.102
optimization minimization
optimum x
= (o
1
, o
2
, .., o
n
)
T
, f
RSO20
(x
) = 0 50.103
separable yes
multimodal yes
shifted: yes
rotated: no
scalable: yes
Table 50.39: Properties of shifted Ackleys function.
1 private static final double PI2 = (Math.PI + Math.PI);
2
3 private static final double[] DATA = new double[] {
4 // shift data o
i
, see material accompanying Tang et al. [2668]
5 };
6
7
8 public static final double computeAckley(final double[] ind) {
9 int i;
10 final int dim;
11 double r1, r2, d;
12
13 r1 = 0d;
14 r2 = 0d;
15 dim = ind.length;
16 for (i = (dim - 1); i >= 0; i--) {
17 d = ind[i] - DATA[i];
18 r1 += (d
*
d);
19 r2 += Math.cos(PI2
*
d);
20 }
21
22 r1 /= dim;
23 r2 /= dim;
24
25 return ((-20d
*
Math.exp(-0.2
*
Math.sqrt(r1))) -
26 Math.exp(r2) + 20d + Math.E) +
27 -140.0d; // bias f
bias
= 140, see [2668]
28 }
Listing 50.18: A Java code snippet computing shifted Ackleys function.
50.3. REAL PROBLEM SPACES 617
50.3.1.21 Shifted Rotated Ackelys Function
The Ackleys function given in Section 50.3.1.10 is shifted in X by a vector o, rotated with
a matrix M, and shifted in the objective space by a bias f
bias
. This function is dened as
F
8
in [2626, 2627].
function f
RSO21
(x) = 20exp
_
0.2
_
1
n
n
i=1
z
2
i
_
exp
_
1
n
n
i=1
cos(2z
i
)
_
+20 +f
bias
50.104
z = (x +o) M 50.105
domain: X = [32, 32]
n
50.106
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO21
(x
) = f
bias
50.107
separable: no
multimodal: yes
shifted: yes
rotated: yes
scalable: yes
Table 50.40: Properties of the shifted and rotated Ackleys function.
Table 50.41: Results obtained for the shifted and rotated Ackleys function with function
evaluations.
n, f
bias
f
RSO21
(x) Algorithm Class Reference
500, ? 2.5 10
6
2.15E1 SaNSDE DE [3020]
500, ? 2.5 10
6
2.14E1 DECC-O DE [3020]
500, ? 2.5 10
6
2.16E1 DECC-G DE [3020]
1000, ? 5 10
6
2.16E1 SaNSDE DE [3020]
1000, ? 5 10
6
2.14E1 DECC-O DE [3020]
1000, ? 5 10
6
2.16E1 DECC-G DE [3020]
618 50 BENCHMARKS
50.3.1.22 Shifted Rastrigins Function
The generalized Rastrigins function given in Section 50.3.1.9 is shifted in X by a vector o
and in the objective space by a bias f
bias
= 330. This function is dened as F
9
in [2626,
2627] and as F
4
in [2668]. Here, we specify it as f
RSO22
in Table 50.42 and provide a Java
snipped showing how it can be computed in Listing 50.19 before listing some results from
the literature in Table 50.43.
function f
RSO22
(x) =
n
i=1
_
z
2
i
10cos(2z
i
) + 10
+f
bias
50.108
z
i
= x
i
o
i
50.109
domain: X = [5, 5]
n
50.110
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO22
(x
) = f
bias
50.111
separable: yes
multimodal: yes
shifted: yes
rotated: no
scalable: yes
Table 50.42: Properties of the shifted Rastrigins function.
1 private static final double PI2 = Math.PI+Math.PI;
2
3 private static final double[] DATA = new double[] {
4 // shift data o
i
, see material accompanying Tang et al. [2668]
5 };
6
7 public static final double computeShiftedRastrigin(final double[] ind) {
8 int i;
9 double res, d;
10
11 res = 1d;
12 for (i = (ind.length - 1); i >= 0; i--) {
13 d = ind[i] - DATA[i];
14 res += ((d
*
d) - (10d
*
Math.cos(PI2
*
d)) + 10d);
15 }
16 }
17
18 return res + -330.0d; // bias f
bias
= 330, see [2668]
19 }
Listing 50.19: A Java code snippet computing the shifted Rastrigins function.
Table 50.43: Results obtained for the shifted Rastrigins function with function evaluations.
n, f
bias
f
RSO22
(x) Algorithm Class Reference
500, ? 2.5 10
6
6.6E2 SaNSDE DE [3020]
500, ? 2.5 10
6
8.66 DECC-O DE [3020]
500, ? 2.5 10
6
4.5E2 DECC-G DE [3020]
1000, ? 5 10
6
3.2E3 SaNSDE DE [3020]
1000, ? 5 10
6
8.96E1 DECC-O DE [3020]
1000, ? 5 10
6
6.32E2 DECC-G DE [3020]
50.3. REAL PROBLEM SPACES 619
50.3.1.23 Shifted and Rotated Rastrigins Function
The generalized Rastrigins function given in Section 50.3.1.9 is shifted in X by a vector o,
roated by a matrix M, and shifted in the objective space by a bias f
bias
. This function is
dened as F
10
in [2626, 2627].
function f
RSO23
(x) =
n
i=1
_
z
2
i
10cos(2z
i
) + 10
+f
bias
50.112
z = (x o) M 50.113
domain: X = [5, 5]
n
50.114
optimization: minimization
optimum: x
= (o
1
, o
2
, .., o
2
)
T
, f
RSO23
(x
) = f
bias
50.115
separable: no
multimodal: yes
shifted: yes
rotated: yes
scalable: yes
Table 50.44: Properties of the shifted and rotated Rastrigins function.
Table 50.45: Results obtained for the shifted and rotated Rastrigins function with function
evaluations.
n, f
bias
f
RSO23
(x) Algorithm Class Reference
500, ? 2.5 10
6
6.97E3 SaNSDE DE [3020]
500, ? 2.5 10
6
1.5E4 DECC-O DE [3020]
500, ? 2.5 10
6
5.33E3 DECC-G DE [3020]
1000, ? 5 10
6
1.27E4 SaNSDE DE [3020]
1000, ? 5 10
6
3.18E4 DECC-O DE [3020]
1000, ? 5 10
6
9.73E3 DECC-G DE [3020]
620 50 BENCHMARKS
50.3.1.24 Schwefels Problem 2.13
This function is dened as F
13
in [2626, 2627]. A and B are n n matrices, a
ij
and b
ij
are integer random numbers from 100..100, and the
j
in = (
1
,
2
, ..,
n
)
T
are random
numbers in [, ].
function f
RSO24
(x) = sum
n
i=1
(A
i
B
i
(x))
2
+f
bias
50.116
A
i
=
n
j=1
(a
ij
sin(
j
) +b
ij
cos(
j
)) 50.117
B
i
(x) =
n
j=1
(a
ij
sin(x
j
) +b
ij
cos(x
j
)) 50.118
domain X = [, ]
n
50.119
optimization minimization
optimum x
= (
1
,
2
, ..,
n
)
T
, f
RSO24
(x
) = f
bias
50.120
separable no
multimodal yes
shifted: yes
rotated: no
scalable: yes
Table 50.46: Properties of Schwefels problem 2.13.
Table 50.47: Results obtained for Schwefels problem 2.13 with function evaluations.
n, v f
RSO24
(x) Algorithm Class Reference
500, 100 2.5 10
6
2.53E2 SaNSDE DE [3020]
500, 100 2.5 10
6
2.81E1 DECC-O DE [3020]
500, 100 2.5 10
6
2.09E2 DECC-G DE [3020]
1000, 100 5 10
6
6.61E2 SaNSDE DE [3020]
1000, 100 5 10
6
7.52E1 DECC-O DE [3020]
1000, 100 5 10
6
3.56E2 DECC-G DE [3020]
50.4. CLOSE-TO-REAL VEHICLE ROUTING PROBLEM BENCHMARK 621
50.3.1.25 Shifted Griewank Function
The Griewank function provided in Section 50.3.1.11 is shifted in X by a vector o and in
the objective space by a bias f
bias
= 180. This function is dened as F
5
in [2668]. Here,
we specify it as f
RSO25
in Table 50.48 and provide a Java snipped showing how it can be
computed in Listing 50.20.
function f
RSO25
(x) =
1
4000
n
i=1
z
2
i
n
i=1
cos
_
z
i
i
_
+ 1 50.121
z
i
= x
i
o
i
50.122
domain X = [600, 600]
n
50.123
optimization minimization
optimum x
= (o
1
, o
2
, .., o
n
)
T
, f
RSO25
x
= f
bias
50.124
separable no
multimodal yes
shifted: yes
rotated: no
scalable: yes
Table 50.48: Properties of the shifted Griewank function.
1 private static final double[] DATA = new double[] {
2 // shift data o
i
, see material accompanying Tang et al. [2668]
3 };
4
5 public static final double computeShiftedGriewank(final double[] ind) {
6 int i;
7 double r1, r2, d;
8
9 r1 = 0d;
10 r2 = 1d;
11 for (i = (ind.length - 1); i >= 0; i--) {
12 d = ind[i] - DATA[i];
13 r1 += (d
*
d);
14 r2
*
= (Math.cos(d / Math.sqrt(i + 1)));
15 }
16
17 return (1d + (r1 / 4000d) - r2) + -180d; // bias f
bias
= 180, see [2668]
18 }
Listing 50.20: A Java code snippet computing the shifted Griewank function.
50.4 Close-to-Real Vehicle Routing Problem Benchmark
50.4.1 Introduction
Logistics are one of the most important services in our economy. The transportation of
goods, parcel, and mail from one place to another is what connects dierent businesses and
people. Without such transportation, basically all economical processes in an industrial
society would break done.
Logistics is omnipresent. But is it ecient? We already discussed that the Travel-
ing Salesman Problem (see Example E2.2 on page 45) is AT-complete in Section 12.3 on
page 147. Solving the TSP means nding an ecient travel plan for a single salesman. Plan-
ning for a whole eet of vehicles, a set of orders, under various constraints and conditions,
622 50 BENCHMARKS
seems to be at least as complex and, from an algorithmic and implementation perspective,
is probably much harder. Hence, most logistics companies today still rely on manual plan-
ning. Knowing that, we can be pretty sure that they can benet greatly from solving such
Vehicle Routing Problems [497, 1091, 2162] in an optimal manner which reduces costs, travel
distances, and CO
2
emissions.
In Section 49.3 on page 536, we discuss a real-world application of Evolutionary Algo-
rithms in the area of logistics: the search for optimal goods transportation plans, a problem
which belongs to the class of Vehicle Routing Problems (VRP). Section 49.3, you can nd a
detailed description and model gleaned from the situation in one of the divisions of a large
logistics company (Section 49.3.2) as well as an in-depth discussion of related research work
on Vehicle Routing Problems (Section 49.3.3). Here, we want to introduce a benchmark
generator for a general class of VRPs which are close to the situation in todays parcel
companies (if not even closer than the work introduced in Section 49.3).
depotA
driver d1
container c1
customerC
pickuplocation
ordero1 ordero2
ordero1
ordero2
depotB
delivery
location
container
c2
truck t1
Truck,driver,andcontainer
areinthedepot.
Anothercontainerispicked
upinanotherdepot.
Theordersarepickedupat
thecustomerslocationwithin
agiventimewindow..
Theordersaredelivered
withinatimewindow.
Thetruckcannow
returnhometothedepot.
Figure 50.29: A close-to-real-world Vehicle Routing Problem
50.4. CLOSE-TO-REAL VEHICLE ROUTING PROBLEM BENCHMARK 623
50.4.1.1 Overview on the Involved Objects
A real-world logistics company knows ve kinds of objects: orders, containers, trucks,
drivers, and locations. With these objects, the situation faced by the planner can be com-
pletely described. In Figure 50.29 we sketch how these objects interact and describe this
interaction below in detail.
1. Orders are transportation tasks given by customers. Each order is characterized by a
pickup and a delivery location as well as a pickup and delivery time window. The order
must be picked up by a truck within the pickup time window at the pickup location and
delivered within the delivery time window to the delivery location. See Section 50.4.2.2
on page 626 for more information.
2. Orders are placed into containers which are provided by the logistics company. A
container can either be empty or contain exactly one order. We assume that each
order ts into exactly one container. If an order was larger than one container, we
can imagine that it will be split up into n single orders without loss of generality. A
customer has to pay for at least one container. If the orders are smaller, the company
still uses (and charges for) one full container. Containers reside at depots and, after
all deliveries are performed, must be transported back to a depot (not necessarily their
starting depot). For more information, see Section 50.4.2.4.
3. Trucks are them vehicles that transport the vehicles. The company can own dierent
types of trucks with dierent capacities. The capacity limit per truck is usually between
one and three containers. A truck can either be empty or transport at most as many
containers as its capacity allows. A truck is driven always by one driver, but some
trucks allow that another driver can travel along (i.e., have a higher number of seats).
Trucks also reside at depots and, after they have nished their tours, must arrive at
a depot again (not necessarily their starting depot). A truck cannot drive without a
driver. See Section 50.4.2.3 on page 627 for more information.
4. Drivers work for the logistics company and drive the trucks. Each driver has a home
depot to which she needs to return after the orders have been delivered. For more
information, see Section 50.4.2.5 on page 628.
5. Locations are places on the map. The customers reside at locations and deliveries take
place between locations. Depots are special locations: Here, the logistics company
stores its containers, employs its drivers, and parks its trucks. Trucks pick up orders at
given locations and deliver them to other locations. Also, trucks may meet at locations
and exchange their freight. See Section 50.4.2.1 on page 625 for more information.
50.4.1.2 Overview on the Optimization Goals and Constraints
Basically, a logistics company has two goals:
1. Pick up and deliver all orders within their time windows and, hence, to fulll its con-
tracts with the customer. Every missed time window or undelivered order is considered
as a delivery error. The number of delivery errors must be minimized.
2. Orders should be delivered at the lowest possible costs. Hence, the costs should be
minimized.
While trying to achieve these goals, it obviously has to obey to the laws of physics and logic.
The following constraints do always hold:
624 50 BENCHMARKS
1. No truck, container, order, or driver can be at more than one place at one point in
time. A driver cannot drive a truck from A to B while simultaneously driving another
truck from C to D. A container cannot be used to transport order O from C to D
while, at the same time, being carried by another truck from C to E. And so on.
2. Trucks, containers, orders, and drivers can only leave from places where they actually
reside: A truck which is parked at depot A cannot leave depot B (without driving
there rst). A truck driver who is located at depot C cannot get into a truck which
is parked in depot D (without driving there rst). An container located at depot E
cannot be loaded into a truck residing in depot F (without being driven there rst).
And so on.
3. Driving from one location to another takes time. A truck cannot get from location A
to a distant location B within 0s. The time needed for getting from A to B depends
on (1) the distance between A and B and (2) the maximum speed of the truck. A
truck cannot go from one location to another faster than what the (Newtonian) laws
of physics [2029] allow.
4. If an object (truck, driver, order, container) is moved from location A to location B,
it must reside at location A before the move and will reside at location B after arrival
(i. e., after the time has passed which the truck needs to get there). An object can be
involved in at most one transportation move at any given time.
5. Objects can only be moved by trucks and trucks are driven by drivers: (a) A truck can-
not move without a driver. (b) A driver cannot move without a truck. (c) A container
cannot move without a truck. (d) An order cannot move without a container.
6. The capacity limits of the involved objects (trucks, containers) must be obeyed. A
truck can only carry a nite weight and a container can only contain a nite volume
(here: one order).
7. Orders can only be picked up during the pickup time interval and only be delivered
during the delivery time interval.
8. No new objects appear during the planning process. No new trucks, drivers, or con-
tainers can somehow be created and no new orders come in.
9. The features of the involved objects do not change during the planning process. A
truck cannot become faster or slower and the capacity limits of the involved objects
cannot be increased or decreased.
For additional information, please see Section 50.4.4 on page 634.
50.4.1.3 Overview on the Input Data
The input data of an optimization algorithm for this benchmark problem comprises the
sets of objects and their features describing a complete starting situation for the planning
process.
1. The orders with their IDs pickup and destination locations and time windows.
2. The IDs of the containers and the corresponding starting locations (depots).
3. The trucks with their IDs, starting locations (depots), speed and capacity limits as
well as their costs (per kmh).
4. The drivers with their IDs, home depots, and salary (per day).
50.4. CLOSE-TO-REAL VEHICLE ROUTING PROBLEM BENCHMARK 625
5. The distance matrix
13
containing the distances between the dierent locations. Notice
that, in the real world, these matrices are slightly asymmetric, meaning that the
distance from location A to B may be (slightly) dierent from the distance between
B and A. The distances are given in m.
50.4.1.4 Overview on the Optimization Task
The optimizer then must nd a plan which involves the input objects shortly listed in Sec-
tion 50.4.1.3. Such a plan, which can be constructed by any of the optimization algorithms
discussed in Part III and Part IV, has the following features:
1. It assigns trucks, containers, and drivers to moves. A move is one atomic logistic
action which is denoted byarabic (a) a truck, (b) a (possibly empty) set of orders to
be transported by that truck, (c) a non-empty set of truck drivers (contains at least
one driver), (d) a (possibly empty) set of containers which will contain the orders,
(e) a starting location, (f ) a starting time,orders, (g) and a destination location.
Notice that the arrival time at the destination is determined by the distance between
the start and destination location, the trucks average speed, and the starting time.
See Section 50.4.3.1 on page 632 for more information.
2. A plan may consist of an arbitrary number of such moves. See Section 50.4.3.2 on
page 634 for more information.
3. This plan must fulll all the constraints given in Section 50.4.1.2 while minimizing the
two objectives, cost and delivery errors.
50.4.2 Involved Objects
50.4.2.1 Locations
A location is a place where a truck can drive to. Each location l = (id, isDepot) has the
following features:
1. A unique identier id which is a string that starts with an uppercase L followed by six
decimal digits. Example: L000021.
2. A Boolean value isDepot which is true if the location denotes a depot or false if it is
a normal place (such as a customers location). Trucks, containers, and drivers always
reside at depots at the beginning of a planning period and must return to depots at
the end of a plan. Example: true.
In our benchmark Java implementation given in Section 57.3, locations are represented by
the class Location given in Listing 57.24 on page 914. This class allows creating and reading
textual representations of the location data. Hence, using our benchmark is not bound to
using the Java language. A list of locations can be given in the form of Listing 50.21.
13
http://en.wikipedia.org/wiki/Distance_matrix [accessed 2010-11-09]
626 50 BENCHMARKS
Listing 50.21: The location data of the rst example problem instance.
1 %id is_depot
2 L000000 true
3 L000001 true
4 L000002 true
5 L000003 true
6 L000004 true
7 L000005 false
8 L000006 false
9 L000007 false
10 L000008 false
11 L000009 true
12 L000010 false
13 L000011 false
14 L000012 false
15 L000013 false
16 L000014 false
17 L000015 true
18 L000016 false
19 L000017 false
20 L000018 false
21 L000019 true
50.4.2.2 Orders
An order o = (id, p
s
, p
e
, p
l
, d
s
, d
e
, d
l
) is a delivery task which is booked by a customer from
the logistics company. A customer basically says: Take order o from location p
l
to location
d
l
. Pick up the order between the times p
s
and p
e
and deliver it within the time window
[d
s
, d
e
]. An order is hence described by the following data elements:
1. The order ID id. Order IDs start with an uppercase O followed by a six-digit decimal
number. The order IDs form a strict sequence of numbers. The order ID gives no
information about the pickup or delivery time of an order. Example: O000004.
2. The pickup window start time p
s
N
0
. A positive natural number which denotes the
start of the pickup window in milliseconds, measured from the beginning of the plan-
ning period. These numbers have long precision, i. e., are 64bit numbers. Example:
2 700 000.
3. The pickup window start end p
e
N
0
. A positive natural number which denotes the
end of the pickup window in milliseconds, measured from the beginning of the planning
period. These numbers have long precision, i. e., are 64bit numbers. It always holds
that p
e
> p
s
. Example: 5 400 000.
4. The pickup location p
l
is where the order has to be picked up. An order can only be
picked up during its pickup time window, i. e., at times t with p
s
t p
e
. The pickup
location is denoted with a location identier. Example: L000016. All pick-ups outside
the pickup window are delivery errors.
5. The delivery window start time d
s
N
0
. A positive natural number which denotes
the start of the delivery window in milliseconds, measured from the beginning of
the planning period. These numbers have long precision, i. e., are 64bit numbers.
Example: 2 700 000.
6. The delivery window start end d
e
N
0
. A positive natural number which denotes
the end of the delivery window in milliseconds, measured from the beginning of the
planning period. These numbers have long precision, i. e., are 64bit numbers. It always
holds that d
e
> d
s
. Notice that the pickup and delivery window may overlap, but it
will always hold the d
s
p
s
. Example: 7 200 000.
50.4. CLOSE-TO-REAL VEHICLE ROUTING PROBLEM BENCHMARK 627
Listing 50.22: The order data of the rst example problem instance.
1 %id pickup_window_start pickup_window_end pickup_location delivery_window_start
delivery_window_end delivery_location
2 O000000 2700000 5400000 L000016 2700000 7200000 L000000
3 O000001 1800000 5400000 L000016 2700000 7200000 L000000
4 O000002 4500000 6300000 L000010 5400000 8100000 L000006
5 O000003 4500000 7200000 L000006 4500000 8100000 L000000
6 O000004 1800000 2700000 L000008 2700000 3600000 L000011
7 O000005 0 3600000 L000011 0 5400000 L000018
8 O000006 1800000 3600000 L000018 2700000 5400000 L000005
9 O000007 2700000 5400000 L000005 2700000 6300000 L000013
10 O000008 2700000 7200000 L000010 2700000 9900000 L000008
11 O000009 3600000 5400000 L000002 4500000 7200000 L000004
7. The delivery location d
l
is where the order has to be delivered to. An order can only
be delivered during its delivery time window, i. e., at times t with d
s
t d
e
. The
delivery location is denoted with a location identier. Example: L000000. If a truck
arrives at a delivery location before d
s
, it has to wait until d
s
before it can deliver the
order. All deliveries outside the delivery window are delivery errors.
In Listing 57.25 on page 915, we provide a Java class to hold the order information. This
class can produce and read a textual representation of the data mentioned above. An
example for this representation is given in Listing 50.22.
50.4.2.3 Trucks
Trucks transport orders from one location to another. Each truck t =
(id, s
l
, maxC, maxD, costHKm, avgSpeed) is characterized by
1. A unique identier id which is a string that starts with an uppercase T followed by six
decimal digits. Example: T000003.
2. A starting location s
l
, a depot, where the truck is parked. This location is denoted by
a location identier. Example: L000015.
3. The maximum number maxC N
1
of containers that this truck can transport. This
number, usually 0 < maxc 3 can be dierent for each truck. A truck cannot carry
more than maxc containers. Example: 2.
4. The maximum number maxD N
1
of drivers which can be in the truck. A truck must
be driven by at least one driver. It may, however, be possible that a truck has more
than one seat, so that two truck drivers can drive to their home depot together on
their return trip, for example. Example: 2
5. The costs per hour-kilometer costHKm in USD-cent (or RMB-fen). If the truck t drives
for m kilometers needing n hours, the total costs of this move are n m costHKm.
These costs include, for example, fuel consumption and material/maintenance costs
for the truck. These costs, of course, may be dierent for dierent trucks. Example:
170.
6. The average speed avgSpeed in km/h with which the truck can move. Of course, this
speed can again be dierent from truck to truck, some larger trucks may be slower,
smaller trucks may be faster. The same goes for older and newer trucks. Example:
45.
628 50 BENCHMARKS
Listing 50.23: The truck data of the rst example problem instance.
1 %id start_location max_containers max_drivers costs_per_h_km avg_speed_km_h
2 T000000 L000000 3 2 230 50
3 T000001 L000019 2 1 185 50
4 T000002 L000015 3 1 215 30
5 T000003 L000002 3 1 160 50
6 T000004 L000004 1 1 185 50
7 T000005 L000015 1 2 170 50
8 T000006 L000001 2 1 145 50
9 T000007 L000019 2 1 230 40
10 T000008 L000019 2 1 145 45
11 T000009 L000003 2 2 200 55
12 T000010 L000002 3 1 270 45
13 T000011 L000003 2 1 230 40
14 T000012 L000009 3 1 160 50
A truck will always be located at a depot at the beginning of a planning period and must
also be located at a depot after the plan was executed. The end depot may, however, be a
dierent one from the start depot.
In Listing 57.26 on page 918, we provide a Java class to hold the truck information.
This class can produce and read a textual representation of the data mentioned above. An
example for this representation is given in Listing 50.23.
50.4.2.4 Containers
Containers c = (id, s
l
) are simple objects which are used to package the orders for trans-
portation. They are characterized by
1. The container ID id. Container IDs start with an uppercase C followed by a six-digit
decimal number. The container IDs form a strict sequence of numbers. Example:
C000003.
2. The start location s
l
the depot where the container resides. s
l
is a location ID.
Example: L000000.
A container will always be located at a depot at the beginning of a planning period and
must also be located at a depot after the plan was executed. The end depot may, however,
be a dierent one from the start depot.
In Listing 57.27 on page 920, we provide a Java class to hold the container information.
This class can produce and read a textual representation of the data mentioned above. An
example for this representation is given in ??.
50.4.2.5 Drivers
Drivers d = (id, s
l
, costs) are needed to drive the trucks. They are characterized by
1. The driver ID id. Driver IDs start with an uppercase D followed by a six-digit decimal
number. The driver IDs form a strict sequence of numbers. Example: D000007.
2. The home location s
l
the depot where the driver starts her work. s
l
is a location
ID. Example: L000002.
3. The costs per day costs denote the amount in USD cent (or RMB-fen) that have to
paid for each day on which the driver is working. Even if the driver only works for
one millisecond of the day, the full amount must be paid.
50.4. CLOSE-TO-REAL VEHICLE ROUTING PROBLEM BENCHMARK 629
Listing 50.24: The container data of the rst example problem instance.
1 %id start
2 C000000 L000000
3 C000001 L000000
4 C000002 L000019
5 C000003 L000015
6 C000004 L000019
7 C000005 L000019
8 C000006 L000019
9 C000007 L000001
10 C000008 L000001
11 C000009 L000004
12 C000010 L000000
13 C000011 L000019
14 C000012 L000009
15 C000013 L000000
Listing 50.25: The driver data of the rst example problem instance.
1 %id home costs_per_day
2 D000000 L000000 7000
3 D000001 L000000 11000
4 D000002 L000019 9000
5 D000003 L000015 10000
6 D000004 L000003 11000
7 D000005 L000009 7000
8 D000006 L000001 10000
9 D000007 L000019 7000
10 D000008 L000019 8000
11 D000009 L000009 11000
12 D000010 L000019 9000
13 D000011 L000001 11000
14 D000012 L000009 10000
15 D000013 L000009 11000
A driver will always be located at a depot at the beginning of a planning period and must
also be located at exactly this depot after the plan was executed.
In Listing 57.28 on page 921, we provide a Java class to hold the truck information.
This class can produce and read a textual representation of the data mentioned above. An
example for this representation is given in Listing 50.25.
50.4.2.6 Distance Matrix
The asymmetric distance matrix contains the distances between the dierent locations in
meters. If there are n locations, the distance matrix is an n n matrix.
The element
i,j
at position i, j N
0
denotes the distance between the locations i and
j. The distance between L000009 and L000017 would be found at
9,17
. Notice that this
may be dierent from the distance between L000017 and L000009 which can be found at
17,9
. Since the resolution of the distance matrix is meters, it is easy to understand that
these values may slightly dier. If highways are used, the on-ramps and exits may to the
highway may be at slightly dierent positions.
The time T(t, i, j) in milliseconds that a truck t needs to drive from location i to location
j can be computed as specied in Equation 50.125.
T(t, i, j) =
_
i,j
1000 t.avgSpeed
3600 1000
_
=
_
i,j
t.avgSpeed
3600
_
(50.125)
630 50 BENCHMARKS
The driving costs C(t, i, j) in USD-cent (or RMB-fen) consumed by a truck t when driving
from location i to location j can be computed as specied in Equation 50.126.
C(t, i, j) =
_
T(t, i, j)
3 600 000
i,j
1000
t.costsHKm
_
(50.126)
These costs do not include the costs that have to be spent for the drivers. In Listing 57.29
on page 923, we provide a Java class to hold the distance information. This class can
produce and read a textual representation of the data mentioned above. An example for
this representation is given in Listing 50.26.
5
0
.
4
.
C
L
O
S
E
-
T
O
-
R
E
A
L
V
E
H
I
C
L
E
R
O
U
T
I
N
G
P
R
O
B
L
E
M
B
E
N
C
H
M
A
R
K
6
3
1
Listing 50.26: The distance data of the rst example problem instance.
1 0 15700 10500 16450 5600 6750 5000 4900 5200 14100 14000 11850 13150 14200 13700 12800 14450 18050 12350 4550
2 15550 0 17050 22950 12150 13300 11550 11450 11750 20600 20550 18350 19650 20650 20200 19300 20900 24600 18800 11050
3 10450 17050 0 17950 7100 8150 6450 6350 6700 15500 15500 13300 14500 15550 15150 14150 15800 19500 13700 5950
4 16400 23100 18050 0 12150 13300 11550 12400 11750 6500 2450 4650 3500 4050 4500 5350 7050 10750 5100 12000
5 5550 12250 7100 12150 0 1150 650 1450 400 9750 9700 7500 8850 9800 9400 8400 10100 13750 7950 1150
6 6650 13300 8200 13300 1150 0 1700 2600 1550 10850 10850 8600 9900 10950 10500 9550 11200 14900 9100 2200
7 4950 11650 6500 11650 650 1750 0 850 200 9200 9100 6900 8250 9300 8900 7850 9500 13200 7400 450
8 4800 11500 6400 12300 1450 2600 900 0 1050 9950 9900 7700 8950 10050 9600 8600 10250 13900 8100 350
9 5200 11850 6700 11800 400 1550 200 1050 0 9400 9300 7150 8550 9550 9150 8100 9700 13450 7650 750
10 13950 20600 15500 6500 9750 10850 9150 9850 9350 0 4050 2300 3600 2400 2300 1300 1500 5250 1850 9500
11 13950 20600 15500 2450 9750 10850 9150 9850 9300 4050 0 2250 1050 1700 1950 2950 4650 8300 2700 9500
12 11800 18400 13350 4700 7550 8700 6900 7700 7150 2250 2250 0 1300 2350 1950 900 2600 6300 450 7300
13 13050 19700 14650 3500 8800 10000 8200 8950 8400 3600 1050 1300 0 2800 3000 2200 3900 7600 1750 8600
14 14000 20700 15600 4050 9800 10950 9250 10000 9450 2400 1700 2350 2750 0 450 1450 3100 6750 1900 9550
15 13650 20250 15150 4400 9400 10500 8850 9550 9050 2350 1950 1950 3000 450 0 1000 2650 6350 1500 9150
16 12700 19300 14250 5400 8450 9550 7850 8600 8100 1300 2950 950 2250 1450 1000 0 1700 5350 550 8200
17 14350 21050 15900 7000 10100 11250 9500 10300 9750 1500 4600 2600 3900 3100 2650 1700 0 3650 2200 9950
18 18050 24650 19550 10750 13750 14850 13200 13900 13400 5200 8300 6250 7550 6750 6300 5400 3650 0 5850 13550
19 12150 18900 13700 5100 7950 9050 7350 8100 7550 1850 2700 450 1750 1900 1500 550 2200 5850 0 7750
20 4450 11100 6000 11950 1100 2200 450 350 650 9550 9500 7300 8550 9700 9200 8200 9850 13550 7750 0
632 50 BENCHMARKS
50.4.3 Problem Space
50.4.3.1 Move: The Atomic Action
A candidate solution for this optimization problem is a list of atomic transportation actions
which we here call moves. A move m = (t, o, d, c, s
l
, s
t
, d
l
) is a tuple consisting of the
following elements.
1. A truck t denoted by a truck identier. Example: T000000.
2. A (possibly empty) set of o of orders to be transported by the truck t. Notice that
0 [o[ [c[. Example: (O000002).
3. A non-empty set d of drivers, one of which will drive the truck (whereas the others, if
any, just use the truck for transportation). Notice that 0 < [d[ t.maxD. Example:
(D000000, D000001).
4. A (possibly empty) set of c of containers to be transported by the truck t. Notice that
0 [c[ t.maxC. Example: (C000001, C000000).
5. A starting location s
l
from where the truck will start to drive. Example: L000010.
6. A starting time s
t
at which the truck will leave the starting location (measured in
milliseconds from the beginning of the planning period). Example: 5 691 600.
7. A destination location d
l
,= s
l
where the truck will drive to. Example: L000006.
It is assumed that truck t will arrive at m.d
l
at time m.s
t
+ T(t, m.s
l
, m.d
l
) (see Equa-
tion 50.125), hence it is not necessary to store an arrival time in the tuple m. One part of
the costs of the move can be computed according to Equation 50.126. The other part must
determined by adding the driver costs (see Section 50.4.2.5).
In Listing 57.30 on page 925, we provide a Java class to hold the information of a single
move. This class can produce and read a textual representation of the data mentioned above.
An example for this representation is given in Listing 50.27.
5
0
.
4
.
C
L
O
S
E
-
T
O
-
R
E
A
L
V
E
H
I
C
L
E
R
O
U
T
I
N
G
P
R
O
B
L
E
M
B
E
N
C
H
M
A
R
K
6
3
3
Listing 50.27: The move data of the solution to the rst example problem instance.
1 %truck orders drivers containers from start time to
2 T000000 () (D000000,D000001) (C000001,C000000) L000000 2610000 L000016
3 T000000 (O000001,O000000) (D000000,D000001) (C000001,C000000) L000016 3650400 L000000
4 T000000 () (D000000,D000001) (C000001,C000000) L000000 4683600 L000010
5 T000000 (O000002) (D000000,D000001) (C000001,C000000) L000010 5691600 L000006
6 T000000 (O000003) (D000000,D000001) (C000001,C000000) L000006 6350400 L000000
7 T000001 () (D000002) (C000002) L000019 2520000 L000008
8 T000001 (O000004) (D000002) (C000002) L000008 2566800 L000011
9 T000001 (O000005) (D000002) (C000002) L000011 3081600 L000018
10 T000001 (O000006) (D000002) (C000002) L000018 3114000 L000005
11 T000001 (O000007) (D000002) (C000002) L000005 3765600 L000013
12 T000001 () (D000002) (C000002) L000013 4554000 L000010
13 T000001 (O000008) (D000002) (C000002) L000010 4676400 L000008
14 T000001 () (D000002) (C000002) L000008 5346000 L000019
15 T000002 () (D000003) (C000003) L000015 3060000 L000002
16 T000002 (O000009) (D000003) (C000003) L000002 4770000 L000004
17 T000002 () (D000003) (C000003) L000004 5619600 L000015
634 50 BENCHMARKS
1 Total Errors : 4
2 Total Costs : 63863
3 Total Time Error : 0
4 Container Errors : 0
5 Driver Errors : 0
6 Order Errors : 4
7 Truck Errors : 0
8 Pickup Time Error : 0
9 Delivery Time Error : 0
10 Truck Costs : 5863
11 Driver Costs : 58000
Listing 50.28: An example output of the features of an example plan (with errors).
50.4.3.2 Plans: The Candidate Solutions
In Listing 50.27, we do not display a single move. Instead, a set of multiple moves is
presented. Here, we refer to such sets of moves as plans x = (m
1
, m
2
, . . . ). Trucks rst drive
to the pickup location of the orders. The pickup the orders and deliver them and then drive
back. Sometimes, a truck may not drive back directly but could pick up another order on
the way.
The problem space X thus consists of all possible plans x, i. e., of lists of all possible
moves m. It is the goal of the optimization process to construct good plans.
The solutions to an instance of the presented type of Vehicle Routing Problem follow
exactly the format given in Listing 50.27. They are textual representations of the candidate
solutions x and, hence, can be created using an arbitrary synthesis/optimization method
implemented in an arbitrary programming language.
50.4.4 Objectives and Constraints
The objectives of solving the (benchmarking) real-world Vehicle Routing Problem are quite
easy, as already stated in Section 50.4.1.2 on page 623: (a) We want to deliver all orders
in time (b) at the least possible costs. Additional to these objectives, we have to consider
constraints: the synthesized plans must be physically sound.
Evaluating a candidate solution of this kind of problem is relatively complex. Basically,
we can do this as follows:
1. Initialize an internal data structure that keeps track of the positions and arrival times
of all objects by placing all objects at their starting locations.
2. Sort the list x X of moves m x according to the starting times of the moves.
3. For each move, starting with the earliest one, do:
(a) Compute the costs of the move and add them to an internal cost counter.
(b) Update the positions and arrival times of all involved objects in each step.
(c) After each step, check if any physical or time window constraint has been violated.
If so, count the number of errors.
The feature values obtained by such a computation can be used by the objective functions.
There is no clear rule on how to design the objective functions we already showed in Task 67
on page 238 that often, the same optimization criterion can be expressed in dierent ways.
Hence, we just provide a class Compute which determines some key features of a candidate
solution (plan) x in Listing 57.31 on page 931. This class can evaluate a plan and generate
outputs such as the one in Listing 50.28.The class Compute allows us to process the moves
of a plan x step-by-step and to check, in each step, if new errors occurred or how the total
costs changed. This would also allow for a successive generation of solutions.
50.4. CLOSE-TO-REAL VEHICLE ROUTING PROBLEM BENCHMARK 635
Notice that, if you wish to use the evaluation capabilities of this class without imple-
menting your solution in Java, you can still produce plans as presented in Listing 50.27 on
page 633, parse them in with Java, and then apply Compute to the parsed list.
50.4.5 Framework
As already outlined in the previous sections, we provide a complete framework for this
benchmark problem and list the most important source les in Section 57.3 on page 914.
Additional to the classes listed representing the essential objects involved in the optimization
process (see Section 50.4.2 and Section 50.4.3), we also provide an instance generator which
can create datasets such as those given as examples in the two mentioned sections.
With this instance generator, we create six benchmark instances which dier in the
number of involved objects. Naturally, we would expect that smaller problem instances
(such as case01 which was used as example in our discussion on the benchmark objects)
are easier to solve. Solutions to the larger problem instances should be much harder to
discover. For each of the benchmark sets, we provide a baseline solution. This solution
is not necessarily the best possible solution to the benchmark dataset, but it fullls all
constraints. Matter of fact, the best solutions to the benchmark datasets are unknown and
yet to be discovered.
These benchmark datasets can be loaded via a function loadInstance of the class
InstanceLoader. Notice that each of the classes Container, Driver, Location, Order, Truck,
and DistanceMatrix contains a static variable which allows accessing the list of instances of
that class as dened in the benchmark dataset. The class Driver, for example, has a static
variable called DRIVERS which lists all of its instances. Container has a similar variable called
CONTAINERS.
Part VI
Background
638 50 BENCHMARKS
Chapter 51
Set Theory
Set theory
1
[763, 1169, 2615] is an important part of the mathematical theory. Numerous
other disciplines like algebra, analysis, and topology are based on it. Since set theory is not
the topic of this book but a mere prerequisite, this chapter (and the ones to follow) will
just briey introduce it. We make heavy use of wild denitions and, in some cases, even
rough simplications. More information on the topics discussed can be retrieved from the
literature references and, again, from [2938].
Set theory can be divided into nave set theory
2
and axiomatic set theory
3
. The rst
approach, the nave set theory, is inconsistent and therefore not regarded in this book.
Denition D51.1 (Set). A set is a collection of objects considered as a whole
4
. The
objects of a set are called elements or members. They can be anything, from numbers and
vectors, to complex data structures, algorithms, or even other sets. Sets are conventionally
denoted with capital letters, A, B, C, etc. while their elements are usually referred to with
small letters a, b, c.
51.1 Set Membership
The expression a A means that the element a is a member of the set A while b , A means
that b is not a member of A. There are three common forms to dene sets:
1. With their elements in braces: A = 1, 2, 3 denes a set A containing the three
elements 1, 2, and 3. 1, 1, 2, 3 = 1, 2, 3 since the curly braces only denote set
membership.
2. The same set can be specied using logical operators to describe its elements: a
N
1
: (a 1) (a < 4) a A.
3. A shortcut for the previous form is to denote the logical expression in braces, like
A = (a 1) (a < 4), a N
1
.
The cardinality of a set A is written as [A[ and stands for the count of elements in the
set.
1
http://en.wikipedia.org/wiki/Set_theory [accessed 2007-07-03]
2
http://en.wikipedia.org/wiki/Naive_set_theory [accessed 2007-07-03]
3
http://en.wikipedia.org/wiki/Axiomatic_set_theory [accessed 2007-07-03]
4
http://en.wikipedia.org/wiki/Set_%28mathematics%29 [accessed 2007-07-03]
640 51 SET THEORY
51.2 Special Sets
Special sets used in the context of this book are
1. The empty set = contains no elements ([[ = 0).
2. The natural numbers
5
N
1
without zero include all whole numbers bigger than 0. (N
1
=
1, 2, 3, . . . )
3. The natural numbers including zero (N
0
) comprise all whole numbers bigger than or
equal to 0. (N
0
= 0, 1, 2, 3, . . . )
4. Z is the set of all integers, positive and negative. (Z = . . . , 2, 1, 0, 1, 2, . . . )
5. The rational numbers
6
Q are dened as Q =
_
a
b
: a, b Z, b ,= 0
_
.
6. The real numbers
7
R include all rational and irrational numbers (such as
2).
7. R
+
denotes the positive real numbers including 0: (R
+
= [0, +)).
8. C is the set of complex numbers
8
. When needed in the context of this book, we
abbreviate the immaginary unit with i. The real and imaginary parts of a complex
number z are denoted as Rez and Imz, respectively.
9. We dene B = 0, 1 as the set of values a Boolean variable may take on, where
0 false and 1 true.
N
1
N
0
Z Q R C (51.1)
N
1
N
0
R
+
R C (51.2)
For these numerical sets, special subsets, so called intervals, can be specied. [1, 5) is a set
which contains all the numbers starting from (including) 1 up to (exclusively) 5. (1, 5] on
the other hand contains all numbers bigger than 1 and up to inclusively 5. In order to avoid
ambiguities, such sets will always used in a context where it is clear if the numbers in the
set are natural or real.
51.3 Relations between Sets
Between two sets A and B, the following subset relations may exist: If all elements of A are
also elements of B, A B holds.
(a A a B) A B (51.3)
Hence, 1, 2, 3 1, 2, 3, 4 and x, y, z x, y, z but not , , , , . If
additionally there is at least one element b in B which is not in A, then A B.
(A B) (b B : (b A)) A B (51.4)
Thus, 1, 2, 3 1, 2, 3, 4 but not x, y, z x, y, z. The set relations can be negated by
crossing them out, i. e., A , B means (A B) and A , B denotes (A B), respectively.
51.4. OPERATIONS ON SETS 641
A
B
AB
A B
A B
A
B
A
BA
Figure 51.1: Set operations performed on sets A and B inside a set A.
51.4 Operations on Sets
Let us now dene the possible unary and binary operations on sets, some of which are
illustrated in Figure 51.1.
Denition D51.2 (Set Union). The union
9
C of two sets A and B is written as A B
and contains all the objects that are element of at least one of the sets.
C = A B ((c A) (c B) (c C)) (51.5)
A B = B A (51.6)
A = A (51.7)
A A = A (51.8)
A A B (51.9)
Denition D51.3 (Set Intersection). The intersection
10
D of two sets A and B, denoted
by AB, contains all the objects that are elements of both of the sets. If AB = , meaning
that A and B have no elements in common, they are called disjoint.
D = A B ((d A) (d B) (d D)) (51.10)
A B = B A (51.11)
A = (51.12)
A A = A (51.13)
A B A (51.14)
5
http://en.wikipedia.org/wiki/Natural_numbers [accessed 2008-01-28]
6
http://en.wikipedia.org/wiki/Rational_number [accessed 2008-01-28]
7
http://en.wikipedia.org/wiki/Real_numbers [accessed 2008-01-28]
8
http://en.wikipedia.org/wiki/Complex_number [accessed 2008-01-29]
9
http://en.wikipedia.org/wiki/Union_%28set_theory%29 [accessed 2007-07-03]
10
http://en.wikipedia.org/wiki/Intersection_%28set_theory%29 [accessed 2007-07-03]
642 51 SET THEORY
Denition D51.4 (Set Dierence). The dierence E of two sets A and B, AB, contains
the objects that are element of A but not of B.
E = A B ((e A) (e , B) (e E)) (51.15)
A = A (51.16)
A = (51.17)
A A = (51.18)
A B A (51.19)
Denition D51.5 (Set Complement). The complementary set A of the set A in a set A
includes all the elements which are in A but not element of A:
A A A = A A (51.20)
Denition D51.6 (Cartesian Product). The Cartesian product
11
P of two sets A and
B, denoted P = A B is the set of all ordered pairs (a, b) whose rst component is an
element from A and the second is an element of B.
P = AB P = (a, b) : a A, b B (51.21)
A
n
= AA.. A
. .
n times
(51.22)
Denition D51.7 (Countable Set). A set S is called countable
12
if there exists an
injective function
13
which maps it to the natural numbers (which are countable), i. e.,
f : S N
0
.
Denition D51.8 (Uncountable Set). A set is uncountable if it is not countable, i. e.,
no such function exists for the set.
N
0
, Z, Q, and B are countable, R, R
+
, and C are not.
Denition D51.9 (Power Set). The power set
14
T(A) of the set A is the set of all subsets
of A.
p T(A) p A (51.23)
11
http://en.wikipedia.org/wiki/Cartesian_product [accessed 2007-07-03]
12
http://en.wikipedia.org/wiki/Countable_set [accessed 2007-07-03]
13
see denition of function on page 646
14
http://en.wikipedia.org/wiki/Axiom_of_power_set [accessed 2007-07-03]
51.5. TUPLES 643
51.5 Tuples
Denition D51.10 (Type). A type is a set of values that a variable, constant, function,
or similar entity may take on.
We can, for instance, specify the type T = 1, 2, 3. A variable x which is an instance of
this type then can take on the values 1, 2, or 3.
Denition D51.11 (Tuple). A tuple
15
is an ordered, nite sequence of elements, where
each element is an instance of a certain type.
To each position in i a tuple t, a type T
i
is assigned. The element t[i] at a position i must
then be an element of T
i
. Other than sets, tuples may contain the same element more than
once.
In the context of this book, we dene tuples with parenthesis like (a, b, c) whereas sets
are specied using braces a, b, c. Since every item of a tuple may be of a dierent type,
(Monday, 23, a, b, c) is a valid tuple.
Denition D51.12 (Tuple Type). To formalize this relation, we dene the tuple type T.
T species the basic sets for the elements of the tuples. If a tuple t meets the constraints
imposed to its values by T, we can write t T which means that the tuple t is an instance
of T.
T = (T
0
, T
1
, ..T
n1
) , n N
1
(51.24)
t = (t[0], t[1], ..t[n 1]) T t
i
T
i
i : 0 i < n len(t) = len(T) (51.25)
51.6 Permutations
A permutation
16
is a special tuple. A permutation is an arrangement of n elements where
each element is unique.
Denition D51.13 (Permutation). Without loss of generality, we assume that a permu-
tation of length n is a vector of natural numbers of that length for which the following
conditions hold:
[i] 0..n 1 i 0..n 1 (51.26)
i, j 0..n 1 ([i] = [j] i = j) (51.27)
p 0..n 1 i 0..n 1 : [[]i] = p (51.28)
The permutation space (n) be the space of all permutations (n) for which the
conditions from Denition D51.13 hold.
15
http://en.wikipedia.org/wiki/Tuple [accessed 2007-07-03]
16
http://en.wikipedia.org/wiki/Permutations [accessed 2008-01-31]
644 51 SET THEORY
51.7 Binary Relations
Denition D51.14 (Binary Relation). A binary
17
relation
18
R is dened as an ordered
triplet (A, B, P) where A and B are arbitrary sets, and P is a subset of the Cartesian product
AB (see Equation 51.21). The sets A and B are called the domain and codomain of the
relation and P is called its graph.
The statement (a, b) P (a A b B) is read a is R-related to b and is written as
R(a, b). The order of the elements in each pair of P is important: If a ,= b, then R(a, b) and
R(b, a) both can be true or false independently of each other.
Some types and possible properties of binary relations are listed below and illustrated in
Figure 51.2. A binary relation can be [923]:
left-total
surjective
non-injective
functional
non-bijective
A B
left-total
surjective
injective
functional
bijective
A B
left-total
surjective
injective
non-functional
non-bijective
A B
left-total
non-surjective
injective
functional
non-bijective
A B
notleft-total
non-surjective
injective
functional
non-bijective
A B
left-total
non-surjective
non-injective
functional
non-bijective
A B
notleft-total
non-surjective
non-injective
non-functional
non-bijective
A B
Figure 51.2: Properties of a binary relation R with domain A and codomain B.
1. Left-total if
a A b B : R(a, b) (51.29)
2. Surjective
19
or right-total if
b B a A : R(a, b) (51.30)
3. Injective
20
if
a
1
, a
2
A, b B : R(a
1
, b) R(a
2
, b) a
1
= a
2
(51.31)
17
http://en.wikipedia.org/wiki/Binary_relation [accessed 2007-07-03]
18
http://en.wikipedia.org/wiki/Relation_%28mathematics%29 [accessed 2007-07-03]
19
http://en.wikipedia.org/wiki/Surjective [accessed 2007-07-03]
20
http://en.wikipedia.org/wiki/Injective [accessed 2007-07-03]
51.8. ORDER RELATIONS 645
4. Functional if
a A, b
1
, b
2
B : R(a, b
1
) R(a, b
2
) b
1
= b
2
(51.32)
5. Bijective
21
if it is left-total, right-total and functional.
6. Transititve
22
if
a A, b B, c A B : R(a, c) R(c, b) R(a, b) (51.33)
51.8 Order Relations
All of us have learned the meaning and the importance of order since the earliest years
in school. The alphabet is ordered, the natural numbers are ordered, the marks we can score
in school are ordered, and so on. Matter of fact, we come into contact with orders even way
before entering school by learning to distinguish things according to their size, for instance.
Order relations
23
are binary relations which are used to express the order amongst the
elements of a set A. Since order relations are imposed on single sets, both their domain and
their codomain are the same (A, in this case). For such relations, we can dene an additional
number of properties which can be used to characterize and distinguish the dierent types
of order relations:
1. Antisymmetrie:
R(a
1
, a
2
) R(a
2
, a
1
) a
1
= a
2
a
1
, a
2
A (51.34)
2. Asymmetrie
R(a
1
, a
2
) R(a
2
, a
1
) a
1
, a
2
A (51.35)
3. Reexivenss
R(a, a) a A (51.36)
4. Irreexivenss
,a A : R(a, a) (51.37)
All order relations are transitive
24
, and either antisymmetric or symmetric and either
reexive or irreexive:
Denition D51.15 (Partial Order). A binary relation R denes a (non-strict, reexive)
partial order if and only if it is reexive, antisymmetric, and transitive.
The and operators, for instance, represent non-strict partial orders on the set of the
complex numbers C. Partial orders that correspond to the > and < comparators are called
strict. The Pareto dominance relation introduced in Denition D3.13 on page 65 is another
example for such a strict partial order.
Denition D51.16 (Strict Partial Order). A binary relation R denes a strict (or ir-
reexive) partial order if it is irreexive, asymmetric, and transitive.
21
http://en.wikipedia.org/wiki/Bijective [accessed 2007-07-03]
22
http://en.wikipedia.org/wiki/Transitive_relation [accessed 2007-07-03]
23
http://en.wikipedia.org/wiki/Order_relation [accessed 2007-07-03]
24
See Equation 51.33 for the denition of transitivity.
646 51 SET THEORY
Denition D51.17 (Total Order). A total order
25
(or linear order, simple order) R im-
posed on the set A is a partial order which is complete/total.
R(a
1
, a
2
) R(a
2
, a
1
) a
1
, a
2
A (51.38)
The real numbers R for example are totally ordered whereas on the set of complex
numbers C, only (strict or reexive) partial (non-total) orders can be dened since it is
continuous in two dimensions.
51.9 Equivalence Relations
Another important class of relations are equivalence relations
26
[2774, 2842] which are
often abbreviated with or , i. e., a
1
a
2
and a
1
a
2
mean R(a
1
, a
2
) for the equivalence
relation R imposed on the set A and a
1
, a
2
A. Unlike order relations, equivalence relations
are symmetric, i. e.,
R(a
1
, a
2
) R(a
2
, a
1
) a
1
, a
2
A (51.39)
Denition D51.18 (Equivalence Relation). The binary relation R denes an equiva-
lence relation on the set A if and only if it is reexive, symmetric, and transitive.
Denition D51.19 (Equivalence Class). If an equivalence relation R is dened on a
set A, the subset A
A of A is an equivalence class
27
if and only if a
1
, a
2
A
R(a
1
, a
2
) (a
1
a
2
).
51.10 Functions
Denition D51.20 (Function). A function f : X Y is a binary relation with the
property that for each element x of the domain
28
X there is no more than one element y in
the codomain Y such that x is related to y (by f). This uniquely determined element y is
denoted by f (x). In other words, a function is a functional binary relation (see Point 4 on
the previous page) and we can write:
x X, y
1
, y
2
Y : f (x, y
1
) f (x, y
2
) y
1
= y
2
(51.40)
A function maps each element of X to one element in Y . The domain X is the set of possible
input values of f and the codomain Y is the set its possible outputs. The set of all actual
outputs f (x) : x X is called range. This distinction between range and codomain can
be made obvious with a small example. The sine function can be dened as a mapping from
the real numbers to the real numbers sin : R R, making R its codomain. Its actual range,
however, is just the real interval [1, 1].
25
http://en.wikipedia.org/wiki/Total_order [accessed 2007-07-03]
26
http://en.wikipedia.org/wiki/Equivalence_relation [accessed 2007-07-28]
27
http://en.wikipedia.org/wiki/Equivalence_class [accessed 2007-07-28]
28
http://en.wikipedia.org/wiki/Domain_%28mathematics%29 [accessed 2007-07-03]
51.11. LISTS 647
51.10.1 Monotonicity
Functions are monotone, i. e., have the property of monotonicity
29
, if they preserve orders.
In the following denitions, we assume that two order relations R
X
and R
Y
are dened on
the domain X and codomain Y of a function f, respectively. These orders are expressed
with the <, , and operators. In the common case that X = Y or X R and Y R,
R
X
= R
Y
usually holds and both correspond to the intuitive order of the real numbers.
Denition D51.21 (Monotonically Increasing). A function f : X Y is called mono-
tonic, monotonically increasing, increasing, or non-decreasing, if and only if Equation 51.41
holds (according to the order relations dened on X and Y ).
x
1
< x
2
, x
1
, x
2
X f (x
1
) f (x
2
) (51.41)
Denition D51.22 (Monotonically Decreasing). A function f : X Y is called
monotonically decreasing, decreasing, or non-increasing, if and only if Equation 51.42 holds
(according to the order relations dened on X and Y ).
x
1
, x
2
X : x
1
< x
2
f (x
1
) f (x
2
) (51.42)
51.11 Lists
Denition D51.23 (List). Lists
30
are abstract data types which can be regarded as spe-
cial tuples. They are sequences where every item is of the same type.
Other than our discussions on set theory, the following text about the data structure list is
strictly local to this book and not to be understood as a general mathematical theory. All
the functions and operations dened here are only given in order to allow for a clear and
well-dened notation in the other parts of the book. When specifying population-oriented
optimization algorithms, for instance, we will use lists rather than sets for representing the
populations.
The denitions provided here are not founded upon any related work in particular. We
introduce functions that will add elements to or remove elements from lists; that sort lists
or search within them. All list function are without side eect
31
, i. e., they do not change
their parameters. Instead, the result of a function processing a list l is a new list l
to which
is the modied version of l whereas l is left untouched.
We do not assume any specic form of list implementation such as linear arrays or linked
lists
32
. Instead, we leave the actual implementation of the methods discussed in the following
completely open and try to specify their features axiomatically.
Like tuples, lists can be dened using parenthesis in this book. The single elements of a
list are accessed by their index written in brackets ((a, b, c) [1] = b). The rst element of a
list is located at index 0 and the last element has the index n 1 where n is the number of
elements in the list: n = len((a, b, c)) = 3. The empty list is abbreviated with ().
29
http://en.wikipedia.org/wiki/Monotonic_function [accessed 2007-08-08]
30
http://en.wikipedia.org/wiki/List_%28computing%29 [accessed 2007-07-03]
31
http://en.wikipedia.org/wiki/Side_effect_(computer_science) [accessed 2009-06-13]
32
http://en.wikipedia.org/wiki/Linked_list [accessed 2009-06-13]
648 51 SET THEORY
Denition D51.24 (createList). The l = createList(n, q) method creates a new list l of
the length n lled with the item q.
l = createList(n, q) len(l) = n 0 i < n l[i] = q (51.43)
Denition D51.25 (insertItem). The function m = insertItem(l, i, q) creates a new list
m by inserting one element q in a list l at the index i : 0 i len(l). By doing so, it shifts
all elements located at index i and above to the right by one position.
m = insertItem(l, i, q) len(m) = len(l) + 1 m[i] = q
j : 0 j < i m[j] = l[j]
j : i j < len(l) m[j + 1] = l[j] (51.44)
Denition D51.26 (addItem). The addItem function is a shortcut for inserting one item
at the end of a list:
addItem(l, q) insertItem(l, len(l) , q) (51.45)
Denition D51.27 (deleteItem). The function m = deleteItem(l, i) creates a new list m
by removing the element at index i : 0 i < len(l) from the list l where len(l) i +1 must
hold.
m = deleteItem(l, i) len(m) = len(l) 1
j : 0 j < i m[j] = l[j]
j : i < j < len(l) m[j 1] = l[j] (51.46)
Denition D51.28 (deleteRange). The method m = deleteRange(l, i, c) creates a new
list m by removing c elements beginning at index i : 0 i < len(l) from the list l. len(l)
i +c and c 0 must both hold.
m = deleteRange(l, i, c) len(m) = len(l) c
j : 0 j < i m[j] = l[j]
j : i +c j < len(l) m[j c] = l[j] (51.47)
Denition D51.29 (appendList). The function appendList(l
1
, l
2
) is a shortcut for
adding all the elements of a list l
2
to a list l
1
. We dene it recursively as:
appendList(l
1
, l
2
)
_
l
1
if len(l
2
) = 0
appendList(addItem(l
1
, l
2
[0]) , deleteItem(l
2
, 0)) otherwise
(51.48)
Denition D51.30 (count). The function count(x, l) returns the number of occurrences
of the element x in the list l.
count(x, l) = [i 0..len(l) 1 : l[i] = x[ (51.49)
51.11. LISTS 649
Denition D51.31 (subList). The method subList(l, i, c) extracts c elements from the
list l beginning at index i and returns them as a new list. Both, 0 i < len(l) and
len(l) i c must hold.
subList(l, i, s) deleteRange(deleteRange(l, 0, i) , c, [l[ i c) (51.50)
Denition D51.32 (reverseList). The method m = reverseList(l) creates a list m which
contains the same elements as the list l but in reverse order, i. e.,
m = reverseList(l) len(m) = len(l) (i 0..len(l) 1 m[i] = l[len(l) i 1]) (51.51)
51.11.1 Sorting
Denition D51.33 (Sorted List). A list l is considered as being sorted, if l[i] l[j]
i j holds for each i, j 0..len(l) 1 according to a natural (or explicitly specied) order
relation dened on the type of the elements of the list. Thus, we can dene the predicate
isSorted as:
isSorted(l) (i 1..len(l) 1 l[i 1] l[i]) (51.52)
The concept of comparator functions has been introduced in Denition D3.18 on page 77.
cmp(u
1
, u
2
) returns a negative value if u
1
is smaller than u
2
, a positive number if u
1
is
greater than u
2
, and 0 if both are equal. Comparator functions are very versatile, they from
the foundation of the sorting mechanisms of the Java framework [1109, 1110], for instance.
In Global Optimization, they are perfectly suited to represent the Pareto dominance or
prevalence relations discussed in Section 3.3.5 on page 65 and Section 3.5.2. Here, we use
them to express the orders for according to which a list can be sorted.Hence, we can redene
Equation 51.52 to:
isSorted(l, cmp) (i 1..len(l) 1 cmp(l[i 1], l[i]) < 0) (51.53)
Sorting algorithms
33
transform unsorted lists into sorted ones. Here, we will not explicitly
discuss these algorithms and, instead, only specify prototype interfaces to them.Generally,
a list U can be sorted in O(len(U) log len(U)) time complexity. For concrete examples
of sorting algorithms, see [635, 1557, 2446].We dene the functions sortAsc(U, cmp) and
sortDsc(U, cmp) to sort a list U using a comparator function cmp(u
1
, u
2
) in ascending
or descending order, respectively. In other words, their parameter list U is an arbitrary
(possible unsorted) list and the return value is a list containing the same elements sorted
according to cmp.
S = sortAsc(U, cmp) u count(u, U) = count(u, S)
isSorted(S, cmp)
(51.54)
The result of S = sortDsc(U, cmp) is sorted reversely:
S = sortDsc(U, cmp) u count(u, U) = count(u, S)
isSorted(reverseList(S) , cmp)
(51.55)
Sorting according to a specic function f of only one parameter can easily be performed
by building the comparator cmp(u
1
, u
2
) (f (u
1
) f (u
2
)). Thus, we will furthermore
synonymously use the sorting predicate also with unary functions f.
sort(U, f) sort(U, cmp(u
1
, u
2
) (f (u
1
) f (u
2
))) (51.56)
33
http://en.wikipedia.org/wiki/Sorting_algorithm [accessed 2007-07-03]
650 51 SET THEORY
51.11.2 Searching
Searching an element u in an unsorted list U means walking through it until either the ele-
ment is found or the end of the whole list has been reached, which corresponds to complexity
O(len(U)). We therefore dene the operation searchItemUS(u, U) which returns either the
index of the searched element u in the list or 1 if u , U.
searchItemUS(u, U) =
_
i : U[i] = u if u U
1 otherwise
(51.57)
Searching an element s in sorted list S usually means to perform a fast binary search
34
returning the index of the element if it is contained in S. For the case that s is not contained
in S, we again specify an extension similar to the one used in Java: If s , S, a search
operation for sorted lists returns a negative number indicating the position where the element
could be inserted into the list without violating its order. The function searchItemAS(s, S)
searches in sorted list with elements in ascending order, searchItemDS(s, S) searches in a
descending sorted list. Searching in a sorted list is done in O(log len(S)) time. For concrete
algorithm examples, again see [635, 1557, 2446].
searchItemAS(s, S) =
_
_
_
i : S[i] = s if s S
(i 1) : (j 0, j < i S[j] s)
(j < len(S) , j i S[j] > s)
otherwise(51.58)
searchItemDS(s, S) =
_
_
_
i : S[i] = s if s S
(i 1) : (j 0, j < i S[j] s)
(j < len(S) , j i S[j] < s)
otherwise(51.59)
Denition D51.34 (removeItem). The function removeItem(l, q) nds one occurrence
of an element q in a list l by using the appropriate search algorithm and returns a new list
m where it is deleted. For nding the element, we denote any of the previously dened
search operators with searchItem(q, l).
m = removeItem(l, q)
_
l if searchItem(q, l) < 0
deleteItem(l, searchItem(q, l)) otherwise
(51.60)
51.11.3 Transformations between Sets and Lists
We can further dene transformations between sets and lists which will implicitly be used
when needed in this book. It should be noted that setToListis not the inverse function of
listToSet.
B = setToList(set A) a A i : B[i] = a
i 0..len(B) 1 B[i] A
len(setToList(A)) = len(A) (51.61)
A = listToSet(list B) i 0..len(B) 1 B[i] A
a A i 0..len(B) 1 : B[i] = a
[listToSet(B)[ len(B) (51.62)
34
http://en.wikipedia.org/wiki/Binary_search [accessed 2007-07-03]
Chapter 52
Graph Theory
The graph theory
1
[791, 2741] is an area of mathematics which investigates with properties
of graphs, relations between graphs, and algorithms applied to graphs.
Denition D52.1 (Graph). A graph
2
G is a tuple consisting of set of vertices (or nodes)
V and a set of edges (or connections) E which connect the vertices.
We distinguish between nite graphs, where the set of vertices is nite, and innite
graphs, where this is not the case. The set of edges E denes a binary relation (see Sec-
tion 51.7) on the vertices v V . If the edges of a graph have no orientation, the graph
is called undirected. Then, E can either be considered as a symmetric relation, i. e., if
(v
1
, v
2
) E (v
2
, v
1
), or the single vertexes are dened as 2-multisets, i. e., v
1
, v
2
in-
stead of (v
1
, v
2
) and (v
2
, v
1
). The edges in directed graphs have an orientation and, in
sketches, are often represented by arrows whereas undirected edges are usually denoted by
simple lines between the nodes v.
Denition D52.2 (Path). A path
3
p = (p
0
, p
1
, . . . ) in a graph G = (V, E) is a sequence
of vertices such that from each vertex there is an edge to the next vertex in the path:
p is path in G i : 0 i < len(p) p
i
V (52.1)
i : 0..len(p) 2 (p
i
, p
i
+ 1) E (52.2)
A cycle is a path where the start and end vertex are the same, i. e., p
0
= p
len(p)1
.
A graph is a weighted graph if values (weights) w are assigned to its edges e E. The
weight might stand for a distance or cost. The total weight of a path p in such a graph then
evaluates to
w(o) =
len(p)1
i=0
w(p
i
) (52.3)
1
http://en.wikipedia.org/wiki/Graph_theory [accessed 2009-06-15]
2
http://en.wikipedia.org/wiki/Graph_(mathematics) [accessed 2009-06-15]
3
http://en.wikipedia.org/wiki/Path_(graph_theory) [accessed 2009-06-15]
Chapter 53
Stochastic Theory and Statistics
In this chapter we give a rough introduction into stochastic theory
1
[1438, 1693, 2292], which
subsumes
1. probability
2
theory
3
, the mathematical study of phenomena characterized by random-
ness or uncertainty, and
2. statistics
4
, the art of collecting, analyzing, interpreting, and presenting data.
53.1 Probability
Probability theory is used to determine the likeliness of the occurrence of an event under
ideal mathematical conditions. [1481, 1482] Let us start this short summary with some very
basic denitions.
Denition D53.1 (Random Experiment). Random experiments can be repeated arbi-
trary often, their results cannot be predicted.
Denition D53.2 (Elementary Event). The possible outcomes of random experiments
are called elementary events or samples .
Denition D53.3 (Sample Space). The set of all possible outcomes (elementary events,
samples) of a random experiment is the sample space : .
Example E53.1 (Dice Throw Sample Space).
When throwing dice
5
, for example, the sample space will be =
1
,
2
,
3
,
4
,
5
,
6
whereas
i
means that the number i was thrown.
1
http://en.wikipedia.org/wiki/Stochastic [accessed 2007-07-03]
2
http://en.wikipedia.org/wiki/Probability [accessed 2007-07-03]
3
http://en.wikipedia.org/wiki/Probability_theory [accessed 2007-07-03]
4
http://en.wikipedia.org/wiki/Statistics [accessed 2007-07-03]
5
Throwing a dice is discussed as example for stochastic extensively in Section 53.5 on page 689.
654 53 STOCHASTIC THEORY AND STATISTICS
Denition D53.4 (Random Event). A random event A is a subset of the sample space
(A ). If any A occurs, then A occurs too.
Denition D53.5 (Certain Event). The certain event is the random event will always
occur in each repetition of a random experiment. Therefore, it is equal to the whole sample
space .
Denition D53.6 (Impossible Event). The impossible event will never occur in any rep-
etition of a random experiment, it is dened as .
Denition D53.7 (Conicting Events). Two conicting events A
1
and A
2
can never
occur together in a random experiment. Therefore, A
1
A
2
= .
53.1.1 Probabily as dened by Bernoulli (1713)
In some idealized situations, like throwing ideal coins or ideal dice, all elementary events of
the sample space have the same probability [720].
P () =
1
[[
(53.1)
Equation 53.1 is also called the Laplace-assumption. If it holds, the probability of an event
A can be dened as:
P (A) =
number of possible events in favor of A
number of possible events
=
[A[
[[
(53.2)
53.1.2 Combinatorics
For many random experiments of this type, we can use combinatorial
6
approaches in order
to determine the number of possible outcomes. Therefore, we want to shortly outline the
mathematical concepts of factorial numbers, combinations, and permutations.
7
Denition D53.8 (Factorial). The factorial
8
n! of a number n N
0
is the product of
n and all natural numbers (except 0) smaller than it. It is a specialization of the Gamma
function for positive integer numbers, see ?? on page ??.
n! =
n
i=1
i (53.3)
0! = 1 (53.4)
In combinatorial mathematics
9
, we often want to know in how many ways we can arrange
n N
1
elements from a set with M = [[ n elements. We can distinguish between
combinations, where the order of the elements in the arrangement plays no role, and permuta-
tions, where it is important. (a, b, c) and (c, b, a), for instance, denote the same combination
but dierent permutations of the elements a, b, c. We furthermore distinguish between
arrangements where each element of can occurred at most once (without repetition) and
arrangements where the same elements may occur multiple time (with repetition).
6
http://en.wikipedia.org/wiki/Combinatorics [accessed 2007-07-03]
7
http://en.wikipedia.org/wiki/Combinations_and_permutations [accessed 2007-07-03]
8
http://en.wikipedia.org/wiki/Factorial [accessed 2007-07-03]
9
http://en.wikipedia.org/wiki/Combinatorics [accessed 2008-01-31]
53.1. PROBABILITY 655
53.1.2.1 Combinations
The number of possible combinations
10
C(M, n) of n N
1
elements out of a set with
M = [[ n elements without repetition is
C(M, n) =
_
M
n
_
=
M!
n! (M n)!
(53.5)
_
M
n
_
=
M
n
M 1
n 1
M 2
n 2
..
M n + 1
1
(53.6)
C(M + 1, n) = C(M, n) +C(M, n 1) =
_
M + 1
n
_
=
_
M
n
_
+
_
M
n 1
_
(53.7)
If the elements of may repeatedly occur in the arrangements, the number of possible
combinations becomes
M +n 1!
n! (M 1)!
=
_
M +n 1
n
_
=
_
M +n 1
n 1
_
= C(M +n 1, n) = C(M +n 1, n 1)
(53.8)
53.1.2.2 Permutations
The number of possible permutations (see Section 51.6) Perm(M, n) of n N
1
elements
out of a set with M = [[ n elements without repetition is
Perm(M, n) = (M)
n
=
M!
(M n)!
(53.9)
If an element from can occur more than once in the arrangements, the number of possible
permutations is
M
n
(53.10)
53.1.3 The Limiting Frequency Theory of von Mises
von Mises [2822] proposed that if we repeat a random experiment multiple times, the number
of occurrences of a certain event should somehow reect its probability. The more often we
perform the experiment, the more reliable will the estimations of the event probability
become. We can express this relation using the notation of frequency.
Denition D53.9 (Absolute Frequency). The number H(A, n) denoting how often an
event A occurred during n repetitions of a random experiment is its absolute frequency
11
.
Denition D53.10 (Relative Frequency). The relative frequency h(A, n) of an event A
is its absolute frequency normalized to the total number of experiments n. The relative
frequency has the following properties:
h(A, n) =
H(A, n)
n
(53.11)
0 h(A, n) 1 (53.12)
h(, n) = 1 n N
1
(53.13)
A B = h(A B, n) =
H(A, n) + H(B, n)
n
= h(A, n) + h(B, n) (53.14)
10
http://en.wikipedia.org/wiki/Combination [accessed 2008-01-31]
11
http://en.wikipedia.org/wiki/Frequency_%28statistics%29 [accessed 2007-07-03]
656 53 STOCHASTIC THEORY AND STATISTICS
According to von Mises [2822], the (statistical) probability P (A) of an event A computing
the limit of its relative frequency h(A, n) as n approaching innity. This is the limit of
the quotient of the number of elementary events favoring A and the number of all possible
elementary events for innite many repetitions. [2822, 2823]
P (A) = lim
n
h(A, n) = lim
n
n
A
n
(53.15)
53.1.4 The Axioms of Kolmogorov
Denition D53.11 (-algebra). A subset S of the power set T() of the sample space
is called -algebra
12
, if the following axioms hold:
S (53.16)
S (53.17)
A S A S (53.18)
A S B S (A B) S (53.19)
From these axioms others can be deduced, for example:
A S B S A S B S (53.20)
A B S
A B S
A B S
(53.21)
A S B S (A B) S (53.22)
Denition D53.12 (Probability Space). A probability space (or random experiment)
is dened by the triplet (, S, P) where
1. is the sample space, a set of elementary events,
2. S is a -algebra dened on , and
3. P denes a probability measure
13
which determines the probability of occurrence for
each event . (Kolmogorov [1565, 1566] axioms
14
)
Denition D53.13 (Probability). A mapping P which maps a real number to each el-
ementary event is called probability measure if and only if the -algebra S on
holds:
A S 0 P (A) 1 (53.23)
P () = 1 (53.24)
disjoint A
i
S P (A) = P
_
_
i
A
i
_
=
i
P (A
i
) (53.25)
12
http://en.wikipedia.org/wiki/Sigma-algebra [accessed 2007-07-03]
13
http://en.wikipedia.org/wiki/Probability_measure [accessed 2007-07-03]
14
http://en.wikipedia.org/wiki/Kolmogorov_axioms [accessed 2007-07-03]
53.1. PROBABILITY 657
From these axioms, it can be deduced that:
P () = 0 (53.26)
P (A) = 1 P
_
A
_
(53.27)
P
_
A B
_
= P (A) P (A B) (53.28)
P (A B) = P (A) +P (B) P (A B) (53.29)
53.1.5 Conditional Probability
Denition D53.14 (Conditional Probability). The conditional probability
15
P (A[B)
is the probability of an event A, given that another event B already occurred. P (A[B) is
read the probability of A, given B.
P (A[B) =
P (A B)
P (B)
(53.30)
P (A B) = P (A[B) P (B) (53.31)
Denition D53.15 (Statistical Independence). Two events A and B are (statistically)
independent if and only if P (A B) = P (A) P (B) holds. If two events A and B are
statistically independent, we can deduce:
P (A B) = P (A) P (B) (53.32)
P (A[B) = P (A) (53.33)
P (B[A) = P (B) (53.34)
53.1.6 Random Variables
Denition D53.16 (Random Variable). The function X which relates the sample space
to the real numbers R is called random variable
16
in the probability space (, S, P).
X : R (53.35)
Using such a random variable, we can replace the sample space with the new sample space
X
. Furthermore, the -algebra S can be replaced with a -algebra S
X
, which consists of
subsets of
X
instead of . Last but not least, we replace the probability measure P which
relates the to the interval [0, 1] by a new probability measure P
X
which relates the
real numbers R to this interval.
Denition D53.17 (Probability Space of a Random Variable). Is X : R a ran-
dom variable, then the probability space of X is dened as the triplet
(
X
, S
X
, P
X
) (53.36)
One example for such a new probability measure would be the probability that a random
variable X takes on a real value which is smaller or equal a value x:
P
X
(X x) = P ( : X() x) (53.37)
15
http://en.wikipedia.org/wiki/Conditional_probability [accessed 2007-07-03]
16
http://en.wikipedia.org/wiki/Random_variable [accessed 2007-07-03]
658 53 STOCHASTIC THEORY AND STATISTICS
53.1.7 Cumulative Distribution Function
Denition D53.18 (Cumulative Distribution Function). If X is a random variable of
a probability space (
X
= R, S
X
, P
X
), we call the function F : R [0, 1] the (cumulative)
distribution function
17
(CDF) of the random variable X if it fullls Equation 53.38.
F P
X
(X x)
. .
denition rnd. var.
P ( : X() x)
. .
denition probability space
(53.38)
A cumulative distribution function F has the following properties:
1. F
X
(X) is normalized:
lim
x
F
X
(x) = 0
. .
impossible event
, lim
x+
F
X
(x) = 1
. .
certain event
(53.39)
2. F
X
(X) is monotonously
18
growing:
F
X
(x
1
) F
X
(x
2
) x
1
x
2
(53.40)
3. F
X
(X) is (right-sided) continuous
19
:
lim
h0
F
X
(x +h) = F
X
(x) (53.41)
4. The probability that the random variable X takes on values in the interval x
0
X x
1
can be computed using the CDF:
P (x
0
X x
1
) = F
X
(x
1
) F
X
(x
0
) (53.42)
5. The probability that the random variable X takes on the value of a single random
number x is:
P (X = x) = F
X
(x) lim
h0
F
X
(x h) (53.43)
We can further distinguish between sample spaces which contain at most countable innite
many elements and such that are continuums. Hence, there are discrete
20
and continuous
21
random variables:
Denition D53.19 (Discrete Random Variable). A random variable X (and its prob-
ability measure P
X
(X) respectively) is called discrete if it takes on at most countable innite
many values. Its cumulative distribution function F
X
(X) therefore has the shape of a stair-
way.
Denition D53.20 (Continuous Random Variable). A random variable X (and its
probability measure P
X
respectively) is called continuous if it can take on uncountable
innite many values and its cumulative distribution function F
X
(X) is also continuous.
17
http://en.wikipedia.org/wiki/Cumulative_distribution_function [accessed 2007-07-03]
18
http://en.wikipedia.org/wiki/Monotonicity [accessed 2007-07-03]
19
http://en.wikipedia.org/wiki/Continuous_function [accessed 2007-07-03]
20
http://en.wikipedia.org/wiki/Discrete_random_variable [accessed 2007-07-03]
21
http://en.wikipedia.org/wiki/Continuous_probability_distribution [accessed 2007-07-03]
53.2. PARAMETERS OF DISTRIBUTIONS AND THEIR ESTIMATES 659
53.1.8 Probability Mass Function
Denition D53.21 (Probability Mass Function). The probability mass function
22
(PMF) f is dened for discrete distributions only and assigns a probability to each value a
discrete random variable X can take on.
f : Z [0, 1] : f
X
(x) := P
X
(X = x) (53.44)
We specify the relation between the PMF and its corresponding (discrete) CDF in Equa-
tion 53.45 and Equation 53.45. We further dene the probability of an event A in Equa-
tion 53.47 using the PMF.
P
X
(X x) = F
X
(x) =
x
i=
f
X
(x) (53.45)
P
X
(X = x) = f
X
(x) = F
X
(x) F
X
(x 1) (53.46)
P
X
(A) =
xA
f
X
(x) (53.47)
53.1.9 Probability Density Function
The probability density function
23
(PDF) is the counterpart of the PMF for continuous
distributions. The PDF does not represent the probabilities of the single values of a random
variable. Since a continuous random variable can take on uncountable many values, each
distinct value itself has the probability 0.
Example E53.2 (PDF: No Probability!).
If we, for instance, picture the current temperature outside as (continuous) random variable,
the probability that it takes on the value 18 for 18
C
outside, we can at most declare with a certain probability that we have a temperature
between like 17.999
C and 18.001
C.
Denition D53.22 (Probability Density Function). If a random variable X is contin-
uous, its probability density function f is dened as
f : R [0, ) : F
X
(x) =
_
+
f
X
() d x R (53.48)
53.2 Parameters of Distributions and their Estimates
Each random variable X which conforms to a probability distribution F may have certain
properties such as a maximum and a mean value, a variance, and a value which will be taken
on by X most often. If the cumulative distribution function F of X is known, these values
can usually be computed directly from its parameters. On the other hand, it is possible that
22
http://en.wikipedia.org/wiki/Probability_mass_function [accessed 2007-07-03]
23
http://en.wikipedia.org/wiki/Probability_density_function [accessed 2007-07-03]
660 53 STOCHASTIC THEORY AND STATISTICS
we only know the values A[i] which X took on during some random experiments. From this
set of sample data A, we can estimate the properties of the underlying (possibly unknown)
distribution of X using statistical methods (with a certain error, of course).
In the following, we will elaborate on the properties of a random variable X R both
from the viewpoint of knowing the PMF/PDF f
X
(x) and the CDF F
X
(x) as well as from
the statistical perspective, where only a sample A of past values of X is known. In the
latter case, we dene the sample as a list A with the length n = len(A) and the elements
A[i] : i [0, n 1].
53.2.1 Count, Min, Max and Range
The most primitive features of a random distribution are the minimum, maximum, and the
range of its values. From the statistical perspective, the number of values A[i] in the data
sample A is another primitive parameter.
Denition D53.23 (Count). n = len(A) is the number of elements in the data sample A.
The item number is only dened for data samples, not for random variables, since random
variables represent experiments which can innitely be repeated and thus stand for innitely
many values. The number of items should not be mixed up with the possible number
of dierent values the random variable may take on. A data sample A may contain the
same value a multiple times. When throwing a dice seven times, one may throw A =
(1, 4, 3, 3, 2, 6, 1), for example
24
.
Denition D53.24 (Minimum: Statistics). There exists no smaller element in the sam-
ple data A than the minimum sample a min(A).
min(A) a A : a A a a (53.49)
Denition D53.25 (Minimum: Stochastic). The minimum is the lower boundary x of
the random variable X (or negative innity, if no such boundary exists).
min(X) = x F
X
( x) > 0 (x R : F
X
(x) > 0 x < x) (53.50)
Both denitions are fully compliant to Denition D3.2 on page 53 and the maximum can
specied similarly.
Denition D53.26 (Maximum: Statistics). There exists no larger element in the sam-
ple data A than the maximum sample a max(A).
max(A) a A : a A a A (53.51)
Denition D53.27 (Maximum: Stochastic). The value x is the upper boundary of the
values a random variable X may take on (or positive innity, if X is unbounded).
x = max(X) F
X
( x) F
X
(x) x R (53.52)
24
Throwing a dice is discussed as example for stochastic extensively in Section 53.5 on page 689.
53.2. PARAMETERS OF DISTRIBUTIONS AND THEIR ESTIMATES 661
Denition D53.28 (Range: Statistics). The range rangeA of the sample data A is the
dierence of the maximum max(A) and the minimum min(A) elements in A and therefore
represents the span covered by the data.
range(A) = a a = max(A) min(A) (53.53)
Denition D53.29 (Range: Stochastic). If a random variable X is limited in both di-
rections, it has a nite range rangeX, otherwise this range is innite too.
range(X) = x x = max(X) min(X) (53.54)
53.2.2 Expected Value and Arithmetic Mean
The expected value EX and the a are basic measures for random variables and data samples
that help us to estimate the regions where their values will likely be distributed around.
Denition D53.30 (Expected Value). The expected value
25
of a random variable X is
the sum of the probability of each possible outcome of the random experiment multiplied
by the outcome value.
The expected value is abbreviated by EX or . For discrete distributions, it can be computed
using Equation 53.55 and for continuous ones Equation 53.56 holds.
EX =
x=
xf
X
(x) (53.55)
EX =
_
xf
X
(x) dx (53.56)
If the expected value EX of a random variable X is known, the following statements can
be derived for the expected values of related random variables as follows:
Y = a +X EY = a +EX (53.57)
Z = bX EZ = bEX (53.58)
Denition D53.31 (Sum). The sum(A) represents the sum of all elements in a set of data
samples A.
sum(A) =
n1
i=0
A[i] (53.59)
Denition D53.32 (Arithmetic Mean). The arithmetic mean
26
a is the sum of all ele-
ments in the sample data A divided by the total number of values.
In the spirit of the limiting frequency method of von Mises [2822], it is an estimation of the
expected value a EX of the random variable X that produced the sample data A.
a =
sum(A)
n
=
1
n
n1
i=0
A[i] =
n1
i=0
h(A[i], n) (53.60)
25
http://en.wikipedia.org/wiki/Expected_value [accessed 2007-07-03]
26
http://en.wikipedia.org/wiki/Arithmetic_mean [accessed 2007-07-03]
662 53 STOCHASTIC THEORY AND STATISTICS
53.2.3 Variance and Standard Deviation
53.2.3.1 Variance
The variance
27
[928] is a measure of statistical dispersion. As stochastic entity, it illustrates
how close the outcomes of a random variable or are to their expected value EX. In statistics,
it denotes the proximity of the elements a in a data sample A to the arithmetical mean a of
the sample.
Denition D53.33 (Variance: Random Variable). The variance D
2
X var(X)
2
of a random variable X is dened as
var(X) = D
2
X = E
_
(X EX)
2
_
= E
_
X
2
(EX)
2
(53.61)
The variance of a discrete random variable X can be computed using Equation 53.62 and
for continuous distributions, Equation 53.63 will hold.
D
2
X =
x=
f
X
(x) (x EX)
2
=
x=
x
2
f
X
(x)
_
x=
xf
X
(x)
_
2
=
_
x=
x
2
f
X
(x)
_
(EX)
2
(53.62)
D
2
X =
_
(x EX)
2
dx =
_
x
2
f
X
(x) dx
__
xf
X
(x) dx
_
2
=
__
x
2
f
X
(x) dx
_
(EX)
2
(53.63)
If the variance D
2
X of a random variable X is known, we can derive the variances the some
related random variables as follows:
Y = a +X D
2
Y = D
2
X (53.64)
Z = bX D
2
Z = b
2
D
2
X (53.65)
Denition D53.34 (Sum of Squares). The function sumSqrs(A) represents the sum of
the squares of all elements in the data sample A in statistics.
sumSqrs(A) =
n1
i=0
(A[i])
2
(53.66)
Denition D53.35 (Variance: Estimation in Statistics). The (unbiased) estimator
28
s
2
of the variance of the random variable which produced the sample values A according to
Equation 53.67. The variance is zero for all samples with (n = len(A)) 1.
s
2
=
1
n 1
n1
i=0
(A[i] a)
2
=
1
n 1
_
sumSqrs(A)
(sum(A))
2
n
_
(53.67)
27
http://en.wikipedia.org/wiki/Variance [accessed 2007-07-03]
28
see Denition D53.58 on page 692
53.2. PARAMETERS OF DISTRIBUTIONS AND THEIR ESTIMATES 663
53.2.3.2 Standard Deviation etc.
Denition D53.36 (Standard Deviation). The standard deviation
29
is the square root
of the variance. The standard deviation of a random variable X is abbreviated with DX
and , its statistical estimate is s.
DX =
D
2
X (53.68)
s =
s
2
(53.69)
The standard deviation is zero for all samples with n 1.
Denition D53.37 (Coecient of Variation). The coecient of variation
30
c
V
of a
random variable X is the ratio of the standard deviation by expected value of X. For
data samples, its estimate c
V
is dened as the ration of the estimate of the standard
deviation and the arithmetic mean.
c
V
=
DX
EX
=
(53.70)
c
V
=
n
sum(A)
_
sumSqrs(A)
(sum(A))
2
n
n 1
(53.71)
53.2.3.3 Covariance
Denition D53.38 (Covariance: Random Variables). The covariance
31
cov(X, Y ) of
two random variables X and Y is a measure for how much they are related. It exists if the
expected values EX
2
and EY
2
exist and is dened as
cov(X, Y ) = E[X EX] E[Y EY ] (53.72)
= E[X Y ] EX EY (53.73)
(53.74)
If X and Y are statistically independent, then their covariance is zero, since
E[X Y ] = EX EY (53.75)
Furthermore, the following formulas hold for the covariance
D
2
X = cov(X, X) (53.76)
D
2
[X +Y ] = cov(X +Y, X +Y ) = D
2
X +D
2
Y + 2cov(X, Y ) (53.77)
D
2
[X Y ] = cov(X Y, X +Y ) = D
2
X +D
2
Y 2cov(X, Y ) (53.78)
cov(X, Y ) = cov(Y, X) (53.79)
cov(aX, Y ) = a cov(Y, X) (53.80)
cov(X +Y, Z) = cov(X, Z) + cov(Y, Z) (53.81)
cov(aX +b, cY +d) = a c cov(X, Y ) (53.82)
cov(X, Y ) = cov(Y, X) (53.83)
29
http://en.wikipedia.org/wiki/Standard_deviation [accessed 2007-07-03]
30
http://en.wikipedia.org/wiki/Coefficient_of_variation [accessed 2007-07-03]
31
http://en.wikipedia.org/wiki/Covariance [accessed 2008-02-05]
664 53 STOCHASTIC THEORY AND STATISTICS
Denition D53.39 (Covariance: Statistical Estimate). The covariance cov(A, B) of
two random data (paired) samples A and B with length n and elements a and b is dened
as
cov(A, B) =
i=0
n 1 (a
i
a)
_
b
i
b
_
n
(53.84)
Denition D53.40 (Covariance Matrix: Random Variables). The covariance ma-
trix of n random variables X
i
: i 1..n is an n n matrix whose elements are dened as
[i, j] = cov(X
i
, X
j
) for all i, j 1..n.
Denition D53.41 (Covariance Matrix: Statistic Estimate). The covariance matrix
C of n data samples A[i] : i 1..n is an n n matrix whose elements are dened as
C[i, j] = cov(A[i], A[j]) for all i, j 1..n.
For covariance matrices, [i, j] = [j, i] holds for all i, j 1..n as well as [i, i] = D
2
X
i
for
all i 1..n (and [i, i] = s
2
X
i
for the estimated covariance matrix).
53.2.4 Moments
Denition D53.42 (Moment). The k
th
moment
32
k
(c) about a value c is dened for a
random distribution X as
k
(c) = E
_
(X c)
k
_
(53.85)
It can be specied for discrete (Equation 53.86) and continuous (Equation 53.87) probability
distributions using Equation 53.55 and Equation 53.56 as follows.
k
(c) =
x=
f
X
(x) (x c)
k
(53.86)
k
(c) =
_
f
X
(x) (x c)
k
dx (53.87)
Denition D53.43 (Statistical Moment). The k
th
statistical moment
of a random
distribution is its k
th
moment about zero, i. e., the expected value of its values raised to the
k
th
power.
k
(0) = E
_
X
k
(53.88)
Denition D53.44 (Central Moment). The k
th
moment about the mean (or central
moment)
33
is the expected value of the dierence between elements and their expected
value raised to the k
th
power.
= E
_
(X EX)
k
_
(53.89)
Hence, the variance D
2
X equals the second central moment
2
.
Denition D53.45 (Standardized Moment). The k
th
standardized moment is the
quotient of the k
th
central moment and the standard deviation raised to the k
th
power.
=
k
(53.90)
32
http://en.wikipedia.org/wiki/Moment_%28mathematics%29 [accessed 2008-02-01]
33
http://en.wikipedia.org/wiki/Moment_about_the_mean [accessed 2007-07-03]
53.2. PARAMETERS OF DISTRIBUTIONS AND THEIR ESTIMATES 665
53.2.5 Skewness and Kurtosis
The two other most important moments of random distributions are the skewness
1
and
the kurtosis
2
and their estimates G
1
and G
2
.
Denition D53.46 (Skewness). The skewness
34
1
is the third standardized moment.
1
=
,3
=
3
3
(53.91)
The skewness is a measure of asymmetry of a probability distribution. If
1
> 0, the right
part of the distribution function is either longer or fatter (positive skew, right-skewed). If
1
< 0, the distributions left part is longer or fatter.For sample data A the skewness of the
underlying random variable is approximated with the estimator G
1
where s is the estimated
standard deviation. The sample skewness is only dened for sets A with at least three
elements.
G
1
=
n
(n 1)(n 2)
n1
i=0
_
A[i] a
s
_
3
(53.92)
Denition D53.47 (Kurtosis). The excess kurtosis
35
2
is a measure for the sharpness
of a distributions peak.
2
=
,4
3 =
4
s
3
3 (53.93)
A distribution with a high kurtosis has a sharper peak and fatter tails, while a distri-
bution with a low kurtosis has a more rounded peak with wider shoulders. The normal
distribution (see Section 53.4.2) has a zero kurtosis.
For sample data A which represents only a subset of a greater amount of data, the sample
kurtosis can be approximated with the estimator G
2
where s is the estimate of the samples
standard deviation. The kurtosis is only dened for sets with at least four elements.
G
2
=
_
n(n + 1)
(n 1)(n 2)(n 3)
n1
i=0
_
A[i] a
s
_
4
_
3(n 1)
2
(n 2)(n 3)
(53.94)
53.2.6 Median, Quantiles, and Mode
Denition D53.48 (Median). The median med(X) is the value right in the middle of a
sample or distribution, dividing it into two equal halves.
P (X med(X))
1
2
P (X med(X))
1
2
P (X med(X)) P (X med(X))
(53.95)
The probability of drawing an element less than med(X) is equal to the probability of draw-
ing an element larger than med(X). We can determine the median med(X) of continuous
34
http://en.wikipedia.org/wiki/Skewness [accessed 2007-07-03]
35
http://en.wikipedia.org/wiki/Kurtosis [accessed 2008-02-01]
666 53 STOCHASTIC THEORY AND STATISTICS
and discrete distributions by solving Equation 53.96 and Equation 53.97 respectively.
1
2
=
_
med(X)
f
X
(x) dx (53.96)
med(X)1
i=
f
X
(x)
1
2
i=med(X)
f
X
(x) (53.97)
(53.98)
If a sample A has an odd element count, the median med(X) is the element in the middle,
otherwise (in a set with an even element count there exists no single middle-element), the
arithmetic mean of the two middle elements.
Example E53.3 (Median vs. Mean).
The median represents the dataset in an unbiased manner. If you have, for example, the
dataset A = (1, 1, 1, 1, 1, 2, 2, 2, 500 000), the arithmetic mean, biased by the large element
500 000 would be very high (55556.7). The median however would be 1 and thus represents
the sample better. The median of a sample can be computed as:
A
s
sortAsc(A, >) (53.99)
med(A) =
_
A
s
_
n1
2
if n = len(A) is odd
1
2
(A
s
_
n
2
+A
s
_
n
2
1
) otherwise
(53.100)
Quantiles
36
are points taken at regular intervals from a sorted dataset (or a cumulative
distribution function).
Denition D53.49 (Quantile). The q-quantiles divide a distribution function F or data
sample A into q parts T
i
with equal probability.
x R, i [0, q 1]
1
q
P (x T
i
) (53.101)
They can be regarded as the generalized median, or vice versa, the median is the 2-quantile.
A sorted data sample is divided into q subsets of equal length by the q-quantiles. The cu-
mulative distribution function of a random variable X is divided by the q-quantiles into q
subsets of equal area. The quantiles are the boundaries between the subsets/areas. There-
fore, the k
th
q-quantile is the value so that the probability that the random variable (or
an element of the data set) will take on a value less than is at most
k
q
and the probability
that it will take on a value greater than or equal to is at most
qk
q
. There exist q 1
q-quantiles (k spans from 1 to q 1). The k
th
q-quantile quantile
k
q
(A) of a dataset A can
be computed as:
A
s
sortAscA> (53.102)
t =
k n
q
(53.103)
quantile
k
q
(A) =
_
1
2
(A
s
[t] +A
s
[t 1]) if if t is integer
A
s
[t] otherwise
(53.104)
For some special values of q, the quantiles have been given special names which are listed in
Table 53.1.
36
http://en.wikipedia.org/wiki/Quantiles [accessed 2007-07-03]
53.2. PARAMETERS OF DISTRIBUTIONS AND THEIR ESTIMATES 667
q name
100 percentiles
10 deciles
9 noniles
5 quintiles
4 quartiles
2 median
Table 53.1: Special Quantiles
Denition D53.50 (Interquartile Range). The interquartile range
37
is the range be-
tween the rst and the third quartile and dened as quantile
3
4
(X) quantile
1
4
(X).
Denition D53.51 (Mode). The mode
38
is the value that most often occurs in a data
sample or is most frequently assumed by a random variable.
There exist unimodal distributions/samples that have one mode value and multimodal dis-
tributions/samples with multiple modes. In [369, 2821] you can nd further information of
the relation between the mode, the mean and the skewness.
53.2.7 Entropy
The information entropy
39
H(X) dened by Shannon [2465] is a measure of uncertainty
for discrete probability mass functions f of random variables X in probability theory (see
Equation 53.105). For data samples A, it is estimated based on the relative frequency h(a, n)
of the value a amongst the n samples in A (see Equation 53.106).
Denition D53.52 (Information Entropy). The information entropy is a measure for
the information content of a system and dened as follows:
H(X) =
x=
f
X
(x) log
2
_
1
f
X
(y)
_
=
x
f
X
(x) log f
X
(x) (53.105)
H(A) =
aA
h(a, n) log h(a, n) (53.106)
Denition D53.53 (Dierential Entropy). The dierential (also called continuous) en-
tropy h(X) is a generalization of the information entropy to continuous probability density
functions f of random variables X. [1699]
h(X) =
_
f
X
(x) ln f
X
(x) dx (53.107)
37
http://en.wikipedia.org/wiki/Inter-quartile_range [accessed 2007-07-03]
38
http://en.wikipedia.org/wiki/Mode_%28statistics%29 [accessed 2007-07-03]
39
http://en.wikipedia.org/wiki/Information_entropy [accessed 2007-07-03]
668 53 STOCHASTIC THEORY AND STATISTICS
53.2.8 The Law of Large Numbers
The law of large numbers (LLN) combines statistics and probability by showing that if an
event e with the probability P (e) = p is observed in n independent repetitions of a random
experiment, its relative frequency h(e, n) (see Denition D53.10) converges to its probability
p if n becomes larger.
In the following, assume that the A is an innite sequence of samples from equally
distributed and pairwise independent random variables X
i
with the (same) expected value
EX. The weak law of large numbers states that the mean a of the sequence A converges to
a value in (EX , EX +) for each positive real number > 0, R
+
.
lim
n
P ([a EX[ < ) = 1 (53.108)
In other words, the weak law of large numbers says that the sample average will converge
to the expected value of the random experiment if the experiment is repeated many times.
According to the strong law of large numbers, the mean a of the sequence A even con-
verges to the expected value EX of the underlying distribution for innite large n
P
_
lim
n
a = EX
_
= 1 (53.109)
The law of large numbers implies that the accumulated results of each random experiment
will approximate the underlying distribution function if repeated innitely (under the con-
dition that there exists an invariable underlying distribution function).
Many random processes follow in their characteristics well-known probability distributions,
some of which we will discuss here. Parts of the information provided in this and the
following section have been obtained from Wikipedia The Free Encyclopedia [2938].
53.3 Some Discrete Distributions
In this section, we discuss some of the common discrete distributions. Discrete probability
distributions assign probabilities to the elements of a nite (or, at most, countable innite)
set of discrete events/outcomes of a random experiment.
53.3.1 Discrete Uniform Distribution
53.3. SOME DISCRETE DISTRIBUTIONS 669
Parameter Denition
parameters a, b Z, a > b 53.110
[[ [[ = r = range = b a + 1 53.111
PMF P (X = x) = f
X
(x) =
_
1
r
if a x b, x Z
0 otherwise
53.112
CDF P (X x) = F
X
(x) =
_
_
_
0 if x < a
xa+1
r
if a x b
1 otherwise
53.113
mean EX =
a +b
2
53.114
median med =
a +b
2
53.115
mode mode = 53.116
variance D
2
X =
r
2
1
12
53.117
skewness
1
= 0 53.118
kurtosis
2
=
6(r
2
+ 1)
5(r
2
1)
53.119
entropy H(X) = ln r 53.120
mgf M
X
(t) =
e
at
e
(b+1)t
r(1 e
t
)
53.121
char. func.
X
(t) =
e
iat
e
i(b+1)t
r(1 e
it
)
53.122
Table 53.2: Parameters of the discrete uniform distribution.
The uniform distribution exists in a discrete
40
as well as in a continuous form. In this
section we want to discuss the discrete form whereas the continuous form is elaborated on
in Section 53.4.1 on page 676.
All possible outcomes of a random experiment which obeys the uniform distribu-
tion have exactly the same probability. In the discrete uniform distribution, is usually a
nite set.
Example E53.4 (Uniform Distribution: Ideal Dice and Coins).
The best example for this distribution is throwing an ideal dice. This experiment has six
possible outcomes
i
where each has the same probability P (
i
) =
1
6
. Throwing ideal coins
and drawing one element out of a set of n possible elements are other examples where a
discrete uniform distribution can be assumed.
Table 53.2 contains the characteristics of the discrete uniform distribution. In Fig. 53.1.a
you can nd some example uniform probability mass functions and in Fig. 53.1.b we have
sketched their according cumulative distribution functions.
40
http://en.wikipedia.org/wiki/Uniform_distribution_%28discrete%29 [accessed 2007-07-03]
670 53 STOCHASTIC THEORY AND STATISTICS
0
0.1
0.2
x
f
(
x
)
X
5 10 15 20 25
1/n =0,1
1
1/n =0,2
2
n =10
1
n =5
2
n =b -a 10
1 1 1
=
single,discretepoint
discontinuouspoint
a
1 b
1
a
2 b
2
n =b -a
2 2 2
=5
Fig. 53.1.a: The PMFs of some discrete uniform distributions.
0
0.1
1
x
F
(
x
)
X
5 10 15 20 25
n =10
1
n =5
2
discontinuouspoint
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
a
1
b
1
a
2
b
2
n =b -a
2 2 2
=5
n =b -a 10
1 1 1
=
Fig. 53.1.b: The CDFs of some discrete uniform distributions.
Figure 53.1: Examples for the discrete uniform distribution
53.3. SOME DISCRETE DISTRIBUTIONS 671
53.3.2 Poisson Distribution
53.124
CDF P (X x) = F
X
(x) =
(k + 1 , )
k!
=
x
i=0
e
i
i!!
53.125
mean EX = t = 53.126
median med +
1
3
1
5
53.127
mode mode = 53.128
variance D
2
X = t = 53.129
skewness
1
=
1
2
53.130
kurtosis
2
=
1
53.131
entropy H(X) = (1 ln ) +e
k=0
k
ln(k!)
k!
53.132
mgf M
X
(t) = e
(e
t
1)
53.133
char. func.
X
(t) = e
(e
it
1)
53.134
Table 53.3: Parameters of the Poisson distribution.
53.3.2.1 Poisson Process
The Poisson process
43
[2539] is a process that obeys the Poisson distribution just like the
example of the telephone switchboard mentioned before. Here, is expressed as the product
of the intensity and the time t. normally describes a frequency, for example =
1
min
.
Both, the expected value as well as the variance of the Poisson process are = t. In
Equation 53.135, the probability that k events occur in a Poisson process in a time interval
of the length t is dened.
P (X
t
= k) =
(t)
k
k!
e
t
=
k
k!
e
(53.135)
The probability that in a time interval [t, t + t]
41
http://en.wikipedia.org/wiki/Poisson_distribution [accessed 2007-07-03]
42
The in Equation 53.125 denotes the (upper) incomplete gamma function. More information on the
gamma function can be found in ?? on page ??.
43
http://en.wikipedia.org/wiki/Poisson_process [accessed 2007-07-03]
672 53 STOCHASTIC THEORY AND STATISTICS
4
8
12
16
20
24
28
l=1
l=6
l=20
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
f (x)
X
x
l=1
l=3
l=6
l=10
l=20
l
Fig. 53.2.a: The PMFs of some Poisson distributions.
0
0.1
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x
F
(
x
)
X
5 10 15 20 25 30
l=1
l=3
l=6
l=10
l=20
discontinuouspoint
0.2
Fig. 53.2.b: The CDFs of some Poisson distributions.
Figure 53.2: Examples for the Poisson distribution.
53.3. SOME DISCRETE DISTRIBUTIONS 673
1. no events occur is 1 t +o(t).
2. exactly one event occurs is t +o(t).
3. multiple events occur o(t).
Here we use an innitesimal version the small-o notation.
44
The statement that f o()
[f (x)[ [(x)[ is normally only valid for x . In the innitesimal variant, it holds for
x 0. Thus, we can state that o(t) is much smaller than t. In principle, the above
equations imply that in an innite small time span either no or one event occurs, i. e., events
do not arrive simultaneously:
lim
t0
P (X
t
> 1) = 0 (53.136)
53.3.2.2 The Relation between the Poisson Process and the Exponential
Distribution
It is important to know that the (time) distance between two events of the Poisson process is
exponentially distributed (see Section 53.4.3 on page 682). The expected value of the number
of events to arrive per time unit in a Poisson process is EX
pois
, then the expected value of
the time between two events
1
EX
pois
. Since this is the excepted value EX
exp
=
1
EX
pois
of the
exponential distribution, its
exp
-value is
exp
=
1
EX
exp
=
1
1
EX
pois
= EX
pois
. Therefore, the
exp
-value of the exponential distribution equals the
pois
-value of the Poisson distribution
exp
=
pois
= EX
pois
. In other words, the time interval between (neighboring) events of the
Poisson process is exponentially distributed with the same value as the Poisson process,
as illustrated in Equation 53.137.
X
i
(t(X
i+1
) tX
i
) exp() i N
1
(53.137)
44
See Denition D12.1 on page 144 and ?? on page ?? for a detailed elaboration on the small-o notation.
674 53 STOCHASTIC THEORY AND STATISTICS
53.3.3 Binomial Distribution B(n, p)
The binomial distribution
45
B(n, p) is the probability distribution that describes the prob-
ability of the possible numbers successes of n independent experiments with the success
probability p each. Such experiments is called Bernoulli experiments or Bernoulli trials. For
n = 1, the binomial distribution is a Bernoulli distribution
46
.
Table 53.4
47
points out some of the properties of the binomial distribution. A few
examples for PMFs and CDFs of dierent binomial distributions are given in Fig. 53.3.a
and Fig. 53.3.b.
Parameter Denition
parameters n N
0
, 0 p 1, p R 53.138
PMF P (X = x) = f
X
(x) =
_
n
x
_
p
x
(1 p)
nx
53.139
CDF P (X x) = F
X
(x) =
x
i=0
f
X
(x) = I
1p
(n x, 1 +x) 53.140
mean EX = np 53.141
median med is one of np 1, np, np + 1 53.142
mode mode = (n + 1)p 53.143
variance D
2
X = np(1 p) 53.144
skewness
1
=
1 2p
_
np(1 p)
53.145
kurtosis
2
=
1 6p(1 p)
np(1 p)
53.146
entropy H(X) =
1
2
ln (2ne p (1 p)) +O
_
1
n
_
53.147
mgf M
X
(t) = (1 p +pe
t
)
n
53.148
char. func.
X
(t) = (1 p +pe
it
)
n
53.149
Table 53.4: Parameters of the Binomial distribution.
For n , the binomial distribution approaches a normal distribution. For large n,
B(n, p) can therefore often be approximated with the normal distribution (see Section 53.4.2)
N(np, np(1 p)). Whether this approximation is good or not can be found out by rules of
thumb, some of them are:
np > 5 n(1 p) > 5 (53.150)
3 np 3
_
np(1 p) [0, n] (53.151)
In case these rules hold, we still need to transform a continuous distribution to a discrete
one. In order to do so, we add 0.5 to the x values, i. e., F
X,X,bin
(x) F
X,X,normal
(x + 0.5).
45
http://en.wikipedia.org/wiki/Binomial_distribution [accessed 2007-10-01]
46
http://en.wikipedia.org/wiki/Bernoulli_distribution [accessed 2007-10-01]
47
I
1p
in Equation 53.140 denotes the regularized incomplete beta function.
53.3. SOME DISCRETE DISTRIBUTIONS 675
0
0.02
f
(
x
)
X
5 10 15 20 25
single,discretepoint
x
35
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
n=20,p=0.3
n=20,p=0.6
n=30,p=0.6
n=40,p=0.6
Fig. 53.3.a: The PMFs of some binomial distributions.
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
F
(
x
)
X
discontinuouspoint
n=20,p=0.3
n=20,p=0.6
n=30,p=0.6
n=40,p=0.6
0
5 10 15 20 25
x
35
Fig. 53.3.b: The CDFs of some binomial distributions.
Figure 53.3: Examples for the binomial distribution.
676 53 STOCHASTIC THEORY AND STATISTICS
53.4 Some Continuous Distributions
In this section we will introduce some common continuous distributions. Unlike the discrete
distributions, continuous distributions have an uncountable innite large set of possible
outcomes of random experiments. Thus, the PDF does not assign probabilities to certain
events. Only the CDF makes statements about the probability of a sub-set of possible
outcomes of a random experiment.
53.4.1 Continuous Uniform Distribution
After discussing the discrete uniform distribution in Section 53.3.1, we now elaborate on
its continuous form
48
. In a uniform distribution, all possible outcomes in a range [a, b], b > a
have exactly the same probability. The characteristics of this distribution can be found in
Table 53.5. Examples of its probability density function is illustrated in Fig. 53.4.a whereas
the according cumulative density functions are outlined Fig. 53.4.b.
Parameter Denition
parameters a, b R, a b 53.152
PDF f
X
(x) =
_
1
ba
if x [a, b]
0 otherwise
53.153
CDF P (X x) = F
X
(x) =
_
_
_
0 if x < a
xa
ba
if x [a, b]
1 otherwise
53.154
mean EX =
1
2
(a +b) 53.155
median med =
1
2
(a +b) 53.156
mode mode = 53.157
variance D
2
X =
1
12
(b a)
2
53.158
skewness
1
= 0 53.159
kurtosis
2
=
6
5
53.160
entropy h(X) = ln (b a) 53.161
mgf M
X
(t) =
e
tb
e
ta
t(b a)
53.162
char. func.
X
(t) =
e
itb
e
ita
it(b a)
53.163
Table 53.5: Parameters of the continuous uniform distribution.
48
http://en.wikipedia.org/wiki/Uniform_distribution_%28continuous%29 [accessed 2007-07-03]
53.4. SOME CONTINUOUS DISTRIBUTIONS 677
0
0.1
0.2
x
f
(
x
)
X
5 10 15 20 25
a =5
1
b =15
1
a =20
2
b =25
2
1/(b -a )
1 1
1/(b -a )
2 2
a=5,b=15
a=20,b=25
Fig. 53.4.a: The PDFs of some continuous uniform distributions.
0
1
x
f
(
x
)
X
5 10 15 20 25
a =5
1
b =15
1
a =20
2
b =25
2
a=5,b=15
a=20,b=25
Fig. 53.4.b: The CDFs of some continuous uniform distributions.
Figure 53.4: Some examples for the continuous uniform distribution.
678 53 STOCHASTIC THEORY AND STATISTICS
53.4.2 Normal Distribution N
_
,
2
_
Many phenomena in nature, like the size of chicken eggs, noise, errors in measurement, and
such and such, can be considered as outcomes of random experiments with properties that
can be approximated by the normal distribution
49
N
_
,
2
_
[3060]. Its probability density
function, shown for some example values in Fig. 53.5.a, is symmetric to the expected value
and becomes atter with rising standard deviation .
The cumulative density function is outline for the same example values in Fig. 53.5.b.
Other characteristics of the normal distribution can be found in Table 53.6.
Parameter Denition
parameters R, R
+
53.164
PDF f
X
(x) =
1
2
e
(x)
2
2
2
53.165
CDF P (X x) = F
X
(x) =
1
2
_
x
(z)
2
2
2
dz 53.166
mean EX = 53.167
median med = 53.168
mode mode = 53.169
variance D
2
X =
2
53.170
skewness
1
= 0 53.171
kurtosis
2
= 0 53.172
entropy h(X) = ln
_
2e
_
53.173
mgf M
X
(t) = e
t+
2
t
2
2
53.174
char. func.
X
(t) = e
it+
2
t
2
2
53.175
Table 53.6: Parameters of the normal distribution.
53.4.2.1 Standard Normal Distribution
For the sake of simplicity, the standard normal distribution N(0, 1) with the CDF (x) is
dened with = 0 and = 1. Values of this function are listed in tables. You can compute
the CDF of any normal distribution using the one of the standard normal distribution by
applying Equation 53.176.
(x) =
1
2
_
x
z
2
2
dz (53.176)
P (X x) =
_
x
_
(53.177)
Some values of (x) are listed in Table 53.7. For the sake of saving space by using two
dimensions, we compose the values of x as a sum of a row and column value. If you want to
look up (2.13) for example, you would go to the row which starts with 2.1 and the column
of 0.03, so youd nd (2.13) 0.9834.
49
http://en.wikipedia.org/wiki/Normal_distribution [accessed 2007-07-03]
53.4. SOME CONTINUOUS DISTRIBUTIONS 679
0.2
0.4
x
f
(
x
)
X
m s =0, =1
m s =0, =5
m s =3, =1
m s =3, =5
m s =6, =1
m s =6, =5
0.1
0.15
0.25
0.3
0.35
0.05
-15 -10 -5 0 5 10 15 20
m
standardnormal
distribution:
m s =0, =1
Fig. 53.5.a: The PDFs of some normal distributions.
0
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-5 -10 -15 5 10 15 20
F
(
x
)
X
x
m s =0, =1
m s =0, =5
m s =3, =1
m s =3, =5
m s =6, =1
m s =6, =5
theCDF ofthe
standardnormal
distribution:
F
m
s
=0,
=1
0.1
Fig. 53.5.b: The CDFs of some normal distributions.
Figure 53.5: Examples for the normal distribution.
680 53 STOCHASTIC THEORY AND STATISTICS
x 0.00 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09
0.0 0.5000 0.5040 0.5080 0.5120 0.5160 0.5199 0.5239 0.5279 0.5319 0.5359
0.1 0.5398 0.5438 0.5478 0.5517 0.5557 0.5596 0.5636 0.5675 0.5714 0.5753
0.2 0.5793 0.5832 0.5871 0.5910 0.5948 0.5987 0.6026 0.6064 0.6103 0.6141
0.3 0.6179 0.6217 0.6255 0.6293 0.6331 0.6368 0.6406 0.6443 0.6480 0.6517
0.4 0.6554 0.6591 0.6628 0.6664 0.6700 0.6736 0.6772 0.6808 0.6844 0.6879
0.5 0.6915 0.6950 0.6985 0.7019 0.7054 0.7088 0.7123 0.7157 0.7190 0.7224
0.6 0.7257 0.7291 0.7324 0.7357 0.7389 0.7422 0.7454 0.7486 0.7517 0.7549
0.7 0.7580 0.7611 0.7642 0.7673 0.7704 0.7734 0.7764 0.7794 0.7823 0.7852
0.8 0.7881 0.7910 0.7939 0.7967 0.7995 0.8023 0.8051 0.8078 0.8106 0.8133
0.9 0.8159 0.8186 0.8212 0.8238 0.8264 0.8289 0.8315 0.8340 0.8365 0.8389
1.0 0.8413 0.8438 0.8461 0.8485 0.8508 0.8531 0.8554 0.8577 0.8599 0.8621
1.1 0.8643 0.8665 0.8686 0.8708 0.8729 0.8749 0.8770 0.8790 0.8810 0.8830
1.2 0.8849 0.8869 0.8888 0.8907 0.8925 0.8944 0.8962 0.8980 0.8997 0.9015
1.3 0.9032 0.9049 0.9066 0.9082 0.9099 0.9115 0.9131 0.9147 0.9162 0.9177
1.4 0.9192 0.9207 0.9222 0.9236 0.9251 0.9265 0.9279 0.9292 0.9306 0.9319
1.5 0.9332 0.9345 0.9357 0.9370 0.9382 0.9394 0.9406 0.9418 0.9429 0.9441
1.6 0.9452 0.9463 0.9474 0.9484 0.9495 0.9505 0.9515 0.9525 0.9535 0.9545
1.7 0.9554 0.9564 0.9573 0.9582 0.9591 0.9599 0.9608 0.9616 0.9625 0.9633
1.8 0.9641 0.9649 0.9656 0.9664 0.9671 0.9678 0.9686 0.9693 0.9699 0.9706
1.9 0.9713 0.9719 0.9726 0.9732 0.9738 0.9744 0.9750 0.9756 0.9761 0.9767
2.0 0.9772 0.9778 0.9783 0.9788 0.9793 0.9798 0.9803 0.9808 0.9812 0.9817
2.1 0.9821 0.9826 0.9830 0.9834 0.9838 0.9842 0.9846 0.9850 0.9854 0.9857
2.2 0.9861 0.9864 0.9868 0.9871 0.9875 0.9878 0.9881 0.9884 0.9887 0.9890
2.3 0.9893 0.9896 0.9898 0.9901 0.9904 0.9906 0.9909 0.9911 0.9913 0.9916
2.4 0.9918 0.9920 0.9922 0.9925 0.9927 0.9929 0.9931 0.9932 0.9934 0.9936
2.5 0.9938 0.9940 0.9941 0.9943 0.9945 0.9946 0.9948 0.9949 0.9951 0.9952
2.6 0.9953 0.9955 0.9956 0.9957 0.9959 0.9960 0.9961 0.9962 0.9963 0.9964
2.7 0.9965 0.9966 0.9967 0.9968 0.9969 0.9970 0.9971 0.9972 0.9973 0.9974
2.8 0.9974 0.9975 0.9976 0.9977 0.9977 0.9978 0.9979 0.9979 0.9980 0.9981
2.9 0.9981 0.9982 0.9982 0.9983 0.9984 0.9984 0.9985 0.9985 0.9986 0.9986
3.0 0.9987 0.9987 0.9987 0.9988 0.9988 0.9989 0.9989 0.9989 0.9990 0.9990
Table 53.7: Some values of the standardized normal distribution.
53.4.2.2 The Probit Function
The inverse of the cumulative distribution function of the standard normal distribution is
called the probit function. It is also often denoted as z-quantile of the standard normal
distribution.
z(y) probit(y)
1
(y) (53.178)
y = (x)
1
(y) = z(y) = x (53.179)
The values of the quantiles of the standard normal distribution can also be looked up in
Table 53.7. Therefore, the previously discussed process is simply reversed. If we wanted to
nd the value z0.922, we locate the closest match in the table. In Table 53.7, we will nd
0.9222 which leads us to x = 1.4 + 0.02. Hence, z(0.922) 1.42.
53.4.2.3 Multivariate Normal Distribution
The probability density function PDF of the multivariate normal distribution
50
[2345, 2523,
2664] is illustrated in Equation 53.180 and Equation 53.181 in the general case (where is
the covariance matrix) and in Equation 53.182 in the uncorrelated form. If the distributions,
50
http://en.wikipedia.org/wiki/Multivariate_normal_distribution [accessed 2007-07-03]
53.4. SOME CONTINUOUS DISTRIBUTIONS 681
additionally to being uncorrelated, also have the same parameters and , the probability
density function of the multivariate normal distribution can be expressed as it is done in
Equation 53.183.
f
X
(x) =
_
1
(2)
n
2
e
1
2
(x)
T
1
(x)
(53.180)
=
1
(2)
n
2
1
2
e
1
2
(x)
T
1
(x)
(53.181)
f
X
(x) =
n
i=1
1
2
i
e
(x
i
i
)
2
2
2
i
(53.182)
f
X
(x) =
n
i=1
1
2
e
(x
i
i
)
2
2
2
=
_
1
2
2
_n
2
e
n
i=1
(x
i
)
2
2
2
(53.183)
53.4.2.4 Central Limit Theorem
The central limit theorem
51
(CLT) states that the sum S
n
=
n
i=1
X
i
of i identically dis-
tributed random variables X
i
with nite expected values E[X
i
] and non-zero variances
D
2
[X
i
] > 0 approaches a normal distribution for n +. [925, 1481, 2704]
51
http://en.wikipedia.org/wiki/Central_limit_theorem [accessed 2008-08-19]
682 53 STOCHASTIC THEORY AND STATISTICS
53.4.3 Exponential Distribution exp()
The exponential distribution
52
exp() [781] is often used if the probabilities of lifetimes of
apparatuses, half-life periods of radioactive elements, or the time between two events in
the Poisson process (see Section 53.3.2.2 on page 673) has to be approximated. Its PDF
is sketched in Fig. 53.6.a for some example values of the according cases of the CDF are
illustrated Fig. 53.6.b. The most important characteristics of the exponential distribution
can be obtained from Table 53.8.
Parameter Denition
parameters R
+
53.184
PDF f
X
(x) =
_
0 if x 0
e
x
otherwise
53.185
CDF P (X x) = F
X
(x) =
_
0 if x 0
1 e
x
otherwise
53.186
mean EX =
1
53.187
median med =
ln 2
53.188
mode mode = 0 53.189
variance D
2
X =
1
2
53.190
skewness
1
= 2 53.191
kurtosis
2
= 6 53.192
entropy h(X) = 1 ln 53.193
mgf M
X
(t) =
_
1
t
_
1
53.194
char. func.
X
(t) =
_
1
it
_
1
53.195
Table 53.8: Parameters of the exponential distribution.
52
http://en.wikipedia.org/wiki/Exponential_distribution [accessed 2007-07-03]
53.4. SOME CONTINUOUS DISTRIBUTIONS 683
0
0.5
1
1.5
2
2.5
3
l=0.3
l=0.5
l=1
l=2
l=3
0.5 1 1.5 2 2.5 3 3.5
f (x)
X
x
1/l
Fig. 53.6.a: The PDFs of some exponential distributions.
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
x
F (x)
X
l=0.3
l=0.5
l=1
l=2
l=3
Fig. 53.6.b: The CDFs of some exponential distributions.
Figure 53.6: Some examples for the exponential distribution.
684 53 STOCHASTIC THEORY AND STATISTICS
53.4.4 Chi-square Distribution
The chi-square (or
2
) distribution
53
is a steady probability distribution on the set of
positive real numbers. It is a so-called sample distribution which is used for the estimation
of parameters like the variance of other distributions. We can also describe the sum of
independent standardized normal distributions with it. Its sole parameter, n, denotes the
degrees of freedom.
In Table 53.9
54
, the characteristic parameters of the
2
distribution are outlined. A few
examples for the PDF and CDF of the
2
distribution are illustrated in Fig. 53.7.a and
Fig. 53.7.b.
Table 53.10 provides some selected values of the
2
distribution. The headline of the
table contains results of the cumulative distribution function F
X
(x) of a
2
distribution
with n degrees of freedom (values in the rst column). The cells now denote the x values
that belong to these (m, F
X
(x)) combinations.
Parameter Denition
parameters n R
+
, n > 0 53.196
PDF f
X
(x) =
_
0 if x 0
2
n
/2
(
n
/2)
x
n
/21
e
x
/2
otherwise
53.197
CDF P (X x) = F
X
(x) =
(
n
/2,
x
/2)
(
n
/2)
= P
(
n
/2,
x
/2) 53.198
mean EX = n 53.199
median med n
2
3
53.200
mode mode = n 2 if n 2 53.201
variance D
2
X = 2n 53.202
skewness
1
=
_
8
n
53.203
kurtosis
2
=
12
n
53.204
entropy h(X) =
n
2
+ ln (2(
n
/2)) + (1
n
/2)(
n
/2) 53.205
mgf M
X
(t) = (1 2t)
n
/2
for 2t < 1 53.206
char. func.
X
(t) = (1 2it)
n
/2
53.207
Table 53.9: Parameters of the
2
distribution.
53
http://en.wikipedia.org/wiki/Chi-square_distribution [accessed 2007-09-30]
54
(n, z) in Equation 53.198 is the lower incomplete Gamma function and P
n(
n
/2)
_
1 +
x
2
/n
_
(n+1)
/2
53.209
CDF P (X x) = F
X
(x) =
1
2
+x
_
n + 1
2
_
2
F
1
_
1
2
,
n + 1
2
,
3
2
,
x
2
n
_
n
_
n
2
_ 53.210
mean EX = 0 53.211
median med = 0 53.212
mode mode = 0 53.213
variance D
2
X =
n
n 2
for n > 2, otherwise undened 53.214
skewness
1
= 0 for n > 3 53.215
kurtosis
2
=
6
n 4
for n > 4 53.216
entropy h(X) =
n
2
_
_
n + 1
2
_
_
n
2
_
_
+ log
_
nB
_
n
2
,
1
2
__
53.217
mgf undened 53.218
Table 53.11: Parameters of the Students t- distribution.
55
http://en.wikipedia.org/wiki/Student%27s_t-distribution [accessed 2007-09-30]
56
More information on the gamma function used in Equation 53.209 and Equation 53.210 can be
found in ?? on page ??.
2
F in Equation 53.210 stands for the hypergeometric function, and B in
Equation 53.217 are the digamma and the beta function.
688 53 STOCHASTIC THEORY AND STATISTICS
x
3 2 1 0 -1 -2 -3 -4 5
0.05
0.1
0.15
0.2
TheStudent`st-distribution
approachesthenormal
distributionN(0,1)
forn .
0.3
0.25
f (x)
X
0.4
0.35
n=1
n=2
n=5
normaldistribution
Fig. 53.8.a: The PDFs of some Students t-distributions
x
3 2 1 0 -1 -2 -3 -4 5
n=1
n=2
n=5
normaldistribution
0.1
0.2
0.3
0.8
0.7
0.6
0.5
0.9
1
F (x)
X
0.4
TheStudent`st-distribution
approachesthenormal
distributionN(0,1)
forn .
Fig. 53.8.b: The CDFs of some Students t-distributions
Figure 53.8: Examples for Students t-distribution.
53.5. EXAMPLE THROWING A DICE 689
n 0.75 .8 .85 .875 .9 .95 .975 .99 .995 .9975 .999 .9995
1 1.000 1.376 1.963 2.414 3.078 6.314 12.71 31.82 63.66 127.3 318.3 636.6
2 0.816 1.061 1.386 1.605 1.886 2.920 4.303 6.965 9.925 14.09 22.33 31.60
3 0.765 0.978 1.250 1.423 1.638 2.353 3.182 4.541 5.841 7.453 10.21 12.92
4 0.741 0.941 1.190 1.344 1.533 2.132 2.776 3.747 4.604 5.598 7.173 8.610
5 0.727 0.920 1.156 1.301 1.476 2.015 2.571 3.365 4.032 4.773 5.893 6.869
6 0.718 0.906 1.134 1.273 1.440 1.943 2.447 3.143 3.707 4.317 5.208 5.959
7 0.711 0.896 1.119 1.254 1.415 1.895 2.365 2.998 3.499 4.029 4.785 5.408
8 0.706 0.889 1.108 1.240 1.397 1.860 2.306 2.896 3.355 3.833 4.501 5.041
9 0.703 0.883 1.100 1.230 1.383 1.833 2.262 2.821 3.250 3.690 4.297 4.781
10 0.700 0.879 1.093 1.221 1.372 1.812 2.228 2.764 3.169 3.581 4.144 4.587
11 0.697 0.876 1.088 1.214 1.363 1.796 2.201 2.718 3.106 3.497 4.025 4.437
12 0.695 0.873 1.083 1.209 1.356 1.782 2.179 2.681 3.055 3.428 3.930 4.318
13 0.694 0.870 1.079 1.204 1.350 1.771 2.160 2.650 3.012 3.372 3.852 4.221
14 0.692 0.868 1.076 1.200 1.345 1.761 2.145 2.624 2.977 3.326 3.787 4.140
15 0.691 0.866 1.074 1.197 1.341 1.753 2.131 2.602 2.947 3.286 3.733 4.073
16 0.690 0.865 1.071 1.194 1.337 1.746 2.120 2.583 2.921 3.252 3.686 4.015
17 0.689 0.863 1.069 1.191 1.333 1.740 2.110 2.567 2.898 3.222 3.646 3.965
18 0.688 0.862 1.067 1.189 1.330 1.734 2.101 2.552 2.878 3.197 3.610 3.922
19 0.688 0.861 1.066 1.187 1.328 1.729 2.093 2.539 2.861 3.174 3.579 3.883
20 0.687 0.860 1.064 1.185 1.325 1.725 2.086 2.528 2.845 3.153 3.552 3.850
21 0.686 0.859 1.063 1.183 1.323 1.721 2.080 2.518 2.831 3.135 3.527 3.819
22 0.686 0.858 1.061 1.182 1.321 1.717 2.074 2.508 2.819 3.119 3.505 3.792
23 0.685 0.858 1.060 1.180 1.319 1.714 2.069 2.500 2.807 3.104 3.485 3.767
24 0.685 0.857 1.059 1.179 1.318 1.711 2.064 2.492 2.797 3.091 3.467 3.745
25 0.684 0.856 1.058 1.178 1.316 1.708 2.060 2.485 2.787 3.078 3.450 3.725
26 0.684 0.856 1.058 1.177 1.315 1.706 2.056 2.479 2.779 3.067 3.435 3.707
27 0.684 0.855 1.057 1.176 1.314 1.703 2.052 2.473 2.771 3.057 3.421 3.690
28 0.683 0.855 1.056 1.175 1.313 1.701 2.048 2.467 2.763 3.047 3.408 3.674
29 0.683 0.854 1.055 1.174 1.311 1.699 2.045 2.462 2.756 3.038 3.396 3.659
30 0.683 0.854 1.055 1.173 1.310 1.697 2.042 2.457 2.750 3.030 3.385 3.646
40 0.681 0.851 1.050 1.167 1.303 1.684 2.021 2.423 2.704 2.971 3.307 3.551
50 0.679 0.849 1.047 1.164 1.299 1.676 2.009 2.403 2.678 2.937 3.261 3.496
60 0.679 0.848 1.045 1.162 1.296 1.671 2.000 2.390 2.660 2.915 3.232 3.460
80 0.678 0.846 1.043 1.159 1.292 1.664 1.990 2.374 2.639 2.887 3.195 3.416
100 0.677 0.845 1.042 1.158 1.290 1.660 1.984 2.364 2.626 2.871 3.174 3.390
120 0.677 0.845 1.041 1.157 1.289 1.658 1.980 2.358 2.617 2.860 3.160 3.373
0.674 0.842 1.036 1.150 1.282 1.645 1.960 2.326 2.576 2.807 3.090 3.291
Table 53.12: Table of Students t-distribution with right-tail probabilities.
53.5 Example Throwing a Dice
Let us now discuss the dierent parameters of a random variable at the example of throwing
a dice. On a dice, numbers from one to six are written and the result of throwing it is the
number written on the side facing upwards. If a dice is ideal, the numbers one to six will
show up with exactly the same probability,
1
6
. The set of all possible outcomes of throwing
a dice is thus
=
_
1 , 2 , 3 , 4 , 5 , 6
_
(53.219)
We dene a random variable X : R that assigns real numbers to the possible outcomes
of throwing the dice in a way that the value of X matches the number on the dice:
X : 1, 2, 3, 4, 5, 6 (53.220)
690 53 STOCHASTIC THEORY AND STATISTICS
It is obviously a uniformly distributed discrete random variable (see Section 53.3.1 on
page 668) that can take on six states. We can now dene the probability mass function PMF
and the according cumulative distribution function CDF as follows (see also Figure 53.9):
F
X
(x) = P (X x) =
_
_
_
0 if x < 1
x
6
if 1 x 6
1 otherwise
(53.221)
f
X
(x) = P (X = x) =
_
_
_
0 if x < 1
1
6
if 1 x 6
0 otherwise
(53.222)
We now can discuss the statistical parameters of this experiment. This is a good opportunity
0
1/3
x
1 2 3
CDFofthedicethrowingexperiment
PMFofthedicethrowingexperiment
single,discretepoint
discontinuouspoint
1/6
5/6
1
1/2
2/3
4 5 6
Figure 53.9: The PMF and CMF of the dice throw
to compare the real parameters and their estimates. We therefore assume that the dice
was thrown ten times (n = 10) in an experiment. The following numbers have been thrown
as illustrated in Figure 53.10):
A = 4, 5, 3, 2, 4, 6, 4, 2, 5, 3 (53.223)
Table 53.13 outlines how the parameters of the random variable are computed. The real
values of the parameters are dened using the PMF or CDF functions, while the estimations
are based on the sample data obtained from an actual experiment.
53.6. ESTIMATION THEORY 691
0
1
2
3
4
5
6
A
Figure 53.10: The numbers thrown in the dice example
parameter true value estimate
count nonexistent n = len(A) = 10 53.224
minimum a = min x : f
X
(x) > 0 = 1 a = minA = 2 a 53.225
maximum b = max x : f
X
(x) > 0 = 6
b = maxA = 6 b 53.226
range range = r = b a + 1 = 6 r =
b a + 1 = 5 range 53.227
mean EX =
a +b
2
=
7
2
= 3.5 a =
1
n
n1
i=0
A[i] =
19
5
= 3.8 EX 53.228
median med =
a +b
2
=
7
2
= 3.5
A
s
= sortAscA>
med =
A
s
_
n
2
+A
s
_
n
2
1
2
= 4 med
53.229
mode mode =
mode = 4 mode 53.230
variance D
2
X =
2
=
r
2
1
12
=
35
12
2.917 s
2
=
1
n 1
n1
i=0
(A[i] a)
2
=
26
15
1.73
2
53.231
skewness
1
= 0 G
1
0.0876
1
53.232
kurtosis
2
=
6
_
r
2
+ 1
_
5
_
r
2
1
_ =
222
175
1.269 G
2
0.7512
2
53.233
Table 53.13: Parameters of the dice throw experiment.
As you can see, the estimations of the parameters sometimes dier signicantly from their
true values. More information about estimation can be found in the following section.
53.6 Estimation Theory
53.6.1 Introduction
Estimation theory is the science of approximating the values of parameters based on mea-
surements or otherwise obtained sample data [1506, 2203, 2299, 2494, 2782]. The center of
this branch of statistics is to nd good estimators in order to approximate the real values
the parameters as good as possible.
692 53 STOCHASTIC THEORY AND STATISTICS
Denition D53.54 (Estimator). An estimator
57
is a rule (most often a mathematical
function) that takes a set of sample data A as input and returns an estimation of one
parameter of the random distribution of the process sampled with this data set.
We have already discussed some estimators in Section 53.2 the arithmetic mean of a sample
data set (see Denition D53.32 on page 661), for example, is an estimator for the expected
value (see Denition D53.30 on page 661) and in Equation 53.67 on page 662 we introduced
an estimator for the sample variance. Obviously, an estimator
is the better the closer its
results (the estimates) come to the real values of the parameter .
Denition D53.55 (Point Estimator). We dene a point estimator
to be an estimator
which is a mathematical function
: R
n
R. This function takes the data sample A (here
considered as a real vector A R
n
) as input and returns the estimate in the form of a (real)
scalar value.
Denition D53.56 ((Estimation) Error). The absolute (estimation) error
58
is the dif-
ference between the value returned by a point estimator
of a parameter for a certain
input A and its real value. Notice that the error can be zero, positive, or negative.
A
_
_
=
(A) (53.234)
In the following, we will most often not explicitly refer to the data sample A as basis of the
estimation
anymore. We assume that it is implicitly clear that estimations are usually
based on such samples and that subscripts like the A in
A
in Equation 53.234 are not
needed.
Denition D53.57 (Bias). The bias Bias
_
_
of an estimator
is the expected value of
the dierence of the estimate and the real value.
Bias
_
_
= E
_
_
= E
_
__
(53.235)
Denition D53.58 (Unbiased Estimator). An unbiased estimator has a zero bias.
Bias
_
_
= E
_
_
= E
_
__
= 0 E
= (53.236)
Denition D53.59 (Mean Square Error). The mean square error
59
MSE
_
_
of an es-
timator
is the expected value of the square of the estimation error . It is also the sum of
the variance of the estimator and the square of its bias.
MSE
_
_
= E
_
_
_
2
_
= E
_
_
__
2
_
(53.237)
MSE
_
_
= D
2
+
_
Bias
_
__
2
(53.238)
57
http://en.wikipedia.org/wiki/Estimator [accessed 2007-07-03], http://mathworld.wolfram.
com/Estimator.html [accessed 2007-07-03]
58
http://en.wikipedia.org/wiki/Errors_and_residuals_in_statistics [accessed 2007-07-03]
59
http://en.wikipedia.org/wiki/Mean_squared_error [accessed 2007-07-03]
53.6. ESTIMATION THEORY 693
The MSE is a measure for how much an estimator diers from the quantity to be estimated.
Notice that the MSE of unbiased estimators coincides with the variance D
2
of
. For
estimating the mean square error of an estimator
, we use the sample mean:
MSE
_
_
=
1
n
n
i=1
_
_
(53.239)
53.6.2 Likelihood and Maximum Likelihood Estimators
Likelihood
60
is a mathematical expression complementary to probability. Whereas proba-
bility allows us to predict the outcome of a random experiment based on known parameters,
likelihood allows us to predict unknown parameters based on the outcome
Denition D53.60 (Likelihood Function). The likelihood function L returns a value
that is proportional to the probability of a postulated underlying law or probability distri-
bution according to an observed outcome (denoted as the vector y).
L[[y] P ( y[ ) (53.240)
Notice that L not necessarily represents a probability density/mass function and its inte-
gral also does not necessarily equal to 1. In many sources, L is dened in dependency of
a parameter instead of the function . We preferred the latter notation since it is a more
general superset of the rst one.
53.6.2.1 Observation of an Unknown Process
Assume that we are given a nite set A of n sample data points.
A = (x
0
, y
0
) , (x
1
, y
1
) , .., (x
n1
, y
n1
) , x
i
, y
i
R i 0..n 1 (53.241)
The x
i
are known inputs or parameters of an unknown process dened by the function
: R R. By observing the corresponding outputs of the process, we have obtained the y
i
values. During our observations, we make the measurement errors
61
i
.
y
i
= (x
i
) +
i
i 0..n 1 (53.242)
About this measurement error we make the following assumptions:
E = 0 (53.243)
N
_
0,
2
_
0 < < + (53.244)
cov(
i
,
j
) = 0 i, j 0..n 1 (53.245)
1. The expected values of in Equation 53.243 are all zero. Our measurement device
thus gives us, in average, unbiased results. If the expected value of was not zero, we
could simple recalibrate our (imaginary) measurement equipment in order to subtract
E from all measurements and would obtain unbiased observations.
2. Furthermore, Equation 53.244 states that the i are normally distributed around the
zero point with an unknown, nonzero variance
2
. Supposing measurement errors to
be normally distributed is quite common and a reasonable good approximation in most
60
http://en.wikipedia.org/wiki/Likelihood [accessed 2007-07-03]
61
http://en.wikipedia.org/wiki/Measurement_error [accessed 2007-07-03]
694 53 STOCHASTIC THEORY AND STATISTICS
cases. The white noise
62
in transmission of signals for example is often modeled with
Gaussian distributed
63
amplitudes. This second assumption includes, of course, the
rst one: Being normally distributed with N
_
= 0,
2
_
implies a zero expected value
of the error.
3. With Equation 53.245, we assume that the errors
i
of the single measurements are
stochastically independent. If there existed a connection between them, it would be
part of the underlying physical law and could be incorporated in our measurement
device and again be subtracted.
53.6.2.2 Objective: Estimation
Assume that we can choose from a, possible innite large, set of functions (estimators)
f F.
f F f : R R (53.246)
From this set, we wish to select the function f
.
Each estimator f deviates by the estimation error (f) (see Denition D53.56 on
page 692) from the y
i
-values. The estimation error depends on f and may vary for dif-
ferent estimators.
y
i
= f (x
i
) +
i
(f) i 0..n 1 (53.247)
We consider all f F to be valid estimators for and simple look for the one that ts
best. We now can combine Equation 53.247 with 53.242:
f (x
i
) +
i
(f) = y
i
= (x
i
) +
i
i 0..n 1 (53.248)
We do not know and thus, cannot determine the
i
. According to the likelihood method,
we pick the function f F that would have most probably produced the outcomes y
i
.
In other words, we have to maximize the likelihood of the occurrence of the
i
(f). The
likelihood here is dened under the assumption that the true measurement errors
i
are
normally distributed (see Equation 53.244). So what we can do is to determine the
i
in
a way that their occurrence is most probable according to the distribution of the random
variable that created the
i
, N
_
0,
2
_
, that is. In the best case, the (f
) =
i
and thus, f
is equivalent to (x
i
), at least in for the sample information A available to us.
53.6.2.3 Maximizing the Likelihood
Therefore, we can regard the
i
(f) as outcomes of independent random experiments, as
uncorrelated random variables, and combine them to a multivariate normal distribution.
For the ease of notation, we dene the (f) to be the vector containing all
i
(f)-values.
(f) =
_
_
_
_
_
1
(f)
2
(f)
.
.
.
n
(f)
_
_
_
_
_
(53.249)
The probability density function of a multivariate normal distribution with independent
variables
i
that have the same variance
2
looks like this (as dened in Equation 53.183 on
page 681):
f
X
((f)) =
_
1
2
2
_n
2
e
n1
i=0
(
i
(f))
2
2
2
=
_
1
2
2
_n
2
e
n1
i=0
(
i
(f))
2
2
2
(53.250)
62
http://en.wikipedia.org/wiki/White_noise [accessed 2007-07-03]
63
http://en.wikipedia.org/wiki/Gaussian_noise [accessed 2007-07-03]
53.6. ESTIMATION THEORY 695
Amongst all possible vectors (f) : f F we need to nd the most probable one
= (f
n1
i=0
(
i
(f))
2
2
2
(53.251)
f
F : L[ (f
)[ f
] = max
fF
L[ (f)[ f] (53.252)
= max
fF
_
1
2
2
_n
2
e
n1
i=0
(
i
(f))
2
2
2
(53.253)
Finding a f
which mini-
mizes the sum of the squares of the -values.
f
F :
n1
i=0
(
i
(f
))
2
= min
fF
n1
i=0
(
i
(f))
2
(53.254)
According to Equation 53.247 we can now substitute the
i
-values with the dierence be-
tween the observed outcomes y
i
and the estimates f (x
i
).
n
i=1
(
i
(f))
2
=
n1
i=0
(y
i
f (x
i
))
2
(53.255)
Denition D53.61 (Maximum Likelihood Estimator). A maximum likelihood esti-
mator
64
[70] f
F :
n1
i=0
(y
i
f
(x
i
))
2
= min
fF
n1
i=0
(y
i
f (x
i
))
2
(53.256)
Minimizing the sum of the dierence between the observed y
i
and the estimates f (x
i
)
also minimizes their mean, so with this we have also shown that the estimator that mini-
mizes mean square error MSE (see Denition D53.59) is the best estimator according to the
likelihood of the produced outcomes.
f
F :
1
n
n1
i=0
(y
i
f
(x
i
))
2
= min
fF
1
n
n1
i=0
(y
i
f (x
i
))
2
(53.257)
f
F : MSE(f
) = min
fF
MSE(f) (53.258)
The term (y
i
f (x
i
))
2
is often justied by the statement that large deviations of f from
the y-values are punished harder than smaller ones. The correct reason why we minimize
the square error, however, is that we maximize the likelihood of the resulting estimator.
64
http://en.wikipedia.org/wiki/Maximum_likelihood [accessed 2007-07-03]
696 53 STOCHASTIC THEORY AND STATISTICS
At this point, one should also notice that the x
i
also could be replaced with vectors
x
i
R
m
without any further implications or modications of the equations.
In most practical cases, the set F of possible functions is closely dened. It usually
contains only one type of parameterized function, so we only have to determine the unknown
parameters in order to nd f
i=0
(ax
i
+b y
i
)
2
(53.259)
If we now could nd a perfect estimator f
p
and our data would be free of any measurement
error, all parts of the sum would become zero. For n > 2, this perfect estimator would be the
solution of the over-determined system of linear equations illustrated in Equation 53.260.
0 = ax
1
+b y
1
0 = ax
2
+b y
2
. . . . . .
0 = ax
n
+b y
n
(53.260)
Since it is normally not possible to obtain a perfect estimator because there are measurement
errors or other uncertainties like unknown dependencies, the system in Equation 53.260 often
cannot be solved but only minimized.
53.6.2.4 Best Linear Unbiased Estimators
The Gauss-Markov Theorem
65
denes BLUEs (best linear unbiased estimators) according
to the facts just discussed:
Denition D53.62 (BLUE). In a linear model in which the measurement errors
i
are
uncorrelated and are all normally distributed with an expected value of zero and the same
variance, the best linear unbiased estimators (BLUE) of the (unknown) coecients are the
least-square estimators [2184].
Hence, for the best linear unbiased estimator also the same three assumptions (Equa-
tion 53.243, Equation 53.244, and Equation 53.245) as for the maximum likelihood estimator
hold.
53.6.3 Condence Intervals
There is a very simple principle in statistics that always holds: All estimates may as well
be wrong. There is no guarantee whatsoever that we have estimated a parameter of an
underlying distribution correct regardless how many samples we have analyzed. However, if
we can assume or know the underlying distribution of the process which has been sampled,
we can compute certain intervals which include the real value of the estimated parameter
with a certain probability.Unlike point estimators, which approximate a parameter of a data
sample with a single value, condence intervals
66
(CIs) are estimations that give certain
upper and lower boundaries in which the true value of the parameter will be located with a
certain, predened probability. [505, 674, 931]
65
http://en.wikipedia.org/wiki/Gauss-Markov_theorem [accessed 2007-07-03], http://www.
answers.com/topic/gauss-markov-theorem [accessed 2007-07-03]
66
http://en.wikipedia.org/wiki/Confidence_interval [accessed 2007-10-01]
53.6. ESTIMATION THEORY 697
Denition D53.63 (Condence Interval). A condence interval is estimations that
providing a range in which the true value of the estimated parameter will be located with a
certain probability.
The advantage of condence intervals is that we can directly derive the signicance of the
data samples from them the larger the intervals are, the less reliable is the sample. The
narrower condence intervals get for high predened probabilities, the more profound, i. e.,
signicant, will the conclusions drawn from them be.
Example E53.6 (Chickens and Condence).
Imagine we run a farm and own 25 chickens. Each chicken lays one egg a day. We collect
all the eggs in the morning and weigh them in order to nd the average weight of the eggs
produced by our farm. Assume our sample contains the values (in g):
A =
120, 121, 119, 116, 115, 122, 121, 123, 122, 120
119, 122, 121, 120, 119, 121, 123, 117, 118, 121
(53.261)
n = len(A) = 20 (53.262)
From these measurements, we can determine the arithmetic mean a and the sample variance
s
2
according to Equation 53.60 on page 661 and Equation 53.67 on page 662:
a =
1
n
n1
i=0
A[i] =
2400
20
= 120 (53.263)
s
2
=
1
n 1
n1
i=0
(A[i] a)
2
=
92
19
(53.264)
The question that arises now is if the mean of 120 is signicant, i. e., whether it likely
approximates the expected value of the egg weight, or if the data sample was too small to
be representative. Furthermore, we would like to know in which interval the expected value
of the egg weights will likely be located. Here, condence intervals come into play.
First, we need to nd out what the underlying distribution of the random variable
producing A as sample output is. In case of chicken eggs, we safely can assume
67
that
it is the normal distribution discussed in Section 53.4.2 on page 678. With that we can
calculate an interval which includes the unknown parameter (i. e., the real expected value)
with a condence probability of . = 1 a is the so-called condence coecient and a is
the probability that the real value of the estimated parameter lies not inside the condence
interval.
Let us compute the interval including the expected value of the chicken egg weights
with a probability of = 1 a = 95%. Thus, a = 0.05. Therefore, we have to pick the right
formula from Section 53.6.3.1 on the following page (here it is Equation 53.277 on the next
page) and substitute in the proper values:
_
a t
1
a
2
,n1
s
n
_
(53.265)
95%
_
_
120 t
0.975,19
_
92
19
19
_
_
(53.266)
95%
[120 2.093 0.5048] (53.267)
95%
[118.94, 121.06] (53.268)
67
Notice that such an assumption is also a possible source of error!
698 53 STOCHASTIC THEORY AND STATISTICS
The value of t
19,0.025
can easily be obtained from Table 53.12 on page 689 which contains the
respective quantiles of Students t-distribution discussed in Section 53.4.5 on page 687. Let
us repeat the procedure in order to nd the interval that will contain with probabilities
1 = 99% a = 0.01 and 1 = 90% a = 0.1:
99%
[120 t
0.995,19
0.5048] (53.269)
99%
[120 2.861 0.5048] (53.270)
99%
[118.56, 121.44] (53.271)
90%
[120 t
0.95,19
0.5048] (53.272)
90%
[120 1.729 0.5048] (53.273)
90%
[119.13, 120.87] (53.274)
(53.275)
As you can see, the higher the condence probabilities we specify the larger become the
intervals in which the parameter is contained. We can be to 99% sure that the expected
value of laid eggs is somewhere between 118.56 and 121.44. If we narrow the interval down
to [119.13, 120.87], we can only be 90% condent that the real expected value falls in it
based on the data samples which we have gathered.
53.6.3.1 Some Condence Intervals
The following condence intervals are two-sided, i. e., we determine a range
x,
+x
_
that contains the parameter with probability based on the estimate
_
,
+x
_
or
x,
_
,
you just need to replace 1
a
2
with 1 a in the equations.
53.6.3.1.1 Expected Value of a Normal Distribution N
53.6.3.1.1.1 With knowing the variance
2
If the exact variance
2
of the distribution
underlying our data samples is known, and we have an estimate of the expected value by
the arithmetic mean a according to Equation 53.60 on page 661, the two-sided condence
interval (of probability ) for the expected value of the normal distribution is:
_
a z
_
1
a
2
_
n
_
(53.276)
Where z(y) probit(y)
1
y is the y-quantil of the standard normal distribution
(see Section 53.4.2.2 on page 680) which can for example be looked up in Table 53.7.
53.6.3.1.1.2 With estimated sample variance s
2
Often, the true variance
2
of an underly-
ing distribution is not known and instead estimated with the sample variance s
2
according
to Equation 53.67 on page 662. The two-sided condence interval (of probability ) for
the expected value can then be computed using the arithmetic mean a and the estimate
of the standard deviation s =
s
2
of the sample and the t
n1,1
a
2
quantile of Students
t-distribution which can be looked up in Table 53.12 on page 689.
_
a t
1
a
2
,n1
s
2
n
_
(53.277)
53.7. STATISTICAL TESTS 699
53.6.3.1.2 Variance of a Normal Distribution
The two-sided condence interval (of probability ) for the variance of a normal distribution
can computed using sample variance s
2
and the
2
(p, k)-quantile of the
2
distribution
which can be looked up in Table 53.10 on page 686.
_
_
(n 1)s
2
2
_
1
a
2
, n 1
_,
(n 1)s
2
2
_
2
, n 1
_
_
_
(53.278)
53.6.3.1.3 Success Probability p of a B(1, p) Binomial Distribution
The two-sided condence interval (of probability ) of the success probability p of a B(1, p)
binomial distribution can be computed as follows:
p
_
_
n
n +z
2
1
a
2
_
_
a +
1
2n
z
2
1
a
2
z
2
1
a
2
a(1 a)
n
+
_
1
2n
z
2
1
a
2
_
2
_
_
_
_
(53.279)
53.6.3.1.4 Expected Value of an Unknown Distribution with Sample Variance
The two-sided condence interval (of probability ) of the expected value EX of an unknown
distribution with an unknown real variance D
2
X can be determined using the arithmetic
mean a and the sample variance s
2
if the sample data set contains more than n = 50
elements.
EX
_
a z
_
1
a
2
_
s
n
_
(53.280)
53.6.3.1.5 Condence Intervals from Tests
Many statistical tests (such as the Wilcoxons signed rank test introduced in ??) can be
inverted in order to obtain condence intervals [307]. The topic of statistical tests are
discussed in Section 53.7.
53.7 Statistical Tests
53.7.1 Introduction
With statistical tests [674, 1160, 1202, 1716, 2476, 2490], it is possible to nd out whether
an alternative hypothesis H
1
about the distribution(s) from a set of measured data A is
likely to be true. This is done by showing that the sampled data would very unlikely have
occurred if the opposite hypothesis, the null hypothesis H
0
, holds.
Example E53.7 (EA Settings Test).
If we want to show, for instance, that two dierent settings for an Evolutionary Algorithm
will probably lead to dierent solution qualities (H
1
), we assume that the distributions of
the objective values of the candidate solutions returned by them are equal (H
0
). Then,
we run the two Evolutionary Algorithms multiple times and measure the outcome, i. e.,
obtain A. Based on A, we can estimate the probability with which the two dierent sets
of measurements (the samples) would have occurred if H
0
was true. In the case that this
probability is very low, lets say < 5%, H
0
can be rejected (with 5% probability of making
a type 1 error) and H
1
is likely to hold. Otherwise, we would expect H
0
to hold and reject
H
1
.
700 53 STOCHASTIC THEORY AND STATISTICS
Neyman and Pearson [2030, 2031] distinguish two classes of errors
68
that can be made when
performing hypothesis tests:
Denition D53.64 (Type 1 Error). Type 1 ErrorA type 1 error ( error, false positive)
is the rejection of a correct null hypothesis H
0
, i. e., the acceptance of a wrong alternative
hypothesis H
1
. Type 1 errors are made with probability .
Denition D53.65 (Type 2 Error). Type 2 ErrorA type 2 error ( error, false negative)
is the acceptance of a wrong null hypothesis H
0
, i. e., the rejection of a correct alternative
hypothesis H
1
. Type 2 errors are made with probability .
Denition D53.66 (Power). PowerThe (statistical) power
69
of a statistical test is the
probability of rejecting a false null hypothesis H
0
. Therefore, the power equals 1 .
A few basic principles for testing should be mentioned before going more into detail:
1. The more samples we have, the better the quality and signicance of the conclusions
that we can make by testing. An arithmetic mean of the runtime 7s is certainly more
signicant when being derived from 1000 runs of certain algorithm than from the
sample set A = 9s, 5s. . .
2. The more assumptions that we can make about the sampled probability distribution,
the more powerful will the tests be that are available.
3. Wrong assumptions, falsely carried out measurements, or other misconduct will nullify
all results and eorts put into testing.
In the following, we will discuss multiple methods for hypothesis testing. We can, for
instance, distinguish between tests based on paired samples and those for independent pop-
ulations. In Table 53.14, we have illustrated an example for the former, where pairs of
elements (a, b) are drawn from two dierent populations. Table 53.15 contains two indepen-
dent samples a and b with a dierent number of elements (n
a
= 6 ,= n
b
= 8).
68
http://en.wikipedia.org/wiki/Type_I_and_type_II_errors [accessed 2008-08-15]
69
http://en.wikipedia.org/wiki/Statistical_power [accessed 2008-08-15]
53.7. STATISTICAL TESTS 701
Example E53.8 (Example for Paired Data Samples).
Row a b d = b a Sign Rank |r| Rank r
1. 2 10 +8 + 13 13
2. 3 4 +1 + 2 2
3. 6 10 +4 + 10 10
4. 4 6 +2 + 6 6
5. 6 11 +5 + 11 11
6. 5 6 +1 + 2 2
7. 4 11 +7 + 12 12
8. 9 6 3 - 9 9
9. 10 12 +2 + 6 6
10. 8 8 0 =
11. 6 8 +2 + 6 6
12. 7 6 1 - 2 2
13. 4 4 0 =
14. 4 6 +2 + 6 6
15. 9 7 2 - 6 6
a
i
= 87
b
i
= 115 D =
d
i
= 28 R =
r
i
= 57
med(a) = 6; a = 5.8
med(b) = 7; b = 7.6 7.67
Table 53.14: Example for paired samples (a, b).
This example data set consists of n = n
a
= n
b
= 15 tuples (a, b). The leftmost column
is the tuple index, the columns a and b contain the tuple values, and d is the inner-tuple
dierence b a. The three columns to the right contain intermediate values which will later
be used in the example calculations accompanying the descriptions of the tests.
The arithmetic mean of the samples a is a = 5.8 and for b it is b = 7.6 7.67. The
medians are med(a) = 6 and med(b) = 7. Although it looks as if a and b were dierent and
that the values of a seem to be lower than those of the sample b, we cannot conrm this
without a statistical test.
702 53 STOCHASTIC THEORY AND STATISTICS
Example E53.9 (Example for Unpaired Data Samples).
Row a b Ranks r
a
Ranks r
b
1. 2 1.5
2. 2 1.5
3. 3 4.0
4. 3 4.0
5. 3 4.0
6. 4 6.0
7. 5 8.5
8. 5 8.5
9. 5 8.5
10. 5 8.5
11. 6 11.5
12. 6 11.5
13. 7 13.5
14. 7 13.5
med(a) = 3 med(b) = 5.5 R
a
= 28 R
b
= 77
n
a
= 6 n
b
= 8
Table 53.15: Example for unpaired samples.
Unlike the data given in Example E53.9, Table 53.14 contains two unpaired samples a and
b consisting of n
a
= 6 and n
b
= 8 samples, respectively. We again provide the item index
in the leftmost column followed by the elements of a and b in the next two columns. In the
two columns to the right, again the ranks are given.
The arithmetic mean of the samples a is a =
20
/3 = 3.3 3.33 and for b it is b = 5.375.
The medians are med(a) = 3 and med(b) = 5.5. Again, it looks like the sample a contains
the smaller values. Whether this is actually the case we will have to check with tests. Or
better, with which error probability this assumption holds, to be precise.
Part VII
Implementation
704 53 STOCHASTIC THEORY AND STATISTICS
Chapter 54
Introduction
In this book part, we try to provide straightforward implementations of some of the algo-
rithms discussed in this book. The latest versions of the sources of the following programs,
including documentation, are available at http://goa-taa.cvs.sourceforge.net/
viewvc/goa-taa/Book/implementation/java/sources.zip [accessed 2010-10-02]. This
url directly obtains the sources, binaries, and documentation from the version management
system in which the complete book is located (see page 4 for details).
In this part of the book, we will not provide much discussion. The theoretical aspects
of optimization and the algorithm structures have already been outlined in length in the
previous parts. Here, we will just give the code with some documentation (with clickable
links) which glues the implementation to these aforementioned theoretical discussions.
The implementations and program sources given here have been developed on the y
during the course Practical Optimization Algorithm Design given by me at School of Software
Engineering in the Suzhou Institute of Advanced Studies of the University of Science and
Technology of China (USTC) in the winter semester 2010. The goal of this course was
to solve optimization problems interactively together with my students. Some of the code
presented here is the result of the suggestions of my students and a discussion which I
tried to coarsely steer but not to control. I thus like to thank my students here for their
participation and good suggestions.
Programming Language Java
TM
java version "1.6.0_21"
Java(TM)SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM)Client VM (build 17.0-b17, mixed mode,
sharing)
See http://java.sun.com/ [accessed 2010-09-30]
Developer Environment Eclipse
Build id: 20090920-1017
See http://www.eclipse.org/ [accessed 2010-09-30]
Operating System Microsoft
R
Windows Vista
R
Business
Version: 6.0 (Build 6002: Service Pack 2)
32 Bit Operating System
See http://windows.microsoft.com/ [accessed 2010-09-30]
Computer Toshiba Satego X200-21U
Intel
R
Core
R
2 Duo CPU T7500 @ 2.20GHz
4GiB RAM
See http://www.toshiba.com/ [accessed 2010-09-30]
Table 54.1: The precise developer environment used implementing and testing.
We use the Java programming language for the implementation, mainly because it is more
or less simple and because it is the language I am more or less uent in. In Table 54.1, we
706 54 INTRODUCTION
provide the exact description of the developer environment and testing machine used. This
may serve as a reference for verifying our implementation.
The code listed in this book is not complete. We merely provide those classes which
include the essential algorithms and skip most of the basic classes or helper classes. These
are available in the source code archive published together with this book. Here, they would
just waste space without contributing much to the understanding of the algorithms.
It is not clear how the Java language will develop, how it will be supported, or whether
the behavior of Java virtual machines remains the same or is the same as in the past.
Hence, we cannot guarantee for the functionality of our example in newer or older versions
of Java as well as in dierent execution environments. All the code in the following sections
is put under the GNU LESSER GENERAL PUBLIC LICENSE (Version 2.1, February 1999),
which you can nd in Chapter C on page 955.
Chapter 55
The Specication Package
In this package, we give interfaces providing the abstract specications of the basic elements
of the optimization processes given in Part I. We divide the interface specication of the
modules of optimization algorithms the objective functions from their actual implementa-
tions which will be provided Chapter 56.
Also, we provide interfaces to modules used in some specic algorithm patterns, such as
the temperature schedule in Simulated Annealing (see Listing 55.12 and Chapter 27) and
selection in Evolutionary Algorithms (see Listing 55.13 and Chapter 28).
55.1 General Denitions
In this section, we discuss general interface denitions dealing with the basic abstractions
and structural elements of optimization. They are based on the denitions given in Part I.
Listing 55.1: The basic interface for everything involved in optimization.
1 // Copyright (c) 2010 Thomas Weise (http://www.it-weise.de/, tweise@gmx.de)
2 // GNU LESSER GENERAL PUBLIC LICENSE (Version 2.1, February 1999)
3
4 package org.goataa.spec;
5
6 import java.io.Serializable;
7
8 /
**
9
*
A simple basic interface common to all modules of optimization
10
*
algorithms that we provide in this package. It ensures that all objects
11
*
are serializable, i.e., can be written to an ObjectOutputStream and read
12
*
from an ObjectInputStream, for instance. It furthermore provides some
13
*
simple methods for converting an object to representative strings.
14
*
15
*
@author Thomas Weise
16
*
/
17 public interface IOptimizationModule extends Serializable {
18
19 /
**
20
*
Get the name of the optimization module
21
*
22
*
@param longVersion
23
*
true if the long name should be returned, false if the short
24
*
name should be returned
25
*
@return the name of the optimization module
26
*
/
27 public abstract String getName(final boolean longVersion);
28
29 /
**
30
*
Get the full configuration which holds all the data necessary to
31
*
describe this object.
708 55 THE SPECIFICATION PACKAGE
32
*
33
*
@param longVersion
34
*
true if the long version should be returned, false if the
35
*
short version should be returned
36
*
@return the full configuration
37
*
/
38 public abstract String getConfiguration(final boolean longVersion);
39
40 /
**
41
*
Get the string representation of this object, i.e., the name and
42
*
configuration.
43
*
44
*
@param longVersion
45
*
true if the long version should be returned, false if the
46
*
short version should be returned
47
*
@return the string version of this object
48
*
/
49 public abstract String toString(final boolean longVersion);
50 }
55.1.1 Search Operations
A nullary search operations takes no arguments and just creates one new, random genotype
g G.
Listing 55.2: The interface for all nullary search operations.
1 // Copyright (c) 2010 Thomas Weise (http://www.it-weise.de/, tweise@gmx.de)
2 // GNU LESSER GENERAL PUBLIC LICENSE (Version 2.1, February 1999)
3
4 package org.goataa.spec;
5
6 import java.util.Random;
7
8 /
**
9
*
This interface provides the method for a nullary search operations.
10
*
Search operations are discussed in Section 4.2 on page 83.
11
*
12
*
@param <G>
13
*
the search space (genome, Section 4.1 on page 81)
14
*
@author Thomas Weise
15
*
/
16 public interface INullarySearchOperation<G> extends IOptimizationModule {
17
18 /
**
19
*
This is the nullary search operation. It takes no argument from the
20
*
search space and produces one new element in the search. This new
21
*
element is usually created randomly. For this reason, we pass a random
22
*
number generator in as parameter so we can use the same random number
23
*
generator in all parts of an optimization algorithm.
24
*
25
*
@param r
26
*
the random number generator
27
*
@return a new genotype (see Definition D4.2 on page 82)
28
*
/
29 public abstract G create(final Random r);
30
31 }
Unary search operations take one existing genotype g G and use it as basis to create a
new, similar one g
G.
Listing 55.3: The interface for all unary search operations.
1 // Copyright (c) 2010 Thomas Weise (http://www.it-weise.de/, tweise@gmx.de)
2 // GNU LESSER GENERAL PUBLIC LICENSE (Version 2.1, February 1999)
55.1. GENERAL DEFINITIONS 709
3
4 package org.goataa.spec;
5
6 import java.util.Random;
7
8 /
**
9
*
This interface provides the method for a unary search operations. Search
10
*
operations are discussed in Section 4.2 on page 83.
11
*
12
*
@param <G>
13
*
the search space (genome, Section 4.1 on page 81)
14
*
@author Thomas Weise
15
*
/
16 public interface IUnarySearchOperation<G> extends IOptimizationModule {
17
18 /
**
19
*
This is the unary search operation. It takes one existing genotype g
20
*
(see Definition D4.2 on page 82) from the genome and produces one new
21
*
element in the search space. This new element is usually a copy of te
22
*
existing element g which is slightly modified in a random manner. For
23
*
this purpose, we pass a random number generator in as parameter so we
24
*
can use the same random number generator in all parts of an
25
*
optimization algorithm.
26
*
27
*
@param g
28
*
the existing genotype in the search space from which a
29
*
slightly modified copy should be created
30
*
@param r
31
*
the random number generator
32
*
@return a new genotype
33
*
/
34 public abstract G mutate(final G g, final Random r);
35
36 }
Binary search operations take two existing genotype g
p1
, g
p2
G and use them as basis to
create a new genotype g
G.
Listing 55.5: The interface for all ternary search operations.
1 // Copyright (c) 2010 Thomas Weise (http://www.it-weise.de/, tweise@gmx.de)
2 // GNU LESSER GENERAL PUBLIC LICENSE (Version 2.1, February 1999)
3
4 package org.goataa.spec;
5
6 import java.util.Random;
7
8 /
**
9
*
A ternary search operation (see Definition D4.6 on page 83) such
10
*
as the recombination operation in Differential Evolution (see
11
*
Section 33.2 on page 419).
12
*
13
*
@param <G>
14
*
the search space (genome, Section 4.1 on page 81)
15
*
@author Thomas Weise
16
*
/
17 public interface ITernarySearchOperation<G> extends IOptimizationModule {
18
19 /
**
20
*
This is the ternary search operation. It takes three existing
21
*
genotypes p1, p2, and p3 (see Definition D4.2 on page 82) from the
22
*
genome and produces one new element in the search space.
23
*
24
*
@param p1
25
*
the first "parent" genotype
26
*
@param p2
27
*
the second "parent" genotype
28
*
@param p3
29
*
the third parent genotype
30
*
@param r
31
*
the random number generator
32
*
@return a new genotype
33
*
/
34 public abstract G ternaryRecombine(final G p1, final G p2, final G p3,
35 final Random r);
36
37 }
N-ary search operations take n existing genotype g
p1
, g
p2
, .., g
pn
G and use them as basis
to create a new genotype g
sangtaea/papers/ahn:06:cio.pdf
[accessed 2009-10-25]. Partly available at http://www-rcf.usc.edu/
sangtaea/papers/
ahn:06:cio_correct_eq.jpg and www-rcf.usc.edu/
sangtaea/papers/ahn:04:
iot,talk.pdf [accessed 2009-10-25]. 2004 IEEE NSS-MIC, October 21, 2004.
46. Alfred Vaino Aho, John Edward Hopcroft, and Jerey David Ullman. The Design and
Analysis of Computer Algorithms, Addison-Wesley Series in Computer Science and Informa-
tion Processing. Addison-Wesley Publishing Co. Inc.: Reading, MA, USA, international
ed edition, January 1974. isbn: 0-201-00029-6. Google Books ID: O4dGcAAACAAJ.
OCLC: 1147299, 252049725, 466284870, and 634120903. Library of Congress Con-
trol Number (LCCN): 74003995. GBV-Identication (PPN): 020989148, 027429121,
and 132190680. LC Classication: QA76.6 .A36.
47. J. H. Ahrens and U. Dieter. Computer Methods for Sampling from Gamma, Beta, Poisson
and Bionomial Distributions. Computing, 12(3):223246, September 10, 1974, Springer Verlag
GmbH: Vienna, Austria. doi: 10.1007/BF02293108.
48. Marco Aiello, Christian Platzer, Florian Rosenberg, Huy Tran, Martin Vasko, and
Schahram Dustdar. Web Service Indexing for Ecient Retrieval and Composition. In
CEC/EEE06 [2967], pages 424426, 2006. doi: 10.1109/CEC-EEE.2006.96. Fully avail-
able at https://berlin.vitalab.tuwien.ac.at/
florian/papers/cec2006.pdf
[accessed 2007-10-25]. INSPEC Accession Number: 9199703. See also [49, 50, 318, 761].
49. Marco Aiello, Nico van Benthem, and Elie el Khoury. Visualizing Compositions of Services
from Large Repositories. In CEC/EEE08 [1346], pages 359362, 2008. doi: 10.1109/CE-
CandEEE.2008.149. INSPEC Accession Number: 10475111. See also [48, 50, 204, 761].
50. Marco Aiello, Elie el Khoury, Alexander Lazovik, and Patrick Ratelband. Opti-
mal QoSAware Web Service Composition. In CEC09 [1245], pages 491494, 2009.
doi: 10.1109/CEC.2009.63. INSPEC Accession Number: 10839135. See also [48, 49, 761, 1571].
51. Jan Aikins and Howard Shrobe, editors. Proceedings of the The Seventh Conference on In-
novative Applications of Articial Intelligence (IAAI95), August 2125, 1995, Montreal,
QC, Canada. AAAI Press: Menlo Park, CA, USA. isbn: 0-929280-81-4. Partly
available at http://www.aaai.org/Conferences/IAAI/iaai95.php [accessed 2007-09-06].
OCLC: 33813525, 633974570, and 635878104. GBV-Identication (PPN): 212259687.
52. P. Aiyarak, A. S. Saket, and Mark C. Sinclair. Genetic Programming Approaches
for Minimum Cost Topology Optimisation of Optical Telecommunication Networks. In
GALESIA97 [3056], pages 415420, 1997. doi: 10.1049/cp:19971216. Fully available
at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/aiyarak_1997_GPtootn.
html [accessed 2009-09-01]. CiteSeer
x
: 10.1.1.55.6656. See also [2498].
53. M. Ali Akbar and Muddassar Farooq. Application of Evolutionary Algorithms in De-
tection of SIP based Flooding Attacks. In GECCO09-I [2342], pages 14191426,
2009. doi: 10.1145/1569901.1570092. Fully available at http://nexginrc.org/papers/
gecco09-ali.pdf [accessed 2009-09-03].
REFERENCES 965
54. Rama Akkiraju, Biplav Srivastava, Anca Ivan, Richard Goodwin, and Tanveer Syeda-
Mahmood. Semantic Matching to Achieve Web Service Discovery and Composition. In
CEC/EEE06 [2967], pages 445447, 2006. doi: 10.1109/CEC-EEE.2006.78. INSPEC Acces-
sion Number: 9199704. See also [318].
55. Selim G. Akl, Cristian S. Calude, Michael J. Dinneen, Grzegorz Rozenberg, and Todd Ware-
ham, editors. Proceedings of the 6th International Conference on Unconventional Compu-
tation (UC07), August 1317, 2007, Kingston, Canada, volume 4618/2007 in Theoretical
Computer Science and General Issues (SL 1), Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 978-3-540-73553-3.
56. Jarmo Tapani Alander. An Indexed Bibliography of Genetic Algorithms in Signal and Im-
age Processing. Technical Report 94-1-SIGNAL, University of Vaasa: Finland, May 18,
1998. Fully available at ftp://ftp.uwasa.fi/cs/report94-1/gaSIGNALbib.ps.Z
and http://citeseer.ist.psu.edu/319835.html [accessed 2008-05-18].
57. Jarmo Tapani Alander, editor. Proceedings of the 1st Finnish Workshop on Genetic Algo-
rithms and Their Applications (1FWGA), November 45, 1992, Helsinki University of Tech-
nology: Espoo, Finland. Helsinki University of Technology, Department of Computer Science:
Helsinki, Finland. Technical Report TKO-A30, partly in Finnish, published 1993.
58. Jarmo Tapani Alander, editor. Proceedings of the Second Finnish Workshop on Genetic Al-
gorithms and Their Applications (2FWGA), March 1618, 1994, Vaasa, Finland. University
of Vaasa, Department of Information Technology and Production Economics: Vaasa, Fin-
land. isbn: 951-683-526-0. Fully available at ftp://ftp.uwasa.fi/cs/report94-2
[accessed 2008-07-24]. issn: 1237-7589. Technical Report 94-2.
59. Jarmo Tapani Alander, editor. Proceedings of the First Nordic Workshop on Genetic Algo-
rithms (The Third Finnish Workshop on Genetic Algorithms, 3FWGA) (1NWGA), June 9
13, 1995, Vaasa, Finland, 2 in Proceedings of the University of Vaasa. University of Vaasa,
Department of Information Technology and Production Economics: Vaasa, Finland. Fully
available at ftp://ftp.uwasa.fi/cs/1NWGA [accessed 2008-07-24]. Technical Report 95-1.
60. Jarmo Tapani Alander, editor. Proceedings of the Second Nordic Workshop on Genetic Al-
gorithms (2NWGA), August 1923, 1996, Vaasa, Finland, volume 13 in Proceedings of the
University of Vaasa. Fully available at ftp://ftp.uwasa.fi/cs/2NWGA [accessed 2008-07-24].
In collaboration with the Finnish Articial Intelligence Society.
61. Jarmo Tapani Alander, editor. Proceedings of the Third Nordic Workshop on Genetic Al-
gorithms (3NWGA), August 2022, 1997, Helsinki, Finland. Finnish Articial Intelligence
Society (FAIS): Vantaa, Finland. Fully available at ftp://ftp.uwasa.fi/cs/3NWGA [ac-
cessed 2008-07-24].
62. Jarmo Tapani Alander, editor. Proceedings of the Fourth Nordic Workshop on Genetic Al-
gorithms (4NWGA), July 2731, 1998, Norwegian University of Science and Technology:
Trondheim, Norway. Finnish Articial Intelligence Society (FAIS): Vantaa, Finland. seem-
ingly didnt take place?
63. Enrique Alba Torres and J. Francisco Chicano. Evolutionary Algorithms in Telecommunica-
tions. In MELECON06 [2388], pages 795798, 2006. doi: 10.1109/MELCON.2006.1653218.
Fully available at http://dea.brunel.ac.uk/ugprojects/docs/melecon06.pdf [ac-
cessed 2008-08-01].
64. Enrique Alba Torres and Bernabe Dorronsoro Daz. Solving the Vehicle Routing Problem by
Using Cellular Genetic Algorithms. In EvoCOP04 [1115], pages 1120, 2004. Fully available
at http://www.lcc.uma.es/
eat/./pdf/
cacic02.pdf [accessed 2008-08-01]. CiteSeer
x
: 10.1.1.8.4073.
966 REFERENCES
68. Enrique Alba Torres, Jose Garca-Nieto, Javid Taheri, and Albert Zomaya. New Research
in Nature Inspired Algorithms for Mobility Management in GSM Networks. In EvoWork-
shops08 [1051], pages 110, 2008. doi: 10.1007/978-3-540-78761-7 1.
69. Rudolf F. Albrecht, Colin R. Reeves, and Nigel C. Steele, editors. Proceedings of
Articial Neural Nets and Genetic Algorithms (ANNGA93), April 1416, 1993, Inns-
bruck, Austria. Springer New York: New York, NY, USA. isbn: 0-387-82459-6 and
3-211-82459-6. Google Books ID: ZYkAQAAIAAJ. OCLC: 27936988, 300357118,
443980789, 611581837, and 633734458. GBV-Identication (PPN): 04374902X and
126104662.
70. John Aldrich. R.A. Fisher and the Making of Maximum Likelihood 1912-1922. Discussion Pa-
per Series In Economics And Econometrics, Statistical Science, 3(12):162176, January 1995,
Institute of Mathematical Statistics, University of Southampton. doi: 10.1214/ss/1030037906.
Fully available at http://projecteuclid.org/euclid.ss/1030037906 [accessed 2007-09-
15]. Zentralblatt MATH identier: 0955.62525. Mathematical Reviews number (Math-
SciNet): 1617519.
71. Christos E. Alexakos, Konstantinos C. Giotopoulos, Eleni J. Thermogianni, Grigorios N.
Beligiannis, and Spiridon D. Likothanassis. Integrating E-learning Environments with Com-
putational Intelligence Assessment Agents. Proceedings of World Academy of Science, En-
gineering and Technology, 13:233239, May 2006. Fully available at http://www.waset.
org/pwaset/v13/v13-45.pdf [accessed 2009-03-31].
72. M. Montaz Ali, Charoenchai Khompatraporn, and Zelda B. Zabinsky. A Numerical Eval-
uation of Several Stochastic Algorithms on Selected Continuous Global Optimization Test
Problems. Journal of Global Optimization, 31(4):635672, April 2005, Springer Netherlands:
Dordrecht, Netherlands. doi: 10.1007/s10898-004-9972-2.
73. Eugene L. Allgower and Kurt Georg, editors. Computational Solution of Nonlinear Systems
of Equations Proceedings of the 1988 SIAM-AMS Summer Seminar on Computational So-
lution of Nonlinear Systems of Equations, July 1829, 1988, Colorado State University: Fort
Collins, CO, USA, volume 26 in Lectures in Applied Mathematics (LAM). American Math-
ematical Society (AMS) Bookstore: Providence, RI, USA. isbn: 0-8218-1131-2. Google
Books ID: UAabWwXBifoC. OCLC: 20992934, 243444170, 311687125, and 423088702.
Published in 1990.
74. Jean-Marc Alliot, Evelyne Lutton, and Marc Schoenauer, editors. European Conference on
Articial Evolution (AE94), September 2023, 1994, ENAC: Toulouse, France. Cepadu`es:
Toulouse, France. isbn: 2854284119. Google Books ID: AhBWAAAACAAJ. OCLC: 34264284
and 258151166. Published in January 1995.
75. Jean-Marc Alliot, Evelyne Lutton, Edmund M. A. Ronald, Marc Schoenauer, and Dominique
Snyers, editors. Selected Papers of the European Conference on Articial Evolution (AE95),
September 46, 1995, Brest, France, volume 1063 in Lecture Notes in Computer Science
(LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-61108-8. Published in
1996.
76. Riyad Alshammari, Peter I. Lichodzijewski, Malcom Ian Heywood, and A. Nur Zincir-
Heywood. Classifying SSH Encrypted Trac with Minimum Packet Header Fea-
tures using Genetic Programming. In GECCO09-II [2343], pages 25392546, 2009.
doi: 10.1145/1570256.1570358.
77. Lee Altenberg. The Schema Theorem and Prices Theorem. In FOGA 3 [2932], pages 23
49, 1994. Fully available at http://citeseer.ist.psu.edu/old/700230.html and
http://dynamics.org/Altenberg/FILES/LeeSTPT.pdf [accessed 2009-07-10].
78. Lee Altenberg. Genome Growth and the Evolution of the Genotype-Phenotype Map. In
Evolution and Biocomputation Computational Models of Evolution [206]. Springer-Verlag
GmbH: Berlin, Germany, 1995. CiteSeer
x
: 10.1.1.39.3876. Corrections and revisions,
October 1997.
79. Lee Altenberg. NK Fitness Landscapes. In Handbook of Evolutionary Computation [171],
Chapter B2.7.2. Oxford University Press, Inc.: New York, NY, USA, Institute of Physics
Publishing Ltd. (IOP): Dirac House, Temple Back, Bristol, UK, and CRC Press, Inc.:
Boca Raton, FL, USA, 1997. Fully available at http://dynamics.org/Altenberg/
FILES/LeeNKFL.pdf and http://www.cmi.univ-mrs.fr/
pardoux/LeeNKFL.pdf
[accessed 2010-08-26]. CiteSeer
x
: 10.1.1.79.1351.
80. Lee Altenberg. Fitness Distance Correlation Analysis: An Instructive Counterexam-
REFERENCES 967
ple. In ICGA97 [166], pages 5764, 1997. Fully available at http://dynamics.
org/Altenberg/PAPERS/FDCAAIC/ and http://www.cs.uml.edu/
giam/91.510/
Papers/Altenberg1997.pdf [accessed 2008-07-20].
81. Guilherme Bastos Alvarenga and Geraldo Robson Mateus. Hierarchical Tournament Selection
Genetic Algorithm for the Vehicle Routing Problem with Time Windows. In HIS04 [1421],
pages 410415, 2004. doi: 10.1109/ICHIS.2004.53. INSPEC Accession Number: 8470883.
82. Shun-Ichi Amari, editor. Proceedings of the IEEE-INNS-ENNS International Joint
Conference on Neural Networks (IJCNN00), July 2427, 2000, Como, Italy. IEEE
Computer Society: Piscataway, NJ, USA. isbn: 0-7695-0619-4 and 0780365410.
Google Books ID: JAlWAAAAMAAJ, i7RVAAAAMAAJ, iLhVAAAAMAAJ, and tglWAAAAMAAJ.
OCLC: 49364554, 59509805, and 423975593.
83. Anita Amberg, Wolfgang Domschke, and Stefan Vo. Multiple Center Capacitated Arc
Routing Problems: A Tabu Search Algorithm using Capacitated Trees. European Journal
of Operational Research (EJOR), 124(2):360376, July 16, 2000, Elsevier Science Publish-
ers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic Publishers Ltd.:
Amsterdam, The Netherlands. doi: 10.1016/S0377-2217(99)00170-8.
84. 43rd AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Con-
ference and Exhibit, April 2225, 2002, Denver, CO, USA. American Institute of Aeronautics
and Astronautics (AIAA): Reston, VA, USA.
85. Proceedings of OMAE04, 23rd International Conference on Oshore Mechanics and Arc-
tic Engineering, June 2025, 2004, Vancouver, BC, Canada. American Society of Me-
chanical Engineers (ASME): New York, NY, USA. isbn: 0791837386, 0-7918-3743-2,
0-7918-3744-0, and 0-7918-3745-9. Order No.: I706CD. LC Classication: TC1505
.I566 2004. Three volumes.
86. Ciro Amitrano, Luca Peliti, and M. Saber. Population Dynamics in a Spin-Glass Model of
Chemical Evolution. Journal of Molecular Evolution, 29(6):513525, December 1989, Springer
New York: New York, NY, USA. doi: 10.1007/BF02602923.
87. Heni Ben Amor and Achim Rettinger. Intelligent Exploration for Genetic Algorithms: Using
Self-Organizing Maps in Evolutionary Computation. In GECCO05 [304], pages 15311538,
2005. doi: 10.1145/1068009.1068250. See also [88].
88. Heni Ben Amor and Achim Rettinger. Intelligent Exploration for Genetic Algorithms
Using Self-Organizing Maps in Evolutionary Computation. Fachberichte Informatik 1,
Universitat Koblenz-Landau, Institut f ur Informatik: Koblenz, Rhineland-Palatinate, Ger-
many, February 4, 2005. Fully available at http://www.uni-koblenz-landau.de/
koblenz/fb4/publications/fachberichte/fb2005/rr-1-2005.pdf [accessed 2011-08-
06]. issn: 1860-4471. See also [87].
89. Michele Amoretti. A Framework for Evolutionary Peer-to-Peer Overlay Schemes. In
EvoWorkshops09 [1052], pages 6170, 2009. doi: 10.1007/978-3-642-01129-0 7.
90. IBM PhD Student Symposium at ICSOC 2005, December 2005, Amsterdam, The Nether-
lands.
91. Proceedings of the 2011 International Conference on Systems, Man, and Cybernetics
(SCM11), October 912, 2011, Anchorage, AK, USA.
92. Edgar Anderson. The Irises of the Gaspe Peninsula. Bulletin of the American Iris Society,
59:25, 1935, American Iris Society (AIS): Philadelphia, PA, USA. See also [305, 930].
93. Johan Anderson. A Survey of Multiobjective Optimization in Engineering Design. Techni-
cal Report LiTH-IKP-R-1097, Link oping University, Department of Mechanical Engineer-
ing: Link oping, Sweden, 2000. Fully available at http://www.lania.mx/
ccoello/
andersson00.pdf.gz [accessed 2009-06-22]. CiteSeer
x
: 10.1.1.8.5638.
94. Philip Warren Anderson. Suggested Model for Prebiotic Evolution: The Use of Chaos. Pro-
ceedings of the National Academy of Science of the United States of America (PNAS), 80
(11):33863390, June 1, 1983, National Academy of Sciences: Washington, DC, USA. Fully
available at http://www.pnas.org/cgi/reprint/80/11/3386.pdf and http://
www.pubmedcentral.nih.gov/articlerender.fcgi?artid=394048 [accessed 2008-07-
02]. PubMed ID: 6190177.
95. David Andre. Evolution of Mapmaking Ability: Strategies for the Evolution of Learning,
Planning, and Memory using Genetic Programming. In CEC94 [1891], pages 250255,
volume 1, 1994. See also [96].
96. David Andre. The Evolution of Agents that Build Mental Models and Create Simple Plans
968 REFERENCES
Using Genetic Programming. In ICGA95 [883], pages 248255, 1995. See also [95].
97. David Andre. Learning and Upgrading Rules for an Optical Character Recognition System
Using Genetic Programming. In Handbook of Evolutionary Computation [171]. Oxford Uni-
versity Press, Inc.: New York, NY, USA, Institute of Physics Publishing Ltd. (IOP): Dirac
House, Temple Back, Bristol, UK, and CRC Press, Inc.: Boca Raton, FL, USA, 1997.
98. David Andre and Astro Teller. Evolving Team Darwin United. In RoboCup-98: Robot
Soccer World Cup II [129], pages 346351, 1998. Fully available at http://www.
cs.bham.ac.uk/
wbl/biblio/gp-html/
Aversano_2006_IJCSSE.html and http://www.rcost.unisannio.it/mdipenta/
papers/csse06.pdf [accessed 2011-01-19]. CiteSeer
x
: 10.1.1.145.843.
151. Erel Avineri, Mario Koppen, Keshav Dahal, Yos Sunitiyoso, and Rajkumar Roy, editors. Ap-
plications of Soft Computing: 12th Online World Conference on Soft Computing in Industrial
Applications (WSC12), October 1626, 2007, volume 52 in Advances in Intelligent and Soft
972 REFERENCES
Computing. Springer-Verlag: Berlin/Heidelberg. doi: 10.1007/978-3-540-88079-0. Library of
Congress Control Number (LCCN): 2008935493.
152. Mordecai Avriel. Nonlinear Programming: Analysis and Methods. Dover Publica-
tions: Mineola, NY, USA, September 16, 2003. isbn: 0-486-43227-0. Google Books
ID: 815RAAAAMAAJ and byF4Xb1QbvMC.
153. Proceedings of the 3rd International Conference on Bio-Inspired Models of Network, Informa-
tion, and Computing Systems (BIONETICS08), November 2528, 2008, Awaji Yumebutai
International Conference Center: Awaji City, Hyogo, Japan.
154. Mehmet E. Aydin, Jun Yang, and Jie Zhang. A Comparative Investigation on Heuristic
Optimization of WCDMA Radio Networks. In EvoWorkshops07 [1050], pages 111120,
2007. doi: 10.1007/978-3-540-71805-5 12.
155. Mehmet E. Aydin, Raymond S. K. Kwan, Cyril Leung, and Jie Zhang. Multiuser Scheduling
in HSDPA with Particle Swarm Optimization. In EvoWorkshops09 [1052], pages 7180,
2009. doi: 10.1007/978-3-642-01129-0 8.
156. Antonia Azzini, Matteo De Felice, Sandro Meloni, and Andrea G. B. Tettamanzi. Soft
Computing Techniques for Internet Backbone Trac Anomaly Detection. In EvoWork-
shops09 [1052], pages 99104, 2009. doi: 10.1007/978-3-642-01129-0 12.
B
157. Sara Baase and Allen Van Gelder. Computer Algorithms: Introduction to Design and Analy-
sis. Addison-Wesley Longman Publishing Co., Inc.: Boston, MA, USA, 3rd edition, Novem-
ber 1999. isbn: 0-201-61244-5. Google Books ID: GInCQgAACAAJ. OCLC: 40813345 and
474499890. Library of Congress Control Number (LCCN): 99014185. GBV-Identication
(PPN): 301465576 and 314912401. LC Classication: QA76.9.A43 B33 2000.
158. Jaume Bacardit i Pe narroya. Pittsburgh Genetics-Based Machine Learning in the Data Min-
ing Era: Representations, Generalization, and Run-time. PhD thesis, Ramon Llull Univer-
sity: Barcelona, Catalonia, Spain, October 8, 2004, Josep Maria Garrell i Guiu, Advisor.
Fully available at http://www.cs.nott.ac.uk/
jqb/publications/thesis.pdf [ac-
cessed 2007-09-12].
159. Jaume Bacardit i Pe narroya. Analysis of the Initialization Stage of a Pittsburgh
Approach Learning Classier System. In GECCO05 [304], pages 18431850, 2005.
doi: 10.1145/1068009.1068321. Fully available at http://www.cs.nott.ac.uk/
jqb/
publications/gecco2005.pdf [accessed 2007-09-12].
160. Jaume Bacardit i Pe narroya and Martin V. Butz. Data Mining in Learning Classi-
er Systems: Comparing XCS with GAssist. In IWLCS 03-05 [1589], pages 282290,
2007. doi: 10.1007/978-3-540-71231-2 19. Fully available at http://www.illigal.
uiuc.edu/pub/papers/IlliGALs/2004030.pdf and http://www.psychologie.
uni-wuerzburg.de/IWLCS/abstracts/IWLCS04-Bacardit_Butz.pdf [accessed 2010-07-
02].
161. Jaume Bacardit i Pe narroya and Natalio Krasnogor. Smart Crossover Operator with Multiple
Parents for a Pittsburgh Learning Classier System. In GECCO06 [1516], pages 14411448,
2006. doi: 10.1145/1143997.1144235. Fully available at http://www.cs.nott.ac.uk/
verel/supports/
articles/baluja95removing.pdf and https://eprints.kfupm.edu.sa/62112/
1/62112.pdf [accessed 2009-08-20]. CiteSeer
x
: 10.1.1.44.5424. See also [195].
197. Robert Balzer, editor. Proceedings of the 1st Annual National Conference on Articial Intel-
ligence (AAAI80), August 1820, 1980, Stanford University: Stanford, CA, USA. American
Association for Articial Intelligence: Los Altos, CA, USA and John W. Kaufmann Inc.:
Washington, DC, USA. isbn: 0-262-51050-2. Partly available at http://www.aaai.
org/Conferences/AAAI/aaai80.php [accessed 2007-09-06].
198. Carlos A. Bana e Costa, editor. Selected Readings from the Third International Summer
School on Multicriteria Decision Aid: Methods, Applications, and Software (MCDA90),
July 2327, 1998, Monte Estoril, Lisbon, Portugal. Springer-Verlag GmbH: Berlin, Ger-
many. isbn: 0387529500 and 3540529500. Google Books ID: F2yfGAAACAAJ. Library of
Congress Control Number (LCCN): 90010313. LC Classication: T58.62 .R43 198. Pub-
lished in 1990.
199. Saswatee Banerjee and Lakshminarayan N. Hazra. Thin Lens Design of Cooke Triplet
Lenses: Application of a Global Optimization Technique. In Novel Optical Systems and
Large-Aperture Imaging [259], pages 175183, 1998. doi: 10.1117/12.332474.
200. Proceedings of the 10th IEEE International Conference on Cognitive Informatics & Cogni-
tive Computing (ICCI*CC11), August 1820, 2011, Ban, AB, Canada. Partly available
at http://www.ucalgary.ca/icci_cc2011/ [accessed 2011-02-28].
201. Jrgen Bang-Jensen, Gregory Gutin, and Anders Yeo. When the Greedy Algorithm
Fails. Discrete Optimization, 1(2):121127, November 15, 2004, Elsevier Science Publish-
ers B.V.: Essex, UK. doi: 10.1016/j.disopt.2004.03.007. Fully available at http://www.
optimization-online.org/DB_FILE/2003/03/622.pdf.
202. Balazs Banhelyi, Marco Biazzini, Alberto Montresor, and Mark Jelasity. Peer-to-Peer Op-
timization in Large Unreliable Networks with Branch-and-Bound and Particle Swarms. In
EvoWorkshops09 [1052], pages 8792, 2009. doi: 10.1007/978-3-642-01129-0 10.
203. David Banks, Leanna House, Frederick R. McMorris, Phipps Arabie, and Wolfgang Gaul,
editors. Classication, Clustering, and Data Mining Applications: Proceedings of the Meeting
of the International Federation of Classication Societies (IFCS), July 1518, 2004, Studies in
Classication, Data Analysis, and Knowledge Organization. Springer New York: New York,
NY, USA. isbn: 3540220143.
204. Ajay Bansal, M. Brian Blake, Srividya Kona, Steen Bleul, Thomas Weise, and Michael C.
J ager. WSC-08: Continuing the Web Services Challenge. In CEC/EEE08 [1346], pages
351354, 2008. doi: 10.1109/CECandEEE.2008.146. Fully available at http://www.
it-weise.de/documents/files/BBKBWJ2008WSC08CTWSC.pdf. INSPEC Accession
Number: 10475109. Ei ID: 20091512027446. IDS (SCI): BJF01.
205. Wolfgang Banzhaf. Genetic Programming for Pedestrians. In ICGA93 [969], pages 1721,
976 REFERENCES
1993. Fully available at ftp://ftp.cs.cuhk.hk/pub/EC/GP/papers/pedes93.
ps.gz, http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/banzhaf_mrl.html,
and http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/ftp.io.com/papers/
GenProg_forPed.ps.Z [accessed 2010-08-18]. CiteSeer
x
: 10.1.1.38.1144. Also: MRL
Technical Report 93-03.
206. Wolfgang Banzhaf and Frank H. Eeckman, editors. Evolution and Biocomputation
Computational Models of Evolution, volume 899/1995 in Lecture Notes in Computer Sci-
ence (LNCS). Springer-Verlag GmbH: Berlin, Germany, kindle edition, April 13, 1995.
doi: 10.1007/3-540-59046-3. isbn: 0-387-59046-3 and 3-540-59046-3. Google Books
ID: dZf-yrmSZPkC. asin: B000V1DAP0. Revised papers from the Evolution as a Compu-
tational Process workshop held in July 1992 in Monterey, CA, USA.
207. Wolfgang Banzhaf and Christian W. G. Lasarczyk. Genetic Programming of an Algorith-
mic Chemistry. In GPTP04 [2089], pages 175190, 2004. doi: 10.1007/0-387-23254-0 11.
Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/banzhaf_
2004_GPTP.html and http://www.cs.mun.ca/
banzhaf/papers/algochem.pdf [ac-
cessed 2010-08-01]. CiteSeer
x
: 10.1.1.94.6816.
208. Wolfgang Banzhaf and Colin R. Reeves, editors. Proceedings of the Fifth Workshop on Foun-
dations of Genetic Algorithms (FOGA98), July 2225, 1998, Madison, WI, USA. Morgan
Kaufmann: San Mateo, CA, USA. isbn: 1-55860-559-2. Published April 2, 1991.
209. Wolfgang Banzhaf, Peter Nordin, Robert E. Keller, and Frank D. Francone. Genetic Pro-
gramming: An Introduction On the Automatic Evolution of Computer Programs and Its Ap-
plications. Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA and dpunkt.verlag:
Heidelberg, Germany, November 30, 1997. isbn: 1-558-60510-X and 3-920993-58-6.
Google Books ID: 1697qefFdtIC. OCLC: 38067741, 247738380, 468426941, and
474902629. Library of Congress Control Number (LCCN): 97051603. GBV-Identication
(PPN): 238379108, 279969872, and 307343650. LC Classication: QA76.623 .G46 1998.
210. Wolfgang Banzhaf, Riccardo Poli, Marc Schoenauer, and Terence Claus Fogarty, editors. Pro-
ceedings of the First European Workshop on Genetic Programming (EuroGP98), April 14
15, 1998, Paris, France, volume 1391/1998 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/BFb0055923. isbn: 3-540-64360-5.
See also [2195].
211. Wolfgang Banzhaf, Jason M. Daida,
Agoston E. Eiben, Max H. Garzon, Vasant Honavar,
Mark J. Jakiela, and Robert Elliott Smith, editors. Proceedings of the Genetic and Evolu-
tionary Computation Conference (GECCO99), July 1317, 1999, Orlando, FL, USA. Mor-
gan Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-611-4. Google
Books ID: -1vTAAAACAAJ and hZlQAAAAMAAJ. OCLC: 42918215, 43044489, 59333111,
and 316858650. The 1999 Genetic and Evolutionary Computational Conference (GECCO-
99) combined the longest running conferences in evolutionary computation (ICGA) and the
worlds two largest EC conferences (GP and ICGA) to create a unique opportunity to col-
lect the best in research in this growing eld of computer science and engineering. See also
[2093, 2502].
212. Wolfgang Banzhaf, Guillaume Beslon, Steen Christensen, James A. Foster, Fran cois Kep`es,
Virginie Lefort, Julian Francis Miller, Miroslav Radman, and Jeremy J. Ramsden. From
Articial Evolution to Computational Evolution: A Research Agenda. Nature Reviews Ge-
netics, 7(9):729735, September 2006, Nature Publishing Group (NPG): Houndmills, Bas-
ingstoke, Hampshire, UK. doi: 10.1038/nrg1921. Fully available at http://www.cs.mun.
ca/
battiti/archive/
reactive-tabu-search.ps.gz [accessed 2007-09-15].
233. Andreas Bauer and Wolfgang Lehner. On Solving the View Selection Problem in
Distributed Data Warehouse Architectures. In SSDBM03 [1368], pages 4351, 2003.
doi: 10.1109/SSDM.2003.1214953. INSPEC Accession Number: 7804318.
234. Helmut Baumgarten, editor. Das Beste Der Logistik: Innovationen, Strategien, Umsetzun-
gen. Springer-Verlag GmbH: Berlin, Germany and Bundesvereinigung Logistik e.V. (BVL):
Bremen, Germany, 2008. isbn: 3-540-78404-7. Google Books ID: di5g8FY5X YC.
235. James C. Bean. Genetics and Random Keys for Sequencing and Optimization. Technical
Report 92-43, University of Michigan, Department of Industrial and Operations Engineering:
Ann Arbor, MI, USA, June 1992December 17, 1993. Fully available at http://deepblue.
lib.umich.edu/bitstream/2027.42/3481/5/ban1152.0001.001.pdf [accessed 2010-
11-22]. See also [236].
236. James C. Bean. Genetic Algorithms and Random Keys for Sequencing and Optimization.
ORSA Journal on Computing, 6(2):154160, Spring 1994, Operations Research Society of
America (ORSA). doi: 10.1287/ijoc.6.2.154. See also [235].
237. James C. Bean and Atidel Ben Hadj-Alouane. A Dual Genetic Algorithm for Bounded Integer
Programs. Technical Report 92-53, University of Michigan, Department of Industrial and
Operations Engineering: Ann Arbor, MI, USA, October 1992. Fully available at http://
hdl.handle.net/2027.42/3480 [accessed 2008-11-15]. Revised in June 1993.
238. David Beasley, David R. Bull, and Ralph R. Martin. An Overview of Genetic Algorithms:
Part 1. Fundamentals. University Computing, 15(2):5869, 1993, Inter-University Commit-
tee on Computing: Cambridge, MA, USA. Fully available at http://ralph.cs.cf.ac.
uk/papers/GAs/ga_overview1.pdf [accessed 2010-07-23]. CiteSeer
x
: 10.1.1.44.3757 and
10.1.1.61.3619. See also [239].
239. David Beasley, David R. Bull, and Ralph R. Martin. An Overview of Genetic Algorithms:
Part 2, Research Topics. University Computing, 15(4):170181, 1993, Inter-University
Committee on Computing: Cambridge, MA, USA. Fully available at http://proton.
tau.ac.il/
marek/genetic_algorithms_beasley93_overview_partII.pdf and
http://ralph.cs.cf.ac.uk/papers/GAs/ga_overview2.pdf [accessed 2010-07-23].
CiteSeer
x
: 10.1.1.23.8293 and 10.1.1.61.3643. See also [238].
240. David Beasley, David R. Bull, and Ralph R. Martin. Reducing Epistasis in Combinatorial
Problems by Expansive Coding. In ICGA93 [969], pages 400407, 1993. Fully available
at http://ralph.cs.cf.ac.uk/papers/GAs/expansive_coding.pdf [accessed 2010-07-
29]. CiteSeer
x
: 10.1.1.23.1953.
241. John Edward Beasley. OR-Library. Brunel University, Department of Mathematical Sciences:
Uxbridge, Middlesex, UK, June 1990. Fully available at http://people.brunel.ac.uk/
barth/EE242/
clustering_survey.pdf [accessed 2007-08-27].
278. 17th European Conference on Machine Learning (ECML06), September 1822, 2006, Berlin,
Germany.
279. Ester Bernad o, Xavier Llor` a, and Josep Maria Garrell i Guiu. XCS and GALE: A Com-
parative Study of Two Learning Classier Systems with Six Other Learning Algorithms on
Classication Tasks. In IWLCS01 [1679], pages 115132, 2001. doi: 10.1007/3-540-48104-4 8.
CiteSeer
x
: 10.1.1.1.4467.
280. Gerard Berry, Hubert Comon, and Alain Finkel, editors. Computer Aided Verica-
tion Proceedings of the 13th International Conference on Computer Aided Verication
(CAV01), July 1822, 2001, Palais de la Mutualite: Paris, France, volume 2102/2001
in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/3-540-44585-4. isbn: 3-540-42345-1. Google Books ID: 1llkK-8I7YYC.
OCLC: 47282220, 47282220, 47675546, 48729917, 61847966, 67015253, 76232298,
243488788, and 248623804.
281. Michael J. A. Berry and Gordon S. Lino. Mastering Data Mining: The Art and Science
of Customer Relationship Management. Wiley Interscience: Chichester, West Sussex, UK,
December 1999. isbn: 0471331236. Google Books ID: QeVJPwAACAAJ. Library of Congress
Control Number (LCCN): 00265296. GBV-Identication (PPN): 311887082. LC Classi-
cation: HF5415.125 .B47 2000.
282. Hugues Bersini and Jorge Carneiro, editors. Proceedings of the 5th International Conference
on Articial Immune Systems (ICARIS06), September 46, 2006, Instituto Gulbenkian de
Ciencia: Oeiras, Portugal, volume 4163 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-37749-2.
283. Elisa Bertino and Silvana Castano, editors. Atti del Settimo Convegno Nazionale Sistemi
Evoluti per Basi di Dati, June 2325, 1999, Villa Olmo, Como, Italy.
284. Alberto Bertoni and Marco Dorigo. Implicit Parallelism in Genetic Algorithms. Arti-
cial Intelligence, 61(2):307314, June 1993, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/0004-3702(93)90071-I. See also [285].
285. Alberto Bertoni and Marco Dorigo. Implicit Parallelism in Genetic Algorithms. Tech-
nical Report TR-93-001-Revised, Universita Statale di Milano, Dipartimento di Scienze
dellInformazione: Milano, Italy and International Computer Science Institute (ICSI), Uni-
versity of California: Berkeley, CA, USA, April 1993. Fully available at ftp://ftp.
icsi.berkeley.edu/pub/techreports/1993/tr-93-001.ps.gz and http://ftp.
icsi.berkeley.edu/ftp/pub/techreports/1993/tr-93-001.pdf [accessed 2010-07-30].
CiteSeer
x
: 10.1.1.34.3275. See also [284].
286. Patricia Besson, Jean-Marc Vesin, Vlad Popovici, and Murat Kunt. Dierential Evolu-
tion Applied to a Multimodal Information Theoretic Optimization Problem. In EvoWork-
shops06 [2341], pages 505509, 2006. doi: 10.1007/11732242 46.
287. Albert Donally Bethke. Genetic Algorithms as Function Optimizers. In CSC78 [774],
1978. Fully available at http://hdl.handle.net/2027.42/3572 [accessed 2010-07-23].
ID: UMR0341. See also [288].
288. Albert Donally Bethke. Genetic Algorithms as Function Optimizers. PhD thesis, University
of Michigan: Ann Arbor, MI, USA, 1980. Order No.: AAI8106101. University Microlms
No.: 8106101. National Science Foundation Grant No. MCS76-04297. See also [287, 289].
289. Albert Donally Bethke. Genetic Algorithms as Function Optimizers. Dissertation Abstracts
International (DAI), 41(9):3503B, 1980, ProQuest: Ann Arbor, MI, USA. See also [288].
982 REFERENCES
290. Pete Bettinger and Jianping Zhu. A New Heuristic Method for Solving Spatially Constrained
Forest Planning Problems based on Mitigation of Infeasibilities Radiating Outward from
a Forced Choice. Silva Fennica, 40(2):315333, 2006, Finnish Society of Forest Science,
The Finnish Forest Research Institute: Finland, Eeva Korpilahti, editor. Fully available
at http://www.metla.fi/silvafennica/full/sf40/sf402315.pdf [accessed 2010-07-
24]. CiteSeer
x
: 10.1.1.133.2656.
291. Gregory Beurier, Fabien Michel, and Jacques Ferber. A Morphogenesis Model for Multia-
gent Embryogeny. In ALIFE06 [2314], 2006. Fully available at http://www.lirmm.fr/
beyer/coll/Bey93a/Bey93a.ps
[accessed 2009-07-11]. See also [294].
294. Hans-Georg Beyer. Toward a Theory of Evolution Strategies: Some Asymptotical Re-
sults from the (1, +)-Theory. Evolutionary Computation, 1(2):165188, Summer 1993,
MIT Press: Cambridge, MA, USA, Marc Schoenauer, editor. Fully available at http://
ls11-www.cs.uni-dortmund.de/
tec/
publications/bli97a/diss.ps.gz [accessed 2007-09-07]. ETH Thesis Number: 11894.
337. Tobias Blickle and Lothar Thiele. Genetic Programming and Redundancy. In Genetic Algo-
rithms within the Framework of Evolutionary Computation, Workshop at KI-94 [1265], pages
3338, 1994. Fully available at ftp://ftp.tik.ee.ethz.ch/pub/people/thiele/
paper/BlTh94.ps [accessed 2007-09-07]. CiteSeer
x
: 10.1.1.48.8474.
338. Tobias Blickle and Lothar Thiele. A Comparison of Selection Schemes Used in Genetic Al-
gorithms. TIK-Report 11, Eidgen ossische Technische Hochschule (ETH) Z urich, Department
of Electrical Engineering, Computer Engineering and Networks Laboratory (TIK): Z urich,
Switzerland, December 1995. Fully available at ftp://ftp.tik.ee.ethz.ch/pub/
publications/TIK-Report11.ps and http://www.handshake.de/user/blickle/
publications/tik-report11_v2.ps [accessed 2010-08-03]. CiteSeer
x
: 10.1.1.11.509. See
also [340].
339. Tobias Blickle and Lothar Thiele. A Mathematical Analysis of Tournament Se-
lection. In ICGA95 [883], pages 916, 1995. Fully available at http://
www.handshake.de/user/blickle/publications/tournament.ps [accessed 2010-08-04].
CiteSeer
x
: 10.1.1.52.9907.
340. Tobias Blickle and Lothar Thiele. A Comparison of Selection Schemes used in
Evolutionary Algorithms. Evolutionary Computation, 4(4):361394, Winter 1996,
MIT Press: Cambridge, MA, USA. doi: 10.1162/evco.1996.4.4.361. Fully avail-
able at http://www.handshake.de/user/blickle/publications/ECfinal.ps [ac-
cessed 2010-08-03]. CiteSeer
x
: 10.1.1.15.9584. See also [338].
341. Christian Blum and Daniel Merkle, editors. Swarm Intelligence Introduction and Ap-
plications, Natural Computing Series. Springer New York: New York, NY, USA, 2008.
doi: 10.1007/978-3-540-74089-6. Google Books ID: 6Ky4bVPCXqMC, B1rrPQAACAAJ, and
ofRKPAAACAAJ. Library of Congress Control Number (LCCN): 2008933849.
342. Christian Blum and Andrea Roli. Metaheuristics in Combinatorial Optimization: Overview
and Conceptual Comparison. ACM Computing Surveys (CSUR), 35(3):268308, Septem-
ber 2003, ACM Press: New York, NY, USA. doi: 10.1145/937503.937505. Fully available
at http://iridia.ulb.ac.be/
meta/newsite/downloads/ACSUR-blum-roli.
pdf [accessed 2008-10-06].
343. Egbert J. W. Boers, Jens Gottlieb, Pier Luca Lanzi, Robert Elliott Smith, Stefano Cagnoni,
Emma Hart, G unther R. Raidl, and Harald Tijink, editors. Applications of Evolution-
ary Computing, Proceedings of EvoWorkshops 2001: EvoCOP, EvoFlight, EvoIASP, Ev-
oLearn, and EvoSTIM (EvoWorkshops01), April 1820, 2001, Lake Como, Milan, Italy,
volume 2037/2001 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany. doi: 10.1007/3-540-45365-2. isbn: 3-540-41920-9. Google Books
ID: EhROxow98NoC.
344. Stefan Boettcher. Extremal Optimization of Graph Partitioning at the Percolation
Threshold. Journal of Physics A: Mathematical and General, 32(28):52015211, July 16,
1999, Institute of Physics Publishing Ltd. (IOP): Dirac House, Temple Back, Bristol,
UK. doi: 10.1088/0305-4470/32/28/302. Fully available at http://www.iop.org/
EJ/article/0305-4470/32/28/302/a92802.pdf and http://xxx.lanl.gov/abs/
cond-mat/9901353 [accessed 2008-08-23]. arXiv ID: cond-mat/9901353v2.
986 REFERENCES
345. Stefan Boettcher and Allon G. Percus. Extremal Optimization: Methods Derived from Co-
Evolution. In GECCO99 [211], pages 825832, 1999. arXiv ID: math.OC/9904056.
346. Stefan Boettcher and Allon G. Percus. Extremal Optimization for Graph Partitioning.
Physical Review E, 64(2), July 2001, American Physical Society: College Park, MD,
USA. doi: 10.1103/PhysRevE.64.026114. Fully available at http://www.math.ucla.edu/
wbl/
biblio/gp-html/bojarczuk_2001_idamap.html, http://www.graco.unb.br/
alvares/emule/Data%20Mining%20with%20Constrained-Syntax%20Genetic
%20Programming%20Applications%20in%20Medical%20Data%20Set.pdf, and
www.ailab.si/idamap/idamap2001/papers/bojarczuk.pdf [accessed 2009-09-09].
CiteSeer
x
: 10.1.1.21.6146.
351. Celia C. Bojarczuk, Heitor Silverio Lopes, and Alex Alves Freitas. An Innova-
tive Application of a Constrained-Syntax Genetic Programming System to the Prob-
lem of Predicting Survival of Patients. In EuroGP03 [2360], pages 1159, 2003.
doi: 10.1007/3-540-36599-0 2. Fully available at http://www.cs.kent.ac.uk/people/
staff/aaf/pub_papers.dir/EuroGP-2003-Celia.pdf [accessed 2007-09-09].
352. Alessandro Bollini and Marco Piastra. Distributed and Persistent Evolutionary Algorithms:
A Design Pattern. In EuroGP99 [2196], pages 173183, 1999.
353. Eric W. Bonabeau, Marco Dorigo, and Guy Theraulaz. Swarm Intelligence: From Nat-
ural to Articial Systems. Oxford University Press, Inc.: New York, NY, USA, Au-
gust 1999. isbn: 0195131592. Google Books ID: PvTDhzqMr7cC, fcTcHvSsRMYC, and
mhLj70l8HfAC. OCLC: 40331208, 232159801, and 318382300.
354. Eric W. Bonabeau, Marco Dorigo, and Guy Theraulaz. Inspiration for Optimization from So-
cial Insect Behavior. Nature, 406:3942, July 6, 2000. doi: 10.1038/35017500. Fully available
at http://biology.unm.edu/pibbs/classes/readings/socialinsectbehavior.
pdf and http://www.nature.com/nature/journal/v406/n6791/abs/406039a0.
html [accessed 2011-05-02].
355. Josh C. Bongard and Chandana Paul. Making Evolution an Oer It Cant Refuse: Mor-
phology and the Extradimensional Bypass. In ECAL01 [1520], pages 401412, 2001.
doi: 10.1007/3-540-44811-X 43. Fully available at http://www.cs.uvm.edu/
jbongard/
papers/bongardPaulEcal2001.ps.gz [accessed 2008-11-02]. CiteSeer
x
: 10.1.1.27.8240.
356. Josh C. Bongard and Rolf Pfeifer. Repeated Structure and Dissociation of Genotypic and
Phenotypic Complexity in Articial Ontogeny. In GECCO01 [2570], pages 829836, 2001.
CiteSeer
x
: 10.1.1.11.6911.
357. John Tyler Bonner. On Development: The Biology of Form, Commonwealth Fund Pub-
lications. Harvard University Press: Cambridge, MA, USA, new ed edition, Decem-
ber 12, 1974. isbn: 0674634128. Google Books ID: dNa2AAAACAAJ, dda2AAAACAAJ, and
lO5BGACTstMC.
358. Lashon Bernard Booker. Intelligent Behavior as an Adaptation to the Task Environment.
PhD thesis, University of Michigan: Ann Arbor, MI, USA. Fully available at http://
hdl.handle.net/2027.42/3746 and http://hdl.handle.net/2027.42/3747 [ac-
cessed 2010-08-03]. Order No.: AAI8214966. University Microlms No.: 8214966. Technical
Report No. 243.
359. Egon Borger. Computability, Complexity, Logic, volume 128 in Studies in Logic and the
Foundations of Mathematics. Elsevier Science Publishing Company, Inc.: New York, NY,
REFERENCES 987
USA. Imprint: North-Holland Scientic Publishers Ltd.: Amsterdam, The Netherlands, 1989.
isbn: 0-444-87406-2. Google Books ID: T88gs0nemygC.
360. Istv an Borgulya. A Cluster-based Evolutionary Algorithm for the Single Machine Total
Weighted Tardiness-Scheduling Problem. Journal of Computing and Information Technology
(CIT), 10(3):211217, September 2002, University Computing Centre: Zagreb, Croatia. Fully
available at http://cit.zesoi.fer.hr/downloadPaper.php?paper=384 [accessed 2008-
04-07].
361. Erich G. Bornberg-Bauer and Hue Sun Chan. Modeling Evolutionary Landscapes: Muta-
tional Stability, Topology, and Superfunnels in Sequence Space. Proceedings of the National
Academy of Science of the United States of America (PNAS), 96(19):1068910694, Septem-
ber 14, 1999, National Academy of Sciences: Washington, DC, USA, Peter G. Wolynes, edi-
tor. Fully available at http://www.pnas.org/cgi/content/abstract/96/19/10689
[accessed 2008-07-02].
362. Bruno Bosacchi, David B. Fogel, and James C. Bezdek, editors. Proceedings of SPIEs
45th International Symposium on Optical Science and Technology: Applications and Science
of Neural Networks, Fuzzy Systems, and Evolutionary Computation III, July 30August 4,
2000, San Diego, CA, USA, volume 4120. Society of Photographic Instrumentation Engineers
(SPIE): Bellingham, WA, USA. isbn: 0-8194-3765-4. Google Books ID: tLhQAAAAMAAJ.
OCLC: 45211584 and 248133501.
363. Peter A. N. Bosman and Dirk Thierens. Mixed IDEAs. Technical Report UU-CS-2000-
45, Utrecht University, Department of Information and Computing Sciences: Utrecht,
The Netherlands, December 2000. Fully available at http://www.cs.uu.nl/research/
techreps/UU-CS-2000-45.html [accessed 2009-08-28].
364. Peter A. N. Bosman and Dirk Thierens. Advancing Continuous IDEAs with Mixture
Distributions and Factorization Selection Metrics. In OBUPM01 [2149], pages 208212,
2001. Fully available at http://citeseer.ist.psu.edu/old/bosman01advancing.
html [accessed 2009-08-28]. CiteSeer
x
: 10.1.1.19.7412.
365. Peter A. N. Bosman and Dirk Thierens. Multi-Objective Optimization with Diversity Pre-
serving Mixture-based Iterated Density Estimation Evolutionary Algorithms. International
Journal Approximate Reasoning, 31(2):259289, November 2002, Elsevier Science Publishers
B.V.: Essex, UK. doi: 10.1016/S0888-613X(02)00090-7.
366. Peter A. N. Bosman and Dirk Thierens. A Thorough Documentation of Obtained Results on
Real-Valued Continuous And Combinatorial Multi-Objective Optimization Problems Using
Diversity Preserving Mixture-Based Iterated Density Estimation Evolutionary Algorithms.
Technical Report UU-CS-2002-052, Utrecht University, Institute of Information and Comput-
ing Sciences: Utrecht, The Netherlands, December 2002. Fully available at http://www.
cs.uu.nl/research/techreps/repo/CS-2002/2002-052.pdf [accessed 2007-08-24].
367. Proceedings of the 5th International ICST Conference on Bio-Inspired Models of Network,
Information, and Computing Systems (BIONETICS10), December 13, 2010, Boston, MA,
USA.
368. Jack Bosworth, Norman Foo, and Bernard P. Zeigler. Comparison of Genetic Algorithms
with Conjugate Gradient Methods. Technical Report 00312-1-T, University of Michigan:
Ann Arbor, MI, USA, February 1972. Fully available at http://hdl.handle.net/2027.
42/3761 [accessed 2010-05-29]. ID: UMR0554. Other Identiers: UMR0554.
369. Henry Bottomley. Relationship between the Mean, Median, Mode, and Standard Deviation in
a Unimodal Distribution. self-published, September 2006. Fully available at http://www.
btinternet.com/
bouyssou/
CRITERIA.PDF [accessed 2009-07-17]. CiteSeer
x
: 10.1.1.2.7628.
375. Chris P. Bowers. Simulating Evolution with a Computational Model of Embryogeny: Ob-
taining Robustness from Evolved Individuals. In ECAL05 [488], pages 149158, 2005. Fully
available at http://www.cs.bham.ac.uk/
cpb/publications/ecal05_bowers.pdf
[accessed 2010-08-06].
376. George Edward Pelham Box. Evolutionary Operation: A Method for Increasing Industrial
Productivity. Journal of the Royal Statistical Society: Series C Applied Statistics, 6(2):
81101, June 1957, Blackwell Publishing for the Royal Statistical Society: Chichester, West
Sussex, UK.
377. George Edward Pelham Box and Norman Richard Draper. Evolutionary Operation. A Sta-
tistical Method for Process Improvement, Wiley Publication in Applied Statistics. John
Wiley & Sons Ltd.: New York, NY, USA, 1969. isbn: 0-471-09305-X. OCLC: 2592,
252982175, and 639061685. Library of Congress Control Number (LCCN): 68056159.
GBV-Identication (PPN): 020827873. LC Classication: TP155.7 .B6.
378. George Edward Pelham Box, J. Stuart Hunter, and William G. Hunter. Statistics for Ex-
perimenters: Design, Innovation, and Discovery. John Wiley & Sons Ltd.: New York, NY,
USA, 19782005. isbn: 471093157 and 0-471-71813-0.
379. Anthony Brabazon and Michael ONeill. Evolving Financial Models using Grammatical Evo-
lution. In Proceedings of The Annual Conference of the South Eastern Accounting Group
(SEAG) 2003 [1771], 2003.
380. Anthony Brabazon, Michael ONeill, Robin Matthews, and Conor Ryan. Grammati-
cal Evolution And Corporate Failure Prediction. In GECCO02 [1675], pages 1011
1018, 2002. Fully available at http://business.kingston.ac.uk/research/intbus/
paper4.pdf and http://www.cs.bham.ac.uk/
wbl/biblio/gecco2002/RWA145.
pdf [accessed 2007-09-09].
381. Ronald J. Brachman, editor. Proceedings of the Fourth National Conference on Arti-
cial Intelligence (AAAI84), August 610, 1984, University of Texas: Austin, TX, USA.
isbn: 0-262-51053-7. Partly available at http://www.aaai.org/Conferences/AAAI/
aaai84.php [accessed 2007-09-06].
382. R. M. Brady. Optimization Strategies Gleaned from Biological Evolution. Nature, 317(6040):
804806, October 31, 1985. doi: 10.1038/317804a0. Fully available at http://www.nature.
com/nature/journal/v317/n6040/pdf/317804a0.pdf [accessed 2008-09-10]. In: Letters to
Nature.
383. Marco Brambilla, Irene Celino, Stefano Ceri, Dario Cerizza, Emanuele Della Valle, Fed-
erico Michele Facca, and Christina Tziviskou. Improvements and Future Perspectives on
Web Engineering Methods for Automating Web Services Mediation, Choreography and
Discovery. In Third Workshop of the Semantic Web Service Challenge 2006 Chal-
lenge on Automating Web Services Mediation, Choreography and Discovery [2690], 2006.
Fully available at http://sws-challenge.org/workshops/2006-Athens/papers/
SWS-phase-III_polimi_cefriel_v1.0.pdf [accessed 2010-12-16]. See also [384387, 1650,
1831].
384. Marco Brambilla, Stefano Ceri, Dario Cerizza, Emanuele Della Valle, Federico Michele Facca,
Piero Fraternali, and Christina Tziviskou. Web Modeling-based Approach to Automat-
ing Web Services Mediation, Choreography and Discovery. In First Workshop of the Se-
mantic Web Service Challenge 2006 Challenge on Automating Web Services Mediation,
Choreography and Discovery [2688], 2006. Fully available at http://sws-challenge.
org/workshops/2006-Stanford/papers/01.pdf [accessed 2010-12-12]. See also [383, 385
387, 1650, 1831].
385. Marco Brambilla, Stefano Ceri, Dario Cerizza, Emanuele Della Valle, Federico Michele
Facca, and Christina Tziviskou. Coping with Requirements Changes: SWS-Challenge
Phase II. In Second Workshop of the Semantic Web Service Challenge 2006 Chal-
REFERENCES 989
lenge on Automating Web Services Mediation, Choreography and Discovery [2689], 2006.
Fully available at http://sws-challenge.org/workshops/2006-Budva/papers/
SWS-phase-Finale_polimi_cefriel.pdf [accessed 2010-12-12]. See also [383, 384, 386, 387,
1650, 1831].
386. Marco Brambilla, Irene Celino, Stefano Ceri, Dario Cerizza, Emanuele Della Valle,
Federico Michele Facca, Andrea Turati, and Christina Tziviskou. WebML and Glue:
An Integrated Discovery Approach for the SWS Challenge. In KWEB SWS Chal-
lenge Workshop [2450], 2007. Fully available at http://sws-challenge.org/
workshops/2007-Innsbruck/papers/3-SWS-phase-IV_polimi_cefriel_v1.
2.pdf [accessed 2010-12-16]. See also [383385, 387, 1650, 1831].
387. Marco Brambilla, Stefano Ceri, Federico Michele Facca, Christina Tziviskou, Irene Celino,
Dario Cerizza, Emanuele Della Valle, and Andrea Turati. WebML and Glue: An Integrated
Discovery Approach for the SWS Challenge. In WI/IAT Workshops07 [1731], pages 148
151, 2007. doi: 10.1109/WI-IATW.2007.58. INSPEC Accession Number: 9894902. See also
[384386, 1831].
388. Markus F. Brameier. On Linear Genetic Programming. PhD thesis, Universitat Dort-
mund, Fachbereich Informatik: Dortmund, North Rhine-Westphalia, Germany, Febru-
ary 13, 2004, Wolfgang Banzhaf, Martin Riedmiller, and Peter Nordin, Committee members.
Fully available at http://hdl.handle.net/2003/20098 and https://eldorado.
tu-dortmund.de/handle/2003/20098 [accessed 2010-08-22].
389. Markus F. Brameier and Wolfgang Banzhaf. A Comparison of Genetic Programming and
Neural Networks in Medical Data Analysis. Reihe computational intelligence: Design and
management of complex technical processes and systems by means of computational intelli-
gence methods, Universitat Dortmund, Collaborative Research Center (Sonderforschungs-
bereich) 531: Dortmund, North Rhine-Westphalia, Germany, November 8, 1998. Fully
available at http://dspace.hrhttps://eldorado.tu-dortmund.de/handle/2003/
5344 [accessed 2009-07-22]. CiteSeer
x
: 10.1.1.36.4678. issn: 1433-3325. Reihe Computa-
tional Intelligence, Sonderforschungsbereich 531. See also [391].
390. Markus F. Brameier and Wolfgang Banzhaf. Evolving Teams of Predictors with Linear Ge-
netic Programming. Genetic Programming and Evolvable Machines, 2(4):381407, Decem-
ber 2001, Springer Netherlands: Dordrecht, Netherlands. Imprint: Kluwer Academic Pub-
lishers: Norwell, MA, USA. doi: 10.1023/A:1012978805372. CiteSeer
x
: 10.1.1.16.7410.
391. Markus F. Brameier and Wolfgang Banzhaf. A Comparison of Linear Genetic Program-
ming and Neural Networks in Medical Data Mining. IEEE Transactions on Evolution-
ary Computation (IEEE-EC), 5(1):1726, 2001, IEEE Computer Society: Washington, DC,
USA. doi: 10.1109/4235.910462. Fully available at http://web.cs.mun.ca/
banzhaf/
papers/ieee_taec.pdf [accessed 2009-07-22]. CiteSeer
x
: 10.1.1.41.208. INSPEC Accession
Number: 6876106. See also [389].
392. Markus F. Brameier and Wolfgang Banzhaf. Explicit Control of Diversity and Eective Vari-
ation Distance in Linear Genetic Programming. In EuroGP02 [977], pages 3749, 2002.
doi: 10.1007/3-540-45984-7 4. Fully available at http://eldorado.uni-dortmund.de:
8080/bitstream/2003/5419/1/123.pdf and http://www.cs.mun.ca/
banzhaf/
papers/eurogp02_dist.pdf [accessed 2010-08-22]. CiteSeer
x
: 10.1.1.11.5531.
393. Markus F. Brameier and Wolfgang Banzhaf. Neutral Variations Cause Bloat in Linear GP.
In EuroGP03 [2360], pages 9971039, 2003. CiteSeer
x
: 10.1.1.120.8070.
394. Markus F. Brameier and Wolfgang Banzhaf. Linear Genetic Programming, volume 1 in
Genetic and Evolutionary Computation. Springer US: Boston, MA, USA and Kluwer Aca-
demic Publishers: Norwell, MA, USA, December 11, 2006. doi: 10.1007/978-0-387-31030-5.
isbn: 0-387-31029-0 and 0-387-31030-4. Library of Congress Control Number
(LCCN): 2006920909. Series Editor: David L. Goldberg, John R. Koza.
395. J urgen Branke. Creating Robust Solutions by Means of Evolutionary Algorithms. In PPSN
V [866], pages 119128, 1998. doi: 10.1007/BFb0056855.
396. J urgen Branke. The Moving Peaks Benchmark. Technical Report, University of Karlsruhe,
Institute for Applied Computer Science and Formal Description Methods (AIFB): Karlsruhe,
Germany, December 16, 1999. Fully available at http://www.aifb.uni-karlsruhe.de/
jbr/Papers/memory_
final2.ps.gz [accessed 2008-12-07]. CiteSeer
x
: 10.1.1.2.8897. INSPEC Accession Num-
ber: 6346978.
398. J urgen Branke. Evolutionary Optimization in Dynamic Environments, volume 3 in Genetic
and Evolutionary Computation. PhD thesis, University of Karlsruhe, Department of Eco-
nomics and Business Engineering: Karlsruhe, Germany, Springer US: Boston, MA, USA and
Kluwer Academic Publishers: Norwell, MA, USA, December 20002001, Hartmut Schmeck,
Georg Bol, and Lothar Thiele, Advisors. isbn: 0792376315 and 9780792376316. Google
Books ID: weXuTB5JjFsC.
399. J urgen Branke, Kalyanmoy Deb, Kaisa Miettinen, and Ralph E. Steuer, editors. Practi-
cal Approaches to Multi-Objective Optimization, November 712, 2004, Schloss Dagstuhl:
Wadern, Germany, 04461 in Dagstuhl Seminar Proceedings. Internationales Begegnungs-
und Forschungszentrum f ur Informatik (IBFI): Schloss Dagstuhl, Wadern, Germany.
Fully available at http://drops.dagstuhl.de/portals/index.php?semnr=04461
and http://www.dagstuhl.de/de/programm/kalender/semhp/?semnr=04461 [ac-
cessed 2007-09-19]. Published in 2005.
400. J urgen Branke, Erdem Saliho glu, and A. Sima Uyar. Towards an Analysis of Dynamic
Environments. In GECCO05 [304], pages 14331440, 2005. doi: 10.1145/1068009.1068237.
401. Ivan Bratko and Saso Dzeroski, editors. Proceedings of the 16th International Conference on
Machine Learning (ICML99), June 2730, 1999, Bled, Slovenia. Morgan Kaufmann Publish-
ers Inc.: San Francisco, CA, USA. isbn: 1-55860-612-2.
402. Olli Br aysy. Genetic Algorithms for the Vehicle Routing Problem with Time Windows.
Arpakannus Newsletter of the Finnish Articial Intelligence Society (FAIS), 1:3338,
May 2001, Finnish Articial Intelligence Society (FAIS): Vantaa, Finland. Special issue
on Bioinformatics and Genetic Algorithms.
403. Olli Br aysy and Michel Gendreau. Tabu Search Heuristics for the Vehicle Routing Problem
with Time Windows. TOP: An Ocial Journal of the Spanish Society of Statistics and Op-
erations Research, 10(2):211237, December 2002, Springer-Verlag GmbH: Berlin, Germany
and Sociedad de Estadstica e Investigation Operativa. doi: 10.1007/BF02579017.
404. Mihaela Breaban, Lenuta Alboaie, and Henri Luchian. Guiding Users within Trust
Networks Using Swarm Algorithms. In CEC09 [1350], pages 17701777, 2009.
doi: 10.1109/CEC.2009.4983155. INSPEC Accession Number: 10688750.
405. Leo Breiman. Bagging Predictors. Machine Learning, 24(2):123140, August 1996, Kluwer
Academic Publishers: Norwell, MA, USA and Springer Netherlands: Dordrecht, Netherlands.
doi: 10.1007/BF00058655. Fully available at http://www.salford-systems.com/doc/
BAGGING_PREDICTORS.pdf [accessed 2009-03-18]. CiteSeer
x
: 10.1.1.32.9399.
406. Leo Breiman. Random Forests. Machine Learning, 45(1):532, 2001, Kluwer Aca-
demic Publishers: Norwell, MA, USA and Springer Netherlands: Dordrecht, Nether-
lands. doi: 10.1023/A:1010933404324. Fully available at http://www.springerlink.
com/content/u0p06167n6173512/fulltext.pdf [accessed 2008-12-27].
407. Hans J. Bremermann. Optimization Through Evolution and Recombination. In Self-
Organizing Systems (Proceedings of the conference sponsored by the Information Systems
Branch of the Oce of Naval Research and the Armour Research Foundation of the Illinois
Institute of Technology.) [3037], pages 93103, 1962. Fully available at http://holtz.org/
Library/Natural%20Science/Physics/ [accessed 2007-10-31].
408. Janez Brest, Viljem
Zumer, and Mirjam Sepesy Maucec. Control Parameters
in Self-Adaptive Dierential Evolution. In BIOMA06 [919], pages 3544, 2006.
CiteSeer
x
: 10.1.1.106.8106.
409. Anne F. Brindle. Genetic Algorithms for Function Optimization. PhD thesis, University of
Alberta: Edmonton, Alberta, Canada, 1980. isbn: 0-315-01039-8. OCLC: 15896420,
59840399, and 632337062. Technical Report TR81-2.
410. David Brittain, Jon Sims Williams, and Chris McMahon. A Genetic Algorithm Approach
To Planning The Telecommunications Access Network. In ICGA97 [166], pages 623628,
1997. Fully available at http://citeseer.ist.psu.edu/brittain97genetic.html
[accessed 2008-08-01].
411. Proceedings of the 14th International Conference on Soft Computing (MENDEL08), June 18
20, 2009, Brno, Czech Republic.
412. Proceedings of the 15th International Conference on Soft Computing (MENDEL09), June 17
REFERENCES 991
26, 2009, Brno, Czech Republic.
413. Proceedings of the 12th International Conference on Soft Computing (MENDEL06), May 31
June 2, 2006, Brno University of Technology: Brno, Czech Republic. Brno University of Tech-
nology, Faculty of Mechanical Engineering: Brno, Czech Republic. isbn: 80-214-3195-4.
414. Proceedings of the 1st International Mendel Conference on Genetic Algorithms on the occasion
of 130th anniversary of Mendels laws (Mendel95), September 1995, Brno, Czech Republic.
Brno University of Technology,
Ustav Automatizace a Informatiky: Brno, Czech Republic.
isbn: 80-214-0672-0.
415. Proceedings of the 2nd International Mendel Conference on Genetic Algorithms
(MENDEL96), June 2628, 1996, Brno University of Technology: Brno, Czech Republic.
Brno University of Technology,
Ustav Automatizace a Informatiky: Brno, Czech Republic.
isbn: 80-214-0769-7.
416. Proceedings of the 2nd International Mendel Conference on Genetic Algorithms
(MENDEL97), June 2628, 1997, Brno University of Technology: Brno, Czech Republic.
Brno University of Technology,
Ustav Automatizace a Informatiky: Brno, Czech Republic.
isbn: 80-214-0769-7.
417. Proceedings of the 4th International Mendel Conference on Genetic Algorithms, Optimisa-
tion Problems, Fuzzy Logic, Neural Networks, Rough Sets (MENDEL98), June 2426, 1998,
Brno University of Technology: Brno, Czech Republic. Brno University of Technology,
Ustav
Automatizace a Informatiky: Brno, Czech Republic. isbn: 80-214-1131-7.
418. Proceedings of the 3rd International Conference on Genetic Algorithms (MENDEL99),
June 1997, Brno University of Technology: Brno, Czech Republic. Brno University of Tech-
nology,
Ustav Automatizace a Informatiky: Brno, Czech Republic. isbn: 80-214-1131-7.
419. Proceedings of the 8th International Conference on Soft Computing (MENDEL02), June 57,
2002, Brno University of Technology: Brno, Czech Republic. Brno University of Technology,
zdong/courses/
mech620/SA_App.PDF [accessed 2007-08-25]. Seminar presentation: MECH620 Quantitative
Analysis, Reasoning and Optimization Methods in CAD/CAM and Concurrent Engineering.
438. Lam Thu Bui and Sameer Alam, editors. Multi-Objective Optimization in Computational
Intelligence: Theory and Practice, Premier Reference Source. Idea Group Publishing (Idea
Group Inc., IGI Global): New York, NY, USA, March 30, 2008. isbn: 1599044986.
439. Vinh Bui, Lam Thu Bui, Hussein A. Abbass, Axel Bender, and Pradeep Ray. On the Role of
Information Networks in Logistics: An Evolutionary Approach with Military Scenarios. In
CEC09 [1350], pages 598605, 2009. doi: 10.1109/CEC.2009.4983000. INSPEC Accession
Number: 10688573.
440. Larry Bull. On using ZCS in a Simulated Continuous Double-Auction Market. In
GECCO99 [211], pages 8390, 1999. Fully available at http://www.cs.bham.ac.uk/
dwcorne/Teaching/bullnheimer-vr.pdf [ac-
cessed 2008-10-27]. CiteSeer
x
: 10.1.1.49.1415.
446. Seth Bullock, Jason Noble, Richard A. Watson, and Mark A. Bedau, editors. Proceedings
of the Eleventh International Conference on the Simulation and Synthesis of Living Systems
(Articial Life XI), August 58, 2008, Winchester, Hampshire, UK. MIT Press: Cambridge,
MA, USA.
447. Bundesministerium f ur Wirtschaft und Technologie (BMWi): Berlin, Germany. Innovation-
spolitik, Informationsgesellschaft, Telekommunikation Mobilitat und Verkehrstechnologien
Das 3. Verkehrsforschungsprogramm der Bundesregierung. Bundesministerium f ur Wirtschaft
und Technologie (BMWi),
Oentlichkeitsarbeit: Berlin, Germany, May 2008.
448. Alan Bundy, editor. Proceedings of the 8th International Joint Conference on Articial Intel-
ligence (IJCAI83-I), August 1983, Karlsruhe, Germany, volume 1. William Kaufmann: Los
Altos, CA, USA. Fully available at http://dli.iiit.ac.in/ijcai/IJCAI-83-VOL-1/
CONTENT/content.htm [accessed 2008-04-01]. See also [449].
449. Alan Bundy, editor. Proceedings of the 8th International Joint Conference on Articial Intel-
ligence (IJCAI83-II), August 1983, Karlsruhe, Germany, volume 2. William Kaufmann: Los
Altos, CA, USA. Fully available at http://dli.iiit.ac.in/ijcai/IJCAI-83-VOL-2/
CONTENT/content.htm [accessed 2008-04-01]. See also [448].
450. Christopher J. C. Burges. A Tutorial on Support Vector Machines for Pattern Recog-
nition. Data Mining and Knowledge Discovery, 2(2):121167, 1998, Springer Nether-
lands: Dordrecht, Netherlands, Usama Fayyad, editor. doi: 10.1023/A:1009715923555.
CiteSeer
x
: 10.1.1.18.1083.
451. Luciana Buriol, Paulo M. Fran ca, and Pablo Moscato. A New Memetic Algo-
rithm for the Asymmetric Traveling Salesman Problem. Journal of Heuristics,
10(5):483506, September 2004, Springer Netherlands: Dordrecht, Netherlands.
doi: 10.1023/B:HEUR.0000045321.59202.52. Fully available at http://citeseer.
ist.psu.edu/544761.html and http://www.springerlink.com/content/
w617486q60mphg88/fulltext.pdf [accessed 2007-09-12]. CiteSeer
x
: 10.1.1.20.1660.
452. Edmund K. Burke and Wilhelm Erben, editors. Selected Papers from the Third Inter-
national Conference on Practice and Theory of Automated Timetabling (PATAT00), Au-
gust 1618, 2000, Konstanz, Germany, volume 2079/2001 in Lecture Notes in Computer
Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-44629-X.
isbn: 3-540-42421-0.
453. Edmund K. Burke and Graham Kendall, editors. Search Methodologies Introductory Tuto-
rials in Optimization and Decision Support Techniques. Springer Science+Business Media,
Inc.: New York, NY, USA, 2005. doi: 10.1007/0-387-28356-0. isbn: 0-387-23460-8. Google
Books ID: X4BcOZEa4HsC. Library of Congress Control Number (LCCN): 2005051623.
454. Edmund K. Burke, Steven Matt Gustafson, and Graham Kendall. Survey and Analysis of
Diversity Measures in Genetic Programming. In GECCO02 [1675], pages 716723, 2002.
Fully available at http://www.gustafsonresearch.com/research/publications/
gecco-diversity-2002.pdf [accessed 2009-07-09]. CiteSeer
x
: 10.1.1.2.3757.
455. Edmund K. Burke, Steven Matt Gustafson, Graham Kendall, and Natalio Krasnogor. Ad-
vanced Population Diversity Measures in Genetic Programming. In PPSN VII [1870],
pages 341350, 2002. doi: 10.1007/3-540-45712-7 33. Fully available at http://www.cs.
bham.ac.uk/
ccoello/
chung03.pdf.gz [accessed 2009-06-17].
REFERENCES 1003
580. Charles West Churchman, Lincoln Acko Russell, and E. Leonard Arno. Introduction to
Operations Research. John Wiley & Sons Ltd.: New York, NY, USA and Chapman & Hall:
London, UK, 2nd edition, 1957. asin: B0000CJP9J and B001ORMIX0.
581. Vic Ciesielski and Xiang Li. Analysis of Genetic Programming Runs. In Complex04 [469],
2004. Fully available at http://goanna.cs.rmit.edu.au/
xiali/pub/ai04.vc.
pdf and http://www.cs.rmit.edu.au/
phtoint/
pubs/TR03-20.ps [accessed 2009-10-26]. See also [613].
613. Benot Colson and Philippe L. Toint. Optimizing Partially Separable Functions without
Derivatives. Optimization Methods and Software, 20(4 & 5):493508, August 2005, Taylor
and Francis LLC: London, UK. doi: 10.1080/10556780500140227. See also [612].
614. Francesc Comellas. Using Genetic Programming to Design Broadcasting Algorithms for
Manhattan Street Networks. In EvoWorkshops04 [2254], pages 170177, 2004.
615. Francesc Comellas and G. Gimenez. Genetic Programming to Design Communication Algo-
rithms for Parallel Architectures. Parallel Processing Letters (PPL), 8(4):549560, Decem-
ber 1998, World Scientic Publishing Co.: Singapore. doi: 10.1142/S0129626498000547. Fully
available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/Comellas_1998_
GPD.html [accessed 2009-09-01]. CiteSeer
x
: 10.1.1.57.4752.
616. Francesc Comellas and Juan Paz-S anchez. Reconstruction of Networks from
Their Betweenness Centrality. In EvoWorkshops08 [1051], pages 3137, 2008.
doi: 10.1007/978-3-540-78761-7 4.
617. Diana Elena Comes, Steen Bleul, Thomas Weise, and Kurt Geihs. A Flexible
Approach for Business Processes Monitoring. In DAIS09 [2453], pages 116128,
2009. doi: 10.1007/978-3-642-02164-0 9. Fully available at http://www.it-weise.de/
documents/files/CBTG2009AFAFBPM.pdf. Ei ID: 20093412265790. IDS (SCI): BKH10.
618. Committee on the Fundamentals of Computer Science: Challenges and Opportunities,
Computer Science and Telecommunications Board, National Research Council of the Na-
tional Academies: Washington, DC, USA, editor. Computer Science: Reections on the
Field, Reections from the Field. National Academies Press: Washington, DC, USA, 2004.
isbn: 0-309-09301-5 and 0-309-54529-3. Google Books ID: sTlPLMq6ZdYC.
619. Giuseppe Confessore, Graziano Galiano, and Giuseppe Stecca. An Evolutionary Algorithm
for Vehicle Routing Problem with Real Life Constraints. In Manufacturing Systems and Tech-
nologies for the New Frontier The 41st CIRP Conference on Manufacturing Systems [1918],
pages 225228, 2008. doi: 10.1007/978-1-84800-267-8 46.
620. Brian Connolly. Genetic Algorithms Survival of the Fittest: Natural Selection
with Windows Forms. MSDN Magazin, August 2004, Microsoft Corporation: Red-
mond, WA, USA. Fully available at http://msdn.microsoft.com/de-de/magazine/
cc163934(en-us).aspx [accessed 2008-06-24].
621. Michael Conrad. Bootstrapping on the Adaptive Landscape. Biosystems, 11(2-
3):8184, August 1979, Elsevier Science Ireland Ltd.: East Park, Shannon, Ire-
1006 REFERENCES
land and North-Holland Scientic Publishers Ltd.: Amsterdam, The Netherlands.
doi: 10.1016/0303-2647(79)90009-1. Fully available at http://dx.doi.org/10.1016/
0303-2647(79)90009-1 and http://hdl.handle.net/2027.42/23514 [accessed 2008-
11-02].
622. Michael Conrad. Adaptability: The Signicance of Variability from Molecule to Ecosystem.
Plenum Press: New York, NY, USA, March 31, 1983. isbn: 0-306-41223-3. Google Books
ID: 7ewUAQAAIAAJ. OCLC: 9110177, 251709596, 299388964, and 476965274. Library
of Congress Control Number (LCCN): 82024558. GBV-Identication (PPN): 014038137.
LC Classication: QH546 .C65 1983.
623. Michael Conrad. Molecular Computing. In Advances in Computers [3036], pages 235324.
Academic Press Professional, Inc.: San Diego, CA, USA and Elsevier Science Publishers
B.V.: Amsterdam, The Netherlands, 1990. doi: 10.1016/S0065-2458(08)60155-2.
624. Michael Conrad. The Geometry of Evolution. Biosystems, 24(1):6181, 1990, Elsevier Science
Ireland Ltd.: East Park, Shannon, Ireland and North-Holland Scientic Publishers Ltd.:
Amsterdam, The Netherlands. doi: 10.1016/0303-2647(90)90030-5.
625. Michael Conrad. Towards High Evolvability Dynamics. In Evolutionary Systems Biological
and Epistemological Perspectives on Selection and Self-Organization [2771], pages 3343.
Kluwer Academic Publishers: Norwell, MA, USA, 1998.
626. Stephen A. Cook. The Complexity of Theorem-Proving Procedures. In STOC71 [20], pages
151158, 1971. doi: 10.1145/800157.805047.
627. William J. Cook. Traveling Salesman Problem. Georgia Institute of Technology, College of
Engineering, School of Industrial and Systems Engineering, Operations Research: Atlanta,
GA, USA, in edition, September 18, 2011. Fully available at http://www.tsp.gatech.
edu/index.html [accessed 2011-09-18].
628. William J. Cook, William H. Cunningham, William R. Pulleyblank, and Alexander Schrijver.
Combinatorial Optimization, Estimation, Simulation, and Control Wiley-Interscience Series
in Discrete Mathematics and Optimization. Wiley Interscience: Chichester, West Sussex, UK,
November 12, 1997. isbn: 0-471-55894-X. OCLC: 37451897, 247024428, 288962207,
and 473487390. Library of Congress Control Number (LCCN): 97035774. GBV-
Identication (PPN): 233568778 and 280181795. LC Classication: QA402.5 .C54523
1998.
629. Susan Coombs and Lawrence Davis. Genetic Algorithms and Communication Link Speed
Design: Constraints and Operators. In ICGA87 [1132], pages 257260, 1987. Partly available
at http://www.questia.com/PM.qst?a=o&d=97597557 [accessed 2008-08-29].
630. D. C. Cooper, editor. Proceedings of the 2nd International Joint Conference on Arti-
cial Intelligence (IJCAI71), September 13, 1971, Imperial College London: London,
UK. isbn: 0-934613-34-6. Fully available at http://dli.iiit.ac.in/ijcai/
IJCAI-1971/CONTENT/content.htm [accessed 2008-04-01]. OCLC: 17487276.
631. Emilio S. Corchado, Juan M. Corchado, and Ajith Abraham, editors. Innovations in Hybrid
Intelligent Systems Proceedings of the 2nd International Workshop on Hybrid Articial
Intelligence Systems (HAIS07), November 2007, University of Salamanca: Salamanca, Spain,
volume 44/2008 in Advances in Soft Computing. Physica-Verlag GmbH & Co.: Heidelberg,
Germany. doi: 10.1007/978-3-540-74972-1. isbn: 3-540-74971-3. Library of Congress
Control Number (LCCN): 2007935489.
632. Emilio S. Corchado, Ajith Abraham, and Witold Pedrycz, editors. Proceedings of the Third
International Workshop on Hybrid Articial Intelligence Systems (HAIS08), September 24
26, 2008, Burgos, Spain, volume 5271/2008 in Lecture Notes in Articial Intelligence (LNAI,
SL7), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-540-87656-4. isbn: 3-540-87655-3. Library of Congress Control Number
(LCCN): 2008935394.
633. Arthur L. Corcoran and Sandip Sen. Using Real-Valued Genetic Algorithms to Evolve
Rule Sets for Classication. In CEC94 [1891], pages 120124, volume 1, 1994.
doi: 10.1109/ICEC.1994.350030. CiteSeer
x
: 10.1.1.55.1864.
634.
Oscar Cordon, Francisco Herrera Triguero, and Achim G. Homann. Genetic Fuzzy
Systems: Evolutionary Tuning and Learning of Fuzzy Knowledge Bases, volume 19
in Advances in Fuzzy Systems. World Scientic Publishing Co.: Singapore, 2001.
isbn: 981-02-4016-3 and 981-02-4017-1. Google Books ID: BWmSV-38fKAC
and bwa9QgAACAAJ. OCLC: 47768307. Library of Congress Control Number
REFERENCES 1007
(LCCN): 2001275437. GBV-Identication (PPN): 334123739. LC Classication: QA402.5
.G4565 2001.
635. Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest. Introduction to Algo-
rithms, MIT Electrical Engineering and Computer Science. MIT Press: Cambridge, MA,
USA and McGraw-Hill Ltd.: Maidenhead, UK, England, 2nd edition, 1990August 2001.
isbn: 0070131430, 0070131449, 0-2620-3141-8, 0-2625-3196-8, and 8120321413.
Google Books ID: CJY1KwAACAAJ, CZY1KwAACAAJ, ElKaGgAACAAJ, JlCNJwAACAAJ,
KVCNJwAACAAJ, NLngYyWFl YC, O9WbHAAACAAJ, OdWbHAAACAAJ, PB02AAAACAAJ,
PNWbHAAACAAJ, V7wYPAAACAAJ, WLwYPAAACAAJ, oStGQAACAAJ, iLY1NwAACAAJ, and
zukGIQAACAAJ.
636. David Wolfe Corne and Joshua D. Knowles. Techniques for Highly Multiobjective Optimisa-
tion: Some Nondominated Points are Better than Others. In GECCO07-I [2699], pages 773
780, 2007. Fully available at http://dbkgroup.org/knowles/pap583s7-corne.pdf
and http://www.macs.hw.ac.uk/
gxk/
aim/2009/reading/hh_paper_1.pdf [accessed 2011-04-23]. CiteSeer
x
: 10.1.1.63.7949.
650. Louis Anthony Cox, Jr., Lawrence Davis, and Yuping Qiu. Dynamic Anticipatory Routing In
Circuit-Switched Telecommunications Networks. In Handbook of Genetic Algorithms [695],
pages 124143. Thomson Publishing Group, Inc.: Stamford, CT, USA, 1991.
651. Teodor Gabriel Crainic and Gilbert Laporte, editors. Fleet Management and Logistics.
Springer Netherlands: Dordrecht, Netherlands. Imprint: Kluwer Academic Publishers: Nor-
well, MA, USA, 1998. isbn: 0792381610. Google Books ID: IXed6zq9ZigC.
652. Nichael Lynn Cramer. A Representation for the Adaptive Generation of Simple Sequential
Programs. In ICGA85 [1131], pages 183187, 1985. Fully available at http://www.sover.
net/
wbl/biblio/
gp-html/crepeau_1995_GEMS.html [accessed 2008-09-17]. CiteSeer
x
: 10.1.1.61.7001.
654. Matej
Crepincek, Marjan Mernik, and Shih-Hsi Liu. Analysis of Exploration and Exploita-
tion in Evolutionary Algorithms by Ancestry Trees. International Journal of Innovative
Computing and Applications (IJICA), 3(1), January 2011, InderScience Publishers: Geneva,
Switzerland. doi: 10.1504/IJICA.2011.037947.
655. H. Brown Cribbs, III and Robert Elliott Smith. What Can I Do With a Learning Classier
System? In Industrial Applications of Genetic Algorithms [1496], pages 299319. CRC Press,
Inc.: Boca Raton, FL, USA, 1998.
656. Sven F. Crone, Stefan Lessmann, and Robert Stahlbock, editors. Proceedings of the 2006
International Conference on Data Mining (DMIN06), June 2629, 2006, Las Vegas, NV,
USA. CSREA Press: Las Vegas, NV, USA. isbn: 1-60132-004-3.
657. Helena Cronin. The Ant and the Peacock Altruism and Sexual Selection from Darwin to
Today. Cambridge University Press: Cambridge, UK, 1991. isbn: 0-521-32937-X and
0-521-45765-3. Google Books ID: SwEnVmakCB0C. OCLC: 29778586, 444540292, and
490467682. GBV-Identication (PPN): 040676250 and 232802165. With a foreword by
John Maynard Smith.
658. Mark Crosbie and Gene Spaord. Applying Genetic Programming to Intrusion De-
tection. In Proceedings of 1995 AAAI Fall Symposium Series, Genetic Programming
Track [1606], 1995. Fully available at http://ftp.cerias.purdue.edu/pub/papers/
mark-crosbie/mcrosbie-spaf-AAAI.ps.Z [accessed 2008-06-17]. The paper appeared also
as technical report COAST TR 95-05 of COAST Laboratory, Deptartment of Computer
Sciences, Purdue University, West Lafayette, IN, USA.
659. Jack L. Crosby. Computer Simulation in Genetics. John Wiley & Sons Ltd.: New York, NY,
USA, January 1973. isbn: 0-4711-8880-8.
660. Claudia Crosio, Francesco Cecconi, Paolo Mariottini, Gianni Cesareni, Sydney Brenner,
and Francesco Amaldi. Fugu Intron Oversize Reveals the Presence of U
15
snoRNA Cod-
REFERENCES 1009
ing Sequences in Some Introns of the Ribosomal Protein S
3
Gene. Genome Research, 6(12):
12271231, December 1996. Fully available at http://www.genome.org/cgi/content/
abstract/6/12/1227 [accessed 2008-03-23].
661. Proceedings of the Second Conference on Articial General Intelligence (AGI09), March 69,
2009, Crowne Plaza National Airport: Arlington, VA, USA.
662. Li Ying Cui, Soundar R. T. Kumara, John Jung-Woon Yoo, and Fatih Cavdur. Large-Scale
Network Decomposition and Mathematical Programming Based Web Service Composition.
In CEC09 [1245], pages 511514, 2009. doi: 10.1109/CEC.2009.91. INSPEC Accession
Number: 10839128. See also [1571, 1999, 20642067, 3034].
663. Xunxue Cui and Chuang Lin. A Multiobjective Genetic Algorithm for Distributed Database
Management. In WCICA04 [1388], pages 21172121, volume 3, 2004. doi: 10.1109/W-
CICA.2004.1341959. INSPEC Accession Number: 8143777.
664. Francesco Cupertino, Ernesto Mininno, and David Naso. Compact Genetic Algorithms for
the Optimization of Induction Motor Cascaded Control. In IEMDC07 [1391], pages 8287,
volume 2, 2007. doi: 10.1109/IEMDC.2007.383557. INSPEC Accession Number: 9892564.
665. Djurdje Cvijovic and Jacek Klinowski. Taboo Search: An Approach to the Multiple Minima
Problem. Science Magazine, 267(5198):664666, February 3, 1995, American Association for
the Advancement of Science (AAAS): Washington, DC, USA and HighWire Press (Stan-
ford University): Cambridge, MA, USA. doi: 10.1126/science.267.5198.664. Fully available
at http://www-klinowski.ch.cam.ac.uk/pdfs/244.pdf [accessed 2010-10-04]. PubMed
ID: 17745843.
666. Hans Czap, Rainer Unland, Cherif Branki, and Huaglory Tianeld, editors. Self-Organization
and Autonomic Informatics (I) International Conference on Self-Organization and Adap-
tation of Multi-agent and Grid Systems (SOAS2005), December 1113, 2005, University of
Paisley: Glasgow, Scotland, UK, Frontiers in Articial Intelligence and Applications. IOS
Press: Amsterdam, The Netherlands. isbn: 1-58603-577-0 and 1601291337. Google
Books ID: 0wp9iwroM9gC and tPP8OgAACAAJ.
667. Zbigniew J. Czech and Piotr Czarnas. Parallel Simulated Annealing for the Vehicle Routing
problem with Time Windows. In PDP02 [1383], pages 376383, 2002. doi: 10.1109/EM-
PDP.2002.994313. CiteSeer
x
: 10.1.1.16.5766.
D
668. Antonio Gaspar Lopes da Cunha and Jose Antonio Colaco Gomes Covas. RPSGAe - Re-
duced Pareto Set Genetic Algorithm: A Multiobjectiv Algorithm with Elistim: Application
to Polymer Extrusion. Xavier Gandibleux, Marc Sevaux, Kenneth Sorensen, and Vincent
Tkindt, editors. Fully available at http://www2.lifl.fr/PM2O/Reunions/04112002/
gaspar.pdf [accessed 2007-09-21]. Poster on the joint PM2O-EU/ME meeting.
669. Marcus Vinicius Carvalho da Silva, Nadia Nedjah, and Luiza de Macedo Mourelle. Evolution-
ary IP Assignment for Ecient NoC-based System Design using Multi-objective Optimiza-
tion. In CEC09 [1350], pages 22572264, 2009. doi: 10.1109/CEC.2009.4983221. INSPEC
Accession Number: 10688816.
670. Cihan H. Dagli, Anna L. Buczak, Joydeep Ghosh, Mark J. Embrechts, and Okan Erson,
editors. Intelligent Engineering Systems through Articial Neural Networks Smart Engi-
neering System Design: Neural Networks, Fuzzy Logic, EP, Complex Systems and Articial
Life Proceedings of the Articial Neural Networks in Engineering Conference (ANNIE03),
November 25, 2003, St. Louis, MO, USA, volume 13. American Society of Mechanical En-
gineers (ASME): St. Louis, MO, USA.
671. Wei Dai, Paul Moynihan, Juanqiong Gou, Ping Zou, Xi Yang, Tiedong Chen, and Xin Wan.
Services Oriented Knowledge-based Supply Chain Application. In SCContest07 [1374], pages
660667, 2007. doi: 10.1109/SCC.2007.106. INSPEC Accession Number: 9869254.
672. Hosei Daigaku, Shietung Peng, Vladimir V Savchenko, and Shuichi Yukita, editors. First
International Symposium on Cyber Worlds: Theory and Practices (CW02), November 68,
2002. IEEE Computer Society Press: Los Alamitos, CA, USA. isbn: 0-7695-1862-1.
Google Books ID: lxIOAAAACAAJ. OCLC: 51208033, 65194958, 71489103, and
423965835.
673. R. J. Dakin. A Tree-Search Algorithm for Mixed Integer Programming Problems. The
1010 REFERENCES
Computer Journal, Oxford Journals, 8(3):250255, 1965, British Computer Society: Swindon,
UK. doi: 10.1093/comjnl/8.3.250.
674. Gerard E. Dallal. The Little Handbook of Statistical Practice. Tufts University, Jean Mayer
USDA Human Nutrition Research Center on Aging, Biostatistics Unit: Boston, MA, USA,
July 16, 2008. Fully available at http://www.statisticalpractice.com/ [accessed 2008-
08-15].
675. Hai H. Dam, Hussein A. Abbass, and Chris Lokan. DXCS: An XCS System for Distributed
Data Mining. In GECCO05 [304], pages 18831890, 2005. Fully available at http://doi.
acm.org/10.1145/1068009.1068326 [accessed 2007-09-12]. See also [676].
676. Hai H. Dam, Hussein A. Abbass, and Chris Lokan. DXCS: An XCS System for Distributed
Data Mining. Technical Report TR-ALAR-200504002, University of New South Wales, School
of Information Technology and Electrical Engineering, Articial Life and Adaptive Robotics
Laboratory: Canberra, Australia, 2005. Fully available at http://www.itee.adfa.edu.
au/
brian/pubs/1999/cec99/pgado.
pdf [accessed 2010-08-01]. CiteSeer
x
: 10.1.1.112.5296. See also [2270].
699. Richard Dawkins. The Evolution of Evolvability. In Articial Life87 [1666], pages 201220,
1987.
700. Richard Dawkins. The Selsh Gene. Oxford University Press, Inc.: New York, NY,
USA, 1st/2nd edition, 1976October 1989. isbn: 0-192-86092-5. Google Books
ID: WkHO9HI7koEC.
701. Richard Dawkins. Climbing Mount Improbable. Penguin Books: London, UK and W.W.
Norton & Company: New York, NY, USA, 1 edition, 1996. isbn: 0140179186, 0141026170,
and 0670850187. Google Books ID: 5XUYHAAACAAJ, BuKaKAAACAAJ, TPzqAAAACAAJ, and
TvzqAAAACAAJ. asin: 0393039307 and 0393316823.
702. Sergio Granato de Ara ujo, Aloysio de Castro Pinto Pedroza, and Antonio Carneiro de
Mesquita Filho. Evolutionary Synthesis of Communication Protocols. In ICT03 [1776], pages
986993, volume 2, 2003. doi: 10.1109/ICTEL.2003.1191573. Fully available at http://www.
gta.ufrj.br/ftp/gta/TechReports/AMP03a.pdf [accessed 2008-06-21]. See also [703, 705].
703. Sergio Granato de Ara ujo, Aloysio de Castro Pinto Pedroza, and Antonio Carneiro de
1012 REFERENCES
Mesquita Filho. Uma Metodologia de Projeto de Protocolos de Comunicac ao Baseada em
Tecnicas Evolutivas. In SBrT03 [1274], 2003. Fully available at http://www.gta.ufrj.
br/ftp/gta/TechReports/AMP03e.pdf [accessed 2008-06-21]. See also [702, 704].
704. Sergio Granato de Ara ujo, Antonio Carneiro de Mesquita Filho, and Aloysio de Castro Pinto
Pedroza. Sntese de Circuitos Digitais Otimizados via Programac ao Genetica. In SEM-
ISH03 [3003], pages 273285, volume III, 2003. Fully available at http://www.gta.ufrj.
br/ftp/gta/TechReports/AMP03d.pdf [accessed 2008-06-21].
705. Sergio Granato de Ara ujo, Antonio Carneiro de Mesquita Filho, and Aloysio C. P. Pedroza.
A Scenario-Based Approach to Protocol Design Using Evolutionary Techniques. In EvoWork-
shops04 [2254], pages 178187, 2004. See also [702].
706. Bart de Boer. Classier Systems: A useful Approach to Machine Learning?, IR94-02. Mas-
ters thesis, Leiden University: Leiden, The Netherlands, August 1994, Ida Sprinkhuizen-
Kuyper and Egbert J. W. Boers, Supervisors. Fully available at ftp://ftp.cs.bham.
ac.uk/pub/authors/T.Kovacs/lcs.archive/DeBoer1994a.ps.gz [accessed 2010-12-15].
CiteSeer
x
: 10.1.1.38.6367.
707. Leandro Nunes de Castro, Fernando Jose Von Zuben, and Helder Knidel, editors. Pro-
ceedings of the 6th International Conference on Articial Immune Systems (ICARIS07),
August 2629, 2007, Santos, Brazil, volume 4628 in Lecture Notes in Computer Science
(LNCS). Springer-Verlag GmbH: Berlin, Germany.
708. Ivanoe de Falco, Antonio Della Cioppa, Domenico Maisto, Umberto Scafuri, and Ernesto
Tarantino. Extremal Optimization as a Viable Means for Mapping in Grids. In EvoWork-
shops09 [1052], pages 4150, 2009. doi: 10.1007/978-3-642-01129-0 5.
709. Edwin D. de Jong, Richard A. Watson, and Jordan B. Pollack. Reducing Bloat and Pro-
moting Diversity using Multi-Objective Methods. In GECCO01 [2570], pages 1118, 2001.
Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/jong_2001_
gecco.html and http://www.demo.cs.brandeis.edu/papers/rbpd_gecco01.ps.
gz [accessed 2009-07-09]. CiteSeer
x
: 10.1.1.28.4549.
710. Gerdien de Jong. Evolution of Phenotypic Plasticity: Patterns of Plasticity and the Emer-
gence of Ecotypes. New Phytologist, 166(1):101118, April 2005, New Phytologist Trust and
Wiley Interscience: Chichester, West Sussex, UK. doi: 10.1111/j.1469-8137.2005.01322.x.
711. Kenneth Alan De Jong. An Analysis of the Behavior of a Class of Genetic Adaptive Sys-
tems. PhD thesis, University of Michigan: Ann Arbor, MI, USA, August 1975, John Henry
Holland, Larry K. Flanigan, Richard A. Volz, and Bernard P. Zeigler, Committee members.
Fully available at http://cs.gmu.edu/
altenber/UH_
ICS/EC_REFS/MULTI_OBJ/DebPratapAgarwalMeyarivan.pdf [accessed 2009-07-17]. See
also [747, 748].
750. Kalyanmoy Deb, Lothar Thiele, Marco Laumanns, and Eckart Zitzler. Scalable Multi-
Objective Optimization Test Problems. In CEC02 [944], pages 825830, volume 1, 2002.
doi: 10.1109/CEC.2002.1007032. CiteSeer
x
: 10.1.1.18.7531. INSPEC Accession Num-
ber: 7321894.
751. Kalyanmoy Deb, Riccardo Poli, Wolfgang Banzhaf, Hans-Georg Beyer, Edmund K. Burke,
Paul J. Darwen, Dipankar Dasgupta, Dario Floreano, James A. Foster, Mark Harman,
Owen E. Holland, Pier Luca Lanzi, Lee Spector, Andrea G. B. Tettamanzi, and Dirk
Thierens, editors. Proceedings of the Genetic and Evolutionary Computation Conference, Part
I (GECCO04-I), June 2630, 2004, Red Lion Hotel: Seattle, WA, USA, volume 3102/2004
in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
isbn: 3-540-22344-4. Google Books ID: b7k G2KpRrQC. OCLC: 55857927, 181345757,
and 315013110. Library of Congress Control Number (LCCN): 2004107860. See also
[752, 1515, 2079].
752. Kalyanmoy Deb, Riccardo Poli, Wolfgang Banzhaf, Hans-Georg Beyer, Edmund K. Burke,
Paul J. Darwen, Dipankar Dasgupta, Dario Floreano, James A. Foster, Mark Harman,
Owen E. Holland, Pier Luca Lanzi, Lee Spector, Andrea G. B. Tettamanzi, and Dirk
Thierens, editors. Proceedings of the Genetic and Evolutionary Computation Conference,
Part II (GECCO04-II), June 2630, 2004, Red Lion Hotel: Seattle, WA, USA, volume
3103/2004 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin,
Germany. isbn: 3-540-22343-6. Google Books ID: ftKoWMXvHKoC. Library of Congress
Control Number (LCCN): 2004107860. See also [751, 1515, 2079].
753. Kalyanmoy Deb, J. Sundar, and Udaya Bhaskara Rao N. Reference Point Based Multi-
Objective Optimization using Evolutionary Algorithms. KanGAL Report 2005012, Kanpur
Genetic Algorithms Laboratory (KanGAL), Department of Mechanical Engineering, Indian
Institute of Technology Kanpur (IIT): Kanpur, Uttar Pradesh, India, December 2005. Fully
available at http://www.iitk.ac.in/kangal/papers/k2005012.pdf [accessed 2009-07-
18]. See also [746, 756].
754. Kalyanmoy Deb, Ankur Sinha, and Saku Kukkonen. Multi-Objective Test Problems, Link-
ages, and Evolutionary Methodologies. In GECCO06 [1516], pages 11411148, 2006.
doi: 10.1145/1143997.1144179. See also [755].
755. Kalyanmoy Deb, Ankur Sinha, and Saku Kukkonen. Multi-Objective Test Problems, Link-
ages, and Evolutionary Methodologies. KanGAL Report 2006001, Kanpur Genetic Algo-
rithms Laboratory (KanGAL), Department of Mechanical Engineering, Indian Institute of
Technology Kanpur (IIT): Kanpur, Uttar Pradesh, India, January 2006. Fully available
at http://www.iitk.ac.in/kangal/papers/k2006001.pdf [accessed 2009-07-11]. See also
[754].
756. Kalyanmoy Deb, J. Sundar, Udaya Bhaskara Rao N., and Shamik Chaudhuri. Reference Point
Based Multi-Objective Optimization using Evolutionary Algorithms. International Journal
of Computational Intelligence Research (IJCIR), 2(3):273286, 2006, Research India Publica-
1016 REFERENCES
tions: Delhi, India. Fully available at http://www.lania.mx/
ccoello/deb06b.pdf.
gz and http://www.ripublication.com/ijcirv2/ijcirv2n3_4.pdf [accessed 2009-07-
18]. See also [746, 753].
757. Stefano Debattisti, Nicola Marlat, Luca Mussi, and Stefano Cagnoni. Implementation of
a Simple Genetic Algorithm within the CUDA Architecture. Technical Report, Universit`a
degli Studi di Parma, Dipartimento di Ingegneria dellInformazione: Parma, Italy, 2009. Fully
available at http://www.gpgpgpu.com/gecco2009/3.pdf [accessed 2011-11-14].
758. Rina Dechter and Judea Pearl. Generalized Best-First Search Strategies and the Optimality of
A*. Journal of the Association for Computing Machinery (JACM), 32(3):505536, July 1985,
ACM Press: New York, NY, USA. doi: 10.1145/3828.3830. CiteSeer
x
: 10.1.1.89.3090.
759. Rina Dechter and Richard Sutton, editors. Proceedings of the Eighteenth National Con-
ference on Articial Intelligence and Fourteenth Conference on Innovative Applications of
Articial Intelligence (AAAI02, IAAI02), July 28August 1, 2002, Edmonton, Alberta,
Canada. AAAI Press: Menlo Park, CA, USA. Partly available at http://www.aaai.org/
Conferences/AAAI/aaai02.php and http://www.aaai.org/Conferences/IAAI/
iaai02.php [accessed 2007-09-06].
760. Garg Deepak, editor. Soft Computing. Allied Publishers: Vadodara, Gujrat, India, 2005.
isbn: 817764632X. Google Books ID: IkajJC9iGxMC.
761. Viktoriya Degeler, Ilce Georgievski, Alexander Lazovik, and Marco Aiello. Concept Mapping
for Faster QoS-Aware Web Service Composition. In SOCA10 [1378], 2010. See also [48
50, 320].
762. Frank K. H. A. Dehne, Todd Eavis, and Andrew Rau-Chaplin. Ecient Computation of
View Subsets. In DOLAP07 [2556], pages 6572, 2007. doi: 10.1145/1317331.1317343.
Fully available at http://dolap07.cs.aau.dk/dehne.pdf [accessed 2011-03-29].
CiteSeer
x
: 10.1.1.68.9167.
763. Marcel Dekker. Introduction to Set Theory. CRC Press, Inc.: Boca Raton, FL, USA, revised
and expanded, 3rd edition, June 22, 1999. isbn: 0-8247-7915-0.
764. Sarah Jane Delany and Michael Madden, editors. 18th Irish Conference on Articial Intelli-
gence and Cognitive Science (AICS07), August 2931, 2007, Dublin Institute of Technology:
Dublin, Ireland.
765. Federico Della Croce, Roberto Tadei, and Giuseppe Volta. A Genetic Algorithm for
the Job Shop Problem. Computers & Operations Research, 22(1):1524, January 1995,
Pergamon Press: Oxford, UK and Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/0305-0548(93)E0015-L.
766. Janez Demsar. Statistical Comparisons of Classiers over Multiple Data Sets. Journal of
Machine Learning Research (JMLR), 7:130, January 2006, MIT Press: Cambridge, MA,
USA. Fully available at http://jmlr.csail.mit.edu/papers/volume7/demsar06a/
demsar06a.pdf [accessed 2010-10-19]. CiteSeer
x
: 10.1.1.141.3142. See also [1020].
767. Jean-Louis Deneubourg and Simon Goss. Collective Patterns and Decision-Making. Ethol-
ogy, Ecology & Evolution, 1(4):295311, December 1989. Fully available at http://www.
ulb.ac.be/sciences/use/publications/JLD/53.pdfhttp://www.ulb.ac.be/
sciences/use/publications/JLD/53.pdf [accessed 2010-12-09].
768. Jean-Louis Deneubourg, Jacques M. Pasteels, and J. C. Verhaeghe. Probabilistic Behaviour
in Ants: A Strategy of Errors? Journal of Theoretical Biology, 105(2):259271, 1983, El-
sevier Science Publishers B.V.: Amsterdam, The Netherlands. Imprint: Academic Press
Professional, Inc.: San Diego, CA, USA. doi: 10.1016/S0022-5193(83)80007-1.
769. Berna Dengiz, Fulya Altiparmak, and Alice E. Smith. Local Search Genetic Algorithm
for Optimal Design of Reliable Networks. IEEE Transactions on Evolutionary Computation
(IEEE-EC), 1(3):179188, September 1997, IEEE Computer Society: Washington, DC, USA.
Fully available at http://www.eng.auburn.edu/
aesmith/publications/journal/
ieeeec.pdf [accessed 2009-09-01]. CiteSeer
x
: 10.1.1.40.8821.
770. Roozbeh Derakhshan, Frank K. H. A. Dehne, Othmar Korn, and Bela Stantic. Sim-
ulated Annealing For Materialized View Selection in Data Warehousing Environment.
In DBA06 [1407], pages 8994, 2006. Fully available at http://www.inf.ethz.ch/
personal/droozbeh/docs/503-036.pdf [accessed 2010-09-11]. See also [771].
771. Roozbeh Derakhshan, Bela Stantic, Othmar Korn, and Frank K. H. A. Dehne. Par-
allel Simulated Annealing for Materialized View Selection in Data Warehousing Envi-
ronments. In ICA3PP [372], pages 121132, 2008. doi: 10.1007/978-3-540-69501-1 14.
REFERENCES 1017
CiteSeer
x
: 10.1.1.148.4815. See also [770].
772. Anna Derezi nska. Advanced Mutation Operators Applicable in C# Programs. In
SET06 [2366], pages 283288, 2006.
773. Ulrich Derigs, editor. Optimization and Operations Research, Encyclopedia of Life Support
Systems (EOLSS). Developed under the Auspices of the UNESCO, Eolss Publishers: Oxford,
UK.
774. Proceedings of the 1978 ACM 7th Annual Computer Science Conference (CSC78), Febru-
ary 2123, 1978, Detroit, MI, USA.
775. I. Devarenne, Alexandre Caminada, H. Mabed, and T. Defaix. Adaptive Local Search for
a New Military Frequency Hopping Planning Problem. In EvoWorkshops08 [1051], pages
1120, 2008. doi: 10.1007/978-3-540-78761-7 2.
776. Vladan Devedzic, editor. Proceedings of the 25th IASTED International Multi-Conference on
Articial Intelligence and Applications (AIAP07), February 1214, 2007, Innsbruck, Aus-
tria. ACTA Press: Anaheim, CA, USA. Partly available at http://www.iasted.org/
conferences/pastinfo-549.html [accessed 2011-04-09].
777. Alexandre Devert. Building Processes Optimization: Toward an Articial Ontogeny based
Approach. PhD thesis, Universite Paris-Sud, Ecole Doctorale dInformatique: Paris, France
and Institut National de Recherche en Informatique et en Automatique (INRIA), Centre de
Recherche Saclay -
Ile-de-France: Orsay, France, May 2009, Marc Schoenauer and Nicolas
Bred`eche, Advisors.
778. Alexandre Devert, Thomas Weise, and Ke Tang. A Study on Scalable Representations for
Evolutionary Optimization of Ground Structures. Evolutionary Computation, 20, 2012, MIT
Press: Cambridge, MA, USA. doi: 10.1162/EVCO a 00054. PubMed ID: 22004002.
779. Yves Deville and Christine Solnon, editors. EPTCS 5: Proceedings 6th International Work-
shop on Local Search Techniques in Constraint Satisfaction, September 20, 2009, Lisbon,
Portugal. doi: 10.4204/EPTCS.5. arXiv ID: 0910.1404v1.
780. Yves Deville and Christine Solnon, editors. Proceedings of the 7th Workshop on Local Search
Techniques in Constraint Satisfaction, September 6, 2010, St Andrews, Scotland, UK.
781. Luc Devroye. Non-Uniform Random Variate Generation. Springer-Verlag London Lim-
ited: London, UK, 1986. isbn: 0-387-96305-7 and 3-540-96305-7. Fully available
at http://cg.scs.carleton.ca/
gianni/Papers/routing-chapters.pdf
and http://www.idsia.ch/
gianni/
Papers/PDCS98.ps.gz [accessed 2008-07-26]. See also [784, 785].
787. Gianni A. Di Caro, Frederick Ducatelle, and Luca Maria Gambardella. Wireless Commu-
nications for Distributed Navigation in Robot Swarms. In EvoWorkshops09 [1052], pages
2130, 2009. doi: 10.1007/978-3-642-01129-0 3.
788. Cecilia Di Chio, Stefano Cagnoni, Carlos Cotta, Marc Ebner, Anik o Ek art, Anna Isabel
1018 REFERENCES
Esparcia-Alc azar, Juan Julian Merelo-Guerv os, Ferrante Neri, Mike Preu, Hendrik Richter,
Julian Togelius, and Georgios N. Yannakakis, editors. Applications of Evolutionary Computa-
tion Proceedings of EvoApplications 2011: EvoCOMPLEX, EvoGAMES, EvoIASP, EvoIN-
TELLIGENCE, EvoNUM, and EvoSTOC, Part 1 (EvoAPPLICATIONS11), April 2729,
2011, Torino, Italy, volume 6624 in Theoretical Computer Science and General Issues (SL
1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-642-20525-5. Library of Congress Control Number (LCCN): 2011925061.
789. Robert P. Dick and Niraj K. Jha. MOGAC: A Multiobjective Genetic Algorithm for
Hardware-Software Co-synthesis of Hierarchical Heterogeneous Distributed Embedded Sys-
tems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,
17(10):920935, October 1998, IEEE Circuits and Systems Society: Piscataway, NJ, USA.
doi: 10.1109/43.728914. Fully available at http://www.jeo.org/emo/dick98.ps.gz [ac-
cessed 2009-07-31]. CiteSeer
x
: 10.1.1.46.5584. INSPEC Accession Number: 6092176.
790. Dirk Dickmanns, J urgen Schmidhuber, and Andreas Winklhofer. Der Genetische Algo-
rithmus: Eine Implementierung in Prolog. Technische Universitat M unchen, Institut f ur
Informatik, Lehrstuhl Professor Radig: Munich, Bavaria, Germany, 1987. Fully avail-
able at http://www.idsia.ch/
dinitz/
Papers/Dinitz_alg.pdf [accessed 2010-09-01].
801. Andrej Dobnikar, Nigel C. Steele, David W. Pearson, and Rudolf F. Albrecht, editors. Pro-
ceedings of the 4th International Conference on Articial Neural Nets and Genetic Algorithms
(ICANNGA99), April 69, 1999, Protoroz, Slovenia. Birkhauser Verlag: Basel, Switzer-
land and Springer-Verlag GmbH: Berlin, Germany. isbn: 3-211-83364-1. Google Books
ID: clKwynlfZYkC.
802. Karl Doerner, Manfred Gronalt, Richard F. Hartl, Marc Reimann, Christine Strauss,
and Michael Stummer. Savings Ants for the Vehicle Routing Problem. In EvoWork-
shops02 [465], pages 1120, 2002. doi: 10.1007/3-540-46004-7 2. Fully avail-
able at http://epub.wu-wien.ac.at/dyn/virlib/wp/mediate/epub-wu-01_1f1.
pdf?ID=epub-wu-01_1f1 [accessed 2008-10-27]. CiteSeer
x
: 10.1.1.6.8882. See also [2811].
803. Benjamin Doerr, Edda Happ, and Christian Klein. Crossover can provably be
useful in Evolutionary Computation. In GECCO08 [1519], pages 539546, 2008.
doi: 10.1145/1389095.1389202. Fully available at http://www.mpi-inf.mpg.de/
edda/papers/
gecco2008_1.pdf [accessed 2011-11-23]. CiteSeer
x
: 10.1.1.163.9588. See also [804].
804. Benjamin Doerr, Edda Happ, and Christian Klein. Crossover can provably be useful in
Evolutionary Computation. Theoretical Computer Science, pages 117, 2010, Elsevier Science
Publishers B.V.: Essex, UK. doi: 10.1016/j.tcs.2010.10.035. See also [803].
805. Pedro Domingos and Michael Pazzani. On the Optimality of the Simple Bayesian Clas-
sier under Zero-One Loss. Machine Learning, 29(2-3):103130, November 1997, Kluwer
Academic Publishers: Norwell, MA, USA and Springer Netherlands: Dordrecht, Nether-
lands. doi: 10.1023/A:1007413511361. Fully available at http://citeseer.ist.psu.
edu/old/domingos97optimality.html and http://www.ics.uci.edu/
pazzani/
Publications/mlj97-pedro.pdf [accessed 2009-09-10].
806. Wolfgang Domschke. Logistik, Rundreisen und Touren, Oldenbourgs Lehr- und Handb ucher
der Wirtschafts- u. Sozialwissenschaften. Oldenbourg Verlag: Munich, Bavaria, Germany,
fourth edition, 1997. doi: 978-3-486-24273-7.
807. Marco Dorigo and Christian Blum. Ant Colony Optimization Theory: A Survey. Theo-
retical Computer Science, 344(2-3), November 17, 2005, Elsevier Science Publishers B.V.:
Essex, UK. doi: 10.1016/j.tcs.2005.05.020. Fully available at http://code.ulb.ac.be/
dbfiles/DorBlu2005tcs.pdf [accessed 2007-08-05].
808. Marco Dorigo and Luca Maria Gambardella. Ant Colony System: A Cooperative Learning
Approach to the Traveling Salesman Problem. IEEE Transactions on Evolutionary Compu-
tation (IEEE-EC), 1(1):5366, April 1997, IEEE Computer Society: Washington, DC, USA.
doi: 10.1109/4235.585892. Fully available at http://www.idsia.ch/
luca/acs-ec97.
pdf [accessed 2009-06-27]. CiteSeer
x
: 10.1.1.49.7702.
809. Marco Dorigo and Thomas St utzle. Ant Colony Optimization, Bradford Books. MIT
Press: Cambridge, MA, USA, July 1, 2004. isbn: 0-262-04219-3. Google Books
ID: aefcpY8GiEC.
810. Marco Dorigo, Vittorio Maniezzo, and Alberto Colorni. The Ant System: Optimization by a
Colony of Cooperating Agents. IEEE Transactions on Systems, Man, and Cybernetics Part
B: Cybernetics, 26(1):2941, February 1996, IEEE Systems, Man, and Cybernetics Society:
New York, NY, USA. doi: 10.1109/3477.484436. Fully available at ftp://iridia.ulb.ac.
be/pub/mdorigo/journals/IJ.10-SMC96.pdf and http://www.agent.ai/doc/
upload/200302/dori96.pdf [accessed 2009-06-26]. CiteSeer
x
: 10.1.1.50.6491. INSPEC
Accession Number: 5191313.
811. Marco Dorigo, Gianni A. Di Caro, and Luca Maria Gambardella. Ant Algorithms for Discrete
Optimization. Technical Report IRIDIA/98-10, Universite Libre de Bruxelles: Brussels,
Belgium, 1998. CiteSeer
x
: 10.1.1.72.9591. See also [812].
812. Marco Dorigo, Gianni A. Di Caro, and Luca Maria Gambardella. Ant Algorithms for
Discrete Optimization. Articial Life, 5(2):137172, Spring 1999, MIT Press: Cambridge,
MA, USA. doi: 10.1162/106454699568728. Fully available at ftp://ftp.idsia.ch/
1020 REFERENCES
pub/luca/papers/ij_23-alife99.ps.gz, http://code.ulb.ac.be/dbfiles/
DorDicGam1999al.pdf, http://www.cs.ubc.ca/
hutter/earg/papers04-05/
artificial_life.pdf, http://www.idsia.ch/
luca/abstracts/papers/ij_
23-alife99.pdf, and http://www.idsia.ch/
luca/ij_23-alife99.pdf [ac-
cessed 2010-12-10]. See also [811].
813. Marco Dorigo, Gianni A. Di Caro, and Thomas St utzle. Special issue on Ant Algorithms.
Future Generation Computer Systems The International Journal of Grid Computing: The-
ory, Methods and Applications (FGCS), 16(8):851955, June 2000, Elsevier Science Publish-
ers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic Publishers Ltd.:
Amsterdam, The Netherlands.
814. Marco Dorigo, Gianni A. Di Caro, and Thomas St utzle, editors. From Ant Colonies to Arti-
cial Ants First International Workshop on Ant Colony Optimization and Swarm Intelligence
(ANTS98), October 1516, 2000, Brussels, Belgium. See also [813].
815. Marco Dorigo, Luca Maria Gambardella, Martin Middendorf, and Thomas St utzle, editors.
From Ant Colonies to Articial Ants Second International Workshop on Ant Colony Opti-
mization and Swarm Intelligence (ANTS00), September 89, 2000, Brussels, Belgium. See
also [817].
816. Marco Dorigo, Gianni A. Di Caro, and Michael Samples, editors. From Ant Colonies to
Articial Ants Third International Workshop on Ant Colony Optimization (ANTS02),
September 1214, 2002, Brussels, Belgium, volume 2463/2002 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-45724-0.
isbn: 3-540-44146-8.
817. Marco Dorigo, Luca Maria Gambardella, Martin Middendorf, and Thomas St utzle. Special
Section on Ant Colony Optimization. IEEE Transactions on Evolutionary Computation
(IEEE-EC), 6(4):317365, August 2002, IEEE Computer Society: Washington, DC, USA.
doi: 10.1109/TEVC.2002.802446.
818. Marco Dorigo, Mauro Birattari, Christian Blum, Luca Maria Gambardella, Francesco Mon-
dada, and Thomas St utzle, editors. Fourth International Workshop on Ant Colony Optimiza-
tion and Swarm Intelligence (ANTS04), September 58, 2004, Brussels, Belgium, volume
3172/2004 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin,
Germany. doi: 10.1007/b99492.
819. Marco Dorigo, Mauro Birattari, and Thomas St utzle. Ant Colony Optimization. IEEE
Computational Intelligence Magazine, 1(4):2839, November 2006, IEEE Computational In-
telligence Society: Piscataway, NJ, USA. doi: 10.1109/MCI.2006.329691. INSPEC Accession
Number: 9184238.
820. Marco Dorigo, Mauro Birattari, and Thomas St utzle. Ant Colony Optimization Articial
Ants as a Computational Intelligence Technique. IEEE Computational Intelligence Mag-
azine, 1(4):2839, 2006, IEEE Computational Intelligence Society: Piscataway, NJ, USA.
doi: 10.1109/MCI.2006.329691. Fully available at http://iridia.ulb.ac.be/
mbiro/
paperi/DorBirStu2006ieee-cim.pdf and http://iridia.ulb.ac.be/
mbiro/
paperi/IridiaTr2006-023r001.pdf [accessed 2010-09-26]. CiteSeer
x
: 10.1.1.64.9532.
INSPEC Accession Number: 9184238.
821. Marco Dorigo, Luca Maria Gambardella, Mauro Birattari, A. Martinoli, Riccardo Poli, and
Thomas St utzle, editors. Fifth International Workshop on Ant Colony Optimization and
Swarm Intelligence (ANTS06), September 47, 2006, Brussels, Belgium, volume 4150/2006
in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/11839088.
822. J urgen Dorn, Peter Hrastnik, and Albert Rainer. Web Service Discovery and Composition
with MOVE. In EEE05 [1371], pages 791792, 2005. doi: 10.1109/EEE.2005.142. INSPEC
Accession Number: 8530441. See also [317, 823, 2257].
823. J urgen Dorn, Albert Rainer, and Peter Hrastnik. Toward Semantic Composi-
tion of Web Services with MOVE. In CEC/EEE06 [2967], pages 437438, 2006.
doi: 10.1109/CEC-EEE.2006.89. Fully available at http://move.ec3.at/Papers/
WSC06.pdf [accessed 2007-10-25]. INSPEC Accession Number: 9189342. See also [318, 822, 2257].
824. Bernabe Dorronsoro Daz. The VRP Web. Auren: Madrid, Spain and University of Malaga
(UMA), Complejo Tecnologico, Departamento Lenguajes y Ciencias de la Computacion:
Campus de Teatinos, Malaga, Spain, March 2007. Fully available at http://neo.lcc.
uma.es/radi-aeb/WebVRP/index.html [accessed 2011-10-12].
REFERENCES 1021
825. Bernabe Dorronsoro Daz. Known Best Results. University of Malaga (UMA), Networking and
Emerging Optimization (NEO): Campus de Teatinos, Malaga, Spain, March 2007. Fully avail-
able at http://neo.lcc.uma.es/radi-aeb/WebVRP/results/BestResults.htm [ac-
cessed 2007-12-28].
826. Bernabe Dorronsoro Daz, Patricia Ruiz, Gregoire Danoy, Pascal Bouvry, and Lorenzo J. Tar-
don. Towards Connectivity Improvement in VANETs using Bypass Links. In CEC09 [1350],
pages 22012208, 2009. doi: 10.1109/CEC.2009.4983214. INSPEC Accession Num-
ber: 10688809.
827. Walter Dosch and Narayan C. Debnath, editors. Proceedings of the ISCA 13th Interna-
tional Conference on Intelligent and Adaptive Systems and Software Engineering (IASSE04),
July 13, 2004, Nice, France. isbn: 1-880843-51-X. Google Books ID: KigWPQAACAAJ and
TyyyAAAACAAJ.
828. Norman Richard Draper and Harry Smith. Applied Regression Analysis, Wiley Series in Prob-
ability and Mathematical Statistics Applied Probability and Statistics Section Series. Wi-
ley Interscience: Chichester, West Sussex, UK, 1966. isbn: 0471029955. OCLC: 6486827.
GBV-Identication (PPN): 024357847. Reviewed in [879].
829. Nicole Drechsler, Rolf Drechsler, and Bernd Becker. Multi-objective Optimization in Evo-
lutionary Algorithms Using Satisability Classes. In International Conference on Computa-
tional Intelligence: Theory and Applications 6th Fuzzy Days [2295], pages 108117, 1996.
doi: 10.1007/3-540-48774-3 14. Fully available at http://citeseer.ist.psu.edu/old/
drechsler99multiobjective.html [accessed 2009-07-18].
830. Nicole Drechsler, Rolf Drechsler, and Bernd Becker. Multi-Objective Optimisation Based on
Relation Favour. In EMO01 [3099], pages 154166, 2001. doi: 10.1007/3-540-44719-9 11.
Fully available at http://www.lania.mx/
ccoello/EMOO/drechsler01.pdf.gz [ac-
cessed 2011-12-05]. CiteSeer
x
: 10.1.1.65.5318.
831. Dimiter Driankov, Peter W. Eklund, and Anca L. Ralescu, editors. Fuzzy Logic and Fuzzy
Control: Proceedings of Workshops on Fuzzy Logic and Fuzzy Control (IJCAI91 Fuzzy
WS), August 24, 1991, Sydney, NSW, Australia, volume 833 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-58279-7.
OCLC: 150398218, 303915934, 303915937, 303915940, 303915944, 422860424,
473465173, and 501692697. See also [1987, 1988, 2122].
832. Moshe Dror, editor. Arc Routing: Theory, Solutions and Applications. Springer-Verlag
GmbH: Berlin, Germany, 2000. isbn: 0-7923-7898-9. Google Books ID: rPiHiE0ZZCkC.
833. Stefan Droste. Not All Linear Functions Are Equally Dicult for the Compact Genetic
Algorithm. In GECCO05 [304], pages 679686, 2005. doi: 10.1145/1068009.1068124. See
also [834].
834. Stefan Droste. A Rigorous Analysis of the Compact Genetic Algorithm for Linear Functions.
Natural Computing: An International Journal, 5(3):257283, September 2006, Kluwer Aca-
demic Publishers: Norwell, MA, USA and Springer Netherlands: Dordrecht, Netherlands.
doi: 10.1007/s11047-006-9001-0. See also [833].
835. Stefan Droste and Dirk Wiesmann. On Representation and Genetic Operators in Evo-
lutionary Algorithms. Technical Report CI41/98, Universitat Dortmund, Collaborative
Research Center (Sonderforschungsbereich) 531: Dortmund, North Rhine-Westphalia, Ger-
many, June 1998. Fully available at http://hdl.handle.net/2003/5341 [accessed 2009-07-
10]. CiteSeer
x
: 10.1.1.36.3354.
836. Stefan Droste, Thomas Jansen, and Ingo Wegener. On the Optimization of Unimodal
Functions with the (1+1) Evolutionary Algorithm. In PPSN V [866], pages 1322, 1998.
doi: 10.1007/BFb0056845.
837. Stefan Droste, Thomas Jansen, and Ingo Wegener. Perhaps Not a Free Lunch But At Least
a Free Appetizer. Reihe Computational Intelligence: Design and Management of Complex
Technical Processes and Systems by Means of Computational Intelligence Methods CI-45/98,
Universitat Dortmund, Collaborative Research Center (Sonderforschungsbereich) 531: Dort-
mund, North Rhine-Westphalia, Germany, September 1998. Fully available at http://hdl.
handle.net/2003/5339 [accessed 2009-03-01]. issn: 1433-3325. See also [838].
838. Stefan Droste, Thomas Jansen, and Ingo Wegener. Perhaps Not a Free Lunch But At Least
a Free Appetizer. In GECCO99 [211], pages 833839, 1999. See also [837].
839. Stefan Droste, Thomas Jansen, and Ingo Wegener. Optimization with Randomized Search
Heuristics The (A)NFL Theorem, Realistic Scenarios, and Dicult Functions. Reihe Com-
1022 REFERENCES
putational Intelligence: Design and Management of Complex Technical Processes and Sys-
tems by Means of Computational Intelligence Methods CI-91/00, Universitat Dortmund,
Collaborative Research Center (Sonderforschungsbereich) 531: Dortmund, North Rhine-
Westphalia, Germany, August 2000. Fully available at http://hdl.handle.net/2003/
5394 [accessed 2009-03-01]. issn: 1433-3325. See also [840].
840. Stefan Droste, Thomas Jansen, and Ingo Wegener. Optimization with Randomized Search
Heuristics The (A)NFL Theorem, Realistic Scenarios, and Dicult Functions. Theoretical
Computer Science, 287(1):131144, September 25, 2002, Elsevier Science Publishers B.V.:
Essex, UK. doi: 10.1016/S0304-3975(02)00094-4. CiteSeer
x
: 10.1.1.35.5850. See also
[839].
841. Proceedings of the Genetic and Evolutionary Computation Conference (GECCO11), July 12
16, 2011, Dublin, Ireland.
842. Marc Dubreuil, Christian Gagne, and Marc Parizeau. Analysis of a Master-Slave Archi-
tecture for Distributed Evolutionary Computations. IEEE Transactions on Systems, Man,
and Cybernetics Part B: Cybernetics, 36(1):229235, February 2006, IEEE Systems, Man,
and Cybernetics Society: New York, NY, USA. doi: 10.1109/TSMCB.2005.856724. Fully
available at http://vision.gel.ulaval.ca/
parizeau/publications/smc06.pdf
[accessed 2008-04-06]. INSPEC Accession Number: 8736975.
843. Frederick Ducatelle, Martin Roth, and Luca Maria Gambardella. Design of a User Space
Software Suite for Probabilistic Routing in Ad-Hoc Networks. In EvoWorkshops07 [1050],
pages 121128, 2007. doi: 10.1007/978-3-540-71805-5 13.
844. Richard O. Duda, Peter Elliot Hart, and David G. Stork. Pattern Classication, Esti-
mation, Simulation, and Control Wiley-Interscience Series in Discrete Mathematics and
Optimization. Wiley Interscience: Chichester, West Sussex, UK, 2nd edition, Novem-
ber 2000. isbn: 0-471-05669-3. Google Books ID: YoxQAAAAMAAJ, hyQgQAAACAAJ, and
o3I8PgAACAAJ. OCLC: 41347061, 154744650, and 474918353. Library of Congress
Control Number (LCCN): 99029981. GBV-Identication (PPN): 303957670.
845. John Duy and Jim Engle-Warnick. Using Symbolic Regression to Infer Strategies from
Experimental Data. In Fifth International Conference on Computing in Economics and Fi-
nance [262], page 150, 1999. Fully available at http://www.pitt.edu/
jduffy/papers/
Usr.pdf [accessed 2010-12-02]. CiteSeer
x
: 10.1.1.34.4205. See also [846].
846. John Duy and Jim Engle-Warnick. Using Symbolic Regression to Infer Strategies from Ex-
perimental Data. In Evolutionary Computation in Economics and Finance [549], Chapter 4,
pages 6184. Springer-Verlag GmbH: Berlin, Germany, 2002. Fully available at http://
www.pitt.edu/
gusz/papers/FunInf98-Eiben-Schippers.ps [ac-
cessed 2009-07-09]. CiteSeer
x
: 10.1.1.29.4885.
865.
Agoston E. Eiben and James E. Smith. Introduction to Evolutionary Computing, Natural
Computing Series. Springer New York: New York, NY, USA, 1st edition, November 2003.
isbn: 3540401849. Google Books ID: 7IOE5VIpFpwC and RRKo9xVFW QC.
866.
Agoston E. Eiben, Thomas Back, Marc Schoenauer, and Hans-Paul Schwefel, editors.
Proceedings of the 5th International Conference on Parallel Problem Solving from Nature
(PPSN V), September 2730, 1998, Amsterdam, The Netherlands, volume 1498/1998 in
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
1024 REFERENCES
doi: 10.1007/BFb0056843. isbn: 3-540-65078-4. Google Books ID: HLeU 1TkwTsC.
OCLC: 39739752, 150419863, 243486760, and 246324853.
867. Manfred Eigen and Peter K. Schuster. The Hypercycle: A Principle of Natural Self Orga-
nization. Springer-Verlag GmbH: Berlin, Germany, June 1979. isbn: 0387092935. Google
Books ID: P54PPAAACAAJ and UNJcAAAACAAJ. OCLC: 4665354.
868. Horst A. Eiselt, Michael Gendrau, and Gilbert Laporte. Arc Routing Problems, Part I:
The Chinese Postman Problem. Operations Research, 43(2):231242, MarchApril 1995,
Institute for Operations Research and the Management Sciences (INFORMS): Linthicum,
ML, USA and HighWire Press (Stanford University): Cambridge, MA, USA. JSTOR Stable
ID: 171832.
869. Anik o Ek art and Sandor Zoltan Nemeth. Selection Based on the Pareto Nondomination
Criterion for Controlling Code Growth in Genetic Programming. Genetic Programming and
Evolvable Machines, 2(1):6173, March 2001, Springer Netherlands: Dordrecht, Netherlands.
Imprint: Kluwer Academic Publishers: Norwell, MA, USA. doi: 10.1023/A:1010070616149.
870. Sven E. Eklund. A Massively Parallel GP Engine in VLSI. In CEC02 [944], pages 629633,
2002. doi: 10.1109/CEC.2002.1006999. INSPEC Accession Number: 7321863.
871. El-Sayed M. El-Alfy. Discovering Classication Rules for Email Spam Filtering with
an Ant Colony Optimization Algorithm. In CEC09 [1350], pages 17781783, 2009.
doi: 10.1109/CEC.2009.4983156. INSPEC Accession Number: 10688751.
872. Khaled El-Fakihy, Hirozumi Yamaguchi, and Gregor von Bochmann. A Method and a Ge-
netic Algorithm for Deriving Protocols for Distributed Applications with Minimum Com-
munication Cost. In PDCS99 [1410], pages 863868, 1999. Fully available at http://
www-higashi.ist.osaka-u.ac.jp/
mgcr/grasp/
gannbib/gannbib.html [accessed 2008-10-20]. See also [907].
907. Paola Festa and Mauricio G.C. Resende. An Annotated Bibliography of GRASP-
Part II: Applications. International Transactions in Operational Research, 16(2):
131172, March 2009, Blackwell Publishing Ltd: Chichester, West Sussex, UK.
doi: 10.1111/j.1475-3995.2009.00664.x. See also [906].
908. Anthony V. Fiacco and Garth P. McCormick. Nonlinear Programming: Sequential Un-
constrained Minimization Techniques. John Wiley & Sons Ltd.: New York, NY, USA
REFERENCES 1027
and Defense Technical Information Center (DTIC): Fort Belvoir, VA, USA, January 1969.
isbn: 0471258105. Google Books ID: Hjp7OwAACAAJ and TYONOgAACAAJ. See also [909].
909. Anthony V. Fiacco and Garth P. McCormick. Nonlinear Programming: Sequential Uncon-
strained Minimization Techniques, volume 4 in Classics in Applied Mathematics Series. So-
ciety for Industrial and Applied Mathematics (SIAM): Philadelphia, PA, USA, new edition,
April 1990. isbn: 0898712548. Google Books ID: 8NhQAAAAMAAJ, sjD RJfxvr0C, and
sjD RJfxvr0C&dq. See also [908].
910. Volker Fickert, Winfried Kalfa, and Thomas Weise. Framework for Distributed Simula-
tion and Measuring of Complex Relations of Operating System Components. In EDME-
DIA05 [1568], pages 38653870, 2005. Fully available at http://www.it-weise.de/
documents/files/FKW2005OSF.pdf [accessed 2010-12-07]. See also [2900].
911. M.V. Fidelis, Heitor Silverio Lopes, and Alex Alves Freitas. Discovering Comprehensible
Classication Rules with a Genetic Algorithm. In CEC00 [1333], pages 805810, volume 1,
2000. doi: 10.1109/CEC.2000.870381. CiteSeer
x
: 10.1.1.35.1828.
912. Jonathan E. Fieldsend, Richard M. Everson, and Sameer Singh. Using Unconstrained
Elite Archives for Multi-Objective Optimisation. IEEE Transactions on Evolutionary
Computation (IEEE-EC), 7(3):305323, June 2003, IEEE Computer Society: Washington,
DC, USA. doi: 10.1109/TEVC.2003.810733. Fully available at http://empslocal.ex.
ac.uk/people/staff/jefields/JF_06.pdf, http://eref.uqu.edu.sa/files/
using_unconstrained_elite_archives_for_m.pdf, and http://www.lania.mx/
wbl/biblio/gecco1999/
GP-463.pdf [accessed 2010-08-23]. CiteSeer
x
: 10.1.1.153.15.
983. Eibe Frank, Mark A. Hall, Georey Holmes, Richard Kirkby, Bernhard Pfahringer, Ian H.
Witten, and Leonhard Trigg. WEKA A Machine Learning Workbench for Data
Mining. In The Data Mining and Knowledge Discovery Handbook [1815], Chapter 62,
pages 13051314. Springer Science+Business Media, Inc.: New York, NY, USA, 2005.
REFERENCES 1033
doi: 10.1007/0-387-25465-X 62. Fully available at http://www.cs.waikato.ac.nz/
ml/
publications/2005/weka_dmh.pdf [accessed 2008-11-19].
984. Gene F. Franklin and Anthony N. Michel, editors. Proceedings of the 24th IEEE Conference
on Decision and Control (CDC85), December 1113, 1985, Bonaventure Hotel & Spa: Fort
Lauderdale, FL, USA. IEEE (Institute of Electrical and Electronics Engineers): Piscataway,
NJ, USA. Library of Congress Control Number (LCCN): 85CH2245-9. Catalogue no.: 79-
640961.
985. Daniel Raymond Frantz. Nonlinearities in Genetic Adaptive Search. PhD thesis, University
of Michigan: Ann Arbor, MI, USA, September 1972, John Henry Holland, Advisor. Fully
available at http://deepblue.lib.umich.edu/handle/2027.42/4950 [accessed 2010-08-
03]. Order No.: AAI7311116. University Microlms No.: 73-11116. ID: UMR1485. Published
as Technical Report Nr. 138. See also [986].
986. Daniel Raymond Frantz. Nonlinearities in Genetic Adaptive Search. Dissertation Abstracts
International (DAI), 33(11):5240B5241B, ProQuest: Ann Arbor, MI, USA. See also [985].
987. Silvio Franz, Matteo Marsili, and Haijun Zhou, editors. 2nd Asian-Pacic School on Sta-
tistical Physics and Interdisciplinary Applications, March 314, 2008, Beijng, China. Abdus
Salam International Centre for Theoretical Physics (ICTP): Triest, Italy, Chinese Center
of Advanced Science and Technology (CCAST): Beijng, China, and Chinese Academy of
Sciences, Kavli Institute of Theoretical Physics China (KITPC): Beijng, China.
988. Alex S. Fraser. Simulation of Genetic Systems by Automatic Digital Computers. I. Introduc-
tion. Australian Journal of Biological Science (AJBS), 10:484491, 1957. See also [989, 990].
989. Alex S. Fraser. Simulation of Genetic Systems by Automatic Digital Computers. II. Eects
of Linkage or Rates of Advance under Selection. Australian Journal of Biological Science
(AJBS), 10:484491, 1957. See also [990].
990. Alex S. Fraser. Simulation of Genetic Systems by Automatic Digital Computers. VI. Epistasis.
Australian Journal of Biological Science (AJBS), 13(2):150162, 1960. See also [988, 989].
991. William J. Frawley, Gregory Piatetsky-Shapiro, and Christopher J. Matheus. Knowl-
edge Discovery in Databases: An Overview. AI Magazine, 13(3):5770, Fall 1992,
AAAI Press: Menlo Park, CA, USA. Fully available at http://www.aaai.
org/ojs/index.php/aimagazine/article/download/1011/929 and http://
www.kdnuggets.com/gpspubs/aimag-kdd-overview-1992.pdf [accessed 2009-09-09].
CiteSeer
x
: 10.1.1.18.1674.
992. 12th European Conference on Machine Learning (ECML01), September 37, 2001, Freiburg,
Germany.
993. Alex Alves Freitas. A Genetic Programming Framework for Two Data Mining Tasks: Classi-
cation and Generalized Rule Induction. In GP97 [1611], pages 96101, 1997. Fully available
at http://kar.kent.ac.uk/21483/ [accessed 2010-12-04]. CiteSeer
x
: 10.1.1.47.4151 and
10.1.1.56.2449.
994. Alex Alves Freitas. Data Mining and Knowledge Discovery with Evolutionary Algo-
rithms, Natural Computing Series. Springer New York: New York, NY, USA, 2002.
isbn: 3-540-43331-7. Google Books ID: KkdZlfQJvbYC. OCLC: 49415761, 248441650,
and 492385968. Library of Congress Control Number (LCCN): 2002021728. LC Classi-
cation: QA76.9.D343 F72 2002.
995. Richard M. Friedberg. A Learning Machine: Part I. IBM Journal of Research and Develop-
ment, 2(1):213, November 1958. doi: 10.1147/rd.21.0002. See also [996].
996. Richard M. Friedberg, B. Dunham, and J. H. North. A Learning Machine: Part II. IBM
Journal of Research and Development, 3(3):282287, July 1959. doi: 10.1147/rd.33.0282. See
also [995].
997. Drew Fudenberg and Jean Tirole. Game Theory. MIT Press: Cambridge, MA, USA, Au-
gust 1991. isbn: 0-2620-6141-4. Google Books ID: pFPHKwXro3QC.
998. Cory Fujiko and John Dickinson. Using the Genetic Algorithm to Generate LISP Source
Code to Solve the Prisoners Dilemma. In ICGA87 [1132], pages 236240, 1987.
999. Cory Fujuki. An Evaluation of Hollands Genetic Algorithm Applied to a Program Generator.
Masters thesis, University of Idaho, Computer Science Department: Moscow, ID, USA, 1986.
1000. David T. Fullwood. Percolation in Two-Dimensional Grain Boundary Structures, and
Polycrystal Property Closures. Masters thesis, Brigham Young University: Provo, UT,
USA, December 2005. Fully available at http://contentdm.lib.byu.edu/ETD/image/
etd1045.pdf [accessed 2009-06-21].
1034 REFERENCES
1001. Takeshi Furuhashi, editor. First Online Workshop on Soft Computing (WSC1), August 19
30, 1996, Nagoya University: Nagoya, Japan.
1002. Takeshi Furuhashi and Tomohiro Yoshikawa. Visualization Techniques for Mining of Solu-
tions. In ISIS07 [1579], pages 6871, 2007. Fully available at http://isis2007.fuzzy.
or.kr/submission/upload/A1484.pdf [accessed 2011-12-05].
G
1003. Bogdan Gabrys, Robert J. Howlett, and Lakhmi C. Jain, editors. Proceedings of the
10th International Conference on Knowledge-Based Intelligent Information and Engineer-
ing Systems, Part I (KES06-I), October 911, 2006, Bournemouth International Centre:
Bournemouth, UK, volume 4251/2006 in Lecture Notes in Articial Intelligence (LNAI,
SL7), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
isbn: 3-540-46535-9. See also [1004, 1005].
1004. Bogdan Gabrys, Robert J. Howlett, and Lakhmi C. Jain, editors. Proceedings of the
10th International Conference on Knowledge-Based Intelligent Information and Engineer-
ing Systems, Part II (KES06-II), October 911, 2006, Bournemouth International Cen-
tre: Bournemouth, UK, volume 4252/2006 in Lecture Notes in Articial Intelligence (LNAI,
SL7), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
isbn: 3-540-46537-5. See also [1003, 1005].
1005. Bogdan Gabrys, Robert J. Howlett, and Lakhmi C. Jain, editors. Proceedings of the
10th International Conference on Knowledge-Based Intelligent Information and Engineer-
ing Systems, Part III (KES06-III), October 911, 2006, Bournemouth International Cen-
tre: Bournemouth, UK, volume 4253/2006 in Lecture Notes in Articial Intelligence (LNAI,
SL7), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Ger-
many. doi: 10.1007/11893011. isbn: 3-540-46542-1. Library of Congress Control Number
(LCCN): 2006933827. See also [1003, 1004].
1006. Malgorzata Gadomska and Andrzej Pacut. Performance of Ant Routing Algorithms When
Using TCP. In EvoWorkshops07 [1050], pages 110, 2007. doi: 10.1007/978-3-540-71805-5 1.
1007. Pablo Galiasso and Roger L. Wainwright. A Hybrid Genetic Algorithm for the Point to
Multipoint Routing Problem with Single Split Paths. In SAC01 [24], pages 327332, 2001.
doi: 10.1145/372202.372354. CiteSeer
x
: 10.1.1.20.8236.
1008. Ante Galic, Tonci Caric, and Hrvoje Gold. MARS A Programming Language for
Solving Vehicle Routing Problems. In Recent Advances in City Logistics. Proceedings
of the 4th International Conference on City Logistics [2672], pages 4757, 2005. Fully
available at http://www.cro-grid.hr/hr/apps/rep/app/oot/fpz_galic_caric_
gold_final_paper.doc [accessed 2011-01-14].
1009. Marcus Gallagher, Marcus R. Frean, and Tom Downs. Real-Valued Evolutionary Optimiza-
tion using a Flexible Probability Density Estimator. In GECCO99 [211], pages 840846,
1999. CiteSeer
x
: 10.1.1.35.5113.
1010. E. A. Galperin. Pareto Analysis vis-`a-vis Balance Space Approach in Multiobjective Global
Optimization. Journal of Optimization Theory and Applications, 93(3):533545, June 1997,
Springer Netherlands: Dordrecht, Netherlands and Plenum Press: New York, NY, USA.
doi: 10.1023/A:1022639028824.
1011. Luca Maria Gambardella and Marco Dorigo. Solving Symmetric and Asymmetric TSPs by
Ant Colonies. In CEC96 [1445], pages 622627, 1996. doi: 10.1109/ICEC.1996.542672.
Fully available at http://www.idsia.ch/
qian/docs/
geman.pdf [accessed 2011-11-21].
1044. Hannes Geyer, Peter Ulbig, and Siegfried Schulz. Encapsulated Evolution Strategies for the
Determination of Group Contribution Model Parameters in Order to Predict Thermodynamic
Properties. In PPSN V [866], pages 978987, 1998. doi: 10.1007/BFb0056939. See also
[1045, 1046].
1045. Hannes Geyer, Peter Ulbig, and Siegfried Schulz. Use of Evolutionary Algorithms for
the Calculation of Group Contribution Parameters in order to Predict Thermodynamic
properties Part 2: Encapsulated evolution strategies. Computers and Chemical En-
gineering, 23(7):955973, July 1, 1999, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/S0098-1354(99)00270-7. See also [1044, 1046].
1046. Hannes Geyer, Peter Ulbig, and Siegfried Schulz. Verschachtelte Evolutionsstrategien zur
Optimierung nichtlinearer verfahrenstechnischer Regressionsprobleme. Chemie Ingenieur
Technik (CIT), 72(4):369373, April 2000, Wiley Interscience: Chichester, West Sussex,
UK. doi: 10.1002/1522-2640(200004)72:4<369::AID-CITE369>3.0.CO;2-W. Fully avail-
able at http://www3.interscience.wiley.com/cgi-bin/fulltext/76500452/
PDFSTART [accessed 2010-08-01]. See also [1044, 1045].
1047. Zoubin Ghahramani, editor. Proceedings of the 24th Annual International Conference on
Machine Learning (ICML07), June 2024, 2007, Oregon State University: Corvallis, OR,
USA, volume 227 in ACM International Conference Proceeding Series (AICPS). Omipress:
Madison, WI, USA. Fully available at http://www.machinelearning.org/icml2007_
proc.html [accessed 2010-06-30].
1048. Ashish Ghosh and Lakhmi C. Jain, editors. Evolutionary Computation in Data Mining,
volume 163/2005 in Studies in Fuzziness and Soft Computing. Springer-Verlag GmbH:
Berlin, Germany, 2005. doi: 10.1007/3-540-32358-9. isbn: 3-540-22370-3. Google Books
ID: Caevy3rrjPUC. OCLC: 56658773, 249236978, 318293100, and 320964275. Library
of Congress Control Number (LCCN): 2004111009.
1049. Ashish Ghosh and Shigeyoshi Tsutsui, editors. Advances in Evolutionary Computing The-
ory and Applications, Natural Computing Series. Springer New York: New York, NY,
USA, November 22, 2002. isbn: 3-540-43330-9. Google Books ID: OGMEMC9P3vMC.
OCLC: 50207987, 249607003, and 314328282. Library of Congress Control Number
(LCCN): 2002029164. GBV-Identication (PPN): 35332180X and 358205859. LC Clas-
sication: QA76.618 .A215 2003.
1050. Mario Giacobini, Anthony Brabazon, Stefano Cagnoni, Gianni A. Di Caro, Rolf Drech-
sler, Muddassar Farooq, Andreas Fink, Evelyne Lutton, Penousal Machado, Stefan Min-
ner, Michael ONeill, Juan Romero, Franz Rothlauf, Giovanni Squillero, Hideyuki Tak-
agi, A. Sima Uyar, and Shengxiang Yang, editors. Applications of Evolutionary Comput-
ing, Proceedings of EvoWorkshops 2007: EvoCoMnet, EvoFIN, EvoIASP, EvoINTERAC-
1038 REFERENCES
TION, EvoMUSART, EvoSTOC and EvoTransLog (EvoWorkshops07), April 1113, 2007,
Val`encia, Spain, volume 4448/2007 in Theoretical Computer Science and General Issues (SL
1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-540-71805-5. isbn: 3-540-71804-4. Google Books ID: DtwgBJkn7iMC.
OCLC: 122935862, 152418528, 255966727, and 318300154. Library of Congress Con-
trol Number (LCCN): 2007923848.
1051. Mario Giacobini, Anthony Brabazon, Stefano Cagnoni, Gianni A. Di Caro, Rolf Drech-
sler, Anik o Ek art, Anna Isabel Esparcia-Alc azar, Muddassar Farooq, Andreas Fink, Jon
McCormack, Michael ONeill, Juan Romero, Franz Rothlauf, Giovanni Squillero, A. Sima
Uyar, and Shengxiang Yang, editors. Applications of Evolutionary Computing Proceed-
ings of EvoWorkshops 2008: EvoCOMNET, EvoFIN, EvoHOT, EvoIASP, EvoMUSART,
EvoNUM, EvoSTOC, and EvoTransLog (EvoWorkshops08), May 2628, 2008, Naples, Italy,
volume 4974/2008 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany. doi: 10.1007/978-3-540-78761-7. isbn: 3-540-78760-7. Google Books
ID: ibbRDnV1vUkC.
1052. Mario Giacobini, Penousal Machado, Anthony Brabazon, Jon McCormack, Stefano Cagnoni,
Michael ONeill, Gianni A. Di Caro, Ferrante Neri, Anik o Ek art, Mike Preu, Anna Is-
abel Esparcia-Alc azar, Franz Rothlauf, Muddassar Farooq, Ernesto Tarantino, Andreas
Fink, and Shengxiang Yang, editors. Applications of Evolutionary Computing Proceedings
of EvoWorkshops 2009: EvoCOMNET, EvoENVIRONMENT, EvoFIN, EvoGAMES, Evo-
HOT, EvoIASP, EvoINTERACTION, EvoMUSART, EvoNUM, EvoSTOC, EvoTRANSLOG
(EvoWorkshops09), April 1517, 2009, Eberhard-Karls-Universitat T ubingen, Fakult at f ur
Informations- und Kognitionswissenschaften: T ubingen, Germany, volume 5484/2009 in The-
oretical Computer Science and General Issues (SL 1), Lecture Notes in Computer Sci-
ence (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/978-3-642-01129-0.
isbn: 3-642-01128-4. Partly available at http://evostar.na.icar.cnr.it/
EvoWorkshops/EvoWorkshops.html [accessed 2011-02-28]. Google Books ID: NvOd8Rz997AC.
1053. K. C. Giannakoglou, D. T. Tsahalis, J. Periaux, K. D. Papailiou, and Terence Claus Fogarty,
editors. Proceedings of the Conference on Evolutionary Methods for Design Optimization
and Control with Applications to Industrial Problems (EUROGEN01), September 1921,
2001, Athens, Greece. International Center for Numerical Methods in Engineering (Cmine):
Barcelona, Catalonia, Spain. isbn: 84-89925-97-6. Partly available at http://www.
mech.ntua.gr/
genitor/1993/icga93.ps.
gz [accessed 2009-08-20]. CiteSeer
x
: 10.1.1.54.3472.
1107. Martina Gorges-Schleuter. ASPARAGOS: An Asynchronous Parallel Genetic Optimization
Strategy. In ICGA89 [2414], pages 422427, 1989.
1108. Martina Gorges-Schleuter. Explicit Parallelism of Genetic Algorithms through Population
Structures. In PPSN I [2438], pages 150159, 1990. doi: 10.1007/BFb0029746.
1109. James Gosling and Henry McGilton. The Java Language Environment A White Paper.
Technical Report, Sun Microsystems, Inc.: Santa Clara, CA, USA, May 1996. Fully available
at http://java.sun.com/docs/white/langenv/ [accessed 2007-07-03].
1110. James Gosling, Bill Joy, Guy Steele, and Gilad Bracha. The Java
TM
Language Specication,
The Java Series. Prentice Hall International Inc.: Upper Saddle River, NJ, USA, Sun Mi-
crosystems Press (SMP): Santa Clara, CA, USA, and Addison-Wesley Professional: Reading,
MA, USA, 3rd edition, May 2005. isbn: 0-321-24678-0. Fully available at http://java.
sun.com/docs/books/jls/ [accessed 2007-09-14].
1111. Simon Goss, R. Beckers, Jean-Louis Deneubourg, S. Aron, and Jacques M. Pasteels. How
trail Laying and Trail following can solve Foraging Problems for Ant Colonies. In NATO
Advanced Research Workshop on Behavioural Mechanisms of Food Selection [1306], pages
661678, 1989.
1112. William Sealy Gosset. The Probable Error of a Mean. Biometrika, 6(1):125, March 1908,
Oxford University Press, Inc.: New York, NY, USA. Fully available at http://www.york.
ac.uk/depts/maths/histstat/student.pdf [accessed 2007-09-30]. Because the author was
not allowed to publish this article, he used the pseudonym Student. Reprinted in [1113].
1113. William Sealy Gosset. The Probable Error of a Mean. In Students Collected Papers [1114],
pages 1134. Cambridge University Press: Cambridge, UK and Biometrika Oce: London,
UK, 1942. Reprint of [1112].
1114. William Sealy Gosset, author. Egon Sharpe Pearson and John Wishart, editors. Students
Collected Papers. Cambridge University Press: Cambridge, UK and Biometrika Oce:
London, UK, 1942. Google Books ID: 39fvGAAACAAJ, 3tfvGAAACAAJ, SdKEAAAAIAAJ,
UoJsAAAAMAAJ, and rqM2HQAACAAJ. OCLC: 220708760, 258570743, 313515170, and
318188805. With a Foreword by Launce McMullen.
1115. Jens Gottlieb and G unther R. Raidl, editors. Proceedings of the 4th European Confer-
ence on Evolutionary Computation in Combinatorial Optimization (EvoCOP04), April 57,
2004, Coimbra, Portugal, volume 3004/2004 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/b96499. isbn: 3-540-21367-8.
1116. Jens Gottlieb and G unther R. Raidl, editors. Proceedings of the 6th European Conference
on Evolutionary Computation in Combinatorial Optimization (EvoCOP06), April 1012,
2006, Budapest, Hungary, volume 3906/2006 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-33178-6.
1117. Jens Gottlieb, Elena Marchiori, and Claudio Rossi. Evolutionary Algorithms for the Satis-
REFERENCES 1043
ability Problem. Evolutionary Computation, 10(1):3550, Spring 2002, MIT Press: Cam-
bridge, MA, USA. doi: 10.1162/106365602317301763. Fully available at http://www.
cs.ru.nl/
wbl/biblio/gecco2005lbp/
papers/56-hammond.pdf [accessed 2010-08-07].
1175. Lin Han and Xingshi He. A Novel Opposition-Based Particle Swarm Optimization for Noisy
Problems. In ICNC07 [1711], pages 624629, volume 3, 2007. doi: 10.1109/ICNC.2007.119.
1176. David J. Hand, Heikki Mannila, and Padhraic Smyth. Principles of Data Mining, volume
6 in Adaptive Computation and Machine Learning, Bradford Books. Prentice-Hall Of India
Pvt. Ltd. (PHI): New Delhi, India, August 2001. isbn: 0-262-08290-X and 8120324579.
Google Books ID: 5i2WPwAACAAJ and SdZ-bhVhZGYC. OCLC: 46866355.
1177. Hisashi Handa, Dan Lin, Lee Chapman, and Xin Yao. Robust Solution of Salting
Route Optimisation Using Evolutionary Algorithms. In CEC06 [3033], pages 30983105,
2006. doi: 10.1109/CEC.2006.1688701. Fully available at http://escholarship.lib.
okayama-u.ac.jp/industrial_engineering/2/ [accessed 2008-06-19].
1178. Julia Handl, Simon C. Lovell, and Joshua D. Knowles. Multiobjectivization by
Decomposition of Scalar Cost Functions. In PPSN X [2354], pages 3140, 2008.
doi: 10.1007/978-3-540-87700-4 4. Fully available at http://dbkgroup.org/handl/
ppsn_decomp.pdf [accessed 2010-07-18].
1179. Proceedings of the Ninth International Conference on Simulated Evolution And Learning
(SEAL12), December 1619, 2012, Hanoi, Vietnam.
1180. James V. Hansen, Paul Benjamin Lowry, Rayman Meservy, and Dan McDonald. Ge-
netic Programming for Prevention of Cyberterrorism through Previous Dynamic and Evolv-
ing Intrusion Detection. Decision Support Systems, 43(4):13621374, August 2007, El-
sevier Science Publishers B.V.: Essex, UK. doi: 10.1016/j.dss.2006.04.004. Fully avail-
able at http://dx.doi.org/10.1016/j.dss.2006.04.004 and http://ssrn.com/
abstract=877981 [accessed 2008-06-17]. Special Issue on Clusters.
1181. James V. Hansen, Raymond Ros, Nikolas Mauny, Marc Schoenauer, and Anne Auger.
PSO Facing Non-Separable and Ill-Conditioned Problems. Technical Report 6447, In-
stitut National de Recherche en Informatique et en Automatique (INRIA), February 11,
2008. Fully available at http://hal.archives-ouvertes.fr/docs/00/25/01/60/
PDF/RR-6447.pdf [accessed 2009-10-20]. See also [147].
1182. Nikolaus Hansen and Andreas Ostermeier. Adapting Arbitrary Normal Mutation Distri-
butions in Evolution Strategies: The Covariance Matrix Adaptation. In CEC96 [1445],
pages 312317, 1996. doi: 10.1109/ICEC.1996.542381. Fully available at http://
www.bionik.tu-berlin.de/ftp-papers/CMAES.ps.Z, http://www.ml.inf.
ethz.ch/education/ws_06_07_seminar_mustererkennung/paper_hansen_
ostermeier, and https://eprints.kfupm.edu.sa/22718/1/22718.pdf [accessed 2009-
09-18]. CiteSeer
x
: 10.1.1.35.2147. INSPEC Accession Number: 5375406.
1183. Nikolaus Hansen and Andreas Ostermeier. Convergence Properties of Evolution Strate-
gies with the Derandomized Covariance Matrix Adaption: The (/
I
, )-CMA-ES. In EU-
FIT97 [3091], pages 650654, volume 1, 1997. CiteSeer
x
: 10.1.1.30.648.
1184. Nikolaus Hansen and Andreas Ostermeier. Completely Derandomized Self-Adaptation
in Evolution Strategies. Evolutionary Computation, 9(2):159195, 2001, MIT Press:
Cambridge, MA, USA. Fully available at http://www.bionik.tu-berlin.
de/user/niko/cmaartic.pdf, http://www.cs.colostate.edu/
whitley/CS640/
cmaartic.pdf, and http://www.lri.fr/
ankusiak/
Journal-papers/Harding.pdf [accessed 2010-06-27].
1195. Simon Harding and Wolfgang Banzhaf. Fast Genetic Programming on GPUs. In Eu-
roGP07 [856], pages 90101, 2007. doi: 10.1007/978-3-540-71605-1 9. Fully avail-
able at http://www.cs.mun.ca/
simas/dat5_08/presentations/
Implementing_Data_Cubes_Efficiently.pdf, and http://www.cs.sfu.ca/CC/
459/han/papers/harinarayan96.pdf [accessed 2011-03-28]. CiteSeer
x
: 10.1.1.63.9928.
See also [1200].
1202. Lisa Lavoie Harlow, Stanley A. Mulaik, and James H. Steiger, editors. What If There Were
No Signicance Tests?, Multivariate Applications Book Series. Lawrence Erlbaum Asso-
ciates, Inc. (LEA): Mahwah, NJ, USA, August 1997. isbn: 0805826343. Google Books
ID: lZ2ybZzrnroC. OCLC: 36892849 and 264623722.
1203. Emma Hart, Chris McEwan, Jonathan Timmis, and Andy Hone, editors. Proceedings of the
10th International Conference on Articial Immune Systems (ICARIS11), July 1821, 2011,
University of Cambridge, Computer Laboratory, William Gates Building: Cambridge, UK,
volume 6209 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin,
Germany.
1204. Peter Elliot Hart, Nils J. Nilsson, and Bertram Raphael. Correction to A Formal Basis for
the Heuristic Determination of Minimum Cost Paths. ACM SIGART Bulletin, -(37):2829,
December 1972, ACM Press: New York, NY, USA. doi: 10.1145/1056777.1056779.
1205. William Eugene Hart, Natalio Krasnogor, and James E. Smith, editors. Recent Advances in
Memetic Algorithms, volume 166/2005 in Studies in Fuzziness and Soft Computing. Springer-
Verlag GmbH: Berlin, Germany, 2005. doi: 10.1007/3-540-32363-5. isbn: 3-540-22904-3.
Google Books ID: LYf7YW4DmkUC. OCLC: 56697114 and 318297267. Library of Congress
Control Number (LCCN): 2004111139.
1206. Brad Harvey, James A. Foster, and Deborah Frincke. Byte Code Genetic Programming. In
GP98 LBP [1605], 1998. Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/
gp-html/harvey_1998_bcGP.html and http://www.csds.uidaho.edu/deb/jvm.
pdf [accessed 2008-09-16].
1207. Brad Harvey, James A. Foster, and Deborah Frincke. Towards Byte Code Genetic Program-
ming. In GECCO99 [211], page 1234, volume 2, 1999. Fully available at http://www.
cs.bham.ac.uk/
rogerw/papers/
Haynes-icga95.pdf [accessed 2007-10-03]. CiteSeer
x
: 10.1.1.48.1037.
1216. Thomas D. Haynes, Dale A. Schoenefeld, and Roger L. Wainwright. Type Inheritance
in Strongly Typed Genetic Programming. In Advances in Genetic Programming II [106],
Chapter 18, pages 359376. MIT Press: Cambridge, MA, USA, 1996. Fully available
at http://www.mcs.utulsa.edu/
xin/papers/published_aij_03.pdf [ac-
cessed 2011-08-06]. CiteSeer
x
: 10.1.1.118.4632.
1218. Richard Heady, George F. Luger, Arthur Maccabe, and Mark Servilla. The Architecture of
a Network Level Intrusion Detection System. Technical Report CS90-20, LA-SUB93-219,
W-7405, University of New Mexico, Department of Computer Science: Albuquerque, NM,
USA, August 15, 1990. doi: 10.2172/425295. Fully available at http://www.osti.gov/
energycitations/product.biblio.jsp?osti_id=425295 [accessed 2008-09-07].
1219. Wendi Rabiner Heinzelman, Anantha Chandrakasan, and Hari Balakrishnan. Energy-
Ecient Communication Protocol for Wireless Microsensor Networks. In HICSS00 [2574],
page 10, volume 2, 2000. Fully available at http://pdos.csail.mit.edu/decouto/
papers/heinzelman00.pdf and https://eprints.kfupm.edu.sa/37623/1/
37623.pdf [accessed 2008-11-16]. INSPEC Accession Number: 6530466.
1220. J org Heitkotter and David Beasley, editors. Hitch-Hikers Guide to Evolutionary Compu-
tation: A List of Frequently Asked Questions (FAQ) (HHGT). ENCORE (The Evolu-
tioNary Computation REpository Network): Santa Fe, NM, USA, 8.1 edition, March 29,
2000. Fully available at http://www.aip.de/
ast/EvolCompFAQ/, http://www.cse.
dmu.ac.uk/
fisch/
ricop/tabu_search_tutorial.pdf [accessed 2009-07-02]. CiteSeer
x
: 10.1.1.28.521 and
10.1.1.50.7347.
1229. Malcom Ian Heywood and A. Nur Zincir-Heywood. Dynamic Page Based Linear Genetic
Programming. IEEE Transactions on Systems, Man, and Cybernetics Part B: Cybernetics,
32(3):380388, June 2002, IEEE Systems, Man, and Cybernetics Society: New York, NY,
USA. doi: 10.1109/TSMCB.2002.999814. INSPEC Accession Number: 7284736.
1230. Joseph F. Hicklin. Application of the Genetic Algorithm to Automatic Program Generation.
Masters thesis, University of Idaho, Computer Science Department: Moscow, ID, USA, 1986.
Google Books ID: oC5IOAAACAAJ.
1231. Tetsuya Higuchi, Masaya Iwata, and Weixin Liu, editors. The First International Con-
ference on Evolvable Systems: From Biology to Hardware, Revised Papers (ICES96),
October 78, 1996, Tsukuba, Japan, volume 1259/1997 in Lecture Notes in Computer
Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-63173-9.
isbn: 3-540-63173-9.
1232. Frederick S. Hillier and Gerard J. Liebermann. Introduction to Operations Research. McGraw-
Hill Ltd.: Maidenhead, UK, England, Tsinghua University Press: Beijng, China, and Holden-
Day: San Francisco, CA, USA, 8th edition, 19802005. isbn: 0070600929, 0816238677,
7302122431, and 9751400147. Google Books ID: toNN2yNKRBIC.
1233. W. Daniel Hillis. Co-Evolving Parasites Improve Simulated Evolution as an Optimization
Procedure. Physica D: Nonlinear Phenomena, 42(1-2):228234, June 1990, Elsevier Science
Publishers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic Publishers
Ltd.: Amsterdam, The Netherlands. doi: 10.1016/0167-2789(90)90076-2.
1234. Philip F. Hingston, Luigi C. Barone, and Zbigniew Michalewicz, editors. Design by Evo-
lution: Advances in Evolutionary Design, Natural Computing Series. Springer New York:
New York, NY, USA. doi: 10.1007/978-3-540-74111-4. isbn: 3540741097. Google Books
ID: FzJF0sYDvw8C. asin: 3540741097.
1235. Georey E. Hinton and Steven J. Nowlan. How Learning Can Guide Evolution. Complex
Systems, 1(3):495502, 1987, Complex Systems Publications, Inc.: Champaign, IL, USA.
Fully available at http://htpprints.yorku.ca/archive/00000172/ [accessed 2008-09-10].
See also [1236].
1236. Georey E. Hinton and Steven J. Nowlan. How Learning Can Guide Evolution. In Adaptive
Individuals in Evolving Populations: Models and Algorithms [255], pages 447454. Addison-
Wesley Longman Publishing Co., Inc.: Boston, MA, USA and Westview Press, 1996. See
also [1235].
1237. Tomoyuki Hiroyasu, Hiroyuki Ishida, Mitsunori Miki, and Hisatake Yokouchi. Diculties of
Evolutionary Many-Objective Optimization. Intelligent Systems Design Laboratory Research
Reports (ISDL Reports) 20081006004, Doshisha University, Department of Knowledge Engi-
neering and Computer Sciences, Intelligent Systems Design Laboratory: Kyoto, Japan, Oc-
tober 13, 2008. Fully available at http://mikilab.doshisha.ac.jp/dia/research/
report/2008/1006/004/report20081006004.html [accessed 2009-07-18].
1238. Haym Hirsh and Steve A. Chien, editors. Proceedings of the Thirteenth Innovative Appli-
cations of Articial Intelligence Conference (IAAI01), April 79, 2001, Seattle, WA, USA.
AAAI Press: Menlo Park, CA, USA. isbn: 1-57735-134-7. Partly available at http://
www.aaai.org/Conferences/IAAI/iaai01.php [accessed 2007-09-06].
1239. Brahim Hnich, Mats Carlsson, Fran cois Fages, and Francesca Rossi, editors. Recent Ad-
vances in Constraints Joint ERCIM/CoLogNET International Workshop on Constraint
Solving and Constraint Logic Programming, CSCLP 2005 Revised Selected and Invited
Papers, June 2022, 2005, Uppsala, Sweden, volume 3978/2006 in Lecture Notes in Arti-
1052 REFERENCES
cial Intelligence (LNAI, SL7), Lecture Notes in Computer Science (LNCS). Springer-Verlag
GmbH: Berlin, Germany. doi: 10.1007/11754602. isbn: 3-540-34215-X. Google Books
ID: YUdkAAAACAAJ. Library of Congress Control Number (LCCN): 2006925094.
1240. Sir Charles Antony Richard (Tony) Hoare. Quicksort. The Computer Journal, Oxford Jour-
nals, 5(1):1016, 1962, British Computer Society: Swindon, UK. doi: 10.1093/comjnl/5.1.10.
1241. Cem Hocao glu and Arthur C. Sanderson. Evolutionary Speciation Using Minimal Represen-
tation Size Clustering. In EP95 [1848], pages 187203, 1995.
1242. Frank Homann, Mario Koppen, Klaus Klawonn, and Rajkumar Roy, editors. Soft Comput-
ing: Methodologies and Applications, volume 32 in Advances in Intelligent and Soft Com-
puting. Birkhauser Verlag: Basel, Switzerland, May 2005. doi: 10.1007/3-540-32400-3.
isbn: 3-540-25726-8. Google Books ID: ATswE4Z1m14C. Library of Congress Control
Number (LCCN): 2005925479. Post-conference proceedings of the 8th Online World Con-
ferences on Soft Computing (WSC8) which took place from September 29th to October 10th,
2003, organized by World Federation of Soft Computing (WFSC).
1243. Frank Homeister and Thomas Back. Genetic Algorithms and Evolution Strategies Simi-
larities and Dierences. In PPSN I [2438], pages 455469, 1990. doi: 10.1007/BFb0029787.
See also [1243].
1244. Frank Homeister and Hans-Paul Schwefel. KORR 2.1 An implementation of a (
+
,
)-evolution strategy. Technical Report, Universitat Dortmund, Fachbereich Informatik:
Dortmund, North Rhine-Westphalia, Germany, November 1990. Interner Bericht.
1245. Birgit Hofreiter, editor. Proceedings of the 11th IEEE Conference on Commerce and En-
terprise Computing (CEC09), July 2023, 2009, Vienna University of Technology: Vienna,
Austria. IEEE Computer Society: Piscataway, NJ, USA and Curran Associates, Inc.: Red
Hook, NY, USA. isbn: 0-7695-3755-3. Partly available at http://cec2009.isis.
tuwien.ac.at/ [accessed 2011-02-28]. GBV-Identication (PPN): 615078826 and 615079865.
1246. Christian Hohn and Colin R. Reeves. Are Long Path Problems Hard for Genetic Algorithms?
In PPSN IV [2818], pages 134143, 1996. doi: 10.1007/3-540-61723-X 977.
1247. John Henry Holland. Outline for a Logical Theory of Adaptive Systems. Journal of the
Association for Computing Machinery (JACM), 9(3):297314, ACM Press: New York, NY,
USA. doi: 10.1145/321127.321128.
1248. John Henry Holland. Nonlinear Environments Permitting Ecient Adaptation. In Proceed-
ings of the Symposium on Computer and Information Sciences II [2718], pages 147164,
1966.
1249. John Henry Holland. Adaptive Plans Optimal for Payo-Only Environments. In
HICSS69 [2056], pages 917920, 1969. DTIC Accession Number: AD0688839.
1250. John Henry Holland. Adaptation in Natural and Articial Systems: An Introduc-
tory Analysis with Applications to Biology, Control, and Articial Intelligence. Uni-
versity of Michigan Press: Ann Arbor, MI, USA, 1975. isbn: 0-472-08460-7.
Google Books ID: JE5RAAAAMAAJ, JOv3AQAACAAJ, Qk5RAAAAMAAJ, YE5RAAAAMAAJ, and
vk5RAAAAMAAJ. OCLC: 1531617 and 266623839. Library of Congress Control Number
(LCCN): 74078988. GBV-Identication (PPN): 075982293. LC Classication: QH546
.H64 1975. Newly published as [1252].
1251. John Henry Holland. Adaptive Algorithms for Discovering and Using General Patterns in
Growing Knowledge Bases. International Journal of Policy Analysis and Information Sys-
tems, 4(3):245268, 1980, Plenum Press: New York, NY, USA.
1252. John Henry Holland. Adaptation in Natural and Articial Systems: An Introductory Anal-
ysis with Applications to Biology, Control, and Articial Intelligence. NetLibrary, Inc.:
Dublin, OH, USA, May 1992. isbn: 0585038449. Google Books ID: Jev3AQAACAAJ and
nALfIAAACAAJ. Reprint of [1250].
1253. John Henry Holland. Genetic Algorithms Computer programs that evolve in ways that
resemble natural selection can solve complex problems even their creators do not fully under-
stand. Scientic American, 267(1):4450, July 1992, Scientic American, Inc.: New York,
NY, USA. Fully available at http://members.fortunecity.com/templarseries/
algo.html, http://www.cc.gatech.edu/
turk/bio_sim/articles/genetic_
algorithm.pdf, http://www.im.isu.edu.tw/faculty/pwu/heuristic/GA_1.
pdf, and http://www2.econ.iastate.edu/tesfatsi/holland.gaintro.htm
[accessed 2011-11-20].
1254. John Henry Holland and Arthur W. Burks. Adaptive Computing System Capable of Learn-
REFERENCES 1053
ing and Discovery. Technical Report 619349 led on 1984-06-11, United States Patent
and Trademark Oce (USPTO): Alexandria, VA, USA, 1987. Fully available at http://
www.freepatentsonline.com/4697242.html and http://www.patentstorm.us/
patents/4697242.html [accessed 2008-04-01]. US Patent Issued on September 29, 1987, Cur-
rent US Class 706/13, Genetic algorithm and genetic programming system 382/155, LEARN-
ING SYSTEMS 706/62 MISCELLANEOUS, Foreign Patent References 8501601 WO Apr.,
1985. Editors: Jerry Smith and John R Lastova.
1255. John Henry Holland and Judith S. Reitman. Cognitive Systems based on Adaptive Algo-
rithms. ACM SIGART Bulletin, 0(63):49, June 1977, ACM Press: New York, NY, USA.
doi: 10.1145/1045343.1045373. See also [1256].
1256. John Henry Holland and Judith S. Reitman. Cognitive Systems based on Adaptive Algo-
rithms. In Selected Papers from the Workshop on Pattern Directed Inference Systems [2869],
pages 313329, 1977. See also [1255]. Reprinted in [939].
1257. John Henry Holland, Lashon Bernard Booker, Marco Colombetti, Marco Dorigo, David Ed-
ward Goldberg, Stephanie Forrest, Rick L. Riolo, Robert Elliott Smith, Pier Luca
Lanzi, Wolfgang Stolzmann, and Stewart W. Wilson. What Is a Learning Classi-
er System? In IWLCS00 [1678], pages 332, 2000. doi: 10.1007/3-540-45027-0 1.
Fully available at http://www.cs.unm.edu/
forrest/publications/Learning
%20Classifier%20Systems.pdf [accessed 2010-12-12].
1258. R. B. Hollstien. Articial Genetic Adaptation in Computer Control Systems. PhD thesis,
University of Michigan: Ann Arbor, MI, USA, 1971. University Microlms No.: 71-23.
1259. Georey Holmes, Andrew Donkin, and Ian H. Witten. WEKA: A Machine Learning
Workbench. In ANZIIS98 [1359], pages 357361, 1994. doi: 10.1109/ANZIIS.1994.396988.
Fully available at http://www.cs.waikato.ac.nz/
ml/publications/1994/
Holmes-ANZIIS-WEKA.pdf [accessed 2008-11-19]. INSPEC Accession Number: 4962353.
1260. Diana Holstein and Pablo Moscato. Memetic Algorithms using Guided Local Search: A Case
Study. In New Ideas in Optimization [638], pages 235244. McGraw-Hill Ltd.: Maidenhead,
UK, England, 1999.
1261. Robert C. Holte. Combinatorial Auctions, Knapsack Problems, and Hill-Climbing Search.
In AI01 [2624], pages 5766, 2001. Fully available at http://www.cs.ubc.ca/
hoos/
Courses/Trento-05/Holte01.pdf [accessed 2010-10-12]. CiteSeer
x
: 10.1.1.28.754.
1262. Robert C. Holte and Adele Howe, editors. Proceedings of the Twenty-Second AAAI Confer-
ence on Articial Intelligence (AAAI07), July 2226, 2007, Vancouver, BC, Canada. AAAI
Press: Menlo Park, CA, USA. Partly available at http://www.aaai.org/Conferences/
AAAI/aaai07.php [accessed 2007-09-06].
1263. Holger H. Hoos and Thomas St utzle. SATLIB: An Online Resource for Research on SAT. In
SAT2000 Highlights of Satisability Research in the Year 2000 [1042], pages 283292. IOS
Press: Amsterdam, The Netherlands, 2000. Fully available at http://www.cs.ubc.ca/
hoos/SATLIB/benchm.
html and http://www.satlib.org/ [accessed 2011-09-28]. See also [1263].
1265. J. Hopf, editor. Genetic Algorithms within the Framework of Evolutionary Computation,
Workshop at KI-94. Technical Report MPI-I-94-241, September 1994.
1266. Jerey Horn and David Edward Goldberg. Genetic Algorithm Diculty and the
Modality of the Fitness Landscape. In FOGA 3 [2932], pages 243269, 1994.
CiteSeer
x
: 10.1.1.31.3340.
1267. Jerey Horn, David Edward Goldberg, and Kalyanmoy Deb. Long Path Prob-
lems. In PPSN III [693], pages 149158, 1994. doi: 10.1007/3-540-58484-6 259.
CiteSeer
x
: 10.1.1.51.9758.
1268. Jerey Horn, Nicholas Nafpliotis, and David Edward Goldberg. A Niched Pareto Genetic
Algorithm for Multiobjective Optimization. In CEC94 [1891], pages 8287, volume 1, 1994.
doi: 10.1109/ICEC.1994.350037. Fully available at http://www.lania.mx/
ccoello/
EMOO/horn2.ps.gz [accessed 2007-08-28]. CiteSeer
x
: 10.1.1.34.4189. Also: IEEE Sympo-
sium on Circuits and Systems, pp. 22642267, 1991.
1269. Jorng-Tzong Horng, Yu-Jan Chang, Baw-Jhiune Liu, and Cheng-Yan Kao. Materialized View
1054 REFERENCES
Selection using Genetic Algorithms in a Data Warehouse System. In CEC99 [110], pages
2227, 1999. doi: 10.1109/CEC.1999.785551. INSPEC Accession Number: 6339040.
1270. Jorng-Tzong Horng, Yu-Jan Chang, and Baw-Jhiune Liu. Applying Evolutionary Algo-
rithms to Materialized View Selection in a Data Warehouse. Soft Computing A Fusion of
Foundations, Methodologies and Applications, 7(8):574581, August 2003, Springer-Verlag:
Berlin/Heidelberg. doi: 10.1007/s00500-002-0243-1.
1271. Reiner Horst and Tuy Hoang. Global Optimization: Deterministic Approaches. Springer-
Verlag GmbH: Berlin, Germany, 3rd edition, 1996. isbn: 3-540-61038-3. Google Books
ID: HyyaAAAAIAAJ and usFjGFvuBDEC.
1272. Reiner Horst, Panos M. Pardalos, and H. Edwin Romeijm. Handbook of Global Optimiza-
tion, volume 62(1-2) in Nonconvex Optimization and Its Applications. Kluwer Academic
Publishers: Norwell, MA, USA, 19952002. isbn: 1-4020-0632-2 and 1-4020-0742-6.
Fully available at http://www.optimization-online.org/DB_FILE/2002/03/456.
pdf [accessed 2009-06-22]. Google Books ID: 9W0Ast3pDIC.
1273. Learning and Intelligent OptimizatioN
Learning and Intelligent OptimizatioN (LION 1), February 1218, 2007, Hotel Adler: Andalo,
Trento, Italy.
1274. XX Simposio Brasileiro de Telecomunicacoes (SBrT03), October 35, 2003, Hotel Gl oria:
Rio de Janeiro, RJ, Brazil.
1275. Proceedings of the 4th International Conference on Bio-Inspired Models of Network, Infor-
mation, and Computing Systems (BIONETICS09), December 911, 2009, Hotel MERCURE
Pont dAvignon: Avignon, France.
1276. Proceedings of the International Conference on Evolutionary Computation (ICEC10), 2010,
Hotel Sidi Saler: Val`encia, Spain. Part of [914].
1277. Daniel Howard. Frontiers in the Convergence of Bioscience and Information Technologies
(FBIT07), October 1113, 2007, Jeju City, South Korea. IEEE (Institute of Electrical
and Electronics Engineers): Piscataway, NJ, USA. isbn: 0-7695-2999-2. Google Books
ID: AcgoPwAACAAJ and KbupPQAACAAJ. OCLC: 191820852, 230950453, 254360958,
and 314010039.
1278. Nicola Howarth. Abstract Syntax Tree Design. ANSA Documents: Ocial Record of the
ANSA Project 23/08/95 APM.1551.01, Architecture Projects Management Limited: Posei-
don House, Castle Park, Cambridge, UK, August 23, 1995. Fully available at http://www.
ansa.co.uk/ANSATech/95/Primary/155101.pdf [accessed 2007-07-03].
1279. Robert J. Howlett and Lakhmi C. Jain, editors. Proceedings of the Fourth International
Conference on Knowledge-Based Intelligent Information Engineering Systems & Allied Tech-
nologies (KES00), August 30September 1, 2000, University of Brighton: Sussex, UK.
IEEE Computer Society: Piscataway, NJ, USA. isbn: 0-7803-6400-7. Google Books
ID: 369VAAAAMAAJ, IHAfPwAACAAJ, and VuFVAAAAMAAJ.
1280. Peter Hrastnik and Albert Rainer. Web Service Discovery and Composition for Vir-
tual Enterprises. International Journal on Web Services Research (IJWSR), 4(1):23
29, 2007, Idea Group Publishing (Idea Group Inc., IGI Global): New York, NY, USA.
doi: 10.4018/jwsr.2007010102. CiteSeer
x
: 10.1.1.68.5392.
1281. Juraj Hromkovic. Algorithmics for Hard Computing Problems: Introduction to Combina-
torial Optimization, Randomization, Approximation, and Heuristics, Texts in Theoretical
Computer Science An EATCS Series. Springer-Verlag GmbH: Berlin, Germany, 2001.
isbn: 3-540-66860-8. Google Books ID: Ut1QAAAAMAAJ. OCLC: 46713245. Library of
Congress Control Number (LCCN): 2001031301. GBV-Identication (PPN): 319756777.
LC Classication: QA76.9.A43 H76 2001.
1282. Juraj Hromkovic and I. Z amecnikova. Design and Analysis of Randomized Algorithms:
Introduction to Design Paradigms, Texts in Theoretical Computer Science An EATCS
Series. Springer-Verlag GmbH: Berlin, Germany, 2005. doi: 10.1007/3-540-27903-2.
isbn: 3-540-23949-9. Google Books ID: EfuMfn8T5 oC. OCLC: 60800705, 318291536,
and 474955415. Library of Congress Control Number (LCCN): 2005926236. GBV-
Identication (PPN): 524971269. LC Classication: QA274 .H76 2005.
1283. 15th Conference on Technologies and Applications of Articial Intelligence (TAAI10),
November 1820, 2010, Hsinchu, Taiwan.
1284. Chien-Chang Hsu and Yao-Wen Tang. An Intelligent Mobile Learning System for
On-the-Job Training of Luxury Brand Firms. In AI06 [2406], pages 749759, 2006.
REFERENCES 1055
doi: 10.1007/11941439 79.
1285. P. L. Hsu, R. Lai, and C. C. Chiu. The Hybrid of Association Rule Algorithms and Ge-
netic Algorithms for Tree Induction: An Example of Predicting the Student Course Perfor-
mance. Expert Systems with Applications An International Journal, 25(1):5162, July 2003,
Elsevier Science Publishers B.V.: Essex, UK. Imprint: Pergamon Press: Oxford, UK.
doi: 10.1016/S0957-4174(03)00005-8.
1286. Ting Hu and Wolfgang Banzhaf. Measuring Rate of Evolution in Genetic Programming Using
Amino Acid to Synonymous Substitution Ratio k
a
/k
s
. In GECCO08 [1519], pages 1337
1338, 2008. Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/
Hu_2008_gecco.html and http://www.cs.mun.ca/
tingh/papers/GECCO08.pdf
[accessed 2008-08-08].
1287. Ting Hu and Wolfgang Banzhaf. Nonsynonymous to Synonymous Substitution Ratio k
a
/k
s
:
Measurement for Rate of Evolution in Evolutionary Computation. In PPSN X [2354], pages
448457, 2008. doi: 10.1007/978-3-540-87700-4 45. Fully available at http://www.cs.mun.
ca/
tingh/
papers/GECCO09-network.pdf [accessed 2009-09-05].
1291. Xiaobing Hu, Mark Leeson, and Evor Hines. An Eective Genetic Algorithm for the Network
Coding Problem. In CEC09 [1350], pages 17141720, 2009. doi: 10.1109/CEC.2009.4983148.
INSPEC Accession Number: 10688743.
1292. Xiaomin Hu, Jun Zhang, and Liming Zhang. Swarm Intelligence Inspired Multicast Routing:
An Ant Colony Optimization Approach. In EvoWorkshops09 [1052], pages 5160, 2009.
doi: 10.1007/978-3-642-01129-0 6.
1293. De-Shuang Huang, Laurent Heutte, and Marco Loog, editors. Advanced Intelligent Com-
puting Theories and Applications. With Aspects of Contemporary Intelligent Computing
Techniques Proceedings of the Third International Conference on Intelligent Comput-
ing (ICIC07-2), August 2124, 2007, Qngd ao, Shandong, China, volume 2 in Commu-
nications in Computer and Information Science. Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-540-74282-1. Fully available at http://www.springerlink.com/
content/k74022/ [accessed 2008-03-28].
1294. Joshua (Zhexue) Huang, Longbing Cao, and Jaideep Srivastava, editors. Proceedings of
the 15th Pacic-Asia Conference on Knowledge Discovery and Data Mining (PAKDD11),
May 2427, 2011, Shenzh`en, Guangd ong, China, Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. Partly available at http://pakdd2011.pakdd.
org/ [accessed 2011-02-28].
1295. Sheng Huang, Xiaoling Wang, and Aoying Zhou. Ecient Web Service Composition Based
on Syntactical Matching. In EEE05 [1371], pages 782783, 2005. doi: 10.1109/EEE.2005.66.
See also [317].
1296. Thomas S. Huang, Anton Nijholt, Maja Pantic, and Alex Pentland, editors. Artical Intelli-
gence for Human Computing, ICMI 2006 and IJCAI 2007 International Workshops, Ban,
Canada, November 3, 2006, Hyderabad, India, January 6, 2007, Revised Seleced and Invited
Papers (ICMI06 / IJCAI07), 20062007, Ban, AB, Canada and Hyderabad, India, vol-
ume 4451 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin,
Germany. See also [2797].
1297. V. Ling Huang, Ponnuthurai Nagaratnam Suganthan, Alex Kai Qin, and S. Baskar. Multi-
objective Dierential Evolution with External Archive and Harmonic Distance-Based Diver-
1056 REFERENCES
sity Measure. Technical Report, Nanyang Technological University (NTU): Singapore, 2006.
Fully available at http://www3.ntu.edu.sg/home/epnsugan/index_files/papers/
Tech-Report-MODE-2005.pdf [accessed 2009-07-17].
1298. Yueh-Min Huang, Yen-Ting Lin, and Shu-Chen Cheng. An Adaptive Testing System
for Supporting Versatile Educational Assessment. Computers & Education An Interna-
tional Journal, 52(1):5367, January 2009, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/j.compedu.2008.06.007.
1299. Zhenqiu Huang, Wei Jiang, Songlin Hu, and Zhiyong Liu. Eective Pruning Algo-
rithm for QoS-Aware Service Composition. In CEC09 [1245], pages 519522, 2009.
doi: 10.1109/CEC.2009.41. INSPEC Accession Number: 10839126. See also [1571, 1801].
1300. Claudia Huber and G unter W achterhauser. Peptides by Activation of Amino Acids with
CO on (Ni,Fe)S Surfaces: Implications for the Origin of Life. Science Magazine, 281(5377):
670672, July 31, 1998, American Association for the Advancement of Science (AAAS):
Washington, DC, USA and HighWire Press (Stanford University): Cambridge, MA, USA.
doi: 10.1126/science.281.5377.670. PubMed ID: 9685253.
1301. Lorenz Huelsbergen. Toward Simulated Evolution of Machine Learning Interaction. In
GP96 [1609], pages 315320, 1996. Fully available at http://cognet.mit.edu/
library/books/mitpress/0262611279/cache/chap41.pdf [accessed 2010-11-21].
1302. Barry D. Hughes. Random Walks and Random Environments: Volume 1: Random Walks.
Oxford University Press, Inc.: New York, NY, USA, May 16, 1995. isbn: 0-19-853788-3.
Google Books ID: QhOen t0LeQC.
1303. Evan J. Hughes. Evolutionary Many-Objective Optimisation: Many Once or One Many? In
CEC05 [641], pages 222227, volume 1, 2005. doi: 10.1109/CEC.2005.1554688. Fully avail-
able at http://www.lania.mx/
ccoello/
EMOO/ishibuchi07a.pdf.gz [accessed 2009-07-18].
1417. Hisao Ishibuchi, Tsutomu Doi, and Yusuke Nojima. Incorporation of Scalar-
1064 REFERENCES
izing Fitness Functions into Evolutionary Multiobjective Optimization Algorithms.
In PPSN IX [2355], pages 493502, 2006. doi: 10.1007/11844297 50. Fully
available at http://www.ie.osakafu-u.ac.jp/
hisaoi/ci_lab_e/research/pdf_
file/multiobjective/PPSN_2006_EMO_Camera-Ready-HP.pdf [accessed 2009-07-18].
1418. Hisao Ishibuchi, Yusuke Nojima, and Tsutomu Doi. Comparison between Single-Objective
and Multi-Objective Genetic Algorithms: Performance Comparison and Performance Mea-
sures. In CEC06 [3033], pages 39593966, 2006. doi: 10.1109/CEC.2006.1688438. INSPEC
Accession Number: 9723561.
1419. Hisao Ishibuchi, Noritaka Tsukamoto, and Yusuke Nojima. Iterative Approach to
Indicator-based Multiobjective Optimization. In CEC07 [1343], pages 39673974, 2007.
doi: 10.1109/CEC.2007.4424988. INSPEC Accession Number: 9889480.
1420. Hisao Ishibuchi, Noritaka Tsukamoto, and Yusuke Nojima. Evolutionary Many-
Objective Optimization: A Short Review. In CEC08 [1889], pages 24242431, 2008.
doi: 10.1109/CEC.2008.4631121. Fully available at http://www.ie.osakafu-u.ac.
jp/
hisaoi/ci_lab_e/research/pdf_file/multiobjective/CEC2008_Many_
Objective_Final.pdf [accessed 2009-07-18]. INSPEC Accession Number: 10250829.
1421. Masumi Ishikawa, editor. Fourth International Conference on Hybrid Intelligent Systems
(HIS04), December 58, 2004, Kitakyushu, Japan. IEEE Computer Society: Piscataway,
NJ, USA. isbn: 0-7695-2291-2. OCLC: 58543493, 58804879, 61262247, 71500201,
254581031, and 423969575. INSPEC Accession Number: 8470883.
J
1422. Hajira Jabeen and Abdul Rauf Baig. Review of Classication using Genetic Programming. In-
ternational Journal of Engineering Science and Technology, 2(2):94103, February 2010, Engg
Journals Publications (EJP): Otteri, Vandalur, Chennai, India. Fully available at http://
www.ijest.info/docs/IJEST10-02-02-06.pdf [accessed 2010-06-25].
1423. David Jackson. Parsing and Translation of Expressions by Genetic Programming. In
GECCO05 [304], pages 16811688, 2005. doi: 10.1145/1068009.1068291.
1424. Christian Jacob, Marcin L. Pilat, Peter J. Bentley, and Jonathan Timmis, editors. Proceedings
of the 4th International Conference on Articial Immune Systems (ICARIS05), August 14
17, 2005, Ban, AB, Canada, volume 3627 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-28175-4.
1425. Matthias Jacob, Alexander Kuscher, Max Plauth, and Christoph Thiele. Automated Data
Augmentation Services Using Text Mining, Data Cleansing and Web Crawling Techniques.
In Third IEEE International Services Computing Contest [1347], pages 136143, 2008.
doi: 10.1109/SERVICES-1.2008.67. INSPEC Accession Number: 10117645.
1426. Dean Jacobs, Jan Prins, Peter Siegel, and Kenneth Wilson. Monte Carlo Techniques in Code
Optimization. ACM SIGMICRO Newsletter, 13(4):143148, December 1982, Association for
Computing Machinery (ACM): New York, NY, USA. See also [1427].
1427. Dean Jacobs, Jan Prins, Peter Siegel, and Kenneth Wilson. Monte Carlo Techniques in Code
Optimization. In MICRO 15 [1385], pages 143146, 1982. See also [1426].
1428. H. V. Jagadish and Inderpal Singh Mumick, editors. Proceedings of the 1996 ACM SIGMOD
International Conference on Management of Data (SIGMOD96), June 46, 1996, Montreal,
QC, Canada. ACM Press: New York, NY, USA.
1429. Martin J ahne, Xiaodong Li, and J urgen Branke. Evolutionary Algorithms and Multi-
Objectivization for the Travelling Salesman Problem. In GECCO09-I [2342], pages 595602,
2009. doi: 10.1145/1569901.1569984. Fully available at http://goanna.cs.rmit.edu.
au/
xiaodong/publications/multi-objectivization-jahne-gecco09.pdf [ac-
cessed 2010-07-18].
1430. Lakhmi C. Jain and Janusz Kacprzyk, editors. New Learning Paradigms in Soft Computing,
volume 84 (PR-200 in Studies in Fuzziness and Soft Computing. Springer-Verlag GmbH:
Berlin, Germany, February 2002. isbn: 3-7908-1436-9. Google Books ID: u2NcykOhYYwC.
1431. Nick Jakobi. Harnessing Morphogenesis. Technical Report CSRP 423, University of Sussex,
School of Cognitive Science: Brighton, UK, 1995. CiteSeer
x
: 10.1.1.39.372.
1432. Mohammad Jamshidi, editor. Multimedia, Image Processing, and Soft Computing : Trends,
Principles, and Applications: Proceedings of the 5th Biannual World Automation Congress
REFERENCES 1065
(WAC02), June 913, 2002, Orlando, FL, USA, volume 13/14 in Proceedings of the World
Automation Congress. Technology Software & Information Enterprise (TSI Press) Inc.: San
Antonio, TX, USA. isbn: 1889335185 and 1889335193. Google Books ID: jPGbAAAACAAJ.
OCLC: 51296904, 54530539, 80832353, and 248985844. Catalogue no.: D2EX548.
1433. Thomas Jansen and Ingo Wegener. A Comparison of Simulated Annealing with a Simple
Evolutionary Algorithm on Pseudo-boolean Functions of Unitation. Theoretical Computer
Science, 386(1-2):7393, October 28, 2007, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/j.tcs.2007.06.003.
1434. Matthias Jarke, Michael J. Carey, Klaus R. Dittrich, Frederick H. Lochovsky, Pericles
Loucopoulos, and Manfred A. Jeusfeld, editors. Proceedings of 23rd International Confer-
ence on Very Large Data Bases (VLDB97), August 2527, 1997, Athens, Greece. Morgan
Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-470-7.
1435. Jir Jaros and Vaclav Dvor ak. An Evolutionary Design Technique for Collective Communica-
tions on Optimal Diameter-Degree Networks. In GECCO08 [1519], pages 15391546, 2008.
doi: 10.1145/1389095.1389391.
1436. Grahame A. Jastrebski and Dirk V. Arnold. Improving Evolution Strategies through
Active Covariance Matrix Adaptation. In CEC06 [3033], pages 97199726, 2006.
doi: 10.1109/CEC.2006.1688662. INSPEC Accession Number: 9723774.
1437. Andrzej Jaszkiewicz. On the Computational Eciency of Multiple Objective Metaheuristics:
The Knapsack Problem Case Study. European Journal of Operational Research (EJOR), 158
(2):418433, October 16, 2004, Elsevier Science Publishers B.V.: Amsterdam, The Nether-
lands. Imprint: North-Holland Scientic Publishers Ltd.: Amsterdam, The Netherlands.
doi: 10.1016/j.ejor.2003.06.015.
1438. Edwin Thompson Jaynes, author. G. Larry Bretthorst, editor. Probability Theory: The Logic
of Science. Cambridge University Press: Cambridge, UK, May 2002June 2003, Washington
University: St. Louis, MO, USA. isbn: 0521592712. Fully available at http://bayes.
wustl.edu/etj/prob/book.pdf [accessed 2009-07-25]. Google Books ID: tTN4HuUNXjgC.
OCLC: 49859931 and 271784842.
1439. Henrik Jeldtoft Jensen. Self-Organized Criticality: Emergent Complex Behavior in Physical
and Biological Systems, volume 10 in Cambridge Lecture Notes in Physics. Cambridge Uni-
versity Press: Cambridge, UK, 1998. isbn: 0521483719. Google Books ID: 7u3x1Luq50cC.
1440. Mikkel T. Jensen. Guiding Single-Objective Optimization Using Multi-Objective Methods.
In EvoWorkshop03 [2253], pages 9198, 2003. doi: 10.1007/3-540-36605-9 25. See also [1442].
1441. Mikkel T. Jensen. Reducing the Run-Time Complexity of Multiobjective EAs: The
NSGA-II and other Algorithms. IEEE Transactions on Evolutionary Computation (IEEE-
EC), 7(5):503515, October 2003, IEEE Computer Society: Washington, DC, USA.
doi: 10.1109/TEVC.2003.817234. INSPEC Accession Number: 7757990.
1442. Mikkel T. Jensen. Helper-Objectives: Using Multi-Objective Evolutionary Algo-
rithms for Single-Objective Optimisation. Journal of Mathematical Modelling and Al-
gorithms, 3(4):323347, December 2004, Springer Netherlands: Dordrecht, Netherlands.
doi: 10.1023/B:JMMA.0000049378.57591.c6. See also [1440].
1443. Licheng Jiao, Lipo Wang, Xinbo Gao, Jing Liu, and Feng Wu, editors. Proceedings of the
Second International Conference on Advances in Natural Computation, Part I (ICNC06-
I), September 2428, 2006, Xan, Shanx, China, volume 4221 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/11881070.
isbn: 3-540-45901-4. See also [1444].
1444. Licheng Jiao, Lipo Wang, Xinbo Gao, Jing Liu, and Feng Wu, editors. Proceedings of the
Second International Conference on Advances in Natural Computation, Part II (ICNC06-
II), September 2428, 2006, Xan, Shanx, China, volume 4222 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/11881223.
isbn: 3-540-45907-3. See also [1443].
1445. Keisoku Jid o and Seigyo Gakkai, editors. Proceedings of IEEE International Conference on
Evolutionary Computation (CEC96), May 2022, 1996, Nagoya University, Symposium &
Toyoda Auditorium: Nagoya, Japan. IEEE Computer Society Press: Los Alamitos, CA,
USA. isbn: 0-7803-2902-3. Google Books ID: C ZPAAAACAAJ, dNZVAAAAMAAJ, and
qi7jGAAACAAJ. OCLC: 312788226 and 639955150. INSPEC Accession Number: 5398378.
1446. Wan-rong Jih and Jane Yung-jen Hsu. Dynamic Vehicle Routing Using Hy-
brid Genetic Algorithms. In ICRA99 [1386], pages 453458, volume 1, 1999.
1066 REFERENCES
doi: 10.1109/ROBOT.1999.770019. Fully available at http://agents.csie.ntu.
edu.tw/
jih/publication/ICRA99-GAinDVRP.pdf, http://neo.lcc.uma.es/
radi-aeb/WebVRP/data/articles/DVRP.pdf, and http://ntur.lib.ntu.edu.
tw/bitstream/246246/2007041910021646/1/00770019.pdf [accessed 2010-11-02]. IN-
SPEC Accession Number: 6345736.
1447. Prasanna Jog, Jung Y. Suh, and Dirk Van Gucht. Parallel Genetic Algorithms Applied
to the Traveling Salesman Problem. SIAM Journal on Optimization (SIOPT), 1(4):515
529, 1991, Society for Industrial and Applied Mathematics (SIAM): Philadelphia, PA, USA.
doi: 10.1137/0801031.
1448. Wilhelm Ludvig Johannsen. Elemente der exakten Erblichkeitslehre (mit Grundz ugen der Bi-
ologischen Variationsstatistik). Verlag von Gustav Fischer: Jena, Thuringia, Germany, second
german, revised and very extended edition, 19091913. Fully available at http://www.zum.
de/stueber/johannsen/elemente/ [accessed 2008-08-20]. Google Books ID: KF8MGQAACAAJ,
RmRVAAAAMAAJ, dxb GwAACAAJ, ggglAAAAMAAJ, l1Q1AAAAMAAJ, oSHVJgAACAAJ, and
yoBUAAAAMAAJ. Limitations of natural selection on pure lines.
1449. Brad Johanson and Riccardo Poli. GP-Music: An Interactive Genetic Programming Sys-
tem for Music Generation with Automated Fitness Raters. Technical Report CSRP-98-13,
University of Birmingham, School of Computer Science: Birmingham, UK, 1998. Fully avail-
able at http://graphics.stanford.edu/
bjohanso/gp-music/tech-report/ [ac-
cessed 2009-06-18]. See also [1453].
1450. Matthias John and Max J. Ammann. Design of a Wide-Band Printed Antenna Using a
Genetic Algorithm on an Array of Overlapping Sub-Patches. In iWAT06 [1745], pages 92
95, 20062005. Fully available at http://www.ctvr.ie/docs/RF%20Pubs/01608983.
pdf [accessed 2008-09-03]. See also [1451].
1451. Matthias John and Max J. Ammann. Optimisation of a Wide-Band Printed Monopole An-
tenna using a Genetic Algorithm. In PAPC06 [1778], pages 237240, 2006. Fully available
at http://www.ctvr.ie/docs/RF%20Pubs/LAPC_2006_MJ.pdf [accessed 2008-09-02]. See
also [1450].
1452. Colin G. Johnson and Juan Jes us Romero Cardalda. Workshop Genetic Algorithms in
Visual Art and Music (GAVAM00). In GECCO00 WS [2986], July 8, 2000, Las Vegas,
NV, USA. Bird-of-a-feather Workshop at the 2000 Genetic and Evolutionary Computation
Conference (GECCO-2000). Part of [2986].
1453. Colin G. Johnson and Riccardo Poli. GP-Music: An Interactive Genetic Programming Sys-
tem for Music Generation with Automated Fitness Raters. In GP98 [1612], pages 181
186, 1998. Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/
johanson_1998_GP-Music.html [accessed 2009-06-18]. CiteSeer
x
: 10.1.1.14.1076. See
also [1449].
1454. David S. Johnson, Cecilia R. Aragon, Lyle A. McGeoch, and Catherine Schevon. Optimiza-
tion by Simulated Annealing: An Experimental Evaluation. Part I, Graph Partitioning. Op-
erations Research, 37(6), NovemberDecember 1989, Institute for Operations Research and
the Management Sciences (INFORMS): Linthicum, ML, USA and HighWire Press (Stanford
University): Cambridge, MA, USA. doi: 10.1287/opre.37.6.865. See also [1455].
1455. David S. Johnson, Cecilia R. Aragon, Lyle A. McGeoch, and Catherine Schevon. Op-
timization by Simulated Annealing: An Experimental Evaluation; Part II, Graph Color-
ing and Number Partitioning. Operations Research, 39(3):378406, MayJune 1991, Insti-
tute for Operations Research and the Management Sciences (INFORMS): Linthicum, ML,
USA and HighWire Press (Stanford University): Cambridge, MA, USA. doi: 10.1287/o-
pre.39.3.378. Fully available at http://www.cs.uic.edu/
jlillis/courses/cs594_
f02/JohnsonSA.pdf [accessed 2009-09-09]. See also [1454].
1456. Derek M. Johnson, Ankur M. Teredesai, and Robert T. Saltarelli. Genetic Programming in
Wireless Sensor Networks. In EuroGP05 [1518], pages 96107, 2005. doi: 10.1007/b107383.
Fully available at http://www.cs.rit.edu/
amt/pubs/EuroGP05FinalTeredesai.
pdf [accessed 2008-06-17].
1457. Timothy D. Johnstona. Selective Costs and Benets in the Evolution of Learning. In Advances
in the Study of Behavior [2332], pages 65106. Academic Press Professional, Inc.: San Diego,
CA, USA. doi: 10.1016/S0065-3454(08)60046-7.
1458. Jerey A. Joines and Christopher R. Houck. On the Use of Non-Stationary Penalty Func-
tions to Solve Nonlinear Constrained Optimization Problems with GAs. In CEC94 [1891],
REFERENCES 1067
pages 579584, volume 2, 1994. doi: 10.1109/ICEC.1994.349995. Fully available
at http://www.cs.cinvestav.mx/
forrest/dissertations-and-proposals/terry.
pdf [accessed 2009-07-10].
1468. Terry Jones and Stephanie Forrest. Fitness Distance Correlation as a Measure of Prob-
lem Diculty for Genetic Algorithms. In ICGA95 [883], pages 184192, 1995. Fully
available at http://www.santafe.edu/research/publications/workingpapers/
95-02-022.ps [accessed 2009-07-10]. CiteSeer
x
: 10.1.1.42.415.
1469. Aravind K. Joshi, editor. Proceedings of the 9th International Joint Conference on Articial
Intelligence (IJCIA85-I), August 1985, Los Angeles, CA, USA, volume 1. Morgan Kaufmann
Publishers Inc.: San Francisco, CA, USA. Fully available at http://dli.iiit.ac.in/
ijcai/IJCAI-85-VOL1/CONTENT/content.htm [accessed 2008-04-01]. See also [1470].
1470. Aravind K. Joshi, editor. Proceedings of the 9th International Joint Conference on Articial
Intelligence (IJCIA85-II), August 1985, Los Angeles, CA, USA, volume 2. Morgan Kauf-
mann Publishers Inc.: San Francisco, CA, USA. Fully available at http://dli.iiit.ac.
in/ijcai/IJCAI-85-VOL2/CONTENT/content.htm [accessed 2008-04-01]. See also [1469].
1471. Bryant A. Julstrom. Seeding the Population: Improved Performance in a Genetic Al-
gorithm for the Rectilinear Steiner Problem. In SAC94 [734], pages 222226, 1994.
doi: 10.1145/326619.326728.
1472. Bryant A. Julstrom. Evolutionary Codings and Operators for the Terminal Assignment
Problem. In GECCO09-I [2342], pages 18051806, 2009. doi: 10.1145/1569901.1570171.
1473. Lukasz Juszcyk, Anton Michlmayer, and Christian Platzer. Large Scale Web Service Discov-
ery and Composition using High Performance In-Memory Indexing. In CEC/EEE07 [1344],
pages 509512, 2007. doi: 10.1109/CEC-EEE.2007.60. Fully available at https://berlin.
vitalab.tuwien.ac.at/
subruk/pdf/simulate.pdf [ac-
cessed 2010-06-24].
1484. Subbarao Kambhampati, editor. Proceedings of the Twentieth National Conference on Arti-
cial Intelligence and the Seventeenth Innovative Applications of Articial Intelligence Confer-
ence (AAAI05 / IAAI05), July 913, 2005, Pittsburgh, PA, USA. AAAI Press: Menlo Park,
CA, USA and MIT Press: Cambridge, MA, USA. isbn: 1-57735-236-X. Partly available
at http://www.aaai.org/Conferences/AAAI/aaai05.php and http://www.aaai.
org/Conferences/IAAI/iaai06.php [accessed 2007-09-06].
1485. Subbarao Kambhampati and Craig A. Knoblock, editors. Proceedings of IJCAI03 Work-
shop on Information Integration on the Web (IIWeb03), August 910, 2003, Acapulco,
Mexico. Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA. Fully available
at http://www.isi.edu/info-agents/workshops/ijcai03/proceedings.htm [ac-
cessed 2008-04-01]. Part of [1118].
1486. Peter Kampstra. Evolutionary Computing in Telecommunications A Likely EC Suc-
cess Story. Business mathematics and informatics (bmi), Vrije Universiteit Amster-
dam, Faculty of Sciences: Amsterdam, The Netherlands, August 2005, Rob D. van der
REFERENCES 1069
Mei and
Agoston E. Eiben, Supervisors. Fully available at http://www.few.vu.nl/
stagebureau/werkstuk/werkstukken/werkstuk-kampstra.pdf [accessed 2008-09-04].
1487. Ali Kamrani, Wang Rong, and Ricardo Gonzalez. A Genetic Algorithm Methodology for Data
Mining and Intelligent Knowledge Acquisition. Computers & Industrial Engineering, 40(4):
361377, September 2001, Elsevier Science Publishers B.V.: Essex, UK. Imprint: Pergamon
Press: Oxford, UK. doi: 10.1016/S0360-8352(01)00036-5.
1488. Chih-Wei Kang and Jian-Hung Chen. Multi-Objective Evolutionary Optimization of 3D
Dierentiated Sensor Network Deployment. In GECCO09-II [2343], pages 20592064, 2009.
doi: 10.1145/1570256.1570276.
1489. Lishan Kang, Z. Cai, and Y. Yan, editors. Progress in Intelligence Computation and Intel-
ligence: International Symposium on Intelligence, Computation and Applications (ISICA),
April 46, 2005, W uh`an, H ubei, China. China University of Geosciences (CUG), School of
Computer Science: W uh`an, H ubei, China.
1490. Lishan Kang, Yong Liu, and Sanyou Zeng, editors. Second International Symposium on
Advances in Computation and Intelligence (ISICA07), September 2123, 2007, W uh`an,
H ubei, China, volume 4683/2007 in Theoretical Computer Science and General Issues (SL
1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-540-74581-5. isbn: 3-540-74580-7 and 6611353755. Google Books
ID: t7zBMdjahZUC. OCLC: 170907281, 255916871, 315404653, 318300255, and
403659231. Library of Congress Control Number (LCCN): 2007933208.
1491. Zhuo Kang, Lishan Kang, Xiufen Zou, Minzhong Liu, Changhe Li, Ming Yang, Yan Li, Yup-
ing Chen, and Sanyou Zeng. A New Evolutionary Decision Theory for Many-Objective Opti-
mization Problems. In ISICA07 [1490], pages 111, 2007. doi: 10.1007/978-3-540-74581-5 1.
1492. Proceedings of the United States Department of Energy Cyber Security Group 2004 Training
Conference, April 2427, 2004, Kansas City, KS, USA. CD ROM Proceedings.
1493. 11th Conference on Technologies and Applications of Articial Intelligence (TAAI06), De-
cember 2006, Kaohsiung, Taiwan.
1494. Bahar Karao glu, Haluk Top cuo glu, and Fikret G urgen. Evolutionary Algorithms for Location
Area Management. In EvoWorkshops05 [2340], pages 175184, 2005.
1495. John K. Karlof, editor. Integer Programming: Theory and Practice, Operations Research
Series. CRC Press, Inc.: Boca Raton, FL, USA, September 22, 2005. isbn: 0-8493-1914-5,
1420039598, and 6610536953. Google Books ID: TO3xQO9XEjwC. OCLC: 58052161,
309875596, 508010376, and 629733350. Library of Congress Control Number
(LCCN): 2005041912. LC Classication: T57.74 .I547 2006.
1496. Charles L. Karr and L. Michael Freeman, editors. Industrial Applications of Genetic Algo-
rithms, International Series on Computational Intelligence. CRC Press, Inc.: Boca Raton,
FL, USA, December 29, 1998. isbn: 0849398010.
1497. Firat Kart, Zhongnan Shen, and Cagdas Evren Gerede. The MIDAS System: A Service
Oriented Architecture for Automated Supply Chain Management. In SCContest06 [554],
pages 487494, 2006. doi: 10.1109/SCC.2006.103. INSPEC Accession Number: 9165413.
1498. Nikola Kasabov and Peter Alexander Whigham, editors. Proceedings of the 5th Australia-
Japan Joint Workshop on Intelligent & Evolutionary Systems From Population Genetics
to Evolving Intelligent Systems (AJWIS01), November 1921, 2001, University of Otago:
Dunedin, New Zealand.
1499. Stuart Alan Kauman. Adaptation on Rugged Fitness Landscapes. In Lectures in the Sci-
ences of Complexity: The Proceedings of the 1988 Complex Systems Summer School [2608],
pages 527618, volume Lecture 1, 1988.
1500. Stuart Alan Kauman. The Origins of Order: Self-Organization and Selection in Evolution.
Oxford University Press, Inc.: New York, NY, USA, May 1993. isbn: 0195058119 and
0195079515. Google Books ID: 7mOsGwAACAAJ and lZcSpRJz0dgC. OCLC: 23253930,
59892535, and 263622938.
1501. Stuart Alan Kauman and Simon Asher Levin. Towards a General Theory of Adaptive
Walks on Rugged Landscapes. Journal of Theoretical Biology, 128(1):1145, September 7,
1987, Elsevier Science Publishers B.V.: Amsterdam, The Netherlands. Imprint: Academic
Press Professional, Inc.: San Diego, CA, USA. doi: 10.1016/S0022-5193(87)80029-2. PubMed
ID: 3431131.
1502. Stuart Alan Kauman and Edward D. Weinberger. The NK Model of Rugged Fitness Land-
scapes and its Application to Maturation of the Immune Response. Journal of Theoreti-
1070 REFERENCES
cal Biology, 141(2):211245, November 21, 1989, Elsevier Science Publishers B.V.: Amster-
dam, The Netherlands. Imprint: Academic Press Professional, Inc.: San Diego, CA, USA.
doi: 10.1016/S0022-5193(89)80019-0.
1503. Leonard Kaufman and Peter J. Rousseeuw. Finding Groups in Data An Introduction
to Cluster Analysis, volume 59 in Wiley Series in Probability and Mathematical Statistics
Applied Probability and Statistics Section Series. Wiley Interscience: Chichester, West
Sussex, UK, 9th edition, March 1990May 2005. isbn: 0-471-87876-6. Google Books
ID: Q5wQAQAAIAAJ. OCLC: 19458846.
1504. Henry Kautz and Bruce W. Porter, editors. Proceedings of the Seventeenth National Confer-
ence on Articial Intelligence and Twelfth Conference on Innovative Applications of Articial
Intelligence (AAAI00, IAAI00), July 30August 3, 2000, Austin, TX, USA. AAAI Press:
Menlo Park, CA, USA and MIT Press: Cambridge, MA, USA. isbn: 0-262-51112-6. Partly
available at http://www.aaai.org/Conferences/AAAI/aaai00.php and http://
www.aaai.org/Conferences/IAAI/iaai00.php [accessed 2007-09-06].
1505. W. H. Kautz. Unit-distance Error-Checking Codes. IRE Transactions on Electronic Comput-
ers, EC-7:177180, 1958, Institute of Radio Engineers: New York, NY, USA, R. E. Meagher,
editor.
1506. Steven M. Kay. Fundamentals of Statistical Signal Processing, Volume I: Estimation Theory,
Prentice Hall Signal Processing Series. Prentice Hall PTR: Englewood Clis, Upper Saddle
River, NJ, USA, March 26, 1993. isbn: 0133457117 and 013504135X. Google Books
ID: 3GcsPwAACAAJ. OCLC: 26504848, 177055890, and 313604278.
1507. Hilmi Gunes Kayack, Malcom Ian Heywood, and A. Nur Zincir-Heywood. Evolving Buer
Overow Attacks with Detector Feedback. In EvoWorkshops07 [1050], pages 1120, 2007.
doi: 10.1007/978-3-540-71805-5 2.
1508. Hilmi Gunes Kayack, A. Nur Zincir-Heywood, Malcom Ian Heywood, and Stefan Burschka.
Testing Detector Parameterization Using Evolutionary Exploit Generation. In EvoWork-
shops09 [1052], pages 105110, 2009. doi: 10.1007/978-3-642-01129-0 13.
1509. Sanza T. Kazadi. Conjugate Schema and Basis Representation of Crossover and Mutation.
Evolutionary Computation, pages 129160, Summer 1998, MIT Press: Cambridge, MA, USA.
doi: 10.1162/evco.1998.6.2.129. PubMed ID: 10021744.
1510. Michael J. Kearns, Yishay Mansour, Andrew Y. Ng, and Dana Ron. An Experimental and
Theoretical Comparison of Model Selection Methods. In COLT95 [1802], pages 2130, 1995.
doi: 10.1145/225298.225301. Fully available at http://www.cis.upenn.edu/
mkearns/
papers/ms.pdf [accessed 2008-03-02]. See also [1511].
1511. Michael J. Kearns, Yishay Mansour, Andrew Y. Ng, and Dana Ron. An Experimental
and Theoretical Comparison of Model Selection Methods. Machine Learning, 27(1):750,
April 1997, Kluwer Academic Publishers: Norwell, MA, USA and Springer Netherlands:
Dordrecht, Netherlands, Philip M. Long, editor. doi: 10.1023/A:1007344726582. Fully avail-
able at http://www.springerlink.com/content/r26rk7q55615qq43/fulltext.
pdf [accessed 2009-07-12]. See also [1510].
1512. Tom Kehler and Stan Rosenschein, editors. Proceedings of the 5th National Conference
on Articial Intelligence (AAAI86-I), August 1115, 1986, Philadelphia, PA, USA, volume
Science (Volume 1). Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA. Partly
available at http://www.aaai.org/Conferences/AAAI/aaai86.php [accessed 2007-09-06].
See also [1513].
1513. Tom Kehler and Stan Rosenschein, editors. Proceedings of the 5th National Conference
on Articial Intelligence (AAAI86-II), August 1115, 1986, Philadelphia, PA, USA, volume
Engineering (volume 2). Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA. Partly
available at http://www.aaai.org/Conferences/AAAI/aaai86.php [accessed 2007-09-06].
See also [1512].
1514. Maarten Keijzer. Scaled Symbolic Regression. Genetic Programming and
Evolvable Machines, 5(3):259269, September 2004, Springer Netherlands: Dor-
drecht, Netherlands. Imprint: Kluwer Academic Publishers: Norwell, MA, USA.
doi: 10.1023/B:GENP.0000030195.77571.f9.
1515. Maarten Keijzer, editor. Late Breaking Papers at the 2004 Genetic and Evolutionary Com-
putation Conference (GECCO04 LBP), 2004, Red Lion Hotel: Seattle, WA, USA. Springer-
Verlag GmbH: Berlin, Germany. Distributed on CD-ROM. Part of [752].
1516. Maarten Keijzer and Mike Cattolico, editors. Proceedings of the 8th Annual Conference on
REFERENCES 1071
Genetic and Evolutionary Computation (GECCO06), July 812, 2006, Renaissance Seattle
Hotel: Seattle, WA, USA. ACM Press: New York, NY, USA. isbn: 1-59593-186-4 and
1-59593-187-2. Google Books ID: 6y1pAAAACAAJ. OCLC: 71335687 and 85782847.
ACM Order No.: 910060.
1517. Maarten Keijzer, Una-May OReilly, Simon M. Lucas, Ernesto Jorge Fernandes Costa, and
Terence Soule, editors. Proceedings of the 7th European Conference on Genetic Programming
(EuroGP04), April 57, 2004, Coimbra, Portugal, volume 3003/2004 in Lecture Notes in
Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-21346-5.
1518. Maarten Keijzer, Andrea G. B. Tettamanzi, Pierre Collet, Jano I. van Hemert, and Marco
Tomassini, editors. Proceedings of the 8th European Conference on Genetic Program-
ming (EuroGP05), March 30April 1, 2005, Lausanne, Switzerland, volume 3447/2005
in Theoretical Computer Science and General Issues (SL 1), Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/b107383.
isbn: 3-540-25436-6 and 3-540-31989-1. Google Books ID: -Q88PwAACAAJ and
lcw0Pkgc6OUC. OCLC: 59351789, 145832391, 254751818, and 318300168. Library of
Congress Control Number (LCCN): 2005922866.
1519. Maarten Keijzer, Giuliano Antoniol, Clare Bates Congdon, Kalyanmoy Deb, Benjamin Do-
err, Nikolaus Hansen, John H. Holmes, Gregory S. Hornby, Daniel Howard, James Kennedy,
Sanjeev Kumar, Fernando G. Lobo, Julian Francis Miller, Jason H. Moore, Frank Neumann,
Martin Pelikan, Jordan B. Pollack, Kumara Sastry, Kenneth Owen Stanley, Adrian Stoica,
El-Ghazali Talbi, and Ingo Wegener, editors. Proceedings of the Genetic and Evolution-
ary Computation Conference (GECCO08), July 1216, 2008, Renaissance Atlanta Hotel
Downtown: Atlanta, GA, USA. ACM Press: New York, NY, USA. isbn: 1-60558-130-5
and 1-60558-131-3. Partly available at http://www.sigevo.org/gecco-2008/ [ac-
cessed 2011-02-28]. OCLC: 288975508, 288975509, 299786110, 302317062, and 373680990.
ACM Order No.: 910080 and 910081. See also [585, 1872, 2268, 2537].
1520. Jozef Kelemen and Petr Sosk, editors. Proceedings of the 6th European Conference on Ad-
vances in Articial Life (ECAL01), September 1014, 2001, Prague, Czech Republic, volume
2159/-1 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Ger-
many. doi: 10.1007/3-540-44811-X. isbn: 3-540-42567-5.
1521. Evelyn Fox Keller and Elisabeth A. Lloyd, editors. Keywords in Evolutionary Biology. Har-
vard University Press: Cambridge, MA, USA, November 1992. isbn: 0-674-50312-0 and
0-674-50313-9. Google Books ID: Hvm7sCuyRV4C and fgRpAAAACAAJ.
1522. James M. Keller and Olfa Nasraoui, editors. Proceedings of the Annual Meeting of the
North American Fuzzy Information Processing Society (NAFIPS00), June 2729, 2002, Tu-
lane University: New Orleans, LA, USA. IEEE Computer Society: Piscataway, NJ, USA.
isbn: 0-7803-7461-4. Google Books ID: mpdVAAAAMAAJ. OCLC: 50258796, 63197367,
248814326, and 268938117. Catalogue no.: 02TH8622.
1523. James Kennedy and Russel C. Eberhart. Particle Swarm Optimization. In ICNN95 [1362],
pages 19421948, volume 4, 1995. doi: 10.1109/ICNN.1995.488968. Fully available
at http://www.engr.iupui.edu/
eberhart/web/
PSObook.html [accessed 2008-08-22]. Google Books ID: pHku3gYfL2UC and vOx-QV3sRQsC.
1525. Brian Wilson Kernighan and Dennis M. Ritchie. The C Programming Language, Prentice-
Hall Software Series. Prentice Hall PTR: Englewood Clis, Upper Saddle River, NJ,
USA, rst/second edition, 19781988. isbn: 0-13-110163-3, 0-13-110362-8, and
0-13-110370-9. OCLC: 3608698, 251418906, 257254858, and 299378788. Library
of Congress Control Number (LCCN): 77028983. GBV-Identication (PPN): 023146052,
076304213, and 423015281. LC Classication: QA76.73.C15 K47.
1526. Martin L. Kersten, Boris Novikov, Jens Teubner, Vladimir Polutin, and Stefan Manegold,
editors. Proceedings of the 12th International Conference on Extending Database Technology:
Advances in Database Technology (EDBT09), March 2426, 2009, Saint Petersburg, Russia,
volume 360 in ACM International Conference Proceeding Series (AICPS). ACM Press: New
York, NY, USA.
1527. Faten Kharbat, Larry Bull, and Mohammed Odeh. Mining Breast Cancer Data with
1072 REFERENCES
XCS. In GECCO07-I [2699], pages 20662073, 2007. doi: 10.1145/1276958.1277362. Fully
available at http://www.cs.york.ac.uk/rts/docs/GECCO_2007/docs/p2066.pdf
[accessed 2010-07-26].
1528. Vineet Khare. Performance Scaling of Multi-Objective Evolutionary Algorithms. Mas-
ters thesis, University of Birmingham, School of Computer Science: Birmingham,
UK, September 21, 2002, Xin Yao and Kalyanmoy Deb, Supervisors. Fully available
at http://www.lania.mx/
wbl/biblio/gp-html/
kirkam_1997_dsftrr.html [accessed 2009-07-21]. CiteSeer
x
: 10.1.1.51.4447. See also
[2463].
1543. Marc Kirschner and John Gerhart. Evolvability. Proceedings of the National Academy of
Science of the United States of America (PNAS), 95(15):84208427, July 15, 1998, National
Academy of Sciences: Washington, DC, USA. Fully available at http://www.pnas.org/
cgi/content/full/95/15/8420 [accessed 2009-07-10].
1544. Hajime Kita and Yasuhito Sano. Genetic Algorithms for Optimization of Noisy Fitness Func-
tions and Adaptation to Changing Environments. In 2003 Joint Workshop of Hayashibara
Foundation and Hayashibara Forum Physics and Information and Workshop on Statistical
Mechanical Approach to Probabilistic Information Processing (SMAPIP) [2636], 2003. Fully
available at http://www.smapip.is.tohoku.ac.jp/
smapip/2003/hayashibara/
proceedings/HajimeKita.pdf [accessed 2008-07-19].
1545. Second World Congress on Nature and Biologically Inspired Computing (NaBIC10), Decem-
ber 1517, 2010, Kitakyushu International Conference Center: Kitakyushu, Japan.
1546. M. Kiuchi, Y. Shinano, R. Hirabayashi, and Y. Saruwatari. An Exact Algorithm for the
Capacitated Arc Routing Problem using Parallel Branch and Bound Method. In Abstracts
of the National Conference of the Operations Research Society of Japan [2087], pages 2829,
Spring 1995. Written in Japanese.
1547. Stefan Klahold, Steen Frank, Robert E. Keller, and Wolfgang Banzhaf. Exploring the Pos-
sibilities and Restrictions of Genetic Programming in Java Bytecode. In GP98 LBP [1605],
pages 120124, 1998.
1548. David G. Kleinbaum, Lawrence L. Kupper, and Keith E. Muller, editors. Applied Regres-
sion Analysis and other Multivariable Methods, The Duxbury Series in Statistics and Deci-
sion Sciences. Prindle, Weber, Schmidt (PWS) Publishing Company: Boston, MA, USA,
1988. isbn: 0-871-50123-6. OCLC: 15317108, 299861986, and 476708711. Library
of Congress Control Number (LCCN): 87005397. GBV-Identication (PPN): 040577813,
219461139, and 231144253. LC Classication: QA278.
1549. Jon Kleinberg and Christos Papadimitriou. Computability and Complexity. In Computer
Science: Reections on the Field, Reections from the Field [618], Chapter 2.1, pages 3750.
National Academies Press: Washington, DC, USA, 2004. Fully available at http://www.
cs.cornell.edu/home/kleinber/cstb-turing.pdf [accessed 2010-06-25].
1550. Georg Kliewer and Peter Unruh. Parallele Simulated Annealing Bibliothek: Entwicklung und
Einsatz zur Flugplanoptimierung. Masters thesis, Universitat-Gesamthochschule Paderborn,
Fachbereich 17: Mathematik/Informatik: Paderborn, Germany, February 1998, Burkhard
Monien and S. Tschoke, Advisors. Fully available at http://www.uni-paderborn.de/
cs/geokl/publications/geokl.master.ps [accessed 2010-09-25].
1551. Dimitri Knjazew and David Edward Goldberg. Solving Permutation Problems with the
Ordering Messy Genetic Algorithms. In Advances in Evolutionary Computing Theory and
Applications [1049], pages 321350. Springer New York: New York, NY, USA, 2002.
1552. Joshua D. Knowles and David Wolfe Corne. Properties of an Adaptive Archiving Al-
gorithm for Storing Nondominated Vectors. IEEE Transactions on Evolutionary Com-
putation (IEEE-EC), 7(2):100116, April 2003, IEEE Computer Society: Washington,
DC, USA. doi: 10.1109/TEVC.2003.810755. Fully available at http://dbkgroup.org/
knowles/KnowlesCorneIEEEToECsub2a.pdf [accessed 2010-12-16]. INSPEC Accession Num-
ber: 7617174.
1553. Joshua D. Knowles, Richard A. Watson, and David Wolfe Corne. Reducing Local Optima
in Single-Objective Problems by Multi-objectivization. In EMO01 [3099], pages 269283,
2001. doi: 10.1007/3-540-44719-9 19. Fully available at http://www.macs.hw.ac.uk/
sxk038200/
research/wsc07.pdf [accessed 2007-10-25]. INSPEC Accession Number: 9868638. See also
[319, 1569].
1571. Srividya Kona, Ajay Bansal, M. Brian Blake, Steen Bleul, and Thomas Weise. WSC-
2009: A Quality of Service-Oriented Web Services Challenge. In CEC09 [1245], pages
487490, 2009. doi: 10.1109/CEC.2009.80. Fully available at http://www.it-weise.de/
documents/files/KBBSW2009WAQOSOWSC.pdf. INSPEC Accession Number: 10839134.
Ei ID: 20094712467206.
1572. Andreas Konig, Mario Koppen, Ajith Abraham, Christian Igel, and Nikola Kasabov,
editors. Proceedings of the 7th International Conference on Hybrid Intelligent
Systems (HIS07), September 1719, 2007, Fraunhofer Center FhG ITWM/FhG
IESE: Kaiserslautern, Germany. IEEE Computer Society: Piscataway, NJ, USA.
isbn: 0-7695-2946-1. OCLC: 213890399 and 314017946. Library of Congress Con-
trol Number (LCCN): 2007936727. Order No.: P2946. Product Number E2946.
1573. Anna V. Kononova, Derek B. Ingham, and Mohamed Pourkashanian. Simple Scheduled
Memetic Algorithm for Inverse Problems in Higher Dimensions: Application to Chemical Ki-
netics. In CEC08 [1889], pages 39053912, 2008. doi: 10.1109/CEC.2008.4631328. INSPEC
Accession Number: 10251020.
1574. Andreas Konstantinidis, Qingfu Zhang, and Kun Yang. A Subproblem-dependent Heuristic in
MOEA/D for the Deployment and Power Assignment Problem in Wireless Sensor Network. In
CEC09 [1350], pages 27402747, 2009. doi: 10.1109/CEC.2009.4983286. INSPEC Accession
Number: 10688881.
1575. Erricos John Kontoghiorghes, Ber c Rustem, and Peter Winker, editors. Computational
Methods in Financial Engineering Essays in Honour of Manfred Gilli. Springer-Verlag:
Berlin/Heidelberg, 2008. doi: 10.1007/978-3-540-77958-2. Library of Congress Control Num-
ber (LCCN): 2008921042.
1576. Mario Koppen and Kaori Yoshida. Substitute Distance Assignments in NSGA-II for Han-
dling Many-Objective Optimization Problems. In EMO07 [2061], pages 727741, 2007.
doi: 10.1007/978-3-540-70928-2 55.
1577. Mario Koppen and Kaori Yoshida. Visualization of Pareto-Sets in Evolutionary Multi-
Objective Optimization. In HIS07 [1572], pages 156161, 2007. doi: 10.1109/HIS.2007.62.
INSPEC Accession Number: 9877140.
1578. Mario Koppen, David H. Wolpert, and William G. Macready. Remarks on a Recent Pa-
per on the No Free Lunch Theorems. IEEE Transactions on Evolutionary Computation
(IEEE-EC), 5(3):295296, June 2001, IEEE Computer Society: Washington, DC, USA.
doi: 10.1109/4235.930318. Fully available at http://ti.arc.nasa.gov/people/dhw/
papers/76.ps and http://www.no-free-lunch.org/KoWM01.pdf [accessed 2008-03-28].
1579. Proceedings of the 8th International Symposium on Advanced Intelligent Systems (ISIS07),
September 58, 2007, Kensington Hotel: Sokcho, Korea. Korean Fuzzy Logic and Intelligent
System Society (KFIS).
1580. Peter Korosec and Jurij
Silc. Real-Parameter Optimization Using Stigmergy. In
BIOMA06 [919], pages 7384, 2006. Fully available at http://csd.ijs.si/silc/
articles/BIOMA06DASA.pdf [accessed 2007-08-05].
1581. Witold Kosi nski, editor. Advances in Evolutionary Algorithms. InTech: Winchester,
Hampshire, UK. Fully available at http://www.intechopen.com/books/show/title/
advances_in_evolutionary_algorithms [accessed 2011-11-21].
1582. Juhani Koski. Defectiveness of Weighting Method in Multicriterion Optimization of Struc-
1076 REFERENCES
tures. Communications in Applied Numerical Methods (CANM), 1(6):333337, Novem-
ber 1985, Wiley Interscience: Chichester, West Sussex, UK. doi: 10.1002/cnm.1630010613.
1583. Alex Kosoruko. Human-based Genetic Algorithm. In SMC01 [1366], pages 34643469,
volume 5, 2001. doi: 10.1109/ICSMC.2001.972056. See also [1584].
1584. Alex Kosoruko. Human-based Genetic Algorithm. IlliGAL Report 2001004, Illinois Genetic
Algorithms Laboratory (IlliGAL), Department of Computer Science, Department of General
Engineering, University of Illinois at Urbana-Champaign: Urbana-Champaign, IL, USA,
January 2001. CiteSeer
x
: 10.1.1.28.6133. See also [1583].
1585. Yannis Kotidis and Nick Roussopoulos. A Case for Dynamic View Management. ACM Trans-
actions on Database Systems (TODS), 26(4):388423, December 2001, Association for Com-
puting Machinery (ACM): New York, NY, USA. doi: 10.1145/503099.503100. Fully available
at http://www.db-net.aueb.gr/kotidis/Publications/TODS.pdf [accessed 2011-04-
13]. CiteSeer
x
: 10.1.1.21.1377.
1586. Petros Koumoutsakos, J. Freund, and D. Parekh. Evolution Strategies for Parameter Opti-
mization in Jet Flow Control. In Proceedings of the 1998 Summer Program [1925], 1998. Fully
available at http://ctr.stanford.edu/Summer98/koumoutsakos.pdf [accessed 2009-06-
16].
1587. Tim Kovacs. XCS Classier System Reliably Evolves Accurate, Complete, and Minimal
Representations for Boolean Functions. In WSC2 [535], pages 5968, 1997. Fully available
at http://www.cs.bris.ac.uk/Publications/Papers/1000239.pdf [accessed 2007-08-
18]. CiteSeer
x
: 10.1.1.38.4522 and 10.1.1.58.5539.
1588. Tim Kovacs. Two Views of Classier Systems. In IWLCS01 [1679], pages 7487,
2001. doi: 10.1007/3-540-48104-4 6. Fully available at http://www.cs.bris.ac.uk/
Publications/Papers/1000647.pdf [accessed 2007-09-11].
1589. Tim Kovacs, Xavier Llor` a, Keiki Takadama, Pier Luca Lanzi, Wolfgang Stolzmann, and
Stewart W. Wilson, editors. Revised Selected Papers of the International Workshops on
Learning Classier Systems (IWLCS 03-05), 2007, volume 4399/2007 in Lecture Notes in
Articial Intelligence (LNAI, SL7), Lecture Notes in Computer Science (LNCS). Springer-
Verlag GmbH: Berlin, Germany. doi: 10.1007/978-3-540-71231-2. isbn: 3-540-71230-5.
OCLC: 612928449. Library of Congress Control Number (LCCN): 2007923322. See also
[27, 2280, 2578].
1590. John R. Koza. Non-Linear Genetic Algorithms for Solving Problems. United States Patent
4,935,877, United States Patent and Trademark Oce (USPTO): Alexandria, VA, USA,
1988. Filed May 20, 1988. Issued June 19, 1990. Australian patent 611,350 issued september
21, 1991. Canadian patent 1,311,561 issued december 15, 1992.
1591. John R. Koza. Hierarchical Genetic Algorithms Operating on Populations of Com-
puter Programs. In IJCAI89-I [2593], pages 768774, 1989. Fully available
at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/Koza_
geCP.html, and http://www.genetic-programming.com/jkpdf/alife1990.pdf
[accessed 2008-05-29]. CiteSeer
x
: 10.1.1.140.6634. Revised November 29, 1990.
1596. John R. Koza. Genetic Programming: A Paradigm for Genetically Breeding Populations
of Computer Programs to Solve Problems. Technical Report STAN-CS-90-1314, Stanford
University, Computer Science Department: Stanford, CA, USA, June 1990. Fully avail-
REFERENCES 1077
able at http://www.genetic-programming.com/jkpdf/tr1314.pdf [accessed 2010-08-19].
CiteSeer
x
: 10.1.1.4.9961. See also [2559].
1597. John R. Koza. Concept Formation and Decision Tree Induction using the Genetic Pro-
gramming Paradigm. In PPSN I [2438], pages 124128, 1990. doi: 10.1007/BFb0029742.
CiteSeer
x
: 10.1.1.53.5800.
1598. John R. Koza. Non-Linear Genetic Algorithms for Solving Problems by Finding a Fit Com-
position of Functions. United States Patent 5,136,686, United States Patent and Trademark
Oce (USPTO): Alexandria, VA, USA. Filed March 28, 1990, Issued August 4, 1992.
1599. John R. Koza. Genetic Programming II: Automatic Discovery of Reusable Programs, Com-
plex Adaptive Systems, Bradford Books. MIT Press: Cambridge, MA, USA, July 4, 1994.
isbn: 0-262-11189-6. Google Books ID: t7tpQgAACAAJ. OCLC: 30725207, 180673805,
264562231, 311925261, 493266030, and 634102150. Library of Congress Control
Number (LCCN): 94076375. GBV-Identication (PPN): 153763795, 186785119, and
308224353. LC Classication: QA76.6 .K693 1994.
1600. John R. Koza. A Response to the ML-95 Paper entitled Hill Climbing beats Genetic Search
on a Boolean Circuit Synthesis of Kozas. self-published. Fully available at http://
www.genetic-programming.com/jktahoe24page.html [accessed 2009-06-16]. Version 1 dis-
tributed at the Twelfth International Machine Learning Conference (ML-95). Version 2 dis-
tributed at the Sixth International Conference on Genetic Algorithms (ICGA-95). Version 3
deposited at WWW site on May 26, 1996. See also [883, 1665, 2221].
1601. John R. Koza. Genetic Algorithms and Genetic Programming at Stanford. Stanford University
Bookstore, Stanford University: Stanford, CA, USA, Fall 2003. Book of Student Papers from
John Kozas Course at Stanford on Genetic Algorithms and Genetic Programming. Computer
Science 426 (CS 426), Biomedical Informatics 226 (BMI 226).
1602. John R. Koza. Genetic Programming: On the Programming of Computers by
Means of Natural Selection, Bradford Books. MIT Press: Cambridge, MA, USA,
December 1992. isbn: 0-262-11170-5. Google Books ID: Bhtxo60BV0EC and
Wd8TAAAACAAJ. OCLC: 26263956, 245844858, 312492070, 473279968, 476715745,
and 610975642. Library of Congress Control Number (LCCN): 92025785. GBV-
Identication (PPN): 110450795, 152621075, 185924921, 191489522, 237675633,
246890320, 282081046, and 49354836X. LC Classication: QA76.6 .K695 1992. 1992
rst edition, 1993 second edition.
1603. John R. Koza, editor. Late Breaking Papers at the First Annual Conference Genetic Pro-
gramming (GP96 LBP), July 2831, 1996, Stanford University: Stanford, CA, USA. Stanford
University Bookstore, Stanford University: Stanford, CA, USA. isbn: 0-18-201031-7. See
also [1609].
1604. John R. Koza, editor. Late Breaking Papers at the 1997 Genetic Programming Conference
(GP97 LBP), July 1316, 1997, Stanford University: Stanford, CA, USA. Stanford Univer-
sity Bookstore, Stanford University: Stanford, CA, USA. isbn: 0-18-206995-8. Google
Books ID: Vn-nAAAACAAJ and cFI7OAAACAAJ. OCLC: 38045123. See also [1611].
1605. John R. Koza, editor. Late Breaking Papers at the Genetic Programming 1998 Conference
(GP98 LBP), June 2225, 1998, University of Wisconsin: Madison, WI, USA. Stanford
University Bookstore, Stanford University: Stanford, CA, USA. See also [1612].
1606. John R. Koza and Eric V. Siegel, editors. Proceedings of 1995 AAAI Fall Symposium Series,
Genetic Programming Track, November 1012, 1995, Massachusetts Institute of Technology
(MIT): Cambridge, MA, USA. The symposium proceedings appeared as Technical Report
FS-95-01.
1607. John R. Koza, David Andre, Forrest H. Bennett III, and Martin A. Keane. Evolution of a Low-
Distortion, Low-Bias 60 Decibel Op Amp with Good Frequency Generalization using Genetic
Programming. In GP96 LBP [1603], pages 94100, 1996. Fully available at http://www.
cs.bham.ac.uk/
wbl/biblio/gp-html/koza_
1999_dacGP.html and http://www.genetic-programming.com/jkpdf/edc1999.
pdf [accessed 2009-06-16].
1614. John R. Koza, Forrest H. Bennett III, David Andre, and Martin A. Keane. Automatic
Design of Analog Electrical Circuits using Genetic Programming. In Hugh Cartwright, editor,
Intelligent Data Analysis in Science [503], Chapter 8, pages 172200. Oxford University Press,
Inc.: New York, NY, USA, 2000. Fully available at http://www.cs.bham.ac.uk/
wbl/
biblio/gp-html/koza_2000_idas.html [accessed 2009-06-16].
1615. John R. Koza, Martin A. Keane, Matthew J. Streeter, William Mydlowec, Jessen Yu, and
Guido Lanza. Genetic Programming IV: Routine Human-Competitive Machine Intelligence,
volume 5 in Genetic Programming Series. Springer Science+Business Media, Inc.: New York,
NY, USA, 2003. isbn: 0-387-25067-0, 0-387-26417-5, 1402074468, and 6610611831.
Google Books ID: YQxWzAEnINIC and vMaVhoI-hVUC. OCLC: 51817183, 60594679,
249361385, 255445558, 318293809, and 403761573.
1616. Dexter C. Kozen. The Design and Analysis of Algorithms, Texts and Monographs in Com-
puter Science. Springer-Verlag GmbH: Berlin, Germany, 1992. isbn: 0-387-97687-6 and
3-540-97687-6. Google Books ID: L AMnf9UF9QC. OCLC: 26014868, 318320484,
475812425, and 610835985. Library of Congress Control Number (LCCN): 91036759.
GBV-Identication (PPN): 018981704 and 118353721. LC Classication: QA76.9.A43
K69 1991.
1617. Oliver Kramer. Self-Adaptive Heuristics for Evolutionary Computation, volume 147 in
Studies in Computational Intelligence. Springer-Verlag: Berlin/Heidelberg, July 2008.
doi: 10.1007/978-3-540-69281-2. isbn: 3-540-69280-0. Google Books ID: f4QwC AJEjwC.
OCLC: 233933242. Library of Congress Control Number (LCCN): 2008928449. LC Clas-
sication: QA76.618 .K73 2008.
1618. Natalio Krasnogor and James E. Smith. A Tutorial for Competent Memetic Algorithms:
Model, Taxonomy, and Design Issues. IEEE Transactions on Evolutionary Computa-
tion (IEEE-EC), 9(5):474488, October 2005, IEEE Computer Society: Washington, DC,
USA. doi: 10.1109/TEVC.2005.850260. Fully available at http://www.cs.nott.ac.uk/
nau/papers/kuter05hierarchical.pdf [ac-
cessed 2011-01-11]. CiteSeer
x
: 10.1.1.81.669.
1652. Vladimir Kvasnicka, Martin Pelikan, and Jiri Pospichal. Hill Climbing with Learning
(An Abstraction of Genetic Algorithm). Neural Network World International Journal
on Non-Standard Computing and Articial Intelligence, 6:773796, 1996, Academy of Sci-
ences of the Czech Republic, Institute of Computer Science: Prague, Czech Republic.
Fully available at http://130.203.133.121:8080/viewdoc/summary?doi=10.1.1.
56.4888 [accessed 2009-08-21]. CiteSeer
x
: 10.1.1.56.4888.
1653. Chung Min Kwan and C. S. Chang. Application of Evolutionary Algorithm on a Trans-
portation Scheduling Problem The Mass Rapid Transit. In CEC05 [641], pages 987994,
volume 2, 2005. Fully available at http://www.lania.mx/
ccoello/EMOO/kwan05.
pdf.gz [accessed 2007-08-27].
1654. Stan C. Kwasny and John F. Buck, editors. Proceedings of the 21s/1993 ACM Confer-
ence on Computer Science (CSC93), February 1618, 1993, Indianapolis, IN, USA. ACM
Press: New York, NY, USA. isbn: 0-89791-558-5. Google Books ID: CJq9PwAACAAJ and
fHpQAAAAMAAJ. OCLC: 28196251, 84641266, 221446969, 221446969, 257836504,
258290585, and 311876190.
L
1655. Jerey C. Lagraias, James A. Reeds, Margaret H. Wright, and Paul E. Wright. Conver-
gence Properties of the Nelder-Mead Simplex Method in Low Dimensions. SIAM Journal
on Optimization (SIOPT), 9(1):112147, 1998, Society for Industrial and Applied Mathe-
matics (SIAM): Philadelphia, PA, USA. doi: 10.1137/S1052623496303470. Fully available
at http://www.aoe.vt.edu/
wbl/aigp3/ch08.ps.gz
[accessed 2011-11-23]. CiteSeer
x
: 10.1.1.59.1581.
1675. William B. Langdon, Erick Cant u-Paz, Keith E. Mathias, Rajkumar Roy, David Davis, Ric-
cardo Poli, Hari Balakrishnan, Vasant Honavar, G unter Rudolph, Joachim Wegener, Larry
Bull, Mitchell A. Potter, Alan C. Schultz, Julian Francis Miller, Edmund K. Burke, and
Natasa Jonoska, editors. Proceedings of the Genetic and Evolutionary Computation Confer-
ence (GECCO02), July 913, 2002, Roosevelt Hotel: New York, NY, USA. Morgan Kauf-
mann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-878-8, 1-55860-881-8,
and 1-55860-903-2. Google Books ID: 7YZQAAAAMAAJ, N3kCAAAACAAJ, QDq-IgAACAAJ,
W28dHQAACAAJ, and tBThPAAACAAJ. A joint meeting of the eleventh International Con-
ference on Genetic Algorithms (ICGA-2002) and the seventh Annual Genetic Programming
Conference (GP-2002). See also [224, 478, 1790].
1676. Pat Langley, editor. Proceedings of the 17th International Conference on Machine Learn-
ing (ICML00), June 29July 2, 2000, Stanford University: Stanford, CA, USA. Morgan
Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-707-2.
1677. Pier Luca Lanzi and Rick L. Riolo. A Roadmap to the Last Decade of Learning
Classier System Research (From 1989 to 1999). In IWLCS00 [1678], page 33, 2000.
doi: 10.1007/3-540-45027-0 2.
1678. Pier Luca Lanzi, Wolfgang Stolzmann, and Stewart W. Wilson, editors. Advances in Learning
Classier Systems, Revised Papers of the Third International Workshop on Learning Classi-
er Systems (IWLCS00), September 1516, 2000, Paris, France, volume 1996/2001 in Lec-
ture Notes in Articial Intelligence (LNAI, SL7), Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-42437-7. OCLC: 441809319. co-
den: LNCSD9. A joint workshop of the sixth International Conference on Simulation of
Adaptive Behaviour (SAB2000, and the sixth International Conference on Parallel Problem
Solving from Nature (PPSN VI, seeAlsoilPROC2000PPSN), published in 2001.
1679. Pier Luca Lanzi, Wolfgang Stolzmann, and Stewart W. Wilson, editors. Advances in Learn-
ing Classier Systems, Revised Papers of the Fourth International Workshop on Learn-
ing Classier Systems (IWLCS01), July 78, 2001, San Francisco, CA, USA, volume
2321/2002 in Lecture Notes in Articial Intelligence (LNAI, SL7), Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-48104-4.
isbn: 3-540-43793-2. Google Books ID: LX6ky1cIgXAC. Held during GECCO-2001, pub-
lished in 2002. See also [2570].
1680. Pier Luca Lanzi, Wolfgang Stolzmann, and Stewart W. Wilson, editors. Revised Papers of
the 5th International Workshop on Learning Classier Systems (IWLCS02), September 78,
1084 REFERENCES
2002, Granada, Spain, volume 2661/2003 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-20544-6. Published in 2003.
1681. Pier Luca Lanzi, Daniele Loiacono, Stewart W. Wilson, and David Edward Goldberg. Gen-
eralization in the XCSF Classier System: Analysis, Improvement, and Extension. Evo-
lutionary Computation, 15(2):133168, Summer 2007, MIT Press: Cambridge, MA, USA.
doi: 10.1162/evco.2007.15.2.133. CiteSeer
x
: 10.1.1.114.7870. PubMed ID: 17535137.
1682. Patrick LaRoche and A. Nur Zincir-Heywood. 802.11 Network Intrusion Detec-
tion Using Genetic Programming. In GECCO05 WS [2339], pages 170171,
2005. doi: 10.1145/1102256.1102295. Fully available at http://larocheonline.ca/
wbl/biblio/gp-html/eurogp_
LasarczykB05.html [accessed 2010-08-01]. CiteSeer
x
: 10.1.1.131.4314.
1685. Christian W. G. Lasarczyk and Wolfgang Banzhaf. Total Synthesis of Algo-
rithmic Chemistries. In GECCO05 [304], pages 16351640, volume 2, 2005.
doi: 10.1145/1068009.1068285. Fully available at http://www.cs.bham.ac.uk/
wbl/
biblio/gecco2005/docs/p1635.pdf [accessed 2009-08-02].
1686. J org Lassig and Achim G. Homann. Threshold-selecting Strategy for Best Possible
Ground State Detection with Genetic Algorithms. Physical Review E, 79(4):046702046702
8, April 2009, American Physical Society: College Park, MD, USA. doi: 10.1103/Phys-
RevE.79.046702. See also [1687].
1687. J org Lassig, Karl Heinz Homann, and Mihaela Enachescu. Threshold Selecting: Best
Possible Probability Distribution for Crossover Selection in Genetic Algorithms. In
GECCO08 [1519], pages 21812185, 2008. doi: 10.1145/1388969.1389044. See also [1686].
1688. Michael Lassig and Angelo Valleriani, editors. Biological Evolution and Statistical Physics,
volume 585/2002 in Lecture Notes in Physics. Springer-Verlag: Berlin/Heidelberg, 2002.
doi: 10.1007/3-540-45692-9. isbn: 3-540-43188-8. Google Books ID: b7SL7kc5N7oC.
issn: 0075-8450.
1689. Antonio LaTorre, Jose Mara Pe na, Santiago Muelas, and Manuel Zaforas. Hybrid Evolu-
tionary Algorithms for Large Scale Continuous Problems. In GECCO09-I [2342], pages
18631864, 2009. doi: 10.1145/1569901.1570205.
1690. Hui Keng Lau, Jonathan Timmis, and Ian Bate. Anomaly Detection Inspired by
Immune Network Theory: A Proposal. In CEC09 [1350], pages 30453051, 2009.
doi: 10.1109/CEC.2009.4983328. Fully available at ftp://ftp.cs.york.ac.uk/papers/
rtspapers/R:Lau:2009.pdf [accessed 2009-09-05]. INSPEC Accession Number: 10688923.
1691. Marco Laumanns, Eckart Zitzler, and Lothar Thiele. A Unied Model for Multi-Objective
Evolutionary Algorithms with Elitism. In CEC00 [1333], pages 4653, volume 1, 2000.
doi: 10.1109/CEC.2000.870274. Fully available at http://www.lania.mx/
ccoello/
EMOO/laumanns00.ps.gz [accessed 2010-08-01]. CiteSeer
x
: 10.1.1.36.4389. INSPEC Ac-
cession Number: 6734602.
1692. Marco Laumanns, Lothar Thiele, Kalyanmoy Deb, and Eckart Zitzler. On the Convergence
and Diversity-Preservation Properties of Multi-Objective Evolutionary Algorithms. TIK-
Report 108, Kanpur Genetic Algorithms Laboratory (KanGAL), Department of Mechanical
Engineering, Indian Institute of Technology Kanpur (IIT): Kanpur, Uttar Pradesh, India,
June 13, 2001. Fully available at http://e-collection.ethbib.ethz.ch/view/eth:
24717 [accessed 2009-07-09]. CiteSeer
x
: 10.1.1.28.6480.
1693. Eug`ene L. Lawler. Introduction to Stochastic Processes. Chapman & Hall: London, UK and
CRC Press, Inc.: Boca Raton, FL, USA, 2nd edition, July 1995. isbn: 0412995115 and
158488651X. Google Books ID: 1L8uPQAACAAJ, LATJdzBlajUC, and ypD8ZFqdPlUC.
OCLC: 31288133, 64084881, and 266086758.
1694. Eug`ene L. Lawler, Jan Karel Lenstra, A. H. G. Rinnooy-Kan, and David B. Shmoys.
REFERENCES 1085
The Traveling Salesman Problem: A Guided Tour of Combinatorial Optimization, Wiley-
Interscience Series in Discrete Mathematics, Estimation, Simulation, and Control Wiley-
Interscience Series in Discrete Mathematics and Optimization. Wiley Interscience: Chich-
ester, West Sussex, UK, September 1985. isbn: 0-471-90413-9. OCLC: 11756468,
260186267, 468006920, 488801427, 611882247, and 631997749. Library of
Congress Control Number (LCCN): 85003158. GBV-Identication (PPN): 011848790,
02528360X, 042459834, 042637112, 043364950, 078586313, 156527677, 175957169,
and 190388226. LC Classication: QA164 .T73 1985.
1695. Mark Lawrence and Colin Wilsdon, editors. Operational Research Tutorial Papers Annual
Conference of the Operational Research Society, 1995, Canterbury, Kent, UK. Operations Re-
search Society: Birmingham, UK, Hoskyns Cap Gemini Sogeti, and Stockton Press: Hamp-
shire, UK. isbn: 0-903440-15-6. Google Books ID: pLkmAQAACAAJ. OCLC: 222984071
and 249133773.
1696. Michael Lawrence. Multiobjective Genetic Algorithms for Materialized View Se-
lection in OLAP Data Warehouses. In GECCO06 [1516], pages 669706, 2006.
doi: 10.1145/1143997.1144120.
1697. Steve Lawrence and C. Lee Giles. Overtting and Neural Networks: Conjugate Gradient
and Backpropagation. In IJCNN00 [82], pages 11141119, volume 1, 2000. doi: 10.1109/I-
JCNN.2000.857823. CiteSeer
x
: 10.1.1.27.9735. INSPEC Accession Number: 6696828.
1698. Antonio Lazcano and Stanley L. Miller. How long did it take for Life to begin and evolve
to Cyanobacteria? Journal of Molecular Evolution, 39(6):546554, December 1994, Springer
New York: New York, NY, USA. doi: 10.1007/BF00160399. PubMed ID: 11536653.
1699. A. C. G. Verdugo Lazo and P. N. Rathie. On the Entropy of Continuous Probability Dis-
tributions. IEEE Transactions on Information Theory (TIT), 24(1):120122, January 1978,
Institute of Electrical and Electronics Engineers (IEEE) Press: New York, NY, USA.
1700. Lucien Marie Le Cam and Jerzy Neyman, editors. Proceedings of the Fifth Berkeley Sympo-
sium on Mathematical Statistics and Probability (June 21-July 18, 1965 and December 27,
1965-January 7, 1966), 1967, University of California, Statistical Laboratory: Berkeley, CA,
USA. University of California Press: Berkeley, CA, USA. Fully available at http://
projecteuclid.org/euclid.bsmsp/1200513453, http://projecteuclid.
org/euclid.bsmsp/1200513615, http://projecteuclid.org/euclid.bsmsp/
1200513981, and http://ucblibrary4.berkeley.edu:8088/xdlib//math/ucb/
mets/cumath_9_1_00019737.xml [accessed 2009-10-20]. Google Books ID: IX9WAAAAMAAJ,
LVI4AAAAIAAJ, NA-3QQAACAAJ, and f7xWAAAAMAAJ. OCLC: 5772953, 25234711,
25234721, 25234803, 25234809, 36997875, 71753794, 221157481, 223463967, and
300992815. issn: 0097-0433.
1701. Joshua Lederberg and Alexa T. McCray. Ome Sweet Omics A Genealogical Treasury of
Words. The Scientist Magazine of the Life Sciences, 15(7):8, April 2001. Fully available
at http://lhncbc.nlm.nih.gov/lhc/docs/published/2001/pub2001047.pdf [ac-
cessed 2009-06-28].
1702. Chang-Yong Lee and Xin Yao. Evolutionary Programming using the Mutations based
on the Levy Probability Distribution. IEEE Transactions on Evolutionary Computation
(IEEE-EC), 8(1):113, February 2004, IEEE Computer Society: Washington, DC, USA.
doi: 10.1109/TEVC.2003.816583. CiteSeer
x
: 10.1.1.6.2145. INSPEC Accession Num-
ber: 8003613.
1703. Jack Yiu-Bun Lee and P. C. Wong. The Eect of Function Noise on GP Eciency. In
Progress in Evolutionary Computation, AI93 (Melbourne, Victoria, Australia, 1993-11-16)
and AI94 Workshops (Armidale, NSW, Australia, 1994-11-22/23) on Evolutionary Compu-
tation, Selected Papers [3023], pages 116, 19931994. doi: 10.1007/3-540-60154-6 43.
1704. Jongsoo Lee and Prabhat Hajela. Parallel Genetic Algorithm Implementation in Multidisci-
plinary Rotor Blade Design. Technical Report ADA305771, Renssalaer Polytechnic Institute,
Aeronautical Engineering and Mechanics Department, Mechanical Engineering: Troy, NY,
USA, Defense Technical Information Center (DTIC): Fort Belvoir, VA, USA, November 1995.
Fully available at http://handle.dtic.mil/100.2/ADA305771 [accessed 2009-06-17]. See
also [1705].
1705. Jongsoo Lee and Prabhat Hajela. Parallel Genetic Algorithm Implementation in Multi-
disciplinary Rotor Blade Design. Journal of Aircraft, 33(5):962966, SeptemberOctober
1996, American Institute of Aeronautics and Astronautics (AIAA): Reston, VA, USA.
1086 REFERENCES
doi: 10.2514/3.47042. See also [1704].
1706. Minsoo Lee and Joachim Hammer. Speeding up Materialized View Selection in Data Ware-
house using a Randomized Algorithm. International Journal of Cooperative Information
Systems (IJCIS), 10(3):327353, September 2001, World Scientic Publishing Co.: Singa-
pore. doi: 10.1142/S0218843001000370. Fully available at http://www.cise.ufl.edu/
va/research/jcam.
pdf [accessed 2010-12-25]. CiteSeer
x
: 10.1.1.35.5338. ICASE Report No. 2000-26. See also
[1720].
1720. Robert Michael Lewis, Virginia Joanne Torczon, and Michael W. Trosset. Direct Search
Methods: Then and Now. Journal of Computational and Applied Mathematics, 124(1-
2):191207, December 2000, Elsevier Science Publishers B.V.: Amsterdam, The Nether-
lands. Imprint: North-Holland Scientic Publishers Ltd.: Amsterdam, The Netherlands.
doi: 10.1016/S0377-0427(00)00423-4. See also [1719].
1721. Jin Li. FGP: A Genetic Programming Based Tool for Financial Forecasting. PhD thesis,
University of Essex: Wivenhoe Park, Colchester, Essex, UK, October 6, 2001. See also
[1722].
1722. Jin Li, Xiaoli Li, and Xin Yao. Cost-Sensitive Classication with Genetic Programming. In
CEC05 [641], pages 21142121, 2005. Fully available at http://www.cs.bham.ac.uk/
emezura/util/
files/tr_cec06.pdf [accessed 2009-10-26]. Partly available at http://www3.ntu.edu.sg/
home/EPNSugan/index_files/CEC-06/CEC06.htm [accessed 2009-10-26].
1733. Suiliong Liang, A. Nur Zincir-Heywood, and Malcom Ian Heywood. The Eect of Rout-
ing under Local Information using a Social Insect Metaphor. In CEC02 [944], pages
14381443, 2002. Fully available at http://users.cs.dal.ca/
mheywood/X-files/
Publications/01004454.pdf [accessed 2008-07-26]. See also [1734].
1734. Suiliong Liang, A. Nur Zincir-Heywood, and Malcom Ian Heywood. Adding More In-
telligence to the Network Routing Problem: AntNet and GA-Agents. Applied Soft
Computing, 6(3):244257, March 2006, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/j.asoc.2005.01.005. See also [1733].
1735. Weifa Liang, Hui Wang, and Maria E. Orlowska. Materialized View Selection under the
Maintenance Time Constraint. Data & Knowledge Engineering, 37(2):203216, May 2001,
Elsevier Science Publishers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Sci-
entic Publishers Ltd.: Amsterdam, The Netherlands. doi: 10.1016/S0169-023X(01)00007-6.
CiteSeer
x
: 10.1.1.90.9530.
1736. Pierre Liardet, Pierre Collet, Cyril Fonlupt, Evelyne Lutton, and Marc Schoenauer, editors.
Proceedings of the 6th International Conference on Articial Evolution, Evolution Articielle
(EA03), October 2730, 2003, Marseilles, France, volume 2936 in Lecture Notes in Computer
Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-21523-9. Published
in 2003.
1737. Ching-Fang Liaw. A Hybrid Genetic Algorithm for the Open Shop Scheduling Problem. Eu-
ropean Journal of Operational Research (EJOR), 124(1):2842, July 1, 2000, Elsevier Science
Publishers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic Publishers
Ltd.: Amsterdam, The Netherlands. doi: 10.1016/S0377-2217(99)00168-X.
1738. Vibeke Libby, editor. Proceedings of Data Structures and Target Classication, the SPIEs In-
ternational Symposium on Optical Engineering and Photonics in Aerospace Sensing, April 1
2, 1991, Orlando, FL, USA, volume 1470 in The Proceedings of SPIE. Society of Photographic
Instrumentation Engineers (SPIE): Bellingham, WA, USA. isbn: 0819405795. Google Books
ID: Ne1RAAAAMAAJ. OCLC: 24461715.
1739. Gunar E. Liepins and Michael D. Vose. Deceptiveness and Genetic Algorithm Dynamics. In
FOGA90 [2562], pages 3650, 1990. Fully available at http://www.osti.gov/bridge/
servlets/purl/6445602-CfqU6M/ [accessed 2007-11-05].
1740. Pedro Lima, editor. Robotic Soccer. I-Tech Education and Publishing: Vienna, Aus-
tria, 2007. isbn: 3-902613-07-6. Fully available at http://s.i-techonline.
com/Book/Robotic-Soccer/ISBN978-3-902613-21-9.html [accessed 2008-04-23]. Google
Books ID: 5lAuQwAACAAJ. OCLC: 441015574.
1741. JiGuan G. Lin Lin. On Min-Norm and Min-Max Methods of Multi-Objective Optimiza-
tion. Mathematical Programming, 103(1):133, May 2005, Springer-Verlag: Berlin/Heidel-
berg. doi: 10.1007/s10107-003-0462-y.
1742. Charles X. Ling. Overtting and Generalization in Learning Discrete Patterns. Neu-
rocomputing, 8(3):341347, August 1995, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/0925-2312(95)00050-G. CiteSeer
x
: 10.1.1.17.3198. Optimization and Com-
binatorics, Part I-III.
1743. Marc Lipsitch. Adaptation on Rugged Landscapes Generated by Iterated Local Interactions
of Neighboring Genes. In ICGA91 [254], pages 128135, 1991.
1744. Proceedings of the 15th Portuguese Conference on Articial Intelligence (EPIA11), Octo-
ber 1013, 2011, Lisbon, Portugal. Partly available at http://epia2011.appia.pt/
[accessed 2011-04-24].
1745. Duixian Liu and Brian Gaucher, editors. 2006 IEEE International Workshop on Antenna
REFERENCES 1089
Technology: Small Antennas and Novel Metamaterials (iWAT06), March 6, 2006March 8,
2005, Crowne Plaza Hotel: White Plains, NY, USA. IEEE Computer Society: Piscataway,
NJ, USA. isbn: 0-7803-9443-7. Google Books ID: IxvhAAAACAAJ. OCLC: 122521207,
289019234, 326736309, and 423939179. Catalogue no.: 06EX1191.
1746. Fang Liu and Le-Ping Lin. Unsupervised Anomaly Detection Based on an Evolutionary
Articial Immune Network. In EvoWorkshops05 [2340], pages 166174, 2005.
1747. Pu Liu, Francis C. M. Lau, Michael J. Lewis, and Cho-li Wang. A New Asynchronous
Parallel Evolutionary Algorithm for Function Optimization. In PPSN VII [1870], pages
401410, 2002. doi: 10.1007/3-540-45712-7 39.
1748. Tie-Yan Liu, Yiming Yang, Hao Wan, Hua-Jun Zeng, Zheng Chen, and Wei-Ying Ma. Sup-
port Vector Machines Classication with a Very Large-Scale Taxonomy. ACM SIGKDD Ex-
plorations Newsletter, 7(1):3643, June 2005, Association for Computing Machinery (ACM):
New York, NY, USA. doi: 10.1145/1089815.1089821. CiteSeer
x
: 10.1.1.72.1506.
1749. Yongguo Liu, Kefei Chen, Xiaofeng Liao, and Wei Zhang. A Genetic Clustering
Method for Intrusion Detection. Pattern Recognition, 37(5):927942, May 2004, El-
sevier Science Publishers B.V.: Essex, UK. Imprint: Pergamon Press: Oxford, UK.
doi: 10.1016/j.patcog.2003.09.011.
1750. Silvana Livramento, Arnaldo V. Moura, Fl avio K. Miyazawa, Mario M. Harada, and Ed-
uardo Reck Miranda. A Genetic Algorithm for Telecommunication Network Design. In
EvoWorkshops04 [2254], pages 140149, 2004.
1751. Xavier Llor` a and Kumara Sastry. Fast Rule Matching for Learning Classier Systems via Vec-
tor Instructions. In GECCO06 [1516], pages 15131520, 2006. doi: 10.1145/1143997.1144244.
See also [1752].
1752. Xavier Llor` a and Kumara Sastry. Fast Rule Matching for Learning Classier Systems via
Vector Instructions. IlliGAL Report 2006001, Illinois Genetic Algorithms Laboratory (Il-
liGAL), Department of Computer Science, Department of General Engineering, Univer-
sity of Illinois at Urbana-Champaign: Urbana-Champaign, IL, USA, January 2006. Fully
available at http://www.illigal.uiuc.edu/pub/papers/IlliGALs/2006001.pdf
[accessed 2007-09-12]. See also [1751].
1753. Fernando G. Lobo, Claudio F. Lima, and Zbigniew Michalewicz, editors. Parameter
Setting in Evolutionary Algorithms, volume 54 in Studies in Computational Intelli-
gence. Springer-Verlag: Berlin/Heidelberg, March 2007. doi: 10.1007/978-3-540-69432-8.
isbn: 3-540-69431-5 and 3-540-69432-3. Google Books ID: WgMmGQAACAAJ,
vfjLsGBmi7kC, and voAuHwAACAAJ. Library of Congress Control Number
(LCCN): 2006939345.
1754. Jose Lobo, John H. Miller, and Walter Fontana. Neutrality in Technological Landscapes.
Working papers, Santa Fe Institute: Santa Fe, NM, USA, January 26, 2004. Fully avail-
able at http://fontana.med.harvard.edu/www/Documents/WF/Papers/tech.
neut.pdf, http://time.dufe.edu.cn/jingjiwencong/waiwenziliao/neut.
pdf, and http://zia.hss.cmu.edu/miller/papers/neut.pdf [accessed 2010-12-04].
CiteSeer
x
: 10.1.1.61.9296.
1755. Marco Locatelli. A Note on the Griewank Test Function. Journal of Global Opti-
mization, 25(2):169174, February 2003, Springer Netherlands: Dordrecht, Netherlands.
doi: 10.1023/A:1021956306041.
1756. Darrell F. Lochtefeld. Multi-Objectivization in Genetic Algorithms. PhD thesis, Wright
State University (WSU), School of Graduate Studies: Dayton, OH, USA, May 26, 2011,
Frank William Ciarallo, Supervisor, Raymond R. Hill, Yan Liu, W. Paul Murdock, and
Mateen M. Rizki, Committee members. Fully available at http://etd.ohiolink.edu/
send-pdf.cgi/Lochtefeld%20Darrell%20F.pdf?wright1308765665 [accessed 2011-12-
04].
1757. Darrell F. Lochtefeld and Frank William Ciarallo. Deterministic Helper Objective Sequence
Applied to the Job-Shop Scheduling Problem. In GECCO10 [30], pages 431438, 2010.
doi: 10.1145/1830483.1830566.
1758. Darrell F. Lochtefeld and Frank William Ciarallo. Helper-Objective Optimization Strategies
for the Job-Shop Scheduling Problem. Applied Soft Computing, 11(6):41614174, Septem-
ber 2011, Elsevier Science Publishers B.V.: Essex, UK. doi: 10.1016/j.asoc.2011.03.007.
1759. A. Geo Lockett and Gerd Islei, editors. Proceedings of the 8th International Confer-
ence on Multiple Criteria Decision Making: Improving Decision Making in Organizations
1090 REFERENCES
(MCDM88), August 2126, 1988, University of Manchester, Manchester Business School:
Manchester, UK, Lecture Notes in Economics and Mathematical Systems. Springer-Verlag:
Berlin/Heidelberg. isbn: 0387517952 and 3540517952. OCLC: 20672173, 230998532,
311213400, 613307351, and 634248012. Published in December 1989.
1760. Reinhard Lohmann. Structure Evolution and Incomplete Induction. Biological Cybernetics,
69(4):319326, August 1993, Springer-Verlag: Berlin/Heidelberg. doi: 10.1007/BF00203128.
1761. Reinhard Lohmann. Structure Evolution and Neural Systems. In Dynamic, Genetic, and
Chaotic Programming: The Sixth-Generation [2559], pages 395411. Wiley Interscience:
Chichester, West Sussex, UK, 1992.
1762. Jason D. Lohn, editor. The 2003 NASA/DoD Conference on Evolvable Hardware (EH03),
June 911, 2003, Chicago, IL, USA. IEEE Computer Society: Washington, DC, USA.
1763. Jason D. Lohn and Silvano P. Colombano. Automated Analog Circuit Synthesis using a
Linear Representation. In ICES98 [2509], pages 125133, 1999. Fully available at http://
ti.arc.nasa.gov/people/jlohn/bio.html [accessed 2009-06-16]. See also [1764].
1764. Jason D. Lohn and Silvano P. Colombano. A Circuit Representation Technique for Automated
Circuit Design. IEEE Transactions on Evolutionary Computation (IEEE-EC), 3(3):205219,
September 1999, IEEE Computer Society: Washington, DC, USA. doi: 10.1109/4235.788491.
Fully available at http://ti.arc.nasa.gov/people/jlohn/bio.html [accessed 2010-08-
27]. CiteSeer
x
: 10.1.1.6.7507. INSPEC Accession Number: 6366632. See also [1763, 1765,
1766].
1765. Jason D. Lohn, Silvano P. Colombano, Garyl L. Haith, and Dimitris Stassinopoulos. A
Parallel Genetic Algorithm for Automated Electronic Circuit Design. In CAS00 [2001], 2000.
Fully available at http://ic.arc.nasa.gov/people/jlohn/bio.html [accessed 2009-06-
16]. See also [1764, 1766].
1766. Jason D. Lohn, Garyl L. Haith, Silvano P. Colombano, and Dimitris Stassinopoulos. To-
wards Evolving Electronic Circuits for Autonomous Space Applications. In Proceedings of
the IEEE Aerospace Conference [1322], 2000. doi: 10.1109/AERO.2000.878523. Fully avail-
able at http://ti.arc.nasa.gov/people/jlohn/bio.html [accessed 2009-06-16]. INSPEC
Accession Number: 6795690. See also [1764, 1765].
1767. Jason D. Lohn, William F. Kraus, and Derek Linden. Evolutionary Optimization of a Quadri-
lar Helical Antenna. In IEEE AP-S International Symposium and USNC/URSI National Ra-
dio Science Meeting [1336], 2002. Fully available at http://ti.arc.nasa.gov/people/
jlohn/Papers/aps2002.pdf [accessed 2009-06-17]. See also [1768, 1770].
1768. Jason D. Lohn, Derek Linden, Gregory S. Hornby, William F. Kraus, and Ad an Rodrguez-
Arroyo. Evolutionary Design of an X-Band Antenna for NASAs Space Technology 5 Mission.
In EH03 [1762], pages 155163, 2003. doi: 10.1109/EH.2003.1217660. See also [1767, 1770].
1769. Jason D. Lohn, Gregory S. Hornby, and Derek Linden. An Evolved Antenna for Deploy-
ment on NASAs Space Technology 5 Mission. In GPTP04 [2089], pages 301315, 2004.
doi: 10.1007/b101112. Fully available at http://ic.arc.nasa.gov/people/hornby/
papers/lohn_gptp04.ps.gz [accessed 2007-08-17].
1770. Jason D. Lohn, Derek Linden, Gregory S. Hornby, William F. Kraus, Ad an Rodrguez-Arroyo,
and Stephen E. Seufert. Evolutionary Design of an X-Band Antenna for NASAs Space Tech-
nology 5 Mission. In 2004 IEEE Antennas and Propagation Society (A-P-S) International
Symposium and USNC / URSI NationalRadio Science Meeting [2121], pages 23132316, vol-
ume 3, 2004. doi: 10.1109/APS.2004.1331834. Fully available at http://ti.arc.nasa.
gov/projects/esg/publications/lohn_papers/aps2004.pdf [accessed 2009-06-17]. See
also [1767, 1768].
1771. Proceedings of The Annual Conference of the South Eastern Accounting Group (SEAG) 2003,
September 8, 2003, London Metropolitan University: London, UK.
1772. Heitor Silverio Lopes and Wagner R. Weinert. EGIPSYS: an Enhanced Gene Expression
Programming Approach for Symbolic Regression Problems. International Journal of Ap-
plied Mathematics and Computer Science (AMCS), 14(3), September 2004, University of
Zielona G ora: Zielona G ora, Poland and Lubuskie Scientic Society: Zielona G ora, Poland.
Fully available at http://matwbn.icm.edu.pl/ksiazki/amc/amc14/amc1437.pdf
and http://www.amcs.uz.zgora.pl/?action=get_file&file=AMCS_2004_14_3_
7.pdf [accessed 2009-09-08]. Special Issue: Evolutionary Computation. AMCS Centro Federal
de Educacao Tecnologica do Parana / CPGEI Av. 7 de setembro, 3165, 80230-901 Curitiba
(PR), Brazil.
REFERENCES 1091
1773. Heitor Silverio Lopes, Fabiano Luis de Sousa, and Luiz Carlos Gadelha DeSouza. The Gen-
eralized Extremal Optimization with Real Codication. In EngOpt08 [1227], 2008. Fully
available at http://www.engopt.org/nukleo/pdfs/0201_engopt_2008_mainenti_
etal.pdf [accessed 2009-09-09].
1774. Lus Seabra Lopes, Nuno Lau, Pedro Mariano, and Lus Mateus Rocha, editors. Progress in
Articial Intelligence Proceedings of the 14th Portuguese Conference on Articial Intelli-
gence (EPIA09), October 1215, 2009, Aveiro, Portugal, volume 5816 in Lecture Notes in
Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
1775. Antonio Lopez Jaimes and Carlos Artemio Coello Coello. Some Techniques to Deal
with Many-Objective Problems. In GECCO09-II [2343], pages 26932696, 2009.
doi: 10.1145/1570256.1570386.
1776. Pascal Lorenz, Petre Dini, and Vladimir Uskov, editors. Proceedings of the 10th International
Conference on Telecommunications (ICT03), February 21March 1, 2003, Sotel Coralia
Maeva Beach Hotel, Tahiti, Papeete, French Polynesia. IEEE Computer Society: Piscataway,
NJ, USA. isbn: 0-7803-7661-7. Google Books ID: -TurAAAACAAJ. OCLC: 52223801,
80325313, and 423983590. Catalogue no.: 03EX628.
1777. D. Lorenzoli, S. Mussino, M. Pezze, A. Sichel, D. Tosi, and Daniela Schilling. A SOA based
Self-Adaptive PERSONAL MOBILITY MANAGER. In SCContest06 [554], pages 479486,
2006. doi: 10.1109/SCC.2006.16. INSPEC Accession Number: 9165412.
1778. Loughborough Antennas & Propagation Conference (PAPC06), April 1112, 2006. Lough-
borough University: Loughborough, Leicestershire, UK. isbn: 0947974415. Google Books
ID: K5K4NwAACAAJ.
1779. Jorge Loureiro and Orlando Belo. An Evolutionary Approach to the Selection and Allocation
of Distributed Cubes. In IDEAS06 [1372], pages 243248, 2006. doi: 10.1109/IDEAS.2006.9.
INSPEC Accession Number: 9353377.
1780. Jorge Loureiro and Orlando Belo. Swarm Intelligence in Cube Selection and Allo-
cation for Multi-Node OLAP Systems. In SCSS06 [878], pages 229239. Springer-
Verlag GmbH: Berlin, Germany, 2006, University of Bridgeport: Bridgeport, CT, USA.
doi: 10.1007/978-1-4020-6264-3 41.
1781. Jorge Loureiro and Orlando Belo. A Metamorphosis Algorithm for the Optimiza-
tion of a Multi-Node OLAP System. In EPIA07 [2026], pages 383394, 2007.
doi: 10.1007/978-3-540-77002-2 32.
1782. Jose Antonio Lozano, Pedro Larra naga, I naki Inza, and Endika Bengoetxea, editors. To-
wards a New Evolutionary Computation Advances on Estimation of Distribution Algo-
rithms, volume 192/2006 in Studies in Fuzziness and Soft Computing. Springer-Verlag
GmbH: Berlin, Germany, 2006. doi: 10.1007/11007937. isbn: 3-540-29006-0. Google Books
ID: 0dku9OKxl6AC and r0UrGB8y2V0C. OCLC: 63763942, 181473672, and 318299594.
Library of Congress Control Number (LCCN): 2005932568.
1783. Haiming Lu. State-of-the-Art Multiobjective Evolutionary Algorithms Pareto Ranking, Den-
sity Estimation and Dynamic Population. PhD thesis, Oklahoma State University, Faculty of
the Graduate College: Stillwater, OK, USA, August 2002, Gary G. Yen, Advisor. Fully avail-
able at http://www.lania.mx/
xin/papers/published_IEEETSMC_LuYa05.
pdf [accessed 2010-12-02]. CiteSeer
x
: 10.1.1.65.7063. INSPEC Accession Number: 8396860.
1785. Wei Lu and Issa Traore. Detecting New Forms of Network Intrusions Using Genetic Pro-
gramming. Computational Intelligence, 20(3):475494, August 2004, Wiley Periodicals, Inc.:
Wilmington, DE, USA. doi: 10.1111/j.0824-7935.2004.00247.x. Fully available at http://
www.isot.ece.uvic.ca/publications/journals/coi-2004.pdf [accessed 2008-06-11].
1786. Proceedings of third Conference on Articial General Intelligence (AGI10), March 58, 2010,
Lugano, Switzerland.
1787. Sean Luke and Liviu Panait. A Survey and Comparison of Tree Generation Algorithms.
In GECCO01 [2570], pages 8188, 2001. Fully available at http://www.cs.gmu.edu/
sean/
papers/graph-paper.pdf [accessed 2008-08-02]. CiteSeer
x
: 10.1.1.25.9484.
1789. Sean Luke and Lee Spector. Evolving Teamwork and Coordination with Genetic Pro-
gramming. In GP96 [1609], pages 150156, 1996. Fully available at http://www.ifi.
uzh.ch/groups/ailab/people/nitschke/refs/Cooperation/cooperation.pdf
[accessed 2009-08-01]. CiteSeer
x
: 10.1.1.29.6914.
1790. Sean Luke, Conor Ryan, and Una-May OReilly, editors. GECCO 2002: Graduate Student
Workshop (GECCO02 GSWS), July 9, 2002, Roosevelt Hotel: New York, NY, USA. AAAI
Press: Menlo Park, CA, USA. See also [224, 478, 1675].
1791. Sean Luke, Liviu Panait, Gabriel Balan, Sean Paus, Zbigniew Skolicki, Je Bassett, Robert
Hubley, and Alexander Chircop. ECJ: A Java-based Evolutionary Computation Research
System. George Mason University (GMU), Evolutionary Computation Laboratory (EClab):
Fairfax, VA, USA, 2006. Fully available at http://cs.gmu.edu/
eclab/projects/
ecj/ [accessed 2010-11-02].
1792. Eduard Lukschandl, Magnus Holmlund, Eric Moden, Mats G. Nordahl, and Peter Nordin.
Induction of Java Bytecode with Genetic Programming. In GP98 LBP [1605], pages 135142,
1998.
1793. Eduard Lukschandl, Henrik Borgvall, Lars Nohle, Mats G. Nordahl, and Peter Nordin. Evolv-
ing Routing Algorithms with the JBGP-System. In EvoWorkshops99 [2197], pages 193202,
1999. doi: 10.1007/10704703 16. See also [1794, 1795].
1794. Eduard Lukschandl, Henrik Borgvall, Lars Nohle, Mats G. Nordahl, and Peter Nordin.
Distributed Java Bytecode Genetic Programming with Telecom Applications. In Eu-
roGP00 [2198], pages 316325, 2000. See also [1793].
1795. Eduard Lukschandl, Peter Nordin, and Mats G. Nordahl. Using the Java Method Evolver
for Load Balancing in Communication Networks. In GECCO00 LBP [2928], pages 236239,
2000. See also [1793].
1796. F. Luna, Antonio Jes us Nebro Urbaneja, Bernabe Dorronsoro Daz, Enrique Alba Tor-
res, Pascal Bouvry, and L. Hogie. Optimal Broadcasting in Metropolitan MANETs Us-
ing Multiobjective Scatter Search. In EvoWorkshops06 [2341], pages 255266, 2006.
doi: 10.1007/11732242 23.
1797. Sen Luo, Bin Xu, and Yixin Yan. An Accumulated-QoS-First Search Approach for Semantic
Web Service Composition. In SOCA10 [1378], 2010. See also [320, 1146, 1571, 2998, 3010,
3011].
1798. Mikulas Luptacik and Rudolf Vetschera, editors. Proceedings of the First MCDM Winter Con-
ference, 16th International Conference on Multiple Criteria Decision Making (MCDM02),
February 1222, 2002, Hotel Panhans: Semmering, Austria. Partly available at http://
orgwww.bwl.univie.ac.at/mcdm2002 [accessed 2007-09-10].
1799. Jay L. Lush. Progeny Test and Individual Performance as Indicators of an Animals Breeding
Value. Journal of Dairy Science (JDS), 18(1):119, January 1935, American Dairy Science
Association (ADSA): Champaign, IL, USA. Fully available at http://jds.fass.org/
cgi/reprint/18/1/1 [accessed 2007-11-27].
1800. Luc Luyet, Sacha Varone, and Nicolas Zuerey. An Ant Algorithm for the
Steiner Tree Problem in Graphs. In EvoWorkshops07 [1050], pages 4251, 2007.
doi: 10.1007/978-3-540-71805-5 5.
M
1801. Huanyu Ma, Wei Jiang, Songlin Hu, Zhenqiu Huang, and Zhiyong Liu. Two-Phase Graph
Search Algorithm for QoS-Aware Automatic Service Composition. In SOCA10 [1378], 2010.
See also [320, 1299].
1802. Wolfgang Maass, editor. Proceedings of the Eighth Annual Conference on Computational
Learning Theory (COLT95), July 58, 1995, Santa Cruz, CA, USA. ACM Press: New York,
NY, USA. isbn: 0-89791-723-5. Google Books ID: L2NQAAAAMAAJ and mDtrOgAACAAJ.
OCLC: 33144512, 82595159, 283286354, 300096337, and 318352896. ACM Order
No.: 604950.
1803. Penousal Machado, Jorge Tavares, Francisco Baptista Pereira, and Ernesto Jorge Fer-
REFERENCES 1093
nandes Costa. Vehicle Routing Problem: Doing It The Evolutionary Way.
In GECCO02 [1675], page 690, 2002. Fully available at http://osiris.
tuwien.ac.at/
ccoello/
EMOO/mackin00.pdf.gz [accessed 2008-07-28]. See also [1805].
1807. Kenneth J. Mackin and Eiichiro Tazaki. Multiagent Communication Combining Genetic
Programming and Pheromone Communication. Kybernetes, 31(6):827843, 2002, Thales
Publications (W.O.) Ltd.: Irvine, CA, USA and Emerald Group Publishing Limited: Bingley,
UK. doi: 10.1108/03684920210432808. Fully available at http://www.emeraldinsight.
com/10.1108/03684920210432808 [accessed 2008-07-28]. See also [1805].
1808. James B. MacQueen. Some Methods of Classication and Analysis of Multivariate Observa-
tions. In Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Proba-
bility (June 21-July 18, 1965 and December 27, 1965-January 7, 1966) [1700], pages 281297,
volume I: Statistics, 1967. Fully available at http://digitalassets.lib.berkeley.
edu/math/ucb/text/math_s5_v1_article-17.pdf [accessed 2009-09-20].
1809. Proceedings of the International Joint Conference on Computational Intelligence (IJCCI09),
October 5, 2009, Madeira, Portugal.
1810. Alexander Maedche, Steen Staab, Claire Nedellec, and Eduard H. Hovy, editors. Work-
shop on Ontology Learning, Proceedings of the Second Workshop on Ontology Learning
(OL2001), August 4, 2001, Seattle, WA, USA, volume 38 in CEUR Workshop Pro-
ceedings (CEUR-WS.org). Rheinisch-Westfalische Technische Hochschule (RWTH) Aachen,
Sun SITE Central Europe: Aachen, North Rhine-Westphalia, Germany. Fully avail-
able at http://sunsite.informatik.rwth-aachen.de/Publications/CEUR-WS/
Vol-47/ [accessed 2008-04-01]. Held in conjunction with the 17th International Conference on
Articial Intelligence IJCAI2001. See also [2012].
1811. Pattie Maes, Maja J. Mataric, Jean-Arcady Meyer, Jordan B. Pollack, and Stewart W.
Wilson, editors. Proceedings of the Fourth International Conference on Simulation of Adap-
tive Behavior: From Animals to Animats 4 (SAB96), September 913, 1996, Cape Code,
MA, USA. MIT Press: Cambridge, MA, USA. isbn: 0-262-63178-4. Google Books
ID: V3pksEEKxUkC. issn: 1089-4365.
1812. Anne E. Magurran. Ecological Diversity and Its Measurement. Princeton University Press:
Princeton, NJ, USA and Taylor and Francis LLC: London, UK, 1987. isbn: 0-691-08485-8,
0-691-08491-2, and 0709935390. Google Books ID: GV5eJQAACAAJ, MhsuGQAACAAJ,
f38pHgAACAAJ, gH8pHgAACAAJ, iHoOAAAAQAAJ, and wvSEAAAACAAJ.
1813. Anne E. Magurran. Biological Diversity. Current Biology, 15(4):R116R118, February 22,
2005, Elsevier Science Publishers B.V.: Essex, UK. doi: 10.1016/j.cub.2005.02.006. Fully
available at http://dx.doi.org/10.1016/j.cub.2005.02.006 [accessed 2008-11-10].
1814. Hadj Mahboubi, Kamel Aouiche, and Jer ome Darmont. Materialized View Se-
lection by Query Clustering in XML Data Warehouses. In CSIT06 [2687],
2006. Fully available at http://eric.univ-lyon2.fr/
jdarmont/publications/
files/CSIT06-Mahboubi-et-al.pdf and http://hal.archives-ouvertes.fr/
docs/00/32/06/32/PDF/CSIT_2006-Mahboubi-et-al.pdf [accessed 2011-04-12]. arXiv
ID: 0809.1963v1.
1815. Oded Maimon and Lior Rokach, editors. The Data Mining and Knowledge Discov-
ery Handbook. Springer Science+Business Media, Inc.: New York, NY, USA, 2005.
1094 REFERENCES
doi: 10.1007/b107408. isbn: 0-387-24435-2 and 0-387-25465-X.
1816. Mohammad A. Makhzan and Kwei-Jay Lin. Solution to a Complete Web Ser-
vice Discovery and Composition. In CEC/EEE06 [2967], pages 455457, 2006.
doi: 10.1109/CEC-EEE.2006.83. INSPEC Accession Number: 9189347. See also [318].
1817. Masud Ahmad Malik. Evolution of the High Level Programming Languages: A Critical
Perspective. SIGPLAN Notices, 33(12):7280, December 1998, ACM Press: New York, NY,
USA. doi: 10.1145/307824.307882.
1818. David Malkin. The Evolutionary Impact of Gradual Complexication on Complex Sys-
tems. PhD thesis, University College London (UCL), Department of Computer Science:
London, UK, 2008. Fully available at http://www.cs.ucl.ac.uk/staff/P.Bentley/
DavidMalkinsthesis.pdf [accessed 2010-07-27].
1819. Proceedings of the 2nd European Computing Conference (ECC08), September 1113, 2008,
Malta.
1820. Bernard Manderick and Frans Moyson. The Collective Behaviour of Ants: An Example
of Self-Organization in Massive Parallelism. In Proceedings of AAAI Spring Symposium on
Parallel Models of Intelligence: How Can Slow Components Think So Fast? [2600], 1988.
1821. Bernard Manderick, Mark de Weger, and Piet Spiessens. The Genetic Algorithm and the
Structure of the Fitness Landscape. In ICGA91 [254], pages 143150, 1991.
1822. Vittorio Maniezzo and Matteo Milandri. An Ant-Based Framework for Very Strongly Con-
straint Problem. In ANTS02 [816], pages 115148, 2002. doi: 10.1007/3-540-45724-0 19.
1823. Vittorio Maniezzo, Luca Maria Gambardella, and Fabio de Luigi. Ant Colony Optimiza-
tion. In New Optimization Techniques in Engineering [2083], Chapter 5, pages 101117.
Springer-Verlag GmbH: Berlin, Germany. Fully available at http://www.idsia.ch/
tson/papers/kr02gl.pdf
[accessed 2011-01-11].
1851. Sheila A. McIlraith, Tran Cao Son, and Honglei Zeng. Semantic Web Services. IEEE Intelli-
gent Systems Magazine, 16(2):4653, MarchApril 2001, IEEE Computer Society Press: Los
Alamitos, CA, USA. doi: 10.1109/5254.920599. INSPEC Accession Number: 6941088.
1852. Robert Ian McKay, Xin Yao, Charles S. Newton, Jong-Hwan Kim, and Takeshi Fu-
ruhashi, editors. Selected Papers from the Second Asia-Pacic Conference on Simulated
Evolution and Learning (SEAL98), November 2427, 1998, Canberra, Australia, volume
1585/1999 in Lecture Notes in Articial Intelligence (LNAI, SL7), Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-48873-1.
isbn: 3-540-65907-2.
1853. Robert Ian McKay, Xuan Hoai Nguyen, Peter Alexander Whigham, and Yin Shan. Grammars
in Genetic Programming: A Brief Review. In ISICA [1489], pages 318, 2005. Fully available
at http://sc.snu.ac.kr/PAPERS/isica05.pdf [accessed 2007-08-15].
1854. Ken I. M. McKinnon. Convergence of the Nelder-Mead Simplex Method to a Nonstationary
Point. SIAM Journal on Optimization (SIOPT), 9(1):148158, 1998, Society for Industrial
and Applied Mathematics (SIAM): Philadelphia, PA, USA. doi: 10.1137/S1052623496303482.
1855. Nicholas Freitag McPhee and Justin Darwin Miller. Accurate Replication in Genetic
Programming. In ICGA95 [883], pages 303309, 1995. Fully available at http://
www.mrs.umn.edu/
wbl/
biblio/gp-html/McPhee_2008_gecco.html [accessed 2009-08-02].
1857. J orn Mehnen, Mario Koppen, Ashraf Saad, and Ashutosh Tiwari, editors. Applications of
Soft Computing From Theory to Praxis: 13th Online World Conference on Soft Computing
in Industrial Applications, November 1021, 2008, volume 58 in Advances in Intelligent and
REFERENCES 1097
Soft Computing. Springer-Verlag: Berlin/Heidelberg. doi: 10.1007/978-3-540-89619-7.
1858. Yi Mei, Ke Tang, and Xin Yao. A Global Repair Operator for Capacitated Arc
Routing Problem. IEEE Transactions on Systems, Man, and Cybernetics Part
B: Cybernetics, 39(3):723734, June 2009, IEEE Systems, Man, and Cybernetics So-
ciety: New York, NY, USA. doi: 10.1109/TSMCB.2008.2008906. Fully available
at http://www.cs.bham.ac.uk/
rcm/
publications/DynDE.pdf [accessed 2010-08-24]. CiteSeer
x
: 10.1.1.125.2146. INSPEC Ac-
cession Number: 8715549.
1867. Roberto R. F. Mendes, Fabricio de B. Voznika, Alex Alves Freitas, and Julio C. Nievola.
Discovering Fuzzy Classication Rules with Genetic Programming and Co-Evolution.
In PKDD01 [723], pages 314325, 2001. doi: 10.1007/3-540-44794-6 26. Fully avail-
able at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/Mendes_2001_PKDD.
html and http://www.cs.kent.ac.uk/people/staff/aaf/pub_papers.dir/
PKDD-2001.ps [accessed 2010-08-19]. CiteSeer
x
: 10.1.1.17.8631.
1868. Xiaofeng Meng, Jianwen Su, and Yujun Wang, editors. Proceedings of the Third International
Conference on Advances in Web-Age Information Management (WAIM02), August 1113,
2002, Beijng, China, volume 2419 in Lecture Notes in Computer Science (LNCS). Springer-
Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-45703-8. isbn: 3-540-44045-3.
1869. Manfred Menze. Evolution are Algorithmen zur Ad-hoc-Tourenplanung: InWeSt Intelligente
1098 REFERENCES
Wechselbr uckensteuerung. Technical Report, Micromata GmbH: Kassel, Hesse, Germany,
November 1, 2010. Fully available at http://www.micromata.de/fileadmin/user_
upload/Case_studies/cs_InWeSt.pdf [accessed 2011-09-05].
1870. Juan Julian Merelo-Guerv os, Panagiotis Adamidis, Hans-Georg Beyer, Jose Luis Fernandez-
Villaca nas Martn, and Hans-Paul Schwefel, editors. Proceedings of the 7th International
Conference on Parallel Problem Solving from Nature (PPSN VII), September 711, 2002,
Granada, Spain, volume 2439/2002 in Lecture Notes in Computer Science (LNCS). Springer-
Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-45712-7. isbn: 3-540-44139-5. Google
Books ID: KD-WMBb4AhkC. OCLC: 50422940, 50801109, 66012617, and 248499908.
1871. Daniel Merkle, Martin Middendorf, and Hartmut Schmeck. Ant Colony Optimiza-
tion for Resource-Constrained Project Scheduling. In GECCO00 [2935], pages 893
900, 2000. Fully available at http://pacosy.informatik.uni-leipzig.de/pv/
Personen/middendorf/Papers/ [accessed 2009-06-27]. CiteSeer
x
: 10.1.1.20.8614.
1872. Laurence D. Merkle and Frank W. Moore, editors. Defense Applications of Computational
Intelligence Workshop (DACI08), July 12, 2008, Renaissance Atlanta Hotel Downtown: At-
lanta, GA, USA. ACM Press: New York, NY, USA. Part of [1519].
1873. Achille Messac and Christopher A. Mattson. Generating Well-Distributed Sets of Pareto
Points for Engineering Design Using Physical Programming. Optimization and Engineering, 3
(4):431450, December 2002, Springer Netherlands: Dordrecht, Netherlands. Imprint: Kluwer
Academic Publishers: Norwell, MA, USA. doi: 10.1023/A:1021179727569. Fully available
at http://www.rpi.edu/
messac/Publications/messac_2002_pareto_pp_opte.
pdf [accessed 2009-06-21].
1874. Nicholas Metropolis, Arianna W. Rosenbluth, Marshall Nicholas Rosenbluth, Augusta H.
Teller, and Edward Teller. Equation of State Calculations by Fast Computing Machines.
The Journal of Chemical Physics, 21(6):10871092, June 1953, American Institute of Physics
(AIP): College Park, MD, USA. doi: 10.1063/1.1699114. Fully available at http://home.
gwu.edu/
stroud/classics/Metropolis53.pdf, http://sc.fsu.edu/
beerli/
mcmc/metropolis-et-al-1953.pdf, and http://scienze-como.uninsubria.it/
bressanini/montecarlo-history/mrt2.pdf [accessed 2010-09-25].
1875. Proceedings of the Second International Workshop on Advanced Computational Intelligence
(IWACI09), October 89, 2009, Mexico City, Mexico.
1876. Jean-Arcady Meyer and Stewart W. Wilson, editors. From Animals to Animats: Proceedings
of the First International Conference on Simulation of Adaptive Behavior (SAB90), Septem-
ber 2428, 1990, Paris, France. MIT Press: Cambridge, MA, USA. isbn: 0-262-63138-5.
Published in 1991.
1877. Mike Meyer and James Rosenberger, editors. Proceedings of the 27th Symposium on the Inter-
face Computing Science and Statistics (Interface95), June 2124, 1995, David L. Lawrence
Convention Center and Pittsburgh Vista Hotel: Pittsburgh, PA, USA.
1878. Silja Meyer-Nieberg and Hans-Georg Beyer. Self-Adaptation in Evolutionary Algo-
rithms. In Parameter Setting in Evolutionary Algorithms [1753], Chapter 3, pages
4775. Springer-Verlag: Berlin/Heidelberg, 2007. doi: 10.1007/978-3-540-69432-8 3.
CiteSeer
x
: 10.1.1.60.4624.
1879. Marc Mezard, Giorgio Parisi, and Miguel Angel Virasoro. Spin Glass Theory and Be-
yond An Introduction to the Replica Method and Its Applications, volume 9 in World
Scientic Lecture Notes in Physics. World Scientic Publishing Co.: Singapore, Novem-
ber 1986. isbn: 9971-50-115-5 and 9971-50-116-3. Google Books ID: 84kNHQAACAAJ
and KKbuIAAACAAJ.
1880. Efren Mezura-Montes and Carlos Artemio Coello Coello. Using the Evolution Strategies
Self-Adaptation Mechanism and Tournament Selection for Global Optimization. In AN-
NIE03 [670], pages 373378, 2003. Fully available at http://www.lania.mx/
emezura/
documentos/annie03.pdf [accessed 2008-03-20]. Theoretical Developments in Computational
Intelligence Award, 1st runner up.
1881. Efren Mezura-Montes, Carlos Artemio Coello Coello, and Ricardo Landa-Becerra. Engi-
neering Optimization Using a Simple Evolutionary Algorithm. In ICTAI03 [1367], pages
149156, 2003. CiteSeer
x
: 10.1.1.1.2837.
1882. Efren Mezura-Montes, Jes us Velazquez-Reyes, and Carlos Artemio Coello Coello. A Compar-
ative Study of Dierential Evolution Variants for Global Optimization. In GECCO06 [1516],
pages 485492, 2006. doi: 10.1145/1143997.1144086. Fully available at http://delta.
REFERENCES 1099
cs.cinvestav.mx/
dmontana/papers/stgp.pdf
and http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/montana_stgpEC.html
[accessed 2011-11-23].
1933. David J. Montana and Talib Hussain. Adaptive Reconguration of Data Networks using
Genetic Algorithms. Applied Soft Computing, 4(4):433444, October 2004, Elsevier Science
Publishers B.V.: Essex, UK. doi: 10.1016/j.asoc.2004.02.002. CiteSeer
x
: 10.1.1.95.1975.
See also [1935].
REFERENCES 1103
1934. David J. Montana and Jason Redi. Optimizing Parameters of a Mobile Ad Hoc Net-
work Protocol with a Genetic Algorithm. In GECCO05 [304], pages 19931998, 2005.
doi: 10.1145/1068009.1068342. Fully available at http://vishnu.bbn.com/papers/
erni.pdf [accessed 2008-10-16]. CiteSeer
x
: 10.1.1.86.5827.
1935. David J. Montana, Talib Hussain, and Tushar Saxena. Adaptive Reconguration of Data
Networks using Genetic Algorithms. In GECCO02 [1675], pages 11411149, 2002. See also
[1933].
1936. Proceedings of the 2nd International Workshop on Machine Learning (ML83), 1983, Monti-
cello, IL, USA.
1937. The Seventh Metaheuristics International Conference (MIC07), June 2529, 2007, Montreal,
QC, Canada. Partly available at http://www.mic2007.ca/ [accessed 2007-09-12].
1938. H. L. Moore. Cours d
ccottap/
papers/handbook03memetic.pdf [accessed 2010-09-11]. CiteSeer
x
: 10.1.1.77.5300.
1964. Sanaz Mostaghim. Multi-objective Evolutionary Algorithms: Data structures, Convergence
and, Diversity, Elektrotechnik. PhD thesis, Universitat Paderborn, Fakult at f ur Elektrotech-
nik, Informatik und Mathematik: Paderborn, Germany, Shaker Verlag GmbH: Aachen,
North Rhine-Westphalia, Germany, February 2005. isbn: 3-8322-3661-9. Google Books
ID: HoVLAAAACAAJ and pJpeOQAACAAJ. OCLC: 62900366.
1965. Jack Mostow and Chuck Rich, editors. Proceedings of the Fifteenth National Conference
on Articial Intelligence and Tenth Innovative Applications of Articial Intelligence Confer-
REFERENCES 1105
ence (AAAI98, IAAI98), July 2630, 1998, Madison, WI, USA. AAAI Press: Menlo Park,
CA, USA and MIT Press: Cambridge, MA, USA. isbn: 0-262-51098-7. Partly available
at http://www.aaai.org/Conferences/AAAI/aaai98.php and http://www.aaai.
org/Conferences/IAAI/iaai98.php [accessed 2007-09-06].
1966. Rajeev Motwani and Prabhakar Raghavan. Randomized Algorithms, Cambridge Interna-
tional Series on Parallel Computation. Cambridge University Press: Cambridge, UK, 1995.
isbn: 0-521-47465-5. Google Books ID: QKVY4mDivBEC. OCLC: 31606869. GBV-
Identication (PPN): 180148303, 310077257, 508849136, 555592650, and 563593563.
LC Classication: QA274 .M68 1995.
1967. Rajeev Motwani and Prabhakar Raghavan. Randomized Algorithms. ACM Comput-
ing Surveys (CSUR), 28(1):3337, March 1996, ACM Press: New York, NY, USA.
doi: 10.1145/234313.234327.
1968. VIII Metaheuristics International Conference (MIC09), July 1316, 2009, Movenpick Hotel
Hamburg: Hamburg, Germany.
1969. Heinz M uhlenbein. Parallel Genetic Algorithms, Population Genetics and Combinatorial
Optimization. In WOPPLOT89 [245], pages 398406, 1989. doi: 10.1007/3-540-55027-5 23.
See also [1970].
1970. Heinz M uhlenbein. Parallel Genetic Algorithms, Population Genetics and Combinatorial
Optimization. In ICGA89 [2414], pages 416421, 1989. See also [1969].
1971. Heinz M uhlenbein. Evolution in Time and Space The Parallel Genetic Algorithm. In
FOGA90 [2562], pages 316337, 1990. Fully available at http://muehlenbein.org/
parallel.PDF and http://www.iais.fraunhofer.de/fileadmin/images/pics/
Abteilungen/INA/muehlenbein/PDFs/evolutionary/I/1991_Evolution.PDF [ac-
cessed 2009-08-12]. CiteSeer
x
: 10.1.1.54.6763.
1972. Heinz M uhlenbein. How Genetic Algorithms Really Work I. Mutation and Hillclimbing. In
PPSN II [1827], pages 1526, 1992. Fully available at http://muehlenbein.org/mut92.
pdf [accessed 2010-09-11].
1973. Heinz M uhlenbein. The Equation for Response to Selection and its Use for Prediction.
Evolutionary Computation, 5(3):303346, Fall 1997, MIT Press: Cambridge, MA, USA.
doi: 10.1162/evco.1997.5.3.303. Fully available at http://citeseer.ist.psu.edu/old/
730919.html [accessed 2009-08-21]. PubMed ID: 10021762.
1974. Heinz M uhlenbein and Gerhard Paa. From Recombination of Genes to the Estima-
tion of Distributions I. Binary Parameters. In PPSN IV [2818], pages 178187, 1996.
doi: 10.1007/3-540-61723-X 982. Fully available at ftp://ftp.ais.fraunhofer.de/
pub/as/ga/gmd_as_ga-96_04.ps [accessed 2009-08-20]. CiteSeer
x
: 10.1.1.7.7030. See
also [1976].
1975. Heinz M uhlenbein and Dirk Schlierkamp-Voosen. Predictive Models for the Breeder
Genetic Algorithm I: Continuous Parameter Optimization. Evolutionary Computation,
1(1):2549, Spring 1993, MIT Press: Cambridge, MA, USA, Marc Schoenauer, edi-
tor. doi: 10.1162/evco.1993.1.1.25. Fully available at http://www.muehlenbein.org/
breeder93.pdf [accessed 2010-12-04]. CiteSeer
x
: 10.1.1.30.9381.
1976. Heinz M uhlenbein, J urgen Bendisch, and Hans-Michael Voigt. From Recombination of Genes
to the Estimation of Distributions II. Continuous Parameters. In PPSN IV [2818], pages 188
197, 1996. doi: 10.1007/3-540-61723-X 983. Fully available at http://www.amspr.gfai.
de/techreports/ppsn96-1.pdf [accessed 2009-08-20]. CiteSeer
x
: 10.1.1.9.2941. See also
[1974].
1977. Srinivas Mukkamala, Andrew H. Sung, and Ajith Abraham. Modeling Intrusion Detection
Systems using Linear Genetic Programming Approach. In Robert Orchard, Chunsheng Yang,
and Moonis Ali, editors, IEA/AIE04 [2088], pages 633642, 2004. Fully available at http://
www.rmltech.com/LGP%20Based%20IDS.pdf [accessed 2008-06-17].
1978. J org M uller, W. Lewis Johnson, and Barbara Hayes-Roth, editors. Proceedings of the First
International Conference on Autonomous Agents (AGENTS97), February 58, 1997, Marina
del Rey, CA, USA. ACM Press: New York, NY, USA. isbn: 0-89791-877-0. Fully available
at http://sigart.acm.org/proceedings/agents97/ [accessed 2009-06-27]. Google Books
ID: ktPaAQAACAAJ. OCLC: 37622491 and 71484604. Sponsor: SIGGRAPH ACM
Special Interest Group on Computer Graphics and Interactive Techniques.
1979. Masaharu Munetomo. Designing Genetic Algorithms for Adaptive Routing Algorithms
in the Internet. In GECCO02 WS [224], pages 215216, 2002. Fully available
1106 REFERENCES
at http://uk.geocities.com/markcsinclair/ps/etppf_mun.ps.gz [accessed 2009-09-
02]. CiteSeer
x
: 10.1.1.50.2448. Partly available at http://assam.cims.hokudai.
ac.jp/
sheila/publications/nar-mci-www11.pdf, http://www.cs.uoregon.edu/
classes/08W/cis607sii/papers/NarayananMcIlraith02.pdf, and http://
www.icsi.berkeley.edu/
jar/Rupley/Code/src/simplex/nelder-mead-simplex.pdf [ac-
cessed 2010-12-24]. CiteSeer
x
: 10.1.1.144.5920.
2018. Kevin M. Nelson. A Comparison of Evolutionary Programming and Genetic Algorithms for
Electronic Part Placement. In EP95 [1848], pages 503519, 1995.
2019. Venkata Ranga Neppalli, Chuen-Lung Chen, and Jatinder N. D. Gupta. Genetic Algo-
rithms for the two-stage bicriteria Flowshop Problem. European Journal of Operational Re-
search (EJOR), 95(2), December 6, 1996, Elsevier Science Publishers B.V.: Amsterdam, The
Netherlands. Imprint: North-Holland Scientic Publishers Ltd.: Amsterdam, The Nether-
lands. doi: 10.1016/0377-2217(95)00275-8.
2020. Ferrante Neri, Niko Kotilainen, and Mikko Vapa. An Adaptive Global-Local Memetic Al-
gorithm to Discover Resources in P2P Networks. In EvoWorkshops07 [1050], pages 6170,
2007. doi: 10.1007/978-3-540-71805-5 7.
2021. Ferrante Neri, Jari Toivanen, Giuseppe Leonardo Cascella, and Yew-Soon Ong.
An Adaptive Multimeme Algorithm for Designing HIV Multidrug Therapies.
IEEE/ACM Transactions on Computational Biology and Bioinformatics (TCBB),
4(2), April 2007, IEEE Computer Society Press: Los Alamitos, CA, USA.
doi: 10.1109/TCBB.2007.070202 and 10.1109/tcbb.2007.1039. Fully available at http://
REFERENCES 1109
ntu-cg.ntu.edu.sg/ysong/journal/Adaptive-Multimeme-HIV.pdf [accessed 2011-04-
23]. CiteSeer
x
: 10.1.1.124.5677. PubMed ID: 17473319.
2022. Ferrante Neri, Jari Toivanen, and Raino A. E. Makinen. An Adaptive Evolutionary Al-
gorithm with Intelligent Mutation Local Searchers for Designing Multidrug Therapies for
HIV. Applied Intelligence The International Journal of Articial Intelligence, Neural Net-
works, and Complex Problem-Solving Technologies, 27(3):219235, December 2007, Springer
Netherlands: Dordrecht, Netherlands. doi: 10.1007/s10489-007-0069-8.
2023. Arnold Neumaier. Global Optimization and Constraint Satisfaction. In GICOLAG06 [2024],
2006. Fully available at http://www.mat.univie.ac.at/
neum/glopt.html [ac-
cessed 2009-06-11].
2024. Arnold Neumaier, Immanuel Bomze, Laurence A. Wolsey, and Ioannis Emiris, editors. Global
Optimization Integrating Convexity, Optimization, Logic Programming, and Computational
Algebraic Geometry (GICOLAG06), December 48, 2006, International Erwin Schrodinger
Institute for Mathematical Physics (ESI): Vienna, Austria. Fully available at http://www.
mat.univie.ac.at/
wbl/biblio/
gp-html/hoai_thesis.html and http://www.cs.ucl.ac.uk/staff/W.Langdon/
ftp/papers/hoai_thesis.tar.gz [accessed 2010-07-26]. OCLC: 224847044, 455148847,
and 648818432.
2033. Xuan Hoai Nguyen, Robert Ian McKay, and Daryl Leslie Essam. Some Experimental Results
with Tree Adjunct Grammar Guided Genetic Programming. In EuroGP02 [977], pages
229238, 2002. doi: 10.1007/3-540-45984-7 22. Fully available at http://sc.snu.ac.kr/
PAPERS/TAGGGP.pdf [accessed 2007-09-09].
2034. Xuan Hoai Nguyen, Robert Ian McKay, Daryl Leslie Essam, and R. Chau. Solv-
1110 REFERENCES
ing the Symbolic Regression Problem with Tree-Adjunct Grammar Guided Genetic
Programming: The Comparative Results. In CEC02 [944], pages 13261331, 2002.
doi: 10.1109/CEC.2002.1004435. Fully available at http://sc.snu.ac.kr/PAPERS/
MCEC2002.pdf [accessed 2007-09-09]. INSPEC Accession Number: 7328878.
2035. Giuseppe Nicosia, Vincenzo Cutello, Peter J. Bentley, and Jonathan Timmis, editors. Pro-
ceedings of the 3th International Conference on Articial Immune Systems (ICARIS04),
September 1316, 2004, Catania, Sicily, Italy, volume 3239 in Lecture Notes in Computer
Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-23097-1.
2036. Sren R. Nielsen, David Pisinger, and Per Marquardsen. Automatic Transformation of
Constraint Satisfaction Problems to Integer Linear Form An Experimental Study. In
TRICS [2005], 2000. CiteSeer
x
: 10.1.1.36.9656 and 10.1.1.37.2112.
2037. Stefan Niemczyk. Ein Modellproblem mit einstellbarer Schwierigkeit zur Evaluierung Evo-
lutionarer Algorithmen. Masters thesis, University of Kassel, Fachbereich 16: Elektrotech-
nik/Informatik, Distributed Systems Group: Kassel, Hesse, Germany, May 5, 2008, Thomas
Weise, Advisor, Kurt Geihs and Albert Z undorf, Committee members. Fully available
at http://www.it-weise.de/documents/files/N2008MPMES.pdf.
2038. Stefan Niemczyk and Thomas Weise. A General Framework for Multi-Model Estima-
tion of Distribution Algorithms. Technical Report, University of Kassel, Fachbereich
16: Elektrotechnik/Informatik, Distributed Systems Group: Kassel, Hesse, Germany,
March 10, 2010. Fully available at http://www.it-weise.de/documents/files/
NW2010AGFFMMEODA.pdf [accessed 2010-06-19]. See also [2917].
2039. Nils J. Nilsson, editor. Proceedings of the 3rd International Joint Conference on Articial
Intelligence (IJCAI73), August 2023, 1973, Stanford University: Stanford, CA, USA. Fully
available at http://dli.iiit.ac.in/ijcai/IJCAI-73/CONTENT/content.htm [ac-
cessed 2008-04-01].
2040. Jorge Nocedal and Stephen J. Wright. Numerical Optimization, volume 18 in Springer Series
in Operations Research and Financial Engineering. Springer-Verlag GmbH: Berlin, Germany,
2nd edition, 2006. doi: 10.1007/978-0-387-40065-5. isbn: 0-387-98793-2. Google Books
ID: 2B9LUYAP3n4C, eNlPAAAAMAAJ, and epc5fX0lqRIC. Library of Congress Control
Number (LCCN): 2006923897.
2041. David Noever and Subbiah Baskaran. Steady-State vs. Generational Genetic Algorithms: A
Comparison of Time Complexity and Convergence Properties. Technical Report 92-07-032,
Santa Fe Institute: Santa Fe, NM, USA.
2042. Andreas Nolte and Rainer Schrader. A Note on the Finite Time Behaviour of Simulated
Annealing. In SOR96 [3092], pages 175180, 1996. See also [2043].
2043. Andreas Nolte and Rainer Schrader. A Note on the Finite Time Behaviour of Simulated An-
nealing. Mathematics of Operations Research (MOR), 25(3):476484, August 2000, Institute
for Operations Research and the Management Sciences (INFORMS): Linthicum, ML, USA.
doi: 10.1287/moor.25.3.476.12211. Fully available at http://www.zaik.de/
paper/
unzip.html?file=zaik1999-347.ps [accessed 2009-07-03]. CiteSeer
x
: 10.1.1.40.9456.
Revised version from March 1999. See also [2042].
2044. Peter Nordin. A Compiling Genetic Programming System that Directly Manipulates the
Machine Code. In Advances in Genetic Programming Volume 1 [1539], Chapter 14, pages
311331. MIT Press: Cambridge, MA, USA, 1994. Machine code GP Sun Spark and i868.
2045. Peter Nordin. Evolutionary Program Induction of Binary Machine Code and its Appli-
cations. PhD thesis, Universitat Dortmund, Fachbereich Informatik: Dortmund, North
Rhine-Westphalia, Germany, Krehl Verlag: M unster, Germany. isbn: 3931546071.
OCLC: 40285878. GBV-Identication (PPN): 231072783. asin: 3931546071 and
B0033DLUWS.
2046. Peter Nordin and Wolfgang Banzhaf. Evolving Turing-Complete Programs for a
Register Machine with Self-Modifying Code. In ICGA95 [883], pages 318325,
1995. Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/
Nordin_1995_tcp.html [accessed 2008-09-16]. CiteSeer
x
: 10.1.1.34.4526.
2047. Peter Nordin and Wolfgang Banzhaf. Programmatic Compression of Images and Sound.
In GP96 [1609], pages 345350, 1996. Fully available at http://www.cs.mun.ca/
wbl/biblio/gp-html/
nordin_1995_introns.html [accessed 2010-08-22]. CiteSeer
x
: 10.1.1.38.8934. See also
[2049, 2051].
2049. Peter Nordin, Frank D. Francone, and Wolfgang Banzhaf. Explicitly Dened Introns and De-
structive Crossover in Genetic Programming. SysReport 3/95, Universitat Dortmund, Fach-
bereich Informatik, Systems Analysis: Dortmund, North Rhine-Westphalia, Germany, 1995.
Fully available at http://www.cs.mun.ca/
wbl/aigp3/
ch12.pdf and http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/nordin_1999_
aigp3.html [accessed 2008-09-16].
2051. Peter Nordin, Frank D. Francone, and Wolfgang Banzhaf. Explicitly Dened Introns and De-
structive Crossover in Genetic Programming. In Advances in Genetic Programming II [106],
pages 111134. MIT Press: Cambridge, MA, USA, 1996. See also [2048, 2049].
2052. Peter Nordin, Wolfgang Banzhaf, and Markus F. Brameier. Evolution of a World
Model for a Miniature Robot using Genetic Programming. Automation and Remote
Control, 25(12):105116, October 31, 1998, Springer Science+Business Media, Inc.:
New York, NY, USA and MAIK Nauka/Interperiodica Pleiades Publishing, Inc.:
Moscow, Russia. doi: 10.1016/S0921-8890(98)00004-9. Fully available at http://
www.cs.bham.ac.uk/
ccoello/
obayashi98a.pdf.gz [accessed 2009-06-16]. INSPEC Accession Number: 6195712.
2060. Shigeru Obayashi and Daisuke Sasaki. Visualization and Data Mining of Pareto
1112 REFERENCES
Solutions Using Self-Organizing Map. In EMO03 [957], pages 796806, 2003.
doi: 10.1007/3-540-36970-8 56. Fully available at http://www.ifs.tohoku.ac.jp/
edge/library/Final%20EMO2003.pdf [accessed 2009-07-18].
2061. Shigeru Obayashi, Kalyanmoy Deb, Carlo Poloni, Tomoyuki Hiroyasu, and Tadahiko
Murata, editors. Proceedings of the Fourth International Conference on Evolution-
ary Multi-Criterion Optimization (EMO07), March 58, 2007, Matsushima, Sendai,
Japan, volume 4403/2007 in Theoretical Computer Science and General Issues (SL
1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Ger-
many. doi: 10.1007/978-3-540-70928-2. isbn: 3-540-70927-4, 3-540-70928-2, and
6610865078. Google Books ID: f9Lcf6imJ8MC. OCLC: 84611501, 180728448,
315394594, 318300130, and 403748482. Library of Congress Control Number
(LCCN): 2007921125.
2062. Gabriela Ochoa, Inman Harvey, and Hilary Buxton. Error Thresholds and Their Relation to
Optimal Mutation Rates. In ECAL99 [934], pages 5463, 1999. doi: 10.1007/3-540-48304-7.
Fully available at ftp://ftp.cogs.susx.ac.uk/pub/users/inmanh/ecal99.ps.gz
[accessed 2009-07-10]. CiteSeer
x
: 10.1.1.43.9263.
2063. Christopher K. Oei, David Edward Goldberg, and Shau-Jin Chang. Tournament Selection,
Niching, and the Preservation of Diversity. IlliGAL Report 91011, Illinois Genetic Algo-
rithms Laboratory (IlliGAL), Department of Computer Science, Department of General En-
gineering, University of Illinois at Urbana-Champaign: Urbana-Champaign, IL, USA, Decem-
ber 1991. Fully available at http://www.illigal.uiuc.edu/pub/papers/IlliGALs/
91011.ps.Z [accessed 2008-03-15].
2064. Seog-Chan Oh, Byung-Won On, Eric J. Larson, and Dongwon Lee. BF*: Web Services
Discovery and Composition as Graph Search Problem. In EEE05 [1371], pages 784786,
2005. doi: 10.1109/EEE.2005.41. INSPEC Accession Number: 8530439. See also [317, 662,
1999, 20652067, 3034].
2065. Seog-Chan Oh, Hyunyoung Kil, Dongwon Lee, and Soundar R. T. Kumara. Algorithms
for Web Services Discovery and Composition Based on Syntactic and Semantic Service De-
scriptions. In CEC/EEE06 [2967], pages 433435, 2006. doi: 10.1109/CEC-EEE.2006.12.
Fully available at http://pike.psu.edu/publications/eee06.pdf [accessed 2010-12-10].
CiteSeer
x
: 10.1.1.77.9275. INSPEC Accession Number: 9189341. See also [318, 662,
1998, 2064, 2066, 2067, 3034].
2066. Seog-Chan Oh, John Jung-Woon Yoo, Hyunyoung Kil, Dongwon Lee, and Soundar R. T. Ku-
mara. Semantic Web-Service Discovery and Composition Using Flexible Parameter Match-
ing. In CEC/EEE07 [1344], pages 533536, 2007. doi: 10.1109/CEC-EEE.2007.86. INSPEC
Accession Number: 9868641. See also [319, 662, 1999, 2064, 2065, 2067, 3034].
2067. Seog-Chan Oh, Ju-Yeon Lee, Seon-Hwa Cheong, Soo-Min Lim, Min-Woo Kim, Sang-
Seok Lee, Jin-Bum Park, Sang-Do Noh, and Mye M. Sohn. WSPR*: Web-Service
Planner Augmented with A* Algorithm. In CEC09 [1245], pages 515518, 2009.
doi: 10.1109/CEC.2009.13. INSPEC Accession Number: 10839129. See also [662, 1571, 1999,
20642066, 3034].
2068. Milos Ohldal, Jir Jaros, Josef Schwarz, and Vaclav Dvor ak. Evolutionary Design of OAB and
AAB Communication Schedules for Interconnection Network. In EvoWorkshops06 [2341],
pages 267278, 2006. doi: 10.1007/11732242 24.
2069. Tatsuya Okabe, Yaochu Jin, Bernhard Sendho, and Markus Olhofer. Voronoi-based Es-
timation of Distribution Algorithm for Multi-objective Optimization. In CEC04 [1369],
pages 15941601, volume 2, 2004. doi: 10.1109/CEC.2004.1331086. Fully available
at http://www.honda-ri.org/intern/hriliterature/PN%2008-04 and http://
www.soft-computing.de/cec-2004-1445-final.pdf [accessed 2009-08-29]. INSPEC Ac-
cession Number: 8229117.
2070. Nicole Oldham, Christopher Thomas, Amit P. Sheth, and Kunal Verma. METEOR-S Web
Service Annotation Framework with Machine Learning Classication. In SWSWPC04 [493],
pages 137146, 2004. doi: 10.1007/978-3-540-30581-1 12.
2071. Gina Oliveira and Stefano Vita. A Multi-Objective Evolutionary Algorithm with -dominance
to Calculate Multicast Routes with QoS Requirements. In CEC09 [1350], pages 182189,
2009. doi: 10.1109/CEC.2009.4982946. INSPEC Accession Number: 10688528.
2072. Anne L. Olsen. Penalty Functions and the Knapsack Problem. In CEC94 [1891], pages
554558, volume 2, 1994. doi: 10.1109/ICEC.1994.350000.
REFERENCES 1113
2073. Donald M. Olsson and Lloyd S. Nelson. The Nelder-Mead Simplex Procedure for Function
Minimization. Technometrics, 17(1):4551, February 1975, American Statistical Association
(ASA): Alexandria, VA, USA and American Society for Quality (ASQ): Milwaukee, WI,
USA. JSTOR Stable ID: 1267998.
2074. Mihai Oltean. Searching for a Practical Evidence of the No Free Lunch Theorems. In
BioADIT04 [1399], pages 472483, 2004. doi: 10.1007/b101281. Fully available at http://
www.cs.ubbcluj.ro/
orilife/textos/The%20Origin
%20of%20Life.pdf. Google Books ID: 3CYJOwAACAAJ, 65c5AAAAMAAJ, Jv8psJCtI0gC,
lDqJwAACAAJ, kW8ZKwAACAAJ, and qZB2o69KWSwC.
2085. Stan Openshaw. Building an Automated Modelling System to Explore a Universe of Spatial
Interaction Models. Geographical Analysis An International Journal of Theoretical Geog-
raphy, 26(1):3146, 1998, Wiley Periodicals, Inc.: Wilmington, DE, USA and Ohio State
University, Department of Geography: Columbus, OH, USA.
2086. Stan Openshaw and Ian Turton. Building New Spatial Interaction Models Using
Genetic Programming. In AISB94 [936], 1994. Fully available at http://www.
1114 REFERENCES
cs.bham.ac.uk/
constraint/papers/palmer94representing.
ps [accessed 2010-07-26]. See also [2115].
2117. Themis Palpanas, Nick Koudas, and Alberto Mendelzon. On Space Constrained Set Selection
Problem. Data & Knowledge Engineering, 67(1):200218, October 2008, Elsevier Science
Publishers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic Publishers
Ltd.: Amsterdam, The Netherlands. doi: 10.1016/j.datak.2008.06.011.
2118. Guanyu Pan, Quansheng Dou, and Xiaohua Liu. Performance of two Improved Particle
Swarm Optimization In Dynamic Optimization Environments. In ISDA06 [553], pages 1024
1028, volume 2, 2006. doi: 10.1109/ISDA.2006.253752. INSPEC Accession Number: 9275253.
2119. Hui Pan, Ling Wang, and Bo Liu. Particle Swarm Optimization for Function Optimization in
Noisy Environment. Journal of Applied Mathematics and Computation, 181(2):908919, Oc-
tober 15, 2006, Elsevier Science Publishers B.V.: Essex, UK. doi: 10.1016/j.amc.2006.01.066.
2120. Giselher Pankratz and Veikko Krypczyk. Benchmark Data Sets for Dynamic Vehicle
Routing Problems. FernUniversitat in Hagen, Lehrstuhl f ur Wirtschaftsinformatik: Ha-
gen, North Rhine-Westphalia, Germany, June 12, 2007. Fully available at http://www.
fernuni-hagen.de/WINF/inhfrm/benchmark_data.htm [accessed 2008-10-27].
2121. Isueh-Yuan Pao. 2004 IEEE Antennas and Propagation Society (A-P-S) International Sympo-
sium and USNC / URSI NationalRadio Science Meeting, June 2025, 2004. IEEE Computer
Society: Piscataway, NJ, USA. doi: 10.1109/APS.2004.1330376. isbn: 0-7803-8302-8.
2122. Mike P. Papazoglou and John Zeleznikow, editors. The Next Generation of Informa-
tion Systems: From Data to Knowledge A Selection of Papers Presented at Two
IJCAI-91 Workshops (IJCAI91 WS), August 26, 1991, Sydney, NSW, Australia, volume
611 in Lecture Notes in Articial Intelligence (LNAI, SL7), Lecture Notes in Computer
Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 0-387-55616-8 and
3-540-55616-8. OCLC: 26095701, 123310072, 230127949, 231363363, 320295775,
321349775, 423036170, 441767836, 471535298, and 499252204. Library of Congress
Control Number (LCCN): 92021889. GBV-Identication (PPN): 119292769. LC Classi-
cation: QA76.9.D3 N485 1992. See also [831, 1987, 1988].
2123. Proceedings of the 5th International Conference on Simulated Evolution And Learning
(SEAL04), October 2629, 2004, Paradise Hotel: Busan, South Korea.
2124. Panos M. Pardalos and Ding-Zhu Du, editors. Handbook of Combinatorial Op-
timization, volume 13. Kluwer Academic Publishers: Norwell, MA, USA, Oc-
tober 31, 1990. isbn: 0-7923-5018-9, 0-7923-5019-7, 0-7923-5285-8, and
0-7923-5293-9. OCLC: 38485795 and 490888316. Library of Congress Control Number
(LCCN): 98002942. LC Classication: QA402.5 .H335 1998.
2125. Panos M. Pardalos and Mauricio G.C. Resende, editors. Handbook of Applied Opti-
mization. Oxford University Press, Inc.: New York, NY, USA, February 22, 2002.
isbn: 0-19-512594-0. OCLC: 45532495 and 248337411.
2126. Panos M. Pardalos, Nguyen Van Thoai, and Reiner Horst. Introduction to Global Op-
timization, volume 3 & 48 in Nonconvex Optimization and Its Applications. Springer
Science+Business Media, Inc.: New York, NY, USA, 1st/2nd edition, 19952000.
isbn: 0-7923-3556-2 and 0-7923-6756-1. Google Books ID: D8LxE6PB8fIC,
atHlWfTt9KAC, dbu02-1JbLIC, and w6bRM8W-oTgC.
2127. Vilfredo Federico Pareto. Cours d
adrian/projects/protgen/protgen.
pdf, http://www.cs.berkeley.edu/
wbl/biblio/gp-html/platel83.html, and
http://www.i3s.unice.fr/
wbl/
biblio/gp-html/poli_1997_schemaTR.html [accessed 2008-06-17]. Revised August 1997.
See also [2193].
2195. Riccardo Poli, William B. Langdon, Marc Schoenauer, Terence Claus Fogarty, and Wolfgang
Banzhaf, editors. Late Breaking Papers at EuroGP98: The First European Workshop on
Genetic Programming (EuroGP98 LBP), April 1415, 1998, Paris, France. Distributed at
the workshop. See also [210].
2196. Riccardo Poli, Peter Nordin, William B. Langdon, and Terence Claus Fogarty, editors.
Proceedings of the Second European Workshop on Genetic Programming (EuroGP99),
May 2627, 1999, G oteborg, Sweden, volume 1598/1999 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-65899-8.
1122 REFERENCES
OCLC: 634229593. Library of Congress Control Number (LCCN): 99028995. LC Classi-
cation: QA76.623 .E94 1999.
2197. Riccardo Poli, Hans-Michael Voigt, Stefano Cagnoni, David Wolfe Corne, George D. Smith,
and Terence Claus Fogarty, editors. Proceedings of the First European Workshops on Evo-
lutionary Image Analysis, Signal Processing and Telecommunications: EvoIASP99, Eu-
roEcTel99 (EvoWorkshops99), May 2627, 1999, G oteborg, Sweden, volume 1596/1999
in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Ger-
many. doi: 10.1007/10704703. isbn: 3-540-65837-8. Google Books ID: CYDLxvi0-SYC.
OCLC: 41165439, 59385457, 190833621, and 202788825.
2198. Riccardo Poli, Wolfgang Banzhaf, William B. Langdon, Julian Francis Miller, Peter Nordin,
and Terence Claus Fogarty, editors. Proceedings of the Third European Conference on Genetic
Programming (EuroGP00), April 1516, 2000, Edinburgh, Scotland, UK, volume 1802/2000
in Lecture Notes in Computer Science (LNCS). EvoGP, The Genetic Programming Working
Group of EvoNET, The Network of Excellence in Evolutionary Computing: France, Springer-
Verlag GmbH: Berlin, Germany. doi: 10.1007/b75085. isbn: 3-540-67339-3. Google Books
ID: KhaR0XZHedEC. OCLC: 43811252, 174380171, 243487736, and 313540688. In
conjunction with ICES2000 and EvoWorkshops2000 on evolutionary computing.
2199. Riccardo Poli, William B. Langdon, and Nicholas Freitag McPhee. A Field Guide
to Genetic Programming. Lulu Enterprises UK Ltd: London, UK, March 2008.
isbn: 1-4092-0073-6. Fully available at http://www.gp-field-guide.org.uk/
and http://www.lulu.com/items/volume_63/2167000/2167025/2/print/book.
pdf [accessed 2008-03-27]. Google Books ID: 3PBrqNK5fFQC. OCLC: 225855345. With contri-
butions by John R. Koza.
2200. Riccardo Poli, Nicholas Freitag McPhee, Luca Citi, and Ellery Crane. Memory with Memory
in Genetic Programming. Journal of Articial Evolution and Applications, 2009(570606),
2009, Hindawi Publishing Corporation: Nasr City, Cairo, Egypt, Leonardo Vanneschi, edi-
tor. doi: 10.1155/2009/570606. Fully available at http://www.hindawi.com/journals/
jaea/2009/570606.html [accessed 2009-09-09].
2201. 3rd Generative Art International Conference (GA00), December 1416, 2000, Politecnico di
Milano: Milano, Italy. Politecnico di Milano, Generative Design Lab: Milano, Italy. Fully
available at http://www.generativeart.com/on/cic/GA2000.htm [accessed 2009-06-18].
2202. Shankar R. Ponnekanti and Armando Fox. SWORD: A Developer Toolkit for Web Service
Composition. In WWW02 [26], 2002. Fully available at http://www2002.org/CDROM/
alternate/786/ [accessed 2011-01-11].
2203. H. Vincent Poor. An Introduction to Signal Detection and Estimation, Springer
Texts in Electrical Engineering. Birkhauser Verlag: Basel, Switzerland, 2nd edition,
1994. isbn: 0-387-94173-8 and 3-540-94173-8. Google Books ID: eI1DBIUbzAQC.
OCLC: 28891765.
2204. Lucian Popa, Serge Abiteboul, and Phokion G. Kolaitis, editors. Proceedings of the
Twenty-First ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Sys-
tems (PODS02), June 26, 2002, Madison, WI, USA. ACM Press: New York, NY, USA.
isbn: 1-58113-507-6.
2205. Proceedings of the 4th International Conference on Metaheuristics and Nature Inspired Com-
puting (META12), October 2731, 2012, Port El Kantaoui, Sousse, Tunisia.
2206. Bruce W. Porter and Raymond J. Mooney, editors. Proceedings of the 7th International
Workshop on Machine Learning (ML90), June 2123, 1990, Austin, TX, USA. Morgan
Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-141-4.
2207. Agent Modeling, Papers from the 1996 AAAI Workshop, August 4, 1996, Portland, OR, USA.
isbn: 1-57735-008-1. GBV-Identication (PPN): 230032508. Technical report WS-96-02
of the American Association for Articial Intelligence. See also [586].
2208. Vincent William Porto, N. Saravanan, D. Waagen, and
Agoston E. Eiben, editors. Evolu-
tionary Programming VII Proceedings of the 7th International Conference on Evolutionary
Programming (EP98), May 2527, 1998, Mission Valley Marriott: San Diego, CA, USA,
volume 1447/1998 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany. doi: 10.1007/BFb0040753. isbn: 3-540-64891-7. OCLC: 39539448,
150397169, 247514628, and 313127561. In cooperation with IEEE Neural Networks
Council.
2209. 16th European Conference on Machine Learning (ECML05), October 37, 2005, Porto, Por-
REFERENCES 1123
tugal.
2210. Mitchell A. Potter and Kenneth Alan De Jong. A Cooperative Coevolutionary
Approach to Function Optimization. In PPSN III [693], pages 249257, 1994.
doi: 10.1007/3-540-58484-6 269. CiteSeer
x
: 10.1.1.54.7033.
2211. Mitchell A. Potter and Kenneth Alan De Jong. Cooperative Coevolution: An Ar-
chitecture for Evolving Coadapted Subcomponents. Evolutionary Computation, 8(1):
129, Spring 2000, MIT Press: Cambridge, MA, USA. doi: 10.1162/106365600568086.
Fully available at http://mitpress.mit.edu/journals/EVCO/Potter.pdf and
http://mitpress.mit.edu/journals/pdf/evco_8_1_1_0.pdf [accessed 2010-09-13].
CiteSeer
x
: 10.1.1.134.2926.
2212. Jean-Yves Potvin. A Review of Bio-inspired Algorithms for Vehicle Routing. In Bio-inspired
Algorithms for the Vehicle Routing Problem [2162], pages 134. Springer-Verlag: Berlin/Hei-
delberg, 2009. doi: 10.1007/978-3-540-85152-3 1.
2213. Kata Praditwong, Mark Harman, and Xin Yao. Software Module Clustering as
a Multi-Objective Search Problem. IEEE Transactions on Software Engineering,
37(2):264282, MarchApril 2011, IEEE Computer Society: Piscataway, NJ, USA.
doi: 10.1109/TSE.2010.26. Fully available at http://www.cs.bham.ac.uk/
xin/
papers/PraditwongHarmanYao10TSE.pdf [accessed 2011-08-07]. INSPEC Accession Num-
ber: 11883163.
2214. Bhanu Prasad, editor. Proceedings of the 1st Indian International Conference on Articial
Intelligence (IICAI-03), December 1820, 2003, Hyderabad, India. isbn: 0-9727412-0-8.
2215. Bhanu Prasad, editor. Proceedings of the 2nd Indian International Conference on Articial
Intelligence (IICAI-05), December 2022, 2005, Pune, India. isbn: 0-9727412-1-6.
2216. Bhanu Prasad, editor. Proceedings of the 3rd Indian International Conference on Articial
Intelligence (IICAI-07), December 1719, 2007, Pune, India.
2217. Bhanu Prasad, Pawan Lingras, and Ashwin Ram, editors. Proceedings of the 4th Indian In-
ternational Conference on Articial Intelligence (IICAI-09), December 1618, 2009, Tumkur,
India.
2218. Sushil K. Prasad, Susmi Routray, Reema Khurana, and Sartaj Sahni, editors. Proceed-
ings of the Third International Conference on Information Systems, Technology and Man-
agement (ICISTM09), March 1213, 2009, Ghaziabad, India, volume 31 in Communi-
cations in Computer and Information Science. Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-642-00405-6. isbn: 3-642-00404-0. Library of Congress Control Number
(LCCN): 2009921607.
2219. Steven D. Prestwich, S. Armagan Tarim, and Brahim Hnich. Template Design Under
Demand Uncertainty by Integer Linear Local Search. International Journal of Produc-
tion Research, 44(22):49154928, November 2006, Taylor and Francis LLC: London, UK.
doi: 10.1080/00207540600621060.
2220. Kenneth V. Price, Rainer M. Storn, and Jouni A. Lampinen. Dierential Evolution A
Practical Approach to Global Optimization, Natural Computing Series. Birkhauser Ver-
lag: Basel, Switzerland, 2005. isbn: 3-540-20950-6 and 3-540-31306-0. Google Books
ID: S67vX-KqVqUC. OCLC: 63127211, 63381529, and 318292603.
2221. Armand Prieditis and Stuart J. Russell, editors. Proceedings of the Twelfth International
Conference on Machine Learning (ICML95), July 912, 1995, Tahoe City, CA, USA. Morgan
Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-377-8.
2222. Fifth Annual Princeton Conference on Information Science and Systems, March 1971. Prince-
ton University Press: Princeton, NJ, USA.
2223. Les Proll and Barbara Smith. Integer Linear Programming and Constraint Programming
Approaches to a Template Design Problem. INFORMS Journal on Computing (JOC), 10
(03):225275, Summer 1998, Institute for Operations Research and the Management Sciences
(INFORMS): Linthicum, ML, USA and HighWire Press (Stanford University): Cambridge,
MA, USA. doi: 10.1287/ijoc.10.3.265.
2224. Philip E. Protter. Stochastic Integration and Dierential Equations, volume 21 in Stochastic
Modelling and Applied Probability. Springer-Verlag: Berlin/Heidelberg, 2nd edition, 2004.
isbn: 3-540-00313-4. Google Books ID: mJkFuqwr5xgC.
2225. Proceedings of the Fourth International Workshop on Local Search Techniques in Constraint
Satisfactio (LSCS07), September 23, 2007, Providence, RI, USA.
2226. Adam Pr ugel-Bennett. Modelling GA Dynamics. In Proceedings of the Second Evonet Sum-
1124 REFERENCES
mer School on Theoretical Aspects of Evolutionary Computing [1480], pages 5986, 1999.
Fully available at http://eprints.ecs.soton.ac.uk/13205 [accessed 2010-08-01].
2227. William F. Punch, Douglas Zongker, and Erik D. Goodman. The Royal Tree Problem,
a Benchmark for Single and Multiple Population Genetic Programming. In Advances
in Genetic Programming II [106], pages 299316. MIT Press: Cambridge, MA, USA,
1996. Fully available at http://citeseer.ist.psu.edu/147908.html [accessed 2007-10-
14]. CiteSeer
x
: 10.1.1.48.6434.
2228. Robin Charles Purshouse. On the Evolutionary Optimisation of Many Objectives. PhD
thesis, University of Sheeld, Department of Automatic Control and Systems Engineering:
Sheeld, UK, September 2003, Peter J. Fleming, Advisor. CiteSeer
x
: 10.1.1.10.8816.
2229. Robin Charles Purshouse and Peter J. Fleming. The Multi-Objective Genetic Algorithm Ap-
plied to Benchmark Problems An Analysis. Research Report 796, University of Sheeld,
Department of Automatic Control and Systems Engineering: Sheeld, UK, August 2001.
Fully available at http://citeseer.ist.psu.edu/old/499210.html and http://
www.lania.mx/
ccoello/
EMOO/purshouse03.pdf.gz [accessed 2009-07-18].
2231. Robin Charles Purshouse and Peter J. Fleming. Evolutionary Many-Objective Optimi-
sation: An Exploratory Analysis. In CEC03 [2395], pages 20662073, volume 3, 2003.
doi: 10.1109/CEC.2003.1299927. Fully available at http://www.lania.mx/
ccoello/
EMOO/purshouse03b.pdf.gz. INSPEC Accession Number: 8494841.
Q
2232. D. Quagliarella, J. Periaux, Carlo Poloni, and Gabriel Winter, editors. Genetic Algorithms
and Evolution Strategy in Engineering and Computer Science: Recent Advances and Indus-
trial Applications Proceedings of the 2nd European Short Course on Genetic Algorithms
and Evolution Strategies (EUROGEN97), November 28December 4, 1997, Triest, Italy, Re-
cent Advances in Industrial Applications. John Wiley & Sons Ltd.: New York, NY, USA.
isbn: 0-471-97710-1. GBV-Identication (PPN): 236675036 and 252253957.
2233. R. J. Quick, Victor J. Rayward-Smith, and George D. Smith. The Royal Road Func-
tions: Description, Intent and Experimentation. In AISB96 [938], pages 223235, 1996.
doi: 10.1007/BFb0032786.
2234. John Ross Quinlan. C4.5: Programs for Machine Learning, Morgan Kaufmann Series in
Machine Learning. Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA, 1993.
isbn: 1-558-60238-0. Google Books ID: AABrrnZWgPEC. OCLC: 26547590, 249341510,
257317819, and 473499718. Library of Congress Control Number (LCCN): 92032653.
GBV-Identication (PPN): 376624361.
2235. Alejandro Quintero and Samuel Pierre. Assigning Cells to Switches in Cellular Mobile Net-
works: A Comparative Study. Computer Communications The International Journal for
the Computer and Telecommunications Industry, 26(9):950960, June 2, 2003, Elsevier Sci-
ence Publishers B.V.: Essex, UK. doi: 10.1016/S0140-3664(02)00224-4. See also [2237].
2236. Alejandro Quintero and Samuel Pierre. Evolutionary Approach to Optimize the As-
signment of Cells to Switches in Personal Communication Networks. Computer Com-
munications The International Journal for the Computer and Telecommunications In-
dustry, 26(9):927938, June 2, 2003, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/S0140-3664(02)00238-4. See also [2235, 2237].
2237. Alejandro Quintero and Samuel Pierre. Sequential and Multi-Population Memetic Algo-
rithms for Assigning Cells to Switches in Mobile Networks. Computer Networks, 43(3):
247261, October 22, 2003, Elsevier Science Publishers B.V.: Essex, UK. Imprint: North-
Holland Scientic Publishers Ltd.: Amsterdam, The Netherlands, Ian F. Akyildiz, editor.
doi: 10.1016/S1389-1286(03)00270-6. See also [2235, 2236].
2238. Mohammad Adil Qureshi. Evolving Agents. In GP96 [1609], pages 369374, 1996. Fully
available at http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/papers/AQ.gp96.
ps.gz [accessed 2007-09-17]. See also [2239, 2240].
REFERENCES 1125
2239. Mohammad Adil Qureshi. Evolving Agents. Research Note RN/96/4, University Col-
lege London (UCL): London, UK, January 1996. Fully available at http://www.cs.
bham.ac.uk/
wbl/biblio/gp-html/
qureshi_thesis.html [accessed 2009-09-02]. CiteSeer
x
: 10.1.1.4.3698. See also [2238,
2239].
R
2241. Nicholas J. Radclie. Equivalence Class Analysis of Genetic Algorithms. Complex Sys-
tems, 5(2):183205, 1991, Complex Systems Publications, Inc.: Champaign, IL, USA.
Fully available at ftp://ftp.epcc.ed.ac.uk/pub/tr/90/tr9003.ps.Z [accessed 2010-07-
26]. CiteSeer
x
: 10.1.1.7.2988.
2242. Nicholas J. Radclie. The Algebra of Genetic Algorithms. Technical Report TR92-11, Uni-
versity of Edinburgh, Edinburgh Parallel Computing Centre (EPCC): Edinburgh, Scotland,
UK, 1992. Fully available at ftp://ftp.epcc.ed.ac.uk/pub/tr/92/tr9211.ps.Z [ac-
cessed 2010-07-26]. See also [2244].
2243. Nicholas J. Radclie. Non-Linear Genetic Representations. In PPSN II [1827], pages 259
268, 1992. Fully available at http://users.breathe.com/njr/papers/ppsn92.pdf
[accessed 2010-07-26]. CiteSeer
x
: 10.1.1.7.1530.
2244. Nicholas J. Radclie. The Algebra of Genetic Algorithms. Annals of Mathematics and Arti-
cial Intelligence, 10(4):339384, December 1994, Springer Netherlands: Dordrecht, Nether-
lands. doi: 10.1007/BF01531276. Fully available at http://stochasticsolutions.com/
pdf/amai94.pdf [accessed 2010-07-27]. CiteSeer
x
: 10.1.1.21.9675, 10.1.1.51.2195, and
10.1.1.8.2450. See also [2242].
2245. Nicholas J. Radclie and Patrick David Surry. Formal Memetic Algorithms. In AISB94 [936],
pages 116, 1994. doi: 10.1007/3-540-58483-8 1. CiteSeer
x
: 10.1.1.38.9885.
2246. Nicholas J. Radclie and Patrick David Surry. Fitness Variance of Formae and Performance
Prediction. In FOGA 3 [2932], pages 5172, 1994. Fully available at http://users.
breathe.com/njr/papers/foga94.pdf [accessed 2009-07-10]. CiteSeer
x
: 10.1.1.40.4508
and 10.1.1.57.635.
2247. Nicholas J. Radclie and Patrick David Surry. Fundamental Limitations on Search Al-
gorithms: Evolutionary Computing in Perspective. In Computer Science Today Recent
Trends and Developments [2777], pages 275291. Springer-Verlag GmbH: Berlin, Germany,
1995. doi: 10.1007/BFb0015249. CiteSeer
x
: 10.1.1.49.2376.
2248. Sabine Radke and Deutsches Institut f ur Wirtschaftsforschung (DIW): Berlin, Germany.
Verkehr in Zahlen 2006/2007. Deutscher Verkehrs-Verlag GmbH: Hamburg, Germany
and Bundesministerium f ur Verkehr, Bau- und Stadtentwicklung: Berlin, Germany, 2006.
isbn: 3-87154-349-7. OCLC: 255962850. GBV-Identication (PPN): 526782250.
2249. R. Raghuram. Computer Simulation of Electronic Circuits. New Age International (P)
Ltd., Publishers: New Delhi, India, 1989August 2007. isbn: 8122401112. Google Books
ID: kVs2liYNir0C.
2250. Yahya Rahmat-Samii and Eric Michielssen, editors. Electromagnetic Optimization by Genetic
Algorithms, Wiley Series in Microwave and Optical Engineering. John Wiley & Sons Ltd.:
New York, NY, USA, June 1999. isbn: 0-471-29545-0.
2251. G unther R. Raidl. A Hybrid GP Approach for Numerically Robust Symbolic Regres-
sion. In GP98 [1612], pages 323328, 1998. Fully available at http://www.ads.
tuwien.ac.at/publications/bib/pdf/raidl-98c.pdf and http://www.cs.
bham.ac.uk/
genitor/
dissertations/rana.ps.gz [accessed 2010-07-23]. CiteSeer
x
: 10.1.1.18.2879.
2268. William Rand, Sevan G. Ficici, and Rick L. Riolo, editors. Evolutionary Computation and
Multi-Agent Systems and Simulation Workshop (ECoMASS08), July 12, 2008, Renaissance
Atlanta Hotel Downtown: Atlanta, GA, USA. ACM Press: New York, NY, USA. Part of
[1519].
2269. Alain T. Rappaport and Reid G. Smith, editors. Proceedings of the The Second Confer-
ence on Innovative Applications of Articial Intelligence (IAAI90), May 13, 1990, Wash-
ington, DC, USA. AAAI Press: Menlo Park, CA, USA. isbn: 0-262-68068-8. Partly
available at http://www.aaai.org/Conferences/IAAI/iaai90.php [accessed 2007-09-06].
Published in 1991.
2270. Khaled Rasheed and Brian D. Davison. Eect of Global Parallelism on the Behavior of a
Steady State Genetic Algorithm for Design Optimization. In CEC99 [110], pages 534541,
1999. Fully available at http://www.cse.lehigh.edu/
brian/pubs/1999/cec99/
pgado.cec99.pdf [accessed 2010-08-01]. CiteSeer
x
: 10.1.1.114.2664. See also [698].
2271. Reza Rastegar and Arash Hariri. A Step Forward in Studying the Compact Genetic Algo-
rithm. Evolutionary Computation, 14(3):277289, Fall 2006, MIT Press: Cambridge, MA,
USA. doi: 10.1162/evco.2006.14.3.277. arXiv ID: 0901.0598v1.
2272. Rajeev Rastogi and Kyuseok Shim. PUBLIC: A Decision Tree Classier that Integrates
Building and Pruning. In VLDB98 [1151], pages 404415, 1998. Fully available at http://
eprints.kfupm.edu.sa/60034/ and http://www.vldb.org/conf/1998/p404.pdf
[accessed 2009-05-11].
2273. Tapabrata Ray, Kang Tai, and Kin Chye Seow. Multiobjective Design Optimization by an
Evolutionary Algorithm. Engineering Optimization, 33(4):399424, 2001, Taylor and Francis
LLC: London, UK and Informa plc: London, UK. doi: 10.1080/03052150108940926.
2274. Victor J. Rayward-Smith, editor. Applications of Modern Heuristic Methods Proceedings
of the UNICOM Seminar on Adaptive Computing and Information Processing, January 25
27, 1994. Alfred Waller Ltd.: Henley-on-Thames, Oxfordshire, UK, Nelson Thornes Ltd.:
Cheltenham, Gloucestershire, UK, and Unicom Seminars Ltd.: Uxbridge, Middlesex, UK.
isbn: 1872474284. Google Books ID: BjOTAAAACAAJ and NmBRAAAAMAAJ.
2275. Victor J. Rayward-Smith. A Unied Approach to Tabu Search, Simulated Annealing and Ge-
netic Algorithms. In Applications of Modern Heuristic Methods Proceedings of the UNICOM
Seminar on Adaptive Computing and Information Processing [2274], pages 5578, volume 1,
1994.
2276. Victor J. Rayward-Smith, Ibrahim H. Osman, Colin R. Reeves, and George D. Smith, editors.
Modern Heuristic Search Methods. John Wiley & Sons Ltd.: New York, NY, USA, 1996.
isbn: 0470866500 and 0471962805. Google Books ID: DHFRAAAAMAAJ, Sd4LAAAACAAJ,
and btnFAAAACAAJ.
2277. Ingo Rechenberg. Cybernetic Solution Path of an Experimental Problem. Royal Aircraft
Establishment: Farnborough, Hampshire, UK, August 1965. Library Translation 1122.
Reprinted in [939].
2278. Ingo Rechenberg. Evolutionsstrategie: Optimierung technischer Systeme nach Prinzipien
der biologischen Evolution, volume 15 in Problemata. PhD thesis, Technische Univer-
sit at Berlin: Berlin, Germany, Friedrick Frommann Verlag: Stuttgart, Germany, 1971
1973. isbn: 3-7728-0373-3 and 3-7728-0374-1. Google Books ID: QcNNGQAACAAJ.
OCLC: 9020616, 462818122, and 500569005. Library of Congress Control Number
(LCCN): 74320689. GBV-Identication (PPN): 024852090. LC Classication: QH371
1128 REFERENCES
.R33.
2279. Ingo Rechenberg. Evolutionsstrategie 94, volume 1 in Werkstatt Bionik und Evolutionstech-
nik. Frommann-Holzboog Verlag: Bad Cannstadt, Stuttgart, Baden-W urttemberg, Germany,
1994. isbn: 3-7728-1642-8. Google Books ID: savAAAACAAJ. OCLC: 75424354. GBV-
Identication (PPN): 153251220. Libri-Number: 8263485. See also [2278].
2280. Seventh International Workshop on Learning Classier Systems (IWLCS04), June 26, 2004,
Red Lion Hotel: Seattle, WA, USA. Held during GECCO 2004. See also [751, 752, 1589].
2281. R. Reddy, editor. Proceedings of the 5th International Joint Conference on Articial In-
telligence (IJCAI77-I), August 2225, 1977, Massachusetts Institute of Technology (MIT):
Cambridge, MA, USA, volume 1. Fully available at http://dli.iiit.ac.in/ijcai/
IJCAI-77-VOL1/CONTENT/content.htm [accessed 2008-04-01]. See also [2282].
2282. R. Reddy, editor. Proceedings of the 5th International Joint Conference on Articial Intel-
ligence (IJCAI77-II), August 2225, 1977, Massachusetts Institute of Technology (MIT):
Cambridge, MA, USA, volume 2. Fully available at http://dli.iiit.ac.in/ijcai/
IJCAI-77-VOL2/CONTENT/content.htm [accessed 2008-04-01]. See also [2281].
2283. Colin R. Reeves, editor. Modern Heuristic Techniques for Combinatorial Problems, Ad-
vanced Topics in Computer Science Series. Blackwell Publishing Ltd: Chichester, West Sus-
sex, UK, April 1993. isbn: 0077092392, 0-470-22079-1, and 0-632-03238-3. Google
Books ID: G6NfQgAACAAJ. OCLC: 26805931. Library of Congress Control Number
(LCCN): 92033335. GBV-Identication (PPN): 121998312 and 17228810X. LC Clas-
sication: QA402.5 .M62 1993. Outgrowth of a conference held at Bangor, North Wales in
1990.
2284. Colin R. Reeves and Christine C. Wright. An Experimental Design Perspective
on Genetic Algorithms. In FOGA 3 [2932], pages 722, 1994. Fully avail-
able at http://www.cs.colostate.edu/
whitley/CS640/walshdesign.ps.gz [ac-
cessed 2010-09-14]. CiteSeer
x
: 10.1.1.54.1692.
2285. Colin R. Reeves and Christine C. Wright. Epistasis in Genetic Algorithms: An Experimental
Design Perspective. In ICGA95 [883], pages 217224, 1995. CiteSeer
x
: 10.1.1.39.29.
2286. Dirk Reichelt, Peter Gmilkowsky, and Sebastian Linser. A Study of an Iterated Local Search
on the Reliable Communication Networks Design Problem. In EvoWorkshops05 [2340], pages
156165, 2005.
2287. Christian M. Reidys and Peter F. Stadler. Neutrality in Fitness Landscapes. Jour-
nal of Applied Mathematics and Computation, 117(23):321350, January 25, 2001,
Elsevier Science Publishers B.V.: Essex, UK. doi: 10.1016/S0096-3003(99)00166-6.
CiteSeer
x
: 10.1.1.46.962.
2288. Gerhard Reinelt. TSPLIB. Oce Research Group Discrete Optimization, Ruprecht Karls
University of Heidelberg: Heidelberg, Germany, 1995. Fully available at http://comopt.
ifi.uni-heidelberg.de/software/TSPLIB95/ [accessed 2010-11-23]. See also [2289, 2290].
2289. Gerhard Reinelt. TSPLIB A Traveling Salesman Problem Library. ORSA Journal on
Computing, 3(4):376384, Fall 1991, Operations Research Society of America (ORSA).
doi: 10.1287/ijoc.3.4.376. See also [2288, 2290].
2290. Gerhard Reinelt. TSPLIB 95. Technical Report, Universitat Heidelberg, Institut f ur
Mathematik: Heidelberg, Germany, 1995. Fully available at http://comopt.ifi.
uni-heidelberg.de/software/TSPLIB95/DOC.PS [accessed 2011-09-18]. See also [2288,
2289].
2291. Mark J. Rentmeesters, Wei K. Tsai, and Kwei-Jay Lin. A Theory of Lexi-
cographic Multi-Criteria Optimization. In ICECCS96 [1327], pages 7696, 1996.
doi: 10.1109/ICECCS.1996.558386.
2292. Alfred Renyi. Probability Theory. Dover Publications: Mineola, NY, USA,
May 2007. isbn: 0486458679. Google Books ID: Z9ueAQAACAAJ and yx8IAQAAIAAJ.
OCLC: 77708371.
2293. Proceedings of the Fourth Joint Conference on Information Science (JCIS 1998), Section:
The Second International Workshop on Frontiers in Evolutionary Algorithms (FEA98), Oc-
tober 2428, 1998, Research Triangle Park, NC, USA, volume 2. Workshop held in conjunc-
tion with Fourth Joint Conference on Information Sciences.
2294. Mauricio G.C. Resende, Jorge Pinho de Sousa, and Ana Viana, editors. 4th Metaheuristics
International Conference Metaheuristics: Computer Decision-Making (MIC01), July 16
20, 2001, Porto, Portugal, volume 86 in Applied Optimization. Springer-Verlag GmbH:
REFERENCES 1129
Berlin, Germany. isbn: 1-4020-7653-3. Partly available at http://paginas.fe.up.
pt/
isbell/classes/reading/
papers/Rish.pdf [accessed 2007-08-11].
2313. Herbert Robbins and Sutton Monro. A Stochastic Approximation Method. The Annals of
Mathematical Statistics, 22(3):400407, September 1951, Institute of Mathematical Statis-
tics: Beachwood, OH, USA. doi: 10.1214/aoms/1177729586. Fully available at http://
projecteuclid.org/euclid.aoms/1177729586 [accessed 2008-10-11]. Zentralblatt MATH
identier: 0054.05901. Mathematical Reviews number (MathSciNet): MR42668.
2314. Lus Mateus Rocha, Larry S. Yaeger, Mark A. Bedau, Dario Floreano, Robert L. Gold-
stone, and Alessandro Vespignani, editors. ALIFE X: Proceedings of the Tenth Interna-
tional Conference on the Simulation and Synthesis of Living Systems (ALIFE06), June 3
7, 2006, Bloomington, IN, USA, Bradford Books. MIT Press: Cambridge, MA, USA.
isbn: 0-262-68162-5. Library of Congress Control Number (LCCN): 2006922394. GBV-
Identication (PPN): 516051768. LC Classication: QH324.2 .I556 2006.
2315. Miguel Rocha, Pedro Sousa, Paulo Cortez, and Miguel Rio. Evolutionary Computation for
Quality of Service Internet Routing Optimization. In EvoWorkshops07 [1050], pages 7180,
2007. doi: 10.1007/978-3-540-71805-5 8.
2316. Alex Rogers and Adam Pr ugel-Bennett. Modelling the Dynamics of a Steady-State Genetic
Algorithm. In FOGA98 [208], pages 5768, 1998. Fully available at http://eprints.
ecs.soton.ac.uk/451/ [accessed 2010-08-01]. CiteSeer
x
: 10.1.1.28.1226.
2317. Daniel S. Rokhsar, Philip Warren Anderson, and Daniel L. Steingart. Self-Organization in
Prebiological Systems: Simulations of a Model for the Origin of Genetic Information. Journal
of Molecular Evolution, 23(2):119126, June 1986, Springer New York: New York, NY, USA,
Martin Kreitman, editor. doi: 10.1007/BF02099906.
2318. Learning and Intelligent OptimizatioN (LION 5), January 1721, 2011, Rome, Italy.
2319. Crist obal Romero and Sebastian Ventura. Educational Data Mining: A Survey From 1995 to
2005. Expert Systems with Applications An International Journal, 33(1):135146, July 2007,
Elsevier Science Publishers B.V.: Essex, UK. Imprint: Pergamon Press: Oxford, UK.
doi: 10.1016/j.eswa.2006.04.005.
2320. Juan Romero and Penousal Machado, editors. The Art of Articial Evolution: A Handbook
on Evolutionary Art and Music, Natural Computing Series. Springer New York: New York,
NY, USA, November 2007. doi: 10.1007/978-3-540-72877-1. Library of Congress Control
REFERENCES 1131
Number (LCCN): 2007937632.
2321. Simon Ronald. Preventing Diversity Loss in a Routing Genetic Algorithm with Hash Tag-
ging. Complexity International, 2(2), April 1995, Monash University, Faculty of Information
Technology: Victoria, Australia. Fully available at http://www.complexity.org.au/
ci/vol02/sr_hash/ [accessed 2009-07-09].
2322. Simon Ronald. Genetic Algorithms and Permutation-Encoded Problems. Diversity Preser-
vation and a Study of Multimodality. PhD thesis, University of South Australia (UniSA),
Department of Computer and Information Science: Mawson Lakes, SA, Australia, 1996.
2323. Simon Ronald. Robust Encodings in Genetic Algorithms: A Survey of Encoding Issues. In
CEC97 [173], pages 4348, 1997. doi: 10.1109/ICEC.1997.592265.
2324. Simon Ronald, John Asenstorfer, and Millist Vincent. Representational Redundancy
in Evolutionary Algorithms. In CEC95 [1361], pages 631637, volume 2, 1995.
doi: 10.1109/ICEC.1995.487457.
2325. Agostinho Rosa, editor. Proceedings of the International Conference on Evolutionary Com-
putation (ICEC09), 2009, Madeira, Portugal. Part of [1809].
2326. Justinian P. Rosca. Proceedings of the Workshop on Genetic Programming: From Theory to
Real-World Applications. Technical Report 95.2, University of Rochester, National Resource
Laboratory for the Study of Brain and Behavior: Rochester, NY, USA, Morgan Kaufmann:
San Mateo, CA, USA, July 9, 1995, Tahoe City, CA, USA. Held in conjunction with the
twelfth International Conference on Machine Learning.
2327. Justinian P. Rosca. An Analysis of Hierarchical Genetic Programming. Technical Re-
port TR566, University of Rochester, Computer Science Department: Rochester, NY, USA,
March 1995. Fully available at ftp://ftp.cs.rochester.edu/pub/u/rosca/gp/95.
tr566.ps.gz [accessed 2009-07-10]. CiteSeer
x
: 10.1.1.26.2552.
2328. Justinian P. Rosca. Generality versus Size in Genetic Programming. In GP96 [1609],
pages 381387, 1996. Fully available at ftp://ftp.cs.rochester.edu/pub/u/rosca/
gp/96.gp.ps.gz and http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/rosca_
1996_gVsGP.html [accessed 2011-11-23]. CiteSeer
x
: 10.1.1.54.2363.
2329. Justinian P. Rosca and Dana H. Ballard. Causality in Genetic Programming. In
ICGA95 [883], pages 256263, 1995. CiteSeer
x
: 10.1.1.26.2503.
2330. Florian Rosenberg, Christoph Nagl, and Schahram Dustdar. Applying Distributed Busi-
ness Rules The VIDRE Approach. In SCContest06 [554], pages 471478, 2006.
doi: 10.1109/SCC.2006.22. INSPEC Accession Number: 9165411.
2331. Richard S. Rosenberg. Simulation of Genetic Populations with Biochemical Properties. PhD
thesis, University of Michigan: Ann Arbor, MI, USA, June 1967. Fully available at http://
deepblue.lib.umich.edu/handle/2027.42/7321 [accessed 2010-08-03]. University Micro-
lms No.: UMR3370. ID: bad1552.0001.001. ORA Project 08333.
2332. Jay S. Rosenblatt, Robert A. Hinde, Colin Beer, and Marie-Claire Busnel, editors. Advances
in the Study of Behavior, volume 12 in Advances in the Study of Behavior. Academic Press
Professional, Inc.: San Diego, CA, USA. isbn: 0-12-004512-5. OCLC: 646758333. GBV-
Identication (PPN): 011437138.
2333. Howard H. Rosenbrock. An Automatic Method for Finding the Greatest or Least Value
of a Function. The Computer Journal, Oxford Journals, 3(3):175184, March 1960, British
Computer Society: Swindon, UK. doi: 10.1093/comjnl/3.3.175.
2334. Paul L. Rosin and Freddy Fierens. Improving Neural Network Generalisation. In
IGARSS95 [2609], pages 12551257, volume 2, 1995. doi: 10.1109/IGARSS.1995.521718.
Fully available at http://users.cs.cf.ac.uk/Paul.Rosin/resources/papers/
overfitting.pdf [accessed 2009-07-12]. CiteSeer
x
: 10.1.1.48.3136. INSPEC Accession
Number: 5112834.
2335. Claudio Rossi, Elena Marchiori, and Joost N. Kok. An Adaptive Evolutionary Algo-
rithm for the Satisability Problem. In SAC00 [23], pages 463469, volume 1, 2000.
doi: 10.1145/335603.335912. CiteSeer
x
: 10.1.1.37.4771. See also [1117].
2336. Gerald P. Roston. A Genetic Methodology for Conguration Design, CMU-RI-TR-94-42. PhD
thesis, Carnegie Mellon University (CMU), Department of Mechanical Engineering: Pitts-
burgh, PA, USA, December 1994, Robert Sturges, Jr. and William Red Wittaker, Advi-
sors. Fully available at http://www.ri.cmu.edu/pubs/pub_3335.html [accessed 2010-08-
19]. CiteSeer
x
: 10.1.1.152.7521.
2337. Franz Rothlauf, editor. Late Breaking Papers at Genetic and Evolutionary Computation
1132 REFERENCES
Conference (GECCO05 LBP), June 2529, 2005, Loews LEnfant Plaza Hotel: Washington,
DC, USA. Also distributed on CD-ROM at GECCO-2005. See also [304, 2339].
2338. Franz Rothlauf. Representations for Genetic and Evolutionary Algorithms, volume 104 in
Studies in Fuzziness and Soft Computing. Physica-Verlag GmbH & Co.: Heidelberg, Ger-
many, 2nd edition, 20022006. isbn: 3-540-25059-X and 3790814962. Google Books
ID: fQrSUwop4JkC, rNxNAAAACAAJ, and tHYlQfvsP6cC. Foreword by David E. Gold-
berg.
2339. Franz Rothlauf, Misty Blowers, J urgen Branke, Stefano Cagnoni, Ivan I. Garibay, Ozlem
Garibay, J orn Grahl, Gregory S. Hornby, Edwin D. de Jong, Tim Kovacs, Sanjeev Kumar,
Claudio F. Lima, Xavier Llor` a, Fernando G. Lobo, Laurence D. Merkle, Julian Francis Miller,
Jason H. Moore, Michael ONeill, Martin Pelikan, Terry P. Riopka, Marylyn D. Ritchie, Ku-
mara Sastry, Stephen L. Smith, Hal Stringer, Keiki Takadama, Marc Toussaint, Stephen C.
Upton, Alden H. Wright, and Shengxiang Yang, editors. Proceedings of the 2005 Work-
shops on Genetic and Evolutionary Computation (GECCO05 WS), June 2526, 2005, Loews
LEnfant Plaza Hotel: Washington, DC, USA. ACM Press: New York, NY, USA. See also
[304, 2337].
2340. Franz Rothlauf, J urgen Branke, Stefano Cagnoni, David Wolfe Corne, Rolf Drech-
sler, Yaochu Jin, Penousal Machado, Elena Marchiori, Juan Romero, George D. Smith,
and Giovanni Squillero, editors. Applications of Evolutionary Computing, Proceedings
of EvoWorkshops 2005 EvoBIO, EvoCOMNET, EvoHOT, EvoIASP, EvoMUSART,
and EvoSTOC (EvoWorkshops05), March 30April 1, 2005, Lausanne, Switzerland,
volume 3449/2005 in Theoretical Computer Science and General Issues (SL 1), Lec-
ture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/b106856. isbn: 3-540-25396-3. Google Books ID: -4dQAAAAMAAJ and
3X86XlOROyMC. OCLC: 59009564, 59223261, 145832358, and 254368497. Library
of Congress Control Number (LCCN): 2005922824.
2341. Franz Rothlauf, J urgen Branke, Stefano Cagnoni, Ernesto Jorge Fernandes Costa, Carlos
Cotta, Rolf Drechsler, Evelyne Lutton, Penousal Machado, Jason H. Moore, Juan Romero,
George D. Smith, Giovanni Squillero, and Hideyuki Takagi, editors. Applications of Evo-
lutionary Computing Proceedings of EvoWorkshops 2006: EvoBIO, EvoCOMNET, Evo-
HOT, EvoIASP, EvoINTERACTION, EvoMUSART, and EvoSTOC (EvoWorkshops06),
April 1012, 2006, Budapest, Hungary, volume 3907/2006 in Theoretical Computer Sci-
ence and General Issues (SL 1), Lecture Notes in Computer Science (LNCS). Springer-Verlag
GmbH: Berlin, Germany. doi: 10.1007/11732242. isbn: 3-540-33237-5. Google Books
ID: S4VQAAAAMAAJ. OCLC: 65216918, 67831340, 145829509, 150398193, 181551989,
and 316263582. Library of Congress Control Number (LCCN): 2006922618.
2342. Franz Rothlauf, G unther R. Raidl, Anna Isabel Esparcia-Alc azar, Ying-Ping Chen, Gabriela
Ochoa, Ender Ozcan, Marc Schoenauer, Anne Auger, Hans-Georg Beyer, Nikolaus Hansen,
Steen Finck, Raymond Ros, L. Darrell Whitley, Garnett Wilson, Simon Harding, William B.
Langdon, Man Leung Wong, Laurence D. Merkle, Frank W. Moore, Sevan G. Ficici, William
Rand, Rick L. Riolo, Nawwaf Kharma, William R. Buckley, Julian Francis Miller, Ken-
neth Owen Stanley, Jaume Bacardit i Pe narroya, Will N. Browne, Jan Drugowitsch, Nicola
Beume, Mike Preu, Stephen Frederick Smith, Stefano Cagnoni, Alexandru Floares, Aaron
Baughman, Steven Matt Gustafson, Maarten Keijzer, Arthur Kordon, and Clare Bates
Congdon, editors. Proceedings of the 11th Annual Conference on Genetic and Evolution-
ary Computation (GECCO09-I), July 812, 2009, Delta Centre-Ville Hotel: Montreal, QC,
Canada. Association for Computing Machinery (ACM): New York, NY, USA. Partly avail-
able at http://www.sigevo.org/gec-summit-2009/instructions-papers.html
[accessed 2011-02-28]. See also [2343].
2343. Franz Rothlauf, G unther R. Raidl, Anna Isabel Esparcia-Alc azar, Ying-Ping Chen, Gabriela
Ochoa, Ender Ozcan, Marc Schoenauer, Anne Auger, Hans-Georg Beyer, Nikolaus Hansen,
Steen Finck, Raymond Ros, L. Darrell Whitley, Garnett Wilson, Simon Harding, William B.
Langdon, Man Leung Wong, Laurence D. Merkle, Frank W. Moore, Sevan G. Ficici, William
Rand, Rick L. Riolo, Nawwaf Kharma, William R. Buckley, Julian Francis Miller, Ken-
neth Owen Stanley, Jaume Bacardit i Pe narroya, Will N. Browne, Jan Drugowitsch, Nicola
Beume, Mike Preu, Stephen L. Smith, Stefano Cagnoni, Alexandru Floares, Aaron Baugh-
man, Steven Matt Gustafson, Maarten Keijzer, Arthur Kordon, and Clare Bates Congdon,
editors. Proceedings of the 11th Annual Conference Companion on Genetic and Evolu-
REFERENCES 1133
tionary Computation Conference (GECCO09-II), July 812, 2009, Delta Centre-Ville Hotel:
Montreal, QC, Canada. Association for Computing Machinery (ACM): New York, NY, USA.
ACM Order No.: 910092. See also [2342].
2344. Rick D. Routledge. Diversity Indices: Which ones are admissible? Journal of Theoreti-
cal Biology, 76(4):503515, February 21, 1979, Elsevier Science Publishers B.V.: Amster-
dam, The Netherlands. Imprint: Academic Press Professional, Inc.: San Diego, CA, USA.
doi: 10.1016/0022-5193(79)90015-8.
2345. J. P. Royston. Some Techniques for Assessing Multivariate Normality Based on the Shapiro-
Wilk W. Journal of the Royal Statistical Society: Series C Applied Statistics, 32(2):121133,
1983, Blackwell Publishing for the Royal Statistical Society: Chichester, West Sussex, UK.
2346. Stefan Rudlof and Mario Koppen. Stochastic Hill Climbing with Learning by Vectors of
Normal Distribution. In WSC1 [1001], pages 6070, 1996. Fully available at http://
eprints.kfupm.edu.sa/66958/1/66958.pdf [accessed 2009-08-21]. Second corrected and
enhanced version, 1997-09-03.
2347. William Michael Rudnick. Genetic Algorithms and Fitness Variance with an Application to
the Automated Design of Articial Neural Networks. PhD thesis, Oregon Graduate Institute
of Science & Technology: Beaverton, OR, USA, 1992. UMI Order No.: GAX92-22642.
2348. G unter Rudolph. An Evolutionary Algorithm for Integer Programming. In PPSN
III [693], pages 139148, 1994. doi: 10.1007/3-540-58484-6 258. Fully avail-
able at http://ls11-www.cs.uni-dortmund.de/people/rudolph/publications/
papers/PPSN94.pdf [accessed 2010-08-12]. CiteSeer
x
: 10.1.1.40.5981.
2349. G unter Rudolph. How Mutation and Selection Solve Long-Path Problems in Polynomial
Expected Time. Evolutionary Computation, 4(2):195205, Summer 1996, MIT Press: Cam-
bridge, MA, USA. doi: 10.1162/evco.1996.4.2.195. CiteSeer
x
: 10.1.1.42.2612.
2350. G unter Rudolph. Convergence Properties of Evolutionary Algorithms, volume 35 in
Forschungsergebnisse zur Informatik. PhD thesis, Universitat Dortmund: Dortmund,
North Rhine-Westphalia, Germany, 1996. isbn: 3-86064-554-4. Google Books
ID: V9f9AAAACAAJ. Published 1997.
2351. G unter Rudolph. Self-Adaptation and Global Convergence: A Counter-Example. In
CEC99 [110], pages 646651, volume 1, 1999. doi: 10.1109/CEC.1999.781994. Fully avail-
able at http://ls11-www.cs.uni-dortmund.de/people/rudolph/publications/
papers/CEC99.pdf [accessed 2009-07-10]. CiteSeer
x
: 10.1.1.36.3755 and 10.1.1.56.9366.
2352. G unter Rudolph. Self-Adaptive Mutations may lead to Premature Convergence. IEEE Trans-
actions on Evolutionary Computation (IEEE-EC), 5(4):410414, 2001, IEEE Computer So-
ciety: Washington, DC, USA. doi: 10.1109/4235.942534. See also [2353].
2353. G unter Rudolph. Self-Adaptive Mutations may lead to Premature Convergence. Technical
Report CI73/99, Universitat Dortmund, Fachbereich Informatik: Dortmund, North
Rhine-Westphalia, Germany, April 30, 2001. Fully available at http://ls11-www.
cs.uni-dortmund.de/people/rudolph/publications/papers/tec335.pdf [ac-
cessed 2009-07-10]. CiteSeer
x
: 10.1.1.28.8514 and 10.1.1.36.5633. See also [2352].
2354. G unter Rudolph, Simon M. Lucas, and Carlo Poloni. Proceedings of 10th International
Conference on Parallel Problem Solving from Nature (PPSN X), September 1317, 2008,
Dortmund, North Rhine-Westphalia, Germany, volume 5199/2008 in Theoretical Computer
Science and General Issues (SL 1), Lecture Notes in Computer Science (LNCS). Springer-
Verlag GmbH: Berlin, Germany. doi: 10.1007/978-3-540-87700-4. isbn: 3-540-87699-5.
Google Books ID: OO-5OgAACAAJ and PPxMVCKTbtoC. Library of Congress Control Number
(LCCN): 2008934679.
2355. Thomas Philip Runarsson, Hans-Georg Beyer, Edmund K. Burke, Juan Julian Merelo-
Guervos, L. Darrell Whitley, and Xin Yao, editors. Proceedings of 9th International Con-
ference on Parallel Problem Solving from Nature (PPSN IX), September 913, 2006, Uni-
versity of Iceland: Reykjavik, Iceland, volume 4193/2006 in Theoretical Computer Science
and General Issues (SL 1), Lecture Notes in Computer Science (LNCS). Springer-Verlag
GmbH: Berlin, Germany. doi: 10.1007/11844297. isbn: 3-540-38990-3. Google Books
ID: L2QFAQAACAAJ. OCLC: 71747790, 255610906, 315830350, and 318289018. Li-
brary of Congress Control Number (LCCN): 2006931845.
2356. Stuart J. Russell and Peter Norvig. Articial Intelligence: A Modern Approach (AIMA).
Prentice Hall International Inc.: Upper Saddle River, NJ, USA and Pearson Education:
Upper Saddle River, NJ, USA, 2nd edition, December 20, 2002. isbn: 0-13-080302-2,
1134 REFERENCES
0-13-790395-2, and 8120323823. Google Books ID: 0GldGwAACAAJ, 5WfMAQAACAAJ,
5mfMAQAACAAJ, and DvqIIwAACAAJ.
2357. Tomas Ruzgas, Rimantas Rudzkis, and Mindaugas Kavaliauskas. Application of Clustering in
the Non-Parametric Estimation of Distribution Density. Nonlinear Analysis: Modelling and
Control (NLAMC), 11(4):393411, November 4, 2006, Lithuanian Association of Nonlinear
Analysts (LANA): Vilnius, Lithuania. Fully available at http://www.lana.lt/journal/
23/Ruzgas.pdf [accessed 2009-08-28].
2358. Conor Ryan, J. J. Collins, and Michael ONeill. Grammatical Evolution: Evolving Pro-
grams for an Arbitrary Language. In EuroGP98 [210], pages 8395, 1998. Fully available
at http://www.grammatical-evolution.org/papers/eurogp98.ps [accessed 2009-07-
04]. CiteSeer
x
: 10.1.1.38.7697.
2359. Conor Ryan, Michael ONeill, and J. J. Collins. Grammatical Evolution: Solving Trigono-
metric Identities. In MENDEL98 [417], pages 111119, 1998. Fully available at http://
www.grammatical-evolution.org/papers/mendel98/index.html [accessed 2010-12-02].
CiteSeer
x
: 10.1.1.30.4253.
2360. Conor Ryan, Terence Soule, Maarten Keijzer, Edward P. K. Tsang, Riccardo Poli, and
Ernesto Jorge Fernandes Costa, editors. Proceedings of the 6th European Conference on
Genetic Programming (EuroGP03), April 1416, 2003, University of Essex, Departments
of Mathematical and Biological Sciences: Wivenhoe Park, Colchester, Essex, UK, vol-
ume 2610/2003 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany. doi: 10.1007/3-540-36599-0. isbn: 3-540-00971-X. Google Books
ID: pVhXLZKMF-YC.
2361. Nestor Rychtyckyj and Daniel Shapiro, editors. Proceedings of the Twenty-second Innova-
tive Applications of Articial Intelligence Conference (IAAI10), July 1115, 2010, Westin
Peachtree Plaza: Atlanta, GA, USA. AAAI Press: Menlo Park, CA, USA.
2362. Proceedings of the Second National Conference on Evolutionary Computation and Global Op-
timization (Materialy II Krajowej Konferencji Algorytmy Ewolucyjne i Optymalizacja Glob-
alna), September 1619, 1997, Rytro, Poland. Google Books ID: IGP4tgAACAAJ.
S
2363. Paul S. Andrews, Jonathan Timmis, Nick D. L. Owens, Uwe Aickelin, Emma Hart, Andy
Hone, and Andrew M. Tyrrell, editors. Proceedings of the 8th International Conference on
Articial Immune Systems (ICARIS09), August 912, 2009, York, UK, volume 5666 in
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
2364. Leonardo Sa, Pedro Vieira, and Antonio Carneiro de Mesquita Filho. Evolutionary Synthesis
of Low-Sensitivity Antenna Matching Networks using Adjacency Matrix Representation. In
CEC09 [1350], pages 12011208, 2009. doi: 10.1109/CEC.2009.4983082. INSPEC Accession
Number: 10688677.
2365. Ashish Sabharwal. Combinatorial Problems I: Finding Solutions. In 2nd
Asian-Pacic School on Statistical Physics and Interdisciplinary Applications [987],
2008. Fully available at http://www.cs.cornell.edu/
sabhar/tutorials/
kitpc08-combinatorial-problems-I.ppt [accessed 2010-08-29].
2366. Krzystof Sacha, editor. Software Engineering Techniques: Design for Quality IFIP Working
Conference on Software Engineering Techniques (SET06), October 1720, 2006, Warsaw
University: Warsaw, Poland. Springer-Verlag: Berlin/Heidelberg. isbn: 0-387-39387-0.
Co-located with VIII Conference on Software Engineering KKIO 2006.
2367. Lorenza Saitta, editor. Proceedings of the 13th International Conference on Machine Learning
(ICML96), July 36, 1996, Bari, Italy. Morgan Kaufmann Publishers Inc.: San Francisco,
CA, USA. isbn: 1-55860-419-7.
2368. Proceedings of the Third World Congress on Nature and Biologically Inspired Computing
(NaBIC11), November 1921, 2011, Salamanca, Spain.
2369. Peter Salamon, Paolo Sibani, and Richard Frost. Facts, Conjectures, and Improvements
for Simulated Annealing, volume 7 in SIAM Monographs on Mathematical Modeling and
Computation. Society for Industrial and Applied Mathematics (SIAM): Philadelphia, PA,
USA, 2002. isbn: 0898715083. Google Books ID: jhAldlYvClcC.
2370. Sancho Salcedo-Sanz and Xin Yao. A Hybrid Hopeld Network-Genetic Algorithm Ap-
REFERENCES 1135
proach for the Terminal Assignment Problem. IEEE Transactions on Systems, Man,
and Cybernetics Part B: Cybernetics, 34(6):23432353, December 2004, IEEE Systems,
Man, and Cybernetics Society: New York, NY, USA. doi: 10.1109/TSMCB.2004.836471.
CiteSeer
x
: 10.1.1.62.7879. INSPEC Accession Number: 8207612. See also [2371].
2371. Sancho Salcedo-Sanz and Xin Yao. Assignment of Cells to Switches in a Cellular Mo-
bile Network using a Hybrid Hopeld Network-Genetic Algorithm Approach. Applied Soft
Computing, 8(1):216224, January 2008, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/j.asoc.2007.01.002. See also [2370].
2372. Sancho Salcedo-Sanz and Xin Yao. Assignment of Cells to Switches in a Cellular Mo-
bile Network using a Hybrid Hopeld Network-Genetic Algorithm Approach. Applied Soft
Computing, 8(1):216224, January 2008, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/j.asoc.2007.01.002.
2373. Sancho Salcedo-Sanz, Yong Xu, and Xin Yao. Hybrid Meta-Heuristics Algorithms for Task
Assignment in Heterogeneous Computing Systems. Computers & Operations Research, 33(3):
820835, March 2006, Pergamon Press: Oxford, UK and Elsevier Science Publishers B.V.:
Essex, UK. doi: 10.1016/j.cor.2004.08.010. Fully available at http://www.cs.bham.ac.
uk/
cobol/JCIS2005/jcis05/Track4.html [ac-
cessed 2007-09-16]. Workshop held in conjunction with Eighth Joint Conference on Information
Sciences.
2380. Rafal Sa lustowicz and J urgen Schmidhuber. Probabilistic Incremental Program Evolution:
Stochastic Search Through Program Space. Evolutionary Computation, 5(2):123141, Febru-
ary 1997, MIT Press: Cambridge, MA, USA. doi: 10.1162/evco.1997.5.2.123. See also [2381].
2381. Rafal Sa lustowicz and J urgen Schmidhuber. Probabilistic Incremental Program Evolu-
tion: Stochastic Search Through Program Space. In ECML97 [2781], pages 213220,
1997. doi: 10.1007/3-540-62858-4 86. Fully available at ftp://ftp.idsia.ch/pub/
juergen/ECML_PIPE.ps.gz and http://eprints.kfupm.edu.sa/59137/1/59137.
pdf [accessed 2009-08-23]. CiteSeer
x
: 10.1.1.45.231. See also [2380].
2382. Claude Sammut and Achim G. Homann, editors. Proceedings of the 19th International
Conference on Machine Learning (ICML02), July 812, 2002, University of New South
1136 REFERENCES
Wales: Sydney, NSW, Australia. Morgan Kaufmann Publishers Inc.: San Francisco, CA,
USA. isbn: 1-55860-873-7.
2383. Arthur L. Samuel. Some Studies in Machine Learning using the Game of Checkers. IBM
Journal of Research and Development, 3(3):210229, July 1959. doi: 10.1147/rd.33.0210. See
also [2384, 2385].
2384. Arthur L. Samuel. Some Studies in Machine Learning Using the Game of Checkers. In
Computers and Thought [897], pages 71105. McGraw-Hill: New York, NY, USA, 19631995.
See also [2383, 2385].
2385. Arthur L. Samuel. Some Studies in Machine Learning using the Game of Check-
ers II Recent Progress. IBM Journal of Research and Development, 11(6):601
617, November 1967. Fully available at http://pages.cs.wisc.edu/
dyer/cs540/
handouts/samuel-checkers.pdf and http://pages.cs.wisc.edu/
jerryzhu/
cs540/handouts/samuel-checkers.pdf [accessed 2010-08-18]. See also [2383].
2386. Proceedings of the 2014 International Conference on Systems, Man, and Cybernetics
(SMC14), October 58, 2014, San Diego, CA, USA.
2387. Harilaos G. Sandalidis, Constandinos X. Mavromoustakis, and Peter P. Stavroulakis. Per-
formance Measures of an Ant Based Decentralised Routing Scheme for Circuit Switch-
ing Communication Networks. Soft Computing A Fusion of Foundations, Method-
ologies and Applications, 5(4):313317, August 2001, Springer-Verlag: Berlin/Heidel-
berg. doi: 10.1007/s005000100104. Fully available at http://www.springerlink.com/
content/g1u7lygrugwk3nl5/fulltext.pdf [accessed 2008-09-03].
2388. Francisco Sandoval, Carlos Camacho-Penalosa, and Antonio Puerta, editors. IEEE
Mediterranean Electrotechnical Conference (MELECON06), May 1619, 2006, Be-
nalmadena (M alaga), Spain, volume 2. IEEE Computer Society: Washington, DC, USA.
isbn: 1-4244-0087-2. Google Books ID: cXMpAAAACAAJ. OCLC: 75490138, 81252104,
237880307, and 317661437.
2389. Yasuhito Sano and Hajime Kita. Optimization of Noisy Fitness Functions by Means of
Genetic Algorithms Using History of Search. In PPSN VI [2421], pages 571580, 2000.
doi: 10.1007/3-540-45356-3 56.
2390. Yasuhito Sano and Hajime Kita. Optimization of Noisy Fitness Functions by means of
Genetic Algorithms using History of Search with Test of Estimation. In CEC02 [944], pages
360365, 2002. doi: 10.1109/CEC.2002.1006261.
2391. Bruno Sareni and Laurent Krahenb uhl. Fitness Sharing and Niching Methods Revisited.
IEEE Transactions on Evolutionary Computation (IEEE-EC), 2(3):97106, September 1998,
IEEE Computer Society: Washington, DC, USA. doi: 10.1109/4235.735432. Fully avail-
able at http://hal.archives-ouvertes.fr/hal-00359799/en/ [accessed 2010-08-02]. IN-
SPEC Accession Number: 6114042. ID: hal-00359799, version 1.
2392. Manish Sarkar. Evolutionary Programming-Based Fuzzy Clustering. In EP96 [946], pages
247256, 1996.
2393. Ruhul A. Sarker, Hussein A. Abbass, and Samin Karim. An Evolutionary Algorithm for
Constrained Multiobjective Optimization Problems. In AJWIS01 [1498], pages 113122,
2001. Fully available at http://www.lania.mx/
ccoello/EMOO/sarker01a.pdf.gz
[accessed 2008-11-14]. CiteSeer
x
: 10.1.1.8.995.
2394. Ruhul A. Sarker, Masoud Mohammadian, and Xin Yao, editors. Evolutionary Optimization,
volume 48 in International Series in Operations Research & Management Science. Kluwer
Academic Publishers: Norwell, MA, USA and Springer Netherlands: Dordrecht, Netherlands,
2002. doi: 10.1007/b101816. isbn: 0-306-48041-7 and 0-7923-7654-4.
2395. Ruhul A. Sarker, Robert G. Reynolds, Hussein A. Abbass, Kay Chen Tan, Robert Ian
McKay, Daryl Leslie Essam, and Tom Gedeon, editors. Proceedings of the IEEE Congress
on Evolutionary Computation (CEC03), December 813, 2003, Canberra, Australia.
IEEE Computer Society: Piscataway, NJ, USA. isbn: 0-7803-7804-0. Google Books
ID: ALhVAAAAMAAJ, CyBpAAAACAAJ, hblVAAAAMAAJ, and u7hVAAAAMAAJ. INSPEC Ac-
cession Number: 8188933. Catalogue no.: 03TH8674. CEC 2003 A joint meeting of the IEEE,
the IEAust, the EPS, and the IEE. Congress on Evolutionary Computation, IEEE/Neural
Networks Council, Evolutionary Programming Society, Galesia, IEE.
2396. Warren S. Sarle. Stopped Training and Other Remedies for Overtting. In Interface95 [1877],
pages 352360, 1995. Fully available at ftp://ftp.sas.com/pub/neural/inter95.ps.
Z [accessed 2009-07-12]. CiteSeer
x
: 10.1.1.42.3920.
REFERENCES 1137
2397. Warren S. Sarle. What is overtting and how can I avoid it? In Usenet FAQs: comp.ai.neural-
nets FAQ [892], Chapter Part 3 of 7: General, Section 3. FAQS.ORG Internet FAQ Archives:
USA, 2009. Fully available at http://www.faqs.org/faqs/ai-faq/neural-nets/
part3/section-3.html [accessed 2008-02-29].
2398. Kumara Sastry and David Edward Goldberg. Multiobjective hBOA, Clustering, and
Scalability. In GECCO05 [304], pages 663670, 2005, Martin Pelikan, Advisor.
doi: 10.1145/1068009.1068122. See also [2157].
2399. Kumara Sastry and David Edward Goldberg. Modeling Tournament Selection With
Replacement Using Apparent Added Noise. In GECCO01 [2570], page 781, 2001.
CiteSeer
x
: 10.1.1.16.786. See also [2400].
2400. Kumara Sastry and David Edward Goldberg. Modeling Tournament Selection With Replace-
ment Using Apparent Added Noise. IlliGAL Report 2001014, Illinois Genetic Algorithms Lab-
oratory (IlliGAL), Department of Computer Science, Department of General Engineering,
University of Illinois at Urbana-Champaign: Urbana-Champaign, IL, USA, January 2001.
Fully available at http://www.illigal.uiuc.edu/pub/papers/IlliGALs/2001014.
ps.Z [accessed 2010-08-03]. See also [2399].
2401. Kumara Sastry and David Edward Goldberg. Lets Get Ready to Rumble Redux: Crossover
versus Mutation Head to Head on Exponentially Scaled Problems. In GECCO07-I [2699],
pages 13801387, 2007. doi: 10.1145/1276958.1277215. See also [2402].
2402. Kumara Sastry and David Edward Goldberg. Lets Get Ready to Rumble Redux: Crossover
versus Mutation Head to Head on Exponentially Scaled Problems. IlliGAL Report 2007005,
Illinois Genetic Algorithms Laboratory (IlliGAL), Department of Computer Science, De-
partment of General Engineering, University of Illinois at Urbana-Champaign: Urbana-
Champaign, IL, USA, February 11, 2007. Fully available at http://www.illigal.uiuc.
edu/pub/papers/IlliGALs/2007005.pdf [accessed 2008-07-21]. See also [2401].
2403. Hiroyuki Sato, Arturo Hernandez Aguirre, and Kiyoshi Tanaka. Controlling Dominance Area
of Solutions and Its Impact on the Performance of MOEAs. In EMO07 [2061], pages 520,
2007. doi: 10.1007/978-3-540-70928-2 5.
2404. Satoshi Sato, Tadashi Ishihara, and Hikaru Inooka. Systematic Design via the Method of
Inequalities. IEEE Control Systems Magazine, pages 5765, October 1996, IEEE Computer
Society: Piscataway, NJ, USA. doi: 10.1109/37.537209.
2405. Shinji Sato. Simulated Quenching: A New Placement Method for Module Generation.
In ICCAD [1328], pages 538541, 1997. doi: 10.1109/ICCAD.1997.643591. Fully avail-
able at http://www.sigda.org/Archives/ProceedingArchives/Iccad/Iccad97/
papers/1997/iccad97/pdffiles/09c_2.pdf [accessed 2010-09-25]. INSPEC Accession
Number: 5781467.
2406. Abdul Sattar and Byeong-Ho Kang, editors. Advances in Articial Intelligence. Proceed-
ings of the 19th Australian Joint Conference on Articial Intelligence (AI06), December 4
6, 2006, Hobart, Australia, volume 4304/2006 in Lecture Notes in Articial Intelligence
(LNAI, SL7), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin,
Germany. doi: 10.1007/11941439. isbn: 3-540-49787-0. Library of Congress Control Num-
ber (LCCN): 2006936897.
2407. Franklin E. Satterthwaite. Random Balance Experimentation. Technometrics, 1(2):111137,
May 1959, American Statistical Association (ASA): Alexandria, VA, USA and American
Society for Quality (ASQ): Milwaukee, WI, USA. JSTOR Stable ID: 1266466.
2408. Franklin E. Satterthwaite. REVOP or Random Evolutionary Operation. Technical Report
10-10-59, Merrimack College: North Andover, MA, USA, 1959.
2409. J urgen Sauer, editor. 19. Workshop Planen, Scheduling und Kongurieren, Entwerfen
(PuK05), September 11, 2005, Koblenz, Germany. Fully available at http://www-is.
informatik.uni-oldenburg.de/
ppsn/
[accessed 2011-02-28]. Library of Congress Control Number (LCCN): 2010934114.
2413. Robert Schaefer, Carlos Cotta, Joanna Ko lodziej, and G unter Rudolph, editors. Pro-
ceedings of the 11th International Conference on Parallel Problem Solving From Nature,
Part 2 (PPSN10-2), September 1115, 2010, AGH University of Science and Technol-
ogy: Krakow, Poland, volume 6239 in Theoretical Computer Science and General Issues
(SL 1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Ger-
many. isbn: 3-642-15870-6. Partly available at http://home.agh.edu.pl/
ppsn/
[accessed 2011-02-28]. Library of Congress Control Number (LCCN): 2010934114.
2414. J. David Schaer, editor. Proceedings of the 3rd International Conference on Genetic Algo-
rithms (ICGA89), June 47, 1989, George Mason University (GMU): Fairfax, VA, USA.
Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-066-3.
Google Books ID: BPBQAAAAMAAJ and TYvqPAAACAAJ. OCLC: 19722958, 84251559,
180515150, 231091143, 257885359, and 264619464.
2415. J. David Schaer and L. Darrell Whitley, editors. Proceedings of the International Workshop
on Combinations of GeneticAlgorithms and Neural Networks (COGANN92), June 2, 1992,
Baltimore, MD, USA. IEEE (Institute of Electrical and Electronics Engineers): Piscataway,
NJ, USA. doi: 10.1109/COGANN.1992.273951. isbn: 0-8186-2787-5. OCLC: 27675198,
65776456, 174278971, 224222497, 311746303, 475797050, and 496330593. INSPEC
Accession Number: 4487943. Catalogue no.: 92TH0435-8.
2416. J. David Schaer, Richard A. Caruana, Larry J. Eshelman, and Rajarshi Das. A Study
of Control Parameters Aecting Online Performance of Genetic Algorithms for Function
Optimization. In ICGA89 [2414], pages 5160, 1989.
2417. J. David Schaer, Larry J. Eshelman, and Daniel Outt. Spurious Correlations and Prema-
ture Convergence in Genetic Algorithms. In FOGA90 [2562], pages 102112, 1990.
2418. Robert E. Schapire. The Strength of Weak Learnability. Machine Learning, 5:
197227, June 1990, Kluwer Academic Publishers: Norwell, MA, USA and Springer
Netherlands: Dordrecht, Netherlands. doi: 10.1007/BF00116037. Fully available
at http://citeseer.ist.psu.edu/schapire90strength.html and http://www.
springerlink.com/content/x02406w7q5038735/fulltext.pdf [accessed 2007-09-15].
2419. R. Schilling, W. Haase, Jacques Periaux, and H. Baier, editors. Proceedings of the Sixth
Conference on Evolutionary and Deterministic Methods for Design, Optimization and Control
with Applications to Indutsrial and Societal Problems (EUROGEN05), September 1214,
2005, Technische Universitat M unchen: Munich, Bavaria, Germany. Technische Universitat
M unchen: Munich, Bavaria, Germany. Partly available at http://www.flm.mw.tum.de/
EUROGEN05/ [accessed 2007-09-16]. in association with ECCOMAS and ERCOFTAC.
2420. J urgen Schmidhuber. Evolutionary Principles in Self-Referential Learning. (On Learning
how to Learn: The Meta-Meta-... Hook.). Masters thesis, Technische Universitat M unchen,
Institut f ur Informatik, Lehrstuhl Professor Radig: Munich, Bavaria, Germany, May 14, 1987.
Fully available at http://www.idsia.ch/
schraudo/
pubs/SchBel92.pdf. CiteSeer
x
: 10.1.1.42.1387.
2430. Alexander Schrijver. A Course in Combinatorial Optimization. self-published, January 22,
2009. Fully available at http://homepages.cwi.nl/
rad/ssr/papers/aaai06-schuil.pdf [ac-
cessed 2008-06-12].
2432. Peter K. Schuster and Manfred Eigen. The Hypercycle, A Principle of Natural Self-
Organization. Springer-Verlag GmbH: Berlin, Germany, 1979. isbn: 0-387-09293-5. Google
Books ID: Af49AAAAYAAJ and P54PPAAACAAJ. OCLC: 4665354.
2433. Hans-Paul Schwefel. Kybernetische Evolution als Strategie der exprimentellen Forschung
in der Stromungstechnik. Masters thesis, Technische Universitat Berlin: Berlin, Germany,
1965.
2434. Hans-Paul Schwefel. Experimentelle Optimierung einer Zweiphasend use Teil I. Technical
Report 35, AEG Research Institute: Berlin, Germany, 1968. Project MHDStaustrahlrohr
11.034/68.
2435. Hans-Paul Schwefel. Evolutionsstrategie und numerische Optimierung. PhD thesis, Technis-
che Universitat Berlin, Institut f ur Me- und Regelungstechnik, Institut f ur Biologie und An-
thropologie: Berlin, Germany, 1975. OCLC: 52361662 and 251655294. GBV-Identication
(PPN): 156923181.
2436. Hans-Paul Schwefel. Numerical Optimization of Computer Models. John Wiley & Sons
Ltd.: New York, NY, USA, 1981. isbn: 0-471-09988-0. OCLC: 8011455 and
301251708. Library of Congress Control Number (LCCN): 81173223. GBV-Identication
(PPN): 01489498X. LC Classication: QA402.5 .S3813.
2437. Hans-Paul Schwefel. Evolution and Optimum Seeking, Sixth-Generation Computer Technol-
ogy Series. John Wiley & Sons Ltd.: New York, NY, USA, 1995. isbn: 0-471-57148-2.
Google Books ID: dfNQAAAAMAAJ. OCLC: 30701094 and 222866514. Library of Congress
Control Number (LCCN): 94022270. GBV-Identication (PPN): 194661636. LC Classi-
1140 REFERENCES
cation: QA402.5 .S375 1995.
2438. Hans-Paul Schwefel and Reinhard Manner, editors. Proceedings of the 1st Workshop on Par-
allel Problem Solving from Nature (PPSN I), October 13, 1990, FRG Dortmund: Dort-
mund, North Rhine-Westphalia, Germany, volume 496/1991 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/BFb0029723.
isbn: 0-387-54148-9 and 3-540-54148-9. Google Books ID: W4r2KQAACAAJ,
a7LiAAAACAAJ, and cZhQAAAAMAAJ.
2439. A. Carlisle Scott and Philip Klahr, editors. Proceedings of the The Fourth Conference on Inno-
vative Applications of Articial Intelligence (IAAI92), July 1216, 1992, San Jose, CA, USA.
AAAI Press: Menlo Park, CA, USA. isbn: 0-262-69155-8. Partly available at http://
www.aaai.org/Conferences/IAAI/iaai912.php [accessed 2007-09-06].
2440. Ian Scriven, Andrew Lewis, and Sanaz Mostaghim. Dynamic Search Initialisation Strategies
for Multi-Objective Optimisation in Peer-to-Peer Networks. In CEC09 [1350], pages 1515
1522, 2009. doi: 10.1109/CEC.2009.4983122. INSPEC Accession Number: 10688717.
2441. Ninth International Workshop on Learning Classier Systems (IWLCS06), July 89, 2006,
Seattle, WA, USA. Held during GECCO-2006 (. See also [1516].
2442. Proceedings of the 28th International Conference on Machine Learning (ICML11), June 11
14, 2011, Seattle, WA, USA.
2443. Mich`ele Sebag and Antoine Ducoulombier. Extending Population-Based Incremental
Learning to Continuous Search Spaces. In PPSN V [866], pages 418427, 1998.
CiteSeer
x
: 10.1.1.42.1884.
2444. Anthony V. Sebald and Lawrence Jerome Fogel, editors. Proceedings of the 3rd Annual
Conference on Evolutionary Programming (EP94), February 2426, 1994, San Diego, CA,
USA. World Scientic Publishing: River Edge, NJ, USA. isbn: 9810218109. Library of
Congress Control Number (LCCN): 95118447.
2445. Jimmy Secretan, Nicholas Beato, David B. DAmbrosio, Adelein Rodriguez, Adam Campbell,
and Kenneth Owen Stanley. Evolving Pictures Collaboratively Online. In CHI08 [139],
pages 17591768, 2008. doi: 10.1145/1357054.1357328. Fully available at http://eplex.
cs.ucf.edu/papers/secretan_chi08.pdf [accessed 2011-02-23].
2446. Robert Sedgewick. Algorithms in Java, Parts 14 (Fundamentals: Data Structures, Sort-
ing, Searching). Addison-Wesley Professional: Reading, MA, USA, 3rd edition, Septem-
ber 2002. isbn: 0-201-36120-5. Google Books ID: hyvdUQUmf2UC. GBV-Identication
(PPN): 247734144, 356227073, 511295804, 525555153, and 595338534. With Java
consultation by Michael Schidlowsky.
2447. Alberto Maria Segre, editor. Proceedings of the 6th International Workshop on Machine
Learning (ML89), June 2627, 1989, Cornell University Press: Ithaca, NY, USA. Morgan
Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-036-1.
2448. Y. Ahmet Sekercio glu, Andreas Pitsilides, and Athanasios V. Vasilakos. Computa-
tional Intelligence in Management of ATM Networks: A Survey of Current State of
Research. In ESIT99 [888], 1999. Fully available at http://www.cs.ucy.ac.cy/
networksgroup/pubs/published/1999/CI-ATM-London99.pdf and http://www.
erudit.de/erudit/events/esit99/12525_P.pdf [accessed 2008-09-03].
2449. Bart Selman, Hector Levesque, and David Mitchell. A New Method for Solving Hard Satis-
ability Problems. In AAAI92 [2639], pages 440446, 1992. Fully available at http://www.
aaai.org/Papers/AAAI/1992/AAAI92-068.pdf [accessed 2009-06-24].
2450. KWEB SWS Challenge Workshop, June 67, 2007, Innsbruck Congress Center: Inns-
bruck, Austria. Semantic Technology Institute (STI) Innsbruck, Austria: Innsbruck, Aus-
tria. Fully available at http://sws-challenge.org/wiki/index.php/Workshop_
Innsbruck [accessed 2010-12-12].
2451. Bernhard Sendho, Martin Kreutz, and Werner von Seelen. A Condition for the Genotype-
Phenotype Mapping: Causality. In ICGA97 [166], pages 7380, 1997. Fully avail-
able at ftp://ftp.neuroinformatik.ruhr-uni-bochum.de/pub/manuscripts/
articles/frame-label.ps.gz [accessed 2010-08-12]. CiteSeer
x
: 10.1.1.38.6750. arXiv
ID: adap-org/9711001v1.
2452. Bernhard Sendho, Martin Kreutz, and Werner von Seelen. Causality and the Analysis of Lo-
cal Search in Evolutionary Algorithms. INI Internal Report IR-INI 97-16, Ruhr-Universitat
Bochum, Institut f ur Neuroinformatik: Bochum, North Rhine-Westphalia, Germany,
September 1997. Fully available at ftp://ftp.neuroinformatik.ruhr-uni-bochum.
REFERENCES 1141
de/pub/manuscripts/IRINI/irini97-16/irini97-16.ps.gz [accessed 2009-07-15].
issn: 0943-2752. See also [2451].
2453. Twittie Senivongse and Gina Oliveira, editors. 9th IFIP WG 6.1 International Conference
on Distributed Applications and Interoperable Systems (DAIS09), June 911, 2009, Lisbon,
Portugal, volume 5523/2009 in Lecture Notes in Computer Science (LNCS). Springer-Verlag
GmbH: Berlin, Germany. doi: 10.1007/978-3-642-02164-0. isbn: 3-642-02163-8. Partly
available at http://discotec09.di.fc.ul.pt/ [accessed 2011-02-28].
2454. Proceedings of the 2012 International Conference on Systems, Man, and Cybernetics
(SCM12), October 710, 2012, Seoul, South Korea.
2455. Isabelle Servet, Louise Trave-Massuy`es, and Daniel Stern. Telephone Network Trac Over-
loading Diagnosis and Evolutionary Computation Technique. In AE97 [1191], pages 137144,
1997. doi: 10.1007/BFb0026596.
2456. Isabelle Servet, Louise Trave-Massuy`es, and Daniel Stern. Evolutionary Computation Tech-
niques for Trac Supervision Based On A Model Of Telephone Networks Built From Quali-
tative Knowledge. Studies in Informatics and Control, 6(1), March 1997, National Institute
for R&D in Informatics (Institutul Nat ional de Cercetare-Dezvoltare n Informatica, ICI):
Bucharest (Bucuresti), Romania. Fully available at http://www.ici.ro/SIC/sic1997_
1/ser97.htm [accessed 2009-08-22].
2457. SERVICES Cup10, 2010.
2458. Mark Shackleton, Rob Shipman, and Marc Ebner. An Investigation of Redundant Genotype-
Phenotype Mappings and their Role in Evolutionary Search. In CEC00 [1333], pages 493
500, volume 1, 2000. doi: 10.1109/CEC.2000.870337. Fully available at http://citeseer.
ist.psu.edu/old/409243.html and http://wwwi2.informatik.uni-wuerzburg.
de/mitarbeiter/ebner/research/publications/uniWu/redundant.ps.gz [ac-
cessed 2009-07-10]. INSPEC Accession Number: 6734665.
2459. M. Zubair Shaq, Muddassar Farooq, and Syed Ali Khayam. A Comparative Study
of Fuzzy Inference Systems, Neural Networks and Adaptive Neuro Fuzzy Inference
Systems for Portscan Detection. In EvoWorkshops08 [1051], pages 5261, 2008.
doi: 10.1007/978-3-540-78761-7 6.
2460. M. Zubair Shaq, S. Momina Tabish, and Muddassar Farooq. Are Evolutionary Rule Learn-
ing Algorithms Appropriate for Malware Detection? In GECCO09-I [2342], pages 1915
1916, 2009. doi: 10.1145/1569901.1570233. Fully available at http://www.nexginrc.org/
papers/gecco09-zubair.pdf [accessed 2009-09-05]. See also [2461].
2461. M. Zubair Shaq, S. Momina Tabish, and Muddassar Farooq. On the Appropriateness of Evo-
lutionary Rule Learning Algorithms for Malware Detection. In GECCO09-II [2343], pages
26092616, 2009. doi: 10.1145/1570256.1570370. Fully available at http://nexginrc.
org/papers/iwlcs09-zubair.pdf [accessed 2009-09-05]. See also [2460].
2462. Biren Shah, Karthik Ramachandran, and Vijay V. Raghavan. A Hybrid Approach for
Data Warehouse View Selection. International Journal of Data Warehousing and Mining
(IJDWM), 2(2):137, 2006, Idea Group Publishing (Idea Group Inc., IGI Global): New
York, NY, USA. doi: 10.4018/jdwm.2006040101. CiteSeer
x
: 10.1.1.85.5014.
2463. S. H. Shami, I. M. A. Kirkwood, and Mark C. Sinclair. Evolving Simple Fault-Tolerant
Routing Rules using Genetic Programming. Electronics Letters, 33(17):14401441, Au-
gust 14, 1997, Institution of Engineering and Technology (IET): Stevenage, Herts, UK.
doi: 10.1049/el:19970996. See also [1542].
2464. Yun-Wei Shang and Yu-Huang Qiu. A Note on the Extended Rosenbrock Function. Evo-
lutionary Computation, 14(1):119126, Spring 2006, MIT Press: Cambridge, MA, USA.
doi: 10.1162/evco.2006.14.1.119. PubMed ID: 16536893.
2465. Claude Elwood Shannon. A Mathematical Theory of Communication. Bell System Technical
Journal, 27:379423/623656, JulyOctober 1948, Bell Laboratories: Berkeley Heights, NJ,
USA. Fully available at http://plan9.bell-labs.com/cm/ms/what/shannonday/
paper.html [accessed 2007-09-15]. Reprinted in [2466, 2467, 2521].
2466. Claude Elwood Shannon, author. Neil James Alexander Sloane and Aaron D. Wyner, ed-
itors. Claude Elwood Shannon: Collected Papers. Institute of Electrical and Electronics
Engineers (IEEE) Press: New York, NY, USA, 1993. isbn: 0780304349. Google Books
ID: 06QKAAAACAAJ. OCLC: 26403297, 246915902, and 318255507. See also [2465].
2467. Claude Elwood Shannon and Warren Weaver. The Mathematical Theory of Communication.
University of Illinois Press (UIP): Champaign, IL, USA, 19491962. isbn: 0252725468
1142 REFERENCES
and 0252725484. Google Books ID: BHi4OgAACAAJ, H1MiAAAACAAJ, VB COwAACAAJ,
ZiYIAQAAIAAJ, and dk0n eGcqsUC. OCLC: 13553507, 250803800, and 318164805.
See also [2465].
2468. Nicholas Peter Sharples. Evolutionary Approaches to Adaptive Protocol Design. In The
12th White House Papers Graduate Research in Cognitive and Computing Sciences at Sus-
sex [2139], pages 6062, 1999. See also [2470].
2469. Nicholas Peter Sharples. Evolutionary Approaches to Adaptive Protocol Design. PhD thesis,
University of Sussex, School of Cognitive Science: Brighton, UK, August 20012003. Google
Books ID: -BA3HAAACAAJ. OCLC: 59295838 and 195331508. asin: B001ABO1DK. See
also [2470].
2470. Nicholas Peter Sharples and Ian Wakeman. Protocol Construction Using Genetic Search
Techniques. In EvoWorkshops00 [464], pages 7395, 2000. doi: 10.1007/3-540-45561-2 23.
See also [2469].
2471. Jude W. Shavlik, editor. Proceedings of the 15th International Conference on Machine Learn-
ing (ICML98), July 2427, 1998, Madison, WI, USA. Morgan Kaufmann Publishers Inc.:
San Francisco, CA, USA. isbn: 1-55860-556-8.
2472. Katharine Jane Shaw. Using Genetic Algorithms for Practical Multi-Objective Production
Schedule Optimisation. PhD thesis, University of Sheeld, Department of Automatic Control
and Systems Engineering: Sheeld, UK, 1997. OCLC: 53552498. asin: B001AJODJE.
2473. Katharine Jane Shaw and Peter J. Fleming. Including Real-Life Problem Preferences in Ge-
netic Algorithms to Improve Optimisation of Production Schedules. In GALESIA97 [3056],
pages 239244, 1997. INSPEC Accession Number: 5780801.
2474. J. Shekel. Test Functions for Multimodal Search Techniques. In Fifth An-
nual Princeton Conference on Information Science and Systems [2222], pages 354
359, 1971. Partly available at http://en.wikipedia.org/wiki/Shekel_function
and http://www-optima.amp.i.kyoto-u.ac.jp/member/student/hedar/Hedar_
files/TestGO_files/Page2354.htm [accessed 2007-11-06].
2475. Proceedings of the Third Joint Conference on Information Science (JCIS 1997), Section: The
First International Workshop on Frontiers in Evolutionary Algorithms (FEA98), March 1
5, 1997, Sheraton Imperial Hotel & Convention Center: Research Triangle Park, NC, USA.
Workshop held in conjunction with Third Joint Conference on Information Sciences.
2476. David J. Sheskin. Handbook of Parametric and Nonparametric Statistical Procedures. Chap-
man & Hall: London, UK and CRC Press, Inc.: Boca Raton, FL, USA, 2nd/3rd edi-
tion, 2004. isbn: 0203489535, 0849331196, 1-58488-133-X, and 1-58488-440-1.
Google Books ID: L9c4IAAACAAJ, bmwhcJqq01cC, t6smAAAACAAJ, and tasmAAAACAAJ.
OCLC: 42643434, 52134708, 247821285, and 265211382.
2477. Amit P. Sheth, Steen Staab, Mike Dean, Massimo Paolucci, Diana Maynard, Timothy W.
Finin, and Krishnaprasad Thirunarayan, editors. Proceedings of the 7th International Seman-
tic Web Conference The Semantic Web (ISWC08), October 2630, 2008, Kongresszen-
trum: Karlsruhe, Germany, volume 5318 in Information Systems and Application, incl. In-
ternet/Web and HCI (SL 3), Lecture Notes in Computer Science (LNCS). Springer-Verlag
GmbH: Berlin, Germany. isbn: 3-540-88563-3. Google Books ID: -YeUh7-PCkgC. Library
of Congress Control Number (LCCN): 2008937502.
2478. Masaya Shinkai, Arturo Hernandez Aguirre, and Kiyoshi Tanaka. Mutation Strategy Im-
proves GAs Performance on Epistatic Problems. In CEC02 [944], pages 968973, volume 1,
2002. doi: 10.1109/CEC.2002.1007056.
2479. Rob Shipman. Genetic Redundancy: Desirable or Problematic for Evolutionary Adaptation?
In ICANNGA99 [801], pages 111, 1999. CiteSeer
x
: 10.1.1.32.2032.
2480. Rob Shipman, Mark Shackleton, Marc Ebner, and Richard A. Watson. Neutral Search
Spaces for Articial Evolution: A Lesson from Life. In Articial Life VII [246], pages
162167, 2000. Fully available at http://homepages.feis.herts.ac.uk/
nehaniv/
al7ev/shipmanUH.ps and http://www.demo.cs.brandeis.edu/papers/alife7_
shipman.ps [accessed 2011-12-05]. CiteSeer
x
: 10.1.1.17.664.
2481. Rob Shipman, Mark Shackleton, and Inman Harvey. The Use of Neutral Genotype-Phenotype
Mappings for Improved Evolutionary Search. BT Technology Journal, 18(4):103111, Octo-
ber 2000, Springer Netherlands: Dordrecht, Netherlands. doi: 10.1023/A:1026714927227.
CiteSeer
x
: 10.1.1.9.5548.
2482. Shinichi Shirakawa and Tomoharu Nagao. Graph Structured Program Evolu-
REFERENCES 1143
tion: Evolution of Loop Structures. In GPTP09 [2309], pages 177194, 2009.
doi: 10.1007/978-1-4419-1626-6 11. Fully available at http://www.cscs.umich.edu/
PmWiki/Farms/GPTP-09/uploads/Main/shirakawa-03-24-2009.pdf [accessed 2010-11-
21].
2483. Amit Shukla, Prasad M. Deshpande, and Jerey F. Naughton. Materialized View Selection
for Multidimensional Datasets. In VLDB98 [1151], pages 488499, 1998. Fully available
at http://www.vldb.org/conf/1998/p488.pdf [accessed 2011-04-10].
2484. Patrick Siarry and Gerard Berthiau. Fitting of Tabu Search to Optimize Func-
tions of Continuous Variables. International Journal for Numerical Methods in En-
gineering, 40(13):24492457, 1997, Wiley Interscience: Chichester, West Sussex, UK.
doi: 10.1002/(SICI)1097-0207(19970715)40:13<2449::AID-NME172>3.0.CO;2-O.
2485. Patrick Siarry and Zbigniew Michalewicz, editors. Advances in Metaheuristics for Hard
Optimization, Natural Computing Series. Springer New York: New York, NY, USA,
November 2007. doi: 10.1007/978-3-540-72960-0. isbn: 3-540-72959-3. Google Books
ID: TkMR1b-VCR4C. Library of Congress Control Number (LCCN): 2007929485. Series
editors: G. Rozenberg, Thomas Back,
Agoston E. Eiben, J.N. Kok, and H.P. Spaink.
2486. Patrick Siarry, Gerard Berthiau, Fran cois Durdin, and Jacques Haussy. Enhanced Simulated
Annealing for Globally Minimizing Functions of Many-Continuous Variables. ACM Transac-
tions on Mathematical Software (TOMS), 23(2):209228, June 1997, ACM Press: New York,
NY, USA. doi: 10.1145/264029.264043.
2487. Wojciech Wladyslaw Siedlecki and Jack Sklansky. Constrained Genetic Optimization via
Dynamic Reward-Penalty Balancing and its Use in Pattern Recognition. In ICGA89 [2414],
pages 141150, 1989. See also [2488].
2488. Wojciech Wladyslaw Siedlecki and Jack Sklansky. Constrained Genetic Optimization via
Dynamic Reward-Penalty Balancing and its Use in Pattern Recognition. In Handbook of
Pattern Recognition and Computer Vision [539], Chapter 1.3.3, pages 108124. World Scien-
tic Publishing Co.: Singapore, 1993. See also [2487].
2489. Eric V. Siegel and John R. Koza, editors. Papers from the 1995 AAAI Fall Symposium on
Genetic Programming, November 1012, 1995, Massachusetts Institute of Technology (MIT):
Cambridge, MA, USA. AAAI Press: Menlo Park, CA, USA. isbn: 0-929280-92-X. Google
Books ID: 03UmAAAACAAJ. GBV-Identication (PPN): 226307441. AAAI Technical Report
FS-95-01.
2490. Sidney Siegel and N. John Castellan Jr. Nonparametric Statistics for The Behavioral
Sciences, Humanities/Social Sciences/Languages. McGraw-Hill: New York, NY, USA,
19561988. isbn: 0-07-057357-3 and 070573434X. Google Books ID: ElwEAAAACAAJ,
MO1lGwAACAAJ, QYFCGgAACAAJ, and YmxEAAAAIAAJ. OCLC: 16131891 and 255536918.
2491. Karl Sigurjonsson. Taboo Search Based Metaheuristic for Solving Multiple Depot VRPPD
with Intermediary Depots. Masters thesis, Technical University of Denmark (DTU), Infor-
matics and Mathematical Modelling (IMM): Lyngby, Denmark, September 1, 2008. Fully
available at http://orbit.dtu.dk/getResource?recordId=224453&objectId=1&
versionId=1 [accessed 2010-11-02].
2492. Sara Silva, James A. Foster, Miguel Nicolau, Penousal Machado, and Mario Giacobini, ed-
itors. Proceedings of the 14th European Conference on Genetic Programming (EuroGP11),
April 2729, 2011, Torino, Italy, volume 6621/2011 in Theoretical Computer Science and
General Issues (SL 1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany. doi: 10.1007/978-3-642-20407-4. Partly available at http://evostar.
dei.uc.pt/call-for-contributions/eurogp/ [accessed 2011-02-28]. Library of Congress
Control Number (LCCN): 2011925001.
2493. Kwang Mon Sim and Weng Hong Sun. Multiple Ant-Colony Optimization for Network
Routing. In CW02 [672], pages 277281, 2002. doi: 10.1109/CW.2002.1180890.
2494. Dan Simon. Optimal State Estimation: Kalman, H Innity, and Nonlinear Approaches. John
Wiley & Sons Ltd.: New York, NY, USA, June 2006. isbn: 0470045345 and 0471708585.
Google Books ID: UiMVoP 7TZkC. OCLC: 64084871 and 85821130.
2495. George Gaylord Simpson. The Baldwin Eect. Evolution International Journal of Organic
Evolution, 7(2):110117, June 1953, Society for the Study of Evolution (SSE) and Wiley
Interscience: Chichester, West Sussex, UK.
2496. Patrick K. Simpson, editor. The 1998 IEEE International Conference on Evolutionary Com-
putation (CEC98), 1998, Egan Civic & Convention Center and Anchorage Hilton Hotel:
1144 REFERENCES
Anchorage, AK, USA. IEEE Computer Society: Piscataway, NJ, USA, IEEE Computer
Society: Piscataway, NJ, USA. isbn: 0-7803-4869-9 and 0-7803-4870-2. Google
Books ID: FMRVAAAAMAAJ, OUizJgAACAAJ, and uvhJAAAACAAJ. INSPEC Accession Num-
ber: 6016643. Catalogue no.: 98TH8360. Part of [1330].
2497. Karl Sims. Articial Evolution for Computer Graphics. In SIGGRAPH91 [2702],
pages 319328, 1991. doi: 10.1145/122718.122752. Fully available at http://www.
cs.bham.ac.uk/
wbl/biblio/gp-html/sinclair_1999_
OMNTDNEGP.html [accessed 2008-07-21]. CiteSeer
x
: 10.1.1.49.453. See also [2498].
2501. Mark C. Sinclair. Node-Pair Encoding Genetic Programming for Optical Mesh Network
Topology Design. In Telecommunications Optimization: Heuristic and Adaptive Tech-
niques [640], Chapter 6, pages 99114. John Wiley & Sons Ltd.: New York, NY, USA,
2000. See also [2498].
2502. Mark C. Sinclair, David Wolfe Corne, and George D. Smith, editors. Proceedings of Evolu-
tionary Telecommunications: Past, Present and Future A Bird-of-a-Feather Workshop at
GECCO99 (GECCO99 WS), July 13, 1999, Orlando, FL, USA. Fully available at http://
uk.geocities.com/markcsinclair/etppf.html [accessed 2008-06-25]. See also [211, 2093].
2503. Gulshan Singh and Kalyanmoy Deb. Comparison of Multi-Modal Optimization Algo-
rithms based on Evolutionary Algorithms. In GECCO06 [1516], pages 13051312, 2006.
doi: 10.1145/1143997.1144200. Fully available at https://ceprofs.civil.tamu.edu/
ezechman/CVEN689/References/singh_deb_2006.pdf [accessed 2011-03-14]. Genetic algo-
rithms session.
2504. Madan G. Singh, editor. Systems and Control Encyclopedia. Pergamon Press: Ox-
ford, UK, 1987. isbn: 0-08-028709-3, 0080359337, and 0080406017. Google Books
ID: EbE9AAAACAAJ, ErE9AAAACAAJ, and re9QAAAAMAAJ.
2505. Rama Shankar Singh, Costas B. Krimbas, Diane B. Paul, and John Beatty, editors. Think-
ing about Evolution: Historical, Philosophical, and Political Perspectives. Cambridge Uni-
versity Press: Cambridge, UK, November 2000. isbn: 0521620708. Google Books
ID: HmVbYJ93d-AC. LC Classication: QH366.2 .T53 2000.
2506. Sameer Singh, Maneesha Singh, Chid Apte, and Petra Perner, editors. Pattern Recognition
and Data Mining Third International Conference on Advances in Pattern Recognition
Part I (ICAPR05), August 2225, 2005, Bath, UK, volume 3686/2005 in Lecture Notes in
Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/11551188.
isbn: 3-540-28757-4.
2507. Abhishek Sinha and David Edward Goldberg. A Survey of Hybrid Genetic and Evolu-
tionary Algorithms. IlliGAL Report 2003004, Illinois Genetic Algorithms Laboratory (Il-
liGAL), Department of Computer Science, Department of General Engineering, University
of Illinois at Urbana-Champaign: Urbana-Champaign, IL, USA, January 2003. Fully avail-
able at http://www.illigal.uiuc.edu/pub/papers/IlliGALs/2003004.ps.Z [ac-
cessed 2010-09-11].
2508. Transportation Optimization Portal TOP. SINTEF: Trondheim, Norway, October 21, 2010.
Fully available at http://www.sintef.no/Projectweb/TOP/ [accessed 2011-10-13].
2509. Moshe Sipper, Daniel Mange, and Andres Perez-Uribe, editors. Proceedings of the Sec-
ond International Conference on Evolvable Systems: From Biology to Hardware (ICES98),
September 2325, 1999, Lausanne, Switzerland, volume 1478/1998 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/BFb0057601.
REFERENCES 1145
isbn: 3-540-64954-9.
2510. Michael Sipser. Introduction to the Theory of Computation. Thomson Course Tech-
nology: Boston, MA, USA, Cengage Learning (Wadsworth Publishing Company):
Stamford, CT, USA, and Prindle, Weber, Schmidt (PWS) Publishing Company:
Boston, MA, USA, 19972006. isbn: 053-4947-28X, 0534948103, and 0619217642.
Google Books ID: -wlWAAAACAAJ, 4CR8AQAACAAJ, wlWAAAACAAJ, and eRYFAAAACAAJ.
OCLC: 35558950 and 64006340.
2511. Evren Sirin, Bijan Parsia, Dan Wu, James Hendler, and Dana Nau. HTN Planning for Web
Service Composition using SHOP2. Web Semantics: Science, Services and Agents on the
World Wide Web, 1(4):377396, October 2004, Elsevier Science Publishers B.V.: Essex, UK.
International Semantic Web Conference 2003.
2512. Evren Sirin, Bijan Parsia, and James Hendler. Template-based Composition of Semantic Web
Services. In AAAI Fall Symposium on Agents and the Semantic Web [2138], pages 8592,
2005. Fully available at http://www.mindswap.org/papers/extended-abstract.
pdf [accessed 2011-01-12]. CiteSeer
x
: 10.1.1.74.2584.
2513. Jaroslaw Skaruz and Franciszek Seredynski. Detecting Web Application Attacks with Use of
Gene Expression Programming. pages 20292035. doi: 10.1109/CEC.2009.4983190. INSPEC
Accession Number: 10688785.
2514. Jaroslaw Skaruz and Franciszek Seredynski. Web Application Security through
Gene Expression Programming. In EvoWorkshops09 [1052], pages 110, 2009.
doi: 10.1007/978-3-642-01129-0 1.
2515. Benjamin Skellett, Benjamin Cairns, Nicholas Geard, Bradley Tonkes, and Janet Wiles.
Rugged NK Landscapes Contain the Highest Peaks. In GECCO05 [304], pages 579584,
2005. CiteSeer
x
: 10.1.1.1.5011.
2516. Hendrik Skubch. Hierarchical Strategy Learning for FLUX Agents. Masters thesis, Technis-
che Universitat Dresden: Dresden, Sachsen, Germany, February 18, 2007, Michael Thielscher,
Supervisor. See also [2517].
2517. Hendrik Skubch. Hierarchical Strategy Learning for FLUX Agents: An Applied Tech-
nique. VDM Verlag Dr. M uller AG und Co. KG: Saarbr ucken, Saarland, Germany, 2006.
isbn: 3-8364-5271-5. Google Books ID: HONbJgAACAAJ and syxkPQAACAAJ. See also
[2516].
2518. Hendrik Skubch, Michael Wagner, Roland Reichle, Stefan Triller, and Kurt Geihs. Towards a
Comprehensive Teamwork Model for Highly Dynamic Domains. In ICAART10 [917], pages
121127, volume 2, 2010.
2519. Proceedings of the 3rd International Workshop on Machine Learning (ML88), 1985, Skytop,
PA, USA.
2520. Derek H. Sleeman and Peter Edwards, editors. Proceedings of the 9th International Workshop
on Machine Learning (ML92), July 13, 1992, Aberdeen, Scotland, UK. Morgan Kaufmann
Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-247-X.
2521. David Slepian, editor. Key Papers in the Development of Information Theory. Insti-
tute of Electrical and Electronics Engineers (IEEE) Press: New York, NY, USA, 1974.
isbn: 0471798525 and 0879420286. Google Books ID: AItQAAAAMAAJ, JSfdGgAACAAJ,
VPFeAQAACAAJ, and VfFeAQAACAAJ. OCLC: 940335, 214976152, and 257564453. See
also [2465].
2522. Proceedings of the 7th International Conference on Soft Computing, Evolutionary Compu-
tation, Genetic Programing, Fuzzy Logic, Rough Sets, Neural Networks, Fractals, Bayesian
Methods (MENDEL01), June 68, 2001, Brno University of Technology: Brno, Czech Re-
public. Slezsk a Univerzita V Opave, Filozocko-prrodovedecka fakulta,
Ustav informatiky:
Opava, Czech Republic. isbn: 80-7248-107-X.
2523. N. J. H. Small. Miscellanea: Marginal Skewness and Kurtosis in Testing Multivariate Nor-
mality. Journal of the Royal Statistical Society: Series C Applied Statistics, 29(1):8587,
1980, Blackwell Publishing for the Royal Statistical Society: Chichester, West Sussex, UK.
2524. Waleed W. Smari, editor. Third International Conference on Information Reuse and In-
tegration (IRI01), November 2729, 2001, Luxor Hotel: Las Vegas, NV, USA. Inter-
national Society for Computers and Their Applications, Inc. (ISCA): Cary, NC, USA.
isbn: 1-880843-41-2. Google Books ID: QnxyAAAACAAJ. OCLC: 55764490.
2525. Mikhail I. Smirnov, editor. Autonomic Communication Revised Selected Papers from
the First International IFIP Workshop (WAC04), October 1819, 2004, Berlin, Ger-
1146 REFERENCES
many, volume 3457/2005 in Computer Communication Networks and Telecommunica-
tions, Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Ger-
many. doi: 10.1007/11520184. isbn: 3-540-27417-0. Google Books ID: kE3DeVNfaMcC
and pfPiPgAACAAJ. OCLC: 61029791, 145832250, 255319050, 318300920, and
403681622. Library of Congress Control Number (LCCN): 2005928376.
2526. Alice E. Smith and David W. Coit. Penalty Functions. In Handbook of Evolutionary Com-
putation [171], Chapter C 5.2. Oxford University Press, Inc.: New York, NY, USA, Institute
of Physics Publishing Ltd. (IOP): Dirac House, Temple Back, Bristol, UK, and CRC Press,
Inc.: Boca Raton, FL, USA, 1997. Fully available at http://www.cs.cinvestav.mx/
lvs2/
Papers/gtsp.pdf and http://www.lehigh.edu/
lvs2/Papers/gtsp_ejor.pdf [ac-
cessed 2010-11-22]. CiteSeer
x
: 10.1.1.1.9730, 10.1.1.71.5810, and 10.1.1.87.6258.
2541. Marcus Henrique Soares Mendes, Gustavo Lus Soares, and Joao Antonio de Vasconcelos.
PID Step Response Using Genetic Programming. In SEAL10 [2585], pages 359368, 2010.
doi: 10.1007/978-3-642-17298-4 37.
2542. Elliott Sober. The Two Faces of Fitness. In Thinking about Evolution: Historical, Philo-
sophical, and Political Perspectives [2505], Chapter 15, pages 309321. Cambridge University
Press: Cambridge, UK, 2000. Fully available at http://philosophy.wisc.edu/sober/
tff.pdf [accessed 2008-08-11].
2543. Proceedings of the twelfth annual ACM-SIAM Symposium on Discrete Algorithms, 2001,
Washington, DC, USA. Society for Industrial and Applied Mathematics (SIAM): Philadel-
phia, PA, USA. isbn: 0-89871-490-7.
2544. AISB 2002 Convention: Logic, Language and Learning (AISB02), April 35, 2002, Imperial
College London: London, UK. Society for the Study of Articial Intelligence and the Sim-
ulation of Behaviour (SSAISB): Chichester, West Sussex, UK. Fully available at http://
www.aisb.org.uk/publications/proceedings.shtml [accessed 2008-09-10].
2545. AISB 2003 Convention: Cognition in Machines and Animals (AISB03), April 711, 2003,
University of Wales: Aberystwyth, Wales, UK. Society for the Study of Articial Intelligence
and the Simulation of Behaviour (SSAISB): Chichester, West Sussex, UK. Fully available
at http://www.aisb.org.uk/publications/proceedings.shtml [accessed 2008-09-10].
2546. AISB 2004 Convention: Motion, Emotion and Cognition (AISB04), March 29April 1, 2003,
University of Leeds: Leeds, UK. Society for the Study of Articial Intelligence and the
Simulation of Behaviour (SSAISB): Chichester, West Sussex, UK. Fully available at http://
www.aisb.org.uk/publications/proceedings.shtml [accessed 2008-09-10].
2547. Social Intelligence and Interaction in Animals, Robots and Agents (AISB05), April 1215,
2005, University of Hertfordshire: Hateld, England, UK. Society for the Study of Arti-
cial Intelligence and the Simulation of Behaviour (SSAISB): Chichester, West Sussex, UK.
Fully available at http://www.aisb.org.uk/publications/proceedings.shtml [ac-
cessed 2008-09-10].
2548. Adaptation in Articial and Biological Systems (AISB06), April 36, 2005, University of
Bristol: Bristol, UK. Society for the Study of Articial Intelligence and the Simulation of
Behaviour (SSAISB): Chichester, West Sussex, UK. Fully available at http://www.aisb.
org.uk/publications/proceedings.shtml [accessed 2008-09-10].
2549. Articial and Ambient Intelligence (AISB07), April 14, 2007, Newcastle University: New-
castle upon Tyne, UK. Society for the Study of Articial Intelligence and the Simulation of
Behaviour (SSAISB): Chichester, West Sussex, UK. Fully available at http://www.aisb.
org.uk/publications/proceedings.shtml [accessed 2008-09-10].
2550. Bambang I. Soemarwoto, O. J. Boelens, M. Allan, M. T. Arthur, K. B utesch, N. Ceresola,
and W. Fritz, editors. 21st Applied Aerodynamics Conference, Towards the Simulation of
Unsteady Manoeuvre Dominated by Vortical Flow, Common Exercise I of WEAG THALES
JP12.15 (AIAA03), June 2326, 2003, Hilton Walt Disney World, Walt Disney World Resort:
Orlando, FL, USA. American Institute of Aeronautics and Astronautics (AIAA): Reston, VA,
USA. isbn: 1563476002 and 9781563476006.
2551. Richard Soland, Ambrose Goicoechea, L. Duckstein, and Stanley Zionts, editors. Proceed-
ings of the 9th International Conference on Multiple Criteria Decision Making: Theory
and Applications in Business, Industry, and Government (MCDM90), August 58, 1990,
Fairfax, VA, USA. Springer New York: New York, NY, USA. isbn: 0-387-97805-4
and 3-540-97805-4. OCLC: 25282714, 232664357, 471769870, 633632497, and
638193262. Library of Congress Control Number (LCCN): 92002703. GBV-Identication
(PPN): 120911701. Published in July 1992.
2552. Ashu M. G. Solo, editor. Proceedings of the 2011 International Conference on Genetic and
Evolutionary Methods (GEM11), July 1821, 2011, Las Vegas, NV, USA.
2553. Dawn Xiaodong Song. A Linear Genetic Programming Approach to Intrusion Detection.
1148 REFERENCES
Masters thesis, Dalhousie University: Halifax, NS, Canada, March 2003, Malcom Ian Hey-
wood and A. Nur Zincir-Heywood, Advisors. Fully available at http://users.cs.dal.
ca/
mheywood/X-files/
Publications/27242325.pdf [accessed 2008-06-16]. CiteSeer
x
: 10.1.1.61.7475. See also
[2553].
2556. Il-Yeol Song and Torben Bach Pedersen, editors. Proceedings of the ACM Tenth Interna-
tional Workshop on Data Warehousing and OLAP (DOLAP07), November 9, 2007, Lisbon,
Portugal. ACM Press: New York, NY, USA. isbn: 978-1-59593-827-5. Part of [28].
2557. Il-Yeol Song and Karen C. Davis, editors. Proceedings of the 7th ACM International Workshop
on Data Warehousing and OLAP (DOLAP04), November 1213, 2004, Hyatt Arlington
Hotel: Washington, DC, USA. ACM Press: New York, NY, USA. isbn: 1-58113-977-2.
Part of [1142].
2558. Il-Yeol Song and Dimitri Theodoratos, editors. Proceedings of the Fifth International Work-
shop on Data Warehousing and OLAP (DOLAP02), November 8, 2002, McLean, VA, USA.
ACM Press: New York, NY, USA. Part of [25? ].
2559. Branko Soucek and IRIS Group, editors. Dynamic, Genetic, and Chaotic Programming: The
Sixth-Generation, Sixth Generation Computer Technologies. Wiley Interscience: Chichester,
West Sussex, UK, April 1992. isbn: 047155717X. Partly available at http://www.
amazon.com/gp/reader/047155717X/ref=sib_dp_pt/002-6076954-4198445#
reader-link [accessed 2008-05-29]. Google Books ID: tIFQAAAAMAAJ.
2560. Terence Soule and James A. Foster. Removal Bias: a New Cause of Code Growth
in Tree Based Evolutionary Programming. In CEC98 [2496], pages 781186, 1998.
doi: 10.1109/ICEC.1998.700151. CiteSeer
x
: 10.1.1.35.3659. INSPEC Accession Num-
ber: 6016655.
2561. James C. Spall. Introduction to Stochastic Search and Optimization, Estimation, Simulation,
and Control Wiley-Interscience Series in Discrete Mathematics and Optimization. Wiley
Interscience: Chichester, West Sussex, UK, rst edition, June 2003. isbn: 0-471-33052-3
and 0-471-72213-8. Google Books ID: f66OIvvkKnAC. OCLC: 50773216, 51235522,
474647590, and 637018778. Library of Congress Control Number (LCCN): 2002038049.
LC Classication: QA274 .S63 2003.
2562. Bruce M. Spatz and Gregory J. E. Rawlins, editors. Proceedings of the First Workshop on
Foundations of Genetic Algorithms (FOGA90), July 1518, 1990, Indiana University, Bloom-
ington Campus: Bloomington, IN, USA. Morgan Kaufmann Publishers Inc.: San Francisco,
CA, USA. isbn: 1-55860-170-8. Google Books ID: Df12yLrlUZYC. OCLC: 24168098,
263581771, and 311490755. Published July 1, 1991.
2563. William M. Spears and Kenneth Alan De Jong. On the Virtues of Parameterized Uniform
Crossover. In ICGA91 [254], pages 230236, 1991. Fully available at http://www.mli.
gmu.edu/papers/91-95/91-18.pdf [accessed 2010-08-02]. CiteSeer
x
: 10.1.1.51.8141.
2564. William M. Spears and Kenneth Alan De Jong. Using Genetic Algorithms for Supervised Con-
cept Learning. In TAI90 [1358], pages 335341, 1990. doi: 10.1109/TAI.1990.130359. Fully
available at http://www.cs.uwyo.edu/
lasCCS/
pubs/AiGP2-post-final-e.pdf, http://helios.hampshire.edu/lspector/
pubs/AiGP2-post-final-e.pdf, and http://www.cs.bham.ac.uk/
wbl/biblio/
gp-html/spector_1996_aigp2.html [accessed 2010-08-21]. CiteSeer
x
: 10.1.1.39.9677.
2568. Lee Spector. Automatic Quantum Computer Programming A Genetic Programming Ap-
proach, volume 7 in Genetic Programming Series. Springer Science+Business Media, Inc.:
New York, NY, USA, paperback edition 2007 edition, 2006. isbn: 0-387-36496-X and
0-387-36791-8. Google Books ID: 9wxzm8Gm-fUC and mEKfvtxmn9MC. Library of
Congress Control Number (LCCN): 2006931640. Series editor: John Koza.
2569. Lee Spector, William B. Langdon, Una-May OReilly, and Peter John Angeline, editors.
Advances in Genetic Programming, volume 3 in Complex Adaptive Systems, Bradford Books.
MIT Press: Cambridge, MA, USA, July 16, 1996. isbn: 0-262-19423-6. Google Books
ID: 5Qwbal3AY6oC. OCLC: 29595260, 42274498, 42579104, 60710976, 60863107,
154701926, and 222641812.
2570. Lee Spector, Erik D. Goodman, Annie S. Wu, William B. Langdon, Hans-Michael Voigt,
Mitsuo Gen, Sandip Sen, Marco Dorigo, Shahram Pezeshk, Max H. Garzon, and Ed-
mund K. Burke, editors. Proceedings of the Genetic and Evolutionary Computation Confer-
ence (GECCO01), July 711, 2001, Holiday Inn Golden Gateway Hotel: San Francisco, CA,
USA. Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-774-9.
Google Books ID: 81QKAAAACAAJ and cYVQAAAAMAAJ. See also [1104].
2571. Herbert Spencer. The Principles of Biology, volume 1. D. Appleton and Company: New York,
NY, USA and Williams and Norgate: London & Edinburgh, UK, 1st edition, 18641868. Fully
available at http://books.google.com/books?id=rHoOAAAAYAAJ and http://www.
archive.org/details/ThePrinciplesOfBiology [accessed 2009-06-11].
2572. W. Spendley, G. R. Hext, and F. R. Himsworth. Sequential Application of Simplex Designs
in Optimisation and Evolutionary Operation. Technometrics, 4(4):441461, November 1962,
American Statistical Association (ASA): Alexandria, VA, USA and American Society for
Quality (ASQ): Milwaukee, WI, USA. OCLC: 486202935. JSTOR Stable ID: 1266283.
2573. Christian Spieth, Felix Streichert, Nora Speer, and Andreas Zell. Utilizing an Island
Model for EA to Preserve Solution Diversity for Inferring Gene Regulatory Networks. In
CEC04 [1369], pages 146151, volume 1, 2004. doi: 10.1109/CEC.2004.1330850. Fully
available at http://www-ra.informatik.uni-tuebingen.de/software/JCell/
publications.html [accessed 2007-08-24].
2574. Ralph H. Sprague, Jr., editor. Proceedings of the 33rd Hawaii International Conference
on System Sciences (HICSS00), January 47, 2000, Maui, HI, USA. IEEE Computer So-
ciety: Washington, DC, USA. isbn: 0-7695-0493-0, 0769504949, and 0769504957.
Google Books ID: 7QIEAAAACAAJ and IK9VAAAAMAAJ. OCLC: 43892251, 228269935,
and 423974973. Order No.: PR00493.
2575. Genetic Programming Theory and Practice V, Proceedings of the Genetic Programming The-
ory Practice 2007 Workshop (GPTP07), May 1719, 2007, University of Michigan, Center
for the Study of Complex Systems (CSCS): Ann Arbor, MI, USA, Genetic and Evolution-
ary Computation. Springer US: Boston, MA, USA and Kluwer Academic Publishers: Nor-
well, MA, USA. Partly available at http://www.cscs.umich.edu/gptp-workshops/
gptp2007/ [accessed 2007-09-28].
2576. Proceedings of the V International Workshop on Nature Inspired Cooperative Strategies for
Optimization (NICSO11), October 2022, 2011, Cluj-Napoca, Romania, Studies in Compu-
tational Intelligence. Springer-Verlag: Berlin/Heidelberg. Partly available at http://www.
nicso2011.org/ [accessed 2011-05-25].
2577. Seclected Papers from the First Asia-Pacic Conference on Simulated Evolution and
Learning (SEAL96), November 912, 1996, Taejon, South Korea, volume 1285/1997 in
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/BFb0028514.
2578. Sixth International Workshop on Learning Classier Systems (IWLCS03), July 1216, 2003,
Holiday Inn Chicago: Chicago, IL, USA. Springer-Verlag GmbH: Berlin, Germany. Held
during GECCO-2003 (. Part of [484, 485]. See also [1589].
1150 REFERENCES
2579. The Tenth International Workshop on Learning Classier Systems (IWLCS07), July 8, 2007,
University College London (UCL), Department of Computer Science: London, UK, Lecture
Notes in Articial Intelligence (LNAI, SL7), Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. Held in association with GECCO-2007 (. See also
[2699, 2700].
2580. Sixth International Conference on Ant Colony Optimization and Swarm Intelligence
(ANTS08), September 2228, 2008, Brussels, Belgium, Lecture Notes in Computer Science
(LNCS). Springer-Verlag GmbH: Berlin, Germany.
2581. Learning and Intelligent OptimizatioN (LION 4), January 1822, 2010, Ca Doln Building,
Universita Ca Foscari: Venice, Italy, Lecture Notes in Computer Science (LNCS). Springer-
Verlag GmbH: Berlin, Germany.
2582. Proceedings of the 35th International Symposium on Mathematical Foundations of Computer
Science (MFCS10), August 2129, 2010, Masaryk University, Faculty of Informatics: Brno,
Czech Republic, Advanced Research in Computing and Software Science (ARCoSS), Lecture
Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
2583. Proceedings of the 9th Mexican International Conference on Articial Intelligence (MI-
CAI10), November 813, 2010, Autonomous University of Hidalgo State: Pachuca, Mexico,
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
2584. Proceedings of the 9th International Symposium on Experimental Algorithms (SEA10),
May 2022, 2010, Hotel Continental Terme: Ischia Porto, Ischa Island, Naples, Italy, volume
6049 in Programming and Software Engineering Series, Lecture Notes in Computer Sci-
ence (LNCS). Springer-Verlag GmbH: Berlin, Germany. isbn: 3642131921. Google Books
ID: XerGSAAACAAJ.
2585. Proceedings of the Eighth International Conference on Simulated Evolution And Learning
(SEAL10), December 14, 2010, Indian Institute of Technology Kanpur (IIT): Kanpur,
Uttar Pradesh, India, Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany.
2586. Evolution Articielle: Proceedings of the 10th Biannual International Conference on Articial
Evolution (AE11), October 2426, 2011, Angers Congress Centre: Angers, France, Lecture
Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. Partly avail-
able at http://www.info.univ-angers.fr/ea2011/ [accessed 2011-03-30].
2587. Proceedings of the Fourth Conference on Articial General Intelligence (AGI11), August 3
6, 2011, Mountain View, CA, USA, Lecture Notes in Articial Intelligence (LNAI, SL7),
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
2588. Proceedings of the 4th European Event on Bio-Inspired Algorithms for Continuous Param-
eter Optimisation (EvoNUM11), 2011, Torino, Italy. Springer-Verlag GmbH: Berlin, Ger-
many. Partly available at http://evostar.dei.uc.pt/call-for-contributions/
evoapplications/evonum/ [accessed 2011-02-28]. Part of [788? ].
2589. Proceedings of the 10th International Conference on Adaptive and Natural Computing Al-
gorithms (ICANNGA11), April 1416, 2011, University of Ljubljana: Ljubljana, Slovenia,
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
2590. Proceedings of the 7th Semantic Web Services Challenge Workshop (SWSC08), October 26,
2008, Kongresszentrum: Karlsruhe, Germany. Springer-Verlag GmbH: Berlin, Germany and
Stanford University, Computer Science Department, Stanford Logic Group: Stanford, CA,
USA. Fully available at http://sws-challenge.org/wiki/index.php/Workshop_
Karlsruhe [accessed 2010-12-12]. Part of [2166, 2477].
2591. Proceedings of the 11th UK Performance Engineering Workshop (UKPEW95), September 5
9, 1995, Liverpool John Moores University: Liverpool, UK. Springer-Verlag London Limited:
London, UK.
2592. Giovanni Squillero. MicroGP An Evolutionary Assembly Program Generator. Genetic
Programming and Evolvable Machines, 6(3):247263, September 2005, Springer Nether-
lands: Dordrecht, Netherlands. Imprint: Kluwer Academic Publishers: Norwell, MA, USA.
doi: 10.1007/s10710-005-2985-x.
2593. N. S. Sridharan, editor. Proceedings of the 11th International Joint Conference on Arti-
cial Intelligence (IJCAI89-I), August 1989, Detroit, MI, USA, volume 1. Morgan Kauf-
mann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-094-9. Fully avail-
able at http://dli.iiit.ac.in/ijcai/IJCAI-89-VOL1/CONTENT/content.htm [ac-
cessed 2008-04-01]. See also [2594].
REFERENCES 1151
2594. N. S. Sridharan, editor. Proceedings of the 11th International Joint Conference on Arti-
cial Intelligence (IJCAI89-II), August 1989, Detroit, MI, USA, volume 2. Morgan Kauf-
mann Publishers Inc.: San Francisco, CA, USA. isbn: 1-55860-094-9. Fully avail-
able at http://dli.iiit.ac.in/ijcai/IJCAI-89-VOL2/CONTENT/content.htm [ac-
cessed 2008-04-01]. See also [2593].
2595. International Conference on Swarm, Evolutionary and Memetic Computing (SEMCCO10),
December 1618, 2010, SRM University, Department of Electrical and Electronics Engineer-
ing: Chennai, India.
2596. Marc St-Hilaire, Steven Chamberland, and Samuel Pierre. A Local Search Heuristic for
the Global Planning of UMTS Networks. In IWCMC06 [2082], pages 14051410, 2006.
doi: 10.1145/1143549.1143831. SESSION: R2-D: general symposium. See also [2597].
2597. Marc St-Hilaire, Steven Chamberland, and Samuel Pierre. A Tabu Search Heuristic for
the Global Planning of UMTS Networks. In WiMob06 [2176], pages 148151, 2006.
doi: 10.1109/WIMOB.2006.1696339. INSPEC Accession Number: 9132969. See also [2596].
2598. Peter F. Stadler. Fitness Landscapes. In Biological Evolution and Statistical Physics [1688],
pages 183204. Springer-Verlag: Berlin/Heidelberg, 2002. doi: 10.1007/3-540-45692-9 10.
Fully available at http://citeseer.ist.psu.edu/old/stadler02fitness.html
and http://www.bioinf.uni-leipzig.de/
studla/Publications/PREPRINTS/
01-pfs-004.pdf [accessed 2009-06-29]. Based on his talk The Structure of Fitness Landscapes
given at the International Workshop on Biological Evolution and Statistical Physics, May
1014, 2000, located at the Max-Planck-Institut f ur Physik komplexer Systeme, Nothnitzer
Str. 38, D-01187 Dresden, Germany.
2599. Peter Stagge and Christian Igel. Structure Optimization and Isomorphisms. In Proceed-
ings of the Second Evonet Summer School on Theoretical Aspects of Evolutionary Comput-
ing [1480], pages 409422. Springer New York: New York, NY, USA, 1999, University of
Antwerp (RUCA): Antwerp, Belgium. Fully available at http://citeseer.ist.psu.
edu/old/520775.html [accessed 2009-07-10].
2600. Proceedings of AAAI Spring Symposium on Parallel Models of Intelligence: How Can Slow
Components Think So Fast?, March 2224, 1988, Stanford, CA, USA. OCLC: 21247441.
2601. Kenneth Owen Stanley and Risto Miikkulainen. A Taxonomy for Articial Embryogeny. Arti-
cial Life, 9(2):93130, 2003, MIT Press: Cambridge, MA, USA. Fully available at http://
nn.cs.utexas.edu/downloads/papers/stanley.alife03.pdf [accessed 2010-08-03].
2602. Johannes Starlinger, Florian Leitner, Alfonso Valencia, and Ulf Leser. SOA-Based Integration
of Text Mining Services. In SERVICES Cup09 [1351], pages 99106, 2009. doi: 10.1109/SER-
VICES-I.2009.100. INSPEC Accession Number: 10982213.
2603. Ioannis Stavrakakis and Mikhail I. Smirnov, editors. Revised and Selected Papers
from the Second IFIP Workshop on Autonomic Communication (WAC05), October 2
5, 2005, Vouliagmeni, Athens, Greece, volume 3854/2006 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/11687818.
isbn: 3-540-32992-7. Google Books ID: CqEULQAACAAJ. OCLC: 68018967, 145829334,
150400331, 181547043, 314893626, 318300921, 318300921, and 403681669. Library
of Congress Control Number (LCCN): 2006921997. Post-workshop proceedings of the Sec-
ond IFIP TC6 WG6.3 and WG6.6 International Workshop on Autonomic Communication.
2604. Adam Stawowy. Evolutionary based Heuristic for Bin Packing Problem. Computers & Indus-
trial Engineering, 55(2):465474, September 2008, Elsevier Science Publishers B.V.: Essex,
UK. Imprint: Pergamon Press: Oxford, UK. doi: 10.1016/j.cie.2008.01.007.
2605. Pawel A. Stefanski. Genetic Programming Using Abstract Syntax Trees. self-published, 1993.
Fully available at http://www.cs.bham.ac.uk/
wbl/biblio/gp-html/icga93-gp_
stefanski.html [accessed 2007-08-15]. Notes from Genetic Programming Workshop at ICGA-
93. See also [969].
2606. Irene A. Stegun, author. Milton Abramowitz, editor. Handbook of Mathematical Func-
tions with Formulas, Graphs, and Mathematical Tables. Dover Publications: Mineola, NY,
USA, 1964. isbn: 0486612724. Google Books ID: MtU8uP7XMvoC and USNBNAAACAAJ.
OCLC: 18003605, 174191235, 185061828, 224642767, 232366868, 256560954, and
299883180.
2607. Gerd Steierwald, Hans Dieter K unne, and Walter Vogt. Stadtverkehrsplanung: Grundla-
gen, Methoden, Ziele. Springer-Verlag GmbH: Berlin, Germany, 2., neu bearbeitete und
erweiterte auage edition, 2005. doi: 10.1007/b138349. isbn: 3-540-40588-7. Google
1152 REFERENCES
Books ID: 1ohJ05DCZ2oC. OCLC: 630487728. GBV-Identication (PPN): 524942374
and 557339782.
2608. Daniel L. Stein, editor. Lectures in the Sciences of Complexity: The Proceedings of
the 1988 Complex Systems Summer School, JuneJuly 1988, Santa Fe, NM, USA, Santa
Fe Institue Studies in the Sciences of Complexity. Addison-Wesley Longman Publishing
Co., Inc.: Boston, MA, USA and Westview Press. isbn: 0201510154. Google Books
ID: T2GIPQAACAAJ, VaB5OwAACAAJ, and aBPCAAAACAAJ. Published in September 1989.
2609. Tammy I. Stein, editor. Proceedings of the International Geoscience and Remote Sens-
ing Symposium, Quantitative Remote Sensing for Science and Applications (IGARSS95),
July 1014, 1995, Congress Center: Firenze, Italy. IEEE Computer Society: Piscataway,
NJ, USA. isbn: 0-7803-2567-2. Google Books ID: 2vVVAAAAMAAJ and C VVAAAAMAAJ.
OCLC: 36158995, 223757670, and 421884354. Catalogue no.: 95CH35770.
2610. Ralph E. Steuer. Multiple Criteria Optimization: Theory, Computation and Application.
R. E. Krieger Publishing Company: Malabar, FL, USA, reprint edition, August 1989.
isbn: 0894643932. Google Books ID: r5P0AQAACAAJ.
2611. Terry Stewart. Extrema Selection: Accelerated Evolution on Neutral Networks. In
CEC01 [1334], pages 2529, volume 1, 2001. doi: 10.1109/CEC.2001.934366. Fully avail-
able at http://rob.ccmlab.ca:8080/
terry/papers/2001-Extrema_Selection.
pdf [accessed 2009-07-10]. CiteSeer
x
: 10.1.1.2.9166.
2612. Theo Stewart, editor. Proceedings of the 13th International Conference on Multiple Crite-
ria Decision Making: Trends in Multicriteria Decision Making (MCDM97), January 610,
1997, University of Cape Town: Cape Town, South Africa, volume 465 in Lecture Notes in
Economics and Mathematical Systems. Springer-Verlag: Berlin/Heidelberg. Partly available
at http://www.uct.ac.za/depts/maths/mcdm97 [accessed 2007-09-10]. Published January
15, 1999.
2613. T. R. Stickland, C. M. N. Tofts, and Nigel R. Franks. A Path Choice Algorithm for Ants.
Naturwissenschaften The Science of Nature, 79(12):567572, December 1992, Springer-
Verlag: Berlin/Heidelberg. doi: 10.1007/BF01131415.
2614. Adrian Stoica, Jason D. Lohn, and Didier Keymeulen, editors. Evolvable Hardware Pro-
ceedings of 1st NASA/DoD Workshop on Evolvable Hardware (EH99), June 1921, 1999, Jet
Propulsion Laboratory, California Institute of Technology (Caltech): Pasadena, CA, USA.
IEEE Computer Society: Washington, DC, USA. isbn: 0-7695-0256-3.
2615. Robert Roth Stoll. Set Theory and Logic. Dover Publications: Mineola, NY, USA, reprint
edition, June 1979. isbn: 0-4866-3829-4. Google Books ID: 3-nrPB7BQKMC.
2616. Tobias Storch and Ingo Wegener. Real Royal Road Functions for Constant Population Size.
In GECCO03-II [485], pages 14061417, 2003. doi: 10.1007/3-540-45110-2 14. See also
[2617, 2618].
2617. Tobias Storch and Ingo Wegener. Real Royal Road Functions for Constant Population
Size. Reihe Computational Intelligence: Design and Management of Complex Technical Pro-
cesses and Systems by Means of Computational Intelligence Methods CI-167/04, Universitat
Dortmund, Collaborative Research Center (Sonderforschungsbereich) 531: Dortmund, North
Rhine-Westphalia, Germany, February 2004. Fully available at http://hdl.handle.net/
2003/5456 [accessed 2008-07-22]. issn: 1433-3325. See also [2616, 2618].
2618. Tobias Storch and Ingo Wegener. Real Royal Road Functions for Constant Population Size.
Theoretical Computer Science, 320(1):123134, June 2, 2004, Elsevier Science Publishers
B.V.: Essex, UK, G. Ausiello and D. Sannella, editors. doi: 10.1016/j.tcs.2004.03.047. See
also [2616, 2617].
2619. Rainer M. Storn. On the Usage of Dierential Evolution for Function Optimiza-
tion. In NAFIPS96 [2530], pages 519523, 1996. doi: 10.1109/NAFIPS.1996.534789.
Fully available at https://eprints.kfupm.edu.sa/55484/1/55484.pdf and www.
icsi.berkeley.edu/
storn/
TR-95-012.pdf [accessed 2009-07-04]. CiteSeer
x
: 10.1.1.1.9696.
2622. Felix Streichert. Evolution are Algorithmen: Implementation und Anwendungen im Asset-
Management-Bereich (Evolutionary Algorithms and their Application to Asset Management).
Masters thesis, Universitat Stuttgart, Institut A f ur Mechanik: Stuttgart, Germany, Au-
gust 2001, Arnold Kirstner and Werner Koch, Supervisors. Fully available at http://
www-ra.informatik.uni-tuebingen.de/mitarb/streiche [accessed 2007-08-17].
2623. Roman Grigorevich Strongin and Yaroslav D. Sergeyev. Global Optimization with Non-
Convex Constraints, volume 45 in Nonconvex Optimization and Its Applications. Springer
Science+Business Media, Inc.: New York, NY, USA, 2000. isbn: 0-7923-6490-2. Google
Books ID: xh GF9Dor3AC.
2624. Eleni Stroulia and Stan Matwin, editors. Advances in Articial Intelligence Proceedings
of the 14th Biennial Conference of the Canadian Society for Computational Studies of In-
telligence (AI01), June 79, 2001, Ottawa, ON, Canada, volume 2056 in Lecture Notes in
Articial Intelligence (LNAI, SL7), Lecture Notes in Computer Science (LNCS). Springer-
Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-45153-6. isbn: 3-540-42144-0.
2625. Thomas St utzle, editor. Learning and Intelligent OptimizatioN (LION 3), January 14
18, 2009, Trento, Italy, Theoretical Computer Science and General Issues (SL 1),
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/978-3-642-11169-3.
2626. Ponnuthurai Nagaratnam Suganthan, Nikolaus Hansen, J. J. Liang, Kalyanmoy Deb, Ying-
Ping Chen, Anne Auger, and Santosh Tiwari. Problem Denitions and Evaluation Crite-
ria for the CEC 2005 Special Session on Real-Parameter Optimization. KanGAL Report
2005005, Kanpur Genetic Algorithms Laboratory (KanGAL), Department of Mechanical
Engineering, Indian Institute of Technology Kanpur (IIT): Kanpur, Uttar Pradesh, India,
May 2005. Fully available at http://www.iitk.ac.in/kangal/papers/k2005005.
pdf [accessed 2007-10-07]. See also [641, 2627].
2627. Ponnuthurai Nagaratnam Suganthan, Nikolaus Hansen, J. J. Liang, Kalyanmoy Deb,
Ying-Ping Chen, Anne Auger, and Santosh Tiwari. Problem Denitions and Evaluation
Criteria for the CEC 2005 Special Session on Real-Parameter Optimization. Technical
Report May-30-05, Nanyang Technological University (NTU): Singapore, May 30, 2005.
Fully available at http://www.ntu.edu.sg/home/epnsugan/index_files/CEC-05/
Tech-Report-May-30-05.pdf [accessed 2007-10-07]. See also [641, 2626].
2628. Sarina Sulaiman, Siti Mariyam Shamsuddin, Fadni Forkan, Ajith Abraham, and Shahida
Sulaiman. Intelligent Web Caching for E-learning Log Data. In AMS09 [1349], pages 136
141, 2009. doi: 10.1109/AMS.2009.88. Fully available at http://www.softcomputing.
net/ams2009_1.pdf [accessed 2009-03-29].
2629. Andre S ulow, Nicole Drechsler, and Rolf Drechsler. Robust Multi-Objective Op-
timization in High Dimensional Spaces. In EMO07 [2061], pages 715726, 2007.
doi: 10.1007/978-3-540-70928-2 54. Fully available at http://www.informatik.
uni-bremen.de/agra/doc/konf/emo2007_RobustOptimization.pdf [accessed 2009-07-
18].
2630. Fuchun Sun, Yingxu Wang, Jianhua Lu, Bo Zhang, Witold Kinsner, and Lot A. Zadeh,
editors. Proceedings of the 9th IEEE International Conference on Cognitive Informatics
(ICCI10), July 79, 2010, Tsinghua University: Beijng, China. IEEE Computer Society
Press: Los Alamitos, CA, USA. Partly available at http://ieeexplore.ieee.org/xpl/
mostRecentIssue.jsp?punumber=5560187 [accessed 2011-02-28]. Catalogue no.: CFP10312-
CDR.
2631. Jianyong Sun, Qingfu Zhang, Jin Li, and Xin Yao. A Hybrid Estimation of Distri-
bution Algorithm for CDMA Cellular System Design. In SEAL06 [2856], pages 905
912, 2006. doi: 10.1007/11903697 114. Fully available at http://dces.essex.ac.uk/
staff/qzhang/conferencepaper/SEAL06SunZhangLIYao.pdf [accessed 2009-08-10]. See
also [2632].
2632. Jianyong Sun, Qingfu Zhang, Jin Li, and Xin Yao. A Hybrid Estimation of Distribution
Algorithm for CDMA Cellular System Design. International Journal of Computational Intel-
ligence and Applications (IJCIA), 7(2):187200, June 2008, World Scientic Publishing Co.:
Singapore and Imperial College Press Co.: London, UK. doi: 10.1142/S1469026808002235.
1154 REFERENCES
See also [2631].
2633. Xia Sun and Ziqiang Wang. An Ecient Materialized View Selection Algorithm Based on
PSO. In ISA09 [2847], pages 1114, 2009. doi: 10.1109/IWISA.2009.5072711. INSPEC
Accession Number: 10717741.
2634. Patrick David Surry. A Prescriptive Formalism for Constructing Domain-specic Evolution-
ary Algorithms. PhD thesis, University of Edinburgh, Edinburgh Parallel Computing Centre
(EPCC): Edinburgh, Scotland, UK, 1998. CiteSeer
x
: 10.1.1.39.7961. Google Books
ID: HOHxSAAACAAJ. OCLC: 281436714 and 606028198.
2635. Andrew M. Sutton, Monte Lunacek, and L. Darrell Whitley. Dierential Evolution and Non-
Separability: Using Selective Pressure to Focus Search. In GECCO07-I [2699], pages 1428
1435, 2007. doi: 10.1145/1276958.1277221. Fully available at http://www.cs.colostate.
edu/
qtqm/qtqmpapers/2007V4N2/2007V4N2_
F3.pdf [accessed 2010-12-16]. See also [2645].
2645. Heidi A. Taboada, Fatema Baheranwala, David W. Coit, and Naruemon Wattanapongsakorn.
Practical Solutions for Multi-Objective Optimization: An Application to System Reliabil-
ity Design Problems. Reliability Engineering & System Safety, 92(3):314322, March 2007,
Elsevier Science Publishers B.V.: Amsterdam, The Netherlands, European Safety and
Reliability Association (ESRA), and Safety Engineering and Risk Analysis Division
REFERENCES 1155
(SERAD) of the American Society of Mechanical Engineers (ASME): New York, NY,
USA. doi: 10.1016/j.ress.2006.04.014. Fully available at http://www.rci.rutgers.edu/
takagi/TAKAGI/
IECpaper/JCIS2K_2.pdf [accessed 2010-09-03].
2652. Hideyuki Takagi. Interactive Evolutionary Computation: Fusion of the Capacities of EC
Optimization and Human Evaluation. Proceedings of the IEEE, 89(9):12751296, Septem-
ber 2001, Institute of Electrical and Electronics Engineers (IEEE) Press: New York,
NY, USA. doi: 10.1109/5.949485. Fully available at http://www.design.kyushu-u.
ac.jp/
ketang/papers/TangMeiYao_TEVC09.pdf [ac-
cessed 2011-10-01]. CiteSeer
x
: 10.1.1.160.9949.
2670. Ke Tang, Xiaodong Li, Ponnuthurai Nagaratnam Suganthan, Zhenyu Yang, and Thomas
Weise. Benchmark Functions for the CEC2010 Special Session and Competition on Large-
REFERENCES 1157
Scale Global Optimization. Technical Report, University of Science and Technology of China
(USTC), School of Computer Science and Technology, Nature Inspired Computation and
Applications Laboratory (NICAL): Hefei,
Anhu, China, January 8, 2010. Fully available
at http://www.it-weise.de/documents/files/TLSYW2009BFFTCSSACOLSGO.pdf.
2671. Ke Tang, Pu Wang, and Tianshi Chen. Towards Maximizing The Area Under The
ROC Curve For Multi-Class Classication Problems. In AAAI11 [3], pages 483488,
2011. Fully available at http://aaai.org/ocs/index.php/AAAI/AAAI11/paper/
download/3485/3882 [accessed 2001-09-08].
2672. Eiichi Taniguchi and Russell G. Thompson, editors. Recent Advances in City Logis-
tics. Proceedings of the 4th International Conference on City Logistics, July 1214, 2005,
Langkawi, Malaysia. Elsevier Science Publishers B.V.: Amsterdam, The Netherlands.
isbn: 0-08-044799-6. Google Books ID: dMMQb83KH-EC.
2673. Eiichi Taniguchi, Russell G. Thompson, and Tadashi Yamada. Data Collection for Modelling,
Evaluating, and Benchmarking City Logistics Schemes. In Recent Advances in City Logistics.
Proceedings of the 4th International Conference on City Logistics [2672], pages 114, 2005.
2674. Ajay Kumar Tanwani and Muddassar Farooq. Performance Evaluation of Evolutionary Al-
gorithms in Classication of Biomedical Datasets. In GECCO09-II [2343], pages 2617
2624, 2009. doi: 10.1145/1570256.1570371. Fully available at http://nexginrc.org/
nexginrcAdmin/PublicationsFiles/iwlcs09-ajay.pdf [accessed 2010-07-26].
2675. Proceedings of the 12th International Conference on Parallel Problem Solving From Nature
(PPSN12), September 15, 2012, Taormina, Italy.
2676. Jose Juan Tapia, Enrique Morett, and Edgar E. Vallejo. A Clustering Genetic Algorithm
for Genomic Data Mining. In Foundations of Computational Intelligence Volume 4:
Bio-Inspired Data Mining [13], pages 249275. Springer-Verlag: Berlin/Heidelberg, 2009.
doi: 10.1007/978-3-642-01088-0 11.
2677. Jonathan Tate, Benjamin Woolford-Lim, Ian Bate, and Xin Yao. Comparing Design of
Experiments and Evolutionary Approaches to Multi-Objective Optimisation of Sensornet
Protocols. In CEC09 [1350], pages 11371144, 2009. doi: 10.1109/CEC.2009.4983074.
Fully available at ftp://ftp.cs.york.ac.uk/papers/rtspapers/R:Tate:2009a.
pdf and http://www.cercia.ac.uk/projects/research/SEBASE/pdfs/2009/
jt-bwl-ib-xy-cec2009.pdf [accessed 2009-11-26]. INSPEC Accession Number: 10688669.
2678. Advance Papers of the Fourth International Joint Conference on Articial Intelligence (IJ-
CAI75), September 38, 1975, Tbilisi, Georgia, USSR, volume 1 and 2. Fully available
at http://dli.iiit.ac.in/ijcai/IJCAI-75-VOL-1&2/CONTENT/content.htm [ac-
cessed 2008-04-01].
2679. Technical Committee CEN/TC 119 Swap body for combined transport: Brussels, Belgium.
Swap Bodies Non-Stackable Swap Bodies of Class C Dimensions and General Require-
ments, EN-284:2006. CEN-CEN ELEC: Brussels, Belgium, November 10, 2006. See also:
DIN 70013/14, BS 3951:Part 1, ISO 668, ISO 1161, ISO 6346, 88/218/EEC, UIC 592-4, UIC
596-6.
2680. Y. S. Teh and G. P. Rangaiah. Tabu Search for Global Optimization of Continuous Func-
tions with Application to Phase Equilibrium Calculations. Computers and Chemical Engi-
neering, 27(11):16651679, November 15, 2003, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/S0098-1354(03)00134-0.
2681. Astro Teller. Genetic Programming, Indexed Memory, the Halting Problem, and other Cu-
riosities. In FLAIRS94 [1360], pages 270274, 1994. Fully available at http://www.
cs.cmu.edu/afs/cs/usr/astro/public/papers/Curiosities.ps [accessed 2009-07-21].
CiteSeer
x
: 10.1.1.39.5589.
2682. Astro Teller. Turing Completeness in the Language of Genetic Programming with Indexed
Memory. In CEC94 [1891], pages 136141, 1994. doi: 10.1109/ICEC.1994.350027. Fully
available at http://www.astroteller.net/pdf/Turing.pdf and http://www.cs.
cmu.edu/afs/cs/usr/astro/public/papers/Turing.ps [accessed 2010-11-21].
2683. Marc Terwilliger, Ajay K. Gupta, Ashfaq A. Khokhar, and Garrison W. Greenwood. Local-
ization Using Evolution Strategies in Sensornets. In CEC05 [641], pages 322327, volume
1, 2005. doi: 10.1109/CEC.2005.1554701. Fully available at http://twig.lssu.edu/
publications/LESS.pdf [accessed 2009-09-18]. INSPEC Accession Number: 9004167.
2684. Igor V. Tetko, David J. Livingstone, and Alexander I. Luik. Neural Network Studies. 1.
Comparison of Overtting and Overtraining. Journal of Chemical Information and Computer
1158 REFERENCES
Sciences, 35(5):826833, September 1995, American Chemical Society: Washington, DC,
USA. doi: 10.1021/ci00027a006.
2685. Andrea G. B. Tettamanzi and Marco Tomassini. Soft Computing: Integrating Evolu-
tionary, Neural, and Fuzzy Systems. Springer-Verlag GmbH: Berlin, Germany, 2001.
isbn: 3-540-42204-8. Google Books ID: 86jQw6v30KoC.
2686. Sam R. Thangiah. Vehicle Routing with Time Windows using Genetic Algorithms. In
Practical Handbook of Genetic Algorithms: New Frontiers [522], pages 253277. CRC Press,
Inc.: Boca Raton, FL, USA, 1995. CiteSeer
x
: 10.1.1.23.7903.
2687. Proceedings of the 4th International Multiconference on Computer Science and Information
Technology (CSIT06), April 57, 2006, Amman, Jordan. The Computing Research Reposi-
tory (CoRR): Ithaca, NY, USA.
2688. First Workshop of the Semantic Web Service Challenge 2006 Challenge on Automating
Web Services Mediation, Choreography and Discovery, March 810, 2006, Stanford Univer-
sity, David Packard EE Building Building: Stanford, CA, USA. The Digital Enterprise
Research Institute (DERI) Stanford: Stanford, CA, USA. Fully available at http://
sws-challenge.org/wiki/index.php/Workshop_Stanford [accessed 2010-12-12].
2689. Second Workshop of the Semantic Web Service Challenge 2006 Challenge on Automating
Web Services Mediation, Choreography and Discovery, June 1516, 2006, Hotel Maestral:
Przno, Sveti Stefan, Budva, Republic of Montenegro. The Digital Enterprise Research Insti-
tute (DERI) Stanford: Stanford, CA, USA. Fully available at http://sws-challenge.
org/wiki/index.php/Workshop_Budva [accessed 2010-12-12].
2690. Third Workshop of the Semantic Web Service Challenge 2006 Challenge on Automat-
ing Web Services Mediation, Choreography and Discovery, November 1011, 2006, Geor-
gia Center: Athens, GA, USA. The Digital Enterprise Research Institute (DERI) Stanford:
Stanford, CA, USA. Fully available at http://sws-challenge.org/wiki/index.php/
Workshop_Athens [accessed 2010-12-12].
2691. Proceedings of The 10th Conference on Pattern Languages of Programs (PLoP03), Septem-
ber 812, 2003, University of Illinois, Allerton House: Monticello, IL, USA. The Hill-
side Group: Champaign, IL, USA. Fully available at http://hillside.net/plop/
plop2003/papers.html [accessed 2010-08-19].
2692. Dimitri Theodoratos and Wugang Xu. Constructing Search Spaces for Materialized View
Selection. In DOLAP04 [2557], pages 112121, 2004. doi: 10.1145/1031763.1031783.
2693. Guy Theraulaz and Eric W. Bonabeau. Coordination in Distributed Building. Science Mag-
azine, 269(5224):686688, American Association for the Advancement of Science (AAAS):
Washington, DC, USA and HighWire Press (Stanford University): Cambridge, MA, USA.
doi: 10.1126/science.269.5224.686.
2694. Guy Theraulaz and Eric W. Bonabeau. Swarm Smarts. Scientic American, pages 7279,
March 2000, Scientic American, Inc.: New York, NY, USA. Fully available at http://
www.santafe.edu/
b91069/PDF/convMdl.pdf [ac-
cessed 2010-12-04].
2698. Dirk Thierens, David Edward Goldberg, and
Angela Guimaraes Pereira. Domino Conver-
gence, Drift, and the Temporal-Salience Structure of Problems. In CEC98 [2496], pages
REFERENCES 1159
535540, 1998. doi: 10.1109/ICEC.1998.700085. CiteSeer
x
: 10.1.1.46.6116.
2699. Dirk Thierens, Hans-Georg Beyer, Josh C. Bongard, J urgen Branke, John Andrew Clark,
Dave Cli, Clare Bates Congdon, Kalyanmoy Deb, Benjamin Doerr, Tim Kovacs, Sanjeev
Kumar, Julian Francis Miller, Jason H. Moore, Frank Neumann, Martin Pelikan, Riccardo
Poli, Kumara Sastry, Kenneth Owen Stanley, Thomas St utzle, Richard A. Watson, and Ingo
Wegener, editors. Proceedings of 9th Genetic and Evolutionary Computation Conference
(GECCO07-I), July 711, 2007, University College London (UCL): London, UK. ACM Press:
New York, NY, USA. isbn: 1-59593-697-1. OCLC: 184827588, 232392364, 271369878,
and 288957084. ACM Order No.: 910070. See also [2700].
2700. Dirk Thierens, Hans-Georg Beyer, Josh C. Bongard, J urgen Branke, John Andrew Clark,
Dave Cli, Clare Bates Congdon, Kalyanmoy Deb, Benjamin Doerr, Tim Kovacs, Sanjeev
Kumar, Julian Francis Miller, Jason H. Moore, Frank Neumann, Martin Pelikan, Riccardo
Poli, Kumara Sastry, Kenneth Owen Stanley, Thomas St utzle, Richard A. Watson, and Ingo
Wegener, editors. Genetic and Evolutionary Computation Conference Companion Material
(GECCO07-II), July 711, 2007, University College London (UCL): London, UK. ACM
Press: New York, NY, USA. ACM Order No.: 910071. See also [2699].
2701. Herve Thiriez and Stanley Zionts, editors. Proceedings of the 1st International Conference on
Multiple Criteria Decision Making (MCDM75), May 2123, 1975, Jouy-en-Josas, France,
volume 130 in Lecture Notes in Economics and Mathematical Systems. Springer-Verlag:
Berlin/Heidelberg. isbn: 0387077944. OCLC: 2332357. Published in 1976.
2702. James J. Thomas, editor. Proceedings of the 18th Annual Conference on Computer Graphics
and Interactive Techniques (SIGGRAPH91), July 28August 2, 1991, Las Vegas, NV, USA.
SIGGRAPH: ACM Special Interest Group on Computer Graphics and Interactive Techniques,
ACM Press: New York, NY, USA. isbn: 0-89791-436-8. Order No.: 428911.
2703. Richard K. Thompson and Alden H. Wright. Additively Decomposable Fitness Func-
tions. Technical Report, University of Montana, Computer Science Department: Missoula,
MT, USA, 1996. Fully available at http://www.cs.umt.edu/u/wright/papers/add_
decomp.ps.gz [accessed 2007-11-27].
2704. Henk Tijms. Understanding Probability: Chance Rules in Everyday Life. Cambridge Uni-
versity Press: Cambridge, UK, August 16, 2004. isbn: 0521540364. Google Books
ID: y2361S44XLsC. OCLC: 54079595.
2705. Jonathan Timmis and Peter J. Bentley, editors. Proceedings of the 1st International Con-
ference on Articial Immune Systems (ICARIS02), University of Kent: Canterbury, Kent,
UK. isbn: 1902671325.
2706. Jonathan Timmis, Peter J. Bentley, and Emma Hart, editors. Proceedings of the 2nd In-
ternational Conference on Articial Immune Systems (ICARIS03), September 13, 2003,
Edinburgh, Scotland, UK, volume 2787 in Lecture Notes in Computer Science (LNCS).
Springer-Verlag GmbH: Berlin, Germany. isbn: 3-540-40766-9.
2707. Ville Tirronen, Ferrante Neri, Tommi Karkkainen, Kirsi Majava, and Tuomo Rossi. An
Enhanced Memetic Dierential Evolution in Filter Design for Defect Detection in Paper
Production. Evolutionary Computation, 16(4):529555, Winter 2008, MIT Press: Cambridge,
MA, USA. doi: 10.1162/evco.2008.16.4.529. PubMed ID: 19053498.
2708. Philippe L. Toint. Test Problems for Partially Separable Optimization and Results for the
Routine PSPMIN. Technical Report 83/4, University of Namur (FUNDP), Department of
Mathematics: Namur, Belgium, 1983.
2709. Proceedings of the 6th International Joint Conference on Articial Intelligence (IJCAI79-I),
August 2023, 1979, Tokyo, Japan, volume 1. Fully available at http://dli.iiit.ac.
in/ijcai/IJCAI-79-VOL1/CONTENT/content.htm [accessed 2008-04-01]. See also [2710].
2710. Proceedings of the 6th International Joint Conference on Articial Intelligence (IJCAI79-II),
August 2023, 1979, Tokyo, Japan, volume 2. Fully available at http://dli.iiit.ac.
in/ijcai/IJCAI-79-VOL2/CONTENT/content.htm [accessed 2008-04-01]. See also [2709].
2711. Shisanu Tongchim and Xin Yao. Parallel Evolutionary Programming. In CEC04 [1369],
pages 13621367, volume 2, 2004. doi: 10.1109/CEC.2004.1331055. Fully available
at http://www.cs.bham.ac.uk/
reiji/baldwin/editorial.
html and http://www.apperceptual.com/baldwin-editorial.html [accessed 2010-09-
11].
1162 REFERENCES
2740. Peter Turney, Joanna Bryson, and Reiji Suzuki. The Baldwin Eect: A Bibliography. Nagoya
University, Graduate School of Computer Science, Department of Complex Systems Science:
Nagoya, Japan, August 2008. Fully available at http://www.alife.cs.is.nagoya-u.
ac.jp/
krunapon/research/pub/progressive.pdf [ac-
cessed 2011-04-08]. CiteSeer
x
: 10.1.1.20.9685 and 10.1.1.57.9921.
2746. Tatsuo Unemi. SBART 2.4: An IEC Tool for Creating 2D Images, Movies, and Collage. In
GAVAM00 [1452], pages 153157, 2000. CiteSeer
x
: 10.1.1.31.3280.
2747. Proceedings of the 8th Argentinean Conference of Computer Science, Congresso Argentino
de Ciencias de la Computacon (CACIC02), October 1517, 2002, Universidad de Buenos
Aires (UBA): Buenos Aires, Argentina.
2748. AISB 2000 Convention: Articial Intelligence and Society (AISB00), April 1721, 2000,
University of Birmingham: Birmingham, UK. Fully available at http://www.aisb.org.
uk/publications/proceedings.shtml [accessed 2008-09-10].
2749. 4th International Conference on Hybrid Articial Intelligence Systems (HAIS09), June 10
12, 2009, Salamanca, Spain, Lecture Notes in Articial Intelligence (LNAI, SL7), Lecture
Notes in Computer Science (LNCS). University of Burgos, Applied Computational Intelli-
gence Group (GICAP): Burgos, Spain, Springer-Verlag GmbH: Berlin, Germany. co-located
with 10th International Work-Conference on Articial Neural Networks (IWANN2009).
2750. New State of MCDM in 21st Century Proceedings of the 20th International Conference on
Multiple Criteria Decision Making (MCDM09), June 2126, 2009, University of Electronic
Science and Technology of China (Shahe Campus): Chengd u, S`chuan, China.
2751. Proceedings of the Seventh Conference on Evolutionary and Deterministic Methods for De-
sign, Optimization and Control with Applications to Indutsrial and Societal Problems (EU-
ROGEN07), June 1113, 2007, University of Jyv askyl a: Jyv askyl a, Finland. Partly available
at http://www.mit.jyu.fi/scoma/Eurogen2007/ [accessed 2007-09-16].
2752. Proceedings of the First International Workshop on Advanced Computational Intelligence
(IWACI08), June 78, 2008, University of Macau: Macau, China.
2753. Genetic Programming Theory and Practice IX, Proceedings of the Ninth Workshop on Genetic
Programming (GPTP11), May 1214, 2011, University of Michigan, Center for the Study of
Complex Systems (CSCS): Ann Arbor, MI, USA.
2754. 2011 International Workshop on Nature Inspired Computation and Its Applications
(IWNICA11), April 17, 2011, University of Science and Technology of China (USTC): Hefei,
ursem/publications/RKU_
thesis_2003.pdf [accessed 2009-07-09]. CiteSeer
x
: 10.1.1.13.4971.
V
2761. Rob J. M. Vaessens, Emile H. L. Aarts, and Jan Karel Lenstra. A Local Search Template.
In PPSN II [1827], pages 6776, 1992. CiteSeer
x
: 10.1.1.54.4457. See also [2762].
2762. Rob J. M. Vaessens, Emile H. L. Aarts, and Jan Karel Lenstra. A Local Search
Template. Computers & Operations Research, 25(11):969979, November 1, 1998,
Pergamon Press: Oxford, UK and Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/S0305-0548(97)00093-2. See also [2761].
2763. Gregory Valigiani, Evelyne Lutton, Cyril Fonlupt, and Pierre Collet. Optimisation
par Hommili`ere de Chemins Pedagogiques pour un Logiciel de-Learning. Technique
et Science Informatique (TSI), 26(10):12451267, 2007, TSI: Cachan cedex, France.
doi: 10.3166/tsi.26.1245-1267.
2764. Satyanarayana R. Valluri, Soujanya Vadapalli, and Kamalakar Karlapalem. View Relevance
Driven Materialized View Selection in Data Warehousing Environment. In ADC02 [3081],
2002. doi: 10.1145/563932.563927. Fully available at http://crpit.com/confpapers/
CRPITV5Valluri.pdf [accessed 2011-03-29]. See also [2765].
2765. Satyanarayana R. Valluri, Soujanya Vadapalli, and Kamalakar Karlapalem. View Relevance
Driven Materialized View Selection in Data Warehousing Environment. Australian Computer
Science Communications, 24(2), JanuaryFebruary 2002, IEEE Computer Society Press: Los
Alamitos, CA, USA. doi: 10.1145/563932.563927. Fully available at http://crpit.com/
confpapers/CRPITV5Valluri.pdf [accessed 2011-03-29]. CiteSeer
x
: 10.1.1.18.9497. See
also [2764].
2766. Werner Van Belle. Automatic Generation of Concurrency Adaptors by Means of Learning
Algorithms. PhD thesis, Vrije Universiteit Brussel, Faculteit van de Wetenschappen, Departe-
ment Informatica: Brussels, Belgium, August 2001, Theo DHondt and Tom Tourwe, Advi-
sors. Fully available at http://borg.rave.org/adaptors/Thesis6.pdf [accessed 2008-06-
23]. See also [2767].
2767. Werner Van Belle, Tom Mens, and Theo DHondt. Using Genetic Programming
to Generate Protocol Adaptors for Interprocess Communication. In ICES03 [2743],
pages 6773, 2003. Fully available at http://prog.vub.ac.be/Publications/
2003/vub-prog-tr-03-33.pdf and http://werner.yellowcouch.org/Papers/
genadap03/ICES-online.pdf [accessed 2008-06-23]. See also [2766].
2768. Klemens van Betteray. Gesetzliche und handelsspezische Anforderungen an die
1164 REFERENCES
R uckverfolgung. In Vortrage des 7. VDEB-Infotags 2004 Mobile Computing, RFID und
R uckverfolgbarkeit [2800], 2004. EU Verordnung 178/2002.
2769. Alex Van Breedam. An Analysis of the Behavior of Heuristics for the Vehicle Routing Prob-
lem for a Selection of Problems with Vehicle-related, Customer-related, and Time-related
Constraints. PhD thesis, University of Antwerp (RUCA): Antwerp, Belgium, 1994.
2770. Alex Van Breedam. An Analysis of the Behavior of Heuristics for the Vehicle Routing Prob-
lem for a Selection of Problems with Vehicle-Related, Customer-Related, and Time-Related
Constraints. PhD thesis, University of Antwerp (RUCA): Antwerp, Belgium, 1994.
2771. Gertrudis Van de Vijver, Stanley N. Salthe, and Manuela Delpos, editors. Evolutionary Sys-
tems Biological and Epistemological Perspectives on Selection and Self-Organization. Kluwer
Academic Publishers: Norwell, MA, USA, 1998. isbn: 0792352602. OCLC: 39556318. Li-
brary of Congress Control Number (LCCN): 98036791. LC Classication: QH360.5 .E96
1998.
2772. J. Koen van der Hauw. Evaluating and Improving Steady State Evolutionary Algo-
rithms on Constraint Satisfaction Problems. Masters thesis, Leiden University: Leiden,
The Netherlands, August 9, 1996,
Agoston E. Eiben and Han La Poutre, Supervisors.
CiteSeer
x
: 10.1.1.29.1568.
2773. Christiaan M. van der Walt and Etienne Barnard. Data Characteristics that Determine Clas-
sier Performance. In ICAPR05 [2506], pages 160165, 2005. Fully available at http://
www.meraka.org.za/pubs/CvdWalt.pdf and http://www.patternrecognition.
co.za/publications/cvdwalt_data_characteristics_classifiers.pdf [ac-
cessed 2009-09-09].
2774. Bas C. van Fraassen. Laws and Symmetry, Clarendon Paperbacks. Oxford University Press,
Inc.: New York, NY, USA, 1989. isbn: 0198248601. Google Books ID: LzXuE1Sri wC.
2775. Jano I. van Hemert and Carlos Cotta, editors. Proceedings of the 8th European Conference on
Evolutionary Computation in Combinatorial Optimization (EvoCOP08), March 2628, 2008,
Naples, Italy, volume 4972/2008 in Theoretical Computer Science and General Issues (SL
1), Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
isbn: 3-540-78603-1. Library of Congress Control Number (LCCN): 2008922955.
2776. Peter J. M. van Laarhoven and Emile H. L. Aarts, editors. Simulated Annealing: Theory
and Applications, volume 37 in Mathematics and its Applications. Kluwer Academic Pub-
lishers: Norwell, MA, USA, 1987. isbn: 90-277-2513-6. Google Books ID: -IgUab6Dp IC
and URDXYgEACAAJ. OCLC: 15548651, 230902948, 471714266, 489996631, and
638812897. Library of Congress Control Number (LCCN): 87009666. GBV-Identication
(PPN): 020442645 and 043026036. LC Classication: QA402.5 .L3 1987. Reviewed in
[1316].
2777. Jan van Leeuwen, editor. Computer Science Today Recent Trends and Developments,
volume 1000/1995 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH:
Berlin, Germany, 1995. doi: 10.1007/BFb0015232. isbn: 3-540-60105-8. Google Books
ID: YHxQAAAAMAAJ.
2778. Erik van Nimwegen and James P. Crutcheld. Optimizing Epochal Evolutionary Search:
Population-Size Dependent Theory. Machine Learning, 45(1):77114, October 2001, Kluwer
Academic Publishers: Norwell, MA, USA and Springer Netherlands: Dordrecht, Netherlands,
Leslie Pack Kaelbling, editor. doi: 10.1023/A:1012497308906.
2779. Erik van Nimwegen, James P. Crutcheld, and Martijn A. Huynen. Neutral Evolution of
Mutational Robustness. Proceedings of the National Academy of Science of the United States
of America (PNAS), 96(17):97169720, August 17, 1999, National Academy of Sciences:
Washington, DC, USA. Fully available at http://www.pnas.org/cgi/reprint/96/
17/9716.pdf [accessed 2008-07-02].
2780. Erik van Nimwegen, James P. Crutcheld, and Melanie Mitchell. Statistical Dynamics of the
Royal Road Genetic Algorithm. Theoretical Computer Science, 229(12):41102, November 6,
1999, Elsevier Science Publishers B.V.: Essex, UK. doi: 10.1016/S0304-3975(99)00119-X.
CiteSeer
x
: 10.1.1.43.3594.
2781. Maarten van Someren and Gerhard Widmer, editors. 9th European Conference on Ma-
chine Learning (ECML97), April 2325, 1997, Prague, Czech Republic, volume 1224/1997
in Lecture Notes in Articial Intelligence (LNAI, SL7), Lecture Notes in Computer
Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-62858-4.
isbn: 3-540-62858-4. Google Books ID: BC4- V0D-qUC and w4lfPwAACAAJ.
REFERENCES 1165
OCLC: 36676064, 56867902, and 82399375.
2782. Harry L. Van Trees. Detection, Estimation, and Modulation Theory, Part I. Wiley
Interscience: Chichester, West Sussex, UK, 1968February 2007. isbn: 0471093904,
0471095176, and 0471899550. Google Books ID: 2kkHAAAACAAJ, NSddAAAACAAJ,
RywEAAAACAAJ, RywEAAAACAAJ, Xzp7VkuFqXYC, and udD3AQAACAAJ. OCLC: 49665206,
85820539, 234257633, and 249067915.
2783. David A. van Veldhuizen and Laurence D. Merkle. Multiobjective Evolutionary Algorithms:
Classications, Analyses, and New Innovations. PhD thesis, Air University, Air Force Insti-
tute of Technology: Wright-Patterson Air Force Base, OH, USA, June 1999, Gary B. Lamont,
Supervisor, Richard F. Deckro and Thomas F. Reid, Committee members. Fully avail-
able at http://citeseer.ist.psu.edu/old/vanveldhuizen99multiobjective.
html, http://handle.dtic.mil/100.2/ADA364478, and http://neo.lcc.uma.es/
emoo/veldhuizen99a.ps.gz [accessed 2009-08-05]. ID: AFIT/DS/ENG/99-01.
2784. Leonardo Vanneschi and Marco Tomassini. A Study on Fitness Distance Correlation
and Problem Diculty for Genetic Programming. In GECCO02 GSWS [1790], pages
307310, 2002. Fully available at http://personal.disco.unimib.it/Vanneschi/
GECCO_2002_PHD_WORKSHOP.pdf and http://www.cs.bham.ac.uk/
wbl/biblio/
gp-html/vanneschi_2002_gecco_workshop.html [accessed 2008-07-20]. See also [590].
2785. Leonardo Vanneschi, Manuel Clergue, Philippe Collard, Marco Tomassini, and Sebastien
Verel. Fitness Clouds and Problem Hardness in Genetic Programming. In GECCO04-
II [752], pages 690701, 2004. doi: 10.1007/b98645. Fully available at http://hal.
archives-ouvertes.fr/hal-00160055/en/ [accessed 2007-10-14], http://hal.inria.
fr/docs/00/16/00/55/PDF/fc_gp.pdf, http://www.cs.bham.ac.uk/
wbl/
biblio/gp-html/vanneschi_fca_gecco2004.html [accessed 2008-07-20], and http://
www.i3s.unice.fr/
wbl/biblio/gp-html/eurogp06_VanneschiTomassiniCollardVerel.
html [accessed 2008-07-20].
2787. Leonardo Vanneschi, Steven Matt Gustafson, Alberto Moraglio, Ivanoe de Falco, and
Marc Ebner, editors. Proceedings of the 12th European Conference on Genetic Program-
ming (EuroGP09), April 1517, 2009, Eberhard-Karls-Universitat T ubingen, Fakult at f ur
Informations- und Kognitionswissenschaften: T ubingen, Germany, volume 5481/2009 in
Theoretical Computer Science and General Issues (SL 1), Lecture Notes in Computer Sci-
ence (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/978-3-642-01181-8.
isbn: 3-642-01180-2.
2788. Vladimir Naumovich Vapnik. The Nature of Statistical Learning Theory, Information Science
and Statistics. Springer-Verlag GmbH: Berlin, Germany, 19951999. isbn: 0-387-98780-0.
Google Books ID: sna9BaxVbj8C. OCLC: 41959173 and 247524710.
2789. Francisco J. Varela and Paul Bourgine, editors. Toward a Practice of Autonomous Sys-
tems: Proceedings of the First European Conference on Articial Life (ECAL91), De-
cember 1113, 1991, Paris, France, Bradford Books. MIT Press: Cambridge, MA, USA.
isbn: 0-262-72019-1. Published in 1992.
2790. Himanshu Vashishtha, Michael Smit, and Eleni Stroulia. Moving Text Analysis Tools to the
Cloud. In SERVICES Cup10 [2457], pages 107114, 2010. doi: 10.1109/SERVICES.2010.91.
INSPEC Accession Number: 11535163.
2791. Athanasios V. Vasilakos, Kostas G. Anagnostakis, and Witold Pedrycz. Application of
Computational Intelligence Techniques in Active Networks. Soft Computing A Fusion of
Foundations, Methodologies and Applications, 5(4):264271, August 2001, Springer-Verlag:
Berlin/Heidelberg. doi: 10.1007/s005000100100.
2792. Vesselin K. Vassilev and Julian Francis Miller. The Advantages of Landscape Neu-
trality in Digital Circuit Evolution. In ICES00 [1902], pages 252263, 2000.
doi: 10.1007/3-540-46406-9 25. CiteSeer
x
: 10.1.1.41.3777.
2793. Miguel A. Vega-Rodrguez, Juan A. G omez-Pulido, Enrique Alba Torres, David Vega-
Perez, Silvio Priem-Mendes, and Guillermo Molina. Evaluation of Dierent Metaheuris-
tics Solving the RND Problem. In EvoWorkshops07 [1050], pages 101110, 2007.
1166 REFERENCES
doi: 10.1007/978-3-540-71805-5 11.
2794. Miguel A. Vega-Rodrguez, David Vega-Perez, Juan A. G omez-Pulido, and Juan M.
Sanchez-Perez. Radio Network Design Using Population-Based Incremental Learning
and Grid Computing with BOINC. In EvoWorkshops07 [1050], pages 91100, 2007.
doi: 10.1007/978-3-540-71805-5 10.
2795. Goran Velinov, Danilo Gligoroski, and Margita Kon-Popovska. Hybrid Greedy and Genetic
Algorithms for Optimization of Relational Data Warehouses. In AIAP07 [776], pages 470
475, 2007.
2796. Goran Velinov, Boro Jakimovski, Darko Cerepnalkoski, and Margita Kon-Popovska. Improve-
ment of Data Warehouse Optimization Process by Workow Gridication. In ADBIS [143],
pages 295304, 2008. doi: 10.1007/978-3-540-85713-6 21.
2797. Manuela M. Veloso, editor. AI and its benets to society Proceedings of the 20th Inter-
national Joint Conference on Articial Intelligence (IJCAI07), January 612, 2007, Hyder-
abad, India. AAAI Press: Menlo Park, CA, USA. Fully available at http://dli.iiit.
ac.in/ijcai/IJCAI-2007/CONTENT/contents2007.html and http://www.ijcai.
org/papers07/contents.php [accessed 2008-04-01]. See also [1296].
2798. Gerhard Venter and Jaroslaw Sobieszczanski-Sobieski. Particle Swarm Optimization. In 43rd
AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Conference
and Exhibit [84], 2002. CiteSeer
x
: 10.1.1.57.7431. See also [2799].
2799. Gerhard Venter and Jaroslaw Sobieszczanski-Sobieski. Particle Swarm Optimization. AIAA
Journal, 41(8):15831589, August 2003, American Institute of Aeronautics and Astronautics:
Reston, VA, USA. Fully available at http://pdf.aiaa.org/getfile.cfm?urlX=2
%3CWIG7D%2FQKU%3E6B5%3AKF5%2B%5CQ%3AK%3E%0A&urla=%26%2B%22L%2F%22P
%22%40%0A&urlb=%21%2A%20%20%20%0A&urlc=%21%2A0%20%20%0A&urld=%21%2A0
%20%20%0A&urle=%27%28%22H%22%23PJAT%20%20%20%0A [accessed 2010-12-24]. See also
[2798].
2800. Vortrage des 7. VDEB-Infotags 2004 Mobile Computing, RFID und R uckverfolgbarkeit,
July 28, 2004. Verband der EDV-Software-und Beratungsunternehmen (VDEB): Aachen,
North Rhine-Westphalia, Germany and VDEB Verband IT-Mittelstand e.V.: Stuttgart, Ger-
many.
2801. Proceedings of the Workshop SAKS 2007, March 1, 2007, Bern, Switzerland. Verband der
Elektrotechnik, Elektronik und Informationstechnik e.V. (VDE): Frankfurt am Main, Ger-
many.
2802. Sebastien Verel, Philippe Collard, and Manuel Clergue. Measuring the Evolvabil-
ity Landscape to Study Neutrality. In GECCO06 [1516], pages 613614, 2006.
doi: 10.1145/1143997.1144107. arXiv ID: 0709.4011v1.
2803. Proceedings of the Second European Congress on Fuzzy and Intelligent Technologies (EU-
FIT94), September 2023, 1994, Aachen, North Rhine-Westphalia, Germany. Verlag der
Augustinus Buchhandlung: Aachen, North Rhine-Westphalia, Germany.
2804. Proceedings of the First European Congress on Fuzzy and Intelligent Technologies (EU-
FIT93), September 79, 1993, Aachen, North Rhine-Westphalia, Germany. Verlag der Au-
gustinus Buchhandlung: Aachen, North Rhine-Westphalia, Germany and ELITE Foundation:
Aachen, North Rhine-Westphalia, Germany.
2805. Proceedings of the Third European Congress on Intelligent Techniques and Soft Computing
(EUFIT95), August 2831, 1995, Aachen, North Rhine-Westphalia, Germany. Verlag der
Augustinus Buchhandlung: Aachen, North Rhine-Westphalia, Germany, Verlag und Druck
Mainz GmbH: Aachen, North Rhine-Westphalia, Germany, and ELITE Foundation: Aachen,
North Rhine-Westphalia, Germany.
2806. Proceedings of the 6th European Congress on Intelligent Techniques and Soft Computing
(EUFIT98), September 710, 1998, Rheinisch-Westfalische Technische Hochschule (RWTH)
Aachen: Aachen, North Rhine-Westphalia, Germany. Verlag und Druck Mainz GmbH:
Aachen, North Rhine-Westphalia, Germany. isbn: 3-89653-500-5.
2807. Proceedings of the 7th European Congress on Intelligent Techniques and Soft Computing
(EUFIT99), September 1316, 1999, Aachen, North Rhine-Westphalia, Germany. Verlag
und Druck Mainz GmbH: Aachen, North Rhine-Westphalia, Germany.
2808. William T. Vettering, Saul A. Teukolsky, William H. Press, and Brian P. Flannery. Numeri-
cal Recipes in C++ Example Book The Art of Scientic Computing. Cambridge Univer-
sity Press: Cambridge, UK, second edition, February 7, 2002. isbn: 0521750342. Google
REFERENCES 1167
Books ID: gwijz-OyIYEC. OCLC: 48265610, 314335535, 423496209, 469630365,
and 610691802. Library of Congress Control Number (LCCN): 2001052753. GBV-
Identication (PPN): 336225350 and 374254729. LC Classication: QA76.73.C153 N83
2002.
2809. Sixth European Conference on Machine Learning (ECML93), April 57, 1993, Vienna, Aus-
tria.
2810. 6th Metaheuristics International Conference (MIC05), August 2226, 2005, Vienna, Austria.
Partly available at http://www.mic2005.org/ [accessed 2007-09-12].
2811. Savings Ants for the Vehicle Routing Problem. Technical Report 63, Vienna University of
Economics and Business Administration: Vienna, Austria, December 2001. ID: oai:epub.wu-
wien.ac.at:epub-wu-01 1f1. See also [802].
2812. Daniele Vigo. VRPLIB: A Vehicle Routing Problem LIBrary. Universit`a degli
Studi di Bologna, Dipartimento di Elettronica, Informatica e Sistemistica (DEIS),
Operations Research Group (Ricerca Operativa): Bologna, Emilia-Romagna, Italy,
October 3, 2003. Fully available at http://or.ingce.unibo.it/research/
vrplib-a-vehicle-routing-problem-resources-library and http://www.or.
deis.unibo.it/research_pages/ORinstances/VRPLIB/VRPLIB.html [accessed 2011-
10-12].
2813. Daniele Vigo and Maria Battarra. Database of Heterogeneous Vehicle Routing Problems.
Universit`a degli Studi di Bologna, Dipartimento di Elettronica, Informatica e Sistemistica
(DEIS), Operations Research Group (Ricerca Operativa): Bologna, Emilia-Romagna, Italy,
January 19, 2007. Fully available at http://apice54.ingce.unibo.it/hvrp/index.
php [accessed 2011-10-12].
2814. Frank J. Villegas, Tom Cwik, Yahya Rahmat-Samii, and Majid Manteghi. A Parallel Elec-
tromagnetic Genetic-Algorithm Optimization (EGO) Application for Patch Antenna Design.
IEEE Transactions on Antennas and Propagation, 52(9):24242435, September 3, 2004, IEEE
Antennas & Propagation Society: Marseld, NSW, Australia. doi: 10.1109/TAP.2004.834071.
2815. Andrei Vladimirescu. The SPICE Book. John Wiley & Sons Ltd.: New York, NY, USA,
1994. isbn: 0471609269.
2816. Bernhard Friedrich Voigt. Der Handlungsreisende wie er sein soll und was er zu thun hat,
um Auftr age zu erhalten und eines gl ucklichen Erfolgs in seinen Geschaften gewi zu sein
von einem alten Commis-Voyageur. Voigt: Ilmenau, Germany, 1832. OCLC: 258013333.
Excerpt: . . . Durch geeignete Auswahl und Planung der Tour kann man oft so viel Zeit
sparen, da wir einige Vorschl age zu machen haben. . . . Der wichtigste Aspekt ist, so viele
Orte wie m oglich zu erreichen, ohne einen Ort zweimal zu besuchen. . . . . Newly published
as [2817].
2817. Bernhard Friedrich Voigt. Der Handlungsreisende wie er sein soll und was er zu thun
hat, um Auftr age zu erhalten und eines gl ucklichen Erfolgs in seinen Geschaften gewi zu
sein von einem alten Commis-Voyageur. Verlag Bernd Schramm: Kiel, Germany, 1981.
isbn: 3-921361-24-9. New edition of [2816].
2818. Hans-Michael Voigt, Werner Ebeling, Ingo Rechenberg, and Hans-Paul Schwefel, editors. Pro-
ceedings of the 4th International Conference on Parallel Problem Solving from Nature (PPSN
IV), September 2224, 1996, Berlin, Germany, volume 1141/1996 in Lecture Notes in Com-
puter Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/3-540-61723-X.
isbn: 3-540-61723-X. Google Books ID: uN0mgUx-VRUC. OCLC: 35331240, 150419867,
and 246323673.
2819. Christian Voigtmann. Integration Evolution arer Klassikatoren in Weka. Bachelors thesis,
University of Kassel, Fachbereich 16: Elektrotechnik/Informatik, Distributed Systems Group:
Kassel, Hesse, Germany, October 26, 2008, Thomas Weise, Advisor, Kurt Geihs and Heinrich
Werner, Committee members. See also [2855, 2902].
2820. A. Volgenant. Solving Some Lexicographic Multi-Objective Combinatorial Problems. Eu-
ropean Journal of Operational Research (EJOR), 139(3):578584, June 16, 2002, Elsevier
Science Publishers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic
Publishers Ltd.: Amsterdam, The Netherlands. doi: 10.1016/S0377-2217(01)00214-4.
2821. Paul T. von Hippel. Mean, Median, and Skew: Correcting a Textbook Rule. Journal
of Statistics Education (JSE), 13(2), July 2005, American Statistical Association (ASA):
Alexandria, VA, USA. Fully available at http://www.amstat.org/publications/jse/
v13n2/vonhippel.html [accessed 2007-09-15].
1168 REFERENCES
2822. Richard von Mises. Probability, Statistics, and Truth. W. Hodge & Co.: Glasgow, Scot-
land, UK, Dover Publications: Mineola, NY, USA, and Allen & Unwin: Crows Nest, NSW,
Australia, 2nd edition, 19391957. isbn: 0486242145. Google Books ID: KSE4AAAAMAAJ,
enxeAAAAIAAJ, and wFFK P8Cpk0C. OCLC: 8320292 and 256165308.
2823. Richard von Mises. Mathematical Theory of Probability and Statistics. Academic Press
Professional, Inc.: San Diego, CA, USA and Elsevier Science Publishers B.V.: Essex, UK,
1964. isbn: 0127273565. Google Books ID: 3s8-AAAAIAAJ and 7gnFJQAACAAJ.
2824. Paul von Rague Schleyer and Johnny Gasteiger, editors. Encyclopedia of Computational
Chemistry. Volume III: Databases and Expert Systems. John Wiley & Sons Ltd.: New York,
NY, USA, September 1998. isbn: 0-471-96588-X. OCLC: 490503997. Library of Congress
Control Number (LCCN): 98037164. LC Classication: QD39.3.E46 E53 1998.
2825. Matthias von Randow. G uterverkehr und Logistik als tragende Saule der Wirtschaft zukun-
ftssicher gestalten. In Das Beste Der Logistik: Innovationen, Strategien, Umsetzungen [234],
pages 4953. Springer-Verlag GmbH: Berlin, Germany and Bundesvereinigung Logistik e.V.
(BVL): Bremen, Germany, 2008.
2826. Michael D. Vose. Generalizing the Notion of Schema in Genetic Algorithms. Articial
Intelligence, 50(3):385396, August 1991, Elsevier Science Publishers B.V.: Essex, UK.
doi: 10.1016/0004-3702(91)90019-G.
2827. Michael D. Vose and Alden H. Wright. Form Invariance and Implicit Parallelism.
Evolutionary Computation, 9(3):355370, Fall 2001, MIT Press: Cambridge, MA,
USA. doi: 10.1162/106365601750406037. Fully available at http://www.cs.umt.
edu/u/wright/papers/vose_wright2001form_invariance.ps.gz [accessed 2010-07-30].
CiteSeer
x
: 10.1.1.7.4294. PubMed ID: 11522211.
2828. Stefan Vo, Silvano Martello, Ibrahim H. Osman, and Catherine Roucairol, editors. 2nd
Metaheuristics International Conference Meta-Heuristics: Advances and Trends in Local
Search Paradigms for Optimization (MIC97), July 2124, 1997, Sophia-Antipolis, France.
Kluwer Publishers: Boston, MA, USA. isbn: 0-7923-8369-9. Published in 1998.
W
2829. Conrad Hal Waddington. Canalization of Development and the Inheritance of Acquired Char-
acters. Nature, 150(3811):563565, November 14, 1942. doi: 10.1038/150563a0. Fully available
at http://www.nature.com/nature/journal/v150/n3811/pdf/150563a0.pdf [ac-
cessed 2008-09-10]. See also [2832].
2830. Conrad Hal Waddington. Genetic Assimilation of an Acquired Character. Evolution In-
ternational Journal of Organic Evolution, 7(2):118128, June 1953, Society for the Study
of Evolution (SSE) and Wiley Interscience: Chichester, West Sussex, UK. JSTOR Stable
ID: 2405747.
2831. Conrad Hal Waddington. The Baldwin Eect, Genetic Assimilation and Homeostasis.
Evolution International Journal of Organic Evolution, 7(4):386387, December 1953, Soci-
ety for the Study of Evolution (SSE) and Wiley Interscience: Chichester, West Sussex, UK.
JSTOR Stable ID: 2405346.
2832. Conrad Hal Waddington. Canalization of Development and the Inheritance of Acquired Char-
acters. In Adaptive Individuals in Evolving Populations: Models and Algorithms [255], pages
9197. Addison-Wesley Longman Publishing Co., Inc.: Boston, MA, USA and Westview
Press, 1996. See also [2829].
2833. Andreas Wagner. Robustness and Evolvability in Living Systems, volume 9 in Prince-
ton Studies in Complexity. Princeton University Press: Princeton, NJ, USA, 20052007.
isbn: 0691122407 and 0691134049. Partly available at http://press.princeton.
edu/titles/8002.html [accessed 2009-07-10]. Google Books ID: 7O1bGwAACAAJ.
2834. Andreas Wagner. Robustness, Evolvability, and Neutrality. FEBS Letters, 579(8):1772
1778, March 21, 2005, Federation of European Biochemical Societies (FEBS): London, UK
and Elsevier Science Publishers B.V.: Essex, UK, Robert Russell and Giulio Superti-Furga,
editors. doi: 10.1016/j.febslet.2005.01.063. PubMed ID: 15763550.
2835. G unter P. Wagner and Lee Altenberg. Complex Adaptations and the Evolution of Evolv-
ability. Evolution International Journal of Organic Evolution, 50(3):967976, June 1996,
Society for the Study of Evolution (SSE) and Wiley Interscience: Chichester, West Sussex,
REFERENCES 1169
UK. Fully available at http://dynamics.org/Altenberg/PAPERS/CAEE/ [accessed 2009-
07-10]. CiteSeer
x
: 10.1.1.28.1524.
2836. Michael Wagner, Dieter Hogrefe, Kurt Geihs, and Klaus David, editors. First Workshop
on Global Sensor Networks (GSN09), March 6, 2009, University of Kassel, Fachbereich 16:
Elektrotechnik/Informatik, Distributed Systems Group: Kassel, Hesse, Germany, volume 17.
European Association of Software Science and Technology (EASST; Universitat Potsdam,
Institute for Informatics): Potsdam, Germany. Fully available at http://eceasst.cs.
tu-berlin.de/index.php/eceasst/issue/view/24 [accessed 2009-09-07]. Partly available
at http://ipvs.informatik.uni-stuttgart.de/vs/gsn09/ [accessed 2011-02-28].
2837. Tobias Wagner, Nicola Beume, and Boris Naujoks. Pareto-, Aggregation-, and Indicator-
Based Methods in Many-Objective Optimization. Reihe Computational Intelligence: De-
sign and Management of Complex Technical Processes and Systems by Means of Computa-
tional Intelligence Methods CI-217/06, Universitat Dortmund, Collaborative Research Cen-
ter (Sonderforschungsbereich) 531: Dortmund, North Rhine-Westphalia, Germany, Septem-
ber 2006. Fully available at http://hdl.handle.net/2003/26125 [accessed 2009-07-19].
issn: 1433-3325. See also [2838].
2838. Tobias Wagner, Nicola Beume, and Boris Naujoks. Pareto-, Aggregation-, and Indicator-
Based Methods in Many-Objective Optimization. In EMO07 [2061], pages 742756, 2007.
doi: 10.1007/978-3-540-70928-2 56. See also [2837].
2839. Markus W alchli and Torsten Braun. Ecient Signal Processing and Anomaly Detec-
tion in Wireless Sensor Networks. In EvoWorkshops09 [1052], pages 8186, 2009.
doi: 10.1007/978-3-642-01129-0 9.
2840. Karl-Heinz Waldmann and Ulrike M. Stocker, editors. Selected Papers of the Annual Inter-
national Conference of the German Operations Research Society (GOR), Jointly Organized
with the Austrian Society of Operations Research (
wbl/biblio/
gp-html/Wedge_2008_gecco.html [accessed 2009-07-10].
2875. Bill Wedley, editor. Proceedings of the 17th International Conference on Multiple Criteria
Decision Making (MCDM04), August 58, 2004, Whistler Conference Center: Whistler, BC,
Canada. Partly available at http://www.bus.sfu.ca/events/mcdm/ [accessed 2007-09-10].
2876. Ingo Wegener. Komplexitatstheorie Grenzen der Ezienz von Algorithmen. Springer-Verlag
GmbH: Berlin, Germany, 2003. isbn: 3-540-00161-1. Google Books ID: rFvDwDP0hmkC.
Newly published as [2877].
2877. Ingo Wegener. Complexity Theory: Exploring the Limits of Ecient Algorithms. Springer-
Verlag: Berlin/Heidelberg, 2005, Randall Pruim, Translator. isbn: 3-540-21045-8. Google
Books ID: u7DZSDSUYlQC. See also [2876].
2878. Yaxing Wei, Peng Yue, Upendra Dadi, Min Min, Chengfang Hu, and Liping Di. Active
Acquisition of Geospatial Data Products in a Collaborative Grid Environment. In SCCon-
test06 [554], pages 455462, 2006. doi: 10.1109/SCC.2006.46. INSPEC Accession Num-
ber: 9165409.
2879. Karsten Weicker. Evolutionare Algorithmen, Leitfaden der Informatik. B. G. Teubner:
Leipzig, Germany, March 2002. isbn: 3-519-00362-7. Google Books ID: 3-519-00362-7.
OCLC: 51984239. GBV-Identication (PPN): 098084860.
2880. Karsten Weicker and Nicole Weicker. Burden and Benets of Redundancy. In
FOGA00 [2565], pages 313333, 2001. Fully available at http://www.imn.
htwk-leipzig.de/
honavar/ga_tutorial.
pdf, http://www.cs.uga.edu/
potter/CompIntell/ga_tutorial.pdf, http://
www.emunix.emich.edu/
evett/AI/ga_tutorial.pdf, http://www.stat.ucla.
edu/
wilson/ps/xcs.
pdf [accessed 2010-12-15]. CiteSeer
x
: 10.1.1.38.6508.
2954. Stewart W. Wilson. Generalization in the XCS Classier System. In GP98 [1612], pages 665
674, 1998. Fully available at ftp://ftp.cs.bham.ac.uk/pub/authors/T.Kovacs/
1178 REFERENCES
lcs.archive/Wilson1998a.ps.gz [accessed 2010-12-15]. CiteSeer
x
: 10.1.1.38.6472.
2955. Stewart W. Wilson. State of XCS Classier System Research. In IWLCS00 [1678], pages
6382, 2000. Fully available at http://www.eskimo.com/
wilson/ps/state.ps.gz
[accessed 2010-12-15]. CiteSeer
x
: 10.1.1.54.1204.
2956. Stewart W. Wilson and David Edward Goldberg. A Critical Review of Classier Systems.
In ICGA89 [2414], pages 244255, 1989. Fully available at http://www.eskimo.com/
buckaroo/pubs/LeToTr00a/
LeToTr00a.pdf [accessed 2010-12-24]. CiteSeer
x
: 10.1.1.80.9399.
2985. Sewall Wright. The Roles of Mutation, Inbreeding, Crossbreeding and Selection in Evo-
lution. In Proceedings of the Sixth Annual Congress of Genetics [1459], pages 356366,
volume 1, 1932. Fully available at http://www.blackwellpublishing.com/ridley/
classictexts/wright.pdf [accessed 2009-06-29].
2986. Annie S. Wu, editor. Proceedings of the 2000 Genetic and Evolutionary Computation Con-
ference Workshop Program (GECCO00 WS), July 8, 2000. GECCO-2000 Bird-of-a-feather
workshops. See also [2928, 2935].
2987. Hsien-Chung Wu. Evolutionary Computation. self-published, February 2005. Fully available
at http://nknucc.nknu.edu.tw/
lxu/
papers/journal/IEEETNNrpcl93.PDF [accessed 2009-08-28].
3000. Lihong Xu, Erik D. Goodman, and Yongsheng Ding, editors. Proceedings of the First
ACM/SIGEVO Summit on Genetic and Evolutionary Computation (GEC09), June 1214,
2009, Hua-Ting Hotel & Towers: Sh`angh ai, China. ACM Press: New York, NY, USA. Partly
available at http://www.sigevo.org/gec-summit-2009/. ACM Order No.: 910093.
3001. Yong Xu, Sancho Salcedo-Sanz, and Xin Yao. Editorial to the Special Issue on Na-
ture Inspired Approaches to Networks and Telecommunications. International Journal
of Computational Intelligence and Applications (IJCIA), 5(2):iiiviii, June 2005, World
Scientic Publishing Co.: Singapore and Imperial College Press Co.: London, UK.
doi: 10.1142/S1469026805001532.
3002. Yong Xu, Sancho Salcedo-Sanz, and Xin Yao. Metaheuristic Approaches to Trac Groom-
ing in WDM Optical Networks. International Journal of Computational Intelligence and
Applications (IJCIA), 5(2):231249, June 2005, World Scientic Publishing Co.: Singapore
and Imperial College Press Co.: London, UK. doi: 10.1142/S1469026805001593. Fully avail-
able at http://www.cs.bham.ac.uk/
xin/papers/IJCIA_TrafficGrooming2005.
pdf [accessed 2009-08-10].
3003. XXX Seminario Integrado de Software e Hardware in Proceedings of XXIII Congresso da
Sociedade Brasileira de Computacao (SEMISH03), August 45, 2003.
Y
3004. S. Yaacob, Meenakshi Nagarajan, and A. Chekima, editors. Proceedings of Interna-
tional Conference on Articial Intelligence in Engineering and Technology (ICAIET02),
June 1718, 2002, University of Malaysia Sabah: Kota Kinabalu, Sabah, Malaysia.
isbn: 983-2188-92-X. Google Books ID: ejBaPgAACAAJ.
3005. Hirozumi Yamaguchi, Kozo Okano, Teruo Higashino, and Kenichi Taniguchi. Synthesis of
Protocol Entities Specications from Service Specications in a Petri Net Model with Reg-
isters. In ICDCS95 [1382], pages 510517, 1995. CiteSeer
x
: 10.1.1.57.1320. See also
[872].
3006. Lidia A. R. Yamamoto and Christian F. Tschudin. Experiments on the Automatic Evo-
lution of Protocols Using Genetic Programming. In WAC05 [2603], pages 1328, 2005.
doi: 10.1007/11687818 2. Fully available at http://cn.cs.unibas.ch/people/ly/doc/
wac2005-lyct.pdf [accessed 2008-06-20]. See also [3007].
3007. Lidia A. R. Yamamoto and Christian F. Tschudin. Experiments on the Automatic Evo-
lution of Protocols Using Genetic Programming. Technical Report CS-2005-002, Univer-
sity of Basel, Computer Science Department, Computer Networks Group: Basel, Switzer-
land, April 21, 2005. Fully available at http://cn.cs.unibas.ch/people/ly/doc/
wac2005tr-lyct.pdf [accessed 2008-06-20]. See also [3006, 3008].
3008. Lidia A. R. Yamamoto and Christian F. Tschudin. Genetic Evolution of Pro-
tocol Implementations and Congurations. In SelfMan05 [1839], 2005. Fully
available at http://cn.cs.unibas.ch/pub/doc/2005-selfman.pdf and http://
ksuseer1.ist.psu.edu/viewdoc/summary?doi=10.1.1.86.8032 [accessed 2009-07-22].
CiteSeer
x
: 10.1.1.86.8032. See also [3007].
1182 REFERENCES
3009. Lidia A. R. Yamamoto, Daniel Schreckling, and Thomas Meyer. Self-Replicating
and Self-Modifying Programs in Fraglets. In BIONETICS07 [1342], 2007.
doi: 10.1109/BIMNICS.2007.4610104. Fully available at http://cn.cs.unibas.
ch/people/ly/doc/bionetics2007-ysm.pdf [accessed 2008-05-04]. INSPEC Accession
Number: 10186239.
3010. Yixin Yan, Bin Xu, and Zhifeng Gu. Automatic Service Composition Using AND/OR Graph.
In CEC/EEE08 [1346], pages 335338, 2008. doi: 10.1109/CECandEEE.2008.124. INSPEC
Accession Number: 10475105. See also [204, 1146, 1797, 2998, 3011].
3011. Yixin Yan, Bin Xu, Zhifeng Gu, and Sen Luo. A QoS-Driven Approach for Semantic Service
Composition. In CEC09 [1245], pages 523526, 2009. doi: 10.1109/CEC.2009.44. INSPEC
Accession Number: 10839127. See also [1146, 1571, 1797, 2998, 3010].
3012. Yong Yan, Peng Wang, Chen Wang, Haofeng Zhou, Wei Wang, and Baile Shi. ANNE: An
Ecient Framework on View Selection Problem. In APWeb04 [3045], pages 384394, 2004.
doi: 10.1007/978-3-540-24655-8 41.
3013. Yuhong Yan and Xianrong Zheng. A Planning Graph Based Algorithm for Semantic Web
Service Composition. In CEC/EEE08 [1346], pages 339342, 2008. doi: 10.1109/CECan-
dEEE.2008.135. INSPEC Accession Number: 10475106. See also [204].
3014. Ang Yang, Yin Shan, and Lam Thu Bui, editors. Success in Evolutionary Computation,
volume 92/2008 in Studies in Computational Intelligence. Springer-Verlag: Berlin/Hei-
delberg, January 16, 2008. doi: 10.1007/978-3-540-76286-7. isbn: 3-540-76285-X and
3-540-76286-8. Google Books ID: wytCwGYoAowC. OCLC: 181090645, 244024657,
244040858, 261325352, and 300248166. Library of Congress Control Number
(LCCN): 2007939404.
3015. Jian Yang, Kamalakar Karlapalem, and Qing Li. A Framework for Designing Material-
ized Views in Data Warehousing Environment. In ICDCS97 [1363], pages 458465, 1997.
doi: 10.1109/ICDCS.1997.603380. CiteSeer
x
: 10.1.1.54.5417. INSPEC Accession Num-
ber: 5622820.
3016. Jian Yang, Kamalakar Karlapalem, and Qing Li. Algorithms for Materialized View
Design in Data Warehousing Environment. In VLDB97 [1434], pages 136145,
1997. Fully available at http://www.vldb.org/conf/1997/P136.PDF [accessed 2011-04-13].
CiteSeer
x
: 10.1.1.102.838.
3017. Jin-Hyuk Yang and Chan-Jin Chung. ASVMRT: Materialized View Selection Algo-
rithm in Data Warehouse. Journal of Information Processing Systems (JIPS), 2(2):6775,
June 2006, Korea Information Processing Society (KIPS): Seoul, South Korea. Fully available
at http://jips-k.org/dlibrary/JIPS_v02_no2_paper1.pdf [accessed 2006-04-12].
3018. Shengxiang Yang and Changhe Li. A Clustering Particle Swarm Optimizer for Locating and
Tracking Multiple Optima in Dynamic Environments. IEEE Transactions on Evolutionary
Computation (IEEE-EC), 14(6):959974, December 2010, IEEE Computer Society: Wash-
ington, DC, USA. doi: 10.1109/TEVC.2010.2046667. INSPEC Accession Number: 11675042.
3019. Shengxiang Yang, Yew-Soon Ong, and Yaochu Jin, editors. Evolutionary Computa-
tion in Dynamic and Uncertain Environments, volume 51/2007 in Studies in Compu-
tational Intelligence. Springer-Verlag: Berlin/Heidelberg, 2007. isbn: 3-540-49772-2
and 3-540-49774-9. Partly available at http://www.soft-computing.de/Jin_
CEC04T.pdf.gz [accessed 2009-07-12]. Google Books ID: 8w HGQAACAAJ and ciktAAAACAAJ.
OCLC: 77013308, 180965995, and 318293101.
3020. Zhenyu Yang, Ke Tang, and Xin Yao. Large Scale Evolutionary Optimization using Coop-
erative Coevolution. Information Sciences Informatics and Computer Science Intelligent
Systems Applications: An International Journal, 178(15), August 1, 2008, Elsevier Science
Publishers B.V.: Essex, UK. doi: 10.1016/j.ins.2008.02.017. Fully available at http://
nical.ustc.edu.cn/papers/yangtangyao_ins.pdf [accessed 2009-08-07].
3021. Ziheng Yang and Joseph P. Bielawski. Statistical Methods for Detecting Molecular Adapta-
tion. Trends in Ecology and Evolution (TREE), 15(12):496503, December 1, 2000, Elsevier
Science Publishers B.V.: Amsterdam, The Netherlands and Cell Press: St. Louis, MO, USA,
Katrina A. Lythgoe, editor. doi: 10.1016/S0169-5347(00)01994-7. Fully available at http://
citeseer.ist.psu.edu/old/yang00statistical.html [accessed 2009-07-10].
3022. Jinhui Yao, Shiping Chen, Chen Wang, David Levy, and John Zic. Accountability as a Service
for the Cloud: From Concept to Implementation with BPEL. In SERVICES Cup10 [2457],
pages 9198, 2010. doi: 10.1109/SERVICES.2010.79. INSPEC Accession Number: 11535248.
REFERENCES 1183
3023. Xin Yao, editor. Progress in Evolutionary Computation, AI93 (Melbourne, Victoria, Aus-
tralia, 1993-11-16) and AI94 Workshops (Armidale, NSW, Australia, 1994-11-22/23) on
Evolutionary Computation, Selected Papers, 19931994, Australia, volume 956/1995 in
Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/3-540-60154-6. isbn: 3-540-60154-6. Google Books ID: -17wqjv133EC.
OCLC: 32892128, 150398021, 246326423, 246326423, and 633901751.
3024. Xin Yao. An Empirical Study of Genetic Operators in Genetic Algorithms. Micropro-
cessing and Microprogramming, 38(1-5):707714, September 1993, Elsevier Science Pub-
lishers B.V.: Amsterdam, The Netherlands. Imprint: North-Holland Scientic Publish-
ers Ltd.: Amsterdam, The Netherlands. doi: 10.1016/0165-6074(93)90215-7. Fully avail-
able at http://www.cs.bham.ac.uk/
yliu/
publication/tec22r2_online.ps.gz [accessed 2009-08-07]. CiteSeer
x
: 10.1.1.14.1492.
INSPEC Accession Number: 6290499.
3027. Xin Yao, Feng-Sheng Wang, K. Padmanabhan, and Sancho Salcedo-Sanz. Hybrid Evolution-
ary Approaches to Terminal Assignment in Communications Networks. In Recent Advances in
Memetic Algorithms [1205], pages 129159. Springer-Verlag GmbH: Berlin, Germany, 2005.
doi: 10.1007/3-540-32363-5 7.
3028. Xin Yao, Edmund K. Burke, Jose Antonio Lozano, Jim Smith, Juan Julian Merelo-
Guervos, John A. Bullinaria, Jonathan E. Rowe, Peter Ti no, Ata Kab an, and Hans-
Paul Schwefel, editors. Proceedings of the 8th International Conference on Parallel Prob-
lem Solving from Nature (PPSN VIII), September 1822, 2008, Birmingham, UK, volume
3242/2004 in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin,
Germany. doi: 10.1007/b100601. isbn: 3-540-23092-0. Google Books ID: dsI61Gy0 yAC.
OCLC: 56583354, 57501425, and 249904829. Library of Congress Control Number
(LCCN): 2004112163.
3029. Yiyu Yao, Zhongzhi Shi, Yingxu Wang, and Witold Kinsner, editors. Proceedings of the
Firth IEEE International Conference on Cognitive Informatics (ICCI06), July 1719, 2006,
Beijng, China. IEEE Computer Society: Piscataway, NJ, USA. isbn: 1-4244-0475-4.
3030. Frank Yates. The Design and Analysis of Factorial Experiments. Imperial Bureau
of Soil Science, Commonwealth Agricultural Bureaux: Harpenden, England, UK, 1937
1952. isbn: 0851982204. Google Books ID: 5-7RAAAAMAAJ and YW1OAAAAMAAJ.
asin: B00086SIZ0. Technical Communication No. 35.
3031. Tao Ye. Large-Scale Network Parameter Conguration using On-line Simulation Framework.
PhD thesis, Rensselaer Polytechnic Institute, Computer and System Engineering, Depart-
ment of Electrical: Troy, NY, USA, ProQuest: Ann Arbor, MI, USA, March 2003, Shiv-
kumar Kalyanaraman, Advisor, Shivkumar Kalyanaraman, Biplab Sikdar, Christopher D.
Carothers, and Aparna Gupta, Committee members. Fully available at http://www.
ecse.rpi.edu/Homepages/shivkuma/research/papers/tao-phd-thesis.pdf [ac-
cessed 2008-10-16]. Order No.: AAI3088530. See also [3032].
3032. Tao Ye and Shivkumar Kalyanaraman. An Adaptive Random Search Alogrithm for Opti-
mizing Network Protocol Parameters. Technical Report, Rensselaer Polytechnic Institute,
Computer and System Engineering, Department of Electrical: Troy, NY, USA, 2001. Fully
available at http://www.ecse.rpi.edu/Homepages/shivkuma/research/papers/
tao-icnp2001.pdf [accessed 2008-10-16]. CiteSeer
x
: 10.1.1.24.8138. See also [3031].
3033. Gary G. Yen, Simon M. Lucas, Gary B. Fogel, Graham Kendall, Ralf Salomon, Byoung-Tak
Zhang, Carlos Artemio Coello Coello, and Thomas Philip Runarsson, editors. Proceedings
of the IEEE Congress on Evolutionary Computation (CEC06), 2006, Sheraton Vancouver
Wall Centre Hotel: Vancouver, BC, Canada. IEEE Computer Society: Piscataway, NJ, USA,
IEEE Computer Society: Piscataway, NJ, USA. isbn: 0-7803-9487-9. Google Books
ID: 4j5kNwAACAAJ and ZP7RPQAACAAJ. OCLC: 181016874 and 192047219. Catalogue
1184 REFERENCES
no.: 04TH8846. Part of [1341].
3034. John Jung-Woon Yoo, Soundar R. T. Kumara, and Dongwon Lee. A Web Service Composi-
tion Framework Using Integer Programming with Non-functional Objectives and Constraints.
In CEC/EEE08 [1346], pages 347350, 2008. doi: 10.1109/CECandEEE.2008.144. INSPEC
Accession Number: 10475108. See also [204, 662, 1998, 1999, 2064, 2066, 2067].
3035. Hee Yong Youn and We-Duke Cho, editors. Proceedings of the 10th International Conference
on Ubiquitous Computing (UbiComp08), September 2124, 2008, COEX, World Trade Cen-
ter: Gangnam-gu, Seoul, Korea, volume 344 in ACM International Conference Proceeding
Series (AICPS). ACM Press: New York, NY, USA.
3036. Marshall C. Yovits, editor. Advances in Computers, volume 31 in Advances in Computers.
Academic Press Professional, Inc.: San Diego, CA, USA and Elsevier Science Publishers
B.V.: Amsterdam, The Netherlands, October 1990. isbn: 0-12-012131-X. Google Books
ID: hIZDUKGj1w8C. OCLC: 23189502, 444245898, and 493579034. Library of Congress
Control Number (LCCN): 59-15761.
3037. Marshall C. Yovits, George T. Jacobi, and Gordon D. Goldstein, editors. Self-Organizing
Systems (Proceedings of the conference sponsored by the Information Systems Branch of the
Oce of Naval Research and the Armour Research Foundation of the Illinois Institute of
Technology.), May 2224, 1962, Chicago, IL, USA. Spartan Books: Washington, DC, USA.
asin: B000GXZFFG.
3038. Fei Yu, editor. Proceedings of the International Symposium on Electronic Commerce and Secu-
rity (ISECS08), August 35, 2008, Guangzhou, Guangd ong, China. isbn: 0-7695-3258-6.
Google Books ID: soBiPgAACAAJ. OCLC: 253559152 and 262691080.
3039. Gwoing Tina Yu. Program Evolvability Under Environmental Variations and Neutrality. In
ECAL07 [852], pages 835844, 2007. doi: 10.1007/978-3-540-74913-4 84. See also [3040].
3040. Gwoing Tina Yu. Program Evolvability Under Environmental Variations and Neutrality.
In GECCO07-II [2700], pages 29732978, 2007. doi: 10.1145/1274000.1274041. Workshop
Session Evolution of natural and articial systems - metaphors and analogies in single and
multi-objective problems. See also [3039].
3041. Gwoing Tina Yu and Peter J. Bentley. Methods to Evolve Legal Phenotypes. In PPSN
V [866], pages 280291, 1998. doi: 10.1007/BFb0056843. Fully available at http://www.
cs.ucl.ac.uk/staff/p.bentley/YUBEC2.pdf [accessed 2010-08-06].
3042. Gwoing Tina Yu and Julian Francis Miller. Finding Needles in Haystacks Is Not Hard
with Neutrality. In EuroGP02 [977], pages 4654, 2002. doi: 10.1007/3-540-45984-7 2.
Fully available at http://www.cs.mun.ca/
tinayu/index_files/addr/public_
html/EuroGP2002.pdf [accessed 2009-07-10]. CiteSeer
x
: 10.1.1.5.1303.
3043. Gwoing Tina Yu, Lawrence Davis, Cem M. Baydar, and Rajkumar Roy, editors. Evolu-
tionary Computation in Practice, volume 88/2008 in Studies in Computational Intelligence.
Springer-Verlag: Berlin/Heidelberg, 2008. doi: 10.1007/978-3-540-75771-9. Google Books
ID: om-uG-vk6GgC. Library of Congress Control Number (LCCN): 2007940149. Series
editor: Janusz Kacprzyk.
3044. Jerey Xu Yu, Xin Yao, Chi-Hon Choi, and Gang Gou. Materialized View Selection as Con-
strained Evolutionary Optimization. IEEE Transactions on Systems, Man, and Cybernetics
Part C: Applications and Reviews, 33(4):458467, November 2003, IEEE Systems, Man, and
Cybernetics Society: New York, NY, USA. doi: 10.1109/TSMCC.2003.818494. Fully avail-
able at http://www.cs.bham.ac.uk/
xin/papers/published_tsmc_view_nov03.
pdf [accessed 2009-04-09]. CiteSeer
x
: 10.1.1.6.4190. INSPEC Accession Number: 7782484.
3045. Jerey Xu Yu, Xuemin Lin, Hongjun Lu, and Yanchun Zhang, editors. Proceedings of
the 6th Asia-Pacic Web Conference on Advanced Web Technologies and Applications (AP-
Web04), April 1417, 2004, Hangzhou, Zh`eji ang, China, volume 3007 in Lecture Notes in
Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany. doi: 10.1007/b96838.
isbn: 3-540-21371-6. Google Books ID: yHylerhe4uIC. Library of Congress Control
Number (LCCN): 2004102546.
3046. Tian-Li Yu, Scott Santarelli, and David Edward Goldberg. Military Antenna Design Using
a Simple Genetic Algorithm and hBOA. In Scalable Optimization via Probabilistic Model-
ing From Algorithms to Applications [2158], Chapter 12, pages 275289. Springer-Verlag:
Berlin/Heidelberg, 2006. doi: 10.1007/978-3-540-34954-9.
3047. Jing Yuan, Yu Zheng, Chengyang Zhang, Wenlei Xie, Xing Xie, Guangzhong Sun, and Yan
Huang. T-Drive: Driving Directions Based on Taxi Trajectories. In ACM SIGSPATIAL GIS
REFERENCES 1185
2010 [35], pages 99108, 2010. doi: 10.1145/1869790.1869807.
3048. Deniz Yuret and Michael de la Maza. Dynamic Hill Climbing: Overcoming the
Limitations of Optimization Techniques. In TAINN93 [1643], pages 208212, 1993.
Fully available at http://www.denizyuret.com/pub/tainn93.html [accessed 2010-07-23].
CiteSeer
x
: 10.1.1.53.6367.
Z
3049. Lot A. Zadeh, Youakim Badr, Ajith Abraham, Yukio Ohsawa, Richard Chbeir, Fernando
Ferri, Mario Koppen, and Dominique Laurent, editors. Proceedings of the 5th IEEE/ACM
International Conference on Soft Computing as Transdisciplinary Science and Technology
(CSTST08), October 2731, 2008, University of Cergy-Pontoise: Cergy-Pontoise, France.
Association for Computing Machinery (ACM): New York, NY, USA. Library of Congress
Control Number (LCCN): 2009417688.
3050. Vladimir Zakian. New Formulation for the Method of Inequalities. Proceedings of the Insti-
tution of Electrical Engineers, 126:579584, 1979, Institution of Electrical Engineers (IEE):
London, UK and Institution of Engineering and Technology (IET): Stevenage, Herts, UK.
See also [3051].
3051. Vladimir Zakian. New Formulation for the Method of Inequalities. In Madan G. Singh,
editor, Systems and Control Encyclopedia [2504], pages 32063215, volume 5. Pergamon
Press: Oxford, UK, 1987. See also [3050].
3052. Vladimir Zakian. Perspectives on the Principle of Matching and the Method of Inequali-
ties. Control Systems Centre Report 769, University of Manchester Institute of Science and
Technology (UMIST), Control Systems Centre: Manchester, UK, 1992. See also [3053].
3053. Vladimir Zakian. Perspectives on the Principle of Matching and the Method of Inequalities.
International Journal of Control, 65(1):147175, September 1996, Taylor and Francis LLC:
London, UK. doi: 10.1080/00207179608921691. See also [3052].
3054. Vladimir Zakian and U. AI-Naib. Design of Dynamical and Control Systems by the Method
of Inequalities. IEE Proceedings D: Control Theory Control Theory and Applications, 120
(11):14211427, 1973, Institution of Engineering and Technology (IET): Stevenage, Herts,
UK and Institution of Electrical Engineers (IEE): London, UK.
3055. Ali M. S. Zalzala, editor. First International Conference on Genetic Algorithms in Engineer-
ing Systems: Innovations and Applications (GALESIA95), September 1214, 1995, Sheeld,
UK, volume 414 in IET Conference Publications. Institution of Engineering and Technology
(IET): Stevenage, Herts, UK.
3056. Ali M. S. Zalzala, editor. Proceedings of the Second IEE/IEEE International Conference
On Genetic Algorithms in Engineering Systems: Innovations and Applications (GALE-
SIA97), September 24, 1997, University of Strathclyde: Glasgow, Scotland, UK, volume
1997 (CP446) in IET Conference Publications. Institution of Engineering and Technology
(IET): Stevenage, Herts, UK. isbn: 0-85296-693-8. Google Books ID: uBPdAAAACAAJ.
OCLC: 37864166, 38989931, 84640200, 288957978, and 312682751. coden: IECPB4.
3057. Maciej Zaremba, Tomas Vitvar, Matthew Moran, Thomas Haselwanter, and Adina Sirbu.
WSMX Discovery for SWS Challeng. In Third Workshop of the Semantic Web Service
Challenge 2006 Challenge on Automating Web Services Mediation, Choreography and
Discovery [2690], 2006. Fully available at http://sws-challenge.org/workshops/
2006-Athens/papers/DERI-sws-challenge-3.pdf [accessed 2010-12-16]. See also [582,
1210, 1940, 3058, 3059].
3058. Maciej Zaremba, Tomas Vitvar, Matthew Moran, Marco Brambilla, Stefano Ceri, Dario
Cerizza, Emanuele Della Valle, Federico Michele Facca, and Christina Tziviskou. Towards
Semantic Interoperabilty In-depth Comparison of Two Approaches to Solving Seman-
tic Web Service Challenge Mediation Tasks. In ICEIS07 [494], pages 413421, volume
4, 2007. Fully available at http://sws-challenge.org/workshops/2007-Madeira/
PaperDrafts/2-DERI-Milano%20comparison.pdf [accessed 2010-12-16]. See also [582,
1210, 1940, 3057, 3059].
3059. Maciej Zaremba, Maximilian Herold, Raluca Zaharia, and Tomas Vitvar. Data and Pro-
cess Mediation Support for B2B Integration. In EON-SWSC08 [1023], 2008. Fully avail-
1186 REFERENCES
able at http://sunsite.informatik.rwth-aachen.de/Publications/CEUR-WS/
Vol-359/ [accessed 2010-12-16]. See also [582, 1210, 1940, 2166, 3057, 3058].
3060. Marvin Zelen and Norman C. Severo. Probability Functions. In Handbook of Mathemati-
cal Functions with Formulas, Graphs, and Mathematical Tables [2606], Chapter 26. Dover
Publications: Mineola, NY, USA, 1964.
3061. Zhi-hui Zhan and Jun Zhang. Discrete Particle Swarm Optimization for Multiple
Destination Routing Problems. In EvoWorkshops09 [1052], pages 117122, 2009.
doi: 10.1007/978-3-642-01129-0 15.
3062. Chuan Zhang and Jian Yang. Genetic Algorithm for Materialized View Selec-
tion in Data Warehouse Environments. In DaWaK99 [1924], pages 116125, 1999.
doi: 10.1007/3-540-48298-9 12.
3063. Chuan Zhang, Xin Yao, and Jian Yang. Evolving Materialized Views in Data Warehouse.
In CEC99 [110], pages 823829, 1999. doi: 10.1109/CEC.1999.782507. Fully available
at http://www.cs.bham.ac.uk/
romano/mlgroup/
papers/neural-networks-survey.pdf [accessed 2010-07-24].
3067. Jing Zhang, Weiran Nie, Mark Panahi, Yichin Chang, and Kwei-Jay Lin. Business
Process Composition with QoS Optimization. In CEC09 [1245], pages 499502, 2009.
doi: 10.1109/CEC.2009.81. INSPEC Accession Number: 10839133. See also [1571, 2264,
3073, 3074].
3068. Liang-Jie Zhang, editor. Proceedings of the 5th World Conference on Services: Part I
(SERVICES09-I), July 610, 2009, Los Angeles, CA, USA. IEEE Computer Society: Pis-
cataway, NJ, USA.
3069. Liang-Jie Zhang, Wil van der Aalst, and Patrick C. K. Hung, editors. Proceedings of the IEEE
International Conference on Services Computing (SCC07), July 913, 2007, Salt Lake City,
UT, USA. IEEE Computer Society Press: Los Alamitos, CA, USA. isbn: 0-7695-2925-9.
Library of Congress Control Number (LCCN): 2007927952. Order No.: P2925.
3070. P. Zhang and A.H. Coonick. Coordinated Synthesis of PSS Parameters in Multi-Machine
Power Systems Using the Method of Inequalities Applied to Genetic Algorithms. IEEE Trans-
actions on Power Systems, 15(2):811816, May 2000, IEEE Power & Energy Society (PES):
Piscataway, NJ, USA. doi: 10.1109/59.867178. Fully available at http://www.lania.mx/
jzhang/papers/zhongjinghui06.pdf [ac-
cessed 2010-08-03]. CiteSeer
x
: 10.1.1.140.3747. INSPEC Accession Number: 9109532.
3080. Chi Zhou, Weimin Xiao, Thomas M. Tirpak, and Peter C. Nelson. Evolving Accurate and
Compact Classication Rules with Gene Expression Programming. IEEE Transactions on
Evolutionary Computation (IEEE-EC), 7(6):519531, December 2003, IEEE Computer So-
ciety: Washington, DC, USA. doi: 10.1109/TEVC.2003.819261. INSPEC Accession Num-
ber: 7826902.
3081. Xiaofang Zhou, editor. Proceedings of the 13th Australasian Database Conference (ADC02),
JanuaryFebruary 2002, Monash University: Melbourne, VIC, Australia, volume 5 in Con-
ferences in Research and Practice in Information Technology (CRPIT). ACM Press: New
York, NY, USA. isbn: 0-909-92583-6.
3082. Xiaofang Zhou, Maria E. Orlowska, and Yanchun Zhang, editors. Proceedings of the 5th Asia-
Pacic Web Conference (APWeb03), April 2325, 2003, Xan, Shanx, China, volume 2642
in Lecture Notes in Computer Science (LNCS). Springer-Verlag GmbH: Berlin, Germany.
doi: 10.1007/3-540-36901-5. isbn: 3-540-02354-2.
3083. Jianping Zhu, Pete Bettinger, and Rongxia (Tiany) Li. Additional Insight into the Per-
formance of a New Heuristic for Solving Spatially Constrained Forest Planning Problems.
Silva Fennica, 41(4):687698, Finnish Society of Forest Science, The Finnish Forest Research
Institute: Finland, Eeva Korpilahti, editor. Fully available at http://www.metla.fi/
silvafennica/full/sf41/sf414687.pdf [accessed 2008-08-23].
3084. Kenny Qili Zhu. A Diversity-Controlling Adaptive Genetic Algorithm for the Vehi-
cle Routing Problem with Time Windows. In ICTAI03 [1367], pages 176183, 2003.
doi: 10.1109/TAI.2003.1250187. INSPEC Accession Number: 7862120.
3085. Liming Zhu, Roger L. Wainwright, and Dale A. Schoenefeld. A Genetic Algorithm
for the Point to Multipoint Routing Problem with Varying Number of Requests. In
CEC98 [2496], pages 171176, 1998. doi: 10.1109/ICEC.1998.699496. Fully available
at http://euler.mcs.utulsa.edu/
(, )
)-EAs . . . . . . . . . . . . . . . . . . . . . . . . . 267
(, ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
(, )-EAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
(/, )-EAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
(/)-EAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
(1)-EAs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
()-EAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
1/5th Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
2
Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
GP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
1
/5th Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
-algebra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
-EO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
k-Means Clustering . . . . . . . . . . . . . . . . . . . . . . . . 454
NP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
NP-Completeness . . . . . . . . . . . . . . . 117, 147, 247
NP-Hardness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
1-PX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
2-PX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
80x86 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
A
A
2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
Binomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
chi-square . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
continuous . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
estimation of, algorithm . . . . . . . . . . . . . . . 27,
32, 267, 367, 427, 431, 442, 447, 452 f.,
455, 554, 775
exponential . . . . . . . . . . . . . . . . . . . . . . . . . . . 682
normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
multivariate . . . . . . . . . . . . . . . . . . . . . . . . 680
standard. . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
Poisson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
Students t . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
uniform . . . . . . . . . . . . . . . . . . . . . . . . . . 668, 676
continuous . . . . . . . . . . . . . . . . . . . . . . . . . . 676
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
Diversication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Diversity . . . . . . . . . . . . 70, 154, 216, 330, 452, 547
Divisor
greatest common . . . . . . . . . . . . . . . . . . . . . . 180
DLS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 f.
DNA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272, 338
DOE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
DoE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
Domination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
constrained. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
rank. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
resistance. . . . . . . . . . . . . . . . . . . . . . . . . . 69, 198
Domino
convergence . . . . . . . . . . . . . . . . 153 f., 218, 562
Domino Convergence . . . . . . . . . . . . . . . . . . . . . . . 154
Dont Care. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Downhill Simplex. . . 32, 104, 264, 420, 463, 501,
945
DPE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
Drunkards Walk . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
1194 INDEX
DTM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145, 147, 149
Duplication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 f.
DVRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
E
E-Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 f., 945
E-code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
EA . . . . . . . . . . . . . . . . . . . . . . . . . . . 3, 32, 36 f., 75 .,
84, 86, 93 ., 121, 155 ., 162 f., 172 f.,
183 f., 207, 210, 212, 229 f., 245, 253 .,
258, 261 267, 269 f., 272 ., 277, 279,
285 ., 289, 294, 302, 306 f., 309, 312,
324 f., 327, 335, 359 f., 377, 379 f., 393,
412, 419, 427, 434, 452 f., 457, 463 f.,
466, 512, 538, 541 f., 544 ., 551, 562,
566 ., 577, 622, 699, 717, 746, 945
hybrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
EARL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
EBCOA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
EC . . . 3, 24, 31 f., 36, 48, 70, 156, 180, 253, 379,
537, 553, 945
ECML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132, 461
ECML PKDD. . . . . . . . . . . . . . . . . . . . . . . . . 135, 462
Ecological Selection . . . . . . . . . . . . . . . . . . . . . . . . 260
Economics
mathematical . . . . . . . . . . . . . . . . . . . . . . 23, 509
EDA . . 27, 32, 267, 367, 427, 431, 434, 442, 447,
452 f., 455, 554, 775
Edge Encoding. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
EDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
EDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Eect
Baldwin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
hiding. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Eectiveness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Eciency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Elitism. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267, 546
Embrogeny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Embryogenesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Embryogenic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Embryogeny
articial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
computational . . . . . . . . . . . . . . . . . . . . . . . . . 272
EMO 55, 65, 202, 253, 257, 259 f., 279, 311, 319,
353, 374, 384, 414, 421, 429, 460, 467,
474, 484
EMOO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
EN 284 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
Encapsulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 f.
Encoding
cellular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Endnote . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945
Endogenous . . . . . . . . . . . . . . . . 90, 360, 365 ., 481
EngOpt . . 132, 228, 234, 237, 251, 320, 355, 375,
385, 415, 422, 430, 461, 468, 475, 478,
485, 490, 496, 500, 502, 506, 518, 521,
524, 528
Enterprise Resource Planning . . . . . . . . . . . . . . 536
Entropy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
continuous . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
dierential . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
information . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
Enumeration
complete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
exhaustive . . . 113, 116 f., 143, 168, 210, 212
Environment Selection . . . . . . . . . . . . . . . . . . . . . 261
Environmental Selection. . . . . . . . . . . . . . . . . . . . 260
EO . . . . . . . . . . . . . . . . . . . 3, 25, 32, 172, 493 f., 945
GEO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
Eoarchean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
EP. . . . . . . . . . . . . . . . . . . 27, 32, 264, 380, 413, 415
Ephemeral Random Constants . . . . . . . . . . . . . 532
EPIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Epistacy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Epistasis . 163, 177, 181, 204, 389, 404, 554, 560,
562, 569, 577 f.
Epistatic Road . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
Epistatic Variance. . . . . . . . . . . . . . . . . . . . . . . . . . 163
Equilibrium. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
punctuated. . . . . . . . . . . . . . . . . . . . . . . 172, 494
Equivalence
class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Ergodicity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 f.
ERL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
ERP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
mean square . . . . . . . . . . . . . . . . . . . . . . . . . . 692
threshold. . . . . . . . . . . . . . . . . . . . . . . . . 163, 562
type 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
type 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
Error Threshold . . . . . . . . . . . . . . . . . . . . . . . 163, 562
ES. . . 3, 27, 32, 37, 155, 162, 188, 191, 216, 229,
263 f., 266 f., 286, 289, 302, 359 f., 362,
364, 367 f., 370 ., 377, 419, 425, 427,
444, 481, 566, 580 f., 760, 786, 788, 945
dierential . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3,
27, 32, 84, 191, 207, 262 f., 419 f., 425,
444, 463, 580, 771, 794, 796
Estimation Of Distribution Algorithm. . . . . . 27,
32, 267, 367, 427, 431, 442, 447, 452 f.,
455, 554, 775
Estimation Theory . . . . . . . . . . . . . . . . . . . . . . . . . 691
Estimator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691 f.
best linear unbiased . . . . . . . . . . . . . . . . . . . 696
maximum likelihood. . . . . . . . . . . . . . . . . . . 695
point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
unbiased . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
EUFIT . . 132, 320, 355, 375, 385, 415, 422, 430,
461, 468, 475, 485
EUROGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . 354, 374
EuroGP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
INDEX 1195
Event
certain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
conicting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
elementary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
impossible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
random . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
EvoCOP. 321, 355, 375, 385, 416, 422, 430, 461,
468, 475, 485
Evolution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21, 509
Baldwinian. . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
chemical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
dierential . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
grammatical . . . . . . . . . . . . . . . . . 204, 273, 403
Lamarckian . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Evolution Strategy . . . . . . . . . . . . . . . . . . . 3, 27, 32,
37, 155, 162, 188, 191, 216, 229, 263 f.,
266 f., 286, 289, 302, 359 f., 362, 364,
367 f., 370 ., 377, 419, 425, 427, 444,
481, 566, 580 f., 760, 786, 788, 945
dierential . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3,
27, 32, 84, 191, 207, 262 f., 419 f., 425,
444, 463, 580, 771, 794, 796
Evolutionary Algorithm. . . . . . . 3, 32, 36 f., 75 .,
84, 86, 93 ., 121, 155 ., 162 f., 172 f.,
183 f., 207, 210, 212, 229 f., 245, 253 .,
258, 261 267, 269 f., 272 ., 277, 279,
285 ., 289, 294, 302, 306 f., 309, 312,
324 f., 327, 335, 359 f., 377, 379 f., 393,
412, 419, 427, 434, 452 f., 457, 463 f.,
466, 512, 538, 541 f., 544 ., 551, 562,
566 ., 577, 622, 699, 717, 746, 945
generational . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
hybrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
multi-objective . . . . . . . . . . . . . . . . . . . . . . . . 253
steady-state . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Evolutionary Computation . . 3, 24, 31 f., 36, 48,
70, 156, 180, 253, 379, 537, 553, 945
Evolutionary Multi-Objective Optimization 253
Evolutionary Operation . . . . . . . . . . . . . . . 264, 501
randomized . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Evolutionary Programming27, 32, 264, 380, 413
Evolutionary Reinforcement Learning. . . . . . 457
Evolvability . . . . . . . . . . . . . . . . . . . . . . . . . . . 163, 172
EvoNUM 321, 355, 375, 386, 416, 423, 430, 461,
469, 502
EVOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
EvoRobots. . . .322, 356, 375, 386, 416, 423, 431,
462, 469, 476, 486
EvoWorkshops318, 353, 373, 383, 414, 421, 429,
459, 467, 474, 484
EWSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134, 461
Exhaustive Enumeration . . 113, 116 f., 143, 168,
210, 212
Exogenous. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90, 360
expand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
Expected value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
Experiment
Miller-Urey . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Explicit Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Explicit Representation . . . . . . . . . . . . . . . . . . . . 270
Exploitation. . . . . . . . . . . . . . . . . . . . . . 156, 162, 216
Exploration. . . . . . . . . . . . . . . . . . 155, 216, 360, 512
Exponential Distribution . . . . . . . . . . . . . . . . . . . 682
External Decision Maker . . . . . . . . . . . . . 75 ., 281
Extinctive Selection . . . . . . . . . . . . . . . . . . . 183, 265
left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Extradimensional Bypass. . . . . . . . . . . . . . . . . . . 219
Extrema Selection. . . . . . . . . . . . . . . . . . . . . . . . . . 174
Extremal Optimization3, 25, 32, 172, 493 f., 945
generalized . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
Extremum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
F
Factorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
False Negative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
False Positive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
FDC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
FDL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4, 947
FEA. 320, 354, 374, 384, 415, 422, 429, 460, 468
Feasibility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Feature Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Fibonacci Path. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
Filter
Butterworth. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Chebyche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Finite State Machine . . . . . . . . . . . . . . . . . . . . . . . 380
First Hitting Time . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Fitness . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94, 257, 259
assignment process . . . . . . . . . . . . . . . . . . . . 274
nature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
optimization . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Fitness Assignment . . . . . . . . . . . . . . . . . . . . . . . . 274
Pareto ranking . . . . . . . . . . . . . . . . . . . . . . . . 275
Prevalence ranking . . . . . . . . . . . . . . . . . . . . 275
Tournament . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
weighted sum . . . . . . . . . . . . . . . . . . . . . . . . . 275
Fitness Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Fitness Landscape. . . . . . . . . . . . . . . . . . . . . . . . . . . 93
deceptive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
ND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
neutral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
NK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
NKp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
NKq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
p-Spin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
rugged . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
technological . . . . . . . . . . . . . . . . . . . . . . . . . . 556
FLAIRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
FOCI . . . . 321, 355, 375, 386, 416, 423, 431, 461,
469, 475, 485
FOGA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Forma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 f., 163
analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Formae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
1196 INDEX
Free Lunch
no . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Freight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
Frequency
absolute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
relative. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
Full . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
automatically-dened . . . . . . 273, 400 f., 403
benchmark . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
cumulative distribution. . . . . . . . . . . . . . . . 658
tness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Griewangk . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
shifted. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
Griewank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
shifted. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
heuristic . . . . . . . . . . . . . . . . . . . . . . 34, 274, 518
monotone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
objective . . . . . . . . . . . . . . . . . . . 22, 36, 44, 509
conicting . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
harmonic . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
independent . . . . . . . . . . . . . . . . . . . . . . . . . 56
penalty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
adaptive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
dynamic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
probability density . . . . . . . . . . . . . . . . . . . . 659
probability mass . . . . . . . . . . . . . . . . . . . . . . 659
royal road. . . . 154, 173, 455, 559 562, 566
sphere. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
trap . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167, 557 f.
Weierstra . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Functional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
Functionality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
FWGA . . . . . . . . . . . . . . . . . . . . . . 134, 355, 475, 485
G
G3P. . . . . . . . . . . . . . . . . . . . . . . . . 273, 381, 403, 409
GA. . . . . . . . . . . . . . . . . . . 3, 25, 32, 37, 43, 48, 82
85, 90, 95, 101, 105, 119, 139, 154 f.,
163, 167, 174, 183, 188, 207, 215, 217,
248, 262 265, 271, 278, 290 f., 296,
325 329, 331, 335, 337 ., 341 f., 345
348, 350, 357, 377, 380 f., 389, 398,
407, 427, 434, 439, 454 f., 457 f., 463 .,
541, 554, 558 f., 562 f., 565 f., 568, 573,
580, 945
compact. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
messy . . . . . . . . . . . . . . . . . 184, 327, 347 f., 395
Gads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
GALESIA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Gauss-Markov Theorem. . . . . . . . . . . . . . . . . . . . 696
GCD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
GE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204, 273, 403
GEC321, 355, 375, 385, 416, 422, 430, 461, 468,
475, 485
GECCO . 317, 353, 373, 383, 414, 421, 429, 459,
467, 473, 484
GEM 321, 355, 375, 385, 416, 422, 430, 461, 469
Gene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
reuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Generality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Generalized Extremal Optimization. . . . . . . . 495
Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Generational . . . . . . . . . . . . . . . . . . . . . . . . . 265, 546 f.
Genetic Algorithm. . . . 3, 25, 32, 37, 43, 48, 82
85, 90, 95, 101, 105, 119, 139, 154 f.,
163, 167, 174, 183, 188, 207, 215, 217,
248, 262 265, 271, 278, 290 f., 296,
325 329, 331, 335, 337 ., 341 f., 345
348, 350, 357, 377, 380 f., 389, 398,
407, 427, 434, 439, 454 f., 457 f., 463 .,
541, 554, 558 f., 562 f., 565 f., 568, 573,
580, 945
compact. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
human based . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
interactive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
messy. . . . . . . . . . . . . . . . . . . . . . 184, 347 f., 395
Genetic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . 380
real-coded. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Genetic Assimilation . . . . . . . . . . . . . . . . . . . . . . . 465
Genetic Programming. . . . . . . . . . . . . . . . . . . . . . . . 3,
32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 386 f., 389, 396, 398, 400 f., 403,
405 f., 408, 411 f., 427, 434, 447, 531,
534, 536, 561, 566, 568, 824, 945
byte code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
cartesian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
compiling system. . . . . . . . . . . . . . . . . . . . . . 405
crossover
homologous . . . . . . . . . . . . . . . . . . . . 338, 407
function nodes . . . . . . . . . . . . . . . . . . . . . . . . 387
grammar-guided . . . . . . . . 273, 381, 403, 409
graph-based . . . . . . . . . . . . . . . . . . . . . . . 32, 409
linear . . . . 32, 327, 381, 400, 403 408, 412
page-based. . . . . . . . . . . . . . . . . . . . . . . . . . 408
non-terminal nodes . . . . . . . . . . . . . . . . . . . . 387
stack-based . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Standard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
standard32, 273, 386 f., 389, 399, 403 f., 412
strongly-typed . . . . . . . . . . . . . . . . . . . . . . . . . . 3,
32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 386 f., 389, 396, 398, 400 f., 403,
405 f., 408, 411 f., 427, 434, 447, 531,
534, 536, 561, 566, 568, 824, 945
terminal nodes . . . . . . . . . . . . . . . . . . . . . . . . 387
tree-based . . . . . . . . . . . . . . . . . . . 381, 386, 389
Genetic Repair . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 f.
GENITOR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Genome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82, 326
Genomes
string . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Genotype. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39, 82
Genotype-Phenotype Mapping . . . . . . . . 39 ., 71,
INDEX 1197
86 f., 90 f., 95 f., 101, 103 f., 111, 113,
119, 162, 168, 174 f., 179, 181 ., 204,
209, 215 ., 219, 254, 258, 263, 270
273, 325, 327, 348 ., 357, 360, 377,
380, 404, 406 f., 433 f., 437, 443 f., 481,
542, 569, 580, 711, 834
direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
GEO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
GEWS . . . . . . . . . . . . . . . . . . . . . . 132, 228, 321, 385
GFC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
GGGP. . . . . . . . . . . . . . . . . . . 32, 273, 381, 403, 409
GICOLAG. . . . 134, 228, 235, 237, 251, 321, 356,
375, 386, 416, 423, 431, 461, 469, 475,
479, 485, 491, 496, 500, 502, 506, 518,
521, 524, 528
Glass
spin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93, 557
Global Optimization . . . . . . . . . . . . . . 3, 22, 31, 48,
51, 55, 90, 93, 99, 105, 107, 139, 151,
154 f., 172, 174, 187 f., 215, 231, 243,
267, 509, 511, 542, 553, 566, 649, 945
Goal Attainment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Goal Programming . . . . . . . . . . . . . . . . . . . . . . 72, 75
GP . . . . 3, 32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 384, 386 f., 389, 396, 398, 400 f.,
403, 405 f., 408, 411 f., 427, 434, 447,
531, 534, 536, 561, 566, 568, 824, 945
cartesian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
grammar-guided . . . . . . . . . . . . . 273, 381, 403
graph-based . . . . . . . . . . . . . . . . . . . . . . . 32, 409
linear . . . . 32, 327, 381, 400, 403 408, 412
standard32, 273, 386 f., 389, 399, 403 f., 412
STGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3,
32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 386 f., 389, 396, 398, 400 f., 403,
405 f., 408, 411 f., 427, 434, 447, 531,
534, 536, 561, 566, 568, 824, 945
GPM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 ., 71,
86 f., 90 f., 95 f., 101, 103 f., 111, 113,
119, 162, 168, 174 f., 179, 181 ., 204,
209, 215 ., 219, 254, 258, 263, 270
273, 325, 327, 348 ., 357, 360, 377,
380, 404, 406 f., 433 f., 437, 443 f., 481,
542, 569, 580, 711, 834
direc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
explicit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
indirect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
ontogenic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
GPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
GPTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
GR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
GR Hypothesis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53, 104
descend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Gradient Descent
stochastic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Grammar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Grammar-Guided Genetic Programming . . 273,
381, 403
Grammatical Evolution. . . . . . . . . . . 204, 273, 403
Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25, 512, 651
acyclic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
directed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
nite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
innite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
theory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .651
undirected . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
weighted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
GRASP . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 157, 499
Gray Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Greedy Search . . . . . . . . . . . . . . 32, 177, 464, 519 f.
Griewangk Function. . . . . . . . . . . . . . . . . . . . . . . . 601
shifted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
Griewank Function. . . . . . . . . . . . . . . . . . . . . . . . . 601
shifted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
Grow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
GSM/GPRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
H
HAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Halting Criterion. . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Hardness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 f.
Harmony Search. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Haystack
needle in a . . . . . . . . . 103, 168, 175, 180, 465
HBGA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
hBOA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
HC. 32 f., 41, 85, 96, 99, 114, 116, 157, 160, 165,
167, 169, 172, 176, 181, 210 f., 229
232, 238 ., 243, 245 f., 248, 252, 266,
296, 359 f., 377, 400, 412, 425, 463 f.,
482, 501, 559, 563, 565, 735, 737, 945
with random restarts . . . . . . . . . . . . . . . . . . 501
HCwL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Headless Chicken. . . . . . . . . . . . . . . . . . . . . . 339, 399
Herman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Hessian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Heuristic . . . . . . . . . . . . . . . . . . . . . . . 34, 36, 274, 518
admissible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
monotonic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
Hiding Eect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Hill Climbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 f.,
41, 85, 96, 99, 114, 116, 157, 160, 165,
167, 169, 172, 176, 181, 210 f., 229
232, 238 ., 243, 245 f., 248, 252, 266,
296, 359 f., 377, 400, 412, 425, 463 f.,
482, 501, 559, 563, 565, 735, 737, 945
multi-objective . . . . . . . . . . . . . . . . . . . . . . . . 230
randomized restarts . . . . . . . . . . . . . . . . . . . 232
stochastic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
with random restarts . . . . . . . . . . . . . . . . . . 501
1198 INDEX
Hill Climbing With Random Restarts. . . . . . 501
HIS . 128, 227, 234, 236, 250, 319, 353, 374, 384,
415, 421, 429, 460, 468, 474, 478, 484,
490, 496, 500, 502, 506, 518, 521, 524,
528
Homologous Crossover . . . . . . . . . . . . 338, 340, 407
Homology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
HRO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
HS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
HX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Hybridization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 f.
Hyperplane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Hypothesis
building block. . . . . . . . . . . . . . . . . . . . . . . . . 346
I
IAAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128, 474, 484
ICAART. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
ICANNGA . . . 319, 353, 374, 384, 415, 422, 429,
460, 468, 474, 484
ICARIS . . . . . . . . . . . . . . . . . . . . . . . . . . 130, 227, 320
ICCI 128, 319, 353, 374, 384, 415, 422, 429, 460,
468, 474, 484
ICEC. . . . 322, 356, 376, 386, 416, 423, 431, 462,
469, 476, 486
ICGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
ICML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129, 460
ICMLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134, 462
ICNC. . . . 319, 354, 374, 384, 415, 422, 429, 460,
468, 474, 484
ICSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475, 485
ICTAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
IDDFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 516 f.
IEA/AIE. . . . . . . . . . . . . . . . . . . . . . . . . 133, 475, 485
IGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
IICAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
IJCAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
IJCCI . . . 321, 356, 375, 386, 416, 423, 431, 462,
469, 476, 486
Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704
Implicit Parallelistm. . . . . . . . . . . . . . . . . 263, 345 f.
in.west . . . . . . . . . . . . . . . . . . . . . . . . . . . 537, 543, 549
Increasing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
monotonically . . . . . . . . . . . . . . . . . . . . . . . . . 647
Independence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Indirect Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Indirect Representation . . . . . . . . . . . . . . . . . . . . 272
Individual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Inductor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
inequalities
method of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Infeasibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Inx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Informed Search . . . . . . . . . . . . . . . . . . . . . . . . 32, 518
Injective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
Injectivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
Input-Processing-Output . . . . . . . . . . . . . . . . . . . 379
Integer Programming. . . . . . . . . . . . . . . . . . . . . . . . 29
mixed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Intel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Intelligence
articial . . . . . . . . . . . . . . . . . . . . 31, 35, 76, 536
swarm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 37
Intensication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Interval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
condence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696
Intrinsic Parallelism. . . . . . . . . . . . . . . . . . . . . . . . 263
Intron. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
explicitly dened . . . . . . . . . . . . . . . . . . . . . . 407
implicit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Inversion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
IPO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Irreexivenss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
ISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133, 475, 485
isGoal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
ISICA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
ISIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Isolated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Isomorphism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
isomorphism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Isotropic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Iteratively Deepening Depth-First Search . . 516
IUMDA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
IWACI. . . 322, 356, 376, 386, 417, 423, 431, 462,
469, 476, 486
IWLCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
IWNICA. 321, 356, 375, 386, 416, 423, 431, 462,
469, 476, 486
J
JAPHET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
JBGP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
JME. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Job Shop Scheduling . . . . . . . . . . . . . . . . . . . . . . . . 26
JSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 f.
Juxtapositional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
JVM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
K
k-PK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
k-PX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Kauman NK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
Keys
random . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Knapsack Problem . . . . . . . . . . . . . . . . . . . . . . . . . 147
Kung-Fu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Kurtosis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
excess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
L
Lamarck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164, 464
Lamarckism. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Landscape
tness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
problem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Laplace
INDEX 1199
assumption. . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
Large Numbers
law of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
Large-scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Las Vegas Algorithm. . . . . . . . . . . . . . .41, 106, 148
Layout
circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
LCS . . . . . . . . . . . . . . . . . 3, 32, 264, 457 f., 536, 945
Michigan-style . . . . . . . . . . . . . . . . . . . . . . . . 458
Pitt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
Pittsburgh-style . . . . . . . . . . . . . . . . . . . . . . . 458
Learning
linkage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Learning Classier System . . . . 3, 32, 264, 457 f.,
536, 945
Michigan-style . . . . . . . . . . . . . . . . . . . . . . . . 458
Pittsburgh-style . . . . . . . . . . . . . . . . . . . . . . . 458
Left-total . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
Length
dened. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Lexicographic Optimization . . . . . . . . . . . . . . . . . 59
LGP . . . . . . . . . . 32, 327, 381, 400, 403 408, 412
page-based . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
LGPL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955
License
FDL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4, 947
LGPL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955
Lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 f.
Likelihood
function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
Linear Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . 62
Linear Genetic Programming . 32, 327, 381, 400,
403 408, 412
page-based . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Linear Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Linkage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Linkage Learning. . . . . . . . . . . . . . . . . . . . . . . . . . . 347
LION. . . . 133, 228, 234, 237, 251, 321, 355, 375,
385, 416, 422, 430, 461, 469, 475, 478,
485, 490, 496, 500, 502, 506, 518, 521,
524, 528
List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
addItem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
appendList . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
createList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
deleteItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
deleteRange . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
insertItem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
listToSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
removeItem . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
reverseList . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
setToList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
subList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
search (sorted) . . . . . . . . . . . . . . . . . . . . . . . . 650
search (unsorted). . . . . . . . . . . . . . . . . . . . . . 650
sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
LLN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
Local Search. . . . . . . . . . . . . . . . . 229, 243, 463, 514
Locality . . . . . . . . . . . . . . . . . . . . . . . . . . . 84, 162, 218
Locus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Logistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537, 622
Long k-Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
Long Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
LS-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
LSCS . . . . 133, 228, 235, 237, 251, 321, 355, 375,
385, 416, 423, 430, 461, 469, 475, 478,
485, 491, 496, 500, 502, 506, 518, 521,
524, 528
Lunch
no free . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
M
MA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 37, 463 f.
Machine
nite state . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Turing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
deterministic. . . . . . . . . . . . . . . . . . . . . . . . 145
non-deterministic . . . . . . . . . . . . . . . . . . . 146
Machine Learning. . . . . . . . . . . . 187, 212, 380, 536
Macro
automatically-dened. . . . . . . . . . . . . 401, 403
Management
customer relationship. . . . . . . . . . . . . . . . . .536
Many-Objectivity . . . . . . . . . . . . 197 f., 201 f., 1213
Mapping
Genotype-Phenotype . . . . . . . . . . . . . . . . . . 270
genotype-phenotype . . . . . . . . . . . . . 39 ., 71,
86 f., 90 f., 95 f., 101, 103 f., 111, 113,
119, 162, 168, 174 f., 179, 181 ., 204,
209, 215 ., 219, 254, 258, 263, 270
273, 325, 327, 348 ., 357, 360, 377,
380, 404, 406 f., 433 f., 437, 443 f., 481,
542, 569, 580, 711, 834
ontogenic . . . . . . . . . . . . . . . . . . . . . . . . . . 86, 273
phenotype-genotype . . . . . . . . . . . . . . . . . . . 464
MAS . . 37, 59, 125, 190, 207, 226, 315, 352, 382,
459, 473
Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
dened length. . . . . . . . . . . . . . . . . . . . . . . . . 341
order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Mating Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89, 660
global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52, 89
Maximum Likelihood Estimator . . . . . . . . . . . . 695
MCDA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
MCDM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76, 129
MDVRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
Mean
arithmetic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
Median. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665, 667
Meme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Memetic Algorithm . . . . . . . . . . . . . . . 32, 37, 463 f.
Memory Consumption. . . . . . . . . . . . . . . . . . . . . . 514
MENDEL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
1200 INDEX
Messy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Messy GA . . . . . . . . . . . . . . . . . . . . . . 184, 347 f., 395
Messy Genome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
META. . . 228, 235, 237, 251, 322, 356, 376, 386,
417, 423, 431, 462, 469, 476, 479, 486,
491, 497, 500, 506
Metaheuristic . . . . . . . . . . . . . . . . . 3, 24, 31 f., 34 .,
39, 41, 109, 112 f., 139, 141, 143, 165,
168 f., 197 f., 213, 225, 253 f., 262, 367,
489, 540 f., 1209
Method
raindrop. . . . . . . . . . . . . . . . . . . . . . . . . . . 36, 235
Method Of Inequalities . . . . . . . . . . . . . 72 75, 77
Metropolis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 .
mGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184, 347, 349
MIC 227, 234, 236, 250, 320, 354, 374, 384, 415,
422, 429, 460, 468, 474, 478, 484, 490,
496, 500, 506
MICAI. . . 131, 320, 354, 374, 384, 415, 422, 429,
460, 468, 474, 484
MicroGP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Miller-Urey experiment. . . . . . . . . . . . . . . . . . . . . 258
Min-Max
weighted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Minimization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Minimum. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89, 660
global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52, 89
Mining
data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
MIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
ML. . . . . . . . . . . . . . . . . . . . . . . . . . 187, 212, 380, 536
MLE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Modularity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Module
acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
MOEA55, 65, 72, 202, 253, 257, 259 f., 274, 279,
311
MOI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 75, 77
Moment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
about mean . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
central . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
standardized . . . . . . . . . . . . . . . . . . . . . . . . . . 664
statistical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
Monotone
function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
Monotonic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
Monotonicity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Monte Carlo Algorithm. . . . . . . . . . . 106, 148, 243
MOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55, 197
Morphogenesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
MPX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335, 338, 407
MSE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
Multi-Agent System . 37, 59, 125, 190, 207, 226,
315, 352, 382, 459, 473
Multi-Criterion Decision Making . . . . . . . . . . . . 76
Multi-Modality139, 151, 161, 165, 255, 452, 454
Multi-Objective Evolutionary Algorithm 55, 65,
202, 253, 257, 259 f., 279, 311
Multi-Objectivity. 39, 54 57, 59 62, 64 f., 70,
76 f., 89, 93 ., 101, 104, 106, 158, 182,
197 f., 201, 213, 230, 232, 238, 253 .,
274, 308, 434, 453, 482, 534, 537 f.,
554, 566, 570, 716, 728, 737, 841, 906,
1213, 1221 .
Multi-Objectivization . . . . . . . . . . . . . . . . . . . . . . 158
Mutation . . . . . . . 262, 306 f., 330, 340, 393 f., 543
bit-ip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
multi-point . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
single-point . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
strength. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
N
NaBIC. . . 322, 356, 375, 386, 416, 423, 431, 462,
469, 476, 486
Naivet . . 19 E. . . . . . . . . . . . . . . . . . . 279, 536, 639
Natural Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . 260
ND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167, 172 f., 557
ND Landscape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
Needle-In-A-Haystack . . 103, 168, 175, 180, 465,
563
Negative
false. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
Negative Slope Coecient . . . . . . . . . . . . . . . . . . 163
Neighborhood Search. . . . . . . . . . . . . . . . . . . . . . . 512
Neighboring Relation. . . . . . . . . . . . . . . . . . . . . . . . 86
Nelder & Mead. 32, 104, 264, 420, 463, 501, 945
Network
articial neural . . 187, 191 f., 204, 273, 389,
396, 406, 536, 541
Baesian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
neutral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
random Boolean. . . . . . . . . . . . . . . . . . . . . . . 174
Neural Network
articial187, 191 f., 204, 273, 389, 396, 406,
536, 541
Neutral
network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Neutrality. . . . . . . . . . . . . 171, 556 f., 559, 569, 578
NFL. . . . . . . . . . . . . . . . . . . . 95, 114, 168, 209 213
NIAH. . . . . . . . . . . . . . . . . . . 103, 168, 175, 180, 465
Niche Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
Niche Preemption Principle . . . . . . . . . . . . . . . . 151
NICSO . . 131, 227, 234, 236, 250, 320, 354, 374,
385, 415, 422, 430, 460, 468, 474, 478,
484, 490, 496, 500, 502, 506, 518, 521,
524, 528
NK. . . . . . . . . . . . . . . . . . . . . . . . . . 161, 179, 553, 556
NKp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173, 556
NKq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173, 556
INDEX 1201
No Free Lunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
No Free Lunch Theorem 95, 114, 168, 209 213
Node Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
nodeWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187, 192 f.
Non-Decreasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
Non-Dominated 67 ., 73, 79, 197 f., 200 ., 277,
279, 284, 1210
Non-Increasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
Non-Synonymous Change . . . . . . . . . . . . . . . . . . 173
Nonile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
Nonseparability . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
full . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Norm
Tschebychev . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Normal Distribution. . . . . . . . . . . . . . . . . . . . . . . . 678
standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678
Notation
reverse polish . . . . . . . . . . . . . . . . . . . . . . . . . 404
NSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
NSGA-II . . . . . . . . . . . . . . . . . . . . 198, 202, 266, 453
NTM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146, 149
Numbers
complex. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
law of large . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
natural . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
rational . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
Numerical Problem. . . . . . . . . . . . . . . . . . . . . . . . . . 27
NWGA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
O
Objective Function . . . . . . . . . . . . . . . . . 36, 44, 544
conicting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
harmonic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
independent . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
OBUPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
O-The-Shelf . . . . . . . . . . . . . . . . . . . . . . . . . . . 43, 146
OneMax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Ontogenic Mapping. . . . . . . . . . . . . . . . . . . . . 86, 273
Ontogeny
articial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Operations Research. . . . . . . . . . . . . . . 23, 197, 509
Operator
search. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Operator Correlation. . . . . . . . . . . . . . . . . . . . . . . 163
Optimality
Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Optimiality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
Optimization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . 23, 103
classication of . . . . . . . . . . . . . . . . . . . . . . 31
baysian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
combinatorial . . . . . . . . . . . . . . . . . . . . . . . . . 181
continuous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
derivative-based . . . . . . . . . . . . . . . . . . . . . . . . 53
derivative-free . . . . . . . . . . . . . . . . . . . . . . . . . . 53
diculties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
extremal . . . . . . . . . 3, 25, 32, 172, 493 f., 945
generalized . . . . . . . . . . . . . . . . . . . . . . . . . 495
global . . . . . . . . . . . . . . . . . . . . . . . . . . 22, 31, 509
interactive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
lexicographic . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
multi-objective . . . . . . . . . . . . . . . . . . . . . . . . . 55
Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
prevalence . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
weighted sum . . . . . . . . . . . . . . . . . . . . . . . . 62
oine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
particle swarm. 3, 27, 32, 37, 155, 188, 191,
207, 463, 481 f., 580, 945
problem . . . . . . . . . . . . . . . . . . . . . . . . . . . 22, 103
random. . . . . . . . . . . . 3, 32, 36, 116, 232, 505
setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
structure of . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
taxonomy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
termination criterion . . . . . . . . . . . . . . . . . . 105
Optimum. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51, 89
global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
isolated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
lexicographical . . . . . . . . . . . . . . . . . . . . . . . . . 60
local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51, 88 f.
optimal set . . . . . . . . . . . . . . . . . . . . . . . . . 54, 57
extracting . . . . . . . . . . . . . . . . . . . . . . . . . . 309
obtain by deletion . . . . . . . . . . . . . . . . . . 309
pruning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
updating. . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
updating by insertion . . . . . . . . . . . . . . 309
Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
partial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65, 645
simple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
total . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Overtting. . . . . . . . . . . . . . 191, 193, 534, 536, 568
Overgeneralization . . . . . . . . . . . . . . . . . . . . . . . . . 194
Oversimplication . . . . . . . . . . . . . . . . . . . . . 194, 568
Overspecication. . . . . . . . . . . . . . . . . . . . . . . . . . . 348
P
p-Spin. . . . . . . . . . . . . . . . . . . . . . . . . . . . 161, 179, 556
PADO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
PAES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
PAKDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Parallelism
implicit . . . . . . . . . . . . . . . . . . . . . . . . . 263, 345 f.
intrinsic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Parameter
endogenous . . . . . . . . . . . . . . 90, 360, 370, 481
exogenous . . . . . . . . . . . . . . . . . . . . . . . . . 90, 360
Parental Selection . . . . . . . . . . . . . . . . . . . . . . . . 260 f.
Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
frontier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
optimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1202 INDEX
ranking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Pareto Ranking. . . . 68, 76, 260, 275 ., 279, 281,
284, 300, 1210
Pareto-Ranking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546
Partial Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
Partial order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Particle Swarm Optimization. 3, 27, 32, 37, 155,
188, 191, 207, 463, 481 f., 580, 945
Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
Fibonacci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
long. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563
long k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
PBIL . . . . . . . . . . . . . . . . . . . . . . . . . . 438, 442 ., 452
real-coded. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
PBIL
C
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
PDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 f.
Penalty
adaptive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Death . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
dynamic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Percentile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
Permission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Permutation . . . . . . . . . . . . . 25, 333, 395, 643, 655
tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Pertinency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Perturbation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
PESA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
PGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Phase
juxtapositional . . . . . . . . . . . . . . . . . . . . . . . . 349
primordial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Phenome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Phenotype . . . . . . . . . . . . . . . . . . . . . . . . . . . 39, 43, 82
plasticity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
Phenotype-Genotype Mapping . . . . . . . . . . . . . 464
PIPE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447, 449, 452
Pitfall
siren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Pitt approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
enterprise resource . . . . . . . . . . . . . . . . . . . . 536
Plasticity
phenotypic . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
Pleiotropy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177, 179
PMF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 f.
Point
crossover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
saddle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Point Estimator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
Poisson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
Poisson Distribution . . . . . . . . . . . . . . . . . . . . . . . 671
Population. . . . . . . . . . . . . . . . . . . . . . . . . 90, 253, 265
Positive
false. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
PPSN. . . . 318, 353, 374, 384, 414, 421, 429, 459,
467, 474, 484
PPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Preemption
niche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Prehistory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
Premature Convergence . . . . . . . . . . 151, 482, 547
Preservative Selection . . . . . . . . . . . . . . . . . . . . . . 265
Prevalence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 f.
Prevention
convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
Primordial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Principle
niche preemption. . . . . . . . . . . . . . . . . . . . . . 151
Prisoners Dilemma . . . . . . . . . . . . . . . . . . . . . . . . 380
Probabilistic Algorithm . . . . . . . . . . . . . . . . . . . . . 33
Probability
von Mises [2822]. . . . . . . . . . . . . . . . . . . . . . .655
Bernoulli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
Conditional . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
Kolmogorov . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
of success. . . . . . . . . . . . . . . . . . . . . . . . . 163, 172
space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
of a random variable . . . . . . . . . . . . . . . . 657
Probability Density Function. . . . . . . . . . . . . . . 659
Probability Mass Function . . . . . . . . . . . . . . . . . 659
Probit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680
Problem
bin packing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
combinatorial . . . . . . . . . . . . . . . . . . . . . . 25, 472
continuous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Knapsack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
numerical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
optimization. . . . . . . . . . . . . . . . . . . . . . . 22, 103
multi-objective. . . . . . . . . . . . . . . . . . . . . . . 55
satisability . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
traveling salesman 25, 34, 45 f., 55, 91, 118,
122, 147, 209, 243, 327, 333, 350, 377,
425, 463, 621
Vehicle Routing . . . . . . . . . . . . . . . . . . . . . . . 537
vehicle routing . . . . 25, 147, 266, 350, 537 f.,
540 f., 548, 622, 634, 914
Problem Landscape . . . . . . . . . . . . . . . . . . . . . . . . . 95
Problem Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Product
Cartesian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
Production Systems . . . . . . . . . . . . . . . . . . . . . . . . 457
Programming
genetic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3,
32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 386 f., 389, 396, 398, 400 f., 403,
405 f., 408, 411 f., 427, 434, 447, 531,
534, 536, 561, 566, 568, 824, 945
cartesian. . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
grammar-guided. . . . . . . . . . . 273, 381, 403
INDEX 1203
linear . . 32, 327, 381, 400, 403 408, 412
standard. 32, 273, 386 f., 389, 399, 403 f.,
412
strongly-typed. . . . . . . . . . . . . . . . . . . . . . . . 3,
32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 386 f., 389, 396, 398, 400 f., 403,
405 f., 408, 411 f., 427, 434, 447, 531,
534, 536, 561, 566, 568, 824, 945
integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
mixed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
constant innovation . . . . . . . . . . . . . . . . . . . 174
Proximity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Pruning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
PSO3, 27, 32, 37, 155, 188, 191, 207, 463, 481 f.,
580, 945
psoReproduce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
PVRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
Q
QBB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Quadric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
Quantile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666
Quartile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
Quenching
simulated . . . . . . . . . . . . . . . . . . . . . . 247 ., 252
Quintile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
R
Rail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
Raindrop Method . . . . . . . . . . . . . . . . 36, 235 f., 945
RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Ramped Half-and-Half . . . . . . . . . . . . . . . . . . . . . 390
Random
event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
Experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
continous . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
Random Access Machine . . . . . . . . . . . . . . . . . . . 145
Random Boolean Network. . . . . . . . . . . . . . . . . . 174
Random Keys. . . . . . . . . . . . . . . . . . .349 f., 377, 834
random neighbors . . . . . . . . . . . . . . . . . . . . . 455, 554
Random Optimization . . 3, 32, 36, 116, 232, 505
Random Sampling . . . . 113 ., 118, 181, 240, 729
Random Selection. . . . . . . . . . . . . . . . . . . . . . . . . . 302
Random Walk. . . . 113 116, 118, 163, 168, 172,
174 f., 181, 210, 212, 240, 245 f., 267,
302, 514, 732
Randomized Algorithm. . . . . . . . . . . . . . . . . . . . . . 33
Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646, 661
interquartile. . . . . . . . . . . . . . . . . . . . . . . . . . . 667
Ranking
Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
RBN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Reachability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Real-Coded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Recombination. . . . . . . . . . 262, 307, 335, 399, 544
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . 337, 362
dominant . . . . . . . . . . . . . . . . . . . . 337, 362, 377
homologous . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
intermediate. . . . . . . . . . . . . . . . . . . . . . 338, 362
multi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Reduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Redundancy . . . . . . . . . . . . . . . . . . . . . . . 86, 174, 569
Reexivenss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
logistic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
symbolic . . 119, 121, 187, 191 f., 380 f., 387,
401, 403, 411 f., 531 535, 905 f., 908,
910
Relation
binary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .644
types and properties of . . . . . . . . . . . . . 644
equivalence. . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
partial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
total . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Repairing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Repairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Representation
explicit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
indirect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Reproduction. . . . . . . . . . . . . . . . . . . . . . . . . . 306, 542
asexual . . . . . . . . . . . . . . . . . . . . . . . . . . . 307, 325
binary. . . . . . . . . 335, 338, 340, 348, 398, 407
nullary . . . . . . . . . . . . . . . . . . . . . . 328, 340, 389
sexual . . . . . . . . . . . . . . . . . . 257, 262, 307, 325
unary . . . . . 330, 333, 340, 347 f., 393, 395 .
Resistance
domiance . . . . . . . . . . . . . . . . . . . . . . . . . . 69, 198
Resistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Reuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
REVOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
RFD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 477
RISC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
River Formation Dynamics . . . . . . . . . . . . . 32, 477
RO. . . . . . . . . . . . . . . . . . . . . 3, 32, 36, 116, 232, 505
Road. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
royal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
variable-length. . . . . . . . . . . . . . . . . . . . . . 559
VLR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
RoboCup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Robustness. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Root2path . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563, 565
Root2paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
Royal Road. . . . . . . . . . . . . . . . . . . . . . . . . . 173, 558 f.
variable-length . . . . . . . . . . . . . . . . . . . . . . . . 559
VLR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
Royal Road Function. . 154, 173, 455, 558 562,
566, 1221
Royal Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
RPCL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
RPN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
1204 INDEX
Ruggedness . . . . . . . . 161, 554, 556, 571, 573, 578
S
S-Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
SA . . . . . . . . . . . . . . . . . . . . . . . 3, 25, 32 f., 36, 156 f.,
160, 181, 231, 243 249, 252, 308, 412,
463 f., 493, 541, 557, 716, 740, 945
Saddle Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Salience
high. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
low. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Sample space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
Sampling
random. . . . . . . . . . 113 ., 118, 181, 240, 729
SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
SC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31, 34
Scalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Scalability Requirement . . . . . . . . . . . . . . . . . . . . 219
Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
large . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
small . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Schedule
temperature. . . . . . . . . . . . . . . . . . . . . . . . . . . 247
adaptive . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
exponential . . . . . . . . . . . . . . . . . . . . . . . . . 249
linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
logarithmic . . . . . . . . . . . . . . . . . . . . . . . . . 248
polynomial . . . . . . . . . . . . . . . . . . . . . . . . . 249
Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
job shop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Schema. . . . . . . . . . . . . . . . . . . . . . . . . . . 119, 163, 341
Theorem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
theorem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Schema Theorem . . . . . 119, 167, 217, 263, 341 f.,
344 ., 558
Schwefel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
SCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 f., 305, 546
SEA 135, 228, 235, 237, 251, 322, 356, 376, 386,
417, 423, 431, 462, 469, 476, 479, 486,
491, 497, 500, 502, 506, 518, 521, 525,
528
SEAL. . . . 130, 320, 354, 374, 384, 415, 422, 429,
460, 468, 474, 484
Search
A
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 519
best-rst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
breadth-rst . . . . . . . . 32, 115, 515, 517, 519
depth-rst. . . . . . . . . . . . . . 32, 115, 516 f., 519
iterative deepenining . . . . . . . . . . . . 32, 516
depth-limited. . . . . . . . . . . . . . . . . . . . . . . . 516 f.
greedy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 519
harmony . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
informed . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 518
local . . . . . . . . . . . . . . . . . . . . 229, 243, 463, 514
Neighborhood . . . . . . . . . . . . . . . . . . . . . . . . . 512
State Space. . . . . . . . . . . . . . . . . . . . . . . . 32, 511
tabu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
uninformed . . . . . . . . . . . . . . . . . . . . 32, 34, 514
Search Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Search Procedure
greedy randomized adaptive . . . . . 157, 499
Search Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Searching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
Seeding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254, 258
Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 f., 285
breeding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
deterministic . . . . . . . . . . . . . . . . . . . . . . . . . . 289
ecological . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
elitist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
environment. . . . . . . . . . . . . . . . . . . . . . . . . . . 261
environmental . . . . . . . . . . . . . . . . . . . . . . . . . 260
extinctive . . . . . . . . . . . . . . . . . . . . . . . . 183, 265
left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
extrema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Fitness Proportionate. . . . . . . . . . . 290, 292 f.
mating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
natural . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Node. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
parental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 f.
preservative . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
random . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
ranking
linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Roulette Wheel . . . . . . . . . . . . . . . . . 290, 292 f.
sexual . . . . . . . . . . . . . . . . . . . . . . . . . . 260 f., 287
survival . . . . . . . . . . . . . . . . . . . . 260 f., 287, 302
threshold. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Tournament . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
non-deterministic . . . . . . . . . . . . . . . . . . . 300
with replacement. . . . . . . . . . . . . . . 298, 300
without replacement. . . . . . . . . . . . . . 298 f.
tournament . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
truncation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Self-Adaptation. . . . . . . . . . . . . . 219, 360, 370, 419
Self-Organization. . . . . . . . . . . . . . . . . . . . . . . . . . . 420
criticality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
Self-Organized Criticality . . . . . . . . . . . . . . . . . . 493
SEMCCO322, 356, 376, 386, 417, 423, 431, 462,
470, 476, 486
Sensor Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
Separability . . . . . . . . . . . . . . . . . . . . . . . . . 178, 204 f.
non . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
partial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Separbility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25, 639
cardinality . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639
Cartesian product . . . . . . . . . . . . . . . . . . . . . 642
complement . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
connected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
countable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
dierence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
empty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
INDEX 1205
intersection . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
membership. . . . . . . . . . . . . . . . . . . . . . . . . . . 639
operations on . . . . . . . . . . . . . . . . . . . . . . . . . 641
optimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54, 57
Power set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
relations between. . . . . . . . . . . . . . . . . . . . . . 640
special . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
subset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
theory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .639
Tuple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
uncountable . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
union . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
Sexual Reproduction. . . . . . . . . 257, 262, 307, 325
Sexual Selection . . . . . . . . . . . . . . . . . . . . . 260 f., 287
SGP . . . . . . . . 32, 273, 386 f., 389, 399, 403 f., 412
SH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Sharing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277, 546
Variety Preserving . . . . . . . . . . . . . . . . . . . . 279
SHCC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 f.
SHCLVND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
SI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 37
Simple Order. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Simplex
downhill . . . 32, 104, 264, 420, 463, 501, 945
Simulated Annealing. . . . . . 3, 25, 32 f., 36, 156 f.,
160, 181, 231, 243 249, 252, 308, 412,
463 f., 493, 541, 557, 716, 740, 945
Simulated Quenching. . . . . . . . . . . . . . . . . . 247
temperature schedule. . . . . . . . . . . . . . . . . . 247
Simulated Quenching. . . . . . . . . . . 156, 247 ., 252
Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Simulation Dynamics. . . . . . . . . . . . . . . . . . . . . . . 163
Single-Objectivity . . . . . . . . . . . . . . . . . . . 39, 54, 56,
60 ., 70 f., 88, 93, 95, 100 f., 106, 109,
158, 160, 198, 201 f., 209, 238, 253 f.,
274, 278, 287, 325, 360, 362, 434, 439,
501, 541, 580, 713, 724, 905, 1221 .
Siren Pitfall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
SIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476, 486
Skewness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
Small-scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
SMC131, 227, 234, 236, 251, 320, 354, 374, 385,
415, 422, 430, 460, 468, 474, 478, 484,
490, 496, 500, 502, 506, 518, 521, 524,
528
SOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
SoCPaR . 133, 321, 355, 375, 385, 416, 423, 430,
461, 469, 475, 485
Soft Computing . . . . . . . . . . . . . . . . . . . . . . . . . 31, 34
Solution
candidate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Space
objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
problem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
sample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
search. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
Sparc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
SPEA 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
SPEA-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368, 581
shifted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
SPICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Spin Glass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Spin-Glass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
Splice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
SPX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
SQ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 ., 252
SSCI 322, 356, 376, 386, 417, 423, 431, 462, 470,
476, 486
SSEA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266, 324
SSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
Standard Deviation. . . . . . . . . . . . . . . . . . . . . . . 662 f.
Standard Genetic Programming . 32, 273, 386 f.,
389, 399, 403 f., 412
State Machine
nite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
State Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
Search. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32, 511
State Space Search . . . . . . . . . . . 34 f., 511 f., 514 f.
Static-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Statisability Problem . . . . . . . . . . . . . . . . . . . . . 147
Statistical Independence. . . . . . . . . . . . . . . . . . . . 657
Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
Steady-State 157, 255, 266, 286, 289, 324, 546 .
Steady-State Evolutionary Algorithm. 266, 324
STeP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
STGP . 3, 32, 37, 107, 155, 162 f., 173, 175, 180,
187, 192, 195, 262 ., 273, 302, 304 f.,
379 ., 386 f., 389, 396, 398, 400 f., 403,
405 f., 408, 411 f., 427, 434, 447, 531,
534, 536, 561, 566, 568, 824, 945
Sticky Crossover . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Stigmergy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
sematectonic . . . . . . . . . . . . . . . . . . . . . . . . . . 471
sign-based. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
Stochastic Algorithm. . . . . . . . . . . . . . . . . . . . . . . . 33
Stochastic Gradient Descent. . . . . . . . . . . . . . . . 232
Stopping Criterion . . . . . . . . . . . . . . . . . . . . . . . . . 105
Strategy
evolutionary. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Strongly-Typed Genetic Programming . . . . 387,
392 f., 398
Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Students t-Distribution . . . . . . . . . . . . . . . . . . . . 687
Subset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
Subtree . . . . . . . . . . 181, 393, 395 400, 404, 1211
Success
probability of . . . . . . . . . . . . . . . . . . . . . 163, 172
Sum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
sqr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
weightes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Support Vector Machine . . . . . . . . . . . . . . . . . . . 536
Surjective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
1206 INDEX
Surjectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
Survival Selection. . . . . . . . . . . . . . . 260 f., 287, 302
SVM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
Swap Body. . . . . . . . . . . . . . . . . . . . . . . . . . . . 539, 542
Swarm
particle/optimization. . . . 3, 27, 32, 37, 155,
188, 191, 207, 463, 481 f., 580, 945
Swarm Intelligence. . . . . . . . . . . . . . . . . . . . . . . 32, 37
Symbolic Regression 119, 121, 187, 191 f., 380 f.,
387, 401, 403, 411 f., 531 535, 905 f.,
908, 910
Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
Symmetric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Symmetry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Synonymous Change . . . . . . . . . . . . . . . . . . . . . . . 173
System
classier . . . . . . . . . . . . . . . . . . . . . . . . 339, 457 f.
learning . . . . . . 3, 32, 264, 457 f., 536, 945
multi-agent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
T
t-Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
TAAI . . . . . . . . . . . . . . . . . . . . . . . . 134, 462, 476, 486
Tabu Search . 3, 25, 32, 36, 155, 231, 463 f., 489,
512, 541
TAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
TAINN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Technological Landscape . . . . . . . . . . . . . . . . . . . 556
Telematics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549 f.
Temperature Schedule. . . . . . . . . . . . . . . . . . . . . . 247
Termination Criterion. . . . . . . . . . . . . . . . . . . . . . 105
Test
statistical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
TGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381, 386, 389
Theorem
central limit . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
Schema. . . . . . . . . . . . . . . . . . . . . . . . . . . 341, 558
ugly duckling. . . . . . . . . . . . . . . . . . . . . . . . . . 212
Threshold
error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163, 562
Threshold Selection . . . . . . . . . . . . . . . . . . . . . . . . 289
Time Consumption. . . . . . . . . . . . . . . . . . . . . . . . . 514
TODO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Total Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Tournament Selection . . . . . . . . . . . . . . . . . . . . . . 573
TPX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Trac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
Train . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
Transistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Transititve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
Transitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
Trap Function . . . . . . . . . . . . . . . . . . . . . . . 167, 557 f.
Traveling Salesman Problem25, 34, 45 f., 55, 91,
118, 122, 147, 209, 243, 327, 333, 350,
377, 425, 463, 621
Tree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
decision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
royal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
Tree Genomes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Truck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
Truck-Meets-Truck . . . . . . . . . . . . . . . . . . . . . . . . . 544
Truncation Selection . . . . . . . . . . . . . . . . . . . . . . . 289
TS. . 3, 25, 32, 36, 155, 231, 463 f., 489, 512, 541
TSoR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
TSP25, 34, 45 f., 55, 91, 118, 122, 147, 209, 243,
327, 333, 350, 377, 425, 463, 621
TSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Tuple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
Turing Completeness . . . . . . . . . . . . . . . . . . . . . . . 406
Turing Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
deterministic . . . . . . . . . . . . . . . . . . . . . . . . . . 145
non-deterministic. . . . . . . . . . . . . . . . . . . . . . 146
Two-Point Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
Type 1 Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
Type 2 Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
U
Ugly Duckling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
UMDA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434, 437
Unbiasedness. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Underspecication . . . . . . . . . . . . . . . . . . . . . . . . . 348
Uni-Modality . . . . . . . . . . . . . . . . . . . . . 165, 452, 454
Uniform Distribution
continuous . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676
discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
uniformSelectNode . . . . . . . . . . . . . . . . . . . . . . . . . 392
Uninformed Search . . . . . . . . . . . . . . . . . . . . . 32, 514
UX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337, 346, 362
V
Variance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
epistatic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
estimator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
Variation
coecient of . . . . . . . . . . . . . . . . . . . . . . . . . . 663
Variety Preserving . . . . . . . . . . . . . . . . . . . . . . . . . 279
Vehicle Routing Problem. . . . . 25, 147, 266, 350,
537 f., 540 f., 548, 622, 634, 914
Capacitated . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
Distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
Multiple Depot. . . . . . . . . . . . . . . . . . . . . . . . 538
Periodic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
with Backhauls. . . . . . . . . . . . . . . . . . . . . . . . 538
with Pick-up and Delivery. . . . . . . . . . . . . 538
VIL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
VRP . . 25, 147, 266, 350, 537 f., 540 f., 548, 622,
634, 914
VRPB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
VRPPD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
W
Walk
Adaptive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
adaptive
tter dynamics . . . . . . . . . . . . . . . . . . . . . 116
INDEX 1207
greedy dynamics . . . . . . . . . . . . . . . . . . . . 116
one-mutant . . . . . . . . . . . . . . . . . . . . . . . . . 116
drunkards . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
random . . . . . 113 116, 118, 163, 168, 172,
174 f., 181, 210, 212, 240, 245 f., 267,
302, 514, 732
WCCI . . . 318, 353, 374, 384, 414, 421, 429, 460,
467, 474, 484
Wechselbr ucksteuerung. . . . . . . . . . . . . . . . . . . . . 537
Weierstra Function. . . . . . . . . . . . . . . . . . . . . . . . 165
Weighted Sum. . . . . . . . . . . . . . . . . . . . . . 62, 78, 275
WHCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Wildcard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
WOMA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
WOPPLOT . . 133, 228, 235, 237, 251, 321, 355,
375, 385, 416, 423, 430, 461, 469, 475,
478, 485, 491, 496, 500, 502, 506, 518,
521, 524, 528
WPBA . . 322, 356, 375, 386, 416, 423, 431, 462,
469, 476, 486
Wrapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 f.
WSC131, 320, 354, 374, 385, 415, 422, 430, 461,
468, 475, 484
X
XCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Y
Yellow Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
Z
Z80 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
ZCS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .458
List of Figures
1.1 Terms that hint: Optimization Problem (inspired by [428]) . . . . . . . . . . . . . 21
1.2 One example instance of a bin packing problem. . . . . . . . . . . . . . . . . . . . . 25
1.3 An example for circuit layouts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.4 The graph of g(x) as given in Equation 1.3 with the four roots x
1
to x
4
. . . . . . . . 28
1.5 A truss optimization problem like the one given in [18]. . . . . . . . . . . . . . . . . 29
1.6 A rough sketch of the problem type relations. . . . . . . . . . . . . . . . . . . . . . . 30
1.7 Overview of optimization algorithms. . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.8 Black box treatment of objective functions in metaheuristics. . . . . . . . . . . . . . 35
1.9 The robotic soccer team CarpeNoctem (on the right side) on the fourth day of the
RoboCup German Open 2009. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.1 A sketch of the stones throw in Example E2.1. . . . . . . . . . . . . . . . . . . . . . 44
2.2 An example for Traveling Salesman Problems, based on data from GoogleMaps. . . . 45
3.1 Global and local optima of a two-dimensional function. . . . . . . . . . . . . . . . . . 52
3.2 Examples for functions with multiple optima . . . . . . . . . . . . . . . . . . . . . . 54
3.3 The possible relations between objective functions as given in [2228, 2230]. . . . . . 56
3.4 Two functions f
1
and f
2
with dierent maxima x
1
and x
2
. . . . . . . . . . . . . . . . 58
3.5 Two functions f
3
and f
4
with dierent minima x
1
, x
2
, x
3
, and x
4
. . . . . . . . . . . . 58
3.6 Optimization using the weighted sum approach (rst example). . . . . . . . . . . . . 62
3.7 Optimization using the weighted sum approach (second example). . . . . . . . . . . 63
3.8 A problematic constellation for the weighted sum approach. . . . . . . . . . . . . . . 64
3.9 Examples of Pareto fronts [2915]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.10 Optimization using the Pareto Frontier approach. . . . . . . . . . . . . . . . . . . . . 67
3.11 Optimization using the Pareto Frontier approach (second example). . . . . . . . . . 68
3.12 Optimization using the Pareto-based Method of Inequalities approach (rst example). 73
3.13 Optimization using the Pareto-based Method of Inequalities approach (rst example). 74
3.14 An external decision maker providing an Evolutionary Algorithm with utility values. 76
4.1 Examples for real-coding candidate solutions. . . . . . . . . . . . . . . . . . . . . . . 82
4.2 The relation of genome, genes, and the problem space. . . . . . . . . . . . . . . . . . 83
4.3 Neighborhoods under non-injective genotype-phenotype mappings. . . . . . . . . . . 87
4.4 Minima of a single objective function. . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.1 An example optimization problem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.2 The problem landscape of the example problem derived with searchOp
1
. . . . . . . . 97
5.3 The problem landscape of the example problem derived with searchOp
2
. . . . . . . . 98
6.1 Spaces, Sets, and Elements involved in an optimization process. . . . . . . . . . . . . 102
7.1 Use dedicated algorithms! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
1210 LIST OF FIGURES
8.1 Some examples for random walks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
9.1 An graph coloring-based example for properties and formae. . . . . . . . . . . . . . . 120
9.2 Example for formae in symbolic regression. . . . . . . . . . . . . . . . . . . . . . . . 121
11.1 Dierent possible properties of tness landscapes (minimization). . . . . . . . . . . . 140
12.1 Illustration of some functions illustrating their rising speed, gleaned from [2365]. . . 145
12.2 Turing machines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
13.1 Premature convergence in the objective space. . . . . . . . . . . . . . . . . . . . . . . 152
13.2 Pareto front approximation sets [2915]. . . . . . . . . . . . . . . . . . . . . . . . . . . 153
13.3 Loss of Diversity leads to Premature Convergence. . . . . . . . . . . . . . . . . . . . 155
13.4 Exploration versus Exploitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
13.5 Multi-Objectivization `a la Sum-of-Parts. . . . . . . . . . . . . . . . . . . . . . . . . . 159
14.1 The landscape diculty increases with increasing ruggedness. . . . . . . . . . . . . . 161
15.1 Increasing landscape diculty caused by deceptivity. . . . . . . . . . . . . . . . . . . 167
16.1 Landscape diculty caused by neutrality. . . . . . . . . . . . . . . . . . . . . . . . . 171
16.2 Possible positive inuence of neutrality. . . . . . . . . . . . . . . . . . . . . . . . . . 173
17.1 Pleiotropy and epistasis in a dinosaurs genome. . . . . . . . . . . . . . . . . . . . . . 178
17.2 The inuence of epistasis on the tness landscape. . . . . . . . . . . . . . . . . . . . 180
17.3 Epistasis in the permutation-representation for bin packing. . . . . . . . . . . . . . . 182
18.1 A robust local optimum vs. a unstable global optimum. . . . . . . . . . . . . . . . 189
19.1 Overtting due to complexity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
19.2 Fitting noise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
19.3 Oversimplication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
20.1 Approximated distribution of the domination rank in random samples for several
population sizes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
20.2 The proportion of non-dominated candidate solutions for several population sizes ps
and dimensionalities n. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
23.1 A visualization of the No Free Lunch Theorem. . . . . . . . . . . . . . . . . . . . . . 211
23.2 Fitness Landscapes and the NFL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
23.3 The puzzle of optimization algorithms. . . . . . . . . . . . . . . . . . . . . . . . . . . 214
24.1 Examples for an increase of the dimensionality of a search space G (1d) to G
(2d). . 220
27.1 A sketch of annealing in metallurgy as role model for Simulated Annealing. . . . . . 244
27.2 Dierent temperature schedules for Simulated Annealing. . . . . . . . . . . . . . . . 248
28.1 The basic cycle of Evolutionary Algorithms. . . . . . . . . . . . . . . . . . . . . . . . 254
28.2 The family of Evolutionary Algorithms. . . . . . . . . . . . . . . . . . . . . . . . . . 264
28.3 The conguration parameters of Evolutionary Algorithms. . . . . . . . . . . . . . . . 269
28.4 An example scenario for Pareto ranking. . . . . . . . . . . . . . . . . . . . . . . . . . 276
28.5 The sharing potential in the Variety Preserving Example E28.17. . . . . . . . . . . . 282
28.6 Selection with and without replacement. . . . . . . . . . . . . . . . . . . . . . . . . . 286
28.7 The four example tness cases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
28.8 The number of expected ospring in truncation selection. . . . . . . . . . . . . . . . 290
28.9 Examples for the idea of roulette wheel selection. . . . . . . . . . . . . . . . . . . . . 294
28.10The number of expected ospring in roulette wheel selection. . . . . . . . . . . . . . 295
28.11The number of expected ospring in tournament selection. . . . . . . . . . . . . . . . 297
28.12The expected numbers of occurrences for dierent values of n and c. . . . . . . . . . 305
LIST OF FIGURES 1211
29.1 A Sketch of a DNA Sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
29.2 Value-altering mutation of string chromosomes. . . . . . . . . . . . . . . . . . . . . . 330
29.3 Mutation in binary- and real-coded GAs . . . . . . . . . . . . . . . . . . . . . . . . . 332
29.4 Permutation applied to a string chromosome. . . . . . . . . . . . . . . . . . . . . . . 333
29.5 Crossover (recombination) operators for xed-length string genomes. . . . . . . . . . 335
29.6 The points sampled by dierent crossover operators. . . . . . . . . . . . . . . . . . . 338
29.7 Search operators for variable-length strings (additional to those from Section 29.3.2
and Section 29.3.3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
29.8 Crossover of variable-length string chromosomes. . . . . . . . . . . . . . . . . . . . . 341
29.9 An example for schemata in a three bit genome. . . . . . . . . . . . . . . . . . . . . 342
29.10Two linked genes and their destruction probability under single-point crossover. . . . 347
29.11An example for two subsequent applications of the inversion operation [1196]. . . . . 348
30.1 Sampling Results from Normal Distributions . . . . . . . . . . . . . . . . . . . . . . 364
31.1 Genetic Programming in the context of the IPO model. . . . . . . . . . . . . . . . . 379
31.2 Some important works on Genetic Programming illustrated on a time line. . . . . . . 380
31.3 The formula e
sinx
+ 3
1
(x) (x), and
2
(x). . . . . . . . . . . . . . . . . . . . . . . . 535
49.3 The freight trac on German roads in billion tons*kilometer. . . . . . . . . . . . . . 537
49.4 Dierent avors of the VRP and their relation to the in.west system. . . . . . . . . . 539
49.5 The structure of the phenotypes x. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
49.6 Some mutation operators from the freight planning EA. . . . . . . . . . . . . . . . . 543
49.7 Two examples for the freight plan evolution. . . . . . . . . . . . . . . . . . . . . . . . 548
49.8 An overview of the in.west system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
49.9 The YellowBox a mobile sensor node. . . . . . . . . . . . . . . . . . . . . . . . . . 550
50.1 Ackleys Trap function [19, 1467]. . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
50.2 The perfect Royal Trees. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
50.3 Example tness evaluation of Royal Trees . . . . . . . . . . . . . . . . . . . . . . . . 561
50.4 The root2path for l = 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
50.5 An example for the tness landscape model. . . . . . . . . . . . . . . . . . . . . . . . 567
50.6 An example for the epistasis mapping z e
4
(z). . . . . . . . . . . . . . . . . . . . . 570
50.7 An example for r
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
8.1 x randomSampling(f) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
8.2 x randomWalk(f) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
8.3 x exhaustiveSearch(f, y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
26.1 x hillClimbing(f) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
26.2 X hillClimbingMO
OptProb
, as
. . . . . . . . . . . . . . . . . . . . . . . . . . 231
26.3 X hillClimbingMORR
OptProb
, as
. . . . . . . . . . . . . . . . . . . . . . . . 233
27.1 x simulatedAnnealing(f) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
28.1 X simpleEA(f, ps, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
28.2 X simpleMOEA
OptProb
, ps, mps
. . . . . . . . . . . . . . . . . . . . . . . . . 256
28.3 X elitistMOEA
OptProb
. . . . . . . . . . . . . . . . . . . . . . . . 268
28.4 v
2
assignFitnessParetoRank(pop, cmp
f
) . . . . . . . . . . . . . . . . . . . . . . . . 276
28.5 v assignFitnessVariety(pop, cmp
f
) . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
28.6 v assignFitnessTournament(q, r, pop, cmp
f
) . . . . . . . . . . . . . . . . . . . . . . 285
28.7 mate truncationSelection
r
(k, pop, v, mps) . . . . . . . . . . . . . . . . . . . . . . . 289
28.8 mate truncationSelection
w
(mps, pop, v) . . . . . . . . . . . . . . . . . . . . . . . . 289
28.9 mate rouletteWheelSelection
r
(pop, v, mps) . . . . . . . . . . . . . . . . . . . . . . 292
28.10mate rouletteWheelSelection
w
(pop, v, mps) . . . . . . . . . . . . . . . . . . . . . . 293
28.11mate tournamentSelection
r
(k, pop, v, mps) . . . . . . . . . . . . . . . . . . . . . . 298
28.12mate tournamentSelection
w
(k, pop, v, mps) . . . . . . . . . . . . . . . . . . . . . . 298
28.13mate tournamentSelection
w
(k, pop, v, mps) . . . . . . . . . . . . . . . . . . . . . . 299
28.14mate tournamentSelectionND
r
(, k, pop, v, mps) . . . . . . . . . . . . . . . . . . . 300
28.15mate randomSelection
r
(pop, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
28.16v
clearingFilter(pop, , k, v) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
28.17P scpFilter(pop, c, f ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
28.18pop createPop(ps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
28.19pop reproducePopEA(mate, ps, mr, cr) . . . . . . . . . . . . . . . . . . . . . . . . . 308
28.20P
new
updateOptimalSet(P
old
, p
new
, cmp
f
) . . . . . . . . . . . . . . . . . . . . . . 309
28.21P
new
updateOptimalSet(P
old
, p
new
, cmp
f
) (
nd
Version) . . . . . . . . . . . . . . . 309
28.22P
new
updateOptimalSetN(P
old
, P, cmp
f
) . . . . . . . . . . . . . . . . . . . . . . . 310
28.23P extractBest(pop, cmp
f
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
28.24P
new
pruneOptimalSet
c
(P
old
, k) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
28.25(P
l
, lst, cnt) divideAGA(P
old
, d) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
28.26P
new
pruneOptimalSetAGA(P
old
, d, k) . . . . . . . . . . . . . . . . . . . . . . . . 314
29.1 g createGAFLBin(n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
29.2 g createGAPerm(n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
1218 LIST OF ALGORITHMS
29.3 g mutateGAFLBinRand(g
p
, n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
29.4 g mutateSinglePerm(n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
29.5 g mutateMultiPerm(g
p
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
29.6 g recombineMPX(g
p1
, g
p2
, k) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
29.7 g recombineUX(g
p1
, g
p2
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
29.8 x gpm
RK
(g, S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
30.1 X generalES(f, , , ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
30.2 g
recombineDiscrete(P) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
30.3 g
recombineIntermediate(P) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
30.4 g mutate
G,
, w =
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
30.5 g mutate
G,
, w =
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
30.6 g mutate
G,M
, w = M
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
30.7 x (1+1)-ES1/5
(f, L, a,
0
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
30.8 mutate
W,
()
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
31.1 g createGPFull
d, N,
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
31.2 g createGPGrow
d, N,
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
31.3 g createGPRamped
d, N,
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
31.4 t
c
selectNode
uni
(t
r
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
31.5 g mutateGP(g
p
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
31.6 g recombineGP(g
p1
, g
p2
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
34.1 x PlainEDA(f, ps, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
34.2 X EDA MO
OptProb
, ps, mps
. . . . . . . . . . . . . . . . . . . . . . . . . . . 433
34.3 x UMDA(f, ps, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
34.4 pop sampleModelUMDA(M, ps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
34.5 M buildModelUMDA(mate) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
34.6 x PBIL(f, ps, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
34.7 M buildModelPBIL
mate, M
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
34.8 x cGA(f, ps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
34.9 M buildModelCGA
mate, M
, ps
. . . . . . . . . . . . . . . . . . . . . . . . . . . 440
34.10(true, false) terminationCriterionCGA(M) . . . . . . . . . . . . . . . . . . . . 440
34.11x transformModelCompGA(M) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
34.12x SHCLVND(f, ps, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
34.13pop sampleModelSHCLVND(M, ps) . . . . . . . . . . . . . . . . . . . . . . . . . . 443
34.14M buildModelSHCLVND
mate, M
. . . . . . . . . . . . . . . . . . . . . . . . . . 443
34.15x RCPBIL(f, ps, mps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
34.16M sampleModelRCPBIL
mate, M
. . . . . . . . . . . . . . . . . . . . . . . . . . 445
34.17M buildModelRCPBIL
mate, M
. . . . . . . . . . . . . . . . . . . . . . . . . . . 446
34.18x PIPE(f, ps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
34.19N newModelNodePIPE(N, , P
) . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
34.20pop sampleModelPIPE(M, ps) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
34.21(N, t) buildTreePIPE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
34.22M buildModelPIPE
mate, M
, x
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
34.23N increasePropPIPE
, t
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
34.24N pruneTreePIPE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
39.1 x
buildRPermutation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
50.3 translate
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
List of Listings
1 The CVS command for anonymously checking out the complete book sources. . . . . 4
17.1 A program computing the greatest common divisor. . . . . . . . . . . . . . . . . . . 180
31.1 A genotype of an individual in Brameier and Banzhafs LGP system. . . . . . . . . . 407
31.2 The data for Task 91 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
50.1 An example Royal Road function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
50.2 A Java code snippet computing the sphere function. . . . . . . . . . . . . . . . . . . 581
50.3 A Java code snippet computing Schwefels problem 2.22. . . . . . . . . . . . . . . . 583
50.4 A Java code snippet computing Schwefels problem 1.2. . . . . . . . . . . . . . . . . 585
50.5 A Java code snippet computing Schwefels problem 2.21. . . . . . . . . . . . . . . . 587
50.6 A Java code snippet computing the generalized Rosenbrocks function. . . . . . . . 589
50.7 A Java code snippet computing the step function function. . . . . . . . . . . . . . . 591
50.8 A Java code snippet computing the quartic function with noise. . . . . . . . . . . . 593
50.9 A Java code snippet computing Schwefels problem 2.26 function. . . . . . . . . . . 595
50.10A Java code snippet computing the generalized Rastrigins function. . . . . . . . . . 597
50.11A Java code snippet computing Ackleys function. . . . . . . . . . . . . . . . . . . . 599
50.12A Java code snippet computing the generalized Griewank function. . . . . . . . . . 601
50.13A Java code snippet computing the generalized penalized function 1. . . . . . . . . 604
50.14A Java code snippet computing the generalized penalized function 2. . . . . . . . . 606
50.15A Java code snippet computing the shifted sphere function. . . . . . . . . . . . . . . 610
50.16A Java code snippet computing shifted Schwefels problem 2.21. . . . . . . . . . . . 612
50.17A Java code snippet computing the shifted Rosenbrocks function. . . . . . . . . . . 614
50.18A Java code snippet computing shifted Ackleys function. . . . . . . . . . . . . . . . 616
50.19A Java code snippet computing the shifted Rastrigins function. . . . . . . . . . . . 618
50.20A Java code snippet computing the shifted Griewank function. . . . . . . . . . . . . 621
50.21The location data of the rst example problem instance. . . . . . . . . . . . . . . . . 626
50.22The order data of the rst example problem instance. . . . . . . . . . . . . . . . . . 627
50.23The truck data of the rst example problem instance. . . . . . . . . . . . . . . . . . 628
50.24The container data of the rst example problem instance. . . . . . . . . . . . . . . . 629
50.25The driver data of the rst example problem instance. . . . . . . . . . . . . . . . . . 629
50.26The distance data of the rst example problem instance. . . . . . . . . . . . . . . . . 631
50.27The move data of the solution to the rst example problem instance. . . . . . . . . . 633
50.28An example output of the features of an example plan (with errors). . . . . . . . . . 634
55.1 The basic interface for everything involved in optimization. . . . . . . . . . . . . . . 707
55.2 The interface for all nullary search operations. . . . . . . . . . . . . . . . . . . . . . . 708
55.3 The interface for all unary search operations. . . . . . . . . . . . . . . . . . . . . . . 708
55.4 The interface for all binary search operations. . . . . . . . . . . . . . . . . . . . . . . 709
55.5 The interface for all ternary search operations. . . . . . . . . . . . . . . . . . . . . . 710
55.6 The interface for all binary search operations. . . . . . . . . . . . . . . . . . . . . . . 711
55.7 The interface common to all genotype-phenotype mappings. . . . . . . . . . . . . . . 711
55.8 The interface for objective functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . 712
55.9 The interface for termination criteria. . . . . . . . . . . . . . . . . . . . . . . . . . . 712
55.10An interface to all single-objective optimization algorithms. . . . . . . . . . . . . . . 713
55.11An interface to all multi-objective optimization algorithms. . . . . . . . . . . . . . . 716
1222 LIST OF LISTINGS
55.12The interface for temperature schedules. . . . . . . . . . . . . . . . . . . . . . . . . . 717
55.13The interface for selection algorithms. . . . . . . . . . . . . . . . . . . . . . . . . . . 717
55.14The interface for tness assignment processes. . . . . . . . . . . . . . . . . . . . . . . 718
55.15The interface for comparator functions. . . . . . . . . . . . . . . . . . . . . . . . . . 719
55.16The interface for model building and updating. . . . . . . . . . . . . . . . . . . . . . 719
55.17The interface for sampling points from a model. . . . . . . . . . . . . . . . . . . . . . 720
56.1 The base class for everything involved in optimization. . . . . . . . . . . . . . . . . . 723
56.2 A base class for all single-objective optimization methods. . . . . . . . . . . . . . . . 724
56.3 A base class for all multi-objective optimization methods. . . . . . . . . . . . . . . . 728
56.4 The random sampling algorithm randomSampling given in Algorithm 8.1. . . . . . 729
56.5 The random walk algorithm randomWalk given in Algorithm 8.2. . . . . . . . . . 732
56.6 The Hill Climbing algorithm hillClimbing given in Algorithm 26.1. . . . . . . . . . 735
56.7 The Multi-Objective Hill Climbing algorithm hillClimbingMO given in
Algorithm 26.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737
56.8 The Simulated Annealing algorithm simulatedAnnealing given in Algorithm 27.1. 740
56.9 The logarithmic temperature schedule as specied in Equation 27.16. . . . . . . . . . 743
56.10The logarithmic temperature schedule as specied in Equation 27.17. . . . . . . . . . 744
56.11A base class providing the features Algorithm 28.1 in a generational way (see
Section 28.1.4.1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
56.12A base class providing the features Algorithm 28.2 in a generational way. . . . . . . 750
56.13The truncation selection method given in Algorithm 28.8 on page 289. . . . . . . . . 754
56.14The tournament selection method given in Algorithm 28.11 on page 298. . . . . . . . 756
56.15The random selection method given in Algorithm 28.15 on page 302. . . . . . . . . . 758
56.16Pareto ranking tness assignment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759
56.17An example implementation of the Evolution Strategy Algorithm 30.1 on page 361. . 760
56.18An individual record also holding endogenous information. . . . . . . . . . . . . . . . 770
56.19An example implementation of the Dierential Evolution algorithm which uses
ternary crossover. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771
56.20The Estimation Of Distribution Algorithm algorithm PlainEDA given in
Algorithm 34.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
56.21The creator for the initial model to be used in UMDA. . . . . . . . . . . . . . . . . . 781
56.22The model building method used in UMDA. . . . . . . . . . . . . . . . . . . . . . . . 782
56.23Sample points from the UMDA model. . . . . . . . . . . . . . . . . . . . . . . . . . . 783
56.24Create uniformly distributed real vectors. . . . . . . . . . . . . . . . . . . . . . . . . 784
56.25Modify a real vector by adding normally distributed random numbers with a given
standard deviation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786
56.26A strategy mutation operator for Evolution Strategy. . . . . . . . . . . . . . . . . . . 787
56.27Modify a real vector by adding uniformly distributed random numbers. . . . . . . . 789
56.28Modify a real vector by adding normally distributed random numbers. . . . . . . . . 791
56.29A weighted average crossover operator. . . . . . . . . . . . . . . . . . . . . . . . . . . 792
56.30The binomial crossover operator from Dierential Evolution. . . . . . . . . . . . . . 794
56.31The exponential crossover operator from Dierential Evolution. . . . . . . . . . . . . 796
56.32The dominant recombination operator dened in Section 30.3.1. . . . . . . . . . . . . 798
56.33The intermedtiate recombination operator dened as Section 30.3.2. . . . . . . . . . 799
56.34A uniform random string generator. . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
56.35A single bit-ip mutator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802
56.36The uniform crossover operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 803
56.37Create uniformly distributed permutations. . . . . . . . . . . . . . . . . . . . . . . . 804
56.38Modify a permutation by swapping two genes. . . . . . . . . . . . . . . . . . . . . . . 806
56.39Modify a permutation by repeatedly swapping two genes. . . . . . . . . . . . . . . . 808
56.40The base class for search operations for trees. . . . . . . . . . . . . . . . . . . . . . . 809
56.41An utility class to construct random paths in a tree, i. e., to select random nodes. . . 811
56.42The ramped-half-and-half creation procedure. . . . . . . . . . . . . . . . . . . . . . . 814
56.43A simple sub-tree replacement mutator. . . . . . . . . . . . . . . . . . . . . . . . . . 815
56.44A binary search operation for trees. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817
56.45A multiplexing nullary search operation. . . . . . . . . . . . . . . . . . . . . . . . . . 818
56.46A multiplexing unary search operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 820
56.47A multiplexing binary search operation. . . . . . . . . . . . . . . . . . . . . . . . . . 822
LIST OF LISTINGS 1223
56.48A base class for tree nodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824
56.49A type description for tree nodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
56.50A set of tree node types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
56.51The identity mapping for cases where G = X. . . . . . . . . . . . . . . . . . . . . . . 833
56.52The Random Keys genotype-phenotype mapping introduced in Algorithm 29.8. . . . 834
56.53The step-limit termination criterion. . . . . . . . . . . . . . . . . . . . . . . . . . . . 836
56.54A comparator realizing the lexicographic relationship. . . . . . . . . . . . . . . . . . 837
56.55A comparator realizing the Pareto dominance relationship. . . . . . . . . . . . . . . . 838
56.56The individual record. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839
56.57The individual record for multi-objective optimization. . . . . . . . . . . . . . . . . . 841
56.58A base class for archiving non-dominated individuals. . . . . . . . . . . . . . . . . . 843
56.59Some constants useful for optimization. . . . . . . . . . . . . . . . . . . . . . . . . . 850
56.60A small and handy class for computing some useful statistics. . . . . . . . . . . . . . 851
56.61Some simple utilities for converting objects to strings. . . . . . . . . . . . . . . . . . 854
57.1 The Sphere Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859
57.2 f
1
as dened in Equation 26.1 on page 238. . . . . . . . . . . . . . . . . . . . . . . . 860
57.3 f
2
as dened in Equation 26.2 on page 238. . . . . . . . . . . . . . . . . . . . . . . . 861
57.4 f
3
as dened in Equation 26.3 on page 238. . . . . . . . . . . . . . . . . . . . . . . . 862
57.5 Testing the function from Task 64. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863
57.6 An example output of the Function test program. . . . . . . . . . . . . . . . . . . . . 868
57.7 Solving the Sphere functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
57.8 An example output of the Sphere test program. . . . . . . . . . . . . . . . . . . . . . 887
57.9 An Instance of the Bin Packing Problem. . . . . . . . . . . . . . . . . . . . . . . . . 888
57.10The rst objective function f
1
from Task 67. . . . . . . . . . . . . . . . . . . . . . . . 892
57.11The second objective function f
2
from Task 67. . . . . . . . . . . . . . . . . . . . . . 893
57.12The third objective function f
3
from Task 67. . . . . . . . . . . . . . . . . . . . . . . 894
57.13The fourth objective function f
4
from Task 67. . . . . . . . . . . . . . . . . . . . . . 896
57.14The fth objective function f
5
from Task 67. . . . . . . . . . . . . . . . . . . . . . . . 897
57.15Solving the Bin Packing problem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899
57.16An example output of the Bin Packing test program. . . . . . . . . . . . . . . . . . . 903
57.17The data of the att48 problem instance. . . . . . . . . . . . . . . . . . . . . . . . . . 904
57.18A single-objective test program for symbolic regression. . . . . . . . . . . . . . . . . 905
57.19A multi-objective test program for symbolic regression. . . . . . . . . . . . . . . . . . 906
57.20An objective function for Symbolic Regression. . . . . . . . . . . . . . . . . . . . . . 908
57.21An objective function based on Listing 57.20, but also including tree-size information. 910
57.22An objective function for Symbolic Regression. . . . . . . . . . . . . . . . . . . . . . 910
57.23Some example functions to match with regression. . . . . . . . . . . . . . . . . . . . 912
57.24An instance of this class holds the information of one location. . . . . . . . . . . . . 914
57.25An instance of this class holds the information of one order. . . . . . . . . . . . . . . 915
57.26An instance of this class holds the information of one truck. . . . . . . . . . . . . . . 918
57.27An instance of this class holds the information of one container. . . . . . . . . . . . . 920
57.28An instance of this class holds the information of one driver. . . . . . . . . . . . . . 921
57.29This class holds the complete infomation about the distances between locations. . . 923
57.30An object which holds a transportation move. . . . . . . . . . . . . . . . . . . . . . . 925
57.31An object which can be used to compute the features of a candidate solution of the
benchmark problem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931