A First Practical Algorithm for High Levels of Relational Consistency Shant Karakashian, Robert Woodward, Christopher Reeson, Berthe Y. Choueiry & Christian.

Slides:



Advertisements
Similar presentations
Non-Binary Constraint Satisfaction Toby Walsh Cork Constraint Computation Center.
Advertisements

Tree Clustering for Constraint Networks 1 Chris Reeson Advanced Constraint Processing Fall 2009 By Rina Dechter & Judea Pearl Artificial Intelligence,
Constraint Satisfaction Problems
Interchangeability in Constraint Programming Shant Karakashian, Robert J. Woodward, Berthe Y. Choueiry, Steven D. Prestwich and Eugene C. Freuder 1.
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.
Artificial Intelligence Constraint satisfaction problems Fall 2008 professor: Luigi Ceccaroni.
Constraint Optimization Presentation by Nathan Stender Chapter 13 of Constraint Processing by Rina Dechter 3/25/20131Constraint Optimization.
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
Nov Properties of Tree Convex Constraints Authors: Yuanlin Zhang & Eugene C. Freuder Presentation by Robert J. Woodward CSCE990 ACP, Fall 2009.
Then Adaptive Parameterized Consistency for Non-Binary CSPs by Counting Supports R.J.Woodward 1,2, A.Schneider 1, B.Y.Choueiry 1, and C.Bessiere 2 1 Constraint.
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,
Constraint Processing Techniques for Improving Join Computation: A Proof of Concept Anagh Lal & Berthe Y. Choueiry Constraint Systems Laboratory Department.
Anagh Lal Monday, April 14, Chapter 9 – Tree Decomposition Methods Anagh Lal CSCE Advanced Constraint Processing.
An Approximation of Generalized Arc-Consistency for Temporal CSPs Lin Xu and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
Improving Backtrack Search For Solving the TCSP Lin Xu and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science and Engineering.
CPSC 322, Lecture 13Slide 1 CSPs: Arc Consistency & Domain Splitting Computer Science cpsc322, Lecture 13 (Textbook Chpt 4.5,4.8) February, 02, 2009.
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.
Foundations of Constraint Processing Evaluation to BT Search 1 Foundations of Constraint Processing CSCE421/821, Spring
Efficient Techniques for Searching the Temporal CSP Lin Xu and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science and Engineering.
Constraint Satisfaction Problems
Foundations of Constraint Processing, Fall 2005 Sep 20, 2005BT: A Theoretical Evaluation1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables, a set of domain values for these variables,
1.A finer version of PPC. 2.Cheaper than PPC and F-W. 3.Guarantees the minimal network. 4.Automatically decomposes the graph into its bi-connected components:
M. HardojoFriday, February 14, 2003 Directional Consistency Dechter, Chapter 4 1.Section 4.4: Width vs. Local Consistency Width-1 problems: DAC Width-2.
Support: UCARE grant awarded to Chris Reeson & CAREER Award # from the National Science Foundation. To the public: –Illustrate the power of CP For.
Chapter 5 Outline Formal definition of CSP CSP Examples
Advanced Constraint Processing, Fall 2009 An Efficient Consistency Algorithm for the Temporal Constraint Satisfaction Problem Berthe Y. Choueiry & Lin.
Tractable Symmetry Breaking Using Restricted Search Trees Colva M. Roney-Dougal, Ian P. Gent, Tom Kelsey, Steve Linton Presented by: Shant Karakashian.
Slide 1 CSPs: Arc Consistency & Domain Splitting Jim Little UBC CS 322 – Search 7 October 1, 2014 Textbook §
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
Constraint Satisfaction Problem:  Used to model constrained combinatorial problems  Important real-world applications: hardware & software verification,
Because the localized R(*,m)C does not consider combinations of relations across clusters, propagation between clusters is hindered. Synthesizing a global.
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.
Chapter 2) CSP solving-An overview Overview of CSP solving techniques: problem reduction, search and solution synthesis Analyses of the characteristics.
Foundations of Constraint Processing, Fall 2004 October 3, 2004Interchangeability in CSPs1 Foundations of Constraint Processing CSCE421/821, Fall 2004:
Foundations of Constraint Processing, Spring 2009 Structure-Based Methods: An Introduction 1 Foundations of Constraint Processing CSCE421/821, Spring 2009.
Eliminating non- binary constraints Toby Walsh Cork Constraint Computation Center.
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.
Foundations of Constraint Processing Constraint Graphical Models 1Odds & Ends Foundations of Constraint Processing CSCE421/821, Fall
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.
Computer Science cpsc322, Lecture 13
Consistency Methods for Temporal Reasoning
A First Practical Algorithm for High Levels of Relational Consistency
Robert Glaubius and Berthe Y. Choueiry
Constraint Propagation
Computer Science cpsc322, Lecture 13
More on Constraint Consistency
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Evaluation of (Deterministic) BT Search Algorithms
More on Constraint Consistency
Evaluation of (Deterministic) BT Search Algorithms
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Evaluation of (Deterministic) BT Search Algorithms
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Solving Sudoku with Consistency: A Visual and Interactive Approach
Revisiting Neighborhood Inverse Consistency on Binary CSPs
A Qualitative Analysis of Search Behavior: A Visual Approach
Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition Shant Karakashian, Robert J. Woodward.
A Reactive Strategy for High-Level Consistency During Search
PrePeak+ = PrePeak + ‘How Much’
Directional consistency Chapter 4
Revisiting Neighborhood Inverse Consistency on Binary CSPs
Reformulating the Dual Graphs of CSPs
Presentation transcript:

