2.7 Empirically identifying or using schemata in GP
2.7.1 Using Schemata to improve or analyze GP
As early as 1994, O’Reilly et al. [71] were defining building block functions as explicit schemata in GP evolutions. The goal was to answer questions surrounding the BBH in GP. While this working report defines the struc- ture of a building block function, it reaches no conclusions of the BBH by their use.
Some other early work in the area includes Rosca’s extraction of the values of important terms in his schema theorem from actual popula- tions [101] and analysis of several run statistics by looking at rooted-tree- fragments during evolution [108]. While Rosca used a large population size, each experiment either analyzed the best-in-run individual in detail or presented a more basic statistic, such as average fragment size, over the whole population. Rosca concluded that the rooted-tree schema was a powerful analysis technique and presents insight into the mechanisms of GP at work.
In 1997, Poli and Langdon [84] performed empirical experiments, track- ing creation and transmission of all hyperschemata in populations of Boolean programs. The paper put constraints on the scale of the GP system: pro- grams could not exceed three or four nodes deep, the population was set at fifty programs and only crossover and reproduction were used. As ex- pected, crossover was found to be innovative and destructive by counter- acting reproduction and maintaining diversity in the population.
Angeline [5] performed analysis comparing various forms of GP crossover, concentrating on their effect on the schemata in the programs of the pop- ulation. The paper concluded that crossover could be described more as a population-limited macro-mutation operator than as an engine for com- posing building blocks.
Veraria et al. [121] presented empirical analysis of the subtree schemata introduced by Koza [41]. The research analyzed the effects of selective crossover on the schemata in the population, using the royal road task. The paper concluded, through the use of schemata in the analysis, that the new form of crossover has no positional bias.
Langdon and Banzhaf [48] presented an analysis of schema repetition in best-of-run genetic programs from evolutions on two benchmark prob- lems. They found that the solution programs contained large repeated patterns and suggested that these patterns were both larger and fitter on the whole problem than the classic concept of GA building-blocks.
2.7. EMPIRICALLY IDENTIFYING OR USING SCHEMATA IN GP 37 Wilson and Heywood [128] built on work by Langdon and Banzhaf in [49], analyzing repeated blocks of instructions in linear genetic pro- grams. Experimental results suggested the existence of re-usable mod- ules or building blocks in the population. While this research was directly looking for schemata in the population, it constrained the form of those schemata to contiguous blocks of nodes.
Majeed [56, 58] defined a schema as a subtree of a set maximum depth. All such schema that occurred in at least half of the population in the last generation of evolution were found. The paper analyzed the schema for one hundred runs of a evolution on a symbolic regression problem. While no firm conclusions were reached, the paper noted that the fitness of a schema in one run seemed independent of the fitness of the same schema in other runs.
Wong and Zhang [130, 131] empirically analyzed the schemata in GP evolutions for a very simple form of schema: numerical nodes. The re- search analyzed the effects of program simplification on schema disrup- tion by tracking each schema as it is passed from parent to child during evolution. It concluded that the simplification both disrupted existing schemata and created new schemata. Wong and Zhang also concluded that further research needed to verify the results using a more general and more complex form of schema than the one used. Building on this research, Kinzett, Johnston and Zhang [37, 38] analyzed the effect of pro- gram simplification on the survival of schemata in GP evolutions. The schemata analyzed were subtrees clipped to depth two or three and at each generation, the inclusion of every possible such building block in the pop- ulation was presented graphically. Kinzett and Zhang concluded that this research confirmed the earlier conclusions of Wong and Zhang, and that while program simplification disrupts building blocks, it also constructs new building blocks. Further work [39] on a similar vein concluded that while program simplification reduced the diversity of the population this did not lead to worse accuracy at the classification task.
McPhee et al. [61, 62] empirically analyzed rooted-tree-fragments in GP, by looking at their semantic contexts. A semantic context for a fragment was termed fixed if all parameters to the fragment were introns (that is, have no effect on the evaluated result of the program) and compatible if the fragment and a target fragment could match by setting their respective parameters correctly. Two run statistics were measured: the percentage of fixed contexts and the percentage of compatible contexts. Each value was an average over every fragment in any program. A Boolean task with a limit of one don’t-care node per context, was used in order to limit the complexity of the analysis. The research concluded that for this task the majority of crossover events performed no useful search since the context they affected was fixed.
McKay et al. [60] analyzed building blocks in GP using compression on each generation’s population. Further work by McKay et al. [59] also looked at the flow of building blocks from one generation to the next. While neither paper reached firm conclusions to do with GP, both found the compression technique to be powerful in the analysis of building blocks.
Tanji and Iba [117] presented Program Optimization by Random Tree Sam- pling (PORTS) as a system for preserving tree-fragments in evolution, based on the fragments’ differential fitnesses. The paper concluded that while competitive in performance with standard GP, PORTS is more able to pre- serve tree-fragments.
We have also contributed to the literature with papers leading to this thesis [113, 114].