planning algorithms: when optimal just isn’t good enoughruml/papers/uml-2011-talk.pdf ·...

Post on 23-Mar-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 1 / 33

Planning Algorithms:When Optimal Just Isn’t Good Enough

Wheeler Ruml

Department of Computer Science

Joint work with the UNH AI Group. Funded by NSF and DARPA.

Where are the Walking Talking Robots?

Introduction

■ Robots?

■ Toddler Steps

■ An Agent

Planning as Search

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 2 / 33

Lt. Commander Data Lt. Sharon Valerii Zoe GreystoneStar Trek: TNG Battlestar Galactica Caprica

Toddler Steps

Introduction

■ Robots?

■ Toddler Steps

■ An Agent

Planning as Search

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 3 / 33

The Role of Planning

Introduction

■ Robots?

■ Toddler Steps

■ An Agent

Planning as Search

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 4 / 33

world model

planner

agent

world

actions

sensing

The Role of Planning

Introduction

■ Robots?

■ Toddler Steps

■ An Agent

Planning as Search

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 4 / 33

world model

planner

search

agent

world

actions

sensing

Planning as Heuristic Graph Search

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 5 / 33

Planning

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 6 / 33

Given:

■ current state of the world■ models of available actions

preconditions, effects, costs

■ desired state of the world (partially specified?)

Find:

■ cheapest plan

Graph Search

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 7 / 33

Given:

■ start state: an explicit node■ expand function: generates children and their costs

assume arc cost ≥ 0■ goal test: predicate on nodes

Find:

■ cheapest path to a goal node

current

next

action a b

Graph Search

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 7 / 33

Given:

■ start state: an explicit node■ expand function: generates children and their costs

assume arc cost ≥ 0■ goal test: predicate on nodes

Find:

■ cheapest path to a goal node

root

a

a

a b

b

a b

b

a

a b

b

a b

Graph Search

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 7 / 33

Given:

■ start state: an explicit node■ expand function: generates children and their costs

assume arc cost ≥ 0■ goal test: predicate on nodes

Find:

■ cheapest path to a goal node

root = 0

1

2

2 2

1

3 1

2

1

2 3

2

1 3

Example: Motion Planning

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 8 / 33

(S. LaValle)

The Problem: Exponential Growth

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 9 / 33

Ever wonder why no one draws trees more than 3 levels deep?

The Problem: Exponential Growth

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 9 / 33

Ever wonder why no one draws trees more than 3 levels deep?

number of actionsplan length

14100 > 1080

A Tale of Three Algorithms

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 10 / 33

1. Uniform Cost Search (Dijkstra, 1959)

2. A* Search (Hart, Nilsson, and Raphael, 1968)

3. Explicit Estimation Search (Thayer and Ruml, 2011)

Uniform Cost Search (Dijkstra, 1959)

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 11 / 33

Uniform Cost Search (Dijkstra, 1959)

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 11 / 33

Explore nodes in increasing order of cost-so-far (g(n)):

Uniform Cost Search (Dijkstra, 1959)

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 11 / 33

Explore nodes in increasing order of cost-so-far (g(n)):

Q← ordered list containing the initial stateLoop

If Q is empty, return failureNode ← pop cheapest node off Q

If Node is a goal, return it (or path to it)Children ← Expand(Node).Merge Children into Q, keeping sorted by g(n).

1

2

2 2

1

3 1

2

1

2 3

2

1 3

Dijkstra Behavior

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 12 / 33

Dijkstra Behavior

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 12 / 33

Dijkstra Behavior

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 12 / 33

Dijkstra: Pathfinding in Warcraft

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 13 / 33

Problem-Specific Background Knowledge

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 14 / 33

Lower Bounds on Cost-to-go

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 15 / 33

h(n) < f*(n)

Heuristic Search: A* (Hart, Nilsson, and Raphael, 1968)

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 16 / 33

Heuristic Search: A* (Hart, Nilsson, and Raphael, 1968)

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 16 / 33

Cost should include both cost-so-far and cost-to-go:

Heuristic Search: A* (Hart, Nilsson, and Raphael, 1968)

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 16 / 33

Cost should include both cost-so-far and cost-to-go:

Q← ordered list containing the initial stateLoop

If Q is empty, return failureNode ← pop cheapest node off Q

If Node is a goal, return it (or path to it)Children ← Expand(Node)Merge Children into Q, keeping sorted by f(n)

f(n) = g(n) + h(n)g(n) = cost incurred so farh(n) = lower bound on cost to goal

A* Behavior

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 17 / 33

A* Behavior

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 17 / 33

A* Behavior

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 17 / 33

Dijkstra vs A*: Pathfinding in Warcraft

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 18 / 33

Dijkstra vs A*: Pathfinding in Warcraft

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 18 / 33

Quick Note: A Lower Bound on Solution Cost

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 19 / 33

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

g(n) is actual cost-so-far, sowhen h(n) is a lower bound on cost-to-go,f(n) is a lower bound on final solution cost

