Page 5 - 49A Field Guide to Genetic Programming
P. 5
What’s in this book
The book is divided up into four parts.
Part I covers the basics of genetic programming (GP). This starts with a
gentle introduction which describes how a population of programs is stored
in the computer so that they can evolve with time. We explain how programs
are represented, how random programs are initially created, and how GP
creates a new generation by mutating the better existing programs or com-
bining pairs of good parent programs to produce offspring programs. This
is followed by a simple explanation of how to apply GP and an illustrative
example of using GP.
In Part II, we describe a variety of alternative representations for pro-
grams and some advanced GP techniques. These include: the evolution of
machine-code and parallel programs, the use of grammars and probability
distributions for the generation of programs, variants of GP which allow the
solution of problems with multiple objectives, many speed-up techniques
and some useful theoretical tools.
Part III provides valuable information for anyone interested in using GP
in practical applications. To illustrate genetic programming’s scope, this
part contains a review of many real-world applications of GP. These in-
clude: curve fitting, data modelling, symbolic regression, image analysis,
signal processing, financial trading, time series prediction, economic mod-
elling, industrial process control, medicine, biology, bioinformatics, hyper-
heuristics, artistic applications, computer games, entertainment, compres-
sion and human-competitive results. This is followed by a series of recom-
mendations and suggestions to obtain the most from a GP system. We then
provide some conclusions.
Part IV completes the book. In addition to a bibliography and an index,
this part includes two appendices that provide many pointers to resources,
further reading and a simple GP implementation in Java.