Knowledge Compilation Issues for Planning Alexandre Niveau and - - PowerPoint PPT Presentation

knowledge compilation issues for planning
SMART_READER_LITE
LIVE PREVIEW

Knowledge Compilation Issues for Planning Alexandre Niveau and - - PowerPoint PPT Presentation

Knowledge Compilation Issues for Planning Alexandre Niveau and Bruno Zanuttini December 16, 2019 Niveau, Zanuttini GREYC Compilation for Planning 1/28 Planning problems Given initial state or set of possible initial states goal


slide-1
SLIDE 1

Knowledge Compilation Issues for Planning

Alexandre Niveau and Bruno Zanuttini

December 16, 2019

Niveau, Zanuttini — GREYC Compilation for Planning 1/28

slide-2
SLIDE 2

Planning problems

Given ◮ initial state or set of possible initial states ◮ goal state or set of goal states ◮ set of actions Find ◮ plan: sequence of actions from initial to goal state(s) ◮ policy: tree/DAG observations/actions from initial to goal state(s) A state is an assignment to a set X of prop. vars: S = 2X

Niveau, Zanuttini — GREYC Compilation for Planning 2/28

slide-3
SLIDE 3

Example Planning Problem

“Move ball to room A” Plan in deterministic setting: pick-ball; move-to-room-A; drop-ball; stop; Policy in nondeterministic setting: if in-room-A then sense-ball; if ball then stop; else move-to-room-B; goto (*); else (*) pick-ball; move-to-room-A; drop-ball; stop;

Niveau, Zanuttini — GREYC Compilation for Planning 3/28

slide-4
SLIDE 4

Settings

Dimensions: ◮ fully vs partially vs not observable ◮ single agent vs multiagent (joint actions/observations) ◮ deterministic vs nondeterministic vs stochastic → classical, contingent, conformant. . . This talk: ◮ simplest setting: single agent, no sensing (fully or not observable) ◮ KC view on languages for describing actions ◮ KC: queries repeatedly used with same actions while planning

Niveau, Zanuttini — GREYC Compilation for Planning 4/28

slide-5
SLIDE 5

Languages for Describing Actions Succinctness Representation of Preconditions Complexity of Queries Summary and More Questions

Niveau, Zanuttini — GREYC Compilation for Planning 5/28

slide-6
SLIDE 6

Languages for Describing Actions Succinctness Representation of Preconditions Complexity of Queries Summary and More Questions

Niveau, Zanuttini — GREYC Compilation for Planning 6/28

slide-7
SLIDE 7

Actions

Setting: ◮ nondeterministic actions ◮ no sensing (fully or not observable) Action a = ◮ transition function Ta : S → 2S pick-o: s → s[in-hand-o] or s[on-floor-o, broken-o] ◮ executability condition: Pa ⊆ 2S pick-o: requires s | = hand-empty Semantics: when a taken in s, ◮ if s / ∈ Pa: undefined (failure) ◮ else: next state s′ chosen nondeterministically in Ta(s)

Niveau, Zanuttini — GREYC Compilation for Planning 7/28

slide-8
SLIDE 8

Queries (1/2)

Given representations of Ta, Pa (fixed part) in some language A ◮ PRECOND: given s, does s ∈ Pa hold? can the current plan be extended with a? ◮ IS-SUCC: given s, s′, does s′ ∈ Ta(s) hold? is the goal reachable from s through a? ◮ ENUM-SUCC: given s, enumerate the states in Ta(s) for enqueueing states newly known to be reachable

Niveau, Zanuttini — GREYC Compilation for Planning 8/28

slide-9
SLIDE 9

Queries (2/2)

Given representations of Ta, Pa (fixed part) in some language A For a set of states B ⊆ 2S in some language B e.g., (in-room-A ∧ ¬ball) ∨ in-room-B ◮ PRECONDB: given B, does ∀s ∈ B, s ∈ Pa hold? ◮ IS-SUCCB: given B and s′, does ∃s ∈ B, s′ ∈ Ta(s) hold? ◮ PROGB: given B, compute B-repr. of Ta(B) =

s∈B Ta(s)

new belief state after taking a in B ◮ REGB: given B′, compute B-repr. of T −

a 1(B′) = {s | Ta(s) ⊆ B′}

largest belief state s.t. taking a leads to believing B KC issues wrt two languages A, B

Niveau, Zanuttini — GREYC Compilation for Planning 9/28

slide-10
SLIDE 10

PDDL: Syntax

Language for representing actions ◮ generalization of (conditional) STRIPS ◮ widely used (planning competitions) ◮ numerous extensions ◮ here abstraction of grounded (N)PDDL Action a represented as (pa, ea) with pa in NNF and ea ::= x | ¬x | ϕ ⊲ ea | (ea & ea) | (ea | ea) with x ∈ X and ϕ an NNF over X

