Uninformed Search Artificial Intelligence Chapter 8 Biointelligence Lab

Download Report

Transcript Uninformed Search Artificial Intelligence Chapter 8 Biointelligence Lab

Artificial Intelligence
Chapter 8
Uninformed Search
Biointelligence Lab
School of Computer Sci. & Eng.
Seoul National University
Outline

Search Space Graphs
 Breadth-First Search
 Depth-First Search
 Iterative Deepening
(c) 2009 SNU CSE Biointelligence Lab
2
Search in State Spaces
- Motivating Examples

Search for the optimal weight in training a multilayer perceptron
 Search for the optimal solution by evolutional
computation ex) wall-following robot
(c) 2009 SNU CSE Biointelligence Lab
3
Search in State Spaces
- Motivating Examples

Agents that plan
 State + action
 State-space search is used to plan action sequences
 ex) moving a block (Ch. 7)
A state-space graph
(The size of the search space is small)
(c) 2009 SNU CSE Biointelligence Lab
4
1. Formulating the State Space

For huge search space we need
 Careful formulation
 Implicit representation of large search graphs
 Efficient search method
(c) 2009 SNU CSE Biointelligence Lab
5
1. Formulating the State Space (Cont’d)

e.g.) 8-puzzle problem
start
goal
 state description
 3-by-3
array: each cell contains one of 1-8 or blank symbol
 two choices of describing state transitions
 84
moves: one of 1-8 numbers moves up, down, right, or left
 4 moves: one black symbol moves up, down, right, or left
(c) 2009 SNU CSE Biointelligence Lab
6
1. Formulating the State Space (Cont’d)
 The number of nodes in the state-space graph:
 9!
( = 362,880 )
 State space for 8-puzzle is
 Divided
into two separate graphs : not reachable from each other
(c) 2009 SNU CSE Biointelligence Lab
7
2. Components of Implicit State-Space
Graphs

3 basic components to an implicit representation of
a state-space graph
 Description of start node
 Operators


Functions of state transformation
Models of the effects of actions
 3. Goal condition


True-False valued function
A list of actual instances of state descriptions
(c) 2009 SNU CSE Biointelligence Lab
8
2. Components of Implicit State-Space
Graphs

Two broad classes of search process
 Uninformed search:


no problem specific reason to prefer one part of the search space
to any other
Apply operators to nodes without using any special knowledge
about the problem domain
 Heuristic search



existence of problem-specific information to help focus the
search
Using evaluation functions
Ex) A* algorithm
(c) 2009 SNU CSE Biointelligence Lab
9
Uninformed Search for Graphs

Breadth-First Search
 Depth-First Search
 Iterative Deepening

State-space search tree
 Each node represents a problem or sub-problem
 Root of tree: initial problem to be solved
 Children of a node created by adding constraints
(c) 2009 SNU CSE Biointelligence Lab
10
3. Breadth-First Search

Procedure
1. Apply all possible operators (successor function) to the
start node.
2. Apply all possible operators to all the direct successors of
the start node.
3. Apply all possible operators to their successors till good
node found.
 Expanding
: applying successor function to a node
(c) 2009 SNU CSE Biointelligence Lab
11
Figure 8.2 Breadth-First Search of the Eight-Puzzle
(c) 2009 SNU CSE Biointelligence Lab
12
3. Breadth-First Search (Cont’d)

Advantage
 When a goal node is found, we have found a path of
minimal length to the goal

Disadvantage
 Requires the generation and storage of a tree whose size is
exponential to the depth of the shallowest goal node

Uniform-cost search [Dijkstra 1959]
 A variant of BFS: expansion by equal cost (not equal depth)
 If costs of all arcs are identical, same as BFS
(c) 2009 SNU CSE Biointelligence Lab
13
4. Depth-First or Backtracking Search

Procedure
 Generates the successor of a node just one at a time.
 Trace is left at each node to indicate that additional
operators can be applied there if needed.
 At each node a decision must be made about which
operator to apply first, which next, and so on.
 Repeats this process until the depth bound.
 chronological Backtrack when search depth is depth
bound.
(c) 2009 SNU CSE Biointelligence Lab
14
4. Depth-First or Backtracking Search (Cont’d)

8-puzzle example
 Depth bound: 5
 Operator order: left  up  right  down
Figure 8.3 Generation of the First Few Nodes in a Depth-First Search
(c) 2009 SNU CSE Biointelligence Lab
15
4. Depth-First or Backtracking Search (Cont’d)
 The graph when the goal is reached in depth-first search
(c) 2009 SNU CSE Biointelligence Lab
16
4. Depth-First or Backtracking Search (Cont’d)

Advantage
 Low memory size: linear in the depth bound


saves only that part of the search tree consisting of the path
currently being explored plus traces
Disadvantage
 No guarantee for the minimal state length to goal state
 The possibility of having to explore a large part of the
search space
(c) 2009 SNU CSE Biointelligence Lab
17
5. Iterative Deepening

Advantage
 Linear memory requirements of depth-first search
 Guarantee for goal node of minimal depth

Procedure
 Successive depth-first searches are conducted – each with
depth bounds increasing by 1
(c) 2009 SNU CSE Biointelligence Lab
18
5. Iterative Deepening (Cont’d)
Figure 8.5 Stages in Iterative-Deepening Search
(c) 2009 SNU CSE Biointelligence Lab
19
5. Iterative Deepening (Cont’d)

The number of expanded nodes
 In case of breadth-first search
N bf
b d 1  1
 1 b  b  b 
(b : branching factor, d : depth)
b 1
2
d
 In case of iterative deepening search
b j 1  1
N df j 
number of nodes expanded by a complete DFS down to level j
b 1
j 1
d
b 1
N id  
(in the worst case)
j 0 b  1

1   d j d 
1   b d 1  1 

b   b   1 
b 
  (d  1) 
b  1   j  0  j  0  b  1   b  1 

b d  2  2b  bd  d  1

(b  1) 2
(c) 2009 SNU CSE Biointelligence Lab
20
5. Iterative Deepening (Cont’d)
 For large d the ratio Nid/Ndf is b/(b-1)
 For a branching factor of 10 and deep goals, 11% more
nodes expansion in iterative-deepening search than
breadth-first search
 Related technique iterative broadening is useful when
there are many goal nodes
(c) 2009 SNU CSE Biointelligence Lab
21
6. Additional Readings and Discussion

Various improvements in chronological backtracking
 Dependency-directed backtracking [Stallman & Sussman
1977]
 Backjumping [Gaschnig 1979]
 Dynamic backtracking [Ginsberg 1993]
(c) 2009 SNU CSE Biointelligence Lab
22