20
Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. • Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) = g(G 2 ) since h(G 2 )=0 > g(G) since G 2 is suboptimal >= f(n) since h is admissible Since f(G 2 ) > f(n), A* will never select G 2 for expansion

Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Embed Size (px)

Citation preview

Page 1: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Optimality of A*(standard proof)

• Suppose suboptimal goal G2 in the queue.• Let n be an unexpanded node on a shortest path to

optimal goal G.f(G2 ) = g(G2 ) since h(G2 )=0

> g(G) since G2 is suboptimal>= f(n) since h is admissible

Since f(G2) > f(n), A* will never select G2 for expansion

Page 2: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

A* - Optimality• A* is optimally efficient (Dechter and

Pearl 1985):

– It can be shown that all algorithms that do not expand a node which A* did expand may miss an optimal solution

Page 3: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Memory-bounded heuristic search• A* keeps all generated nodes in memory

– On many problems A* will run out of memory

• Iterative deepening A* (IDA*)– Like IDS but uses f-cost rather than depth at each

iteration

• SMA* (Simplified Memory-Bounded A*)– Uses all available memory– Proceeds like A* but when it runs out of memory it

drops the worst leaf node (one with highest f-value)– If all leaf nodes have the same f-value then it drops

oldest and expands the newest– Optimal and complete if depth of shallowest goal

node is less than memory size

Page 4: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Iterative Deepening A* (IDA*)Iterative Deepening A* (IDA*)

• Use f(n) = g(n) + h(n) like in A*

• Each iteration is depth-first with cutoff on the value of f of expanded nodes

Page 5: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=4

Page 6: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=4

6

Page 7: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=4

6

5

Page 8: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=4

6

5

5

Page 9: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

4

8-Puzzle8-Puzzle

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=4

6

5

56

Page 10: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5G

Page 11: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5

6

Page 12: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5

6

5

Page 13: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5

6

5

7

Page 14: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5

6

5

7

5

Page 15: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5

6

5

7

5 5

Page 16: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

8-Puzzle8-Puzzle

4

4

6

f(N) = g(N) + h(N) with h(N) = number of misplaced tiles

Cutoff=5

6

5

7

5 5

Page 17: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Iterative Improvement AlgorithmsExample: n queens

Try to find the highest peaks which are optimalKeep track of only the current state and

do not look ahead beyond the immediate neighbours

Two classesHill climbing algoritms

make changes to improve the current state

Simulated annealing algoritmsAllow some bad moves to get out of a local maxima

Page 18: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Hill Climbing

Page 19: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Hill Climbing

Page 20: Optimality of A*(standard proof) Suppose suboptimal goal G 2 in the queue. Let n be an unexpanded node on a shortest path to optimal goal G. f(G 2 ) =

Simulated Annealing