What is EO? |
EO is a templates-based, ANSI-C++ compliant evolutionary computation library. It contains classes for almost any kind of evolutionary computation you might come up to - at least for the ones we could think of. It is component-based, so that if you don't find the class you need in it, it is very easy to subclass existing abstract or concrete classes. EO was started by the Geneura Team at the University of Granada, headed by Juan Julián Merelo. The developement team has then been reinforced by Maarten Keijzer (the C++ wizard), and Marc Schoenauer. Later came Jeroen Eggermont, who, among other things, did a lot of work on GP, INRIA Dolphin Team, Olivier König, who did a lot of useful additions and cleaning of the code and Jochen Küpper, working on infrastructure maintenance. |
Platforms |
EO should work on Windows and any Un*x-like operating system with a standard-conforming C++ development system. Recent versions of EO have been tested on the following platforms:
If you have tested EO on a system not listed here, please let us know. If you are working on a system with an older C++ compiler there is a good chance that eo-0.9.3z.1 works. It is tested on Linux with gcc-2.9x and several systems (IRIX, Solaris) with egcs. |
Documentation |
The tutorial demonstrates that writing an evolutionary algorithm evolving your own structures is now easy, using ready-to-use template files. The tutorial is included in the source tree at eo/tutorial/. The complete code is also well documented and you can generate the
API documentation locally with The easiest way to create a complete new EO-project, even for new genomes, is to use the script provided in tutorial/Templates/; see the README in that directory and lesson 5 of the tutorial for detail. |
Presentations |
A functional and "philosophical" overview of EO was presented at EA'01 conference.
You can find the paper ( You can also look a the list of publications that used EO to solve real problems. |
Download |
EO is now part of ParadisEO.
You can obtain the latest version via Git:
Releases can be obtained from the GitHub releases page. |
Mailing Lists |
For questions, bug reports, or contributions, please use the GitHub issue tracker or the Matrix chatroom. |
EO@sourceforge |
EO is now developed as part of ParadisEO on GitHub: |
License |
EO is distributed under the GNU Lesser General Public License |
Related Apps |
ParadisEO provides EO extensions for the flexible design of single solution-based metaheuristics, metaheuristics for multi objective optimization as well as hybrid, parallel and distributed metaheuristics. |
Links |
|
Please report issues on the GitHub issue tracker.