Finding Designs with Genetic Algorithms

In this paper we use simulated evolution to solve three design theoretic problems, direct decomposition of a complete graph into smaller complete graphs, decomposition of a complete graph into smaller complete graphs with difference sets, and the seating of twelve people at three four person tables for multiple nights in an even handed fashion. The paper is intended as a tutorial for someone familiar with design theory but unfamiliar with genetic algorithms.