/* Regression problem # From John Koza's Lisp implementation ftp://cs.ucl.ac.uk/genetic/ftp.io.com/code/koza-book-gp-implementation.lisp The solutions should be: (* 0.5 x x) OK, that's an easy one. code = (X * (X / 2)) = [[[0.0],0.0],[[0.1],0.0050000004],[[0.2],0.020000001],[[0.3],0.045],[[0.4],0.080000006],[[0.5],0.125],[[0.6],0.18],[[0.7],0.24499999],[[0.8],0.32000002],[[0.9],0.40499997]] = [[1.0] = 0.5] code = ((X * X) / 2) = [[[0.0],0.0],[[0.1],0.0050000004],[[0.2],0.020000001],[[0.3],0.045],[[0.4],0.080000006],[[0.5],0.125],[[0.6],0.18],[[0.7],0.24499999],[[0.8],0.32000002],[[0.9],0.40499997]] = [[1.0] = 0.5] code = ((X ** 2) / 2) = [[[0.0],0.0],[[0.1],0.0050000004],[[0.2],0.020000001],[[0.3],0.045],[[0.4],0.08000 Cf http://hakank.org/jgap/regression_koza.conf */ data(regression_koza,Data,Vars,Unknown,Ops,Constants,MaxC) :- Data = [ [[0.0],0.0], [[0.1],0.0050000004], [[0.2],0.020000001], [[0.3],0.045], [[0.4],0.080000006], [[0.5],0.125], [[0.6],0.18], [[0.7],0.24499999], [[0.8],0.32000002], [[0.9],0.40499997] ], println(data=Data), get_global_map().put("use_approx",0.01), Vars = ["X"], Unknown = [1.0], println(data=Data), Ops = new_map([infix=["+","-","*","/","**"]]), Constants = 0..10, MaxC = 3.