com.anji.tournament contains classes to handle tournaments and games. A Tournament is a series of matches between a population of Player objects, where the particular tournament logic determines who plays whom, and how many times. A Game is an individual contest between two players. Game and IteratedGame form a composite design pattern. An IteratedGame might represent a match, or a series of trials, or any hierarchy of contests and sub-contests. TournamentFitnessFunction ties this all to the genetic algorithm framework.