I came across the term admissible heuristics in context of A* Search algorithm. Can someone explain (or give an intuition) why the heuristic function h is admissible only if it doesn't over-estimate the actual distance?
-
Did you read the Wikipedia page? – ziggystar Oct 27 '13 at 07:48
-
Do you understand the reason why in A* the heuristic must not overestimate the remaining distance to the goal? – Ron Teller Oct 27 '13 at 07:58
-
@RonTeller Let's say *should*. – ziggystar Oct 27 '13 at 08:08
-
@RonTeller no thats exactly what im asking – ishan3243 Oct 27 '13 at 08:24
2 Answers
Think about the stopping condition of A*, the algorithm stops if it reaches the goal node with a certain F
value, where F
equals G
- the path constructed so far from the starting point plus the heuristic value H
which represents an estimation of the remaining path to the goal.
At the goal node, F
equals G
as the estimation of the remaining path to the goal is 0.
The stopping condition is valid only if H
is admissible, since then we can determine that if the F
value we calculated at the goal node is smaller than any other F
value we calculated in any other node, we can surely determine it is the shortest path, as no other path may reach the goal with a smaller F
value.
If it wouldn't be admissible, then there may be some other node for whom we calculated F
with an overestimation of the remaining path to the goal, and we can't stop the algorithm as a shorter path may exist.

- 1,880
- 1
- 12
- 23
For those who do not seek the resources provided free of cost and free of effort.
In computer science, specifically in algorithms related to pathfinding, a heuristic function is said to be admissible if it never overestimates the cost of reaching the goal, i.e. the cost it estimates to reach the goal is not higher than the lowest possible cost from the current point in the path. An admissible heuristic is also known as an optimistic heuristic.
This is a link to Wikipedia:
http://en.wikipedia.org/wiki/Admissible_heuristic
Concerning the second question
A heuristic is admissible when it doesn't overestimate the true cost, simply because it is defined this way.

- 28,410
- 9
- 72
- 124
-
ok, instead of being cocky you should read my question again.....i am asking for an intuition why this is true in context of A* search. Wikipedia doesn't give any arguments in support of it.....it just states the facts. – ishan3243 Oct 27 '13 at 08:14
-
@ishan3243 To be fair my last sentence gives the sole correct answer to your question. It's simply defined this way. – ziggystar Oct 27 '13 at 10:10
-
I don't believe so.....there has to be a reason behind why it is defined like that.. If you see the other answer I think its somewhat explained – ishan3243 Oct 27 '13 at 10:13
-
Of course, there is a reason (for which you didn't ask): A* with admissible heuristic (and some further assumptions) yields optimal results. – ziggystar Oct 27 '13 at 11:03
-
i don't have time for this.....thank u for your time anyways :) I appreciate it... – ishan3243 Oct 27 '13 at 11:58