High Performance GPU Accelerated Local Optimization in TSP

This paper presents a high performance GPU accelerated implementation of 2-opt local search algorithm for the Traveling Salesman Problem (TSP). GPU usage significantly decreases the execution time needed for tour optimization, however it also requires a complicated and well tuned implementation. With the problem size growing, the time spent on local optimization comparing the graph edges grows significantly. According to our results based on the instances from the TSPLIB library, the time needed to perform a simple local search operation can be decreased approximately 5 to 45 times compared to a corresponding parallel CPU code implementation using 6 cores. The code has been implemented in OpenCL and as well as in CUDA and tested on AMD and NVIDIA devices. The experimental studies show that the optimization algorithm using the GPU local search converges from up to 300 times faster compared to the sequential CPU version on average, depending on the problem size. The main contributions of this paper are the problem division scheme exploiting data locality which allows to solve arbitrarily big problem instances using GPU and the parallel implementation of the algorithm itself.

[1]  Keld Helsgaun,et al.  An effective implementation of the Lin-Kernighan traveling salesman heuristic , 2000, Eur. J. Oper. Res..

[2]  Christian Steczkó Nilsson,et al.  Heuristics for the Traveling Salesman Problem , 2003 .

[3]  Helena Ramalhinho Dias Lourenço,et al.  Iterated Local Search , 2001, Handbook of Metaheuristics.

[4]  N. Biggs THE TRAVELING SALESMAN PROBLEM A Guided Tour of Combinatorial Optimization , 1986 .

[5]  Gerhard Reinelt,et al.  TSPLIB - A Traveling Salesman Problem Library , 1991, INFORMS J. Comput..

[6]  G. Croes A Method for Solving Traveling-Salesman Problems , 1958 .

[7]  David S. Johnson,et al.  The Traveling Salesman Problem: A Case Study in Local Optimization , 2008 .

[8]  Martin Burtscher,et al.  A Parallel GPU Version of the Traveling Salesman Problem , 2011 .

[9]  Richard M. Karp,et al.  Reducibility among combinatorial problems" in complexity of computer computations , 1972 .

[10]  F. Glover,et al.  Local Search and Metaheuristics , 2007 .

[11]  Cheng-Yan Kao,et al.  Solving traveling salesman problems by combining global and local search mechanisms , 2002, Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600).

[12]  Bruce L. Golden,et al.  Solving the traveling salesman problem with annealing-based heuristics: a computational study , 2002, IEEE Trans. Syst. Man Cybern. Part A.

[13]  El-Ghazali Talbi,et al.  GPU Computing for Parallel Local Search Metaheuristic Algorithms , 2013, IEEE Transactions on Computers.

[14]  Mary E. Kurz Heuristics for the Traveling Salesman Problem , 2011 .

[15]  Jon Louis Bentley,et al.  Experiments on traveling salesman heuristics , 1990, SODA '90.

[16]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..

[17]  Shigeyoshi Tsutsui,et al.  A Highly-Parallel TSP Solver for a GPU Computing Platform , 2010, NMA.

[18]  William J. Cook,et al.  The Traveling Salesman Problem: A Computational Study , 2007 .

[19]  Richard M. Karp,et al.  Reducibility Among Combinatorial Problems , 1972, 50 Years of Integer Programming.

[20]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .