Download Mod-2 cuts generation yields the convex hull of bounded

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Factorization wikipedia , lookup

Eisenstein's criterion wikipedia , lookup

Fundamental theorem of algebra wikipedia , lookup

Transcript
Mod-2 cuts generation yields the convex hull of
bounded integer feasible sets§
C. Gentile∗ P. Ventura∗ R.Weismantel†
August 22, 2006
Abstract
This paper focuses on the outer description of the convex hull of all
integer solutions to a given system of linear inequalities. It is shown
that if the given system contains lower and upper bounds for the variables, then the convex hull can be produced by iteratively generating
so-called mod-2 cuts only. This fact is surprising and might even be
counterintuitive, since many integer rounding cuts exist that are not
mod-2, i.e., representable as the zero- one-half combination of the given
constraint system. The key, however, is that in general many more
rounds of mod-2 cut generation are necessary to produce the final description compared to the traditional integer rounding procedure.
Keywords: Integer Programming, Mod-2 cuts, Convex Hull.
1
Introduction
One of the fundamental results in the theory of linear integer programming
states that the convex hull of all integer points in the intersection of finitely
many rational halfspaces is a polyhedron. This polyhedron that we denote
by PI in the following can be described by linear inequalities that one obtains
in finitely many steps by integer rounding [7].
∗
Istituto di Analisi dei Sistemi ed Informatica “Antonio Ruberti” del CNR, Viale Manzoni 30, 00185 Rome (ITALY), e-mail: {gentile,ventura}@iasi.cnr.it
†
Otto-von-Guericke-Universität Magdeburg, Department for Mathematics/IMO, Germany. Email: [email protected]
§
This work has been partially supported by the UE Marie Curie Research Training
Network no.504438 ADONET
1
Let P 0 = P = {x ∈ Rn |Ax ≤ b} be a relaxation of PI ; a single step of the
integer rounding procedure consists of taking all inequalities uT Ax ≤ buT bc
with u ∈ Rn+ and uT A ∈ Zn and adding them to P 0 obtaining the next
relaxation P 1 to which we refer as the first closure of P.
It has been recently shown in [5] that optimizing over the first closure
of a polyhedron is N P-hard. This explains that one cannot expect to turn
this nice concept of integer rounding into an effective and stand-alone algorithmic tool. The question emerges whether instead of considering the
first closure of a polyhedron one can resort to a weaker relaxation that is
algorithmically more tractable. One relaxation that appears particularly
appealing for many combinatorial optimization problems is defined as the
closure of a polyhedron associated with a special family of rounding cuts.
These cuts have been introduced in [2] and are referred to as mod-2 cuts.
More precisely, if P = {x ∈ Rn |Ax ≤ b} with A ∈ Zm×n , then a mod-2
cut is an inequality of the form 12 uT Ax ≤ b 21 uT bc where ui ∈ {0, 1} for all
i = 1, . . . , m and 21 uT A ∈ Zn , i.e., uT A ≡ 0 mod 2.
Among the many important examples of mod-2 cuts we mention the
blossom inequalities for the matching problem, the comb inequalities for
the traveling salesman problem, the odd-cycle inequalities for the stable set
problem or for the set covering problem, and the odd-cycle inequalities in
quadratic 0-1 optimization [1].
Mod-2 cuts are a particular subclass of the more general mod-k cuts,
which are defined as the inequalities of the form k1 uT Ax ≤ b k1 uT bc, with
ui ∈ {0, . . . , k − 1} for all i = 1, . . . , m and k1 uT A ∈ Zn , i.e., uT A ≡ 0 mod k.
Although the problem of separating mod-2 cuts is N P-hard in general,
it can be solved in polynomial time if the constraint matrix meets certain
properties (see [2] and [8]). Interestingly, [3] showed that there is a polynomial time algorithm for separating a subclass of mod-k cuts for any prime
number k. Computational studies about the effectiveness of mod-k cuts and
mod-2 cuts in particular are shown in [6], [11], and [10].
These results suggest that mod-2 cuts are an interesting object to study
into further depth. Our paper contributes to this topic by showing that
under mild assumptions a description of the integer polyhedron can be obtained by iteratively generating mod-2 cuts only.
In the remainder of this paper we will focus on bounded integer programming problems in inequality form. We will, in addition, assume that
lower and upper bounds for the variables are available. More precisely, for
A ∈ Zm×n , b ∈ Zm and v ∈ Zn , the feasible set of integer points is described as
P = {x ∈ Zn : Ax ≤ b, −Ix ≤ 0, Ix ≤ v}.
2
We define PI = conv(P ∩ Zn ).
Definition 1.1 Let A ∈ Zm×n , b ∈ Zm , v ∈ Zn ,


 
A
b



