Skip to main content

Parallelizing Branch-and-Bound on GPUs for Optimization of Multiproduct Batch Plants

  • Conference paper
  • First Online:
Parallel Computing Technologies (PaCT 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9251))

Included in the following conference series:

  • 991 Accesses

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. 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)

    Chapter  Google Scholar 

  2. Boukedjar, A., Lalami, M.E., El Baz, D.: Parallel branch and bound on a CPU-GPU system. In: PDP, pp. 392–398. Citeseer (2012)

    Google Scholar 

  3. Boyer, V., El Baz, D., Elkihel, M.: Solving knapsack problems on GPU. Comput. Oper. Res. 39(1), 42–47 (2012)

    Article  MathSciNet  Google Scholar 

  4. 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)

    Article  Google Scholar 

  5. Farber, R.: CUDA Application Design and Development. Elsevier, Amsterdam (2011)

    Google Scholar 

  6. 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)

    Article  MathSciNet  Google Scholar 

  7. 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)

    Google Scholar 

  8. 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)

    Chapter  Google Scholar 

  9. 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)

    Article  Google Scholar 

  10. 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)

    Google Scholar 

  11. 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)

    Google Scholar 

  12. 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)

    Article  Google Scholar 

  13. NVIDIA Corporation: CUDA C programming guide 6.5, August 2014. http://docs.nvidia.com/cuda/pdf/CUDA_C_Programming_Guide.pdf

  14. Sanders, J., Kandrot, E.: CUDA by Example: An Introduction to General-Purpose Gpu Programming. Addison-Wesley Professional, Boston (2010)

    Google Scholar 

  15. 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)

    Article  Google Scholar 

  16. Vu, T., Derbel, B.: Parallel branch-and-bound in multi-core multi-CPU multi-GPU heterogeneous environments (2014). https://hal.inria.fr/hal-01067662

Download references

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

Authors

Corresponding author

Correspondence to Andrey Borisenko .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics