Results 1  10
of
129
Theory and Practice of Constraint Handling Rules
, 1998
"... Constraint Handling Rules (CHR) are our proposal to allow more flexibility and applicationoriented customization of constraint systems. CHR are a declarative language extension especially designed for writing userdefined constraints. CHR are essentially a committedchoice language consisting of mu ..."
Abstract

Cited by 396 (35 self)
 Add to MetaCart
Constraint Handling Rules (CHR) are our proposal to allow more flexibility and applicationoriented customization of constraint systems. CHR are a declarative language extension especially designed for writing userdefined constraints. CHR are essentially a committedchoice language consisting of multiheaded guarded rules that rewrite constraints into simpler ones until they are solved. In this broad survey we aim at covering all aspects of CHR as they currently present themselves. Going from theory to practice, we will define syntax and semantics for CHR, introduce an important decidable property, confluence, of CHR programs and define a tight integration of CHR with constraint logic programming languages. This survey then describes implementations of the language before we review several constraint solvers  both traditional and non standard ones  written in the CHR language. Finally we introduce two innovative applications that benefited from using CHR.
DESIGN, IMPLEMENTATION, AND EVALUATION OF THE CONSTRAINT LANGUAGE cc(FD)
 J. LOGIC PROGRAMMING 1994:19, 20:1679
, 1994
"... This paper describes the design, implementation, and applications of the constraint logic language cc(FD). cc(FD) is a declarative nondeterministic constraint logic language over finite domains based on the cc framework [33], an extension of the CLP scheme [21]. Its constraint solver includes (nonl ..."
Abstract

Cited by 166 (9 self)
 Add to MetaCart
This paper describes the design, implementation, and applications of the constraint logic language cc(FD). cc(FD) is a declarative nondeterministic constraint logic language over finite domains based on the cc framework [33], an extension of the CLP scheme [21]. Its constraint solver includes (nonlinear) arithmetic constraints over natural numbers which are approximated using domain and interval consistency. The main novelty of cc(FD) is the inclusion of a number of generalpurpose combinators, in particular cardinality, constructive disjunction, and blocking implication, in conjunction with new constraint operations such as constraint entailment and generalization. These combinators signi cantly improve the operational expressiveness, extensibility, and flexibility of CLP languages and allow issues such as the definition of nonprimitive constraints and disjunctions to be tackled at the language level. The implementation of cc(FD) (about 40,000 lines of C) includes a WAMbased engine [44], optimal arcconsistency algorithms based on AC5 [40], and incremental implementation of the combinators. Results on numerous problems, including scheduling, resource allocation, sequencing, packing, and hamiltonian paths are reported and indicate that cc(FD) comes close to procedural languages on a number of combinatorial problems. In addition, a small cc(FD) program was able to nd the optimal solution and prove optimality to a famous 10/10 disjunctive scheduling problem [29], which was left open for more than 20 years and nally solved in 1986.
Revising Hull and Box Consistency
 INT. CONF. ON LOGIC PROGRAMMING
, 1999
"... Most intervalbased solvers in the constraint logic programming framework are based on either hull consistency or box consistency (or a variation of these ones) to narrow domains of variables involved in continuous constraint systems. This paper rst presents HC4, an algorithm to enforce hull consist ..."
Abstract

Cited by 76 (13 self)
 Add to MetaCart
Most intervalbased solvers in the constraint logic programming framework are based on either hull consistency or box consistency (or a variation of these ones) to narrow domains of variables involved in continuous constraint systems. This paper rst presents HC4, an algorithm to enforce hull consistency without decomposing complex constraints into primitives. Next, an extended denition for box consistency is given and the resulting consistency is shown to subsume hull consistency. Finally, BC4, a new algorithm to eciently enforce box consistency is described, that replaces BC3the original solely Newtonbased algorithm to achieve box consistencyby an algorithm based on HC4 and BC3 taking care of the number of occurrences of each variable in a constraint. BC4 is then shown to signicantly outperform both HC3 (the original algorithm enforcing hull consistency by decomposing constraints) and BC3. 1 Introduction Finite representation of numbers precludes computers from exactly solv...
Interval arithmetic: From principles to implementation
 J. ACM
"... We start with a mathematical definition of a real interval as a closed, connected set of reals. Interval arithmetic operations (addition, subtraction, multiplication and division) are likewise defined mathematically and we provide algorithms for computing these operations assuming exact real arithme ..."
Abstract

Cited by 76 (12 self)
 Add to MetaCart
We start with a mathematical definition of a real interval as a closed, connected set of reals. Interval arithmetic operations (addition, subtraction, multiplication and division) are likewise defined mathematically and we provide algorithms for computing these operations assuming exact real arithmetic. Next, we define interval arithmetic operations on intervals with IEEE 754 floating point endpoints to be sound and optimal approximations of the real interval operations and we show that the IEEE standard’s specification of operations involving the signed infinities, signed zeros, and the exact/inexact flag are such as to make a correct and optimal implementation more efficient. From the resulting theorems we derive data that are sufficiently detailed to convert directly to a program for efficiently implementing the interval operations. Finally we extend these results to the case of general intervals, which are defined as connected sets of reals that are not necessarily closed. 1
The LPSAT Engine & its Application to Resource Planning
, 1999
"... Compilation to boolean satisfiability has become a powerful paradigm for solving AI problems. However, domains... ..."
Abstract

