A Relaxed Approach to Simplification in Genetic Programming

We propose a novel approach to program simplification in tree-based Genetic Programming, based upon numerical relaxations of algebraic rules. We also separate proposal of simplifications from an acceptance criterion that checks the effect of proposed simplifications on the evaluation of training examples, looking several levels up the tree. We test our simplification method on three classification datasets and conclude that the success of linear regression is dataset dependent, that looking further up the tree can catch ineffective simplifications, and that CPU time can be significantly reduced while maintaining classification accuracy on unseen examples.

[1]  Riccardo Poli,et al.  A Simple but Theoretically-Motivated Method to Control Bloat in Genetic Programming , 2003, EuroGP.

[2]  John R. Koza,et al.  Genetic programming - on the programming of computers by means of natural selection , 1993, Complex adaptive systems.

[3]  Peter Nordin,et al.  Complexity Compression and Evolution , 1995, ICGA.

[4]  Sean Luke,et al.  Lexicographic Parsimony Pressure , 2002, GECCO.

[5]  Olga Štěpánková,et al.  Advanced Topics in Artificial Intelligence , 1992, Lecture Notes in Computer Science.

[6]  N. McPhee,et al.  The Effects of Size and Depth Limits on Tree Based Genetic Programming , 2006 .

[7]  John R. Koza,et al.  Genetic Programming II , 1992 .

[8]  Terence Soule,et al.  An Analysis of the Causes of Code Growth in Genetic Programming , 2002, Genetic Programming and Evolvable Machines.

[9]  Mengjie Zhang,et al.  Online Program Simplification in Genetic Programming , 2006, SEAL.

[10]  Mengjie Zhang,et al.  Bloat control in genetic programming by evaluating contribution of nodes , 2009, GECCO.

[11]  Riccardo Poli,et al.  Operator Equalisation and Bloat Free GP , 2008, EuroGP.

[12]  Riccardo Leardi,et al.  PARVUS: An Extendable Package of Programs for Data Exploration , 1988 .

[13]  Mark Johnston,et al.  Using Numerical Simplification to Control Bloat in Genetic Programming , 2008, SEAL.

[14]  Byoung-Tak Zhang,et al.  Balancing Accuracy and Parsimony in Genetic Programming , 1995, Evolutionary Computation.

[15]  Nicholas S. Flann,et al.  Improving the accuracy and robustness of genetic programming through expression simplification , 1996 .

[16]  Matthew J. Streeter,et al.  The Root Causes of Code Growth in Genetic Programming , 2003, EuroGP.

[17]  Mengjie Zhang,et al.  Algebraic simplification of GP programs during evolution , 2006, GECCO.

[18]  Victor Ciesielski,et al.  Genetic Programming for Multiple Class Object Detection , 1999, Australian Joint Conference on Artificial Intelligence.

[19]  Terence Soule,et al.  Code growth in genetic programming , 1996 .

[20]  Rick L. Riolo,et al.  Genetic Programming Theory and Practice XIX , 2008, Genetic and Evolutionary Computation.

[21]  Riccardo Poli,et al.  Crossover, Sampling, Bloat and the Harmful Effects of Size Limits , 2008, EuroGP.