lowest f(n) on frontier gives lower bound for entire problem!

bestf = argminn∈open

f(n)

Problems with A*

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 20 / 33

Problems with A*

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 20 / 33

A* takes exponential memory

Problems with A*

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 20 / 33

A* takes exponential memory

Can sometimes be fixed: see ‘iterative deepening’

Problems with A*

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 20 / 33

A* takes exponential memory

Can sometimes be fixed: see ‘iterative deepening’

A* takes exponential time

Problems with A*

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 20 / 33

A* takes exponential memory

Can sometimes be fixed: see ‘iterative deepening’

A* takes exponential time

We must trade cost for time.

A New Generation of Problem Settings

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 21 / 33

optimal: minimize solution costmust expand all with f(n) < f∗(opt)

A New Generation of Problem Settings

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 21 / 33

optimal: minimize solution costmust expand all with f(n) < f∗(opt)

greedy: minimize solving time

bounded suboptimal: minimize time subject to relative costbound (factor of optimal)

bounded cost: minimize time subject to absolute cost bound

contract: minimize cost subject to absolute time bound

utility function: maximize utility function of cost and timeeg, goal achievement time =

plan makespan + search time

A New Generation of Problem Settings

Introduction

Planning as Search

■ Planning

■ Graph Search

■ Example

■ The Problem

■ 3 Algorithms

■ Uniform Search

■ Dijkstra Behavior

■ Warcraft

■ Knowledge

■ Lower Bounds

■ Heuristic Search

■ A* Behavior

■ Dijkstra vs A*

■ Lower Bound

■ Problems with A*

■ Problem Settings

Bounded Suboptimal

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 21 / 33

optimal: minimize solution costmust expand all with f(n) < f∗(opt)

greedy: minimize solving time

bounded suboptimal: minimize time subject to relative costbound (factor of optimal)

bounded cost: minimize time subject to absolute cost bound

contract: minimize cost subject to absolute time bound

utility function: maximize utility function of cost and timeeg, goal achievement time =

plan makespan + search time

Bounded Suboptimal Search

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 22 / 33

The Intuition Behind EES (Thayer and Ruml, 2011)

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 23 / 33

■ unbiased estimates can be more informed than lower bounds■ nearest goal is the easiest to find

The Intuition Behind EES (Thayer and Ruml, 2011)

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 23 / 33

■ unbiased estimates can be more informed than lower bounds■ nearest goal is the easiest to find

Heavy Vacuum

Size302010

total ra

w cpu tim

e

400

200

admiss. h

inadmiss. h

The Intuition Behind EES (Thayer and Ruml, 2011)

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 23 / 33

■ unbiased estimates can be more informed than lower bounds■ nearest goal is the easiest to find

Heavy Vacuum

Size302010

total ra

w cpu tim

e

400

200

admiss. h

inadmiss. h

d

The Intuition Behind EES (Thayer and Ruml, 2011)

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 23 / 33

■ unbiased estimates can be more informed than lower bounds■ nearest goal is the easiest to find

Explicit Estimation Search (EES) combines these ideas

to minimize solving time subject to cost ≤ w·optimal:

pursue the nearest goal within the bound

need more information than just lower bound on cost (h(n))!

Three Heuristic Sources of Information

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 24 / 33

1. h: a lower bound on cost-to-gof(n) = g(n) + h(n)the traditional optimal A* lower bound

Three Heuristic Sources of Information

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 24 / 33

1. h: a lower bound on cost-to-gof(n) = g(n) + h(n)the traditional optimal A* lower bound

2. h: an estimate of cost-to-gounbiased estimates can be more informedf(n) = g(n) + h(n)(Thayer and Ruml, ICAPS-11)

Three Heuristic Sources of Information

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 24 / 33

1. h: a lower bound on cost-to-gof(n) = g(n) + h(n)the traditional optimal A* lower bound

2. h: an estimate of cost-to-gounbiased estimates can be more informedf(n) = g(n) + h(n)(Thayer and Ruml, ICAPS-11)

3. d: an estimate of distance-to-gonearest goal is the easiest to find(Pearl and Kim, IEEE PAMI 1982,Thayer et al, ICAPS-09)

Three Heuristic Sources of Information

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 24 / 33

1. h: a lower bound on cost-to-gof(n) = g(n) + h(n)the traditional optimal A* lower bound

2. h: an estimate of cost-to-gounbiased estimates can be more informedf(n) = g(n) + h(n)(Thayer and Ruml, ICAPS-11)

3. d: an estimate of distance-to-gonearest goal is the easiest to find(Pearl and Kim, IEEE PAMI 1982,Thayer et al, ICAPS-09)

pursue the nearest goal within the bound

Finding bestd

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 25 / 33

bestf : open node giving lower bound on cost

argminn∈open

f(n)

Finding bestd

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 25 / 33

bestf : open node giving lower bound on cost

argminn∈open

f(n)

bestf: open node giving estimated optimal cost

argminn∈open

f(n)

Finding bestd

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 25 / 33

bestf : open node giving lower bound on cost