Cited by 70 (0 self)
 Add to MetaCart
Compilation to boolean satisfiability has become a powerful paradigm for solving AI problems. However, domains...
The PaLM system: explanationbased constraint programming
 In Proceedings of TRICS: Techniques foR Implementing Constraint programming Systems, a postconference workshop of CP 2000
, 2000
"... Explanationbased constraint programming is a new way of solving constraint problems: it allows to propagate constraints of the problem, learning from failure and from the solver (thanks to recording explanations) and finally allows to get rid of backtrackbased complete searches by allowing more fr ..."
Abstract

Cited by 63 (13 self)
 Add to MetaCart
Explanationbased constraint programming is a new way of solving constraint problems: it allows to propagate constraints of the problem, learning from failure and from the solver (thanks to recording explanations) and finally allows to get rid of backtrackbased complete searches by allowing more free moves in the search space (while remaining complete). This paper presents the PaLM system, an implementation of an explanationbased constraint programming system in CHOCO a constraint programming layer on top of CLAIRE.
LOCALIZER  A Modeling Language for Local Search
 INFORMS JOURNAL OF COMPUTING
, 1997
"... Local search is a traditional technique to solve combinatorial search problems which has raised much interest in recent years. The design and implementation of local search algorithms is not an easy task in general and may require considerable experimentation and programming effort. However, contrar ..."
Abstract

Cited by 50 (7 self)
 Add to MetaCart
Local search is a traditional technique to solve combinatorial search problems which has raised much interest in recent years. The design and implementation of local search algorithms is not an easy task in general and may require considerable experimentation and programming effort. However, contrary to global search, little support is available to assist the design and implementation of local search algorithms. This paper is an attempt to support the implementation of local search. It presents the preliminary design of Localizer, a modeling language which makes it possible to express local search algorithms in a notation close to their informal descriptions in scientific papers. Experimental results on our first implementation show the feasibility of the approach.
Universally Quantified Interval Constraints
 PROCEEDINGS OF THE 6TH INTERNATIONAL CONFERENCE ON PRINCIPLES AND PRACTICE OF CONSTRAINT PROGRAMMING
, 2000
"... Nonlinear real constraint systems with universally and/or existentially quantified variables often need be solved in such contexts as control design or sensor planning. To date, these systems are mostly handled by computing a quantifierfree equivalent form by means of Cylindrical Algebraic Decompo ..."
Abstract

Cited by 46 (0 self)
 Add to MetaCart
Nonlinear real constraint systems with universally and/or existentially quantified variables often need be solved in such contexts as control design or sensor planning. To date, these systems are mostly handled by computing a quantifierfree equivalent form by means of Cylindrical Algebraic Decomposition (CAD). However, CAD restricts its input to be conjunctions and disjunctions of polynomial constraints with rational coefficients, while some applications such as camera control involve systems with arbitrary forms where time is the only universally quantified variable. In this paper, the handling of universally quantified variables is first related to the computation of innerapproximation of real relations.
Interval Analysis on Directed Acyclic Graphs for Global Optimization
 J. Global Optimization
, 2004
"... A directed acyclic graph (DAG) representation of optimization problems represents each variable, each operation, and each constraint in the problem formulation by a node of the DAG, with edges representing the ow of the computation. ..."
Abstract

Cited by 40 (8 self)
 Add to MetaCart
A directed acyclic graph (DAG) representation of optimization problems represents each variable, each operation, and each constraint in the problem formulation by a node of the DAG, with edges representing the ow of the computation.
Constraint Programming: In Pursuit of the Holy Grail
 in Proceedings of WDS99 (invited lecture
, 1999
"... : Constraint programming (CP) is an emergent software technology for declarative description and effective solving of large, particularly combinatorial, problems especially in areas of planning and scheduling. It represents the most exciting developments in programming languages of the last decade a ..."
Abstract

Cited by 39 (0 self)
 Add to MetaCart
: Constraint programming (CP) is an emergent software technology for declarative description and effective solving of large, particularly combinatorial, problems especially in areas of planning and scheduling. It represents the most exciting developments in programming languages of the last decade and, not surprisingly, it has recently been identified by the ACM (Association for Computing Machinery) as one of the strategic directions in computer research. Not only it is based on a strong theoretical foundation but it is attracting widespread commercial interest as well, in particular, in areas of modelling heterogeneous optimisation and satisfaction problems. In the paper, we give a survey of constraint programming technology and its applications starting from the history context and interdisciplinary nature of CP. The central part of the paper is dedicated to the description of main constraint satisfaction techniques and industrial applications. We conclude with the overview of limit...