A First Practical Algorithm for High Levels of Relational Consistency Shant Karakashian, Robert Woodward, Christopher Reeson, Berthe Y. Choueiry & Christian Bessiere Constraint Systems Laboratory, University of Nebraska-Lincoln LIRMM-CNRS, University of Montpellier Acknowledgements: Kostas Stergiou and anonymous reviewers Experiments conducted at UNL’s Holland Computing Center NSF CAREER Award # Robert Woodward supported by a UNL undergraduate research grant (UCARE) & by a B.M. Goldwater Scholarship 1

Outline Introduction Relational Consistency R(*,m)C : – Definition, Naïve algorithm, Properties Preliminaries: Dual CSP Our Approach – Algorithm – Index-Tree Data Structure – Advantages A weakened version of R(*,m)C: wR(*,m)C Experimental Evaluations Conclusions & Future Work 2

Introduction Local consistency techniques are at the heart of solving CSPs Low level consistency properties such as GAC are easy to apply & are effective for many problems There are problems that require higher levels of consistency for finding a solution in a reasonable amount of time We present a practical algorithm for enforcing relational m-wise consistency: R(*,m)C 3

Definition of R(*,m)C A CSP is R(*,m)C iff – Every tuple in a relation can be extended to the variables in the scope of any (m-1) other relations in an assignment satisfying all m relations simultaneously..… ∀ m-1 relations ∀ tuple ∀ relation 4

Naïve Algorithm for R(*,m)C R(*,m)C can be enforced on a CSP by – joining every combination of m relations and – projecting the product on the individual relations ∀ R i ∈ {R 1, …, R m }, R i  π scope(Ri) ( ⋈ j=1..m R j ) 5

Properties of R(*,m)C It does not change the structure of the constraint network R(*,m)C  RmC [Dechter & van Beek ’97] It filters the relations by removing tuples It is parameterized – We can control the level of consistency (m) 6

Preliminaries The dual graph of a CSP is a graph where – The nodes represent the relations – The edges are added between two relations with at least one common variable Connected combination of m relations is a set of relations that induce a connected component in the dual graph AB EF BC DE CFG R1R1 R3R3 R2R2 R4R4 R5R5 m = 3 7

Consider ω = {R 1,R 2,…,R m } a set of m relations P ω is the dual CSP induced by ω where – The dual variables represent the m relations – The domains are the tuples of the relations R i – The constraints in P ω are binary & enforce equality on the CSP variables shared by the two relations R 1 A B R 2 BCD The Induced Dual CSP..… m relations Dual variable Domain of a dual variable R m CDE Constraints C CD CBCB 8

Enumerate all connected combinations of m relations (φ) ∀ ω ∈ φ, define P ω and enforce R(*,m)C on P ω – ∀ τ in every R i in ω, solve P ω with τ, using BT search with forward checking, residual supports, various optimizations – If no solution exists, delete τ Revisit combinations that may be affected by deletion of τ Our Approach 9..… ∀ m-1 relations ∀ tuple ∀ relation

