scispace - formally typeset
Search or ask a question

Showing papers on "Constraint programming published in 2002"


Journal ArticleDOI
TL;DR: In this article, the authors discuss the problem of managing the new generation of Agile Earth Observing Satellites (AEOS) and present different methods which have been investigated in order to solve a simplified version of the complete problem.

326 citations


Proceedings ArticleDOI
12 May 2002
TL;DR: An extension for the differential evolution algorithm for handling nonlinear constraint functions is proposed and demonstrated by solving a suite of ten well-known test problems.
Abstract: An extension for the differential evolution algorithm is proposed for handling nonlinear constraint functions. In comparison with the original algorithm, only the replacement criterion was modified for handling the constraints. In this article the proposed method is described and demonstrated by solving a suite of ten well-known test problems.

274 citations


Journal ArticleDOI
TL;DR: In this paper two strategies are presented to reduce the combinatorial complexity when solving single stage and multistage optimization scheduling problems that involve cost minimization and due dates.

207 citations


Proceedings Article
21 Jul 2002
TL;DR: In this paper, the authors introduce stochastic constraint programming (SCP) to model combinatorial decision problems involving uncertainty and probability, and propose a number of complete algorithms and approximation procedures.
Abstract: To model combinatorial decision problems involving uncertainty and probability, we introduce stochastic constraint programming. Stochastic constraint programs contain both decision variables (which we can set) and stochastic variables (which follow a probability distribution). They combine together the best features of traditional constraint satisfaction, stochastic integer programming, and stochastic satisfiability. We give a semantics for stochastic constraint programs, and propose a number of complete algorithms and approximation procedures. Finally, we discuss a number of extensions of stochastic constraint programming to relax various assumptions like the independence between stochastic variables, and compare with other approaches for decision making under uncertainty.

183 citations


Journal ArticleDOI
16 Dec 2002
TL;DR: It turns out that test-first does not accelerate the implementation, and the resulting programs are not more reliable, but test- first seems to support better program understanding.
Abstract: Test-first programming is one of the central techniques of extreme programming. Programming test-first means (i) write down a test-case before coding and (ii) make all the tests executable for regression testing. Thus far, knowledge about test-first programming is limited to experience reports. Nothing is known about the benefits of test-first compared to traditional programming (design, implementation, test). This paper reports an experiment comparing. test-first to traditional programming. It turns out that test-first does not accelerate the implementation, and the resulting programs are not more reliable, but test-first seems to support better program understanding.

176 citations


Journal ArticleDOI
TL;DR: On a test case with experimental data on the dimeric protein Desulforedoxin, the method proposed here supplied similar results in less than 10 minutes compared to approximately 10 hours of computation time for DYANA, showing that CP technology can greatly reduce computation time.
Abstract: In this paper we propose PSICO (Processing Structural Information with Constraint programming and Optimisation) as a constraint-based approach to determining protein structures compatible with distance constraints obtained from Nuclear Magnetic Resonance (NMR) data We compare the performance of our proposed algorithm with DYANA (“Dynamics algorithm for NMR applications”) an existing commercial application based on simulated annealing On a test case with experimental data on the dimeric protein Desulforedoxin, the method proposed here supplied similar results in less than 10 minutes compared to approximately 10 hours of computation time for DYANA Although the quality of results can still be improved, this shows that CP technology can greatly reduce computation time, a major advantage because structural NMR technique generally demands multiple runs of structural computation

171 citations


Journal ArticleDOI
TL;DR: This paper presents operators searching large neighborhoods in order to solve the vehicle routing problem that make use of the pruning and propagation techniques of constraint programming which allow an efficient search of such neighborhoods.
Abstract: This paper presents operators searching large neighborhoods in order to solve the vehicle routing problem. They make use of the pruning and propagation techniques of constraint programming which allow an efficient search of such neighborhoods. The advantages of using a large neighborhood are not only the increased probability of finding a better solution at each iteration but also the reduction of the need to invoke specially-designed methods to avoid local minima. These operators are combined in a variable neighborhood descent in order to take advantage of the different neighborhood structures they generate.

169 citations


