Genetic Programing Engine


Delphi / Kylix / C++ Builder

Genetic programming is an automated method for creating a working computer program from a high-level problem statement of a problem. Genetic programming does this by genetically breeding a population of computer programs using the principles of Darwinian natural selection and biologically inspired operations.

TGPopulation is a Delphi component (working with Kylix and C++ Builder as well) that provides developers with the capability to implement genetic programming applications.
TGPopulation implements all the functions of a genetic programming engine (the part of a GP implementation that does al the genetic 'magic'). All that developers have to do is to:
  1. Define the problem alphabet and pass it to the TGPopulation
  2. Implement  their own fitness evaluation  function, and call it for each individual on  the OnIndEval event
  3. Set the initial genetic parameters (# of individuals in a population, number of generations to go, preponderence of functions in the initial poulation, stop conditon, etc)
  4. Start the evolution using the TGPopulation.Execute method.

A brief description of each method, property and event is given in the GPdoc.html file included with the sources.
A demo application is provided (Delphi and Kylix version) , that should help you getting started.

The source code is provided under the LGPL license. You can use it in your applications, but you can't sell the component ( with or without code modifications).
The component should work with all Delphi / C++ Builder and Kylix versions. Go Borland ! :)

The project page with latest info and downloads is at:

For help or to join the project you can reach me at:   e.adi.andrei [at]

© Adi Andrei     1997-2006