CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.4) January, 14, 2009.

Slides:



Advertisements
Similar presentations
Jecho and Donatus Depth First and Breadth First Search.
Advertisements

Uninformed search strategies
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal.
CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.5) Sept, 14, 2012.
CPSC 322, Lecture 4Slide 1 Search: Intro Computer Science cpsc322, Lecture 4 (Textbook Chpt ) Sept, 11, 2013.
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
Problem Solving and Search Andrea Danyluk September 9, 2013.
Part2 AI as Representation and Search
CS 480 Lec 3 Sept 11, 09 Goals: Chapter 3 (uninformed search) project # 1 and # 2 Chapter 4 (heuristic search)
Implementation and Evaluation of Search Methods. Use a stack data structure. 1. Push root node of tree on the stack. 2. Pop the top node off the stack.
Artificial Intelligence (CS 461D)
Uninformed Search Jim Little UBC CS 322 – Search 2 September 12, 2014
Search: Representation and General Search Procedure Jim Little UBC CS 322 – Search 1 September 10, 2014 Textbook § 3.0 –
Slide 1 Heuristic Search: BestFS and A * Jim Little UBC CS 322 – Search 5 September 19, 2014 Textbook § 3.6.
Slide 1 Search: Advanced Topics Jim Little UBC CS 322 – Search 5 September 22, 2014 Textbook § 3.6.
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 23, 2009.
CPSC 322 Introduction to Artificial Intelligence October 27, 2004.
CPSC 322, Lecture 4Slide 1 Search: Intro Computer Science cpsc322, Lecture 4 (Textbook Chpt ) January, 12, 2009.
Search: Representation and General Search Procedure CPSC 322 – Search 1 January 12, 2011 Textbook § 3.0 –
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 22, 2010.
Review: Search problem formulation
UnInformed Search What to do when you don’t know anything.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Ch.3 [P]: Searching Fall 2009 Marco Valtorta.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
Artificial Intelligence Chapter 3: Solving Problems by Searching
1 Solving Problems by Searching. 2 Terminology State State Space Initial State Goal Test Action Step Cost Path Cost State Change Function State-Space.
Blind Search-Part 2 Ref: Chapter 2. Search Trees The search for a solution can be described by a tree - each node represents one state. The path from.
CPSC 322, Lecture 8Slide 1 Heuristic Search: BestFS and A * Computer Science cpsc322, Lecture 8 (Textbook Chpt 3.5) January, 21, 2009.
CS 188: Artificial Intelligence Spring 2006 Lecture 2: Queue-Based Search 8/31/2006 Dan Klein – UC Berkeley Many slides over the course adapted from either.
Uninformed Search (cont.)
Solving problems by searching
Problem-solving agents
For Friday Finish chapter 3 Homework: –Chapter 3, exercise 6 –May be done in groups. –Clarification on part d: an “action” must be running the program.
Solving Problems by Searching
Multiple Path Pruning, Iterative Deepening CPSC 322 – Search 7 Textbook § January 26, 2011.
CS261 Data Structures DFS and BFS – Edge List Representation.
Review: Search problem formulation Initial state Actions Transition model Goal state (or goal test) Path cost What is the optimal solution? What is the.
1 Problem Solving and Searching CS 171/271 (Chapter 3) Some text and images in these slides were drawn from Russel & Norvig’s published material.
Problem Solving and Search Andrea Danyluk September 11, 2013.
Uninformed Search Strategies CPSC 322 – Search 2 January 14, 2011 Textbook §3.5 1.
Computer Science CPSC 322 Lecture 4 Search: Intro (textbook Ch: ) 1.
Computer Science CPSC 322 Lecture Heuristic Search (Ch: 3.6, 3.6.1) Slide 1.
Computer Science CPSC 322 Lecture A* and Search Refinements (Ch 3.6.1, 3.7.1, 3.7.2) Slide 1.
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.
Computer Science CPSC 322 Lecture 9 (Ch , 3.7.6) Slide 1.
CS 415 – A.I. Slide Set 5. Chapter 3 Structures and Strategies for State Space Search – Predicate Calculus: provides a means of describing objects and.
Search with Costs and Heuristic Search 1 CPSC 322 – Search 3 January 17, 2011 Textbook §3.5.3, Taught by: Mike Chiang.
Lecture 3: Uninformed Search
Heuristic Search: A* 1 CPSC 322 – Search 4 January 19, 2011 Textbook §3.6 Taught by: Vasanth.
Search CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Computer Science CPSC 322 Lecture 6 Iterative Deepening and Search with Costs (Ch: 3.7.3, 3.5.3)
For Friday Read chapter 4, sections 1 and 2 Homework –Chapter 3, exercise 7 –May be done in groups.
Goal-based Problem Solving Goal formation Based upon the current situation and performance measures. Result is moving into a desirable state (goal state).
Uninformed search strategies A search strategy is defined by picking the order of node expansion Uninformed search strategies use only the information.
CPSC 322, Lecture 8Slide 1 Heuristic Search: BestFS and A * Computer Science cpsc322, Lecture 8 (Textbook Chpt 3.6) Sept, 21, 2010.
CPSC 322, Lecture 6Slide 1 Uniformed Search (cont.) Computer Science cpsc322, Lecture 6 (Textbook finish 3.5) Sept, 17, 2012.
CPSC 322, Lecture 4Slide 1 Search: Intro Computer Science cpsc322, Lecture 4 (Textbook Chpt ) Sept, 12, 2012.
A* optimality proof, cycle checking CPSC 322 – Search 5 Textbook § 3.6 and January 21, 2011 Taught by Mike Chiang.
Fahiem Bacchus © 2005 University of Toronto 1 CSC384: Intro to Artificial Intelligence Search II ● Announcements.
Solving problems by searching A I C h a p t e r 3.
CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.5) Sept, 13, 2013.
Brian Williams, Fall 041 Analysis of Uninformed Search Methods Brian C. Williams Sep 21 st, 2004 Slides adapted from: Tomas Lozano Perez,
Lecture 3: Uninformed Search
Uniformed Search (cont.) Computer Science cpsc322, Lecture 6
Computer Science cpsc322, Lecture 4
Search: Advanced Topics Computer Science cpsc322, Lecture 9
Search: Advanced Topics Computer Science cpsc322, Lecture 9
Uniformed Search (cont.) Computer Science cpsc322, Lecture 6
Computer Science cpsc322, Lecture 2
Search: Advanced Topics Computer Science cpsc322, Lecture 9
Presentation transcript:

CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.4) January, 14, 2009

CPSC 322, Lecture 4Slide 2 Search is a key computational mechanism in many AI agents We will study the basic principles of search on the simple deterministic planning agent model Generic search approach: define a search space graph, start from current state, incrementally explore paths from current state until goal state is reached. Recap

CPSC 322, Lecture 5Slide 3 Searching: Graph Search Algorithm with three bugs  Input: a graph, a start node, Boolean procedure goal(n) that tests if n is a goal node. frontier := {  g  : g is a goal node }; while frontier is not empty: select and remove path  n 0, n 1, …, n k  from frontier; if goal(n k ) return  n k  ; for every neighbor n of n k add  n 0, n 1, …, n k  to frontier; end while The goal function defines what is a solution. The neighbor relationship defines the graph. Which path is selected from the frontier defines the search strategy.

CPSC 322, Lecture 5Slide 4 Lecture Overview Recap Criteria to compare Search Strategies Simple (Uninformed) Search Strategies Depth First Breadth First

CPSC 322, Lecture 5Slide 5 Comparing Searching Algorithms: will it find a solution? the best one? Def. (complete): A search algorithm is complete if, whenever at least one solution exists, the algorithm is guaranteed to find a solution within a finite amount of time. Def. (optimal): A search algorithm is optimal if, when it finds a solution, it is the best solution

CPSC 322, Lecture 5Slide 6 Comparing Searching Algorithms: Complexity Def. (time complexity) The time complexity of a search algorithm is an expression for the worst-case amount of time it will take to run, expressed in terms of the maximum path length m and the maximum branching factor b. Def. (space complexity) : The space complexity of a search algorithm is an expression for the worst-case amount of memory that the algorithm will use (number of nodes), Also expressed in terms of m and b.

CPSC 322, Lecture 5Slide 7 Lecture Overview Recap Criteria to compare Search Strategies Simple (Uninformed) Search Strategies Depth First Breadth First

