abstract = "Graphs are a ubiquitous data structure in computer
science and can be used to represent solutions to
difficult problems in many distinct domains. This
motivates the use of Evolutionary Algorithms to search
over graphs and efficiently find approximate solutions.
However, existing techniques often represent and
manipulate graphs in an ad-hoc manner. In contrast,
rule-based graph programming offers a formal mechanism
for describing relations over graphs. This thesis
proposes the use of rule-based graph programming for
representing and implementing genetic operators over
graphs. We present the Evolutionary Algorithm Evolving
Graphs by Graph Programming and a number of its
extensions which are capable of learning stateful and
stateless digital circuits, symbolic expressions and
Artificial Neural Networks. We demonstrate that
rule-based graph programming may be used to implement
new and effective constraint-respecting mutation
operators and show that these operators may strictly
generalise others found in the literature. Through our
proposal of Semantic Neutral Drift, we accelerate the
search process by building plateaus into the fitness
landscape using domain knowledge of equivalence. We
also present Horizontal Gene Transfer, a mechanism
whereby graphs may be passively recombined without
disrupting their fitness. Through rigorous evaluation
and analysis of over 20,000 independent executions of
Evolutionary Algorithms, we establish numerous benefits
of our approach. We find that on many problems,
Evolving Graphs by Graph Programming and its variants
may significantly outperform other approaches from the
literature. Additionally, our empirical results provide
further evidence that neutral drift aids the efficiency
of evolutionary search.",