Consistent Heuristic

Consistent Heuristic

In computer science, a consistent (or monotone) heuristic function is an estimated path cost to a goal for a search that approximates the actual path cost in an incremental way without taking any step back. Formally, for every node N and every successor P of N generated by any action a, the estimated cost of reaching the goal from N is no greater than the step cost of getting to P plus the estimated cost of reaching the goal from P. In other words:

and

where

  • h is the consistent heuristic function
  • N is any node in the graph
  • P is any descendant of N
  • G is any goal node
  • c(N,P) is the cost of reaching node P from N

A consistent heuristic is also admissible, i.e. it never overestimates the cost of reaching the goal (the opposite however is not always true!). This is proved by induction on, the length of the best path from node to goal. By assumption, where denotes the cost of the shortest path from n to the goal. Therefore,

,

making it admissible. ( is any node whose best path to the goal, of length m+1, goes through some immediate child whose best path to the goal is of length m.)

However, an admissible heuristic, can be made into a consistent heuristic, through the following adjustment:

(Known as the pathmax equation.)

Read more about Consistent Heuristic:  Consequences of Monotonicity

Famous quotes containing the word consistent:

    The fact that behavior is “normal,” or consistent with childhood development, does not necessarily make it desirable or acceptable...Undesirable impulses do not have to be embraces as something good in order to be accepted as normal. Neither does children’s behavior that is unacceptable have to be condemned as “bad,” in order to bring it under control.
    Elaine Heffner (20th century)