A GPU-accelerated Branch-and-Bound Algorithm for the Flow-Shop Scheduling Problem

Branch-and-Bound (B&B) algorithms are time-intensive tree-based exploration methods for solving to optimality combinatorial optimization problems. In this paper, we investigate the use of GPU computing as a major complementary way to speed up those methods. The focus is put on the bounding mechanism of B&B algorithms, which is the most time consuming part of their exploration process. We propose a parallel B&B algorithm based on a GPU-accelerated bounding model. The proposed approach concentrate on optimizing data access management to further improve the performance of the bounding mechanism which uses large and intermediate data sets that do not completely fit in GPU memory. Extensive experiments of the contribution have been carried out on well-known FSP benchmarks using an Nvidia Tesla C2050 GPU card. We compared the obtained performances to a single and a multithreaded CPU-based execution. Accelerations up to X100 are achieved for large problem instances.

[1]  B. J. Lageweg,et al.  A General Bounding Scheme for the Permutation Flow-Shop Problem , 1978, Oper. Res..

[2]  Teodor Gabriel Crainic,et al.  PARALLEL BRANCH-AND-BOUND ALGORITHMS: SURVEY AND SYNTHESIS , 1993 .

[3]  Bilel Derbel,et al.  Distributed B&B: A Pure Peer-to-Peer Approach , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

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

[5]  Teodor Gabriel Crainic,et al.  Parallel Branch‐and‐Bound Algorithms , 2006 .

[6]  El-Ghazali Talbi,et al.  A Grid-enabled Branch and Bound Algorithm for Solving Challenging Combinatorial Optimization Problems , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

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

[8]  Inmaculada García,et al.  Branch-and-Bound interval global optimization on shared memory multiprocessors , 2008, Optim. Methods Softw..

[9]  Michael A. Bauer,et al.  Parallel Branch and Bound Algorithm - A comparison between serial, OpenMP and MPI implementations , 2010 .

[10]  Remigijus Paulavičius,et al.  Parallel Branch and Bound Algorithm with Combination of Lipschitz Bounds over Multidimensional Simplices for Multicore Computers , 2009 .

[11]  S. M. Johnson,et al.  Optimal two- and three-stage production schedules with setup times included , 1954 .

[12]  Bradford Nichols,et al.  Pthreads programming , 1996 .

[13]  Barbara Chapman,et al.  Using OpenMP - portable shared memory parallel programming , 2007, Scientific and engineering computation.

[14]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[15]  Inmaculada García,et al.  Adaptive parallel interval branch and bound algorithms based on their performance for multicore architectures , 2011, The Journal of Supercomputing.

[16]  Bernard Gendron,et al.  Parallel Branch-and-Branch Algorithms: Survey and Synthesis , 1994, Oper. Res..

[17]  Reinhard Lüling,et al.  Solving the traveling salesman problem with a distributed branch-and-bound algorithm on a 1024 processor network , 1995, Proceedings of 9th International Parallel Processing Symposium.