Analytical Results on the BFS vs. DFS Algorithm Selection Problem. Part I: Tree Search
Breadth-first search (BFS) and depth-first search (DFS) are the two most fundamental search algorithms. We derive approximations of their expected runtimes in complete trees, as a function of tree depth and probabilistic goal distribution. We also demonstrate that the analytical approximations are close to the empirical averages for most parameter settings, and that the results can be used to predict the best algorithm given the relevant problem features.
- Everitt, T., Hutter, M.: A topological approach to meta-heuristics: analytical results on the BFS vs. DFS algorithm selection problem. Technical report, Australian National University (2015a). arXiv:1509.02709 [cs.AI]
- Everitt, T., Hutter, M.: Analytical results on the BFS vs. DFS algorithm selection problem. Part II: graph search. In: 28th Australian Joint Conference on Artificial Intelligence (2015b)Google Scholar
- Kilby, P., Slaney, J., Thiébaux, S., Walsh, T.: Estimating search tree size. In: Proceedings of the 21st National Conference of Artificial Intelligence. AAAI, Menlo Park (2006)Google Scholar
- Kotthoff, L.: Algorithm selection for combinatorial search problems: a survey. AI Mag., 1–17 (2014)Google Scholar
- Lelis, L.H.S., Otten, L., and Dechter, R.: Predicting the size of Depth-first Branch and Bound search trees. In: IJCAI International Joint Conference on Artificial Intelligence, pp. 594–600 (2013)Google Scholar
- Peixoto, T.P.: The graph-tool python library. figshare (2015)Google Scholar