1,788 research outputs found
Solving the Resource Constrained Project Scheduling Problem with Generalized Precedences by Lazy Clause Generation
The technical report presents a generic exact solution approach for
minimizing the project duration of the resource-constrained project scheduling
problem with generalized precedences (Rcpsp/max). The approach uses lazy clause
generation, i.e., a hybrid of finite domain and Boolean satisfiability solving,
in order to apply nogood learning and conflict-driven search on the solution
generation. Our experiments show the benefit of lazy clause generation for
finding an optimal solutions and proving its optimality in comparison to other
state-of-the-art exact and non-exact methods. The method is highly robust: it
matched or bettered the best known results on all of the 2340 instances we
examined except 3, according to the currently available data on the PSPLib. Of
the 631 open instances in this set it closed 573 and improved the bounds of 51
of the remaining 58 instances.Comment: 37 pages, 3 figures, 16 table
Faster Graph Coloring in Polynomial Space
We present a polynomial-space algorithm that computes the number independent
sets of any input graph in time for graphs with maximum degree 3
and in time for general graphs, where n is the number of
vertices. Together with the inclusion-exclusion approach of Bj\"orklund,
Husfeldt, and Koivisto [SIAM J. Comput. 2009], this leads to a faster
polynomial-space algorithm for the graph coloring problem with running time
. As a byproduct, we also obtain an exponential-space
time algorithm for counting independent sets. Our main algorithm
counts independent sets in graphs with maximum degree 3 and no vertex with
three neighbors of degree 3. This polynomial-space algorithm is analyzed using
the recently introduced Separate, Measure and Conquer approach [Gaspers &
Sorkin, ICALP 2015]. Using Wahlstr\"om's compound measure approach, this
improvement in running time for small degree graphs is then bootstrapped to
larger degrees, giving the improvement for general graphs. Combining both
approaches leads to some inflexibility in choosing vertices to branch on for
the small-degree cases, which we counter by structural graph properties
A Computational Comparison of Optimization Methods for the Golomb Ruler Problem
The Golomb ruler problem is defined as follows: Given a positive integer n,
locate n marks on a ruler such that the distance between any two distinct pair
of marks are different from each other and the total length of the ruler is
minimized. The Golomb ruler problem has applications in information theory,
astronomy and communications, and it can be seen as a challenge for
combinatorial optimization algorithms. Although constructing high quality
rulers is well-studied, proving optimality is a far more challenging task. In
this paper, we provide a computational comparison of different optimization
paradigms, each using a different model (linear integer, constraint programming
and quadratic integer) to certify that a given Golomb ruler is optimal. We
propose several enhancements to improve the computational performance of each
method by exploring bound tightening, valid inequalities, cutting planes and
branching strategies. We conclude that a certain quadratic integer programming
model solved through a Benders decomposition and strengthened by two types of
valid inequalities performs the best in terms of solution time for small-sized
Golomb ruler problem instances. On the other hand, a constraint programming
model improved by range reduction and a particular branching strategy could
have more potential to solve larger size instances due to its promising
parallelization features
Models and Strategies for Variants of the Job Shop Scheduling Problem
Recently, a variety of constraint programming and Boolean satisfiability
approaches to scheduling problems have been introduced. They have in common the
use of relatively simple propagation mechanisms and an adaptive way to focus on
the most constrained part of the problem. In some cases, these methods compare
favorably to more classical constraint programming methods relying on
propagation algorithms for global unary or cumulative resource constraints and
dedicated search heuristics. In particular, we described an approach that
combines restarting, with a generic adaptive heuristic and solution guided
branching on a simple model based on a decomposition of disjunctive
constraints. In this paper, we introduce an adaptation of this technique for an
important subclass of job shop scheduling problems (JSPs), where the objective
function involves minimization of earliness/tardiness costs. We further show
that our technique can be improved by adding domain specific information for
one variant of the JSP (involving time lag constraints). In particular we
introduce a dedicated greedy heuristic, and an improved model for the case
where the maximal time lag is 0 (also referred to as no-wait JSPs).Comment: Principles and Practice of Constraint Programming - CP 2011, Perugia
: Italy (2011
Symmetry Breaking Constraints: Recent Results
Symmetry is an important problem in many combinatorial problems. One way of
dealing with symmetry is to add constraints that eliminate symmetric solutions.
We survey recent results in this area, focusing especially on two common and
useful cases: symmetry breaking constraints for row and column symmetry, and
symmetry breaking constraints for eliminating value symmetryComment: To appear in Proceedings of Twenty-Sixth Conference on Artificial
Intelligence (AAAI-12
Translation-based Constraint Answer Set Solving
We solve constraint satisfaction problems through translation to answer set
programming (ASP). Our reformulations have the property that unit-propagation
in the ASP solver achieves well defined local consistency properties like arc,
bound and range consistency. Experiments demonstrate the computational value of
this approach.Comment: Self-archived version for IJCAI'11 Best Paper Track submissio
Optimizing Abstract Abstract Machines
The technique of abstracting abstract machines (AAM) provides a systematic
approach for deriving computable approximations of evaluators that are easily
proved sound. This article contributes a complementary step-by-step process for
subsequently going from a naive analyzer derived under the AAM approach, to an
efficient and correct implementation. The end result of the process is a two to
three order-of-magnitude improvement over the systematically derived analyzer,
making it competitive with hand-optimized implementations that compute
fundamentally less precise results.Comment: Proceedings of the International Conference on Functional Programming
2013 (ICFP 2013). Boston, Massachusetts. September, 201
- …