Optimality and Complexity Analysis of a Branch-and-Bound Method in Solving Some Instances of the Subset Sum Problem

Roman Kolpakov 1  and Mikhail Posypkin 2
  • 1 Lomonosov Moscow State University, , Federal Research Center “Computer Science and Control” of RAS, Leninskie Gory, Moscow
  • 2 Moscow Institute of Physics and Technology, Federal Research Center “Computer Science and Control” of RAS, Russia, Moscow


In this paper we study the question of parallelization of a variant of Branch-and-Bound method for solving of the subset sum problem which is a special case of the Boolean knapsack problem. The following natural approach to the solution of this question is considered. At the first stage one of the processors (control processor) performs some number of algorithm steps of solving a given problem with generating some number of subproblems of the problem. In the second stage the generated subproblems are sent to other processors for solving (one subproblem per processor). Processors solve completely the received subproblems and return their solutions to the control processor which chooses the optimal solution of the initial problem from these solutions. For this approach we define formally a model of parallel computing (frontal parallelization scheme) and the notion of complexity of the frontal scheme. We study the asymptotic behavior of the complexity of the frontal scheme for two special cases of the subset sum problem.

If the inline PDF is not rendering correctly, you can download the PDF file here.

  • [1] Kellerer H., Pfershy U., Pisinger D., Knapsack Problems, Springer Verlag, 2004

  • [2] Posypkin M., Sin S. T. T., Comparative analysis of the eflciency of various dynamic programming algorithms for the knapsack problem, Proceedings of 2016 IEEE NW Russia Young Researchers in Electrical and Electronic Engineering Conference (EIConRusNW), 2016, 313–316

  • [3] Posypkin M., Sigal I., Speedup estimates for some variants of the parallel implementations of the branch-and-bound method, Computational Mathematics and Mathematical Physics, 2006, 46, N 12, 2187–2202

  • [4] Afanasiev A., Bychkov I., Zaikin O., Manzyuk M., Posypkin M., Semenov A., Concept of a multitask grid system with a flexible allocation of idle computational resources of supercomputers, Journal of Computer and Systems Sciences International, 2017, 56, N 4, 701–707

  • [5] Bellman R.E., Dynamic Programming, Princeton University Press, Princeton, 1957

  • [6] Horowitz E., Sahni S., Computing partitions with applications to the knapsack problem, Journal of ACM, 1974, 21, N 2, 277–292

  • [7] Kindervater G.A.P., Lenstra J.K., An introduction to parallelism in combinatorial optimization, Discrete Applied Mathematics, 1986, 14, 135–156

  • [8] Lee J., Shragowitz E., Sahni S., A hypercube algorithm for the 0/1 knapsack problem, Journal of Parallel and Distributed Computing, 1988, 5, 438–456

  • [9] Lin J., Storer J., Processor efficient hypercube algorithm for the knapsack problem, Journal of Parallel and Distributed Computing, 1991, 3, 332–337

  • [10] Sanches C.A.A., Somaa N.Y., Yanasse H.H., Parallel time and space upper-bounds for the subset-sum problem, Theoretical Computer Science, 2008, 407, 342-348

  • [11] Curtis V.V., Sanches C.A.A., An efficient solution to the subset sum problem on GPU. Concurrency Computation: Practice and Experience, 2016, 28, 95–113

  • [12] Sanches C.A.A., Soma N.Y., Yanasse H.H., An optimal and scalable parallelization of the two-list algorithm for the subset-sum problem, European Journal of Operational Research, 2007, 176, 870–879

  • [13] Bokhari S.S., Parallel solution of the subset-sum problem: an empirical study, Concurrency and Computation: Practice and Experience, 2012, 24, 2241–2254

  • [14] Curtis V.V., Sanches C.A.A., A low-space algorithm for the subset-sum problem on GPU, Computers & Operations Research, 2017, 83, 120–124

  • [15] Kang L., Wan L., Li K., Efficient Parallelization of a Two-List Algorithm for the Subset-Sum Problem on a Hybrid CPU/GPU Cluster, Proceedings of International Symposium on Parallel Architectures, Algorithms and Programming, 2014, 93–98

  • [16] Wan L., Li K., Liu J., Li K., GPU implementation of a parallel two-list algorithm for the subset-sum problem, Concurrency and Computation: Practice and Experience, 2015, 27, 119–145

  • [17] Wan L., Li K., Li K., A novel cooperative accelerated parallel two-list algorithm for solving the subset-sum problem on a hybrid CPU/GPU cluster, Journal of Parallel and Distributed Computing, 2016, 97, 112–123

  • [18] Ristovski Z., Mishkovski I., Gramatikov S., Filiposka S., Parallel implementation of the modified subset sum problem in CUDA, Proceedings of 22nd Telecommunications Forum Telfor (TELFOR), Belgrade, 2014, 923–926

  • [19] Curtis V.V., Sanches C.A.A., An improved balanced algorithm for the subset-sum problem, European Journal of Operational Research, 2019, 275, 460–466

  • [20] Barkalov K., and Gergel V., Parallel global optimization on GPU, Journal of Global Optimization, 2016, 66, N 1, 3–20

  • [21] Pietracaprina A., Pucci G., Silvestri F., Vandin F., Space-efficient parallel algorithms for combinatorial search problems, Journal of Parallel and Distributed Computing, 2015, 76, 58–65

  • [22] Casado L. G., Martinez J. A., García I., Hendrix E. M. T., Branch-and-bound interval global optimization on shared memory multiprocessors, Optimization Methods & Software, 2008, 23, N 5, 689–701

  • [23] Vu T.-T., Derbel B., Parallel Branch-and-Bound in multi-core multi-CPU multi-GPU heterogeneous environments, Future Generation Computer Systems, 2016, 56, 95–109

  • [24] Baldwin A., Asaithambi A., An efficient method for parallel interval global optimization, Proceedings of 2011 International Conference on High Performance Computing and Simulation (HPCS), 2011, 317–321

  • [25] Kolpakov R., Posypkin P., The lower bound on complexity of parallel branch-and-bound algorithm for subset sum problem, AIP Conference Proceedings, 2016, 1776, N 1, AIP Publishing

  • [26] Finkel’shtein Yu., Priblizhennye metody i prikladnye zadachi diskretnogo programmirovaniya, Nauka, Moscow, 1976 (in Russian)

  • [27] Grishukhin V., Efficiency of the branch and bound method in problems with boolean variables, Issledovaniya po diskretnoj optimizatsii, Nauka, Moscow, 1976, 203–230 (in Russian)

  • [28] Kolpakov R., Posypkin M., Upper and lower bounds for the complexity of the branch and bound method for the knapsack problem, Discrete Mathematics and Applications, 2010, 20, N 1, 113–125

  • [29] Kolpakov R., Posypkin M., Sigal I., On a lower bound on the computational complexity of a parallel implementation of the branch-and-bound method, Automation and Remote Control, 2010, 71, N 10, 2152–2161

  • [30] Kolpakov R., Posypkin M., Estimating the computational complexity of one variant of parallel realization of the branch and bound method for the knapsack problem, J. of Computer and Systems Sciences International, 2011, 50, N 5, 756–765

  • [31] Koshy T., Catalan numbers with applications, Oxford University Press, USA, 2009


Journal + Issues