Denjvf
Denjvf

Reputation: 49

Optimizing Ant Colony System for TSP

I have implemented an Ant Colony System for symmetric TSP in Java using Dorigo's paper from the following link : http://people.idsia.ch/~luca/acs-bio97.pdf

I also adapted the following strategy:

1.while not all ants have constructed a solution, each ant moves 1 step to a new city and updates the pheromone on the edge used using Dorigo's local pheromone update.

  1. The ant producing the shortest path globally updates the pheromone on the edges used using Dorigo's global update formula

  2. After a number of iterations the shortest path found in all iterations is returned

Is there a way I can improve the algorithm in order to give better results ? For Example for TSP instance ch130 found in TSPLIB the optimal solution is 6110 and my algorithm is returning the answer 6223.

My ACS so far has parameters set as those defined in Dorigo's paper

Upvotes: 1

Views: 418

Answers (2)

Victoria Liew
Victoria Liew

Reputation: 36

I guess the most straight forward way to improve the performance would be integrating with a local search method, e.g. 2-opt, 3-opt, and Lin-Ker heuristic. In practice, with the integration of these local search methods, a not very big scale TSP, e.g. ch130 can solve to the optimum easily.

Upvotes: 1

Andrei
Andrei

Reputation: 7607

There are a few things you can do to improve your solution:

  1. Increase the number of iterations. There is a possibility that there is no stagnation yet, and new solutions can be achieved.
  2. Increase the parameter associated with the visibility (heuristic) function to favor exploration of other solutions.

Have a look at the following two papers for more details. The first one combines ACO with a genetic algorithm to fine-tune the hyper-parameters which are used to configure ACO. The authors conclude that this method improves the convergence of ACO. The second paper use an adaptive procedure to set these parameters at runtime. As the authors claim these parameters are problem specific and depending problem which currently being solved, tunning needs to be performed to improve the convergence time of the algorithm.

  1. Botee, Hozefa M., and Eric Bonabeau. "Evolving ant colony optimization." Advances in complex systems 1, no. 02n03 (1998): 149-159.
  2. Stützle, Thomas, Manuel López-Ibánez, Paola Pellegrini, Michael Maur, Marco Montes De Oca, Mauro Birattari, and Marco Dorigo. "Parameter adaptation in ant colony optimization." In Autonomous search, pp. 191-215. Springer, Berlin, Heidelberg, 2011.

Upvotes: 1

Related Questions