argminn∈open

f(n)

bestf: open node giving estimated optimal cost

argminn∈open

f(n)

pursue the nearest goal within the bound

bestd: estimated w-suboptimal node with minimum d

argminn∈open∧f(n)≤w·f(best

f)

d(n)

EES Expansion Order

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 26 / 33

bestf : open node giving lower bound on costbest

f: open node giving estimated optimal cost

bestd: estimated w-suboptimal node with minimum d

node to expand next:

1. pursue the shortest solution that is within the bound2.3.

in other words:

1. bestd

2.3.

EES Expansion Order

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 26 / 33

bestf : open node giving lower bound on costbest

f: open node giving estimated optimal cost

bestd: estimated w-suboptimal node with minimum d

node to expand next:

1. pursue the shortest solution that is within the bound2.3.

in other words:

1. if f(bestd) ≤ w · f(bestf ) then best

d

2.3.

EES Expansion Order

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 26 / 33

bestf : open node giving lower bound on costbest

f: open node giving estimated optimal cost

bestd: estimated w-suboptimal node with minimum d

node to expand next:

1. pursue the shortest solution that is within the bound2. pursue the estimated optimal solution3.

in other words:

1. if f(bestd) ≤ w · f(bestf ) then best

d

2. else if f(bestf) ≤ w · f(bestf ) then best

f

3.

EES Expansion Order

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 26 / 33

bestf : open node giving lower bound on costbest

f: open node giving estimated optimal cost

bestd: estimated w-suboptimal node with minimum d

node to expand next:

1. pursue the shortest solution that is within the bound2. pursue the estimated optimal solution3. raise the lower bound on optimal solution cost

in other words:

1. if f(bestd) ≤ w · f(bestf ) then best

d

2. else if f(bestf) ≤ w · f(bestf ) then best

f

3. else bestf

see paper for further justification

EES Respects the Suboptimality Bound

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 27 / 33

how does f(n) ≤ w · f(bestf ) ensure the suboptimality bound?

EES Respects the Suboptimality Bound

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 27 / 33

how does f(n) ≤ w · f(bestf ) ensure the suboptimality bound?

f(n) ≤ f(n) f(n) is a lower bound for n

f(n) ≤ w · f(bestf ) expansion criterionw · f(bestf ) ≤ w · f∗(opt) because f(bestf ) is a lower

bound for the entire problem

f(n) ≤ w · f∗(opt) suboptimality bound

EES Performance

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 28 / 33

bounded suboptimal search:minimize time subject to

relative cost bound (factor of optimal)

EES Performance

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 28 / 33

Dock Robot

Suboptimality2.41.6

total raw cpu tim

e300

200

100

A* eps

wA*

Optimistic

Skeptical

EES

EES Opt.

EES Performance

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 28 / 33

Vacuum World

Suboptimality42

log10 total raw cpu tim

e

0.6

0

-0.6

A* eps

Optimistic

Skeptical

wA*

EES

EES Opt.

EES Performance

Introduction

Planning as Search

Bounded Suboptimal

■ Intuition

■ Three Heuristics

■ EES

■ Expansion Order

■ Bound

■ EES Performance

Conclusion

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 28 / 33

Heavy Vacuum World

Suboptimality168

log10 total raw cpu tim

e

1

0

-1

wA*

Optimistic

Skeptical

A* eps

EES

EES Opt.

Conclusion

Introduction

Planning as Search

Bounded Suboptimal

Conclusion

■ Summary

■ The AI Vision

■ Algs as Agents

■ UNH

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 29 / 33

Summary

Introduction

Planning as Search

Bounded Suboptimal

Conclusion

■ Summary

■ The AI Vision

■ Algs as Agents

■ UNH

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 30 / 33

Who’s afraid of big bad NP-hardness?

bounded suboptimal planning

■ fast solving■ control over cost

a new generation of planning algorithms

■ beyond optimal■ estimates, in addition to lower bounds■ new sources of heuristic information■ principled, provable performance

The AI Vision

Introduction

Planning as Search

Bounded Suboptimal

Conclusion

■ Summary

■ The AI Vision

■ Algs as Agents

■ UNH

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 31 / 33

world model

planner

search

agent

world

actions

sensing

Search Algorithms as Agents

Introduction

Planning as Search

Bounded Suboptimal

Conclusion

■ Summary

■ The AI Vision

■ Algs as Agents

■ UNH

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 32 / 33

model of space

meta-reasoner

open list

search algorithm

domain

expand

g, h values

children,

The University of New Hampshire

Introduction

Planning as Search

Bounded Suboptimal

Conclusion

■ Summary

■ The AI Vision

■ Algs as Agents

■ UNH

Wheeler Ruml (UNH) When Optimal Just Isn’t Good Enough – 33 / 33

tell your students to apply to grad school in CS at UNH!

■ friendly faculty■ funding■ individual attention■ beautiful campus■ low cost of living■ easy access to Boston,

White Mountains■ strong in AI, infoviz,

networking,bioinformatics

top related