A generic C++ framework for evolutionary computation

View the Project on GitHub chgagne/beagle


Open BEAGLE is a C++ Evolutionary Computation (EC) framework. It provides an high-level software environment to do any kind of EC, with support for tree-based genetic programming; bit string, integer-valued vector, and real-valued vector genetic algorithms; and evolution strategy.

The Open BEAGLE architecture follows strong principles of object oriented programming, where abstractions are represented by loosely coupled objects and where it is common and easy to reuse code. Open BEAGLE is designed to provide an EC environment that is generic, user friendly, portable, efficient, robust, elegant, and free.


General features

Specific representations and algorithms


The current stable version is 3.0.3, released on November 29, 2007. See the Open BEAGLE Compilation HOWTO for building instructions.

The current development version is 4.0.0-alpha2, released on February 18, 2010.

With version 4.x, build system has been changed for CMake, which provide a more elegant and portable building environment than the autotools. You also need to install PACC version 1.4.1 beforehand, as it is no more included with the source distribution.


Mailing lists

The Open BEAGLE Users List is intended to announce new releases, to ask questions of the framework, and to discuss on the future developments. It is highly suggested to join it, or at least to consult it frequently, if you are interested by the framework. Moreover, if you have problems with the framework, first consult this list to see if any previous discussions can help you, then ask a question on the users list if you still cannot solve it.

The mailing list on Yahoogroups had been replaced by the users list on Google Groups, and so is no more in use. However, it consists in a very complete knowledge base that you can consult.

The Open BEAGLE Developers List is intended to users interested in contributing to the framework developments. It is more technically oriented and generally has a higher traffic than the users list, with all commits and issues. It also presents the new features added to the bleeding edge version of the framework, available in the Mercurial repository.

Other libraries


This is free software which we are proud to provide to the community. If you are using Open BEAGLE in your work or studies, and you are gaining some knowledge of it, please consider making your share for improving it. We are always open to get your contribution on the code or the documentation.


If you are publishing scientific papers on work using Open BEAGLE please cite the following reference.

Christian Gagné and Marc Parizeau, Genericity in Evolutionary Computation Software Tools: Principles and Case Study, International Journal on Artificial Intelligence Tools, vol. 15, num. 2, p. 173-194, 2006.

    author    = { Christian Gagn\'e and Marc Parizeau },
    title     = { Genericity in Evolutionary Computation
                  Software Tools: Principles and Case Study },
    volume    = { 15 },
    number    = { 2 },
    pages     = { 173-194 },
    year      = { 2006 },
    journal   = { International Journal on Artificial
                  Intelligence Tools },


Copyright © 1999-2015 by Christian Gagné and Marc Parizeau, with the contributions of many collaborators.

This library is free software; you can redistribute it and/or modify it under the terms of the version 3 of the GNU Lesser General Public License as published by the Free Software Foundation.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.