The reason best-first search is not optimal is that heuristic functions,
being
estimates, are fallible:
- In the example, B is estimated as closer to J
than C in the tree, though in reality it is not.
Therefore the name
best-first search is somewhat of a
misnomer.
Later we will modify the search algorithm to make it optimal despite the
fallibility of heuristic functions.