This talk starts by covering a variety of practical applications,
with emphasis on those which some commercial enterprise actually
wants to use for some reason rather than ``demonstrator" systems.
There is a surprisingly wide variety of kinds of GA applications
in use; and whereas the theory of genetic and other evolutionary
algorithms very largely focusses on binary encodings and well-established
generic algorithms, practical applications usually employ non-binary
encodings and interesting hybrid algorithms, eg using local
search rather than random mutation. That raises the question,
why would you choose to use one if you can't prove much about
it? This leads in turn to some discussion of how you might set
about convincing yourself that it's going to work for you, and
some observations about parameter sensitivity and other surprises.
For example, we have a GA that works very well on large exam
and lecture timetabling problems that involve non-binary as
well as binary constraints, and it has been used in earnest
for some years ... but it turns out that it can fail on certain
very simple, solvable problems and yet work very reliably and
fast on much larger examples from the same class. Should this
worry you or not?