Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series1 Symmetry Detection in Constraint Satisfaction Problems & its Application in Databases.

Slides:



Advertisements
Similar presentations
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
Advertisements

Constraint Optimization Presentation by Nathan Stender Chapter 13 of Constraint Processing by Rina Dechter 3/25/20131Constraint Optimization.
Foundations of Constraint Processing More on Constraint Consistency 1 Foundations of Constraint Processing CSCE421/821, Spring
Outline Interchangeability: Basics Robert Beyond simple CSPs Relating & Comparing Interchangeability Shant Compacting the Search Space – AND/OR graphs,
Foundations of Constraint Processing, Spring 2008 April 16, 2008 Tree-Structured CSPs1 Foundations of Constraint Processing CSCE421/821, Spring 2008:
A First Practical Algorithm for High Levels of Relational Consistency Shant Karakashian, Robert Woodward, Christopher Reeson, Berthe Y. Choueiry & Christian.
Foundations of Constraint Processing, Fall 2005 October 21, 2005CSPs and Relational DBs1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
Constraint Processing Techniques for Improving Join Computation: A Proof of Concept Anagh Lal & Berthe Y. Choueiry Constraint Systems Laboratory Department.
Foundations of Constraint Processing, Spring 2008 Evaluation to BT SearchApril 16, Foundations of Constraint Processing CSCE421/821, Spring 2008:
Constraint Systems Laboratory Oct 21, 2004Guddeti: MS thesis defense1 An Improved Restart Strategy for Randomized Backtrack Search Venkata P. Guddeti Constraint.
An Empirical Study of the Performance of Preprocessing and Look-ahead Techniques for Solving Finite Constraint Satisfaction Problems Zheying Jane Yang.
CS263 Lecture 19 Query Optimisation.  Motivation for Query Optimisation  Phases of Query Processing  Query Trees  RA Transformation Rules  Heuristic.
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.
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
Solvable problem Deviation from best known solution [%] Percentage of test runs ERA RDGR RGR LS Over-constrained.
Efficient Techniques for Searching the Temporal CSP Lin Xu and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science and Engineering.
Foundations of Constraint Processing, Fall 2005 Sep 20, 2005BT: A Theoretical Evaluation1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
Hierarchical Constraint Satisfaction in Spatial Database Dimitris Papadias, Panos Kalnis And Nikos Mamoulis.
A New Efficient Algorithm for Solving the Simple Temporal Problem Lin Xu & Berthe Y. Choueiry Constraint Systems Laboratory University of Nebraska-Lincoln.
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:
Cut-and-Traverse: A new Structural Decomposition Method for CSPs Yaling Zheng and Berthe Y. Choueiry Constraint Systems Laboratory Computer Science & Engineering.
Constraint Systems Laboratory March 26, 2007Reeson–Undergraduate Thesis1 Using Constraint Processing to Model, Solve, and Support Interactive Solving of.
Constraint Systems Laboratory April 21, 2005Lal: M.S. thesis defense1 Neighborhood Interchangeability (NI) for Non-Binary CSPs & Application to Databases.
Constraint Systems Laboratory 11/22/2005Zheng – Comprehensive1 Survey of Techniques for Detecting and Exploiting Symmetry in Constraint Satisfaction Problems.
Distributed Scheduling. What is Distributed Scheduling? Scheduling: –A resource allocation problem –Often very complex set of constraints –Tied directly.
Consistency Methods for Temporal Reasoning Lin XU Constraint Systems Laboratory Advisor: Dr. B.Y. Choueiry April, 2003 Supported by a grant from NASA-Nebraska,
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 2 Ryan Kinworthy CSCE Advanced Constraint Processing.
Query Processing Presented by Aung S. Win.
Constraint Satisfaction Problems
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 Systems Laboratory 10/24/2015Bayer–MS Thesis Defense1 Reformulating Constraint Satisfaction Problems with Application to Geospatial Reasoning.
Constraint Systems Laboratory Presented by: Robert J. Woodward, Amanda Swearngin 1 Berthe Y. Choueiry 2 Eugene C. Freuder 3 1 ESQuaReD Laboratory, University.
August 30, 2004STDBM 2004 at Toronto Extracting Mobility Statistics from Indexed Spatio-Temporal Datasets Yoshiharu Ishikawa Yuichi Tsukamoto Hiroyuki.
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.
Foundations of Constraint Processing, Fall 2004 October 3, 2004Interchangeability in CSPs1 Foundations of Constraint Processing CSCE421/821, Fall 2004:
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.
Chapter 5 Team Teaching AI (created by Dewi Liliana) PTIIK Constraint Satisfaction Problems.
ERA on an over-constrained problem A Constraint-Based System for Hiring & Managing Graduate Teaching Assistants Ryan Lim, Praveen Venkata Guddeti, and.
Shortcomings of Traditional Backtrack Search on Large, Tight CSPs: A Real-world Example Venkata Praveen Guddeti and Berthe Y. Choueiry The combination.
Problem Solving with Constraints CSPs and Relational DBs1 Problem Solving with Constraints CSCE496/896, Fall
Hybrid BDD and All-SAT Method for Model Checking
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
CSPs and Relational DBs
Problem Solving with Constraints
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
Constraint Satisfaction Problems & Its Application in Databases
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Evaluation of (Deterministic) BT Search Algorithms
Problem Solving with Constraints
Problem Solving with Constraints
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Reformulating the Dual Graphs of CSPs
Presentation transcript:

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series1 Symmetry Detection in Constraint Satisfaction Problems & its Application in Databases Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science & Engineering University of Nebraska-Lincoln Joint work with Amy Beckwith-Davis, Anagh Lal, and Eugene C. Freuder Supported by NSF CAREER award #

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series2 Outline Definitions –CSP –Interchangeability –Bundling Bundling in CSPs Bundling for join query computation Conclusions

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series3 Constraint Satisfaction Problem (CSP) Given P = ( V, D, C ) –V : set of variables –D : set of their domains –C : set of constraints (relations) restricting the acceptable combination of values for variables –Solution is a consistent assignment of values to variables Query: find 1 solution, all solutions, etc. Examples: SAT, scheduling, product configuration NP-Complete in general V3V3 {d} {a, b, d}{a, b, c} {c, d, e, f} V4V4 V2V2 V1V1

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series4 Solution techniques (simplified) Search –Backtrack search Constructive Complete (in theory) and sound –Iterative repair Repairs a complete but inconsistent assignment of values to variables by doing local repairs In general, neither sound nor complete Constraint propagation –Removes from the problem values (or combinations of values) that are inconsistent with the constraints –In general, efficient (polynomial time) {1,2,3,4} {1,2,3} {1,2}  

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series5 Backtrack search DFS + backtracking (linear space) –Variable being instantiated: current variable –Un-instantiated variables: future variables –Instantiated variables: past variables + Constraint propagation –Backtrack search with forward checking (FC) cefd d V1V1 V2V2 S V3V3 Solution V 1  d V 2  e V 3  a V 4  c {c,d,e,f} {a,b,d} {a,b,c} V1V1 V2V2 V3V3 V4V4 d V3V3 {d} {a, b, d}{a, b, c} { c, d, e, f } V4V4 V2V2 V1V1

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series6 Interchangeability [Freuder, 91] Captures the idea of symmetry between solutions Functional interchangeability –Any mapping between two solutions –Including permutation of values across variables, equivalent to graph isomorphism Full interchangeability (FI) –Restricted to values of a single variable –Also, likely intractable V 1   V 2  {d, e, f} V 3   V 4   In every solution V 1  d V 2  c V 3  a V 4  b V 1  d V 2  c V 3  b V 4  a V3V3 {d} {a, b, d}{a, b, c} { c, d, e, f } V4V4 V2V2 V1V1

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series7 Value interchangeability [Freuder, 91] Full Interchangeability (FI): –d, e, f interchangeable for V 2 in any solution Neighborhood Interchangeability (NI): –Considers only the neighborhood of the variable –Finds e, f but misses d –Efficiently approximates FI –Discrimination tree DT(V 2 ) {c, d, e, f } {d} {a, b, d}{a, b, c} V4V4 V2V2 V1V1 V3V3

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series8 Outline Definitions Bundling in CSPs –Static bundling –Dynamic bundling –Dynamic bundling for non-binary CSPs Bundling for join query computation Conclusions

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series9 Static bundling [Haselböck, 93] –Before search: compute & store NI sets –During search, when a variable: is a future variable: forward checking removes bundle of equivalent values is the current variable: assign a bundle of equivalent values Advantages –Reduces search space –Creates bundled solutions Bundling: using NI in search Static bundling ce, fd d V1V1 V2V2 S V3V3 {d}{d} {a, b, d}{a, b, c} { c, d, e, f } V4V4 V2V2 V1V1 V 4  {b,c} V 1  d V 2  {e,f} V 3  a V2V2 { c, d, e, f } { d, c, e, f } { c, d, e, f } V3V3 V4V4 V1V1

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series10 Dynamically identifies NI Using discrimination tree for forward checking: –is never less efficient than BT & static bundling Dynamic bundling (DynBndl) [2001] Static bundling S cd, e, f d V1V1 V2V2 Dynamic bundling ce, fd d V1V1 V2V2 S V3V3 {d} {a, b, d}{a, b, c} { c, d, e, f } V4V4 V2V2 V1V1 V 2,{d,e,f} V 2,{c}

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series11 Non-binary CSPs Constraint Variable C1C1 C2C2 C3C3 C4C4 VV1V1 V2V2 VV3V3 V2V2 V3V3 V4V4 V1V1 V4V C4C4 {1, 2, 3, 4, 5, 6} {1, 2, 3} C2C2 C1C1 C3C3 V1V1 V2V2 V3V3 V4V4 V Scope(C x ): the set of variables involved in C x Arity(C x ): size of scope Computing NI for non-binary CSPs is not a trivial extension from binary CSPs

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series12 1.Building an nb-DT for each constraint –Determines the NI sets of variable given constraint 2.Intersecting partitions from nb-DTs –Yields NI sets of V (partition of D V ) 3.Processing paths in nb-DTs –Gives, for free, updates necessary for forward checking NI for non-binary CSPs [2003,2005] C4C4 {1, 2, 3, 4, 5, 6} C2C2 C1C1 C3C3 V1V1 V2V2 V3V3 V4V4 V {1, 2} {5, 6}{3, 4} Root nb-DT(V, C 1 ) Root {1, 2} {3, 4} {6} nb-DT(V, C 2 ) {5}{1, 2}{3, 4}{6} {5}

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series13 Robust solutions Solution bundle –Cartesian product of domain bundles –Compact representation –Robust solutions Dynamic bundling finds larger bundles V 1  d V 2  e V 3  a V 4  c Single Solution V 1  d V 2  {e,f} V 3  a V 4  {b,c} Static bundling V 1  d V 2  {d,e,f} V 3  a V 4  {b,c} Dynamic bundling

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series14 DynBndl: worth the effort? Finds larger bundles Enables forward checking at no extra cost Does not cost more than BT or static bundling –Cost model: # nodes visited by search # constraint checks made −Theoretical guarantee holds for finding all solutions under same variable ordering  Finding first solution ? −Experiments uncover an unexpected benefit

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series15 Bundling of no-goods… No-good bundle {1, 2} {1, 3} {3} {3, 4} {2} {1} V V4V4 V3V3 V1V1 V2V2 Solution bundle C4C4 {1, 2, 3, 4, 5, 6} {1, 2, 3} C2C2 C1C1 C3C3 V1V1 V2V2 V3V3 V4V4 V … is particularly effective

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series16 CSP parameters: –n: number of variables {20,30} –a: domain size {10,15} –t: constraint tightness [25%, 75%] –CR: constraint ratio (arity: 2, 3, 4) –1,000 instances per tightness value Phase transition Performance measures –Nodes visited (NV) –Constraint checks (CC) –CPU time –First Bundle Size (FBS) Experimental set-up Cost of solving Mostly solvable instances Mostly un-solvable instances Critical value Order parameter

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series17 Empirical evaluations DynBndl versus FC (BT + forward checking) Randomly generated problems, Model B Experiments –Effect of varying tightness –In the phase-transition region Effect of varying domain size Effect of varying constraint ratio (CR) ANOVA to statistically compare performance of DynBndl and FC with varying t t-distribution for confidence intervals

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series18 Analysis: Varying tightness Low tightness –Large FBS 33 at t= (Dataset #13, t=0.35) –Small additional cost Phase transition –Multiple solutions present –Maximum no-good bundling causes max savings in CPU time, NV, & CC High tightness –Problems mostly unsolvable –Overhead of bundling minimal n=20 a=15 CR=CR Tightness Time [sec] #NV, hundreds t FBS NV CPU time DynBndl FC DynBndl FC

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series19 Analysis: Varying domain size Increasing a in phase- transition –FBS increases: More chances for symmetry –CPU-time improvement also increases: more bundling of no-goods CRImprov (CPU) % FBS a=10a=15a=10a=15 CR CR CR CR Increasing a (n=30) Because the benefits of DynBndl increase with increasing domain size, DynBndl is particularly interesting for database applications where large domains are typical

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series20 Outline Definitions Bundling in CSPs Bundling for join query computation –Idea –A CSP model for the query join –Sorting-based bundling algorithm –Dynamic-bundling-based join algorithm Conclusions

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series21 The join query Join query SELECT R2.A,R2.B,R2.C FROM R1,R2 WHERE R1.A=R2.A AND R1.B=R2.B AND R1.C=R2.C Result: 10 tuples in 3 nested tuples

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series22 Databases & CSPs DB terminologyCSP terminology Table, relationConstraint (relational constraint) Join conditionConstraint (join-condition constraint) AttributeCSP variable Tuple in a tableTuple in a constraint or allowed by one Computing a join sequenceFinding all solutions to a CSP Same computational problems, different cost models –Databases: minimize # I/O operations –CSP community: # CPU operations Challenges for using CSP techniques in DB –Use of lighter data structures to minimize memory usage –Fit in the iterator model of database engines

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series23 Join query as a CSP R1 x  y R2 –Most expensive operator in terms of I/O –  is “=”  equi-Join x is same as y  natural Join CSP model –Attributes of relations  CSP variables –Attribute values  variable domains –Relations  relational constraints –Join conditions  join-condition constraints SELECT R1.A,R1.B,R1.C FROM R1,R2 WHERE R1.A=R2.A AND R1.B=R2.B AND R1.C=R2.C

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series24 Join algorithms –Nested Loop –Sorting-based Two steps: sorting, merging Partitions relations by sorting, minimizes # scans of relations –Hashing-based Progressive Merge-Join –MJ: a sort-merge algorithm [Dittrich et al. 03] –Two phases 1.Sorting: sorts sub-sets of relations & 2.Merging phase: merges sorted sub-sets –PMJ produces early results –We use the framework of the PMJ

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series25 New join algorithm Sorting phase –Load sub-sets of relations in memory –Uses sorting-based bundling (shown next) Merging phase –Computes join of in-memory relations using dynamically computed bundles

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series26 Heuristic for variable ordering Place variables linked by join conditions as close to each other as possible R1.A R2.A R1.B R2.B R1.C R2.C R1 R2 Sort relations using above ordering Next: Compute bundles of variable ahead in variable ordering ( R1.A ) Sorting-based bundling

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series27 Computing a bundle of R1.A Partition Unequal partitions Symmetric partitions Bundle {1, 5} R1 A B C Partition of a constraint –Tuples of the relation having the same value of R1.A Compare projected tuples of first partition with those of another partition Compare with every other partition to get complete bundle

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series28 {1, 5, x} {1, 5, y, z} Common {1, 5} 1.Compute a bundle for the attribute 2.Check bundle validity with future constraints 3.If no common value ‘backtrack’  Assign variable with the surviving values in the bundle Finding the valid bundle

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series29 Experiments XXL library for implementation & evaluation Data sets Random: 2 relations R1, R2 with same schema as example –Each relation: 10,000 tuples –Memory size: 4,000 tuples –Page size 200 tuples Real-world problem: 3 relations, 4 attributes Compaction rate achieved –Random problem: 1.48 –Savings even with (very) preliminary implementation –Real-world problem: 2.26 (69 tuples in 32 nested tuples)

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series30 Outline Definitions Bundling in CSPs Bundling for join query computation Conclusions –Summary –Future research

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series31 Summary Dynamic bundling in finite CSPs –Binary and non-binary constraints –Produces multiple robust solutions –Significantly reduces cost of search at phase transition Application to join-query computation Constraint Processing inspires innovative solutions to fundamental difficult problems in Databases

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series32 Future research CSPs –Only scratched the surface: –interchangeability + decomposition [ECAI 96] –partial interchangeability [AAAI 98, Wilson 05] –tractable structures Databases –Investigate benefit of bundling Sampling operator Automatic categorization of query results Main-memory databases Constraint databases –Design bundling mechanisms for gap & linear constraints over intervals (spatial databases)

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series33 Thank you for your attention Time left for questions?

Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series34 Sample projects 1.Symmetry detection Search, databases 2.Graduate TA Assignment Project (GTAAP) Modeling, search, GUI 3.Temporal reasoning STP:  STP TCSP:   AC, search heuristics  4.Structural decompositions CaT: efficient approximation of the hypertree decomposition IndSet: multiple solutions, (almost) k-partite structure