Skip to main content

Parallel Combinatorial Optimization with Decision Diagrams

  • Conference paper
Integration of AI and OR Techniques in Constraint Programming (CPAIOR 2014)

Abstract

We propose a new approach for parallelizing search for combinatorial optimization that is based on a recursive application of approximate Decision Diagrams. This generic scheme can, in principle, be applied to any combinatorial optimization problem for which a decision diagram representation is available. We consider the maximum independent set problem as a specific case study, and show how a recently proposed sequential branch-and-bound scheme based on approximate decision diagrams can be parallelized efficiently using the X10 parallel programming and execution framework. Experimental results using our parallel solver, DDX10, running on up to 256 compute cores spread across a cluster of machines indicate that parallel decision diagrams scale effectively and consistently. Moreover, on graphs of relatively high density, parallel decision diagrams often outperform state-of-the-art parallel integer programming when both use a single 32-core machine.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Akers, S.B.: Binary decision diagrams. IEEE Transactions on Computers 27, 509–516 (1978)

    Article  Google Scholar 

  2. Andersen, H.R., Hadzic, T., Hooker, J.N., Tiedemann, P.: A Constraint Store Based on Multivalued Decision Diagrams. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 118–132. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  3. Balasundaram, B., Butenko, S., Hicks, I.V.: Clique relaxations in social network analysis: The maximum k-plex problem. Operations Research 59(1), 133–142 (2011)

    Article  MathSciNet  Google Scholar 

  4. Behle, M.: Binary Decision Diagrams and Integer Programming. PhD thesis, Max Planck Institute for Computer Science (2007)

    Google Scholar 

  5. Bergman, D.: New Techniques for Discrete Optimization. PhD thesis, Tepper School of Business, Carnegie Mellon University (2013)

    Google Scholar 

  6. Bergman, D., Cire, A.A., van Hoeve, W.-J.: MDD Propagation for Sequence Constraints. JAIR (to appear)

    Google Scholar 

  7. Bergman, D., Cire, A.A., van Hoeve, W.-J., Hooker, J.N.: Discrete optimization with decision diagrams (2013) (under review)

    Google Scholar 

  8. Bergman, D., Cire, A.A., van Hoeve, W.-J., Hooker, J.N.: Optimization bounds from binary decision diagrams. INFORMS Journal on Computing (to appear)

    Google Scholar 

  9. Bergman, D., Cire, A.A., van Hoeve, W.-J., Yunes, T.: BDD-based heuristics for binary optimization. Journal of Heuristics (to appear)

    Google Scholar 

  10. Bergman, D., van Hoeve, W.-J., Hooker, J.N.: Manipulating MDD relaxations for combinatorial optimization. In: Achterberg, T., Beck, J.C. (eds.) CPAIOR 2011. LNCS, vol. 6697, pp. 20–35. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  11. Bloom, B., Grove, D., Herta, B., Sabharwal, A., Samulowitz, H., Saraswat, V.: SatX10: A scalable plug & play parallel SAT framework. In: Cimatti, A., Sebastiani, R. (eds.) SAT 2012. LNCS, vol. 7317, pp. 463–468. Springer, Heidelberg (2012)

    Google Scholar 

  12. Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers C-35, 677–691 (1986)

    Article  Google Scholar 

  13. Charles, P., Grothoff, C., Saraswat, V., Donawa, C., Kielstra, A., Ebcioglu, K., von Praun, C., Sarkar, V.: X10: an object-oriented approach to non-uniform cluster computing. In: OOPSLA 2005, San Diego, CA, USA, pp. 519–538 (2005)

    Google Scholar 

  14. Chu, G., Schulte, C., Stuckey, P.J.: Confidence-Based Work Stealing in Parallel Constraint Programming. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 226–241. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  15. Cire, A.A., van Hoeve, W.-J.: Multivalued decision diagrams for sequencing problems. Operations Research 61(6), 1411–1428 (2013)

    Article  MathSciNet  Google Scholar 

  16. Eblen, J.D., Phillips, C.A., Rogers, G.L., Langston, M.A.: The maximum clique enumeration problem: Algorithms, applications and implementations. In: Chen, J., Wang, J., Zelikovsky, A. (eds.) ISBRA 2011. LNCS, vol. 6674, pp. 306–319. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  17. Edachery, J., Sen, A., Brandenburg, F.J.: Graph clustering using distance-k cliques. In: Kratochvíl, J. (ed.) GD 1999. LNCS, vol. 1731, pp. 98–106. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  18. Gu, Z.: Gurobi Optimization - Gurobi Compute Server, Distributed Tuning Tool and Distributed Concurrent MIP Solver. In: INFORMS Annual Meeting (2013), http://www.gurobi.com/products/gurobi-compute-server/distributed-optimization

  19. Hoda, S., van Hoeve, W.-J., Hooker, J.N.: A systematic approach to MDD-based constraint programming. In: Cohen, D. (ed.) CP 2010. LNCS, vol. 6308, pp. 266–280. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  20. Järvisalo, M., Le Berre, D., Roussel, O., Simon, L.: The international SAT solver competitions. Artificial Intelligence Magazine (AI Magazine) 1(33), 89–94 (2012)

    Google Scholar 

  21. Kumar, S., Mamidala, A.R., Faraj, D., Smith, B., Blocksome, M., Cernohous, B., Miller, D., Parker, J., Ratterman, J., Heidelberger, P., Chen, D., Steinmacher-Burrow, B.: PAMI: A parallel active message interface for the Blue Gene/Q supercomputer. In: IPDPS-2012: 26th IEEE International Parallel & Distributed Processing Symposium, pp. 763–773 (2012)

    Google Scholar 

  22. Lee, C.Y.: Representation of switching circuits by binary-decision programs. Bell Systems Technical Journal 38, 985–999 (1959)

    Article  MathSciNet  Google Scholar 

  23. Moisan, T., Gaudreault, J., Quimper, C.-G.: Parallel Discrepancy-Based Search. In: Schulte, C. (ed.) CP 2013. LNCS, vol. 8124, pp. 30–46. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  24. Perron, L.: Search Procedures and Parallelism in Constraint Programming. In: Jaffar, J. (ed.) CP 1999. LNCS, vol. 1713, pp. 346–361. Springer, Heidelberg (1999)

    Google Scholar 

  25. Régin, J.-C., Rezgui, M., Malapert, A.: Embarrassingly Parallel Search. In: Schulte, C. (ed.) CP 2013. LNCS, vol. 8124, pp. 596–610. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  26. Saraswat, V., Bloom, B., Peshansky, I., Tardieu, O., Grove, D.: Report on the experimental language, X10. Technical report, IBM Research (2011)

    Google Scholar 

  27. Saraswat, V.A., Kambadur, P., Kodali, S., Grove, D., Krishnamoorthy, S.: Lifeline-based global load balancing. In: Proceedings of the 16th ACM Symposium on Principles and Practice of Parallel Programming, PPoPP 2011, pp. 201–212. ACM, New York (2011), http://doi.acm.org/10.1145/1941553.1941582 ISBN 978-1-4503-0119-0

    Google Scholar 

  28. X10. X10 programming language web site, http://x10-lang.org/ (January 2010)

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Bergman, D., Cire, A.A., Sabharwal, A., Samulowitz, H., Saraswat, V., van Hoeve, WJ. (2014). Parallel Combinatorial Optimization with Decision Diagrams. In: Simonis, H. (eds) Integration of AI and OR Techniques in Constraint Programming. CPAIOR 2014. Lecture Notes in Computer Science, vol 8451. Springer, Cham. https://doi.org/10.1007/978-3-319-07046-9_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-07046-9_25

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-07045-2

  • Online ISBN: 978-3-319-07046-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics