Abstract
The paper describes some ways to speed up solution of the NP-complete Traveling Salesman Problem. The classic Little algorithm, belonging to the class of branch-and-bound methods, can solve it both for directed and undirected graphs. For undirected graphs, however, its speed can be increased by eliminating the branches examined earlier from further consideration. We propose changes to be made in the key operations of the algorithm to speed up execution. In addition, we describe the results of an experiment with a significant increase in the speed of solving of the problem by the advanced algorithm. Another way to speed up the solution procedure is to parallelize the algorithm. For problems of this kind, it is difficult to decompose the task into a sufficient number of subtasks that have comparable complexity. Their parallelism arises dynamically during the execution. For such problems, it seems reasonable to use parallel-recursive algorithms. In our case, the RPM_ParLib library developed by the author is a good approach, enabling the development of high-performance applications for parallel computing on a local network using any.NET-compatible programming language. We selected C# as the programming language. Parallel applications were developed to implement the basic and modified algorithms, as well as to compare them in terms of speed. Experiments were performed for the graphs with up to 45 vertexes and up to 16 network computers. We also investigated the speed increase that can be achieved by parallelizing the basic Little algorithm for directed graphs. The results of these experiments are also presented in the paper.
Similar content being viewed by others
References
Garey, M.R., Johnson, D.S., Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H. Freeman and Co, San Francisco, 1979.
Land, A.H. and Doig, A.G., An automatic method of solving discrete programming problems, Econometrica, 1960, vol. 28, pp. 497–520.
Little, J.D.C., Murty, K.G., Sweeney, D.W., and Karel, C., An algorithm for the traveling salesman problem, Oper. Res., 1963, vol. 11, no. 6, pp. 972–989.
Kaufmann, A., Intraduction a la combinatorique en vue des applications, Dumond, 1968.
Reingold, E., Nievergelt, Ju., and Deo, N., Combinatorial Algorithms: Theory and Practice, Prentice Hall College, 1977.
Cormen, T., Leiserson, Ch., Rivest, R., and Stein, C., Introduction to Algorithms, The MIT Press, 2001.
Petrounine, S.V., Employment of permanent separation method for solution of traveling salesman problems, Nauch. Vestn. Mosk. Gos. Tekh. Univ. Grazhdanskoi Aviats., 2009, no. 146, pp. 105–108.
Kostyuk, Yu.L., Effective implementation of algorithm for solving the travelling salesman problem by branchand-bound method, Prikl. Diskr. Mat., 2013, no. 2, pp. 78–90.
Sigal, I.Kh., Babinskaya, Ya.L., and Pocypkin, M.A., Parallel implementation of the branch and bound method in the traveling salesman problem based on the BNB-Solver library, Tr. Inst. Sist. Anal. Ross. Akad. Nauk, 2006, vol. 25, pp. 26–36.
Vasilchikov, V.V., Sredstva parallel’nogo programmirovaniya dlya vychislitel’nykh sistem s dinamicheskoi balansirovkoi zagruzki (Parallel Programming Tools for Computing Systems with Dynamic Load Balancing), Yaroslavl: YarGU, 2001.
Vasilchikov, V.V., Kommunikatsionnyi modul' dlya organizatsii polnosvyaznogo soedineniya kompyuterov v lokal’noi seti s ispolzovaniem.NET Framework, Svidetel’stvo o gosudarstvennoi registratsii programmy dlya EVM no. 2013619925 (A Communication Module for Organizing a Fully-Connected Connection of Computers in a Local Network Using the.NET Framework, Certificate of State Registration of Computer Program No. 2013619925), 2013.
Vasilchikov, V.V., Biblioteka podderzhki rekursivno-parallelnogo programmirovaniya dlya.NET Framework, Svidetel’stvo o gosudarstvennoi registratsii programmy dlya EVM no. 2013619926 (A Library of Support for Recursive-Parallel Programming for.NET Framework, Certificate of State Registration of Computer Program No. 2013619926), 2013.
Vasilchikov, V.V., On the recursive-parallel programming for the.NET framework, Autom. Control Comput. Sci., 2014, vol. 48, no. 7, pp. 575–580.
Author information
Authors and Affiliations
Corresponding author
Additional information
Original Russian Text © V.V. Vasilchikov, 2016, published in Modelirovanie i Analiz Informatsionnykh Sistem, 2016, Vol. 23, No. 4, pp. 401–411.
About this article
Cite this article
Vasilchikov, V.V. On Optimization and Parallelization of the Little Algorithm for Solving the Travelling Salesman Problem. Aut. Control Comp. Sci. 51, 551–557 (2017). https://doi.org/10.3103/S0146411617070215
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.3103/S0146411617070215