Evolutionary Computation : A Unified Approach
Evolutionary Computation : A Unified Approach
Evolutionary Computation : A Unified Approach
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
116 CHAPTER 6. EVOLUTIONARY COMPUTATION THEORY<br />
and assumptions are often made that are motivated by the goal of improving analytical<br />
tractability rather than by properties of the underlying object of study. Classic examples of<br />
this are assumptions of linearity or independence of variables. Obviously, the wider the gap,<br />
the more concern there is as to whether the analytical results obtained from such models<br />
carry over to the “real” thing.<br />
These issues confront us immediately in our attempt to develop useful abstract models<br />
of evolutionary computation methods. In order to be useful, these models must be capable<br />
of capturing the important algorithmic details of particular EAs. However, the inclusion<br />
of such details often leads to analytic intractability, since the important EA components<br />
interact with each other in complex, nonlinear ways.<br />
Yet, if theory is to have any impact on practice, these gaps must be addressed. This can<br />
be done in a number of ways. First, we can require a particular theory to make predictions<br />
about the behavior of “real” EAs, and evaluate a theory’s usefulness in terms of the accuracy<br />
of its predictions. However, for some theories, the gap is so wide that making practical<br />
predictions is not even reasonable or possible. These gaps can often be narrowed by incrementally<br />
removing some of the simplifying assumptions, and studying the effects they have<br />
on the earlier analyses. Another gap reduction technique is to perform experimental studies<br />
on the models that are mathematically intractable, not unlike the computational techniques<br />
used to “solve” nonlinear systems of equations. And, finally, one can perform experimental<br />
analyses of the EAs themselves in ways that can be generalized to other situations.<br />
Consequently, as we survey the important theoretical results, we will perform some “gap<br />
analysis” as well. In the process we will obtain a better understanding of the current gaps<br />
that exist between EC theory and practice, and how they are being addressed.<br />
There are a wide range of analytical tools one might use to develop a theoretical framework<br />
for EC. The ones that have proved most useful historically are:<br />
• dynamical systems tools for characterizing EA population dynamics,<br />
• Markov process tools for analyzing the stochastic properties of EAs,<br />
• statistical mechanics tools for studying aggregate EA properties,<br />
• analysis of algorithm tools for assessing the computational complexity of EAs, and<br />
• mathematical tools for characterizing the optimization properties of EAs.<br />
The fact that there is more than one set of tools and techniques for EC analysis is a<br />
reflection of the fact that most theories are designed to capture specific properties and answer<br />
specific questions. For systems of any complexity it is seldom the case that there is<br />
a single “unified” theory capable of addressing all interesting issues at all levels of abstraction.<br />
Rather, our overall understanding of complex systems emerges from a collection of<br />
theoretical models that complement one another.<br />
In the case of EC theory, this collection of models falls into two broad categories:<br />
1) application-independent theories that focus on understanding EA dynamics, and 2)<br />
application-dependent theories that focus on understanding EA problem-solving properties.<br />
The remainder of this chapter explores each of these categories in more detail.