You are on page 1of 25

256

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

Evolutionary Algorithms + Domain Knowledge =


Real-World Evolutionary Computation
Piero P. Bonissone, Fellow, IEEE, Raj Subbu, Senior Member, IEEE, Neil Eklund, Member, IEEE, and
Thomas R. Kiehl

AbstractWe discuss implicit and explicit knowledge representation mechanisms for evolutionary algorithms (EAs). We also
describe offline and online metaheuristics as examples of explicit
methods to leverage this knowledge. We illustrate the benefits
of this approach with four real-world applications. The first
application is automated insurance underwritinga discrete classification problem, which requires a careful tradeoff between the
percentage of insurance applications handled by the classifier and
its classification accuracy. The second application is flexible design
and manufacturinga combinatorial assignment problem, where
we optimize design and manufacturing assignments with respect
to time and cost of design and manufacturing for a given product.
Both problems use metaheuristics as a way to encode domain
knowledge. In the first application, the EA is used at the metalevel,
while in the second application, the EA is the object-level problem
solver. In both cases, the EAs use a single-valued fitness function
that represents the required tradeoffs. The third application is a
lamp spectrum optimization that is formulated as a multiobjective optimization problem. Using domain customized mutation
operators, we obtain a well-sampled Pareto front showing all
the nondominated solutions. The fourth application describes a
scheduling problem for the maintenance tasks of a constellation
of 25 low earth orbit satellites. The domain knowledge in this
application is embedded in the design of a structured chromosome, a collection of time-value transformations to reflect static
constraints, and a time-dependent penalty function to prevent
schedule collisions.
Index TermsAutomated insurance underwriting, combinatorial optimization, design and manufacturing planning,
evolutionary algorithms (EAs), knowledge representation, lamp
spectrum optimization, metaheuristics, multiobjective optimization, satellite scheduling, soft computing.

I. INTRODUCTION

OST decision and control problems may be cast in the


semantics of an optimization or search problem. It is no
surprise, therefore, that research in optimization and search algorithms has a rich and diverse history, and is a principal focus
across several scientific and engineering disciplines. When the
structure of a problem is such that its constraints and objectives are all linear or one or more of them are nonlinear but
convex, a host of mathematical-programming-based algorithms
may be readily applied to realize exact solutions. Mathematical-programming-based algorithms are also applicable in some
Manuscript received April 30, 2004; revised March 3, 2005.
P. P. Bonissone, R. Subbu, and N. Eklund are with General Electric Global
Research, Niskayuna, NY 12309 USA (e-mail: bonissone@research.ge.com;
subbu@research.ge.com; eklund@research.ge.com).
T. R. Kiehl is with Rensselaer Polytechnic Institute, Troy, NY 12180 USA
(e-mail: kiehlt@rpi.edu).
Digital Object Identifier 10.1109/TEVC.2005.857695

circumstances even if the search space is discrete, provided the


problem constraints have certain desirable geometrical properties such as unimodularity [1]. However, a wide variety of
real-world decision and control problems have significant nonlinearities, complex coupling, and multiple dimensions, and are
often times discrete as well and with complex constraints.
Evolutionary algorithms (EAs) utilize principles of natural
selection and are robust adaptive search schemes suitable
for searching nonlinear, discontinuous, and high-dimensional
spaces. This class of algorithms is being increasingly applied
to obtain optimal or near-optimal solutions to many complex real-world optimization problems. It has therefore been
tempting for the EA research community at large to categorize
these algorithms as universal problem solvers. However, it
is also being increasingly realized that EAs in the absence
of additional problem-specific knowledge incorporation do
not perform as well as mathematical-programming-based
algorithms on certain classes of problems. Mathematical-programming-based approaches in general attempt to leverage
unique geometrical characteristics such as linearity and convexity of the problem classes to which they are applied. It
is also our collective experience that even for problems that
do not admit mathematical-programming-based algorithms,
and for which EAs can be readily applied, the quality of the
optimization is in general remarkably better when knowledge
about the domain or geometrical properties of the search space
is incorporated in the evolutionary problem solving. This
knowledge may be incorporated either implicitly, in the design
of data structures, encoding, and constraints representations,
or explicitly, via the initialization of the first population and
in the control of EAs parameters. Insight from the no free
lunch theorems (NFLTs) for optimization [2], [3] has placed a
critical focus on the effect of knowledge incorporation in EAs
performance, although it is argued that the NFLT applies to
problems closed under permutation [4].
The NFLT states that taken over the set of all possible combinatorial optimization problems, the performance of any two
search algorithms is the same and that any algorithm performs
only as well as the knowledge concerning the cost function put
into the algorithm [3].
We could formally define NFLT as follows: for any two
black box optimization algorithms
and , we have that
the performance averaged over all combinatorial optimization problems is constant for any pair of algorithms

1089-778X/$20.00 2006 IEEE

(1)

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

where
,

two optimization algorithms;


number of algorithm iterations;
time-ordered set of distinct points visited;
combinatorial optimization problem.
This theorem states that for any optimization algorithm, an
elevated performance over one class of problems is offset by degraded performance over another class. Thus, the performance
average of a given optimization algorithm over the entire class of
potential problems is constant. If an algorithm performs better
than random search for some problems, it will perform worse
than random search for other problems, maintaining a constant
performance average. These results suggest that any one set of
potentially optimal algorithms can be considered so only for a
limited subset of problems and their use cannot result in consistently superior performance over the entire space of optimization problems, as was previously generally expected. The only
way a strategy can outperform another is if it is specialized to
the structure of the specific problem under consideration [5].
The NFLTs conclusions highlight the need to embed domain knowledge into an EA to achieve good performance.
Equally critical is to define a methodology for representing
and reasoning with such domain knowledge. In the following
sections, we explore various approaches to the representation
of domain knowledge in evolutionary algorithms, ranging
from customized data structures to the use of metaheuristics to
provide external EA parameter control.
A. Objectives
When addressing real-world problems, we are faced with
systems that are usually ill defined, difficult to model, and
possess large solution spaces. In these cases, precise models
are impractical, too expensive, or nonexistent. Therefore, we
need to generate approximate solutions by leveraging the two
types of resources that are generally available: problem domain
knowledge of the process (or product) and field data that characterize the systems behavior. The relevant available domain
knowledge is typically a combination of first principles and
empirical knowledge. This knowledge is often incomplete and
sometimes erroneous. The available data are typically a collection of inputoutput measurements, representing instances of
the systems behavior, and are generally incomplete and noisy.
In this paper, we illustrate different approaches for incorporating domain knowledge at the algorithms representation (or
object) level and at its control (or meta) level. We also highlight the versatility of hybrid soft computing (SC) techniques
[6] for integrating knowledge with data. The applications described in this paper are far from trivial. In some cases, we used
competitive alternatives to baseline the performance of our hybrid SC systems, as illustrated in [7]. We were able to develop
and, in some cases, deploy robust solutions for these applications by leveraging hybrid soft computing techniques. SC is a
flexible framework offering a broad spectrum of design choices
to perform the integration of imprecise knowledge and data to
improve the performance of our hybrid models [8], [9]. Fuzzy
systems exploit the tolerance for imprecision and offer a flexible representation for imprecise knowledge. Evolutionary algorithms offer a great amount of robustness in their search,

257

when efficient encoding schemes and good strategies to maintain population diversity are used. Integration of fuzzy systems
and evolutionary algorithms allows the represented knowledge
to help initialize and guide the search for a solution in an efficient manner [10].
We also make a few remarks regarding the customization aspects of the algorithms. The NFLT formally supports leveraging
domain knowledge within the search algorithm. However, ad
hoc approaches for representing and integrating such knowledge
could lead to algorithms that are virtually impossible to maintain
over time. It is essential to have a process in which the knowledge is described explicitly rather than implicitly via procedural
changes. The use of hybrid systems based on an explicit knowledge base (KB) and the automation of their KBs tuning allow us
to deploy high-performance systems that can also be supported
and updated during their lifecycle. This concept is illustrated in
the first two applications described in this paper, where we use
metaheuristics, and is further described in [11] and [12].
B. Structure of This Paper
In the next section, we address the issue of knowledge
representation in evolutionary algorithms and consider implicit
representation approaches (specialized data structure, encoding,
and constraints) and explicit representation approaches (population initialization, customized variational operators, offline
and online metaheuristics). We describe the role of hybrid
fuzzy systems in incorporating domain knowledge within evolutionary algorithms and emphasize the natural framework that
they provide for these hybridizations. In the following sections,
we illustrate four real-world applications in which hybrid soft
computing systems were successfully developed, tested, and
in some cases deployed. All applications are described using a
common six-part structure: a) problem description; b) related
work; c) solution architecture; d) domain knowledge representation; e) results; and f) remarks. Our intention is to present
them as self-contained units, while highlighting their common
problem-solution aspects and benefits by incorporating domain
knowledge into the algorithms.
The first application is the automation of risk classification
in underwriting life insurance applications. This application
showcases the use of an evolutionary algorithm as an offline
metaheuristic used to tune the parameters of a fuzzy classifier.
The second application describes the optimization of design
and manufacturing planning and illustrates the role of a fuzzy
system as an online metaheuristic to control the real-time parameters of a genetic algorithm. The third application addresses
the optimization of lamp spectrum by explicitly incorporating
domain knowledge into the variational operators used by the
evolutionary algorithms. The last application is devoted to the
scheduling of the maintenance tasks for a constellation of 25
satellites in low earth orbit (LEO). This application illustrates
the use of implicit knowledge representation approaches, in
which we used customized data structures to reflect static
constraints (verifiable at compile time) and penalty functions
to represent dynamic constraints. In the Conclusions section,
we note again the importance of representing and integrating
domain knowledge with search algorithms and the natural ease

258

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

to define these hybrid systems within the framework of soft


computing.
II. A STRUCTURED APPROACH TO REPRESENTING DOMAIN
KNOWLEDGE IN EAS
There are two principal methods for embedding such knowledge: implicitly, in the design of data structures, encoding, and
constraints representations, and explicitly, via initialization of
the population and the control of EA parameters. We will briefly
describe some of these available options.
A. Implicit Knowledge Representation
1) Data Structure: The representation of the solution space
is one of the most critical design decisions for any EA, since
it will likely have a strong impact on the algorithms overall
performance [13]. EA designers should be parsimonious in
defining the solution representation, to limit the size of the
search space and to avoid potentially generating infeasible
solutions. For example, in a traveling salesman problem (TSP),
the data structure should be designed in such a way so as to
detect (and perhaps correct) the presence of loops in a circuit
of cities. Other constraints, such as feasible range of values for
each position in the chromosome, should be included in the
data structure to prevent the generation of infeasible solutions.
Another example of embedding knowledge in the data structure
is the case when the solution has a tree structure. In such a case,
the chromosome should not be a general connectivity matrix,
which could represent any other type of graph besides a tree.
Rather, a data structure that can only generate trees, such as
possible via Prims algorithm [14], would be a more efficient
representation.
2) Encoding: EA designers have several options when it
comes to solution encoding: binary, real, integer, finite state automata, and tree structures are just a few of the possible choices
for solution encoding. For a given problem, a certain encoding
(or encodings) may result in a relatively compact search space,
which is advantageous. For example, if the solution space for
a problem is known to be discrete (i.e., month of the year,
pointer in a list), then it would be wasteful to use a real number
representation for the problem unless there are other overriding
reasons. Similarly, real encoding is the most natural way to
represent real-valued parameters, thus avoiding the need to
predefine their required resolution, as is required when using
binary encoding. Structural encoding, such as grammatical
encoding [15], is one of the most efficient ways to represent
network topologies.
3) Constraints: Constraint representation falls into two
categories: static and dynamic. Static constraints are those constraints that remain the same throughout the evolution process.
One method to tackle these constraints is by incorporating
them into the data structures used [13]. Alternatively, a penalty
function approach may be used for constraint satisfaction.
Dynamic constraints are more difficult to handle. Usually generation-dependent penalty functions may be used to capture the
tradeoff between pushing the search to the limits and violating
constraints. An early use of dynamic penalty functions and
their justification can be found in [16]. In their approach, the

authors promote the use of graded penalty functions, stating,


Care must be taken to write an evaluator which balances the
preservation of information with the pressure for feasibility.
Well-chosen, graded penalties which preserve the information of all strings should be advantageous to harsh penalty
functions. Furthermore, they suggest the benefit of generation-dependant constraints, which begin in a relaxed state and
then gradually tighten over time. Additionally, Siedlecki and
Sklansky [17] demonstrate that a genetic algorithm with a
variable penalty coefficient can outperform one with a fixed
penalty factor.
B. Explicit Knowledge Representation
1) Seeding the Initial Population: The initial population
is an excellent place to embed knowledge from the problem
domain. The idea of smart initialization of the initial population
can be traced back at least to the work of Kubalik and Lazanski
[18]. In their paper, the authors claim that lucky initialization
can increase the likelihood of successful composing of the
global solutions chromosome through the iteration process
of information exchange. In their approach, they initialize
the population by resorting to prior information of the desired
solution itself or of the structure of the solution space and its
more promising parts. To achieve this goal they use a preprocess phase, in which they perform several short runs with a
small population and take some individuals as members of the
initial population. Then the initial population can better sample
those more useful chromosomes, which contain gene clusters
with the important pieces of information. In addition, when the
initial population is generated, boundary conditions should be
taken into account, and no solutions outside of these boundaries
should be added to the initial population. Seeding the initial
population with a large set of samples from the boundary
of the search space is a strategy that has been successfully
applied by the authors to real-world decision problems [19].
This strategy is especially helpful when constraint satisfaction,
solution repair, or penalty imposition methodologies are highly
complex and expensive. Samples along the boundary are then
used to generate new interior samples via variational (mutation
and crossover) operators. This idea is further developed in the
context of multicriteria optimization and decision problems
[19].
It is also the authors experience that oftentimes in engineering design, an experienced designer may be able to achieve
a few solutions that are good but not necessarily optimal or
near optimal. Though an EA may be directly applied to a given
design problem and be expected to perform well, incorporation
of the expert knowledge from the design engineer via seeding
of the initial population has the ability to favorably bias the
search and achieve optimal or near-optimal solutions faster.
Thus, any prior knowledge about ranges of values where the
optimal solution might be found should be seeded in the initial
population to test the conjecture and promote convergence if
appropriate.
2) Interweaving Local Exploitation Within Global
Search: Another approach to leverage knowledge is to intertwine local exploitation (search) within the global exploration

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

259

Fig. 1. EA parameter setting and control (adapted from [24]).

