Automatic Control and Computer Sciences

, Volume 51, Issue 7, pp 551–557 | Cite as

On Optimization and Parallelization of the Little Algorithm for Solving the Travelling Salesman Problem

Article
  • 21 Downloads

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.

Keywords

Traveling Salesman Problem Little algorithm parallel algorithm recursion .NET 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    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.MATHGoogle Scholar
  2. 2.
    Land, A.H. and Doig, A.G., An automatic method of solving discrete programming problems, Econometrica, 1960, vol. 28, pp. 497–520.MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    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.CrossRefMATHGoogle Scholar
  4. 4.
    Kaufmann, A., Intraduction a la combinatorique en vue des applications, Dumond, 1968.MATHGoogle Scholar
  5. 5.
    Reingold, E., Nievergelt, Ju., and Deo, N., Combinatorial Algorithms: Theory and Practice, Prentice Hall College, 1977.MATHGoogle Scholar
  6. 6.
    Cormen, T., Leiserson, Ch., Rivest, R., and Stein, C., Introduction to Algorithms, The MIT Press, 2001.MATHGoogle Scholar
  7. 7.
    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.Google Scholar
  8. 8.
    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.Google Scholar
  9. 9.
    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.Google Scholar
  10. 10.
    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.Google Scholar
  11. 11.
    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.Google Scholar
  12. 12.
    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.Google Scholar
  13. 13.
    Vasilchikov, V.V., On the recursive-parallel programming for the.NET framework, Autom. Control Comput. Sci., 2014, vol. 48, no. 7, pp. 575–580.CrossRefGoogle Scholar

Copyright information

© Allerton Press, Inc. 2017

Authors and Affiliations

  1. 1.Demidov State UniversityYaroslavlRussia

Personalised recommendations