Genetic code improvement systems (GI) start from an existing piece
of program code and search for alternative versions with better
performance according to a metric of interest. The search space
of source code is a large, rough fitness landscape which can be ex-
tremely difficult to navigate. Most approaches to enhancing search
capability in this domain involve either novelty search, where low-
fitness areas are remembered and avoided, or formal analysis which
attempts to find high-utility parameterizations for the GI process.
In this paper we propose the use of phylogenetic analysis over ge-
netic history to understand how different mutations and crossovers
affect the fitness of a population over time for a particular problem;
we use the results of that analysis to tune a GI process during its
operation to enhance its ability to locate better program candidates.
Using phylogenetic analysis on 600 runs of a genetic improver
targeting a hash function, we demonstrate how the results of this
analysis yield tuned mutation types over the course of a GI process
(dynamically and continually set according to individual’s ances-
tors’ ranks within the population) to give hash functions with over
20% improved fitness compared to a baseline GI process.