310 likes | 1.09k Views
Uninformed Search. ECE457 Applied Artificial Intelligence Spring 2007 Lecture #2. Outline. Problem-solving by searching Uninformed search techniques Russell & Norvig, chapter 3. Problem-solving by searching. An agent needs to perform actions to get from its current state to a goal .
E N D
Uninformed Search ECE457 Applied Artificial Intelligence Spring 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
Example: 8-puzzle • 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
Example: 8-puzzle left down left down left down right up ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 8
Parent Root Child Branching factor (b) Node (state) Expanding a node Edge (action) Maximum depth (m) Fringe Leaf Search Tree ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 9
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 10
Types of Search • Uninformed 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 11
Breath-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 12
Breath-First Search • Complete, if b is finite • Optimal, if path cost is equal to depth • Guaranteed to return the shallowest goal (depth d) • Number of generated nodes:1+b+b²+b³+…+bd+(bd+1-b) = O(bd+1) • Time complexity = O(bd+1) • Space complexity = O(bd+1) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 13
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 14
Uniform-Cost Search • Complete given a finite tree • Optimal • Time complexity = O(bC*/є) ≥O(bd+1) • Space complexity = O(bC*/є) ≥O(bd+1) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 15
Depth-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 16
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) ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 17
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 18
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 19
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 ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 20
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 21
Repeated States Example: 8-puzzle left down left down left down right up ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 22
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! • Maintain a closed list of visited states • Detect repeated states • Increase space complexity ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 23
Summary / Example • Going from Arad to Bucharest ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 24
Summary / Example • Initial state • Being in Arad • Action • 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 25
Summary / Example • Breath-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 26
Summary / Example • Uniform-Cost Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 27
Summary / Example • Depth-First Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 28
Summary / Example • Depth-Limited Search, l = 4 ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 29
Summary / Example • Iterative Deepening Search ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 30