Chapter3. Problem-Solving Agents. Problem Solving Agents (cont.) Well-defined Problems and Solutions. Example Problems.

Similar documents
Solving problems by searching. Chapter 3

AI: problem solving and search

Solving Problems by Searching

Chapter 3. A problem-solving agent is a kind of goal-based agent. It decide what to do by finding sequences of actions that lead to desirable states.

Artificial Intelligence

Ar#ficial)Intelligence!!

Solving Problem by Searching. Chapter 3

Solving problems by searching

Solving problems by searching

Chapter 3 Solving problems by searching

Solving problems by searching

Outline. Solving problems by searching. Problem-solving agents. Example: Romania

Artificial Intelligence Uninformed search

CS 380: Artificial Intelligence Lecture #3

CS 8520: Artificial Intelligence

CS 771 Artificial Intelligence. Problem Solving by Searching Uninformed search

Chapter 2. Blind Search 8/19/2017

Search I. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig

Problem solving and search

Uninformed Search. Problem-solving agents. Tree search algorithms. Single-State Problems

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS

Chapter 3: Solving Problems by Searching

ITCS 6150 Intelligent Systems. Lecture 3 Uninformed Searches

Problem solving and search

Solving Problems by Searching

Problem solving and search

A2 Uninformed Search

Example: The 8-puzzle. A2 Uninformed Search. It can be generalized to 15-puzzle, 24-puzzle, or. (n 2 1)-puzzle for n 6. Department of Computer Science

Problem Solving as Search. CMPSCI 383 September 15, 2011

Problem Solving and Search

Solving problems by searching

Basic Search. Fall Xin Yao. Artificial Intelligence: Basic Search

Set 2: State-spaces and Uninformed Search. ICS 271 Fall 2015 Kalev Kask

Artificial Intelligence Problem Solving and Uninformed Search

Solving Problems by Searching

Solving Problems by Searching

CS486/686 Lecture Slides (c) 2014 P.Poupart

CAP 4630 Artificial Intelligence

Multiagent Systems Problem Solving and Uninformed Search

CS486/686 Lecture Slides (c) 2015 P.Poupart

Pengju XJTU 2016

Goal-Based Agents Problem solving as search. Outline

KI-Programmierung. Basic Search Algorithms

Problem Solving. Russell and Norvig: Chapter 3

Solving problems by searching

Artificial Intelligence

Solving Problems: Blind Search

Uninformed Search Strategies AIMA 3.4

Search EECS 395/495 Intro to Artificial Intelligence

Solving problems by searching

Search EECS 348 Intro to Artificial Intelligence

Uninformed Search B. Navigating through a search tree. Navigating through a search tree. Navigating through a search tree

Lecture 3. Uninformed Search

Pengju

Solving Problems by Searching

Search Algorithms. Uninformed Blind search. Informed Heuristic search. Important concepts:

Uninformed Search B. Navigating through a search tree. Navigating through a search tree. Navigating through a search tree

CS 151: Intelligent Agents, Problem Formulation and Search

Solving Problems by Searching

Week 3: Path Search. COMP9414/ 9814/ 3411: Artificial Intelligence. Motivation. Example: Romania. Romania Street Map. Russell & Norvig, Chapter 3.

Solving Problems by Searching (Blindly)

Problem solving and search

CS 4700: Foundations of Artificial Intelligence. Bart Selman. Search Techniques R&N: Chapter 3

4. Solving Problems by Searching

ARTIFICIAL INTELLIGENCE. Pathfinding and search

Problem Solving and Search. Chapter 3

Problem solving and search

Problem solving and search: Chapter 3, Sections 1 5

Problem solving and search: Chapter 3, Sections 1 5

Uninformed Search Methods

Blind (Uninformed) Search (Where we systematically explore alternatives)

Artificial Intelligence

AGENTS AND ENVIRONMENTS. What is AI in reality?

Uninformed Search Strategies AIMA

TDDC17. Physical Symbol System Hypothesis. Designation and Interpretation. Physical Symbol Systems

Outline. Solving Problems by Searching. Introduction. Problem-solving agents

AGENTS AND ENVIRONMENTS. What is AI in reality?

Uninformed search strategies (Section 3.4) Source: Fotolia

CS 331: Artificial Intelligence Uninformed Search. Real World Search Problems

HW#1 due today. HW#2 due Monday, 9/09/13, in class Continue reading Chapter 3

Artificial Intelligence, CS, Nanjing University Spring, 2018, Yang Yu. Lecture 2: Search 1.

