Find a Path s A D B E C F G 3 4 4 5 5 2 4 4 3. Heuristically Informed Methods  Which node do I expand next?  What information can I use to guide this.

Slides:



Advertisements
Similar presentations
Chapter 4: Informed Heuristic Search
Advertisements

Review: Search problem formulation
An Introduction to Artificial Intelligence
Traveling Salesperson Problem
Adversarial Search We have experience in search where we assume that we are the only intelligent being and we have explicit control over the “world”. Lets.
Techniques for Dealing with Hard Problems Backtrack: –Systematically enumerates all potential solutions by continually trying to extend a partial solution.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
Search in AI.
Lecture 12 Last time: CSPs, backtracking, forward checking Today: Game Playing.
Heuristic search, page 1 CSI 4106, Winter 2005 Heuristic search Points Definitions Best-first search Hill climbing Problems with hill climbing An example:
Search Strategies.  Tries – for word searchers, spell checking, spelling corrections  Digital Search Trees – for searching for frequent keys (in text,
Mahgul Gulzai Moomal Umer Rabail Hafeez
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 23, 2009.
Review: Search problem formulation
CS 561, Sessions Administrativia Assignment 1 due tuesday 9/24/2002 BEFORE midnight Midterm exam 10/10/2002.
1 Using Search in Problem Solving Part II. 2 Basic Concepts Basic concepts: Initial state Goal/Target state Intermediate states Path from the initial.
CS 561, Sessions Last time: search strategies Uninformed: Use only information available in the problem formulation Breadth-first Uniform-cost Depth-first.
MAE 552 – Heuristic Optimization Lecture 27 April 3, 2002
1 Tree Searching Strategies. 2 The procedure of solving many problems may be represented by trees. Therefore the solving of these problems becomes a tree.
1 search CS 331/531 Dr M M Awais A* Examples:. 2 search CS 331/531 Dr M M Awais 8-Puzzle f(N) = g(N) + h(N)
Using Search in Problem Solving
CS 460, Sessions Last time: search strategies Uninformed: Use only information available in the problem formulation Breadth-first Uniform-cost Depth-first.
Searching for Solutions Artificial Intelligence CSPP January 14, 2004.
Problem Solving and Search in AI Heuristic Search
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
CPSC 322, Lecture 8Slide 1 Heuristic Search: BestFS and A * Computer Science cpsc322, Lecture 8 (Textbook Chpt 3.5) January, 21, 2009.
Game Tree Search based on Russ Greiner and Jean-Claude Latombe’s notes.
Monotonicity Admissible Search: “That finds the shortest path to the Goal” Monotonicity: local admissibility is called MONOTONICITY This property ensures.
1 Tree Searching Strategies. 2 The procedure of solving many problems may be represented by trees. Therefore the solving of these problems becomes a tree.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.
Search  Exhaustive/Blind Search Methods Depth First Search Breadth First Search  Heuristic Methods Hill Climbing Beam Search Best First Search…
Informed Search Strategies
Vilalta&Eick: Informed Search Informed Search and Exploration Search Strategies Heuristic Functions Local Search Algorithms Vilalta&Eick: Informed Search.
Search: Heuristic &Optimal Artificial Intelligence CMSC January 16, 2003.
October 3, 2012Introduction to Artificial Intelligence Lecture 9: Two-Player Games 1 Iterative Deepening A* Algorithm A* has memory demands that increase.
Various Heuristic Searches Lecture Module 5. Heuristic Search Heuristics are criteria for deciding which among several alternatives be the most effective.
Introduction to search Chapter 3. Why study search? §Search is a basis for all AI l search proposed as the basis of intelligence l inference l all learning.
Games. Adversaries Consider the process of reasoning when an adversary is trying to defeat our efforts In game playing situations one searches down the.
Game Playing. Introduction One of the earliest areas in artificial intelligence is game playing. Two-person zero-sum game. Games for which the state space.
For Monday Read chapter 4, section 1 No homework..
Review: Tree search Initialize the frontier using the starting state While the frontier is not empty – Choose a frontier node to expand according to search.
CSCI 4310 Lecture 6: Adversarial Tree Search. Book Winston Chapter 6.
Adversarial Games. Two Flavors  Perfect Information –everything that can be known is known –Chess, Othello  Imperfect Information –Player’s have each.
Slides by: Eric Ringger, adapted from slides by Stuart Russell of UC Berkeley. CS 312: Algorithm Design & Analysis Lecture #36: Best-first State- space.
Searching for Solutions
A* optimality proof, cycle checking CPSC 322 – Search 5 Textbook § 3.6 and January 21, 2011 Taught by Mike Chiang.
ARTIFICIAL INTELLIGENCE (CS 461D) Princess Nora University Faculty of Computer & Information Systems.
Graph Search II GAM 376 Robin Burke. Outline Homework #3 Graph search review DFS, BFS A* search Iterative beam search IA* search Search in turn-based.
CSCI 4310 Lecture 4: Search 2 – Including A*. Book Winston Chapters 4,5,6.
Adversarial Search 2 (Game Playing)
Adversarial Search and Game Playing Russell and Norvig: Chapter 6 Slides adapted from: robotics.stanford.edu/~latombe/cs121/2004/home.htm Prof: Dekang.
CS-424 Gregory Dudek Lecture 10 Annealing (final comments) Adversary Search Genetic Algorithms (genetic search)
CMPT 463. What will be covered A* search Local search Game tree Constraint satisfaction problems (CSP)
Search: Games & Adversarial Search Artificial Intelligence CMSC January 28, 2003.
Traveling Salesperson Problem
Last time: search strategies
Last time: Problem-Solving
Informed search algorithms
The Alpha-Beta Procedure
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
Search and Game Playing
Heuristic Search Methods
Introducing Underestimates
More advanced aspects of search
Search.
Search.
CMSC 471 Fall 2011 Class #4 Tue 9/13/11 Uninformed Search
Games & Adversarial Search
Lecture 4: Tree Search Strategies
Presentation transcript:

Find a Path s A D B E C F G

Heuristically Informed Methods  Which node do I expand next?  What information can I use to guide this decision?  Hill Climbing  Beam Search  Best First Search

Hill Climbing s A D B E C F G s A D B E C F G

Hill Climbing  Heuristic: Straight line distance to goal  Sort new paths, if any, by the estimated distances between their terminal nodes and the goal  Add the new paths to the FRONT of the Q

Hill Climbing Problems  Local optima  Uninformative landscape (plateaus)  Uninformed movement operator (ridge)  Consider parameter tuning Thermostat, television, mountain climbing

Beam Search  BFS, but only the the best W (beam size) nodes at each level are expanded.  Beam search will only consider w nodes per level. No exponential explosion.

Best-First Search  Expand best next node  Resort the ENTIRE Q by heuristic after every expansion

Optimal Search  Finding the best path  Find all paths and choose the best What’s the problem?

Branch and Bound  Extend the shortest partial path  When you find a path, you must extend all partial paths until their lengths are longer than the path you found, or you find a shorter path

B&B  Form a one-element queue containing the root node  Until the first path in the queue terminates at the goal node or the queue is empty Remove the first path from the queue, create new paths by extending the first path to all the neighbors of the terminal node Reject all new paths with loops Add the remaining new paths, if any, to the queue Sort the entire queue by path length with the least-cost paths in front  If the goal node is found, announce success; otherwise failure

Underestimates  In addition to partial path length, let us also use distance remaining  Distance remaining is an admissable heuristic  It always underestimates the true remaining distance. Why is this property important?

Underestimates help  E(total path length) = D(already travelled) + E(remaining distance)  What if your estimate is wrong? Overestimate Underestimate Other

Underestimates  Overestimate: you could hide the optimal path  Underestimate: you will not miss finding the optimal path  Other: your mileage may vary

B&B with underestimates  Form a one-element queue containing the root node  Until the first path in the queue terminates at the goal node or the queue is empty Remove the first path from the queue, create new paths by extending the first path to all the neighbors of the terminal node Reject all new paths with loops Add the remaining new paths, if any, to the queue Sort the entire queue by the sum of the path length and a lower bound estimate of the cost remaining, with least cost paths in front.  If the goal node is found, announce success; otherwise failure

Dynamic Programming  Eliminate redundant paths that slow search efficiency  The dynamic programming principle  The best way through a particular, intermediate node is the best way to it, followed by the best way from it to the goal.

B&B with DP  Form a one-element queue containing the root node  Until the first path in the queue terminates at the goal node or the queue is empty Remove the first path from the queue, create new paths by extending the first path to all the neighbors of the terminal node Reject all new paths with loops Add the remaining new paths, if any, to the queue If two or more paths reach a common node, delete all those paths except the one that reaches the common node with the min cost Sort the entire queue by the path length with least cost paths in front.  If the goal node is found, announce success; otherwise failure

A* Search  Branch and bound, with understimates, and using the dynamic programming principle

B&B + underestimates + DP  Form a one-element queue containing the root node  Until the first path in the queue terminates at the goal node or the queue is empty Remove the first path from the queue, create new paths by extending the first path to all the neighbors of the terminal node Reject all new paths with loops Add the remaining new paths, if any, to the queue If two or more paths reach a common node, delete all those paths except the one that reaches the common node with the min cost Sort the entire queue by the sum of the path length and a lower- bound estimate of the cost remaining, with least cost paths in front.  If the goal node is found, announce success; otherwise failure

Game Trees  How do you represent a game situation in a search tree?  Minimax search  Alpha-Beta pruning  Tic-Tac-Toe, Chess

Game Tree Original board New boards

Minimax search  Evaluation of board position summarized into a single number.  Positive numbers indicate favor to one player.  Negative numbers indicate favor to other player  Static evaluator evaluates board position, computes static evaluation score  Maximizing player, Minimizing player

Minimax Example Max Min Max

Minimax Procedure  If the limit of the search has been reached, compute the static value of the current position relative to the appropriate player. Report the result  Otherwise, if the level is a minimizing level, use MINIMAX on the children of the current position. Report the MINIMUM of the results  Otherwise, if the level is a maximizing level, use the MINIMAX on the children of the current position. Report the MAXIMUM of the results

Alpha-Beta with Minimax  If you have an idea that is truly bad, do not take the time to see how truly awful it is

Alpha-Beta Example 2 7 Max Min Max

Big Alpha-Beta example  Figure 6.4

Heuristics for minimax  Progressive deepening  Heuristic continuation  Heuristic pruning

Alpha-Beta effect  Best case analysis 2b ^d/2 - 1if d is even B^(d+1)/2 - b^(d-1)/2 – 1if d is odd  Does not change exponential explosion