This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Efficient Branch-and-Bound Algorithms on a Two-Level Memory System
September 1988 (vol. 14 no. 9)
pp. 1342-1356

Branch-and-bound algorithms in a system with a two-level memory hierarchy were evaluated. An efficient implementation depends on the disparities in the numbers of subproblems expanded between the depth-first and best-first searches as well as the relative speeds of the main and secondary memories. A best-first search should be used when it expands a much smaller number of subproblems than that of a depth-first search, and the secondary memory is relatively slow. In contrast, a depth-first search should be used when the number of expanded subproblems is close to that of a best-first search. The choice is not as clear for cases in between these cases are studied. Two strategies are proposed and analyzed: a specialized virtual-memory system that matches the architectural design with the characteristics of the existing algorithm, and a modified branch-and-bound algorithm that can be tuned to the characteristic of the problem and the architecture. The latter strategy illustrates that designing a better algorithm is sometimes more effective that tuning the architecture alone.

[1] T. O. Alanko, H. H. A. Erkio, and I. J. Haikala, "Virtual memory behavior of some sorting algorithms,"IEEE Trans. Software Eng., vol. SE-10, no. 4, pp. 422-431, July 1984.
[2] J. L. Baer and G. R. Sager, "Dynamic improvement of locality in virtual memory systems,"IEEE Trans. Software Eng., vol. SE-2, no. 1, pp. 54-62, Mar. 1976.
[3] H. Berliner, "The B tree search algorithm: A best-first proof procedure,"Artificial Intell., vol. 12, no. 1, pp. 23-40, 1979.
[4] B. S. Brown, F. G. Gustavson, and E. S. Mankin, "Sorting in a paging environment,"Commun. ACM, vol. 13, no. 8, pp. 438-494, Aug. 1970.
[5] C. Comer, "The ubiquitousB-trees,"ACM Comput. Surveys, vol. 11, no. 2, pp. 121-136, June 1979.
[6] S. E. Dreyfus and A. M. Law,The Art and Theory of Dynamic Programming. New York: Academic, 1977.
[7] D. Ferrari, "Improving locality by critical working sets,"Commun. ACM, vol. 17, pp. 614-620, Nov. 1974.
[8] D. Ferrari, "Tailoring programs to models of program behavior,"IBM J. Res. Develop., vol. 19, no. 3, pp. 244-251, May 1975.
[9] D. Ferrari, "The improvement of program behavior,"Computer, pp. 39- 47, Nov. 1976.
[10] P.C. Fischer and R.L. Probert, "Storage Reorganization Techniques for Matrix Computation in a Paging Environment,"Comm. ACM, July 1979, pp. 405-415.
[11] M. R. Garey and D. S. Johnson,Computers and Intractability: A Guide to Theory of NP-Completeness. San Francisco, CA: Freeman, 1979.
[12] D. J. Hatfield and J. Gerald, "Program restructuring for virtual memory,"IBM Syst. J., vol. 10, no. 3, pp. 168-192, 1971.
[13] T. Ibaraki, "Computational efficiency of approximate branch-and-bound algorithms,"Math. Oper. Res., vol. 1, no. 3, pp. 287-298, 1976.
[14] T. Ibaraki, "Theoretical comparisons of search strategies in branch-and-bound algorithms,"Int. J. Computer and Information Sciences, vol. 5, no. 4, pp. 315-343, 1976.
[15] T. Ibaraki, "The power of dominance relations in branch-and-bound algorithms,"J. ACM, vol. 24, no. 2, pp. 264-279, 1977.
[16] T. Ibaraki, "Branch-and-bound procedure and state-space representation of combinatorial optimization problems,"Inform. Contr., vol. 36, pp. 1-27, 1978.
[17] D. E. Knuth and R. W. Moore, "An analysis of alpha-beta pruning,"Artificial Intell., vol. 6, no. 4, pp. 293-326, 1975.
[18] W. Kohler and K. Steiglitz, "Characterization and theoretical comparison of branch-and-bound algorithms for permutation problems,"J. ACM, vol. 21, no. 1, pp. 140-156, 1974.
[19] V. Kumar and L. N. Kanal, "A general branch and bound formulation for understanding and synthesizing and/or tree search procedures,"Artificial Intell., vol. 21, no. 1-2, pp. 179-198, 1983.
[20] E. L. Lawler and D. W. Wood, "Branch and bound methods: A survey,"Oper. Res., vol. 14, pp. 699-719, 1966.
[21] G.-J. Li and B. W. Wah, "Computational efficiency of parallel approximate branch-and-bound algorithms," inProc. Int. Conf. Parallel Processing, IEEE 1984, pp. 473-480.
[22] A. Martelli and U. Montanari, "Optimizing decision trees through heuristically guided search,"Commun. ACM, vol. 21, pp. 1025-1039, Dec. 1978.
[23] A.C. McKellar and E.G. Coffman, Jr., "Organizing Matrices and Matrix Operations for Paged Memory Systems,"Comm. ACM, March 1969, pp. 153-165.
[24] L. Mitten, "Branch and bound methods: General formulation and properties,"Oper. Res., vol. 18, pp. 24-34, 1970.
[25] J. E. Morrison, "User program performance in virtual storage systems,"IBM Syst. J., vol. 5, no. 2, pp. 216-237, 1966.
[26] N. J. Nilsson, inProblem Solving Methods in Artificial Intelligence. New York: McGraw-Hill, 1971.
[27] N. Nilsson,Principles of Artificial Intelligence. Palo Alto, CA: Tioga, 1980.
[28] J. Pearl,Heuristics: Intelligent Search Strategies for Computer Problem Solving. Reading, Mass: Addison-Wesley, 1984.
[29] S. M. Ross, inApplied Probability Models with Optimization Applications. San Francisco, CA: Holden Day, 1970.
[30] A. J. Smith, "Sequentiality and prefetching in database systems,"ACM Trans. Database Syst., vol. 3, no. 3, pp. 223-247, Sept. 1978.
[31] D. R. Smith, "Random trees and the analysis of branch-and-bound procedures,"J. ACM, vol. 31, no. 1, pp. 163-188, 1984.
[32] G. C. Stockman and L. N. Kanal, "Problem reduction representation fo the linguistic analysis of waveforms,"IEEE Trans. Pattern Anal. Machine Intell., vol. PAMI-5, no. 3, pp. 287-298, 1983.
[33] H. S. Stone, "The average complexity of depth-first search," IBM, Res. Rep. RC 10717, 1984.
[34] B. W. Wah and C. F. Yu, "Probabilistic modeling of branch-and-bound algorithms," inProc. COMPSAC, IEEE, 1982, pp. 647-623.
[35] B. W. Wah and Y. W. E. Ma, "MANIP--A multicomputer architecture for solving combinatorial extremum-search problems,"IEEE Trans. Comput., vol. C-33, no. 5, pp. 377-390, May 1984.
[36] B. W. Wah and C. F. Yu, "Stochastic modeling of branch-and-bound algorithms with best-first search,"IEEE Trans. Software Eng., vol. SE-11, no. 9, pp. 922-934, Sept. 1985.
[37] B. W. Wah, G.-J. Li, and C. F. Yu, "Multiprocessing of combinatorial search problems,"Computer, vol. 18, no. 6, pp. 93-108, June 1985.
[38] C. F. Yu and B. W. Wah, "Virtual-memory support for branch-and-bound algorithms," inProc. COMPSAC, IEEE, Nov. 1983, pp. 618- 626.
[39] C. F. Yu and B. W. Wah, "Efficient branch-and-bound algorithms on a two-level memory system," inProc. COMPSAC, IEEE, Nov. 1984, pp. 504-514.
[40] C.-F. Yu, "Efficient combinatorial search algorithms," Ph.D. disertation, School Elec. Eng., Purdue Univ., West Lafayette, IN, Dec. 1986.
[41] C.-F. Yu and B. W. Wah, "Learning dominance relations in combinatorial search problems," inProc. Computer Software and Applications Conf., IEEE, Chicago, IL, Oct. 1986.
[42] R. E. Korf, "Depth-first iterative deepening: An optimal admissible tree search,"Artificial Intell., vol. 25, pp. 97-109, 1985.
[43] R. Korf, "Iterative deepening A*, an optimal admissible tree search," inProc. 9th Int. Joint Conf. Artificial Intelligence, Los Angeles, CA, pp. 1034-1036.

Index Terms:
branch-and-bound algorithms; two-level memory system; best-first search; depth-first search; virtual-memory; storage allocation; storage management; virtual storage
Citation:
C.-F. Yu, B.W. Wah, "Efficient Branch-and-Bound Algorithms on a Two-Level Memory System," IEEE Transactions on Software Engineering, vol. 14, no. 9, pp. 1342-1356, Sept. 1988, doi:10.1109/32.6177
Usage of this product signifies your acceptance of the Terms of Use.