A short convex-hull proof for the all-different system with the inclusion property

https://doi.org/10.1016/j.orl.2014.11.008Get rights and content

Abstract

An all-different constraint on some discrete variables imposes the condition that no two variables take the same value. A linear-inequality description of the convex hull of solutions to a system of all-different constraints is known under the so-called inclusion property: the convex hull is the intersection of the convex hulls of each of the all-different constraints of the system. We give a short proof of this result, which in addition shows the total dual integrality of the linear system.

Introduction

In many combinatorial optimization problems one needs to impose one or more all-different constraints, i.e., conditions of the following type: for a given finite (sub)family of discrete variables, no two variables can be assigned the same value. All-different constraints arise, for instance, in problems related to timetabling, scheduling, manufacturing, and in several variants of the assignment problem (see, e.g.,  [6], [9] and the references therein).

Though all-different constraints are mainly studied in the context of Constraint Programming (see, e.g.,  [8]), when dealing with a problem that can be modeled as an integer linear program it is useful to have information on the polyhedral structure of the feasible solutions to a system of all-different constraints. For this reason, several authors studied linear-inequality formulations for the convex hull of solutions to a single all-different constraint or a system of all-different constraints  [3], [5], [6], [9]. We remark that in some cases these descriptions are extended formulations, i.e., they make use of additional variables; however, here we are only interested in the description of the convex hull in the original space of variables.

If n variables x1,,xn can take values in a finite domain DR and an all-different constraint is imposed on them, we will write (following the notation in  [6]) {x1,,xn}x1,,xnD. Williams and Yan  [9] proved that if D={1,,d} for some positive integer d, then the convex hull of the vectors that satisfy (1)–(2) is described by the linear system jSxjf(S),S[n],jSxjg(S),S[n], where [n]={1,,n} and, for S[n], f(S)=|S|(|S|+1)2,g(S)=|S|(d+1)f(S). Note that f(S) is the sum of the |S| smallest positive integers, while g(S) is the sum of the |S| largest integers that do not exceed d, therefore inequalities (3)–(4) are certainly valid for every vector x satisfying (1)–(2). This result extends to an arbitrary finite domain DR (with |D|n) by defining f(S) (resp., g(S)) as the sum of the |S| smallest (resp., largest) elements in D, for every S[n]. Note however that in the following we assume D={1,,d} for some positive integer d, while we will consider the case of a generic finite domain D in a final remark.

Williams and Yan  [9] showed that if d>n then all inequalities (3)–(4) are facet-defining, thus the convex hull of (1)–(2) needs an exponential number of inequalities to be described in the original space of variables x1,,xn. However, they also gave polynomial-size extended formulations for the convex hull of (1)–(2).

When d=n, (1)–(2) is the set of permutations of the elements in [n], and its convex hull is called permutahedron. In this case, the whole family of inequalities (4) can be dropped and replaced by the equation j[n]xj=f([n]). The permutahedron admits an extended formulation with O(nlogn) constraints and variables  [2].

System (3)–(4) not only defines an integral polyhedron, but it also has the stronger property of being totally dual integral. We recall that a linear system of inequalities Axb is said to be totally dual integral if for every integer vector c such that the linear program max{cx:Axb} has finite optimum, the dual linear program has an optimal solution with integer components. It is known that if Axb is totally dual integral and b is an integer vector, then the polyhedron defined by Axb is integral (see, e.g.,  [7, Theorem 5.22]). The total dual integrality of system (3)–(4) follows immediately from the fact that f (resp., g) is a supermodular (resp., submodular) function, along with a classical result on polymatroid intersection  [1] (see also  [7, Theorem 46.2]). An explicit proof of the total dual integrality of (3)–(4) is given in  [5].

