CHAPTER 2 SEARCH HEURISTIC. QUESTION ???? What is Artificial Intelligence? The study of systems that...

Preview:

DESCRIPTION

Review: DFS vs. BFS

Citation preview

CHAPTER 2CHAPTER 2

SEARCHSEARCHHEURISTIC HEURISTIC

QUESTION ????QUESTION ????• What is Artificial Intelligence?

The study of systems that act rationally

• What does rational mean?Given its goals and prior knowledge, a rational agent should:1. Use the information available in new observations to update its knowledge, and2. Use its knowledge to act in a way that is expected to achieve its goals in the world

• How do you define a search problem? Initial state Successor function Goal test Path cost

Review: DFS vs. BFSReview: DFS vs. BFS

Graph SearchGraph Search• In BFS, for example, we shouldn’t bother• expanding the circled nodes (why?)

Graph SearchGraph Search

Iterative DeepeningIterative Deepening

Costs on ActionsCosts on Actions• BFS finds the shortest path in terms of

number of transitions, not the least-cost path

Uniform Cost SearchUniform Cost Search

Priority Queue RefresherPriority Queue Refresher• A priority queue is a data structure in which you can

insert and retrieve (key, value) pairs with the following operations:

• You can promote or demote keys by resetting their priorities• Unlike a regular queue, insertions into a priority queue are not constant time, usually O(log n)• We’ll need priority queues for most cost-sensitive search methods

Uniform Cost SearchUniform Cost Search

• What will UCS do for this graph?

• What does this mean for completeness?

Uniform Cost SearchUniform Cost Search

Uniform Cost IssuesUniform Cost Issues

• Where will uniform cost explore?• Why?• What is wrong here?

Straight Line DistancesStraight Line Distances

Straight Line DistancesStraight Line Distances

Greedy Best-First SearchGreedy Best-First Search• Expand the node that seems closest…

• What can go wrong?

Greedy Best-First SearchGreedy Best-First Search

Combining UCS and GreedyCombining UCS and Greedy

When should A* terminate?When should A* terminate?• A* Search orders by the sum: f(n) = g(n) + h(n)• Should we stop when we enqueue a goal?

• No! Only stop when we dequeue a goal

Is A* Optimal?Is A* Optimal?

• A* Search orders by the sum: f(n) = g(n) + h(n)• What went wrong?• Actual goal cost greater than estimated goal cost• We need estimates to be less than actual costs!

Admissible HeuristicsAdmissible Heuristics

Optimality of A*: Blocking

Optimality of A*: ContoursOptimality of A*: Contours• Consider what A* does:

– Expands nodes in increasing total f value (fcontours)– Optimal goals have lower f value, so get expanded first

Consistency/MonotonicityConsistency/Monotonicity

UCS vs A* ContoursUCS vs A* Contours

Properties of A*Properties of A*

Admissible HeuristicsAdmissible Heuristics

• Most of the work is in coming up with admissible heuristics

• Quiz: what’s the simplest admissable heuristic?

• Good news: usually admissible heuristics are also consistent

• More good news: inadmissible heuristics are still useful effective (Why?)

8-Puzzle I8-Puzzle I

8-Puzzle II8-Puzzle II

Relaxed ProblemsRelaxed Problems

• A version of the problem with fewer restrictions on actions is called a relaxed problem

• Relaxed problems of the 8 puzzle:- Each move can swap a tile directly into its final position- Each move can move a tile one step closer to its final position

• Relaxed problem for the route planning problem:- You can fly directly to the goal from each state

• Relaxed problems for Pac-Man?

8-Puzzle III8-Puzzle III

• How about using the actual cost as a heuristic?

- Would it be admissible?- Would we save on nodes?- What’s wrong with it?

• With A*, trade-off between quality of estimate and work per node!

Trivial Heuristics, DominanceTrivial Heuristics, Dominance

Other A* ApplicationsOther A* Applications

• Robot motion planning• Routing problems• Planning problems• Machine translation• Statistical parsing• Speech recognition

Summary: A*Summary: A*

• A* uses both backward costs and (estimates of) forward costs

• A* is optimal with admissible heuristics• Heuristic design is key: often use relaxed

problems

Local Search Methods

• Queue-based algorithms keep fallback options(backtracking)

• Local search: improve what you have until youcan’t make it better

• Generally much more efficient (but incomplete)

Types of ProblemsTypes of Problems

Example: N-QueensExample: N-Queens

Hill ClimbingHill Climbing

• Simple, general idea:– Start wherever– Always choose the best neighbor– If no neighbors have better scores than

current, quit• Why can this be a terrible idea?

– Complete?– Optimal?

• What’s good about it?

Hill Climbing DiagramHill Climbing Diagram

Simulated AnnealingSimulated Annealing

Simulated AnnealingSimulated Annealing

Beam SearchBeam Search

Genetic AlgorithmsGenetic Algorithms

Example: N-QueensExample: N-Queens

Continuous ProblemsContinuous Problems

Gradient MethodsGradient Methods

Recommended