performed by the EAs. In this case, the knowledge of the landscape is probed by local hill-climbing searches that improve
each individual in the population before sharing information
through crossover operators and competing via the selection
process. Usually these approaches are referred to as hybrid
genetic algorithms or genetic local search. Memetic algorithms
(MAs) [20], [21] are a prime example of combining local search
heuristics with crossover operators. In MAs, each individual
attempts to improve its performance up to a predetermined
level by exploring possible correlations in the landscape. Then
they recombine to create new individuals and use crossover
operators to share this new information about local optima.
Finally, the new improved offspring compete among themselves through a selection process. A similar philosophy can
be found in the approaches suggested by Renders and Bersini
[22], named genetic hill climbing (GHC) and the simplex GA.
GHC also interweaves evolution with local learning, with its
hill-climbing component acting as an accelerator for the fitness
of the GA population. In this approach, individuals extend
their life and improve their fitness using a small number of
local search steps before undergoing crossover, mutation, and
selection. The simplex GA uses search mechanisms derived
from the simplex method to design new crossover operators.
In all these cases, the computational complexity increases but
the overall quality of the solution improves and is attained in a
small number of generations [22].
3) Variational and Selection Operators: Another convenient method to embed knowledge in EAs is via customization
of the variational and selection operators. Mutation operators
should be designed to take into account static constraints
embedded in the data structure and, if needed, should be
augmented by a repair mechanism to fix infeasible solutions
created by the mutation. For instance, when a Gaussian mutation generates an infeasible value for an allele, it could reapply
itself to the original allele value, using a systematically decreasing standard deviation, and iterate until the new value no

longer violates the allele value constraint. Similarly, crossover


operators should take into account static constraints embedded
in the data structure and repair infeasible solutions created
by their application. For both variational operators, special
customized versions could be implemented, such as those used
for TSP-type problems originally suggested by Michalewicz
[13].
Parent selection pressure could be modified with respect to
generations of search to increase pressure over time, varying
from linear to nonlinear, to manage the transition from exploration to exploitation. This could be done with an external fuzzy
controller, in a similar fashion to the control of population size
and probability of mutation [23].
4) Selection, Tuning, and Control of EA Parameters: The
selection, tuning, and control of EA parameters could be equally
important design decisions. The population size, number of generations, probability of crossover, probability of mutation, and
generational gap are all parameters that need to be set for most
EAs. There has been much research in the area of dynamically
controlling parameters that change during runtime using fuzzy
controllers. Other approaches to handling dynamic constraints
include scheduling the modification of parameters, or offline
tuning possibly using another EA to find optimal solutions for a
particular algorithm. Basically, there are three options, as illustrated in Fig. 1. This was first noted in [24] and further elaborated in [25] and [26].
a) Prior design from the literature: EA designers may
choose to select the values for parameters based on those values
published in literature. Early work due to De Jong [27] in the
area of genetic algorithms popularized the use of a static parameter set, and these suggested parameters were generally accepted for several years by researchers and practitioners alike.
However, the NFLT suggests that any one set of potentially optimal algorithm parameters cannot be expected to result in consistently superior performance over the entire space of optimization problems, as was previously generally accepted.

260

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

b) Offline tuning: Another option is to tune these parameters offline (usually with a meta-EA). This method embeds
knowledge in the design of the meta-EA so that the tuned values
provide optimal performance for the metrics of interest. This
method was first proposed by Grefenstette [28], who used a metalevel EA to search for the optimal parameter values for the
same suite of five object-level landscapes used in De Jongs
early work. In this case, a metalevel EA replaced the manual
analysis performed by De Jong. Each individual in the meta-EA
represented an instance of six parameter values for the objectlevel EA. Each trial at the metalevel EA caused the object-level
EA to run with the instantiated parameters for its maximum
number of generations. The results of the runs, evaluated in
terms of performance measures, provided the fitness value for
the individual in the metalevel EA. Note, that given the implication of the NFLT, the optimized parameters obtained by the
meta-EA should be recomputed for each type of problem. However, for most practical applications, such an a priori tuning may
be very expensive or time consuming, or both.
c) Online Control: The third option is to tune the parameters online via some control mechanism. As depicted in Fig. 1,
these corrections can be generated by an open loop, deterministic procedure (e.g., a scheduler), by a closed loop, adaptive
system (e.g., a controller), or by a self-adaptation mechanism.
The first option is to use a deterministic schedule to allocate
resource changes over time. Unfortunately, obtaining an optimal schedule might be as difficult as the original optimization
problem. The second option is to use a controller that explicitly represents the best heuristics regarding such resource allocation. Recent research into using fuzzy logic controllers to provide an online closed-loop control system for EA parameters
shows promising results [23], [29]. These controllers dynamically manipulate parameters such as population size and mutation rate based on metrics extracted during run time. In this
case, the knowledge of the problem is embedded in the heuristics of the controller. The third option is to tune the parameters
by adding them to the genomes so that they evolve with the population, as in evolutionary strategies with self-adaptation [30],
which use this technique to embed knowledge in the representation of individuals.
C. Metaheuristics: A Generalization
The offline tuning and online control of EA parameters described in the previous sections are specific instances of metaheuristics applied to an EA-based problem solver. In general,
metaheuristics are heuristic procedures defined at the metalevel
to control, guide, tune, and allocate computational resources for,
or reason about, object-level problem-solvers in order to improve their quality, performance, or efficiency. The use of metareasoning is a common approach in artificial intelligence (AI),
e.g., in resource-bounded agent applications [31], planning [32],
machine learning and case-based reasoning [33], [34], real-time
fuzzy reasoning systems [35], etc. Therefore, it is a natural step
to extend it from its AI origins to the field of soft computing,
and in particular to evolutionary algorithms.
Offline metaheuristics are used when we are not concerned
with runtime modifications or control of the object-level
problem-solver. In these cases, the goal is usually to define the

Fig. 2. Schematic of offline metaheuristics.

best structural and/or parametric configuration for a model of


the problem solver that works on the object-level task. Most
parameter tuning or optimization efforts follow this architecture. Fig. 2 illustrates a typical approach for parametric tuning.
A suite of representative problems from a problem class (or
a sample of instances from the same problem) is used offline
to test and optimize the solver. At runtime, the problem solver
is instantiated to perform its tasks with the resulting tuned parameters. In general, offline metaheuristics can be used if there
is no need for the object-level problem solver to adapt to new
runtime situations. In this case, the offline heuristics will define
the best structure and parameters of the problem solver and
generate a configuration file containing such information. An
instance of the problem solver generated in accordance to this
configuration information will perform at runtime without any
further change. Recent examples of offline metaheuristics are
the tuning of fuzzy controllers by EA [36], the EA-based generation of neural networks [37] and Bayesian belief networks
[38], and the EA-driven feature space selection and parametric
tuning of an instance-based model [12]. In Section V, we will
describe the implementation of offline metaheuristics using
EAs to develop a fuzzy rule-based classifier.
Alternatively, online metaheuristics can be used when we
want to generate runtime corrections for the behavior of the object-level problem solver. In these cases, we might want to steer
the solver toward the most promising reasoning paths, identify
opportunistic or critical situations, invoke the appropriate specialized routines or knowledge bases, reallocate computational
resources to improve the solver performance, manage the transition between two different modalities, etc. Examples of online metaheuristics are supervisory fuzzy controllers and metacontrollers for EAs. Supervisory control decomposes complex
problems into smaller and simpler ones, which are then assigned
to low-level controllers. Classical supervisory controllers recombine their outputs by selecting the most appropriate controller to solve the larger problem. Fuzzy supervisory controllers
perform a soft recombination by taking into account the partial
degree of applicability of each low-level controller and mixing
their output accordingly. This soft switching among operational
modes allows the control engineer to explicitly specify tradeoff

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

261

solve complex problems. Thus, we consider soft computing as


a framework in which we can derive models that capture heuristics for objectlevel tasks or metaheuristics for metalevel tasks.
A. Using SC to Develop Metaheuristics: Design Tradeoffs

Fig. 3.

Schematic of online metaheuristics.

policies of efficiency against performance, within safety constraints. Fuzzy supervisory controllers execute these policies in
a smooth fashion interpolating, instead of switching, among operational modes [39]. Metacontrollers for EAs play a similar
role. As shown in Fig. 3, they monitor the performance of the
object-level EAs, and by leveraging the same interpolation capabilities of the supervisory fuzzy controllers, they control key
resources and parameters to provide smooth transitions from the
exploration to the exploitation stages of the EAs. In Section VI,
we will describe the implementation of online metaheuristics
using a fuzzy controller to improve the runtime performance of
an EA.
Metaheuristics provide an explicit way to represent domain
knowledge to guide an EA-based object-level solver. However,
in light of the NFLT implications, we need to remind ourselves
that: a) the use of metaheuristics will improve the performance
of optimization algorithms for a subset of problems and b) the
metaheuristics will not be universal, but specific for a problem
or a class of problems. Not even the KB used by the online
adaptation scheme can be considered of general applicability.
These conclusions have been validated by several experiments
in the parametric control of EAs [23], [29] and were originally
reported in [26].
III. HYBRID SOFT COMPUTING: A UNIFIED FRAMEWORK FOR
DEVELOPING METAHEURISTICS
The literature covering SC is expanding at a rapid pace, as
evidenced from the numerous congresses, books, and journals
devoted to this issue. Its original definition provided by Zadeh
[6] denotes systems that exploit the tolerance for imprecision,
uncertainty, and partial truth to achieve tractability, robustness,
low solution cost, and better rapport with reality. As discussed
in previous papers [8], [9], we view soft computing as the synergistic association of computing methodologies that includes
as its principal members fuzzy logic, neurocomputing, evolutionary computing, and probabilistic computing. We have also
stressed the synergy derived from hybrid SC systems that are
based on a loose or tight integration of their constituent technologies. This integration provides complementary reasoning
and search methods that allow us to combine domain knowledge and empirical data to develop flexible computing tools and

Since leveraging domain knowledge and problem structure is


critical to the performance of the object-level problem solver,
we will briefly review how such knowledge can be encoded in
SC systems.
In the development of hybrid soft computing systems,
we usually face one critical design tradeoff: performance
accuracy versus interpretability [40], [41]. This tradeoff is
usually derived from legal or compliance regulations, and
it constrains the underlying technologies used to implement
the SC system. When we use SC techniques, the equation
assumes a

more important role as we have a much richer repertoire to


represent the structure, to tune the parameters, and to iterate
this process [9]. This repertoire enables us to choose among
different tradeoffs between the models interpretability and its
accuracy. For instance, one approach aimed at maintaining the
models transparency usually starts with knowledge-derived
linguistic models, in which domain knowledge is translated
into an initial structure and parameters. The models accuracy is further improved by using global or local data-driven
search methods to tune the structure and/or parameters. An
alternative approach, aimed at building models that are more
accurate, might start with data-driven search methods. Then,
we can embed domain knowledge into the search operators to
control or limit the search space or to maintain the models
interpretability. Postprocessing approaches can also be used
to extract explicit structural information from the models. The
commonalities among these models are the tight integration
of knowledge and data leveraged in their construction and the
loose integration of their outputs, exploited in their offline use.
For brevity, we will focus on fuzzy systems, one of SCs main
components, which provide the most explicit mechanism for
representing metaheuristic knowledge directly into a knowledge base.
B. Fuzzy Logic Systems
Fuzzy set theory (and isomorphic fuzzy logic) was proposed
by Zadeh [42] as a way to represent and reason with ill-defined
concepts that are so prevalent in common knowledge. The original treatment of imprecision and vagueness can be traced back
to the work of Post, Kleene, and Lukasiewicz, multiple-valued
logicians who in the early 1930s proposed the use of threevalued logic systems (later followed by infinite-valued logic)
to represent undetermined, unknown, or other possible intermediate truth-values between the classical Boolean true and false
values [43] . In 1937, Black suggested the use of a consistency
profile to represent vague concepts [44] but did not provide a
calculus to reason with the profiles. While vagueness relates to
ambiguity, fuzziness addresses the lack of sharp set-boundaries.
It was not until Zadehs work in 1965 that we had a complete
theory of fuzzy sets and fuzzy logic. A comprehensive review
of fuzzy logic and fuzzy computing can be found in [45].

262

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

Fuzzy logic (FL) provides us with a language (syntax and


local semantics), to which we can translate qualitative knowledge about the problem to be solved [46]. In particular, FL allows the use of linguistic variables to model dynamic systems.
These variables take fuzzy values that are characterized by a
label (a sentence generated from the syntax) and a meaning
(a membership function determined by a local semantic procedure). The meaning of a linguistic variable may be interpreted
as an elastic constraint on its value. These constraints are propagated by fuzzy inference operations, based on the generalized
modus ponens [47]. This reasoning mechanism with its interpolation properties gives FL a robustness with respect to variations
in the systems parameters, disturbances, etc., which is one of
FLs main characteristics [48].
The use of linguistic variables to define complex dynamic
systems was first proposed by Zadeh in a pioneering paper [49]
and extended by Mamdani and Assilian to synthesize the first
fuzzy controller [50]. In this controller, the domain knowledge
is represented by a set of fuzzy if-then rules that approximate
a mapping from a state space
to an output space . Each
rules left-hand side describes a fuzzy partition of the state
space, while each rules right-hand side defines the value of
corresponding control action. In these fuzzy systems, this value
is a fuzzy set defined on the universe of control actions. In
TakagiSugenoKang (TSK) fuzzy systems [51], this value
is represented by a linear polynomial in the state space. In a
Mamdani-type fuzzy system, the KB is completely defined by
a set of scaling factors, determining the ranges of values for the
state and output variables; a term set, defining the membership
function of the values taken by each state and output variable;
and a rule set, characterizing a syntactic mapping of symbols
from to . The structure of the underlying model is the rule
set, while the model parameters are the scaling factors and term
sets. The inference obtained from such a system is the result
of interpolating among the outputs of all relevant rules. The
inferences outcome is a membership function defined on the
output space, which is then aggregated (defuzzified) to produce
a crisp output. With this inference mechanism, we can define
a deterministic mapping between each point in the state space
and its corresponding output. Therefore, we are able to equate a
fuzzy KB to a response surface in the cross-product of state and
output spaces, which approximates the original relationship. A
TSK type of fuzzy system increases its representational power
by allowing the use of a first-order polynomial, defined on
the state space, to be the output of each rule in the rule set.
This enhanced representational power at the expense of local
legibility [52] results in a model that is equivalent to radial
basis functions [53].
C. Hybrid Fuzzy Logic Systems
Fuzzy systems (FSs) provide us with an intuitive translation
of domain knowledge into an executable model. However, with
few exceptions, such as the self-organizing fuzzy controller
[54], the determination of the models structure and parameters
is usually a manual process. Therefore, it is a natural extension
to hybridize these systems and augment their effectiveness by
integrating local and/or global search methods to tune their
parameters or modify their structures. We will briefly describe

