General Points about Heuristics
- The heuristic function h is an indicator of
"adventurousness" in that in Algorithms A and A* a good heuristic allows
successive nodes on a single path to be expanded in succession
even when several "good" steps are intermixed
with a few "bad" steps.
- Unfortunately, A* often suffers because it cannot venture down
a single path unless it is almost continuously having success
(i.e., h is decreasing). Any failure to decrease h
will almost immediately cause the search to switch to another path.
- In order to devise an admissible heuristic, h must
frequently be very simple and therefore resorts to (almost) uniform-cost
search through parts of the search space.
- If optimality is not required, using a heuristic that occasionally
overestimates the actual cost but is usually very close to the
actual cost (over or under), will result in many fewer nodes being
expanded to find a solution than using a provably admissible heuristic.