Prescriptive formalism for constructing domain-specific evolutionary algorithms

It has been widely recognised in the computational intelligence and machine learning communities that the key to understanding the behaviour of learning algorithms is to understand what representation is employed to capture and manipulate knowledge acquired during the learning process. However, traditional evolutionary algorithms have tended to employ a fixed representation space (binary strings), in order to allow the use of standardised genetic operators. This approach leads to complications for many problem domains, as it forces a somewhat artificial mapping between the problem variables and the canonical binary representation, especially when there are dependencies between problem variables (e.g. problems naturally defined over permutations). This often obscures the relationship between genetic structure and problem features, making it difficult to understand the actions of the standard genetic operators with reference to problem-specific structures. This thesis instead advocates making the representation of solutions the explicit focus, in order to highlight the way in which the genetic operators (and resulting search algorithms) form and test hypotheses about the relationship between observed problem structure and fitness. It is clear that any search algorithm must limit the class of hypotheses which it is able to learn (its bias), if it is to select the most accurate of those hypotheses efficiently. We demonstrate this in the context of evolutionary search by exploring the so-called "no free lunch" results, and argue that it is the chosen representation which determines what kinds of hypotheses can be formed and tested by the algorithm. To do this, we exploit a general formalism for generating a representation for an arbitrary instance of a given problem domain, using a characterisation of that problem domain which captures beliefs about its structure. Such a characterisation is simply an explicit set of mathematical statements about the relationship between features of solutions and their fitness values, making it clear that the resulting representations encapsulate all of the domain knowledge which is available to any search algorithm. We next present a method for specifying algorithms with respect to abstract representations, making them completely independent of any actual representation or problem domain. Such algorithms are based on generic genetic operators which can be used to manipulate solutions encoded using arbitrary representations. This allows us to specify mathematically precise yet completely problem-independent evolutionary algorithms. Such algorithms can be applied to any problem of interest by utilising any representation which has been generated for that problem to derive problem-specific forms of the operators. This yields well-specified search strategies suitable for implementation. The process is demonstrated for several practical problem domains, showing for instance that identical algorithms can be applied to both the TSP and real parameter optimisation to yield familiar (but superficially very different) concrete search strategies. Making representation central to the study of evolutionary algorithms allows us to interpret the actions of the genetic operators as manipulating hypotheses about problem structure. This motivates ideas about how to predict algorithmic performance and choose between alternative representations for a given problem domain, and begins to provide a clearer understanding of how evolutionary algorithms work.