planning as model checking obdds
play

Planning as model checking, (OBDDs) Jos Luis Ambite* [* Based in - PowerPoint PPT Presentation

Planning as model checking, (OBDDs) Jos Luis Ambite* [* Based in part on Paolo Traversos (http://sra.itc.it/people/traverso/) tutorial: http://prometeo.ing.unibs.it/sschool/slides/traverso/traverso-slides.ps.gz Some slides from


  1. Planning as model checking, (OBDDs) José Luis Ambite* [* Based in part on Paolo Traverso’s (http://sra.itc.it/people/traverso/) tutorial: http://prometeo.ing.unibs.it/sschool/slides/traverso/traverso-slides.ps.gz Some slides from http://www-2.cs.cmu.edu/~mmv/planning/handouts/BDDplanning.pdf ] by Rune Jensen http://www.itu.dk/people/rmj 1

  2. The Model Checking Problem Determine whether a formula is true in a model 1. A domain of interest is described by a semantic model 2. A desired property of the domain is described by a logical formula 3. Check if the domain satisfy the desired property by checking whether the formula is true in the model Motivation: Formal verification of dynamic systems 2

  3. State Space: Blocks World 3

  4. 4

  5. State-Transition Systems: Planning Domains A planning domain D is a 4-tuple <F, S, A, R>: � F is a finite set of Fluents � S ⊆ 2 F is a finite set of states � A is a finite set of actions � R ⊆ S x A x S is a transition relation Action a ∈ A is executable in s ∈ S if ∃ s’ R(s, a, s’) 5

  6. State-Transition Systems: (Deterministic) Planning Domain Example: � F = {loaded, locked} � S = {( ¬ loaded locked), ( ¬ loaded ¬ locked), (loaded ¬ locked), (loaded locked)} � A = {lock, unlock, load, unload} � R = { [( ¬ loaded locked) unlock ( ¬ loaded ¬ locked)], [( ¬ loaded ¬ locked) lock ( ¬ loaded locked)], [( ¬ loaded ¬ locked) load (loaded ¬ locked)], [(loaded ¬ locked) unload ( ¬ loaded ¬ locked)], [(loaded ¬ locked) lock (loaded locked)], [(loaded locked) unlock (loaded ¬ locked)] } 6

  7. State-Transition Systems: Planning Problem A planning problem P for a planning Domain D=<F S A R> is a 3-tuple <D, I, G>: � I ⊆ S is the set of initial states � G ⊆ S is the set of goal states G I 7

  8. State-Transition Systems: Plan � A plan π for a planning problem P=<I, G, D> in a planning domain D = <F, S, A, R> is a set of state-action pairs: � {(s, a) : s ∈ S, a ∈ A, a executable in s} � at least one (s, a) with s ∈ I � Goal achieving plan (informally): � for each state-action pairs (s, a), either a leads from s to the goal, R(s, a) ∈ G, or a leads from s to a state s’ such that (s’, a’) ∈ π and a’ leads from s’ to the goal R(s’, a’) ∈ G, and so on. π = {(2, load), (3, lock)} 8

  9. Planning Algorithm (Regression) Backward image (regress set of states) Remove Visited I 9

  10. Planning Algorithm (Regression) Backward image (regress set of states) Remove Visited I G 10

  11. Planning via Symbolic Model Checking � Problem: Realistic planning domains often have large state spaces � Idea: exploit the work on symbolic model checking based on Ordered Binary Decision Diagrams (OBDD’s) � OBDD’s: � Canonical form for propositional formulas � Efficient! � Polynomial boolean operations: O( ϕ 1 ⊗ ϕ 2 ) = O(| ϕ 1 | | ϕ 2 |) � Constant time equality 11

  12. OBDD example: Variable ordering Is important 12

  13. 13

  14. 14

  15. Planning via Model Checking Symbolic Representation � Action represented by assigning true to the corresponding variable � Transition t = <s a s’> encoded as ξ (t) = ξ (s) ^ ξ (a) ^ ξ (s’) � Transition relation T encoded as disjunction of all the transitions ξ (T)= V t ∈ T ξ (t) 15

  16. Planning Algorithm (regression) I G 16

  17. Planning Algorithm (regression) � OneStepPlan(S) in the regression algorithm is the backward image of the set of states S. � Can computed as the QBF formula: ∃ x’ (States(x’) ∧ R(x, a, x’)) � Quantified Boolean Formula (QBF): ∃ x φ (x y) = φ (0 y) ∨ φ (1 y) ∀ x φ (x y) = φ (0 y) ∧ φ (1 y) 17

  18. 18

  19. 19

  20. 20

  21. 21

  22. Planning as model checking 22

  23. Planning as Model Checking 23

  24. 24

  25. 25

  26. 26

  27. 27

  28. 28

  29. 29

  30. 30

  31. 31

  32. 32

Recommend


More recommend