CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence...
Transcript of CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence...
![Page 1: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/1.jpg)
Search I
instructor: byron wallaceCS 4100 // artificial intelligence
Attribution: many of these slides are modified versions of those distributed with the UC Berkeley CS188 materialsThanks to John DeNero and Dan Klein
![Page 2: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/2.jpg)
Quick announcements
We now have a piazza site (linked to on homepage)• You should have received an email about this
Instructions for setting up a git account are available and were sent out; this is how you will turn in assignments!
• If there is interest, Rohan (our TA) will run a crash course in the (very) basics of git –enough so that you can turn in the assignments!
![Page 3: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/3.jpg)
Questions before we begin?
![Page 4: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/4.jpg)
Search I• Agents that Plan Ahead
• We will treat plans as search problems
• Uninformed Search Methods- Depth-First Search- Breadth-First Search- Uniform-Cost Search
![Page 5: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/5.jpg)
“Reflex agents”• Reflex agents:
- Choose action based on current percept only- May have memory or a model of the world’s current state- Do not consider the future consequences of their actions
• Can a reflex agent be rational?
![Page 6: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/6.jpg)
Rational vacuum cleaner
![Page 7: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/7.jpg)
The trouble with reflex agents
![Page 8: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/8.jpg)
Problem solving agents
Goal-based: want to accomplish some goal, e.g., maximize utility or similar performance measure
![Page 9: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/9.jpg)
Problem solving agents
Goal-based: want to accomplish some goal, e.g., maximize utility or similar performance measure
Simple problem-solving agents search for sequences of actions that will realize their goals- This entails evaluating ‘future’ actions
![Page 10: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/10.jpg)
Problem solving agents
Goal-based: want to accomplish some goal, e.g., maximize utility or similar performance measure
Simple problem-solving agents search for sequences of actions that will realize their goals- This entails evaluating ‘future’ actions
Assuming S discrete states, finding the “best” sequence of T actions is non-trivial. Doing this brute force would require evaluating ST sequences- Motivates use of clever search algorithms
![Page 11: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/11.jpg)
Planning agents
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
Optimal vs. complete planning
Planning vs. replanning
![Page 12: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/12.jpg)
Formalizing search problems
![Page 13: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/13.jpg)
Search problemsA search problem consists of:
- A state space
- A successor function(with actions, costs)
- A start state and a goal test
A solution is a sequence of actions (a plan) that transforms the start state to a goal state
“N”, 1.0
“E”, 1.0
![Page 14: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/14.jpg)
• Most of the work will often be spent formalizing your task into a search problem (designing the state space representation, successor functions and so on). Is it worth it?
The advantage of abstraction
![Page 15: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/15.jpg)
• Most of the work will often be spent formalizing your task into a search problem (designing the state space representation, successor functions and so on). Is it worth it?
• Yes. Because once we have formalized our problem in this way, we can hand it to off-the-shelf search algorithms to find a solution!
The advantage of abstraction
![Page 16: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/16.jpg)
Search problems are models
![Page 17: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/17.jpg)
Example from the text: traveling in Romania
State space- Cities
Successor function- Roads: Go to adjacent city with cost
= distance
Start state- Arad
Goal test- Is state == Bucharest?
Solution?
![Page 18: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/18.jpg)
Another example
States?
Actions?
Goal?
![Page 19: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/19.jpg)
World states v. search states
Problem: Pathing• States: (x,y) location• Actions: NSEW• Successor: update location only• Goal test: is (x,y)=END
Problem: Eat-All-Dots• States: {(x,y), dot booleans}• Actions: NSEW• Successor: update location and possibly
a dot boolean (if we eat food)• Goal test: dots all false
The world state includes every last detail of the environment
A search state keeps only the details needed for planning (abstraction)
![Page 20: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/20.jpg)
State space sizes?
World state:• Agent positions: 120 (assume 10x12 grid)• Food (dots) count: 30• Ghost positions: 12• Agent facing: NSEW
How many• World states?
120 x 230 x 122 x 4• States for pathing?
120• States for eat-all-dots?
120 x 230
![Page 21: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/21.jpg)
One more example: safe passage
Problem: eat all dots while keeping the ghosts perma-scaredWhat does the state space have to specify?
• (agent position, dot booleans, power pellet booleans, remaining scared time)
![Page 22: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/22.jpg)
State space graphs and search trees
![Page 23: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/23.jpg)
State space graph: A mathematical representation of a search problem
• Nodes are (abstracted) world configurations• Arcs represent successor states (action results)• 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/abstraction
State space graphs
![Page 24: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/24.jpg)
State space graphs
State space graph: A mathematical representation of a search problem
• Nodes are (abstracted) world configurations• Arcs represent successor states (action results)• 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/abstraction
S
G
d
b
p q
c
e
h
a
f
r
Tiny search graph for a tiny search problem
![Page 25: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/25.jpg)
Search trees
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
“E”, 1.0“N”, 1.0
Start state / root
Possible futures
![Page 26: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/26.jpg)
State space graphs vs. search trees
S
a
b
d p
a
c
e
p
h
f
r
q
q c G
a
qe
p
h
f
r
q
q c G
a
S
G
d
b
p q
c
e
h
a
f
r
Each node in the search tree is an entire path
in the state space graph.
Search treeState space graph
![Page 27: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/27.jpg)
Pop Q: state space graphs vs. search trees
S G
b
a
consider this 4-state graph
Important: Lots of repeated structure in the search tree!
how big is its search tree (from S)?
![Page 28: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/28.jpg)
This brings us to tree search
![Page 29: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/29.jpg)
Search example: Romania
![Page 30: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/30.jpg)
Searching with a search tree
General strategy:• Expand out potential plans (tree nodes)• Maintain a fringe of partial plans under consideration• Try to expand as few tree nodes as possible
![Page 31: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/31.jpg)
A bit more formally
Important ideas:• Fringe (things that may yet work)• Expansion (picking nodes out of fringe to expand)• Exploration strategy (how to pick from the fringe)
Main question: which fringe nodes to explore?
![Page 32: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/32.jpg)
Example: tree search
S
G
d
b
p q
c
e
h
a
f
r
![Page 33: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/33.jpg)
How shall we search?Today we will discuss a few simple strategies for node expansion: Depth First Search (DFS) and Breadth First Search (BFS)
![Page 34: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/34.jpg)
Depth-First Search (DFS)
![Page 35: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/35.jpg)
Depth-First Search (DFS)
S
a
b
d p
a
c
e
p
h
f
r
q
q c G
a
qe
p
h
f
r
q
q c G
a
S
G
d
b
p q
c
e
h
a
f
rqph
fd
ba
c
e
r
Strategy expand a deepest node firstImplementation Fringe is a stack (LIFO)
![Page 36: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/36.jpg)
Search algorithm properties
![Page 37: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/37.jpg)
• Complete: Guaranteed to find a solution if one exists?• Optimal: Guaranteed to find the least cost path?• Time complexity?• Space complexity?
Cartoon of search tree:• b is the branching factor• m is the maximum depth• solutions at various depths
Number of nodes in entire tree?• 1 + b + b2 + …. bm = O(bm)
…b
1nodebnodes
b2 nodes
bm nodes
mtiers
Search algorithm properties
![Page 38: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/38.jpg)
In sum: DFS properties
…b
1nodebnodes
b2 nodes
bm nodes
mtiers
What nodes does DFS expand?• Some left prefix of the tree.• Could process the whole tree!• If m is finite, takes time O(bm)
How much space does the fringe take?• Only has siblings on path to root, so O(bm)
Is it complete?• 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
![Page 39: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/39.jpg)
Breadth-First Search (BFS)
![Page 40: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/40.jpg)
S
a
b
d p
a
c
e
p
h
f
r
q
q c G
a
qe
p
h
f
r
q
q c G
a
S
G
d
b
p q
ce
h
a
f
r
Search
Tiers
Strategy expand a shallowest node firstImplementation Fringe is a FIFO queue
Breadth-First Search (BFS)
![Page 41: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/41.jpg)
What nodes does BFS expand?• Processes all nodes above shallowest solution• Let the depth of the shallowest solution be s• Search takes time O(bs)
How much space does the fringe take?• Has roughly the last tier, so O(bs)• So in ”worst case” this is O(bm)
Is it complete?• s must be finite if a solution exists, so yes!
Is it optimal?• Only if action costs are all 1 (more on costs later)
…b
1nodebnodes
b2 nodes
bm nodes
stiers
bs nodes
Breadth-First Search (BFS) properties
![Page 42: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/42.jpg)
DFS vs BFS
![Page 43: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/43.jpg)
DFS vs BFS
1. When will BFS outperform DFS?2. When will DFS outperform BFS?
![Page 44: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/44.jpg)
Some examples
![Page 45: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/45.jpg)
BFS or DFS?
![Page 46: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/46.jpg)
DFS
![Page 47: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/47.jpg)
Hybrid approach: iterative deepening
…b
Idea: get DFS’s space advantage with BFS’s time / shallow-solution advantages
• 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!
![Page 48: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/48.jpg)
Cost-sensitive search
BFS finds the shortest path in terms of number of actions.But it does not find the least-cost path.
START
GOAL
d
b
pq
c
e
h
a
f
r
2
9 2
81
8
2
3
2
4
4
15
1
32
2
![Page 49: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/49.jpg)
Uniform Cost Search (UCS)
![Page 50: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/50.jpg)
S
a
b
d p
a
c
e
p
h
f
r
q
q c G
a
qe
p
h
f
r
q
q c G
a
Strategy expand a cheapest node first:
Fringe is a priority queue (priority: cumulative cost)
S
G
d
b
p q
c
e
h
a
f
r
3 9 1
16411
5
713
8
1011
17 11
0
6
39
1
1
2
8
8 2
15
1
2
Costcontours
2
Uniform Cost Search (UCS)
![Page 51: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/51.jpg)
…
Uniform Cost Search (UCS) propertiesWhat nodes does UCS expand?
• Processes all nodes with cost less than cheapest solution!• Assume optimal solution costs C* and all arcs cost at least e. How
deep do we explore???• “effective depth” is roughly C*/e• So we’d expand O(bC*/e) nodes (exponential in effective depth)
How much space does the fringe take?• Has roughly the last tier, so O(bC*/e)
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*)
b
C*/e “tiers”c£ 3
c£ 2
c£ 1
![Page 52: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/52.jpg)
Uniform Cost Issues• Remember: UCS explores increasing cost contours
• The good: UCS is complete and optimal!
• The bad:- Explores options in every “direction”- No information about goal location
• We’ll fix that soon! Start Goal
…
c£ 3c£ 2
c£ 1
![Page 53: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/53.jpg)
The one queueThese search algorithms are the same except for fringe strategies
• Conceptually, all fringes are priority queues (i.e. collections of nodes with attached priorities)
• Practically, for DFS and BFS, you can avoid the log(n) overhead from an actual priority queue, by using stacks and queues
![Page 54: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/54.jpg)
The one queueThese search algorithms are the same except for fringe strategies
• Conceptually, all fringes are priority queues (i.e. collections of nodes with attached priorities)
• Practically, for DFS and BFS, you can avoid the log(n) overhead from an actual priority queue, by using stacks and queues
![Page 55: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/55.jpg)
Search and modelsSearch operates over models of the world
• The agent doesn’t actually try all the plans out in the real world!
• Planning is all “in simulation”• Your search is only as good as your
models…
![Page 56: CS 4100 // artificial intelligence - byron wallace · CS 4100 // artificial intelligence Attribution : many of these slides are modified versions of those distributed with the UC](https://reader030.fdocuments.us/reader030/viewer/2022041216/5e04e555636fdb5a100c5801/html5/thumbnails/56.jpg)
That’s it for today!
Next week: smarter search; A* and beyond
HW1 is available on the website -- start early! Due in two weeks.
Rohan has office hours Thursdays: 3-5p in 462 WVH. I have office hours Tuesdays after class (476 WVH).