On the Eeciency of Parallel Backtracking

It is known that isolated executions of parallel backtrack search exhibit speedup anomalies. In this paper we present analytical models and experimental results on the average case behavior of parallel backtracking. We consider two types of backtrack search algorithms: (i) simple backtracking (which does not use any heuristic information); (ii) heuristic backtracking (which uses heuristics to order and prune search). We present analytical models to compare the average number of nodes visited in sequential and parallel search for each case. For simple backtracking, we show that the average speedup obtained is (i) linear when distribution of solutions is uniform and (ii) super-linear when distribution of solutions is non-uniform. For heuristic backtracking, the average speedup obtained is at least linear (i.e., either linear or superlinear), and the speedup obtained on a subset of instances (called diicult instances) is superlinear. We also present experimental results over many synthetic and practical problems on various parallel machines, that validate our theoretical analysis.

[1]  Vipin Kumar,et al.  A Parallel Implementation of Iterative-Deepening-A* , 1987, AAAI.

[2]  Dharma P. Agrawal,et al.  Randomized Parallel Algorithms for Prolog Programs and Backtracking Applications , 1987, International Conference on Parallel Processing.

[3]  Sartaj Sahni,et al.  Anomalies in Parallel Branch-and-Bound Algorithms , 1984 .

[4]  Vipin Kumar,et al.  Parallel Branch-and-Bound Formulations for AND/OR Tree Search , 1984, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[5]  Edward F. Gehringer,et al.  Superlinear Speedup Through Randomized Algorithms , 1985, International Conference on Parallel Processing.

[6]  Ellis Horowitz,et al.  Fundamentals of Computer Algorithms , 1978 .

[7]  William A. Kornfeld The Use of Parallelism to Implement a Heuristic Search , 1981, IJCAI.

[8]  Harold S. Stone,et al.  The Average Complexity of Depth-First Search with Backtracking and Cutoff , 1986, IBM J. Res. Dev..

[9]  Benjamin W. Wah,et al.  The status of manip - a multicomputer architecture for solving, combinatorial extremum-search problems , 1984, ISCA '84.

[10]  DAVID P. HELMBOLD,et al.  Modeling Speedup (n) Greater than n , 1990, IEEE Trans. Parallel Distributed Syst..

[11]  Kai Li,et al.  IVY: A Shared Virtual Memory System for Parallel Computing , 1988, ICPP.

[12]  V. Rich Personal communication , 1989, Nature.

[13]  V. Nageshwara Rao,et al.  Scalable parallel formulations of depth-first search , 1990 .

[14]  Udi Manber,et al.  DIB—a distributed implementation of backtracking , 1987, TOPL.

[15]  Masaharu Imai,et al.  A Parallel Searching Scheme for Multiprocessor Systems and Its Application to Combinatorial Problems , 1979, IJCAI.

[16]  Vipin Kumar,et al.  Automatic Test Pattern Generation on Multiprocessors: A Summary of Results , 1989, KBCS.

[17]  Vipin Kumar,et al.  Scalable Load Balancing Techniques for Parallel Computers , 1994, J. Parallel Distributed Comput..

[18]  Oliver Vornberger,et al.  Superlinear Speedup for Parallel Backtracking , 1987, ICS.

[19]  Srinivas Patil,et al.  A Parallel Branch and Bound Algorithm for Test Generation , 1989, 26th ACM/IEEE Design Automation Conference.

[20]  Judea Pearl,et al.  Heuristics : intelligent search strategies for computer problem solving , 1984 .

[21]  Laxmikant V. Kalé,et al.  Consistent Linear Speedups to a First Solution in Parallel State-Space Search , 1990, AAAI.