ARTIFICIAL INTELLIGENCE (CSC9YE ) LECTURES 2 AND 3: PROBLEM SOLVING

Problem solving and search

3 SOLVING PROBLEMS BY SEARCHING

Uninformed Search strategies. AIMA sections 3.4,3.5

Reminders. Problem solving and search. Problem-solving agents. Outline. Assignment 0 due 5pm today

CMU-Q Lecture 2: Search problems Uninformed search. Teacher: Gianni A. Di Caro

Uninformed (also called blind) search algorithms

Problem solving and search

Uninformed Search. Chapter 3

Lecture 4: Search 3. Victor R. Lesser. CMPSCI 683 Fall 2010

Problem solving and search

Uninformed Search. CS171, Winter 2018 Introduction to Artificial Intelligence Prof. Richard Lathrop. Reading: R&N

Blind (Uninformed) Search (Where we systematically explore alternatives)

UNINFORMED SEARCH. What to do if teammates drop? Still have 3 or more? No problem keep going. Have two or fewer and want to be merged?

Problem-solving agents. Problem solving and search. Example: Romania. Reminders. Example: Romania. Outline. Chapter 3

Vorlesung Grundlagen der Künstlichen Intelligenz

Robot Programming with Lisp

Logistics. u AI Nugget presentations. u Project Team Wikis, pages. u PolyLearn: Does everybody have access? u Lab and Homework Assignments.

CS 331: Artificial Intelligence Uninformed Search. Real World Search Problems

Transcription:

Problem-Solving Agents Chapter3 Solving Problems by Searching Reflex agents cannot work well in those environments - state/action mapping too large - take too long to learn Problem-solving agent - is one kind of goal-based agent - decides what to do by finding sequences of actions that lead to desirable states 20070315 chap3 1 20070315 chap3 2 Problem Solving Agents (cont.) Formulation - Goal formulation (final state) - Problem formulation (decide what actions and states to consider) Search (look for solution i.e.action sequence) Execution (follow states in solution) Assume the environment is static, observable, discrete, deterministic 20070315 chap3 3 Well-defined Problems and Solutions A problem can be defined by - Initial state In(Arad) - Possible actions (or successor function) {<Go(Sibiu), In(Sibiu)>, <Go(Timi), In(Timi)>, <Go(Zerind), In(Zerind)>} - Goal test {In(Bucharest)} - Path cost function state space of a problem Step cost: c(x, a, y) taking action a to go from state x to state y Optimal solution the lowest path cost among all solutions 20070315 chap3 4 Example: Romania Example Problems Toy problems Vacuum World, 8-Puzzle, 8-Queens Problem, Cryptarithmetic, Missionaries and Cannibals Real-world problems Route finding, Touring problems Traveling salesman problem, VLSI layout, Robot navigation, Assembly sequencing, Protein Design, Internet Searching 20070315 chap3 5 20070315 chap3 6 1

Vacuum World Vacuum World (cont.) States: agent location, each location might or might not contain dirt # of possible states = 2* 2 2 = 8 Initial state: any possible state Successor function: possible actions (left, Right, Suck) Goal test: check whether all the squares are clean Path cost: the number of steps, each step cost 1 20070315 chap3 7 20070315 chap3 8 The 8-Puzzle States: location of each of the eight tiles and the blank tile # of possible states = 9!/2 = 181,440 --- 9!/4??? Initial state: any state Successor function: blank moves(left, Right, Up, Down) Goal test: check whether the state match as the goal configuration Path cost: the number of steps, each step cost 1 20070315 chap3 9 The 8-Queens Incremental formulation vs. complete-state formulation States-I-1: 0-8 queens on board Successor function-i-1: add a queen to any square 14 # of possible states = (64*63* *57= 3*10 ) States-I-2: 0-8 non-attacking queens on board Successor function-i-2: add a queen to a non-attacking square in the left-most empty column # of possible states = 2057 ---??? Goal test: 8 queens on board, none attacked Path cost: of no interest (since only the final state count) 20070315 chap3 10 Robotic Assembly Basic Search Algorithms How do we find the solutions of previous problems? - Search the state space (remember complexity of space depends on state representation) States: real-valued coordinates of robot joint angles parts of the object to be assembled Successor function: continuous motions of robot joints Goal test : complete assembly Path cost : time to execute - Here: search through explicit tree generation ROOT= initial state. Nodes and leafs generated through successor function. - In general search generates a graph (same state through multiple paths) 20070315 chap3 11 20070315 chap3 12 2