In a more general setting, we might have m1 all-different constraints, each enforced on a different subset of variables Ni[n],i[m]. In this case, we have the system of conditions {xj:jNi},i[m],x1,,xnD. The following inequalities are of course valid for the convex hull of solutions to (6)–(7): jSxjf(S),SNi,i[m],jSxjg(S),SNi,i[m]. However, the above constraints do not give, in general, the convex hull of the vectors that satisfy (6)–(7). Furthermore, there are even examples in which some integer solutions to system (8)–(9) do not lie in the convex hull of the points satisfying (6)–(7). Therefore it is natural to ask which conditions ensure that the above system provides the convex hull of the vectors satisfying (6)–(7).

A special case, studied in  [6], in which constraints (8)–(9) do yield the convex hull of solutions to (6)–(7) is now described. Define N=[n] and assume that N=TU, where T and U are disjoint nonempty subsets of N. Define Ti=NiT and Ui=NiU for i[m]. If the Ti’s form a monotone family of subsets (T1T2Tm) and the Ui’s are pairwise disjoint, then Magos et al.  [6] say that the inclusion property holds. They showed that in this case inequalities (8)–(9) provide the convex hull of solutions to (6)–(7). We remark that (to the best of the author’s knowledge) this is the only nontrivial case in which formulation (8)–(9) is known to define the convex hull of the all-different system.

The proof of Magos et al.  [6] is rather lengthy and involved (overall, it consists of about 25 pages). The purpose of this note is to give a shorter proof of their result. Indeed, we show something more: we prove that, under the inclusion property, system (8)–(9) is totally dual integral. Our proof is an extension of the classical approach to show the total dual integrality of polymatroids (see, e.g.,  [7, Chapter 44]). Specifically, in Section  2 we describe a greedy algorithm that solves linear optimization over (8)–(9), under the inclusion property. The correctness of the algorithm is shown in Section  3 by completing the feasible solution returned by the algorithm with a dual solution such that the complementary slackness conditions are satisfied. The result of Section  3 also implies the total dual integrality of system (8)–(9), as the dual solution is integer whenever the primal objective function coefficients are all integers. We conclude in Section  4 with an extension of the result, which in particular can be used to deal with a generic finite domain D.

Section snippets

Primal algorithm

Assume that the inclusion property holds for an all-different system (6)–(7). Recall that:

  • N=[n]=TU, with T and U disjoint and nonempty;

  • Ti=NiT and Ui=NiU for i[m];

  • T1Tm;

  • UiUj= for all distinct i,j[m].

Wlog, N=N1Nm and T=T1=[t] for some positive integer t. Also, recall that D=[d]. We assume that dmaxi[m]|Ni|, otherwise both (6)–(7) and (8)–(9) are infeasible. We use the notation ti=|Ti| and ui=|Ui| for i[m]. Furthermore, we will sometimes identify an index jN with the

Dual solution and total dual integrality

In this section we prove the correctness of Algorithm 1 and, at the same time, we show that inequalities (8)–(9) define the convex hull of the vectors satisfying (6)–(7), under the inclusion property. Before proceeding, it is useful to note that if, for a given instance of the problem, Algorithm 1 is run with different tie-breaking choices at lines 5, 6, and 12, then the solutions returned have the same cost. To see this, define at every stage of the algorithm the pseudo-cost pattern as the d

An extension

We finally present an extension of Theorem 1 and Corollary 2, which can be used, for instance, to deal with the case of an all-different system with the inclusion property and an arbitrary finite domain DR. In what follows, we say that a function ϕ:NR is convex (resp., concave) if the piecewise linear interpolation of ϕ is convex (resp., concave).

Consider a system of the form jSxjf(S),SNi,i[m],jSxjg(S),SNi,i[m], where f(S)=α(|S|) for some convex function α:NR, g(S)=β(|S|) for

Acknowledgments

The author would like to thank Michele Conforti and Laurence A. Wolsey for commenting on a previous version of the paper.

References (9)

  • J. Edmonds

    Submodular functions, matroids, and certain polyhedra

  • M.X. Goemans, Smallest compact formulation for the permutahedron, 2009....
  • J. Lee

    All-different polytope

    J. Comb. Optim.

    (2002)
  • L. Lovász

    Submodular functions and convexity

There are more references available in the full text version of this article.
View full text