/* This is code for a stady state genetic programming system. It is a demo of the rtree package as well as studying a problem in simple functional morphing. */ #include #include #include #include #include #include #include "rtree.h" //global defines and variables /* population size */ #define popsize 100 /* number of runs to do */ #define runs 20 /* number of mating events per run */ #define mevs 20000 /* initial and maximum tree size */ #define its 12 #define mts 36 /* file name for results */ #define renm "results.dat" node *pop[popsize]; //the population double fit[popsize]; //the fitness values (sum squared error to be minimized node *best; //tracking variable for best so far double bestfit; //and fr best value so far void initialize(); //set all the rtree controlls to appropriate values void initpop(); //create a random population void delpop(); //delete a population double findfit(node *t); //compute the fitness of a parse tree void mate(); main(){ int mev,run; //loop indices fstream aus; //output file aus.open(renm,ios::out); initialize(); for(run=0;run