A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables {A,B,C,…}, a set of domain values for these variables,

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

University of Toronto Mechanical & Industrial Engineering An Introduction to Constraint Programming J. Christopher Beck Dept. of Mechanical & Industrial.
Constraint Satisfaction Problems
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
This lecture topic (two lectures) Chapter 6.1 – 6.4, except 6.3.3
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
ICS-271:Notes 5: 1 Lecture 5: Constraint Satisfaction Problems ICS 271 Fall 2008.
MBD and CSP Meir Kalech Partially based on slides of Jia You and Brian Williams.
Optimal Rectangle Packing: A Meta-CSP Approach Chris Reeson Advanced Constraint Processing Fall 2009 By Michael D. Moffitt and Martha E. Pollack, AAAI.
Foundations of Constraint Processing More on Constraint Consistency 1 Foundations of Constraint Processing CSCE421/821, Spring
Review: Constraint Satisfaction Problems How is a CSP defined? How do we solve CSPs?
A First Practical Algorithm for High Levels of Relational Consistency Shant Karakashian, Robert Woodward, Christopher Reeson, Berthe Y. Choueiry & Christian.
Introduction Combining two frameworks
Anagh Lal Monday, April 14, Chapter 9 – Tree Decomposition Methods Anagh Lal CSCE Advanced Constraint Processing.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables, a set of domain values for these variables,
 i may require adding new constraints, except for… o i =1  domain filtering o i =   constraint filtering Robert Woodward & Berthe Y. Choueiry Constraint.
Constraint Satisfaction Problems
A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables, a set of domain values for these variables,
Jean-Charles REGIN Michel RUEHER ILOG Sophia Antipolis Université de Nice – Sophia Antipolis A global constraint combining.
M. HardojoFriday, February 14, 2003 Directional Consistency Dechter, Chapter 4 1.Section 4.4: Width vs. Local Consistency Width-1 problems: DAC Width-2.
Developing a Deterministic Patrolling Strategy for Security Agents Nicola Basilico, Nicola Gatti, Francesco Amigoni.
Constraint Systems Laboratory March 26, 2007Reeson–Undergraduate Thesis1 Using Constraint Processing to Model, Solve, and Support Interactive Solving of.
A game of logic where the player must assign the numbers 1..9 to cells on a 9x9 grid. The placement of the numbers must be such that every number must.
General search strategies: Look-ahead Chapter 5 Chapter 5.
Chapter 5 Outline Formal definition of CSP CSP Examples
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 2 Ryan Kinworthy CSCE Advanced Constraint Processing.
Slide 1 CSPs: Arc Consistency & Domain Splitting Jim Little UBC CS 322 – Search 7 October 1, 2014 Textbook §
Constraint Satisfaction Problem:  Used to model constrained combinatorial problems  Important real-world applications: hardware & software verification,
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
Because the localized R(*,m)C does not consider combinations of relations across clusters, propagation between clusters is hindered. Synthesizing a global.
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.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Hande ÇAKIN IES 503 TERM PROJECT CONSTRAINT SATISFACTION PROBLEMS.
CP Summer School Modelling for Constraint Programming Barbara Smith 4. Combining Viewpoints, Modelling Advice.
Chapter 5 Constraint Satisfaction Problems
Constraint Systems Laboratory R.J. Woodward 1, S. Karakashian 1, B.Y. Choueiry 1 & C. Bessiere 2 1 Constraint Systems Laboratory, University of Nebraska-Lincoln.
Arc Consistency CPSC 322 – CSP 3 Textbook § 4.5 February 2, 2011.
Robust Planning using Constraint Satisfaction Techniques Daniel Buettner and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
Foundations of Constraint Processing, Spring 2009 Structure-Based Methods: An Introduction 1 Foundations of Constraint Processing CSCE421/821, Spring 2009.
Arc Consistency and Domain Splitting in CSPs CPSC 322 – CSP 3 Textbook Poole and Mackworth: § 4.5 and 4.6 Lecturer: Alan Mackworth October 3, 2012.
Constraint Systems Laboratory Robert J. Woodward Joint work with Shant Karakashian, Daniel Geschwender, Christopher Reeson, and Berthe Y. UNL.
Constraint Systems Laboratory Robert J. Woodward Constraint Systems Laboratory Department of Computer Science & Engineering University of Nebraska-Lincoln.
853 instances from the 2008 CP Solver Competition. Real full lookahead cl+proj-wR(*,m)C, which enforces R(*, m)C on each cluster, adds projection of constraints.
Constraint Satisfaction Problems/Programming ZUI 2012/2013.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Computer Science cpsc322, Lecture 13
Structure-Based Methods Foundations of Constraint Processing
Consistency Methods for Temporal Reasoning
A First Practical Algorithm for High Levels of Relational Consistency
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
An Empirical Study of the Performance
Empirical Comparison of Preprocessing and Lookahead Techniques for Binary Constraint Satisfaction Problems Zheying Jane Yang & Berthe Y. Choueiry Constraint.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Structure-Based Methods Foundations of Constraint Processing
More on Constraint Consistency
Structure-Based Methods Foundations of Constraint Processing
Structure-Based Methods Foundations of Constraint Processing
Evaluation of (Deterministic) BT Search Algorithms
More on Constraint Consistency
Chapter 5: General search strategies: Look-ahead
Evaluation of (Deterministic) BT Search Algorithms
Evaluation of (Deterministic) BT Search Algorithms
Revisiting Neighborhood Inverse Consistency on Binary CSPs
Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition Shant Karakashian, Robert J. Woodward.
Structure-Based Methods Foundations of Constraint Processing
Revisiting Neighborhood Inverse Consistency on Binary CSPs
Reformulating the Dual Graphs of CSPs
Structure-Based Methods Foundations of Constraint Processing
Consistency algorithms
Presentation transcript:

