Bidirectional search algorithms interleave two separate searches, a normal search forward from the start state, and a search backward from the goal. It is well known that adding a heuristic to unidirectional search dramatically reduces the search effort. By contrast, despite decades of research, bidirectional heuristic search has not yet had a major impact. Additionally, no comprehensive theory was ever devised to understand the nature of bidirectional heuristic search. In this paper we aim to close this gap. We first present MM, a novel bidirectional heuristic search algorithm. Unlike previous bidirectional heuristic search algorithms, MM's forward and backward searches are guaranteed to “meet in the middle”, i.e. never expand a node beyond the solution midpoint. Based on this unique attribute we present a novel framework for comparing MM, A*, and their brute-force variants. We do this by dividing the entire state space into disjoint regions based on their distance from the start and goal. This allows us to perform a comparison of these algorithms on a per region basis and identify conditions favoring each algorithm. Finally, we present experimental results that support our theoretical analysis.
Bibliographical noteFunding Information:
Thanks to Joseph Barker for answering questions and providing extra data related to  and to Sandra Zilles and André Grahl Pereira for suggesting improvements in the theoretical analysis of MM . Financial support for this research was in part provided by the Natural Sciences and Engineering Research Council of Canada (NSERC) and by Israel Science Foundation (ISF) grants # 417/3 and # 212/17 . Computational facilities for some of our experiments were provided by Compute Canada. This material is based upon work supported by the National Science Foundation under Grant No. 1551406 .
© 2017 Elsevier B.V.
- Bidirectional search
- Heuristic search