Results 1  10
of
40
Minion: A fast scalable constraint solver
 In: Proceedings of ECAI 2006, Riva del Garda
, 2006
"... Abstract. We present Minion, a new constraint solver. Empirical results on standard benchmarks show orders of magnitude performance gains over stateoftheart constraint toolkits. These gains increase with problem size – Minion delivers scalable constraint solving. Minion is a generalpurpose const ..."
Abstract

Cited by 114 (38 self)
 Add to MetaCart
(Show Context)
Abstract. We present Minion, a new constraint solver. Empirical results on standard benchmarks show orders of magnitude performance gains over stateoftheart constraint toolkits. These gains increase with problem size – Minion delivers scalable constraint solving. Minion is a generalpurpose constraint solver, with an expressive input language based on the common constraint modelling device of matrix models. Focussing on matrix models supports a highlyoptimised implementation, exploiting the properties of modern processors. This contrasts with current constraint toolkits, which, in order to provide ever more modelling and solving options, have become progressively more complex at the cost of both performance and usability. Minion is a black box from the user point of view, deliberately providing few options. This, combined with its raw speed, makes Minion a substantial step towards Puget’s ‘Model and Run ’ constraint solving paradigm. 1
The essence of ESSENCE: A constraint language for specifying combinatorial problems
 In Proceedings of the 20th International Joint Conference on Artificial Intelligence
, 2005
"... Abstract. Essence is a new language for specifying combinatorial (decision or optimisation) problems at a high level of abstraction. The key feature enabling this abstraction is the provision of decision variables whose values can be combinatorial objects, such as tuples, sets, multisets, relations, ..."
Abstract

Cited by 62 (15 self)
 Add to MetaCart
(Show Context)
Abstract. Essence is a new language for specifying combinatorial (decision or optimisation) problems at a high level of abstraction. The key feature enabling this abstraction is the provision of decision variables whose values can be combinatorial objects, such as tuples, sets, multisets, relations, partitions and functions. Essence also allows these combinatorial objects to be nested to arbitrary depth, thus providing, for example, sets of partitions, sets of sets of partitions, and so forth. 1
The rules of constraint modelling
 In Proc. of the Nineteenth Int. Joint Conf. on Artificial Intelligence
, 2005
"... Many and diverse combinatorial problems have been solved successfully using finitedomain constraint programming. However, to apply constraint programming to a particular domain, the problem must first be modelled as a constraint satisfaction or optimisation problem. Since constraints provide a rich ..."
Abstract

Cited by 49 (21 self)
 Add to MetaCart
(Show Context)
Many and diverse combinatorial problems have been solved successfully using finitedomain constraint programming. However, to apply constraint programming to a particular domain, the problem must first be modelled as a constraint satisfaction or optimisation problem. Since constraints provide a rich language, typically many alternative models exist. Formulating a good model therefore requires a great deal of expertise. This paper describes CONJURE, a system that refines a specification of a problem in the abstract constraint specification language ESSENCE into a set of alternative constraint models. Refinement is compositional: alternative constraint models are generated by composing refinements of the components of the specification. Experimental results demonstrate that CONJURE is able to generate a variety of models for practical problems from their ESSENCE specifications. 1
The design of ESSENCE: a constraint language for specifying combinatorial problems
 In: Proceedings of IJCAI07
, 2007
"... ESSENCE is a new formal language for specifying combinatorial problems in a manner similar to natural rigorous specifications that use a mixture of natural language and discrete mathematics. ESSENCE provides a high level of abstraction, much of which is the consequence of the provision of decision v ..."
Abstract

Cited by 41 (2 self)
 Add to MetaCart
ESSENCE is a new formal language for specifying combinatorial problems in a manner similar to natural rigorous specifications that use a mixture of natural language and discrete mathematics. ESSENCE provides a high level of abstraction, much of which is the consequence of the provision of decision variables whose values can be combinatorial objects, such as tuples, sets, multisets, relations, partitions and functions. ESSENCE also allows these combinatorial objects to be nested to arbitrary depth, thus providing, for example, sets of partitions, sets of sets of partitions, and so forth. Therefore, a problem that requires finding a complex combinatorial object can be directly specified by using a decision variable whose type is precisely that combinatorial object. 1
A Tutorial on Constraint Programming
 University of Leeds
, 1995
"... A constraint satisfaction problem (CSP) consists of a set of variables; for each variable, a finite set of possible values (its domain); and a set of constraints restricting the values that the variables can simultaneously take. A solution to a CSP is an assignment of a value from its domain to ever ..."
Abstract

Cited by 33 (2 self)
 Add to MetaCart
