Results 1 - 10
of
98
SCIP: solving constraint integer programs
, 2009
"... Constraint integer programming (CIP) is a novel paradigm which integrates constraint programming (CP), mixed integer programming (MIP), and satisfiability (SAT) modeling and solving techniques. In this paper we discuss the software framework and solver SCIP (Solving Constraint Integer Programs), wh ..."
Abstract
-
Cited by 122 (0 self)
- Add to MetaCart
Constraint integer programming (CIP) is a novel paradigm which integrates constraint programming (CP), mixed integer programming (MIP), and satisfiability (SAT) modeling and solving techniques. In this paper we discuss the software framework and solver SCIP (Solving Constraint Integer Programs), which is free for academic and non-commercial use and can be downloaded in source code. This paper gives an overview of the main design concepts of SCIP and how it can be used to solve constraint integer programs. To illustrate the performance and flexibility of SCIP, we apply it to two different problem classes. First, we consider mixed integer programming and show by computational experiments that SCIP is almost competitive to specialized commercial MIP solvers, even though SCIP supports the more general constraint integer programming paradigm. We develop new ingredients that improve current MIP solving technology. As a second application, we employ SCIP to solve chip design verification problems as they arise in the logic design of integrated circuits. This application goes far beyond traditional MIP solving, as it includes several highly non-linear constraints, which can be handled nicely within the constraint integer programming framework. We show anecdotally how the different solving techniques from MIP, CP, and SAT work together inside SCIP to deal with such constraint classes. Finally, experimental results show that our approach outperforms current state-of-the-art techniques for proving the validity of properties on circuits containing arithmetic.
A hybrid method for planning and scheduling
- In Procs. of the 10th Intern. Conference on Principles and Practice of Constraint Programming - CP 2004
, 2004
"... We combine mixed integer linear programming (MILP) and constraint programming (CP) to solve planning and scheduling problems. Tasks are allocated to facilities using MILP and scheduled using CP, and the two are linked via logic-based Benders decomposition. Tasks assigned to a facility may run in par ..."
Abstract
-
Cited by 44 (7 self)
- Add to MetaCart
(Show Context)
We combine mixed integer linear programming (MILP) and constraint programming (CP) to solve planning and scheduling problems. Tasks are allocated to facilities using MILP and scheduled using CP, and the two are linked via logic-based Benders decomposition. Tasks assigned to a facility may run in parallel subject to resource constraints (cumulative scheduling). We solve minimum cost problems, as well as minimum makespan problems in which all tasks have the same release date and deadline. We obtain computational speedups of several orders of magnitude relative to the state of the art in both MILP and CP. We address a fundamental class of planning and scheduling problems for manufacturing and supply chain management. Tasks must be assigned to facilities and scheduled subject to release dates and deadlines. Tasks may run in parallel on a given facility provided the total resource consumption at any time remains with limits (cumulative scheduling). In our study the objective is to minimize cost or minimize makespan. The problem naturally decomposes into an assignment portion and a scheduling portion. We exploit the relative strengths of mixed integer linear programming (MILP) and constraint programming (CP) by applying MILP to the assignment problem and CP to the scheduling problem. We then link the two with a logic-based Benders algorithm. We obtain speedups of several orders of magnitude relative to the existing state of the art in both mixed integer programming (CPLEX) and constraint programming (ILOG Scheduler). As a result we solve larger instances to optimality than could be solved previously. In minimum makespan problems, the Benders method provides a feasible solution and a lower bound on the optimal makespan even when it is terminated before finding a provably optimal solution. 1. The Basic Idea Benders decomposition solves a problem by enumerating values of certain primary variables. For each set of values enumerated, it solves the subproblem that results from fixing the primary variables to these values. Solution of the subproblem generates a Benders cut (a type of nogood) that the primary variables must satisfy in all subsequent solutions enumerated. The next set of values for the primary variables is
Branch-and-Check: A Hybrid Framework Integrating Mixed Integer Programming and Constraint Logic Programming
, 2001
"... We present Branch-and-Check, a hybrid framework integrating Mixed Integer Programming and Constraint Logic Programming, which encapsulates the traditional Benders Decomposition and Branch-and-Bound as special cases. In particular we describe its relation to Benders and the use of nogoods and linear ..."
Abstract
-
Cited by 37 (0 self)
- Add to MetaCart
We present Branch-and-Check, a hybrid framework integrating Mixed Integer Programming and Constraint Logic Programming, which encapsulates the traditional Benders Decomposition and Branch-and-Bound as special cases. In particular we describe its relation to Benders and the use of nogoods and linear relaxations. We give two examples of how problems can be modelled and solved using Branch-and-Check and present computational results demonstrating more than order-of-magnitude speedup compared to previous approaches. We also mention important future research issues such as hierarchical, dynamic and adjustable linear relaxations.
Constraint Integer Programming: a New Approach to integrate CP and MIP
, 2008
"... This article introduces constraint integer programming (CIP), which is a novel way to combine constraint programming (CP) and mixed integer programming (MIP) methodologies. CIP is a generalization of MIP that supports the notion of general constraints as in CP. This approach is supported by the CIP ..."
Abstract
-
Cited by 34 (7 self)
- Add to MetaCart
This article introduces constraint integer programming (CIP), which is a novel way to combine constraint programming (CP) and mixed integer programming (MIP) methodologies. CIP is a generalization of MIP that supports the notion of general constraints as in CP. This approach is supported by the CIP framework SCIP, which also integrates techniques from SAT solving. SCIP is available in source code and free for noncommercial use. We demonstrate the usefulness of CIP on two tasks. First, we apply the constraint integer programming approach to pure mixed integer programs. Computational experiments show that SCIP is almost competitive to current state-of-the-art commercial MIP solvers. Second, we employ the CIP framework to solve chip design verification problems, which involve some highly non-linear constraint types that are very hard to handle by pure MIP solvers. The CIP approach is very effective here: it can apply the full sophisticated MIP machinery to the linear part of the problem, while dealing with the non-linear constraints by employing constraint programming techniques.
SCIP - a framework to integrate Constraint and Mixed Integer Programming
, 2005
"... Constraint Programs and Mixed Integer Programs are closely re-lated optimization problems originating from different scientific areas. Today’s state-of-the-art algorithms of both fields have several strategies in common, in particular the branch-and-bound process to recursively divide the problem in ..."
Abstract
-
Cited by 33 (2 self)
- Add to MetaCart
(Show Context)
Constraint Programs and Mixed Integer Programs are closely re-lated optimization problems originating from different scientific areas. Today’s state-of-the-art algorithms of both fields have several strategies in common, in particular the branch-and-bound process to recursively divide the problem into smaller subproblems. On the other hand, the main techniques to process each subproblem are different, and it was observed that they have complementary strengths. We present the programming framework Scip that integrates tech-niques from both fields in order to exploit the strengths of both, Con-straint Programming and Mixed Integer Programming. In contrast to other proposals of recent years to combine both fields, Scip does not focus on easy implementation and rapid prototyping, but is tai-lored towards expert users in need of full, in-depth control and high performance.
Program does not equal program: Constraint programming and its relationship to mathematical programming
- Interfaces
"... Arising from research in the computer science community, constraint programming is a fairly new technique for solving optimization problems. For those familiar with mathematical programming, a number of language barriers make it difficult to understand the concepts of constraint programming. In this ..."
Abstract
-
Cited by 30 (1 self)
- Add to MetaCart
Arising from research in the computer science community, constraint programming is a fairly new technique for solving optimization problems. For those familiar with mathematical programming, a number of language barriers make it difficult to understand the concepts of constraint programming. In this short tutorial on constraint programming, we explain how it relates to familiar mathematical programming concepts and how constraint programming and mathematical programming technologies are complementary. We assume a minimal background in linear and integer programming. G eorge Dantzig [1963] invented the simplex method for linear programming in 1947 and first described it in a paper entitled “Programming in a linear structure ” [Dantzig 1948, 1949]. Fifty years later, linear programming is now a strategictechnique used by thousands of businesses trying to optimize their global operations. In the mid-1980s, researchers developed constraint programming as a computer science technique by combining developments in the artificial intelligence community with the development of new computer programming languages. Fifteen years later, constraint programming is now being seen as an important technique that complements traditional mathematical programming technologies as businesses continue to look for ways to optimize their business operations. Developed independently as a technique within the computer science literature, constraint programming is now getting attention from the operations research com-
STATE-OF-THE-ART REVIEW OF OPTIMIZATION METHODS FOR SHORT-TERM SCHEDULING OF BATCH PROCESSES
, 2005
"... There has been significant progress in the area of short-term scheduling of batch processes, including the solution of industrial-sized problems, in the last 20 years. The main goal of this paper is to provide an up-to-date review of the state-of-the-art in this challenging area. Main features, stre ..."
Abstract
-
Cited by 30 (9 self)
- Add to MetaCart
There has been significant progress in the area of short-term scheduling of batch processes, including the solution of industrial-sized problems, in the last 20 years. The main goal of this paper is to provide an up-to-date review of the state-of-the-art in this challenging area. Main features, strengths and limitations of existing modeling and optimization techniques as well as other available major solution methods are examined through this paper. We first present a general classification for scheduling problems of batch processes as well as for the corresponding optimization models. Subsequently, the modeling of representative optimization approaches for the different problem types are introduced in detail, focusing on both discrete and continuous time models. A comparison of effectiveness and efficiency of these models is given for two benchmarking examples from the literature. We also discuss two real-world applications of scheduling problems that cannot be readily accommodated using existing methods. For the sake of completeness, other alternative solution methods applied in the field of scheduling are also reviewed, followed by a discussion related to solving large-scale problems through rigorous optimization approaches. Finally, we list available academic and commercial software and briefly address the issue of rescheduling capabilities of the various optimization approaches.
Allocation and scheduling for mpsocs via decomposition and no-good generation
- In Procs. of the 11th Intern. Conference on Principles and Practice of Constraint Programming - CP 2005
, 2005
"... This paper proposes a decomposition approach to the allocation and scheduling of a multi-task application on a multiprocessor system-on-chip (MPSoCs) [Wolf, 2004]. This is currently one of the most critical problems in electronic design automation for Very-Large Scale Integrated (VLSI) circuits. Wit ..."
Abstract
-
Cited by 27 (13 self)
- Add to MetaCart
This paper proposes a decomposition approach to the allocation and scheduling of a multi-task application on a multiprocessor system-on-chip (MPSoCs) [Wolf, 2004]. This is currently one of the most critical problems in electronic design automation for Very-Large Scale Integrated (VLSI) circuits. With the limits of chip integration reaching beyond one billion of elementary devices, current advanced integrated hardware platforms for high-end consumer application (e.g. multimedia-enabled phones) contain multiple processors and memories, as well as complex on-chip interconnects. The hardware resources in these MPSoCs need to be optimally allocated and scheduled under tight throughput constraints when executing a target software workload (e.g. a video decoder). The multi-processor system
Combinatorial Benders’ Cuts for Mixed-Integer Linear Programming
- Operations Research
"... Mixed-Integer Programs (MIP’s) involving logical implications modelled through big-M coefficients, are notoriously among the hardest to solve. In this paper we propose and analyze computationally an automatic problem reformulation of quite general applicability, aimed at removing the model dependenc ..."
Abstract
-
Cited by 24 (1 self)
- Add to MetaCart
(Show Context)
Mixed-Integer Programs (MIP’s) involving logical implications modelled through big-M coefficients, are notoriously among the hardest to solve. In this paper we propose and analyze computationally an automatic problem reformulation of quite general applicability, aimed at removing the model dependency on the big-M coefficients. Our solution scheme defines a master Integer Linear Problem (ILP) with no continuous variables, which contains combinatorial information on the feasible integer variable combinations that can be “distilled ” from the original MIP model. The master solutions are sent to a slave Linear Program (LP), which validates them and possibly returns combinatorial inequalities to be added to the current master ILP. The inequalities are associated to minimal (or irreducible) infeasible subsystems of a certain linear system, and can be separated efficiently in case the master solution is integer. The overall solution mechanism resembles closely the Benders ’ one, but the cuts we produce are purely combinatorial and do not depend on the big-M values used in the MIP formulation. This produces an LP relaxation of the master problem which can be considerably tighter than the one associated with original MIP formulation. Computational results on two specific classes of hard-to-solve MIP’s indicate the new method produces a reformulation which can be solved some orders of magnitude faster than the original MIP model.