Failed Disruption Propagation in Integer Genetic Programming
We inject a random value into the evaluation of highly evolved deep integer GP trees 9743720 times and find 99.7percent Suggesting crossover and mutation's impact are dissipated and seldom propagate outside the program. Indeed only errors near the root node have impact and disruption falls exponentially with depth at between exp(-depth/3) and exp(-depth/5) for recursive Fibonacci GP trees, allowing five to seven levels of nesting between the runtime perturbation and an optimal test oracle for it to detect most errors. Information theory explains this locally flat fitness landscape is due to FDP. Overflow is not important and instead, integer GP, like deep symbolic regression floating point GP and software in general, is not fragile, is robust, is not chaotic and suffers little from Lorenz' butterfly. Keywords: genetic algorithms, genetic programming, SBSE, information loss, information funnels, entropy, evolvability, mutational robustness, optimal test oracle placement, neutral networks, software robustness, correctness attraction, diversity, software testing, theory of bloat, introns
READ FULL TEXT