Results 1  10
of
17
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.
Constraint satisfaction using constraint logic programming
 Artificial Intelligence
, 1992
"... Constraint logic programming (CLP) is a new class of declarative programming languages whose primitive operations are based on constraints (e.g. constraint solving and constraint entailment). CLP languages naturally combine constraint propagation with nondeterministic choices. As a consequence, the ..."
Abstract

Cited by 75 (3 self)
 Add to MetaCart
Constraint logic programming (CLP) is a new class of declarative programming languages whose primitive operations are based on constraints (e.g. constraint solving and constraint entailment). CLP languages naturally combine constraint propagation with nondeterministic choices. As a consequence, they are particularly appropriate for solving a variety of combinatorial search problems, using the global search paradigm, with short development time and efficiency comparable to procedural tools based on the same approach. In this paper, we describe how the CLP language cc(FD), a successor of CHIP using consistency techniques over finite domains, can be used to solve two practical applications: testpattern generation and car sequencing. For both applications, we present the cc(FD) program, describe how constraint solving is performed, report experimental results, and compare the approach with existing tools.
A Column Generation Approach For Graph Coloring
 INFORMS Journal on Computing
, 1995
"... We present a method for solving the independent set formulation of the graph coloring problem (where there is one variable for each independent set in the graph). We use a column generation method for implicit optimization of the linear program at each node of the branchandbound tree. This approac ..."
Abstract

Cited by 73 (2 self)
 Add to MetaCart
We present a method for solving the independent set formulation of the graph coloring problem (where there is one variable for each independent set in the graph). We use a column generation method for implicit optimization of the linear program at each node of the branchandbound tree. This approach, while requiring the solution of a difficult subproblem as well as needing sophisticated branching rules, solves small to moderate size problems quickly. We have also implemented an exact graph coloring algorithm based on DSATUR for comparison. Implementation details and computational experience are presented. 1 INTRODUCTION The graph coloring problem is one of the most useful models in graph theory. This problem has been used to solve problems in school timetabling [10], computer register allocation [7, 8], electronic bandwidth allocation [11], and many other areas. These applications suggest that effective algorithms for solving the graph coloring problem would be of great importance. D...
Tractable symmetry breaking for CSPs with interchangeable values
 IN PROCEEDINGS OF IJCAI’03
, 2003
"... Symmetry breaking in CSPs has attracted considerable attention in recent years. Various general schemes have been proposed to eliminate symmetries during search. In general, these schemes may take exponential space or time to eliminate all symmetries. This paper studies classes of CSPs for which sym ..."
Abstract

Cited by 28 (10 self)
 Add to MetaCart
Symmetry breaking in CSPs has attracted considerable attention in recent years. Various general schemes have been proposed to eliminate symmetries during search. In general, these schemes may take exponential space or time to eliminate all symmetries. This paper studies classes of CSPs for which symmetry breaking is tractable. It identifies several CSP classes which feature various forms of value interchangeability and shows that symmetry breaking can be performed in constant time and space during search using dedicated search procedures. Experimental results also show the benefits of symmetry breaking on these CSPs, which encompass many practical applications.
Assigning Codes in Wireless Networks: Bounds and Scaling Properties.
 Wireless Networks
, 1999
"... In the Code Division Multiple Access (CDMA) framework, collisions that can occur in wireless networks are eliminated by assigning orthogonal codes to stations, a problem equivalent to that of coloring graphs associated to the physical network. ..."
Abstract

Cited by 27 (8 self)
 Add to MetaCart
In the Code Division Multiple Access (CDMA) framework, collisions that can occur in wireless networks are eliminated by assigning orthogonal codes to stations, a problem equivalent to that of coloring graphs associated to the physical network.
A branchandcut algorithm for graph coloring
 Discrete Applied Mathematics
, 2002
"... In a previous work, we proposed a new integer programming formulation for the graph coloring problem which, to a certain extent, avoids symmetry. We studied the facet structure of the 0/1polytope associated with it. Based on these theoretical results, we present now a BranchandCut algorithm for t ..."
Abstract

Cited by 18 (1 self)
 Add to MetaCart
In a previous work, we proposed a new integer programming formulation for the graph coloring problem which, to a certain extent, avoids symmetry. We studied the facet structure of the 0/1polytope associated with it. Based on these theoretical results, we present now a BranchandCut algorithm for the graph coloring problem. Our computational experiences compare favorably with the wellknown exact graph coloring algorithm DSATUR. Keyword: Graph Coloring; Integer Programming; BranchandCut algorithms 1
Breaking instanceindependent symmetries in exact graph coloring
 JOURNAL OF ARTIFICIAL INTELLIGENCE RESEARCH
