AI T3 Informed Search
AI T3 Informed Search
Informed Search
Amrinder Arora
[Original version of these slides was created by Dan Klein and Pieter Abbeel for Intro to AI at UC Berkeley. http://ai.berkeley.edu]
Course Logistics
§ Communication
§ Announcements on Slack
§ Projects
§ Team based contests P2 and P4 have a lot of weightage
§ The class winner gets (objectively) more points than those that are not the winners.
AI-4511/6511 GWU 2
Course Outline
What is AI
Introduction
Env. and Agent
Types
• Robotics
Informed
• NLP Search
• Machine Learning Making
AI / 6511 / Decisions
• Big Data 4511 Constraint
• AR/VR Satisfaction
• Speech Synthesis
Adversarial
Search
Bayes’ Nets
Reasoning Decision
under Theory
Uncertainty
Markov
AI-4511/6511 GWU Decision 3
Processes
Today
§ Informed Search
§ Concept of “Direction”
§ In physical space
§ In logical solution space
§ Heuristics
§ Greedy Search
§ A* Search
§ Graph Search
AI-4511/6511 GWU 4
Recap: Search
AI-4511/6511 GWU 5
Recap: Search
§ Search problem:
§ States (configurations of the world)
§ Actions and costs
§ Successor function (world dynamics)
§ Start state and goal test
§ Search tree:
§ Nodes: represent plans for reaching states
§ Plans have costs (sum of action costs)
§ Search algorithm:
§ Systematically builds a search tree
§ Chooses an ordering of the fringe (unexplored nodes)
§ Optimal: finds least-cost plans
AI-4511/6511 GWU 6
Example: Pancake Problem
AI-4511/6511 GWU 8
Example: Pancake Problem
State space graph with costs as weights
4
2 3
2
3
4
3
4 2
3 2
2
4
3
AI-4511/6511 GWU 9
General Tree Search You know exactly
where you came
from and how you
got there, but you
have no idea where
you’re going. But,
you’ll know it when
you see it.
AI-4511/6511 GWU 10
The One Queue – A Useful Abstraction
§ All these 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
§ Can even code one implementation
that takes a variable queuing object
AI-4511/6511 GWU 11
Uninformed Search
Uninformed search is
structured search, but
does not have any way of
knowing which way to go. It
is an improvement in terms
of endless looping, but not
intelligent.
AI-4511/6511 GWU 12
Uniform Cost Search
§ The bad:
§ Explores options in every “direction”
Start Goal
§ No information about goal location
AI-4511/6511 GWU 13
Informed Search
§ Concept of “direction”
AI-4511/6511 GWU 14
How do we use Direction/Information
§ We “hear” the direction where the sound is coming from, based
on the distance (the time) it takes for the sound to reach the two
ears.
§ “Studies of barn owls offer insight into just how the brain combines
acoustic signals from two sides of the head into a single spatial
perception”
§ https://www.scientificamerican.com/article/listening-with-two-ears-
2006-09/
AI-4511/6511 GWU 15
Search Heuristics
§ A heuristic is:
§ A function that estimates how close a state is to a goal
§ Designed for a particular search problem
§ Examples: Manhattan distance, Euclidean distance for
pathing
10
5
11.2
AI-4511/6511 GWU 16
Heuristic Function: Example 1
Heuristic: the number of the largest pancake that is still out of place
3
4
h(x)
3
4
3 0
4
4 3
4
4 2
3
AI-4511/6511 GWU 17
Heuristic Function: Example 2
§ Euclidean (Flying) distance
AI-4511/6511 GWU 18
Greedy (Informed) Search
b
§ Strategy: expand a node that you think is …
closest to a goal state
§ Heuristic: estimate of distance to nearest goal for
each state
§ A common case:
b
§ Best-first takes you straight to the (wrong) goal …
AI-4511/6511 GWU 19
Comparing UCS and Greedy
§ Uniform-cost orders by path cost, or backward cost g(n)
§ Greedy orders by goal proximity, or forward cost h(n)
8 g=0
S h=6
h=1 g=1
e a
1 h=5
1 3 2 g=2 g=9
S a d G
h=6 b d g=4 e h=1
h=6 h=5 h=2
1 h=2 h=0
1 g=3 g=6
c b g = 10
h=7 c G h=0 d
h=2
h=7 h=6
g = 12
G h=0
AI-4511/6511 GWU 20
Example: Teg Grenager
Pros and Cons (and What to Do)
§ Neither approach is bad
§ UCS doesn’t take direction into account
§ Greedy doesn’t take the past covered distance into account.
AI-4511/6511 GWU 21
A*: Combining UCS and Greedy
§ Uniform-cost orders by path cost, or backward cost g(n)
§ Greedy orders by goal proximity, or forward cost h(n)
AI-4511/6511 GWU 22
Example: Teg Grenager
When should A* terminate?
2 A 2
S h=3 h=0 G
2 B 3
h=1
AI-4511/6511 GWU 24
Idea: Admissibility
§ Examples:
4
15
§ Coming up with admissible heuristics is most of what’s involved
in using A* in practice.
AI-4511/6511 GWU 26
Optimality of A* Tree Search
AI-4511/6511 GWU 27
Optimality of A* Tree Search
Assume:
§ A is an optimal goal node …
§ B is a suboptimal goal node
§ h(x) is an admissible heuristic
Claim:
§ A will exit the fringe before B
AI-4511/6511 GWU 28
Optimality of A* Tree Search: Blocking
Proof:
…
§ Imagine B is on the fringe
§ Some ancestor n of A is on the
fringe, too (maybe A!)
§ Claim: n will be expanded before B
1. f(n) is less or equal to f(A)
Definition of f-cost
Admissibility of h
h = 0 at a goal
AI-4511/6511 GWU 29
Optimality of A* Tree Search: Blocking
Proof:
…
§ Imagine B is on the fringe
§ Some ancestor n of A is on the
fringe, too (maybe A!)
§ Claim: n will be expanded before B
1. f(n) is less or equal to f(A)
2. f(A) is less than f(B)
B is suboptimal
h = 0 at a goal
AI-4511/6511 GWU 30
Optimality of A* Tree Search: Blocking
Proof:
…
§ Imagine B is on the fringe
§ Some ancestor n of A is on the
fringe, too (maybe A!)
§ Claim: n will be expanded before B
1. f(n) is less or equal to f(A)
2. f(A) is less than f(B)
3. n expands before B
§ All ancestors of A expand before B
§ A expands before B
§ A* search is optimal
AI-4511/6511 GWU 31
Properties of A*
AI-4511/6511 GWU 32
Properties of A*
Uniform-Cost A*
b b
… …
AI-4511/6511 GWU 33
UCS vs. A* Contours
AI-4511/6511 GWU 34
Comparison
AI-4511/6511 GWU 35
A* Applications
§ Video games
§ Pathing / routing problems
§ Resource planning problems
§ Robot motion planning
§ Language analysis
§ Machine translation
§ Speech recognition
§ …
AI-4511/6511 GWU 36
Creating Heuristics
§ The main point of improvement!!
AI-4511/6511 GWU 37
Creating Admissible Heuristics
§ Most of the work in solving hard search problems optimally is in coming up
with admissible heuristics
366
15
§ With A*: a trade-off between quality of estimate and work per node
§ As heuristics get closer to the true cost, you will expand fewer nodes but usually
do more work per node to compute the heuristic itself
AI-4511/6511 GWU 42
Semi-Lattice of Heuristics
AI-4511/6511 GWU 43
Trivial Heuristics, Dominance
§ Dominance: ha ≥ hc if
§ Trivial heuristics
§ Bottom of lattice is the zero heuristic (what
does this give us?)
§ Top of lattice is the exact heuristic
AI-4511/6511 GWU 44
8 Puzzle, Beyond Manhattan Distance
§ Even if using A* (or other algorithms such as IDA*) along with a
heuristic such as Manhattan Distance, larger puzzles, such as 24
puzzles are still untenable.
§ This is because Manhattan Distance does not take into account
linear conflicts. For example:
• Manhattan Distance is 4, but tiles 1 and 3
interfere with each other.
• [Hansson, Mayer, and Yung, 1991] show that
given two tiles in their goal row, but reversed in
position, additional vertical moves can be added
to Manhattan distance.
• So, 4 + 2 = 6 in this case.
AI-4511/6511 GWU 45
8 Puzzle, Beyond Manhattan Distance
§ So, using A* and using the New Heuristic (Manhattan + Vertical
Moves), larger puzzles, such as 24 puzzles are still untenable.
§ We need to use a pattern database.
§ A pattern database is a complete set of such positions, with
associated number of moves
§ A 7-tile pattern database for the Fifteen Puzzle contains 519
million entries.
AI-4511/6511 GWU 46
Using Pattern Database and Semi-Lattice
§ From a given 15-puzzle we may recognize two different patterns
using two different sets of tiles.
§ If one pattern suggests a distance of 20 and the other pattern
suggests a distance of 30, we can take the maximum (30).
AI-4511/6511 GWU 47
Graph Search
AI-4511/6511 GWU 48
Tree Search: Extra Work!
§ Failure to detect repeated states can cause exponentially more work.
AI-4511/6511 GWU 49
Graph Search
§ In BFS, for example, we shouldn’t bother expanding the circled nodes (why?)
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
AI-4511/6511 GWU 50
Graph Search
§ Idea: never expand a state twice
§ How to implement:
§ Tree search + set of expanded states (“closed set”)
§ Expand the search tree node-by-node, but…
§ Before expanding a node, check to make sure its state has never been
expanded before
§ If not new, skip it, if new add to closed set
A S (0+2)
1
1
S h=4
C
h=1 A (1+4) B (1+1)
h=2 1
2
3 C (2+1) C (3+1)
B
h=0
AI-4511/6511 GWU 52
Consistency of Heuristics
§ Main idea: estimated heuristic costs ≤ actual costs
§ Admissibility: heuristic cost ≤ actual cost to goal
A
1 h(A) ≤ actual cost from A to G
h=4 C h=1 § Consistency: heuristic “arc” cost ≤ actual cost for each arc
h=2
h(A) – h(C) ≤ cost(A to C)
3
§ Consequences of consistency:
§ The f value along a path never decreases
G h(A) ≤ cost(A to C) + h(C)
AI-4511/6511 GWU 54
Optimality of A* Graph Search
AI-4511/6511 GWU 55
Optimality
§ Tree search:
§ A* is optimal if heuristic is admissible
§ UCS is a special case (h = 0)
§ Graph search:
§ A* optimal if heuristic is consistent
§ UCS optimal (h = 0 is consistent)
AI-4511/6511 GWU 56
A*: Summary
§ A* uses both backward costs and (estimates of) forward costs
AI-4511/6511 GWU 57
Tree Search Pseudo-Code
AI-4511/6511 GWU 58
Graph Search Pseudo-Code
AI-4511/6511 GWU 59
Optimality of A* Graph Search
… f£1
There’s a problem with this f£2
argument. What are we assuming
f£3
is true?
AI-4511/6511 GWU 60
Optimality of A* Graph Search
Proof:
§ New possible problem: some n on path to G*
isn’t in queue when we need it, because some
worse n’ for the same state dequeued and
expanded first (disaster!)
§ Take the highest such n in tree
§ Let p be the ancestor of n that was on the
queue when n’ was popped
§ f(p) < f(n) because of consistency
§ f(n) < f(n’) because n’ is suboptimal
§ p would have been expanded before n’
§ Contradiction!
AI-4511/6511 GWU 61