Iterative deepening depth-first search

Iterative deepening depth-first search
ClassSearch algorithm
Data structureTree, Graph
Worst-case performance, where is the branching factor and is the depth of the shallowest solution
Worst-case space complexity[1]
Optimalyes (for unweighted graphs)
Preview warning: Page using Template:Infobox algorithm with unknown parameter "complete"

In computer science, iterative deepening search or more specifically iterative deepening depth-first search[1] (IDS or IDDFS) is a state space/graph search strategy in which a depth-limited version of depth-first search is run repeatedly with increasing depth limits until the goal is found. IDDFS is optimal, meaning that it finds the shallowest goal.[2] Since it visits all the nodes in the search tree down to depth before visiting any nodes at depth , the cumulative order in which nodes are first visited is effectively the same as in breadth-first search. However, IDDFS uses much less memory.[1]

  1. ^ a b c Korf, Richard (1985). "Depth-first Iterative-Deepening: An Optimal Admissible Tree Search". Artificial Intelligence. 27: 97–109. doi:10.1016/0004-3702(85)90084-0. S2CID 10956233.
  2. ^ Cite error: The named reference :0 was invoked but never defined (see the help page).