Journal ArticleDOI
TL;DR: New valid inequalities for these mixed integer programming problems with probabilistic constraints involving random variables with discrete distributions are developed using specific properties of stochastic programming problems and bounds on the probability of the union of events.
Abstract: We consider stochastic programming problems with probabilistic constraints involving random variables with discrete distributions. They can be reformulated as large scale mixed integer programming problems with knapsack constraints. Using specific properties of stochastic programming problems and bounds on the probability of the union of events we develop new valid inequalities for these mixed integer programming problems. We also develop methods for lifting these inequalities. These procedures are used in a general iterative algorithm for solving probabilistically constrained problems. The results are illustrated with a numerical example.

168 citations


Journal ArticleDOI
TL;DR: This paper summarizes and contrasts the characteristics of the two fields; in particular, how they use logical inference in different ways, and how they can be combined.
Abstract: Because of their complementary strengths, optimization and constraint programming can be profitably merged. Their integration has been the subject of increasing commercial and research activity. This paper summarizes and contrasts the characteristics of the two fields; in particular, how they use logical inference in different ways, and how these ways can be combined. It sketches the intellectual background for recent efforts at integration. It traces the history of logic-based methods in optimization and the development of constraint programming in artificial intelligence. It concludes with a review of recent research, with emphasis on schemes for integration, relaxation methods, and practical applications.

163 citations


Book ChapterDOI
21 Aug 2002
TL;DR: This paper presents the first provably optimal solution for an instance of eight teams of the Travelling Tournament Problem using a parallel implementation of a branch-and-price algorithm that uses integer programming to solve the master problem and constraint programming to solving the pricing problem.
Abstract: The Travelling Tournament Problem is a sports timetabling problem requiring production of a minimum distance double round-robin tournament for a group of n teams. Even small instances of this problem seem to be very difficult to solve. In this paper, we present the first provably optimal solution for an instance of eight teams. The solution methodology is a parallel implementation of a branch-and-price algorithm that uses integer programming to solve the master problem and constraint programming to solve the pricing problem. Additionally, constraint programming is used as a primal heuristic.

140 citations


Journal ArticleDOI
TL;DR: It is shown with extensive computational results that the synergy between Operations Research optimization techniques embedded in global constraints, and Constraint Programming constraint solving techniques, makes the resulting framework effective in the TSPTW context also if these results are compared with state-of-the-art algorithms from the literature.
Abstract: TheTraveling Salesman Problem with Time Windows (TSPTW) is the problem of finding a minimum-cost path visiting a set of cities exactly once, where each city must be visited within a specific time window. We propose a hybrid approach for solving the TSPTW that merges Constraint Programming propagation algorithms for the feasibility viewpoint (find a path), and Operations Research techniques for coping with the optimization perspective (find the best path). We show with extensive computational results that the synergy between Operations Research optimization techniques embedded in global constraints, and Constraint Programming constraint solving techniques, makes the resulting framework effective in the TSPTW context also if these results are compared with state-of-the-art algorithms from the literature.

Journal ArticleDOI
TL;DR: This paper forms the airline crew assignment problem as a constraint satisfaction problem, thus gaining high expressiveness and introducing an additional constraint which encapsulates a shortest path algorithm for generating columns with negative reduced costs.
Abstract: Airline crew assignment problems are large-scale optimization problems which can be adequately solved by column generation. The subproblem is typically a so-called constrained shortest path problem and solved by dynamic programming. However, complex airline regulations arising frequently in European airlines cannot be expressed entirely in this framework and limit the use of pure column generation. In this paper, we formulate the subproblem as a constraint satisfaction problem, thus gaining high expressiveness. Each airline regulation is encoded by one or several constraints. An additional constraint which encapsulates a shortest path algorithm for generating columns with negative reduced costs is introduced. This constraint reduces the search space of the subproblem significantly. Resulting domain reductions are propagated to the other constraints which additionally reduces the search space. Numerical results based on data of a large European airline are presented and demonstrate the potential of our approach.

Journal Article
TL;DR: This work presents a model of temporal concurrent constraint programming which adds to tcc the capability of modeling asynchronous and nondeterministic timed behavior, and calls this tcc extension the ntcc calculus, which gives a denotational semantics for the strongest-postcondition of ntCC processes.
Abstract: The tcc model is a formalism for reactive concurrent constraint programming. We present a model of temporal concurrent constraint programming which adds to tcc the capability of modeling asynchronous and nondeterministic timed behavior. We call this tcc extension the ntcc calculus. We also give a denotational semantics for the strongest-postcondition of ntcc processes and, based on this semantics, we develop a proof system for linear-temporal properties of these processes. The expressiveness of ntcc is illustrated by modeling cells, timed systems such as RCX controllers, multi-agent systems such as the Predator/Prey game, and musical applications such as generation of rhythms patterns and controlled improvisation.

