The Traveling Salesperson


Attempt to solve the Traveling Salesperson Problem using a modified genetic algorithm. You will use the following benchmark problems that people all over the world use to test their techniques.

The problem is to minimize the distance travelled by a salesperson as they visit all the cities, visiting each city exactly once. You assume that the distance between any pair of cities is given by the euclidean distance. The exact instructions for calculating distances and information on optimal tour-lengths found so far are given in this postscript documentation. You should also visit the TSP library to learn more about the problem and to take a look at all the benchmarks.

Design a genetic algorithm to solve the symmetric Traveling Salesperson Problem. You will need to design and implement new crossover and mutation operators and you will need to write your evaluation function. You must all use exactly the same evaluation function (distance calculation using the euclidean distance metric) as given in this postscript documentation. Use this code or any other code that you find. Use the tools here or others that you may find elsewhere.

Optimal tour lengths are available

Here is the TSP FAQ

Read pages 170 - 175 which includes an implementation of the PMX crossover operator for TSPs before you start this assignment.

Turn in a report that explains your technique and deviations from the canonical genetic algorithm. You will also include graphs of avg-avg and max-avg versus number of function evaluations over the 30 or so runs of your algorithm with different random seeds. Do not turn in code. Finally, I want to see the following numbers - criteria for evaluating your implementation.

You should visit the library or use the internet to find other researcher's GA techniques for solving the TSP. Cite these in your report.

If you use a technique, please cite the appropriate references. Using a technique discovered by someone else will reduce your grade, unless you cite them (even if you independently came up with the same technique). Not knowing is not an acceptable excuse. Good Luck


Sushil Louis
Last modified: Mon Mar 6 13:01:29 PST 2006