A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables {A,B,C,…}, a set of domain values for these variables, and a set of constraints {R 1,R 2,R 3,…} restricting the allowable combinations of values for variables. 1.The property Relational Neighborhood Inverse Consistency (RNIC) 2.Characterization of RNIC in relation to previously known properties 3.An efficient algorithm for enforcing RNIC, bounded by degree of the dual graph 4.Three reformulations of the dual graph to address topological limitations of the dual graph 5.An adaptive, automatic selection policy for choosing the appropriate dual graph 6.Empirical evidence on difficult CSP benchmarks Contributions Local Consistency Definition R(*,m) ensures that, in every given combination φ of m relations, every tuple τ i in every relation R i can be extended to a tuple τ j in every relation R j  φ\ {R i } such that all those tuples form a consistent solution to the relations in φ [3]. Neighborhood Inverse Consistency (NIC) ensures that every value in the domain of a variable can be extended to a solution in the subproblem induced by the variable and its neighborhood [1]. 0,1,2 A B C D Local consistency is at the heart of Constraint Processing. It guarantees that all values (or tuples) participate in at least one solution in a given combination of variables (or constraints). R3R3 A B C D E F R1R1 R4R4 R2R2 R5R5 R6R6 Hypergraph R4R4 BCD ABDE CF EFAB R3R3 R1R1 R2R2 C F E BD AB D AD A B R5R5 R6R6 Dual Graph The task is to find a solution (i.e., an assignment of a value to each variable satisfying all constraints), or to find all such solutions. Relational Neighborhood Inverse Consistency (RNIC) ensures that every tuple τ i in every relation R i can be extended to a tuple τ j in each R j  Neigh (R i ) such that together all those tuples are consistent with all the relations in Neigh (R i ) [4]. Number of subproblems=number of constraints=e Size of subproblems varies, |Neigh( R i )|+1 Six induced subproblems Neigh(R 1 ) = {R 2,R 3 } Neigh(R 2 ) = {R 1,R 4 } Neigh(R 3 ) = {R 1,R 4,R 5,R 6 } Neigh(R 4 ) = {R 2,R 3,R 5,R 6 } Neigh(R 5 ) = {R 3,R 4,R 6 } Neigh(R 6 ) = {R 3, R 4,R 5 } Number of combinations = O (e m ) = e Size of each combination = m Twelve combinations for R(*,3)C 1.{R 1,R 2,R 3 } 2.{R 1,R 2,R 4 } 3.{R 1,R 3,R 4 } 4.{R 1,R 3,R 5 } 5.{R 1,R 3,R 6 } 6.{R 2,R 3,R 4 } 7.{R 2,R 4,R 5 } 8.{R 2,R 4,R 6 } 9.{R 3,R 4,R 5 } 10.{R 3,R 4,R 6 } 11.{R 3,R 5,R 6 } 12.{R 4,R 5,R 6 } August 10 th, 2011 R4R4 R3R3 R1R1 R2R2 R5R5 R6R6 R4R4 R3R3 R1R1 R2R2 R5R5 R6R6