Journal ArticleDOI
TL;DR: In this article, the structure of the set of probabilistically efficient points of binary random vectors is analyzed, and a branch-and-bound algorithm for probabilistic set-covering problems is proposed.
Abstract: In a probabilistic set-covering problem the right-hand side is a random binary vector and the covering constraint has to be satisfied with some prescribed probability. We analyze the structure of the set of probabilistically efficient points of binary random vectors, develop methods for their enumeration, and propose specialized branch-and-bound algorithms for probabilistic set-covering problems.

Book
01 Jan 2002
TL;DR: This thesis presents design, application, implementation, and evaluation of computation spaces as abstractions for programming constraint services at a high level and the resulting implementation is shown to be competitive with existing constraint programming systems.
Abstract: This thesis presents design, application, implementation, and evaluation of computation spaces as abstractions for programming constraint services at a high level. Spaces are seamlessly integrated into a concurrent programming language and make constraintbased computations compatible with concurrency through encapsulation. Spaces are applied to search and combinators as essential constraint services. Stateof-the-art and new search engines such as visual interactive search and parallel search are covered. Search is expressive and concurrency-compatible by using copying rather than trailing. Search is space and time efficient by using recomputation. Composable combinators, also known as deep-guard combinators, stress the control facilities and concurrency integration of spaces. The implementation of spaces comes as an orthogonal extension to the implementation of the underlying programming language. The resulting implementation is shown to be competitive with existing constraint programming systems.

Posted Content
TL;DR: In this article, a quantified inequality constraint over the reals is a formula in the first-order predicate language over the structure of the real numbers, where the allowed predicate symbols are $\leq$ and $<$.
Abstract: Let a quantified inequality constraint over the reals be a formula in the first-order predicate language over the structure of the real numbers, where the allowed predicate symbols are $\leq$ and $<$. Solving such constraints is an undecidable problem when allowing function symbols such $\sin$ or $\cos$. In the paper we give an algorithm that terminates with a solution for all, except for very special, pathological inputs. We ensure the practical efficiency of this algorithm by employing constraint programming techniques.

Journal ArticleDOI
TL;DR: In this article, a constrained precast scheduling model that incorporates the key constraints and objectives considered by production schedulers is described, and a capacity-based backward-scheduling earliest due date rule and a constraint programming approach are developed to solve the model.
Abstract: Current scheduling practices in precast plants are fairly basic and depend greatly on experience. This may lead to inefficient resource utilization, over-inventory, and/or missing delivery dates. Computer assisted scheduling may therefore be useful in creating better production schedules. This paper illustrates how constraint programming (CP) can be used in production scheduling for precast plants. The paper describes a constrained precast scheduling model that incorporates the key constraints and objectives considered by production schedulers. A capacity-based backward-scheduling earliest due date rule and a CP approach are developed to solve the model. The CP approach is computationally efficient, even though it incorporates many problem-derived constraints. The efficiency of the CP approach lies in the fact that the representation (model) is separated from the algorithm (solver). Strategies to improve the performance of the CP approach are identified, and the CP approach is compared against commonly used heuristic rules on an example problem.

Journal Article
TL;DR: The Adaptive Constraint Engine (ACE) as discussed by the authors learns search-order heuristics from problem-solving experience, which is used to automate the application of constraint programming expertise and the extraction of domain-specific expertise.
Abstract: The Adaptive Constraint Engine (ACE) seeks to automate the application of constraint programming expertise and the extraction of domain-specific expertise. Under the aegis of FORR, an architecture for learning and problem-solving, ACE learns search-order heuristics from problem solving experience. This paper describes ACE's approach, as well as new experimental results on specific problem classes. ACE is both a test-bed for CSP research and a discovery environment for new algorithms.

Book ChapterDOI
21 Aug 2002
TL;DR: An extension of constraint logic programming that allows for weighted partial satisfaction of soft constraints is described and applied to the development of an automated timetabling system for Purdue University.
Abstract: An extension of constraint logic programming that allows for weighted partial satisfaction of soft constraints is described and applied to the development of an automated timetabling system for Purdue University. The soft-constraint solver implemented in the proposed solution approach allows constraint propagation for hard constraints together with preference propagation for soft constraints. A new repair search algorithm is proposed to improve upon initially generated (partial) assignments of the problem variables. The model and search methods applied to the solution of the large lecture room component are presented and discussed along with the computational results.

