0

Is there a term or expression for a heuristic function (as in pathfinding, state space, or combinatorial search) which can estimate the distance between any two nodes (goal or non-goal nodes)?

Furthermore, is there a term for such a function which never overestimates the aforementioned distance?

A Frayed Knot
  • 476
  • 5
  • 20

1 Answers1

1

In the context of the A* search algorithm, a heuristic estimate which never overestimates the distance is called "admissible".

Other than "heuristic" and "estimate", I don't think there's a consistent, distinguished term for the function itself.

comingstorm
  • 25,557
  • 3
  • 43
  • 67
  • Right, but by definition, admissible heuristics estimate the distance to a goal state. Is there any term for the concept of a heuristic which can admissibly estimate the distance between two non goal nodes? – A Frayed Knot Jan 22 '16 at 22:01
  • Practically speaking, in many if not most cases, your heuristic will be naturally applicable to all nodes anyway. I have never seen a need for such a distinction, but it seems plausible terminology to distinguish such a "general heuristic" from a "restricted heuristic" which applies to goal nodes only – comingstorm Jan 22 '16 at 22:15
  • In cases like the 8-puzzle, a typical heuristic function wouldn't take two states as input, but rather a single state with the intention of estimating that state's distance to the goal state. I've been working on an algorithm in which having an admissible estimate between two non-goal nodes is crucial. I started to generate documentation but I feel like it's been nit-picked over my usage of the term "admissible heuristic" when the function estimates between two non-goal nodes. – A Frayed Knot Jan 22 '16 at 23:44
  • You're doing math, so you get to define your terms. Write a section explaining what "admissible heuristic" means in the context of your algorithm, and refer all nit-pickers to it... – comingstorm Jan 22 '16 at 23:56