, 2004
"... Code optimization and high level synthesis can be posed as constraint satisfaction and optimization problems, such as graph coloring used in register allocation. Naturallyoccurring instances of such problems are often small and can be solved optimally. A recent wave of improvements in algorithms for ..."
Abstract

Cited by 15 (5 self)
 Add to MetaCart
Code optimization and high level synthesis can be posed as constraint satisfaction and optimization problems, such as graph coloring used in register allocation. Naturallyoccurring instances of such problems are often small and can be solved optimally. A recent wave of improvements in algorithms for Boolean satisfiability (SAT) and 01 ILP suggests generic problemreduction methods, rather than problemspecific heuristics, because (1) heuristics are easily upset by new constraints, (2) heuristics tend to ignore structure, and (3) many relevant problems are provably inapproximable. The NPspec project offers a language to specify NPproblems and automatic reductions to SAT. Problem reductions often lead to highly symmetric SAT instances, and symmetries are known to slow down SAT solvers. In this work, we compare several avenues for symmetrybreaking, in particular when certain kinds of symmetry are present in all generated instances. Our surprising conclusion is that instanceindependent symmetries should often be processed together with instancespecific symmetries rather than earlier, at the specification level.
A Logic Language for Combinatorial Optimization
 Annals of Operations Research
, 1989
"... CHIP (Constraint Handling In Prolog) is a new logic programming language combining the declarative aspect of logic programming for stating search problems with the eciency of constraint handling techniques for solving them. CHIP has been applied to many reallife problems in Operations Research and h ..."
Abstract

Cited by 10 (4 self)
 Add to MetaCart
CHIP (Constraint Handling In Prolog) is a new logic programming language combining the declarative aspect of logic programming for stating search problems with the eciency of constraint handling techniques for solving them. CHIP has been applied to many reallife problems in Operations Research and hardware design with an efficiency comparable to specific programs written in procedural languages. The main advantage of CHIP is the short development time of the programs and their great modifiability and extensibility. In this paper, we discuss the application of the finite domain part of CHIP to the solving of discrete combinatorial problems occurring in Operations Research. The basic mechanisms underlying CHIP are explained through simple examples. Solutions in CHIP of several reallife problems (e.g., cutting stock, warehouses location problems) are presented and compared with usual approaches, showing the versatility and the interest of the approach.
APPROXIMATING MAXIMUM STABLE SET AND MINIMUM GRAPH COLORING PROBLEMS WITH THE POSITIVE SEMIDEFINITE RELAXATION
"... We compute approximate solutions to the maximum stable set problem and the minimum graph coloring problem using a positive semidefinite relaxation. The positive semidefinite programs are solved using an implementation of the dual scaling algorithm that takes advantage of the sparsity inherent in m ..."
Abstract

Cited by 9 (1 self)
 Add to MetaCart
We compute approximate solutions to the maximum stable set problem and the minimum graph coloring problem using a positive semidefinite relaxation. The positive semidefinite programs are solved using an implementation of the dual scaling algorithm that takes advantage of the sparsity inherent in most graphs and the structure inherent in the problem formulation. From the solution to the relaxation, we apply a randomized algorithm to find approximate maximum stable sets and a modification of a popular heuristic to find graph colorings. We obtained high quality answers for graphs with over 1000 vertices and almost 7000 edges.
Scheduling and Packing in the Constraint Language cc(FD)
 IN INTELLIGENT SCHEDULING. ZWEBEN AND FOX (EDS)
, 1994
"... Constraint Logic Programming (CLP), and its generalization in the cc framework, define a class of declarative constraint languages combining nondeterministic goaldirected programming with constraint techniques over an arbitrary domain. CLP languages are particularly attractive for combinatorial sea ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
Constraint Logic Programming (CLP), and its generalization in the cc framework, define a class of declarative constraint languages combining nondeterministic goaldirected programming with constraint techniques over an arbitrary domain. CLP languages are particularly attractive for combinatorial search problems as they offer a short development time and a reasonable efficiency. In this paper, we present the application of cc(FD), a CLP language using consistency techniques over finite domains, to two applications: the perfect square problem and a Digital Signal Processing (DSP) problem. The perfect square problem amounts to placing squares of different sizes in a master square in an exact manner (i.e. no empty space remains). We show a natural and very short cc(FD) program solving the problem for 21 and 24 squares in a couple of seconds. The DSP application amounts to scheduling tasks on a multiprocessor in presence of precedence, capacity, and delay constraints. The complexity of the problem is exacerbated by the nonuniform communication delays coming from the architecture which combines pipeline and masterslave processing. We present a short cc(FD) program which compares very well with a specialpurpose branch and bound algorithm. Both applications show the versatility of languages such as cc(FD) for the solving of discrete combinatorial search problems.