Improving Genetic Programming with Behavioral Consistency Measure

Program synthesis tasks usually specify only the desired output of a program and do not state any expectations about its internal behavior. The intermediate execution states reached by a running program can be nonetheless deemed as more or less preferred according to their information content with respect to the desired output. In this paper, a consistency measure is proposed that implements this observation. When used as an additional search objective in a typical genetic programming setting, this measure improves the success rate on a suite of 35 benchmarks in a statistically significant way.