In genetic programming, a search algorithm is expected to produce a program that achieves the desired final computation state (desired output). To reach that state, an executing program needs to traverse certain intermediate computation states. An evolutionary search process is expected to autonomously discover such states. This can be difficult for nontrivial tasks that require long programs to be solved. The semantic backpropagation algorithm proposed in this paper heuristically inverts the execution of evolving programs to determine the desired intermediate computation states. Two search operators, Random Desired Operator and Approximately Geometric Semantic Crossover, use the intermediate states determined by semantic backpropagation to define subtasks of the original programming task, which are then solved using an exhaustive search. The operators outperform the standard genetic search operators and other semantic-aware operators when compared on a suite of symbolic regression and Boolean benchmarks. This result and additional analysis conducted in this study indicate that semantic backpropagation helps evolution at identifying the desired intermediate computation states, and makes the search process more efficient.

`@ARTICLE { KrawiecPawlakWielochTEVC14,`

AUTHOR = { Pawlak, Tomasz P. and Wieloch, Bartosz and Krawiec, Krzysztof },

JOURNAL = { IEEE Transactions on Evolutionary Computation },

TITLE = { Semantic Backpropagation for Designing Search Operators in Genetic Programming },

YEAR = { 2015 },

MONTH = { June },

VOLUME = { 19 },

NUMBER = { 3 },

PAGES = { 326-340 },

KEYWORDS = { Boolean algebra;backpropagation;genetic algorithms;geometric programming;mathematical operators;regression analysis;search problems;Boolean benchmarks;evolutionary search process;exhaustive search algorithm;genetic programming;geometric semantic crossover;program synthesis;random desired operator;semantic backpropagation algorithm;semantic-aware operators;standard genetic search operators;symbolic regression;Algorithm design and analysis;Backpropagation;Context;Genetic programming;Programming;Semantics;Vectors;Geometric crossover;mutation;problem decomposition;program synthesis;reversible computing;semantics },

ABSTRACT = { In genetic programming, a search algorithm is expected to produce a program that achieves the desired final computation state (desired output). To reach that state, an executing program needs to traverse certain intermediate computation states. An evolutionary search process is expected to autonomously discover such states. This can be difficult for nontrivial tasks that require long programs to be solved. The semantic backpropagation algorithm proposed in this paper heuristically inverts the execution of evolving programs to determine the desired intermediate computation states. Two search operators, Random Desired Operator and Approximately Geometric Semantic Crossover, use the intermediate states determined by semantic backpropagation to define subtasks of the original programming task, which are then solved using an exhaustive search. The operators outperform the standard genetic search operators and other semantic-aware operators when compared on a suite of symbolic regression and Boolean benchmarks. This result and additional analysis conducted in this study indicate that semantic backpropagation helps evolution at identifying the desired intermediate computation states, and makes the search process more efficient. },

DOI = { 10.1109/TEVC.2014.2321259 },

URL = { http://www.cs.put.poznan.pl/kkrawiec/pubs/TEVC2321259.pdf },

ISSN = { 1089-778X },

}