Journal ArticleDOI
TL;DR: The purpose of this paper is to illustrate, using OPL, the constraint-programming approach to combinatorial optimization and the complementary strengths of constraint and integer programming.
Abstract: In recent years, it has been increasingly recognized that constraint and integer programming have orthogonal and complementary strengths in stating and solving combinatorial optimization applications. In addition, their integration has become an active research topic. The optimization programming language OPL was a first attempt at integrating these technologies both at the language and at the solver levels. In particular, OPL is a modeling language integrating the rich language of constraint programming and the ability to specify search procedures at a high level of abstraction. Its implementation includes both constraint and mathematical programming solvers, as well as some cooperation schemes to make them collaborate on a given problem. The purpose of this paper is to illustrate, using OPL, the constraint-programming approach to combinatorial optimization and the complementary strengths of constraint and integer programming.

Book ChapterDOI
09 Sep 2002
TL;DR: The Adaptive Constraint Engine is described, both a test-bed for CSP research and a discovery environment for new algorithms, as well as new experimental results on specific problem classes.
Abstract: The Adaptive Constraint Engine (ACE) seeks to automate the application of constraint programming expertise and the extraction of domain-specific expertise. Under the aegis of FORR, an architecture for learning and problem-solving, ACE learns search-order heuristics from problem solving experience. This paper describes ACE?s approach, as well as new experimental results on specific problem classes. ACE is both a test-bed for CSP research and a discovery environment for new algorithms.

Book ChapterDOI
Lucas Bordeaux1, Eric Monfroy1
09 Sep 2002
TL;DR: In this paper, the authors consider the generalization of the satisfiability problem with arbitrary quantifiers, and propose quantified arc-consistency as a natural extension of the classical CSP notion.
Abstract: The generalization of the satisfiability problem with arbitrary quantifiers is a challenging problem of both theoretical and practical relevance. Being PSPACE-complete, it provides a canonical model for solving other PSPACE tasks which naturally arise in AI.Effective SAT-based solvers have been designed very recently for the special case of boolean constraints. We propose to consider the more general problem where constraints are arbitrary relations over finite domains. Adopting the viewpoint of constraint-propagation techniques so successful for CSPs, we provide a theoretical study of this problem. Our main result is to propose quantified arc-consistency as a natural extension of the classical CSP notion.

Proceedings ArticleDOI
06 Jul 2002
TL;DR: This work shows how to convert TAG generation problems into dependency parsing problems, which is useful because optimizations in recent dependency parsers based on constraint programming tackle exactly the combinatorics that make generation hard.
Abstract: Natural-Language Generation from flat semantics is an NP-complete problem. This makes it necessary to develop algorithms that run with reasonable efficiency in practice despite the high worst-case complexity. We show how to convert TAG generation problems into dependency parsing problems, which is useful because optimizations in recent dependency parsers based on constraint programming tackle exactly the combinatorics that make generation hard. Indeed, initial experiments display promising runtimes.

Journal ArticleDOI
TL;DR: This paper presents a realistic planning problem of the chemical industry, which has been successfully treated with a hybrid approach to MIP/CP algorithms, and develops a very efficient hybrid MIP-CP solution strategy.
Abstract: There have been several reports on successful application of hybrid MIP/CP algorithms for solving otherwise difficult or intractable problems. However, the practical examples presented in many papers suffer from the fact that they are far away from being realistic, in terms of both their size and their complexity. This paper presents a realistic planning problem of the chemical industry, which has been successfully treated with a hybrid approach.

Journal ArticleDOI
TL;DR: In this article, a declarative meta-programming approach is adopted to explicitly codify patterns in object-oriented programs, and the patterns become an active part of the software development and maintenance environment.
Abstract: In current-day software development, programmers often use programming patterns to clarify their intents and to increase the understandability of their programs. Unfortunately, most software development environments do not adequately support the declaration and use of such patterns. To explicitly codify these patterns, we adopt a declarative meta programming approach. In this approach, we reify the structure of a (object-oriented) program in terms of logic clauses. We declare programming patterns as logic rules on top of these clauses. By querying the logic system, these rules allow us to check, enforce and search for occurrences of certain patterns in the software. As such, the programming patterns become an active part of the software development and maintenance environment. (C) 2002 Elsevier Science Ltd. All rights reserved.

