Project Description
Project using .NET Expression trees and genetic algorithm to resolve a function for a set of numbers.

The options are limited but simple:

GenerationSize, CrossoverRate and ManipulationRate are configuration values for the GA, leave them as default  if you're not familliar with GA.

GenomeLength can be seen as the complexity of the resulting function, the bigger the value, the complexer the resolved function will be. Note that this have to be an uneven value!

Inputset is a comma seperated list of numbers (supporting irrational numbers) of input data for which to resolve a function, This is translated to an array of input values for X where in the example below, 7 >> x(0), 15 >> x(1), 23 >> x(2) etc.

Support relative, when checked, will also result functions which have the same pattern, for example: X * 2 has the same pattern as X * 4


In the test client, only basic operators will be created (add, substract, multiply, divide, power and log) and limited operands (0 - 9, x and pie), however the code is highly extendible and extra operators (also unary) and operands can be registered.

Example use

Last edited Jan 10, 2011 at 10:00 PM by Polity, version 5