Which Genetic Programming software? A comparison

This table is intended to be a comprehensive list of evolutionary algorithm software frameworks that support some flavour of genetic programming. Each entry lists the language the framework is written in, which program representations it supports and whether the software still appears to be being actively developed or not.

If you know of any other genetic programming software that has been omitted from this list, then please leave a comment with details.

FrameworkLicenseLangTreeGECFG-GPCGPGEPActive?
AForge.NETLGPL.NET
BeagleLGPLC++
DEAPLGPLPython
DGPFLGPLJava
DRPGPLRuby
DiscipulusCommercial
ECF?C++
ECJAFLJava
EOLGPLC++?????
EpochXLGPLJava
ep4jsApacheJScript
Eva2LGPLJava
EvogenMITFlex?????
GAlibas specifiedC++
GenetikLGPLJava
GenProApacheJava?
GEVAGPLJava?
GPC++GPLC++?
GPaltaGPLJava?
GPEAFL.NET?????
GPLAB?MATLAB?
GPTIPSGPLMATLAB
GroovyGPLJava?
JAGAGPLJava
Java GAlib?Java?????
JCLECGPLJava???
JEFLGPLJava????
JGAPLGPL/MPLJava?
jGEGPLJava?
JRGPGPLJava
lil-GP?C?
LAGEPGPLC++?
MicroGPGPLC++
PerlGPGPLPerl?
PMDGPGPLC++?
PonyGEGPLPython
PushGP?C++?
PySTEPMITPython?
PyevolvePSFPython
Pyro?Python?????
RMIT GP?C++?
SmallGPGPLC++
TinyGP?Java
WatchmakerApacheJava

The program representations that are listed are: tree (standard tree GP as described by Koza, including STGP), GE (Grammatical Evolution), CFG-GP (Whigham‘s Context-Free Grammar GP), CGP (Julian Miller’s Cartesian GP) and GEP (Gene-expression Programming). Other unlisted representations may also be supported by the listed software.

A framework is considered to be active still if it has had a release within the past 9 months. If its commit history is visible then it will only be considered active if there have been commits within the past 6 months.

Tagged with: , , , ,
Posted in Genetic Programming
10 comments on “Which Genetic Programming software? A comparison
  1. Michael Cox says:

    Do you think there is a commercial opportunity for EpocX or is it more of an academic area at the moment?

    • Tom Castle says:

      @Michael – EpochX is released under an LGPL license so it can be used within commercial applications, but its primary purpose is for research. A purely commercial GP framework would probably put a little more emphasis on speed and less on extensibility and run statistics.

  2. Just some info: Pyevolve uses the standard Tree GP, but is different in the sense that this tree is compiled to Python bytecode before evaluate the entire fitness points. The license is PSF, the same as Python and is GPL compatible.

  3. Dominic Searson says:

    GPTIPS is released under the GPL license. It’s still actively being developed, albeit slowly….

  4. Please consider adding GERET (MIT-licensed framework in Ruby, supporting only GE) to your list.

  5. I just stumbled upon your list. Could you also add HeuristicLab (http://dev.heuristiclab.com)? It’s very actively developed, written in C#, licensed under GNU GPL and provides tree-based GP for symbolic regression, symbolic classification and time series.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">