−I
0 .
à =
and b̃ =
I
v
We denote an initial system with
S = S (0) = (Ã, b̃).
The first mod-2 closure of the system S is
Ã,
b̃
(1)
S =
1 T
1 T
m+2n s.t.
2 u Ã, b 2 u b̃c for all u ∈ {0, 1}
1 T
2 u Ã
∈ Zn
.
For t ∈ Z+ , t ≥ 2, we define recursively S (t) = (S (t−1) )(1) to be t-th mod-2
closure of S.
Given any system S = (A, b), let P(S) denote the corresponding polyhedron
{x ∈ Rn : Ax ≤ b}.
Remark 1.1 Without loss of generality, we can assume that each column
of matrix A contains at least one positive entry. In fact, if this is not the
case, i.e., there exists a column ai ≤ 0, we can apply the variable substitution
x0i = vi − xi .
The main result of this paper is a proof of the fact that by generating
mod-2 cuts iteratively we can produce the convex hull of the integer feasible
solutions.
Theorem. There exists t ∈ Z+ such that P(S (t) ) = PI .
Our proof requires to make use of properties of the mod-2 closure that
we summarize in Section 2. Section 3 is devoted to the proof of the main
theorem.
2
Properties of the mod-2 closure
This section develops structural properties of mod-2 closures of polyhedra.
In particular, we first show that the iterative applications of mod-2 cuts
provides a respective dominating inequality for any inequality of the starting
system S (0) that is not a lower bound.
3
Lemma 2.1 Let S (0) be a system as introduced in Definition 1.1 and let
xi ≤ vi be an upper bound inequality contained in S (0) . There exists a finite
integer t such that S (t) contains both the inequalities xi ≤ vi and xi ≤ vi0 ,
with vi0 ∈ Z and vi0 ≤ vi .
Proof: By Remark 1.1, there exists an inequality
aT x ≤ a0
(1)
of the system Ax ≤ b such that ai > 0. Then, S (1) contains the inequality
a0 T x ≤ a00 , obtained as a mod-2 cut from the sum of (1), lower bound
inequalities for variables xj with j 6= i such that aj > 0 and aj odd, and
upper bounds for variables xj such that aj < 0 and aj odd. Iterating this
procedure, after a finite number of steps t0 , we get an upper bound inequality
xi ≤ vi + δ. If δ ≤ 0 the proof is complete; otherwise, in subsequent rounds
we generate mod-2 cuts with multipliers 12 from:
xi ≤ vi
xi ≤ vi + δ.
This gives
1
xi ≤ vi +
δ .
2
The argument applies iteratively and shows that after dlog2 (δ)e steps a second copy of xi ≤ vi is included in some system S (t) .
2
Lemma 2.2 Let S (0) be a system as introduced in Definition 1.1 and let
aT x ≤ a0 be an inequality of the system Ax ≤ b that is not an upper or a
lower bound. There exists t ∈ Z+ such that S (t) contains both the inequalities
aT x ≤ a0 and aT x ≤ a00 , with a00 ∈ Z and a00 ≤ a0 .
Proof: The system S (1) contains the inequality
n
X
i=1
ai even
ai
xi +
2
n
X
ja k
ai − 1
0
xi ≤
.
2
2
(2)
i=1
ai odd
Then the system S (2) contains two copies of inequality (2). If we consider
the original inequality aT x ≤ a0 , the two copies of inequality (2) and the
upper bounds constraints xi ≤ vi for all i such that ai is odd, and sum them
4
up with multipliers 12 , we derive that an inequality of the form aT x ≤ a0 + δ,
where δ ∈ Z, is contained in S (3) . If δ ≤ 0 we are done; otherwise, we apply
the same procedure described in the proof of Lemma 2.1, obtaining a second
copy of aT x ≤ a0 included in the system S (t) , for some t ∈ Z+ .
2
Our next example illustrates that upper bounds on the variables are
needed for Lemma 2.2 to be true.
Example 2.1 Consider the feasible set described as
{(x1 , x2 ) ∈ Z2+ | − 3x1 + 5x2 ≤ 8}.
(3)
One may observe that, using only lower bounds and the initial inequality, it
is not possible to derive a copy of −3x1 + 5x2 ≤ 8. The reason is that both
numbers −3 and 5 are odd. Therefore, all the inequalities belonging to any
mod-2 closure attain a ratio of the two coefficients that is strictly less than
−3/5. In order to prove this, we use induction on the number t. Suppose
that the generic system S (t) does not contain any inequality aT x ≤ a0 with
a1 ≤ 0, a2 ≥ 0, and aa21 ≥ − 35 , except the original inequality −3x1 + 5x2 ≤ 8.
We prove that this property also applies to S (t+1) . To this end let āT x ≤ ā0
be any inequality in the system S (t+1) . In order to achieve a highest possible
ratio ā1 /ā2 , we can assume that āT x ≤ ā0 is a mod-2 cut from the initial
constraint −3x1 + 5x2 ≤ 8 and some other inequalities of S (t) . Let bT x ≤ b0
denote the sum of these other inequalities in S (t) that we need to derive the
mod-2 cut āT x ≤ ā0 . From the hypothesis of the induction we conclude
that bb12 < − 35 with b1 and b2 odd. It then follows from elementary algebraic
3
1 )/2
manipulations that āā12 = (−3+b
(5+b2 )/2 < − 5 . This shows that upper bounds on
the variables are needed for Lemma 2.2 to be true.
2
By Lemma 2.1 and Lemma 2.2, the two observations below easily follow.
Observation 2.1 Let aT x ≤ a0 be derived by the inequalities of system
S (0) summed up with multipliers u ∈ {0, 1, . . . , k − 1}m+2n , with k ∈ Z+ . By
Lemma 2.1 and Lemma 2.2, there exists t ∈ Z+ such that S (t) contains, for
each inequality of S (0) that is not a lower bound, 2ui copies of a dominating
constraint. Therefore, S (t+1) contains an inequality dominating aT x ≤ a0 .
Observation 2.2 Consider a mod-2 cut aT x ≤ a0 obtained with multipliers
u ∈ {0, 12 }m+2n from the system S (0) of inequalities. If we substitute one of
the inequalities of the system with an inequality that dominates it, we obtain
5
a mod-2 cut dominating aT x ≤ a0 . This is possible by adding or removing
some lower bound inequalities on the variables with odd coefficients in the
left-hand side.
To finally prove the key lemma, we first need the following:
Lemma 2.3 If x is prime and y mod x 6= 0, there exist i, j, γ ∈ Z+ such
that ix + jy = 2γ , i.e., ix + jy is a power of 2.
Proof: Fermat’s Little Theorem (FLT) states that if p is prime and a ∈ Z,
with a mod p 6= 0, then there exists α ∈ Z+ , such that ap−1 = 1 + αp.
Therefore, if we first apply FLT with p = x and a = y, then there exists
α ∈ Z such that
y x−1 = 1 + αx. (1)
Then by applying FLT with a = 2q , for some number q, and p = x, there
exists β ∈ Z such that
(2q )x−1 = 1 + βx, (2)
and, for a sufficiently large value of q, β > α. Let us now subtract (1) from (2),
(β − α)x + y x−1 = (2q )x−1 = 2q(x−1) ,
and then fix i = β − α, j = y x−2 , and γ = q(x − 1). This proves the Lemma.
2
Resorting to lemmas 2.1, 2.2, 2.3, and to observations 2.1 and 2.2, we
are now ready to prove that every mod-k cut can be obtained by generating
mod-2 cuts iteratively.
Lemma 2.4 Let S (0) be a system as introduced in Definition 1.1. Let
aT x ≤ a0 be a mod-k cut for P(S), i.e., aT = k1 uT Ã ∈ Zn and a0 = b k1 uT b̃c
with u ∈ {0, 1, . . . , k − 1}m+2n . There exists a number t ∈ Z+ such that an
inequality dominating aT x ≤ a0 is part of the system S (t) .
Proof:
The inequality uT Ãx ≤ uT b̃ can be represented as
kaT x ≤ ka0 + r
where r ∈ {0, 1, . . . , k − 1}.
6
(4)
W.l.o.g. we may assume that k is prime. In fact, if k is not prime, by
using induction on the prime factorization of k, let k1 > 1 and k2 > 1 be
two integers such that k1 k2 = k. By Observation 2.1, there exists t0 ∈ Z+
0
such that S (t ) contains an inequality q T x ≤ q0 that dominates (4). By
Observation 2.2, the inequality obtained from q T x ≤ q0 by applying two
successive integer roundings with k1 and k2 dominates aT x ≤ a0 ; indeed,
br/k1 c
r
1c
aT x ≤ a0 + b br/k
k2 c and 0 ≤ b k2 c ≤ b k c = 0.
In the following we will sometimes refer to Observation 2.2 in order to
claim that a certain inequality aT x ≤ a0 is included in a certain system S (t) .
In order to be precise, we mean that either S (t) contains the inequality
aT x ≤ a0 or contains an inequality dominating it. We do not distinguish
between these cases in order to keep our notation simple.
0
By Observation 2.1, there exists a finite integer t0 such that S (t ) contains
kaT x ≤ ka0 + r. The mod-2 cut obtained from the latter inequality, lower
bounds for variables xi with ai > 0 and ai odd, and upper bounds for
variables xj with aj < 0 and aj odd, dominates an inequality of the form
b k2 c aT x ≤ c0 , for some c0 ∈ Z. Therefore, we assume in the following that
0
b k2 c aT x ≤ c0 is contained in the system S (t +1) .
Let π0 be the integer odd (and positive) number such that k = 2α0 π0 +1,
for some α0 ∈ Z+ . Then the inequality
π0 aT x ≤ π0 a0 + δ0
(t0 +α
(5)
0 ) . If δ ≤ 0, then the proof is finished. So we assume
is contained in S
0
δ0 > 0.
In the next iterations, by considering mod-2 cuts obtained from inequalities (4) and (5) with multipliers 21 , we will produce a mod-2 inequality
of the form π1 aT x ≤ π1 a0 + δ1 , where π1 2α1 = (k + π0 ) with α1 ∈ Z+ ,
π1 ∈ Z+ , π1 odd, and, since δ1 is obtained by α1 consecutive mod-2 round0
ings, 0 ≤ δ1 ≤ b r+δ
2α1 c.
1
The crucial observation here is that, if πδ00 ≥ 1, then πδ11 < πδ00 − 2k
, i.e.,
δ0
1
the ratio π0 is decreased of, at least, the fixed amount 2k . In fact, since
r ≤ k − 1 and k > π0 , we obtain this relation by applying the following
manipulations:
δ0
δ1
δ0
r + δ0 1
δ0
(r + δ0 )π1 1
δ0
r + δ0
−
≥
−
=
−
≥
−
≥
α
1
π0 π1
π0
2
π1
π0
k + π0
π1
π0 k + π0
δ0
k − 1 + δ0
δ0 k − kπ0 + π0
≥
−
=
≥
π0
k + π0
π0 (k + π0 )
π0 k − kπ0 + π0
1
1
≥
>
=
.
π0 (k + π0 )
k + π0
2k
7
Therefore, repeating the above procedure, after a finite number β of itera00
tions we will produce a system S (t ) that contains the inequalities
kaT x ≤ ka0 + r
and
πβ aT x ≤ πβ a0 + δβ with δβ /πβ < 1.
Then, since k is prime and πβ < k, by Lemma 2.2 and Lemma 2.3, there
000
exists a number t000 ≥ t00 such that S (t ) contains i copies of kaT x ≤ ka0 + r
and j copies of πβ aT x ≤ πβ a0 + δβ where ik + jπβ = 2γ .
000
Then S (t +γ) contains the inequality
ik + jπβ
ik + jπβ T
a x≤
a0 + δ,
γ
2
2γ
j
k
ir+jδβ
ir+jδ
with 0 ≤ δ ≤
. Since r ≤ k − 1 and δβ ≤ πβ − 1, b 2γ β c = 0. This
γ
2
completes the proof.
2
Example 2.2 Consider the feasible set described as
{(x1 , x2 ) ∈ Z2+ |7x1 + 14x2 ≤ 20}.
The inequality x1 +2x2 ≤ 2 can be derived from multiplying 7x1 +14x2 ≤ 20
by 1/7 and rounding the right-hand-side. Following Lemma 2.4, with one
mod-2 operation, we obtain the first inequality of type (5)
3x1 + 6x2 ≤ 10.
We then produce the next inequality by using the previous two
5x1 + 10x2 ≤ 15.
Iterating the procedure we generate
3x1 + 6x2 ≤ 8,
that is another inequality of type (5) where π2 = 3, δ2 = 2, and β = 2, that
is, δ2 /π2 < 1. Finally, we consider one copy of 7x1 + 14x2 ≤ 20 and three
copies of 3x1 + 6x2 ≤ 8, we divide by 16 (corresponding to 4 consecutive
mod-2 operations), and obtain x1 + 2x2 ≤ 2.
2
8
3
Proof of the main theorem
Theorem 3.1 Let S (0) be a system as introduced in Definition 1.1. There
exists t ∈ Z+ such that P(S (t) ) = PI .
Proof: It suffices to show that there exists t1 ∈ Z+ such that the inequalities
describing the first Chvátal-Gomory closure P 1 are part of the system S (t1 ) .
The polyhedron P 1 is described by the Gomory cuts
P 1 = {x ∈ Rn |uT Ax ≤ buT bc, for all u ≥ 0, uT A ∈ Zn }.
Every such inequality uT Ax ≤ buT bc with u =
Q (p1 /q1 , . . . , pm /qm ) and
pi ∈ Z+ , qi ∈ Z+ \ {0} is a mod-k cut with k = m
i=1 qi . In fact, there is a
finite representation for P 1 (see [9]) as P 1 = {x ∈ Rn | uT Ax ≤ buT bc, for
all u ∈ H(C)}, where H(C) is the Hilbert basis of the cone C = {uT A|u ∈Rm
+ }.
By Lemma 2.4 every inequality uT Ax ≤ buT bc with u ∈ H(C) is con0
tained in S (t ) for some t0 ∈ Z+ . Therefore, there exists t1 ∈ Z+ such
that S (t1 ) contains all the inequalities uT Ax ≤ buT bc for all u ∈ H(C), i.e.,
P(S (t1 ) ) ⊆ P 1 .
By a theorem of Chvátal [4], PI = P τ for some integer τ ∈ Z+ . Therefore, we can repeat the same argument for P 2 , . . . , P τ by finding systems
S (t2 ) , . . . , S (tτ ) such that P(S (ti ) ) ⊆ P i for all i = 2, . . . , τ . This gives the
result.
2
Our proof of Theorem 3.1 strongly relies on Lemma 2.2. As Example 2.1
illustrates, Lemma 2.2 is not true if upper bounds on the variables are not
present. As a consequence, the proof of Theorem 3.1 does not apply to
systems without upper bounds. It is, however, straightforward to extend
the proof to the case in which we allow multipliers {0, 12 , 1} for generating
cuts as opposed to having {0, 12 } multipliers only.
However, in the case of Example 2.1, for instance, the facet defining
inequality −2x1 + 3x2 ≤ 4, derivable as a mod-5 cut from the starting
system, can still be obtained as a mod-2 cut in the system S (7) . This fact
might indicate that even an extension of Theorem 3.1 to the unbounded
integer programming case could be true.
Acknowledgements. We thank Giovanni Rinaldi for his helpful suggestions.
We also thank the anonymous referees for their useful remarks.
9
References
[1] E. Boros, Y. Crama, and P.L. Hammer. Chvátal cuts and odd cycle
inequalities in quadratic 0-1 optimization. SIAM Journal on Discrete
Mathematics, 5:163–177, 1992.
[2] A. Caprara and M. Fischetti. {0, 12 }-Chvátal-Gomory cuts. Mathematical Programming, 74:221–235, 1996.
[3] A. Caprara, M. Fischetti, and A. N. Letchford. On the separation of
maximally violated mod-k cuts. Mathematical Programming, 87(1):37–
56, 2000.
[4] V. Chvátal. Edmonds polytopes and a hierarchy of combinatorial problems. Discrete Mathematics, 4:305–337, 1973.
[5] F. Eisenbrand. On the membership problem for the elementary closure
of a polyhedron. Combinatorica, 19(2):297–300, 1999.
[6] M. Fischetti and A. Lodi. Optimizing over the first Chvátal closure.
In M. Jünger and V. Kaibel, editors, Integer Programming and Combinatorial Optimization, 11th International IPCO Conference, Berlin,
Germany, June 2005 Proceedings, Lecture Notes in Computer Science,
pages 12–22. Springer, 2005.
[7] R. E. Gomory. Outline of an algorithm for integer solutions to linear
programs. Bulletin of the American Mathematical Society, 64:275–278,
1958.
[8] A.N. Letchford. Binary clutter inequalities for integer programs. Mathematical Programming, 98:201–221, 2003.
[9] A. Schrijver. Theory of Linear and Integer Programming. Wiley, 1986.
[10] A.M. Verweij. Selected Applications of Integer Programming: A Computational Study. PhD thesis, Utrecht University, 2000.
[11] K. Wenger. Generic Cut Generation Methods for Routing Problems.
PhD thesis, University of Heidelberg, 2003.
10