An Introduction to Genetic Algorithms - Boente
An Introduction to Genetic Algorithms - Boente
An Introduction to Genetic Algorithms - Boente
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
prone <strong>to</strong> rather arbitrary orderings.<br />
Many−Character and Real−Valued Encodings<br />
For many applications, it is most natural <strong>to</strong> use an alphabet of many characters or real numbers <strong>to</strong> form<br />
chromosomes. Examples include Kitano's many−character representation for graph−generation grammars,<br />
Meyer and Packard's real−valued representation for condition sets, Montana and Davis's real−valued<br />
representation for neural−network weights, and Schultz−Kremer's real−valued representation for <strong>to</strong>rsion<br />
angles in proteins.<br />
Holland's schema−counting argument seems <strong>to</strong> imply that GAs should exhibit worse performance on<br />
multiple−character encodings than on binary encodings. However, this has been questioned by some (see,<br />
e.g., <strong>An</strong><strong>to</strong>nisse 1989). Several empirical comparisons between binary encodings and multiple−character or<br />
real−valued encodings have shown better performance for the latter (see, e.g., Janikow and Michalewicz<br />
1991; Wright 1991). But the performance depends very much on the problem and the details of the GA being<br />
used, and at present there are no rigorous guidelines for predicting which encoding will work best.<br />
Tree Encodings<br />
Chapter 4: Theoretical Foundations of <strong>Genetic</strong> <strong>Algorithms</strong><br />
Tree encoding schemes, such as John Koza's scheme for representing computer programs, have several<br />
advantages, including the fact that they allow the search space <strong>to</strong> be open−ended (in principle, any size tree<br />
could be formed via crossover and mutation). This open−endedness also leads <strong>to</strong> some potential pitfalls. The<br />
trees can grow large in uncontrolled ways, preventing the formation of more structured, hierarchical candidate<br />
solutions. (Koza's (1992, 1994) "au<strong>to</strong>matic definition of functions" is one way in which GP can be encouraged<br />
<strong>to</strong> design hierarchically structured programs.) Also, the resulting trees, being large, can be very difficult <strong>to</strong><br />
understand and <strong>to</strong> simplify. Systematic experiments evaluating the usefulness of tree encodings and<br />
comparing them with other encodings are only just beginning in the genetic programming community.<br />
Likewise, as yet there are only very nascent attempts at extending GA theory <strong>to</strong> tree encodings (see, e.g.,<br />
Tackett 1994; O'Reilly and Oppacher 1995).<br />
These are only the most common encodings; a survey of the GA literature will turn up experiments on several<br />
others.<br />
How is one <strong>to</strong> decide on the correct encoding for one's problem? Lawrence Davis, a researcher with much<br />
experience applying GAs <strong>to</strong> realworld problems, strongly advocates using whatever encoding is the most<br />
natural for your problem, and then devising a GA that can use that encoding (Davis 1991). Until the theory of<br />
GAs and encodings is better formulated, this might be the best philosophy; as can be seen from the examples<br />
presented in this book, most research is currently done by guessing at an appropriate encoding and then trying<br />
out a particular version of the GA on it. This is not much different from other areas of machine learning; for<br />
example, encoding a learning problem for a neural net is typically done by trial and error.<br />
One appealing idea is <strong>to</strong> have the encoding itself adapt so that the GA can make better use of it.<br />
5.3 ADAPTING THE ENCODING<br />
Choosing a fixed encoding ahead of time presents a paradox <strong>to</strong> the potential GA user: for any problem that is<br />
hard enough that one would want <strong>to</strong> use a GA, one doesn't know enough about the problem ahead of time <strong>to</strong><br />
118