Planning as model checking, (OBDDs)

Slides:



Advertisements
Similar presentations
Hybrid BDD and All-SAT Method for Model Checking Orna Grumberg Joint work with Assaf Schuster and Avi Yadgar Technion – Israel Institute of Technology.
Advertisements

Auto-Generation of Test Cases for Infinite States Reactive Systems Based on Symbolic Execution and Formula Rewriting Donghuo Chen School of Computer Science.
Representing Boolean Functions for Symbolic Model Checking Supratik Chakraborty IIT Bombay.
M ODEL CHECKING -Vasvi Kakkad University of Sydney.
BDDs & Theorem Proving Binary Decision Diagrams Dr. Eng. Amr T. Abdel-Hamid NETW 703 Winter 2012 Network Protocols Lectures are based on slides by: K.
Causal-link Planning II José Luis Ambite. 2 CS 541 Causal Link Planning II Planning as Search State SpacePlan Space AlgorithmProgression, Regression POP.
Planning based on Model Checking Dept. of Information Systems and Applied CS Bamberg University Seminar Paper Svetlana Balinova.
ECE Synthesis & Verification - L271 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Model Checking basics.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Propositional and First Order Reasoning. Terminology Propositional variable: boolean variable (p) Literal: propositional variable or its negation p 
1 Complexity of domain-independent planning José Luis Ambite.
Hybrid Systems Presented by: Arnab De Anand S. An Intuitive Introduction to Hybrid Systems Discrete program with an analog environment. What does it mean?
IT University of Copenhagen Lecture 7: BDD Construction and Manipulation 1. BDD construction 2. Boolean operations on BDDs 3. BDD-Based configuration.
Efficient Reachability Analysis for Verification of Asynchronous Systems Nishant Sinha.
SYMBOLIC MODEL CHECKING: STATES AND BEYOND J.R. Burch E.M. Clarke K.L. McMillan D. L. Dill L. J. Hwang Presented by Rehana Begam.
Review of topics Final exam : -May 2nd to May 7 th - Projects due on May 7th.
Multi-agent Planning Amin Atrash. Papers Dynamic Planning for Multiple Mobile Robots –Barry L. Brummit, Anthony Stentz OBDD-based Universal Planning:
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
3/25  Monday 3/31 st 11:30AM BYENG 210 Talk by Dana Nau Planning for Interactions among Autonomous Agents.
1 2. Constraint Databases Next level of data abstraction: Constraint level – finitely represents by constraints the logical level.
Lecture 4&5: Model Checking: A quick introduction Professor Aditya Ghose Director, Decision Systems Lab School of IT and Computer Science University of.
A New Approach to Structural Analysis and Transformation of Networks Alan Mishchenko November 29, 1999.
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
IT University of Copenhagen Lecture 8: Binary Decision Diagrams 1. Classical Boolean expression representations 2. If-then-else Normal Form (INF) 3. Binary.
Binary Decision Diagrams (BDDs)
Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für.
Decision Making Under Uncertainty Lec #4: Planning and Sensing UIUC CS 598: Section EA Professor: Eyal Amir Spring Semester 2005 Uses slides by José Luis.
Daniel Kroening and Ofer Strichman 1 Decision Proceduresfoe Equality Logic 4 Range Allocation.
DECIDABILITY OF PRESBURGER ARITHMETIC USING FINITE AUTOMATA Presented by : Shubha Jain Reference : Paper by Alexandre Boudet and Hubert Comon.
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
Theory of Computation, Feodor F. Dragan, Kent State University 1 NP-Completeness P: is the set of decision problems (or languages) that are solvable in.
1 Software Model Checking Andrey Rybalchenko Max Planck Institute for Software Systems Incomplete notes summarizing the 2 nd lecture, Nov 5 th, 2007.
Algorithmic Software Verification V &VI. Binary decision diagrams.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
LDK R Logics for Data and Knowledge Representation PL of Classes.
Simultaneously Learning and Filtering Juan F. Mancilla-Caceres CS498EA - Fall 2011 Some slides from Connecting Learning and Logic, Eyal Amir 2006.
CS6133 Software Specification and Verification
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
1 First order theories (Chapter 1, Sections 1.4 – 1.5) From the slides for the book “Decision procedures” by D.Kroening and O.Strichman.
Semantics of Predicate Calculus For the propositional calculus, an interpretation was simply an assignment of truth values to the proposition letters of.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
LDK R Logics for Data and Knowledge Representation Propositional Logic Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto Giunchiglia,
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View Basic Concepts and Background.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
2009/6/30 CAV Quantifier Elimination via Functional Composition Jie-Hong Roland Jiang Dept. of Electrical Eng. / Grad. Inst. of Electronics Eng.
Complexity of Compositional Model Checking of Computation Tree Logic on Simple Structures Krishnendu Chatterjee Pallab Dasgupta P.P. Chakrabarti IWDC 2004,
How CTL model checking works
CENG 424-Logic for CS Introduction Based on the Lecture Notes of Konstantin Korovin, Valentin Goranko, Russel and Norvig, and Michael Genesereth.
Basic concepts of Model Checking
Propositional Logic (a.k.a. Sentential Logic)
Formal methods: Lecture
Hybrid BDD and All-SAT Method for Model Checking
Review for the Midterm Exam
Propositional Calculus: Boolean Algebra and Simplification
Warning I estimate 3 weeks of intensive reading for you to understand your assigned topic These are not self contained and you will need to understand.
Binary Decision Diagrams
Automatic Verification of Industrial Designs
Formal Methods in software development
Formal Methods in software development
Formal Methods in software development
Discrete Controller Synthesis
Logics for Data and Knowledge Representation
CSE 6408 Advanced Algorithms.
Graphplan/ SATPlan Chapter
CSE 589 Applied Algorithms Spring 1999
Dichotomies in CSP Karl Lieberherr inspired by the paper:
Program correctness Model-checking CTL
Real-Time Systems, COSC , Lecture 18
Presentation transcript:

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

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

State Space: Blocks World

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  2F 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’)

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)] }

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

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)}

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

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)

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)

Planning as model checking

Planning as Model Checking