two typical hybrid fuzzy systems: FS tuned by neural networks


(NNs) and FS tuned by evolutionary algorithms. In Section VI,
we will describe the reciprocal role in which an FS tunes
the runtime parameters of an EA. For a more comprehensive
treatment of hybrid genetic and fuzzy systems, the reader is
referred to [8], [9], and [55].
1) FL Tuned by NNs: The TSK model can be translated into
a structured network, such as the adaptive neural fuzzy inference systems (ANFIS) [56]. In ANFIS, the rule set determines
the topology of the net (model structure), while dedicated nodes
in the corresponding layers of the net (model parameters) define the term sets and the polynomial coefficients. ANFIS does
not modify the structure and tries to fine-tune the model parameter. ANFIS consists of a six-layer generalized network. The
first and sixth layers correspond, respectively, to the system inputs and outputs. The second layer defines the fuzzy partitions
(term sets) on the input space, while the third layer performs
a differentiable T-norm operation, such as the product or the
soft minimum. The fourth layer normalizes the evaluation of the
left-hand side of each rule, so that their degrees of applicability
will add up to one. The fifth layer computes the polynomial
coefficients in the right-hand side of each TakagiSugeno rule.
Jangs approach is based on a two-stroke optimization process.
During the forward stroke, the term sets of the second layer are
kept constant, while the coefficients of the fifth layer are computed using a least mean square method. ANFIS output is compared with that from the training set to produce an error. In the
backward stroke, using a backpropagation-like algorithm, the
error gradient drives the modification of the fuzzy partitions of
the second layer. This process is continued until convergence is
reached. This local search method produces efficient results, at
the risk of entrapment in local minima (as is the case in other
hill-climbing methods). On the other hand, the initial values
used by ANFIS are derived from the domain knowledge, and
as such, they should not be extremely distant from the desired
parameter values.
2) FS Tuned by EAs: In designing a fuzzy controller, it is
not easy to create a training set that associates each instance of
the state vector to its corresponding desired controllers output,
as required by supervised learning and local search methods.
On the other hand, it is relatively easy to specify a cost function that evaluates the state trajectory of the closed-loop system.
Thus, it is common to resort to global search methods, like evolutionary algorithms, to evolve the fuzzy controller. Many researchers have explored the use of EAs to tune fuzzy logic controllers. In the mid 1990s, Cordon et al. compiled a bibliography
of 544 papers combining genetic with fuzzy logic, with more
than 50% related to the tuning and design of fuzzy controllers by
genetic algorithms [57]. Since then, the literature has expanded
even further. In our brief discussion, we will only mention a few
historical contributions in this area. These methods differ mostly
in the order or the selection of the various fuzzy logic controller
components that are tuned (term sets, rules, scaling factors).
Karr, one of the early investigators in this quest, used genetic
algorithms to modify the membership functions in the term sets
of the variables used by the fuzzy logic controller [58]. Karr
used a binary encoding to represent three parameters defining
a membership value in each term set. The binary chromosome

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

was the concatenation of all term sets. The fitness function was
a quadratic error calculated for four randomly chosen initial
conditions.
Lee and Takagi tuned both rules and term sets [59]. They
used a binary encoding for each three-tuple characterizing a triangular membership distribution. Each chromosome represents
a TSK-rule, concatenating the membership distributions in the
rule antecedent with the polynomial coefficients of the consequent. Most of the above approaches used the sum of quadratic
errors as a fitness function. Surmann et al. [60] extended this
quadratic function by adding to it an entropy term describing
the number of activated rules. Kinzel et al. [61] departed from
the string representation and used a cross-product matrix to encode the rule set (as if it were in table form). They also proposed
customized (point-radius) crossover operators that were similar
to the two-point crossover for string encoding. They first initialized the rule base according to intuitive heuristics, then used genetic algorithms to generate a better rule base, and finally tuned
the membership functions of the best rule base. This order of the
tuning process is similar to that typically used by self-organizing
controllers [62]. Herrera et al. [63] used a genetic algorithm to
tune each rule used by a fuzzy logic controller. They utilize a real
encoding for a four-parameter representation of a trapezoidal
membership function in each term set. A rule is achieved by
the concatenation of membership functions. A member in the
genetic search is such a concatenation of the encoding of membership functions.
Bonissone et al. [64] followed the tuning order suggested by
Zheng [65] for manual tuning. They began with macroscopic
effects by tuning the fuzzy logic controller state and control
variable scaling factors while using a standard uniformly spread
term set and a homogeneous rule base. After obtaining the best
scaling factors, they proceeded to tune the term sets, causing
medium-size effects. Finally, if additional improvements were
needed, they tuned the rule base to achieve microscopic effects.
Tsang and Yeung [66] describe a method that combines genetic
algorithms and neural networks for automated tuning of the parameters of a fuzzy expert system used as an advisor for job
placement. Grauel et al. [67] present a methodology for optimizing fuzzy classifiers based on B-splines using an evolutionary algorithm. The tuning algorithm maximizes the performance of breast cancer detection and at the same time minimizes
the size of the classifier. Other reports that explore the evolutionary tuning of fuzzy classifiers appear in [68][70].
All these approaches demonstrate the synergy obtained by
integrating domain knowledge, represented by fuzzy systems,
with robust data-driven search method, exemplified by evolutionary algorithms.
IV. LEVERAGING DOMAIN KNOWLEDGE IN INDUSTRIAL AND
COMMERCIAL EA APPLICATIONS
To illustrate the benefits of integrating domain knowledge
with evolutionary algorithms, we discuss four real-world applications in the areas of classification, scheduling, configuration
management, and optimization. These applications were developed, tested, and in some cases deployed. The first two applications illustrate the use of domain knowledge in metaheuristics,

263

while the last two incorporate such knowledge in variational


operators and data structures. The first area is a discrete classification problem in which the object-level problem solver is a
fuzzy-knowledge-based classifier and the metalevel is an evolutionary algorithm. The second application relies on an EA as
the object-level problem solver. In this case, a fuzzy controller
is used at the metalevel to provide online corrections to the EA
parameters such as population size and probability of mutation.
The third application is a multicriteria lamp spectrum optimization problem where the domain knowledge is incorporated via
the use of efficiency-boosting problem-specific variational operators. The last application illustrates a scheduling problem in
which an EA is the object level-problem solver. In this case, the
domain knowledge is embedded in the data structure and other
design choices that define the EA. The first three applications
have previously been individually reported in the literature, and
references to those articles are made in the appropriate locations
throughout this paper.
A common six-part presentation structure is followed for each
of these applicationsa) problem description, b) related work,
c) solution architecture, d) domain knowledge representation,
e) results, and f) remarksin an attempt to present each application as a self-contained unit and at the same time to highlight
the common problem-solution aspects across these diverse applications related to the incorporation of domain knowledge.
V. RISK CLASSIFICATION FOR UNDERWRITING
INSURANCE APPLICATIONS
A. Problem Description
Insurance underwriting is a complex decision-making task
that is traditionally performed by trained individuals. An underwriter must evaluate each insurance application in terms of
its potential risk for generating a claim, such as mortality in the
case of term life insurance. An application is compared against
standards adopted by the insurance company, which are derived
from actuarial principles related to mortality. Based on this comparison, the application is classified into one of the risk categories available for the type of insurance requested by the applicant. The accept/reject decision is also part of this risk classification, since risks above a certain tolerance level will typically
be rejected. The estimated risk, in conjunction with other factors such as gender, age, and policy face value, will determine
the appropriate price (premium) for the insurance policy. When
all other factors are the same, to retain the fair value of expected
return, higher risk entails higher premium.
We represent an insurance application as an input vector
that contains a combination of discrete, continuous, and attribute
variables. These variables represent the applicants medical and
demographic information that has been identified by actuarial
studies to be pertinent to the estimation of the applicants claim
risk. Similarly, we represent the output space , e.g., the underwriting decision space, as an ordered list of rate classes. Due to
the intrinsic difficulty of representing risk as a real number on a
scale, e.g., 97% of nominal mortality, the output space is subdivided into bins (rate classes) containing similar risks. For example, 96%104% nominal mortality could be labeled the standard rate class. Therefore, we consider the underwriting (UW)

264

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

process as a discrete classifier mapping an input vector into


and
.
a discrete decision space , where
This problem is not straightforward due to several requirements.
1) The UW mapping is highly nonlinear, since small incremental changes in one of the input components can cause
large changes in the corresponding rate class.
2) Most inputs require interpretations. Underwriting standards cannot explicitly cover all possible variations of an
insurance application, causing ambiguity. Thus the underwriters subjective judgment will almost always play a
role in this process. Variations in factors such as underwriter training and experience will likely cause variability
in their decisions.
3) These interpretations require an intrinsic amount of flexibility to preserve a balance between risk tolerance, necessary to preserve price competitiveness, and risk avoidance, necessary to prevent overexposure to risk.
4) Legal and compliance regulations require that the models
used to make the underwriting decisions be transparent
and interpretable.
To address these requirements, we decided to extend some
traditional AI reasoning methodologies, such as rule-based
and case-based reasoning, with soft computing techniques,
such as fuzzy logic and evolutionary algorithms. With this
hybrid system, we were able to provide both flexibility and
consistency, while maintaining interpretability and accuracy as
part of an underwriting and a risk management platform.
B. Related Work
1) Automated Insurance Underwriting: Reported research
in the area of automated insurance underwriting is quite
sparse. However, there are a few documented approaches.
Collins et al.[71] describe the application of a neural network
to replicate the decision-making of mortgage insurance underwriters by training the system on a database of certified
cases. Insurance underwriting based on neural networks or
similar modeling approaches leads to opaque decision-making,
wherein the learned and encoded interrelationships between
decision variables that are used to arrive at decisions are not
well defined and explainable. Nikolopoulos and Duvendack
[72] describe the application of evolutionary learning and
classification tree techniques to build a knowledge base that
determines the termination criteria for an insurance policy.
2) Evolutionary Optimization of Fuzzy Systems: In
Section III-C2, we have presented a broad review of the
literature in this area.
C. Solution Architecture
The fuzzy logic engine (FLE) uses rule sets to encode underwriting standards. Each rule set represents a set of fuzzy constraints defining the boundaries between rate classes. These constraints were first determined from the underwriting guidelines.
They were then refined using knowledge engineering sessions
with expert underwriters to identify factors such as blood pressure levels and cholesterol levels, which are critical in defining
the applicants risk and corresponding premium. The goal of

Fig. 4.

Example of three fuzzy constraints for rate class Z.

the classifier is to assign an applicant to the most competitive


rate class, providing that the applicants vital data meet all of
the constraints of that particular rate class to a minimum degree of satisfaction. The constraints for each rate class are
. Each conrepresented by fuzzy sets:
can be interpreted as the degree of preference
straint
for satisfying constraint
. After evaluinduced by value
ating all constraints, we compute two measures for each rate
class . The first one is the degree of intersection of all the
constraints and measures the weakest constraint satisfaction:1
The second one is a
cumulative measure of missing points (the complement of the
average satisfaction of all constraints) and measures the overall
tolerance allowed to each applicant, i.e.,

The final classification is obtained by comparing the two meaand


against two lower bounds defined by
sures
and . The parametric definition of each fuzzy
thresholds
constraint
and the values of
and
are design parameters that were initialized following knowledge engineering
sessions with domain experts.
1This expression implies that each criterion has equal weight. If we want to
attach a weight w to each criterion A , we could use the weighted minimum operator I (r ) =
W A (x ) = Min
(Max ((1 w ) ; A (x ))), where
w
[0; 1].

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

Fig. 5.

265

FLE optimization using EA.

Fig. 4 illustrates an example of three constraints (trapezoidal


membership functions) associated with rate class , the input
data corresponding to an application, and the evaluation of the
first measure, indicating the weakest degree of satisfaction of all
constraints.
D. Domain Knowledge Representation
The FLE design parameters must be tuned, monitored, and
maintained to assure the classifiers optimal performance. To
this end, we have chosen EAs. Our EA is composed of a population of individuals (chromosomes), each of which contains
a vector of elements that represent distinct tunable parameters
to configure the FLE classifier, i.e., the parametric definition of
and thresholds and .
the fuzzy constraints
A chromosome, the genotypic representation of an individual,
defines a complete parametric configuration of the classifier.
Thus, an instance of such a classifier can be initialized for each
chromosome, as shown in Fig. 5. Each chromosome , of the
population
(left-hand side of Fig. 5), goes through a decoding process to initialize the classifier on the right. Each classifier is then tested on all the cases in the case base, assigning
a rate class to each case. We can determine the quality of the
configuration encoded by the chromosome (the fitness of the
chromosome) by analyzing the results of the test. Our EA uses
stochastic variation to produce new individuals in the population. The fitter chromosomes in generation are more likely to
be selected and pass their genetic material to the next generation 1. Similarly, the less fit solutions will be culled from the
population. At the conclusion of the EAs execution, the best
chromosome of the last generation determines the classifiers
configuration. The EA for this application employs a population size of 100 and a mutation-based stochastic variation for
generating new individuals over a significant search duration
(250 generations). The mutation rate is scheduled to decrease
as the search progresses, such that a more aggressive mutation occurs during the earlier parts of the search, and a more
conservative mutation is applied during the later stages of the
search. This is motivated by the preference to explore during

the earlier stages of an evolutionary search, with a gradually increasing preference toward exploitation as the search matures.
A crossover heuristic could have been employed as well in this
real-space search as an additional recombination-oriented stochastic variation operation. However, the scheduled mutation
technique achieves the purpose of transition from exploration
to exploitation that a crossover operation could realize in this
real-space search problem.
1) Fitness Function: In discrete classification problems
such as this one, we can use two matrices to construct the
fitness function that we want to optimize. The first matrix is a
confusion matrix
that contains frequencies of correct
and incorrect classifications for all possible combinations of the
standard reference decisions (SRDs)2 and classifier decisions.
The first
columns represent the rate classes available
represents the classifiers choice
to the classifier. Column
of not assigning any rate class, sending the case to a human
underwriter. The same ordering is used to sort the rows for
penalty matrix
the SRD. The second matrix is a
that contains the cost of misclassification. The fitness function
combines the values of
resulted from a test run of the
with the penalty
classifier configured with chromosome
matrix to produce a single value
(2)
Function

