Skip to main content
Log in

Distributed versus Centralized Storage and Control for Parallel Branch and Bound: Mixed Integer Programming on the CM-5

  • Published:
Computational Optimization and Applications Aims and scope Submit manuscript

Abstract

This paper describes parallel, non-shared-memoryimplementation of the classical general mixed integer branch and boundalgorithm, with experiments on the CM-5 family of parallel processors. Themain issue in such an implementation is whether task scheduling and certaindata-storage functions should be handled by a single processor, orspread among multiple processors. The centralized approach riskscreating processing bottlenecks, while the more decentralizedimplementations differ more from the fundamental serial algorithm.Extensive computational tests on standard MIPLIB problems comparecentralized, clustered, and fully decentralized task scheduling methods, using a novel combination of random work scattering and rendezvous-basedglobal load balancing, along with a distributed “control by token”technique. Further experiments compare centralized and distributedschemes for storing heuristic “pseudo-cost” branching data. The distributed storage method is based on continual asynchronous reductionalong a tree of redundant storage sites. On average, decentralized taskscheduling appears at least as effective as central control, butpseudo-cost storage should be kept as centralized as possible.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. E.M.L. Beale, "Branch and bound methods for mathematical programming systems," in Discrete Optimization II, Annals of Discrete Mathematics, P.L. Hammer, E.L. Johnson, and B.H. Korte (Eds.), vol. 5. pp. 201–219, 1979.

  2. R.E. Bixby, E.A. Boyd, and R.R. Indovina, "MIPLIB: A test set of real-world mixed-integer programming problems," SAUM News, vol. 25, p. 16, 1992.

  3. G.E. Blelloch, Vector Models for Data-Parallel Computing, MIT Press: Cambridge, MA, 1990.

    Google Scholar 

  4. S.P. Bradley, A.C. Hax, and T.L. Magnanti, Applied Mathematical Programming, Addison-Wesley: Reading, MA, 1977.

    Google Scholar 

  5. D.P. Christman, Programming the Connection Machine, Master's Thesis, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, Cambridge, MA, 1983.

    Google Scholar 

  6. CPLEX Optimization Inc., Using the CPLEXTM Callable Library and CPLEXTM Mixed Integer Library, Incline Village, NV, 1994.

  7. S. Dowaji and C. Roucaurol, "Influence of priority on tasks on load balancing strategies for distributed branch-and-bound algorithms," in Proc. Workshop on Solving Irregular Problems on Distributed-Memory Machines-9th Int. Parallel Processing Symp., Santa Barbara, CA, 1995. pp. 83–90.

  8. J. Eckstein, "Parallel branch-and-bound for mixed integer programming," SAUM News, vol. 27. pp. 1, 12–15, 1994.

    Google Scholar 

  9. J. Eckstein, "Parallel branch-and-bound algorithms for general mixed integer programming on the CM-5," SAUM J. Optim., vol. 4. pp. 794–814, 1994.

    Google Scholar 

  10. J. Eckstein, "Control strategies for parallel mixed integer branch and bound," in Proc. Supercomputing'94, Washington, DC, 1994. pp. 41–48.

  11. M.J. Flynn, "Some computer organizations and their effectiveness," IEEE Trans. Comp., vol. C-21. pp. 948–960, 1972.

    Google Scholar 

  12. B. Gendron and T.G. Craunic, "Parallel branch-and-bound algorithms: Survey and synthesis," Oper. Res., vol. 42. pp. 1042–1066, 1994.

    Google Scholar 

  13. A. Grama, V. Kumar, and P. Pardalos, "Parallel processing of discrete optimization problems," in Encyclopedau of Microcomputers, Marcel Dekker: New York, NY. pp. 129–157, 1992.

    Google Scholar 

  14. F.S. Hillier and G.J. Lieberman, Introduction to Operations Research, Holden-Day: San Francisco, CA, 1980.

    Google Scholar 

  15. W.D. Hillis, The Connection Machine, MIT Press: Cambridge, MA, 1985.

    Google Scholar 

  16. R.M. Karp and Y. Zhang, "Randomized parallel algorithms for backtrack search and branch-and-bound computation," J. Assoc. Comput. Mach., vol. 40. pp. 765–789, 1993.

    Google Scholar 

  17. G. Karypis and V. Kumar, "Unstructured tree search on SIMD parallel computers: A summary of results," in Proc. Supercomputing'92, Minneapolis, MN, 1992. pp. 453–462.

  18. V. Kumar, K. Ramesh, and V. Nageshwara Rao, "Parallel best-first search of state-space graphs: A summary of results," in Proc. AAAU-88 Seventh Nat. Conf. Artif. Intel., St. Paul, MN, 1988.

  19. V. Kumar, A. Grama, A. Gupta, and G. Karypis, Introduction to Parallel Computing: Design and Analysis of Algorithms, Benjamin/Cummings: Redwood City, CA, 1994.

    Google Scholar 

  20. V. Kumar, G.Y. Ananth, and V. Nageshwara Rao, "Scalable load balancing techniques for parallel computers," J. Distrib. Parallel Comput., vol. 22. pp. 60–79, 1994.

    Google Scholar 

  21. A. Land and S. Powell, "Computer codes for problems of integer programming," in Discrete Optimization II, Annals of Discrete Mathematics, P.L. Hammer, E.L. Johnson, and B.H. Korte (Eds.), vol. 5, North-Holland: Amsterdam, 1979.

    Google Scholar 

  22. R. Lüling and B. Monien, "Load balancing for distributed branch and bound algorithms," in Proc. Int. Parallel Processing Symp., Beverly Hills, CA, 1992. pp. 543–549.

  23. R. Lüling, B. Monien, and F. Ramme, "Load balancing in large networks: A comparative study," in Proc. 3rd IEEE Symp. Parallel and Distributed Processing, 1991. pp. 686–689.

  24. A. Mahanti and C.J. Daniels, "A SIMD approach to parallel heuristic search," Artif. Intel., vol. 60. pp. 243–282, 1993.

    Google Scholar 

  25. V.J. Rayward-Smith, S.A. Rush, and G.P. McKeown, "Efficiency considerations in the implementation of parallel branch-and-bound," Ann. Oper. Res., vol. 43. pp. 123–145, 1993.

    Google Scholar 

  26. Thinking Machines Corporation, CMMD Reference Manual, Cambridge: MA, 1993 (Version 3.0).

  27. S. Tschöke, R. Lüling, and B. Monien, "Solving the traveling salesman problem with a distributed branch-and-bound algorithm on a 1024 processor network," in Proc. 9th Int. Parallel Processing Symp., Santa Barbara, CA, 1995. pp. 182–189.

  28. L.W. Tucker and A. Maunwaring, "CMMD: Active messages on the CM-5," Parallel Comput., vol. 20. pp. 481–496, 1994.

    Google Scholar 

  29. T. von Eiken, D.E. Culler, S.C. Goldstein, and K.E. Schauser, "Active messages: A mechanism for integrated communication and computation," in Proc. 19th Int. Symp. Comp. Arch.,Gold Coast, Australau, 1992.

  30. O. Vornberger, "Load balancing on a network of transputers," in Proc. Second Annual Workshop on Distributed Algorithms, Amsterdam, 1987. pp. 116–126.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Eckstein, J. Distributed versus Centralized Storage and Control for Parallel Branch and Bound: Mixed Integer Programming on the CM-5. Computational Optimization and Applications 7, 199–220 (1997). https://doi.org/10.1023/A:1008699010646

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008699010646

Navigation