Enforcing R(*,m)C on the Induced Dual CSP P ω R1R1 R3R3 R5R5 For each τ in R Assign τ as a value for R Solve P ω (with τ fixed) with forward checking Extract from Q Q ω1ω1 ω2ω2 ω3ω3 AB CBCB R 1 : A BR 2 : B C R 5 : C F G C If no solution found: delete τ Define CSP P ω DE CBCB R 3 : D ER 4 : E F R 5 : C F G C Add to Q: R i ≠R’, R i ∈ ω’ and R’ ∈ ω’ 10 ω1ω1 ω2ω2 ω3ω3 R2R2 R4R4 BC EF CFG

Index-Tree Data Structure When solving P ω, for a tuple τ, – Forward checking requires identifying all tuples matching τ in the neighboring relations – We need to identify the matching tuples efficiently and without scanning the complete relations We propose a new data structure: index-tree – Given a tuple τ of R 1 and a relation R 2 – the index tree identifies all the tuples of R 2 that match τ 11..… τ τ R1R1 R2R2

Index-Tree Data Structure When solving P ω, for a tuple τ, Forward checking requires identifying all tuples matching τ in the neighboring relations We propose a new data structure: index-tree – Given a tuple τ of R 1 and a relation R 2 – Identifies all the tuples of R 2 that match τ 12 τ R1R1 R2R t1t1 t2t2 t3t3 t4t4

Example of an Index-Tree t1t1 t2t2 t3t3 t4t4 Root A B D A B D t 1 t 2 t 3 t A B X D Given the tuple for R 1 : 13 ABCDABXD R1R1 R2R2 Index-tree for R 2 and {A,B,D}

Advantages of Our Approach The memory requirement of the operation ∀ R i ∈ {R 1, …, R m }, R i = π scope(Ri) ( ⋈ j=1..m R j ) – O(t m ), t: max number of tuples in a relation – For relations with 10,000 tuples, enforcing R(*,3)C requires in the order of 1TB of memory With our approach, the memory requirement is dominated by the index-tree structures – O(kte 2 ), k: max arity of relations, e: number of relations – While slightly decreasing the time complexity 14

CF CG Some edges are redundant for m=2 Removing them reduces the number of combinations For m>2, removal of these edges weakens R(*,m)C Example – Assume that no assignment satisfies variables A, B & C simultaneously – To detect this inconsistency, need to consider R 1 R 2 R 4 simultaniously – This inconsistency is not detected because we removed the combination R 1 R 2 R 4 Weakening Relational Consistency: wR(*,m)C AD AE ABD ACEG BCF ADE CFG R1R1 R3R3 R2R2 R4R4 R5R5 A B C R 1 R 2 R 3 R 1 R 2 R 4 R 1 R 2 R 5 R 1 R 3 R 4 R 2 R 3 R 4 R 2 R 4 R 5 R 3 R 4 R 5 R 1 R 2 R 3 R 1 R 2 R 5 R 1 R 3 R 4 R 2 R 4 R 5 R 3 R 4 R 5 15

R(*,m)C versus wR(*,m)C 16 R(*,m)C is defined for m ≥ 2 m = 2 R(*,2)C ≡ wR(*,2)C [Janssen+ ‘89] m > 2 R(*,2)C  wR(*,m)C  R(*,m)C m < n R(*,m)C  R(*,n)C wR(*,m)C  wR(*,n)C A  B: A is strictly weaker than B

Experimental Results BenchmarkAlgorithm#Nodes Visited Time [sec]#Completed in 1 hour #Fastest#Backtrack Free modifiedRenaultGAC1,324, /50 Max #tuples: 48,721maxRPWC2, /50 wR(*,2)C /50 wR(*,3)C /50 wR(*,4)C /50 rand GAC30,501.71, /20 Max #tuples :78,799wR(*,2)C941.31, /20 dag-randwR(*,2)C /25 Max #tuples: 150,000wR(*,3)C /25 aim-200GAC1,876, /24 Max #tuples: 7maxRPWC842, /24 wR(*,2)C2, /24 wR(*,3)C /24 wR(*,4)C /24

Conclusions & Future Work We studied the relational consistency property R(*,m)C – Proposed a weaker variant wR(*,m)C – Presented a parameterized algorithm for enforcing it – Designed a new data structure (index tree) for efficiently checking the consistency of tuples between two relations – Evaluated it against GAC & maxRPWC Future work: – Handle relations defined as conflicts or in intension by domain filtering – Automatically identify the appropriate consistency level – Use R(*,m)C in a solver to identify tractable classes of CSPs 18

Thank You for Your Attention Questions? 19