ECE457 Applied Artificial Intelligence Fall 2007 Lecture #2

Slides:



Advertisements
Similar presentations
Solving problems by searching Chapter 3. Outline Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms.
Advertisements

Additional Topics ARTIFICIAL INTELLIGENCE
Solving problems by searching
Announcements Course TA: Danny Kumar
Artificial Intelligence Problem Solving Eriq Muhammad Adams
Solving Problems by Searching Currently at Chapter 3 in the book Will finish today/Monday, Chapter 4 next.
CS 480 Lec 3 Sept 11, 09 Goals: Chapter 3 (uninformed search) project # 1 and # 2 Chapter 4 (heuristic search)
Blind Search1 Solving problems by searching Chapter 3.
May 12, 2013Problem Solving - Search Symbolic AI: Problem Solving E. Trentin, DIISM.
AI Principles, Semester 2, Week 1, Lecture 3, Search Examples of problems which are solved by search Setting the scene: your Romanian holiday search problem.
Solving Problem by Searching Chapter 3. Outline Problem-solving agents Problem formulation Example problems Basic search algorithms – blind search Heuristic.
Touring problems Start from Arad, visit each city at least once. What is the state-space formulation? Start from Arad, visit each city exactly once. What.
Artificial Intelligence for Games Uninformed search Patrick Olivier
14 Jan 2004CS Blind Search1 Solving problems by searching Chapter 3.
14 Jan 2004CS Blind Search1 Solving problems by searching Chapter 3.
CHAPTER 3 CMPT Blind Search 1 Search and Sequential Action.
An Introduction to Artificial Intelligence Lecture 3: Solving Problems by Sorting Ramin Halavati In which we look at how an agent.
CS 380: Artificial Intelligence Lecture #3 William Regli.
Artificial Intelligence
Uninformed Search Reading: Chapter 3 by today, Chapter by Wednesday, 9/12 Homework #2 will be given out on Wednesday DID YOU TURN IN YOUR SURVEY?
Solving problems by searching
Review: Search problem formulation Initial state Actions Transition model Goal state (or goal test) Path cost What is the optimal solution? What is the.
CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #3 Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam.
AI in game (II) 권태경 Fall, outline Problem-solving agent Search.
1 Solving problems by searching 171, Class 2 Chapter 3.
An Introduction to Artificial Intelligence Lecture 3: Solving Problems by Sorting Ramin Halavati In which we look at how an agent.
Informed Search ECE457 Applied Artificial Intelligence Spring 2007 Lecture #3.
SOLVING PROBLEMS BY SEARCHING Chapter 3 August 2008 Blind Search 1.
A General Introduction to Artificial Intelligence.
Agents and Uninformed Search ECE457 Applied Artificial Intelligence Spring 2007 Lecture #2.5.
1 Solving problems by searching Chapter 3. Depth First Search Expand deepest unexpanded node The root is examined first; then the left child of the root;
Uninformed Search ECE457 Applied Artificial Intelligence Spring 2007 Lecture #2.
Solving problems by searching 1. Outline Problem formulation Example problems Basic search algorithms 2.
Solving problems by searching A I C h a p t e r 3.
Blind Search Russell and Norvig: Chapter 3, Sections 3.4 – 3.6 CS121 – Winter 2003.
WEEK 5 LECTURE -A- 23/02/2012 lec 5a CSC 102 by Asma Tabouk Introduction 1 CSC AI Basic Search Strategies.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
Uninformed Search ECE457 Applied Artificial Intelligence Spring 2008 Lecture #2.
Artificial Intelligence Solving problems by searching.
Solving problems by searching Chapter 3. Types of agents Reflex agent Consider how the world IS Choose action based on current percept Do not consider.
Lecture 3 Problem Solving through search Uninformed Search
Lecture 3: Uninformed Search
Solving problems by searching
Problem Solving Agents
Announcements Homework 1 will be posted this afternoon. After today, you should be able to do Questions 1-3. Python 2.7 only for the homework; turns.
EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS
Problem Solving by Searching
Problem Solving as Search
Artificial Intelligence (CS 370D)
Artificial Intelligence
Search Tuomas Sandholm Read Russell & Norvig Sections
Russell and Norvig: Chapter 3, Sections 3.4 – 3.6
Solving problems by searching
CS 188: Artificial Intelligence Spring 2007
Artificial Intelligence Informed Search Algorithms
Problem Solving and Searching
CSE 4705 Artificial Intelligence
EA C461 – Artificial Intelligence
Artificial Intelligence
Searching for Solutions
Artificial Intelligence
Problem Solving and Searching
Principles of Computing – UFCFA3-30-1
Chap 4: Searching Techniques
Solving Problems by Searching
Solving Problems by Searching
CS440/ECE 448 Lecture 4: Search Intro
ECE457 Applied Artificial Intelligence Spring 2008 Lecture #3
Presentation transcript:

