0% found this document useful (0 votes)
14 views

Lecture 2-Uninformed Search

Ai Geeetics

Uploaded by

Sebunya Ronaldo
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

Lecture 2-Uninformed Search

Ai Geeetics

Uploaded by

Sebunya Ronaldo
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 37

CSC 2114: Artificial Intelligence

Search
Today
 Agents that Plan Ahead

 Search Problems

 Uninformed Search Methods


 Depth-First Search
 Breadth-First Search
 Uniform-Cost Search
Planning Agents

 Planning agents decide based on evaluating


future action sequences
 Must have a model of how the world
evolves in response to actions
 Usually have a definite goal
 Optimal: Achieve goal at least cost
Search Problems
Search Problems
 A search problem consists of:
 A state space: S
 An initial state: s0
 Actions: A(s) in each state N -9
 Transition model: Result(s,a)
 A goal test: G(s) E -9
 S has no dots left
 Action cost c(s,a,s’)

 A solution is an action sequence that reaches a goal state


 An optimal solution has least cost among all solutions
Search Problems Are Models
Example: Traveling in Kampala
Example: Traveling in Kampala
 State space:
 Towns
 Initial state:
 Owino market
 Actions:
 Go to adjacent Towns
 Transition model:
 Reach adjacent Towns
 Goal test:
 s = Kasubi Royal Tombs?
 Action cost:
 Road distance from s to s’
 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)
 Problem: Pathing  Problem: Eat-All-Dots
 States: (x,y) location  States: {(x,y), dot Booleans}
 Actions: NSEW  Actions: NSEW
 Transition: update x,y value  Transition: update x,y and
 Goal test: is (x,y)=destination possibly a dot Boolean
 Goal test: dots all false
State Space Graphs and Search Trees
State Space Graphs

 State space graph: A mathematical


representation of a search problem
 Nodes are (abstracted) world configurations
 Arcs represent transitions (labeled with actions)
 The goal test is a set of goal nodes (maybe only one)

 In a state space graph, each state occurs only


once!

 We can rarely build this full graph in memory


(it’s too big), but it’s a useful idea
State Space Graphs

 State space graph: A mathematical


a G
representation of a search problem
 Nodes are (abstracted) world configurations b c
 Arcs represent successors (action results)
e
 The goal test is a set of goal nodes (maybe only one) d f
S h
 In a state space graph, each state occurs only p r
q
once!
Tiny state space graph for a tiny
 We can rarely build this full graph in memory search problem
(it’s too big), but it’s a useful idea
State Space Graphs vs. Search Trees

Each NODE in in
State Space Graph the search tree is Search Tree
an entire PATH in
the state space S

a G graph. e p
d
b c
b c e h r q
e
d f a a h r p q f
S h We construct the
tree on demand – p q f q c G
p q r
and 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

… …

Important: Those who don’t know history are doomed to repeat it!
Quiz: State Space Graphs vs. Search Trees

Consider a rectangular grid: How many states within d steps of start?

How many states in search tree of depth d?


Tree Search
Search Example: Romania

Start

Destination
Creating the search tree
Creating the search tree
Creating the search tree
General Tree Search

 Main variations:
 Which leaf node to expand next
 Whether to check for repeated states
 Data structures for frontier, expanded nodes
Systematic search
frontier

reached =
unexplored expanded U frontier
expanded

1. Frontier separates expanded from unexplored region of state-space graph


2. Expanding a frontier node:
a. Moves a node from frontier into expanded
b. Adds nodes from unexplored into frontier, maintaining property 1
Depth-First Search
Depth-First Search
Strategy: expand a a G
deepest node first b c

Implementation: d
e
f
Frontier 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
 Cartoon of search tree: b2 nodes
 b is the branching factor m tiers
 m is the maximum depth
 solutions at various depths
bm nodes
 Number of nodes in entire tree?
 1 + b + b2 + …. bm = O(bm)
Depth-First Search (DFS) Properties
 What nodes does DFS expand?
 Some left prefix of the tree down to depth m. 1 node
b
 Could process the whole tree! … b nodes
 If m is finite, takes time O(bm) b2 nodes
m tiers
 How much space does the frontier take?
 Only has siblings on path to root, so O(bm)

 Is it complete? bm nodes
 m could be infinite
 preventing cycles may help (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: e
d f
Frontier 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 1 node
b
 Let depth of shallowest solution be s … b nodes
s tiers
 Search takes time O(bs) b2 nodes

 How much space does the frontier take? bs nodes


 Has roughly the last tier, so O(bs)

 Is it complete? bm nodes
 s must be finite if a solution exists, so yes!

 Is it optimal?
 If costs are equal (e.g., 1)
Quiz: DFS vs BFS
Quiz: DFS vs BFS

 When will BFS outperform DFS?

 When will DFS outperform BFS?


Iterative Deepening
 Idea: get DFS’s space advantage with BFS’s
time / shallow-solution advantages b
 Run a DFS with depth limit 1. If no solution… …

 Run a DFS with depth limit 2. If no solution…


 Run a DFS with depth limit 3. …..

 Isn’t that wastefully redundant?


 Generally most work happens in the lowest
level searched, so not so bad!
Uniform Cost Search
Uniform Cost Search
2 a G
g(n) = cost from root to n b c
1 8 2
Strategy: expand lowest g(n) 2 e
3 d f
Frontier is a priority queue 9 2
S h 8
sorted by g(n) 1
1 p q r
15

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 g1
 If that solution costs C* and arcs cost at least  , then the …
“effective depth” is roughly C*/ g2
C*/ “tiers”
 Takes time O(b ) (exponential in effective depth)
C*/ 
g3

 How much space does the frontier take?


 Has roughly the last tier, so O(bC*/)

 Is it complete?
 Assuming C* is finite and  > 0, yes!

 Is it optimal?
 Yes! (Proof next lecture via A*)

You might also like