Niveau, Zanuttini — GREYC Compilation for Planning 10/28

slide-11
SLIDE 11

PDDL: Example

Action toss-coin: ◮ pa = coin-in-hand ◮ ea = (heads | ¬heads) & (double-heads-coin ⊲ heads) &

  • (coin-in-hand)

| ((inside ⊲ coin-on-floor) & (¬inside ⊲ coin-lost))

  • Niveau, Zanuttini — GREYC

Compilation for Planning 11/28

slide-12
SLIDE 12

PDDL: Semantics

Action a represented as (pa, ea) Precondition: ◮ s ∈ Pa iff by def.: s | = pa and T(ea)(s) = ∅ Effects: ◮ s′ ∈ Ta(s) iff by def.: s ∈ Pa and s′ ∈ T(ea)(s): ◮ T(ea)(s) is as expected but. . . ◮ implicit frame axioms Implicit frame axioms: nothing changes if not explicitly ◮ action ea = (x | ¬x ∧ y) ◮ Ta(¯ x ¯ yz) = {x ¯ yz, ¯ xyz}

Niveau, Zanuttini — GREYC Compilation for Planning 12/28

slide-13
SLIDE 13

Action Theories

Action a represented as formula ϕa over X ∪ {x′ | x ∈ X}: Action play-toss, ϕa = (win′ ↔ (heads′ ∧ last-bet-heads) ∨ (¬heads′ ∧ ¬last-bet-heads)) ∧ (last-bet-heads′ ↔ last-bet-heads) Semantics: ◮ (precondition) s ∈ Pa iff by def.: ϕa ∧ s sat. ◮ (effects) s′ ∈ Ta(s) iff by def.: s · s′ | = ϕa No implicit frame axiom: ◮ action ϕa = (x′ ∨ y′) ↔ y ◮ Ta(xyz) = {x ¯ yz, x ¯ y ¯ z, ¯ xyz, ¯ xy ¯ z, xyz, xy ¯ z}

Niveau, Zanuttini — GREYC Compilation for Planning 13/28

slide-14
SLIDE 14

Why Two Languages?

PDDL: ◮ widespread in planning community ◮ widely used as input format by planners ◮ natural for specifying actions Action theories: ◮ cleaner semantics ◮ Boolean functions: leaves choice of language (OBDD, CNF. . . ) see studies by Son & Pontelli (2015) ◮ built-in nondeterminism (x′

1 ∨ x′ 2 = x3)

Niveau, Zanuttini — GREYC Compilation for Planning 14/28

slide-15
SLIDE 15

Languages for Describing Actions Succinctness Representation of Preconditions Complexity of Queries Summary and More Questions

Niveau, Zanuttini — GREYC Compilation for Planning 15/28

slide-16
SLIDE 16

Succinctness: Action Theories to PDDL

Polytime transformation P from NNF ϕa over X ∪ X ′ ¬lbh ∨ ¬heads′ ∨ win′ ⇒

  • lbh ⊲ ¬heads′ ∨ win′

& ¬lbh ⊲ (lbh | ¬lbh) & (heads | ¬heads) & (win | ¬win) ⇒        lbh ⊲

  • (¬heads & (win | ¬win) & (lbh | ¬lbh))

| (win & (heads | ¬heads) & (lbh | ¬lbh)) 2 & ¬lbh ⊲ (lbh | ¬lbh) & (heads | ¬heads) & (win | ¬win)

Niveau, Zanuttini — GREYC Compilation for Planning 16/28

slide-17
SLIDE 17

Succinctness: PDDL to Action Theories

Polytime “transformation” from PDDL (pa, ea) to NNF ϕa over X ∪ X ′ (coin-in-hand) | ((inside ⊲ coin-on-floor) & (¬inside ⊲ coin-lost)) ⇒                      (c1 ∧ coin-in-hand′) ∨(¬c1 ∧ inside → coin-on-floor′ ∧ ¬inside → coin-lost′) ∧ (coin-in-hand′ ↔ coin-in-hand) → c1 ∧ (coin-on-floor′ ↔ coin-on-floor) → ¬c1 ∧ inside ∧ (coin-lost′ ↔ coin-lost) → ¬c1 ∧ ¬inside

Niveau, Zanuttini — GREYC Compilation for Planning 17/28

slide-18
SLIDE 18

Succinctness: Open Problems

Action theories to PDDL: ◮ polytime from NNF action theory: what about non-NNF? ◮ what with restricted PDDL (e.g., no nesting of conditionals ϕ ⊲ e)? some work by Nebel (2000) PDDL to action theories: ◮ additional variables (ci): forgetting, width, OBBD reordering. . . ◮ heterogenous compilation Fargier, Marquis, Niveau (2013) ◮ can we do without additional variables? ◮ what with restricted action theories (e.g., DNNF)? Queries at least as hard on PDDL

