Parallelized solution to the asymmetric travelling salesman problem using central processing unit acceleration
Indonesian Journal of Electrical Engineering and Computer Science
Vol. 25, No. 3, March 2022, pp. 1795~1802
ISSN: 2502-4752, DOI: 10.11591/ijeecs.v25.i3.pp1795-1802
ο²
1795
Parallelized solution to the asymmetric travelling salesman
problem using central processing unit acceleration
Akschat Arya1, Boominathan Perumal2, Santhi Krishnan3
1
BTech in Computer Science and Engineering, VIT University, Vellore, India
2
Department of Information Security, VIT University, Vellore, India
3
Department of Analytics, VIT University, Vellore, India
Article Info
ABSTRACT
Article history:
Travelling salesman problem is a well researched problem in computer
science and has many practical applications. It is classified as a NP-hard
problem as its exact solution can only be obtained in exponential time unless
P = NP. There are different variants of the travelling salesman problem
(TSP) and in this paper, asymmetric travelling salesman problem is
addressed since this variant is quite often observed in real world scenarios.
There are a number of heuristic approaches to this problem which provides
approximate solutions in polynomial time, however this paper proposes an
exact optimal solution which is accelerated with the help of multi-threadingbased parallelization. In order to find the exact optimal solution, we have
used the held-karp algorithm involving dynamic programming and to reduce
the time taken to find the optimal path, we have used a multi-threaded
approach to parallelize the processing of sub-problems by leveraging the
central processing unit cores (CPUs). This method is an extension of a well
researched solution to the TSP; however, this method shows that solutions to
computationally intensive problems involving sub-problems such as the
asymmetic travelling salesman problem (ATSP) can be accelerated with the
help of modern CPUs.
Received Aug 18, 2021
Revised Jan 11, 2022
Accepted Jan 24, 2022
Keywords:
Asymmetric travelling
salesman problem
Dynamic programming
Held-karp algorithm
Multithreading
Parallelization
This is an open access article under the CC BY-SA license.
Corresponding Author:
Akschat Arya
BTech in Computer Science and Engineering, VIT University
Vellore, India
Email:
1.
INTRODUCTION
In the simple traveling salesperson problem (TSP), we are given an undirected graph πΊ = (π, πΈ)
and πππ π‘ π(π) > 0 for each edge π β πΈ and the objective is to find a hamiltonian cycle with the minimum
cost. A hamiltonian cycle visits every vertex in π exactly once. In this paper we are addressing the
asymmetric travelling salesman problem (ATSP) which frequently has to be dealt with in real world
scenarios. Let π = (π, π΄) be a given directed graph, with vertex set π = {1, . . . , π} and arc set π΄ = {(π, π) βΆ
π, π β π}. Let πππ be the cost for the arc (π, π) β π with πππ = +β (π β π). A hamiltonian circuit (tour) of
πΊ is a circuit visiting each vertex of πexactly once. The objective of the ATSP is to find a Hamiltonian circuit
π β = (π, π΄ β) of π with minimum cost = β(π,π)βπ΄β πππ
There are different variants of the travelling salesman problem which have been addressed by
researchers earlier and both approximate (faster) and exact (slower) solutions have been provided. Some
possible solutions for some of the other variants as per earlier research are as follows: i) symmetric TSP:
GPU accelerated solution provided by Kimura et al. in [1], ii) ATSP: approximation algorithms by
Journal homepage: http://ijeecs.iaescore.com
1796
ο²
ISSN: 2502-4752
decomposing directed regular multigraphs provided by Kaplan et al. in [2], iii) ATSP with windows: exact
solution through a graph transformation provided by Albiach et al. in [3], iv) ATSP with replenishment arcs:
polyhedral results provided by Mak and Boland in [4].
Meet in the middle algorithm was used by Kazuro Kimura et al. to accelerate the execution time but
this method can only be used on the symmetric TSP by leveraging the symmetric aspect of the problem and
thus Kimura et al. in [1] achieved an acceleration by a factor of 1.5 and that of 1.7 using man-in-the-middle
(MITM) when n (number of vertices) was odd and even, respectively. Since this paper aims to address the
asymmetric travelling salesman problem, we have not used MITM, instead we make use of the following
techniques to accelerate the processing time: i) multi-threaded program to utilize central processing unit
(CPU) cores, ii) thread-safe hashmap to store results of the dynamic cost function.
CPU parallelization has also been achieved for other algorithms like the ant colony optimization for
the TSP. Ling et al. in [5] have presented an adaptive parallel ant colony optimization (PACO) algorithm
using massively parallel processors (MPPs). A method of adjusting the time interval adaptively for
information exchange according to the diversity of the solutions is also proposed by Chen ling et al. to avoid
early convergence and improve the quality of results [5]. FejzagicΜ et al. have shown that it is possible to
efficiently parallelize metaheuristic algorithms like ACO using task parallel library [6].
Gizems Ermis et al. have investigated the acceleration from CUDA by using 2-opt and 3-opt local
search heuristics and shared explained some parallelization strategies to utilize GPU resources effectively [7].
Haim Kaplan et al. has provided approximation algorithms for asymmetric TSP by the decomposition of
directed regular multigraphs [2]. Experiments by Saxena et al. in [8] show that parallelization tools like
OpenMP and CUDA can significantly reduce the execution time for genetic algorithms used in solving the
TSP. Rashid in [9] presented a parallel heuristic integrating a greedy approach into a genetic algorithm with
local-search using GPU acceleration.
Most of the previous work have presented an approximate algorithm for the general TSP or an exact
algorithm without CPU parallelization for the ASTP. In this paper we present an exact algorithm for the
asymmetric TSP utilizing CPU parallelization and thread-safe hashmap to accelerate the execution process.
Alrashdan et al. have used enhanced crossover operation using genetic algorithm with their probabilities in
order to create an efficient method to provide a near optimal solution for the ATSP [10]. A Two-way parallel
slime mold algorithm by flow and distance (TPSMA) is proposed by Liu et al. in [11] in order to solve slime
mold algorithmβs problem of poor local optimization. Ascheuer et al. has provided a computational study
which has indicated that most ATSP with time windows instances ranging till 50β70 nodes can be optimally
solved using branch and cut [12]. Kang et al. propose an effective method of constructive crossover such that
large number of genes can be effectively evolved by exploiting the GPUs parallel computing power and an
effective parallel approach to genetic TSP where crossover methods cannot be easily implemented in parallel
fashion [13]. Vasilchikov has shown that the little algorithm also has good (...truncated)