Adaptive fitness functions for dynamic growing/pruning of program trees