Article

# On the system of two all_different predicates

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

## Abstract

The polytope defined by the convex hull of integer vectors satisfying the system of the two all_different predicates was examined. The dimension of this polytope was established and subsequently two classes of facet-defining inequalities were also exhibited. A separation algorithm of low complexity, which provided only the facet-defining inequalities violated by a given vector was introduced. The obtained results could be directly applied to the optimization problem involving the maximization of a linear function over the system of two all_different predicates.

## No full-text available

... As remarked in section 2, checking feasibility in such a setting is trivial. In [1], a somewhat different aspect of this setting is considered. Assume that the set D is labelled by the set of integers 0, 1, . . . ...
... Now what is the structure of the polytope defined by the convex hull of integer vectors corresponding to feasible solutions? The authors of [1] establish the dimension of this polytope, and also obtain classes of facet-defining inequalities. We consider the variant where dimensions / variables are associated with each edge of the graph, rather than each vertex in X. Viewed as a purely graphtheoretic decision/optimisation problem, this makes eminent sense as it directly generalises the well-studied matching polytope (see for instance [11]): we wish to assign 0,1 values to each edge variable (a value of 1 for an edge corresponds to putting this edge into the solution M , 0 corresponds to omitting this edge) such that all vertices of X (or as many as possible) have an incident edge in M , and M is a feasible solution. ...
... The corresponding linear program replaces the last condition above by ∀e : x e ∈ [0, 1]. Let P I denote the convex hull of integer solutions to the integer program, and let P L denote the convex hull of feasible solutions to the linear program. ...
Article
Full-text available
... We let P X be the convex hull of feasible solutions in the finite-domain model (1) and P Y be the convex hull of feasible solutions in the 0-1 model (2). The finite-domain variables x i are readily expressed in terms of the 0-1 variables y ij : ...
... , n}. The facial structure of a system of two all-different constraints is studied in [1,2]. Facets for general all-different systems are derived for combs in [9,10,12] and for odd holes and webs in [11]. ...
Article
Full-text available
We explore the idea of obtaining valid inequalities for a 0–1 model from a finite-domain constraint programming formulation of the problem. In particular, we formulate a graph coloring problem as a system of all-different constraints. By analyzing the polyhedral structure of all-different systems, we obtain facet-defining inequalities that can be mapped to valid cuts in the classical 0–1 model of the problem. We focus on cuts corresponding to cycles and webs and show that they are stronger than known cuts for these structures. We also identify path cuts and show they do not strengthen the bound. Computational experiments for a set of benchmark instances reveal that finite-domain cycle cuts often deliver tighter bounds, in less time, than classical 0–1 cuts.
... Related research on binary constraint satisfaction problems appears in [2,21]. Furthermore, the linear representation of various systems of alldifferent constraints has been studied [1,3,15,16]. ...
... Rather, they address a wide spectrum of models composed of structures having the submodular/supermodular representation property. Examples of such models include the intersection of two alldifferent constraints [1], two polymatroids associated with matroids on distinct ground sets, etc. ...
Article
Full-text available
Submodularity defines a general framework rich of important theoretical properties while accommodating numerous applications. Although the notion has been present in the literature of Combinatorial Optimization for several decades, it has been overlooked in the analysis of global constraints. The current work illustrates the potential of submodularity as a powerful tool for such an analysis. In particular, we show that the cumulative constraint, when all tasks are identical, has the submodular/supermodular representation property, i.e., it can be represented by a submodular/supermodular system of linear inequalities. Motivated by that representation, we show that the system of any two (global) constraints not necessarily of the same type, each bearing the above-mentioned property, has an integral relaxation given by the conjunction of the linear inequalities representing each individual constraint. This result is obtained through the use of the celebrated polymatroid intersection theorem.
... As remarked in Section 2, checking feasibility in such a setting is trivial. In [1], a somewhat different aspect of this setting is considered. Assume that the set D is labelled by the set of integers 0, 1,. ...
... Now what is the structure of the polytope defined by the convex hull of integer vectors corresponding to feasible solutions? The authors of [1] establish the dimension of this polytope and also obtain classes of facetdefining inequalities. ...
Article
Given a bipartite graph G=(X∪˙D,E⊆X×D), an X-perfect matching is a matching in G that covers every node in X. In this paper we study the following generalisation of the X-perfect matching problem, which has applications in constraint programming: Given a bipartite graph as above and a collection F⊆X2F⊆2X of k subsets of X, find a subset M⊆EM⊆E of the edges such that for each C∈FC∈F, the edge set M∩(C×D)M∩(C×D) is a C-perfect matching in G (or report that no such set exists). We show that the decision problem is NP-complete and that the corresponding optimisation problem is in APX when k=O(1)k=O(1) and even APX-complete already for k=2k=2. On the positive side, we show that a 2/(k+1)2/(k+1)-approximation can be found in poly(k,|X∪D|)poly(k,|X∪D|) time. We show also that such an approximation M can be found in time (k+(k2)2k−2)poly(|X∪D|), with the further restriction that each vertex in D has degree at most 2 in M.
... The special case in which G is a clique is the familiar AllDifferent constraint. Another special case that has received some attention is the case of two AllDifferent constraints sharing some of their variables [1]. ...
... If a valid coloring exists, we say the graph is colorable. 1 Valid colorings correspond to assignments respecting the SomeDifferent constraint. We view a coloring of the graph as a collection of individual point colorings, where by point coloring we mean a coloring of a single vertex by one of the colors. ...
Conference Paper
Full-text available
We introduce the SomeDifferent constraint as a generalization of AllDifferent. SomeDifferent requires that values assigned to some pairs of variables will be different. It has many practical applications. For example, in workforce management, it may enforce the requirement that the same worker is not assigned to two jobs which are overlapping in time. Propagation of the constraint for hyper-arc consistency is NP hard. We present a propagation algorithm with worst case time complexity O(n 3β n ) where n is the number of variables and β≈3.5 (ignoring a trivial dependence on the representation of the domains). We also elaborate on several heuristics which greatly reduce the algorithm’s running time in practice. We provide experimental results, obtained on a real-world workforce management problem and on synthetic data, which demonstrate the feasibility of our approach.
... Based on the approach presented in [5], the objective of this paper is to give a complete characterization of the polytope of two at-least predicates interacting. Similar work has been done in [10] for all-different predicate where a complete characterization is first given and then this has seen much progress in [1] where the polytope of two all-different predicates considered simultaneously is demonstrated. Although, in [8] are given some facets of multiple all-different predicates we are still missing a complete characterization. ...
... at-least m {x 1 , x 2 , . . . , x n } = k (1) means that at least m of the n variables, with integral domain [0, l], will take on value k. ...
Article
Full-text available
Constraint programming is a powerful tool for modeling various problems in operations research. Its strength lies in the use of predicates, or global high-level constraints, on a few variables to efficiently model complex and varied problem structures. In this paper, we consider the interactions of two instance of the predicate at-least. Each predicate ensures that a subset of a set of integer variables takes on a specified value. The convex hull of a single such predicate is known but the hull of intersecting predicates is still an open question. We have completely determined the convex hull representation of two intersecting predicates and provide a polynomial separation algorithm for inclusion in branch-and-bound integer programming software. We also characterize a number of facets of the intersection of two at-least predicates.
... In this paper we are interested in extending the seminal work of [15] where the complete characterization of the all-different predicate was first demonstrated. This was then followed by [1] where two all-different predicates were considered and the polytope was characterized. Also followed by [2], [3] where a graph coloring model was used to find valid inequalities. ...
Article
Full-text available
Constraint programming is a powerful tool for modeling various problems in operations research. Its strength lies in the use of predicates, or global high-level constraints, on a few variables to efficiently model complex and varied problem structures. In this paper, we consider the predicate at-least. It bounds the number of variables in a set that may receive a specific value. This is a generalization of the standard logic condition expressed when the sum of binary variables is expressing a lower bound on the cardinality of a set. We have completely determined the convex hull representation of this predicate and provide a polynomial separation algorithm for inclusion in branch-and-bound integer programming software.
... The last example presented describes such a model for the all different predicate [4]. Further examples are the symmetric all different predicate [5] and the system of two all different predicates [6]. Thus, the definition of a maximum cardinality matching constraint provides a framework encompassing other predicates. ...
Article
Full-text available
Finding a maximum cardinality matching in a graph is a problem appearing in numerous settings. The problem asks for a set of edges of maximum cardinality, such that no two edges of this set have an endpoint in common. The variety of applications of this problem, along with the fact that several logic predicates can be modelled after it, motivates the study of a related global constraint in the context of Constraint Programming. In this work, we describe a filtering scheme for such a predicate based on matroids. Our method guarantees hyper-arc consistency in polynomial time. It is also applicable to any predicate expressed in terms of an independent system, and remains of polynomial complexity if there exists a polynomial time algorithm for finding a maximum cardinality basis of this independent system. Furthermore, we show that this filtering scheme can be employed to find a maximum cardinality matching.
... The case of a single all different constraint is easy to solve, as it represents bipartite matching. The case of two simultaneously applied all different constraints was studied by Appa, Magos, and Mourtos (2005). The general case of multiple simultaneously applied all different constraints is, in some sense, equivalent to graph colouring. ...
Article
Full-text available
Vertex colouring is a well-known problem in combinatorial optimisation, whose alternative integer programming formulations have recently attracted considerable attention. This paper briefly surveys seven known formulations of vertex colouring and introduces a formulation of vertex colouring using a suitable clique partition of the graph. This formulation is applicable in timetabling applications, where such a clique partition of the conflict graph is given implicitly. In contrast with some alternatives, the presented formulation can also be easily extended to accommodate complex performance indicators (soft constraints'') imposed in a number of real-life course timetabling applications. Its performance depends on the quality of the clique partition, but encouraging empirical results for the Udine Course Timetabling problem are reported.
... In many cases, it is practical to reformulate a problem with 0-1 variables for purposes of relaxation, but ideally one would generate cuts in the original finitedomain variables. Finite-domain cuts have been derived for a few constraints, such as alldiff systems (graph coloring) [2,3,10,11,37,38], the circuit constraint (which can be used to formulate the traveling salesman problem) [19], and disjunctive scheduling [29]. Yet much remains to be done. ...
Article
Full-text available
Although best known for his work in symbolic logic, George Boole made seminal contributions in the logic of probabilities. He solved the probabilistic inference problem with a projection method, leading to the insight that inference (as well as optimization) is essentially a projection problem. This unifying perspective has applications in constraint programming, because consistency maintenance is likewise a form of inference that can be conceived as projection. Viewing consistency in this light suggests a concept of J-consistency, which is achieved by projection onto a subset J of variables. We show how this projection problem can be solved for the satisfiability problem by logic-based Benders decomposition. We also solve it for among, sequence, regular, and all-different constraints. Maintaining J-consistency for global constraints can be more effective than maintaining traditional domain and bounds consistency when propagating through a richer structure than a domain store, such as a relaxed decision diagram. This paper is written in recognition of Boole’s 200th birthday.
... All facets for a single all-different constraint are given in [5, 14] . The facial structure of a system of two all-different constraints is studied in [1, 2]. Facets for general all-different systems are derived for comb structures in [7, 8, 10] and for odd holes and webs in [9]. ...
Conference Paper
Full-text available
We explore the idea of obtaining valid inequalities for a 0-1 model from a constraint programming formulation of the problem. In particular, we formulate a graph coloring problem as a system of all-different constraints. By analyzing the polyhedral structure of alldiff systems, we obtain facet-defining inequalities that can be mapped to valid cuts in the classical 0-1 model of the problem. We focus on cuts corresponding to cyclic structures and show that they are stronger than known cuts. For example, when an existing separation algorithm identifies odd hole cuts, we can supply stronger cuts with no additional calculation. In addition, we generalize odd hole cuts to odd cycle cuts that are stronger than any collection of odd hole cuts.
... Besides encoding more complex global cardinality constraints, conjunctions of among constraints, (CAC), appear in many problems, such as Sudoku or latin squares. In consequence, CACs have been previously studied [10,32,38], specially the particular case of conjunctions of AllDiff constraints [2,3,9,13,22,23,25]. Although deciding the satisfiability of an arbitrary conjunction of among constraints is NP-complete [32] this body of work shows that sometimes there are benefits in reasoning about the interaction between the among constraints. ...
Article
Many existing global constraints can be encoded as a conjunction of among constraints. An among constraint holds if the number of the variables in its scope whose value belongs to a prespecified set, which we call its range, is within some given bounds. It is known that domain filtering algorithms can benefit from reasoning about the interaction of among constraints so that values can be filtered out taking into consideration several among constraints simultaneously. The present pa- per embarks into a systematic investigation on the circumstances under which it is possible to obtain efficient and complete domain filtering algorithms for conjunctions of among constraints. We start by observing that restrictions on both the scope and the range of the among constraints are necessary to obtain meaningful results. Then, we derive a domain flow-based filtering algorithm and present several applications. In particular, it is shown that the algorithm unifies and generalizes several previous existing results.
Article
This paper examines the facial structure of the convex hull of integer vectors satisfying a system of alldifferent predicates, also called an alldifferent system. The underlying analysis is based on a property, called inclusion, pertinent to such a system. For the alldifferent systems for which this property holds, we present two families of facet-defining inequalities, establish that they completely describe the convex hull and show that they can be separated in polynomial time. Consequently, the inclusion property characterises a group of alldifferent systems for which the linear optimization problem (i.e. the problem of optimizing a linear function over that system) can be solved in polynomial time. Furthermore, we establish that, for systems with three predicates, the inclusion property is also a necessary condition for the convex hull to be described by those two families of inequalities. For the alldifferent systems that do not possess that property, we establish another family of facet-defining inequalities and an accompanied polynomial-time separation algorithm. All the separation algorithms are incorporated within a cutting-plane scheme and computational experience on a set of randomly generated instances is reported. In concluding, we show that the pertinence of the inclusion property can be decided in polynomial time. Keywords alldifferent predicate–Convex hull–Separation–Complexity
Conference Paper
Full-text available
The ability to specify CP programs in terms of a declara- tive model and a search procedure is instrumental to the industrial CP successes. Yet, writing search procedures is often dicult for novices or people accustomed to model & run approaches. The viewpoint adopted in this paper argues for the synthesis of a search from the declarative model to exploit the problem instance structures. The intent is not to eliminate the search. Instead, it is to have a default that performs adequately in the majority of cases while retaining the ability to write full-edged proce- dures. Empirical results demonstrate that the approach is viable, yielding procedures approaching and sometimes rivaling hand-crafted searches.
Article
One of the most important logic constraints is the constraint of difference. It is imposed on a set of discrete variables requiring that they receive pairwise distinct values. This construct, initially studied in the field of Artificial Intelligence (in particular, Constraint Programming), has numerous applications and important theoretical properties. In the current work, we show that the polytope associated with this constraint is a generalized polymatroid and thus totally dual integral. As a consequence the problem of optimizing a linear function when variables are restricted to take pairwise distinct values belongs to P. Furthermore, we prove that the above problem can be solved by the greedy algorithm in O(|J| · log|J|) steps where J denotes the set indexing the variables (to receive pairwise distinct values). We establish that the dual of the above problem can also be solved in the same number of steps.
Conference Paper
Given a bipartite graph G = (X [(È)\dot] D,E Í X D)G = (X \dot{\cup} D,E \subseteq X \times D), an X-perfect matching is a matching in G that covers every node in X. In this paper we study the following generalisation of the X-perfect matching problem, which has applications in constraint programming: Given a bipartite graph as above and a collection F Í 2X\mathcal{F} \subseteq 2^{X} of k subsets of X, find a subset M ⊆ E of the edges such that for each C Î FC \in \mathcal{F}, the edge set M ∩ (C× D) is a C-perfect matching in G (or report that no such set exists). We show that the decision problem is NP-complete and that the corresponding optimisation problem is in APX when k=O(1) and even APX-complete already for k=2. On the positive side, we show that a 2/(k+1)-approximation can be found in 2 k poly(k,|X ∪ D|) time.
Conference Paper
In this paper a general framework (based on soft constraints) to model and solve the fair allocation problem is proposed. Our formal approach allows to model different allocation problems, ranging from goods and resources allocation to task and chore division. Soft constraints are employed to find a fair solution by respecting the agent’s preferences; indeed these can be modeled in a natural fashion by using the semiring-based framework for soft constraints. The fairness property is considered following an economical point of view, that is, taking into account the notions of envy-freeness (each player likes its allocation at least as much as those that the other players receive, so it does not envy anybody else) and efficiency (there is no other division better for everybody, or better for some players and not worse for the others).
Article
We study the facial structure of the alldifferent system, i.e., the polytope (namely, PI ) defined as the convex hull of integer vectors satisfying such a system. We derive classes of facets for PI by examining induced subgraphs of the associated constraint graph. Some of these graphic structures (for example, odd holes, webs, etc.) are well known to induce facets of the set packing polytope, namely, PS. This is a rather surprising result, given that PS is defined in terms of binary variables whereas PI is defined in terms of integer variables receiving values from a discrete domain. As a consequence, the resulting facet-defining inequalities are different for PI and PS. Furthermore, we show that the families of facet-defining graphic structures for PI and PS do not coincide as we exhibit such a structure yielding facets for PI but not for PS. We also prove that the facets of PI come in pairs of the form (αx ≥ β, αx = δd) and show that the separation of the first implies that of the second (and vice versa). In addition, we provide the complete linear description of PI when the constraint graph of the alldifferent system is of degree 2.
Conference Paper
Many existing global constraints can be encoded as a conjunction of among constraints. An among constraint holds if the number of the variables in its scope whose value belongs to a prespecified set, which we call its range, is within some given bounds. It is known that domain filtering algorithms can benefit from reasoning about the interaction of among constraints so that values can be filtered out taking into consideration several among constraints simultaneously. The present paper embarks into a systematic investigation on the circumstances under which it is possible to obtain efficient and complete domain filtering algorithms for conjunctions of among constraints. We start by observing that restrictions on both the scope and the range of the among constraints are necessary to obtain meaningful results. Then, we derive a domain flow-based filtering algorithm and present several applications. In particular, it is shown that the algorithm unifies and generalizes several previous existing results.
Article
Full-text available
For many problems in scheduling and timetabling, the choice of a mathematical programming formulation is determined by the formulation of the graph colouring component. This paper briefly surveys seven known integer programming formulations of vertex colouring and introduces a new approach using “supernodes”. In the definition of George and McIntyre (SIAM J. Numer. Anal. 15(1):90–112, 1978), a “supernode” is a complete subgraph, within which every pair of vertices have the same neighbourhood outside of the subgraph. A polynomial-time algorithm for obtaining the best possible partition of an arbitrary graph into supernodes is given. This makes it possible to use any formulation of vertex multicolouring to encode vertex colouring. Results of empirical tests on benchmark instances in graph colouring (DIMACS) and timetabling (Udine Course Timetabling) are also provided and discussed. KeywordsVertex colouring-Graph colouring-Multicolouring-Supernode-Module-Integer programming
Conference Paper
Full-text available
This paper proposes a logic-based approach to optimization that combines solution methods from mathematicalprogrammingand logic programming. From mathematicalprogramming it borrows strategies for exploiting structure that have logic-based analogs. From logic programming it borrows methods for extracting information that are unavailable in a traditional mathematical programming framework. Logic-based methods also provide a unified approach to solving optimization problems with both quantitative and logical constraints. 1 Introduction The theory and practice of integer and mixed integer programming are based primarily on polyhedral methods. The thesis of this paper is that one can develop a parallel theory and practice using logic-based methods. The basic idea is to replace the essential elements of optimization methods with logical analogs. The integer variables are regarded as atomic propositions, and inequality constraints involving them are rewritten as logical formulas. In a b...
Chapter
Full-text available
This paper proposes a logic-based approach to optimization that combines solution methods from mathematical programming and logic programming. From mathematical programming it borrows strategies for exploiting structure that have logic-based analogs. From logic programming it borrows methods for extracting information that are unavailable in a traditional mathematical programming framework. Logic-based methods also provide a unified approach to solving optimization problems with both quantitative and logical constraints.
Article
Full-text available
We address the problem of finding a "tight" representation of complex logical constraints in a mixed integer programming model by describing a convex hull representation of cardinality rules. A cardinality rule asserts that if at least k of the propositions A 1 ; : : : ; Am are true, then at least l of the propositions B 1 ; : : : ; Bn are true. As rule-based systems and other types of logic modeling grow in popularity, logical rules and propositions can play an increasingly important role in mathematical programming models. Such simple logical constraints as "if A is produced, then either B or C must be produced" have long been a part of mathematical programming. But much more complex logic models are now being formulated, and they can also be embedded in mathematical programming models. A logic model is a description of a problem expressed in some logical formalism, usually propositional or predicate logic, from which facts about its solution can be deduced. Expert systems and other...
Chapter
Polyhedral combinatorics deals with the application of various aspects of the theory of polyhedra and linear systems to combinatorics. Over the past thirty years a great many researchers have shown how a large number of polyhedral concepts and results have elegant combinatorial consequences. Here, however, we concentrate our attention on developments over the last ten years.
Conference Paper
The global constraint sum can be used as a tool to implement summations over sets of variables whose indices are not known in advance. This paper has two major contributions. On the theoretical side, we present the convex hull relaxation for the sum constraint in terms of linear inequalities, whose importance in the context of hybrid models is then justified. On the practical side, we demonstrate the applicability of the sum constraint in a scheduling problem that arises as part of the development of new products in the pharmaceutical and agrochemical industries. This problem can be modeled in two alternative ways: by using the sum constraint in a natural and straightforward manner, or by using the element constraint in a trickier fashion. With the convex hull relaxation developed earlier, we prove that the linear relaxation obtained from the former model is tighter than the one obtained from the latter. Moreover, our computational experiments indicate that the CP model based on the sum constraint is significantly more efficient as well.
Article
The use of predicates to state constraints in Constraint Satisfaction is explained. If, as an alternative, the traditional approach of Integer Programming (IP) is used, it is desirable to model these constraints so as to give as tight a linear programming relaxation as possible. One of the most commonly used predicates is the"all_different" predicate. Different applications of this are described together with different IP formulations. The facet defining constraints for the convex hull are then described and proved to be facet defining.
Article
The comparative performance of Integer Programming (IP) and Constraint Logic Programming (CLP) is explored by examining a number of models for four different combinatorial optimization applications. Computational results show contrasting behavior for the two approaches, and an analysis of performance with respect to problem and model characteristics is presented. The analysis shows that tightness of formulation is of great benefit to CLP where effective search reduction results in problems that can be solved quickly. In IP, if the linear feasible region does not identify the corresponding integer polytope, the problem may be difficult to solve. The paper identifies other characteristics of model behavior and concludes by examining ways in which IP and CLP may be incorporated within hybrid solvers.