
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
Nihar R. Mahapatra, Shantanu Dutt, "Scalable Global and Local Hashing Strategies for Duplicate Pruning in Parallel A* Graph Search," IEEE Transactions on Parallel and Distributed Systems, vol. 8, no. 7, pp. 738756, July, 1997.  
BibTex  x  
@article{ 10.1109/71.598348, author = {Nihar R. Mahapatra and Shantanu Dutt}, title = {Scalable Global and Local Hashing Strategies for Duplicate Pruning in Parallel A* Graph Search}, journal ={IEEE Transactions on Parallel and Distributed Systems}, volume = {8}, number = {7}, issn = {10459219}, year = {1997}, pages = {738756}, doi = {http://doi.ieeecomputersociety.org/10.1109/71.598348}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, }  
RefWorks Procite/RefMan/Endnote  x  
TY  JOUR JO  IEEE Transactions on Parallel and Distributed Systems TI  Scalable Global and Local Hashing Strategies for Duplicate Pruning in Parallel A* Graph Search IS  7 SN  10459219 SP738 EP756 EPD  738756 A1  Nihar R. Mahapatra, A1  Shantanu Dutt, PY  1997 KW  A* algorithm KW  branchandbound search KW  communication delay KW  duplicate pruning KW  graph search KW  isoefficiency function KW  kary ncubes KW  parallel A* KW  scalability KW  traveling salesman problem. VL  8 JA  IEEE Transactions on Parallel and Distributed Systems ER   
Abstract—For many applications of the A* algorithm, the state space is a graph rather than a tree. The implication of this for parallel A* algorithms is that different processors may perform significant duplicated work if interprocessor duplicates are not pruned. In this paper, we consider the problem of duplicate pruning in parallel A* graphsearch algorithms implemented on distributedmemory machines. A commonly used method for duplicate pruning uses a hash function to associate with each distinct node of the search space a particular processor to which duplicate nodes arising in different processors are transmitted and thereby pruned. This approach has two major drawbacks. First, load balance is determined solely by the hash function. Second, node transmissions for duplicate pruning are global; this can lead to hot spots and slower message delivery. To overcome these problems, we propose two different duplicate pruning strategies: 1) To achieve good load balance, we decouple the task of duplicate pruning from load balancing, by using a hash function for the former and a load balancing scheme for the latter. 2) A novel searchspace partitioning scheme that allocates disjoint parts of the search space to disjoint subcubes in a hypercube (or disjoint processor groups in the target architecture), so that duplicate pruning is achieved with only intrasubcube or adjacent intersubcube communication. Thus message latency and hotspot probability are greatly reduced. The above duplicate pruning schemes were implemented on an nCUBE2 hypercube multicomputer to solve the Traveling Salesman Problem (TSP). For uniformly distributed intercity costs, our strategies yield a speedup improvement of 13 to 35 percent on 1,024processors over previous methods that do not prune any duplicates, and 13 to 25 percent over the previous hashingonly scheme. For normally distributed data the corresponding figures are 135 percent and 10 to 155 percent. Finally, we analyze the scalability of our parallel A* algorithms on
[1] S. Anderson and M.C. Chen, "Parallel BranchandBound Algorithms on the Hypercube," Proc. Second Conf. Hypercube Multiprocessors, pp. 309317, 1987.
[2] P.P. Chakrabarti, S. Ghose, A. Acharya, and S.C. De Sarkar, "Heuristic Search in Restricted Memory," Artificial Intelligence, vol. 41, pp. 197221, 1989.
[3] T.H. Cormen, C.E. Leiserson, and R.L. Rivest, Introduction to Algorithms, chapter 37, pp. 978983. The MIT Press, McGrawHill Book Company, 1992.
[4] W.J. Dally, "Performance Analysis of kary nCube Interconnection Networks," IEEE Trans. Computers, vol. 39, no. 6, pp. 775785, June 1992.
[5] S. Dutt and N.R. Mahapatra, "Parallel A* Algorithms and Their Performance on Hypercube Multiprocessors," Proc. Seventh Int'l Parallel Processing Symp., pp. 797803, 1993.
[6] S. Dutt and N.R. Mahapatra, Scalable LoadBalancing Strategies for Parallel a* Algorithms," J. Parallel and Distributed Computing, vol. 22, no. 3, pp. 488505, special issue on scalability of parallel algorithms and architectures, Sept. 1994.
[7] J. Eckstein, "Parallel BranchandBound Algorithms for General Mixed IntegerProgramming on the CM5," Technical Report TMC257, Thinking Machines Corp., Aug. 1993.
[8] M. Evett, J. Hendler, A. Mahanti, and D. Nau, "PRA*: A MemoryLimited Heuristic Search Procedure for the Connection Machine," Proc. Third Symp. Frontiers of Massively Parallel Computation, pp. 145149, 1990.
[9] J.L. Hennessy and D.A. Patterson, Computer Architecture: A Quantitative Approach, Morgan Kaufmann, San Mateo, Calif., 1990.
[10] R.C. Holte, C. Drummond, and M.B. Perez, "Searching with Abstractions: A Unifying Framework and New HighPerformance Algorithm," Proc. 10th Canadian Conf. Artificial Intelligence, pp. 263270, 1994.
[11] R. Karp and Y. Zhang, "Randomized Parallel Algorithms for Backtrack Search and BranchandBound Computation," J. ACM, vol. 40, pp. 765789, 1993.
[12] V. Kumar, K. Ramesh, and V.N. Rao, "Parallel BestFirst Search of StateSpace Graphs: A Summary of Results," Proc. Seventh Nat'l Conf. Artificial Intelligence (AAAI 88), vol. 1, pp. 122127,Saint Paul, Minn., Aug.2126, 1988.
[13] V. Kumar and V.N. Rao, "Load Balancing on the Hypercube Architecture," Proc. Fourth Conf. Hypercubes, Concurrent Computers and Applications, vol. 1, pp. 603608,Monterey, Calif., Mar.68, 1989.
[14] D. Knuth, The Art of Computer Programming, vol. 3: Sorting and Searching. AddisonWesley, 1973.
[15] E.L. Lawler, Combinatorial Optimization: Networks and Matroids.New York: Holt, Rinehart, and Winston, 1976.
[16] J.D. Little et al., "An Algorithm for the Traveling Salesman Problem," Operations Research, vol. 11, no. 6, pp. 972989, 1963.
[17] R. Luling and B. Monien, "Load Balancing for Distributed Branch&Bound Algorithms," Proc. Sixth Int'l Parallel Processing Symp., pp. 543548,Beverly Hills, Calif., Mar.2326, 1992.
[18] N.R. Mahapatra and S. Dutt, "New Anticipatory Load Balancing Strategies for Parallel A* Algorithms," Am. Math. Society's Proc. DIMACS Series in Discrete Math. and Theoretical Computer Science, vol. 22, pp. 197232, 1995.
[19] N.R. Mahapatra and S. Dutt, "An Efficient DelayOptimal Distributed Termination Detection Algorithm," submitted to IEEE Trans. Parallel and Distributed Systems.
[20] G. Manzini and M. Somalvico, "Probabilistic Performance Analysis of Heuristic Search Using Parallel Hash Tables," Proc. Int'l Symp. Artificial Intelligence and Math.,Ft. Lauderdale, Fla., Jan 1990.
[21] D.L. Miller and J.F. Pekny, "Results from a Parallel Branch and Bound Algorithm for Solving Large Asymmetric Traveling Salesman Problems," Operations Research Letters, vol. 8, pp. 129135, 1989.
[22] J. Mohan, "Experience with Two Parallel Programs Solving the Traveling Salesman Problem," Proc. 1983 Int'l Conf. Parallel Processing, pp. 191193,Bellaire, Mich., Aug.2326, 1983.
[23] E. Rich and K. Knight, Artificial Intelligence, second edition. McGrawHill, 1995.
[24] V.A. Saletore, "A Distributed and Adaptive Dynamic Load Balancing Scheme for Parallel Processing of MediumGrain Tasks," Proc. Fifth Distributed Memory Computing Conf., 1990.
[25] A.K. Sen and A. Bagchi, "Fast Recursive Formulations for BestFirst Search that Allow Controlled Use of Memory," Proc. 11th Int'l Joint Conf. Artificial Intelligence (IJCAI89), pp. 297302,Detroit, Mich., Aug.225, 1989.
[26] N.A. Sherwani, Algorithms for VLSI Physical Design Automation.Norwell, Mass.: Kluwer Academic Publishers, 1993.
[27] D.R. Smith, "Random Trees and the Analysis of BranchandBound Procedures," J. ACM, vol. 31, no. 1, pp. 163188, Jan 1984.
[28] B.W. Wah and Y.Q. Ma,“MANIP—a parallel computer system for implementing branchandbound algorithms,” Proc. 8th Ann. Symp. on Computer Architecture, pp. 239262, 1982.