December 9, 2005 ISI AI Seminar Series 1 Constraint Systems Laboratory 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 #0133568
34
Embed
Constraint Systems Laboratory December 9, 2005ISI AI Seminar Series1 Symmetry Detection in Constraint Satisfaction Problems & its Application in Databases.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
December 9, 2005 ISI AI Seminar Series 1
Constraint Systems Laboratory
Symmetry Detection in Constraint Satisfaction Problems
& its Application in Databases
Berthe Y. ChoueiryConstraint Systems Laboratory
Department of Computer Science & EngineeringUniversity of Nebraska-Lincoln
Joint work with Amy Beckwith-Davis, Anagh Lal, and Eugene C. Freuder
Supported by NSF CAREER award #0133568
December 9, 2005 ISI AI Seminar Series 2
Constraint Systems Laboratory
Outline
• Definitions– CSP– Interchangeability– Bundling
• Bundling in CSPs
• Bundling for join query computation
• Conclusions
December 9, 2005 ISI AI Seminar Series 3
Constraint Systems Laboratory
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
V3
{d}
{a, b, d} {a, b, c}
{c, d, e, f}
V4
V2V1
December 9, 2005 ISI AI Seminar Series 4
Constraint Systems Laboratory
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}
December 9, 2005 ISI AI Seminar Series 5
Constraint Systems Laboratory
Backtrack search
• DFS + backtracking (linear space) – Variable being instantiated: current variable– Un-instantiated variables: future variables– Instantiated variables: past variables
• 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
V1 V2 {d, e, f}
V3 V4
In every solutionV1 dV2 c
V3 aV4 b
V1 dV2 c
V3 bV4 a
V3
{d}
{a, b, d} {a, b, c}
{ c, d, e, f }
V4
V2V1
December 9, 2005 ISI AI Seminar Series 7
Constraint Systems Laboratory
Value interchangeability [Freuder, 91]
• Full Interchangeability (FI): – d, e, f interchangeable for V2 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(V2)
{c, d, e, f }{d}
{a, b, d} {a, b, c} V4
V2V1
V3
December 9, 2005 ISI AI Seminar Series 8
Constraint Systems Laboratory
Outline
• Definitions
• Bundling in CSPs– Static bundling– Dynamic bundling– Dynamic bundling for non-binary CSPs
• Bundling for join query computation
• Conclusions
December 9, 2005 ISI AI Seminar Series 9
Constraint Systems Laboratory
• 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
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
CR Improv (CPU) %
FBS
a=10 a=15 a=10 a=15
CR1 33.3 34.3 5.5 11.9
CR2 28.6 33.0 5.0 5.5
CR3 29.8 31.7 3.6 5.0
CR4 28.4 31.6 1.2 1.4
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
December 9, 2005 ISI AI Seminar Series 20
Constraint Systems Laboratory
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