Submit a comment to an "Available C++ Libraries FAQ" entry
Libraries available to download (D-L)
EO - Evolutionary computation library
EO (Evolvable|Evolutionary objects) is a C++ toolbox for evolutionary computation
which defines interfaces for many classes of algorithms used in evolutionary
computation, and, at the same time, provides some examples that use those
interfaces. The client/user can include those objects in his or her programs, or
create their own. If new objects are created, the GeNeura team commit themselves to
test them, and make them available to the Evolutionary Computation community. In
this way, no changes have to be made to the library design or to a program that
implements an EC algorithm: just new classes added. Our intention would be that, in
the future, somebody implementing an EC algorithm would say "I am using EO, plus a
class that hs been made publicly available", improving repeatability of EC results
and easing its availability.
It contains classes for any kind of evolutionary computation
you might come up to, except maybe genetic programming. Here are its
Chromosomes: Can be defined by the user; binary, floating point and
string are provided. All algorithms defined work on all kind of
Genetic operators: Can be defined by the user. Several floating
point, bitstring, and generic operators are defined, like mutation,
crossover, and things like that.
Selection/elimination procedure: Can be defined by the
user. Steady-State and rank-based are provided.
Reproduction procedure: Can be user defined (I'll skip that from now
on, but everything can be user-defined). Random and rank-based are
Termination conditions: (user-definable) fitness and generation-based.
Algorithms: Easy Ga, SimpleGA and simulated annealing with
user-definable cooling schedule.
Some utilities: command-line parsing, random-number generations
Examples: examples that test all features, plus genetic mastermind.
User interface: an example that uses gtk is provided
Documentation in html.
New releases are made almost every day. Check at the site. Probably,
cvs access will be provided in the future.
Licensing : Copyrighted freeware
Do not expect an immediate response - the contents of this form
will be added to a queue, which I process manually
about once a week. If you don't fill in
your email address correctly, you will not (obviously) get any reply at
all. Other invalid information may result in a mailed request for
Enter your comment in the areas provided below. Be sure to
include your name and email address.
Please don't bother trying to post spam or links to dodgy web sites - everything
you post here is reviewed by a human being before being released for public