Run Depth Limited Search (DLS) repeatedly with increasing depth:

Combines:

  • DFS space efficiency
  • BFS completeness

Tradeoff: Re-expands nodes — but cost is acceptable

IDS Properties

  • Complete? Yes (finite branching)
  • Optimal? Yes (unit step costs)
  • Time:
  • Space:

Same asymptotic time as BFS, space like DFS

Search Tree Example

Left-to-right expansion:

depth 0:     S

depth 1:     A   B   C

depth 2:     D E F G
                   (Goal)

depth 3:     H I

Children are expanded strictly left-to-right

IDS Cost: Re-expansion Analysis

Example expansion counts per iteration:

  • (stops when goal reached)

Total expansions performed by IDS until goal:

Unique nodes touched (before finding goal): unique nodes

Why re-expansion is acceptable:

  • Most work is near the top of the tree (small depth), which is cheap
  • As depth grows, the number of nodes at depth dominates anyway
  • IDS keeps space like DFS: , not like BFS