ECE457 Applied Artificial Intelligence Fall 2007 Lecture #2 Uninformed Search ECE457 Applied Artificial Intelligence Fall 2007 Lecture #2

Outline Problem-solving by searching Uninformed search techniques Russell & Norvig, chapter 3 ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 2

Problem-solving by searching An agent needs to perform actions to get from its current state to a goal. This process is called searching. Central in many AI systems Theorem proving, VLSI layout, game playing, navigation, scheduling, etc. ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 3

Requirements for searching Define the problem Represent the search space by states Define the actions the agent can perform and their cost Define a goal What is the agent searching for? Define the solution The goal itself? The path (i.e. sequence of actions) to get to the goal? ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 4

Assumptions Goal-based agent Environment Fully observable Deterministic Sequential Static Discrete Single agent ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 5

Formulating problems A well-defined problem has: An initial state A set of actions A goal test A concept of cost ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 6

Well-Defined Problem Example Initial state Action Move blank left, right, up or down, provided it does not get out of the game Goal test Are the tiles in the “goal state” order? Cost Each move costs 1 Path cost is the sum of moves ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 7

Well-Defined Problem Example Travelling salesman problem Find the shortest round trip to visit each city exactly once Initial state Any city Set of actions Move to an unvisited city Goal test Is the agent in the initial city after having visited every city? Concept of cost Action cost: distance between cities Path cost: total distance travelled ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 8

Example: 8-puzzle left down left down left down right up ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 9

Search Tree Parent Child Root Leaf Fringe Branching factor (b) Maximum depth (m) Edge (action) Node (state) Expanding a node ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 10

Properties of Search Algos. Completeness Is the algorithm guaranteed to find a goal node, if one exists? Optimality Is the algorithm guaranteed to find the best goal node, i.e. the one with the cheapest path cost? Time complexity How many nodes are generated? Space complexity What’s the maximum number of nodes stored in memory? ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 11

Types of Search Uninformed Search Informed Search Only has the information provided by the problem formulation (initial state, set of actions, goal test, cost) Informed Search Has additional information that allows it to judge the promise of an action, i.e. the estimated cost from a state to a goal ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 12

Breath-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 13

Breath-First Search Complete, if b is finite Optimal, if path cost is equal to depth Guaranteed to return the shallowest goal (depth d) Time complexity = O(bd+1) Space complexity = O(bd+1) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 14

Breath-First Search Upper-bound case: goal is last node of depth d Number of generated nodes: b+b²+b³+…+bd+(bd+1-b) = O(bd+1) Space & time complexity: all generated nodes ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 15

Uniform-Cost Search Expansion of Breath-First Search Explore the cheapest node first (in terms of path cost) Condition: No zero-cost or negative-cost edges. Minimum cost is є ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 16

Uniform-Cost Search Complete given a finite tree Optimal Time complexity = O(bC*/є) ≥ O(bd+1) Space complexity = O(bC*/є) ≥ O(bd+1) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 17

Uniform-Cost Search Upper-bound case: goal has path cost C*, all other actions have minimum cost of є Depth explored before taking action C*: C*/є Number of generated nodes: O(bC*/є) Space & time complexity: all generated nodes є C* є є є є є є є є є є є є є є ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 18