Journal ArticleDOI
TL;DR: A way of exploiting Operations Research techniques within global constraints for cost-based domain filtering by encapsulating in global constraints optimization components representing suitable relaxations of the constraint itself.
Abstract: In this paper, we propose a way of exploiting Operations Research techniques within global constraints for cost-based domain filtering. In Constraint Programming, constraint propagation is aimed at removing from variable domains combinations of values which are proven infeasible. Pruning derives from i>feasibility reasoning. When coping with optimization problems, pruning can be performed also on the basis of costs, i.e., i>optimality reasoning. Cost-based filtering removes combination of values which are proven sub-optimal. For this purpose, we encapsulate in global constraints optimization components representing suitable relaxations of the constraint itself. These components embed efficient Operations Research algorithms computing the optimal solution of the relaxed problem and a gradient function representing the estimated cost of each variable-value assignment. We exploit these pieces of information for pruning and for guiding the search. We have applied these techniques to a couple of ILOG Solver global constraints (a constraint of difference and a path constraint) and tested the approach on a variety of combinatorial optimization problems such as Timetabling, Travelling Salesman Problems and Scheduling Problems with sequence dependent setup times. Comparisons with pure Constraint Programming approaches and related literature clearly show the benefits of the proposed approach.

Journal ArticleDOI
TL;DR: This paper presents a hybridization of a Constraint Programming model and search techniques with Local Search (LS) and some ideas borrowed from Genetic Algorithms (GA) to create an algorithm that has sufficient flexibility to solve most instances with a small amount of customization.
Abstract: This paper presents a hybridization of a Constraint Programming (CP) model and search techniques with Local Search (LS) and some ideas borrowed from Genetic Algorithms (GA). The context is the physician rostering problem, whose instances can vary greatly and for which almost no general tool has been developed. It is hoped that the combination of the three techniques will lead to an algorithm that has sufficient flexibility to solve most instances with a small amount of customization. To achieve this goal we also introduce Generic constraints: these constraints are used to model several types of ergonomic constraints that are found amongst physician rostering problems.

Book ChapterDOI
21 Aug 2002
TL;DR: This work has worked extensively with Major League Baseball on creating what-if schedules for various league formats, and has depended on breaking the schedule into easily solvable pieces.
Abstract: Real sports scheduling problems are difficult to solve due to the variety of different constraints that might be imposed. Over the last decade, through the work of a number of researchers, it has become easier to solve round-robin tournament problems. These tournaments can then become building blocks for more complicated schedules. For example, we have worked extensively with Major League Baseball on creating “what-if” schedules for various league formats. Success in providing those schedules has depended on breaking the schedule into easily solvable pieces. Integer programming and constraint programming methods each have their places in this approach, depending on the constraints and objective function.

Patent
13 Dec 2002
TL;DR: In this paper, a new constraint solver for static analysis of software programs is presented, which combines rewrite rules with arithmetic constraint solving to provide an efficient and accurate static software analysis tool.
Abstract: A method and apparatus are provided for analyzing software programs. The invention combines data flow analysis and symbolic execution with a new constraint solver to create a more efficient and accurate static software analysis tool. The disclosed constraint solver combines rewrite rules with arithmetic constraint solving to provide a constraint solver that is efficient, flexible and capable of satisfactorily expressing semantics and handling arithmetic constraints. The disclosed constraint solver comprises a number of data structures to remember existing range, equivalence and inequality constraints and incrementally add new constraints. The constraint solver returns an inconsistent indication only if the range constraints, equivalence constraints, and inequality constraints are mutually inconsistent.

Proceedings ArticleDOI
15 Apr 2002
TL;DR: It is shown that it is quick and easy to use CO2P3S to generate structurally correct parallel programs with good speed-ups on shared-memory computers.
Abstract: Object-oriented programming, design patterns, and frameworks are common techniques that have been used to reduce the complexity of sequential programming. We have applied these techniques to the more difficult domain of parallel programming. This paper describes CO2P3S, a pattern-based parallel programming system that generates parallel programs from parallel design patterns. We demonstrate CO2P3S by applying a new design pattern called the Wavefront pattern to three problems. We show that it is quick and easy to use CO2P3S to generate structurally correct parallel programs with good speed-ups on shared-memory computers.