Hybrid multi-core CPU and GPU-based B&B approaches for the blocking job shop scheduling problem

Abstract The Branch and Bound algorithm (B&B) is a well known method for solving optimally Combinatorial Optimization Problems. This method is based on intelligent enumeration of all feasible solutions which reduce considerably the search space. Nevertheless, it remains inefficient when using the sequential approach to deal with large problem instances due to its huge resolutions time. However, the execution time can be reduced considerably by using parallel computing architectures. With the huge evolution of the multi-cores CPUs and GPUs, it is quite hard to design schemes that efficiently exploit the different hardware architectures simultaneously. As a result, most of the existing works focus on exploiting one hardware architecture at a time. In this paper, we propose five parallel approaches to accelerate the B&B execution time using Multi and Many-core systems. Our goal is to solve optimally the Blocking Job Shop Scheduling problem (BJSS) which is one of the hardest scheduling problem. The first proposed approach is a multi-search parallelization based on master/worker paradigm, exploiting the multi-Core CPU-processors. The second and the third approaches represent a GPU-based parallelization schemes having different level of parallelism and GPU occupancy. The fourth and fifth approaches represent a hybridization between the Multi-core approach and the GPU-based parallelization approaches. The goal of this hybridization is to benefit from the power of both the CPU-cores and the GPU at the same time. This hybridization is based on concurrent kernels execution provided by Nvidia Multi process Service (MPS) that allows multiple host processes (Master and workers) to use simultaneously the GPU to launch their kernels in order to accelerate the bounding of one or several nodes at a time. Experiments using the well known Taillard instances confirm the efficiency of our proposals and show a relative speedup of 160x as compared to an optimized sequential B&B algorithm.

[1]  Imen Chakroun,et al.  Graphics processing unit‐accelerated bounding for branch‐and‐bound applied to a permutation problem using data access optimization , 2014, Concurr. Comput. Pract. Exp..

[2]  Peter Brucker,et al.  Scheduling Algorithms , 1995 .

[3]  B. Roy,et al.  Les Problemes d'Ordonnancement , 1967 .

[4]  Nidhal Rezg,et al.  A taboo search approach for deadlock-free scheduling of automated manufacturing systems , 2001, J. Intell. Manuf..

[5]  Khaled Ghédira,et al.  Hybrid Metaheuristics within a Holonic Multiagent Model for the Flexible Job Shop Problem , 2015, KES.

[6]  Ahcene Bendjoudi,et al.  An efficient Tabu Search neighborhood based on reconstruction strategy to solve the blocking job shop scheduling problem , 2017 .

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

[8]  Bilel Derbel,et al.  Parallel Branch-and-Bound in multi-core multi-CPU multi-GPU heterogeneous environments , 2016, Future Gener. Comput. Syst..

[9]  Khaled Ghédira,et al.  Hybrid metaheuristics for scheduling of machines and transport robots in job shop environment , 2016, Applied Intelligence.

[10]  Imen Chakroun,et al.  Reducing thread divergence in a GPU‐accelerated branch‐and‐bound algorithm , 2013, Concurr. Comput. Pract. Exp..

[11]  Abdelhakim AitZai,et al.  A branch and bound and parallel genetic algorithm for the job shop scheduling problem with blocking , 2012 .

[12]  Nouredine Melab,et al.  Multi-core versus many-core computing for many-task Branch-and-Bound applied to big optimization problems , 2018, Future Gener. Comput. Syst..

[13]  Didier El Baz,et al.  GPU Implementation of the Branch and Bound Method for Knapsack Problems , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.

[14]  Christian Plessl,et al.  Efficient Branch and Bound on FPGAs Using Work Stealing and Instance-Specific Designs , 2017, ACM Trans. Reconfigurable Technol. Syst..

[15]  Leila Asadzadeh,et al.  A local search genetic algorithm for the job shop scheduling problem with intelligent agents , 2015, Comput. Ind. Eng..

[16]  Dario Pacciarelli,et al.  A Rollout Metaheuristic for Job Shop Scheduling Problems , 2004, Ann. Oper. Res..

[17]  Chelliah Sriskandarajah,et al.  A Survey of Machine Scheduling Problems with Blocking and No-Wait in Process , 1996, Oper. Res..

[18]  Éric D. Taillard,et al.  Benchmarks for basic scheduling problems , 1993 .

[19]  Igor Machado Coelho,et al.  A Hybrid Heuristic in GPU-CPU Based on Scatter Search for the Generalized Assignment Problem , 2017, ICCS.

[20]  Gustavo Augusto Lima de Campos,et al.  A New Parallel Schema for Branch-and-Bound Algorithms Using GPGPU , 2011, 2011 23rd International Symposium on Computer Architecture and High Performance Computing.

[21]  Nadia Nouali-Taboudjemat,et al.  Multi and many-core parallel B&B approaches for the Blocking Job Shop Scheduling problem , 2016, 2016 International Conference on High Performance Computing & Simulation (HPCS).

[22]  Dario Pacciarelli,et al.  An iterated greedy metaheuristic for the blocking job shop scheduling problem , 2016, J. Heuristics.

[23]  Heinz Gröflin,et al.  A new neighborhood and tabu search for the Blocking Job Shop , 2009, Discret. Appl. Math..

[24]  Stephen F. Smith,et al.  Iterative Improvement Algorithms for the Blocking Job Shop , 2012, ICAPS.

[25]  J. Carlier,et al.  Adjustment of heads and tails for the job-shop problem , 1994 .

[26]  Imen Chakroun,et al.  Combining multi-core and GPU computing for solving combinatorial optimization problems , 2013, J. Parallel Distributed Comput..

[27]  K. Benatchba,et al.  Parallel B&B Algorithm for Hybrid Multi-core/GPU Architectures , 2013, 2013 IEEE 10th International Conference on High Performance Computing and Communications & 2013 IEEE International Conference on Embedded and Ubiquitous Computing.

[28]  Kenli Li,et al.  A hybrid computing method of SpMV on CPU-GPU heterogeneous computing systems , 2017, J. Parallel Distributed Comput..

[29]  Ahcène Bendjoudi,et al.  GPU-Based Two Level Parallel B&B for the Blocking Job Shop Scheduling Problem , 2016, 2016 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW).

[30]  Ahcène Bendjoudi,et al.  Efficient parallel B&B method for the blocking job shop scheduling problem , 2016, 2016 International Conference on High Performance Computing & Simulation (HPCS).

[31]  Dario Pacciarelli,et al.  Job-shop scheduling with blocking and no-wait constraints , 2002, Eur. J. Oper. Res..