15 research outputs found

    Some Enhancement Methods For Backtracking-Search In Solving Multiple Permutation Problems

    Full text link
    In this dissertation, we present some enhancement methods for backtracking-search in solving multiple permutation problems. Some well-known NP-complete multiple permutation problems are Quasigroup Completion Problem and Sudoku. Multiple permutation problems have been getting a lot of attention in the literature in the recent years due to having a highly structured nature and being a challenging combinatorial search problem. Furthermore, it has been shown that many real-world problems in scheduling and experimental design take the form of multiple permutation problems. Therefore, it has been suggested that they can be used as a benchmark problem to test various enhancement methods for solving constraint satisfaction problems. Then it is hoped that the insight gained from studying them can be applied to other hard structured as well as unstructured problems. Our supplementary and novel enhancement methods for backtracking-search in solving these multiple permutation problems can be summarized as follows: We came up with a novel way to encode multiple permutation problems and then we designed and developed an arc-consistency algorithm that is tailored towards this modeling. We implemented five versions of this arc-consistency algorithm where the last version eliminates almost all of the possible propagation redundancy. Then we introduced the novel notion of interlinking dynamic variable ordering with dynamic value ordering, where the dynamic value ordering is also used as a second tie-breaker for the dynamic variable ordering. We also proposed the concept of integrating dynamic variable ordering and dynamic value ordering into an arc-consistency algorithm by using greedy counting assertions. We developed the concept of enforcing local-consistency between variables from different redundant models of the problem. Finally, we introduced an embarrassingly parallel task distribution process at the beginning of the search. We theoretically proved that the limited form of the Hall\u27s theorem is enforced by our modeling of the multiple permutation problems. We showed with our empirical results that the ``fail-first principle is confirmed in terms of minimizing the total number of explored nodes, but is refuted in terms of minimizing the depth of the search tree when finding a single solution, which correlates with previously published results. We further showed that the performance (total number instances solved at the phase transition point within a given time limit) of a given search heuristic is closely related to the underlying pruning algorithm that is being employed to maintain some level of local-consistency during backtracking-search. We also extended the previously established hypothesis, which stated that the second peak of hardness for NP-complete problems is algorithm dependent, to second peak of hardness for NP-complete problems is also search-heuristic dependent. Then we showed with our empirical results that several of our enhancement methods on backtracking-search perform better than the constraint solvers MAC-LAH and Minion as well as the SAT solvers Satz and MiniSat for previously tested instances of multiple permutation problems on these solvers

    Towards hybrid methods for solving hard combinatorial optimization problems

    Full text link
    Tesis doctoral leída en la Escuela Politécnica Superior de la Universidad Autónoma de Madrid el 4 de septiembre de 200

    Proceedings of the 2022 XCSP3 Competition

    Full text link
    This document represents the proceedings of the 2022 XCSP3 Competition. The results of this competition of constraint solvers were presented at FLOC (Federated Logic Conference) 2022 Olympic Games, held in Haifa, Israel from 31th July 2022 to 7th August, 2022.Comment: arXiv admin note: text overlap with arXiv:1901.0183

    Towards 40 years of constraint reasoning

    Get PDF
    Research on constraints started in the early 1970s. We are approaching 40 years since the beginning of this successful field, and it is an opportunity to revise what has been reached. This paper is a personal view of the accomplishments in this field. We summarize the main achievements along three dimensions: constraint solving, modelling and programming. We devote special attention to constraint solving, covering popular topics such as search, inference (especially arc consistency), combination of search and inference, symmetry exploitation, global constraints and extensions to the classical model. For space reasons, several topics have been deliberately omitted.Partially supported by the Spanish project TIN2009-13591-C02-02 and Generalitat de Catalunya grant 2009-SGR-1434.Peer Reviewe

    PYCSP3: Modeling Combinatorial Constrained Problems in Python

    Full text link
    In this document, we introduce PYCSP33, a Python library that allows us to write models of combinatorial constrained problems in a simple and declarative way. Currently, with PyCSP33, you can write models of constraint satisfaction and optimization problems. More specifically, you can build CSP (Constraint Satisfaction Problem) and COP (Constraint Optimization Problem) models. Importantly, there is a complete separation between modeling and solving phases: you write a model, you compile it (while providing some data) in order to generate an XCSP3 instance (file), and you solve that problem instance by means of a constraint solver. In this document, you will find all that you need to know about PYCSP33, with more than 40 illustrative models

    Realizations of common channeling constraints in constraint satisfaction: theory and algorithms.

    Get PDF
    Lam Yee Gordon.Thesis (M.Phil.)--Chinese University of Hong Kong, 2006.Includes bibliographical references (leaves 109-117).Abstracts in English and Chinese.Chapter 1 --- Introduction --- p.1Chapter 1.1 --- Constraint Satisfaction Problems --- p.1Chapter 1.2 --- Motivations and Goals --- p.2Chapter 1.3 --- Outline of the Thesis --- p.4Chapter 2 --- Background --- p.5Chapter 2.1 --- CSP --- p.5Chapter 2.2 --- Classes of Variable --- p.6Chapter 2.3 --- Solution of a CSP --- p.7Chapter 2.4 --- Constraint Solving Techniques --- p.8Chapter 2.4.1 --- Local Consistencies --- p.8Chapter 2.4.2 --- Constraint Tightness --- p.10Chapter 2.4.3 --- Tree Search --- p.10Chapter 2.5 --- Graph --- p.14Chapter 3 --- Common Channeling Constraints --- p.16Chapter 3.1 --- Models --- p.16Chapter 3.2 --- Channeling Constraints --- p.17Chapter 3.2.1 --- Int-Int Channeling Constraint (II) --- p.18Chapter 3.2.2 --- Set-Int Channeling Constraint (SI) --- p.21Chapter 3.2.3 --- Set-Set Channeling Constraint (SS) --- p.24Chapter 3.2.4 --- Int-Bool Channeling Constraint (IB) --- p.25Chapter 3.2.5 --- Set-Bool Channeling Constraint (SB) --- p.27Chapter 3.2.6 --- Discussions --- p.29Chapter 4 --- Realization in Existing Solvers --- p.31Chapter 4.1 --- Implementation by if-and-only-if constraint --- p.32Chapter 4.1.1 --- "Realization of iff in CHIP, ECLiPSe, and SICStus Prolog" --- p.32Chapter 4.1.2 --- Realization of iff in Oz and ILOG Solver --- p.32Chapter 4.2 --- Implementations by Element Constraint --- p.38Chapter 4.2.1 --- "Realization of ele in CHIP, ECLiPSe, and SICStus Prolog" --- p.40Chapter 4.2.2 --- Realization of ele in Oz and ILOG Solver --- p.40Chapter 4.3 --- Global Constraint Implementations --- p.41Chapter 4.3.1 --- "Realization of glo in CHIP, SICStus Prolog, and ILOG Solver" --- p.42Chapter 5 --- Consistency Levels --- p.43Chapter 5.1 --- Int-Int Channeling (II) --- p.44Chapter 5.2 --- Set-Int Channeling (SI) --- p.49Chapter 5.3 --- Set-Set Channeling Constraints (SS) --- p.53Chapter 5.4 --- Int-Bool Channeling (IB) --- p.55Chapter 5.5 --- Set-Bool Channeling (SB) --- p.57Chapter 5.6 --- Discussion --- p.59Chapter 6 --- Algorithms and Implementation --- p.61Chapter 6.1 --- Source of Inefficiency --- p.62Chapter 6.2 --- Generalized Element Constraint Propagators --- p.63Chapter 6.3 --- Global Channeling Constraint --- p.66Chapter 6.3.1 --- Generalization of Existing Global Channeling Constraints --- p.66Chapter 6.3.2 --- Maintaining GAC on Int-Int Channeling Constraint --- p.68Chapter 7 --- Experiments --- p.72Chapter 7.1 --- Int-Int Channeling Constraint --- p.73Chapter 7.1.1 --- Efficient AC implementations --- p.74Chapter 7.1.2 --- GAC Implementations --- p.75Chapter 7.2 --- Set-Int Channeling Constraint --- p.83Chapter 7.3 --- Set-Set Channeling Constraint --- p.89Chapter 7.4 --- Int-Bool Channeling Constraint --- p.89Chapter 7.5 --- Set-Bool Channeling Constraint --- p.91Chapter 7.6 --- Discussion --- p.93Chapter 8 --- Related Work --- p.101Chapter 8.1 --- Empirical Studies --- p.101Chapter 8.2 --- Theoretical Studies --- p.102Chapter 8.3 --- Applications --- p.103Chapter 8.4 --- Other Kinds of Channeling Constraints --- p.104Chapter 9 --- Concluding Remarks --- p.106Chapter 9.1 --- Contributions --- p.106Chapter 9.2 --- Future Work --- p.108Bibliography --- p.10

    Exploiting Global Constraints for Search and Propagation

    Get PDF
    RĂ©sumĂ© Cette thĂšse se concentre sur la Programmation par contraintes (PPC), qui est un paradigme Ă©mergent pour rĂ©soudre des problĂšmes complexes d’optimisation combinatoire. Les principales contributions tournent autour du filtrage des contraintes et de la recherche; les deux sont des composantes clÂŽe dans la rĂ©solution de problĂšmes complexes Ă  travers la PPC. D’un cĂŽtĂ©, le filtrage des contraintes permet de rĂ©duire la taille de l’espace de recherche, d’autre part, la recherche dĂ©finit la maniĂšre dont cet espace sera explorĂ©. Les progrĂšs sur ces sujets sont essentiels pour Ă©largir l’applicabilitĂ© de CP Ă  des problĂšmes rĂ©els. En ce qui concerne le filtrage des contraintes, les contributions sont les suivantes: premiĂšrement, on propose une amĂ©lioration sur un algorithme existant de la version relaxĂ©e d’une contrainte commune qui apparaĂźt souvent dans les problĂšmes d’affectation (soft gcc). L’algorithme proposĂ© amĂ©liore en termes de complexitĂ© soit pour la cohĂ©rence, soit pour le filtrage et en termes de facilitĂ© d’implĂ©mentation. DeuxiĂšmement, on introduit une nouvelle contrainte (soit dure soit relaxĂ©e) et les algorithmes de filtrage pour une sous-structure rĂ©currente qui se produit dans les problĂšmes d’affectation des ressources hĂ©tĂ©rogĂšnes (hierarchical gcc). Nous montrons des rĂ©sultats encourageants par rapport Ă  une dÂŽĂ©composition Ă©quivalente basĂ©e sur gcc. En ce qui concerne la recherche, nous prĂ©sentons tout d’abord les algorithmes pour compter le nombre de solutions pour deux importantes familles de contraintes: les contraintes sur les occurrences, par exemple, alldifferent, symmetric alldifferent et gcc, et les contraintes de sĂ©quence admissible, telles que regular. Ces algorithmes sont Ă  la base d’une nouvelle famille d’heuristiques de recherche, centrĂ©es sur les contraintes et basĂ©es sur le dÂŽĂ©nombrement. Ces heuristiques extraient des informations sur le nombre de solutions des contraintes, pour guider la recherche vers des parties de l’espace de recherche qui contiennent probablement un grand nombre de solutions. Les rĂ©sultats expĂ©rimentaux sur huit diffĂ©rents problĂšmes montrent une performance impressionnante par rapport Ă  l’état de l’art des heuristiques gĂ©nĂ©riques. Enfin, nous expĂ©rimentons une forme forte, dĂ©jĂ  connue, de filtrage qui est guidĂ©e par la recherche (quick shaving). Cette technique donne des rĂ©sultats soit encourageants soit mauvais lorsqu’elle est appliquĂ©e aveuglĂ©ment Ă  tous les problĂšmes. Nous avons introduit un estimateur simple mais trĂšs efficace pour activer ou dĂ©sactiver dynamiquement le quick shaving; de tests expĂ©rimentaux ont montrĂ© des rĂ©sultats trĂšs prometteurs.----------Abstract This thesis focuses on Constraint Programming (CP), that is an emergent paradigm to solve complex combinatorial optimization problems. The main contributions revolve around constraint filtering and search that are two main components of CP. On one side, constraint filtering allows to reduce the size of the search space, on the other, search defines how this space will be explored. Advances on these topics are crucial to broaden the applicability of CP to real-life problems. For what concerns constraint filtering, the contribution is twofold: we firstly propose an improvement on an existing algorithm of the relaxed version of a constraint that frequently appears in assignment problems (soft gcc). The algorithm proposed outperforms the previously known in terms of time-complexity both for the consistency check and for the filtering and in term of ease of implementiation. Secondly, we introduce a new constraint (both hard and soft version) and associated filtering algorithms for a recurrent sub-structure that occurs in assignment problems with heterogeneous resources (hierarchical gcc). We show promising results when compared to an equivalent decomposition based on gcc. For what concerns search, we introduce algorithms to count the number of solutions for two important families of constraints: occurrence counting constraints, such as alldifferent, symmetric alldifferent and gcc, and sequencing constraints, such as regular. These algorithms are the building blocks of a new family of search heuristics, called constraint-centered counting-based heuristics. They extract information about the number of solutions the individual constraints admit, to guide search towards parts of the search space that are likely to contain a high number of solutions. Experimental results on eight different problems show an impressive performance compared to other generic state-of-the-art heuristics. Finally, we experiment on an already known strong form of constraint filtering that is heuristically guided by the search (quick shaving). This technique gives mixed results when applied blindly to any problem. We introduced a simple yet very effective estimator to dynamically disable quick shaving and showed experimentally very promising results

    Efficient Propagators for Global Constraints

    Get PDF
    We study in this thesis three well known global constraints. The All-Different constraint restricts a set of variables to be assigned to distinct values. The global cardinality constraint (GCC) ensures that a value v is assigned to at least lv variables and to at most uv variables among a set of given variables where lv and uv are non-negative integers such that lv ≤ uv. The Inter-Distance constraint ensures that all variables, among a set of variables x1, . . . , xn, are pairwise distant from p, i. e. |xi - xj| ≥ p for all i ≠ j. The All-Different constraint, the GCC, and the Inter-Distance constraint are largely used in scheduling problems. For instance, in scheduling problems where tasks with unit processing time compete for a single resource, we have an All-Different constraint on the starting time variables. When there are k resources, we have a GCC with lv = 0 and uv = k over all starting time variables. Finally, if tasks have processing time t and compete for a single resource, we have an Inter-Distance constraint with p = t over all starting time variables. We present new propagators for the All-Different constraint, the GCC, and the Inter-Distance constraint i. e. , new filtering algorithms that reduce the search space according to these constraints. For a given consistency, our propagators outperform previous propagators both in practice and in theory. The gains in performance are achieved through judicious use of advanced data structures combined with novel results on the structural properties of the constraints

    Speeding up weighted constraint satisfaction using redundant modeling.

    Get PDF
    Woo Hiu Chun.Thesis (M.Phil.)--Chinese University of Hong Kong, 2006.Includes bibliographical references (leaves 91-99).Abstracts in English and Chinese.Chapter 1 --- Introduction --- p.1Chapter 1.1 --- Constraint Satisfaction Problems --- p.1Chapter 1.2 --- Weighted Constraint Satisfaction Problems --- p.3Chapter 1.3 --- Redundant Modeling --- p.4Chapter 1.4 --- Motivations and Goals --- p.5Chapter 1.5 --- Outline of the Thesis --- p.6Chapter 2 --- Background --- p.8Chapter 2.1 --- Constraint Satisfaction Problems --- p.8Chapter 2.1.1 --- Backtracking Tree Search --- p.9Chapter 2.1.2 --- Local Consistencies --- p.12Chapter 2.1.3 --- Local Consistencies in Backtracking Search --- p.17Chapter 2.1.4 --- Permutation CSPs --- p.19Chapter 2.2 --- Weighted Constraint Satisfaction Problems --- p.20Chapter 2.2.1 --- Branch and Bound Search --- p.23Chapter 2.2.2 --- Local Consistencies --- p.26Chapter 2.2.3 --- Local Consistencies in Branch and Bound Search --- p.32Chapter 2.3 --- Redundant Modeling --- p.34Chapter 3 --- Generating Redundant WCSP Models --- p.37Chapter 3.1 --- Model Induction for CSPs --- p.38Chapter 3.1.1 --- Stated Constraints --- p.39Chapter 3.1.2 --- No-Double-Assignment Constraints --- p.39Chapter 3.1.3 --- At-Least-One-Assignment Constraints --- p.40Chapter 3.2 --- Generalized Model Induction for WCSPs --- p.43Chapter 4 --- Combining Mutually Redundant WCSPs --- p.47Chapter 4.1 --- Naive Approach --- p.47Chapter 4.2 --- Node Consistency Revisited --- p.51Chapter 4.2.1 --- Refining Node Consistency Definition --- p.52Chapter 4.2.2 --- Enforcing m-NC* c Algorithm --- p.55Chapter 4.3 --- Arc Consistency Revisited --- p.58Chapter 4.3.1 --- Refining Arc Consistency Definition --- p.60Chapter 4.3.2 --- Enforcing m-AC*c Algorithm --- p.62Chapter 5 --- Experiments --- p.67Chapter 5.1 --- Langford's Problem --- p.68Chapter 5.2 --- Latin Square Problem --- p.72Chapter 5.3 --- Discussion --- p.75Chapter 6 --- Related Work --- p.77Chapter 6.1 --- Soft Constraint Satisfaction Problems --- p.77Chapter 6.2 --- Other Local Consistencies in WCSPs --- p.79Chapter 6.2.1 --- Full Arc Consistency --- p.79Chapter 6.2.2 --- Pull Directional Arc Consistency --- p.81Chapter 6.2.3 --- Existential Directional Arc Consistency --- p.82Chapter 6.3 --- Redundant Modeling and Channeling Constraints --- p.83Chapter 7 --- Concluding Remarks --- p.85Chapter 7.1 --- Contributions --- p.85Chapter 7.2 --- Future Work --- p.87List of Symbols --- p.88Bibliograph
    corecore