Niveau, Zanuttini — GREYC Compilation for Planning 18/28

slide-19
SLIDE 19

Languages for Describing Actions Succinctness Representation of Preconditions Complexity of Queries Summary and More Questions

Niveau, Zanuttini — GREYC Compilation for Planning 19/28

slide-20
SLIDE 20

Representation of Preconditions

No explicit Pa: ◮ implicitly defined to be {s | Ta(s) = ∅} ◮ PRECOND is NP-complete (amounts to CD and CO on Ta) ◮ at least as succinct (Pa ∧ Ta is implicit version of (Pa, Ta)) Explicit Pa: ◮ PRECOND is polytime (amounts to MC) ◮ but Ta(s) should be = ∅ for all s ∈ Pa: coNP-complete to check ◮ may be less succinct than implicit: Pa = ∃FO(X′, Ta) Open question: can we take the best of both worlds? Related issue: deciding whether a is deterministic is coNP-complete

Niveau, Zanuttini — GREYC Compilation for Planning 20/28

slide-21
SLIDE 21

Languages for Describing Actions Succinctness Representation of Preconditions Complexity of Queries Summary and More Questions

Niveau, Zanuttini — GREYC Compilation for Planning 21/28

slide-22
SLIDE 22

Successors (1/2)

IS-SUCC: ◮ given s, s′, decide s′ ∈ Ta(s) ◮ clearly polytime on PDDL (hence on NNF action theories) ENUM-SUCC: ◮ given s, enumerate the states in Ta(s) ◮ clearly not output-polynomial for NNF (finding one is NP-complete)

Niveau, Zanuttini — GREYC Compilation for Planning 22/28

slide-23
SLIDE 23

Successors (2/2)

From given set of states B ∈ B IS-SUCCB: ◮ given B, s′, decide ∃s ∈ B : s′ ∈ Ta(s) ◮ clearly in NP using IS-SUCC to check guessed s ◮ NP-hard for NNF action theories and any reasonable B ◮ in general, amounts to CO on B ∧ Pa ∧ Ta ∧ s′ Open question: languages with polytime test? Interesting setting: compilation map wrt two languages A, B

Niveau, Zanuttini — GREYC Compilation for Planning 23/28

slide-24
SLIDE 24

Progression and Regression

PROGB: ◮ given B ∈ B, compute B-repr. of

s∈B Ta(s)

◮ in general, amounts to ∃FO(X, B ∧ Ta) (plus renaming X ′ to X) ◮ action theories with OBDDs and B = OBDD:

◮ for ∃FO, we want X to be ordered after X ′ ◮ for explicit frame axioms x′

i = xi, we want interleaving

REGB: ◮ given B′ ∈ B, compute B-repr. of {s | Ta(s) ⊆ B′} ◮ in general, amounts to ∀FO(X′, ¬Ta ∨ B′) ◮ OBDDs: same problems as regression Open questions: what languages for (iterated) polytime pro/regression?

Niveau, Zanuttini — GREYC Compilation for Planning 24/28

slide-25
SLIDE 25

Languages for Describing Actions Succinctness Representation of Preconditions Complexity of Queries Summary and More Questions

Niveau, Zanuttini — GREYC Compilation for Planning 25/28

slide-26
SLIDE 26

Summary

◮ Already planning without sensing has many interesting queries ◮ Two mainstream languages ◮ Relative succinctness not clear ◮ Most queries hard ◮ Planners work well in practice with OBDDs ◮ Can we do better? Other questions: ◮ languages: (qualitative) Dynamic Bayesian Networks, GDL. . . ◮ settings: heterogenous compilation preserving size of plans. . . Nebel (2000)

Niveau, Zanuttini — GREYC Compilation for Planning 26/28

slide-27
SLIDE 27

Planning with Sensing

Extensions of languages with observations, e.g. ◮ (observe(o), o = x ∨ y) in ∼NPDDL ◮ action theory (x ∨ y) → (o ∨ ovoid) ∧ ¬(x ∨ y) → (¬o ∧ ovoid) New queries: ◮ is o a possible observation? ◮ is s′ possible given o was observed? ◮ progress B by a and o ◮ regress B by a and o. . . New language: dynamic epistemic logic (based on “nonobservation”)

Niveau, Zanuttini — GREYC Compilation for Planning 27/28

slide-28
SLIDE 28

And Further Further Questions

Multiagent setting: ◮ how to represent joint actions/observations? ◮ related question: combinatorial actions/observations for a single agent ◮ no standardized language Stochastic setting: ◮ Markov Decision Processes (and variants) ◮ standard languages: PPDDL, Dynamic Bayesian Networks, RDDL

Niveau, Zanuttini — GREYC Compilation for Planning 28/28