represents the overall misclassification cost.

E. Results
After defining measures of coverage and (relative and global)
accuracy, we performed a comparison against the SRD. The results, partially reported in [73], show a remarkable improvement
in all measures. We evaluated the performance of the decision
systems based on the three metrics below.
2Standard reference decisions represent ground truth rate class decisions as
reached by consensus among senior expert underwriters for a set of insurance
applications.

266

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

TABLE I
TYPICAL PERFORMANCE OF THE UNTUNED AND TUNED RULE-BASED
DECISION SYSTEM (FLE)

Coverage: Percentage of cases as a fraction of the total


number of input cases, whose rate class assignments are
decided by a decision system. Each decision system has
the option to not make a decision on a case and to refer an
undecided case to a human underwriter.
Relative accuracy: Percentage of correct decisions on
those cases that were not referred to the human underwriter.
Global accuracy: Percentage of correct decisions, including making correct rate class decisions and making a
correct decision to refer cases to human underwriters as
a fraction of total input cases.

Specifically we obtained the following results.


Using the initial parameters (first column of Table I), we can
observe a large moderate coverage ( 94%) associated with a
low relative accuracy ( 76%) and a lower global accuracy
( 75%). These performance values are the result of applying a
strict interpretation of the UW guidelines, without allowing for
any tolerance. Had we implemented such crisp rules with a traditional rule-based system, we would have obtained these same
evaluations. This strictness would prevent the insurer from
being price competitive and would not represent the typical
modus operandi of human underwriters. However, by allowing
each underwriter to use his/her own interpretation of such
guidelines, we could introduce a large underwriters variability.
One of our main goals of this project was to provide a uniform
interpretation, while still allowing for some tolerance. This
goal is addressed in the second column of Table I, which shows
the results of performing knowledge engineering and encoding
the desired tradeoff between risk and price competitiveness as
fuzzy constraints with preference semantics. This intermediate
stage shows a different tradeoff since both global and relative
accuracy have improved. Coverage slightly decreases ( 90%)
for a considerable gain in relative accuracy ( 93%). Although
we obtained this initial parameter set by interviewing the experts, we had no guarantee that such parameters were optimal.
Therefore, we used an evolutionary algorithm to tune them.
We allowed the parameters to move within a predefine range
centered around their initial values and, using the SRD and
the fitness function described above, obtained an optimized
parameter set, whose results are described in the third column
of Table I. The results of the optimization show the point
corresponding to the final parameter set dominates the second
set point (in a Pareto sense), since both coverage and relative

TABLE II
MEAN () AND STANDARD DEVIATION ( ) OF FLE PERFORMANCE OVER FIVE
TUNING CASE SETS COMPARED TO FIVE DISJOINT TEST SETS

accuracy were improved. Finally, we can observe that the


final metric, global accuracy (last row in Table I), improves
monotonically as we move from using the strict interpretation
of the guidelines ( 75%) through the knowledge-engineered
parameters ( 90%), to the optimized parameters ( 94%).
While the reported performance of the optimized parameters
(in Table I) is typical of the performance we achieved through
the optimization, a fivefold cross-validation on the optimization
was also performed to identify stable parameters in the design
space and stable metrics in the performance space (see Table II).
F. Remarks
We have developed a design methodology using a fuzzy
knowledge-based classifier and an evolutionary algorithm.
According to Fig. 2, the classifier is the object-level problem
solver, while the EA is the offline metaheuristic. The domain
knowledge has been distributed into the design of the classifier,
the encoding of the chromosome for the EA, the definition
of a fitness function to enforce a specific tradeoff between
classification coverage and accuracy, and the establishment of
a repository of cases representing ground-truth decisions, i.e.,
the SRD.
We have created a decision system that is able to automatically determine risk categories for insurance applications. The
decision thresholds and internal parameters of these decisionmaking systems are tuned using a multistage mutation-based
evolutionary algorithm to achieve a specific tradeoff between
accuracy and coverage The fitness function selectively penalizes different degrees of misclassification and serves as a forcing
function that drives correct classifications. The tunable parameters have a critical impact on the coverage and accuracy of decision-making, and a reliable method to optimally tune these
parameters is critical to the quality of decision-making and the
maintainability of these systems.
Maintenance of the classification accuracy over time is an important requirement considering that decision guidelines may
evolve, and so can the set of certified cases. Therefore, it is
of paramount importance to maintain the quality of the set of
certified test cases that will be used as a benchmark for representing any new behavior desired of the decision-making systems. In [11], we describe the salient steps in the life cycle of
a fuzzy knowledge-based classifier and show how the classifiers knowledge base could be maintained over time by using
the same EA and a fusion module to support the SRD life cycle
and identify the most recent and reliable cases to be used in the
updating of the SRD.

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

267

VI. OPTIMIZATION OF DESIGN AND MANUFACTURING


PLANNING
A. Problem Description
In the printed circuit board industry, designers face increased
complexity in coordinating suppliers and manufacturers of
subassemblies and components to be competitive in cost, time,
and quality. Design, supplier, and manufacturing decisions are
made using the experience base in an organization and are often
difficult to adapt to changing needs. Systems that support a
coupling among design, supplier, and manufacturing decisions,
simultaneously reduce supply and manufacturing costs and lead
times, and better utilize available manufacturing facilities are
critical to improved performance in these industries. A method
and architecture for optimal design, supplier, and manufacturing
planning for printed circuit assemblies is presented in [74].
The problem formulation from this reference is used as a basis
for generating object-level test problems in this paper. This
formulation poses the optimal selection of designs that realize
a given functional specification, the selection of parts to realize
a design, the selection of suppliers to supply these parts, and
the selection of a production facility to manufacture the chosen
design as a global optimization problem, where each selection
has the potential to affect other selections. The goal is to minimize
an aggregate nonlinear objective function of total cost and total
of the th design3 assigned
time
to the th manufacturing facility. The total cost and total time for
realizing a printed circuit assembly are each coupled nonlinear
functions dependent on characteristics of a chosen design, parts
supply chain characteristics, and characteristics of a chosen
manufacturing facility. This decision problem is in the class of
nonlinear discrete assignment problems, and its characteristics
do not support optimization using traditional techniques based
on mathematical programming. An evolutionary optimization
technique is more easily applied to this problem domain, is
robust, and simultaneously searches multiple solutions.
B. Related Work
Subbu et al. [75] present a comparison of the performance
of a fuzzy logic controlled genetic algorithm (FLC-GA) and a
parameter-tuned genetic algorithm (TGA) for an agile manufacturing application. These strategies are benchmarked using
a genetic algorithm (GA) that utilizes a canonical static parameter set. In the FLC-GA, fuzzy logic controllers dynamically schedule the population size, crossover rate, and mutation
rate of the object-level GA using as inputs diversity (genotypic
and phenotypic) measures of the population. A fuzzy knowledge base is automatically identified using a meta-GA. In the
TGA, a meta-GA is used to determine an optimal static parameter set for the object-level GA. The object-level GA supports a
global evolutionary optimization of design, supplier, and manufacturing planning decisions for realizing printed circuit assemblies in an agile environment. The authors demonstrate that
high-level control system identification (for the FLC-GA) or
tuning (for the TGA) performed with small object-level search
3Each

realizable design requires assignments of several parts, and each


assigned part requires an assignment of a supplier who is capable of supplying
that part.

Fig. 6. Architecture of the adaptive control system for an evolutionary


algorithm.

spaces can be extended to more elaborate object-level search


spaces, without employing additional identification or tuning.
The TGA performs superior searches but incurs large search
times. The FLC-GA performs faster searches than a TGA and
is slower than the GA that utilizes a canonical static parameter
set. However, search quality measured by the variance in search
performance of the FLC-GA is comparable to that of the GA
that utilizes a canonical static parameter set. This latter negative
result served as the key motivation for investigating the alternative, less complex approach discussed in this paper and reported
earlier in [23]. It is our opinion that searching for a knowledge
base for a fuzzy controller used to control the parameters of the
object-level algorithm via a metalevel algorithm not only adds
a second layer of complexity but also generates control surfaces
that do not generally correspond with expert knowledge. Evolutionary algorithms on the other hand have been successfully
used to tune the performance of an existing fuzzy knowledge
base, since this is typically a much smaller problem space.
Herrera and Lozano [76] present a detailed review of a variety
of approaches for adapting the parameters of an evolutionary algorithm using fuzzy logic controllers, and in [77], they present
an approach where rule bases for the fuzzy logic controllers simultaneously coevolve with the object-level evolutionary algorithm. Tettamanzi and Tomassini [78] discuss several combinations of fuzzy logic and evolutionary algorithms that include the
development of fuzzy rule-based systems for adaptive control of
an evolutionary algorithm.
C. Solution Architecture
The architecture for adaptive fuzzy control of an evolutionary
algorithms resources appears in Fig. 6. During evolutionary
search, the fuzzy logic controller observes the population diversity and percentage of completed trials and, using the embedded
expert knowledge base, specifies changes to the population size
and mutation rate.
D. Knowledge Representation (Explicit)
We use a fuzzy controller at the metalevel to manage the
transition from exploration to exploitation, by modifying over

268

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

time the population size and the probability of mutation. The


fuzzy controller takes the state vector [Genotypic Diversity,
Percentage Completed Trials] and produces the output vector
[Delta Population Size, Delta Mutation Rate].
Genotypic diversity (GD) of a population is the first input
and is a search-space-level measure of the similarity of genes in
members of a population. Since the object-level problem space
is inherently discrete, the evolutionary algorithm utilizes an integer representation, which maps well to the problem formulation. Given two integer coded genomes of the same length,
we compute their Hamming distance . A Hamming distance is
usually applied to bit strings and computes the number of bit locations that differ in strings of the same length. So, given two bit
. We extend this
strings 00 111 and 11011,
idea to integer stringsif the integer alleles for corresponding
genes in two genomes are unequal, their distance count is incremented by one. The genotypic diversity of two integer-coded
genomes is normalized using the genome length. The genotypic
diversity for a population of size is therefore given by
(3)
We use a normalization term of 2
1 since, given
members, only
1 2 comparisons are distinct and nonreflexive. The range for GD is [0, 1]. When GD is close to zero,
the diversity is low, indicating convergence of the population;
and when it approaches one, the diversity is very high.
Percentage completed trials (PCT) is the second input and is a
number in the range [0, 1], where 1 signifies exhaustion of all
allowed trials, and consequently a maturity of the search given
a fixed amount of resources.
In our prior work [75], we used genotypic diversity and phenotypic (fitness-level) diversity as the two inputs to a fuzzy controller. In that paper, we did not explicitly introduce time or
search maturity as an input, and implicitly used the phenotypic
diversity measure to serve this purpose. Since the objectives of
the evolutionary search are different in the early and later stages,
it is desirable to include time or search maturity as an explicit
input. In addition, this leads to a simpler and more intuitive design of the fuzzy knowledge base.
Fuzzy membership distributions that partition the inputs and
outputs spaces are shown in Fig. 7. Triangular, proportionally
distributed membership functions are used for specification
of the knowledge base of the fuzzy logic controller. At the
early stage of the evolutionary process, it is useful to reduce
greediness and increase perturbation factor in order to explore
the search space as much as possible. With the development
of the evolutionary process, i.e., with an increasing generations count, exploration needs to be reduced gradually, while
increasing the emphasis on exploitation. When there are only
a small percentage of generations remaining, most emphasis
should be placed on exploitation in order to refine the solutions.
The knowledge bases for population size control and mutation
rate control that encode this knowledge are shown in Tables III
and IV, respectively. These knowledge bases are also similar to
the well-known class of fuzzy proportional-integral (PI) controllers. As noted in [79], [80], a fuzzy PI is a generalization of a

Fig. 7. Linguistic terms and membership distributions associated with the


fuzzy logic controller.
TABLE III
KNOWLEDGE BASE FOR
POPULATION SIZE
AS A FUNCTION OF GD AND PCT

TABLE IV
KNOWLEDGE BASE FOR
MUTATION RATE
AS A FUNCTION OF GD AND PCT

two-dimensional sliding-mode (SM) controller [81] and shares


a similar structure. In Table III, we can observe the no change
(NC) values in the main diagonal cells, which correspond to
the switching line of a SM controller. Similarly, all control
actions at opposite sides of the switching line have opposite
signs, and their magnitude does not decrease as we move away
(perpendicularly) from the switching line. Half of the structure
in Table IV is similar to Table III, with M (medium) playing
the same role as NC in Table III. The other half saturates at the
medium value.
Given a population size, the new population size is computed
as a product of the current population size and the current
population factor. The search is initialized with a population
size of 50, and further population sizes are bounded to the
range [25, 150] to prevent a search with very small or very
large populations. The fuzzy control for population size is
fired (applied) at each generation. A new mutation rate scaled

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

269

to the range [0.005, 0.1] is realized as a transient spike (


mutation rate) relative to the baseline mutation of 0.005 every
ten generations. The mutation rate is returned to the baseline
level at the generation following the one where the control action
occurs. Such a mutation is designed to serve as a temporary
disruption to introduce additional population diversity, and we
return the mutation to the baseline level between control actions
in order to exploit the potential benefit due to the disruption.
operator is used for conjunction of clauses in the IF
The
operator is used to fire each rule, the
part of a rule, the
operator is used to aggregate the outputs of all fired rules, and a
center of gravity method is used for defuzzification.

TABLE V
PERFORMANCE COMPARISON OF THE STANDARD EVOLUTIONARY ALGORITHM
(SEA) AND FUZZY STANDARD EVOLUTIONARY ALGORITHM (F-SEA). A
SHADED CELL DENOTES COMPARATIVELY SUPERIOR PERFORMANCE. A
SHADED CELL WITH THE SYMBOL  DENOTES STATISTICALLY
SIGNIFICANT SUPERIOR PERFORMANCE

E. Results
In this section, we compare performance of two basic types
of evolutionary algorithms to their respective performance when
fuzzy control is introduced. The first algorithm, called the standard evolutionary algorithm (SEA), has a population size of
50, crossover rate of 0.6, and mutation rate of 0.005, uses proportional selection, applies uniform crossover to two selected
parents to produce two offspring, and completely replaces with
elitism the parent population with the offspring population. The
second algorithm, called the steady state evolutionary algorithm
(SSEA), is identical to the SEA except that only 25% of the
population is replaced at each generation. The fuzzy controlled
versions of these respective evolutionary algorithms are fuzzy
standard evolutionary algorithm (F-SEA) and fuzzy steady-state
evolutionary algorithm (F-SSEA).
The experimental setup is based on an underlying discrete defeasible options.
cision problem space of the order of 6.4
Three different minimization problems are defined over this decision space by introducing various aggregation functions given
by
Cost
Cost
Cost