Depth-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 19

Depth-First Search Complete, if m is finite Not optimal Time complexity = O(bm) Space complexity = bm+1 = O(bm) Can be reduced to O(m) with recursive algorithm ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 20

Depth-First Search Upper-bound case for space: goal is last node of first branch After that, we start deleting nodes Number of generated nodes: b nodes at each of m levels Space complexity: all generated nodes = O(bm) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 21

Depth-First Search Upper-bound case for time: goal is last node of last branch Number of nodes generated: b nodes for each node of m levels (entire tree) Time complexity: all generated nodes O(bm) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 22

Depth-Limited Search Depth-First Search with depth limit l Avoids problems of Depth-First Search when trees are unbounded Depth-First Search is Depth-Limited Search with l =  ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 23

Depth-Limited Search Complete, if l > d Not optimal Time complexity = O(bl) Space complexity = O(bl) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 24

Depth-Limited Search Upper-bound case for space: goal is last node of first branch After that, we start deleting nodes Number of generated nodes: b nodes at each of l levels Space complexity: all generated nodes = O(bl) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 25

Depth-Limited Search Upper-bound case for time: goal is last node of last branch Number of nodes generated: b nodes for each node of l levels (entire tree to depth l) Time complexity: all generated nodes O(bl) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 26

Iterative Deepening Search Depth-First Search with increasing depth limit l Repeat depth-limited search over and over, with l = l + 1 Avoids problems of Depth-First Search when trees are unbounded Avoids problem of Depth-Limited Search when goal depth d > l ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 27

Iterative Deepening Search Complete , if b is finite Optimal, if path cost is equal to depth Guaranteed to return the shallowest goal Time complexity = O(bd) Space complexity = O(bd) Nodes on levels above d are generated multiple times ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 28

Iterative Deepening Search Upper-bound case for space: goal is last node of first branch After that, we start deleting nodes Number of generated nodes: b nodes at each of d levels Space complexity: all generated nodes = O(bd) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 29

Iterative Deepening Search Upper-bound case for time: goal is last node of last branch Number of nodes generated: b nodes for each node of d levels (entire tree to depth d) Time complexity: all generated nodes O(bd) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 30

Depth Searches Depth-first search Depth-limited search Iterative deepening search Depth limit m l d Time complexity O(bm) O(bl) O(bd) Space complexity ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 31

Summary of Searches Breath-first Uniform Cost Depth-first Depth-limited Iterative deepening Complete Yes1 No4 No5 Optimal Yes2 Yes3 No Time O(bd+1) O(bC*/є) O(bm) O(bl) O(bd) Space 1: Assuming b finite (common in trees) 2: Assuming equal action costs 3: Assuming all costs  є 4: Unless m finite (uncommon in trees) 5: Unless l precisely selected ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 32

Summary / Example Going from Arad to Bucharest ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 33

Summary / Example Initial state Action Goal test Cost Being in Arad Move to a neighbouring city, if a road exists. Goal test Are we in Bucharest? Cost Move cost = distance between cities Path cost = distance travelled since Arad ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 34

Summary / Example Breath-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 35

Summary / Example Uniform-Cost Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 36

Summary / Example Depth-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 37

Summary / Example Depth-Limited Search, l = 4 ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 38

Summary / Example Iterative Deepening Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 39

Repeated States Example: 8-puzzle left down left down left down right up ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 40

Repeated States Unavoidable in problems where Actions are reversible Multiple paths to the same state are possible Can greatly increase the number of nodes in a tree Or even make a finite tree infinite! ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 41

Repeated States Each state generates a single child twice 26 different states 225 leaves (i.e. state Z) Over 67M nodes in the tree A A B B B C C C C C D D D D D D D D D E E E E E E E E E E E E E E E E E ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 42

Repeated States Maintain a closed list of visited states Closed list (for expanded nodes) vs. open list (for fringe nodes) Detect and discard repeated states upon generation Increases space complexity ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 43