A queue Q of relations to update For each relation R, a queue of tuples Q t (R) whose supports must be verified Algorithm iterates over every R in Q and applies S EARCH S UPPORT to every τ in Q t (R) S EARCH S UPPORT runs over Neigh(R) Algorithm for Enforcing RNIC Index-Tree to quickly check the consistency of two tuples [3]. R4R4 R3R3 R1R1 R2R2 R5R5 R6R6 August 10 th, 2011 Characterizing RNIC GAC R(*,2)C+DF SGAC RNIC+DF R(*,3)C wRNIC R(*,4)C RNICR(*,δ+1)C R(*,2)C≡ wR(*,2)C wR(*,3)C wR(*,4)C wR(*,δ+1)C At the Relations LevelAt the Domains Level Dynamically detect dangles, applying directional arc consistency to quickly detect inconsistency. R 2,R 3 are dangles in the subproblem for R 1, induced by Neigh(R 1 ) ∪ {R 1 } d = maximum domain size k = maximum constraint arity e = number of relations δ = degree of the dual graph t = maximum number of tuples Time: O ( t δ +1 e δ ) Delete at most O ( te ) tuples, enqueuing O ( δ ) relations For each tuple, S EARCH S UPPORT executes search on a problem with δ variables of domain size t Space: O ( ket δ ) Storing O ( et δ ) supports, O ( ket δ ) Index-Trees ABXD 0101 ABCDABXD R2R2 R1R1 Given R 1 ’s tuple: τ1τ1 τ2τ2 τ3τ3 τ4τ4 Root A B D Index-Tree(R 2,{A,B,D}) ABD τ1τ1 001 τ2τ2 011 τ3τ3 011 τ4τ4 111 find its support in R 2 Propagation Algorithm Implementation Complexity S EARCH S UPPORT..… Neigh( R ) R τ τiτi

Reformulating the Dual Graph Removing Redundant Edges [2] Dense dual graphs  Neighborhoods are large  Cost of our algorithm increases Redundancy removal reduces cost Triangulating the Dual Graph In cycles of length ≥ 4, propagation is poor, RNIC  R(*,3)C Triangulation boosts propagation Triangulating a minimal dual graph The two operations do not ‘clash’ The solution set of the CSP is the same in all three reformulations In total, four types of dual graphs Selection Strategy If Density ≥ 15%, remove redundant edges If triangulation increases density no more than two fold, triangulate Each operation is executed at most once wRNIC RNIC wtriRNIC triRNIC August 10 th, 2011 d Go = 60%d Gw = 40% R4R4 BCD ABDE CF EFAB R3R3 R1R1 R2R2 C F E BD AB D AD A B R5R5 R6R6 R4R4 BCD ABDE CF EFAB R3R3 R1R1 R2R2 C F E BD AB AD R5R5 R6R6 AlgorithmCPU#FRankEquivCPU#CEquivCmp#BT-free 169 instances: aim-100, aim-200, lexVg, modifiedRenault, ssa wR(*,2)C A138B79 wR(*,3)C B134B92 wR(*,4)C B132B108 GAC C119C33 RNIC C100C66 triRNIC C84C80 wRNIC B131B84 wtriRNIC B144B129 selRNIC A159A142 CPU: Censored data calculated mean #F: Number of instances fastest Rank: Censored data rank based on probability of survival data analysis EquivCPU: Equivalence classes by CPU #C: Number of instances completed EquivCmp: Equivalence classes by completion #BT-free: Number of instances solved BT-free. Reflects strength of a given consistency, regardless of implementation Empirical Results No YesNoYes No d Go ≥ 15% d Gtri ≤ 2d Go d Gwtri ≤ 2d Gw GoGo G wtri GwGw G tri Start R(*,3)C wRNIC R(*,4)C RNIC R(*,δ+1)C R(*,2)C≡ wR(*,2)C wR(*,3)C wR(*,4)C wR(*,δ+1)C wtriRNIC triRNIC d Gtri = 67% R4R4 BCD ABDE CF EFAB R3R3 R1R1 R2R2 C F E BD AB D AD A B R5R5 R6R6 d Gtri = 47% R4R4 BCD ABDE CF EFAB R3R3 R1R1 R2R2 C F E BD AD R5R5 R6R6 Statistical analysis on benchmark problems. Max of 90 minutes per instance, yielding censored data (data with values missing). Consistency properties used as full lookahead.