Time
Time

(4a)
(4b)
Time

(4c)

These objectives represent various heuristic tradeoffs between


total cost and total time objectives in the design, supplier, and
manufacturing planning. Experiments are conducted using
3000, 5000, 7000, 9000, and 11 000 allowed fitness trials per
evolutionary search. For each experimental setup an algorithms performance is observed over 20 repeat trials. The
resulting experiment space consists of the cross-product of four
algorithm types, three versions of objectives, five versions of
maximum fitness trials, and 20 repeat trials, resulting in a total
of 1200 experiments. Algorithm performance measures include
a) the mean of the optimum found in 20 repeat trials and b)
the associated standard deviation. The t-test for the mean and
F-test for variance are used to evaluate statistically significant
for
differences, and we utilize a standard value of
significance determination.
Table V shows a rounded-up performance comparison of
performance of the F-SEA is
the SEA and F-SEA. The
superior to the performance of the SEA 93% of the time,

and the
performance of the F-SEA is superior to the
performance of the SEA 73% of the time. The performance
performance
of the F-SEA is statistically superior to the
of the SEA 40% of the time, and the performance of the
F-SEA is statistically superior to the
performance of the
SEA 60% of the time. Statistically superior performance occurs
when the threshold for the corresponding t-test or F-test is
smaller than 0.05. Each such occurrence is highlighted and
marked with the symbol .
Table VI shows a rounded-up performance comparison of the
SSEA and F-SSEA. The performance of the F-SSEA is superior to the performance of the SSEA 73% of the time, and the
performance of the F-SSEA is superior to the performance
of the SSEA 80% of the time. The performance of the F-SSEA
is statistically superior to the performance of the SSEA 20%
of the time, while the performance of the F-SSEA is statistically inferior to the performance of the SSEA 7% of the time,
and the performance of the F-SSEA is statistically superior to
the performance of the SSEA 47% of the time.
The above results support the statistically based inference that
introducing fuzzy control to manage resources of the SEA has
more of an impact than when fuzzy control is introduced to
manage resources of an SSEA. Regardless, fuzzy control is able
to improve performance of the SSEA as well.
In Table VII, we compare performance of the SEA to the
SSEA in an effort to infer relative superiority of the basic approaches. These results support the statistical inference that the
performance of the SSEA is significantly better than the performance of the SEA. A potential explanation for this phenomenon
is since the SSEA only replaces a portion of its population at
each generation it delays the onset of premature convergence,
which is detrimental to the evolutionary search process.

270

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

TABLE VI
PERFORMANCE COMPARISON OF THE STEADY-STATE EVOLUTIONARY
ALGORITHM (SSEA) AND FUZZY STEADY STATE EVOLUTIONARY ALGORITHM
(F-SSEA). A SHADED CELL DENOTES COMPARATIVELY SUPERIOR
PERFORMANCE. A SHADED CELL WITH THE SYMBOL  DENOTES
STATISTICALLY SIGNIFICANT SUPERIOR PERFORMANCE

TABLE VII
PERFORMANCE COMPARISON OF THE STANDARD EVOLUTIONARY ALGORITHM
AND STEADY STATE EVOLUTIONARY ALGORITHM. A SHADED CELL DENOTES
COMPARATIVELY SUPERIOR PERFORMANCE. A SHADED CELL WITH THE
SYMBOL  DENOTES STATISTICALLY SIGNIFICANT SUPERIOR PERFORMANCE

F. Remarks
We have presented statistical results based on a large suite of
experiments, which support the argument that adaptive control
of an evolutionary algorithms resources via fuzzy logic may
be realized in a simple, intuitive, and efficient manner. We have
observed that the overhead due to fuzzy control intervention is
minimal, in spite of activating the fuzzy controller for population size at each generation. This overhead could increase for
some applications that require larger and more complex fuzzy

rule bases. In such cases, rules compilation [82] could be used


as a novel technique to achieve up to an order of magnitude
speedup.
We have demonstrated that expert heuristic knowledge on
managing an evolutionary algorithm can be suitably encoded
using a fuzzy logic framework to remarkably improve an
evolutionary algorithms search performance. In this function,
the fuzzy logic control scheme serves as an intelligent manager
that routinely observes the progress of the search and makes
modifications to increase or decrease population diversity as
necessary to both improve the search and control the transition
from exploration in the initial stages to exploitation in the
later stages.
The principal finding of our work based on hypothesis
testing is that an adaptive evolutionary algorithm generally
results in a much tighter variance in search results and is a
significant improvement over evolutionary algorithms based
on a static canonical parameter set. Moreover, this approach
leads to a higher degree of search confidence as evidenced by
a narrower variance in the search. What is also remarkable
is that, except for one outlier in the space of experiments,
the fuzzy controlled evolutionary algorithm approaches are
inherently superior to their static parameter versions.
In the approach to adaptive fuzzy control presented, we have
emphasized the explicit use of time as a state variable via the
introduction of the percentage of completed trials measure. This
is motivated by the fact that the nature of the evolution is different
in the early, intermediate, and mature stages of search, and
striking a balance between diversity and resource-constrained
convergence is important in solving practical problems. Optimal
diversity maintenance without considering time or computational
resources would imply postponement of convergence to infinity,
which is not a practical option. Considering time or search
maturity as an explicit input also leads to a simpler and more
intuitive design of the fuzzy knowledge base.
Fitness-based diversity measures do not differentiate dissimilar solutions that may have the same or similar fitness, such as
when the solutions correspond to points along a fitness contour
or when they lie near different modes with comparable fitness.
However, genotypic diversity, such as the measure used in this
paper, is general and would differentiate the solutions in the
above examples. It is our opinion that selecting an appropriate
diversity measure is an important task, and a practitioner must
clearly understand the goals of the optimization application
in order to choose the most applicable diversity measure. For
instance, in multimodal function optimization, where identification of several modes becomes necessary, one may have to
consider clustering-based diversity measures instead. Nonstationary function optimization is another challenging example
that requires the selection of a novel diversity measure.
VII. LAMP SPECTRUM OPTIMIZATION
A. Problem Description
In the United States, 20% of electrical generation (which is
responsible for 39 million tons of carbon dioxide emissions)
is dedicated to lighting [83]. In less industrialized countries,

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

271

Fig. 8. Luminous efficacy of common electric light sources (and the sulphur
lamp).

this fraction can be much higher (e.g., 37% in Tunisia [83]).


Thus, one of the principal goals motivating advances in lighting
technology is maximization of luminous efficacy, the ratio of
the total luminous flux to total power input (i.e., the amount
of light per watt [84]). However, colorimetric properties have
a strong influence on the application and adoption of new light
source technologies, probably because an observer can easily
assess them. For example, even though metal halide lamps,
which produce a white light that renders color well, are less
efficient and more expensive to manufacture than low-pressure
sodium lamps, which produce a yellow light that renders
color poorly, there are many more practical applications for
metal halide lamps because they have much better colorimetric
properties.
Ideally, a new electric light source technology will have high
luminous efficacy, have acceptable apparent color (typically
white), and render colors well. While getting all three properties in a new light source technology just right is rare, there
are cases where efficacy is very high and the color properties
are just slightly off. For example, the sulphur lamp [85], [86]
has very high luminous efficacy (see Fig. 8), a color-rendering
index (CRI) of 78, and a greenish-white apparent color (1931
,
), which is a
CIE chromaticity coordinates
poor color for many applications.
It is possible to exchange some efficacy for better colorimetric properties: there are an infinite number of ways to filter a
broad-spectrum light so that it has better colorimetric properties.
However, almost all of these filters will reduce luminous efficacy by an unacceptable amount. The lamp spectrum optimization (LSO) problem is a multiobjective optimization problem
concerned with the tradeoff between luminous efficacy and one
or more colorimetric properties of lamp spectra.
The spectral power distributions [(SPDs)the radiant power
per unit wavelength as a function of wavelength] of four light
sources employed in this research are plotted in Fig. 9. Note
that SPDs can be smooth and continuous (e.g., incandescent
lamps, sulfur lamps) or spiky (e.g., metal halide), with energy
either spread throughout the visible spectrum (e.g., metal halide
lamps, fluorescent lamps) or concentrated principally in one
portion of the visible spectrum (e.g., high-pressure sodium
lamps, low-pressure sodium lamps). Thus, one might expect
very different filters for each lamp type for a given chromaticity
coordinate.

Fig. 9. SPDs for metal halide, high-pressure sodium, sulphur, and


incandescent lamps.

B. Related Work
MacAdam [87] presents a proof of a theorem that allows the
optimal spectral reflectance for a pigment to achieve a maximum
colorimetric purity for a given illuminant and dominant wavelength to be determined. This can also be used to determine how
an arbitrary SPD may be filtered to achieve any chromaticity at
maximum efficiency [87], [88]. However, this method offers no
guarantee that the color rendering will be acceptable and it is
likely to be poor for many chromaticities.
Koedam and Opstelten [89] use trial and error and color
theory to develop three-line spectra on the blackbody locus
. Koedam et al. [90] examined (again via trial
with CRI
and error) the effect of using three bands of differing bandwidth
on color rendering and efficacy, although they only look at a
few points. Thornton [91] uses a similar approach to explore
the tradeoff between CRI and efficiency of some three line
spectra for white light. All three of these papers identify similar
regions of the spectrum (around 450, 540, and 610 nm) as
being particularly important for color rendering in line or band
spectra.
Einhorn and Einhorn [92], Walter [93], Haft and Thornton
[94], and Opstelten et al. [95] were the first researchers to
examine in a systematic way the relationship between CRI
and efficacy for certain chromaticities, using three line or three
band spectra. All four papers present calculations, starting with
different assumptions, of CRI/efficacy Pareto optimal fronts
for different colors and note that the lighting industry was
manufacturing many lamps that were far from this front (i.e.,
even given physical limitations, there was substantial room for
improvement).
Walter [96] applied nonlinear programming to the spectrum
optimization problem for efficacy and color rendering at a particular chromaticity. Although he was never able to get the algorithm to converge, he was able to find three and four line spectra
with high efficiency and high CRI.
Other researchers have applied a variety of approaches to
solve related problems. Ohta and Wyszecki [97] use linear programming to design illuminants that render a limited number of
objects at desired chromaticities. Ohta and Wyszecki [98] use
nonlinear programming to explore the relationship between illuminant changes and color change in relation to setting toler-

272

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

ances for illuminant differences. DuPont [99] applied a variety


of methods, including neural networks, the simplex method, genetic algorithms, simulated annealing, etc., to reconstruct reflectance curves from tristimulus values for a given SPD.
C. Solution Architecture
Genetic algorithms were used to solve the LSO problem. The
population size for the search was set at 175, the number of
generations was set at 500, the mutation probability was set
at 5%, and the population is replaced at each generation with
new individuals, except for the elite individuals, which are transferred across generations. The crossover and selection methods
were relatively generic [100][102]. However, domain knowledge was incorporated into the mutation methods to develop
very effective problem-specific operators.
The portion of the visible spectrum between 400 and 700
nm was partitioned in 150 bins, each 2 nm wide. The influence on chromaticity coordinates of the visible spectrum outside
this range is trivial, e.g., less than 0.26% for a uniform spectral
power distribution. Each chromosome consisted of 150 genes,
with each floating-point gene representing the transmittance of
the filter in one of the bins. The order of the genes corresponded
to the order of the wavelength range in the spectrum; i.e., the
first gene represented the 400 to 402 nm interval, the second
gene represented the 402 to 404 nm interval, and so on. The 2
nm bin width was chosen as a compromise between smoothness
and computational tractability. Valid allele values for each gene
could range from zero to one.
D. Domain Knowledge Representation
This encoding permits the use of several problem specific
mutation methods by capitalizing on the expected properties
of good chromosomes. Optimal filters tend to have several
common properties. MacAdam [87], [88] showed that for the
chromaticity-only problem (i.e., ignoring color rendering),
optimal filters had a single notch (narrow band) of zero transmittance, and 100% transmittance otherwise. Early results
showed that in relatively fit chromosomes, many gene values
are exactly at the limits of the allele (i.e., 100% transmission or
0% transmission) and that there is a smooth transition in values
across adjacent genes. Finally, from a colorimetric perspective,
the portion of the visible spectrum at either extreme has very
little effect on efficiency. Therefore, there is little selection
pressure applied by these regions. By the same argument, the
central portion of the visible spectrum exerts a much stronger
influence on the fitness than either extreme.
This suggests several methods of mutation specific to the
spectrum optimization problem that might be expected to
produce a substantial decrease in the number of generations
required to converge to a good solution. For example, consider
the filter in Fig. 10. Because region A has very little influence
on efficiency, there is not much pressure to either smooth
out the genes, or move them toward a boundary. In region
B, there is clearly a notch developing, but many generations
may be required to smooth it out. Region C is near but not at
the boundary and, like region A, has little effect on fitness.
Our domain knowledge was embedded into a set of three

Fig. 10.

Suboptimal filter.

Fig. 11.

BCM applied to part of region A (bold line).

customized mutation operators which were designed to address


these issues: boundary chunk mutation (BCM), push mutation
(PM), and smooth mutation (SM), which are described in this
section.
1) Boundary Chunk Mutation: BCM selects a random contiguous portion up to 10% of the total length of the chromosome and sets it to one of the allele limits (either 1 or 0). Moreover, because most of the genes for many chromaticities could
be expected to be at 100% transmission, the selection of which
boundary to mutate to was biased slightly: 65% of the time it
went to 1, 35% of the time it went to 0. For the genes in randomly selected region
(5)

otherwise

where rand is a [0 1] uniformly distributed random value. This


mutation is effective because many of the genes of fit solutions
were at the maximum or minimum value (i.e., either 100% transmission or 0%). Fig. 11 shows BCM applied to part of region A
of the solution depicted in Fig. 10.
2) Push Mutation: PM selects a random contiguous portion
up to 20% of the total length of the chromosome and scales
the genes from their current values toward either 1 or 0 by a
randomly chosen value, which is uniformly distributed between
0.0 and 0.2. For the genes in randomly selected region

otherwise

(6)

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

273

Fig. 12. PM applied to part of region C (bold line).

Fig. 14. Filter transmittance for three spectra (for the given chromaticity
coordinates).

