Www.itu.dk 1 Integrating CSP Decomposition Techniques and BDDs for Compiling Configuration Problems Sathiamoorthy Subbarayan IT University of Copenhagen.

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

Non-Binary Constraint Satisfaction Toby Walsh Cork Constraint Computation Center.
Constraint Satisfaction Problems Russell and Norvig: Chapter
Representing Boolean Functions for Symbolic Model Checking Supratik Chakraborty IIT Bombay.
Order encoding x i ↔ (X ≥ i)(X = 3) = [1,1,1,0,0] Problem (hard) Problem (hard) Solution CNF Encoding Finite Domain Problem Solving Model Constraint Model.
Constraint Based Reasoning over Mutex Relations in Graphplan Algorithm Pavel Surynek Charles University, Prague Czech Republic.
Interactive Configuration
Programming with Boolean Satisfaction Michael Codish Department of Computer Science Ben Gurion University Beer-Sheva, Israel CP meets CAV Joint.
This lecture topic (two lectures) Chapter 6.1 – 6.4, except 6.3.3
1 Knowledge Compilation Properties of Tree-of-BDDs Sathiamoorthy Subbarayan AAAI-2007, Vancouver Lucas Bordeaux, Youssef Hamadi IT University.
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
An Introduction to the Model Verifier verds Wenhui Zhang September 15 th, 2010.
Iterative Deepening A* & Constraint Satisfaction Problems Lecture Module 6.
B Multi-Layer Network Design II Dr. Greg Bernstein Grotto Networking
IT University of Copenhagen Lecture 7: BDD Construction and Manipulation 1. BDD construction 2. Boolean operations on BDDs 3. BDD-Based configuration.
Techniques for Dealing with Hard Problems Backtrack: –Systematically enumerates all potential solutions by continually trying to extend a partial solution.
IBM Labs in Haifa © 2005 IBM Corporation Adaptive Application of SAT Solving Techniques Ohad Shacham and Karen Yorav Presented by Sharon Barner.
Probabilistic networks Inference and Other Problems Hans L. Bodlaender Utrecht University.
1 Don´t Care Minimization of *BMDs: Complexity and Algorithms Christoph Scholl Marc Herbstritt Bernd Becker Institute of Computer Science Albert-Ludwigs-University.
© 2011 Carnegie Mellon University Binary Decision Diagrams Part Bug Catching: Automated Program Verification and Testing Sagar Chaki September.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
Constraint Satisfaction Problems
CS460 Fall 2013 Lecture 4 Constraint Satisfaction Problems.
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
A Compressed Breadth-First Search for Satisfiability DoRon B. Motter and Igor L. Markov University of Michigan, Ann Arbor.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
Chapter 5 Outline Formal definition of CSP CSP Examples
Constraint Satisfaction Not all problems are solved by a sequential series of steps. How do we solve other types of problems?
S.P.L.O.T. - Software Product Lines Online Tools ( Marcilio Mendonca, Moises Branco, Donald Cowan, University of Waterloo, Canada.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
A university for the world real R © 2009, Chapter 18 Process Configuration Florian Gottschalk Marcello La Rosa.
Configuration and E-commerce Invited talk, IFORS July 2002, Edinburgh, Scotland Jesper Møller IT University, Denmark [
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
Identifying Reversible Functions From an ROBDD Adam MacDonald.
Binary Decision Diagrams (BDDs)
Network Aware Resource Allocation in Distributed Clouds.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
Problem (hard) Solution CNF Satisfied assignment Encoding FINITE DOMAIN PROBLEM SOLVING Model Constraint Model Direct Constraint / Bits relation lost.
1 N -Queens via Relaxation Labeling Ilana Koreh ( ) Luba Rashkovsky ( )
Coverage Criteria for Testing of Object Interactions in Sequence Diagrams Atanas (Nasko) Rountev Scott Kagan Jason Sawin Ohio State University.
Constraint Satisfaction Read Chapter 5. Model Finite set of variables: X1,…Xn Variable Xi has values in domain Di. Constraints C1…Cm. A constraint specifies.
State-Space Searches. 2 State spaces A state space consists of A (possibly infinite) set of states The start state represents the initial problem Each.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Efficient Synthesis of Feature Models Article Review By: Sigal Berkovitz & Yohai Vidergor.
Conformant Probabilistic Planning via CSPs ICAPS-2003 Nathanael Hyafil & Fahiem Bacchus University of Toronto.
Solving Problems by searching Well defined problems A probem is well defined if it is easy to automatically asses the validity (utility) of any proposed.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Top-K Generation of Integrated Schemas Based on Directed and Weighted Correspondences by Ahmed Radwan, Lucian Popa, Ioana R. Stanoi, Akmal Younis Presented.
Wolfgang Runte Slide Marwane El Kharbili Wolfgang Runte University of Osnabrueck Institute of Computer Science Software Engineering Research.
Modelling and Solving Configuration Problems on Business
Automatic Test Generation
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Inference and search for the propositional satisfiability problem
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Chain Reduction for Binary and Zero-Suppressed Decision Diagrams
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
SAT-Based Area Recovery in Technology Mapping
Analysis models and design models
An Introduction to Software Architecture
Chapter 7: Data Flow Diagram Structuring System Process Requirements
Constraint satisfaction problems
Canonical Computation without Canonical Data Structure
State-Space Searches.
State-Space Searches.
State-Space Searches.
Constraint satisfaction problems
Consistency algorithms
Presentation transcript:

1 Integrating CSP Decomposition Techniques and BDDs for Compiling Configuration Problems Sathiamoorthy Subbarayan IT University of Copenhagen Denmark CP-AI-OR 2005

2 Configuration An arrangement of parts Valid Configuration- a valid arrangement Valid according to some specified rules NP-Hard problem

3 Examples Bike Car PC Power-Backup Systems Controllers Business Software

4 Problem Representation Constraint Satisfaction Problem (CSP) A set of variables and their domains A set of rules/constraints on variable values Configuration - A legal assignment to all variables

5 Interactive Configurator Interactively guides the user Shows only valid extensions User always in a consistent state

6 Required Functionalities Propagate the user selections Display the valid choices Explain reasons for unselectable or implied options

7 Binary Decision Diagrams A compressed representation of solutions

8 Previous work Compile into a Binary Decision Diagram rules BDD generation BDD lookup offlineonline configurator Compilation NP-hard P BDD Problem! BDD size could explode

9 This work Configuration rules have hierarchies Hierarchies close to tree-shape Tree Decomposition of CSP? Space reduction? (upto 96%) Response time reduction? (upto 200x)

10 CSP to BDD compilation C1 C2 C3C4 C5 C6 C7 bdd CSP BDD

11 Tree Decomposition of CSP C1 C2 C3C4 C5 C6 C7 C1 C2 C3 C4 C5 C6 C7 C3 C6 CSP CSP’ b1b2b3 Tree-of-BDDs

12 Benefit of decomposition BDD b1b2b3 bdd Tree-of-BDDs |b1|+|b2|+|b3| < |bdd| Potential Space Reduction -Online Configurators -Embedded Configurators

13 Required Functionalities Propagate the user selections Display the valid choices Explain reasons for unselectable or implied options

14 Explanations A partial assignment by the user might cause some options unselectable /implied Explanation for such an option is the subset of the partial assignment that makes the option unselectable/implied When user assignments are given priorities, we might need minimum explanations

15 Explanations in single BDD case Variant of Shortest path problem in DAG Assigned variable (v=val) –0 for ’val’ edges –1 for other edges Other variables –0 for their edges Shortest path from root to 1-node corresponds to an explanation

16 Example Assign a=0 Assign b=1 e=1 is implied Explain e=0? 1 1 Explanation b=1 Can also handle priorities and non-Boolean variables

17 Don’t Care variables for Explain In the example, necessary variables are: a,b, and e Variables c and d are hence don’t cares for Explain Abstraction !

18 Explanations in Tree-of-BDDs b1 b2 b3 b1’b2’ b3’ Abstraction Join b’ Explain Explanation

19 Experiments Four Benchmarks –PC –Renault –Two PSR instances random interactions Comparison of: –Space usage –Average and Worst time for Responses –Average and Worst time for Explanations Tools –CLab: an existing single BDD-based tool –iCoDE: implementation of the tree-of-BDDs

20 Compilation Details Benchmark Tree (sec) Tree Nodes Compile (sec)BDD-nodesPeak BDD-nodes CLabiCoDECLabiCoDECLabiCoDE PC K40K Renault K80K psr K psr K

21 Time Comparisons Response (Propagate+Display) Benchmark Average(sec)Worst(sec) CLabiCoDECLabiCoDE PC Renault psr psr

22 Time Comparisons Explanation Benchmark Average(sec)Worst(sec) CLabiCoDECLabiCoDE PC Renault psr psr

23 Conclusion Decomposition results in –Space reduction –Shorter responses Tree-of-BDDs can scale higher than the single BDD approach Future work include: –BDD variable orderings –Multi-valued Decision Diagrams –different decomposition techniques