Program 3:  Genetic Algorithms

COMPSCI 557:  Artificial Intelligence

 

Description


Your task, using a genetic algorithm, is to minimize the amount of interstate necessary to connect a number of previously unconnected
cities. The input to your program will be a list of cities, each city identified as a coordinate pair. At the end of the run, the output will be the total road length followed by the list of road segments connecting the cities. The coordinates of the cities and the termini of the road segments will be integral. That is, (4,3) is a legal coordinate, but (4.3,0.7) is not.

We will run a series of  tournaments to see whose program is best. The top n/2 programs in a single tournament will be awarded n/2 + 1 - r extra credit points, where n is the number of competing programs and r is the rank of the program. Three tournaments with differing city sets will be run. Programs will be ranked based upon the best configuration found within the tournament time period.

The hardest part of this task will be to devise a representation for encoding a solution (really!).  Of course, your representation should be amenable to mutation and crossover.

Program Details

The program should accept the following command line arguments

java Roadie <cityfile> <secs> <debug>