Practical Optimization Using Evolutionary Methods
Practical Optimization Using Evolutionary Methods
Kalyanmoy Deb
Kanpur Genetic Algorithms Laboratory (KanGAL)
Department of Mechanical Engineering
Indian Institute of Technology Kanpur
Kanpur, PIN 208016, India
deb@iitk.ac.in
http://www.iitk.ac.in/kangal
KanGAL Report Number 2005008
Abstract
INTRODUCTION
enjoyed a good 50 years of research and applications and are still going strong. However, around the
middle of eighties, completely unorthodox and lessmathematical yet intriguing optimization procedures
have been suggested mostly by computer scientists.
It is not surprising because these non-traditional optimization methods exploit the fast and distributed
computing machines which are getting increasingly
available and affordable like slide-rules of sixties.
In this paper, we focus on one such non-traditional
optimization method which takes the lions share of
all non-traditional optimization methods. This socalled evolutionary optimization (EO) mimics the
natural evolutionary principles on randomly-picked
solutions from the search space of the problem and iteratively progresses towards the optimum point. Natures ruthless selective advantage to fittest individuals and creation of new and more fit individuals
using recombinative and mutative genetic processing with generations is well-mimicked artificially in
a computer algorithm to be played on a search space
where good and bad solutions to the underlying problem coexist. The task of an evolutionary optimization algorithm is then to avoid the bad solutions in
the search space, take clues from good solutions and
eventually reach close to the best solution, similar to
the genetic processing in natural systems.
Like the existence of various natural evolutionary
principles applied to lower and higher level species,
researchers have developed different kinds of evolutionary plans resulting in a gamut of evolutionary
algorithms (EAs) some emphasizing the recombination procedure, some emphasizing the mutation operation and some using a niching strategy, whereas
some using a mating restriction strategy. In this article, we only give a description of a popular approach
genetic algorithm (GA). Other approaches are also
well-established and can be found from the EA literature [42, 1, 19, 29, 44, 27].
In the remainder of the paper, we describe an optimization problem and cite a number of commonlyused practical problems, including a number of CFD
problems, which are in essence optimization problems. A clear look at the properties of such practical optimization problems and a description of the
working principles of classical optimization methods
reveal that completely different optimization procedures are in order for such problem solving. Thereafter, the evolutionary optimization procedure is described and its suitability in meeting the challenges
offered by various practical optimization problems is
demonstrated. The final section concludes the study.
AN
OPTIMIZATION
PROBLEM AND ITS NOTATIONS
(1)
Optimal control: In this activity, control parameters, as functions of time, distance, etc., are
decision variables. The objective functions are
usually some estimates computed at the end of
Many researchers and practitioners may not know,
process, such as the quality of end-product, timebut they often either use or required to use an opaveraged
drag or lift, and stability or some other
timization method. For example, in fitting a linear
performance
measure across the entire process.
relationship y = mx + c between an input parameter
For
example,
in the design of a varying nozzle
x and output parameter y through a set of n data
shape
for
achieving
minimum average drag from
points, we often almost blindly use the following relaunch
to
full
throttle,
parameters describing the
lationships:
shape
of
the
nozzle
as
a
function of time are the
P
P P
decision variables. To evaluate a particular solun xy x y
P
P
,
(2)
m =
tion, the CFD system must have to be solved in
n x2 ( x)2
P
P
a
time sequence from launch to full throttle and
ym x
c =
.
(3)
the drag experienced at every time step must
n
have to be recorded for the computation of the
It is interesting to know that the above relationaverage drag coefficient for the entire flight. Staship has been derived by solving a unconstrained
bility or other performance indicators must also
quadratic optimization problem of minimizing the
be computed and recorded at every time step for
overall vertical error between the actual and the prechecking if the system is safe and perform satisdicted output values. In this section, we briefly disfactorily over the entire flight.
cuss different practical problem solving tasks in which
Modeling: Often in practice, systems involve coman optimization procedure is usually used.
plex processes which are difficult to express by
Optimal design: Instead of arriving at a solution
using exact mathematical relationships. Howwhich is simply a functionally satisfactory one,
ever, in such cases, either through pilot case
an optimization technique can be used to find
studies or through actual plant operation, nuan optimal design which will minimize or maximerous input-output data are available. To
mize a design goal. This activity of optimization
understand the system better and to improve
probably takes the lions share of all optimizathe system, it is necessary to find the relationtion activities and is most routinely used. Here
ships between input and output parameters in
the decision variables can be dimensions, shapes,
a process known as modeling. Such an opmaterials etc., which describe a design and obtimization task involves minimizing the error
jective function can be cost of production, enbetween the predicted output obtained by the
ergy consumption, drag, lift, reliability, stability
developed model and actual output. To commargin etc. For example, in the optimal design
pute the predicted output, a mathematical paof an airfoil shape for minimum drag (objective
rameterized model can be assumed based on
function), the shape of an airfoil can be represome information about the system, such as
sented by a few control parameters which can
y = a1 exp(a2 x), where a1 and a2 are the pabe considered as the decision variables. A minirameters to be optimized for modeling the exmum limit on the lift can be kept as a constraint
ponential relationship between the input x and
and the airfoil area can be bounded within ceroutput y. If a mathematical relationship is not
tain limits. Such a task will not only produce an
known at all, a relationship can be found by a
airfoil shape providing the minimum desired lift
sophisticated optimization method (such as geand area, but will also cause as small a drag as
netic programming method [29]) or by using an
possible.
artificial neural network.
3
Scheduling: Many practical problems involve finding a permutation which causes certain objectives optimum. In these problems, the sequence
of operations are of importance such as the absolute location of the operation on the permutation. For example, in a machining sequencing problem, it is important to know in what
order a job will flow from one machine to the
next, instead of knowing when exactly a job has
to be made on a particular machine. Such optimization tasks appear in time-tabling, planning, resource allocation problems and others,
and are usually known as combinatorial optimization problems.
smallest size classifiers which would be able correctly classify most samples of the data set into
various classes. Such problems often arise in bioinformatics problems [15] and can also be prevalent in other data-driven engineering tasks. In
a CFD problem such a classification task should
be able to find classifiers by which an investigation of a flow pattern should reveal the type of
flow (laminar or turbulent) or type of fluid or
kind of geometry associated with the problem.
Search
Space
Feasible
Optimum
Initial
Guess
Constraints
8. The problems give rise to multiple optimal solutions, of which some are globally best and many
others are locally optimal.
9. The problems involve multiple conflicting objectives, for which no one solution is best with respect to all chosen objectives.
CLASSICAL
OPTIMIZATION METHODS
Most classical point-by-point algorithms use a deterministic procedure for approaching the optimum solution. Such algorithms start from a random guess
solution. Thereafter, based on a pre-specified transition rule, the algorithm suggests a search direction,
which is often arrived at by considering local information. A one-dimensional search is then performed
along the search direction to find the best solution.
This best solution becomes the new solution and the
above procedure is continued for a number of times.
Figure 1 illustrates this procedure. Algorithms vary
mostly in the way the search directions are defined
at each intermediate solution.
more complicated objective function by means of natural genetics and natural selection than the search
and optimization problems we are interested in solving in practice. Thus, it is not surprising that the
computerized evolutionary optimization (EO) algorithm is not as complex as the natural genetics and
selection procedures, rather it is an abstraction of
the complex natural evolutionary process. Although
an EO is a simple abstraction, it is robust and has
been found to solve various search and optimization
problems of science, engineering, and commerce.
Algorithms are not efficient in handling problems having discrete variables or highly nonlinear and many constraints.
Algorithms cannot be efficiently used on a parallel computer.
The idea of using evolutionary principles to constitute a computerized optimization algorithm was suggested by a number of researchers located in geographically distant places across the globe. The field
now known as genetic algorithms was originated by
John Holland of University of Michigan [24], a contemporary field evolution strategy was originated by
Ingo Rechenberg and Hans-Paul Schwefel of Technical University of Berlin [37, 41], the field of evolutionary programming was originated by Larry Fogel
[20], and others. Figure 2 provides an overview of
computational intelligence and its components. Also,
different subfields of evolutionary computing are also
shown. In this paper, we mainly discuss the principles of a genetic algorithm and its use in different
optimization problem solving.
Genetic algorithm (GA) is an iterative optimization procedure. Instead of working with a single solution in each iteration, a GA works with a number of
solutions (collectively known as a population) in each
iteration. A flowchart of the working principle of a
simple GA is shown in Figure 3. In the absence of
any knowledge of the problem domain, a GA begins
its search from a random population of solutions. If
a termination criterion is not satisfied, three different operators reproduction and variation operators
(crossover and mutation, and others) are applied to
update the population of solutions. One iteration of
these operators is known as a generation in the parlance of GAs. Since the representation of a solution
in a GA is similar to a natural chromosome and GA
operators are similar to genetic operators, the above
It is commonly believed that the main driving principle behind the natural evolutionary process is the
Darwins survival-of-the-fittest principle [3, 18]. In
most scenarios, nature ruthlessly follows two simple
principles:
1. If by genetic processing an above-average offspring is created, it usually survives longer than
an average individual and thus have more opportunities to produce offspring having some of its
traits than an average individual.
2. If, on the other hand, a below-average offspring
is created, it usually does not survive longer and
thus gets eliminated quickly from the population.
The principle of emphasizing good solutions and eliminating bad solutions seems to dovetail well with desired properties of a good optimization algorithm.
But one may wonder about the real connection between an optimization procedure and natural evolution! Has the natural evolutionary process tried
to maximize a utility function of some sort? Truly
speaking, one can imagine a number of such functions
which the nature may have been thriving to maximize: life span of a species, quality of life of a species,
physical growth, and others. However, any of these
functions is non-stationary in nature and largely depends on the evolution of other related species. Thus,
in essence, the nature has been optimizing a much
Computational
Begin
Intelligence
Step 1:
Fuzzy
Systems
Evolutionary
Neural
Networks
Algorithms
Representation scheme
Step 2:
Initialize Population
Genetic
Algorithms
Evolution
Strategies
Evolutionary
Programming
Genetic
Programming
t=0
Step 3:
Differential
Evolution
Particle
Swarm
Evaluation
Evolvable
Hardware
Cond?
Yes
t=t+1
No
Step 4:
Reproduction
Step 5:
Stop
Variation
5.1.2
5.1.3
any suitable portion of the search space. In difficult problems with a known good solutions, the population can be created around the good solution by
randomly perturbing it [5].
place-holders to position the i-th component. We illustrate this coding procedure by using an example
having six components (a to f) using six integers (0
to 5). Let us say that we have a string
any effort to complete this step quickly (either by using distributed computers or approximately) would
provide a substantial saving in the overall procedure.
The evaluation step requires to first decipher
the solution vector from the chosen representation
scheme. If the variables are represented directly as
real or discrete numbers, they are already directly
available. However, if a binary substring is used to
represent some discrete variables, first the exact variable value must be computed from the substring. For
example, the following is a string, representing n variables:
11010
010 . . . 0010
| {z } 1001001
| {z }
| {z } |{z}
(0 0 2 1 3 2)
and would like to decipher the corresponding permutation. The second component (i = 2) has two places
to be positioned (i) before the component a or (ii)
after the component a. The first case is denoted by a
0 and the second case is denoted by a 1 in the string.
Since the place-holder value for i = 2 (component b)
is zero in the above string, the component b appears
x3
x1
x2
xn
before the component a. Similarly, with the first two
The i-th problem variable is coded in a binary sub- components placed as (b a), there are three placestring of length `i , so that the total number of al- holders for the component c (i) before b (with a
ternatives allowed in that variable is 2`i . The lower value 0), (ii) between b and a (with a value 1), and
bound solution xmin
is represented by the solution (iii) after a (with a value 2). Since the string has
i
(00. . .0) and the upper bound solution xmax
is repre- a value 2 in the third place, component c is placed
i
sented by the solution (11. . .1). Any other substring after a. Continuing in this fashion, we obtain the
si decodes to a solution xi as follows:
permutation
(b d f a e c)
xmax
xmin
min
i
i
DV(si ),
(4)
xi = x i +
corresponding to the above string representation.
2 `i 1
The advantage of this coding is that simple crossover
where DV(si ) is the decoded value of the substring and mutation operators (to be discussed later) can be
si . Such a representation of discrete variables (even applied on the coding to create valid permutations.
real-parameter variables) has a traditional root and
also nature root. A binary string resembles a chro5.1.4 Step 4: Reproduction operator
mosome comprising of a number of genes taking one
of two values one or zero. Treating these strings Reproduction (or selection) is usually the first opas individuals, we can then think of mimicking natu- erator applied to the population. Reproduction seral crossover and mutation operators similar to their lects good strings in a population and forms a mating pool. The essential idea is to emphasize abovenatural counterparts.
To represent a permutation (of n integers), an average strings in the population. The so-called biinnovative coded representation procedure can be nary tournament reproduction operator picks two soadopted so that simple genetic operators can be ap- lutions at random from the population and the better
plied on the coding. In the proposed representation of the two is chosen according to its fitness value. Al[13], at the i-th position from the left of the string, an though a deterministic procedure can be chosen for
integer between zero and (i1) is allowed. The string this purpose (for example, the best 50% population
is decoded to obtain the permutation as follows. The members can be duplicated), usually a stochastic proi-th position denotes the placement of component i cedure is adopted in an EA to reduce the chance of
in the permutation. The decoding starts from the getting trapped into a local optimal solution.
left-most position and proceeds serially towards right.
While decoding the i-th position, the first (i1) components are already placed, thereby providing with i
8
5.1.5
During the selection operator, good population members are emphasized at the expense of bad population members, but no new solution is created. The
purpose of variation operators is just to create new
and hopefully improved solutions by using the mating pool. A number of successive operations can be
used here. However, there are two main operators
which are mostly used.
In a crossover operator, two solutions are picked
from the mating pool at random and an information exchange is made between the solutions to create one or more offspring solutions. In a single-point
crossover operator applied to binary strings, both
strings are cut at an arbitrary place and the rightside portion of both strings are swapped among themselves to create two new strings:
1 1 1 1 1
1 1 0 0 0
strings and crossover operator recombines good substrings from two good strings together to hopefully
It is true that every crossover between any two soform a better substring. Mutation operator alters a
lutions from the new population is not likely to find
string locally to hopefully create a better string. Even
offspring better than both parent solutions, but the
though none of these claims are guaranteed and/or
chance of creating better solutions is far better than
tested while creating a new population of strings, it
random [21]. This is because the parent strings beis expected that if bad strings are created they will be
ing crossed are not any two arbitrary random strings.
eliminated by the reproduction operator in the next
These strings have survived tournaments played with
generation and if good strings are created, they will
other solutions during the earlier reproduction phase.
be retained and emphasized.
Thus, they are expected to have some good bit comAlthough the above illustrative discussion on the
binations in their string representations. Since, a
working of a genetic algorithm may seem to be a
single-point crossover on a pair of parent strings can
computer-savvy, nature-hackers game-play, there exonly create ` different string pairs (instead of all 2`1
ists rigorous mathematical studies where a complete
possible string-pairs) with bit combinations from eiprocessing of a finite population of solutions under
ther strings, the created offspring are also likely to be
GA operators is modeled by using Markov chains [45],
good strings. To reduce the chance of losing too many
using statistical mechanics approaches [34], and usgood strings by this process, usually a pair of soluing approximate analysis [22]. On different classes of
tions are participated in a crossover operator with
functions, the recent dynamical systems analysis [46]
a crossover probability, pc . Usually, a large value
treating a GA as a random heuristic search reveals
within [0.7, 1] is chosen for this parameter. A value
the complex dynamical behavior of a binary-coded
of pc = 0.8 means that 80% population members parGA with many meta-stable attractors. The interestticipate in crossovers to create new offspring and the
ing outcome is the effect of population size on the
20% parents are directly accepted as offspring.
degree of meta-stability. In the statistical mechanics
The mutation operator perturbs a solution to its
approach, instead of considering microscopic details
vicinity with a small mutation probability, pm . For
of the evolving system, several macroscopic variables
example, in a binary string of length `, a 1 is changed
9
describing the system, such as mean, standard deviation, skewness and kurtosis of the fitness distribution,
are modeled. Analyzing different GA implementations with the help of these cumulants provides interesting insights into the complex interactions among
GA operators [39]. Rudolph has shown that a simple GA with an elite-preserving operator and nonzero mutation probability converges to the global
optimum solution to any optimization problem [40].
Leaving the details of the theoretical studies (which
can be found from the growing EA literature), here
we shall illustrate the robustness (combined breadth
and efficiency) of a GA-based optimization strategy
in solving different types of optimization problems
commonly encountered in practice.
5.2
Real-Parameter
rithms
Genetic
n1
X
i=1
100(x2i xi+1 )2 + (xi 1)2 ,
(5)
10
Method
GA+PCX
(1, 10)-ES
CMA-ES
DE
BFGS
Best
16,508
591,400
29,208
243,800
26,000
Median
21,452
803,800
33,048
587,920
Worst
25,520
997,500
41,076
942,040
6.1
11
CONSTRAINT OPTIMIZATION
The terms (~x), (~x), Pc (~x), and (~x) are given below:
0
(~x) =
( (~x))2 + ( 00 (~x))2 +
Constraints are inevitable in real-world (practical)
i
p
problems. The classical penalty function approach
` 0 (~x) 00 (~x)/ 0.25(`2 + (h + t)2 ) ,
of penalizing an infeasible solution is sensitive to
504, 000
a penalty parameter associated with the technique (~x) =
,
t2 b
and often requires a trial-and-error method. In the
3
penalty function method for handling inequality con- Pc (~x) = 64, 746.022(1 0.0282346t)tb ,
2.1952
straints in minimization problems, the fitness func(~x) =
,
t3 b
tion F (~x) is defined as the sum of the objective function f (~x) and a penalty term which depends on the where
constraint violation hgj (~x)i:
6, 000
,
0 (~x) =
J
X
2h`
2
p
Rj hgj (~x)i ,
(6)
F (~x) = f (~x) +
6, 000(14 + 0.5`) 0.25(`2 + (h + t)2 )
00
j=1
.
(~x) =
2 {0.707h`(`2/12 + 0.25(h + t)2 )}
where h i denotes the absolute value of the operand,
if the operand is negative and returns a value zero, The optimized solution reported in the literature
otherwise. The parameter Rj is the penalty param- [38] is h = 0.2444, ` = 6.2187, t = 8.2915,
eter of the j-th inequality constraint. The purpose and b = 0.2444 with a function value equal to
of a penalty parameter Rj is to make the constraint f = 2.38116. Binary GAs are applied on this probviolation gj (~x) of the same order of magnitude as the lem in an earlier study [4] and the solution ~x =
objective function value f (~x). Equality constraints (0.2489, 6.1730, 8.1789, 0.2533) with f = 2.43 (within
are usually handled by converting them into inequal- 2% of the above best solution) was obtained with
a population size of 100. However, it was observed
ity constraints as follows:
that the performance of GAs largely dependent on
the chosen penalty parameter values, as shown in Tagk+J (~x) |hk (~x)| 0,
ble 1. With R = 1 (small values of R), although 12
where is a small positive value.
out of 50 runs have found a solution within 150% of
In order to investigate the effect of the penalty pa- the best-known solution, 13 EO runs have not been
rameter Rj (or R) on the performance of GAs, we able to find a single feasible solution in 40,080 funcconsider a well-studied welded beam design problem tion evaluations. This happens because with small R
[38]. The resulting optimization problem has four de- there is not much pressure for the solutions to become
sign variables ~x = (h, `, t, b) and five inequality con- feasible. With larger penalty parameters, the presstraints:
sure for solutions to become feasible is more and all
50 runs found feasible solutions. However, because of
2
Min. fw (~x) = 1.10471h ` + 0.04811tb(14.0 + `),
larger emphasis of solutions to become feasible, when
s.t. g1 (~x) 13, 600 (~x) 0,
a particular solution becomes feasible it has a large
g2 (~x) 30, 000 (~x) 0,
selective advantage over other solutions (which are
g3 (~x) b h 0,
infeasible) in the population and the EO is unable to
g4 (~x) Pc (~x) 6, 000 0,
reach near to the true optimal solution.
g5 (~x) 0.25 (~x) 0,
In the recent past, a parameter-less penalty ap0.125 h 10,
proach is suggested by the author [7], which uses the
0.1 `, t, b 10.
following fitness function derived from the objective
(7)
12
ROBUST
AND
f(x)
>
Inits
sensitivity
to
the parameter fluctuations and inacR
150% 150% fes.
Best
Med.
Worst
100
12
25
13
2.413 7.625 483.502 curacy in the formulation of the problem. Consider
101
12
38
0
3.142 4.335
7.455 Figure 7, in which although the global minimum is at
103
1
49
0
3.382 5.971
10.659 B, this solution is very sensitive to parameter fluctu106
0
50
0
3.729 5.877
9.424 ations. A small error in implementing solution B will
Prop.
50
0
0
2.381 2.383
2.384 result in a large deterioration in the function value.
On the other hand, solution A is less sensitive and
more suitable as the desired solution to the problem.
The dashed line is an average of the function around
and constraint values:
2
f (x), if x is feasible;
PJ
PK
F (x) =
fmax + j=1 hgj (x)i + k=1 |hk (x)|, else.
1.8
(8)
In a tournament between two feasible solutions, the
1.6
first clause ensures that the one with a better function value wins. The quantity fmax is the objective
1.4
function value of the worst feasible solution in the
population. The addition of these quantity to the
1.2
A
constraint violation ensures that a feasible solution
is always better than any infeasible solution. More1
Original
Average
B
over, since this quantity is constant in any generation, between two infeasible solutions the one with
0.8
0
0.2
0.4
0.6
0.8
1
smaller constraint violation is judged better. Since
x
the objective function value is never compared with
a constraint violation amount, there is no need of any
penalty parameter with such an approach.
Figure 7: Although solution B is the global minimum,
When the proposed constraint handling EO is ap- it is a robust solution. Solution A is the robust soluplied to the welded beam design problem, all 50 sim- tion.
ulations (out of 50 runs) are able to find a solution
very close to the true optimal solution, as shown in a small region near a solution. If the function shown
the last row of Table 1. This means that with the pro- in dashed line is optimized the robust solution can be
posed GAs, one run is enough to find a satisfactory achieved [2, 26, 12].
For a canonical deterministic optimization task,
solution close to the true optimal solution.
the optimum solution usually lies on a constraint surface or at the intersection of more than one constraint
surfaces. However, if the design variables or some
system parameters cannot be achieved exactly and
13
Relationship
x_2
99.99%
99%
95%
90%
80%
x_1
Deterministic
optimum
OPTIMIZATION
WITH
DISTRIBUTED COMPUTING
10
COMPUTATIONALLY
DIFFICULT OPTIMIZATION PROBLEMS
Many engineering optimization problems involve objectives and constraints which require an enormous
computational time. For example, in CFD control
problems involving complicated shapes and geometries, every solution requires mesh generation, automated node-numbering, and solution of the finite difference equations. The computational time in such
problems can easily consume a few minutes to days
for evaluating a single solution on a parallel computer, depending the rigor of the problem. Clearly,
optimization of such problems is still out of scope
in its traditional sense and often innovations in using the optimization methodology must be devised.
Here, we suggest a couple of approaches:
1. Approximate models for evaluation instead of
14
) *
) *) /0
/ 0
/ 0/
*
'' (
'' (
'' (('' -
-- .
-- ..-(
-.
(
(
.
.
(
%% &
%% &&%% ,
++ ,
++ ,,++
&
&
%% &
%% &%&%% ,
+++ ,
+++ ,,+++
%&
%&
&
&
,
,
&& ,
,,
,, <
# $
# $#$# &
; <
; <;
$
!! ""!!
9:
99 :
99 ::99
"
""!!
"
:
CC D
CC DDCC J
II J
II JJII
D
D
CC D
CCDCDCC J
III J
IIIJJIII
J
J
CD
CD
D
D
J
J
A B
A BABA
Y ZY ZY
Z
?? @@??
WW X
WW X
WW XXWW
@?
X
@
X
@
@? T
X
S T
S TS X
QQ R
QQ R
QQ RRQQ V
== >
== >>== R
UU V
UU VVUU
R
R
R
>
>
V
>
==
==
UV
UU
>
V
O V
= >
= >==>= O
U V
U VUUVU
>
>
V
OO O
OO PPOO U
P
P
P
P
OP
OP
O
P
P
OO P
OOPOO
10.2
In practical optimal control problems involving timevarying decision variables, the objective and constraint functions need to be computed when the
whole process is simulated for a time period. In CFD
||{{
problems, such control problems often arise in which
||{{|{|{
|{||{{
control parameters such as velocities and shapes need
{
|
||{{
to be changed over a time period in order to obtain
zzyyzy
zzyy
a minimum drag or a maximum lift or a maximally
zyyzy
~~}}~}
z
~~}}
zzyyzzyy
stable system. The computation of such objectives
}
~
}
~
~}
is a non-linear process of solving a system of gov~~}}~~}}
erning partial differential equations sequentially from
the initial time to a final time. When such a series
Figure 9: A parallel computing environment for an of finite difference equations are solved for a particular solution describing the system, one evaluation
ideal EO.
is over. Often, such an exact evaluation procedure
may take a few hours to a few days. Even if only
exact objective and constraint functions can be a few hundred solutions are needed to be evaluated
used.
to come any where closer to the optimum, this may
take a few months on even a moderately fast par2. For time-varying control problems, a fast yet apallel computer. For such problems, an approximate
proximate optimization principle can be used.
optimization procedure can be used as follows [43].
The optimal control strategy for the entire time
10.1 Approximate Models
span [ti , tf ] is divided into K time intervals [tk , tk +
t], such that t0 = ti and tK = tK1 + t = tf . At
In this approach, an approximate model of the obthe k-th time span, the GA is initialized by mutatjective and constraint functions are first developed
ing the best solution found in (k 1)-th time span.
using a handful of solutions evaluated exactly. In
Thereafter, the GA is run for generations and the
this venture, a response surface methodology (RSM),
best solution is recorded. The control strategy correa kriging methodology or an ANN approach can all
sponding to this best solution is assigned as the overbe used. Since the model is at best assumed to be
all optimized control strategy for this time span. This
an approximate one, it must be used for a while and
is how the optimized control strategy gets formed as
discarded when solutions begins to crowd around the
the time span increases from t0 to tf . This probest region of the approximate model. At this stage,
posed genetic search procedure is fast (O(K) comanother approximate model can be developed near
pared to O(K 2 )) and allows an approximate way to
the reduced search region dictated by the current
handle computationally expensive time-varying optipopulation. One such coarse-to-fine grained approxmization problems, such as the CFD problem solved
imate modeling technique (with an ANN approach)
elsewhere [43]. Although the procedure is fast, on the
has been recently developed for multi-objective optiflip side, the proposed search procedure constitutes
mization [31] and a number of test problems and two
an approximate search and the resulting optimized
15
MULTI-MODAL
MIZATION
0.8
0.7
0.6
f(x)
11
0.9
OPTI-
Many practical optimization problems possess a multitude of optima some global and some local. In
such problems, it may be desirable to find as many
optima as possible to have a better understanding of
the problem. Due to the population approach, GAs
can be used to find multiple optimal solutions in one
simulation of a single GA run. In one implementation [10], the fitness of a solution is degraded with its
niche count, an estimate of the number of neighboring solutions. It has been shown that if the reproduction operator is performed with the degraded fitness
values, stable subpopulations can be maintained at
various optima of the objective function. Figure 10
shows that a niched-GA can find all five optima (albeit a mix of local and global optima) in one single
simulation run.
0.5
0.4
0.3
0.2
0.1
0
0.2
0.4
0.6
0.8
Crowding
distance
sorting
4000
3500
Pt+1
3000
F1
Pt
2500
Volume (cc)
F2
F3
Qt
Rejected
2000
JA (1990)
1500
1000
Rt
500
0
10
12
14
Power (kW)
Figure 12: NSGA-II solutions are shown to outperform a classical approach with two limiting errors in
output speeds.
For example, for the gearbox design problem described above, when we analyze all 300 solutions, we
find that the only way these optimal solutions vary
from each other is by having a drastically different
value in only one of the variables (module of the
gear) and all other variables (thickness and number
of teeth of each gear) remain more or less the same
for all solutions. Figure 13 shows how module (m) is
changing with one of the objectives (power delivered
(p) by the gearbox). When a curve is fitted through
these points, the following mathematical relationship
12.1 Innovization:
Understanding emerges: m = p. This is an useful information
for a designer to have. What this means is that if
the Optimization Problem Bet- a gearbox is designed today for p = 1 kW power reter
quirement and tomorrow if a gearbox is needed to
Besides finding the trade-off optimal solutions, evo- be designed for another application requiring p = 4
lutionary multi-objective optimization (EMO) stud- kW the only change needed in the gearbox is an inies are getting useful for another reason. When a crease of module by a factor of two. A two-fold inset of trade-off solutions are found, they can be ana- crease in module will increase the diameter of gears
lyzed to discover any useful similarities and dissimi- and hence the size of the gearbox. Although a comlarities among them. Such information, particularly plete re-optimization can be performed from scratch
the common principles, if any, should provide useful and there may be other ways the original gearbox
can be modified for the new requirement, but such a
insight to a designer, user, or a decision-maker.
17
0.4
Upper limit
0.35
Module (cm)
0.3
0.25
0.2
0.15
Lower limit
0.1
1 2
10
12
14
16
18
20
Power (kW)
13
Acknowledgment
The author acknowledges the efforts of all his collaborators during the past 13 years of research and
application in developing efficient evolutionary optimization methods for practical problem solving.
References
[1] H.-G. Beyer. The theory of evolution strategies.
Berlin, Germany: Springer, 2001.
[2] J. Branke. Creating robust solutions by means of
an evolutionary algorithm. In Proceedings of the
Parallel Problem Solving from Nature (PPSNV), pages 119128, 1998.
CONCLUSIONS
[3] R. Dawkins. The Selfish Gene. New York: Oxford University Press, 1976.
[4] K. Deb. Optimal design of a welded beam
structure via genetic algorithms. AIAA Journal,
29(11):20132015, 1991.
[5] K. Deb. Genetic algorithms in optimal optical
filter design. In Proceedings of the International
Conference on Computing Congress, pages 29
36, 1993.
18
[6] K. Deb. Optimization for Engineering Design: [15] K. Deb and A. R. Reddy. Classification of twoAlgorithms and Examples. New Delhi: Prenticeclass cancer data reliably using evolutionary alHall, 1995.
gorithms. BioSystems, 72(1-2):111129, 2003.
[7] K. Deb. An efficient constraint handling method [16] K. Deb and A. Srinivasan. Innovization: Innovation through optimization. Technical Report
for genetic algorithms.
Computer Methods
KanGAL Report Number 2005007, Kanpur Gein Applied Mechanics and Engineering, 186(2
netic Algorithms Laboratory, IIT Kanpur, PIN
4):311338, 2000.
208016, 2005.
[8] K. Deb. Multi-objective optimization using evolutionary algorithms. Chichester, UK: Wiley, [17] O. Ditlevsen and H. O. Madsen. Structural Reliability Methods. New York: Wiley, 1996.
2001.
[9] K. Deb, A. Anand, and D. Joshi. A computationally efficient evolutionary algorithm for realparameter optimization. Evolutionary Computation Journal, 10(4):371395, 2002.
[10] K. Deb and D. E. Goldberg. An investigation of
niche and species formation in genetic function
optimization. In Proceedings of the Third International Conference on Genetic Algorithms,
pages 4250, 1989.
[11] K. Deb and M. Goyal. A robust optimization procedure for mechanical component design
based on genetic adaptive search. Transactions
of the ASME: Journal of Mechanical Design,
120(2):162164, 1998.
[23] N. Hansen and A. Ostermeier. Adapting arbitrary normal mutation distributions in evolution
strageties: The covariance matrix adaptation. In
Proceedings of the IEEE International Conference on Evolutionary Computation, pages 312
317, 1996.
[24] J. H. Holland. Adaptation in Natural and Artificial Systems. Ann Arbor, MI: MIT Press, 1975.
[25] P. Jain and A. M. Agogino. Theory of design: An
optimization perspective. Mech. Mach. Theory,
25(3):287303, 1990.
[14] K. Deb and S. Jain. Multi-speed gearbox [26] Yaochu Jin and Bernhard Sendhoff. Trade-off
between performance and robustness: An evodesign using multi-objective evolutionary algolutionary multiobjective approach. In Proceedrithms. ASME Transactions on Mechanical Deings of the Evolutionary Multi-Criterion Optisign, 125(3):609619, 2003.
mization (EMO-2003), pages 237251, 2003.
19
[34]
[35]
[36]