classical planning chapter 10 mausam / andrey kolobov (based on slides of dan weld, marie...

36
Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Upload: rodger-burke

Post on 29-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Classical PlanningChapter 10

Mausam / Andrey Kolobov(Based on slides of Dan Weld,

Marie desJardins)

Page 2: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning• Given

– a logical description of the world states,– a logical description of a set of possible actions,– a logical description of the initial situation, and– a logical description of the goal conditions,

• Find – a sequence of actions (a plan of actions) that brings us

from the initial situation to a situation in which the goal conditions hold.

© D. Weld, D. Fox 2

Page 3: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Example: BlocksWorld

© Daniel S. Weld 3

AC

B CBA

?

Page 4: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Input: State Variables/Propositions

• (on-table a) (on-table b) (on-table c)• (clear a) (clear b) (clear c) • (arm-empty) • (holding a) (holding b) (holding c)• (on a b) (on a c) (on b a) (on b c) (on c a) (on c b)

• Typed constants: • block a, b, c

• Typed predicates:• (on-table ?b); (clear ?b) • (arm-empty); (holding ?b)• (on ?b1 ?b2)

© D. Weld, D. Fox 4

No. of state variables =16

No. of states = 216

No. of reachable states = ?

Page 5: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Input: Actions• pickup a b, pickup a c, …

• place a b, place a c, …

• pickup-table a, pickup-table b, …

• place-table a, place-table b, …

© D. Weld, D. Fox 5

• pickup ?b1 ?b2

• place ?b1 ?b2

• pickup-table ?b

• place-table ?b

Total: 6 + 6 + 3 + 3 = 18 “ground” actions

Total: 4 action schemata

Page 6: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Input: Actions (contd)• :action pickup ?b1 ?b2

:precondition(on ?b1 ?b2)(clear ?b1)(arm-empty)

:effect (holding ?b1) (not (on ?b1 ?b2))(clear ?b2)(not (arm-empty))

© D. Weld, D. Fox 6

• :action pickup-table ?b:precondition

(on-table ?b)(clear ?b)(arm-empty)

:effect (holding ?b) (not (on-table ?

b))(not (arm-

empty))

Page 7: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Input: Initial State

• (on-table a) (on-table b) • (arm-empty)• (clear c) (clear b)• (on c a)

• All other propositions false • not mentioned false

© D. Weld, D. Fox 7

AC

B

Page 8: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Input: Goal

• (on-table c) AND (on b c) AND (on a b)

• Is this a state?

• In planning a goal is a set of states

© D. Weld, D. Fox 8

CBA

Page 9: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Input Representation• Description of world states

• Description of initial state of world– Set of propositions

• Description of goal: i.e. set of worlds– E.g., Logical conjunction– Any world satisfying conjunction is a goal

• Description of available actions

© D. Weld, D. Fox 9

Page 10: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Classical Planning• Simplifying assumptions

– Atomic time– Agent is omniscient (no sensing necessary). – Agent is sole cause of change– Actions have deterministic effects

• STRIPS representation– World = set of true propositions (conjunction)– Actions:

• Precondition: (conjunction of positive literals, no functions)• Effects (conjunction of literals, no functions)

– Goal = conjunction of positive literals (e.g., Rich ^ Famous)

© D. Weld, D. Fox 10

Page 11: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning vs. General Search

© D. Weld, D. Fox 11

Basic difference: Explicit, logic-based representation

• States/Situations: descriptions of the world by logical formulae agent can explicitly reason about and communicate with the world.

• Operators/Actions: Axioms or transformation on formulae in a logical form agent can gain information about the effects of actions by inspecting the operators.

• Goal conditions as logical formulae vs. goal test (black box) agent can reflect on its goals.

Page 12: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning as Search• Forward Search in ? Space

– World State Space– start from start state; look for a state with goal property

• dfs/bfs• A*

• Backward Search in ? Space– Subgoal Space– start from goal conjunction; look for subgoal that holds in initial state

• dfs/bfs/A*

• Local Search in ? Space– Plan Space

© D. Weld, D. Fox 12

Page 13: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Forward World-Space Search

© Daniel S. Weld 13

AC

B

CBA

Initial

StateGoal

StateA

C

B

AC

B

Page 14: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Heuristics for State-Space Search• Count number of false goal propositions in current state

Admissible?NO

• Subgoal independence assumption:– Cost of solving conjunction is sum of cost of solving each

subgoal independently– Optimistic: ignores negative interactions– Pessimistic: ignores redundancy

– Admissible? No

© D. Weld, D. Fox 15

Page 15: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Heuristics for State Space Search (contd)

• Delete all preconditions from actions, solve easy relaxed problem, use length

Admissible?YES

• Delete negative effects from actions, solve easier relaxed problem, use length

Admissible?YES (if Goal has only positive literals, true in STRIPS)

CSE 573

16

Page 16: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Backward Subgoal-Space Search • Regression planning• Problem: Need to find predecessors of

state• Problem: Many possible goal states

are equally acceptable.• From which one does one search?

© D. Weld, D. Fox 17

DCBA

E

D

CBA

E

DCBA

E

* * *

AC

B

Initial State is completely defined

DE

Page 17: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Regression• Regressing a goal, G, thru an action, A

yields the weakest precondition G’– Such that: if G’ is true before A is executed– G is guaranteed to be true afterwards

© D. Weld, D. Fox 18

A Gp

recon

d

eff

ectG’

Represents a set of

world states

Represents a set of

world states

Page 18: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Regression Example

© D. Weld, D. Fox 19

• :action pickup-table ?b:precondition

(on-table ?b)(clear ?b)(arm-empty)

:effect(holding ?b) (not (on-table ?b))(not (arm-empty))

A G

pre

con

d

eff

ectG’

(and (holding C) (on A B))

(and (clear C) (on-table C) (arm-empty) (on A B))

Remove positive effectsAdd preconditions for A

AC

BA

C B

Page 19: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Complexity of Planning• Size of Search Space

– Forward: size of world state space– Backward: size of subsets of partial state space!

• Size of World state space– exponential in problem representation

• What to do?– Informative heuristic that can be computed in polynomial time!

© D. Weld, D. Fox 20

Page 20: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Graph: Basic idea• Construct a planning graph: encodes

constraints on possible plans• Use this planning graph to compute an

informative heuristic (Forward A*)• Planning graph can be built for each problem

in polynomial time

© D. Weld, D. Fox 21

Page 21: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

The Planning Graph

© D. Weld, D. Fox 22

level P0 level P1 level P2 level P3

level A1 level A2 level A3

pro

posi

tions

act

ions

pro

posi

tions

pro

posi

tions

pro

posi

tions

act

ions

act

ions

Note: a few noops missing for clarity

Page 22: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Graph Expansion

© D. Weld, D. Fox 23

Proposition level 0

initial conditions

Action level i

no-op for each proposition at level i-1

action for each operator instance whose

preconditions exist at level i-1

Proposition level i

effects of each no-op and action at level i

i-1 i i+10

Page 23: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Mutual Exclusion

© D. Weld, D. Fox 24

Two actions are mutex if• one clobbers the other’s effects or preconditions• they have mutex preconditions

Two proposition are mutex if•one is the negation of the other •all ways of achieving them are mutex

p

p

p

p

p

p

Page 24: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Observation 1

© D. Weld, D. Fox 28

Propositions monotonically increase(always carried forward by no-ops)

p

¬q

¬r

p

q

¬q

¬r

p

q

¬q

r

¬r

p

q

¬q

r

¬r

A A

B

A

B

Page 25: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Observation 2

© D. Weld, D. Fox 29

Actions monotonically increase

p

¬q

¬r

p

q

¬q

¬r

p

q

¬q

r

¬r

p

q

¬q

r

¬r

A A

B

A

B

Page 26: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Observation 3

© D. Weld, D. Fox 30

Proposition mutex relationships monotonically decrease

p

q

r

A

p

q

r

p

q

r

Page 27: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Observation 4

© D. Weld, D. Fox 31

Action mutex relationships monotonically decrease

p

q

…B

p

q

r

s

p

q

r

s

A

C

B

C

A

p

q

r

s

B

C

A

Page 28: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Observation 5

Planning Graph ‘levels off’. • After some time k all levels are identical• Because it’s a finite space, the set of literals

never decreases and mutexes don’t reappear.

© D. Weld, D. Fox 32

Page 29: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Properties of Planning Graph

• If goal is absent from last level– Goal cannot be achieved!

• If there exists a path to goal– Goal is present in the last level

• If goal is present in last level– There may not exist any path still

© D. Weld, D. Fox 33

Page 30: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Heuristics based on Planning Graph• Construct planning graph starting from s• h(s) = level at which goal appears non-mutex

– Admissible?– YES

• Relaxed Planning Graph Heuristic– Remove negative preconditions build plan. graph– Use heuristic as above– Admissible? YES– More informative? NO– Speed: FASTER

© D. Weld, D. Fox 34

Page 31: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

FF

• Topmost classical planner until 2009

• State space local search – Guided by relaxed planning graph– Full bfs to escape plateaus – enforced hill climbing– A few other bells and whistles…

© Mausam 35

Page 32: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

SATPlan: Planning as SAT

• Formulate the planning problem as a CSP• Assume that the plan has k actions• Create a binary variable for each possible action a:

– Action(a,i) (TRUE if action a is used at step i)

• Create variables for each proposition that can hold at different points in time:– Proposition(p,i) (TRUE if proposition p holds at step i)

36

Page 33: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Constraints• XOR: Only one action can be executed at each time step• At least one action must be executed at each time step• Constraints describing effects of actions

– Action(a,i) prec(a,i-1); Action(a,i) eff(a,i)

• Maintain action: if an action does not change a prop p, then maintain action for proposition p is true– Action(maint_p,i) Action(a1,i) v Action(a2,i)… [for all ai that

don’t effect p]

• A proposition is true at step i only if some action (possibly a maintain action) made it true

• Constraints for initial state and goal state© Mausam 37

Page 34: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Application: Mars Rover

© Mausam38

Page 35: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Application: Network Security Analysis

© Mausam39

Page 36: Classical Planning Chapter 10 Mausam / Andrey Kolobov (Based on slides of Dan Weld, Marie desJardins)

Planning Summary Problem solving algorithms that operate on explicit

propositional representations of states and actions. Make use of specific heuristics. STRIPS: restrictive propositional language State-space search: forward (progression) / backward

(regression) search Local search FF; using compilation into SAT

Partial order planners search space of plans from goal to start, adding actions to achieve goals (did not cover)

© D. Weld, D. Fox 40