Informed Methods
Algorithm A*
Use the same evaluation function as used by Algorithm A except add
the constraint that for all nodes n in the search space,
h(n) <= h*(n), where h*(n) = the true cost
of the minimal cost path from n to a goal.
- When the condition h(n) <= h*(n) holds, we say
that h is admissible.
- Using an admissible heuristic guarantees that a node on the
optimal path can never look so bad that you bypass it forever
- A* is complete whenever the branching factor is finite,
and every operator has a fixed positive cost
- A* is admissible
- If h(n) = h*(n) for all n, then
only the nodes on the optimal solution path will be expanded.
So, no extra work will be performed.
- If h(n) = 0 for all n, then this is an
admissible heuristic and results in A* performing exactly as the
Uniform-Cost Search does
- If h1(n) < h2(n) <= h*(n) for all n that are not goal nodes,
then h2 is a better heuristic than h1 in the sense that
if A1* is a version of the A* algorithm which uses h1, and
A2* is a version of the A* algorithm which uses h2, then every
node expanded by A2* is also expanded by A1*. In other words,
A1* expands at least as many nodes as A2*. We say that A2* is
better informed than A1*.
- The closer h is to h*, the fewer extra nodes
that will be expanded