Lecture 2 - Uniformed Search
Lecture 2 - Uniformed Search
Search
Today
▪ Agents that Plan Ahead
▪ Search Problems
▪ Reflex agents:
▪ Choose action based on current percept (and
maybe memory)
▪ May have memory or a model of the world’s
current state
▪ Do not consider the future consequences of
their actions
▪ Consider how the world IS
▪ Planning agents:
▪ Ask “what if”
▪ Decisions based on (hypothesized)
consequences of actions
▪ Must have a model of how the world evolves in
response to actions
▪ Must formulate a goal (test)
▪ Consider how the world WOULD BE
▪ A state space
“E”, 1.0
▪ A start state and a goal test
▪ State space:
▪ Cities
▪ Successor function:
▪ Roads: Go to adjacent city with
cost = distance
▪ Start state:
▪ Arad
▪ Goal test:
▪ Is state == Bucharest?
▪ Solution?
What’s in a State Space?
The world state includes every last detail of the environment
A search state keeps only the details needed for planning (abstraction)
▪ World state:
▪ Agent positions: 120
▪ Food count: 30
▪ Ghost positions: 12
▪ Agent facing: NSEW
▪ How many
▪ World states?
120x(230)x(122)x4
▪ States for pathing?
120
▪ States for eat-all-dots?
120x(230)
Quiz: Safe Passage
Possible futures
▪ A search tree:
▪ A “what if” tree of plans and their outcomes
▪ The start state is the root node
▪ Children correspond to successors
▪ Nodes show states, but correspond to PLANS that achieve those states
▪ For most problems, we can never actually build the whole tree
State Space Graphs vs. Search Trees
a G d e p
b c
b c e h r q
e
d f a a h r p q f
S h We construct both
on demand – and p q f q c G
p q r
we construct as q c G a
little as possible.
a
Quiz: State Space Graphs vs. Search Trees
Consider this 4-state graph: How big is its search tree (from S)?
S G
b
Quiz: State Space Graphs vs. Search Trees
Consider this 4-state graph: How big is its search tree (from S)?
a s
a b
S G
b G a G
b a G b G
… …
▪ Search:
▪ Expand out potential plans (tree nodes)
▪ Maintain a fringe of partial plans under consideration
▪ Try to expand as few tree nodes as possible
General Tree Search
▪ Important ideas:
▪ Fringe
▪ Expansion
▪ Exploration strategy
S s
s d
d e p s e
s p
b c e h r q s d b
s d c
a a h r p q f s d e
s d e h
p q f q c G s d e r
a s d e r f
q c G
s d e r f c
a s d e r f G
Depth-First Search
Depth-First Search
Strategy: expand a a G
deepest node first b c
Implementation: e
d f
Fringe is a LIFO stack S h
p q r
d e p
b c e h r q
a a h r p q f
p q f q c G
q c G a
a
Search Algorithm Properties
Search Algorithm Properties
▪ Complete: Guaranteed to find a solution if one exists?
▪ Optimal: Guaranteed to find the least cost path?
▪ Time complexity?
▪ Space complexity? b
1 node
… b nodes
▪ Is it complete? bm nodes
▪ m could be infinite, so only if we prevent
cycles (more later)
▪ Is it optimal?
▪ No, it finds the “leftmost” solution,
regardless of depth or cost
Breadth-First Search
Breadth-First Search
Strategy: expand a a G
shallowest node first b c
Implementation: Fringe e
d f
is a FIFO queue S h
p q r
d e p
Search
b c e h r q
Tiers
a a h r p q f
p q f q c G
q c G a
a
Breadth-First Search (BFS) Properties
▪ What nodes does BFS expand?
▪ Processes all nodes above shallowest solution b
1 node
▪ Let depth of shallowest solution be s … b nodes
s tiers
▪ Search takes time O(bs) b2 nodes
▪ Is it complete? bm nodes
▪ s must be finite if a solution exists, so yes!
▪ Is it optimal?
▪ Only if costs are all 1 (more on costs later)
Quiz: DFS vs BFS
Video of Demo Maze Water DFS/BFS (part 1)
Video of Demo Maze Water DFS/BFS (part 2)
Quiz: DFS vs BFS
b c
3
2
1 8
2 e
3 d
f
ST 9 8 2
AR h
T
1 4 2
p 4 r
15
q
S 0
d 3 e 9 p 1
b 4 c e 5 h 17 r 11 q 16
11
Cost a 6 a h 13 r 7 p q f
contours
p q f 8 q c G
q 11 c G 10 a
a
Uniform Cost Search (UCS) Properties
▪ What nodes does UCS expand?
▪ Processes all nodes with cost less than cheapest solution!
b
▪ If that solution costs C* and arcs cost at least ε , then the …
c≤1
“effective depth” is roughly C*/ε c≤2
C*/ε “tiers”
▪ Takes time O(b ) (exponential in effective depth)
C*/ε
c≤3
▪ Is it complete?
▪ Assuming best solution has a finite cost and minimum arc cost
is positive, yes!
▪ Is it optimal?
▪ Yes! (Proof next lecture via A*)
Uniform Cost Issues
▪ Remember: UCS explores increasing cost … c≤1
contours c≤2
c≤3
▪ The bad:
▪ Explores options in every “direction”
▪ No information about goal location
Start Goal