CSCE 420 Lecture 5

From Notes
Jump to navigation Jump to search

« previous | Tuesday, January 29, 2013 | next »


Informed Search Algorithms

Until today we've been talking about uninformed search algorithms (DFS, BFS, UC, ID)

  • Even though ID has the best-case time and space complexity, it's still exponential

Heuristic search: "use knowledge" (Best-first, A*), but what is knowledge?

  • heuristic for navigation: estimated distance to goal could be straight-line distance
  • heuristic also represents estimate of problem difficulty

Best First Search

Use Uniform cost, but priority queue will be sorted on , the estimated cost remaining from to goal, instead of , the total path cost from root to .

Limitation: you can be led astray by inaccuracy of .

Space complexity is

A* Search

Same as Best First Search, but keep priority queue sorted on a new score , which represents the estimated path cost from root to goal, passing through .


Theorem

A* is optimal if is admissible.

is admissible if it never overestimates the true distance to the goal: , where is the true path cost from to goal.

Straight-line distance is admissible:

  • best case:
  • trivial case:

Why is A* optimal?

Proof. Assume some node exists that has a better solution than .

Like in UC, increases monotonically (guaranteed by admissibility).

At the point would have been dequeued, some nodes in the path from root to would have already been in the queue with shorter distances/costs.

Lemma

A* explores nodes in state space in order of increasing total path cost