186 research outputs found

    A Partial Taxonomy of Substitutability and Interchangeability

    Get PDF
    Substitutability, interchangeability and related concepts in Constraint Programming were introduced approximately twenty years ago and have given rise to considerable subsequent research. We survey this work, classify, and relate the different concepts, and indicate directions for future work, in particular with respect to making connections with research into symmetry breaking. This paper is a condensed version of a larger work in progress.Comment: 18 pages, The 10th International Workshop on Symmetry in Constraint Satisfaction Problems (SymCon'10

    Increasing symmetry breaking by preserving target symmetries and eliminating eliminated symmetries in constraint satisfaction.

    Get PDF
    在約束滿足問題中,破壞指數量級數量的所有對稱通常過於昂貴。在實踐中,我們通常只有效地破壞對稱的一個子集。我們稱之為目標對稱。在靜態對稱破壞中,我們的目標是發佈一套約束去破壞這些目標對稱,以達到減少解集以及搜索空間的效果。一個問題中的所有對稱之間是互相交織的。一個旨在特定對稱的破壞對稱約束几乎總會產生副作用,而不僅僅破壞了預期的對稱。破壞相同目標對稱的不同約束可以有不同的副作用。傳統智慧告訴我們應該選擇一個破壞更多對稱從而有更多副作用的破壞對稱約束。雖然這樣的說法在許多方面上都是有效的,我們應該更加注意副作用發生的地方。給與一個約束滿足問題,一個對稱被一個約束保留當且僅當該對稱仍然是新的約束滿足問題的對稱。這個新的約束滿足問題是有原問題加上該約束組成的。我們給出定律和例子,以表明發佈儘量保留目標對稱以及限制它的副作用發生在非目標對稱上的破壞約束是有利的。這些好處來自于被破壞的對稱數目以及一個對稱被破壞(或消除)的程度,并導致一個較小的解集和搜索空間。但是,對稱不一定會被保留。我們顯示,旨在一個已經被消除的目標對稱的破壞對稱約束仍然可以被發佈。我們建議根據問題的約束以及其他破壞對稱約束來選擇破壞對稱約束,以繼續消除更多的對稱。我們進行了廣泛的實驗來確認我們的建議的可行性與效率。Breaking the exponential number of all symmetries of a constraint satisfaction problem is often too costly. In practice, we often aim at breaking a subset of the symmetries efficiently, which we call target symmetries. In static sym-metry breaking, the goal is to post a set of constraints to break these target symmetries in order to reduce the solution set and thus also the search space. Symmetries of a problem are all intertwined. A symmetry breaking constraint intended for a particular symmetry almost always breaks more than just the intended symmetry as a side-effect. Different constraints for breaking the same target symmetry can have different side-effects. Conventional wisdom suggests that we should select a symmetry breaking constraint that has more side-effects by breaking more symmetries. While this wisdom is valid in many ways, we should be careful where the side-effects take place.A symmetry σ of a CSP P =(V, D, C) is preserved by a set of symmetry breaking constraints C{U+02E2}{U+1D47} i σ is a symmetry of P¹ =(V, D, CU C{U+02E2}{U+1D47}). We give theorems and examples to demonstrate that it is beneficial to post symmetry breaking constraints that preserve the target symmetries and restrict the side-effects to only non-target symmetries as much as possible. The benefits are in terms of the number of symmetries broken and the extent to which a symmetry is broken (or eliminated), resulting in a smaller solution set and search space. However, symmetry preservation may not always hold. We illustrate that symmetry breaking constraints, which aim at a target symmetry that is already eliminated, can still be posted. To continue eliminating more symmetries, we suggest to select symmetry breaking constraints based on problem constraints and other symmetry breaking constraints. Extensive experiments are also conducted to confirm the feasibility and efficiency of our proposal empirically.Detailed summary in vernacular field only.Detailed summary in vernacular field only.Li, Jingying.Thesis (M.Phil.)--Chinese University of Hong Kong, 2012.Includes bibliographical references (leaves 101-112).Abstracts also in Chinese.Chapter 1 --- Introduction --- p.1Chapter 1.1 --- Constraint Satisfaction Problems --- p.1Chapter 1.2 --- Motivation and Goals --- p.3Chapter 1.3 --- Outline of Thesis --- p.5Chapter 2 --- Background --- p.8Chapter 2.1 --- Constraint Satisfaction Problems --- p.8Chapter 2.1.1 --- Backtracking Search --- p.9Chapter 2.1.2 --- Consistency Techniques --- p.12Chapter 2.1.3 --- Local Consistencies with Backtracking Search --- p.15Chapter 2.2 --- Symmetry Breaking in CSPs --- p.16Chapter 2.2.1 --- Symmetry Classes --- p.18Chapter 2.2.2 --- Breaking Symmetries --- p.22Chapter 2.2.3 --- Variable and Value Symmetries --- p.23Chapter 2.2.4 --- Symmetry Breaking Constraints --- p.26Chapter 3 --- Effects of Symmetry Breaking Constraints --- p.29Chapter 3.1 --- Removing Symmetric Search Space --- p.29Chapter 3.1.1 --- Properties --- p.30Chapter 3.1.2 --- Canonical Variable Orderings --- p.31Chapter 3.1.3 --- Regenerating All Solutions --- p.33Chapter 3.1.4 --- Remaining Solution Set Sizes --- p.36Chapter 3.2 --- Constraint Interactions in Propagation --- p.43Chapter 4 --- Choices of Symmetry Breaking Constraints --- p.45Chapter 4.1 --- Side-Effects --- p.45Chapter 4.2 --- Symmetry Preservation --- p.50Chapter 4.2.1 --- De nition and Properties --- p.50Chapter 4.2.2 --- Solution Reduction --- p.54Chapter 4.2.3 --- Preservation Examples --- p.55Chapter 4.2.4 --- Preserving Order --- p.64Chapter 4.3 --- Eliminating Eliminated Symmetries --- p.65Chapter 4.3.1 --- Further Elimination --- p.65Chapter 4.3.2 --- Aggressive Elimination --- p.71Chapter 4.4 --- Interactions with Problem Constraints --- p.72Chapter 4.4.1 --- Further Simplification --- p.72Chapter 4.4.2 --- Increasing Constraint Propagation --- p.73Chapter 5 --- Experiments --- p.75Chapter 5.1 --- Symmetry Preservation --- p.75Chapter 5.1.1 --- Diagonal Latin Square Problem --- p.76Chapter 5.1.2 --- NN-Queen Problem --- p.77Chapter 5.1.3 --- Error Correcting Code - Lee Distance (ECCLD) --- p.78Chapter 5.2 --- Eliminating Eliminated Symmetries --- p.80Chapter 5.2.1 --- Equidistance Frequency Permutation Array Problem --- p.80Chapter 5.2.2 --- Cover Array Problem --- p.82Chapter 5.2.3 --- Sports League Scheduling Problem --- p.83Chapter 6 --- Related Work --- p.86Chapter 6.1 --- Symmetry Breaking Approaches --- p.86Chapter 6.2 --- Reducing Overhead and Increasing Propagation --- p.90Chapter 6.3 --- Selecting and Generating Choices --- p.91Chapter 6.3.1 --- Reducing Conflict with Search Heuristic --- p.92Chapter 6.3.2 --- Choosing the Subset of Symmetries --- p.93Chapter 6.4 --- Detecting Symmetries --- p.93Chapter 7 --- Conclusion and Remarks --- p.95Chapter 7.1 --- Conclusion --- p.95Chapter 7.2 --- Discussions --- p.97Chapter 7.3 --- Future Work --- p.99Bibliography --- p.10

    Symmetry in constraint programming

    Get PDF
    Constraint programming is an invaluable tool for solving many of the complex NP-complete problems that we need solutions to. These problems can be easily described as Constraint Satisfaction Problems (CSPs) and then passed to constraint solvers: complex pieces of software written to solve general CSPs efficiently. Many of the problems we need solutions to are real world problems: planning (e.g. vehicle routing), scheduling (e.g. job shop schedules) and timetabling problems (e.g. staff rotas) to name but a few. In the real world, we place structure on objects to make them easier to deal with. This manifests itself as symmetry. The symmetry in these real world problems make them easier to deal with for humans. However, they lead to a great deal of redundancy when using computational methods of problem solving. Thus, this thesis examines some of the many aspects of utilising the symmetry of CSPs to reduce the amount of computation needed by constraint solvers. In this thesis we look at the ease of use of previous symmetry breaking methods. We introduce a new and novel method of describing the symmetries of CSPs. We look at previous methods of symmetry breaking and show how we can drastically reduce their computation while still breaking all symmetry. We give the first detailed investigation into the behaviour of breaking only subsets of all symmetry. We look at how this affects the performance of constraint solvers before discovering the properties of a good symmetry. We then present an original method for choosing the best symmetries to use. Finally, we look at areas of redundant computation in constraint solvers that no other research has examined. New ways of dealing with this redundancy are proposed with results of an example implementation which improves efficiency by several orders of magnitude

    Model Agnostic solution of CSPs with Deep Learning

    Get PDF
    Negli ultimi anni, le tecniche di Deep Learning sono state notevolmente migliorate, permettendo di affrontare con successo numerosi problemi. Il Deep Learning ha un approccio sub-simbolico ai problemi, perciò non si rende necessario descrivere esplicitamente informazioni sulla struttura del problema per fare sì che questo possa essere affrontato con successo; l'idea è quindi di utilizzare reti neurali di Deep Learning per affrontare problemi con vincoli (CSPs), senza dover fare affidamento su conoscenza esplicita riguardo ai vincoli dei problemi. Chiamiamo questo approccio Model Agnostic; esso può rivelarsi molto utile se usato sui CSP, dal momento che è spesso difficile esprimerne tutti i dettagli: potrebbero esistere vincoli, o preferenze, che non sono menzionati esplicitamente, e che sono intuibili solamente dall'analisi di soluzioni precedenti del problema. In questi casi, un modello di Deep Learning in grado di apprendere la struttura del CSP potrebbe avere applicazioni pratiche rilevanti. In particolar modo, in questa tesi si è indagato sul fatto che una Deep Neural Network possa essere capace di risolvere il rompicapo delle 8 regine. Sono state create due diverse reti neurali, una rete Generatore e una rete Discriminatore, che hanno dovuto apprendere differenti caratteristiche del problema. La rete Generatore è stata addestrata per produrre un singolo assegnamento, in modo che questo sia globalmente consistente; la rete Discriminatore è stata invece addestrata a distinguere tra soluzioni ammissibili e non ammissibili, con l'idea che possa essere utilizzata come controllore dell'euristica. Infine, sono state combinate le due reti in un unico modello, chiamato Generative Adversarial Network (GAN), in modo che esse possano scambiarsi conoscenza riguardo al problema, con l'obiettivo di migliorare le prestazioni di entrambe

    Constraint Satisfaction Techniques for Combinatorial Problems

    Get PDF
    The last two decades have seen extraordinary advances in tools and techniques for constraint satisfaction. These advances have in turn created great interest in their industrial applications. As a result, tools and techniques are often tailored to meet the needs of industrial applications out of the box. We claim that in the case of abstract combinatorial problems in discrete mathematics, the standard tools and techniques require special considerations in order to be applied effectively. The main objective of this thesis is to help researchers in discrete mathematics weave through the landscape of constraint satisfaction techniques in order to pick the right tool for the job. We consider constraint satisfaction paradigms like satisfiability of Boolean formulas and answer set programming, and techniques like symmetry breaking. Our contributions range from theoretical results to practical issues regarding tool applications to combinatorial problems. We prove search-versus-decision complexity results for problems about backbones and backdoors of Boolean formulas. We consider applications of constraint satisfaction techniques to problems in graph arrowing (specifically in Ramsey and Folkman theory) and computational social choice. Our contributions show how applying constraint satisfaction techniques to abstract combinatorial problems poses additional challenges. We show how these challenges can be addressed. Additionally, we consider the issue of trusting the results of applying constraint satisfaction techniques to combinatorial problems by relying on verified computations

    Generalizing Consistency and other Constraint Properties to Quantified Constraints

    Full text link
    Quantified constraints and Quantified Boolean Formulae are typically much more difficult to reason with than classical constraints, because quantifier alternation makes the usual notion of solution inappropriate. As a consequence, basic properties of Constraint Satisfaction Problems (CSP), such as consistency or substitutability, are not completely understood in the quantified case. These properties are important because they are the basis of most of the reasoning methods used to solve classical (existentially quantified) constraints, and one would like to benefit from similar reasoning methods in the resolution of quantified constraints. In this paper, we show that most of the properties that are used by solvers for CSP can be generalized to quantified CSP. This requires a re-thinking of a number of basic concepts; in particular, we propose a notion of outcome that generalizes the classical notion of solution and on which all definitions are based. We propose a systematic study of the relations which hold between these properties, as well as complexity results regarding the decision of these properties. Finally, and since these problems are typically intractable, we generalize the approach used in CSP and propose weaker, easier to check notions based on locality, which allow to detect these properties incompletely but in polynomial time

    Domain value mutation and other techniques for constraint satisfaction problems

    Get PDF
    The term Constraint Satisfaction Problem (CSP) refers to a class of NP-complete problems, a collection of difficult problems for which no fast solution is known. The standard definition of a CSP involves variables, values, and constraints: each variable must be assigned a value from a designated group of possible values (also known as the variable’s domain), while a constraint on a set of variables indicates permissible combinations of values for these variables. Given a CSP, an important objective is to query whether it has a solution — an assignment of each variable to a value such that all constraints are satisfied. Solving a CSP usually requires chronological backtracking search that interleaves variable assignments with various kinds of inferences in order to reduce the search space. This dissertation comprises two parts. The first part deals with a modification of the classical CSP model that allows a value to be broken up and multiple values to be combined. The second part deals with generalized arc consistency algorithms. Both parts share a common theme in that extensional constraints --‐ the most basic expression possible for constraints --- play the central role. Despite being an important class, extensional constraints have received much less attention recently as most efforts have been channelled toward identifying new types of specialized constraints and coming up with corresponding algorithms. Regardless, improvements to algorithms for extensional constraints are more fundamental. This dissertation will attempt to improve existing techniques and algorithms for extensional constraints by examining them critically from the bottom up and approaching them from a novel direction

    A constraint solver for software engineering : finding models and cores of large relational specifications

    Get PDF
    Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2009.This electronic version was submitted by the student author. The certified thesis is available in the Institute Archives and Special Collections.Includes bibliographical references (p. 105-120).Relational logic is an attractive candidate for a software description language, because both the design and implementation of software often involve reasoning about relational structures: organizational hierarchies in the problem domain, architectural configurations in the high level design, or graphs and linked lists in low level code. Until recently, however, frameworks for solving relational constraints have had limited applicability. Designed to analyze small, hand-crafted models of software systems, current frameworks perform poorly on specifications that are large or that have partially known solutions. This thesis presents an efficient constraint solver for relational logic, with recent applications to design analysis, code checking, test-case generation, and declarative configuration. The solver provides analyses for both satisfiable and unsatisfiable specifications--a finite model finder for the former and a minimal unsatisfiable core extractor for the latter. It works by translating a relational problem to a boolean satisfiability problem; applying an off-the-shelf SAT solver to the resulting formula; and converting the SAT solver's output back to the relational domain. The idea of solving relational problems by reduction to SAT is not new. The core contributions of this work, instead, are new techniques for expanding the capacity and applicability of SAT-based engines. They include: a new interface to SAT that extends relational logic with a mechanism for specifying partial solutions; a new translation algorithm based on sparse matrices and auto-compacting circuits; a new symmetry detection technique that works in the presence of partial solutions; and a new core extraction algorithm that recycles inferences made at the boolean level to speed up core minimization at the specification level.by Emina Torlak.Ph.D
    corecore