Fig. 13. SM applied to part of region B (bold line).

Fig. 12 shows PM applied to part of region C of the solution


depicted in Fig. 10. Note that this might be effectively applied
to region B as well, to help shape the developing notch.
3) Smooth Mutation: SM selects a random contiguous
portion up to 20% of the total length of the chromosome and
smooths it. Specifically, the value of each gene in the mutated
portion is weighted by the value of its neighboring genes
(7)
where is the order of the gene in the chromosome. Fig. 13
shows SM applied to part of region B of the solution depicted
in Fig. 10.
E. Results
Fig. 14 presents filters evolved by three typical runs of this
technique for three spectra (MH, HPS, and incandescent) at the
1931 CIE chromaticity (
,
). This chromaticity
was selected to be about equidistant from the unfiltered spectra
of the three lamps considered and achievable, albeit at low efficiency, by all three lamps. Also plotted are optimal filters produced for that color following method [87].
The incandescent and metal halide filters are simple notches,
very similar to the optimal notches found by MacAdams technique. The form of the HPS filter is quite different from the
MacAdam optimal; however, the difference in efficiency between the two is less than 0.56%. This example illustrates two
important features of genetic algorithms. First, the exact optimum is rarely found, although the difference is usually trivial.
Second, the GA approach is easily able to develop a variety of

Fig. 15. Comparison of Pareto-optimal surface found using GA approach to


known optimum (using MacAdams [87] method) on the three-dimensional
problem (filtered x, y , and efficiency). Contour lines are efficiency at a given
chromaticity.

solutions that have dissimilar form but similar performance, allowing an engineer to choose from these Pareto-optimal solutions based on criteria not encoded in the fitness function (e.g.,
ease of manufacturing).
Fig. 15 is a comparison of the chromaticity-efficiency Pareto
optimal surfaces obtained using both methods for the HPS

274

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

F. Remarks
The use of domain knowledge to develop problem-specific
mutation methods had a large beneficial effect on the performance of the GA in this case. For a relatively simple problem
with a smooth spectral power distribution, as obtained from
an incandescent source, the number of function evaluations required to arrive at a solution of comparable quality is reduced by
a factor of four by using the problem specific mutation methods.
For a more complex problem, such as one with a very spiky
spectral power distribution (as obtained from a metal halide
lamp), the effect is even more profound, reducing the number
of function evaluations by a factor of 20.
VIII. SCHEDULING MAINTENANCE TASKS FOR A
CONSTELLATION OF LOW EARTH ORBITING SATELLITES
A. Problem Description

Fig. 16. Tradeoff between efficiency and CRI at each chromaticity for the
four-dimensional problem (filtered x, y , CRI, and efficiency). For ease of
visualization, chromaticity is represented here by the corresponding color
temperature on the blackbody locus.

spectrum. The GA approach does a good job of defining the


MacAdam limit of efficiency at any chromaticity, particularly
where filtered efficiency is above 50%, which encompasses the
area of likely interest for any industrial application. The GA
performs less well at very low efficiencies; this is a relatively
more difficult area to find the optimum filter in, so the stopping
criterion (500 generations in this case) was probably too restrictive for this region, i.e., if it had run longer, it would have
performed better.
Fig. 16 is a plot of the Pareto optimal front for the four-dimensional problem of 1931 CIE and chromaticity, color
rendering index, and filtered efficiency. Note that the maximum
efficiency is quite close to the MacAdam limit for each chromaticity,4 except for metal halide at low color temperatures. This
is further evidence that the GA approach is finding solutions at
or very near the true global optima: at some CRI, the efficiency
for just chromaticity and for chromaticity and CRI optimized
must be the same. Note also that as color temperature is increased, the effect of CRI on maximum efficiency is decreased.
4The appearance of efficiency exceeding the MacAdam limit at high color
temperature is illusory, a result of mapping two-dimensional chromaticity space
to one-dimensional color temperature space.

The objective of this problem is to schedule the maintenance


tasks for a constellation of 25 satellites in LEO. These satellites
orbits do not follow a regular pattern. Thus any one of these 25
satellites does not necessarily follow the same orbit twice within
a finite period of time. As these satellites follow their orbits, they
provide services to the cities that have their view.
A given city on the surface sees a steady stream of satellites
appearing on the horizon (see Table VIII), remaining in view
for a widely varying period of time, and then disappearing over
the horizon. A city may have several satellites in view during
any given period of time. These satellites provide a variety of
services to the cities while they are in view. Table VIII represents a sample of the information known about the orbit of a
satellite and when it will be available to a specific city. Along
with the schedule of satellitecity interactions, there were two
other schedules. One schedule was for satelliteeclipse interactions, which tells us when a satellite will be in eclipse, and one
for satelliteground station interactions, which tells us when a
satellite will be able to contact certain control centers.
The satellite owners are responsible for providing a certain
level of service to customers in these cities of interest. The satellites cannot be reallocated, that is, they cannot be moved into
another orbit in order to provide more service to a city that is
not in their immediate path. It is to the satellite owners financial advantage to ensure that these cities receive the highest level
of service possible. Often a city is provided with more service
than is necessary. However, the goal in this project is to maximize overall coverage.
Our goal is to schedule a set of maintenance tasks on these
satellites. These tasks must be scheduled so that they infringe
minimally on the satellites ability to provide services. There
are two primary reasons why one might utilize an evolutionary
algorithm for this problem. First, there are some constraints that
may add significant nonlinearity to the solution space. Second,
there may be other conditions outside of the framework given to
the evolutionary algorithm that a decision maker may be aware
of. A side effect of utilizing an EA is the production of a set of
viable alternatives. These alternatives are attractive to a decision
maker who may be aware of other information that was not incorporated into the EA.

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

275

TABLE VIII
SATELLITECITY INTERACTION SCHEDULE

Fig. 17.

Architecture of satellite scheduling problem.

B. Related Work

D. Domain Knowledge Representation

This application has been previously reported in [103]. To the


best of our knowledge, there is no other prior work related to the
use of EAs to schedule satellite maintenance tasks. Other scheduling tools have been used in this problem domain, such as binary/integer programming [104], neural networks [105], [106],
dynamic constraints satisfaction [107], etc. EAs have been applied to a broad range of scheduling tasks from the ubiquitous
traveling salesman problem to the standard job shop scheduling.
This basic optimization task is nicely covered in many introductory genetic algorithm texts [13], [108].

The representation utilized was a chromosome with real


valued alleles. Each allele represents the start time for a maintenance task. In one instance of the problem, we had six tasks
to schedule on each of 25 satellites, resulting in a chromosome
with 150 real valued alleles.
This problem has static and dynamic constraints, each of
which were handled differently in the EA. Static constraints
are those that are based on information known prior to the EA
being run. In contrast, dynamic constraints are not known until
the EA is run.
Static constraints are based on a priori information. For example, certain tasks, like battery reconditioning, cannot be performed during a satellite eclipse. Therefore, its start time and
its entire duration should not overlap with any satellite eclipse.
This is illustrated in Table IX (second row). The schedule of
each eclipse is known for each satellite prior to running the EA.
Thus, this information can be encoded into the chromosome. For
each allele representing a battery-reconditioning task, we need
to ensure that it is not scheduled during an eclipse. Rather than
allowing the start time to span the full duration of the simulated

C. Solution Architecture
As illustrated in Fig. 17, the EA utilizes an event simulation
to determine the total coverage provided in a given schedule.
This simulation is provided by a data structure that is constructed based on a known schedule of coverage events and the
EA scheduled task-starting times. After constructing the data
structure, the final adjusted coverage events are read directly
from the data structure. These final events have been reduced
in accordance with any overlapping tasks.

276

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

TABLE IX
INTERACTIONS BETWEEN TASKS AND EVENTS

Within: indicates that the usable time for the task is contained entirely within the event.
No Overlap: The task is not allowed to intersect the other
event or task type.
As these schedule conflicts arise dynamically, they must be
resolved dynamically as well. In this case we opted for a penalty
function that penalizes an individual for invalid overlapping
tasks. This constraint was even enforced with a dynamic
penalty so as to maintain diversity. Over time, that is, in later
generations, the penalty for this collision is more severe than in
early generations
(8)
In the above equation is the final fitness,
is the fitness before any penalty is applied, is a linearity factor, and
is a constant weight to be multiplied with the number of collisions. This method was important in that it allowed for greater
diversity in early generations, which increased the likelihood of
optimum results in later generations.

Fig. 18.

Mapping between real time and an artificial time horizon.

Fig. 19. This set of static constraints starts with valid and potentially
overlapping windows of starting times and maps them to a continuous range of
valid start times.

period, we truncate the period to account for the time that is not
available for this task.
As shown in Fig. 18, we map real time (except for eclipses)
into a truncated time horizon that represents only valid start
times. During the evaluation of this individual, we can then calculate a mapping from our truncated starting time to the actual
starting time.
A similar problem is for those tasks that must occur while
a satellite is in contact with a ground station. Since we know
when valid times for this task occur, we can once again create
an artificial time scale that incorporates only the valid range of
times for the tasks. This is shown in Fig. 19.
Dynamic constraints must be enforced differently, as they are
based on information not known until the EA is run. They are
dependent on the nature of the solution generated by the EA.
The primary dynamic constraint in this problem is the issue of
task collisions. There are several types of tasks, and each task
has specific interactions with other task types and other events.
These interactions are shown in Table IX.
The interaction types are defined as follows.
Shrinks: indicates that the task reduces the usable time in
that event.
No Interaction: indicates that the task may be scheduled
during the event or task.

E. Results
Since a real-coded representation was used, the genetic
operators assumed a principal role in the solution process. Our
crossover and mutation methods sought to mimic effective
methods common on binary representations. In both operators,
we utilized normal distributions around parents to generate
children. One early method used in this domain was the BLX
crossover method [109]. We found that this method was insufficient to improve our performance. We sought to develop a
method analogous to crossover methods typically employed in
binary representations. In these methods, the genetic material in
subsequent generations is directly inherited from either parent.
We attempted to utilize a method that mapped more readily
onto that construct than does the BLX method. In our parent
weighted crossover method, the children inherited values that
were generated from distributions centered on the parent values.
This is similar to the parent-centric recombination [110], which
tracks the direction in which children are moving from parents.
Similarly, our mutation operator selected a value from a distribution around the allele value being modified. This mutation
method proved to be much more effective than a method which
generated completely new allele values. These methods improved our results significantly. The EA in our approach was a
steady-state GA using a 50% population replacement strategy
with a mutation probability of 0.1% and a crossover probability
of 60%. In our experiments, the number of generations varied
in the range [300, 500], and the population sizes varied in the
range [25, 500].
In parallel to our EA, the problem was also solved using
a linear programming (LP) method. The LP was allowed to
run until it found a provable objective function optimum of
69 366.58 min. This number represents the aggregate time coverage of a Walker constellation of 25 LEO satellites. The tuned
EA typically returns values that are one to two minutes short of
this value. The LP method had to run for approximately ten minutes in order to find a provable optimum. As shown in Table X,
the EA ran for a comparable amount of time with a very large

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

TABLE X
AVERAGE RUNNING TIMES FOR CONVERGENCE RELATIVE TO POPULATION SIZE

population. One advantage provided by the EA is an end result


that is a population, not just a point solution. This offers a decision maker various options that may be considered in light of
constraints that may not be encoded in the EA, such as energy
management restrictions.
F. Remarks
In this application, we have incorporated a priori information into the representation as static constraints, e.g., schedule
of known events. Dynamic constraints, which are dependent on
each scheduled individual, are represented with a time-dependent penalty function. We performed several experiments to obtain the structure and parameters of the most suitable penalty
function that would remove task collisions without inhibiting
the search for good solutions.
IX. CONCLUSION
A. Summary
We have discussed the impact of the no free lunch theorem
and its implied requirements for leveraging domain knowledge
in evolutionary search. There have been many studies proving
the applicability of the NFLT to problems that are closed under
permutation [4]. There are still discussions as to its extensibility
to other classes of search and decision problems. Nevertheless,
we found that the solution of real-world problems via evolutionary search can greatly benefit from the incorporation of domain knowledge.
We have examined implicit and explicit knowledge representation mechanisms for evolutionary algorithms. We have also
described offline and online metaheuristics as examples of explicit methods to leverage this knowledge. To illustrate the benefits of this knowledge integration approach, we have described
four real-world applications: a discrete classification, a combinatorial assignment, a design optimization, and a scheduling
problem.
The first application is an insurance underwriting problem
in which we try to balance risk assessment and price competitiveness to determine the rate class of the applicant. In arriving
at such a decision, we also want to find the best tradeoff between the percentage of insurance applications handled by the
classifier (coverage) and its accuracy. In this application the object-level problem solver is a fuzzy knowledge-based classifier,
while the EA is the metalevel search heuristic used to tune and
maintain the classifiers parameters.
The second application is a flexible manufacturing problem
in which we optimize the time and cost of design and manufacturing of a given product, and we realize the optimal

277

assignments of parts to a design, suppliers to parts, and design


to a manufacturing facility. This approach leverages online
metaheuristics as a way to encode domain knowledge. A fuzzy
knowledge-based controller guides the evolutionary search
for optimal planning decisions and controls its transition from
exploration to exploitation.
The third application is a multiobjective lamp-spectrum optimization problem. This approach leverages domain knowledge
via the use of customized mutation operators. Such incorporation has a profound effect on the quality and speed of evolutionary search in the exploration of the Pareto front.
The fourth application describes a scheduling problem for the
maintenance tasks of a constellation of 25 low earth orbit satellites. In this approach, the domain knowledge is embedded in the
design of a structured chromosome, a collection of time-value
transformations to reflect static constraints and a time-dependent penalty function to prevent schedule collisions. The use
of domain knowledge in the design of the EAs data structures
allowed the evolutionary search to focus on the satisfaction of
dynamic constraints and resulted in a considerable reduction of
the search space.
Knowledge is power was a common AI slogan of the 1980s.
We claim that leveraged domain-knowledge is power is still
very relevant from the perspective of evolutionary search. As
we address control, optimization, and other decision-making
problems, we need to exploit domain knowledge to properly design, initialize, and modify the structures and parameters of the
problem solvers. The implication for future work is clear: researchers and particularly practitioners interested in solving difficult problems quickly and reliably are well served to eschew
generic approaches when domain knowledge can be leveraged
directly to make a more efficient evolutionary algorithm tailored
to a specific problem.
If leveraged domain-knowledge is power, then proper domain-knowledge representation is key to the success of this endeavor. We have illustrated several approaches, both implicit
and explicit, that support this statement. We have stressed the
usefulness of fuzzy systems to represent domain knowledge and
the synergy derived from hybrid soft computing systems that are
based on a loose or tight integration of their constituent technologies. This integration provides complementary reasoning
and search methods that allow us to combine domain knowledge and empirical data to develop flexible computing tools and
solve complex problems. Thus, we consider soft computing as
a framework in which we can derive models that capture heuristics for object-level tasks or metaheuristics for metalevel tasks.
B. Closing Remarks on Relevant Work
In closing, we would like to briefly describe one of our
research and development efforts wherein the problem would
be unsolvable without the suitable incorporation of domain-specific knowledge within the evolutionary optimization
framework [19].
The problem is the optimal allocation of available financial
resources to a diversified portfolio of long- and short-term financial assets in accordance with risk, liability, and regulatory constraints. The problems we have tackled typically involve several
hundreds to thousands of financial assets, and investment decisions of several billion dollars. In this application, the goal is

