Consistent heuristic

Consistent heuristic

In computer science, a consistent (or monotone) heuristic function is a strategy for search that approaches the solution 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:

h(N) \leq c(N,P) + h(P) and
h(G) = 0.\,

where

  • h is the consistent heuristic function
  • N is any node in the graph
  • P is any child of N
  • G is any goal node.

A consistent heuristic is also admissible. This is proved by induction on m, the length of the best path from node to goal. By assumption, h(N_m) \leq h^*(N_m), where h * (n) denotes the cost of the shortest path from n to the goal. Therefore,

h(N_{m+1}) \leq c(N_{m+1}, N_m) + h(N_m) \leq c(N_{m+1}, N_m) + h^*(N_m) = h^*(N_{m+1}),

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

Note: not all admissible heuristics are consistent. However, an admissible heuristic h, can be made into a consistent heuristic, h', through the following adjustment:

 h'(P) \gets \max(h(P), h'(N) - c(N,P))

(Known as the pathmax[1] equation.)

Consequences of monotonicity

Comparison of an admissible but inconsistent and a consistent heuristic evaluation function.

Consistent heuristics are called monotone because the estimated final cost of a partial solution, f(Nj) = g(Nj) + h(Nj) is monotonically non-decreasing along the best path to the goal, where g(N_j)=\sum_{i=2}^j c(N_{j-1},N_j) is the cost of the best path from start node N1 to Nj. It's necessary and sufficient for a heuristic to obey the triangle inequality in order to be consistent.[2]

In the A* search algorithm, using a consistent heuristic means that once a node is expanded, the cost by which it was reached is the lowest possible, under the same conditions that Dijkstra's algorithm requires in solving the shortest path problem (no negative cost cycles). In fact, if the search graph is given cost c'(N,P) = c(N,P) + h(P) − h(N) for a consistent h, then A* is equivalent to best-first search on that graph using Dijkstra's algorithm[1]. In the unusual event that an admissible heuristic is not consistent, a node will need repeated expansion every time a new best (so-far) cost is achieved for it.

References

  1. ^ a b Russell, Stuart; Peter Norvig (1995). Artificial intelligence: a modern approach. Prentice-Hall. ISBN 0-13-103805-2. 
  2. ^ Pearl, Judea (1984). Heuristics: Intelligent Search Strategies for Computer Problem Solving. Addison-Wesley. ISBN 0-201-05594-5. 

External links

  • CS141 Lecture from Brown University [1]

Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Heuristic function — A heuristic function or simply a heuristic is a function that ranks alternatives in various search algorithms at each branching step basing on an available information in order to make a decision which branch is to be followed during a… …   Wikipedia

  • Admissible heuristic — In computer science, specifically in algorithms related to Pathfinding, a heuristic function is said to be admissible if it is no more than the lowest cost path to the goal. In other words, a heuristic is admissible if it never overestimates the… …   Wikipedia

  • Dijkstra's algorithm — Not to be confused with Dykstra s projection algorithm. Dijkstra s algorithm Dijkstra s algorithm runtime Class Search algorithm Data structure Graph Worst case performance …   Wikipedia

  • Consistency (disambiguation) — Consistency can refer to: Consistency (negotiation), the psychological need to be consistent with prior acts and statements Consistency , an 1887 speech by Mark Twain The consistency criterion, a measure of a voting system requiring that where… …   Wikipedia

  • List of mathematics articles (C) — NOTOC C C closed subgroup C minimal theory C normal subgroup C number C semiring C space C symmetry C* algebra C0 semigroup CA group Cabal (set theory) Cabibbo Kobayashi Maskawa matrix Cabinet projection Cable knot Cabri Geometry Cabtaxi number… …   Wikipedia

  • Shortest path problem — A graph with 6 vertices and 7 edges In graph theory, the shortest path problem is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized. An example is… …   Wikipedia

  • Occam's razor — For the aerial theatre company, see Ockham s Razor Theatre Company. It is possible to describe the other planets in the solar system as revolving around the Earth, but that explanation is unnecessarily complex compared to the modern consensus… …   Wikipedia

  • History of the Church–Turing thesis — This article is an extension of the history of the Church–Turing thesis. The debate and discovery of the meaning of computation and recursion has been long and contentious. This article provides detail of that debate and discovery from Peano s… …   Wikipedia

  • History of the Church-Turing thesis — This article is an extension of the history of the Church Turing thesis.The debate and discovery of the meaning of computation and recursion has been long and contentious. This article provides detail of that debate and discovery from Peano s… …   Wikipedia

  • Scientific method — …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”