{'fraction_non_alphanumeric': 0.015822784810126583, 'fraction_numerical': 0.0, 'mean_word_length': 5.081730769230769, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Abstract functions and lifetime learning in genetic programming for symbolic regression

Typically, an individual in Genetic Programming (GP) can not make the most of its genetic inheritance. Once it is mapped, its fitness is immediately evaluated and it survives only until the genetic operators and its competitors eliminate it. Thus, the key to survival is to be born strong.
 This paper proposes a simple alternative to this powerlessness by allowing an individual to tune its internal nodes and going through several evaluations before it has to compete with other individuals.
 We demonstrate that this system, Chameleon, outperforms standard GP over a selection of symbolic regression type problems on both training and test sets; that the system works harmoniously with two other well known extensions to GP, that is, linear scaling and a diversity promoting tournament selection method; that it can benefit dramatically from a simple cache; that adding to functions set does not always add to the tuning expense; and that tuning alone can be enough to promote smaller trees in the population. Finally, we touch upon the consequences of ignoring the effects of complexity when focusing on just the tree sizes to induce parsimony pressure in GP populations.