Tree Search Algorithms Simple Tree Search Example function TREE-SEARCH(problem, strategy) return a solution or failure Initialize search tree to the initial state of the problem loop do if no candidates for expansion then return failure choose leaf node for expansion according to strategy if node contains goal state then return solution else expand the node and add resulting nodes to the search tree end 20070315 chap3 13 20070315 chap3 14 Simple tree search example Simple tree search example function TREE-SEARCH(problem, strategy) return a solution or failure Initialize search tree to the initial state of the problem loop do if no candidates for expansion then return failure choose leaf node for expansion according to strategy if node contains goal state then return solution else expand the node and add resulting nodes to the search tree end function TREE-SEARCH(problem, strategy) return a solution or failure Initialize search tree to the initial state of the problem loop do if no candidates for expansion then return failure choose leaf node for expansion according to strategy Determines search process!! if node contains goal state then return solution else expand the node and add resulting nodes to the search tree end 20070315 chap3 15 20070315 chap3 16 State Space vs. Search Tree State: a (representation of) a physical configuration Node: a data structure belong to a search tree < State, Parent-Node, Action, Path-Cost, Depth> Fringe: contains generated nodes which are not yet expanded. General Tree-Search Algorithm 20070315 chap3 17 20070315 chap3 18 3

Search Strategies A strategy is defined by picking the order of node expansion Strategies are evaluated along - Completeness --- Is it guaranteed that a solution will be found (if one exists)? - Time complexity --- How long does it take to find a solution? - Space complexity--- How much memory is needed to perform a search? - Optimality --- Is the best solution found when several solutions exist? Time and space complexity are measured in terms of b --- maximum branching factor of the search tree d --- depth of the least-cost solution m --- maximum depth of the state space (may be ) 20070315 chap3 19 Uninformed Search Strategies use only the information available in the problem definition do not use state information to decide the order on which nodes are expanded Breadth-first search -Tree-Search( problem, FIFO-Queue() ) - Expand the shallowest node in the fringe. - It is both optimal and complete. Uniform-cost search Depth-first search - Expand the deepest node in the fringe. - It is neither complete nor optimal. Why? Depth-limited search Iterative deepening search - Try all possible depth limits in depth limited search. - It is both optimal and complete. 20070315 chap3 20 Breadth-First Search Tree-Search(problem, FIFO-Queue()) Fringe is a FIFO queue, i.e., new successors go at end Expand the shallowest unexpanded node Analysis of Breadth-First Search Complete?? Yes (if b is finite) 2 d d + 1 d + 1 Time?? 1+ b + b + L+ b + ( b b) = O( b ) expand all but the last node at level d i.e. exp. in d Space?? d +1 O( b ) keep every node in memory Optimal?? Yes (if cost = 1 per step); not optimal in general (unless actions have different cost) 20070315 chap3 21 20070315 chap3 22 Analysis of Breadth-First Search (cont.) Space is the bigger problem (more than time) If d = 8, it will take 31 hours with 1 terabytes. Exponential complexity search problems cannot be solved by uninformed search methods for any but the smallest instances. DEPTH 2 4 6 8 10 12 14 NODES 1100 111100 10 7 10 9 10 11 10 13 10 15 TIME 0.11 seconds 11 seconds 19 minutes 31 hours 129 days 35 years 3523 years MEMORY 1 megabyte 106 megabytes 10 gigabytes 1 terabyte 101 terabytes 10 petabytes 1 exabyte 20070315 chap3 23 Uniform Cost Search Each node n has a path cost g(n). Expand lowest path cost unexpanded node. Fringe is queue ordered by path cost. It will find the cheapest solution provided that n. g( Successor( n)) g( n) i.e. Every operator has a nonnegative cost. Equivalent to breadth-first search if step costs all equal. 20070315 chap3 24 4

Uniform Cost Search (cont.) Analysis of Uniform Cost Search Complete?? Yes (if step cost >= ε) Time?? ( C * / ε O b ) Where C * is the cost of the optimal solution Space?? ( C * / ε O b ) Optimal?? Nodes expanded in increasing order of g(n) Yes, if complete 20070315 chap3 25 20070315 chap3 26 Depth-First Search Depth-First Search (cont.-1) 20070315 chap3 27 20070315 chap3 28 Depth-First Search (cont.-2) Depth-First Search (cont.-3) 20070315 chap3 29 20070315 chap3 30 5