278

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

the simultaneous maximization of return measures and the minimization of risk measures for the portfolio of assets. The return
and risk measures are complex linear or nonlinear functions of a
variety of market and asset factors. The principal characteristic
of this problem class is the presence of a large number of linear
allocation constraints, and multiple linear and nonlinear objectives defined over the resulting feasible space.
We have developed and tested evolutionary multiobjective
optimization algorithms that are able to robustly identify the
Pareto frontier of optimal portfolios defined over the space of
returns and risks. However, the key challenge in solving this
problem is presented by the large number of linear allocation
constraints. The feasible space defined by these constraints is
a high dimensional real-valued space (up to 2000 dimensions)
and is a highly compact convex polytope, making for an enormously challenging constraint satisfaction problem.
Linear programming methodologies can routinely handle
problems with thousands of linear constraints, but they are
unable to tackle nonlinear objectives. We leveraged knowledge
on the geometrical nature of the feasible space by designing
a specialized LP-based algorithm that robustly samples the
boundary vertices of the convex feasible space. These extremity
samples are seeded in the initial population and then exclusively used by the evolutionary multiobjective algorithm to
generate interior points (via convex crossover) that are always
geometrically feasible.
In this specific application, we have explicitly incorporated
domain knowledge by a specialized LP-based population initializer and convex crossover operators that always generate geometrically feasible interior points. This application further reinforces our central thesis that evolutionary algorithms + domain
knowledge = real-world evolutionary computation.
REFERENCES
[1] M. Gondran and M. Minoux, Graphs and Algorithms. New York:
Wiley, 1984.
[2] D. H. Wolpert and W. G. MacReady, No free lunch theorems for
search,, Santa Fe, NM, SFI-TR-95-02-010, 1995.
, No free lunch theorems for optimization, IEEE Trans. Evol.
[3]
Comput., vol. 1, no. 1, pp. 6782, 1997.
[4] C. R. Reeves and J. E. Rowe, Genetic Algorithms Principles and
Perspectives: A Guide to GA Theory. Amsterdam, The Netherlands:
Kluwer Academic, 2003, ch. 4.
[5] Y.-C. Ho and D. L. Pepyne, Simple explanation of the no free lunch theorem of optimization, Cybern. Syst. Anal., vol. 38, no. 2, pp. 292298,
2002.
[6] L. A. Zadeh, Fuzzy logic and soft computing: Issues, contentions and
perspectives, in Proc. IIZUKA94: Third Int. Conf. Fuzzy Logic, Neural
Nets Soft Computing, Iizuka, Japan, 1994, pp. 12.
[7] P. Bonissone, Automating the quality assurance of an on-line knowledge-based classifier by fusing multiple off-line classifiers, in Proc.
IPMU, Perugia, Italy, Jul. 49, 2004, pp. 309316.
, Soft computing: The convergence of emerging reasoning tech[8]
nologies, Soft Comput., vol. 1, no. 1, pp. 618, 1997.
[9] P. Bonissone, Y.-T. Chen, K. Goebel, and P. Khedkar, Hybrid soft computing systems: Industrial and commercial applications, Proc. IEEE,
vol. 87, pp. 16411667, 1999.
[10] T. Pal and N. R. Pal, SOGARG: A self-organized genetic algorithmbased rule generation scheme for fuzzy controllers, IEEE Trans. Evol.
Comput., vol. 7, pp. 397415, 2003.
[11] P. Bonissone, The life cycle of a fuzzy knowledge-based classifier, in
Proc. 2003 North Amer. Fuzzy Information Processing Soc., Chicago,
IL, Jul. 2003, pp. 488494.
[12] P. Bonissone, A. Varma, and K. Aggour, An evolutionary process for
designing and maintaining a fuzzy instance-based model (FIM), in
Proc. 2005 Genetic Fuzzy Systems, Granada, Spain, Mar. 2005.

[13] Z. Michalewicz, Genetic Algorithms + Data Structures = Evolution Programs. New York: Springer-Verlag, 1996.
[14] R. C. Prim, Shortest connection networks and some generalizations,
Bell Syst. Technol. J., vol. 36, pp. 13891401, 1957.
[15] E. Vonk, L. C. Jain, and R. P. Johnson, Automatic Generation of Neural
Network Architecture using Evolutionary Computation, Singapore:
World Scientific, 1997.
[16] J. T. Richardson, M. R. Palmer, G. E. Liepins, and M. Hilliard, Some
guidelines for genetic algorithms with penalty functions, in Proc. 3rd
Int. Conf. Genetic Algorithms, San Mateo, CA, 1989, pp. 191197.
[17] W. Siedlecki and J. Sklansky, Constrained genetic optimization via
dynamic reward-penalty balancing and its use in pattern recognition,
in Proc. 3rd Int. Conf. Genetic Algorithms, San Mateo, CA, 1989, pp.
141150.
[18] J. Kubalik and J. Lazansky, Genetic algorithms and their tuning, in
Computing Anticipatory Systems, D. M. Dubois, Ed. Liege, Belgium:
American Institute of Physics, 1999, pp. 217229.
[19] R. Subbu, P. Bonissone, N. Eklund, S. Bollapragada, and K.
Chalermkraivuth, Multiobjective financial portfolio design: A hybrid evolutionary approach, in Proc. IEEE Int. Congr. Evol. Comput.,
Edinburgh, U.K., Sep. 25, 2005, pp. 17221729.
[20] P. Moscato, On evolution, search, optimization, genetic algorithms and
martial arts: Toward memetic algorithms, Caltech Concurrent Computation Program, Caltech, CA, C3P Rep. 826, 1989.
, Memetic algorithms: A short introduction, in New Ideas in Op[21]
timization, D. Corne, M. Dorigo, and F. Glower, Eds. London, U.K.:
McGraw-Hill, 1999, pp. 219234.
[22] J.-M. Renders and H. Bersini, Hybridizing genetic algorithms with hillclimbing methods for global optimization: Two possible ways, in Proc.
Int. Conf. Evol. Comput., 1994, pp. 312317.
[23] R. Subbu and P. Bonissone, A retrospective view of fuzzy control of
evolutionary algorithm resources, in Proc. IEEE Int. Conf. Fuzzy Syst.,
St Louis, MO, May 25, 2003, pp. 143148.
[24] E. Eiben, R. Hinterding, and Z. Michalewicz, Parameter control in evolutionary algorithms, IEEE Trans. Evol. Comput., vol. 3, no. 2, pp.
124141, 1999.
[25] F. Herrera and M. Lozano, Fuzzy adaptive genetic algorithms: Design, taxonomy, and future directions, Soft Comput., vol. 7, no. 8, pp.
545562, 2003.
[26] P. Bonissone, Soft computing and meta-heuristics: Using knowledge
and reasoning to control search and vice-versa, in Proc. SPIE
Applications Science Neural Networks (Fuzzy Systems Evolutionary
Computation VI), vol. 5200, San Diego, CA, Aug. 2003, pp. 133149.
[27] K. A. De Jong, An analysis of the behavior of a class of genetic
adaptive systems, Ph.D. dissertation, Univ. of Michigan, Ann Arbor,
MI, 1975.
[28] J. J. Grefenstette, Optimization of control parameters for genetic algorithms, IEEE Trans. Syst., Man, Cybern., vol. 16, no. 1, pp. 122128,
1986.
[29] F. Xue, Fuzzy logic controlled multi-objective differential evolution,
Rensselaer Polytechnic Inst., Troy, NY, Electronics Agile Manufacturing Research Institute Research Rep. ER03-4, 2003.
[30] T. Bck, Evolutionary Algorithms in Theory and Practice. New York:
Oxford Univ. Press, 1996.
[31] M. Schut and J. Wooldridge, The control of reasoning in resourcebounded agents, Knowl. Eng. Rev., vol. 16, no. 3, pp. 215240, 2000.
[32] E. Melis and A. Meier, Proof planning with multiple strategies, in Lecture Notes in Computer Science. Berlin, Germany: Springer-Verlag,
2000, vol. 1861, pp. 644659.
[33] M. Cox, Machines that forget: Learning from retrieval failure of misindexed explanations, in Proc. 16th Annu. Conf. Cognitive Science Soc.,
1994, pp. 225230.
[34] S. Fox, Introspective learning for case-based reasoning, Ph.D. dissertation, Dept. of Computer Science, Indiana Univ., Bloomington, IN,
1995.
[35] P. Bonissone and P. Halverson, Time-constrained reasoning under uncertainty, J. Real-Time Syst., vol. 2, no. 1/2, pp. 2545, 1990.
[36] P. P. Bonissone, P. S. Khedkar, and Y. Chen, Genetic algorithms for
automated tuning of fuzzy controllers: A transportation application, in
Proc IEEE Conf. Fuzzy Syst., New Orleans, LA, 1996, pp. 674680.
[37] X. Yao, Evolving artificial neural networks, Proc. IEEE, vol. 87, pp.
14231447, 1999.
[38] P. Larraaga and J. Lozano, Synergies between evolutionary computation and probabilistic graphical models, Int. J. Approx. Reason., vol.
31, no. 3, pp. 155156, Nov. 2002.
[39] P. Bonissone, V. Badami, K. Chiang, P. Khedkar, K. Marcelle, and M.
Schutten, Industrial applications of fuzzy logic at general electric,
Proc. IEEE, vol. 83, pp. 450465, 1995.

BONISSONE et al.: REAL-WORLD EVOLUTIONARY COMPUTATION

[40] S. Guillaume, Designing fuzzy inference systems from data: An interpretability-oriented review, IEEE Trans. Fuzzy Syst., vol. 9, no. 3, pp.
426443, 2001.
[41] J. Casillas, O. Cordn, F. Herrera, and L. Magdalena, Eds., Interpretability issues in fuzzy modeling, and accuracy improvements in
linguistic fuzzy modeling, in Studies in Fuzziness and Soft Computing. Berlin, Germany: Springer-Verlag, 2003, vol. 128129.
[42] L. A. Zadeh, Fuzzy sets, Inf. Contr., vol. 8, pp. 338353, 1965.
[43] N. Rescher, Many-Valued Logic. New York: McGraw-Hill, 1969.
[44] M. Black, Vagueness: An exercise in logical analysis, Phil. Sci., vol.
4, pp. 427455, 1937.
[45] E. H. Ruspini, P. P. Bonissone, and W. Pedycz, Handbook of Fuzzy Computation. Bristol, U.K.: Institute of Physics, 1998.
[46] L. A. Zadeh, Quantitative fuzzy semantics, Inf. Sci., vol. 3, pp.
159176, 1971.
, The concept of a linguistic variable and its application to approx[47]
imate reasoning, Part 1, Inf. Sci., vol. 8, pp. 199249, 1975.
[48] Y.-M. Pok and J.-X. Xu, Why is fuzzy control robust, in Proc. 3rd
IEEE Int. Conf. Fuzzy Syst., Orlando, FL, 1994, pp. 10181022.
[49] L. A. Zadeh, Outline of a new approach to the analysis of complex
systems and decision processes, IEEE Trans. Syst., Man, Cybern., vol.
SMC-3, pp. 2844, 1973.
[50] E. H. Mamdani and S. Assilian, An experiment in linguistic synthesis
with a fuzzy logic controller, Int. J. Man Mach. Studies, vol. 7, no. 1,
pp. 113, 1975.
[51] T. Takagi and M. Sugeno, Fuzzy identification of systems and its applications to modeling and control, IEEE Trans. Syst., Man, Cybern., vol.
SMC-15, pp. 116132, 1985.
[52] R. Babuska, R. Jager, and H. B. Verbruggen, Interpolation issues in
Sugeno-Takagi reasoning, in Proc. 3rd IEEE Int. Conf. Fuzzy Syst., Orlando, FL, 1994, pp. 859863.
[53] H. Bersini, G. Bontempi, and C. Decaestecker, Comparing RBF
and fuzzy inference systems on theoretical and practical basis, in
Proc. Int. Conf. Artificial Neural Networks, vol. 1, Paris, France,
1995, pp. 16974.
[54] T. J. Procyck and E. H. Mamdani, A linguistic self-organizing process
controller, Automatica, vol. 15, pp. 1530, 1979.
[55] F. Herrera and J. L. Verdegay, Eds., Genetic algorithms and soft computing, in Studies in Fuzziness and Soft Computing. Berlin, Germany:
Physica-Verlag, 1996, vol. 8.
[56] J. S. R. Jang, ANFIS: Adaptive-network-based fuzzy inference
system, IEEE Trans. Syst., Man, Cybern., vol. 233, pp. 665685,
1993.
[57] O. Cordn, F. Herrera, and M. Lozano, A classified review on the combination fuzzy logic-genetic algorithms bibliography, Dept. of Computer Science and A.I., Univ. of Granada, Granada, Spain, Tech. Rep.
DECSAI-95 129, 1995.
[58] C. L. Karr, Design of an adaptive fuzzy logic controller using genetic algorithms, in Proc. Int. Conf. Genetic Algorithms, San Diego, CA, 1991,
pp. 450456.
[59] M. A. Lee and H. Tagaki, Dynamic control of genetic algorithm using
fuzzy logic techniques, in Proc. 5th Int. Conf. Genetic Algorithms, CA,
1993, pp. 7683.
[60] H. Surmann, A. Kanstein, and K. Goser, Self-organizing and genetic
algorithms for an automatic design of fuzzy control and decision systems, in Proc. EUFIT, Aachen, Germany, 1993, pp. 10971104.
[61] J. Kinzel, F. Klawoon, and R. Kruse, Modifications of genetic algorithms for designing and optimizing fuzzy controllers, in Proc. 1st IEEE
Conf. Evol. Comput., Orlando, FL, 1994, pp. 2833.
[62] D. Burkhardt and P. P. Bonissone, Automated fuzzy knowledge base
generation and tuning, in Proc 1st IEEE Int. Conf. Fuzzy Syst., San
Diego, CA, 1992, pp. 179188.
[63] F. Herrera, M. Lozano, and J. L. Verdegay, Tuning fuzzy logic controllers by genetic algorithms, Int. J. Approx. Reason., vol. 12, no. 3/4,
pp. 299315, 1995.
[64] P. P. Bonissone, P. S. Khedkar, and Y.-T. Chen, Genetic algorithms
for automated tuning of fuzzy controllers, A transportation application,
in Proc. 5th IEEE Int. Conf. Fuzzy Syst., New Orleans, LA, 1996, pp.
674680.
[65] L. Zheng, A practical guide to tune proportional and integral (PI) like
fuzzy controllers, in Proc. 1st IEEE Int. Conf. Fuzzy Syst., S. Diego,
CA, 1992, pp. 633640.
[66] E. C. C. Tsang and D. S. Yeung, Optimizing fuzzy knowledge base by
genetic algorithms and neural networks, in Proc. IEEE Int. Conf. Syst.,
Man, Cybern., Tokyo, Japan, 1999, pp. 367371.
[67] A. Grauel, I. Renners, and L. A. Ludwig, Optimizing fuzzy classifiers
by evolutionary algorithms, in Proc. IEEE 4th Int. Conf. KnowledgeBased Intelligent Engineering Systems Allied Technologies, 2000, pp.
353356.

