Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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 Define a goal Represent the search space by states Define the actions the agent can perform and their cost 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 Goal test Move blank left, right, up or down, provided it does not get out of the game 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 left right down ECE457 Applied Artificial Intelligence down left R. Khoury (2007) up down Page 8 Search Tree ParentRoot Child Node (state) Branching factor (b) Expanding a node Edge (action) Maximum depthFringe (m) Leaf ECE457 Applied Artificial Intelligence R. Khoury (2007) Page 9 Properties of Search Algos. Completeness Optimality Is the algorithm guaranteed to find the best goal node, i.e. the one with the cheapest path cost? Time complexity Is the algorithm guaranteed to find a goal node, if one exists? 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 left right down ECE457 Applied Artificial Intelligence down left R. Khoury (2007) up down Page 22 Repeated States Unavoidable in problems where: Can greatly increase the number of nodes in a tree Actions are reversible Multiple paths to the same state are possible 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 Action Move to a neighbouring city, if a road exists. Goal test Being in Arad 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