Tractability by Approximating Constraint Languages

download Tractability by Approximating Constraint Languages

If you can't read please download the document

description

Tractability by Approximating Constraint Languages. Martin Green and David Cohen CP 2003 Ninth International Conference on Principles and Practice of Constraint Programming. Outline of the Talk. Background information (4 minutes) Approximating tractable languages (8 minutes) - PowerPoint PPT Presentation

Transcript of Tractability by Approximating Constraint Languages

  • Tractability by Approximating Constraint LanguagesMartin Green and David Cohen

    CP 2003Ninth International Conference onPrinciples and Practice of Constraint Programming

    Tractability by Approximating Constraint Languages

  • Outline of the TalkBackground information (4 minutes)Approximating tractable languages (8 minutes)Applications of this new theory (6 minutes)Remarks and directions for future research (2 minutes)

    Tractability by Approximating Constraint Languages

  • QuestionWhat do the following problems have in common?Stable Marriage ProblemRenamable HORNRow Convexity

    Tractability by Approximating Constraint Languages

  • AnswerWe search for and apply domain permutations (approximations) to each problem variableWe can use this technique to approximate:SMP instance ) Max-ClosedRenamable HORN ) HORN-SATPermutably Row Convex ) Row Convex and the approximations are tractable

    Tractability by Approximating Constraint Languages

  • Constraint Satisfaction Problem InstancesA Constraint Satisfaction Problem instance (CSP), P, is a triple hV,D,Ci where:V is a set of variablesD is any set, called the domain of the instanceC is a set of constraintsEach constraint c 2 C is a pair h,i where is a list of distinct variables of V and is a ||-ary relation over DA solution to P is a mapping such that Informally:We describe V as a set of questions that need to be answeredD is the set of all possible answers that can be given to these questionsA constraint in C is a rationality condition that limits the answers that may be simultaneously assigned to some groups of questionsA solution is then a satisfactory set of answers to all of the questions

    Tractability by Approximating Constraint Languages

  • Complexity of Constraint SatisfactionThe decision problem for the general constraint satisfaction problem is:Given a CSP, P, does P have a solution?For general CSPs this is NP-completeHowever, there are restrictions to the set of allowed instances that make the constraint satisfaction problem tractableIt turns out that there are many tractable subproblems of the general constraint satisfaction problem

    Tractability by Approximating Constraint Languages

  • Reasons for TractabilityStructuralActually there is just the acyclic structure and approximationsRelational or Language-basedThere are many known examples of language-based tractable subproblems (for example, max-closed)Here we give an approximation technique which, for instance, allows us to extend the maximal tractable binary max-closed languageThis is a maximal class of binary relations

    Tractability by Approximating Constraint Languages

  • Definition of Max-ClosureAn n-ary relation, , over ordered domain {1, , k} is said to be max-closed if whenever hd1,,dni, he1,,eni are in then so is their pointwise maximumhmax(d1,e1),,max(dn,en)iThe set of all max-closed relations forms a tractable constraint languageWe can display relations diagrammaticallyConsider the ordered domain {1,2} where 1
  • Approximating Tractable Languages

    Tractability by Approximating Constraint Languages

  • Permuting the DomainSuppose we have a tractable language and that P is a CSP not in CSP(), that is, some relation is not in If we can find permutations of the domain (independently) for each variable, that make P into an instance of CSP(), then we can solve the instance P using the algorithm for We first permute the domainsThen we apply the algorithm for on the permuted instanceFinally we permute the domains back again for any discovered solutionIt is this approximation technique for (tractable) constraint languages that we will discuss in the remainder of this talk

    Tractability by Approximating Constraint Languages

  • Permuting the Domain (2)We can see whether a relation can be permuted into a relation in by testing combinations of permutationsThis gives rise to a lifted relationExample:

    There are only two permutations over {1,2}{1!1,2!2} (keep) and {1!2,2!1} (swap)We can independently apply these permutations to both sides of the relationWe might obtain a max-closed relation by applying one of the permutations to each domain, e.g., swap to both sidesThe lifted relation is: {hkeep,swapi,hswap,keepi,hswap,swapi}

    Tractability by Approximating Constraint Languages

  • Approximating Tractable LanguagesLet be a constraint language, P = hV,D,Ci a CSP and G a set of permutations of DIf there exists a permutation of the domain, from G, for each variable of P, such that the permuted CSP has constraint relations all in then we say that P is G-approximately over For a given and G the problem of determining whether an instance is G-approximately over is called the approximation problem for and GFor any set of CSP instances over D, we may ask whether the approximation problem (for and G) is tractable

    Tractability by Approximating Constraint Languages

  • Approximating Tractable Languages (2)We can determine whether an approximation exists for a given instance by considering a lifted CSP with the same structure but whose domains are permutations

    Domain:{1,2}V1V2V3If I swap one sideI must also swapthe otherI must swapone side onlyI must swap atleast one side{hkeep,keepi, hswap,swapi}{hkeep,swapi, hswap,keepi}{hkeep,swapi, hswap,keepi, hswap,swapi}hkeep,keepihkeep,swapihswap,keepikeepkeepswap2221{keep,swap}A CSPThe LiftedCSPPermutedCSP

    Tractability by Approximating Constraint Languages

  • Applications of the new theory

    Tractability by Approximating Constraint Languages

  • Is Approximating Tractable?It may be hoped that tractable languages have tractable approximationsClearly approximating const-0 is not tractableIs approximating the binary max-closed language tractable?Consider all binary relations over a domain of size three (there are 512)We wish to lift them into the binary max-closed languageThe lifted language has 458 distinct relationsWe can use Polyanna to determine tractabilityThey are intractable!It is rarely tractable to approximate even tractable languagesLuckily there are useful tractable approximations

    Tractability by Approximating Constraint Languages

  • Novel Classes of Tractable CSPsTheoremLet be any constraint language over D, G be a set of two permutations of D, and R be the set of all binary relationsThen the G-approximation problem for is tractableProofAny lifted relation is binary two valuedThe approximation problem for R is 2-SAT

    Tractability by Approximating Constraint Languages

  • Novel Classes of Tractable CSPs (Example)Let D be the ordered domain {1,,k}, be the set of binary max-closed relations and G = {keep,swap}This approximation problem is tractableThis tractable class includes all binary max-closed CSPsall binary min-closed CSPs and some othersThis class is clearly hybrid

    Tractability by Approximating Constraint Languages

  • Stable Marriage ProblemWe have a set W of n women, and a set M of n men Each woman w has a preference order for all the men given by wSimilarly, each man m has a preference ordering, m, that ranks the womenWe are to form n marriages such that every pair of marriages is stable

    Tractability by Approximating Constraint Languages

  • Variables:Domain Values:We deduce Binary constraints

    Tractability by Approximating Constraint Languages

  • Stable Marriage Problem (2)It turns out that every SMP instance is approximately max-closedWe order the men (domain) according to the preference list for each womanThis completely explains the known solution algorithm

    Tractability by Approximating Constraint Languages

  • Renamable HORNA set of clauses is Renamable HORN if there is a replacement of some literals, uniformly in all clauses, with their negated versions, which makes all clauses into HORN-clausesThis approximation problem is tractable (because the lifted language is majority closed)

    Tractability by Approximating Constraint Languages

  • Row ConvexityA CSP instance is said to be Row Convex if, after some permutation of each domain, each relation is Row ConvexThis approximation problem is tractable (because the lifted language has only unary relations)

    Tractability by Approximating Constraint Languages

  • Closing Remarks

    Tractability by Approximating Constraint Languages

  • ConclusionsWe have identified a novel, hybrid, class of tractable subproblems of the general constraint satisfaction problemThe theory also gives a unifying explanation for the tractability of:the constraint approach to the Stable Marriage Problem;recognising instances of Renamable HORN;finding domain permutations for Row Convex CSP instances

    Tractability by Approximating Constraint Languages

  • Future ResearchWe want to determine whether we can tractably find the domain permutations for instances of the Stable Marriage Problem for which we do not know the preference orderingsWe wish to discover if it is tractable to identify approximately Connected Row Convex instances We hope to discover or explain other tractable classes for which the approximation problem is tractableAny Questions?

    Tractability by Approximating Constraint Languages