Date
Journal Title
Journal ISSN
Volume Title
Publisher
Many approaches to applying Genetic Algorithms (GAs) to Nondeterministic Polynomial time Complete (NPC) problems involve population members encoded directly from the problem solution space. While this technique enables trivial mapping of the population members to solutions, it can cause complex problems for GA operators as they attempt to direct the evolution of the population toward more promising areas of the solution space. These operators, using inspiration from genetics and evolution in the biological world, combine and manipulate the current population to produce a new population that, it is hoped, will eventually converge toward better solutions to the original problem. However, many problems, especially graph-space problems, cannot be so easily manipulated when GA members consist of direct encodings. In such cases, GA operators must perform awkward transformations to convert the progeny into viable solutions. Here is where heuristic encoding comes into play, in that any combination of genes will produce a viable solution. However, this additional level of abstraction does cause other problems and tends to weaken the guiding effects of traditional GA operators. Thus, I have designed custom GA operators that mitigate these problems by using the solutions produced by the heuristic encoded members to better guide the manipulation when producing the next generation. This dissertation shows that heuristic encoding is an effective technique for the representation of solutions to graph-space problems. It also shows that, when using heuristic encoding, GAs with traditional operators perform well compared to more direct encoding techniques. Finally it shows the combination of heuristic encoding and GA operators designed to work with them increases GA performance and can be competitive with other techniques. I believe that these techniques will also work well for other types of problems for which GAs are commonly applied.