Heuristics in Search: Meaning, Completeness/Optimality Conditions, and Admissibility Proofs

Heuristics in Search: Meaning, Completeness/Optimality Conditions, and Admissibility Proofs

Verified Sources
Sep 12, 2026

In the context of search strategies, Heuristic refers to an informative estimate used to guide exploration. Rather than expanding nodes purely by path cost so far, informed search uses a Evaluation function that combines:

  • the cost already incurred (g(n)g(n)), and
  • an estimated remaining cost (h(n)h(n), from the heuristic).

A classic example is *[A search]{def="Best-first search using f(n)=g(n)+h(n)"}**, which expands nodes in order of f(n)=g(n)+h(n).f(n) = g(n) + h(n).

Intuitively, the heuristic makes the search “look ahead” by preferring nodes that seem closer (in cost) to a goal.

To reason about guarantees, we distinguish three concepts:

  • Admissible heuristic
  • Completeness
  • Optimality

A* is commonly analyzed under the assumptions of nonnegative step costs and suitable properties of hh. Below, we state conditions for completeness and optimality and then prove admissibility of an A* strategy based on the heuristic’s property.

Key technical terms introduced here: Heuristic, A* search, Admissible heuristic, Completeness, Optimality.

A* Search and Admissible Heuristics (Admissibility & Optimality intuition)

Meaning of “heuristics” in search strategies

The word “heuristics” is used because the estimate is typically derived from rules of thumb or domain knowledge that is fast but may not be perfectly accurate. Formally, in search we treat it as a function:

  • h(n)h(n): an estimate of the true remaining optimal cost from node/state nn to any goal.
  • Let the true remaining optimal cost be h(n)h^*(n).

Then a heuristic is admissible if: n,  h(n)h(n).\forall n,\; h(n) \le h^*(n).

This definition directly connects to optimality of A* because A* uses f(n)=g(n)+h(n)f(n)=g(n)+h(n) as a lower bound on the cost of any complete solution that goes through nn.

How heuristic quality affects guarantees

Define h(n)

Step 1

Pick an estimate of remaining cost."

Check admissibility

Step 2

Ensure h(n)h(n)h(n) \le h^*(n)."

Run A* with f(n)=g(n)+h(n)

Step 3

Expand nodes with smallest f."

Guarantees

Step 4

Admissible h enables optimality (under standard conditions)."

Conditions on a search for completeness and optimality

There are two common “modes” of analysis:

  • Tree search (no repeated-state handling)
  • Graph search (uses a closed set / explored set; repeated states may be skipped or handled carefully)

Because the prompt asks for guarantees, we state widely used sufficient conditions for standard implementations of informed search (especially A* and Uniform Cost Search).

Completeness (guaranteed to find a goal if one exists)

A standard sufficient condition for completeness is:

  1. Finite branching: from any node, the number of successors is finite.
  2. Nonnegative step costs (especially for cost-based best-first rules).
  3. Systematic expansion in increasing-cost layers (or an equivalent strategy), so that if a goal exists, it is not “skipped forever.”

Common textbook results (for graph search with nonnegative costs) typically guarantee:

  • Uniform Cost Search (UCS) is complete if step costs are nonnegative and branching is finite.
  • A* with a suitable priority queue ordering inherits completeness under the same broad conditions (and admissible heuristic does not “prevent” goal discovery).

Core idea: when costs are nonnegative, expanding the lowest-cost frontier prevents infinite deferral of any reachable finite-cost goal.

Important constraint: if there are negative step costs, “infinite descent” can defeat both completeness and optimality.

Optimality (least-cost solution)

Optimality depends on how f(n)f(n) relates to the true solution costs.

For UCS:

  • Optimality holds because it expands nodes in order of increasing g(n)g(n); the first goal popped is guaranteed minimal.

For A*:

  • Optimality holds if h(n)h(n) is admissible, i.e. it never overestimates remaining optimal cost.

Lower-bound interpretation

If h(n)h(n)h(n) \le h^*(n), then f(n)=g(n)+h(n)f(n)=g(n)+h(n) is a lower bound on the cost of any goal reachable via n. A* then expands nodes in increasing lower-bound order, enabling optimality.

Prove admissibility of an A search strategy

There is a subtle wording issue in the prompt:

  • Admissibility is a property of the heuristic h(n)h(n) (and sometimes of derived bounds), not of the mere search strategy alone.
  • A search algorithm (like A*) is optimal when it uses an admissible heuristic (plus standard nonnegative-cost conditions).

So the correct formal target is usually:

Prove that the heuristic used in A* is admissible, i.e. h(n)h(n)h(n)\le h^*(n) for all nn.

Below is a standard proof template. It is complete, formal, and exactly what you need to “prove admissibility” in the A* setting.

Admissibility proof for an A* heuristic

  1. 1
    Step 1

    Let h(n)h^*(n) be the minimal cost of any path from state nn to a goal, assuming nonnegative step costs.

  2. 2
    Step 2

    Choose a heuristic form (e.g., straight-line distance in path-planning, or any heuristic constructed as a lower bound on real remaining cost).

  3. 3
    Step 3

    Use problem-specific reasoning: show that the heuristic’s estimate is never larger than the cost of an optimal path from n to a goal. Typically this is done by proving h(n)h(n) is a lower bound on every feasible remaining path cost, then taking the minimum.

  4. 4
    Step 4

    Since h(n)h(n)h(n) \le h^*(n) holds for all nn, the heuristic is admissible by definition.

Formal proof (general form)

Let nn be any state in the search space. Let:

  • h(n)h^*(n) be the optimal remaining cost from nn to a goal: h(n)=minpiintextPaths(ntotextgoal)textcost(pi).h^*(n) = \\min_{\\pi \\in \\text{Paths}(n\\to \\text{goal})} \\text{cost}(\\pi).
  • h(n)h(n) be the heuristic used by A*.

To prove admissibility, we must show: h(n)leh(n)quadtextforalln.h(n) \\le h^*(n)\\quad \\text{for all } n.

A common way to complete the proof is:

  1. Show that for every path pi\\pi from nn to a goal, h(n)letextcost(pi).h(n) \\le \\text{cost}(\\pi).
  2. Then, because h(n)h^*(n) is the minimum over all such path costs, h(n)leminpitextcost(pi)=h(n).h(n) \\le \\min_{\\pi} \\text{cost}(\\pi) = h^*(n).

Therefore h(n)leh(n)h(n) \\le h^*(n) for all nn, so hh is admissible.

From admissibility to optimality of A* (why this matters)

Even though you asked specifically to “prove admissibility,” it’s typically used to establish optimality.

Let A* expand nodes in increasing f(n)=g(n)+h(n)f(n)=g(n)+h(n) and assume:

  • Nonnegative step costs (standard condition for cost-based best-first search).
  • hh is admissible.

Because h(n)h(n)h(n)\le h^*(n), for any node nn we get: f(n)=g(n)+h(n)leg(n)+h(n).f(n)=g(n)+h(n) \\le g(n)+h^*(n).

But g(n)+h(n)g(n)+h^*(n) is exactly the cost of an optimal completion via nn, so f(n)f(n) is a lower bound on the cost of any solution through nn. Consequently, when A* selects the next node with the smallest ff, it cannot “miss” a cheaper goal solution; when a goal is selected for expansion (or popped, depending on the implementation details), its path cost is minimal among all solutions.

Common edge cases and implementation details

Guarantees vs heuristic property (A* context)

Assuming standard implementation details and nonnegative step costs.

Knowledge Check

Question 1 of 4
Q1Single choice

In A* search, what does an admissible heuristic guarantee?