Presentation is loading. Please wait.

Presentation is loading. Please wait.

Problem Solving by Searching

Similar presentations


Presentation on theme: "Problem Solving by Searching"— Presentation transcript:

1 Problem Solving by Searching
Chapter 3 Fall 2009 Copyright, 1996 © Dale Carnegie & Associates, Inc.

2 Problem-Solving Agents
This is a kind of goal-based agents that decide what to do by finding sequences of actions that lead to desirable states. Some problems cannot be solved by reflex agents Formulating problems Example problems Searching for solutions CSE 471/598 by H. Liu

3 A simple problem-solving agent
Goal formulation - limiting the objectives (for any task, we may have more than one objective) A goal is a set of world states in which the goal is satisfied. Problem formulation - deciding what actions and states to consider The above two are about focusing Search - looking for the best sequence of actions CSE 471/598 by H. Liu

4 A simple agent (2) Solutions - the results of search, so they are sequences of actions that lead to the goal Execution - acting upon the world Formulate -> Search -> Execute An algorithm in Fig 3.1 CSE 471/598 by H. Liu

5 Well-defined problems and solutions
A problem is defined by four components Initial state is where an agent starts Possible actions, successor function <action,successor> Goal test determines if a state is a goal state Path cost function, step cost A solution is a path from the initial state to a goal state Path - connecting sets of states CSE 471/598 by H. Liu

6 Problems and Solutions
States and actions are the basic elements of a problem A world of states: initial state I, operator O (or successor) State space - the set of all states reachable from I by any sequences of O CSE 471/598 by H. Liu

7 A simplified Romania map
CSE 471/598 by H. Liu

8 Formulating Problems Choosing states and actions
The real art of problem solving is in what goes into the description of the states and operators and what does not How to achieve those? Abstraction - removing detail from a representation A key problem solving skill What are irrelevant details for the case of Romania Map we can think of? CSE 471/598 by H. Liu

9 Measuring problem-solving performance
Performance measures Completeness – if there is a solution, it will find it Optimality – the solution found is the best Time complexity – number of nodes generated during search Space complexity – maximum number of nodes stored in memory Reach the goal Search cost Total cost = path cost + search cost CSE 471/598 by H. Liu

10 Example Problems Toy problems: concise and exact, used to illustrate or exercise various problem-solving methods - ideal cases Real-world problems: more difficult and we want solutions, but there might be many different descriptions Toy problems can also be used to test ideas quickly: if it does not work for toy problems, we have reasons to believe that it won’t work for real-world problems. CSE 471/598 by H. Liu

11 Toy problem (1) Vacuum world (next slide)
States: 8 (2*2^2) or n*2^n What is the first n about? Initial states: any Successor function: Left, Right, Suck Goal test: Clean or not Path cost: Each step costs 1 Comparing with the real world case, how different the two are? n is the number of locations CSE 471/598 by H. Liu

12 CSE 471/598 by H. Liu

13 Toy problem (2) The 8-puzzle States:O(9!) Initial state: Start state
Successor function: Left, Right, Up, Down Goal test: Goal state Path cost: Each step costs 1 O(9!/2) CSE 471/598 by H. Liu

14 Toy problem (3) The 8-queens (Fig 3.5)
States: 64*63*…*57 Initial states: Empty board Successor function: Add a queen to any empty square Goal test: 8 queens on the board, none attacked Path cost: N/A A better formulation with constraint One per column in the leftmost n column w/o attacking queens Add a queen to any square in the leftmost empty column w/o attacking queens What is the difference between the two? Generate first and test next If not good, don’t generate for test For 100 Qs 10^400 to 10^52 CSE 471/598 by H. Liu

15 Real-world problems Route finding
Touring and traveling salesperson problem VLSI layout Robot navigation Assembly sequencing Protein design Internet searching CSE 471/598 by H. Liu

16 Search Generating action sequences A state map
Expanding the current state by ... Generating a new set of states Let’s look at a situation we come to BY … PHX -> ASU -> BY A state map CSE 471/598 by H. Liu

17 What is search? The essence of search is to consider one choice at a time. Search tree – generated by the initial state and successor, defines the state space (two examples - Figs 3.6 and 3.8) root, nodes, fringe (leaf nodes) A general search algorithm (Fig 3.9) Initial state, test, expand, test, expand, … How to expand is determined by a search strategy How to implement the fringe - a queue CSE 471/598 by H. Liu

18 Search Evaluation Evaluating search strategies (Criteria)
Completeness – guaranteed to find a solution if there is one Time complexity – big O Space (memory) complexity – big O Optimality – the solution is optimal Branching factor (b), depth of the shallowest goal (d), maximum length of any path (m) Two types of search Blind search (uninformed) Heuristic search (informed) CSE 471/598 by H. Liu

19 Uninformed Search Strategies
Breadth-first search (a binary tree example) Expanding the shallowest node Complete? Optimal? How to implement it branching factor - a killing cost (Fig 3.11) The main concerns the memory requirements exponential complexity Uniform-cost search – expands the node with the lowest path cost Complete? Optimal? What if a node has a zero-cost action leading back to the same node? When is it identical to BFS? CSE 471/598 by H. Liu

20 Search Strategies (2) Depth-first search The main concerns The cures
A binary tree example (Fig 3.12) Complete? Optimal? How to implement it The main concerns Wrong branch Deep branch The cures Depth-limited search (Fig 3.13) Determining depth limit based on the problem (how many cities in the map of Romania?) Iterative deepening search (Fig 3.15) CSE 471/598 by H. Liu

21 Search Strategies (3) Comparing ID Depth-First with Breadth-First
Which one is faster? Bidirectional search The two directions: Start, Goal (Fig 3.16) What’s the saving? The main concerns How to search backwards Multiple goal states Efficient checking to avoid redundant search in the other tree CSE 471/598 by H. Liu

22 Search Strategies (4) Which one to use and when
We need to know the strategies in terms of the four criteria Comparing uninformed search strategies (Fig 3.17) We need to know the problem to be solved Human intelligence is still required, or not plug-and-play. CSE 471/598 by H. Liu

23 Avoiding Repeated States
It’s wasting time to expand states that have already been encountered and expanded before. How to avoid? Systematic search Remembering what have been visited (open list vs. closed list) Graph-Search (Fig 3.19) CSE 471/598 by H. Liu

24 Searching with partial information
Sensorless problems Reason about sets of states instead of a single state (Fig 3.21) Contingency problems Environment is partially observable, actions are uncertain [Suck, Right, if [R,Dirty] then Suck] with position and local dirt sensors Exploration problems Both the states and actions of E are unknown Can be viewed as an extreme case of contingency problems CSE 471/598 by H. Liu

25 Summary Problem solving is goal-based A problem consists of 4 parts
initial state, operator, goal test, path cost A single general search algorithm can solve any problem, but … Four criteria: completeness, optimality, time complexity, space complexity Discussed various search strategies We haven’t answered the question – how far we are away from the goal? Is it possible to answer? CSE 471/598 by H. Liu


Download ppt "Problem Solving by Searching"

Similar presentations


Ads by Google