Sorry, I realised I forgot to send you a copy of the animator earlier. I hope I've still managed to get it to you in good time.

There are a few things improved in it. The most obvious improvements should be the speed of execution, and tabu search has a (somewhat) better visualisation.

As before, to use it you can either generate a graph or read in a euclidean or ATT TSP instance from file (some examples attached).

Once you've loaded the TSP instance, and are in one of the improvement (i.e. local search) algorithms, you can then load in a tour file to improve upon. Also, once one of the local search algorithms or the genetic algorithm complete execution, you can switch to another local search algorithm to improve upon that tour (or save it to file).

The "Open tour in viewer" item in the "View" menu will pop up a new window showing the tour that has just been generated when an algorithm completes.

In the "Algorithm" menu the "Reset" option will terminate the algorithm and restore the tour shown to that of one that existed when the algorithm was selected (if a tour existed then, otherwise it will generate a random tour in the local search algs).

The "Clear Stored Tour" will just resets the algorithm and clears any tour that existed when the algorithm was selected.

Tabu search stores one edge from a 2-opt operation in its tabu list (where the tabu list size is the tenure of any edge placed in that list). Since the tabu implementation uses aspiration criteria, the visualisation will show in red any edges that are tabu but have been allowed into the tour due to the aspiration criteria.

There have been a couple of spontaneous UI errors that I'm still trying to track the cause of. If the application appears to freeze at any point, a restart should fix it.

The slider bar at the bottom will control the speed of execution.

Finally, best of luck with it (and sorry about the long-winded email). :)

Regards,
Gregg