chapter 2 search heuristic. question ???? what is artificial intelligence? the study of systems that...
DESCRIPTION
Review: DFS vs. BFSTRANSCRIPT
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