Abstract
Parallel implementation of the Branch-and-Bound (B&B) technique for optimization problems is a promising approach to accelerating their solution, but it remains challenging on Graphics Processing Units (GPUs) due to B&B’s irregular data structures and poor computation/communication ratio. The contributions of this paper are as follows: (1) we develop two basic implementations (iterative and recursive) of B&B on systems with GPUs for a practical application scenario - optimal design of multi-product batch plants; (2) we propose and implement several optimizations of our CUDA code using both algorithmic techniques of reducing branch divergence and GPU-specific properties of the memory hierarchy; and (3) we evaluate our implementations and optimizations on a modern GPU-based system and we report our experimental results.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Borisenko, A., Kegel, P., Gorlatch, S.: Optimal design of multi-product batch plants using a parallel branch-and-bound method. In: Malyshkin, V. (ed.) PaCT 2011. LNCS, vol. 6873, pp. 417–430. Springer, Heidelberg (2011)
Boukedjar, A., Lalami, M.E., El Baz, D.: Parallel branch and bound on a CPU-GPU system. In: PDP, pp. 392–398. Citeseer (2012)
Boyer, V., El Baz, D., Elkihel, M.: Solving knapsack problems on GPU. Comput. Oper. Res. 39(1), 42–47 (2012)
Chakroun, I., Mezmaz, M., Melab, N., Bendjoudi, A.: Reducing thread divergence in a GPU-accelerated branch-and-bound algorithm. Concurr. Comput. Pract. Exp. 25(8), 1121–1136 (2013)
Farber, R.: CUDA Application Design and Development. Elsevier, Amsterdam (2011)
Fumero, Y., Corsano, G., Montagna, J.M.: A mixed integer linear programming model for simultaneous design and scheduling of flowshop plants. Appl. Math. Model. 37(4), 1652–1664 (2013)
Han, T.D., Abdelrahman, T.S.: Reducing branch divergence in GPU programs. In: Proceedings of the Fourth Workshop on General Purpose Processing on Graphics Processing Units, p. 3. ACM (2011)
Hoffman, K., Padberg, M.: Combinatorial and integer optimization. In: Hoffman, K.L., Padberg, M. (eds.) Encyclopedia of Operations Research and Management Science, pp. 94–102. Springer, Heidelberg (2001)
Malygin, E., Karpushkin, S., Borisenko, A.: A mathematical model of the functioning of multiproduct chemical engineering systems. Theo. Found. Chem. Eng. 39(4), 429–439 (2005)
Melab, N., Chakroun, I., Mezmaz, M., Tuyttens, D.: A GPU-accelerated branch-and-bound algorithm for the flow-shop scheduling problem. In: IEEE International Conference on Cluster Computing (CLUSTER), pp. 10–17. IEEE (2012)
Meyer, X., Chopard, B., Albuquerque, P.: A branch-and-boundalgorithm using multiple GPU-based LP solvers. In: 20th International Conference on HighPerformance Computing (HiPC), pp. 129–138. IEEE (2013)
Mokeddem, D., Khellaf, A.: Optimal solutions of multiproduct batch chemical process using multiobjective genetic algorithm with expert decision system. J. Anal. Meth. Chem. 2009, 1–9 (2009)
NVIDIA Corporation: CUDA C programming guide 6.5, August 2014. http://docs.nvidia.com/cuda/pdf/CUDA_C_Programming_Guide.pdf
Sanders, J., Kandrot, E.: CUDA by Example: An Introduction to General-Purpose Gpu Programming. Addison-Wesley Professional, Boston (2010)
Terrazas-Moreno, S., Grossmann, I.E., Wassick, J.M.: A mixed-integer linear programming model for optimizing the scheduling and assignment of tank farm operations. Ind. Eng. Chem. Res. 51(18), 6441–6454 (2012)
Vu, T., Derbel, B.: Parallel branch-and-bound in multi-core multi-CPU multi-GPU heterogeneous environments (2014). https://hal.inria.fr/hal-01067662
Acknowledgement
This work was partially supported by the Deutsche Forschungsgemeinschaft (DFG), Cells-in-Motion Cluster of Excellence (EXC 1003 – CiM), University of Muenster, Germany. Andrey Borisenko was supported by the DAAD (German Academic Exchange Service) and by the Ministry of Education and Science of the Russian Federation under the “Mikhail Lomonosov II”-Programme.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Borisenko, A., Haidl, M., Gorlatch, S. (2015). Parallelizing Branch-and-Bound on GPUs for Optimization of Multiproduct Batch Plants. In: Malyshkin, V. (eds) Parallel Computing Technologies. PaCT 2015. Lecture Notes in Computer Science(), vol 9251. Springer, Cham. https://doi.org/10.1007/978-3-319-21909-7_33
Download citation
DOI: https://doi.org/10.1007/978-3-319-21909-7_33
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-21908-0
Online ISBN: 978-3-319-21909-7
eBook Packages: Computer ScienceComputer Science (R0)