CPSC 322, Lecture 5Slide 8 Depth-first Search: DFS Depth-first search treats the frontier as a stack It always selects one of the last elements added to the frontier. Example: the frontier is [p 1, p 2, …, p r ] neighbors of last node of p 1 (its end) are {n 1, …, n k } What happens? p 1 is selected, and its end is tested for being a goal. New paths are created attaching {n 1, …, n k } to p 1 These “replace” p 1 at the beginning of the frontier. Thus, the frontier is now [(p 1, n 1 ), …, (p 1, n k ), p 2, …, p r ]. p 2 is only selected when all paths extending p 1 have been explored.

CPSC 322, Lecture 5Slide 9 Depth-first search: Illustrative Graph --- Depth-first Search Frontier

CPSC 322, Lecture 5Slide 10 Depth-first Search: Analysis of DFS Is DFS complete? Depth-first search isn't guaranteed to halt on infinite graphs or on graphs with cycles. However, DFS is complete for finite trees. Is DFS optimal? What is the time complexity, if the maximum path length is m and the maximum branching factor is b ? The time complexity is ? ?: must examine every node in the tree. Search is unconstrained by the goal until it happens to stumble on the goal. What is the space complexity? Space complexity is ? ? the longest possible path is m, and for every node in that path must maintain a fringe of size b.

CPSC 322, Lecture 5Slide 11 Appropriate Space is restricted (complex state representation e.g., robotics) There are many solutions, perhaps with long path lengths, particularly for the case in which all paths lead to a solution Depth-first Search: When it is appropriate? Inappropriate Infinite / cycles There are shallow solutions

CPSC 322, Lecture 5Slide 12 Why DFS need to be studied and understood? It is simple enough to allow you to learn the basic aspects of searching (When compared with breadth first) It is the basis for a number of more sophisticated / useful search algorithms

CPSC 322, Lecture 5Slide 13 Lecture Overview Recap Simple (Uninformed) Search Strategies Depth First Breadth First

CPSC 322, Lecture 5Slide 14 Breadth-first Search: BFS Breadth-first search treats the frontier as a queue it always selects one of the earliest elements added to the frontier. Example: the frontier is [p 1,p 2, …, p r ] neighbors of the last node of p 1 are {n 1, …, n k } What happens? p 1 is selected, and its end tested for being a path to the goal. New paths are created attaching {n 1, …, n k } to p 1 These follow p r at the end of the frontier. Thus, the frontier is now [p 2, …, p r, (p 1, n 1 ), …, (p 1, n k )]. p 2 is selected next.

CPSC 322, Lecture 5Slide 15 Illustrative Graph - Breadth-first Search

CPSC 322, Lecture 5Slide 16 Analysis of Breadth-First Search Is BFS complete? Yes (we are assuming finite branching factor) In fact, BFS is guaranteed to find the path that involves the fewest arcs (why?) What is the time complexity, if the maximum path length is m and the maximum branching factor is b? The time complexity is ? ? must examine every node in the tree. The order in which we examine nodes (BFS or DFS) makes no difference to the worst case: search is unconstrained by the goal. What is the space complexity? Space complexity is ? ?

CPSC 322, Lecture 5Slide 17 Using Breadth-first Search When is BFS appropriate? space is not a problem it's necessary to find the solution with the fewest arcs although all solutions may not be shallow, at least some are there may be infinite paths When is BFS inappropriate? space is limited all solutions tend to be located deep in the tree the branching factor is very large

CPSC 322, Lecture 5Slide 18 What have we done so far? AI agents can be very complex and sophisticated Let’s start from a very simple one, the deterministic, goal-driven agent for which: he sequence of actions and their appropriate ordering is the solution GOAL: study search, a set of basic methods underlying many intelligent agents We have looked at two search strategies DFS and BFS: To understand key properties of a search strategy They represent the basis for more sophisticated (heuristic / intelligent) search

Apply basic properties of search algorithms: completeness, optimality, time and space complexity of search algorithms. Select the most appropriate search algorithms for specific problems. BFS vs DFS vs IDS vs BidirS- LCFS vs. BFS – A* vs. B&B vs IDA* vs MBA* CPSC 322, Lecture 5Slide 19 Learning Goals for today’s class

CPSC 322, Lecture 5Slide 20 Next Class Search with cost Start Heuristic Search (textbook.: finish 3.4, start 3.5)

CPSC 322, Lecture 5Slide 21 Heuristics Depth-first Search What is still left unspecified by DFS?