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