(Show Context)
A constraint satisfaction problem (CSP) consists of a set of variables; for each variable, a finite set of possible values (its domain); and a set of constraints restricting the values that the variables can simultaneously take. A solution to a CSP is an assignment of a value from its domain to every variable, in such a way that every constraint is satisfied. Many problems arising in O.R., in particular scheduling, timetabling and other combinatorial problems, can be represented as CSPs. Constraint programming tools now exist which allow CSPs to be expressed easily, and provide standard strategies for finding solutions. This tutorial is intended to give a basic grounding in constraint satisfaction problems and some of the algorithms used to solve them, including the techniques commonly used in constraint programming tools. In particular, it covers arc and path consistency; simple backtracking and forward checking, as examples of search algorithms; and the use of heuristics to guide the...
Global Constraint Catalogue: Past, Present and Future
, 2006
"... The catalogue of global constraints is reviewed, focusing on the graphbased description of global constraints. A number of possible enhancements are proposed as well as several research paths for the development of the area. ..."
Abstract

Cited by 26 (2 self)
 Add to MetaCart
The catalogue of global constraints is reviewed, focusing on the graphbased description of global constraints. A number of possible enhancements are proposed as well as several research paths for the development of the area.
Propagation algorithms for lexicographic ordering constraints
 Artificial Intelligence
, 2006
"... Finitedomain constraint programming has been used with great success to tackle a wide variety of combinatorial problems in industry and academia. To apply finitedomain constraint programming to a problem, it is modelled by a set of constraints on a set of decision variables. A common modelling pat ..."
Abstract

Cited by 24 (8 self)
 Add to MetaCart
(Show Context)
Finitedomain constraint programming has been used with great success to tackle a wide variety of combinatorial problems in industry and academia. To apply finitedomain constraint programming to a problem, it is modelled by a set of constraints on a set of decision variables. A common modelling pattern is the use of matrices of decision variables. The rows and/or columns of these matrices are often symmetric, leading to redundancy in a systematic search for solutions. An effective method of breaking this symmetry is to constrain the assignments of the affected rows and columns to be ordered lexicographically. This paper develops an incremental propagation algorithm, GACLexLeq, that establishes generalised arc consistency on this constraint in O(n) operations, where n is the length of the vectors. Furthermore, this paper shows that decomposing GACLexLeq into primitive constraints available in current finitedomain constraint toolkits reduces the strength or increases the cost of constraint propagation. Also presented are extensions and modifications to the algorithm to handle strict lexicographic ordering, detection of entailment, and vectors of unequal length. Experimental results on a number of domains demonstrate the value of GACLexLeq. 1
Effective Compilation of Constraint Models
, 2010
"... Constraint Programming is a powerful technique for solving largescale combinatorial (optimisation) problems. However, it is often inaccessible to users without expert knowledge in the area, precluding the widespread use of Constraint Programming techniques. This thesis addresses this issue in thre ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
(Show Context)
Constraint Programming is a powerful technique for solving largescale combinatorial (optimisation) problems. However, it is often inaccessible to users without expert knowledge in the area, precluding the widespread use of Constraint Programming techniques. This thesis addresses this issue in three main contributions. First, we propose a simple ‘modelandsolve ’ approach, consisting of a framework where the user formulates a solverindependent problem model, which is then automatically tailored to the input format of a selected constraint solver (a process similar to compiling a highlevel modelling language to machine code). The solver is then executed on the input, solver, and solutions (if they exist) are returned to the user. This allows the user to formulate constraint models without requiring any particular background knowledge of the respective solver and its solving technique. Furthermore, since the framework can target several solvers, the user can explore different types of solvers. Second, we extend the tailoring process with model optimisations that can compensate for a wide selection of poor modelling choices that novices (and experts) in Constraint Programming often make and hence result in redundancies. The elimination of these redundancies
Transforming and refining abstract constraint specifications
 In Proceedings of the Sixth Symposium on Abstraction, Reformulation and Approximation, volume 3607 of Lecture Notes in Computer Science
, 2005
"... ..."
(Show Context)
Extensible Automated Constraint Modelling
"... In constraint solving, a critical bottleneck is the formulation of an effective constraint model of a given problem. The CONJURE system described in this paper, a substantial step forward over prototype versions of CONJURE previously reported, makes a valuable contribution to the automation of const ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
In constraint solving, a critical bottleneck is the formulation of an effective constraint model of a given problem. The CONJURE system described in this paper, a substantial step forward over prototype versions of CONJURE previously reported, makes a valuable contribution to the automation of constraint modelling by automatically producing constraint models from their specifications in the abstract constraint specification language ESSENCE. A set of rules is used to refine an abstract specification into a concrete constraint model. We demonstrate that this set of rules is readily extensible to increase the space of possible constraint models CONJURE can produce. Our empirical results confirm that CONJURE can reproduce successfully the kernels of the constraint models of 32 benchmark problems found in the literature.