Tutorial main
page
-
Algorithm-Based - Component-Based
- Programming hints - EO
documentation
EO - The Algorithm-Based approach
Congratulations - You have chosen the algorithm-based approach!
This means that you want to start from something that already works, and
gradually learn about the more complex constructs. We have prepared a series
of "lessons" for you.
-
Lesson 1 - a gentle introduction to the EO
way: your first steps into EO representations
using a simple generational GA. Please, spend
the necessary time on that one, since all basic constructs presented
there are used throughout EO.
-
Lesson 2 - encapsulate,
encapsulate, and try more sophisticated selection/replacement
mechanisms, as well as multiple operators
-
Lesson 3 - The same algorithms, but with improved
input/outputs: user-friendly input (i.e. without
the need to recompile!) of algorithm parameters,
and checkpointing (display
of on-line statistics, save
and
restore
populations,
restart stopped runs,
...).
-
Lesson 4 - The same algorithms - again! -
but now fully operational: every component
of the algorithm can be defined on the command-line,
except the type of genotype; moreover, you now have a full library, i.e.
everything except your fitness function is already
compiled.
-
Lesson 5
- Use your own representation. Thanks
to template files and a little script in Unix,
or the Application template in MSVC++, you
can easily define a new genotype and run an Evolutionary Algorithm that
will intantly benefit from the power of all EO
Evolution Engines (including easy user-parameter
input presented in Lesson 4). You simply need to gradually fill
in the shell-files that the script will generate for you.
Current version (May. 5, 2002) stops here, but ...
From there on, you don't need to follow the lesson order any more: you
can go directly to any lesson and experiment. Of course, you will need
to bring together the different pieces to write exactly what you want -
but only because we had no idea of what you exactly want :-)
-
Lesson 6 (forthcoming) - More about checkpointing:
write your first adaptive mechanism,
and find out how easy it is to update
and monitor dynamic
parameters
-
Lesson 7 - More general operators:
e.g. binary, n-ary, or even specific mate selection (your brain and my
beauty)! Add your own to the basic algorithm using the template files.
-
Lesson 8 - Use predefined generic representations.
The eoFixedLength and eoVariableLength
super classes allow quick definition of new genotypes that handle identical
Atoms, together with generic variation operators.
Of course, in each lesson, you have links to the corresponding Component-Based
page. ( ... Well, to tell you the truth, as of today, this is not exactly
true :-)
Tutorial main page - Algorithm-Based
- Component-Based - Programming
hints - EO
documentation
Marc Schoenauer
Last modified: Tue Dec 19
2000