wiki:Features/Genetic Programming

Version 2 (modified by gkronber, 11 years ago) (diff)


Genetic Programming with HeuristicLab

Samples for Genetic Programming

HeuristicLab supports tree-based (Koza-style) genetic programming. This classical form of genetic programming uses a tree-based representation of solution candidates. The data types and operators to work with tree-bsaed solution candidates are implemented in the plugin HeuristicLab.Encodings.SymbolicExpressionTree.

Supported operators (in 3.3.6):

  • Full tree creator
  • Grow tree creator
  • Ramped-half-half tree creator
  • Probabilistic tree creator (PTC)
  • Subtree crossover
  • Change node type manipulator (single point mutation, symbols)
  • Replace branch manipulator (removes a branch and replaces it with a randomly initialized branch)
  • One-point shaker (single point mutation, only parameters)
  • Full-tree shaker (uniform mutation, only parameters)

The symbolic expression tree encoding contains the implementation of the problem independent data structure (a tree of symbols) and operators. Based on the encoding we implemented three well-known GP problems.

Supported Problems (in 3.3.6):

  • Symbolic regression (HeuristicLab.Problems.DataAnalysis.Symbolic.Regression)
  • Symbolic classification (HeuristicLab.Problems.DataAnalysis.Symbolic.Classification)
  • Artificial Ant problem (HeuristicLab.Problems.ArtificialAnt)

Samples for all three of these problems are available on the Start page in HeuristicLab. Additional samples are available here:

Attachments (3)

Download all attachments as: .zip