Depth-First Search (cont.-4) Depth-First Search (cont.-5) 20070315 chap3 31 20070315 chap3 32 Depth-First Search (cont.-6) Depth-First Search (cont.-7) 20070315 chap3 33 20070315 chap3 34 Depth-First Search (cont.-8) Depth-First Search (cont.-9) 20070315 chap3 35 20070315 chap3 36 6

Depth-First Search (cont.-10) Depth-First Search (cont.-11) 20070315 chap3 37 20070315 chap3 38 Analysis of Depth-First Search Complete?? No: fails in indefinite-depth spaces, spaces with loops Modify to avoid repeated states along path Complete in finite spaces Time?? O( b m ) : terrible if m is much larger than d (m: the maximum depth of any node, d: depth of the shallowest solution) But if solutions are dense, may be much faster than breadth-first Space?? O(bm), i.e., linear space Optimal?? No If d = 12, b= 10, Space: 10 petabytes for BFS; 118 KB for DFS 20070315 chap3 39 Analysis of Depth-First Search (cont.) Time requirement: - Goal at the far left: d+1 + 1 - Goal at the far right: b d 1 b 1 - Average: (How is the average derived?) + 1 b d + bd + b d 2 2( b 1) 20070315 chap3 40 Depth-limited Search The unbounded trees can be alleviated by supplying depth-first search with a predetermined depth limit l. Failure (no solution) / Cutoff (no solution within the depth limit) Analysis of Depth-Limit Search Complete?? Yes, if l >= d if l <=d, the shallowest goal is beyond the depth limit. Time?? Space?? O(bl) Optimal?? No 0 1 2 l l b + b + b +... + b = O( b ) DFS can be viewed as a special case of depth-limit search with l = 20070315 chap3 41 Diameter of state space is a better depth limit, which leads to a more efficient depth-limit search e.g. diameter = 9, for the map of Romania of 20 cities 20070315 chap3 42 7

Iterative Deepening Search Iterative Deepening Search (cont.-1) 20070315 chap3 43 20070315 chap3 44 Iterative Deepening Search (cont.-2) Iterative Deepening Search (cont.-3) 20070315 chap3 45 20070315 chap3 46 Iterative Deepening Search (cont.-4) 20070315 chap3 47 Analysis of Iterative Deepening Search Complete?? Yes. 0 1 2 d d Time?? ( d + 1) b + db + ( d 1) b +... + b = O( b ) Space?? O(bd) Optimal?? Yes, if step cost = 1 Can be modified to explore uniform-cost tree. If b = 10, d = 5, N BFS = 1 + 10 + 100 + 1,000 + 10,000 + 999,990 = 1,111,101 N DLS = 1 + 10 + 100 +1,000 + 10,000 + 100,000 = 111,111 N IDS = 6 + 50 + 400 + 3,000 + 20,000 + 100,000 = 123,456 Iterative deepening is faster than breadth-first search, despite the repeated generation of states. Overhead = (123,456-111,111)/111,111 = 11% Iterative deepening is the preferred uninformed search when there is a large search space and the depth of the solution is not known. 20070315 chap3 48 8

Bidirectional Search Bidirectional Search (cont.-1) Search forward from the initial state. Generate successors to the current node. Search backward from the goal. Generate predecessors to the current node. Stop when two searches meet in the middle. 20070315 chap3 49 Two simultaneous searches from start an goal. - Motivation: b d /2 + b d /2 b d Check whether the node belongs to the other fringe before expansion. Space complexity is the most significant weakness. Complete and optimal if both searches are BF. 20070315 chap3 50 Bidirectional Search (cont.-2) Issues: If all operators are reversible, predecessor(n) = successor(n) Multiple goal states Cost of checking if a node exists Search strategy for each half? Comparing Uninformed Search Strategies 20070315 chap3 51 b: the branching factor d: the depth of the shallowest solution m: the maximum depth of the search tree l: the depth limit 20070315 chap3 52 Comparing Uninformed Search Strategies (cont.) Avoid Repeated States Issues considered in selecting search strategies: size of the search space depth of the solution solution density finite vs. infinite depth any vs. all solutions optimality? predecessors? 20070315 chap3 53 Do not return to the previous state. Do not create paths with cycles. Do not generate the same state twice. - Store states in a hash table. - Check for repeated states. 20070315 chap3 54 9

Graph Search To modify Tree Search Algorithm by adding closed list --- to store every expanded node 20070315 chap3 55 10