CS 497: Section EA

advertisement
Decision Making Under Uncertainty
Lec #3: Planning using BDDs
UIUC CS 598: Section EA
Professor: Eyal Amir
Spring Semester 2005
Uses slides by José Luis Ambite, Son Tran, Chitta Baral and…
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://www2.cs.cmu.edu/~mmv/planning/handouts/BDDplanning.pdf by Rune Jensen http://www.itu.dk/people/rmj
Last Time
• Planning with a set of states
– When we can select a starting state in I
– When we can sense the starting state in I (do
not know it in planning time)
– When we cannot sense starting state in I
• Actions with non-deterministic effects
Partially Observable Planning
Today
• Compact representation of state-sets
using BDDs
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
I
G
Planning Algorithm (Regression)
Backward image
(regress set of states)
Remove Visited
I
G
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
OBDD example:
Variable ordering
Is important
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)= VtT (t)
Planning Algorithm (regression)
I
G
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)
Summary & Other Approaches
• Planning with no observations:
– Can be done using belief states (sets of
states)
– Belief states can be encoded as OBDDs
• Complexity? – later today
• Other approaches:
– Use OBDDs and model-checking approaches
– Approximate belief state, e.g.,
(Petrick & Bacchus ’02, ‘04)
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
Homework
1. Read readings for next time:
[Bertoli & Pistore; ICAPS 2004]
Download