279

[68] S.-Y. Ho, T.-K. Chen, and S.-J. Ho, Designing an efficient fuzzy
classifier using an intelligent genetic algorithm, in Proc. IEEE 24th
Annu. Int. Computer Software Applications Conf. (COMPSAC), 2000,
pp. 293298.
[69] H. Ishibuchi, T. Nakashima, and T. Murata, Genetic-algorithm-based
approaches to the design of fuzzy systems for multi-dimensional pattern
classification problems, in Proc. IEEE Int. Conf. Evolutionary Computation, 1996, pp. 229234.
[70] C.-C. Wong, C.-C. Chen, and B.-C. Lin, Design of fuzzy classification
system using genetic algorithms, in Proc. IEEE 9th Int. Conf. Fuzzy
Systems, San Antonio, TX, 2000, pp. 297301.
[71] E. Collins, S. Ghosh, and C. Scofield, An application of a multiple
neural network learning system to emulation of mortgage underwriting
judgments, in Proc. IEEE Int. Conf. Neural Networks, 1988, pp.
351357.
[72] C. Nikolopoulos and S. Duvendack, A hybrid machine learning system
and its application to insurance underwriting, in Proc. IEEE Int. Congr.
Evol. Comput., 1994, pp. 692695.
[73] P. Bonissone, R. Subbu, and K. Aggour, Evolutionary optimization
of fuzzy decision systems for automated insurance underwriting, in
Proc. 2002 IEEE World Conf. Comput. Intell., Honolulu, HI, 2002, pp.
10031008.
[74] R. Subbu, C. Hocaoglu, and A. C. Sanderson, A virtual design environment using evolutionary agents, in Proc. IEEE Int. Conf. Robotics
Automation, Leuven, Belgium, 1998, pp. 247253.
[75] R. Subbu, A. C. Sanderson, and P. P. Bonissone, Fuzzy logic controlled
genetic algorithms versus tuned genetic algorithms: An agile manufacturing application, in Proc. ISIC/CIRA/ISAS Conf., Gaithersburg, MD,
1998b, pp. 434440.
[76] F. Herrera and M. Lozano, Adaptation of genetic algorithm parameters
based on fuzzy logic controllers, in Genetic Algorithms and Soft Computing, F. Herrera and J. L. Verdegay, Eds. Berlin, Germany: PhysicaVerlag, 1996, pp. 95129.
[77]
, Adaptive genetic operators based on coevolution with fuzzy behaviors, IEEE Trans. Evol. Comput., vol. 5, no. 2, pp. 149165, 2001.
[78] A. Tettamanzi and M. Tomassini, Fuzzy evolutionary algorithms,
in Soft Computing: Integrating Evolutionary, Neural, and Fuzzy Systems. Berlin, Germany: Springer-Verlag, 2001, ch. 7.
[79] R. Palmer, Sliding mode fuzzy control, in Proc. IEEE Int. Conf. Fuzzy
Systems, 1992, pp. 519526.
[80] P. Bonissone and K. H. Chiang, Fuzzy logic controllers: From development to deployment, in Proc. IEEE Int. Conf. Neural Networks, 1993,
pp. 610619.
[81] J. E. Slotine and W. Li, Applied Nonlinear Control. Englewood Cliffs,
NJ: Prentice-Hall, 1991.
[82] P. Bonissone, A compiler for fuzzy logic controllers, in Proc. Int.
Fuzzy Eng. Symp., 1991, pp. 706717.
[83] Memorandum of understanding for the implementation of a European concerted research action designated as COST Action 529 efficient
lighting for the 21st century, in European Co-Operation in the Field of
Scientific and Technical Research: COST, 2001.
[84] G. Wyszecki and W. Stiles, Color Science: Concepts and Methods,
Quantitative Data and Formulae, 2nd ed. New York: Wiley, 1982.
[85] M. Siminovitch, C. Gould, and E. Page, A high-efficiency indirect
lighting system utilizing the solar 1000 sulfur lamp, in Proc. Right
Light 4 Conf., vol. 2, Copenhagen, Denmark, Nov. 1921, 1997, pp.
3540.
[86] B. Turner, M. Ury, Y. Leng, and W. Love, Sulfur lamps Progress in
their development, J. Illum. Eng. Soc., vol. 26, pp. 1016, 1997.
[87] D. MacAdam, The theory of the maximum visual efficiency of colored
materials, J. Opt. Soc. Amer., vol. 25, pp. 249252, 1935.
, Maximum visual efficiency of colored materials, J. Opt. Soc.
[88]
Amer., vol. 25, pp. 361367, 1935.
[89] M. Koedam and J. Opstelten, Measurement and computer-aided optimization of spectral power distributions, Light. Res. Technol., vol. 3,
no. 3, pp. 205210, 1971.
[90] M. Koedam, J. Opstelten, and D. Radielovic , The application of simulated spectral power distributions in lamp development, J. Illum. Eng.
Soc., vol. 1, pp. 285289, 1972.
[91] W. Thornton, Luminosity and color-rendering capability of white
light, J. Opt. Soc. Amer., vol. 61, no. 9, pp. 11551163, 1971.
[92] H. Einhorn and F. Einhorn, Inherent efficiency and color rendering of
white light sources, Illum. Eng., vol. 62, pp. 154158, 1967.
[93] W. Walter, Optimum phosphor blends for fluorescent lamps, Appl.
Opt., vol. 10, pp. 11081113, 1971.
[94] H. Haft and W. Thornton, High performance fluorescent lamps, J.
Illum. Eng. Soc., vol. 1, pp. 2935, 1972.
[95] J. Opstelten, D. Radielovic , and J. Verstegen, Optimum spectra for light
sources, Phil. Tech. Rev., vol. 35, pp. 361370, 1975.

280

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 10, NO. 3, JUNE 2006

[96] W. Walter, Optimum lamp spectra, J. Illum. Eng. Soc., vol. 7, no. 1,
pp. 6673, 1978.
[97] N. Ohta and G. Wyszecki, Designing illuminants that render given objects in prescribed colors, J. Opt. Soc. Amer., vol. 66, pp. 269275,
1976.
, Color changes caused by specified changes in the illuminant,
[98]
Color Res. Appl., vol. 1, pp. 1721, 1976.
[99] D. DuPont, Study of the reconstruction of reflectance curves based on
tristimulus values: Comparison of methods of optimization, Color Res.
Appl., vol. 27, pp. 8899, 2002.
[100] N. Eklund and M. Embrechts, GA-based multi-objective optimization
of visible spectra for lamp design, in Smart Engineering System Design: Neural Networks, Fuzzy Logic, Evolutionary Programming, Data
Mining and Complex Systems, C. H. Dagli, A. L. Buczak, J. Ghosh, M.
J. Embrechts, and O. Ersoy, Eds. New York: ASME Press, 1999, pp.
451456.
, Determining the color-efficiency Pareto optimal surface for
[101]
filtered light sources, in Evolutionary Multi-Criterion Optimization,
Zitzler, Deb, Thiele, Coello, and Corne, Eds. Berlin, Germany:
Springer-Verlag, 2001, vol. 1993, Lecture Notes in Computer Science,
pp. 603611.
[102] N. Eklund, Multiobjective visible spectrum optimization: A genetic
algorithm approach, Ph.D. dissertation, Engineering Science Dept.,
Rensselaer Polytechnic Inst., Troy, NY, 2002.
[103] T. Kiehl, Genetic algorithms for autonomous satellite control, MS,
Computer Science Dept., Rensselaer Polytechnic Inst., Troy, NY, 1999.
[104] K.-D. Lee, H.-J. Lee, Y.-H. Cho, and D. G. Oh, Throughput-maximizing timeslot scheduling for interactive satellite multiclass services,
IEEE Commun. Lett., vol. 7, pp. 263265, 2003.
[105] N. Funabiki and S. Nishikawa, A binary hopfield neural-network approach for satellite broadcast scheduling problems, IEEE Trans. Neural
Netw., vol. 8, pp. 441445, 1997.
[106] T. Tambouratzis, Decomposition co-ordination artificial neural network for satellite broadcast scheduling, Electron. Lett., vol. 34, no. 15,
pp. 15031504, 1998.
[107] C. Plaunt, A. K. Jonsson, and J. Frank, Run-time satellite tele-communications call handling as dynamic constraint satisfaction, in Proc.
IEEE Aerospace Conf., vol. 5, 1999, pp. 165174.
[108] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning. Reading, MA: Addison-Wesley, 1989.
[109] F. Herrera, M. Lozano, and J. L. Verdegay, Tackling real-coded genetic
algorithms: Operators and tools for behavioral analysis, Artif. Intell.
Rev., vol. 12, no. 4, pp. 265319, 1998.
[110] K. Deb, A. Anand, and D. Joshi, A computationally efficient evolutionary algorithm for real-parameter optimization, Evol. Comput., vol.
10, no. 4, pp. 371395, 2002.

Piero P. Bonissone (S75M79SM02F04) received the Ph.D. degree in electrical engineering and
computer science from the University of California
at Berkeley in 1979.
Since then, he has been a Computer Scientist with
General Electric Global Research, where he has carried out research in artificial intelligence, expert systems, fuzzy sets, evolutionary algorithms, and soft
computing, ranging from the control of turbo-shaft
engines to the use of fuzzy logic in dishwashers, locomotives, power supplies and financial applications.
He has developed case-based and fuzzy-neural systems to accurately estimate
the value of residential properties when used as mortgage collaterals and to predict paper-web breakages in paper mills. He has led a large internal project that
uses a fuzzy-rule base to partially automate the underwriting process of life
insurance applications. Recently he led a soft computing group in the development of prognostics of products remaining life. He is also an Adjunct Professor
with Rensselaer Polytechnic Institute, Troy, NY. Since 1993, he has been Editor-in-Chief of the International Journal of Approximate Reasoning. He has
coedited four books and published more than 120 articles. He received 33 U.S.
patents (with more than 25 pending). He has been the Keynote Speaker of many
important conferences in the artificial intelligence and soft computing field.
Dr. Bonissone is a Fellow of the American Association for Artificial Intelligence and the International Fuzzy Systems Association. In 1993, he received
the Coolidge Fellowship Award from GE CRD for overall technical accomplishments. From 1993 to 2000, he was Vice-President of Finance of the IEEE
NNC. In 2002, he became President of the IEEE Neural Networks Society. He
is Vice-President of Finances of the IEEE Computational Intelligence Society.

Raj Subbu (M00SM04) received the Ph.D. degree


in computer and systems engineering from Rensselaer Polytechnic Institute (RPI), Troy, NY, in 2000.
Since 2001, he has been a Senior Research Scientist in the Computing and Decision Sciences Group,
General Electric Global Research Center, Niskayuna,
NY. His research interests are in the areas of information systems, control systems, novel multiobjective optimization methodologies, and soft computing.
At General Electric, he serves as a principal technologist at the intersection of these areas for several
high-business-impact projects. In addition, he was Co-Principal Investigator in
a multiyear (20012004) National Science Foundation funded project in scalable enterprise decision systems, in collaboration with RPI. He has authored
over 30 publications and proceedings, has received two U.S. patents, and has
over 16 U.S. patents pending. He is the principal coauthor of Network-Based
Distributed Planning Using Coevolutionary Algorithms (Singapore: World Scientific, 2004).
Dr. Subbu received the Best Paper Award at the IEEE International Conference on Fuzzy Systems in 2003. He is an Associate Editor of the IEEE
TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS
AND HUMANS and PART C: APPLICATIONS AND REVIEWS.

Neil Eklund (S91M98) received the B.S. degree,


two M.S. degrees, and the Ph.D. degree from Rensselaer Polytechnic Institute, Troy, NY, in 1991, 1998,
and 2002, respectively.
He was a Research Scientist with the Lighting
Research Center from 1993 to 1999. He was in
the Network Planning Department of PSINet from
1999 to 2002 before joining General Electric Global
Research, Niskayuna, NY, in 2002. He has worked
on a wide variety of research projects, including
early detection of cataract using intraocular photoluminescence, multiobjective bond portfolio optimization, and on-wing fault
detection and accommodation in gas turbine aircraft engines. His current
research interests involve developing hybrid soft/hard computing approaches
for real-world problems, particularly real-time monitoring, diagnostics, and
prognostics.

Thomas R. Kiehl received the B.S. and M.S. degrees


in computer science from Rensselaer Polytechnic
Institute, Troy, NY, in 1996 and 1999, respectively,
where he is currently pursuing a Ph.D. in multidisciplinary science.
From 1996 to 2005, he was a Computer Scientist
with General Electric Global Research, where he
worked on a variety of applications of genetic algorithms from scheduling to combinatorial chemistry,
systems biology, and machine learning. In his tenure
there he also worked in systems architecture/security
and biological simulation.
Mr. Kiehl is a National Science Foundation Graduate Research Fellow. He is
a member of IEEE CIS and ACM SIGEVO.

You might also like