CS 4100: Artificial Intelligence Informed Search Instructor: - - PowerPoint PPT Presentation

cs 4100 artificial intelligence
SMART_READER_LITE
LIVE PREVIEW

CS 4100: Artificial Intelligence Informed Search Instructor: - - PowerPoint PPT Presentation

CS 4100: Artificial Intelligence Informed Search Instructor: Jan-Willem van de Meent [Adapted from slides by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley (ai.berkeley.edu).] Announcements Homework k 1: Search (lead TA:


slide-1
SLIDE 1

CS 4100: Artificial Intelligence

Informed Search

Instructor: Jan-Willem van de Meent

[Adapted from slides by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley (ai.berkeley.edu).]

slide-2
SLIDE 2

Announcements

  • Homework

k 1: Search (lead TA: Iris)

  • Due Mon 16 Sep at 11:59pm (deadline ext

xtended)

  • Pr

Project 1 t 1: Search (lead TA: Iris)

  • Due Mon 23 Sep at 11:59pm
  • Longer than most – start early!
  • Homework

k 2: Constraint Satisfaction Problems (lead TA: Eli)

  • Due Mon 23 Sep at 11:59pm
  • Offi

Office H Hours

  • Iris:

s: Mon 10.00am-noon, RI 237

  • JW

JW: Tue 1.40pm-2.40pm, DG 111

  • El

Eli: Wed 3.00pm-5pm, RY 143

  • Zh

Zhaoqi qing: : Thu 9.00am-11.00am, HS 202

slide-3
SLIDE 3

Today

  • Informed Search
  • Heuristics
  • Greedy Search
  • A* Search
  • Graph Search
slide-4
SLIDE 4

Recap: Search

slide-5
SLIDE 5

Recap: Search

  • Search problem:
  • St

States (configurations of the world)

  • Ac

Actions and cost sts

  • Successo

ssor function (world dynamics)

  • Start st

state and goal test st

  • Search tree:
  • No

Nodes represent plans s for reaching states

  • Pl

Plans have cost sts s (sum of action costs)

  • Search algorithm:
  • Systematically builds a search tree
  • Chooses an ordering of the fr

frin inge (unexplored nodes)

  • Co

Comple lete te: : finds solution if it exists

  • Op

Optim timal: l: finds least-cost plan

slide-6
SLIDE 6

Example: Pancake Problem

Cost: Number of pancakes flipped

slide-7
SLIDE 7

Example: Pancake Problem

slide-8
SLIDE 8

Example: Pancake Problem

slide-9
SLIDE 9

Example: Pancake Problem

3 2 4 3 3 2 2 2 4

State space graph with costs as weights

3 4 3 4 2

slide-10
SLIDE 10

General Tree Search

Action: flip top two Cost: 2 Action: flip all four Cost: 4 Path to reach goal: Flip four, flip three Total cost: 7

slide-11
SLIDE 11

The One Queue

  • 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

slide-12
SLIDE 12

Uninformed Search

slide-13
SLIDE 13

Uniform Cost Search

  • Strategy:

y: expand lowest path cost

  • The

The good

  • od: UCS is complete and optimal!
  • The

The bad ad:

  • Explores options in every “direction”
  • No information about goal location

Start Goal … c £ 3 c £ 2 c £ 1

slide-14
SLIDE 14

UCS in Empty Space

slide-15
SLIDE 15

UCS Contours for a Small Maze

slide-16
SLIDE 16

Informed Search

slide-17
SLIDE 17

Search Heuristics

  • A heuristic is:
  • A function that estimates how close a state is to a goal
  • Designed for a particular search problem
  • Ex

Exampl ples: Manhattan distance, Euclidean distance

10 5 11.2

slide-18
SLIDE 18

Example: Heuristic for Travel in Romania

h(x)

slide-19
SLIDE 19

4 2 3 2 3 3 3 3 4 3 3

h(x)

Example: Heuristic for Pancake Flipping

He Heurist stic: the number of pancakes that is still out of place

2

slide-20
SLIDE 20

Example: Heuristic for Pancake Flipping

Ne New He Heurist stic: the index of the largest pancake that is still out of place

4 2 3 2 3 3 3 3 4 3 3

h1(x)

2 4 3 2 3 3 3 4 4 3 4 4 4

h2(x)

4 2 3 2 3 3 3 3 4 3 3

slide-21
SLIDE 21

Greedy Search

slide-22
SLIDE 22

Strategy: Pick node with smallest h(x)

h(x)

slide-23
SLIDE 23

Greedy Search

  • Expand the node that seems closest
  • What can go wrong?
slide-24
SLIDE 24

Greedy Search

  • Strategy:

y: expand the node that you think is closest to a goal state

  • Heurist

stic: estimate of distance to nearest goal for each state

  • A common case

se:

  • Best-first takes you straight to the goal

(but finds suboptimal path)

  • Worst

st-case se: like a badly-guided DFS

… b … b

slide-25
SLIDE 25

Greedy Search in Empty Space

slide-26
SLIDE 26

Greedy Search in a Small Maze

slide-27
SLIDE 27

A* Search

slide-28
SLIDE 28

A* Search

UCS UCS (slow and steady) Gr Greedy Search (fast but unreliable) A* A* Se Search (best of both worlds)

slide-29
SLIDE 29

Combining UCS and Greedy Search

  • Un

Unif iform rm-co cost st orders by path cost, or ba backward cost g( g(n)

  • Gr

Greedy orders by goal proximity, or fo forward heuristic h( h(n) n)

  • A* Search orders by the sum: f(

f(n) = g(n) + h(n)

S a d b G h=5 h=6 h=2 1 8 1 1 2 h=6 h=0 c h=7 3 e h=1 1 Ex Exampl ple: Teg Grenager S a b c e d d G G g = 0 h=6 g = 1 h=5 g = 2 h=6 g = 3 h=7 g = 4 h=2 g = 6 h=0 g = 9 h=1 g = 10 h=2 g = 12 h=0

slide-30
SLIDE 30

When should A* terminate?

  • Should we stop when we enqueue a goal?
  • No

No: only stop when we dequeue a goal

S B A G 2 3 2 2

h = 1 h = 2 h = 0 h = 3

slide-31
SLIDE 31

Is A* Optimal?

  • What went wrong?
  • Actual cost < heuristic cost
  • We need estimates to be less than actual costs!

A G S 1 3

h = 6 h = 0

5

h = 7

slide-32
SLIDE 32

Admissible Heuristics

slide-33
SLIDE 33

Idea: Admissibility

Inadmissible (pessimistic) heuristics break

  • ptimality by trapping good plans on the fringe

Admissible (optimistic) heuristics slow down bad plans but never outweigh true costs

slide-34
SLIDE 34

Admissible Heuristics

  • A heuristic h(

h(n) n) is admissible (optimistic) if: where h* h*(n) n) is the true cost to a nearest goal

  • Examples:
  • Coming up with admissible heuristics is

most of what’s involved in using A* in practice.

4 15

slide-35
SLIDE 35

Optimality of A* Tree Search

slide-36
SLIDE 36

Optimality of A* Tree Search

As Assume me:

  • A is an optimal goal node
  • B is a suboptimal goal node
  • h is admissible

Cl Claim:

  • A will exit the fringe before B

slide-37
SLIDE 37

Optimality of A* Tree Search: Blocking

Pr Proof:

  • Imagine B is on the fringe
  • Some ancestor n of A is on the

fringe, too (maybe A A itself!)

  • Cl

Claim: n will be expanded before B 1.

  • 1. f(

f(n) is less or equal to f( f(A)

Definition of f-cost Admissibility of h

h = 0 at a goal

slide-38
SLIDE 38

Optimality of A* Tree Search: Blocking

Pr Proof:

  • Imagine B is on the fringe
  • Some ancestor n of A is on the

fringe, too (maybe A A itself!)

  • Cl

Claim: n will be expanded before B 1.

  • 1. f(

f(n) is less or equal to f( f(A) 2.

  • 2. f(

f(A) is less than f( f(B)

B is suboptimal h= h=0 0 at a goal

slide-39
SLIDE 39

Optimality of A* Tree Search: Blocking

Pr Proof:

  • Imagine B is on the fringe
  • Some ancestor n of A is on the fringe,

too (maybe A A itself!)

  • Cl

Claim: n will be expanded before B 1.

  • 1. f(

f(n) is less or equal to f( f(A) 2.

  • 2. f(

f(A) is less than f( f(B) 3.

  • 3. n expands before B
  • All ancestors of A expand before B
  • A expands before B
  • A*

A* search is op

  • pti

timal

slide-40
SLIDE 40

Properties of A*

slide-41
SLIDE 41

Properties of A*

… b … b

Uniform-Cost A*

slide-42
SLIDE 42

UCS vs A* Contours

  • Unifor

Uniform-co cost t expands equally in all “directions”

  • A*

A* expands mainly toward the goal, but does hedge its bets to ensure optimality

Start Goal Start Goal

slide-43
SLIDE 43

A* Search in Empty Space

slide-44
SLIDE 44

A* Search in Small Maze

slide-45
SLIDE 45

Comparison

Greedy Uniform Cost A*

slide-46
SLIDE 46

A* Applications

  • Video games
  • Pathing / routing problems
  • Resource planning problems
  • Robot motion planning
  • Language analysis
  • Machine translation
  • Speech recognition
slide-47
SLIDE 47

Pacman (Tiny Maze) – UCS / A*

slide-48
SLIDE 48

Quiz: z: Shallow/Deep Water – Guess the Algorithm

slide-49
SLIDE 49

Creating Heuristics

slide-50
SLIDE 50

Creating Admissible Heuristics

  • Most of the work in solving hard search problems optimally

is in coming up with admissible heuristics

  • Often, admissible heuristics are solutions to relaxe

xed problems, where new actions are available

  • Inadmissible heuristics are often useful too

15 366

slide-51
SLIDE 51

Example: 8 Puzzle

  • What are the states?
  • How many states?
  • What are the actions?
  • How many successors from the start state?
  • What should the costs be?

Start State Goal State Actions

slide-52
SLIDE 52

Average nodes expanded when the optimal path has… …4 steps …8 steps …12 steps UCS 112 6,300 3.6 x 106 TILES 13 39 227

Start State Goal State

8 Puzzle I

  • Heurist

stic: Number of tiles misplaced

  • Why is it admissible?
  • h(start) =
  • This is a relaxed-problem heuristic

8

Statistics from Andrew Moore

slide-53
SLIDE 53

8 Puzzle II

  • What if we had an easi

sier 8-puzzle where any y tile could slide in any y direction at any y time (ignoring other tiles)?

  • Total Ma

Manhattan distance of tiles

  • Why is it admissible?
  • h(start) = 3 + 1 + 2 + … = 18

Average nodes expanded when the optimal path has… …4 steps …8 steps …12 steps TILES 13 39 227 MANHATTAN 12 25 73

Start State Goal State

slide-54
SLIDE 54

8 Puzzle III

  • How about using the actual cost

st as a heuristic?

  • Would it be admissible?
  • Would we save on nodes expanded?
  • What’s wrong with it?
  • Wi

With A*: *: a trade-off between quality y of est stimate and work k 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

slide-55
SLIDE 55

Semi-Lattice of Heuristics

slide-56
SLIDE 56

Trivial Heuristics, Dominance

  • Dominance: ha ≥ hc if
  • Heuristics form a semi-lattice:
  • Max of admissible heuristics is admissible
  • Trivial heuristics
  • Bottom of lattice is the zero heuristic

(what does this give us?)

  • Top of lattice is the exact heuristic
slide-57
SLIDE 57

Graph Search

slide-58
SLIDE 58

Tree Search: Extra Work!

  • Repeated states can cause exponentially more work.

Search Tree State Graph

slide-59
SLIDE 59

Graph Search

  • In BFS, for example, we don’t need to expand the circled nodes (why?)

S

a b d p a c e p h f r q q c

G

a q e p h f r q q c

G

a

slide-60
SLIDE 60

Graph Search

  • Ide

Idea: never expand a state twice

  • Ho

How w to im imple lement:

  • 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
  • Im

Impo porta tant: t: store the closed set as a set, not a list

  • Can graph search wreck completeness? Why/why not?
  • How about optimality?
slide-61
SLIDE 61

A* Graph Search Gone Wrong?

S A B C G

1 1 1 2 3 h=2 h=1 h=4 h=1 h=0

S (0+2) A (1+4) B (1+1) C (2+1) G (5+0) C (3+1) G (6+0)

St State space graph Se Search tree

slide-62
SLIDE 62

Consistency of Heuristics

  • Mai

Main idea: ea: heuristic costs ≤ actual costs

  • Adm

Admissibi bility: heuristic cost ≤ actual cost to goal h(A) ≤ actual cost from A to G

  • Co

Consis istency: heuristic ≤ actual cost for each “arc” h(A) – h(C) ≤ cost(A to C)

  • Co

Cons nseque quenc nces of cons nsistenc ncy:

  • The f value along a path never de

decreases h(A) ≤ cost(A to C) + h(C)

  • A* graph search is optimal

3

A C G

h=4 h=1 1 h=2

slide-63
SLIDE 63

Optimality of A* Graph Search

slide-64
SLIDE 64

Optimality of A* Graph Search

  • Ske

ketch: consider what A* does with a consistent heuristic:

  • Fa

Fact 1: In tree search, A* expands nodes in increasing total f value (f-contours)

  • Fa

Fact 2: For every state s, nodes that reach s optimally are expanded before nodes that reach s suboptimally

  • Re

Resul ult: A* graph search is optimal

… f £ 3 f £ 2 f £ 1

slide-65
SLIDE 65

Optimality

  • Tree se

search:

  • A* is optimal if heuristic is admissi

ssible

  • UCS is a special case (h = 0)
  • Graph se

search:

  • A* optimal if heuristic is consi

sist stent

  • UCS optimal (h = 0 is consistent)
  • Consi

sist stency y implies s admissi ssibility

  • In general, most admissible heuristics

tend to be consistent, especially if derived from relaxed problems

slide-66
SLIDE 66

A*: Summary

slide-67
SLIDE 67

A*: Summary

  • A*

A* uses backw kward costs and (estimates of) forward cost sts

  • A*

A* is opt

  • ptimal

mal with admissi ssible / consi sist stent heuristics

  • Heurist

stic desi sign is s ke key: y: often use relaxed problems

slide-68
SLIDE 68

Tree Search Pseudo-Code

slide-69
SLIDE 69

Graph Search Pseudo-Code

slide-70
SLIDE 70

Optimality of A* Graph Search

  • Consider what A* does:
  • Expands nodes in increasing total f value (f-contours)

Reminder: f(n) = g(n) + h(n) = cost to n + heuristic

  • Pr

Proof i f ide dea: the optimal goal(s) have the lowest f f value, so it must get expanded first

… f £ 3 f £ 2 f £ 1 There’s a problem with this

  • argument. What are we assuming

is true?

slide-71
SLIDE 71

Optimality of A* Graph Search

Pr Proof:

  • New possi

ssible problem: some n on path to G* G* isn’t in queue when we need it, because some worse n’ n’ for the same state dequeued and expanded first (disaster!)

  • Take the highest such n in tree
  • Let p be the ancestor of n

n that was on the queue when n’ n’ was popped

  • f(

f(p) < < f( f(n) because of consistency

  • f(

f(n) < < f( f(n’) ’) because n’ n’ is suboptimal

  • p would have been expanded before n’

n’

  • Contradiction!