Bounded Depth-First Search
Depth-first search can spend much time (perhaps infinite time) exploring a very deep path that does not contain a solution, when a shallow solution exists.
An easy way to solve this problem is to put a maximum depth bound on the search. Beyond the depth bound , a failure is generated automatically without exploring any deeper.
Problems: