Lecture Notes in Computer Science
Lecture Notes in Computer Science
13
Series Editors
Gerhard Goos, Karlsruhe University, Germany
Juris Hartmanis, Cornell University, NY, USA
Jan van Leeuwen, Utrecht University, The Netherlands
Volume Editors
Robert E. Bixby
Department of Computational and Applied Mathematics, Rice University
6020 Annapolis, Houston, TX 77005, USA
E-mail: bixby@rice.edu
E. Andrew Boyd
PROS Strategic Solutions
3223 Smith Street, Houston, TX 77006, USA
E-mail: boyd@prosx.com
Roger Z. Rı́os-Mercado
Department of Industrial, Engineering,Texas A&M University
1000 Country Place Dr. Apt. 69, Houston, TX 77079, USA
E-mail: roger@hpc.uh.edu
ISSN 0302-9743
ISBN 3-540-64590-X Springer-Verlag Berlin Heidelberg New York
This work is subject to copyright. All rights are reserved, whether the whole or part of the material is
concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting,
reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication
or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965,
in its current version, and permission for use must always be obtained from Springer-Verlag. Violations are
liable for prosecution under the German Copyright Law.
c Springer-Verlag Berlin Heidelberg 1998
Printed in Germany
Typesetting: Camera-ready by author
SPIN 10637207 06/3142 – 5 4 3 2 1 0 Printed on acid-free paper
Preface
This volume contains the papers selected for presentation at IPCO VI, the Sixth
International Conference on Integer Programming and Combinatorial Optimiza-
tion, held in Houston, Texas, USA, June 22–24, 1998. The IPCO series of confer-
ences highlights recent developments in theory, computation, and applications
of integer programming and combinatorial optimization.
These conferences are sponsored by the Mathematical Programming Society,
and are held in the years in which no International Symosium on Mathemati-
cal Programming takes place. Earlier IPCO conferences were held in Waterloo
(Canada) in May 1990; Pittsburgh (USA) in May 1992; Erice (Italy) in April
1993; Copenhagen (Denmark) in May 1995; and Vancouver (Canada) in June
1996.
The proceedings of IPCO IV (edited by Egon Balas and Jens Clausen in
1995) and IPCO V (edited by William Cunningham, Thomas McCormick, and
Maurice Queyranne in 1996), were published by Springer-Verlag in the series
Lecture Notes in Computer Science as Volumes 920 and 1084, respectively. The
proceedings of the first three IPCO conferences were published by organizing
institutions.
A total of 77 extended abstracts, mostly of an excellent quality, were initially
submitted. Following the IPCO policy of having only one stream of sessions over
a three day span, the Program Committee selected 32 papers. As a result, many
outstanding papers could not be selected.
The papers included in this volume have not been refereed. It is expected
that revised versions of these works will appear in scientific journals.
The Program Committee thanks all the authors of submitted extended ab-
stracts and papers for their support of the IPCO conferences.
Bipartite Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
G. Gasparyan
A Theorem of Truemper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
M. Conforti and A. Kapoor
Edge Connectivity
Edge-Splitting and Edge-Connectivity Augmentation in Planar Graphs . . . 96
H. Nagamochi and P. Eades
Algorithms
Multicuts in Unweighted Graphs with Bounded Degree and Bounded
Tree-Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
G. Călinescu, C. G. Fernandes, and B. Reed
Network Flows
Building Chain and Cactus Representations of All Minimum Cuts from
Hao-Orlin in the Same Asymptotic Run Time . . . . . . . . . . . . . . . . . . . . . . . . . 294
L. Fleischer
Scheduling
Non-approximability Results for Scheduling Problems with Minsum
Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
J. A. Hoogeveen, P. Schuurman, and G. J. Woeginger
Approximation Bounds for a General Class of Precedence Constrained
Parallel Machine Scheduling Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
A. Munier, M. Queyranne, and A. S. Schulz
An Efficient Approximation Algorithm for Minimizing Makespan on
Uniformly Related Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
C. Chekuri and M. Bender
On the Relationship between Combinatorial and LP-Based Approaches to
NP-Hard Scheduling Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
R. N. Uma and J. Wein
1 Introduction
A clutter C is a pair (V (C), E(C)), where V (C) is a finite set and E(C) =
{S1 , . . . , Sm } is a family of subsets of V (C) with the property that Si ⊆ Sj
implies Si = Sj . The elements of V (C) are the vertices of C and those of E(C)
are the edges. A transversal of C is a minimal subset of vertices that intersects
all the edges. Let τ (C) denote the cardinality of a smallest transversal. A clutter
C packs if there exist τ (C) pairwise disjoint edges.
For j ∈ V (C), the contraction C/j and deletion C \ j are clutters defined as
follows: both have V (C)−{j} as vertex set, E(C/j) is the set of minimal elements
of {S − {j} : S ∈ E(C)} and E(C \ j) = {S : j 6∈ S ∈ E(C)}. Contractions and
deletions of distinct vertices can be performed sequentially, and it is well known
that the result does not depend on the order. A clutter D obtained from C by
deleting Id ⊆ V (C) and contracting Ic ⊆ V (C), where Ic ∩ Id = ∅ and Ic ∪ Id 6= ∅,
is a minor of C and is denoted by C \ Id /Ic .
We say that a clutter C has the packing property if it packs and all its minors
pack. A clutter is minimally non packing (mnp) if it does not pack but all its
minors do. In this paper, we study mnp clutters.
?
This work was supported in part by NSF grants DMI-9424348, DMS-9509581, ONR
grant N00014-9710196, a William Larimer Mellon Fellowship, and the Swiss National
Research Fund (FNRS).
X
n
min xj : Ax ≥ e, x ∈ {0, 1}n
1
X
m
= max yi : yA ≤ e, y ∈ {0, 1}m , (1)
1
X
n
max xj : Ax ≤ e, x ∈ {0, 1}n
1
X
m
= min yi : yA ≥ e, y ∈ {0, 1}m .
1
The 0,1 matrix A has the Max-Flow Min-Cut property (or simply MFMC
property) if the linear system Ax ≥ e, x ≥ 0 is totally dual integral (Seymour
[16]). Specifically, let
τ (A, w) = min wx : Ax ≥ e, x ∈ {0, 1}n ,
Xm
ν(A, w) = max yi : yA ≤ w, y ∈ {0, 1}m .
1
Conjecture 1. A clutter has the packing property if and only if it has the MFMC
property.
This conjecture for the packing property is the analog of the following version of
Lovász’s theorem [11]: A 0, 1 matrix A is perfect if and only if the linear system
Ax ≤ e, x ≥ 0 is totally dual integral.
In this paper, our first result is that this conjecture holds for diadic clutters.
A clutter is diadic if its edges intersect its transversals in at most two vertices
(Ding [6]). In fact, we show the stronger result:
Theorem 2. A diadic clutter is ideal if and only if it has the MFMC property.
A clutter is said to be minimally non ideal (mni) if it is not ideal but all
its minors are ideal. Theorem 1 is equivalent to saying that mni clutters do not
pack. Therefore mnp clutters fall into two distinct classes namely:
Next we consider ideal mnp clutters. Seymour [16] showed that Q6 is the only
ideal mnp clutter which is binary (a clutter is binary if its edges have an odd
intersection with its transversals). Aside from Q6 , only one ideal mnp clutter
was known prior to this work, due to Schrijver [14]. We construct an infinite
family of such mnp clutters (see Appendix). The clutter Q6 , Schrijver’s example
and those in our infinite class all satisfy τ (C) = 2. Our next result is that all
ideal mnp clutters with τ (C) = 2 share strong structural properties with Q6 .
Theorem 3. Every ideal mnp clutter C with τ (C) = 2 has the Q6 property, i.e.
A(C) has 4 rows such that every column restricted to this set of rows contains
two 0’s and two 1’s and, furthermore, each of the 6 such possible 0,1 vectors
occurs at least once.
We make the following conjecture and we prove later that it implies Conjecture 1.
The blocker b(C) of a clutter C is the clutter with V (C) as vertex set and the
transversals of C as edge set. For Id , Ic ⊆ V (C) with Id ∩ Ic = ∅, it is well known
and easy to derive that b(C \ Id /Ic ) = b(C)/Id \ Ic .
We now consider minimally non ideal mnp clutters. The clutter Jt , for t ≥ 2
integer, is given by V (Jt ) = {0, . . . , t} and E(Jt ) = {1, . . . , t}, {0, 1}, {0, 2}, . . . ,
{0, t}. Given a mni matrix A, let x̃ be any vertex of {x ≥ 0 : Ax ≥ e} with
fractional components. A maximal row submatrix Ā of A for which Āx̃ = e is
called a core of A. The next result is due to Lehman [10] (see also Padberg [13],
Seymour [17]).
Theorem 4. Let A be a mni matrix, B = b(A), r = τ (B) and s = τ (A). Then
(i) A (resp. B) has a unique core Ā (resp. B̄).
(ii) Ā, B̄ are square matrices.
Moreover, either A = A(Jt ), t ≥ 2, or the rows and columns of Ā can be
permuted so that
(iii) ĀB̄ T = J + (rs − n)I.
Here J denotes a square matrix filled with ones and I the identity matrix. Only
three cores with rs = n + 2 are known and none with rs ≥ n + 3. Nevertheless
Cornuéjols and Novick [5] have constructed more than one thousand mni matri-
ces from a single core with rs = n + 2. An odd hole Ck2 is a clutter with k ≥ 3
odd, V (Ck2 ) = {1, . . . k} and E(Ck2 ) = {{1, 2}, {2, 3}, . . . , {k − 1, k}, {k, 1}}. Odd
holes and their blockers are mni with rs = n + 1 and Luetolf and Margot [12]
give dozens of additional examples of cores with rs = n + 1 and n ≤ 17. We
prove the following theorem.
Theorem 5. Let A 6= A(Jt ) be a mni matrix. If A is minimally non packing,
then rs = n + 1.
We conjecture that the condition rs = n + 1 is also sufficient.
Conjecture 3. Let A 6= A(Jt ) be a mni matrix. Then A is minimally non packing
if and only if rs = n + 1.
Using a computer program, we were able to verify this conjecture for all known
mni matrices with n ≤ 14.
A clutter is minimally non MFMC if it does not have the MFMC property
but all its minors do. Conjecture 1 states that these are exactly the mnp clutters.
Although we cannot prove this conjecture, the next proposition shows that a
tight link exists between minimally non MFMC and mnp clutters. The clutter
D obtained by replicating element j ∈ V (C) of C is defined as follows: V (D) =
V (C) ∪ {j 0 } where j 0 6∈ V (C), and
Proof. Let w ∈ Z+ n
be chosen such that τ (C, w) > ν(C, w) and τ (C, w0 ) = ν(C, w0 )
for all w ∈ Z+ with w0 ≤ w and wj0 < wj for at least one j. Note that wj > 0
0 n
for all j, since otherwise some deletion minor of C does not have the MFMC
property. Construct D by replicating wj − 1 times every element j ∈ V (C). By
Remark 2, D does not pack. Let D0 = D \ Id /Ic be any minor of D. If j or one of
its replicates is in Ic then we can assume that j and all its replicates are in Ic .
Then D0 is a replication of a minor C 0 of C/j. Since C 0 has the MFMC property,
D0 packs by Remark 2. Thus we can assume Ic = ∅. By the choice of w and
Remark 2, if Id 6= ∅ then D0 packs. t
u
Proposition 1 can be used to show that if every ideal mnp clutter C satisfies
τ (C) = 2 then the packing property and the MFMC property are the same.
Proposition 2. Conjecture 2 implies Conjecture 1.
Proof. Suppose there is a minimally non MFMC clutter C that packs. By The-
orem 1, C is ideal. Then by Proposition 1, there is a mnp clutter D with a
replicated element j. Furthermore, D is ideal. Using Conjecture 2, 2 = τ (D) ≤
τ (D/j). Since D/j packs, there are sets S1 , S2 ∈ E(D) with S1 ∩ S2 = {j}.
Because j is replicated in D, we have a set S10 = S1 ∪ {j 0 } − {j}. Remark that
j 0 6∈ S2 . But then S10 ∩ S2 = ∅, hence D packs, a contradiction. t
u
Finally, we introduce a new class of clutters called weakly binary. They can
be viewed as a generalization of binary and of balanced clutters. (A 0,1 matrix
is balanced if it does not have A(Ck2 ) as a submatrix, k ≥ 3 odd, where as above
Ck2 denotes an odd hole. See [4] for a survey of balanced matrices). We say that
a clutter C has an odd hole Ck2 if A(Ck2 ) is a submatrix of A(C). An odd hole Ck2
of C is said to have a non intersecting set if ∃S ∈ E(C) such that S ∩ V (Ck2 ) = ∅.
A clutter is weakly binary if, in C and all its minors, all odd holes have non
intersecting sets.
Theorem 6. Let C be weakly binary and minimally non MFMC. Then C is
ideal.
Note that, when C is binary, this theorem is an easy consequence of Seymour’s
theorem saying that a binary clutter has the MFMC property if and only if it
does not have Q6 as a minor [16]. Observe also that Theorem 6 together with
Conjecture 2, Proposition 2, and Theorem 3, would imply that a weakly binary
clutter has the MFMC property if and only if it does not contain a minor with
the Q6 property.
6 Gérard Cornuéjols et al.
References
1. C. Berge. Färbung von Graphen deren sämtliche bzw. deren ungerade Kreize starr
sind (Zusammenfassung), Wisenschaftliche Zeitschritch, Martin Luther Universität
Halle-Wittenberg, Mathematisch-Naturwissenschaftliche Reihe, 114–115, 1960.
2. W. G. Bridges and H. J. Ryser. Combinatorial designs and related systems. J.
Algebra, 13:432–446, 1969.
3. M. Conforti and G. Cornuéjols. Clutters that pack and the max-flow min-cut prop-
erty: A conjecture. In W. R. Pulleyblank and F. B. Shepherd, editors, The Fourth
Bellairs Workshop on Combinatorial Optimization, 1993.
4. M. Conforti, G. Cornuéjols, A. Kapoor, and K. Vušković. Balanced matrices. In
J. R. Birge and K. G Murty, editors, Math. Programming, State of the Art 1994,
pages 1–33, 1994.
5. G. Cornuéjols and B. Novick. Ideal 0, 1 matrices. J. Comb. Theory Ser. B, 60:145–
157, 1994.
6. G. Ding. Clutters with τ2 = 2τ . Discrete Math., 115:141–152, 1993.
7. J. Edmonds and R. Giles. A min-max relation for submodular functions on graphs.
Annals of Discrete Math., 1:185–204, 1977.
8. B. Guenin. Packing and covering problems. Thesis proposal, GSIA, Carnegie Mel-
lon University, 1997.
9. A. Lehman. On the width-length inequality. Mathematical Programming, 17:403–
417, 1979.
10. A. Lehman. On the width-length inequality and degenerate projective planes. In
W. Cook and P.D. Seymour, editors, Polyhedral Combinatorics, DIMACS Series
in Discrete Math. and Theoretical Computer Science, Vol. 1, pages 101–105, 1990.
11. L. Lovász. Normal hypergraphs and the perfect graph conjecture. Discrete Math.
2:253–267, 1972.
12. C. Luetolf and F. Margot. A catalog of minimally nonideal matrices. Mathematical
Methods of Operations Research, 1998. To appear.
13. M. W. Padberg. Lehman’s forbidden minor characterization of ideal 0−1 matrices.
Discrete Math., 111:409–420, 1993.
14. A. Schrijver. A counterexample to a conjecture of Edmonds and Giles. Discrete
Math., 32:213–214, 1980.
15. A. Schrijver. Theory of Linear and Integer Programming, Wiley, 1986.
16. P. D. Seymour. The matroids with the max-flow min-cut property. J. Comb. Theory
Ser. B, 23:189–222, 1977.
17. P. D. Seymour. On Lehman’s width-length characterization. In W. Cook and P. D.
Seymour, editors, Polyhedral Combinatorics, DIMACS Series in Discrete Math.
and Theoretical Computer Science, Vol. 1, pages 107–117, 1990.
Appendix
S1 = I1 ∪ I3 ∪ I5 , S2 = I1 ∪ I4 ∪ I6 ,
S3 = I2 ∪ I4 ∪ I5 , S4 = I2 ∪ I3 ∪ I6 .
The Packing Property 7
Without loss of generality we can reorder the vertices in V (C) so that elements
in Ik preceed elements in Ip when k < p.
Given a set P of p elements, let Hp denote the ((2p − 1) × p) matrix whose
rows are the characteristic vectors of the nonempty subsets of P, and let Hp∗ be
its complement, i.e. Hp + Hp∗ = J.
For each r, t ≥ 1 let |I1 | = |I2 | = r, |I3 | = |I4 | = t and |I5 | = |I6 | = 1. We
call Qr,t the clutter corresponding to the matrix
I1 I2 I3 I4 I5 I6
Hr Hr∗ J 0 1 0
A(Qr,t ) = Hr∗ Hr 0 J 1 0
J 0 Ht∗ Ht 0 1
0 J Ht Ht∗ 0 1
where J denotes a matrix filled with ones. The rows are partitioned into four
sets that we denote respectively by T (3, 5), T (4, 5), T (1, 6), T (2, 6). The indices
k, l for a given family indicate that the set Ik ∪ Il is contained is every element of
the family. Note that the edge S1 occurs in T (3, 5), S2 in T (1, 6), S3 in T (4, 5)
and S4 in T (2, 6).
Since H1 contains only one row, we have Q1,1 = Q6 and Q2,1 is given by
1 1 0 0 1 0 1 0
1 0 0 1 1 0 1 0 T (3, 5)
0 1 1 0 1 0 1 0
0 0 1 1 0 1 1 0
A(Q2,1 ) = 1 0 0 1 0 1 1 0
T (4, 5)
0 1 1 0 0 1 1 0
1 1 0 0 0 1 0 1 T (1, 6)
0 0 1 1 1 0 0 1 T (2, 6)
Proposition 3. For all r, t ≥ 1, the clutter Qr,t is ideal and minimally non
packing.
The clutter D obtained by duplicating element j ∈ V (C) of C is defined by:
V (D) = V (C)∪{j 0 } where j 0 6∈ V (C) and E(D) = {S : j 6∈ S ∈ E(C)}∪{S ∪{j 0 } :
j ∈ S ∈ E(C)}. Let α(k) be the mapping defined by: α(1) = 2, α(2) = 1, α(3) =
4, α(4) = 3, α(5) = 6, α(6) = 5.
Suppose that, for k ∈ {1, .., 6}, we have that Ik contains a single element
j ∈ V (C). Then j belongs to exactly two of S1 , . . . , S4 . These two edges are of
the form {j} ∪ Ir ∪ It and {j} ∪ Iα(r) ∪ Iα(t) . We can construct a new clutter
C ⊗ j by duplicating element j in C and including in E(C ⊗ j) the edges:
{j} ∪ Iα(j) ∪ Ir ∪ It ,
(2)
{j 0 } ∪ Iα(j) ∪ Iα(r) ∪ Iα(t) .
8 Gérard Cornuéjols et al.
Bertrand Guenin
1 Introduction
Let G = (V, E) be a graph and Σ ⊆ E. Edges in Σ are called odd and edges in
E −Σ are called even. The pair (G, Σ) is called a labeled graph. Given a subgraph
H of G, V (H) denotes the set of vertices of H, and E(H) the set of edges of H.
A subset L ⊆ E(G) is odd (resp. even) if |L ∩ Σ| is odd (resp. even). A cycle of
G is a connected subgraph of G with all degrees equal to two.
A labeled graph (G, Σ) is said to be weakly bipartite if the following polyhe-
dron Q is integral (i.e. all its extreme points are integral):
n o
|E| P
Q = x ∈ <+ : i∈C xi ≥ 1, for all odd cycles C of (G, Σ) (1)
See Gerards [7] for a recent survey on weakly bipartite graphs and connexions
with multicommodity flows. Particularly interesting is the case where Σ = E(G).
Let x̂ be any 0, 1 extreme point of Q. Then x̂ is the incidence vector of a set of
edges which intersect every odd cycle of G. In other words e − x̂ is the incidence
|E|
vector of a bipartite subgraph of G. Let w ∈ <+ be weights for the edges of G
and let x̄ be a solution to
min wx : x ∈ Q ∩ {0, 1}|E| . (2)
Remark 1. (G, Σ) and (G, Σ 4 δ(U )) have the same set of odd cycles.
(H, θ) is called a proper minor of (G, Σ) if it is a minor of (G, Σ) and |E(H)| <
|E(G)|. An odd K5 , denoted by K f5 , is the complete graph on 5 vertices where
all edges are labeled odd. For the polyhedron Q associated with K f5 , the 10
constraints corresponding to the triangles (the odd cycles of length three) de-
fine a fractional point ( 13 , . . . , 13 ) of Q. Thus K f5 is not weakly bipartite. Sey-
mour [18],[19] predicted, as part of a more general conjecture on binary clutters
(see Sec. 2.3) that:
f5 minor.
Conjecture 1. (G, Σ) is weakly bipartite if and only if it has no K
f5 .
Theorem 1. Every minimally non weakly bipartite graph is a relabeling of K
2 Clutters
A clutter A is said to be binary if for any three sets S1 , S2 , S3 ∈ Ω(A), the set
S1 4S2 4S3 contains a set of Ω(A). Lehman [11] showed (see also Seymour [17]):
Thus in particular if A is binary then so is its blocker. The following is easy, see
for example [6].
Proposition 1. Let (G, Σ) be a labeled graph. Then the clutter of odd cycles of
(G, Σ) is binary.
Note that the blocker of Jt is Jt itself. We therefore have {1, 2} ∈ E(Jt ) and
{1, 2} ∈ E (b(Jt )). It follows by Theorem 4 that Jt is not binary. The clutter F7
is defined as follows: E(F7 ) = {1, . . . , 7} and
Ω(F7 ) = {{1, 3, 5}, {1, 4, 6}, {2, 4, 5}, {2, 3, 6}, {1, 2, 7}, {3, 4, 7}, {5, 6, 7}} .
Since we can readily check that F7 and b(OK5 ) are not clutters of odd cycles this
conjecture implies Conjecture 1. Next are two results on mni binary clutters.
Case 1: |C| = r.
By Remark 5, we have C ∈ Ω(Ā). Let U be the mate of C and q = |C ∩ U | ≥
2. By Theorem 4, q is odd so in particular q ≥ 3. Since C ⊆ C1 ∪ C2 , we
must have |U ∩ C1 | > 1 or |U ∩ C2 | > 1. This implies that U is the mate of
C1 or C2 , i.e. that C = C1 or C = C2 .
Case 2: |C| > r.
Let t = |C1 ∩ C2 ∩ C|. Since C ⊆ C1 ∪ C2 , it follows that
For T = C1 4 C2 4 C, we have
|T | = |(C1 ∩ C2 ∩ C) ∪ [(C1 4 C2 ) − C]| , C ⊆ C1 ∪ C2
= |C1 ∩ C2 ∩ C| + |C1 4 C2 | − |(C1 4 C2 ) ∩ C|
= t + |C1 4 C2 | − (|C| − t), by (3)
= 2t + |C1 | + |C2 | − 2|C1 ∩ C2 | − |C|
≤ |C1 | + |C2 | − |C|, t ≤ |C1 ∩ C2 |
≤ 2r − (r + 1), C1 , C2 ∈ Ω(Ā)
Since A is binary we have that T is equal to, or contains an element of Ω(A).
But |T | ≤ r − 1 which contradicts Theorem 3(i) and Remark 5. t
u
Notice that for OK5 the previous theorem simply says that given two triangles
C1 , C2 there is no odd cycle (distinct from C1 and C2 ) which is contained in the
union of C1 and C2 . It is worth mentioning that this is a property of mni binary
clutters only. Indeed the property does not hold for odd holes or more generally
for any circulant matrix with the consecutive one property. For a description of
many classes of mni clutters see [4] and [14].
Proposition 3. Let A be a mni binary clutter and B its blocker. For any e ∈
E(A) there exist C1 , C2 , C3 ∈ Ω(Ā) and U1 , U2 , U3 ∈ Ω(B̄) such that
(i) C1 ∩ C2 = C1 ∩ C3 = C2 ∩ C3 = {e}
(ii) U1 ∩ U2 = U1 ∩ U3 = U2 ∩ U3 = {e}
(iii) For all i, j ∈ {1, 2, 3} we have:
Ci ∩ Uj = {e} if i 6= j, and |Ci ∩ Uj | = q ≥ 3, if i = j.
and
Lemma 2. Let (G, Σ) be a minimally non weakly bipartite graph with a partition
of its edges as given in (4)-(5).
CR
w1 odd w2
e
CB CG
Fig. 1. Lemma 2. Bold solid lines represent paths in R ∪ W−e, dashed lines paths in
B ∪ W−e, and thin solid lines paths in G ∪ W−e.
Q
w1
P
t
P’
w2
Q’
Lemma 3. Let (G, Σ) be a minimally non weakly bipartite graph with a partition
of its edges as given in (4)-(5). Suppose we also have odd cycles CR , CB and CG
as defined in Lemma 2 where e is the only odd edge in CR ∪ CB ∪ CG .
(i) There is an odd path PR (resp. PB , PG ) between a vertex vBR (resp.
vRB , vBG ) of CB (resp. CR , CB ) distinct from w1 , w2 , and a vertex vGR
(resp. vGB , vRG ) of CG (resp. CG , CR ) distinct from w1 , w2 .
(ii) PR ⊆ R ∪ W−e, PB ⊆ B ∪ W−e and PG ⊆ G ∪ W−e.
vRG vRB
CR
PG PB
odd odd
w1 odd w2
e
vBG vGB
CB CG
PR
vBR vGR
odd
Fig. 3. Lemma 3.
Proof (of Lemma 3). By symmetry it is sufficient to show the result for path
0
PR . Since |CR ∩ R| ≥ 2 there is an edge eB = (vBR , vBR ) ∈ B of CB such that
vBR is distinct from w1 , w2 and CB −e(w1 , vBR ) contains exactly one edge in B
0
namely eB . Similarly, we have edge eG = (vGR , vGR ) ∈ CG with vGR distinct
from w1 , w2 and CG −e(w1 , vGR ) ∩ G = {eG }.
By property (P2) there is an odd cycle C such that C ∩ B = {eB } and
C ∩ G = {eG }. The cycle C can be written as {eB , eG } ∪ PR ∪ PR0 where PR and
PR0 are paths included in R ∪ W−e. Since C is odd we can assume w.l.o.g. that
PR is odd and PR0 is even.
18 Bertrand Guenin
0 0
Case 1: The endpoints of PR are vBR , vGR (resp. vBR , vGR ).
0
Then let S = [CB−e(w1 , vBR ), PR , CG−e(vGR , w1 )]. By Lemma 1, E(S) con-
tains an odd cycle but e 6∈ E(S) and E(S) ∩ B = ∅, a contradiction to
(P1).
0 0
Case 2: The endpoints of PR are vBR , vGR .
0 0
Then let S = [CB−e(w1 , vBR ), PR , CG−e(vGR , w1 )]. By Lemma 1, E(S) con-
tains an odd cycle but e 6∈ E(S) and E(S) ∩ B = E(S) ∩ G = ∅, a contra-
diction to (P1).
Thus PR has endpoints vBR , vGR . t
u
Remark 7. Let (G, Σ) be a labeled graph with an odd path P where all internal
vertices of P have degree two (in G). Then there is a sequence of relabeling
and contractions that will replace P by a single odd edge, without changing the
remainder of the graph.
(iii) PR0 and PB0 (resp. PG0 ) share an internal vertex tRB (resp. tRG ).
(iv) PB0 (tRB , vGB
0
) and PG0 share an internal vertex tBG .
0 0 0
(v) PB and PG (tRG , vBG ) share an internal vertex t0BG .
(vi) Paths PR (vBR , tRB ) and PR0 (vGR , tRG ) consist of a single edge.
0
(vii) PB0 (resp. PG0 ) has exactly one odd edge which is incident to vGB 0
0
(resp. vBG ).
(viii) PR0 (vBR , tRB ), PR0 (vGR , tRG ) are even and PR0 (tRB , tRG ) is odd.
(ix) No vertex is common to all three paths PR , PB and PG .
t RB odd t RG
P’R
v RB CR vRG P’B
P’G
w1 odd w2
e
vBR vGR
odd odd
v’BG CB CG v’GB
We did not represent vertices tBG (and t0BG ) in the previous figure. Let q denote
the first vertex of PG0 , starting from vRG , which is also a vertex of PB0 (tRB , vGB
0
)
0
(see Fig. 4). By Lemma 5(iv) there exist such a vertex. Let q be the first vertex
of PG0 (q, vRG ), starting from q, which is either a vertex of PB0 or equal to vRG .
By Lemma 5(ix) q, q 0 are distinct from tRB .
Definition 2. (K, ΣK ) is the graph (see Fig. 5) obtained by deleting every edge
of (H, ΣH ) which is not an edge of CR , CB , CG or PR0 (vBR , tRB ), PB0 and PG0 (q, q 0 ).
From Lemma 5 we can readily obtain the following properties:
Remark 9.
(i) There are exactly two odd edges in (K, ΣK ), namely e and the edge of PB0
0
incident to vGB .
0
(ii) Let S be the set of vertices {w1 , w2 , vBR , vRB , vGB , tRB , q, q 0 } shown in
0
Fig. 5. vRB and q may denote the same vertex but all other vertices of S
are distinct.
(iii) S is the set of all vertices of (K, ΣK ) which have degree greater than two.
20 Bertrand Guenin
t RB q
t’RB
t RB q q’
t’RB
w1 odd w2 w1 odd w2
odd odd
vBR vBR
v’GB v’GB
CB CG CB CG
Lemma 6. Let (H, ΣH ) be the graph defined in Lemma 5. There are three dis-
tinct odd paths F1 , F2 , F3 from tRB to t0RB .
Proof. Suppose for a contradiction this is not the case and we have Fi with
no internal vertices in common with (K, ΣK ), see Fig. 6. Consider the graph
obtained from (H, ΣH ) by deleting ē = (tRB , t0RB ) and all edges which are not
f5 :
edges of (K, ΣK ) or edges of Fi . The following sequence of operations yields K
t RB q
Fi
odd
e
t’RB
CR
vRB vRG = q’ P’B
w1 odd w2
odd
vBR v’GB
CB CG
Let (H̄, ΣH̄ ) be the graph obtained by deleting from (H, ΣH ) all the edges
which are not edges of CR , CB , CG and not edges of PR0 , PB0 and PG0 . Because of
Lemma 7 we can define fi , for i = 1, 2, 3, to be the first internal vertex of Fi ,
starting from tRB , which is also a vertex of (H̄, ΣH̄ ). By symmetry (see Fig. 4)
there is a vertex a vertex t0RG of PG0 (tRG , vRG ) which is incident to tRG and there
are odd paths F10 , F20 , F30 between tRG and t0RG . As previously we can define fi0 ,
for i = 1, 2, 3, to be the first internal vertex of Fi0 , starting from tRG , which is
also a vertex of (H̄, ΣH̄ ).
The remainder of the proof is a case analysis which shows that for each
possible set of vertices f1 , f2 , f3 and f10 , f20 , f30 the graph (H, ΣH ) contains a
f5 minor. In order to prove Lemma 5 and to make the case analysis tractable
K
we first establish general results for labeled graphs with properties (P1) and (P2).
References
Grigor Gasparyan
1 Introduction
Suppose we are given two n × n {0, 1} matrices A and B, and a full support
vector d. Let us call the pair of matrices (A, B) a (bipartite) d-design if
AT B = J + diag(d),
where J is the matrix filled with ones. It seems difficult to say anything about
the structure of the matrices A and B in such a general setting. But if d > 0
then a surprising result of Lehman [7] asserts that either
01
A=B∼ = DPP ≡
1I
(then we call the pair (A, B) a DPP-design), or for some r and s:
AJ = JA = rJ; BJ = JB = sJ; AT B = BAT = J + (rs − n)I
(then we call the pair (A, B) an (r, s)-design). This result generalizes the earlier
results of de Bruijn and Erdős [2] and Ryser [12], and it is one of the main
arguments in the proof of Lehman’s theorem on minimally non-ideal polyhedra
[8].
In this paper we would like to investigate the d-designs a bit more generally.
Our main goal is to find sufficient conditions which force a d-design to become
an (r, s)-design. The following theorem summarizes our results in that direction:
Pn
Definition 3. Let (A, B) be a d-design. If 1 + i=1 d−1 i = 0 then we call such a
design singular. The ith row of A (B) we call a d-row if ai. d−1 = 0 (bi. d−1 = 0).
Let P be a polyhedron. We say that P is vertex {0, 1} if all its vertices are
{0, 1} vectors. We say that P is facet {0, 1} if it can be given with the help
of {0, 1} constraints. We call P a {0, 1}-polyhedron if it is both vertex {0, 1}
and facet {0, 1}. P/j denotes the orthogonal projection of P on the hyperplane
xj = 0, and P \j denotes the intersection of P with the hyperplane xj = 0. The
first operation is called contraction and the second one deletion of the coordinate
j. A polyhedron P 0 is called a minor of P if it can be obtained from P by
successively deletion or contraction one or several coordinates.
For an m × n {0, 1} matrix A, we denote by P≤ (A) = {x ∈ Rn : Ax ≤
1; x ≥ 0} the set packing polytope (SP-polytope) and by P≥ (A) = {x ∈ Rn :
Ax ≥ 1; x ≥ 0} the set covering polyhedron (SC-polyhedron) associated with A.
A {0, 1} SP-polytope is called perfect, and a {0, 1} SC-polyhedron is called
ideal. A SP-polytope P is called minimally imperfect if it is not perfect, but all
its minors are perfect. A minimally non-ideal polyhedron is defined similarly.
It is easy to see that P≥ (DPP) is a minimally non-ideal polyhedron.
For more information on polyhedral combinatorics we refer to Schrijver [13].
If G = (V, E) is a graph, then n = n(G) denotes the number of vertices of G;
ω = ω(G) denotes the cardinality of a maximum clique of G; α = α(G) denotes
the cardinality of a maximum stable set; and χ = χ(G) denotes the chromatic
number of G. A k-clique or k-stable set will mean a clique or stable set of size
26 Grigor Gasparyan
There are several ways to associate a combinatorial structure to a d-design (A, B).
A straightforward way to do it is to take two set systems A = {A1 , . . . , An } and
B = {B1 , . . . , Bn } on some ground set V = {v1 , . . . , vn } such that the matri-
ces A and B are (point-set) incidence matrices of A and B, respectively. Then
the pair of set systems (A, B) have the following property: for each 1 ≤ i, j ≤
n, |Ai ∩ Bj | = 1 + eij di . We call such a pair of set systems a d-design. In par-
ticular, it was proved by Padberg [11] (see also [3]) that the pair of set systems
of ω-cliques and α-stable sets of an (α, ω)-graph is an (α, ω)-design. Another
interesting special case is when A = B. It was proved by de Bruijn and Erdős
[2] that (A, A) is a d-design iff AT is a (may by degenerated) projective plane.
A d-design can be characterized with the help of just one set system AT .
Then the ith column of B can be interpreted as an incidence vector of a set
subsystem of AT , which contains all the points except Ai by exactly once and Ai
by exactly di +1 times. We call such a set system a d-hypergraph. A d-hypergraph
corresponding to a (r, s)-design we call an (r, s)-hypergraph. In particular, −1-
hypergraph is a hypergraph having equal number of edges and vertices such
that for each vertex v, V \v can be partitioned with the help of its edges. We
will show that a −1-hypergraph is an (α, ω)-hypergraph, which corresponds to
the ω-clique hypergraph of some (α, ω)-graph.
An interesting special case is when AT is 2-uniform, i.e. it is a graph. A
nonsingular d-design (A, B) we call a G-design, if A is 2-regular. A graph G we
call a d-graph if there exists a G-design (A, B) such that A is the (edge-vertex)
incidence matrix of G. If G is an odd cycle, then we call (A, B) a C-design.
Let G be a d-graph. Then it is not difficult to show that, for each 1 ≤ i ≤ n,
di = ±1 (see Lemma 9). Denote by G\v (G/v) the graph obtained from G after
deleting (duplicating) the vertex v. It is easy to see that, for each vertex v, either
G\v or G/v has a perfect matching. Call such a graph matchable. The following
lemma characterizes d-graphs:
Bipartite Designs 27
Proof. We will prove by induction on the number of vertices. Suppose the theo-
rem is true for the graphs having less than n vertices and G is a d -graph with n
vertices. Then, clearly, G is connected, has equal number of edges and vertices,
and odd number of vertices. Hence G has exactly one cycle, which is odd, as the
(edge-vertex) incidence matrix of G is nonsingular. Furthermore, if v1 is a leaf of
G, and v1 v2 ∈ E(G), then G\{v1 ; v2 } is matchable. Indeed, for each v 6= v1 , v2 ,
the perfect matching of G\v (or G/v) must contain the edge v1 v2 . Hence after
deleting the edge v1 v2 from the matching, it will be a perfect matching for G\v
(or G/v). It follows that either v2 has degree 2, or it is a vertex of the cycle and
has degree 3.
Let v3 6= v1 such that v3 v2 ∈ E. Now if v2 has degree two then G\{v1 ; v2 } is a
d-graph. Hence by induction hypothesis, the distance from each not degree two
vertex v 6= v1 ; v3 to the cycle is even. If v1 is the unique leaf of G nonadjacent
to the cycle, then the degree of v3 in G\{v1 ; v2 } is one, hence the distances from
v1 and v3 to the cycle are also even. If v4 6= v1 is a leaf nonadjacent to the cycle
and v4 v5 ∈ E then, by induction hypothesis, G\{v4 ; v5 } and G\{v1 ; v2 ; v4 ; v5 }
are a d-graphs, hence the distances from v1 and v3 to the cycle are again even.
If G has no leafs then it is an odd cycle and we have nothing to prove. Suppose
G has leafs, but all of them are adjacent to the cycle. Then it is easy to see that G
has exactly two leafs, the neighbors of which are adjacent vertices in the cycle.
Denote by V1 the set of vertices of G such that G\v has a perfect matching
and by V2 = V \V1 . Then it is easy to see that G/v has a perfect matching iff
v ∈ V2 and |V1 | = |V2 | + 1. Now if (A, B) is a d-design corresponding to G, then
d−1 · 1 =|V1 | − |V2 | = −1, a contradiction.
The sufficiency of the condition is proved by similar arguments.
4 De Bruijn-Erdős’s Matrices
In this section we summarize the information about DE-matrices, which we use
in this paper.
Proof. Delete all one rows and columns and apply Lemma 2.
Lemma 4. Let A and A0 be DE-matrices, where a.1 6=a0 .1 and a.j = a0 .j , 1 <
j ≤ n. Then either A or A0 has an all one column.
Proof. Indeed, if say ai1 = 1 and a0i1 = 0, then ai. = 1T . Hence by Lemma 3, A
has also an all 1 column.
Proof. If (1 − b.i ) · (1 − b.j ) 6= 0, then there exists an index k such that bki =
bkj = 0, hence 1 · b.j = bk. 1 = 1 · b.i . As J − B is connected, it follows that
JB = sJ, for some integer s. Since B has no all 1 column, and it is a DE-matrix,
it cannot have an all 1 row. Hence B is totally s-regular.
The following result, which has been extracted by Sebő [14] from Lehman [8]
(see also [15] and [10]), is one of our key arguments in the proof of Theorem 13.
Denote by A∗ the set of all the solutions of AT x = 1, and by A01 the set of all
{0, 1} vectors in A∗ .
then A is a DE-matrix.
Bipartite Designs 29
Proof. Let Bi ⊆ (A/i)01 be a matrix such that the equation Bi y = x/i has a
unique solution. As x/i has full support, Bi has no all zero row.
Suppose aij = 0, L = {l : alj = 1} and Bi0 is the submatrix of Bi induced by
the rows L. Then all the columns of Bi0 have exactly one 1. Thus we have:
The next important result of Lehman [8] will be used to prove Theorem 12.
Theorem 4 ([8]). Let A be an n × m {0, 1} matrix having full row rank and
no all one or all zero or equal columns. If the vector x ∈ A∗ has full support,
and for each i, affine hull (A/i) can be given with the help of {0, 1} constraints,
then A is a DE-matrix.
5 A Lemma on Matrices
The following lemma contains our main argument from linear algebra. Though
we need just a very special case of the lemma, we would like to state it in general
form, for the sake of possible other applications.
Suppose A, B, D ∈ R n×n ; U, W ∈ R n×m , where D is nonsingular and U
(or W ) has full column rank.
AT B = D + U W T ⇔ BD−1 AT = I + X∆−1 Y T ,
Proof. Denote by
∆T U T −∆ −W T −∆ 0
F = ;E = ; D0 = ;
Y A X B 0 D
Notice that if the inverse of the matrix D is easy to compute, then Lemma
6 reduces the singularity test of the n × n matrix D + U W T to the singularity
test of an m × m matrix ∆.
Taking m = 1, U = W = 1 and D = diag(d) we get:
It follows that Pn if ai. is a−1d-row of a nonsingular d-design (A, B), then for
each k ≤ n, j=1 aij bkj dj = eik . On the other hand, if for some i and
Pn −1
k, j=1 a ij b kj dj = e ik , or, in particular, i 6= k and ai. · bk. = 0, then ei-
ther ai. or bk. is a d-row.
The following simple lemma will also be useful in the sequel.
Proof. If one of the sets has λ elements, then all the other sets contain this one
and are disjoint otherwise. It follows that m ≤ n. Hence we may suppose that
di = |Ai | − λ > 0. Then AT A =diag(d) + λJ. Since λd−1 · 1 6= −1, m ≤ rk
A ≤ n.
The following interesting fact also can be easily deduced from Lemma 6.
Theorem 7 ([12]). In any square design, there exists a set incident to each
given pair of points.
The following theorem completely characterizes the d-designs (A, B), where J −
A is disconnected (the proof is omitted).
1.
100 100
(A, B) ∼
= 1 1 0 , 1 0 1 ;
101 110
2.
1 eT1 1 0
(A, B) ∼
= , ;
1J −I e1 I
3.
0 1 1 101
(A, B) ∼
= 1 J − I J , 0 I 0 ;
1 0 I 00I
4.
1011 1100
0 0 1 1 0 0 0 1
(A, B) ∼
=
1 1 0 0 , 1 0 0 0 .
1101 0011
32 Grigor Gasparyan
Proof. Suppose (A, B) is not an (r, s)-design. Then by Lemma 9 and Theorem
9, for each j, either dj = −1 or dj ≥ r − 1, and by Theorem 9, either A or B
has a d-row. Consider two cases:
Case 1: a1. is a d-row. Now, it follows from Lemma 7 that for each i 6= 1,
either a1. · bi. = 0 or a1. ≤ bi. . As B has no equal columns, it follows that r = 2,
dj = ±1, hence (A, B) is a G-design.
Case 2: b1. is a d-row having maximum number of ones.
Suppose b1. = (1 . . . 1, 0 . . . 0), where b1. 1 = k. Then we have that for each
i 6= 1, either ai. · b1. = 0 or ai. · b1. = r. Moreover, a1. · b1. = r − 1. It follows
that r ≤ k < n. Suppose ai. · b1. = r if 1 < i ≤ l, ai. · b1. = 0 if i ≥ l, and
a1k+1 = 1. Denote by A1 = A[l+1 . . . n; k+1 . . . n], B1 = B[l+1 . . . n; k+1 . . . n].
As A isPnonsingular, l P ≥ k. On the other hand, AT1 B1 =diag(dk+1 . . . dn ) + J,
where j=k+1 dj = j=1 d−1
−1
n n
j 6= −1, hence k ≥ l. It follows that k = l and
A1 is nonsingular. Hence the equation AT1 x = 1 − e1 has a unique solution.
As all the columns of B 0 = B[k + 1 . . . n; 1 . . . k] satisfy that equation, B 0 has
an all
Pnone row. Suppose bp. is the row of B corresponding to that row of B 0 .
−1
As j=1 a2j bpj dj = 0, bp. is a d-row having more ones than b1. , which is a
contradiction.
Notice that only Lemma 8 and Theorem 8 yet contain some information
about the structure of singular designs. The characterization of singular designs
seems to be a more difficult problem, as Lemma 6 cannot be applied directly.
In particular, it would be interesting to check whether there exist singular d-
designs (A, B), where A is r-regular, and r > 2. A partial answer to this question
is given in [14]. Here is another result on that direction. The prove is similar to
the proof of Theorem 10.
In this section we apply Theorem 9 to get some new, smaller sets of conditions
characterizing (α, ω)-graphs. It is not difficult to deduce from Theorem 9 (see
[3]) that G is an (α, ω)-graph iff it has a family of n cliques A and a family
of n stable sets B such that AT B = J − I. The following reformulation of this
statement is a strengthening of a similar result of Hougardy and Gurvich [6].
Theorem 11 ([4]). G is an (α, ω)-graph iff it has an α-stable set A1 such that
for each vertex s ∈ A1 and stable set S ⊂ V ; χ(G\s) = ω = ω(G\S).
34 Grigor Gasparyan
Notice that Theorem 11 immediately implies Theorem 2 and all the proper-
ties of minimal imperfect graphs shown by Padberg [11].
From the proof of Theorem 11 we get:
Proof. Let B be the matrix the ith column of which is the incidence vector of a
q-clique disjoint from the stable set corresponding to the ith column of A. Then
1T AT B1 ≥ pqn, hence n = pq + 1 and AT B = J − I.
The following two theorems contain both Padberg’s theorem on minimally im-
perfect polytopes [11] and Lehman’s theorem on minimally non-ideal polyhedra
[8], and the second one also contains the part of Sebő [14], which corresponds to
nonsingular matrix equations. In the proofs we mainly use the ideas of Lehman
[8], Padberg [10], several results on d-designs of the present work and the follow-
ing simple but surprising fact communicated by Sebő [14]: if P is a facet {0, 1}
polyhedron such that, for each i ≤ n, both P \i and P/i are {0, 1}-polyhedra then
P is full dimensional.
(A, B) the d-design corresponding to F , then the following cases are possible:
1. Either (A, B) is a DPP-design or
∼ 01 11
(A, B) = , ;
1I 0I
References
1. R. S. Bose. A note on Fisher’s inequality for balanced incomplete block design.
Ann. Math. Stat., 20:619–620, 1949.
2. N. G. de Bruijn and P. Erdős. On a combinatorial problem. Indag. Math., 10:421–
423, 1948.
3. V. Chvátal, R. L. Graham, A. F. Perold, and S. H. Whitesides. Combinatorial
designs related to the strong perfect graph conjecture. Discrete Math., 26:83–92,
1979.
4. G. S. Gasparyan. Minimal imperfect graphs: A simple approach. Combinatorica,
16(2):209–212, 1996.
5. G. S. Gasparyan and A. Sebő. Matrix equations in polyhedral combinatorics. In
preparation.
6. S. Hougardy and V. Gurvich. Partitionable Graphs. Working paper.
7. A. Lehman. No the width-length inequality. Math. Programming, 17:403–413, 1979.
36 Grigor Gasparyan
?
András Sebő
1 Introduction
This paper is organized as follows: Section 2 states the main result, its corollaries,
and reformulations. The proof of the main result is provided in sections 3 and
4. Section 5 is devoted to some more examples and other comments.
2 Results
When this does not cause missunderstanding, we will occasionnally use the
shorter notations P ≤ := P ≤ (A≤ ), P ≥ := P ≥ (A≥ ), P := P (A≤ , A≥ ) = P ≤ ∩P ≥ .
≤ ≥
Recall that the polyhedra P ≤ (A0 ) := P ≤ \ I/J and P ≥ (A0 ) := P ≥ \ I/J,
(I, J ⊆ V := {1, . . . , n}, I ∩ J = ∅) are called corresponding minors, and
≤ ≥
(A0 , A0 ) =: (A≤ , A≥ ) \ I/J is a minor of (A≤ , A≥ ). (Note that two minors are
corresponding if and only if the two I ∪ J are the same, since for set-packing
polyhedra deletion is the same as contraction.) Furthermore, if for all such I, J
the polyhedron (P ≤ (A≤ ) \ I/J) ∩ (P ≥ (A≥ ) \ I/J) is integer, then the system
(A≤ , A≥ ) will be called fully integer.
≤
– A0 is a minimal nongraph clutter, or it is partitionable with µ = 0, moreover
≤ ≥
in either case the regular vertex of P ≤ (A0 ) is in P ≥ (A0 ), and it is the
≤ 0≤ ≥ 0≥
unique packing type fractional vertex of P (A ) ∩ P (A ).
– A0 ≥ is a degenerate projective plane, or it is partitionable with µ ≥ 2, more-
≥ ≤
over in either case the regular vertex of P ≥ (A0 ) is in P ≤ (A0 ), and it is
≤ ≥
the unique covering type fractional vertex of P ≤ (A0 ) ∩ P ≥ (A0 ).
0≤ 0≥
– (A , A ) is a mixed odd circuit.
Lovász’s NP-characterization of imperfect graphs [8] (with the additional
properties proved by Padberg[10]), follow:
Corollary 1. Let A≤ be a 0–1-matrix with n columns. Then A≤ is imperfect
≤
if and only if it has either a minimal nongraph or a partitionable minor A0 ,
≤
moreover P (A0 ) has a unique fractional vertex.
Specializing Theorem 1 to set-covering polyhedra one gets Lehman’s celebrated
result [6], see also Seymour [12]:
Corollary 2. Let A≥ be a 0–1-matrix with n columns. Then A≥ is nonideal if
and only if it has either a degenerate projective plane or a partitionable minor
≥ ≥
A0 , moreover P (A0 ) has a unique fractional vertex.
The following two consequences are stated in a form helpful for coNP char-
acterization theorems (see Section 5):
Corollary 3. Let A≤ and A≥ be 0–1-matrices with n columns. Then (A≤ , A≥ )
is not fully integer if and only if at least one of the following statements holds:
– A≤ has a minimal nongraph or a partitionable, furthermore minimal imper-
fect minor with its regular vertex in the corresponding minor of P ≥ (A≥ ),
– A≥ has a degenerate projective plane or a partitionable minor with its regular
≤ ≤
vertex in the corresponding minor P ≤ (A0 ) of P ≤ (A≤ ), where A0 is perfect.
– (A≤ , A≥ ) has a mixed odd circuit minor.
If we concentrate on the structural properties of the matrices A≤ and A≥ implied
by the existence of a fractional vertex we get the following.This statement is not
reversible: if A≤ consists of the maximal stable-sets of an odd antihole, and A≥
of one maximal but not maximum stable-set, then (A≤ , A≥ ) is fully integer,
although A≤ is minimal imperfect !
Note the asymmetry between ‘minimal imperfect’ in the first, and ‘partitionable’
in the second case (for an explanation see 5.2).
The results certainly provide a coNP characterization in the following case:
Characterizing Noninteger Polyhedra with 0–1 Constraints 43
– P is noninteger, and
– P ∩ {x ∈ IRn : xi = 0}(= P ≤ ∩ {x ∈ IRn : xi = 0} ∩ P ≥ ∩ {x ∈ IRn : xi = 0})
is an integer polyhedron for all i ∈ V , and
– P has the sandwich property.
44 András Sebő
Note that Theorem 2 sharpens Theorem 1 in two directions: first, the con-
straint of Theorem 2 does not speak about all minors, but only about the dele-
tion and contraction of elements; second, the integrality after the contraction of
elements is replaced by the sandwich property.
The corollaries about combinatorial and polyhedral minimal nonintegrality
satisfy the condition of Theorem 2 for two distinct reasons. In the combinatorial
case simplicity does not necessarily hold, but deleting the certain equalities from
A≥ , the system remains combinatorially minimal noninteger (see 5.2).
Corollary 6. If (A≤ , A≥ ) is combinatorially minimal noninteger, then at least
one of the following statements holds:
– A≤ is a minimal nongraph or a partitionable clutter with µ = 0, furthermore
it is minimal imperfect, and the regular vertex of P ≤ (A≤ ) is the unique
packing type fractional vertex of P ≤ (A≤ ) ∩ P ≥ (A≥ ).
– A≥ is a degenerate projective plane, or a partitionable clutter with µ ≥ 2,
while A≤ is perfect, and the regular vertex of P ≥ (A≥ ) is in P ≤ (A≤ ).
– (A≤ , A≥ ) is a mixed odd circuit, and 1/21 is its unique fractional vertex.
This easily implies Theorem 1 and its corollaries using the following remark.
(it is particularly close to Corollary 3), while the next corollary does not have
similar consequences. This relies on the following:
– If P is noninteger, (A≤ , A≥ ) does contain a combinatorially minimal nonin-
teger minor. (Proof: In both P ≤ and P ≥ delete and contract elements so that
the intersection is still noninteger. Since the result has still 0–1 constraints
this can be applied successively until arriving at a combinatorially minimal
noninteger system.)
– If P is noninteger, one does not necessarily arrive at a polyhedrally minimal
noninteger polyhedron with deletions and restrictions of variables. (Coun-
terexample: Example 1.)
Gasparyan [4] has deduced this statement by proving that in the polyhedral
minimal case the matrices involved in the matrix equations are nonsingular (see
comments concerning nonsingularity in Example 1).
The main frame of the present paper tries to mix (the polar of) Lehman’s
polyhedral and Padberg’s matricial approaches so as to arrive at the simplest
possible proof. Lemmas 1–4 and Lemma 7 are more polyhedral, Lemma 5,
Lemma 6 and Lemma 8 are matricial and combinatorial. When specializing
these to ideal clutters, their most difficult parts fall out and quite short variants
of proofs of Lehman’s or Padberg’s theorem are at hand.
Remark 2. Compare Lemma 1 with Fonlupt, Sebő [2]: a graph is perfect if and
only if the linear rank of the maximum cliques (as vertex-sets) in every induced
subgraph is at most n − ω + 1 where ω is the size of the maximum clique in the
subgraph; the equality holds if and only if the subgraph is uniquely colorable.
We note and use in the sequel without reference that if P is minimal non-
integer, then w > 0 for all fractional vertices w of P (wi = 0 would imply that
(P ≤ \ i) ∩ (P ≥ \ i) is also noninteger).
In sections 3 and 4 I will denote the identity matrix, J the all 1 matrix
of appropriate dimensions;
A is called r-regular, if 1A = r1, and r-uniform if
A1 = r1; Ac := V \ A : A ∈ A . A is said to be connected if V cannot be
partitioned into two nonempty classes so that every A ∈ A is a subset of one of
the two classes. There is a unique way of partitioning A and V into the connected
components of A.
Lemma 2. If (A≤ , A≥ ) is minimal noninteger, w is a fractional vertex of P :=
P (A≤ , A≥ ), and A ⊆ Aw is a set of n linearly independent members of Aw ,
then every connected component K of Ac is n − rK -regular and n − rK -uniform
(rK ∈ IN), and r(A − v) = n − dA (v).
Proof. Recall that w > 0. If P is minimal noninteger, then for arbitrary i ∈ V the
i
sandwich property provides us Qi ⊆ IRV \{v} , wi ∈ P ≤ (A≤ )∩P ≥ (A≥ ) ⊆ Qi ⊆
i i
P ≤ (A≤ ) ∩ P ≥ (A≥ ) , that is, wi ∈ Qi and wi > 0. Applying the inequality in
Lemma 1 to Qi and wi , and using the trivialbut crucial fact that Awi (Qi ) ⊇ A−i,
we get the inequality r(A − i) ≤ n − max |A| : A ∈ A − i .
On the other hand, r(A) = n by assumption. One can now finish in a few
lines like Conway proves de Bruijn and Erdős’s theorem [7], which is actually
the same as Seymour [12, Lemma 3.2]:
Let H := Ac for the simplicity of the notation. What we have proved so far
translates as dH (v) ≤ |H| for all v ∈ H ∈ H. But then,
X X X X X X X
n= 1= 1/|H| = 1/|H| = dH (v)/|H| ≤ 1,
H∈H H∈H v∈H v∈V H∈H,v∈H v∈V v∈V
Remark 3. The situation of the above proof will be still repeated several times:
when applying Lemma 1, the 0–1 vectors that have an important auxiliary role
for bounding the rank of some sets are in Bw (Qi ), and are not necessarily vertices
Characterizing Noninteger Polyhedra with 0–1 Constraints 47
of P . The reader can check on mixed odd circuits that the neighbors B =
{B1 , . . . , Bn } of 1/21 are not suitable for the same task (unlike in the special
cases): the combinatorial ways that use B had to be replaced by this more general
polyhedral argument. Watch for the same technique in Lemma 7 !
The next lemma synthesizes two similar proofs occurring in the special cases:
The following lemma extracts and adapts to our needs well-known statements
from Lehman’s, Seymour’s and Padberg’s works, and reorganizes these into one
statement. It can also be deduced by combining results of Gasparyan [4], which
investigate combinatorial properties implied by matrix equations. For instance
the connectivity property of Lemma 6 below is stated in [4] in a general self-
contained combinatorial setting.
Lemma 6. If P is minimal noninteger, and w ∈ P is a fractional vertex of P ,
then A = A(w) is nonsingular and connected , moreover,
Proof. (Sketch) If Ac has at least two components, then any two sets whose
complements are in different components cover V . This, and the matrix equation
of Lemma 5 determine a degenerate combinatorial structure. (For instance one
can immediately see that the associate of a third set has cardinality at most two,
and it follows that all but at most one members of B have at most two elements.)
If Ac has one component,then the uniformity and regularity of Ac claimed
by Lemma 2 implies that of A. t
u
Check the statement for the mixed C7 of Example 1 ! (It can also be instructive
to follow the proof on this example. )
5 Comments
5.1 Further Examples
A system (A≤ , A≥ ) for which a P (A≤ , A≥ ) ⊆ IR5 is integer, but (A≤ , A≥ ) is
not fully integer: the rows of A≤ are (1, 1, 0, 0, 0), (0, 1, 1, 0, 0), (1, 0, 1, 0, 0) and
(0, 0, 1, 1, 1); A≥ consists of only one row, (0, 0, 0, 1, 1).
We mention that a class of minimal noninteger simple systems (A≤ , A≥ ) with
the property that (A≤ , A≥ ) \ i (i ∈ V ) defines an integer, but not always fully
integer polyhedron, can be defined with the help of ‘circular’ minimal imperfect
and minimal nonideal systems (see Cornuéjols and Novick [1]): define A≤ := Cnr ,
A≥ := Cns , where r ≤ s and A≤ is minimal imperfect, A≥ is minimal nonideal.
Such examples do not have mixed vertices, so they also show that the first
two cases of our results can both occur in the same polyhedron.
Acknowledgments
I am thankful to Grigor Gasparyan and Myriam Preissmann for many valuable
comments. Furthermore, I feel lucky to have learnt Lehman’s results and espe-
cially to have heard the main ideas of Padberg’s work from Grigor Gasparyan.
I would like to thank András Frank for comparing a lemma in [12] concerning
ideal matrices to Erdős and de Bruijn’s theorem: this helped me getting closer
to ideal matrices and strengthened my belief in a common generalization (a
particular case of Fisher’s inequality is implicit in proofs for minimal imperfect
graphs as well, see [3]).
Last but not least I am indebted to Kazuo and Tomo Murota for their mirac-
ulous help of various nature: due to them, it was possible to convert an extended
abstract to a paper during five jet-lag-days.
References
1. G. Cornuéjols and B. Novick. Ideal 0–1 matrices. J. of Comb. Theory B, 60(1):145–
157, 1994.
2. J. Fonlupt and A. Sebő. The clique rank and the coloration of perfect graphs. In
R. Kannan and W. Pulleyblank, editors, Integer Programming and Combinatorial
Optimization I. University of Waterloo Press, 1990.
3. G. Gasparyan. Minimal imperfect graphs: A simple approach. Combinatorica,
16(2):209–212, 1996.
4. G. Gasparyan. Bipartite designs. In R. E. Bixby, E. A. Boyd, and R. Z. Rı́os-
Mercado, editors, Integer Programming and Combinatorial Optimization: Proceed-
ings of the 6th International Conference on Integer Programming and Combinato-
rial Optimization, LNCS, Vol. 1412, pages 23–35. Springer, 1998. This volume.
5. G. Gasparyan and A. Sebő. Matrix equations in polyhedral combinatorics. 1998.
In preparation.
6. A. Lehman. The width-length inequality and degenerate projective planes. In
W. Cook and P. D. Seymour, editors, Polyhedral Combinatorics, DIMACS, Vol. 1,
pages 101–105, 1990.
7. J. H. van Lint and R. M. Wilson. A Course in Combinatorics. Cambridge Univer-
sity Press, 1992.
8. L. Lovász. A characterization of perfect graphs. J. of Comb. Theory B, 13:95–98,
1972.
9. M. Padberg. Perfect zero-one matrices. Math. Programming, 6:180–196, 1974.
10. M. Padberg. Lehman’s forbidden minor characterization of ideal 0–1 matrices.
Discrete Mathematics, 111:409–420, 1993.
11. A. Schrijver. Theory of Linear and Integer Programming. Wiley, 1986.
12. P. D. Seymour. On Lehman’s width-length characterization. In Polyhedral Combi-
natorics, DIMACS, Vol. 1, pages 107–117, 1990.
A Theorem of Truemper
?
Michele Conforti and Ajai Kapoor
1 Truemper’s Theorem
Let β be a 0,1 vector indexed by the chordless cycles of an undirected graph
G = (V, E). G is β-balanceable if its edges can be labelled with labels 0 and 1
such that l(C) ≡ βC mod 2Pfor every chordless cycle C of G, where l(e) is the
label of edge e and l(C) = e∈E(C) l(e).
We denote by β H the restriction of the vector β to the chordless cycles of an
induced subgraph H of G.
In [14] Truemper showed the following theorem:
Theorem 1. A graph G is β-balanceable if and only if every induced subgraph
H of type (a), (b), (c) and (d) (Figure 1) is β H -balanceable.
Graphs of type (a), (b) or (c) are referred to as 3-path configurations (3P C’s).
A graph of type (a) is called a 3P C(x, y) where node x and node y are connected
by three internally disjoint paths P1 , P2 and P3 . A graph of type (b) is called
a 3P C(xyz, u), where xyz is a triangle and P1 , P2 and P3 are three internally
disjoint paths with endnodes x, y and z respectively and a common endnode
u. A graph of type (c) is called a 3P C(xyz, uvw), consists of two node disjoint
triangles xyz and uvw and disjoint paths P1 , P2 and P3 with endnodes x and
u, y and v and z and w respectively. In all three cases the nodes of Pi ∪ Pj
i 6= j induce a chordless cycle. This implies that all paths P1 , P2 , P3 of (a) have
length greater than one. Graphs of type (d) are wheels (H, x). These consist of a
chordless cycle H called the rim together with a node x called the center, that
has at least three neighbors on the cycle. Note that a graph of type (b) may also
be a wheel.
?
Supported in part by a grant from Gruppo Nazionale Delle Ricerche-CNR.
Assume G is connected and contains a clique cutset Kl with l nodes and let
G01 , G02 , . . . , G0n be the components of the subgraph induced by V (G) \ Kl . The
blocks of G are the subgraphs Gi induced by V (G0i ) ∪ Kl , i = 1, . . . , n.
Proof: The ”only if” part is obvious. We prove the ”if” statement when G has
a K2 cutset {u, v}, since the other case is again immediate. All blocks have a
β-balancing in which edge uv has the same label, since all blocks Gi are β Gi -
balanceable and we can always scale on a cut of Gi separating u and v. The
A Theorem of Truemper 55
in T and vi is chosen so that amongst all nodes in N (v) \ {v0 , . . . , vi−1 } the
path between nodes v and vi is shortest in the subgraph of G with edge set
E(Gv ) ∪ {vv0 , . . . , vvi−1 }. Now place first the edges of T , then the other edges
of Gv in a consistent ordering with respect to T \ {v}, then vv1 , . . . , vvk . This
ordering is a consistent ordering for G and the signing algorithm can be applied
to produce from the β-balancing of Gv , a β-balancing of G. 2
Proof: Let G00 be the subgraph of G0 , induced by V (G0 ) \ V (C). If G00 is a single
node, say u, and u has only two neighbors ci and cj in C, then ci and cj are
nonadjacent and G0 is a 3P C(ci , cj ). Otherwise G0 is a wheel with u as center.
If G00 contains more than one node, by 3) we have that G00 is connected and
that:
4) Every node of G00 has at most two neighbors in C and these two neighbors
are adjacent.
5) G00 contains at most one pair of nodes, say x1 and xn such that both x1 and
xn have neighbors in C and (N (x1 ) ∪ N (xn )) ∩ V (C) either contains at least
three nodes or two nonadjacent nodes.
(Indeed by 3), we have that G00 is connected. So if G00 contains more that one
such pair, let x1 , xn be chosen satisfying 5) and closest in G00 . Let P = x1 , . . . , xn
be a shortest path in G00 connecting them. The subgraph G∗ of G, induced by
V (C) ∪ V (P ) satisfies 1) and 2). Then if more that one such pair exists, G∗ is a
proper subgraph of G0 and this contradicts 3).)
Let C = c1 , . . . , cm and assume first that G00 contains one pair of nodes, x1 ,
xn satisfying 5). Then by 3), G00 is a path P = x1 , . . . , xn . If a node of C, say
ci , is adjacent to a node xi , 1 < i < n of P , then by 3) and 4), x1 is adjacent to
ci−1 , possibly to ci and no other node of C. Node xn is adjacent to ci+1 , possibly
to ci (indices modm) and no other node of C. Therefore no other node of C is
adjacent to an intermediate node of P . In this case, G0 is a wheel with center ci .
If no node of C is adjacent to an intermediate node of P , then by 4) we can
assume w.l.o.g. that x1 is adjacent to ci−1 and possibly ci and xn is adjacent to
cj+1 and possibly cj . If x1 or xn has two neighbors in C and i = j, then G0 is a
wheel with center ci . In the remaining cases G0 is a 3-path configuration.
If G00 contains no pair of nodes satisfying 5), by 1) and 4) we have that C is
a triangle c1 , c2 , c3 , all three nodes of C have neighbors in G00 and no node of G00
has more than one neighbor in C. If G00 is a chordless path P = x1 , . . . , xn with
A Theorem of Truemper 57
x1 adjacent to, say c1 and xn adjacent to c2 , then c3 has some neighbor in P and
G0 is a wheel with center c3 . Otherwise let P12 be a shortest path connecting c1
and c2 and whose intermediate nodes are in G00 . If c3 has a neighbor in P12 we
have a wheel with center c3 . Otherwise let P3 be a shortest path connecting c3
and V (P12 ) \ {c1 , c2 } and whose intermediate nodes are in G00 . By 3), G0 is made
up by C, together with P12 and P3 , furthermore P3 meets P12 either in a node
x or in two adjacent nodes t1 , t2 . In the first case, we have a 3P C(c1 c2 c3 , x),
otherwise we have a 3P C(c1 c2 c3 , t1 t2 t3 ). 2
For e ∈ E(G), Ge denotes the graph whose node set represents the chordless
cycles of G containing e and whose edges are the pairs C1 , C2 in V (Ge ), such
that C1 and C2 belong to a 3-path configuration or a wheel.
Proof: Assume not. Let Ge1 and Ge2 be two components of Ge . Let Gi be the
subgraph of G induced by the node set ∪C∈Gei V (C), for i = 1, 2.
Assume first that {u, v} is a K2 cutset separating G1 from G2 in the graph
induced by V (G1 ) ∪ V (G2 ). Pick C1 ∈ Ge1 and C2 ∈ Ge2 and a path P in G such
that in the subgraph G0 of G induced by V (C1 ) ∪ V (C2 ) ∪ V (P ), {u, v} is not
a K2 cutset and C1 , C2 and P are chosen so that |P | is minimized. (Note that
P exists since {u, v} is not a K2 cutset of G). Then by the minimality of P , no
node of P is contained in a chordless cycle containing edge e. By Lemma 6, C1
is a chordless cycle in a 3-path configuration or wheel H, contained in G0 . Since
any edge in a 3-path configuration or wheel is contained in two chordless cycles,
V (C1 ) ∪ V (C2 ) ⊆ V (H). But then C1 C2 is an edge of Ge , a contradiction.
So {u, v} is not a K2 cutset in the graph induced by V (G1 ) ∪ V (G2 ). Let
C2 ∈ Ge2 , such that for some C ∈ Ge1 , {u, v} is not a K2 cutset in the graph
induced by V (C) ∪ V (C2 ). Let C2 be u = v1 , . . . , vm = v. Let v C be the node of
lowest index in V (C2 ) \ V (C) and let SC be the component of the graph induced
by V (C2 )\V (C) containing node v C . Amongst all C ∈ Ge1 such that {u, v} is not
a K2 cutset in the graph induced by V (C) ∪ V (C2 ), let C1 be the chordless cycle
for which the node v C1 has the highest index and with respect to that |SC1 | is
smallest possible. By Lemma 6, C1 is a chordless cycle of a 3-path configuration
or wheel H contained in V (C1 ) ∪ V (SC1 ). Let C3 be the chordless cycle of H
distinct from C1 containing edge e. We show that C3 contradicts the choice of
C1 . Since H contains C1 and C3 , C3 ∈ Ge1 . Also C2 and C3 have a common node
which is distinct from u or v and so uv is not a K2 cutset in the subgraph of G,
induced by V (C3 ) ∪ V (C2 ). If v C1 is contained in V (C3 ) then v C3 has an index
higher than i, a contradiction, otherwise since SC3 ⊆ SC1 and some node of SC1
belongs to C3 , |SC3 | < |SC1 |, a contradiction. 2
Proof of Theorem 1: The necessity of the condition is obvious. We prove the
sufficiency by contradiction. Assume that G and β are chosen so that G is a
counterexample to the theorem with respect to β and V (G) is minimal. Then G
is connected and by Remark 5 G contains no K1 or K2 cutset.
58 Michele Conforti and Ajai Kapoor
Clearly triangulated graphs i.e. graphs that do not contain a hole are universally
signable. In [5] these graphs are shown to generalize many of the structural prop-
erties of triangulated graphs. Here we show a decomposition theorem that follows
easily from the co-NP characterization of these graphs as given by Theorem 1.
Theorem 11. A connected universally signable graph that is not a hole and is
not a triangulated graph contains a K1 or K2 cutset.
It was the above decomposition theorem that prompted us to look for a new
proof for Theorem 1.
Now Theorem 11 and the following result of Hajnal and Suranyi [11] can be
used to decompose with clique cutsets a universally signable graph into holes
and cliques.
Theorem 12. A triangulated graph that is not a clique contains a clique cutset.
Theorem 13. A graph is α-balanceable if and only if αC is even for all even
length chordless cycles C and odd otherwise and every subgraph H of G of type
(a), (b), (c) or (d) is αH -balanceable.
To see that the two theorems are equivalent note that an α-balancing of G
with labels of 1 and −1, is implied by a β-balancing with β = ( αC −|E(C)|
2 ) mod 2,
by replacing the 0’s by −1’s. Similarly the β-balancing of G with labels of 0 and
1 is implied by an α-balancing with αC = (2βC + |E(C)|) mod 4, by replacing
the −1’s by 0’s.
A Theorem of Truemper 61
The bipartite graph G(A) of a matrix A has the row and column sets of A as
color classes and for all entries aij 6= 0, G(A) has an edge ij of label aij .
A 0, ±1 matrix A is balanced if G(A) is α-balanced for the vector α of all
zeroes. A 0, 1 matrix A is balanceable if G(A) is α-balanceable for the vector α
of all zeroes. (From now on, signing consists of replacing some of the 10 s with
−10 s).
Note that the same signing algorithm of Section 1, applied to G(A), can be
used to obtain a balanced matrix from A, when A is balanceable. Here signing
the edges of G(A) means assigning labels ±1.
We can now derive from Theorem 13 a co-NP characterization of balanceable
matrices:
Proof: By Theorem 13 we only need to find in G(A) the subgraphs of type (a),
(b), (c) or (d) that are not balanceable. Since G(A) is bipartite it cannot contain
graphs of type (b) or (c). Graphs of type (a) with both endnodes in the same
side of the bipartition are seen to be balanceable by signing the edges so that the
three paths have the same length mod 4. When the two nodes of degree 3 belong
to opposite sides of the bipartition then since two of the paths have the same
length mod4, either 1 mod 4 or 3 mod 4 there exists a chordless cycle signed
incorrectly with respect to α of all zeroes.
For a wheel (H, x), let C1 , . . . , Ck be the chordless cycles of (H, x) containing
x. Obtain a signing
P of the graphP so that C1 , . . . , Ck are signed correctly.
Pk For F ⊆
k
E, let l(F ) = e∈F l(e). Then i=1 l(Ci ) ≡ 0 mod 4. But l(H) = i=1 l(Ci ) −
2l(S) where S consists of all edges with one endpoint the center node of the
wheel. Since 2l(S) ≡ 2|S| mod 4, clearly l(H) ≡ 0 mod 4 if and only if k = |S|
is even. 2
In [8], [2], a polynomial algorithm is given, to recognize if a matrix is balance-
able or balanced. Balanced 0, ±1 matrices have interesting polyhedral properties
and have been recently the subject of several investigations, see [7] for a survey.
length 6 (and the center node has obviously three neighbors in the rim). We will
see this later in this section.
To state the theorem of Tutte characterizing regular matrices, we need to
introduce the notion of pivoting in a matrix. Pivoting
on an entry
6= 0 of a
yT − yT
matrix A = , we obtain the matrix B = .
x D x D − xy T
Remark 15. Let B be obtained from A by pivoting on the nonzero entry aij .
Then:
– A can be obtained from B by pivoting on the same entry.
– Let aij be the pivot element. Then bij = −aij . For l 6= j, bil = ail and for
k 6= i, bkj = akj . For l 6= j and k 6= i, bkl = akl − aij ail akj
– det(A) = ±det(D − xy T ) and det(B) = ±det(D).
We are interested in performing the pivot operations on A both over the reals
(R-pivoting) and over GF 2 (GF 2-pivoting). Let B be a matrix obtained from
A by performing a GF 2-pivot or an R-pivot. We next show how to obtain G(B)
from G(A).
Remark 16. Let B be the 0, 1 matrix obtained from a 0, 1 matrix A by GF 2-
pivoting on aij = 1. Then G(B) is obtained from G(A) as follows:
Remark 17. Let B̃ be the matrix obtained from a weakly balanced 0, ±1 matrix
à by R-pivoting on a non-zero entry aij = . Then B̃ is a 0, ±1 matrix and
G(B̃) is obtained from G(Ã) as follows:
Proof: 1) is trivial. By Remark 15, for k 6= i and l 6= j, bkl = akl − akj ail .
Note that 2 = 1. So bkl is the value of the determinant of the 2 × 2 submatrix
of à with rows i, k and columns j, l. Since à is weakly balanced, bkl and bkl ,
have values in 0, ±1. For 2), note that all 2 × 2 submatrices of à with all four
entries non-zero have determinant 0. Finally since the 2 × 2 submatrix of B̃ has
determinant 0, part 3) follows. 2
A Theorem of Truemper 63
To prove the above result, we need the following three lemmas (the first is
well known):
Lemma 20. A 0, 1 matrix A is regular if and only if any matrix obtained from
A by GF 2-pivoting is regular.
Proof: We show that G(B̃) can be obtained from G(B) by applying the signing
algorithm. Let T be any tree in G(B̃), chosen to contain all edges in {ij} ∪
{ix : x ∈ N (i)} ∪ {jy : y ∈ N (j)}. Then T is also a tree of G(Ã). Let
S = t1 , . . . , t|T |−1 , e1 , . . . , el be a consistent ordering of the edges of G(B̃), where
ti are edges in T . We show that the signing of G(B̃) can be obtained by the
signing algorithm with sequence S, where the edges of T are labeled as in G(B̃).
Let ek be an edge of S and Cek be a chordless cycle of G(B) containing ek and
edges in S \ ek+1 , . . . , em , such that Cek has the largest possible intersection
with {i, j} and, subject to this, Cek is shortest. We show that Cek forces ek to
be signed as in G(B̃).
Remark 17 shows that if Cek contains both nodes i and j and has length 4,
then Cek forces ek to be signed as in G(B̃).
All other edges ek are labeled the same in G(B̃) and G(Ã). We show that
Cek forces this signing of edge ek .
If Cek contains both nodes i and j and has length bigger than 4, then in
G(Ã) the nodes of Cek induce a cycle with unique chord i1 j1 , where i1 and j1
are the neighbors of i and j in Cek . By Remark 17, the sum of the labels on
the edges i1 i, ij, jj1 in G(B̃) is equivalent modulo 4 to the label of edge i1 j1 , in
G(Ã). Thus the cycle Ce0 k of G(Ã) induced by V (Cek ) \ {i, j} and the cycle Cek
of G(B̃) force ek to be signed the same.
If Cek contains one of {i, j}, say i, then by choice of Cek , node j has i as
unique neighbor in Cek . For, if not, ek either belongs to a chordless cycle of G(B̃)
of to a chordless cycle that is shorter that Cek and contains node j (this happens
when (Cek , j) is the rim of a wheel with center j and no hole of (Cek , j) contains
i, j and ek ), a contradiction to our assumption.
64 Michele Conforti and Ajai Kapoor
But then Cek is also a chordless cycle of G(Ã) and forces ek to be signed as
in G(B̃).
If Cek contains neither i nor j and at most one neighbor of i or j then Cek is
also a chordless cycle of G(Ã) and forces ek to be signed as in G(B̃). Otherwise
by the choice of Cek , node i has a unique neighbor i0 in Cek , node j has a unique
neighbor j 0 in Cek and i0 , j 0 are adjacent. So, by Remark 17, G(Ã) contains a
hole Ce0 k , whose node set is V (Cek ) ∪ {i, j}. This hole Ce0 k and the hole Cek of
G(B̃) force ek to be signed the same. 2
Lemma 22. From every 0, 1 matrix A that is not regular, we can obtain a 0, 1
matrix that is not balanceable by a sequence of GF 2-pivots.
Proof: Let A be the smallest 0, 1 matrix (in terms of the sum of the number of
rows and columns) that is not regular but cannot be pivoted to a matrix that
is not balanceable. Since A is obviously balanceable, let à be a corresponding
balanced 0, ±1 matrix. By minimality, we can assume that à is square and
|det(Ã)| ≥ 2. By Remark 15, we can R-pivot on any nonzero entry of à to
obtain a 0, ±1 matrix B̃ which contains a proper submatrix C̃ with the same
determinant value as Ã. Since à is weakly balanced, by Remark 17, B̃, and
hence C̃, is a 0, ±1 matrix. Let B be the 0, 1 matrix with the same support as B̃
and C the submatrix of B corresponding to C̃. By Corollary 18, B is obtained
from A with a GF 2-pivot on the same element. Assume B̃ is balanced. Then C̃
would be a balanced matrix which is not TU. However, this implies that C is
not regular (this was already known to Camion [1]): Indeed, C̃ is a signing of C
which is balanced but not TU: So C̃ can be obtained by applying the signing
algorithm on G(C), starting with a tree T of G(C). Assume C has a TU signing
C̃ 0 . Since C̃ 0 is also a balanced matrix, then G(C̃ 0 ) can be obtained through the
signing algorithm by signing T as in G(C̃ 0 ). So G(C̃) and G(C̃ 0 ) differ on some
fundamental cuts of T . So C̃ can be transformed in C̃ 0 by multiplying by −1 the
rows and columns corresponding to the nodes in on shore of this cut. However
this operation preserves the TU property.
So B̃ is not balanced and by Lemma 21, B is not balanceable. 2
Proof of Theorem 19: By Lemma 20, regular matrices are closed under GF 2-
pivoting and if A is a 0, 1 matrix such that G(A) contains a wheel G(W ) whose
rim has length 6, then W (hence A) is obviously not regular.
For the sufficiency part, if A is a 0, 1 matrix which is not regular, then by
Lemma 22, we can obtain by GF 2-pivots a 0, 1 matrix B which is not bal-
anceable. By Theorem 14, G(B) contains a 3P C(x, y) where x and y belong to
distinct color classes, or a wheel with rim H and center v and v has an odd
number, greater than one, of neighbors in H.
If G(B) contains a 3P C(x, y), Remark 16 shows that we can GF 2-pivot on
B so that all of its paths have length three and by doing a last GF 2-pivot on an
entry corresponding to an edge incident to x, we obtain a wheel whose rim has
length 6.
A Theorem of Truemper 65
5 Decomposition
The co-NP characterizations obtained in Theorems 8, 9 and 14 are used in [3],
[4], [8], [2] to obtain the decomposition results for graphs without even holes,
cap-free graphs and balanceable matrices. However the proofs of these theorems
are long and technical. We have seen how Theorem 1 can be used to decompose
universally signable graphs with K1 and K2 cutsets into holes and triangulated
graphs. Here we further illustrate in two easy cases the use of a co-NP character-
ization to obtain decomposition results and polynomial recognition algorithms.
Proof: Let G0 be the bipartite graph obtained from G(A) by replacing each edge
with a path of length 3 and A0 be the 0, 1 matrix such that G0 = G(A0 ). Then
there is a correspondence between the cycles of G(A) and the holes of G0 . So
A is signable to be RU if and only if G0 is α-balanceable for the vector α of all
66 Michele Conforti and Ajai Kapoor
Proof: We prove the first statement. Let x and y be two attachments of a bridge
B of a cycle C. If x and y belong to distinct color classes of G(A), then G(A)
contains a heterogeneous W 3P C(x, y) where P1 , P2 are the two xy-subpaths of
C and P3 is any xy-path in B. The proof of the second statement is similar. 2
Proof: To prove the first statement, assume B1 and B2 are homogeneous bridges
of C having attachments x1 , y1 of B1 and x2 , y2 of B2 , appearing in the order
x1 , x2 , y1 , y2 when traversing C. If x1 , y1 and x2 , y2 are in distinct color classes
of G(A), we have a heterogeneous W 3P C(x1 , x2 ), where P1 is the subpath of
C, connecting x1 , x2 and not containing y1 . P2 and P3 contain respectively a
x1 , y1 -path in B1 and a x2 , y2 -path in B2 . The proof of the second part is similar.
2
Proof: By Lemma 24, x and y are the only two attachments of B. Let P1 , P2 be
the two subpaths of C, connecting x and y. By Lemma 25, no bridge of C has
an attachments in both P1 \ {x, y} and P2 \ {x, y}. So no two of B, P1 and P2
are in the same component of G(A) \ {x, y} and, since at least two of them are
not edges, G(A) \ {x, y} contains at least two components. 2
Theorem 27 ([18]). Let A be 0, 1 matrix that is signable to be RU and C
any cycle of G(A) containing homogeneous bridges B1 and B2 with attachments
in distinct color classes of G(A). Then C contains two edges whose removal
disconnects G(A) and separates B1 and B2 .
Proof: Assume that the attachments of B1 and B2 belong to the ”red” and
”blue” sides of the bipartition of G(A). Let P1 be be minimal subpath of C with
the following property:
P1 contains all the attachments of B1 and no bridge of C with red attachments
has all its attachments either in P1 or outside P1
The subpath P2 is similarly defined, with respect to B2 and the bridges with
blue attachments. By Lemma 25 P1 and P2 can be chosen to be nonoverlapping.
Furthermore by minimality of P1 and P2 , the endnodes a1 , b1 of P1 are red nodes
and the endnodes a2 , b2 of P2 are blue nodes. Let C = a1 , P1 , b1 , Pb1 b2 , b2 , P2 , a2 ,
Pa2 a1 , let b be any edge of Pb1 b2 and a any edge of Pa1 a2 . By Lemma 25 and the
construction of P1 and P2 , P1 ∪ B1 and P2 ∪ B2 belong to distinct components
of G \ {a, b}. 2
Clearly to test if A is signable to be RU, we can assume that G(A) is bicon-
nected, otherwise we work on the biconnected components.
If G(A) is biconnected and contains no cycle with homogeneous bridges with
attachments in distinct color classes of G(A), then A has two ones per row or per
column. (This is easy from network flows). In this case A is obviously RU: Sign A
so that each row or column contains a 1 and a −1 to obtain a network matrix (or
its transpose). From this fact and the above theorem yield in a straightforward
way a polytime algorithm to test if a 0, 1 is signable to be RU. This algorithm,
combined with the signing algorithm of Section 1, gives a procedure to test if a
0, ±1 matrix is RU.
In a similar manner, see [9], Theorem 26 and the signing algorithm give
procedures to test if a 0, 1 matrix is signable to be TO and to test if a 0, ±1
matrix is TO.
References
1. P. Camion. Caractérisation des matrices totalement unimodulaires. Cahiers Centre
Études Rech. Op., 5:181–190, 1963.
2. M. Conforti, G. Cornuéjols, A. Kapoor, and K. Vušković. Balanced 0, ±1 matrices,
Parts I–II. 1994. Submitted for publication.
3. M. Conforti, G. Cornuéjols, A. Kapoor, and K. Vušković. Even-hole-free graphs,
Parts I–II. Preprints, Carnegie Mellon University, 1997.
68 Michele Conforti and Ajai Kapoor
1 Introduction
Let G = (V, E) be an undirected graph. A subset S of V is called a stable
set if any two elements of S are nonadjacent. Given a weight vector P
w ∈ <V ,
a maximum weight stable set is a stable set S maximizing w(S) = i∈S wi .
The problem of finding a maximum weight stable set is called the maximum
weight stable set problem (MWSSP). It is well known that the problem can be
formulated as the following integer programming problem:
In this paper, we consider the problem generalized as follows: for a given finite
set V and for given P, N, I ⊆ V × V ,
Here we call this problem the generalized stable set problem (GSSP). We note
that the GSSP is equivalent to the generalized set packing problem discussed in
[1,2]. To deal with the GSSP, a ‘bidirected’ graph is useful. A bidirected graph
G = (V, E) has a set of vertices V and a set of edges E, in which each edge
e ∈ E has two vertices i, j ∈ V as its endpoints and two associated signs (plus
or minus) at i and j. The edges are classified into three types: the (+, +)-edges
with two plus signs at their endpoints, the (−, −)-edges with two minus signs,
and the (+, −)-edges (and the (−, +)-edges) with one plus and one minus sign.
Given an instance of the GSSP, we obtain a bidirected graph by making (+, +)-
edges, (−, −)-edges and (+, −)-edges for vertex-pairs of P, N and I respectively.
Conversely, for a given bidirected graph with a weight vector on the vertices, by
associating a variable xi with each vertex, we may consider the GSSP. We call
a 0−1-vector satisfying the inequality system arising from a bidirected graph G
a solution of G. We also call a subset of vertices a solution of G if its incidence
vector is a solution of G. The GSSP is an optimization problem over the solutions
of a bidirected graph.
Since several distinct bidirected graphs may have the same set of solutions,
we deal with some kind of ‘standard’ bidirected graphs. A bidirected graph is
said to be transitive, if whenever there are edges e1 = (i, j) and e2 = (j, k) with
opposite signs at j, then there is also an edge e3 = (i, k) whose signs at i and k
agree with those of e1 and e2 . Obviously, any bidirected graph and its transitive
closure have the same solutions. A bidirected graph is said to be simple if it has
no loop and if it has at most one edge for each pair of distinct vertices. Johnson
and Padberg [3] showed that any transitive bidirected graph can be reduced to
simple one without essentially changing the set of solutions, or determined to
have no solution. We note that a transitive bidirected graph has no solution if
and only if it has a vertex with both a (+, +)-loop and a (−, −)-loop. For any
bidirected graph, the associated simple and transitive bidirected graph can be
constructed in time polynomial in the number of vertices.
Given a bidirected graph G, its underlying graph, denoted by G, is defined as
the undirected graph obtained from G by changing all the edges to (+, +)-edges.
A bidirected graph is said to be claw-free if it is simple and transitive and if its
underlying graph is claw-free (i.e., does not contain a vertex-induced subgraph
which is isomorphic to the complete bipartite graph K1,3 ).
It is well known that the MWSSP is NP-hard for general undirected graphs
(and hence, the GSSP is also NP-hard). However, for several classes of undirected
graphs, the MWSSP is polynomially solvable. For example, Minty [4] proposed a
polynomial time algorithm for the MWSSP for claw-free undirected graphs. On
the other hand, there are several polynomial transformations from the GSSP to
the MWSSP (see [5,6]). Unfortunately, we cannot easily derive the polynomial
solvability of the GSSP for claw-free bidirected graphs by using these transfor-
mations, because these do not preserve claw-freeness. Our aim in this paper is
to verify that the GSSP for claw-free bidirected graphs is polynomially solvable.
In this section, we will give several definitions and discuss basic properties of
solutions of bidirected graphs. Let G = (V, E) be a simple and transitive bidi-
The Stable Set Problem for Claw-Free Bidirected Graphs 71
We say that a vertex is positive (or negative) if all edges incident have plus
(or minus) signs at it, and that a vertex is mixed if it is neither positive nor
negative. If a bidirected graph has no (−, −)-edge, it is said to be pure. We say
that a bidirected graph is canonical if it is simple, transitive and pure and it has
no negative vertex. For any instance (G, w) of the GSSP, we can transform it to
equivalent one whose bidirected graph is canonical as follows. From the previous
section, we can assume that G is simple and transitive. Johnson and Padberg [3]
proved that G has at least one solution U ⊆ V . From Lemma 1, G:U has the
solution U 4 U = ∅, that is, G:U must be pure. Let W be the set of negative
vertices of G:U . Then G:U :W has no negative vertex, and furthermore, it is pure
because any edge (v, w) of G:U with w ∈ W must be a (+, −)-edge. Since this
transformation is done in polynomial time, we assume that a given bidirected
graph of the GSSP is canonical in the sequel.
For any solution X of a canonical bidirected graph G, we partition X into
two parts:
−+ −+
XB = {i ∈ X | NG (i) ∩ X = ∅} and XI = {i ∈ X | NG (i) ∩ X 6= ∅},
−+
where NG (i) denotes the set of vertices adjacent to i by a (−, +)-edge incident
+−
to i with a minus sign, NG (i) is defined analogously. Here we call XB a base
of X. Let
+−
ex(XB ) = XB ∪ {i ∈ V | i ∈ NG (x) for some x ∈ XB }.
Proof. Suppose to the contrary that there exists a mixed vertex v such that
−+
NG (v) contains two vertices u and w of distinct connected components Hi and
Hj . Since X is a stable set, u, w ∈ YB . Let x be a vertex of X adjacent to v.
From the transitivity, x must be adjacent to both u and w. This contradicts the
fact that Hi and Hj are distinct connected components of G[XB 4 YB ]. t
u
The Stable Set Problem for Claw-Free Bidirected Graphs 73
Si∗ = {X ∈ Si | w(X) = wi }.
Suppose that N denotes the smallest number j with wj = maxi wi . Minty [4]
showed that if a given undirected graph is claw-free, then w0 < · · · < wN . More
precisely, (0, w0 ), . . . , (N, wN ) lie on an increasing concave curve. Minty’s algo-
rithm for solving the MWSSP for claw-free undirected graphs finds an optimal
solution by tracing (i, wi ) one by one. However, even if a given bidirected graph
is claw-free, this fact does not hold as an example in Figure 1 where (+, +)-
edges are drawn by lines and (+, −)-edges by arrows whose heads mean minus
signs. Thus, it seems to be difficult to trace (i, wi ) one by one for the GSSP.
3 5 4
a b c
i wi solution
0 5 {e}
2
1 10 {b, e}
d e f −4
2 14 {b, e, h}
5
3 13 {b, e, f, g, i}
4 15 {a, c, e, f, g, i}
g h i
3 4 4
Fig. 1.
(N, wN )
(6, w6 )
(4, w4 )
(3, w3 )
(1, w1 )
(0, w0 )
0 1 2 3 4 6 N
Fig. 2.
74 Daishin Nakamura and Akihisa Tamura
We will use a technique of the fractional programming. Let us consider the up-
per envelope of the convex hull of the set of pairs (0, w0 ), (1, w1 ), . . . , (N, wN )
as in Figure 2. We call (i, wi ) a Pareto-optimal pair if it lies on the envelope,
and their solutions Pareto-optimal solutions. Obviously, (0, w0 ) and (N, wN ) are
always Pareto-optimal. In Figure 2, (0, w0 ), (1, w1 ), (3, w3 ), (4, w4 ), (6, w6 ) and
(N, wN ) are Pareto-optimal.
Let X i be a Pareto-optimal solution with X i ∈ Si . Suppose that F is a subset
of all the solutions of G such that X i ∈ F and F is defined independently to
the weight vector w. Let us also consider the Pareto-optimal solutions for the
restriction on F . Obviously, X i is also Pareto-optimal in F . We consider the
following two problems
[MAXδ] max δ(Y ) = w(Y ) − w(X i ) , and
Y ∈F
δ(Y )
[MAXρ] max ρ(Y ) = | δ(Y ) > 0 ,
Y ∈F ν(Y )
where ν(Y ) denotes the difference of the numbers of all the positive vertices of
Y and X i . We denote ρ(·) and δ(·) for a weight vector w̄ by ρw̄ (·) and δw̄ (·)
explicitly. Suppose that X i is not optimal in F . Let Y 1 be an optimal solution
of the MAXδ for w̄0 = w. We set r = ρw̄0 (Y 1 ) and consider the new weight
vector w̄1 defined by
0
w̄i − r if i is a positive vertex,
w̄i1 = (1)
w̄i0 otherwise.
in Figure 2.) In addition, if X 0 ∈ S0∗ can be found in polynomial time, the GSSP
for (G, w) can be solved in polynomial time. In fact, this initialization is not so
difficult if we can apply the above technique for any vertex-induced subgraph of
G, because it is sufficient to solve the GSSP for the bidirected graph obtained
from the current one by deleting all the positive vertices, recursively.
Finally we introduce a tool in order to trace Pareto-optimal pairs. Let X i
be a Pareto-optimal solution with i < N . Without loss of generality, we assume
that X i and G satisfy the conditions of Lemma 6. We say that H ⊆ V is an
alternating set for X i if H is connected in G and if X i 4 H is a stable set of
G. We define the weight δ(H) of an alternating set H with respect to w by
w(ex(X i 4 H)) − w(X i ).
Lemma 8. Let (j, wj ) be the next Pareto-optimal pair of (i, wi ). Then, for any
X j ∈ Sj∗ , there exists a connected component H of G[XB i
4 XB j
] such that
ex(XB 4 H) is a Pareto-optimal solution with more positive vertices than X i .
i
only alternating cycles and free alternating paths in order to find a next Pareto-
optimal solution. An alternating cycle or a free alternating path is called an
augmenting cycle or an augmenting path respectively if it has a positive weight.
For two distinct black vertices x and y, let W denote the set of all the bounded
vertices adjacent to both x and y. If W is not empty, W is called a wing adjacent
to x (and y). A black vertex is called regular if it is adjacent to three or more
wings, irregular if it is adjacent to exactly two wings, and otherwise useless.
An alternating cycle is said to be small if it has at most two regular vertices;
otherwise large. Here we call C1 , . . . , Ck a large augmenting cycle family if each
Ci is a large augmenting cycle and each vertex in Ci is adjacent to no vertex in
Cj for 1 ≤ i < j ≤ k. From Lemma 7, δ(C1 ∪ · · · ∪ Ck ) = δ(C1 ) + · · · + δ(Ck )
holds.
Our algorithm for finding a next Pareto-optimal solution is described by
using the technique discussed in the previous section:
(0) w0 ← w and i ← 0 ;
(1) Find a small augmenting cycle Ai+1 of the maximum weight for wi if it
exists, otherwise go to (2) ;
Construct the new weight wi+1 by applying (1), i ← i + 1 and repeat (1) ;
(2) Find a large augmenting cycle family Ai+1 of the maximum weight for wi
if it exists, otherwise go to (3) ;
Construct the new weight wi+1 by applying (1), i ← i + 1 and repeat (2) ;
(3) Find an augmenting path Ai+1 of the maximum weight for wi if it exists,
otherwise go to (4) ;
Construct the new weight wi+1 by applying (1), i ← i + 1 and repeat (3) ;
(4) If i = 0 then X is optimal, otherwise ex(X 4 Ai ) is a next Pareto-optimal
solution.
Note that in (2) there is no small augmenting cycle since these are eliminated
in (1), and that in (3) there is no augmenting cycle since these are eliminated in
(1) and (2). These facts are important in the following sense.
Theorem 10. The GSSP for claw-free bidirected graphs is polynomially solv-
able.
The Stable Set Problem for Claw-Free Bidirected Graphs 77
In the rest of the section, we briefly explain a proof of Theorem 9. Our ap-
proach is an extension of Minty’s algorithm for undirected claw-free graphs. This,
however, does not seem a straightforward extension because we must overcome
several problems. A significant problem is how to deal with ‘induced weights’.
Let A be an alternating cycle or a free alternating path. Then its weight is
expressed as
P −+
δX (A) = w(A−X) − w(X∩A) + {w(v) | v is mixed, NG (v) ∩ (A−X) 6= ∅}.
P
We call the term the induced weight, which appears in the bidirected case but
not in the undirected case.
We first consider cycles. Let x1 , . . . , xk with k ≥ 3 be distinct black vertices
and W1 , . . . , Wk , Wk+1 = W1 be wings such that xi is adjacent to Wi and Wi+1
for i = 1, . . . , k. Then (W1 , x1 , W2 , . . . , Wk , xk , W1 ) is called a cycle of wings. It
is easy to show the following:
−+
Lemma 12. Let v be a mixed vertex such that NG (v) has a bounded vertex
but is not included in a wing. Then there uniquely exists a black vertex x such
−+
that [x = v or x is adjacent to v] and all the vertices in NG (v) are adjacent to
x.
−+
Let v be a mixed vertex such that NG (v) ∩ (W1 ∪ · · · ∪ Wk ) 6= ∅. From
−+
Lemma 12, there uniquely exists i ∈ {1, . . . , k} such that NG (v) ∩ Wi−1 =
−+ −+
∅ and NG (v) ∩ Wi 6= ∅. Moreover from Lemma 12 again, for such i, NG (v) ∩
((W1 ∪ · · · ∪ Wk ) − (Wi ∪ Wi+1 )) = ∅. Hence the mapping conserves weights. A
maximum weight directed cycle of red edges can be found in polynomial time
by the breadth first search. t
u
Lemma 14. A maximum weight small augmenting cycle can be found in poly-
nomial time.
• v1 ∼v2 means that v1 and v2 are adjacent, and v1 6∼v2 means v1 and v2 are
not adjacent.
+−
• v1 ∼ v2 says there is an edge having plus and minus sings at v1 and v2
+−
respectively, and v1 6∼ v2 is its negation.
+ ++ +− +
• v1 ∼ v2 denotes either v1 ∼ v2 or v1 ∼ v2 , and v1 6∼ v2 is the negation of
+
v1 ∼ v2 .
• v1 v2 says that v1 and v2 are contained in the same wing, and v1 6 v2 is its
negation.
Lemma 15 ([4]). Given a regular vertex x, let B(x) = {v| v∼x and v is
bounded}. Then there exists a partition of B(x), namely [N 1 (x), N 2 (x)], such
that for any v1 , v2 ∈ B(x) with v1 6 v2 ,
This is the key lemma of Minty’s algorithm. If a large alternating cycle or a free
alternating path passes through v1 ∈ N 1 (v) and a regular vertex v, then it must
The Stable Set Problem for Claw-Free Bidirected Graphs 79
pass through a vertex v2 such that v2 ∈ N 2 (v) and v2 6 v1 . From this property
Minty showed that by constructing a graph called the “Edmonds’ graph” and by
finding a maximum weight perfect matching of it, a maximum weight augmenting
path for any Pareto-optimal stable set can be found in polynomial time. To
deal with induced weights, we require an additional property of the partition of
vertices adjacent to a regular vertex.
Lemma 16. For a regular vertex x and a vertex v such that v = x or v∼x, we
define
def +− +−
N 1 (x) v N 2 (x) ⇐⇒ ∃a∈N 1 (x), ∃b∈N 2 (x) such that a6∼b, a ∼ v and b 6∼ v,
def +− +−
N 2 (x) v N 1 (x) ⇐⇒ ∃c∈N 2 (x), ∃d∈N 1 (x) such that c6∼d, c ∼ v and d 6∼ v.
Then at most one of N 1 (x) v N 2 (x) and N 2 (x) v N 1 (x) holds.
+− +
Proof. Let us consider the case v = x. If b 6∼ x, then b ∼ x because b∼x. In
+− +
addition, if a ∼ x, then a ∼ b. Hence neither N 1 (x) x N 2 (x) nor N 2 (x) x
N 1 (x) holds.
Suppose to the contrary that v∼x, N 1 (x) v N 2 (x) and N 2 (x) v N 1 (x).
+− +−
There exist a, d ∈ N 1 (x) and b, c ∈ N 2 (x) such that a6∼b, c6∼d, a ∼ v, b 6∼ v,
+− +−
c ∼ v and d 6∼ v. Note that b, d and v are mutually distinct. Assume to the con-
+ +− +− + +
trary that b∼v. Then b ∼ v because b 6∼ v. But a ∼ v and v ∼ b induce a ∼ b,
contradicting a6∼b. Hence b6∼v and similarly d6∼v. Now b∼d since otherwise
{x, b, d, v} induces a claw. Thus b d from Lemma 15.
Suppose that a c. Because x is regular, i.e., x is adjacent to at least three
wings, there exists e ∈ N (x) such that e 6 a c and e 6 b d. Suppose that e ∈
+−
N 1 (x). Then e6∼b and e6∼c from Lemma 15. If e 6∼ v, then replace d by e, and from
+−
the above discussion, b e, a contradiction. Hence e ∼ v, and we can replace a by
e. Similarly if e ∈/ N 1 (x), i.e., e ∈ N 2 (x), then we can replace c by e. Henceforth
we assume that a 6 c.
Suppose to the contrary that a 6 d. From Lemma 15, a∼d. Since a is bounded,
a is adjacent to two black vertices: x and namely y. Then d6∼y, since otherwise
d∼x and d∼y imply a d, a contradiction. Now v∼y since otherwise {a, d, v, y}
+ −+
induces a claw. Note that v ∼ y since otherwise v ∼ y, contradicting the fact
+− + +
that y is black and v is white. Thus c ∼ v and v ∼ y induce c ∼ y. However, c∼x
and c∼y imply a c, a contradiction. Hence a d and similarly c b. Since a d,
d b and b c, a c holds. However, this contradicts the assumption a 6 c. t
u
We add the induced weight of an alternating cycle or a free alternating path
to weights of appropriate vertices in it. We define w̃ : (V ∪ (V × V )) → < by the
following procedure: let w̃ ← 0 and for each mixed vertex v,
−+
• if B −+ (v) = {u | u is bounded, v ∼ u} is empty or included in a wing,
w̃(u) ← w̃(u) + w(v) for each u ∈ B −+ (v),
80 Daishin Nakamura and Akihisa Tamura
If there is no small augmenting cycle, by using Lemma 17, we can construct the
Edmonds’ graph Ĝ such that
1. each edge of Ĝ is colored black or white, and it has a weight ŵ,
2. all the black edges form a perfect matching M of Ĝ,
3. if M is a maximum weight perfect matching of Ĝ then there is no large
augmenting cycle family in G and
4. if ŵ(M ) < ŵ(M ∗ ) for a maximum weight perfect matching M ∗ of Ĝ, let
Ĉ1 , . . . , Ĉk be all the augmenting cycles in M ∗ 4 M ; then Ĉ1 , . . . , Ĉk cor-
respond to a maximum weight large augmenting cycle family C1 , . . . , Ck in
G.
In the next section, we show that the Edmonds’ graph can be constructed in
polynomial time. Hence the step (2) in our algorithm can be done in polynomial
time. Analogously, if there is no augmenting cycle, for any pair of vertices a and
b, we can find a maximum weight augmenting path whose endpoints are a and
b, if it exists, by constructing the Edmonds’ graph and by finding a maximum
weight perfect matching in it. Now we can find a maximum weight augmenting
path by trying all the pairs of vertices a and b.
Lemma 20. If N 1 (xj ) ⊆ W (xi , xj ), then any large alternating cycle in G passes
through neither P12 nor P22 . That is, we can delete the edges (x1i , x2j ) and (x2i , x2j )
from GEd . Similarly if N 2 (xj ) ⊆ W (xi , xj ), we can delete (x1i , x1j ) and (x2i , x1j ). If
N 1 (xi ) ⊆ W (xi , xj ), we can delete (x2i , x1j ) and (x2i , x2j ). If N 2 (xi ) ⊆ W (xi , xj ),
we can delete (x1i , x1j ) and (x1i , x2j ).
Proof. Suppose that a large alternating cycle C passes xi , P12 (or P22 ) and xj .
Before xj , it passes a vertex in N 2 (xj ). Hence after xj , it must pass a vertex
v ∈ N 1 (xj ) ⊆ W (xi , xj ). Hence C contains exactly two regular vertices xi and
xj , contradicting to that C is large. t
u
In the sequel, we suppose that none of N 1 (xi ), N 2 (xi ), N 1 (xj ) nor N 2 (xj )
is contained in W (xi , xj ).
Lemma 21. There exists k such that yk1 = yk2 and 2 ≤ k ≤ ` − 1, or there exists
k such that yk1 ∼yk2 and 1 ≤ k ≤ `.
Proof. Suppose that this lemma does not hold, i.e. yk1 6= yk2 and yk1 6∼yk2 for all
k = 1, . . . , ` (Note that y11 6= y12 and y`1 6= y`2 since B 1 (xi ) ∩ B 2 (xi ) = B 1 (xj ) ∩
B 2 (xj ) = ∅). Let z0 = xi , z` = xj and Ck = (yk1 , zk , yk2 , zk−1 , yk1 ) (k = 1, . . . , `).
P` Ck is a small alternating cycle for all k = 1, . . . , `. We can show that
Then
k=1 δX (Ck ) = δ̃X (P11 ) + δ̃X (P22 ) − w(xi ) − w(xj )(> 0). (The proof is slightly
complicated because we must consider about the induced weight w̃.) Hence at
least one Ck is a small augmenting cycle, a contradiction. t
u
Now we can show the next two lemmas, but proofs are omitted.
Lemma 22. If ` = 1, any large alternating cycle passes through neither P11 nor
P22 . Hence we can delete the edges (x1i , x1j ) and (x2i , x2j ) from GEd .
0 0
and let P12 = (P11i , zk , P22j ) and P21 = (P22i , zk , P11j ).
0 0 0
Then δ̃X (P12 ) + δ̃X (P21 ) = δ̃X (P11 ) + δ̃X (P22 ), P12 is an IWAP between
B (xi ) and B (xj ), and P21 is an IWAP between B 2 (xi ) and B 1 (xj ).
1 2 0
1. Delete four edges (x1i , x1j ), (x2i , x2j ), (x1i , x2j ) and (x2i , x1j ) (Lemma 23 guaran-
tees the existence of these four edges),
2. Add two new vertices zki and zkj , join zki and zkj by a black edge and assign
its weight ŵ((zki , zkj )) to be 0, where k satisfies the conditions of Lemma 23,
3. Add four white edges (x1i , zki ), (x2i , zki ), (x1j , zkj ) and (x2j , zkj ), and assign their
weights to be ŵ((x1i , zki )) = δ̃X (P11 ), ŵ((x2i , zki )) = δ̃X (P22 ), ŵ((x1j , zkj )) = 0
and ŵ((x2j , zkj )) = δ̃X (P12 ) − δ̃X (P11 )(= δ̃X (P22 ) − δ̃X (P21 )).
All large alternating cycles through black edges (x1i , x2i ) and (x1j , x2j ) can
be preserved by our revision, because (xpi , xqj ) in the original Edmonds’ graph
(p, q ∈ {1, 2}) is interpreted by the path (xpi , zki , zkj , xqj ) in the revised Edmonds’
graph. Furthermore, Lemma 23 guarantees that weights of these four edges are
equal to those of such four paths, respectively.
Lemma 24. A maximum weight large alternating cycle family can be found in
polynomial time if there is no small augmenting cycle.
Proof. Make the Edmonds’ graph. Then eliminate all the augmenting cycles of
a form (x1i , x1j , x2j , x2i , x1i ) or (x1i , x2j , x1j , x2i , x1i ). Let G0Ed be the modified graph
and M 0 be the set of its black edges. Note that M 0 is perfect. Let M ∗ be a
maximum weight perfect matching andSĈ1 , . . . , Ĉk be all the augmenting cycle in
M 0 4 M ∗ (k may be zero). Note that ( i=1 Ĉi ) is a maximum weight alternating
k
cycle family of G0Ed . Then each Ĉi has length at least 6 because we eliminate all
augmenting cycles of length 4, and hence Ĉi corresponds to a large augmenting
cycle Ci of X such that δX (Ci ) = δM 0 (Ĉi ). Moreover C1 , . . . , Ck are disjoint
because Ĉ1 , . . . , Ĉk are vertex-disjoint. Now fromSconstruction and modification
k
of the Edmonds’ graph, we can conclude that ( i=1 Ci ) is a maximum weight
large alternating cycle family of X. t
u
References
1. E. Boros and O. C̆epek, O. On perfect 0, ±1 matrices. Discrete Math., 165/166:81–
100, 1997.
2. M. Conforti, G. Cornuéjols, and C. De Francesco. Perfect 0, ±1 matrices. Linear
Algebra Appl., 253:299–309, 1997.
3. E. L. Johnson and M. W. Padberg. Degree-two inequalities, clique facets, and
biperfect graphs. Ann. Discrete Math., 16:169–187, 1982.
4. G. J. Minty. On maximal independent sets of vertices in claw-free graphs. J.
Combin. Theory Ser. B, 28:284–304, 1980.
5. E. C. Sewell. Binary integer programs with two variables per inequality. Math.
Programming, 75:467–476, 1996.
6. A. Tamura. The generalized stable set problem for perfect bidirected graphs. J.
Oper. Res. Soc. Japan, 40:401–414, 1997.
On a Min-max Theorem of Cacti
?
Zoltán Szigeti
1 Introduction
The graph matching problem and the matroid intersection problem are two well-
solved problems in Combinatorial Theory in the sense of min-max theorems and
polynomial algorithms for finding an optimal solution. The matroid parity prob-
lem, a common generalization of them, turned out to be much more difficult. For
the general problem there does not exist polynomial algorithm [2], [3]. Moreover,
it contains NP-hard problems. On the other hand, for linear matroids Lovász
[3] provided a min-max formula and a polynomial algorithm. There are several
earlier results which can be derived from Lovász’ theorem, e.g. Tutte’s result
on f -factors [9], a result of Mader on openly disjoint A-paths [5], a result of
Nebesky concerning maximum genus of graphs [6]. Another application which
can be found in the book of Lovász and Plummer [4] is the problem of cacti. It
is mentioned there that ”a direct proof would be desirable.” Our aim is to fill
in this gap, that is to provide a simpler proof for this problem. We remark here
that we shall apply the matroid intersection theorem twice. We refer the reader
to [7] for basic concepts of matroids.
A graph K is called cactus if each block (maximal 2-connected subgraph) of
K is a triangle (cycle of length three). The size of a cactus K is the number
of its blocks. Lovász derived a min-max theorem for the maximum size of a
cactus contained in a given graph G from his general min-max theorem on linear
matroid parity problem. Here we shall give a simple proof for this result on cacti.
The proof follows the line of Gallai’s (independently Anderson’s [1]) proof for
Tutte’s theorem on the existence of perfect matchings.
In fact, we shall solve the graphic matroid parity problem in the special case
when for each pair the two edges have exactly one vertex in common. The graphic
?
This work was done while the author visited Laboratoire LEIBNIZ, Institut IMAG,
Grenoble.
matroid parity problem is the following. Given a graph G and a partition of its
edge set into pairs, what is the maximum size of a forest which consists of pairs,
in other words, what is the maximum number of pairs whose union is a forest.
A pair of edges is called v-pair if these two edges have exactly one vertex in
common and they are not loops. If G is an arbitrary graph and V is a partition
of the edge set of G into v-pairs then (G, V) is called v-graph. From now on a
cactus of (G, V) is a forest of G consisting of v-pairs in V. The size of a cactus
is the number of v-pairs contained in it. The v-graphic matroid parity problem
consists of finding the maximum size β(G, V) of a cactus in a v-graph (G, V).
The original cactus problem can be formulated as a v-graphic matroid parity
problem as follows. Let (G0 , V) be the following v-graph. The vertex set of G0
is the same as of G. We define the edge set of G0 and the partition V of the
edge set into v-pairs as follows. For each triangle T of G we introduce a v-pair
in (G0 , V): choose any two edges of T, add them to the edge set of G0 and add
this v-pair to V. (G0 will contain lots of parallel edges. In fact, G0 is obtained
from G by multiplying edges.) Obviously, there is a one to one correspondence
between the cacti of G and the forests of G0 being the union of v-pairs. Thus
the problem is indeed a v-graphic matroid parity problem.
To state the theorem on cacti we need some definitions. Let (G, V) be a v-
graph. Let P := {V1 , V2 , ..., Vl } be a partition of the vertex set V (G). Let VP ⊆ V
(SP ⊆ V) be the set of those v-pairs whose end vertices belong to three (two)
different members of P. Let Q := {H1 , H2 , ..., Hk } be a partition of VP ∪ SP .
Let us denote by p(Hi ) the number of Vj ’s for which there exists at least one
v-pair in Hi with a vertex in Vj . We say that (P, Q) is a cover of (G, V). The
value val(P, Q) of a cover is defined as follows.
X p(Hi ) − 1
val(P, Q) := n − l + b c,
2
Hi ∈Q
Let (P, Q) be a cover of a v-graph (G, V). The elements Hi ∈ Q are called
components of the cover. G/P will denote the graph obtained from G by con-
tracting each set Vi in P into one vertex. We identify the edge sets of G and
G/P. (GP , VP ) is the v-graph, where VP is defined as above, it contains those
v-pairs of V which remain v-pairs after the contraction, the vertex set of GP is
the same as of G/P and the edge set of GP is the set of edges of the v-pairs in
VP , that is, GP is obtained from G/P by deleting the edges which do not belong
to any v-pair in VP . For Hi ∈ Q, (GP [Hi ], Hi ) will denote the v-graph for which
the edge set of GP [Hi ] is the set of edges of the v-pairs in Hi and the vertex set
of GP [Hi ] contains those vertices of GP for which at least one v-pair of Hi is
incident. Then p(Hi ) is the number of vertices of GP [Hi ]. (Note that if Hi ∈ SP ,
then (GP [Hi ], Hi ) contains two edges which are parallel or one of them is a loop,
that is it is not really a v-graph. However, we shall need this type of ”v-graphs”
in the proof.) If F is a subset of edges of a v-graph (G, V) then the number of
v-pairs of V contained in F is denoted by vV (F ).
For a graph G on n vertices and with c connected components, a forest of G
containing n − c edges is called spanning. For a connected graph G, a forest F of
G containing n − 2 edges (that is, F has exactly two connected components) is
called almost spanning. A v-graph will be called (cactus)-critical if by identifying
any two vertices the v-graph obtained has a perfect cactus. Especially, this means
that in a critical v-graph there exists a cactus which is almost perfect, that is,
it is an almost spanning tree consisting of v-pairs. Critical v-graphs will play an
important role in the proof, like factor-critical graphs play the key role in the
proof of Tutte’s theorem. A component Hi ∈ Q is said to be critical in (G, V) if
the v-graph (GP [Hi ], Hi ) is critical. If Hi ∈ SP , then (GP [Hi ], Hi ) is considered
to be critical.
We say that the partition P of V is the trivial partition if l := |P| = n := |V |.
The cover (P, Q) is the trivial cover if l = n and k := |Q| = 1. Let P 0 =
{V11 , ..., V1r1 , V21 , ..., V2r2 , ..., Vl1 , ..., Vlrl }, where ∪j Vij = Vi for all i, then the
partition P 0 is called a refinement of the partition P. If P 0 is a refinement of P
so that |P 0 | = |P| + 1, then we say it is an elementary refinement. If Vi ∈ P then
the partition obtained from P by replacing Vi by its singletons will be denoted
by P ÷ {Vi }. If P 0 is a refinement of P, then we shall use p0 (Hi ) instead of p(Hi ).
We shall need later two auxiliary graphs B and D. These graphs will depend
on a v-graph (G, V) and a cover (P, Q) of this v-graph. We suppose that for
each component Hi , p(Hi ) is even. First we define the graph B = (V (G), E(B)).
e = uv will be an edge of B if and only if there exist u, v ∈ Vj ∈ P, Hi ∈ Q and
a cactus K in (GP÷{Vj } [Hi ], Hi ) consisting of p(Hi )/2 v-pairs so that exactly
two vertices u and v of Vj are connected in K, not necessarily by an edge but by
a path in K, that is u and v are in the same connected component of K. (Note
that K contains a cactus of size (p(Hi ) − 2)/2 in (GP [Hi ], Hi ). We mention that
(by Lemma 2, see later) (GP [Hi ], Hi ) will always contain a cactus consisting of
(p(Hi ) − 2)/2 v-pairs of V.) We call this edge e an augmenting edge for Hi . In
other words, the trace of the cactus K in P is the edge e. We will call the edges
of B as augmenting edges. Note that an edge of B may be augmenting for more
On a Min-max Theorem of Cacti 87
The existence of a forest with (a) and (b) can be proved, using (ii), by a
matroid partition theorem (for a graphic matroid and a truncated partitional
matroid). We shall see in Lemma 5 that if for all such forests we consider the
components where the corresponding forest is a spanning tree then we get the
set of basis of a matroid on the set of indices of the components.
Two matroids will be defined on the edge set of the auxiliary graph D, one
of them will be defined by the above introduced matroid, and the other one will
be defined by the cycle matroid of B. The matroid intersection theorem will
provide a forest of G with (a), (b) and (c). As we mentioned earlier, each part of
the forest, which corresponds to a component, can be replaced by a convenient
cactus, and thus the desired cactus has been found.
2 The Proof
Proof. (max ≤ min) Let F be an arbitrary cactus in (G, V) and let (P, Q) be any
cover of (G, V). Contract each Vi ∈ P i = 1, 2, . . . , l into a vertex and let F 0 be a
subset of F of maximum size so that F 0 is a forest in the contracted graph G/P.
For the number c (c0 ) of connected components of F in G (of F 0 in G/P) we have
obviously, c0 ≤ c. Thus |F | = n − c ≤ n − c0 = (l − c0 ) + (n − l) = |F 0 | + (n − l). It
follows that vV (F ) ≤ vV (F 0 ) + n − l. Let F 00 be the maximum subforest of F 0 in
GP consisting of v-pairs S in V. Obviously, F 00 forms a cactus in each (GP [Hi ], Hi )
Hi ∈ Q. By definition, Hi ∈Q Hi covers all the v-pairs contained in F 00 . Thus
P P
vV (F 0 ) = vV (F 00 ) = vVP (F 00 ) = Hi ∈Q vHi (F 00 ) ≤ Hi ∈Q b p(H2i )−1 c, and the
desired inequality follows. t
u
Lemma 1. For each Hi ∈ Q, the unique minimum cover of (GP [Hi ], Hi ) is the
trivial one.
X
p(Hj ) − 1
= n − l∗ +
2
Hj ∈Q−{Hi }
+ (val(P 0 , Q0 ) − (p(Hi ) − l0 ))
X
p(Hj ) − 1
≤ n − (l − p(Hi ) + l0 ) +
2
Hj ∈Q−{Hi }
p(Hi ) − 1
+ − p(Hi ) + l0 = val(P, Q).
2
It follows that equality holds everywhere, so val(P 0 , Q0 ) = b p(H2i )−1 c, thus the
trivial cover of (GP [Hi ], Hi ) is minimal. Furthermore, by the minimality of l, P 0
is the trivial partition of V (GP [Hi ]) and by the maximality of k, Q0 may contain
only one set and we are done. t
u
Proof. Suppose that there exists a component Hi ∈ Q for which (GP [Hi ], Hi )
is not critical, that is there are two vertices a and b in GP [Hi ] so that after
identifying a and b the new v-graph (G0 , V 0 ) has no perfect cactus. By the hy-
pothesis of the induction, it follows that there is a cover (P 0 , Q0 ) of (G0 , V 0 ) so
that in G0 val(P 0 , Q0 ) < (p(Hi )−1)−1
2 ≤ b p(H2i )−1 c. This cover can be considered
as a cover (P , Q ) of (GP [Hi ], Hi ) and val(P 00 , Q00 ) = val(P 0 , Q0 ) + 1. Thus
00 00
val(P 00 , Q00 ) ≤ b p(H2i )−1 c, that is (P 00 , Q00 ) is a minimal cover of (GP [Hi ], Hi )
but not the trivial one (a and b are in the same member of P 00 ), which contra-
dicts Lemma 1. t
u
Remark 2. By Corollary 1, for any component Hi the v-graph (GP [Hi ], Hi ) (and
consequently (G, V)) contains a cactus containing b p(H2i )−1 c v-pairs. However, at
this moment we can not see whether we can choose a cactus containing b p(H2i )−1 c
v-pairs for all Hi so that their union is a cactus as well. Note that by Corollary
1, p(Hi ) is even for each component Hi ∈ Q, that is b p(H2i )−1 c = p(H2i )−2 .
Proof. Let (uv, vw) be one of the v-pairs in V. Let us consider the following
cover (P 0 , Q0 ) of (G, V). Each set of P 0 contains exactly one vertex of G except
one which contains u and v, and Q0 contains exactly one set H (containing all
v-pairs in V). Then, clearly, this is a minimum cover. By the assumptions for l
and k this cover also minimizes l and maximizes k, thus by Lemma 2, its unique
component H is critical, that is the v-graph (GP 0 , VP 0 ) is critical. Let F be a
perfect cactus of the v-graph obtained from (GP 0 , VP 0 ) by identifying v and w.
Obviously, F ∪ uv ∪ vw is a perfect cactus of (G, V) and we are done. t
u
Proof. Hi ∈ / ΓD (AP 0 ) implies that there exists no augmenting edge for Hi with
respect to P 0 that is (GP 0 [Hi ], Hi ) has no perfect cactus. By Proposition 1, we can
use the induction hypothesis (of Theorem 1), that is there exists a cover (P 00 , Q00 )
of (GP 0 [Hi ], Hi ) so that val(P 00 , Q00 ) ≤ (p(Hi )+1)−1
2 − 1 = p(H2i )−2 . This cover
gives a cover (P ∗ , Q∗ ) of (GP [Hi ], Hi ) with val(P ∗ , Q∗ ) ≤ p(H2i )−2 . So (P ∗ , Q∗ )
is a minimum cover of (GP [Hi ], Hi ) and by Lemma 1, it is the trivial cover.
Moreover, v1 and v2 are in different sets of P 00 (otherwise, val(P ∗ , Q∗ ) < p(H2i )−2 ,
a contradiction), hence (P ∗ , Q∗ ) is the trivial cover of (GP 0 [Hi ], Hi ) and its value
is p(H2i )−2 . It follows that v1 or v2 is not a vertex in GP 0 [Hi ] and the proposition
is proved. t
u
Let P 0 = {V11 , ..., V1r1 , V21 , ..., V2r2 , ..., Vl1 , ..., Vlrl } where ∪j Vij = Vi for all i,
be a refinement of P. It is enough to prove that for all i where ri ≥ 2 there exists
an elementary refinement P ∗ of P with Vi = Vij ∪ (Vi − Vij ) for some 1 ≤ j ≤ ri
so that in GP ∗ [Hi ] the vertex corresponding to Vi − Vij is isolated. Applying
Proposition 2, at most ri times, we see that such an elementary refinement
exists indeed. t
u
Corollary 2. The vertex sets of the connected components of the graph B (de-
fined by the augmenting edges) are exactly the sets in P.
On a Min-max Theorem of Cacti 91
|Q∗ | − (l0 − l). Let us consider the following cover (P 0 , Q3 ) of (G, V), where Q3
is obtained from the above defined Q00 by adding each element in SP 0 − SP as
a component and adding the v-pairs in VP 0 − VP to appropriate members of
Q00 . If L ∈ VP 0 − VP , then L corresponds in W to a vertex or an edge and in
the latter case L ∈ Q1 so L corresponds to an edge of a connected component
Kj of K ∗ . We add L to the member Hj00 of Q00 corresponding to Kj . (If Kj is
an isolated vertex, then the corresponding Hj00 of Q00 was empty earlier.) Now,
(P 0 , Q3 ) is a cover of (G,
PV) indeed. We shall denote the members of Q3 − Q by
Hj 1 ≤ j ≤ c. Clearly, 1 p (Hj3 ) ≤ l0 . By Lemma 3, the value of the new cover
3 c 0
is the following.
$ %
Xc
p 0
(H 3
) − 1 X p(Hi ) − 2
val(P 0 , Q3 ) = n − l0 +
j
+
1
2 ∗
2
Hi ∈Q−Q
l0 − c X p(Hi ) − 2
≤ n − l0 + + .
2 2
Hi ∈Q−Q∗
By Lemma 4, for the trivial partition P 0 of V (G), the following fact is im-
mediate.
there exists an almost perfect cactus K in (GP [Hi ], Hi ) so that a and b belong to
different components of K. Then, by Proposition 3, F − (E(F ) ∩ E(Fi )) ∪ E(K)
is a forest. We can do this for all components, so the v-graph (G, V) contains a
P
cactus containing Hi ∈Q b p(H2i )−1 c v-pairs.
Thus e ∈ E(Fi ) so that Hi ∈ Q0 and then obviously Q00 ∪ {Hi } ∈ M and we are
done. t
u
We shall apply the matroid intersection theorem for the following two ma-
troids on the edge set of the graph D. For a set Z ⊆ E(D), let us denote the
end vertices of Z in the colour class E(B) (Q) by Z1 (Z2 , respectively). The
rank of Z in the first matroid will be rB (Z1 ) and rM (Z2 ) in the second matroid,
where rB is the rank function of the cycle matroid of the graph B and rM is the
rank function of the above defined matroid M. Note that if a vertex x of D is
in the colour class E(B) (Q) then the edges incident to x correspond to parallel
elements of the first (second) matroid.
Proof. By the matroid intersection theorem (see for example [7]) we have to
prove that for any set Z ⊆ E(D) (+) n − l ≤ rB (E(D) − Z) + rM (Z).
94 Zoltán Szigeti
Suppose that there is a set Z violating (+). Clearly, we may assume that
E(D)− Z is closed in the first matroid. This implies that there is a set J ⊆ E(B)
so that E(D) − Z is the set of all edges of D incident to J and J is closed in
the cycle matroid of B. Let us denote by V10 , V20 , ..., Vl00 the vertex sets of the
connected components of the graph on vertex set V (B) with edge set J. Then
by the closedness of J, E(B)− J is the set of augmenting edges of the refinement
P 0 := {V10 , V20 , ..., Vl00 } of P, that is, AP 0 = E(B) − J. (Obviously, Z is the set
of all edges incident to E(B) − J in D.) Then rM (Z) = rM (ΓD (AP 0 )) and
rB (E(D) − Z) = rB (J) = n − l0 . By (1), l0 − l ≤ rM (ΓD (AP 0 )) and thus
n − l = (l0 − l) + (n − l0 ) ≤ rM (Z) + rB (E(D) − Z), contradicting the fact that
Z violates (+). t
u
Remark 5. While I was writing the final version of this paper I realized that the
same proof (after the natural changes) works for the general graphic matroid
parity problem. The details will be given in a forthcoming paper [8].
References
1. I. Anderson. Perfect matchings of a graph. Journal of Combinatorial Theory, Series
B, 10:183–186, 1971.
2. P. Jensen and B. Korte, Complexity of matroid property algorithms. SIAM J.
Comput., 11:184–190, 1982.
3. L. Lovász. Matroid matching problem. In Algebraic Methods in Graph Theory.
Colloquia Mathematica Societatis J. Bolyai 25, Szeged, 1978.
4. L. Lovász and M. D. Plummer. Matching Theory. North Holland, Amsterdam,
1986.
5. W. Mader. Über die maximalzahl kreuzungsfreier H-wege. Archiv der Mathematik,
31, 1978.
6. L. Nebesky. A new characterization of the maximum genus of a graph. Czechoslovak
Mathematical Journal, 31, 1981.
7. A. Recski. Matroid Theory and its Applications in Electric Network Theory and
in Statics. Akadémiai Kiadó, Budapest, 1989.
8. Z. Szigeti. On the graphic matroid parity problem. In preparation.
9. W. T. Tutte. Graph Factors. Combinatorica, 1:79-97, 1981.
Edge-Splitting and Edge-Connectivity
Augmentation in Planar Graphs
1 Introduction
Let G = (V, E) stand for an undirected multigraph, where an edge with end
vertices u and v is denoted by (u, v). For a subset1 S ⊆ V in G, G[S] denotes
the subgraph induced by S. For two disjoint subsets X, Y ⊂ V , we denote by
EG (X, Y ) the set of edges (u, v) with u ∈ X and v ∈ Y , and by cG (X, Y )
the number of edges in EG (X, Y ). The set of edges EG (u, v) may alternatively
be represented by a single link (u, v) with multiplicity cG (u, v). In this way,
we also represent a multigraph G = (V, E) by an edge-weighted simple graph
N = (V, LG , cG ) (called a network) with a set V of vertices and a set LG of links
weighted by cG : LG → Z + , where Z + is the set of non-negative integers. We
denote |V | by n, |E| by e and |LG | by m. A cut is defined as a subset X of V
1
A singleton set {x} may be simply written as x, and “ ⊂ ” implies proper inclusion
while “ ⊆ ” means “ ⊂ ” or “ = ”.
with ∅ 6= X 6= V , and the size of the cut X is defined by cG (X, V − X), which
may also be written as cG (X). If X = {x}, cG (x) denotes the degree of vertex x.
For a subset X ⊆ V , define its inner-connectivity by λG (X) = min{cG (X 0 ) | ∅ = 6
X 0 ⊂ X}. In particular, λG (V ) (i.e., the size of a minimum cut in G) is called
the edge-connectivity of G. For a vertex v ∈ V , a vertex u adjacent to v is called
a neighbor of v in G. Let ΓG (v) denote the set of neighbors of v in G.
Let s ∈ V be a designated vertex in V . A cut X is called s-proper if ∅ 6=
X ⊂ V − s. The size λG (V − s) of a minimum s-proper cut is called the s-
based-connectivity of G. Hence λG (V ) = min{λG (V − s), cG (s)}. A splitting at
s is (k, s)-feasible if λG0 (V − s) ≥ k holds for the resulting graph G0 . Lovász [6]
showed the following important property:
Since a complete (k, s)-feasible splitting effectively reduces the number of ver-
tices in a graph while preserving its s-based-connectivity, it plays an important
role in solving many graph connectivity problems (e.g., see [1,2,9]).
In this paper, we prove an extension of Lovász’s edge-splitting theorem, aim-
ing to solve the edge-connectivity augmentation problem with an additional con-
straint that preserves the planarity of a given planar graph. Firstly, we consider
the following type of splitting; for a multigraph G = (V, E) with a designated
vertex s, let ΓG (s) = {w0 , w1 , . . . , wp−1 } (p = |ΓG (s)|) of neighbors of s, and
assume that a cyclic order π = (w0 , w1 , . . . , wp−1 ) of ΓG (s) is given. We say
that two edges e1 = (wh , wi ) and e2 = (wj , w` ) are crossing (with respect to π)
if e1 and e2 are not adjacent and the four end vertices appear in the order of
wh , wj , wi , w` along π (i.e., h + a = j + b = i + c = ` (mod p) holds for some
1 ≤ c < b < a ≤ p − 1). A sequence of splittings at s is called noncrossing
if no two split edges resulting from the sequence are crossing. We prove that
there always exists a complete and noncrossing (k, s)-feasible splitting for even
integers k, and such a splitting can be found in O(n2 (m + n log n)) time.
Next we consider a planar multigraph G = (V, E) with a vertex s ∈ V of even
degree. A complete splitting at s is called planarity-preserving if the resulting
graph from the splitting remains planar. Based on the result of noncrossing
splitting, we prove that, if k is an even integer with k ≤ λG (V − s), then there
always exists a complete (k, s)-feasible and planarity-preserving splitting, and
the splitting can be found in O(n3 log n) time. For k = 3, we prove by a separate
argument that there exists a complete (k, s)-feasible and planarity-preserving
splitting if the resulting graph is allowed to be re-embedded in the plane.
Example 1. (a) Fig. 1(a) shows a graph G1 = (V, E) with cG1 (s, wi ) = 1 and
cG1 (wi , wi+1 ) = a, 0 ≤ i ≤ 3 for a given integer a ≥ 1. Clearly, λG1 (V − s) =
k for k = 2a + 1. For a cyclic order π = (w0 , w1 , w2 , w3 ), G1 has a unique
complete (k, s)-feasible splitting (i.e., splitting pair of (s, w0 ), (s, w2 ) and a pair
of (s, w1 ), (s, w3 )), which is crossing with respect to π. This implies that, for every
odd k ≥ 3, there is a graph G with a designated vertex s and a cyclic order of
98 Hiroshi Nagamochi and Peter Eades
s s s
1 1
1 1 1 1 1 1 1
1 1
1 w11 a a w1 w11 a a w1
a w0 a w0
a a a w0 a-1
w10 1 w2 w10 w2
1
a a a 1 a
w3 w1 w9 1 1 w3 w9 1 w3
a a 1 1
a a
a a w8 1 w4 w8
aw a a-1
1 a
w4
7
a a a a
w5 w5
w2 w6 w7 w6
(a) (b) (c)
ΓG (s) which has no complete and noncrossing (k, s)-feasible splitting. Note that
the planar G1 has a complete and planarity-preserving (k, s)-feasible splitting (by
putting one of the split edges in the inner area of cycle C1 = {w0 , w1 , w2 , w3 }).
(b) Fig. 1(b) shows a planar graph G2 = (V, E) with cG2 (wi , wi+1 ) = a (mod
12) for 0 ≤ i ≤ 11 and cG2 (e) = 1 otherwise for an integer a ≥ 1, which satisfies
λG2 (V − s) = k for k = 2a + 1. The G2 has a unique complete (k, s)-splitting,
which is not planarity-preserving unless the embedding of subgraph G2 [V − s] is
not changed; if G2 [V − s] is re-embedded in the plane so that block components
{w2 , w3 , w4 } and {w8 , w9 , w10 } of G2 [V − s] are flipped and two vertices w3 and
w9 share the same inner face, then the complete (k, s)-splitting is now planarity-
preserving. From this, we see that for every odd k ≥ 3, there is a planar graph
G with a designated vertex s which has no complete and planarity-preserving
(k, s)-feasible splitting (unless the embedding of G is re-embedded).
(c) Let a ≥ 2 be an integer, and consider the graph G3 = (V, E) in Fig. 1(c),
where cG3 (wi , wi+1 ) = a for i ∈ {1, 7}, cG3 (wi , wi+1 ) = a (mod 12) for i ∈
{0, 1, . . . , 11} − {1, 7}, and cG3 (e) = 1 otherwise. Clearly, λG3 (V − s) = k for
k = 2a + 1 (≥ 5). It is easily observed that the unique complete (k, s)-feasible
splitting is not planarity-preserving for any choice of re-embedding of G3 in the
plane. This implies that for every odd k ≥ 5, there exists a graph which has no
complete and planarity-preserving (k, s)-feasible splitting even if re-embedding
after splitting is allowed. t
u
2 Preliminaries
2.1 Computing s-Based Connectivity
The vertex set V of a multigraph G = (V, E) are denoted by V (G). We say that
a cut X separates two disjoint subsets Y and Y 0 of V if Y ⊆ X ⊆ V − Y 0 (or
Y 0 ⊆ X ⊆ V − Y ). The local edge-connectivity λG (x, y) for two vertices x, y ∈ V
is defined to be the minimum size of a cut in G that separates x and y. A cut X
crosses another cut Y if none of subsets X ∩ Y , X − Y , Y − X and V − (X ∪ Y )
is empty.
Augmentation in Planar Graphs 99
Algorithm CONTRACT
Input: A multigraph G = (V, E) with |V | ≥ 3 and a designated vertex s ∈ V .
Output: an s-proper cut X ∗ with cG (X ∗ ) = λG (V − s) < λG (X ∗ ).
1 α := min{cG (v) | v ∈ V − s};
2 Let X := {v} for a vertex v ∈ V − s with cG (v) = α;
3 H := G;
4 while |V (H)| ≥ 4 do { cH (u) ≥ α holds for all u ∈ V (H) − s }
5 Find an MA-ordering in H starting from v1 = s, and let v, w (6= s) be the
last two vertices in this ordering; { λH (v, w) = cH (w) by Lemma 1(ii) }
6 Contract v and w into a vertex, say z, and let H be the resulting graph;
7 if cH (z) < α then
8 Let X ∗ be the set of all vertices in V − s contracted into z so far;
{ cH (z) = cG (X ∗ ) }
9 end { if }
10 end. { while }
It should be noted that for each u ∈ V (H) − s cH (u) ≥ α holds before every
iteration of the while-loop. The last two vertices v, w in an MA ordering in line 5,
which are clearly distinct from s, satisfy λH (v, w) = cH (w) by Lemma 1(ii).
Let X ∗ be the cut output by CONTRACT, and α∗ be the final value of α
(i.e., α∗ = cG (X ∗ )). Note that any two vertices v and w in line 5 have been
contracted into a single vertex only when λH (v, w) ≥ α∗ holds. We prove that
α∗ = λG (V − s). For a vertex u ∈ V (H) − s, let Xu denote the set of all
vertices in V − s contracted so far. Assume that there is an s-proper cut Y with
cG (Y ) < α∗ . Clearly, the final graph H has three vertices z1 , z2 and s, and
satisfies α∗ ≥ min{cH (z1 ), cH (z2 )}, and thus Y 6= Xz1 , Xz2 . Hence there is a
vertex pair v, w ∈ V (H) chosen in line 5 at some iteration of the while-loop such
that Xv ⊆ Y and Xw ⊆ (V − s) − Y (or Xw ⊆ Y and Xv ⊆ (V − s) − Y ).
Assume that v and w are the vertices in the earliest iteration of the while-loops
among such pairs of vertices. This implies that when v and w are contracted
into a vertex, the current graph H has a subset Y 0 ⊂ V (H) − s such that
∪y∈Y 0 Xy = Y . However, λH (v, w) ≤ cH (Y 0 ) = cG (Y ) < α∗ , contradicting
λH (v, w) ≥ α∗ . Therefore, α∗ = λG (V − s).
100 Hiroshi Nagamochi and Peter Eades
(i) If two (k, s)-semi-critical cuts X and Y s-cross each other, then cG (X) =
cG (Y ) = k + 1, cG (X − Y ) = cG (Y − X) = k and cG (X ∩ Y, V − (X ∪ Y )) = 1.
(ii) Let X be an admissible cut with respect to u, u0 ∈ V − s (possibly u = u0 ),
and Y be a (k, s)-semi-critical cut. If X and Y cross each other, then cG (X) =
cG (Y ) = k + 1 and cG (Y − X) = k.
(iii) Let Xi (resp., Xj ) be admissible cuts with respect to ui , u0i (resp., with respect
to uj , u0j ), where possibly ui = u0i or uj = u0j holds. If {ui , u0i } ∩ {uj , u0j } = ∅ or
cG (s, u) ≥ 2 for some u ∈ {ui , u0i } ∩ {uj , u0j }, then two cuts Xi and Xj do not
cross each other. t
u
We now describe an algorithm, called COLLECTION, which computes a
(k, s)-semi-critical covering collection X in a graph G∗ obtained from G by a
noncrossing sequence of (k, s)-feasible splittings. Let π = (w0 , w1 , . . . , wp−1 ) be
a cyclic order of ΓG (s). In a graph G0 obtained from G by a noncrossing sequence
of (k, s)-feasible splittings, a vertex wj is called a successor of a vertex wi if
cG0 (s, wj ) ≥ 1 and h > 0 with j = i + h (mod p) is minimum.
0. Initialize X to be ∅.
1. for each wi , i := 0, . . . , p − 1 do
if wi is not in any cut X ∈ X then execute MAXSPLIT(wi , wi , k) to compute
G0 = G/(wi , wi , δ) with δ = ∆G (wi , wi , k) and an admissible cut Xwi in G0 (if
cG0 (s, wi ) ≥ 2); let G := G0 ;
if cG (s, wi ) ≥ 2 then X := X ∪ {Xwi }, discarding all X ∈ X with X ⊂ Xwi
from X .
end { for }
2. for each wi such that cG (s, wi ) = 1, i := 0, . . . , p − 1 do
if wi is not in any cut X ∈ X then execute MAXSPLIT(wi , wj , k) for wi and
the successor wj of s in the current G to compute G0 = G/(wi , wj , δ) with
δ = ∆G (wi , wj , k) and an admissible cut Xwi in G0 (if cG0 (s, wi ) = 1); let
G := G0 ;
if cG (s, wi ) = 1 then X := {X − Xwi | cG (s, X − Xwi ) > 0, X ∈ X } ∪ {Xwi }.
else (if cG (s, wi ) = 0) remove any cut X with cG (s, X) = 0 from X .
end { for }
Output G∗ := G. t
u
Clearly, the resulting sequence of splitting is (k, s)-feasible and noncrossing.
Lemma 5. Algorithm COLLECTION correctly computes a (k, s)-semi-critical
covering collection X in the output graph G∗ .
Proof: Let X be the set of cuts obtained after step 1. If two cuts Xwi , Xwj ∈ X
(0 ≤ i < j ≤ p − 1) has a common vertex v, then wj 6∈ Xwi and Xwi − Xwj 6= ∅
(otherwise, Xwi must have been discarded). However, this implies that Xwi and
Xwj cross each other, contradicting Lemma 4(iii). Thus, the X is a (k, s)-semi-
critical collection.
Now we prove by induction that X is a (k, s)-semi-critical collection dur-
ing step 2. Assume that MAXSPLIT(wi , wj , k) is executed to compute G0 =
G/(wi , wj , δ) with δ = ∆G (wi , wj , k). If cG0 (s, wi ) = 0, then a cut X ∈ X with
wj ∈ X may satisfy cG0 (s, X) = 0 after the splitting. However, such a cut will
Augmentation in Planar Graphs 103
most 4(|ΓG (s)|+|X |) = O(|ΓG (s)|) times, we can obtain a complete (k, s)-feasible
splitting of a given graph G, which is obviously noncrossing.
4 Planarity-Preserving Splitting
(i) Any s-proper cut X with cG (X) ≤ 4 induces a connected subgraph G[X].
(ii) Assume λG[V −s] (V − s) = 0, and let u and v be two neighbors of s such that
they belong to different 1-components in G[V − s]. Then ∆G (u, v, 3) ≥ 1.
(iii) Assume λG[V −s] (V − s) = 1. Let Y be a leaf 2-component in G[V − s]. If
∆G (u, v, 3) = 0 for some neighbors u ∈ ΓG (s) ∩ Y and v ∈ ΓG (s) − Y , then
ΓG (s) − Y − v 6= ∅ and ∆G (u0 , v 0 , 3) ≥ 1 for any neighbors v 0 ∈ ΓG (s) − Y − v
and u0 ∈ ΓG (s) ∩ Y .
(iv) Assume λG[V −s] (V − s) = 2. Let Y be a 3-component with cG (s, Y ) ≥ 2
in G[V − s]. Then ∆G (u, v, 3) ≥ 1 for any neighbors u ∈ ΓG (s) ∩ Y and
v ∈ ΓG (s) − Y .
(v) Assume λG[V −s] (V −s) = 2. Let Y be a non-leaf 3-component with cG (s, Y ) =
1 in G[V − s]. If ∆G (u, v, 3) = 0 for some neighbors u ∈ ΓG (s) ∩ Y and
v ∈ ΓG (s) − Y , then ΓG (s) − Y − v 6= ∅ and ∆G (u, v 0 , 3) ≥ 1 for any neighbor
v 0 ∈ ΓG (s) − Y − v. t
u
Based on this lemma, for a given cyclic order π of ΓG (s), we can find a
noncrossing sequence of (k, s)-feasible splittings (which may not be complete)
such that the resulting graph G∗ satisfies either cG∗ (s) = 0 (i.e., the obtained
splitting is complete) or the following condition:
Algorithm PREPROCESS
Input: A multigraph G = (V, E) (which is not necessarily planar), a designated
vertex s ∈ V with even degree and λG (V − s) ≥ 3 , and a cyclic order π of ΓG (s).
Output: A multigraph G∗ obtained from G by a noncrossing (3, s)-feasible
splitting such that G∗ satisfies either cG∗ (s) = 0 or (2).
1 G0 := G;
2 while G0 [V − s] is not connected do
3 Find a neighbor w ∈ ΓG0 (s) and its successor w0 ∈ ΓG0 (s) such that
w and w0 belong to different 1-components in G0 [V − s];
4 G0 := G0 /(w, w0 , 1)
5 end; { while }
6 while G0 [V − s] is not 2-edge-connected (i.e., λG0 [V −s] (V − s) = 1) do
7 Choose a leaf 2-component Y in G0 [V − s];
8 Find a neighbor w ∈ ΓG0 (s) ∩ Y and its successor w0 ∈ ΓG0 (s) − Y ;
9 if ∆G (w, w0 , 3) ≥ 1 then G0 := G0 /(w, w0 , 1)
10 else
11 Find a neighbor w00 ∈ ΓG0 (s) − Y and its successor w000 ∈ ΓG0 (s) ∩ Y ,
and G0 := G0 /(w00 , w000 , 1)
12 end { if }
Augmentation in Planar Graphs 107
13 end; { while }
14 while G0 [V − s] has a 3-component Y with cG0 (s, Y ) ≥ 2 or a non-leaf
3-component Y with cG0 (s, Y ) = 1 do
15 Find neighbors w ∈ ΓG0 (s) ∩ Y and w0 ∈ ΓG0 (s) − Y such that w0 is
the successor of w;
16 if ∆G (w, w0 , 3) ≥ 1 then G0 := G0 /(w, w0 , 1)
17 else { Y is a non-leaf 3-component with cG0 (s, Y ) = 1 }
18 Find a neighbor w00 ∈ ΓG0 (s) − Y such that w is the successor of w00 ,
and G0 := G0 /(w00 , w, 1)
19 end { if }
20 end; { while }
21 Output G∗ := G0 .
In other words, cactus GG00 represents all 2-cuts in G00 = G∗ [V −s]. By Lemma 9,
there is a bijection between EG∗ (s) and L(GG00 ), and thus GG00 has an even
number of leaf vertices. A set σ of new edges which pairwise connect all leaf
vertices in a cactus is called a leaf-matching. Hence finding a complete (k, s)-
feasible splitting in G∗ is to obtain a leaf-matching σ in GG00 such that adding
the leaf-matching destroys all 2-cuts in the cactus GG00 .
However, to ensure that the complete splitting corresponding to a leaf-mat-
ching preserves the planarity of G∗ , we need to choose a leaf-matching σ of GG00
carefully. An embedding χ of a cactus in the plane is called standard if all leaf
vertices are located on the outer face of χ. In particular, for a cyclic order π of leaf
vertices, a standard embedding χ of a cactus is called a standard π-embedding
if the leaf vertices appear in the order of π along the outer face of χ. Note that
a standard π-embedding of a cactus is unique (unless we distinguish one edge
from the other in a cycle of length two). We define a flipping operation in an
embedding χ of cactus G = (V, E) as follows. Choose a cycle C in G and a vertex
z in C. We see that removal of the two edges in C incident to z creates two
connected components, say G 0 and G 00 ; we assume that z ∈ V (G 0 ). Let G[C, z]
denote the subgraph G 0 of G. We say that the embedding χ of G is flipped by
(C, z) if we fold the subgraph G[C, z] back into the other side of area surrounded
by C while fixing the other part of the embedding χ. An embedding obtained
from a standard π-embedding of a cactus by a sequence of flipping operations is
called a π 0 -embedding.
Recall that neighbors in ΓG∗ (s) appear in cyclic order πψ0 = (w1 , . . . , wr )
in an embedding χψ of G∗ . We also use πψ0 to represent the cyclic order of
leaf vertices z1 = ϕ(w1 ), z2 = ϕ(w2 ), . . . , zr = ϕ(wr ) in cactus GG00 . Then the
standard πψ0 -embedding χψ of GG00 has the following property:
each vertex z ∈ V in GG00 can be replaced with the subgraph
(3)
G∗ [ϕ−1 (z)] without creating crossing edges in χ.
Observe that a flipping operation preserves property (3), and hence any π-
embedding χ of GG00 also satisfies the property (3).
A pair (σ, χ) of a leaf-matching σ on leaf vertices in a cactus G and a π-
embedding χ of G is called a π-configuration. A π-configuration (σ, χ) of G is
called good if it satisfies the following conditions.
Augmentation in Planar Graphs 109
(a) all 2-cuts in cactus G = (V, E) are destroyed by adding σ (i.e., for any 2-cut
X, σ contains an edge (z, z 0 ) with z ∈ X and z 0 ∈ V − X), and
(b) all edges in σ can be drawn in π-embedding χ of G without creating crossing
edges.
Now the problem of computing a complete and planarity-preserving (3, s)-
feasible splitting in G∗ is to find a good πψ0 -configuration (σ, χ) of GG00 . To show
that such a good πψ0 -configuration always exists in GG00 , it suffices to prove the
next lemma (the proof is omitted).
Lemma 10. For a cactus G = (V, E) and a cyclic order π of leaf vertices, as-
sume that there is a standard π-embedding of G. Then there always exists a good
π-configuration (σ, χ) of G, and such a configuration can be found in O(|V|2 )
time. t
u
By this lemma, a complete and planarity-preserving (3, s)-feasible splitting
in a graph G∗ which satisfies (2) can be computed in O(n2 ) time. This and
Lemma 8 establish the following theorem.
Theorem 4. Given a planar multigraph G = (V, E) with a designated vertex
s ∈ V of even degree, and λG (V − s) ≥ 3, there exists a complete and planarity-
preserving (3, s)-feasible splitting, and such a splitting can be found in O(n2 )
time. t
u
Acknowledgments
This research was partially supported by the Scientific Grant-in-Aid from Min-
istry of Education, Science, Sports and Culture of Japan, the grant from the
Inamori Foundation and Kyoto University Foundation, and the Research Man-
agement Committee from The University of Newcastle.
References
1. G.-R. Cai and Y.-G. Sun. The minimum augmentation of any graph to k-edge-
connected graph. Networks, 19:151–172, 1989.
2. A. Frank. Augmenting graphs to meet edge-connectivity requirements. SIAM J.
Disc. Math., 5:25–53, 1992.
3. G. Kant. Algorithms for Drawing Planar Graphs. PhD thesis, Dept. of Computer
Science, Utrecht University, 1993.
4. G. Kant. Augmenting outerplanar graphs. J. Algorithms, 21:1–25, 1996.
5. G. Kant and H. L. Boldlaender. Planar graph augmentation problems. LNCS,
Vol. 621, pages 258–271. Springer-Verlag, 1992.
6. L. Lovász. Combinatorial Problems and Exercises. North-Holland, 1979.
7. H. Nagamochi and T. Ibaraki. A linear time algorithm for computing 3-edge-
connected components in multigraphs. J. of Japan Society for Industrial and
Applied Mathematics, 9:163–180, 1992.
8. H. Nagamochi and T. Ibaraki. Computing edge-connectivity of multigraphs and
capacitated graphs. SIAM J. Disc. Math., 5:54–66, 1992.
9. H. Nagamochi and T. Ibaraki. Deterministic Õ(nm) time edge-splitting in undi-
rected graphs. J. Combinatorial Optimization, 1:5–46, 1997.
10. R. E. Tarjan. Depth-first search and linear graph algorithms. SIAM J. Comput.,
1:146–160, 1972.
Augmentation in Planar Graphs 111
1 Introduction
The 2-Edge Connected Subgraph Problem is a fundamental problem in Sur-
vivable Network Design. This problem arises in the design of communication
networks that are resilient to single-link failures and is an important special case
in the design of survivable networks [11,12,14].
1.1 Formulation
An integer programming formulation for the 2-Edge Connected Subgraph Prob-
lem is as follows. Let Kn = (V, E) be the complete graph of feasible links on
?
Supported by NSF grant DMS9509581 and DOE contract AC04-94AL85000.
??
Research supported in part by an NSF CAREER grant CCR-9625297.
minimize c · x
subject to
x(δ(v)) ≥ 2 for all v ∈ V,
(1)
x(δ(S)) ≥ 2 for all S ⊂ V,
xe ≥0 for all e ∈ E,
xe integral.
minimize c · x
subject to
x(δ(v)) = 2 for all v ∈ V, (2)
x(δ(S)) ≥ 2 for all S ⊂ V,
xe ≥ 0 for all e ∈ E.
The constraints of the subtour relaxation are called the degree constraints, the
subtour elimination constraints, and the non-negativity constraints respectively.
If one has the relationship cij ≤ cik + cjk for all distinct i, j, k ∈ V , then
c is said to satisfy the triangle inequality. An interesting known result is that
if the costs satisfy the triangle inequality, then there is an optimal solution to
(1) which is also feasible and hence optimal for (2). This follows from a result
of Cunningham [11] (A more general result called the Parsimonious Property is
shown by Goemans and Bertsimas in [7]). We can show that this equivalence
holds even when the costs do not satisfy the triangle inequality. In the latter
case, we replace the given graph by its metric completion, namely, for every
edge ij such that cij is greater than the cost of the shortest path between i and
j in the given graph, we reset the cost to that of this shortest path. The intent
is that if this edge is chosen in the solution of (1), we may replace it by the
shortest cost path connecting i and j. Since multiedges are allowed in the 2-edge
connected graph this transformation is valid. Hence without loss of generality,
we can assume that the costs satisfy the triangle inequality.
114 Robert Carr and R. Ravi
2 Motivation
In this section we discuss two distinct motivations that led us to focus on half-
integral extreme points and prove a version of Conjecture 1 for this special case.
One follows from a particular strategy to prove Conjecture 1 and the other
from examining subclasses of subtour extreme points that are sufficient to prove
Conjectures 1 and 2.
Let an arbitrary point x∗ of the subtour polytope for Kn be given. Multiply this
by 43 to obtain the vector 43 x∗ . Denote the edge incidence vector for a given 2-edge
connected subgraph H in Kn by χH . Note that edge variables could be 0,1, or 2
in this incidence vector. Suppose we could express 43 x∗ as a convex combination
of incidence vectors of 2-edge connected subgraphs Hi for i = 1, 2, . . . , k. That
is, suppose that
4 ∗ Pk
3x = i=1 λi χHi , (3)
X
k
λi = 1.
i=1
Then, taking dot products on both sides of (3) with the cost vector c yields
4
Pk
3c · x∗ = i=1 λi c · χHi . (4)
Since the right hand side of (4) is a weighted average of the numbers c · χHi , it
follows that there exists a j ∈ {1, 2, . . . , k} such that
c · χHj ≤ 43 c · x∗ . (5)
If we could establish (5) for any subtour point x∗ , then it would in particular
be valid for the optimal subtour point, which would prove Conjecture 1.
In an attempt at proving Conjecture 1, we aim at contradicting the idea of a
minimal counterexample, that is, a subtour point x∗ having the fewest number of
vertices n0 such that (3) can not hold for any set of 2-edge connected subgraphs.
First we have the following observation.
of convex multipliers. Thus, for each l, we can find a set of 2-edge connected
subgraphs Hil such that
4 l X l Hil
x = λi χ ,
3 i
where the λli ’s satisfy the usual constraints for a set of convex multipliers. Then
4 ∗
P 4
P P l
3x l 3 µl x µl λli χHi .
l
= = l i (6)
x∗ (δ(H)) = 2.
We can then split x∗ into 2 smaller subtour solutions x1 and x2 in the following
way. Take the vertices of V \ H in x∗ and contract them to a single vertex to
obtain x1 . Likewise, take the vertices of H in x∗ and contract them to a single
vertex to obtain x2 . An example of this is shown in Figure 1.
Since x1 and x2 are not counterexamples to our conjecture, we would be able
to decompose 43 x1 and 43 x2 into combinations of 2-edge connected subgraphs,
which we may then attempt to glue together to form a similar combination for
4 ∗ ∗
3 x , thereby showing that x is not a counterexample (We show how this can be
accomplished for the case of half-integral extreme points in Case 1 in the Proof
of Theorem 6).
What if there are no tight substantial cuts however? The following proposi-
tion which is shown in [1] shows us what we need to do.
2/3
2/3
1/3
2/3
1/3
1 1
1 2/3
1
1/3 2/3
2/3
1/3
2/3
Fig. 1. An idea for splitting a minimal counterexample into two smaller in-
stances. Note that H defines a substantial tight cut, i.e., both H and V \ H have
at least three vertices and x(δ(H)) = 2.
where the H i ’s are 2-edge connected graphs spanning V . For each i, contract
each circle of nodes Cv back to the vertex v ∈ V in H i . Call the resulting graph
Hi . Since contraction preserves edge connectivity, Hi is a 2-edge connected graph
spanning V . When one performs this contraction on x∗ , one gets x∗ . As a result,
we obtain that
4 ∗
P
3x = i λi χ ,
Hi
(8)
We define a tight cut for a 4-edge connected graph G to be a cut which has
exactly 4-edges in it. We define a non-trivial cut for such a graph to be a cut
where both shores have at least 2 vertices each. We have the following lemma.
Lemma 1. Let G = (V, E) be a 4-regular 4-edge connected graph which has no
tight non-trivial cut which includes an edge e = uv ∈ E. Let the other 3 (not
necessarily distinct) neighbors of v be x, y, and z. Then either ux or yz is a loop
or G0 = G − v + ux + yz is 4-regular and 4-edge connected, and likewise for the
other combinations.
3χ = i λi χHi , (11)
In (11), consider the edges incident to v1 in each of the Hi1 ’s. There are clearly
at least 2 such edges for every Hi1 . The values of edges a1 , b1 , c1 , and e1 in
2 E(G1 )\{e1 }
3χ are 23 , 23 , 23 , and 0 respectively. This adds up to 2. Hence, since we
are dealing with convex combinations, which are weighted averages, when the
weights are taken into account, the Hi1 ’s have on average 2 edges incident to v1
each. But since every Hi1 has at least 2 such edges, it follows that every Hi1 has
exactly 2 edges incident to v1 in it.
For each 2-edge connected subgraph Hi1 which has edges a1 and b1 , denote
the corresponding convex multiplier by λab i . Define λi and λi similarly. One
ac bc
can see that the only way for the variable values of edges a1 , b1 , and c1 to end
up all being 23 in 23 χE(G1 )\{e1 } is for the following to hold:
P ab P ac P bc 1
i λi = i λi = i λi = 3 . (13)
Call the three types of 2-edge connected graphs Hij as ab-graphs, ac-graphs,
and bc-graphs. Our strategy is to combine say each ab-graph Hi1 of G1 with an
ab-graph Hj2 of G2 to form an ab-graph Hijab
of G which is also 2-edge connected.
So, we define
Hij
ab
:= (Hi1 − v1 ) + (Hj2 − v2 ) + a + b, (15)
where Hi1 and Hj2 are ab-graphs. Since Hi1 − v1 and Hj2 − v2 are both connected,
it follows that Hijab
is 2-edge connected. Similarly define Hij ac
and Hijbc
.
Now consider the following expression:
P P P
i,j 3λi µj Hij + i,j 3λi µj Hij + i,j 3λi µj Hij .
ab ab ab ac ac ac bc bc bc
(16)
One can verify that this is in fact a convex combination. Any edge f in say
G1 − v1 occurs in (16) with a weight of
P P ab P ac P bc
{i | f ∈H 1 } (λi · (3 · j µj ) + λi · (3 · j µj ) + λi · (3 · j µj )). (17)
ab ac bc
i
A New Bound for the 2-Edge Connected Subgraph Problem 123
G1 = G − v + ux + yz, (20)
G2 = G − v + uy + xz, (21)
3χ = i λi χHi , (22)
and
2 E2 \{e2 } P 2
3χ = i µi χHi . (23)
Define Ĥi1 by
Hi1 − yz + yv + zv for yz ∈ Hi1 ,
Ĥi1 = (24)
Hi1 + yv + xv for yz 6∈ Hi1 .
Every edge in f ∈ E \ δ(v) occurs with a total weight of 23 in (26) since f occured
with that weight in both (22) and (23). Since yz occurs with a total weight of 23
in (22) and xz occurs with a total weight of 23 in (23), one can verify that xv, yv,
and zv each occur with a total weight of 23 in (26) as well. Therefore, we have
2 E\{e} 1 P 1
1 P 2
4 Concluding Remarks
An obvious open problem arising from our work is to extend our strategy and
settle Conjecture 1. In another direction, it would be interesting to apply our
ideas to design a 43 -approximation algorithm for the minimum cost 2-edge- and
2-vertex-connected subgraph problems.
Another interesting question is the tightness of the bound proven in Theo-
rem 1. The examples we have been able to construct seem to demonstrate an
asymptotic ratio of 65 between the cost of a minimum cost 2-edge connected sub-
graph and that of an optimal half-integral subtour solution. Finding instances
with a worse ratio or improving our bound in Theorem 1 are open problems.
References
1. M. Balinski. On recent developments in integer programming. In H. W. Kuhn,
editor, Proceedings of the Princeton Symposium on Mathematical Programming,
pages 267–302. Princeton University Press, NJ, 1970.
2. S. Boyd and R. Carr. Finding low cost TSP and 2-matching solutions using certain
half-integer subtour vertices. Manuscript, March 1998.
3. S. Boyd and R. Carr. A new bound for the 2-matching problem. Report TR-96-07,
Department of Computer Science, University of Ottawa, Ottawa, 1996.
4. N. Christofides. Worst case analysis of a new heuristic for the traveling salesman
problem. Report 388, Graduate School of Industrial Administration, Carnegie Mel-
lon University, Pittsburgh, 1976.
5. G. N. Fredrickson and J. Ja Ja. On the relationship between the biconnectiv-
ity augmentation and traveling salesman problems. Theoretical Computer Science,
19:189–201, 1982.
6. M. X. Goemans. Worst-case comparison of valid inequalities for the TSP. Math.
Programming, 69:335–349, 1995.
7. M. X. Goemans and D. J. Bertsimas. Survivable networks, linear programming
relaxations and the parsimonious property. Math. Programming, 60:145–166, 1993.
8. M. X. Goemans, A. Goldberg, S. Plotkin, D. Shmoys, É. Tardos, and D. P. Willam-
son. Approximation algorithms for network design problems. Proceedings of the
Fifth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA ’94), pages
223–232, 1994.
A New Bound for the 2-Edge Connected Subgraph Problem 125
Abstract. We give a 17 12
-approximation algorithm for the following NP-
hard problem:
Given a simple undirected graph, find a 2-edge connected span-
ning subgraph that has the minimum number of edges.
The best previous approximation guarantee was 32 . If the well known TSP
4
3
conjecture holds, then there is a 43 -approximation algorithm. Thus our
main result gets half-way to this target.
1 Introduction
Given a simple undirected graph, consider the problem of finding a 2-edge con-
nected spanning subgraph that has the minimum number of edges. The problem
is NP-hard, since the Hamiltonian cycle problem reduces to it. A number of
recent papers have focused on approximation algorithms 1 for this and other
related problems, [2]. We use the abbreviation 2-ECSS for 2-edge connected
spanning subgraph.
Here is an easy 2-approximation algorithm for the problem:
Take an ear decomposition of the given graph (see Section 2 for defini-
tions), and discard all 1-ears (ears that consist of one edge). Then the
resulting graph is 2-edge connected and has at most 2n − 3 edges, while
the optimal subgraph has ≥ n edges, where n is the number of nodes.
1
An α-approximation algorithm for a combinatorial optimization problem runs in
polynomial time and delivers a solution whose value is always within the factor α
of the optimum value. The quantity α is called the approximation guarantee of the
algorithm.
Khuller & Vishkin [8] were the first to improve on the approximation guarantee
of 2. They gave a simple and elegant algorithm based on depth-first search that
achieves an approximation guarantee of 1.5. In an extended abstract, Garg, San-
tosh & Singla [6] claimed to have a 1.25-approximation algorithm for the prob-
lem. No proof of this claim is available; on the other hand, there is no evidence
indicating that achieving an approximation guarantee of 1.25 in polynomial time
is impossible.
We improve Khuller & Vishkin’s 18 17
12 -approximation guarantee to 12 . If the
4 4
well known TSP 3 conjecture holds, then there is a 3 -approximation algorithm,
see Section 5. Thus our main result gets half-way to this target.
Let G = (V, E) be the given simple undirected graph, and let n and m denote
|V | and |E|. Assume that G is 2-edge connected.
Our method is based on a matching-theory result of András Frank, namely,
there is a good characterization for the minimum number of even-length ears
over all possible ear decompositions of a graph, and moreover, an ear decom-
position achieving this minimum can be computed efficiently, [4]. Recall that
the 2-approximation heuristic starts with an arbitrary ear decomposition of G.
Instead, if we start with an ear decomposition that maximizes the number of
1-ears, and if we discard all the 1-ears, then we will obtain the optimal solution.
In fact, we start with an ear decomposition that maximizes the number of odd-
length ears. Now, discarding all the 1-ears gives an approximation guarantee of
1.5 (see Proposition 8 below). To do better, we repeatedly apply “ear-splicing”
steps to the starting ear decomposition to obtain a final ear decomposition such
that the number of odd-length ears is the same, and moreover, the internal nodes
of distinct 3-ears are nonadjacent. We employ two lower bounds to show that
discarding all the 1-ears from the final ear decomposition gives an approximation
guarantee of 1712 . The first lower bound is the “component lower bound” due to
Garg et al [6, Lemma 4.1], see Proposition 4 below. The second lower bound
comes from the minimum number of even-length ears in an ear decomposition
of G, see Proposition 7 below.
After developing some preliminaries in Sections 2 and 3, we present our
heuristic in Section 4. Section 5 shows that the well known 43 conjecture for the
metric TSP implies that there is a 43 -approximation algorithm for a minimum-
size 2-ECSS, see Theorem 18. Almost all of the results in Section 5 are well
known, but we include the details to make the paper self-contained. Section 6
has two examples showing that our analysis of the heuristic is tight. Section 6
also compares the two lower bounds with the optimal value.
A Useful Assumption
For our heuristic to work, it is essential that the given graph be 2-node con-
nected. Hence, in Section 4 of the paper where our heuristic is presented, we
will assume that the given graph G is 2-node connected. Otherwise, if G is not
2-node connected, we compute the blocks (i.e., the maximal 2-node connected
subgraphs) of G, and apply the algorithm separately to each block. We compute
a 2-ECSS for each block, and output the union of the edge sets as the edge set of
128 Joseph Cheriyan et al.
a 2-ECSS of G. The resulting graph has no cut edges since the subgraph found
for each block has no cut edge, and moreover, the approximation guarantee for
G is at most the maximum of the approximation guarantees for the blocks.
2 Preliminaries
Except in Section 5, all graphs are simple, that is, there are no loops nor multi-
edges. A closed path means a cycle, and an open path means that all the nodes
are distinct.
An ear decomposition of the graph G is a partition of the edge set into open
or closed paths, P0 + P1 + . . . + Pk , such that P0 is the trivial path with one
node, and each Pi (1 ≤ i ≤ k) is a path that has both end nodes in Vi−1 =
V (P0 ) ∪ V (P1 ) ∪ . . . ∪ V (Pi−1 ) but has no internal nodes in Vi−1 . A (closed
or open) ear means one of the (closed or open) paths P0 , P1 , . . . , Pk in the ear
decomposition, and for a nonnegative integer `, an `-ear means an ear that has `
edges. An `-ear is called even if ` is an even number, otherwise, the `-ear is called
odd. (The ear P0 is always even.) An open ear decomposition P0 + P1 + . . . + Pk
is one such that all the ears P2 , . . . , Pk are open.
An odd ear decomposition is one such that every ear (except the trivial path
P0 ) has an odd number of edges. A graph is called factor-critical if for every node
v ∈ V (G), there is a perfect matching in G − v. The next result gives another
characterization of factor-critical graphs.
Let ε(G) denote the minimum number of edges in a 2-ECSS of G. For a graph
H, let c(H) denote the number of (connected) components of H. Garg et al [6,
Lemma 4.1] use the following lower bound on ε(G).
The next result is not useful for our main result, but we include it for com-
pleteness.
Proof. Let t be the number of internal nodes in the odd ears of P0 +P1 +. . .+Pk .
(Note that the node in P0 is not counted by t.) Then, the number of edges
contributed to E 0 by the odd ears is ≤ 3t/2, and the number of edges contributed
to E 0 by the even ears is ≤ ϕ+|V |−t−1. By applying Proposition 7 (and the fact
that ε(G) ≥ |V |) we get, |E 0 |/ε(G) ≤ (t/2 + ϕ + |V | − 1)/ max(|V |, ϕ + |V | − 1) ≤
(t/2|V |) + (ϕ + |V | − 1)/(ϕ + |V | − 1) ≤ 1.5. t
u
Property (α)
(0) the number of even ears is the same in P0 + P1 + . . . + Pk and in Q0 + Q1 +
. . . + Qk ,
(1) every 3-ear Qi is a pendant ear,
(2) for every pair of 3-ears Qi and Qj , there is no edge between an internal node
of Qi and an internal node of Qj , and
(3) every 3-ear Qi is open.
Proof. The proof is by induction on the number of ears. The result clearly holds
for k = 1. Suppose that the result holds for (j − 1) ears P0 + P1 + . . . + Pj−1 . Let
An Approximation Algorithm for 2-Edge Connected Spanning Subgraphs 131
Q00 + Q01 + . . .+ Q0j−1 be the corresponding ear decomposition that satisfies prop-
erty (α). Consider the open ear Pj , j ≥ 2. Let Pj be an `-ear, v1 , v2 , . . . , v` , v`+1 .
Possibly, ` = 1. (So v1 and v`+1 are the end nodes of Pj , and v1 6= v`+1 .)
Let T denote the set of internal nodes of the 3-ears of Q00 + Q01 + . . . + Q0j−1 .
Suppose Pj is an ear of length ` ≥ 2 with exactly one end node, say, v1 in T .
Let Q0i = w1 , v1 , w3 , w4 be the 3-ear having v1 as an internal node. We take
Q0 = Q00 , . . . , Qi−1 = Q0i−1 , Qi = Q0i+1 , . . . , Qj−2 = Q0j−1 . Moreover, we take
Qj−1 to be the (` + 2)-ear obtained by adding the last two edges of Q0i to Pj , i.e.,
Qj−1 = w4 , w3 , v1 , v2 , . . . , v` , v`+1 , and we take Qj to be the 1-ear consisting of
the first edge w1 v1 of Q0i . Note that the parities of the lengths of the two spliced
ears are preserved, that is, Qj−1 is even (odd) if and only if Pj is even (odd),
and both Qj and Q0i are odd. Hence, the number of even ears is the same in
P0 + P1 + . . . + Pj and in Q0 + Q1 + . . . + Qj .
Now, suppose Pj has both end nodes v1 and v`+1 in T . If there is one 3-ear
Q0i that has both v1 and v`+1 as internal nodes (so ` ≥ 2), then we take Qj−1
to be the (` + 2)-ear obtained by adding the first edge and the last edge of Q0i
to Pj , and we take Qj to be the 1-ear consisting of the middle edge v1 v`+1 of
Q0i . Also, we take Q0 = Q00 , . . . , Qi−1 = Q0i−1 , Qi = Q0i+1 , . . . , Qj−2 = Q0j−1 .
Observe that the number of even ears is the same in P0 + P1 + . . . + Pj and in
Q 0 + Q1 + . . . + Qj .
If there are two 3-ears Q0i and Q0h that contain the end nodes of Pj , then we
take Qj−2 to be the (` + 4)-ear obtained by adding the last two edges of both Q0i
and Q0h to Pj , and we take Qj−1 (similarly, Qj ) to be the 1-ear consisting of the
first edge of Q0i (similarly, Q0h ). (For ease of description, assume that if a 3-ear
has exactly one end node v of Pj as an internal node, then v is the second node
of the 3-ear.) Also, assuming i < h, we take Q0 = Q00 , . . . , Qi−1 = Q0i−1 , Qi =
Q0i+1 , . . . , Qh−2 = Q0h−1 , Qh−1 = Q0h+1 , . . . , Qj−3 = Q0j−1 . Again, observe that
the number of even ears is the same in P0 +P1 +. . .+Pj and in Q0 +Q1 +. . .+Qj .
If the end nodes of Pj are disjoint from T , then the proof is easy (take
Qj = Pj ). Also, if Pj is a 1-ear with exactly one end node in T , then the proof
is easy (take Qj = Pj ).
The proof ensures that in the final ear decomposition Q0 + Q1 + . . . + Qk ,
every 3-ear is pendant and open, and moreover, the internal nodes of distinct 3-
ears are nonadjacent. We leave the detailed verification to the reader. Therefore,
the ear decomposition Q0 + Q1 + . . . + Qk satisfies property (α). t
u
Remark 10. In the induction step, which applies for j ≥ 2 (but not for j = 1),
it is essential that the ear Pj is open, though Q0i (and Q0h ) may be either open
or closed. Our main result (Theorem 12) does not use part (3) of property (α).
Our approximation algorithm for a minimum-size 2-ECSS computes the ear
decomposition Q0 + Q1 + . . . + Qk satisfying property (α), starting from an open
evenmin ear decomposition P0 + P1 + . . . + Pk . (Note that Q0 + Q1 + . . . + Qk
is an evenmin ear decomposition.) Then, the algorithm discards all the edges
in 1-ears. Let the resulting graph be G0 = (V, E 0 ). G0 is 2-edge connected by
Proposition 1.
132 Joseph Cheriyan et al.
Theorem 12. Given a 2-edge connected graph G = (V, E), the above algorithm
finds a 2-ECSS G0 = (V, E 0 ) such that |E 0 |/ε(G) ≤ 17
12 . The algorithm runs in
time O(|V | · |E|).
Proof. By the previous lemma and Proposition 7,
We claim that
t 5(n + ϕ(G) − 1)
|E 0 | ≤+ .
4 4
To see this, note that the final ear decomposition Q0 + Q1 + . . . + Qk satisfies
the following: (i) the number of edges contributed by the 3-ears is 3t/2; (ii) the
number of edges contributed by the odd ears of length ≥ 5 is ≤ 5q/4, where q is
the number of internal nodes in the odd ears of length ≥ 5; and (iii) the number
of edges contributed by the even ears of length ≥ 2 is ≤ ϕ(G) + (n − t − q − 1),
since there are ϕ(G) such ears and they have a total of (n − t − q − 1) internal
nodes. (The node in Q0 is not an internal node of an ear of length ≥ 1.)
The approximation guarantee follows since
|E 0 | t/4 + 5(n + ϕ(G) − 1)/4
≤
ε(G) ε(G)
t/4 + 5(n + ϕ(G) − 1)/4
≤
max(n + ϕ(G) − 1, 3t/2)
t 2 5(n + ϕ(G) − 1) 1
≤ +
4 3t 4 n + ϕ(G) − 1
17
= .
12
t
u
4
5 Relation to the TSP 3
Conjecture
This section shows that the well known 43 conjecture for the metric TSP (due
to Cunningham (1986) and others) implies that there is a 43 -approximation al-
gorithm for a minimum-size 2-ECSS, see Theorem 18. Almost all of the results
An Approximation Algorithm for 2-Edge Connected Spanning Subgraphs 133
in this section are well known, except possibly Fact 13, see [1,3,5,7,11,13]. The
details are included to make the paper self-contained.
In the metric TSP (traveling salesman problem), we are given a complete
graph G0 = Kn and edge costs c0 that satisfy the triangle inequality (c0vw ≤
c0vu + c0uw , ∀v, w, u ∈ V ). The goal is to compute c0T SP , the minimum cost of a
Hamiltonian cycle.
Recall our 2-ECSS problem: Given a simple graph G = (V, E), compute ε(G),
the minimum size of a 2-edge connected spanning subgraph. Here is the multiedge
(or uncapacitated) version of our problem. Given G = (V, E) as above, compute
µ(G), the minimum size (counting multiplicities) of a 2-edge connected spanning
submultigraph H = (V, F ), where F is a multiset such that e ∈ F =⇒ e ∈ E.
(To give an analogy, if we take ε(G) to correspond to the f -factor problem, then
µ(G) corresponds to the f -matching problem.)
Proof. Let H = (V, F ) give the optimal solution for µ(G). If H uses two copies
of an edge vw, then we can replace one of the copies by some other edge of G
in the cut given by H − {vw, vw}. In other words, if S is the node set of one of
the two components of H − {vw, vw}, then we replace one copy of vw by some
edge from δG (S) − {vw}. t
u
Remark 14. The above is a lucky fact. It fails to generalize, both for minimum-
cost (rather than minimum-size) 2-ECSS, and for minimum-size k-ECSS, k ≥ 3.
Fact 15. Let G be a 2-edge connected graph, and let c assign unit costs to the
edges. The minimum cost of the TSP on the metric completion of G, c, satisfies
c0T SP ≥ µ(G) = ε(G).
c0T SP = minimize c0 · x
subject to x(δ(v)) = 2, ∀v ∈ V
x(δ(S)) ≥ 2, ∀S ⊂ V, ∅ =
6 S 6= V
x ≥ 0,
x ∈ ZZ .
134 Joseph Cheriyan et al.
4
TSP 4
3 Conjecture. If c0 is a metric, then c0T SP ≤ zST .
3
To derive the lower bound zST ≤ ε(G), we need a result of Goemans &
Bertsimas on the subtour LP, [7, Theorem 1]. In fact, a special case of this result
that appeared earlier in [11, Theorem 8] suffices for us.
Proposition 17 (Parsimonious property [7]). Consider the TSP on G0 =
(V, E 0 ), c0 , where G0 = K|V | . Assume that the edge costs c0 form a metric, i.e.,
c0 satisfies the triangle inequality. Then the optimal value of the subtour LP
remains the same even if the constraints {x(δ(v)) = 2, ∀v ∈ V } are omitted.
Note that this result does not apply to the subtour integer program given
above.
Let z2CUT denote the optimal value of the LP obtained from the subtour LP
by removing the constraints x(δ(v)) = 2 for all nodes v ∈ V . The above result
states that if c0 is a metric, then zST = z2CUT . Moreover, for a 2-edge connected
graph G and unit edge costs c = 1l, we have z2CUT ≤ µ(G) = ε(G), since µ(G) is
the optimal value of the integer program whose LP relaxation has optimal value
z2CUT . (Here, z2CUT is the optimal value of the LP on the metric completion of
G, c.) Then, by the parsimonious property, we have zST = z2CUT ≤ ε(G). The
main result in this section follows.
4
Theorem 18. Suppose that the TSP 3 conjecture holds. Then
4
zST ≤ ε(G) ≤ c0T SP ≤ zST .
3
A 43 -approximation of the minimum-size 2-ECSS is obtained by computing
4
3 zST on the metric completion of G, c, where c = 1l.
proved that the TSP tour found by the Christofides heuristic achieves an approx-
imation guarantee of 1.5. Simpler proofs of this result based on Theorem 16 were
found later by Cunningham (see [11, Theorem 8]) and by Goemans & Bertsimas
[7, Theorem 4].
Consider the minimum-cost 2-ECSS problem on a 2-edge connected graph
G = (V, E) with nonnegative edge costs c. Let the minimum cost of a simple 2-
ECSS and of a multiedge 2-ECSS be denoted by cε and cµ , respectively. Clearly,
cε ≥ cµ . Even for the case of arbitrary nonnegative costs c, we know of no exam-
cµ 7 cµ 7
ple where > . There is an example G, c with ≥ . Take two copies of
zST 6 zST 6
K3 , call them C1 , C2 , and add three disjoint length-2 paths P1 , P2 , P3 between
C1 and C2 such that each node of C1 ∪ C2 has degree 3 in the resulting graph G.
In other words, G is obtained from the triangular prism C6 by subdividing once
each of the 3 “matching edges”. Assign a cost of 2 to each edge in C1 ∪ C2 , and
assign a cost of 1 to the remaining edges. Then cε = cµ = 14, as can be seen by
taking 2 edges from each of C1 , C2 , and all 6 edges of P1 ∪ P2 ∪ P3 . Moreover,
zST ≤ 12, as can be seen by taking xe = 1/2 for each of the 6 edges e in C1 ∪ C2 ,
and taking xe = 1 for the remaining 6 edges e in P1 ∪ P2 ∪ P3 .
6 Conclusions
References
1. R. Carr and R. Ravi. A new bound for the 2-edge connected subgraph problem. In
R. E. Bixby, E. A. Boyd, and R. Z. Rı́os-Mercado, editors, Integer Programming
and Combinatorial Optimization: Proceedings of the 6th International Conference
on Integer Programming and Combinatorial Optimization, LNCS, Vol. 1412, pages
110–123. Springer, 1998. This volume.
2. J. Cheriyan and R. Thurimella. Approximating minimum-size k-connected span-
ning subgraphs via matching. Proc. 37th Annual IEEE Sympos. on Foundat. of
Comput. Sci., pages 292–301, 1996.
3. N. Christofides. Worst-case analysis of a new heuristic for the traveling salesman
problem. Technical report, G.S.I.A., Carnegie-Mellon Univ., Pittsburgh, PA, 1976.
4. A. Frank. Conservative weightings and ear-decompositions of graphs. Combinator-
ica, 13:65–81, 1993.
5. G. L. Frederickson and J. Ja’Ja’. On the relationship between the biconnectivity
augmentation and traveling salesman problems. Theor. Comp. Sci., 19:189–201,
1982.
6. N. Garg, V. S. Santosh, and A. Singla. Improved approximation algorithms for
biconnected subgraphs via better lower bounding techniques. Proc. 4th Annual
ACM-SIAM Symposium on Discrete Algorithms, pages 103–111, 1993.
7. M. X. Goemans and D. J. Bertsimas. Survivable networks, linear programming
relaxations and the parsimonious property. Mathematical Programming, 60:143–
166, 1993.
8. S. Khuller and U. Vishkin. Biconnectivity approximations and graph carvings.
Journal of the ACM, 41:214–235, 1994. Preliminary version in Proc. 24th Annual
ACM STOC,pages 759–770, 1992.
9. L. Lovász. A note on factor-critical graphs. Studia Sci. Math. Hungar., 7:279–280,
1972.
10. L. Lovász and M. D. Plummer. Matching Theory. Akadémiai Kiadó, Budapest,
1986.
11. C. L. Monma, B. S. Munson, and W. R. Pulleyblank. Minimum-weight two-
connected spanning networks. Mathematical Programming, 46:153–171, 1990.
12. H. Whitney. Nonseparable and planar graphs. Trans. Amer. Math. Soc., 34:339–
362, 1932.
13. L. A. Wolsey. Heuristic analysis, linear programming and branch and bound. Math-
ematical Programming Study, 13:121–134, 1980.
Multicuts in Unweighted Graphs with Bounded
Degree and Bounded Tree-Width
1 Introduction
Multicommodity Flow problems have been intensely studied for decades [7,11,9],
[13,15,17] because of their practical applications and also of the appealing hard-
ness of several of their versions. The fractional version of a Multicut problem
is the dual of a Multicommodity Flow problem and, therefore, Multicut is of
similar interest [3,9,10,13,20].
?
Research supported in part by NSF grant CCR-9319106.
??
Research partially supported by NSF grant CCR-9319106 and by FAPESP (Proc.
96/04505–2).
???
Research supported in part by ProNEx (MCT/FINEP) (Proj. 107/97) and FAPESP
(Proc. 96/12111–4).
SNP-hard in binary trees, therefore letting the input graph be weighted makes
the problem harder. Finally, we show that Unweighted Edge Multicut is Max
SNP-hard if the input graphs are walls. Walls, to be formally defined in Sec-
tion 4, have degree at most three and there are walls with tree-width as large as
we wish. We conclude that letting the input graph have unbounded tree-width
makes the problem significantly harder.
In Section 2 we present the polynomial-time algorithm for Unrestricted Ver-
tex Multicut in trees and the polynomial-time approximation scheme for Unre-
stricted Vertex Multicut in bounded-tree-width graphs. In Section 3, we show the
approximation-preserving reduction from Edge Multicut to Unrestricted Vertex
Multicut. Finally, in Section 4 we present our hardness results.
Algorithm:
Input: a tree T .
Start with S = ∅.
Call a pair (si , ti ) in C active if it is not disconnected by S.
Traverse the tree in postorder.
Multicuts in Unweighted Graphs 141
Clearly the following invariant holds: all non-active pairs in C are discon-
nected by S. A pair in C that becomes non-active does not go back to active
since we never remove vertices from S. At the end of the algorithm, no pair in
C is active, meaning that S is a solution for the problem. For the minimality
of S, note that the paths joining si to ti in T for all marked pairs (si , ti ) form
a pairwise disjoint collection of paths. Any solution should contain at least one
vertex in each of these paths. But there are |S| marked paths, meaning that
any solution has at least |S| vertices. This implies that |S| is a minimum-size
solution. Besides, it is not hard to see that the algorithm can be implemented
in polynomial time.
Get (u, A), which returns a vertex u of T i−1 and a solution A for Gi−1 (u) such
that |A| ≤ (1 + )opt(Gi−1 (u)) and Xui−1 ⊆ A. Then the algorithm starts a new
iteration with Gi = Gi−1 \ Gi−1 (u), Θi = (T i , (Xwi )w∈V (T i ) ), where T i = T i−1 \
T i−1 (u) and Xwi = Xwi−1 \ V (Gi−1 (u)), for all w ∈ V (T i ), and S i = S i−1 ∪ A.
The formal description of the algorithm appears in Figure 2.1.
Algorithm:
G0 ← G;
Θ0 ← Θ;
S 0 ← ∅;
i ← 1;
while Gi−1 6= ∅ do
Get (ui , Ai ); /* |Ai | ≤ (1 + )opt(Gi−1 (ui )) and Xui−1 ⊆ Ai */
i i−1 i−1
G ←G \ G (ui );
T i ← T i−1 \ T i−1 (ui );
i i−1
Xw ← Xw \ V (Gi−1 (ui )), for each w ∈ V (T i );
S i ← S i−1 ∪ Ai ;
i ← i + 1;
endwhile;
f ← i − 1;
output S f .
We will postpone the description of Get (u, A) and, for now, assume that it
works correctly and in polynomial time. The next lemma states a property of
tree decompositions that we will use later.
of Xui−1
i
in the segment of P from s to y. Since Xui−1
i
⊆ S f , there is a vertex of
P in S . If y is not in G
f i−1
\ G (ui ), then y is not in Gi−1 . This means y is in
i−1
G (uj ), for some j < i. Moreover, s is in Gj−1 \ Gj−1 (uj ) (because this is a
j−1
Lemma 3. |S f | ≤ (1 + )opt(G).
X
f
= (1 + ) opt(Gi−1 (ui )) ≤ (1 + )opt(G),
i=1
3 Edge Multicut
In this section we show that Edge Multicut can be reduced to Unrestricted
Vertex Multicut by a reduction that preserves approximability.
The reduction has the following property. If the instance of Edge Multicut is
a graph with bounded degree and bounded tree-width, then the corresponding
instance of Unrestricted Vertex Multicut has bounded tree-width.
Given a graph G = (V, E), the line graph of G is the graph whose vertex set
is E and such that two of its vertices (edges of G) are adjacent if they share an
endpoint in G. In other words, the line graph of G is the graph (E, L), where
L = {ef : e, f ∈ E and e and f have a common endpoint}.
Consider an instance of Edge Multicut, that is, a graph G = (V, E) and a set C
of pairs of distinct vertices of G. Let us describe the corresponding instance of
Unrestricted Vertex Multicut. The input graph for Unrestricted Vertex Multicut
is the line graph of G, denoted by G0 . Now let us describe the set of pairs of
vertices of G0 . For each pair (s, t) in C, we have in C 0 all pairs (e, f ) such that e
has s as endpoint and f has t as endpoint.
Clearly G0 can be obtained from G in polynomial time. Note that C 0 has at
most k∆2 pairs, where k = |C| and ∆ is the maximum degree of G. Also C 0 can
be obtained from G and C in polynomial time.
The following theorem completes the reduction.
by the description of Edge Multicut, s 6= t.) Let e be the first edge of P and f
the last one (possibly e=f). Clearly s is incident to e, and t to f . Thus (e, f ) is a
pair in C 0 . Corresponding to P , there is a path P 0 in G0 from e to f containing
as vertices all edges of P . Since S is a solution for Unrestricted Vertex Multicut
in G0 and (e, f ) is in C 0 , S must contain a vertex of P 0 . Therefore there is an
edge of P in S, which implies that S is a solution of Edge Multicut in G.
The next lemma shows the previously mentioned property of this reduction.
Lemma 5. If G has bounded degree and bounded tree-width, then the line graph
of G has bounded tree-width.
In fact we know how to implement the PTAS given in Section 2.1, for Edge
Multicut in bounded-degree trees, in time O((n + k)d1/eddd1/e+2 ), where n
is the number of vertices of the tree, k is the number of (si , ti ) pairs, d is the
maximum degree of the tree and 1 + is the desired approximation ratio of the
algorithm. The size of the input is Θ(n + k). We omit the description of this
linear-time implementation in this extended abstract.
146 Gruia Călinescu et al.
4 Complexity Results
x3
_
xi xi
_
x1 x2
x3 x3
_ _ _ _ _
x1 x1 x2 x2 x3 x3 x1 x2 x1 x2
Fig. 2. (a) The gadget for variable xi . (b) The gadget for clause Cj =
{x1 , x2 , x3 }. (c) Tree T built for the instance Φ = (x1 ∨ x2 ∨ x3 ) ∧ (x1 ∨ x2 ∨ x3 ),
that is, C1 = {x1 , x2 , x3 } and C2 = {x1 , x2 , x3 }.
1. For each variable xi , S contains the edge in the gadget for xi incident to the
leaf labeled xi if xi =TRUE or to the leaf labeled xi if xi =FALSE.
2. For each clause Cj , S contains two distinct edges in the gadget for Cj . These
edges are such that (1) they disconnect the two pairs in the gadget, and (2)
the only leaf that is still connected to the root of the gadget is a leaf with
a label x̃i ∈ Cj such that x̃i =TRUE. (The four possible choices for the two
edges are shown in Figure 3.)
r r r r
v v
v v
Fig. 3. Possible choices of two edges, the dashed edges, in the gadget for a clause
that leave exactly one leaf (the marked leaf v) connected to the root r.
For each clause Cj , there is exactly one leaf v in the gadget for Cj that is
connected to the root r of the gadget. Let x̃i ∈ {xi , xi } be the label for this leaf.
There is a pair formed by this leaf v and the leaf in the gadget for xi whose label
is x̃i . In S, there must be an edge e in the path between these two leaves. Since
leaf v is connected to the root r of the gadget for Cj and all edges in S are either
in a variable gadget or in a clause gadget, this edge e has to be in the variable
gadget. This means e is the edge incident to the leaf labeled x̃i in the gadget
for xi . Hence x̃i =TRUE, and the clause is satisfied. Since this holds for all the
clauses, the given assignment makes Φ TRUE, implying that Φ is satisfiable.
We omit the proof. The construction is similar to the one used in Theorem 7.
We omit the proof. The construction is similar to the one used in Theorem 7.
Proof sketch. Let us reduce Edge Multicut in stars to Weighted Edge Multicut
in binary trees. From an instance of the Unweighted Edge Multicut restricted
to stars, we construct an instance of the Weighted Edge Multicut restricted to
binary trees in the following way: for each leaf of the star S, there is a corre-
sponding leaf in the binary tree T . The pairs are the same (we may assume there
is no pair involving the root of the star). We connect the leaves of T arbitrarily
into a binary tree. The edges in T incident to the leaves get weight one and all
other edges of T get weight 2n + 1, where n is the number of leaves in the star
S (which is the same as the number of leaves in the tree T we construct). Any
solution within twice the optimum for the Weighted Edge Multicut instance we
constructed will contain only edges of T incident to the leaves, since any other
edge is too heavy (removing all edges incident to the leaves, we get a solution of
weight n). Then it is easy to see that any optimal solution for the Weighted Edge
Multicut instance we constructed corresponds to an optimal solution for the orig-
inal Unweighted Multicut star instance, and vice versa. Also approximability is
preserved by this reduction.
A wall of height h consists of h + 1 vertex disjoint paths R0 , . . . , Rh , which
we call rows, and h + 1 vertex disjoint paths L0 , . . . , Lh , which we call columns.
A wall of height six is depicted in Figure 4 (a). The reader should be able to
complete the definition by considering Figure 4 (a). The formal definition is as
follows. Each row is a path of 2h + 2 vertices. Each column, a path with 2h + 2
vertices. Column r contains the (2r + 1)st and the (2r + 2)nd vertices of all rows,
as well as the edge between them. For i < h and even, each Lr contains an edge
between the (2r + 2)nd vertex of Ri and the (2r + 2)nd vertex of Ri+1 . For i < h
Multicuts in Unweighted Graphs 149
(a)
L0 L1 Lr Lh
R0
R1
Ri
Rh
(b)
_ _
x1 x2 x3 x1 x2 x3
Fig. 4. (a) A wall of height six. The dark edges indicate row Ri and column Lr .
(b) The three last rows of the wall built from Φ = (x1 ∨ x2 ∨ x3 )(x1 ∨ x2 ∨ x3 ).
and odd, each Lr contains an edge between the (2r + 1)st vertex of Ri and the
(2r + 1)st vertex of Ri+1 . These are all the edges of the wall.
We prove that Edge, Vertex and Unrestricted Vertex Multicut are Max SNP-
hard in walls. This means, by Arora et al. [1], that there is a constant > 0
such that the existence of a polynomial-time approximation algorithm for any
of the three versions of Multicut with performance ratio at most 1 + implies
that P=NP.
As in [18], we use the concept of L-reduction, which is a special kind of
reduction that preserves approximability.
Let A and B be two optimization problems. We say A L-reduces to B if there
are two polynomial-time algorithms f and g, and positive constants α and β,
such that for each instance I of A,
1. Algorithm f produces an instance I 0 = f (I) of B, such that the optima
of I and I 0 , of costs denoted OptA (I) and OptB (I 0 ) respectively, satisfy
OptB (I 0 ) ≤ α · OptA (I), and
2. Given any feasible solution of I 0 with cost c0 , algorithm g produces a solution
of I with cost c such that |c − OptA (I)| ≤ β · |c0 − OptB (I 0 )|.
Theorem 12. Edge, Vertex and Unrestricted Vertex Multicut are Max SNP-
hard in walls.
Proof sketch. The reduction is from the well-known Max SNP-hard problem
MAX 3-SAT [18]. We show the reduction for Unrestricted Vertex Multicut. The
other two reductions are similar.
The first part of the L-reduction is the polynomial-time algorithm f and
the constant α. Given any instance Φ of MAX 3-SAT, f produces an instance
W, C of Unrestricted Vertex Multicut such that W is a wall. Also, the cost of
150 Gruia Călinescu et al.
Acknowledgments
The first two authors would like to thank Howard Karloff for suggesting the
problem, and for some helpful discussions.
Multicuts in Unweighted Graphs 151
References
20. É. Tardos and V. V. Vazirani. Improved bounds for the max-flow min-multicut
ratio for planar and Kr,r -free graphs. Information Processing Letters, 47(2):77-80,
1993.
21. J. van Leeuwen. Graph algorithms. Handbook of Theoretical Computer Science,
Vol. A, chapter 10, pages 525–631. The MIT Press/Elsevier, 1990.
Approximating Disjoint-Path Problems Using
Greedy Algorithms and Packing Integer
Programs ?
1 Introduction
This paper examines approximation algorithms for disjoint-path problems and
their generalizations. In the edge( vertex)-disjoint path problem, we are given a
graph G = (V, E) and a set T of connection requests, also called commodities.
Every connection request in T is a vertex pair (si , ti ), 1 ≤ i ≤ K. The objective
is to connect a maximum number of the pairs via edge( vertex)-disjoint paths.
For the vertex-disjoint paths problem, the connection requests are assumed to be
disjoint. We call the set of connected pairs realizable. A generalization of the edge-
disjoint paths problem is multiple-source unsplittable flow. In this problem every
commodity k in the set T has an associated demand ρk , and every edge e has a
capacity ue . The demand ρk must be routed on a single path from sk to tk . The
objective is to maximize the sum of the demands that can be fully routed while
respecting the capacity constraints. Wlog, we assume that maxk ρk = 1, and
following the standard definition of the problem in the literature, ue ≥ 1, ∀e ∈
E. When all demands and capacities are 1 in the multiple-source unsplittable
?
Research partly supported by NSF Award CCR-9308701 and NSF Career Award
CCR-9624828.
flow problem we obtain the edge-disjoint path problem. (See [10,14] for further
applications and motivation for unsplittable flow.) In all the above problems
one can assign a weight wi ≤ 1 to each connection request and seek to find a
realizable set of maximum total weight. In this paper we will state explicitly
when we deal with the weighted version of a problem.
Both the edge- and vertex-disjoint path problems are fundamental, exten-
sively studied (see e.g. [26,6,27,21,10,13,3]), NP-hard problems [9], with a mul-
titude of applications in areas such as telecommunications, VLSI and schedul-
ing. Despite the attention they have received, disjoint-path problems on general
graphs remain notoriously hard in terms of approximation; p even for edge-disjoint
paths, no algorithm is known which can find even an ω(1/ |E|) fraction of the
realizable paths.
In approximating these problems, we use the traditional notion of a ρ-approxi-
mation algorithm, ρ > 1, which is one that outputs, in polynomial time, a real-
izable set of size at least 1/ρ times the optimum. We will also give and refer to
algorithms which output a realizable set whose size is a non-linear function of
the optimum OP T , such as OP T 2 /|E|.
Overview of Previous Work. Two main approaches have been followed for ap-
proximation.
(i) The first approach, which we call the rounding approach, consists of solving a
fractional relaxation and then use rounding techniques to obtain an integral solu-
tion. The fractional relaxation is typically multicommodity flow and the rounding
techniques used to date involved sophisticated and non-standard use of random-
ized rounding [31]. The objective value of the resulting solution is compared to
the fractional optimum y ∗ , which is an upper bound on the integral optimum,
OPT. This approach has been the more successful one and recently yielded the
first approximation algorithm for uniform unsplittable flow [31] which is the spe-
cial case of unsplittable flow where all the capacities have the same value. Let d
denote the dilation of the fractional solution, i.e. the maximum length of a flow
path in the fractional relaxation. Bounds that rely on the dilation are particu-
larly appealing for expander graphs where it is known that d = O(polylog(n))
[16,12]. The rounding approach yields, for unweighted uniform unsplittable flow
(and thus for unweighted p edge-disjoint paths as well) a realizable set of size
Ω(max{(y ∗ )2 /|E|, y ∗ / |E|, y ∗ /d}) and an Ω(max{(y ∗ )2 /|E|, y ∗ /d}) bound for
the weighted version [31] . This p approach is known to have limitations, e.g.
it is known that a gap of Ω( |V |) exists between the fractional and integral
optima for both the edge- and vertex-disjoint path problems on a graph with
|E| = Θ(|V |) [7].
(ii) Under the second approach, which we call the routing approach, a commodity
is never split, i.e. routed fractionally along more than one path during the course
of the algorithm. In the analysis, the objective value of the solution is compared
to an estimated upper bound on the OP T. This approach has found very limited
applicability so far, one reason being the perceived hardness of deriving upper
bounds on OP T without resorting to a fractional relaxation. The only example
of this method we are aware of is the on-line Bounded Greedy Algorithm in
Approximating Disjoint-Path Problems 155
[10] whose approximation guarantee depends also on the diameter of the graph.
The algorithm can be easily modified
p into an p
off-line procedure that outputs
Ω(OP T / |E|) (Ω(OP T / |V |)) for edge( vertex)-disjoint
realizable sets of size p
paths. The Ω(OP T / |V |) bound is the best known bound to date for vertex-
disjoint paths.
We turn to the rounding approach (approach (i)) to handle the weighted dis-
joint path and unsplittable flow problems. We propose the use of packing integer
programs as a unifying framework that abstracts away the need for customized
and complex randomized rounding schemes. A packing integer program is of the
form maximize cT · x, subject to Ax ≤ b, A, b, c ≥ 0. We first develop, as part
of our tools, an improved approximation algorithm for a class of packing integer
programs, called column restricted, that are relevant to unsplittable flow prob-
lems. Armed with both this new algorithm and existing algorithms for general
packing integer programs, we show how packing formulations both provide a
unified and simplified derivation of many results from [31] and lead to new ones.
In particular, we obtain the first approximation algorithm for weighted multiple-
source unsplittable flow on networks with arbitrary demands and capacities and
the first approximation algorithm for weighted vertex-disjoint paths. Further, we
believe that our new algorithm for column-restricted packing integer programs
is of independent interest. We now elaborate on our results under the rounding
approach, providing further background as necessary.
Packing integer programs are a well-studied class of integer programs that can
model several NP-complete problems, including independent set, hypergraph
k-matching [19,1], job-shop scheduling [23,28,33,20] and many flow and path
related problems. Many of these problems seem to be difficult to approximate,
and not much is known about their worst-case approximation ratios. Following
[30] a packing integer program (PIP) is defined as follows.
Approximating Disjoint-Path Problems 157
Definition 1. Given A ∈ [0, 1]m×n , b ∈ [1, ∞)m and c ∈ [0, 1]n with maxj cj =
1, a PIP P = (A, b, c) seeks to maximize cT · x subject to x ∈ Z+n
and Ax ≤ b.
Constraints of the form 0 ≤ xj ≤ dj are also allowed. If A ∈ {0, 1}m×n, each
entry of b is assumed integral. Let B = mini bi , and α be the maximum number
of non-zero entries in any column of A.
The parameters B and α in the definition above appear in the approximation
bounds. For convenience we call bi the capacity of row i. The restrictions on the
values of the entries of A, b, c are wlog; the values in an arbitrary packing program
can be scaled to satisfy the above requirements [29]. We will state explicitly when
some packing program in this paper deviates from these requirements. When
A ∈ {0, 1}m×n, we say that we have a (0, 1)-PIP.
New Results for Column-Restricted PIP’s. The above results show that for vari-
ous combinations of values for y ∗ , m and B, the bounds obtained for a (0, 1)-PIP
are significantly better than those for general PIP’s. In fact they are always better
when y ∗ < m. As another example, the approximation ratio m1/(B+1) obtained
for a (0, 1)-PIP is polynomially better than the approximation ratio of a PIP with
the same parameters. Thus it is natural to ask whether we can bridge this gap.
We make progress in this direction by defining a column-restricted PIP Pr as one
where all non-zero entries of the j-th column of A have the same value ρj ≤ 1.
Column-restricted PIP’s arise in applications such as unsplittable flow problems
(see next section). We show how to obtain approximation guarantees for column-
restricted PIP’s that are similar to the ones obtained for (0, 1)-PIP’s. Let yr∗ de-
note the optimum of the linear relaxation of Pr . We obtain an integral solution
of value Ω(yr∗ /m1/(B+1) ) and Ω(yr∗ /α1/B ). Letting σ(yr∗ ) = Ω(yr∗ (yr∗ /m)1/B ) we
also obtain a bound that is at least as good as σ(yr∗ ) for yr∗ < m log n and in any
case it is never worse by more than a O(log1/B n) factor. Finally we show how to
improve upon the stated approximations when maxj ρj is bounded away from 1.
We develop the latter two results in a more complete version of this paper [15].
We now give an overview of our technique. First we find an optimum solution
x∗ to the linear relaxation of the column-restricted PIP Pr . We partition the ρj ’s
into a fixed number of intervals according to their values and generate a packing
subproblem for each range. In a packing subproblem P L corresponding to range
L, we only include the columns of A with ρj ∈ L and to each component of
the bL -vector we allocate only a fraction of the original bi value, a fraction
158 Stavros G. Kolliopoulos and Clifford Stein
our usage of packing in the rounding algorithms we have assumed that the pa-
rameter B of the packing program is equal to 1. Allowing B > 1 is equivalent to
allowing congestion B in the corresponding disjoint-path problem. Thus another
advantage of the packing approach is that tradeoffs with the allowed congestion
B can be obtained immediately by plugging in B in the packing algorithms that
we use as a black box. For example the approximation for edge-disjoint paths
becomes Ω(max{y ∗ (y ∗ /|E| log |E|)1/B , y ∗ /|E|1/(B+1) , y ∗ /d1/B }), when the num-
ber of connection requests is O(|E|). Our congestion tradeoffs generalize previous
work by Srinivasan [31] who showed the Ω(y ∗ /d1/B ) tradeoff for uniform capac-
ity unsplittable flow. We do not state the tradeoffs explicitly for the various
problems since they can be obtained easily by simple modifications to the given
algorithms.
Proof. Transform the given system P to a (0, 1)-PIP P 0 = (A0 , b0 , c) where b0i =
ki Γ, and A0ij = Aij /ρ. Every feasible solution (either fractional or integral) x̄ to
P 0 is a feasible solution to P and vice versa. Therefore the fractional optimum y ∗
is the same for both programs. Also the maximum number of non-zero entries on
any column is the same for A and A0 . Thus we can unambiguously use α for both.
We have assumed that there is an approximation algorithm for P 0 returning a
solution with objective value σ(m, kΓ, α, y ∗ ). Invoking this algorithm completes
the proof. t
u
The proof of the following lemma generalizes that of Lemma 4.1 in [11].
Lemma 1. Let P = (A, b, c), be a column-restricted PIP with column values in
the interval (a1 , a2 ], and bi ≥ Γ a2 , ∀i and some number Γ ≥ 1. Here mini bi
is not necessarily greater than 1. There is an algorithm α Packing that finds a
a1 ∗
solution g to P of value at least σ(m, Γ, α, 2a 2
y ), where y ∗ is the optimum of
the fractional relaxation of P. The algorithm runs in polynomial time.
Proof sketch. We sketch the algorithm α Packing. Obtain a PIP P 0 = (A0 , b0 , c)
from P as follows. Round down bi to the nearest multiple of Γ a2 and then
multiply it with a1 /a2 . Set b0i equal to the resulting value. Every b0i is now
between a1 /2a2 and a1 /a2 times the corresponding bi . Set A0ij to a1 if Aij 6= 0
and to 0 otherwise. P 0 has thus a fractional solution of value at least (a1 /2a2 )y ∗
that can be obtained by scaling down the optimal fractional solution of P. Note
that every b0i is a multiple of Γ a1 . Thus we can invoke Theorem 1 and find
a solution g 0 to P 0 of value at least σ(m, Γ, α, (a1 /2a2 )y ∗ ). Scaling up every
component of g 0 by a factor of at most a2 /a1 yields a vector g that is feasible
a1 ∗
for P and has value at least σ(m, Γ, α, 2a 2
y ). t
u
Two tasks remain. First, we must show that the vector x output by the
algorithm is a feasible solution to the original packing problem P. Second, we
must lower bound cT · x in terms of the optimum y∗ = cT · x∗ of the fractional
relaxation of P. Let y∗r1 ,r2 = cr1 ,r2 xr∗1 ,r2 , and if r1 = (1/4)λ and r2 = (1/4)λ−1
then we abbreviate y∗r1 ,r2 as y∗λ . We examine first the vector x̂.
Lemma 3. Algorithm Column Partition runs in polynomial time and the n-
Pλ=ξ−1
vector x̂ it outputs is a feasible solution to P of value at least λ=2 σ(m, B, α,
(1/16)y∗λ ).
Proof sketch. Let ŷ λ be the optimal solution to the linear relaxation of P λ . By
Lemma 1 the value of the solution xλ , 2 ≤ λ ≤ ξ − 1, found at Step 4 is at
162 Stavros G. Kolliopoulos and Clifford Stein
Proof. Each of the three vectors ẋ, x̂, x̄ solves a packing problem with column
values lying in (0, 1/nk ], (1/nk , 1/4] and (1/4, 1] respectively. Let Ṗ, P̂, P̄ be
the three induced packing problems. The optimal solution to the linear relax-
ation of at least one of them will have value at least 1/3 of the optimal so-
lution to the linear relaxation of P. It remains to lower bound the approxi-
mation achieved by each of the three vectors on its corresponding domain of
column values. Since m, B, and α are fixed for all subproblems, note that σ
is a function of one variable, y ∗ . Vector ẋ solves Ṗ optimally. The solution is
feasible since all column values are less than 1/nk and thus the value of the
left-hand side of any packing constraint cannot exceed 1. By Lemma 1, vector
1/4,1
x̄ outputs a solution to P̄ of value at least σ(m, B, α, (1/4)y∗ ). For P̂, the
Pξ−1
value of the solution output is given by the sum A = λ=2 σ(m, B, α, (1/16)y∗λ )
in Lemma 3. We distinguish two cases. If σ is a function linear in y∗ then
−k −1
A ≥ σ(m, B, α, (1/16)y∗n ,4 ). If σ is a function convex in y∗ the sum A is
−k −1
minimized when all the terms y∗λ are equal to Θ(y∗n ,4 / log n). Instantiating
σ(y∗ ) with the function Ω(max{y∗ /m1/(B+1) , y∗ /α1/B }) in the linear case and
with Ω(y∗ (y∗ /m)1/B ) in the convex case completes the proof. t
u
Our approach for weighted unsplittable flow consists of finding first the optimum
of the fractional relaxation, i.e. weighted multicommodity flow, which can be
solved in polynomial time via linear programming. The relaxation consists of
allowing commodity k to be shipped along more than one path. Call these paths
the fractional paths. We round in two stages. In the first stage we select at most
one of the fractional paths for each commodity, at the expense of congestion,
Approximating Disjoint-Path Problems 163
i.e. some capacities may be violated. In addition, some commodities may not
be routed at all. In the second stage, among the commodities routed during the
first stage, we select those that will ultimately be routed while respecting the
capacity constraints. It is in this last stage that a column-restricted PIP is used.
We introduce some terminology before giving the algorithm. A routing is
a set of ski -tki paths Pki , used to route ρki amount of flow from ski to tki
for each (sPki , tki ) ∈ I ⊆ T . Given a routing g, the flow ge through edge e is
equal to Pi ∈g,Pi 3e ρi . A routing g for which ge ≤ ue for every edge e is an
unsplittable flow. A fractional routing is one where for commodity k (i) the flow
is split along potentially many paths (ii) demand fk ≤ ρk is routed. A fractional
routing corresponds thus to standard multicommodity flow. A fractional single-
path routing is one where the flow for a commodity is shipped on one path if at
all, but only a fraction fk ≤ ρk of the demand is shipped for commodity k. The
value of a routing g is the weighted sum of the demands routed in g.
The construction
p in the proof of Theorem 4 can also be used to give an
Ω(max{αf (T )/( |E|), (αf (T ))2 /(|E| log |E|)}), bound in the case where the
number of commodities |T | = O(|E|). We omit the details in this version.
Theorem 6. Given a graph G = (V, E) and c ∈ [0, 1]|V | a weight vector on the
vertices, there exists a polynomial-time algorithm that outputs
p an independent set
in the square G2 = (V, E 2 ) of G of weight Ω(max{y ∗ / |V |, (y ∗ )2 /|V |, y ∗ /∆}).
Here y ∗ denotes the optimum of a fractional relaxation and ∆ is the maximum
vertex degree in G.
We now give improved bounds on the size of the output realizable set.
Theorem 9. Algorithm Greedy Path outputs a solution to an edge-disjoint
path problem (G = (V, E), T ) of size Ω(OP T 2 /|Eo |), where Eo ⊆ E is the set of
edges used by the paths in an optimal solution.
Proof. Let t be the total number of iterations of Greedy Path and Ai be the set
A at the end of the i-th iteration. Let O be an optimal set of paths. We say that a
path Px hits a path Py , if Px and Py share an edge. We define the set O A as the
paths in O that correspond to commodities not routed in A. Let Pi be the path
added to A at the i-th iteration of the algorithm. If Pi hits ki paths in O Ai that
are not hit by a path in Ai−1 , then Pi must have length at least ki . In turn each
166 Stavros G. Kolliopoulos and Clifford Stein
of the paths hit has length at least ki otherwise it would have been selected by
the algorithm instead of Pi . FurthermorePtall paths in O are edge-disjoint with
total number of edges |Eo |. Therefore i=1 ki2 ≤ |Eo |. Applying the Cauchy-
P
Schwarz inequality on the left-hand side we obtain that ( ti=1 ki )2 /t ≤ |Eo |. But
Pt
i=1 ki = |O At | since upon termination of the algorithm all paths in O At
2
must have been hit by some path in At . We obtain |O tAt | ≤ |Eo |. Wlog we can
assume that |At | = o(|O|), since otherwise Greedy Path obtains a constant-
factor approximation. It follows that t = Ω(|O|2 )/|Eo |) = Ω(OP T 2 /|Eo |). t
u
References
1. R. Aharoni, P. Erdös, and N. Linial. Optima of dual integer linear programs.
Comb., 8:13–20, 1988.
2. Y. Aumann and Y. Rabani. Improved bounds for all-optical routing. In Proc. 6th
ACM-SIAM Symp. on Discrete Algorithms, pages 567–576, 1995.
3. A. Z. Broder, A. M. Frieze, and E. Upfal. Static and dynamic path selection on
expander graphs: a random walk approach. In Proc. 29th Ann. ACM Symp. on
Theory of Computing, 531–539, 1997.
4. C. Cooper. The thresold of hamilton cycles in the square of a random graph.
Random Structures and Algorithms, 5:25–31, 1994.
5. H. Fleischner. The square of every two-connected graph is hamiltonian. J. of
Combinatorial Theory B, 16:29–34, 1974.
6. A. Frank. Packing paths, cuts and circuits – A survey. In B. Korte, L. Lovász, H. J.
Prömel, and A. Schrijver, editors, Paths, Flows and VLSI-Layout, pages 49–100.
Springer-Verlag, Berlin, 1990.
7. N. Garg, V. Vazirani, and M. Yannakakis. Primal-dual approximation algorithms
for integral flow and multicut in trees. Algorithmica, 18:3–20, 1997.
8. R. M. Karp, F. T. Leighton, R. L. Rivest, C. D. Thompson, U. V. Vazirani, and
V. V. Vazirani. Global wire routing in two-dimensional arrays. Algorithmica,
2:113–129, 1987.
Approximating Disjoint-Path Problems 167
1 Introduction
applications like mail delivery, snow removal, and trash pick-up can be modeled
as instances of MPP, and hence it is important to design good approximation
algorithms for this problem.
Previous Work: Numerous articles have appeared in the literature over
the past three decades about the mixed postman problem. Edmonds and John-
son [3], and Christofides [2] presented the first approximation algorithms. Fred-
erickson [7] showed that the algorithm of [3] finds a tour whose length is at
most 2 times the length of an optimal tour (i.e., approximation ratio of 2).
He also presented a mixed strategy algorithm, which used the solutions output
by two different heuristics, and then selected the shorter of the two tours. He
proved that the approximation ratio of the mixed strategy algorithm is 53 . Com-
prehensive surveys are available on postman problems [1,4]. Integer and linear
programming formulations of postman problems have generated a lot of interest
in recent years [10,12,16]. Ralphs [16] showed that a linear relaxation of MPP
has optimal solutions that are half-integral. One could use this to derive a 2-
approximation algorithm for the problem. Improvements in implementation are
discussed in [12,15]. It is interesting to note that Nobert and Picard [12] state
that their implementation has been used for scheduling snow removal in Mon-
treal. Several other articles have appeared on generalized postman problems,
such as k-CPP [14] and the Windy Postman problem [4].
Our Results: Even though numerous articles have appeared in the litera-
ture on MPP after Frederickson’s paper in 1979, his result has been the best
approximation algorithm for MPP in terms of proven worst-case ratio until now.
In this paper, we present an improved approximation algorithm for MPP with an
approximation ratio of 32 . We study the properties of feasible solutions to MPP,
and derive a new lower bound on the cost of an optimal solution. Our algorithm
uses a subtle modification of Frederickson’s algorithm, and the improved perfor-
mance ratio is derived from the new lower bound. We present examples showing
that our analysis is tight.
2 Preliminaries
The above conditions can be checked in polynomial time using algorithms for
the maximum flow problem [6]. In other words, we can decide in polynomial time
whether a given mixed graph is Eulerian. The problem we are interested in is to
find set of additional edges and arcs of total minimum cost that can be added
to G to make it Eulerian, and this problem is NP-hard. In the process of solving
mixed postman problem, arcs and edges may be duplicated. For convenience, we
may also orient some undirected edges by giving them a direction. The output
of our algorithm is an Eulerian graph H that contains the input graph G as a
subgraph. So each edge of H can be classified either as an original edge or as
a duplicated edge. Also, each arc of H is either an original arc, or a duplicated
arc, or an oriented edge, or a duplicated & oriented edge.
Evendegree
Inoutdegree
Inoutdegree
Largecycles
Evenparity
Mixed2
Mixed1
Select min-cost solution
cles. Since Largecycles disregards the arcs of the graph, no further steps are
needed. The Mixed algorithm outputs the best solution of the two heuristics,
and Frederickson showed its performance ratio is at most 53 .
Blue arcs
Red arcs
The following lemmas show how alternating cycles of Gbr can be used to
switch between different Inout solutions.
Lemma 1. The arcs of Gbr can be decomposed into alternating cycles.
Proof. This proof is based on the properties of Eulerian directed graphs. Since
they are Inout solutions, each vertex of Gb and Gr satisfies the condition,
in degree = out degree. However, this rule does not apply to Gbr , since all com-
mon arcs and edges have been removed. Since only common arcs are removed, it
can be verified that for each vertex in Gbr , surplusb = surplusr . In other words,
at each vertex of Gbr , the net surplus or deficit created by blue arcs is equal to
the net surplus or deficit created by red arcs. So at each vertex, an incoming
blue arc can be associated with either an outgoing blue arc, or an incoming red
arc. Similar statement is valid for red arcs also.
Consider a directed walk starting at an arbitrary vertex in Gbr , in which
blue edges are traversed in the forward direction and red edges are traversed
174 Balaji Raghavachari and Jeyakesavan Veerasamy
in the reverse direction. Whenever any vertex is revisited during the walk, an
alternating cycle is removed and output. When the start vertex is re-visited
and there are no more arcs incident to it, restart the walk from another vertex.
Continue the process until all arcs of Gbr have been decomposed into alternating
cycles. An alternative proof can be given by showing that reversing all red arcs
makes Gbr satisfy indegree = outdegree at each node and hence the arcs can be
decomposed into cycles.
Each alternating cycle AC in Gbr is composed of one or more blue paths and
red paths. In each cycle, all blue paths go in one direction and all red paths go
in the opposite direction. Let us call blue arcs of AC as B and red arcs as R.
Define the operation of removing a set of arcs B from an Inout solution
GIO , denoted by GIO − B, as follows. If an arc of B is an additional arc or edge
added during the augmentation, then it can be removed. On the other hand, if
the arc was an undirected edge in G that was oriented during the augmentation,
then we remove the orientation but leave the edge in the graph. The cost of such
an operation is the total cost of the arcs/edges that are removed. Similarly, we
can define the addition operation GIO + B, where a set of arcs B are added to
GIO .
Lemma 2. Consider two Inout solutions Gb and Gr , and their symmetric dif-
ference Gbr . Let AC be an alternating cycle in Gbr , with blue component B and
red component R. Then, Gb − B + R and Gr − R + B are also Inout solutions.
Proof. Clearly, adding or deleting edges of AC does not affect the deficit/surplus
of the nodes that are not in AC. For all nodes in AC, the net deficit/surplus
created by blue paths of AC is same as the net deficit/surplus created by red
paths of AC. So, the net deficit/surplus created by removal of B from Gb is
compensated by the addition of R. Therefore, Gb −B+R is an Inout solution, as
each node of Gb −B +R has net deficit/surplus of zero. By symmetry, Gr −R+B
is also an Inout solution.
Lemma 3. Let d− (R) be the cost of removing R from Gr and let d+ (R) be the
cost of adding R to Gb . Similarly, let d− (B) be the cost of removing B from
Gb and let d+ (B) be the cost of adding B to Gr . Then d+ (R) ≤ d− (R) and
d+ (B) ≤ d− (B).
Proof. We prove that the cost of adding R to Gb does not exceed the cost of
removing R from Gr . Arcs of R in Gr can be either additional arc, oriented
edge, or additional oriented edge. Additional arcs and additional oriented edges
contribute at most the same cost to d+ (R). If an oriented edge is in R, then either
it is not currently oriented in Gb or it is oriented in the opposite direction in Gb .
To add this oriented edge to Gb , we can either orient the undirected edge, or
remove its opposite orientation; either way there is no additional cost. Therefore
R can be added to Gb without incurring additional cost. Hence, d+ (R) ≤ d− (R).
By symmetry, d+ (B) ≤ d− (B).
Approximation Algorithms for the Mixed Postman Problem 175
H. Therefore d− (R) < d− (B) for all cycles AC that involve at least one edge
from U . Choose any such cycle AC. We already know that d+ (R) ≤ d− (R) and
d− (R) < d− (B). Combining these, we get,
Note that GIO − B + R uses at most one copy of each edge from U and its cost
is less than C(GIO ). In other words, GIO − B + R is an Inout solution of G,
and C(GIO − B + R) < C(GIO ). This contradicts the assumption that GIO is
an optimal Inout solution of G. Therefore, adding additional copies of edges
from U does not decrease the augmentation cost of an Inout solution.
Inoutdegree
Largecycles
Evenparity
Mixed2
Modified Mixed1
Select min-cost solution
at this stage. Note that Evendegree duplicates each arc of M at most once to
form H. We follow Frederickson’s analysis [7] for the rest of the proof: Let M1
be the multiset of arcs such that there are two arcs in M1 for each arc in M .
Clearly, M and M1 both satisfy Inout property. Hence, the union of U , X, and
M1 forms a Inout solution containing H, whose cost is CU + CX + 2 ∗ CM . Since
Inoutdegree is an optimal algorithm for Inout problem, it is guaranteed to
find an Inout solution of cost at most CU + CX + 2 ∗ CM . This is at most
C ∗ + CM by Lemma 4. Finally, Evenparity does not change the cost of the
solution.
7 Conclusion
Acknowledgments
The research of the first author was supported in part by a grant from the
National Science Foundation under Research Initiation Award CCR-9409625.
The second author gratefully acknowledges the support of his employer, Samsung
Telecommunications America Inc.
References
15. W. L. Pearn and C. M. Liu. Algorithms for the Chinese postman problem on
mixed networks. Computers & Operations Research, 22:479–489, 1995.
16. T. K. Ralphs. On the mixed Chinese postman problem. Operations Research
Letters, 14:123–127, 1993.
Improved Approximation Algorithms for
Uncapacitated Facility Location
?
Fabián A. Chudak
1 Introduction
The study of the location of facilities to serve clients at minimum cost has been
one of the most studied themes in the field of Operations Research (see, e.g., the
textbook edited by Mirchandani and Francis [9]). In this paper, we focus on one
of its simplest variants, the uncapacitated facility location problem, also known
as the simple plant location problem, which has been extensively treated in the
literature (see the chapter by Cornuéjols, Nemhauser, and Wolsey in [9]). This
problem can be described as follows. There is a set of potential facility locations
F ; building a facility at location i ∈ F has an associated nonnegative fixed cost
fi , and any open facility can provide an unlimited amount of certain commodity.
There also is a set of clients or demand points D that require service; client j ∈ D
?
Research partially supported by NSF grants DMS-9505155 and CCR-9700029 and
by ONR grant N00014-96-1-00500.
has a positive demand of commodity dj that must be shipped from one of the
open facilities. If a facility at location i ∈ F is used to satisfy the demand of client
j ∈ D, the service or transportation cost incurred is proportional to the distance
from i to j, cij . The goal is to determine a subset of the set of potential facility
locations at which to open facilities and an assignment of clients to these facilities
so as to minimize the overall total cost, that is, the fixed costs of opening the
facilities plus the total service cost. We will only consider the metric variant of the
problem in which the distance function c is nonnegative, symmetric and satisfies
the triangle inequality. Throughout the paper, a ρ-approximation algorithm is
a polynomial-time algorithm that is guaranteed to deliver a feasible solution of
objective function value within a factor of ρ of optimum. The main result of
this paper is a (1 + 2/e)-approximation algorithm for the metric uncapacitated
facility location problem, where 1 + 2/e ≈ 1.736.
Notice that our result is based on worst case analysis, that is, our solu-
tions will be within a factor of (1 + 2/e) of optimum for any instance of the
problem. Such a strong assurance can have salient practical implications: these
algorithms often outperform algorithms whose design was not grounded by the
mathematical understanding required for proving performance guarantees. We
have corroborated this assertion for our algorithm through a few computational
experiments, which will be reported in a follow-up paper.
In contrast to the uncapacitated facility location problem, Cornuéjols, Fisher,
and Nemhauser [3] studied the problem in which the objective is to maximize
the difference between assignment and facility costs. They showed that with this
objective, the problem can be thought of as a bank account location problem.
Notice that even though these two problems are equivalent from the point of
view of optimization, they are not from the point of view of approximation.
Interestingly, Cornuéjols, Fisher, and Nemhauser showed that for the maximiza-
tion problem, a greedy procedure that iteratively tries to open the facility that
most improves the objective function yields a solution of value within a constant
factor of optimum.
The metric uncapacitated facility location problem is known to be NP-hard
(see [4]). Very recently, Guha and Khuller [7] have shown that it is Max SNP-
hard. In fact, they have also shown that the existence of a ρ-approximation
algorithm for ρ < 1.463 implies that NP ⊆ TIME(nO(log log n) ) (see also Feige
[5]).
We briefly review previous work on approximation algorithms for the metric
uncapacitated facility location problem. The first constant factor approximation
algorithm was given by Shmoys, Tardos, and Aardal [11], who presented a 3.16-
approximation algorithm, based on rounding an optimal solution of a classical
linear programming relaxation for the problem. This bound was subsequently
improved by Guha and Khuller [7], who provided a 2.408-approximation algo-
rithm. Guha and Khuller’s algorithm requires a stronger linear programming
relaxation. They add to the relaxation of [11] a facility budget constraint that
bounds the total fractional facility cost by the optimal facility cost. After run-
ning the algorithms of [11], they use a greedy procedure (as in [3]) to improve the
182 Fabián A. Chudak
quality of the solution: iteratively, open one facility at a time if it improves the
cost of the solution. Since they can only guess the optimal facility cost to within
a factor of (1 + ), they are in fact solving a weakly polynomial number of linear
programs. In contrast, the 1.736-approximation algorithm presented in this pa-
per requires the solution of just one linear program, providing as a by-product
further evidence of the strength of this linear programming relaxation.
Without loss of generality we shall assume that the sets F and D are disjoint;
let N = F ∪ D, n = |N |. Even though all our results hold for the case of
arbitrary demands, for sake of simplicity of the exposition, we will assume that
each demand dj is 1 (j ∈ D); thus, the cost of assigning a client j to an open
facility at location i is cij . The distance between any two points k, ` ∈ N is ck` .
We assume that the n×n distance matrix (ck` ) is nonnegative, symmetric (ck` =
c`k , for all k, ` ∈ N ) and satisfies the triangle inequality, that is, cij ≤ cik + ckj ,
for all i, j, k ∈ N . The simplest linear programming relaxation (due to Balinski,
1965 [2]), which we will refer to as P, is as follows:
XX X
Min cij xij + fi yi
j∈D i∈F X
i∈F
(P) subject to xij = 1 for each j ∈ D (1)
i∈F
xij ≤ yi for each i ∈ F, j ∈ D (2)
xij ≥ 0 for each i ∈ F, j ∈ D . (3)
Khuller for this special case. Independently of our work, Ageev and Sviridenko
[1] have recently shown that the randomized rounding analysis for the maximum
satisfiability problem of Goemans and Williamson [6] can be adapted to obtain
improved bounds for the maximization version of the problem.
The following simple ideas enable us to develop a rounding procedure for the
linear programming relaxation P with an improved performance guarantee. We
explicitly exploit optimality conditions of the linear program, and in particular,
we use properties of the optimal dual solution and complementary slackness. A
key element to our improvement is the use of randomized rounding in conjunction
with the approach of Shmoys, Tardos, and Aardal. To understand our approach,
suppose that for each location i ∈ F, independently, we open a facility at i with
probability yi∗ . The difficulty arises when attempting to estimate the expected
service cost: the distance from a given demand point to the closest open facility
might be too large. However, we could always use the routing of the algorithm
of Shmoys, Tardos, and Aardal if we knew that each cluster has a facility open.
In essence, rather than opening each facility independently with probability yi∗ ,
we instead open one facility in each cluster with probability yi∗ . The algorithm
is not much more complicated, but the most refined analysis of it is not quite so
simple. Our algorithms are randomized, and can be easily derandomized using
the method of conditional expectations. The main result of this paper is the
following.
Theorem 1. There is a polynomial-time algorithm that rounds an optimal so-
lution to the linear programming relaxation P to a feasible integer solution whose
value is within (1 + 2/e) ≈ 1.736 of the optimal value of the linear programming
relaxation P.
Since the optimal LP value is a lower bound on the integer optimal value, the
theorem yields a 1.736-approximation algorithm, whose running time is domi-
nated by the time required to solve the linear programming relaxation P. As a
consequence of the theorem, we obtain the following corollary on the quality of
the value of the linear programming relaxation.
Corollary 1. The optimal value of the linear programming relaxation P is within
a factor of 1.736 of the optimal cost.
This improves on the previously best known factor of 3.16 presented in [11].
The following definition was crucial for the algorithm of Shmoys, Tardos, and
Aardal [11].
Definition 2. Suppose that (x, y) is a feasible solution to the linear program-
ming relaxation P and let gj ≥ 0, for each j ∈ D. Then (x, y) is g-close if xij > 0
implies that cij ≤ gj (j ∈ D, i ∈ F).
Notice that if (x, y) is g-close and j ∈ D is any demand point, j is fractionally
serviced by facilities inside the ball of radius gj centered at j. The following
lemma is from [11].
Lemma 1. Given a feasible g-close solution (x, y), we can find, in polynomial
time, a feasible integer 3g-close solution (x̂, ŷ) such that
X X
fi ŷi ≤ fi y i .
i∈F i∈F
We briefly sketch the proof below. The algorithm can be divided into two
steps: a clustering step and a facility opening step. The clustering step works as
follows (see Table 1). Let S be the set of demand points that have not yet been
assigned to any cluster; initially, S = D. Find the unassigned demand point
j◦ with smallest gj -value and create a new cluster centered at j◦ . Then all of
the unassigned demand points that are fractionally serviced by facilities in the
neighborhood of j◦ (that is, all the demand points k ∈ S with N(k) ∩ N(j◦ ) 6= ∅)
are assigned to the cluster centered at j◦ ; the set S is updated accordingly.
Repeat the procedure until all the demand points are assigned to some cluster
(i.e., S = ∅). We will use C to denote the set of centers of the clusters.
1. S ← D, C ← ∅
2. while S =
6 ∅
3. choose j◦ ∈ S with smallest gj value (j ∈ S)
4. create a new cluster Q centered at j◦ , C ← C ∪ {j◦ }
5. Q ← {k ∈ S : N(k) ∩ N(j◦ ) 6= ∅}
6. S ← S − Q
The following fact follows easily from the clustering construction and the
definition of neighborhood, and is essential for the success of the algorithm.
Fact 1. Suppose that we run the clustering algorithm of Table 1, using any g-
close solution (x, y), then:
(a) neighborhoods of distinct centers are disjoint (i.e., if j and k are centers,
j 6= k ∈ C, then N(j) ∩ N(k) = ∅), P
(b) for every demand point k ∈ D, i∈N(k) xik = 1 .
Approximation Algorithms for Uncapacitated Facility Location 185
After the clustering step, the algorithm of [11] opens exactly one facility per
cluster. For each center j ∈ C we open the facility i◦ in the neighborhood of j,
N(j), with smallest fixed cost fi and assign all the demandP points in the cluster
of j to facility i◦ . Observe that by inequalities (2), i∈N(j) yi ≥ 1, thus fi◦ ≤
P
i∈N(j) fi y i . Using Fact 1(a), the total facility cost incurred
P
by the algorithm
is never more than the total fractional facility cost i∈F fi yi . Next consider
any demand point k ∈ D and suppose it belongs to the cluster centered at j◦ ;
let ` ∈ N(k) ∩ N(j◦ ) be a common neighbor and let i be the open facility in
the neighborhood of j◦ (see Figure 1). Then, the distance from k to i can be
N(j) N(k)
≤ gj ◦
≤ gj ◦ ` ≤ gk
i
j◦ k
X
Max vj (4)
X
j∈D
(D) subject to wij ≤ fi for each i ∈ F (5)
j∈D
vj − wij ≤ cij for each i ∈ F, j ∈ D (6)
wij ≥ 0 for each i ∈ F, j ∈ D . (7)
3 A Randomized Algorithm
After solving the linear program P, a very simple randomized algorithm is the
following: open a facility at location i ∈ F with probability yi∗ independently
for every i ∈ F, and then assign each demand P point to its closest open facility.
Notice that the expected facility cost is just i∈F fi yi∗ , the same bound as in the
algorithm of Section 2. Focus on a demand point k ∈ D. If it happens that one
of its neighbors has been opened, then the service cost of k would be bounded
by the optimal dual variable vk∗ . However, if we are unlucky and this is not
the case (an event that can easily be shown to occur with probability at most
1/e ≈ 0.368, where the bound is tight), the service cost of k could be very large.
On the other hand, suppose that we knew, for instance, that for the clustering
computed in Section 2, k belongs to a cluster centered at j, where one of the
facilities in N(j) has been opened. Then in this unlucky case we could bound the
service cost of k using the routing cost of the 4-approximation algorithm.
OurPalgorithm is also based on randomized rounding and the expected facility
cost is i∈F fi y ∗ . However, we weaken the randomized rounding step and do not
open facilities independently with probability yi∗ , but rather in a dependent way
to ensure that each cluster center has one of its neighboring facilities opened.
Even though the algorithms presented in this section work for any g-close
feasible solution, for sake of simplicity we will assume as in the end of Section 2,
that we have a fixed optimal primal solution (x∗ , y ∗ ) and a fixed optimal dual
solution (v ∗ , w∗ ), so that (x∗ , y ∗ ) is v ∗ -close. It is easy to see that we can assume
that yi∗ ≤ 1 for each potential facility location i ∈ F. To motivate the following
Approximation Algorithms for Uncapacitated Facility Location 187
probability x∗ij (recall Fact 1(b)). Next independently we open each noncen-
tral facility i ∈ R with probability yi∗ . The algorithm then simply assigns each
demand point to its closest open facility.
P
Corollary 2. The expected total facility cost is i∈F fi yi∗ .
where exp (x) = ex . We will bound the expected service cost of k by considering
a clearly worse algorithm: assign k to its closest open neighbor; if none of the
Approximation Algorithms for Uncapacitated Facility Location 189
X
d
1 3 ∗
≤ cik x∗ik + 3vk∗ = C k + v ,
i=1
e e k
Now we can argue essentially as in the simple case when |Sj | ≤ 1 for each
center j ∈ C. Assume that there are d events E` , and for notational simplicity,
they are indexed by ` ∈ {1, . . . , d}, with C 1 ≤ . . . ≤ C d . Let D be the event
that none of E1 , . . . , Ed occurs; that is, D is precisely the event in which all
the facilities in the neighborhood of k, N(k), are closed; let q be the probability
of event D. Note that, as in the simple case, the service cost of k is never
greater that its backup routing cost 3vk∗ , in particular, this bound holds even
conditioned on D. As before, we will analyze the expected service cost of a worse
algorithm: k is assigned to the open neighboring facility with smallest C ` ; and if
all the neighbors are closed, k is assigned through its backup routing to the open
facility i◦ ∈ N(j◦ ). If the event E1 occurs (with probability p1 ), the expected
N(k)
E3
3
E4 E1 E2
1
4
2
N(4)
N(2)
Fig. 2. Estimating the expected service cost of k. Here the centers that share a
neighbor with k are demand locations 2 and 4 (Ck = {2, 4}). The neighbors of
k that are noncentral locations are 1 and 3. Event E2 (respectively E4 ) occurs
when a facility in N(k) ∩ N(2) (respectively N(k) ∩ N(4)) is open, while event E1
(respectively E3 ) occurs when facility 1 (respectively 3) is open. Though there
are dependencies among the neighbors of a fixed center, the events E1 , E2 , E3
and E4 are independent.
service cost of k is C 1 . If event E1 does not occur, but event E2 occurs (which
happens with probability (1 − p1 )p2 ), the expected service cost of k is C 2 , and
Approximation Algorithms for Uncapacitated Facility Location 191
To prove the lemma we bound the first d terms of (8) by C k , and q by 1/e. u
t
N(k)
N(k)
k k
≤ vk∗
vk∗ ≥ `
N(j◦ )
N(j◦ ) `
≤ vj∗◦
≤ C j◦
j◦ j◦
≤ C j◦
≤ vj∗◦ i
i
deterministic bound bound in expected value
(a) (b)
4 Discussion
We conclude with a few remarks concerning the algorithm of Section 3. A stan-
dard technique to improve the guarantees of randomized rounding is to use a
fixed parameter, say γ ≥ 0, to boost the probabilities. For instance, the sim-
plest randomized rounding algorithm would open facility i ∈ F with probability
min{γyi∗ , 1}. This technique can be also applied to our randomized algorithm
in a very simple fashion. The bounds of Theorem 3 are thus parameterized for
each γ. Even though this does not lead to an overall improvement in the perfor-
mance guarantee, it allows us to improve the performance
P guarantee for some
values of ρ, where ρ ∈ [0, 1] is defined by ρ LP∗ = ∗
i∈F i yi . In particular,
f
we can show that if ρ ≤ 2/e ≈ 0.736, there is a variant of our algorithm with
194 Fabián A. Chudak
References
1. A. A. Ageev and M. I. Sviridenko. An approximation algorithm for the uncapaci-
tated facility location problem. Manuscript, 1997.
2. M. L. Balinski. Integer programming: Methods, uses, computation. Management
Science, 12(3):253–313, 1965.
3. G. Cornuéjols, M. L. Fisher, and G. L. Nemhauser. Location of bank accounts to
optimize float: An analytic study of exact and approximate algorithms. Manage-
ment Science, 23(8):789–810, 1977.
4. G. Cornuéjols, G. L. Nemhauser, and L. A. Wolsey. The uncapacitated facility
location problem. In P. Mirchandani and R. Francis, editors, Discrete Location
Theory, pages 119–171. John Wiley and Sons, Inc., New York, 1997.
5. U. Feige. A threshold of ln n for approxiamting set-cover. In 28th ACM Symposium
on Theory of Computing, pages 314–318, 1996.
6. M. X. Goemans and D. P. Williamson. New 3/4-approximation algorithms for
max-sat. SIAM Journal on Discrete Mathematics, 7:656–666, 1994.
7. S. Guha and S. Khuller. Greedy strikes back: improved facility location algorithms.
In Ninth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), 1998.
To appear.
8. J. H. Lin and J. S. Vitter. -Approximation with minimum packing constraint
violation. In Proceedings of the 24th Annual ACM Symposium on Theory of Com-
puting, pages 771–782, 1992.
9. P. Mirchandani and R. Francis, editors. Discrete Location Theory. John Wiley
and Sons, Inc., New York, 1990.
10. P. Raghavan and C. D. Thompson. Randomized rounding. Combinatorica, 7:365–
374, 1987.
11. D. B. Shmoys, É. Tardos, and K. Aardal. Approximation algorithms for facility
location problems. In 29th ACM Symposium on Theory of Computing, pages 265–
274, 1997.
12. M. I. Sviridenko. Personal communication, July 1997.
The Maximum Traveling Salesman Problem
Under Polyhedral Norms
1 Introduction
In the Traveling Salesman Problem (TSP), the input consists of a set C of cities
together with the distances d(c, c0 ) between every pair of distinct cities c, c0 ∈ C.
The goal is to find an ordering or tour of the cities that minimizes (Minimum
TSP) or maximizes (Maximum TSP) the total tour length. Here the length of a
tour cπ(1) , cπ(2) , . . . , cπ(n) is
X
n−1
d(cπ(i) , cπ(i+1) ) + d(cπ(n) , cπ(1) ).
i=1
?
Supported by an Alfred P. Sloan Research Fellowship and NSF grant DMS 9501129.
??
Supported by the START program Y43-MAT of the Austrian Ministry of Science.
???
Supported by the NSF through the REU Program.
with the natural asymptotic interpretation that distance under the L∞ norm is
This paper concentrates on a second class of norms which also includes the
Rectilinear and Sup norms, but can only approximate the Euclidean and other Lp
norms. This is the class of polyhedral norms. Each polyhedral norm is determined
by a unit ball which is a centrally-symmetric polyhedron P with the origin at its
center. To determine d(x, y) under such a norm, first translate the space so that
one of the points, say x, is at the origin. Then determine the unique factor α by
which one must rescale P (expanding if α > 1, shrinking if α < 1) so that the
other point (y) is on the boundary of the polyhedron. We then have d(x, y) = α.
Alternatively, and more usefully for our purposes, we can view a polyhedral
norm as follows. If P is a polyhedron as described above and has F facets, then
F is divisible by 2 and there is a set HP = {h1 , . . . , hF/2 } of points in Rd such
that P is the intersection of a collection of half-spaces determined by HP :
\
F/2
\
F/2
P = {x : x · hi ≤ 1} ∩ {x : x · hi ≥ −1}
i=1 i=1
Then we have
n o
d(x, y) = max (x − y) · hi : 1 ≤ i ≤ F/2
Note that for the Rectilinear norm in the plane we can take HP = {(1, 1), (−1, 1)}
and for the Sup norm in the plane we can take HP = {(1, 0), (0, 1)}.
For the Minimum TSP on geometric instances, all of the key complexity
questions have been answered. As follows from results of Itai, Papadimitriou,
and Swarcfiter [5], the Minimum TSP is NP-hard for any fixed dimension d and
any Lp or polyhedral norm. On the other hand, recent results of Arora [1,2] and
Mitchell [8] imply that in all these cases a polynomial-time approximation scheme
(PTAS) exists, i.e., a sequence of polynomial-time algorithms Ak , 1 ≤ k < ∞,
where Ak is guaranteed to find a tour whose length is within a ratio of 1 + (1/k)
of optimal.
The situation for geometric versions of the Maximum TSP is less completely
resolved. Barvinok [3] has shown that once again polynomial-time approximation
The Maximum TSP 197
schemes exist for all fixed dimensions d and all Lp or polyhedral norms (and in
a sense for any fixed norm; see [3]). Until now, however, the complexity of the
optimization problems themselves when d is fixed has remained open: For no
fixed dimension d and Lp or polyhedral norm was the problem of determining
the maximum tour length known either to be NP-hard or to be polynomial-time
solvable. In this paper, we resolve the question for polyhedral norms, showing
that, in contrast to the case for the Minimum TSP, the Maximum TSP is solvable
in polynomial time for any fixed dimension d and any polyhedral norm:
Theorem 1. Let dimension d be fixed, and let k · k be a fixed polyhedral norm in
Rd whose unit ball is a polyhedron P determined by a set of f facets. Then for any
set of n points in Rd , one can construct a traveling salesman tour of maximum
length with respect to k · k in time O(nf −2 log n), assuming arithmetic operations
take unit time.
As an immediate consequence of Theorem 1, we get relatively efficient algo-
rithms for the Maximum TSP in the plane under Rectilinear and Sup norms:
Corollary 2. The Maximum TSP for points in R2 under the L1 and L∞ norms
can be solved in O(n2 log n) time, assuming arithmetic operations take unit time.
The restriction to unit cost arithmetic operations in Theorem 1 and Corol-
lary 2 is made primarily to simplify the statements of the conclusions, although
it does reflect that fact that our results hold for the real number RAM compu-
tational model. Suppose on the other hand that one assumes, as one typically
must for complexity theory results, that the components of the vectors in HP
and the coordinates of the cities are all rationals. Let U denote the maximum
absolute value of any of the corresponding numerators and denominators. Then
the conclusions of the Theorem and Corollary hold with running times multi-
plied by n log(U ). If the components/coordinates are all integers with maximum
absolute value U , the running times need only be multiplied by log(nU ). For
simplicity in the remainder of this paper, we shall stick to the model in which
numbers can be arbitrary reals and arithmetic operations take unit time. The
reader should have no trouble deriving the above variants.
The paper is organized as follows. Section 2 introduces a new special case
of the TSP, the Tunneling TSP , and shows how the Maximum TSP under a
polyhedral norm can be reduced to the Tunneling TSP with the same number of
cities and f /2 tunnels. Section 3 sketches how the latter problem can be solved
in O(nf +1 ) time, a slightly weaker result than that claimed in Theorem 1. The
details of how to improve this running time to O(nf −2 log n) will be presented
in the full version of this paper, a draft of which is available from the authors.
Section 4 concludes by describing some related results and open problems.
Note that this distance function, like our geometric norms, is symmetric.
It is easy to see that Maximum TSP remains NP-hard when distances are
determined by arbitrary tunnel system distance functions. However, for the case
where k = |T | is fixed and not part of the input, we will show in the next section
that Maximum TSP can be solved in O(n2k−1 ) time. We are interested in this
special case because of the following lemma.
Lemma 3. If k · k is a polyhedral norm determined by a set HP of k vectors
in Rd , then for any set C of points in Rd one can in time O(dk|C|) construct a
tunnel system distance function with k tunnels that yields d(c, c0 ) =k c − c0 k for
all c, c0 ∈ C.
Proof. Suppose we are given an instance of the Tunneling TSP with sets C =
{c1 , . . . , cn } and T = {t1 , . . . , tk } of cities and tunnels, and access distances
F (c, t), B(c, t) for all c ∈ C and t ∈ T . We begin by transforming the problem
to one about subset construction.
The Maximum TSP 199
assignment problem on an expanded graph. The overall running time for the
algorithm is thus O(nk−1 nk−1 n3 ) = O(n2k+1 ), as claimed. t
u
In the full paper we show how two additional ideas enable us to reduce our
running times to O(n2k−2 log n), as needed for the proof of Theorem 1. The
first idea is to view each b-matching problem as a transportation problem with
a bounded number of customer locations. This latter problem can be solved
in linear time by combining ideas from [7,4,11]. The second idea is to exploit
the similarities between the transportation instances we need to solve. Here a
standard concavity result implies that one dimension of our search over degree
sequences can be handled by a binary search. In the full paper we also discuss
how the constants involved in our algorithms grow with k.
4 Conclusion
We have derived a polynomial time algorithm for the Maximum TSP when the
cities are points in Rd for some fixed d and when the distances are measured
according to some polyhedral norm. The complexity of the Maximum TSP with
Euclidean distances and fixed d remains unsettled, however, even for d = 2.
Although the Euclidean norm can be approximated arbitrarily closely by poly-
hedral norms (and hence Barvinok’s result [3] that Maximum TSP has a PTAS),
it is not itself a polyhedral norm.
A further difficulty with the Euclidean norm (one shared by both the Min-
imum and Maximum TSP) is that we still do not know whether the TSP is in
NP under this norm. Even if all city coordinates are rationals, we do not know
how to compare a tour length to a given rational target in less than exponential
time. Such a comparison would appear to require us to evaluate a sum of n
square roots to some precision, and currently the best upper bound known on
the number of bits of precision needed to insure a correct answer remains ex-
ponential in n. Thus even if we were to produce an algorithm for the Euclidean
Maximum TSP that ran in polynomial time when arithmetic operations (and
comparisons) take unit time, it might not run in polynomial time on a standard
Turing machine.
Another set of questions concerns the complexity of the Maximum TSP when
d is not fixed. It is relatively easy to show that the problem is NP-hard for all
Lp norms (the most natural norms that are defined for all d > 0). For the case
of L∞ one can use a transformation from Hamiltonian Circuit in which each
edge is represented by a separate dimension. For the Lp norms, 1 ≤ p < ∞,
one can use a transformation from the Hamiltonian Circuit problem for cubic
graphs, with a dimension for each non-edge. However, this still leaves open the
question of whether there might exist a PTAS for any such norm when d is not
fixed. Trevisan [10] has shown that the Minimum TSP is Max SNP-hard for any
such norm, and so cannot have such PTAS’s unless P = NP. We can obtain a
similar result for the Maximum TSP under L∞ by modifying our NP-hardness
transformation so that the source problem is the Minimum TSP with all edge
lengths in {1, 2}, a special case that was proved Max SNP-hard by Papadimitriou
The Maximum TSP 201
and Yannakakis [9]. The question remains open for Lp , 1 ≤ p < ∞, although we
conjecture that these cases are Max SNP-hard as well.
Finally, we note that our results can be extended in several ways. For instance,
one can get polynomial-time algorithms for asymmetric versions of the Maximum
TSP in which distances are computed based on non-symmetric unit balls. Also,
algorithmic approaches analogous to ours can be applied to geometric versions of
other NP-hard maximization problems: For example, consider the Weighted 3-
Dimensional Matching Problem that consists in partitioning a set of 3n elements
into n triples of maximum total weight. The special case where the elements
are points in Rd and where the weight of a triple equals the perimeter of the
corresponding triangle measured according to some fixed polyhedral norm can
be solved in polynomial time.
Acknowledgment. We thank Arie Tamir for helpful comments on a preliminary
version of this paper, and in particular for pointing out that a speedup of O(n2 )
could be obtained by using the transportation problem results of [7] and [11].
Thanks also to Mauricio Resende and Peter Shor for helpful discussions.
References
1. S. Arora. Polynomial-time approximation schemes for Euclidean TSP and other
geometric problems. Proc. 37th IEEE Symp. on Foundations of Computer Science,
pages 2–12. IEEE Computer Society, Los Alamitos, CA, 1996.
2. S. Arora. Nearly linear time approximation schemes for Euclidean TSP and other
geometric problems. Proc. 38th IEEE Symp. on Foundations of Computer Science,
pages 554–563. IEEE Computer Society, Los Alamitos, CA, 1997.
3. A. I. Barvinok. Two algorithmic results for the traveling salesman problem. Math.
of Oper. Res., 21:65–84, 1996.
4. D. Gusfield, C. Martel, and D. Fernandez-Baca. Fast algorithms for bipartite net-
work flow. SIAM J. Comput., 16:237–251, 1987.
5. A. Itai, C. Papadimitriou, and J. L. Swarcfiter. Hamilton paths in grid graphs.
SIAM J. Comput., 11:676–686, 1982.
6. E. L. Lawler, J. K. Lenstra, A. H. G. Rinnooy Kan, and D. B. Shmoys. The
Traveling Salesman Problem, Wiley, Chichester, 1985.
7. N. Megiddo and A. Tamir. Linear time algorithms for some separable quadratic
programming problems. Oper. Res. Lett., 13:203–211, 1993.
8. J. Mitchell. Guillotine subdivisions approximate polygonal subdivisions: Part II
– A simple PTAS for geometric k-MST, TSP, and related problems. Preliminary
manuscript, April 1996.
9. C. H. Papadimitriou and M. Yannakakis. The traveling salesman problem with
distances one and two. Math. of Oper. Res., 18:1–11, 1993.
10. L. Trevisan. When Hamming meets Euclid: The approximability of geometric TSP
and MST. Proc. 29th Ann. ACM Symp. on Theory of Computing, pages 21–29.
ACM, New York, 1997.
11. E. Zemel. An O(n) algorithm for the linear multiple choice knapsack problem and
related problems. Inf. Proc. Lett., 18:123–128, 1984.
Polyhedral Combinatorics of Benzenoid
Problems
1 Introduction
In this paper we study optimization problems defined for maps of graphs that
are bipartite and 2-connected. These problems are generalizations of ones that
arise in chemical graph theory, specifically those encountered in the analysis of
benzenoid hydrocarbons.
Benzenoid hydrocarbons are organic molecules composed of carbon and hy-
drogen atoms organized into connected (hexagonal) benzene rings. The structure
of such a molecule is usually represented by a benzenoid system, a bipartite and
two-connected plane graph whose interior faces are all regular hexagons. Each
node of a benzenoid system represents a carbon atom, and each edge corresponds
to a single or double bond between a pair of carbon atoms. The hydrogen atoms
are not explicitly represented since their location is immediately deduced from
the configuration of the carbon atoms.
Generally, there is more than one way to arrange n carbon atoms into h
hexagonal rings where each arrangement has n − 2(h − 1) hydrogen atoms. The
chemical formula Cn Hn−2(h−1) represents a series of benzenoid isomers, struc-
turally distinct molecules having the same atomic makeup. However, not all
possible arrangements correspond to actual molecules. For benzenoid molecules,
empirical evidence [4,5] shows that their graphs always have a perfect matching.
In chemical graph theory, perfect matchings are called Kekulé structures. A
benzenoid system will usually have many Kekulé structures; analyzing them is
of interest to chemists and gives rise to interesting combinatorial optimization
problems [8]. For example, the Clar number of a benzenoid system is the opti-
mal value of a particular maximization problem over its set of Kekulé structures
and is a key concept in the aromatic sextet theory developed by E. Clar [3] to
explain benzenoid phenomenology. It has been observed that as the Clar number
increases within an isomeric series of benzenoid hydrocarbons, (1) isomeric sta-
bility increases, so chemical reactivity decreases, and (2) the absorption bands
shift towards shorter wavelengths, so the isomer colors change from dark blue-
green to red, yellow or white [5]. It has also been demonstrated that the Clar
number provides a rough estimate of the Dewar-type resonance energy [1].
Hansen and Zheng [7] formulated the computation of the Clar number as an
integer (linear) program and conjectured, based on empirical results, that solving
its linear programming relaxation yields integer solutions for all benzenoids.
We prove here that the constraint matrix of this integer program is always
unimodular. In particular, this establishes that the relaxation polytope is integral
since the linear program is in standard form.
Interestingly, these unimodular constraint matrices coming from an applied
problem constitute an unusual case: they are not, in general, totally unimodular
as often occurs with optimization problems on graphs that give rise to integral
polyhedra. However, for the Clar problem, we remark that a subset of them are
(also) totally unimodular, namely those constraint matrices corresponding to a
natural subset of benzenoids called catacondensed benzenoid hydrocarbons.
In a previous paper, Hansen and Zheng [6] considered a minimization problem
for benzenoid systems that we call here the minimum weight cut cover problem.
They showed that the optimal value of the cover problem is an upper bound for
the Clar number and conjectured that equality always holds. We prove this is the
case by formulating the minimum weight cut cover problem as a network flow
problem and using its dual to construct a solution for the Clar number problem.
As a consequence, the Clar number and the minimum weight cut cover problems
can be solved in strongly polynomial time using a minimum cost network flow
algorithm. Our results are established for the generalized versions of the Clar
number and cut cover problems that are defined here.
ogy we use is standard and may be found in [2] or [9]. Here (V, E, F ) will always
denote the plane map with set of finite faces F that results from embedding a
bipartite and 2-connected planar graph G = (V, E). We will further assume that
the nodes of V are colored black or white so that all edges connect nodes of
different color.
Since G is bipartite and 2-connected, the boundary of each face f ∈ F
is an even cycle which can be perfectly matched in two different ways. Each
of these two possible matchings is called a frame of the face. A frame of a
face f is clockwise oriented if each frame edge is drawn from a black node to
white node in a clockwise direction along the boundary of f . Otherwise, the
frame is counterclockwise oriented. A framework for (V, E, F ) is a mapping ϕ :
F 7→ E such that ϕ(f ) is a frame for each f ∈ F . A framework ϕ is simple if
ϕ(f ) ∩ ϕ(f 0 ) = ∅ whenever f 6= f 0 . An oriented framework has all frames with
the same orientation. It follows that oriented frameworks are simple.
A set of node-disjoint faces F 0 ⊆ F is called a resonant set for (V, E, F )
if there exists a perfect matching for G that simultaneously contains a frame
for each face in F 0 . We denote by res(V, E, F ) the maximum cardinality of a
resonant set for (V, E, F ). The maximum resonant set problem seeks to determine
res(V, E, F ). It can be viewed as a set partitioning problem where nodes in a
plane map must be covered by faces or edges, and the objective is to maximize
the number of faces in the partition. Of course, this problem is infeasible if G
does not have a perfect matching.
When (V, E, F ) is a benzenoid system, res(V, E, F ) is called its Clar number.
A Clar structure is a representation of an optimal solution to this problem where
the (hexagonal) faces and edges in the partition have inscribed circles and double
lines, respectively (see Fig. 1).
We say two subgraphs of a plane graph are intrafacial if they are edge-disjoint
and each one is contained in the closure of a face of the other. Let G1 and G2 be
two intrafacial subgraphs. We say G1 is interior to G2 and G2 is exterior to G1
if G1 is contained in the closure of an interior face of G2 . We say G1 and G2 are
mutually exterior if each subgraph is contained in the exterior face of the other
one.
Proposition 3. A plane graph with all even degree nodes can be decomposed
into pairwise intrafacial cycles.
Proof. We outline here an iterative procedure that yields the desired decom-
position. Note that the blocks of a plane graph with all even degree nodes are
eulerian, 2-connected and pairwise intrafacial. Since a block is 2-connected, the
boundary of each of its faces is a cycle. Removing such a cycle from the original
graph results in a new graph whose blocks continue to be eulerian, 2-connected
and pairwise intrafacial. Furthermore, the removed cycle is intrafacial with re-
spect to the new graph. t
u
Proof. All cycles referred to in this proof are those of the G0 decomposition.
Since G is bipartite, all cycles are signable. We will show that the following rule
yields the desired signing: if a cycle lies in the interior of an even number of
cycles (not counting itself), sign it clockwise; otherwise sign it counterclockwise.
Consider any face f ∈ F . Then f is interior or exterior to any cycle. Let
n denote the total number of cycles that contain f and assume, without loss
of generality, that ϕ(f ) is clockwise oriented. If f is not frame adjacent to any
cycle, the proposition holds vacuously for f . Next, we consider the cases when
f is interior or exterior to a frame adjacent cycle.
Let c be a frame adjacent cycle that contains f in its interior. Then c must
be the only such cycle and must also be the innermost cycle that contains f
in its interior. Therefore, c must be interior to n − 1 cycles. For n odd (even),
c is signed clockwise (counterclockwise). Since f is interior to c and ϕ(f ) is
clockwise oriented, its frame edges in c are drawn from a black to a white node
in the clockwise direction along c. Hence, the frame edges in c are all assigned a
+1 if n is odd and a -1 if n is even.
Next, let C denote the set cycles exterior and frame adjacent to f . All cycles
in C are signed with the same orientation since each must be interior to the
same number of cycles as f . Since ϕ(f ) is clockwise oriented, the frame edges
that f shares with a cycle in C are drawn from a black node to white node in
the counterclockwise direction along the cycle. Thus, the frame edges of f in the
exterior cycles are assigned a +1 if n is odd and a -1 if n is even.
In both cases, edges in ϕ(f ) ∩ E 0 are assigned a +1 if n is odd and a -1 if n
is even. t
u
max {1T y : Kx + Ry = 1, x ≥ 0, y ≥ 0, x ∈ ZZ E , y ∈ ZZ F }
where
max {1T y : Kz = 1, x + U y − z = 0, x ≥ 0, y ≥ 0, z ≥ 0, y ∈ ZZ F , x, z ∈ ZZ E }.
All feasible solutions to the above integer program are necessarily binary
vectors. Hence, constraints Kz = 1 express that z is the incidence vector of a
perfect matching for G. Constraints x + U y − z = 0 partition the edges in the
perfect matching represented by z between those in faces considered resonant
(represented by U y) and those identified by x.
Note that this alternative formulation of the maximum resonant set problem
is valid for the incidence matrix U of any framework of (V, E, F ). To facilitate the
subsequent analysis of this integer program, it is advantageous to assume that
U is the incidence matrix of a simple framework. Recall this occurs whenever
the framework is oriented.
The incidence matrix of a simple framework has the following useful property.
Proof. Since unimodularity is preserved when rows and columns are multiplied
by −1, it is equivalent to show that the following matrix is unimodular.
0 0 K
A=
IU I
208 Hernán Abeledo and Gary Atkinson
u
0 0 KE 0
v =0 (1)
ID0 UF 0 IE 0
w
If E 0 is empty, we can set all entries of u equal to 1 and all entries of v equal
to -1. Otherwise, let G0 denote the plane subgraph of G = (V, E) induced by E 0 .
Since KE 0 is column eulerian, G0 is a plane graph with all even degree nodes. By
Proposition 3, we can assume that G0 is decomposed into intrafacial cycles. Since
these cycles are even and edge-disjoint, each cycle can be signed independently
of the others. Note that in any signing, if we set we equal to the value given to
edge e in the cycle signing, for each e ∈ E 0 , then KE 0 w = 0. In particular, we
choose to sign the cycles so that, for each face f ∈ F , we = we0 for all pairs
of edges e and e0 in ϕ(f ) ∩ E 0 . We showed in Proposition 4 that such a signing
exists.
To assign values to the entries of u and v we proceed as follows. For each
f ∈ F 0 , if ϕ(f ) ∩ E 0 6= ∅, we let vf = −we for e ∈ ϕ(f ) ∩ E 0 . Otherwise,
if ϕ(f ) ∩ E 0 = ∅, vf can be chosen arbitrarily, say vf = 1. Finally for each
e ∈ D0 , either e ∈ E 0 or e ∈ ϕ(f ) for some f ∈ F 0 . In the first case, we assign
ue = −we and, in the second case, we let ue = −vf . It can now be easily seen
that the u, v, w vectors so defined are a solution to the homogeneous system (1),
establishing that the columns of A0 are linearly dependent. t
u
Polyhedral Combinatorics of Benzenoid Problems 209
For any given framework incidence matrix U , let P2 (b0 ) denote the polyhedron
defined by the system of equations with constraint matrix of problem IP2 and
integer right hand side vector b0 , together with nonnegativity constraints on all
variables. Similarly, let P1 (b) denote the polyhedron defined by the system of
equations with constraint matrix of problem IP1 with integer right hand side
vector b, and nonnegativity constraints on all variables. Proving the following
lemma is straightforward.
Lemma 8. Let b be an integer vector such that P1 (b) is nonempty. Then, there
exists an integer vector b0 such that (x, y) is an extreme point of P1 (b) if and
only if (x, y, x + U y) is an extreme point of P2 (b0 ).
Note Lemma 8 holds for the incidence matrix U of any framework. In par-
ticular, if we choose the framework to be simple, then combining Theorem 7,
Lemma 8, and Theorem 1 establishes the unimodularity of the constraint matrix
of problem IP1.
Definition 11. A cut cover of (V, E, F ) is a set of cuts C such that each face
in F is intersected by at least one cut in C.
210 Hernán Abeledo and Gary Atkinson
Theorem 13 ([6]). The weight of a cut is the same for all perfect matchings.
Thus, for any cut cover C of (V, E, F ), its weight m(C) is also independent
of the perfect matching. Let cov(V, E, F ) denote the value of a minimum weight
cut cover for (V, E, F ). Then
Hansen and Zheng [6] conjectured that the above inequality is satisfied as
equation by all benzenoid systems. In what follows, we sketch our proof that this
conjecture holds true for the class of plane maps we consider in this paper. To
accomplish this, we will define a minimum cost network flow problem associated
with the minimum weight cut cover problem. The directed graph of this flow
problem is based on the geometric dual graph of the plane map (V, E, F ).
Let G∗ = (F ∪ {t}, E ∗ ) denote the dual graph of (V, E, F ), where t denotes
the external face of G. We now transform G∗ into a directed graph. Let ϕ denote
the clockwise oriented framework of (V, E, F ) and let {f, i} be an edge in E ∗ .
Without loss of generality we can assume f ∈ F . If the edge that separates faces f
and i in (V, E, F ) belongs to ϕ(f ), then {f, i} becomes arc (f, i). Otherwise, {f, i}
becomes the arc (i, f ). Next, for each node f ∈ F , we perform a node splitting
transformation to obtain nodes f1 ∈ F1 and f2 ∈ F2 connected by the arc
(f1 , f2 ) ∈ AF , where F1 and F2 are two copies of F and AF is the set of resulting
arcs connecting nodes in these two sets. Outgoing (incoming) arcs of node f
become outgoing (incoming) arcs of node f2 (f1 ). Let D = (F1 ∪F2 ∪{t}, AE ∪AF )
denote the resulting directed graph, where AE is the set of arcs connecting nodes
in different faces. Observe that each directed cycle in D = (F1 ∪F2 ∪{t}, AE ∪AF )
corresponds to a cut of (V, E, F ).
We now define a minimum cost circulation problem on the directed graph
D. A lower bound of 1 is imposed on the flow value of each arc in AF (this
enforces that all faces in F are covered by cuts). Flow on all remaining arcs is
required to be nonnegative. The cost assigned to each arc in AF is zero. Finally,
let p ∈ {0, 1}E be the incidence vector of a perfect matching for G = (V, E).
The cost of arcs in AE is given by the corresponding entry of the vector p. Let γ
denote the optimal value of this network flow problem. Since the right hand side
data for this network flow problem is integer, there exists an optimal solution
to the problem that is integer. As integer solutions can be interpreted as cut
covers, it follows that cov(V, E, F ) ≤ γ. We next prove that γ ≤ res(V, E, F ).
Let U be the incidence matrix of the counterclockwise oriented framework of
(V, E, F ) and let a ∈ {−1, 0, 1}E be defined as a = (U − U )1. We note that the
nonzero entries of a correspond to the edges in the perimeter of (V, E, F ) and
they alternate in sign along the perimeter.
Polyhedral Combinatorics of Benzenoid Problems 211
minimize 1T y
subject to U u − U v − aw + x = p (2)
y−u+v =0 (3)
y, u, v, w, x ≥ 0 (4)
Kx + R(u − v) = Kp = 1
The arguments in the proof of Theorem 15 also show that res(V, E, F ) and
cov(V, E, F ) can be computed in strongly polynomial time using a network flow
algorithm.
References
1. J. Aihara. On the number of aromatic sextets in a benzenoid hydrocarbon. Bulletin
of the Chemical Society of Japan, 49:1429–1430, 1976.
2. B. Bollobás. Graph Theory: An Introductory Course. Springer-Verlag, New York,
1979.
3. E. Clar. The Aromatic Sextet. John Wiley & Sons, London, 1972.
4. S. J. Cyvin and I. Gutman. Kekulé Structures in Benzenoid Hydrocarbons.
Springer-Verlag, Berlin, 1988.
5. I. Gutman and S. J. Cyvin. Introduction to the Theory of Benzenoid Hydrocarbons,
Springer-Verlag, Berlin, 1989.
6. P. Hansen and M. Zheng. Upper bounds for the Clar number of benzenoid hy-
drocarbons. Journal of the Chemical Society, Faraday Transactions, 88:1621–1625,
1992.
7. P. Hansen and M. Zheng. The Clar number of a benzenoid hydrocarbon and linear
programming. Journal of Mathematical Chemistry, 15:93–107, 1994.
8. P. Hansen and M. Zheng. Numerical bounds for the perfect matching vectors of
a polyhex. Journal of Chemical Information and Computer Sciences, 34:305–308,
1994.
9. F. Harary. Graph Theory. Addison-Wesley, Boston, 1969.
10. G. L. Nemhauser and L.A. Wolsey. Integer and Combinatorial Optimization. John
Wiley & Sons, New York, 1988.
11. A. Schrijver. Theory of Integer and Linear Programming. John Wiley & Sons, New
York, 1986.
212 Hernán Abeledo and Gary Atkinson
1 Introduction
penalty of cµ . The problem is then to find a linear order of the probes minimizing
the sum of penalties for violated constraints.
This Weighted Betweenness Problem can also be stated in a different version:
A 0/1 matrix A ∈ {0, 1}m×n has the consecutive ones property (for rows) if the
columns of A can be permuted so that the 1’s in each row appear consecutively.
For a 0/1 matrix B ∈ {0, 1}m×n having the consecutive ones property let nB ρ
(nBµ ) denote the number of 1’s (of 0’s) that have to be switched to transform
A into B. For given nonnegative numbers cρ and cµ , we define the Weighted
Consecutive Ones Problem as the task to find a matrix B with the consecutive
ones property minimizing cρ nB ρ + cµ nµ . This problem is known to be NP-hard
B
[2]. All column permutations π of a feasible matrix B so that the 1’s in each row
of B π appear consecutively can be found in time linear in the number of 1’s in
B by a so called P Q-tree algorithm [1].
For our discussion, we assume that the data is given as clone × probe 0/1-
matrix A where ai,it and ai,ih are fixed to 1. The other entries are obtained from
some experiment where an entry aij = 1 gives rise to a betweenness constraint
(it , j, ih ) and an entry aij = 0 corresponds to a non-betweenness constraint
(it , j, ih ). A solution of the Weighted Betweenness Problem corresponds then
to a solution of the Weighted Consecutive Ones Problem with the additional
constraint that in some column permuted matrix B π (in which the 1’s in each
row appear consecutively) the first and the last 1 in each row i correspond to
the end probes of clone i.
The Weighted Consecutive Ones Problem models the biological situation
when the information that the probes are the ends of clones is missing [8]. Note
that by introducing artificial variables the Weighted Consecutive Ones Problem
can easily be transformed to a Weighted Betweenness Problem.
The paper is organized as follows. Section 2 discusses our previous approach
which could already be applied successfully. An improved approach is presented
in section 3 leading to the definition of the betweenness polytope. This polytope
is then studied in the following section. Separation in the context of a branch-
and-cut algorithm to solve the betweenness problem to optimality is the topic
of section 5. Computational results conclude this paper.
2 A First IP Model
Let m be the number of clones and n be the number of probes. In our special
setup we have n = 2m and we have n − 2 betweenness constraints (it , j, ih ) for
every clone i. We write, for short, (i, j) for the betweenness constraint (it , j, ih ),
and call (i, j) a clone-probe pair. The set Bm of all possible clone-probe pairs is
Bm := {(i, j) | 1 ≤ i ≤ m, 1 ≤ j ≤ n, j 6= it , j 6= ih }.
To ensure that the xij count violations of the betweenness and nonbetweenness
constraints, we have to add further inequalities. To force a xij , (i, j) ∈ Bm to
be 0 if and only if (it , j, ih ) is violated (or (it , j, ih ) is satisfied), we add
0 ≤ xij ≤ 1.
The objective function will force these variables to have integer values if the
linear ordering variables are integer. Note that the objective function is zero on
the linear ordering variables.
With every feasible solution of the problem, corresponding to a permutation
π of the probes, we associate 0/1-vectors ψ π ∈ {0, 1}n(n−1) and χπ ∈ {0, 1}|Bm|
with
1 if i precedes j in the order π,
ψij
π
=
0 otherwise.
216 Thomas Christof et al.
and
1 if constraint (it , j, ih ) is met in the order π,
χπij =
0 otherwise.
The polytope PLOBW
m
associated with the instance of the Weighted Betweenness
π
Problem is the convex hull of all possible vectors ψ
χπ ,
π
ψ
PLOBW
m
= conv π is a permutation of the probes .
χπ
Conversely, for a given χ there exist one or more feasible settings of ψ. These
settings cannot be obtained directly but in linear time by application of the
P Q-tree algorithm [1]. For a given χ we define for every clone i three sets in the
following way.
Si1 = {j | χij = 1} ∪ {it },
Si2 = {j | χij = 1} ∪ {ih },
Si3 = {j | χij = 1} ∪ {it } ∪ {ih }.
The feasible settings of the linear ordering variables ψ correspond to all
permutations of {1, . . . , n} where the elements of every set introduced above
occur in consecutive order.
We now define the projection of PLOBW m
onto the χ variables
ψ
PBW = conv
m
χ | there exists ψ such that ∈ PLOBW
m
.
χ
clones, the application of the P Q-tree algorithm would yield the result that
no permutation exists in which the elements of the sets appear as consecutive
subsequences. Otherwise, if χ ∈ PBW m
, then the P Q-tree provides all consistent
permutations.
Because a feasible linear ordering can be derived from a χ ∈ PBW m
and the
objective function is zero for the linear ordering variables, they can be omitted. A
A Betweenness Problem 217
max cT x
x ∈ PBW
m
x ∈ {0, 1}2m(m−1)
Proposition 1. χ ∈ PBW
m
if and only if M χ has the consecutive ones property
for rows.
4 m
The Polytope PBW
In this section we will investigate some properties of the polytope PBWm
(see also
[13] for a more detailed discussion). In particular we are interested in exhibiting
classes of facet-defining inequalities.
for
(i, j) ∈ {(r, mt ), (r, mh ), (m, rt )}.
Moreover, for 1 ≤ l ≤ m, we have
ρ ρ ρ
χlm
k−2+3l
t = χlm
k−1+3l
h = χml
k+3l
t = 0,
and
ρ ρ
χlm
k−2+3l
h = χml
k−2+3l
t = 1,
ρ ρ
χlm
k−1+3l
t = χml
k−1+3l
t = 1,
ρk+3l ρk+3l
χlmt = χlmh = 1.
In addition, for 1 ≤ r, l ≤ m
ρk+3m+l 1 for l = r,
χmr h =
0 otherwise,
and, for 1 ≤ r, l ≤ m,
ρ ρ ρ
χmr
k−2+3l
h = χmr
k−1+3l
h = χmr
k+3l
h = 0.
In the following table, the rows are the incidence vectors (χρk+i )T , 1 ≤
i ≤ 4m, restricted to the variables in Bm \ Bm . The vectors are partitioned
ρk+i ρk+i ρk+i
into m blocks of coefficients χlm t , χlmh , χmlt , and the remaining coefficients
ρk+i ρk+i
χm1h , . . . , χmmh .
ρ ρ ρ ρ ρ ρ ρ ρ
χ1m
k+i
t χ1m
k+i
h χm1
k+i
t · · · χmm t χmmh χmmt χm1h
k+i k+i k+i k+i
· · · χmm
k+i
h
i=1
i=2 1−I 0 0 0
i=3
.. ..
. ∗ . 0 0
i = 3m − 2
i = 3m − 1 ∗ ∗ 1−I 0
i = 3m
i = 3m + 1
.. ∗ ∗ ∗ I
.
i = 4m
220 Thomas Christof et al.
The system has full rank and since it holds that, for 0 ≤ l ≤ k,
πl
ρl χij for (i, j) ∈ Bm ,
χij =
0 for (i, j) ∈ Bm \ Bm ,
From these results we obtain that trivial lifting preserves the facet-defining
property and that PBW
m
is full-dimensional.
Corollary 6. For m ≥ 2
dim PBW
m
= 2m(m − 1),
i.e., PBW
m
is full-dimensional.
2 2
Proof. PBW is full-dimensional. By application of Theorem 4 with F = PBW and
G = PBW the corollary follows.
m
We used the algorithms for facet enumeration discussed in [5] to get more
insight into the facet structure of PBW m
for m ≤ 4. It is clear that also the
facet-defining inequalities of PBW can be assigned to equivalence classes.
m
2
PBW has 7 vertices and is completely described by 3 equivalence classes of
3
facets. PBW has 172 vertices and 241 facets in total which can be partitioned
into 16 equivalence classes of facets. They are displayed in Table 1 (f˜i denotes
the clone-clone matrix representation of f i ). Observe that the (lifted) facets of
2 3 T T
PBW are among the facets of PBW (f 1 x ≤ f01 to f 3 x ≤ f03 ).
4
The computation of the complete linear description of PBW which has 9,197
vertices was not possible in reasonable time. However, by an algorithm for paral-
lel facet enumeration (see [5]) we found more than 1, 16 · 107 (!) different equiva-
lence classes of facet-defining inequalities, yielding a lower bound of 4.4 · 109 for
4
the number of facets of PBW .
3 T
Table 1. Facet-defining inequalities f i x ≤ f0i of PBW .
1 0 0 0
∗ ∗
1 0
0
0
f˜1 =
1
1
∗ 0
0
, f01 = 2
f˜2 =
0
−1
∗ 0
0
, f02 = 0
0
0
0
0
0 0
∗ 0 0
∗
1 0 2 −1
∗ ∗
−1 0
0 −1
f˜3 =
−1
−1
∗ 0
0
, f03 = 0
f˜4 =
0
0
∗ 0
0
, f04 = 2
0
0
−1
2
0 0
∗ −1 0
∗
2 −1 1 −1
∗ ∗
0 −1
1
−1
f˜5 =
0
0
∗ 0
0
, f05 = 2
f˜6 =
−1
−1
∗ 1
1
, f06 = 2
1
−2
1
−1
1 0
∗ 1 −1
∗
1 −1 2 1
∗ ∗
1 −1
0 −1
f˜7 =
1
1
∗ −1
−1
, f07 = 2
f˜8 =
0
0
∗ −1
1
, f08 = 4
1
−1
1
−1
1 −1
∗ 1 1
∗
1 1 1 −1
∗ ∗
0 0
1 −1
f˜9 =
1
0
∗ 0
1
, f09 = 4
f˜10 =
1
−1
∗ 0
0
, f010 = 2
0
0
1
−2
1 1
∗ 1 −2
∗
2 0 1 1
∗ ∗
0 −2
−1 −1
f˜11 =
0
−2
∗ −1
1
, f011 = 2
f˜12 =
1
−1
∗ 0
−2
, f012 = 2
−2
1
1
0
0 −1
∗ −1 −2
∗
1 1 1 1
∗ ∗
−3 −3
−1 −1
f˜13 =
1
−3
∗ 1
−3
, f013 = 2
f˜14 =
1
−1
∗ −2
0
, f014 = 2
1
1
1
−2
−3 −3
∗ −1 0
∗
3 3 1 0
∗ ∗
−1 −1
0 −1
f˜15 =
1
−1
∗ −3
1
, f015 = 6
f˜16 =
0
−1
∗ 0
1
, f016 = 2
1
−3
0
−1
−1 1
∗ 1 0
∗
A Betweenness Problem 223
X
m−1
(xi(i+1)t + x(i+1)ih ) + xm1t + x1mh ≤ 2m − 2 (4)
i=1
t 1 h
h t
4 2
t h
h 3 t
Fig. 1. Cycle inequality with 4 clones
First we show that all coefficients aij are constant for the clone-probe pairs
(i, j) corresponding to the nonzero coefficients in (4).
Let
h h
π1 = (1h , 2t , 3t , 2h , . . . , it , (i − 1) , . . . , mt , (m − 1) , mh , 1t ),
h h
π2 = (2t , 1h , 3t , 2h , . . . , it , (i − 1) , . . . , mt , (m − 1) , mh , 1t ).
It is easy to see that χπ1 and χπ2 satisfy (4) as equation. Thus aT χπ1 = aT χπ2 .
This yields a12t = a21h .
Because R is invariant under the cyclic permutation 1 → 2 → · · · m → 2 → 1,
the same operations applied to π1 and π2 imply that
we obtain
Again, the associated incidence vectors satisfy (4) as equation. The equations
aT χρi = aT χρi+1 , for 1 ≤ i ≤ m − 2, give
With (7) and (8) we have shown that a13t = a31h = a14t = a41h = . . . =
a1mt = am1h = 0.
Applying cyclic permutations to ρi and τi , for 1 ≤ i ≤ m − 1, we finally
obtain that all coefficients aij are zero for all zero-coefficients in (4).
Hence, the left hand side of (3) is a multiple of the left hand side of (4). By
the properties of (3) and (4), (4) induces that same facet as (3).
5 Separation Procedures
In our computations, we do not use the IP formulation presented above. because
on the one hand it is fairly complicated and on the other hand the inequalities
A Betweenness Problem 225
The separation of the cycle inequalities can be done by a shortest path algorithm.
Let x∗ be an LP solution and Dn = (Vn , An ) be the complete directed graph on
n nodes with edge weights
Then it is easy to see by the following transformation that a cycle with weight
less than 2 corresponds to a violated inequality. Let y ∗ = 1−x∗ . Then x∗ violates
a cycle inequality (4) if and only if y ∗ violates an inequality
X
xc(i)j + xc(j)q(i) ≥ 2
(i,j)∈R
which is true if and only w(R) < 2 for the cycle R in Dn = (Vn , An ).
Xm X
m ∗ T
xij t gσ(i)σ(j)t
C(σ) = .
x∗ij h gσ(i)σ(j)h
i=1 j=1,j6=i
It is clear that the set {σ | C(σ) > g0 } gives all violated inequalities among
all inequalities which are (by means of relabeling of the clones) equivalent to
g T x ≤ g0 . Thus the separation problem for equivalent inequalities (relative to
relabeling of the clones) is a quadratic assignment problem in which all entries
are 2-dimensional vectors.
226 Thomas Christof et al.
6 Computational Results
In our branch-and-cut computations we used ABACUS [14,9,10] with LP solver
CPLEX [7] and an implementation of the P Q-tree algorithm [11].
In [4] we used a set of 150 randomly generated problem instances with 42 to 70
probes which resemble instances occurring in practical applications. To generate
the data the clones were randomly distributed across the chromosome. We used
a coverage (which gives the average number of how often a single point along the
chromosome is covered by a clone) varying from 3 to 5, a false negative rate of
10%, and a false positive rate varying from 0% to 5%. To create a false positive
or false negative, a coin was flipped at each entry with the given probability.
Across experiments with varying coverage, the clone length was held constant.
Our computational experiments show that the new approach clearly super-
sedes our previous approach. Table 2 compares our previous approach (using
linear ordering variables) with the new model described here. The table displays
the average CPU-times ttot (in hh:mm:ss, on a Sun Sparc IPX), the average
number of nodes of the branch-and-cut tree nsub , the average number of cutting
planes which are added to the linear program ncut and the average number of
LP reoptimizations nlp to solve the problem instances.
2
facet classes of PBW not enough cutting planes are found, we execute the heuris-
tics of section 5.2 for a small subset (less than 15) of all equivalence classes of
4
facet-defining inequalities of PBW . If this separation fails, then we separate the
cycle inequalities.
To improve the performance of our branch-and-cut algorithm we developed
algorithms for executing the separation procedures for different classes of facets
in parallel. In addition, we studied by computational experiments two important
questions in detail:
– Which and how many classes of facets should be used for separation?
– Given a large set of cutting planes generated by the separation heuristics,
which ones should be selected and should be added to the LP?
Concerning the first problem, we observed that facet classes with a large
number of roots (feasible incidence vectors contained in the facet) are the most
important ones. The best solution to the second problem is to use cutting planes
whose normal vectors have a small angle with the objective function gradient.
Detailed computational experiments using small instance relaxations in parallel
branch-and-cut algorithms are reported in [3,6].
For the Weighted Betweenness Problem we tested 25 different strategies on
8 randomly generated instances with the following characteristics: 125 clones
(=250 probes), a coverage of 4, a false positive rate of 5% and a false negative
rate of 10%. With our best strategy we could solve the 8 instances on a parallel
machine with 8 Motorola Power PC processors (7 of them reserved for executing
the separation heuristics) in 2:01:34h total time.
References
1. K. Booth and G. Lueker. Testing for the consecutive ones property, interval graphs,
and graph planarity using PQ-tree algorithms. Journal of Computer and System
Sciences, 13:335–379, 1976.
2. K. S. Booth. PQ-Tree Algorithms. PhD thesis, University of California, Berkeley,
1975.
3. T. Christof. Low-Dimensional 0/1-Polytopes and Branch-and-Cut in Combinato-
rial Optimization. Aachen: Shaker, 1997.
4. T. Christof, M. Jünger, J. Kececioglu, P. Mutzel, and G. Reinelt. A branch-and-cut
approach to physical mapping of chromosomes by unique end-probes. Journal of
Computational Biology, 4(4):433–447, 1997.
5. T. Christof and G. Reinelt. Efficient parallel facet enumeration for 0/1 polytopes.
Technical report, University of Heidelberg, Germany, 1997.
6. T. Christof and G. Reinelt. Algorithmic aspects of using small instance relaxations
in parallel branch-and-cut. Technical report, University of Heidelberg, Germany,
1998.
7. CPLEX. Using the CPLEX Callable Library. CPLEX Optimization, Inc, 1997.
8. M. Jain and E. W. Myers. Algorithms for computing and integrating physical maps
using unique probes. In First Annual International Conference on Computational
Molecular Biology, pages 84–92. ACM, 1997.
228 Thomas Christof et al.
are very large (≈ 107 ). The special characteristics of these instances – some very
large and some relatively small coefficients and a very large right-hand side value
a0 – are due to the difference in periodicity of the nested loops. This difference is
explained by the composition of a television screen image. Such an image consist
of 625 lines, and each line is composed of 720 pixels. Every second 25 pictures
are shown on the screen, so the time between two pictures is 40 ms. The time
between two lines and between two pixels are 64 µs and 74 ns respectively. Since
the output rate of the signals has to be equal to the input rate, we get large
differences in periodicity when the data stream corresponds to operations that
have to be repeated for all screens, lines and pixels. Due to the large difference
in the magnitude of the coefficients we often observe that the LP-based branch-
and-bound algorithm terminates with a solution in which for instance variable
xj takes value 4.999999, simply because the hardware does not allow for greater
precision. If one would round xj to xj = 5.0, then one would obtain a vector
x such that ax 6= a0 . It is obviously a serious drawback that the algorithm
terminates with an infeasible solution.
To overcome the mentioned deficiencies we have developed an algorithm
based on the L3 basis reduction algorithm as developed by Lenstra, Lenstra
and Lovász [10]. The motivation behind choosing basis reduction as a core of
our algorithm is twofold. First, basis reduction allows us to work directly with in-
tegers, which avoids the round-off problems. Second, basis reduction finds short,
nearly orthogonal vectors belonging to the lattice described by the basis. Given
the lower and upper bounds on the variables, we can interpret problem (1) as
checking whether there exists a short vector satisfying a given linear diophantine
equation. It is easy to find an initial basis that describes the lattice containing
all vectors of interest to our problem. This initial basis is not “good” in the
sense that it contains very long vectors, but it is useful as we can prove struc-
tural properties of the reduced basis obtained by applying the L3 algorithm to
it. It is important to note that basis reduction does not change the lattice, it
only derives an alternative way of spanning it. Furthermore, our algorithm is
designed for feasibility problems. Once we have obtained the vectors given by
the reduced basis, we use them as input to a heuristic that tries to find a feasible
vector fast or, in case the heuristic fails, we call an algorithm that branches on
linear combinations of vectors and yields either a vector satisfying the bound
constraints, or a proof that no such vector exists.
In Sect. 2 we give a short description of the L3 basis reduction algorithm
and a brief review of the use of basis reduction in integer programming. In Sect.
3 we introduce a lattice that contains all interesting vectors for our problem
(1), and provide an initial basis spanning that lattice. We also derive structural
properties of the reduced basis. Our algorithm is outlined in Sect. 4, and we
report on our computational experience in Sect. 5.
We are indebted to Laurence Wolsey for stimulating discussions and for nu-
merous suggestions on how to improve the exposition.
232 Karen Aardal et al.
Let || || denote the Euclidean length in IRn . Lenstra, Lenstra and Lovász [10]
used the following definition of a reduced basis:
Definition 2. A basis b1 , b2 , . . . , bl is reduced if
1
|µjk | ≤ 2 for 1 ≤ k < j ≤ l (5)
and
that we start with the full-dimensional bounded convex body X ∈ IRn and
that we consider the lattice ZZ n . The problem is to determine whether there
exists a vector x ∈ (X ∩ ZZ n ). We refer to this problem as problem P . We use
bj = ej , 1 ≤ j ≤ n as a basis for the lattice ZZ n , where ej is the vector where
all elements of the vector are equal to zero, except element j that is equal to one.
To avoid having a convex body that is thin we apply a linear transformation τ
to X to make it appear “regular”. Problem P is equivalent to the problem of
determining whether there exists a vector x ∈ (τ X∩τ ZZ n ). The new convex body
τ X has a regular shape but the basis vectors τ ej are not necessarily orthogonal
any longer, so from the point of view of branching the difficulty is still present.
234 Karen Aardal et al.
We can view this as having shifted the problem we had from the convex body
to the lattice. This is where basis reduction proves useful. By applying the L3
algorithm to the basis vectors τ ej , we obtain a new basis b̂1 , . . . , b̂n spanning the
same lattice, τ ZZ n , but having short, nearly-orthogonal vectors. In particular it
is possible to show that the distance d between
P any two consecutive hyperplanes
H + k b̂n , H + (k + 1)b̂n , where H = n−1 j=1 IRbj and k ∈ ZZ, is not too short,
which means that if we branch on these hyperplanes, then there cannot be too
many of them. Each branch at a certain level of the search tree corresponds to
a subproblem with dimension one less than the dimension of its predecessor. In
Fig. 2 we show how the distance between hyperplanes H + k b̂n increases if we
use a basis with orthogonal vectors instead of a basis with long non-orthogonal
ones.
b2 τX τX
b2
b1
b1
(a) (b)
where N1 and N2 are large integral numbers. Note that the basis vectors are given
columnwise, and that the basis consists of n + 1 vectors bj = (b1j , . . . , bn+2,j )T ,
1 ≤ j ≤ n + 1. A vector (x0 , 0)T in the lattice Ls that belongs to N(a0 , 0)
corresponds to a vector (x, N1 x0 , 0)T in the lattice L. We will show below that
by choosing the multipliers N1 and N2 large enough the reduced basis will contain
a vector (xd , N1 , 0)T , and vectors (xj , 0, 0, )T , 1 ≤ j ≤ n − 1. The vector xd is a
solution to the equation ax = a0 , and the vectors xj are solutions to ax = 0, i.e.,
they belong to the null-space N(a). Since the vectors xd and xj , 1 ≤ j ≤ n − 1
belong to the reduced basis we can expect them to be relatively short.
Lemma 1 (Lenstra, Lenstra, Lovász [10]). Let Λ ⊂ IRn be a lattice with
reduced basis b1 , b2 , . . . , bl ∈ IRn . Let y1 , y2 , . . . , yt ∈ Λ, t ≤ l be linearly
independent. Then,
||bj ||2 ≤ 2n−1 max{||y1 ||2 , ||y2 ||2 , ..., ||yt ||2 } for 1 ≤ j ≤ t. (9)
Suppose that b̂n+1,j 6= 0 for some j : 1 ≤ j ≤ n − 1. Then ||b̂j ||2 ≥ b̂2n+1,j ≥ N12
as N1 divides b̂n+1,j . As a consequence, ||b̂j ||2 > N01
2
, which contradicts the
outcome of Lemma 1. We therefore have that b̂n+1,j = 0 for 1 ≤ j ≤ n − 1.
Solving Constrained Linear Diophantine Equations 237
Due to Lemma 1, the following holds for the reduced basis vectors b̂j , 1 ≤ j ≤ n:
||b̂j ||2 ≤ 2n+1 max{||z1 ||2 , . . . , ||zn ||2 } =
2n+1 max{||z1 ||2 , . . . , ||zn−1 ||2 , a20 + N12 a2n } =
2n+1 max{||v1 ||2 , . . . , ||vn−1 ||2 , a20 + N12 a2n } ≤
2n+1 max{||v1 ||2 , . . . , ||vn−1 ||2 , N12 ||vn ||2 } ≤
N12 2n+1 max{||v1 ||2 , . . . , ||vn−1 ||2 , ||vn ||2 } < N12 N02
2
.
If b̂n+2,j 6= 0 for some j : 1 ≤ j ≤ n, then ||b̂j ||2 ≥ b̂2n+2,j ≥ N22 since N2
divides b̂n+2,j . This implies that ||b̂j ||2 > N12 N02
2
, which yields a contradiction.
We can therefore conclude that b̂n+2,j = 0 for 1 ≤ j ≤ n.
Finally, we prove Property 3. The equation ax = a0 has a feasible solution
since we assume that gcd(a1 , . . . , an ) = 1 and since a0 is integral. Let xd be
a solution to ax = a0 . This implies that the vector (xd , N1 , 0)T = B(xd , 1)T
belongs to L spanned by B. The lattice L is also spanned by the reduced ba-
sis RB, and hence the vector (xd , N1 , 0)T can be obtained as (xd , N1 , 0)T =
RB(λ1 , . . . , λn+1 )T . Properties 1 and 2 imply the following:
Example 1. Consider the following instance of problem (1): does there exist a
vector x ∈ ZZ 5 such that:
8, 400, 000x1 + 4, 000, 000x2 + 15, 688x3 + 6, 720x4 + 15x5 = 371, 065, 262;
0 ≤ x1 ≤ 45; 0 ≤ x2 ≤ 39; 0 ≤ x3 ≤ 349; 0 ≤ x4 ≤ 199; 0 ≤ x5 ≤ 170?
Let N1 = 1, 000 and N2 = 10, 000. The initial basis B looks as follows:
1 0 0 0 0 0
0 1 0 0 0 0
0
0 0 1 0 0
B= 0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 N1
8, 400, 000N2 4, 000, 000N2 15, 688N2 6, 720N2 15N2 −371, 065, 262N2
238 Karen Aardal et al.
Notice that the sixth ((n + 1)-st) element of the first four (n − 1) basis vectors
of RB are equal to zero, and that the last element ((n + 2)-nd) of the first five
(n) basis vectors are equal to zero. We also note that b̂n+1,n = b̂6,5 = N1 and
that the elements of the first n = 5 rows of RB are quite small. t
u
We conclude the section with a brief comparison between our initial basis
B and various bases used when trying to find solutions to subset sum problems
that arise in cryptography. In the cryptography application the message that
the “sender” wants to transmit to the “receiver” is represented by a sequence
x ∈ {0, 1}n of “bits”. The receiver knows a sequence of numbers a1 , . . . , an , and
instead of sending the actual message x, the sender sends a number a0 = ax.
Once the receiver knows a0 he can recover the message x by solving the subset
sum problem ax = a0 . Here, the equation ax = a0 is known to have a solution.
Lagarias and Odlyzko [9] considered the following basis to generate the lattice
containing vectors (x, (−ax + a0 x0 ))T :
(n)
I 0(n×1)
B=
−a a0
Here, I(n) denotes the n-dimensional identity matrix, and 0(n×1) denotes the
n × 1-matrix consisting of zeros only. Lagarias and Odlyzko proposed a polyno-
mial time algorithm based on basis reduction. There is no guarantee that the
algorithm finds a feasible vector x, but the authors show that for “almost all”
instances of density d = n/ log2 (maxj aj ) < 0.645, a feasible vector is found.
Several similar bases have been considered later as input to algorithms for trying
to find solutions to subset sum problems. Schnorr and Euchner [15] for instance
used the basis
diag(2)(n×n) 1(n×1)
B= na na0
0(1×n) 1
where diag(2)(n×n) is the n × n-matrix with twos along the main diagonal and
zeros otherwise. Here, a lattice vector v ∈ ZZ n+2 that satisfies |vn+2 | = 1, vn+1 =
0 and vj ∈ {±1} for 0 ≤ j ≤ n, corresponds to a feasible vector xj = 12 |vj −
vn+2 |, 0 ≤ j ≤ n. Schnorr and Euchner [15] proposed an algorithm that for
“almost all” subset sum problem instances with d < 0.9408 finds a feasible
vector. The algorithm uses the above basis as input. For further details on finding
Solving Constrained Linear Diophantine Equations 239
4 The Algorithm
Here we discuss how we can use the properties stated in Theorem 1 to design an
algorithm for solving the feasibility problem (1). Since we are only interested in
vectors belonging to the null-space N(a0 ) we consider only the first n+1 elements
of the first n vectors of RB. We now have obtained a basis for ZZ n+1 ∩ N(a, N a0
1
)
with the following structure:
X xd
RB0 =
0(1×(n−1)) N1
The last column of the matrix RB0 , (xd , N1 )T is a solution to the equation
ax − N a0
1
x0 = 0, which implies that the vector xd is a solution to the equation
ax = a0 . All other columns of RB0 are solutions to the equation ax − 0 = 0,
i.e., the columns of the submatrix X all lie in the null-space N(a).
In our algorithm we first check whether the vector xd satisfies the lower and
upper bounds. If yes, we are done. If any of the bounds is violated we search for a
vector that is feasible, or for a proof that no feasible vector exists, by branching
on linear integer multiples of the vectors in N(a). Note that by adding any linear
integer combination of vectors in N(a), xλ , to xd we obtain a vector xd + xλ that
satisfies axd + xλ = a0 . For the feasible instances the search for a feasible vector
turned out to be easy. To speed up the algorithm for most of these instances we
developed a heuristic as follows. Let Xj be the j-th column of the submatrix X of
RB0 . Suppose that we are at iteration t of the heuristic and that an integer linear
combination of t0 < t vectors of N(a) has been added to vector xd . The vector
240 Karen Aardal et al.
obtained in this way is called the “current vector”. For simplicity we assume that
only variable xk of the current vector violates one of its bound constraints. At
iteration t we add or subtract an integer multiple λt of the column vector Xt if
the violation of variable xk ’s bound constraint is reduced and if no other bound
constraints becomes violated. As soon as the value of xk satisfies its bounds,
we do not consider any larger values of λt . If the heuristic does not find any
feasible solution, we call an exact branching algorithm that branches on linear
combinations of vectors in N(a). A summary of the complete algorithm is given
in Fig. 3.
procedure main(a, a0 , u)
begin
store initial basis B;
RB = L3 (B);
extract RB0 from RB;
if 0 ≤ xd ≤ u then return xd ;
heuristic(RB);
if heuristic fails then
branch on linear combinations of columns j = 1, . . . , n − 1 of the submatrix X;
return feasible vector x, or a proof that no such vector exists;
end
Fig. 3. Algorithm 1.
5 Computational Experience
We solved thirteen instances of problem (1). Eight of the instances were feasible
and five infeasible. The instances starting with “P” in Table 1 were obtained
from Philips Research Labs. The instances starting with “F” are the Frobenius
instances of Cornuéjols et al. [4]. Here we used the Frobenius number as right-
hand side a0 . The two other instances, starting with “E”, were derived from
F3 and F4. The information in Table 1 is interpreted as follows. In the first
two columns, “Instance” and “n”, the instance names and the dimension of
the instances are given. An “F” in column “Type” means that the instance is
feasible, and an “N” that it is not feasible. In the two columns of LP-based
branch-and-bound, “LP B&B”, the number of nodes and the computing time
are given. In the “# Nodes” column, 500, 000∗ means that we terminated the
search after 500,000 nodes without reaching a result. Two asterisks after the
number of nodes indicate that a rounding error occurred, i.e., that the rounded
solution given by the algorithm did not satisfy the diophantine equation. In both
Solving Constrained Linear Diophantine Equations 241
LP B&B Algorithm
Instance n Type # Nodes Time (s) Heur. # Nodes Time (s)
cases we do not report on the computing times since no result was obtained. In
the three columns corresponding to our algorithm, “Algorithm”, the column
“Heur.” gives the number of vectors belonging to N(a) that was used in the
integer linear combination of vectors added to the vector xd by the heuristic in
order to obtain a feasible solution. Notice that for every feasible instance, the
heuristic found a feasible solution. A zero in column “Heur.” therefore means that
the vector xd was feasible. For the infeasible instances the heuristic obviously
failed, and therefore the sign “–” is given in the column. In that case we turn to
the branching phase. Here, a one in the column “# Nodes” means that we solved
the problem in the root node by using logical implications. The computing times
are given in seconds on a 144MHz Sun Ultra-1. For the LP-based branch-and-
bound we used CPLEX version 4.0.9 [6], and in our algorithm we used LiDIA, a
library for computational number theory [12], for computing the reduced basis.
Our results indicate that the instances are rather trivial once they are rep-
resented in a good way. Using the basis ej and branching on variables as in
LP-based branch-and-bound is clearly not a good approach here, but it is the
standard way of tackling integer programs. Using basis reduction seems to give
a more natural representation of the problem. For our instances the computing
times were very short, and, contrary to LP-based branch-and-bound, we avoid
round-off errors. It is also worth noticing that the infeasibility of instances F1–F5
was particularly quickly verified using our algorithm.
242 Karen Aardal et al.
References
1. K. Aardal, A. K. Lenstra, and C. A. J. Hurkens. An algorithm for solving
a diophantine equation with upper and lower bounds on the variables. Re-
port UU-CS-97-40, Department of Computer Science, Utrecht University, 1997.
ftp://ftp.cs.ruu.nl/pub/RUU/CS/techreps/CS-1997/
2. W. Cook, T. Rutherford, H. E. Scarf, and D. Shallcross. An implementation of the
generalized basis reduction algorithm for integer programming. ORSA Journal on
Computing, 5:206–212, 1993.
3. D. Coppersmith. Small solutions to polynomial equations, and low exponent RSA
vulnerability. Journal of Cryptology, 10:233–260, 1997.
4. G. Cornuéjols, R. Urbaniak, R. Weismantel, and L. Wolsey. Decomposition of in-
teger programs and of generating sets. In R. Burkard and G. Woeginger, editors,
Algorithms – ESA ’97, LNCS, Vol. 1284, pages 92–103. Springer-Verlag, 1997.
5. M. J. Coster, A. Joux, B. A. LaMacchia, A. M. Odlyzko, and C. P. Schnorr.
Improved low-density subset sum algorithms. Computational Complexity, 2:111–
128, 1992.
6. CPLEX Optimization Inc. Using the CPLEX Callable Library, 1989.
7. B. de Fluiter. A Complexity Catalogue of High-Level Synthesis Problems. Master’s
thesis, Department of Mathematics and Computing Science, Eindhoven University
of Technology, 1993.
8. G. Havas, B. S. Majewski, and K. R. Matthews. Extended gcd and Hermite nor-
mal form algorithms via lattice basis reduction. Working paper, Department of
Mathematics, The University of Queensland, Australia, 1996.
9. J. C. Lagarias and A. M. Odlyzko. Solving low-density subset sum problems. Jour-
nal of the Association for Computing Machinery, 32:229–246, 1985.
10. A. K. Lenstra, H. W. Lenstra, Jr., and L. Lovász. Factoring polynomials with
rational coefficients. Mathematische Annalen, 261:515–534, 1982.
11. H. W. Lenstra, Jr. Integer programming with a fixed number of variables. Mathe-
matics of Operations Research, 8:538–548, 1983.
12. LiDIA – A library for computational number theory. TH Darmstadt / Universität
des Saarlandes, Fachbereich Informatik, Institut für Theoretische Informatik.
http://www.informatik.th-darmstadt.de/pub/TI/LiDIA
13. L. Lovász and H. E. Scarf. The generalized basis reduction algorithm. Mathematics
of Operations Research, 17:751–764, 1992.
14. M. C. McFarland, A. C. Parker, and R. Camposano. The high-level synthesis of
digital systems. Proceedings of the IEEE, Vol. 78, pages 301–318, 1990.
15. C. P. Schnorr and M. Euchner. Lattice basis reduction: Improved practical algo-
rithms and solving subset sum problems. Mathematical Programming, 66:181–199,
1994.
16. C. P. Schnorr and H. H. Hörner. Attacking the Chor-Rivest Cryptosystem by
improved lattice reduction. In L. C. Guillou and J.-J. Quisquater, editors, Advances
in Cryptology – EUROCRYPT ’95, LNCS, Vol. 921, pages 1–12. Springer Verlag,
1995.
17. W. F. J. Verhaegh, P. E. R. Lippens, E. H. L. Aarts, J. H. M. Korst, J. L. van Meer-
bergen, and A. van der Werf. Modeling periodicity by PHIDEO steams. Proceed-
ings of the Sixth International Workshop on High-Level Synthesis, pages 256–266.
ACM/SIGDA, IEEE/DATC, 1992.
The Intersection of Knapsack Polyhedra and
Extensions
?
Alexander Martin and Robert Weismantel
Konrad-Zuse-Zentrum Berlin
Takustr. 7
D-14195 Berlin, Germany
{martin, weismantel}@@zib.de
1 Introduction
Consider some matrix A ∈ IRm×n , vectors b ∈ IRm , u ∈ IRn , and the polytope
P := conv {x ∈ ZZ n : Ax ≤ b, 0 ≤ x ≤ u},
that is the convex hull of all integral vectors x satisfying Ax ≤ b and 0 ≤ x ≤ u.
Set N := {1, . . . , n}. For S ⊆ N , define PS := P ∩ {x ∈ IRn : xi = 0 for i ∈
N \ S}, where PN = P , and, for x ∈ IRn , denote by x|S := (xi )i∈S the vector
restricted to the components in S.
P
Definition 1. Let T ⊆ N such that i∈T A·i vi ≤ b for all v ∈ IRT with v ≤ u|T .
T is called a feasible set.
P Let w : T 7→ ZZ be some weighting of the elements of
T . For j ∈ N \ T with i∈T A·i ui + A·j uj 6≤ b , the inequality
X X
wi xi + wj xj ≤ wi ui (1)
i∈T i∈T
γ − γ(k, l)
wπk := min . (4)
l=1,...,uπk l
Note that the right hand side of (2) coincides with (4) applied to variable j
if we substitute in (3) the set T ∪ {j} by T . In other words, a lifted feasible set
inequality associated with T and {j}, where the variables in N \ (T ∪ {j}) are
lifted according to the sequence π1 , . . . , πn−|T |−1 , coincides with the inequality
associated with T , where j is lifted first, and the remaining variables N \(T ∪{j})
are lifted in the same order π1 , . . . , πn−|T |−1 . Thus, instead of speaking of a
feasible set inequality associated with T and {j}, we speak in the sequel of a
feasible set inequality associated with T and view j as the variable that is lifted
first.
Odd hole- and clique inequalities for the set packing polytope are examples of
lifted feasible set inequalities. Consider the set packing polytope P = conv {x ∈
{0, 1}n : Ax ≤ 1l} for some 0/1 matrix A ∈ {0, 1}m×n. Let GA = (V, E) denote
the associated column intersection graph whose nodes correspond to the columns
246 Alexander Martin and Robert Weismantel
of A and nodes i and j are adjacent if and only if the columns associated with
i and j intersect
P in some row. Let Q ⊆ V be a clique in GA , then the clique
inequality i∈Q i ≤ 1 is valid for P . To see that this inequality is a lifted
x
feasible set inequality, let T = {i} for some i ∈ Q. The feasible set inequality
xi ≤ 1 is valid for P{i} . Lifting the remaining variables k ∈ Q \ {i} by applying
formula (4) yields wk = 1, and the clique inequality follows.
For a feasible set inequality associated with T , the calculation of the lifting
coefficients for the variables in N \ T requires the solution of an integer program.
In this section we study lower and upper bounds for these coefficients. It will turn
out that these bounds are sometimes easier to compute. We assume throughout
the section that A ≥ 0 and wi ≥ 0 for i ∈ T .
≥-Incomparability Number
X X
φ6≥ (v) := min { wi xi : A·i xi 6≥ v, 0 ≤ xi ≤ ui , xi ∈ ZZ, i ∈ T,
i∈T i∈T X
∧ ∃ j ∈ T, xj < uj : A·i xi + A·j ≥ v},
i∈T
≤-Incomparability Number
X X
φ6≤ (v) := min { wi xi : A·i xi 6≤ v, 0 ≤ xi ≤ ui , xi ∈ ZZ, i ∈ T },
i∈T i∈T
Proposition 5.
1 ≥
(a) wπ1 = minl=1,...,uπ1 l φ (A·π1 l − r(T )).
1 ≥
(b) wπk ≤ minl=1,...,uπk l φ (A·πk l − r(T )), for k = 2, . . . , n − |T |.
The Intersection of Knapsack Polyhedra 247
Proof. (a) directly follows from Theorem 2. To see (b), it suffices to show that
γ −γ(k, l) ≤ φ≥ (A·πk l−r(T )) for l = 1, . . . , uπk , see (4). This relation is obtained
by
P P
γ − γ(k, l) = γ − max i∈T wi xi + i∈{π1 ,...,πk−1 } wi xi
P P
i∈T A·i xi + i∈{π1 ,...,πk−1 } A·i xi + A·πk l ≤ γ,
T ∪{π1 ,...,πk−1 }
0P≤ x ≤ u|T ∪{πP1 ,...,πk−1 } , x ∈ ZZ
= min i∈T wi xi − i∈{π1 ,...,πk−1 } wi xi
P P
i∈T A·i xi − i∈{π1 ,...,πk−1 } A·i xi ≥ A·πk l − r(T ),
0P≤ x ≤ u|T ∪{π1 ,...,πk−1 } , x ∈ ZZ T ∪{π1 ,...,πk−1 }
≤ min Pi∈T wi xi
i∈T A·i xi ≥ A·πk l − r(T ),
0 ≤ x ≤ u|T , x ∈ ZZ T
= φ≥ (A·πk l − r(T )),
To derive lower bounds on the lifting coefficients we need the following rela-
tions.
Lemma 6. For v1 , v2 ∈ IRm with v1 , v2 ≥ 0 holds:
(a) φ≥ (v1 ) ≥ φ6≥ (v1 ) and φ≥ (v1 ) ≥ φ6≤ (v1 ).
(b) φ≥ , φ6≥ , and φ6≤ are monotonically increasing, that is for v1 ≥ v2 , φ≥ (v1 ) ≥
φ≥ (v2 ), φ6≥ (v1 ) ≥ φ6≥ (v2 ), and φ6≤ (v1 ) ≥ φ6≤ (v2 ).
(c) φ≥ (v1 + v2 ) ≥ φ6≥ (v1 ) + φ6≤ (v2 ).
(d) φ≥ (v1 + v2 ) + max {wi : i ∈ T } ≥ φ6≤ (v1 ) + φ≥ (v2 ).
(e) φ6≤ (v1 + v2 ) + max {wi : i ∈ T } ≥ φ6≤ (v1 ) + φ6≤ (v2 ).
Proof. (a) and (b) are obvious, the proofs of (c) and (e) follow the P same line.
We show exemplarily P (c). Let x̄ ∈ IR T
with 0 ≤ x̄ ≤ u| T and i∈T A·i x̄i ≥
v1 + v2 such that w
i∈T i ix̄ = φ ≥
(v1 + v2 ). If v 1 = v2 = 0 the statement
Pw.l.o.g. v1 > 0. Let z ∈ IR with z ≤ x̄ such
T
is trivial.
P Otherwise, suppose
that i∈T A·i zi ≥ v1 and i∈T wi zi is minimal. Since v1 > 0 there exists
some
P i 0 ∈ T with z i0 > 0, and since z wasP chosen to be minimal, we have that
i∈T A·i zi −A·i0 6≥ v1 . ThisP implies that P i∈T A·i (x̄i −zi )+A·i0 6≤ Pv2 . Summing
up, we get φ≥ (v1 + v2 ) = i∈T wi x̄i = ( i∈T A·i zi − A·i0 ) + ( i∈T A·i (x̄i −
zi ) + A·i0 ) ≥ φ6≥ (v1 ) + φ6≤ (v2 ). Finally, (d) directly follows from (c) and the fact
that φ6≥ (v1 ) + max {wi : i ∈ T } ≥ φ≥ (v1 ). t
u
With the help of Lemma 6 we are able to bound the lifting coefficients from
below.
Theorem 7. For k = 1, . . . , n − |T | we have
φ6≤ (A·πk l − r(T ))
wπk ≥ min − max {wi : i ∈ T }. (5)
l=1,...,uπk l
248 Alexander Martin and Robert Weismantel
φ6≤ (A
·πk l−r(T ))
Proof. Let cπk := minl=1,...,uπk l − max {wi : i ∈ T } denote the
right hand side of (5), for k = 1, . . . , n − |T |. We show by induction on k that
P Pk P
the inequality i∈T wi xi + i=1 cπi xi ≤ i∈T wi ui is valid. For k = 1, the
statement follows from Proposition 5 (a) and Lemma 6 (a). Now let k ≥ 2 and
suppose the statement is true for all l < k. Let x̄ be an optimal solution of
X X
k
max wi xi + cπi xπi
i∈T i=1
X Xk
A·i xi + A·πi xπi ≤ b
i∈T i=1
0 ≤ xi ≤ ui , xi ∈ ZZ for i ∈ T ∪ {π1 , . . . , πk }.
P Pk P
We must show that i∈T wi x̄i + i=1 cπi x̄πi ≤ i∈T wi ui . First note that the
inequality is valid if x̄πk = 0. This is equivalent to saying
X
k−1 X
k−1
φ≥ A·πi xπi − r(T ) ≥ cπi xπi ,
i=1 i=1
Pk−1
for all x ∈ ZZ {π1 ,...,πk−1 } with i=1 A·πi xπi ≤ b, 0 ≤ xπi ≤ uπi , i = 1, . . . , k−1.
Applying Lemma 6 (d) and (b) we obtain with wmax := max {wi : i ∈ T }
X
k k−1
X
φ≥ A·πi x̄πi − r(T ) ≥ φ≥ A·πi x̄πi − r(T ) + φ6≤ (A·πk x̄πk ) − wmax
i=1 i=1
X
k−1
≥ cπi x̄πi + φ6≤ (A·πk x̄πk − r(T )) − wmax
i=1
X
k−1
≥ cπi x̄πi
i=1
φ6≤ (A·πk l − r(T ))
+ x̄πk min − wmax
l=1,...,uk l
X
k
= cπi x̄πi .
i=1
P P
On account of i∈T wi (ui − x̄i ) ≥ φ≥ ( ki=1 A·πi x̄πi − r(T )) the statement
follows. t
u
The question remains, whether the values φ≥ , φ6≥ and φ6≤ are easier to com-
pute than the exact lifting coefficient. Indeed, they sometimes are. Suppose
wi = 1 for all i ∈ T and consider the comparability digraph G = (V, E) that
is obtained by introducing a node for each column and arcs (i, j) if A·i ≥ A·j
and A·i 6= A·j or if A·i = A·j and i > j, for i, j ∈ {1, . . . , n} (where transitive
arcs may be deleted). Let r denote the number of nodes with indegree zero, i. e.,
δ − (i) = 0. Then, φ≥ , φ6≥ and φ6≤ can be computed in time O(nr + α), where α
is the time to construct the comparability digraph. For example, in case of one
knapsack inequality the comparability digraph turns out to be a path, and thus
φ≥ , φ6≥ and φ6≤ can be computed in time O(n + n log n) = O(n log n).
So far we have been discussing feasible set inequalities for general integer pro-
grams. With the exception that with u|T also every vector v ≤ u|T is valid for
P we have not subsumed any assumptions on the matrix A. Thus a comparison
to Chvátal-Gomory cutting planes that do not rely on any particular struc-
ture of A is natural. Recall that Chvátal-Gomory inequalities for the system
Ax ≤ b, 0 ≤ x ≤ u, x ∈ ZZ n are cutting planes dT x ≤ δ such that di = bλT ·i c,
i = 1, . . . , n, and
A b
δ = bλ b̂c for some λ ∈ IR+ , where  =
T m+n
and b̂ = .
I u
P
Consider a (lifted) feasible set inequality wT x ≤ i∈T wi ui associated with
T , whose remaining variables N \ T are lifted in the sequence π1 , . . . , πn−|T | .
This lifted feasible set inequality is compared to Chvátal-Gomory inequalities
resulting from multipliers λ ∈ IR+ m+n
that satisfy bλT ·i c = wi for i ∈ T .
Proposition 9.
P
(a) bλT b̂c ≥ i∈T ui wi .
P
(b) If bλT b̂c = i∈T ui wi , let j be the smallest index with bλ ·πj c 6= wπj .
T
Proof. Since T is a feasible set, (a) is obviously true. To see (b) suppose the
contrary and let j be the first index with bλT ·πj c 6= wπj and bλT ·πj c >
P
wπj . Set γ = i∈T ui wi and consider an optimal solution x̄ ∈ ZZ T ∪{π1 ,...,πj }
γ−γ(j,x̄j )
of (3) such that wπj = x̄j . Obviously, x̄ can be extended to a feasible
solution x̃ of P by setting x̃i = x̄i , if i ∈ T ∪ {π1 , . . . , πj }, x̃i = 0, otherwise.
250 Alexander Martin and Robert Weismantel
This solution satisfies the feasible set inequality with equality, since wT x̃ =
P γ−γ(j,x̃j )
i∈T ∪{π1 ,...,πj−1 } wi x̃i +wπj x̃j = γ(j, x̃j )+ x̃j x̃j = γ. On the other hand, j
is the first index where
P the Chvátal-Gomory
P and the feasible set coefficient differ
and we conclude i∈N bλT ·i cx̃i = i∈T ∪{π1 ,...,πj−1 } bλT ·i cx̃i + bλT ·πj cx̃j >
P
i∈T ∪{π1 ,...,πj−1 } wi x̃i + wπj x̃j = γ = bλ b̂c, contradicting the validity of the
T
Chvátal-Gomory inequality. t
u
The right hand side of the Chvátal-Gomory cutting plane and the lifted feasible
set inequality coincide. With respect to the lifting order 5, 6, 7 the coefficient
of item 6 is the first one in which the two inequalities differ. This coefficient is
11 in the feasible set inequality and 10 in the Chvátal-Gomory cutting plane.
For item 7 the coefficient in the feasible set inequality is then smaller than the
corresponding one in the Chvátal-Gomory cutting plane. For b = 27 we obtain
the lifted feasible set inequality that is valid for P (27):
The right hand side of this inequality is by one smaller than the right hand side
of the corresponding Chvátal-Gomory cutting plane for λ = 12 . However, the
coefficients of the items 6 and 7 are smaller than the corresponding coefficients
of the Chvátal-Gomory cutting plane.
Under certain conditions a feasible set- and a Chvátal-Gomory cutting plane
coincide.
Theorem 11. Let A ∈ INm×n and T be a feasible set of the integer program
max {cT x : Ax ≤ b, 0 ≤ x ≤ 1l, x ∈ ZZ n }. Let λ ∈ IRm
P + such that bλ bc =
T
i∈T bλT
A·i c. If, for all j ∈ N \ T , column vector A·j is a 0/1-combination of
elements from {A·i : i ∈ T }, then
Proof. We first show that bλT A·j c ≥ φ≥ (A·j − r(T )). Since A·j is a 0/1-com-
bination of elements from {A·i : i ∈ T },P
P there exist σ ∈ P {0, 1}T such that
Pi∈T σi A·i = ≥A·j . Thus, bλ A·j c = bλ ( i∈T σi A·i )c ≥ i∈T σi bλ A·i c =
T T T
this Chvátal-Gomory
P cutting
P plane must coincide with any lifted feasible set in-
equality i∈T bλT A·i cxi + j∈N \T wj xj ≤ bλT bc independent on the sequence
in which the lifting coefficients wj for the items in N \ T are computed.
Cix ≤ γ i for i = 1, 2.
The Intersection of Knapsack Polyhedra 253
Proof. Note that the system of linear inequalities given in the theorem is valid for
P . To see that it suffices to describe P , let cT x ≤ γ be a non-trivial P facet-defining
inequality of P that is not a positive multiple of the inequality j∈N1 ∩N2 xj ≤ 1.
W.l.o.g. we assume that supp(c) ∩ N1 6= ∅. Let Z = {z1 , . . . , zt } = N1 ∩ N2 . We
claim that (supp(c) \ Z) ∩ N2 = ∅. Suppose the contrary. We define natural
numbers γ 0 , γ 1 , . . . , γ t by
P P
γ 0 := max{ cj xj : A1j xj ≤ b1 , x ∈ {0, 1}N1\Z },
j∈N1 \Z j∈N1 \Z
P P
γ i := max{ cj xj : A1j xj ≤ b1 − A1zi , x ∈ {0, 1}N1\Z },
j∈N1 \Z j∈N1 \Z
and claim that the face induced by the inequality cT x ≤ γ is contained in the
face induced by the inequality
X X
t
cj xj + (γ 0 − γ i )xzi ≤ γ 0 . (6)
j∈N1 \Z i=1
This inequality
P is valid for P by definition of the values γ i , i = 0, . . . , t and
because i∈Z xi ≤ 1. P
Let x ∈ P ∩ ZZ n such that cT x = γ. If i∈Z xi = 0, then cT xP= γ 0 , since
P we obtain a contradiction to the validity Tof c x ≤ γ. If i∈Z xi > 0,
T
otherwise
then i∈Z xi = 1. Let zi ∈ Z with xzi = 1. Then c x = γ implies that x − ezi
is an optimal solution of the program
X
max{ cj wj : w ∈ {0, 1}N1\Z : A1· w ≤ b1 − A1zi }.
j∈N1 \Z
This shows that in this case x satisfies inequality (6) as an equation, too. We
obtain that cT x ≤ γ must be a facet of the knapsack polyhedron P 1 . This
completes the proof. t
u
The correctness of the theorem strongly relies on the fact that every pair of
items from the intersection N1 ∩ N2 is a cover. If this condition is not satisfied,
then Example 14 demonstrates that the facet-defining inequalities of the two
single knapsack polyhedra do not suffice in general to describe the polyhedron
associated with the intersection of the two knapsack constraints. Geometrically,
the fact that we intersect two knapsack constraints generates incomparabilities
between the column vectors of the associated matrix. These incomparabilities
give rise to cutting planes that do not define facets of one of the two single
knapsack polyhedra that we intersect. In fact, incomparabilities between col-
umn vectors in a matrix make it possible to “melt” inequalities from different
knapsack polyhedra. A basic situation to which the operation of melting applies
is
P P
be a valid inequality for P 1 , and let i∈N2 \N1 ci xi + i∈N1 ∩N2 ci xi ≤ γ be a
P
valid inequality for P 2 . Setting Θ := i∈N1 \N2 ci , the melted inequality
X X X
ci xi + ci xi + (ci − Θ)+ xi ≤ γ
i∈N1 \N2 i∈N1 ∩N2 i∈N2 \N1
is valid for P .
Proof. Let x ∈ P ∩ ZZ n . If xiP= 0 for all i ∈ P
N2 \ N1 with ci − Θ > 0, the
inequality is satisfied because i∈N1 \N2 ci xi + i∈N1 ∩N2 ci xi ≤ γ is valid for
P P
P 1 . Otherwise, i∈N2 \N1 (ci − Θ)+ xi ≤ i∈N2 \N1 ci xi − Θ, and we obtain
X X X
ci xi + ci xi + (ci − Θ)+ xi
i∈N1 \N2 i∈N1 ∩N2 i∈N2 \N1
X X X
≤ ci xi − Θ + ci xi + ci xi
i∈N1 \N2 i∈N1 ∩N2 i∈N2 \N1
X X
≤ ci xi + ci xi
i∈N1 ∩N2 i∈N2 \N1
≤ γ.
t
u
Proposition 16 can be extended to general upper bounds u ∈ INn . Often the
inequality that results from melting valid inequalities from knapsack polyhedra
as described in Proposition 16 does not define a facet of P . In such situations
there is a good chance of strengthening the melted inequality by determining
lifting coefficients for the items in (N1 \ N2 ) ∪ (N2 \ N1 ) with respect to a given
order.
145600 15
Example 17. Let A be the matrix and b = . The inequality
005614 15
x1 + 4x2 + 5x3 + 6x4 ≤ 15 defines a facet of P 1 := conv {x ∈ ZZ 4 : x1 +
4x2 + 5x3 + 6x4 ≤ 15, 0 ≤ xi ≤ 3, i ∈ {1, 2, 3, 4}}. For α ∈ {0, 1, 2, 3} the
inequality 5x3 + 6x4 + αx6 ≤ 15 is valid for P 2 := conv {x ∈ ZZ {3,4,5,6} :
5x3 + 6x4 + x5 + 4x6 ≤ 15, 0 ≤ xi ≤ 3, i ∈ {3, 4, 5}, 0 ≤ x6 ≤ 1}. Setting
α = 1 and applying Proposition 16 and the succeeding remark we obtain that
0x1 + 3x2 + 5x3 + 6x4 + x6 ≤ 15 is valid for P := conv {x ∈ ZZ 6 : Ax ≤ b, 0 ≤
xi ≤ 3, i ∈ {1, 2, 3, 4, 5}, 0 ≤ x6 ≤ 1}. This inequality can be strengthened by
lifting to yield the facet-defining inequality x1 + 3x2 + 5x3 + 6x4 + x6 ≤ 15. For
α = 2, we end up with the melted inequality 0x1 +2x2 +5x3 +6x4 +2x6 ≤ 15. For
α = 3 we obtain the inequality 0x1 + x2 + 5x3 + 6x4 + 3x6 ≤ 15 that can again be
strengthened to yield a facet-defining inequality of P , x2 +5x3 +6x4 +x5 +3x6 ≤
15.
It turns out that sometimes the feasible set inequalities for two consecu-
tively intersecting knapsacks can be interpreted in terms of melting feasible set
inequalities for the associated single knapsack polytopes.
The Intersection of Knapsack Polyhedra 255
15 3 5 13 0 0 20
Example 18. Consider A = and b = . The set T =
0 17 18 17 19 20 35
{2, 3} is feasible, and the inequality x2 + x3 + x4 + 2x5 + 2x6 ≤ 2 is a feasible
set inequality for P 2 := conv {x ∈ {0, 1}{2,3,4,5,6} : 17x2 + 18x3 + 17x4 + 19x5 +
20x6 ≤ 35}, where the variables not in T are lifted in the sequence 4, 5, 6. In
addition, x1 + x2 + x3 + x4 ≤ 2 is a feasible set inequality for P 1 := conv {x ∈
{0, 1}{1,2,3,4} : 15x1 + 3x2 + 5x3 + 13x4 ≤ 20}, P with respect to the same feasible
set T and the lifting sequence 4, 1. Now Θ = i∈N1 \N2 ci = 1 and the melted
inequality reads x1 + x2 + x3 + x4 + x5 + x6 ≤ 2, which is facet-defining for
P := {x ∈ {0, 1}6 : Ax ≤ b}. Note that the melted inequality is also a feasible
set inequality with respect to T and the lifting sequence 4, 1, 5, 6.
Note that Example 18 also shows that under certain conditions the operation
of melting feasible set inequalities produces a facet-defining inequality for P .
5 Computational Experience
In this section we briefly report on our computational experience with a sep-
aration algorithm for the feasible set inequalities. We have incorporated this
algorithm in a general mixed integer programming solver, called SIP, and tested
it on instances from the MIPLIB 3.0 ([2]). Details of our separation algorithm
such as how to determine a feasible set T , how to weight the variables in T , how
to perform the lifting, and for which substructures of the underlying constraint
matrix the separation algorithm should be called, will be given in a forthcoming
paper. We compared SIP with and without using feasible set inequalities. The
time limit for our runs was 3600 CPU seconds on a Sun Enterprise 3000. It turns
out that for 14 out of 59 problems (air05, fiber, gesa2, gesa2 o, gesa3 o, misc03,
misc07, p0033, p0201, p2756, qnet1, seymour, stein27, stein45) we find feasible
set inequalities or our separation routines uses more than 1% of the total running
time.
Table 1. Comparison of SIP with and without feasible set (FS) inequalities.
Table 1 summarizes our results over these 14 problem instances. The first
column gives the name of the problem, Column 2 the number of branch-and-
bound nodes. The following two columns headed Cuts give the number of cutting
planes found, Others are those that are found by the default separation routines
256 Alexander Martin and Robert Weismantel
in SIP, and FS shows the number of feasible set inequalities added. Columns
5 and 6 present the time spent for separating feasible set inequalities and the
total time. The last column gives the sum of the gaps ( upper bound - lower bound
lower bound
)
in percentage between the lower and upper bounds. Table 1 shows that the
time slightly increases (by 2%), but the quality of the solutions is significantly
improved, the gaps decrease by around 43% when adding feasible set inequalities.
Based on these results we conclude that feasible set inequalities are a tool that
helps solving mixed integer programs.
References
1. E. Balas, S. Ceria, and G. Cornuéjols. A lift-and-project cutting plane algorithm
for mixed 0 − 1 programs. Mathematical Programming, 58:295–324, 1993.
2. R. E. Bixby, S. Ceria, C. M. McZeal, and M. W. P. Savelsbergh. An updated mixed
integer programming library: MIPLIB 3.0. 1998. Paper and problems available at
http://www.caam.rice.edu/∼bixby/miplib/miplib.html
3. S. Ceria, C. Cordier, H. Marchand, and L. A. Wolsey. Cutting planes for inte-
ger programs with general integer variables. Technical Report CORE DP9575,
Université Catholique de Louvain, Louvain-la-Neuve, Belgium, 1997.
4. V. Chvátal. Edmonds polytopes and a hierarchy of combinatorial problems. Dis-
crete Mathematics, 4:305–337, 1973.
5. H. Crowder, E. Johnson, and M. W. Padberg. Solving large-scale zero-one linear
programming problems. Operations Research, 31:803–834, 1983.
6. R. E. Gomory. Solving linear programming problems in integers. In R. Bellman
and M. Hall, editors, Combinatorial analysis, Proceedings of Symposia in Applied
Mathematics, Vol. 10. Providence, RI, 1960.
7. H. Marchand and L. A. Wolsey. The 0–1 knapsack problem with a single continuous
variable. Technical Report CORE DP9720, Université Catholique de Louvain,
Louvain-la-Neuve, Belgium, 1997.
8. M. W. Padberg. On the facial structure of set packing polyhedra. Mathematical
Programming, 5:199–215, 1973.
9. M. W. Padberg. A note on zero-one programming. Operations Research, 23:833–
837, 1975.
10. M. W. Padberg. (1, k)-configurations and facets for packing problems. Mathemat-
ical Programming, 18:94–99, 1980.
11. M. W. Padberg, T. J. Van Roy, and L. A. Wolsey. Valid inequalities for fixed
charge problems. Operations Research, 33:842–861, 1985.
12. A. Schrijver. On cutting planes. Annals of Discrete Mathematics, 9:291–296, 1980.
13. L. A. Wolsey. Faces of linear inequalities in 0-1 variables. Mathematical Program-
ming, 8:165–178, 1975.
New Classes of Lower Bounds for Bin Packing
Problems ?
Abstract. The bin packing problem is one of the classical NP-hard op-
timization problems. Even though there are many excellent theoretical
results, including polynomial approximation schemes, there is still a lack
of methods that are able to solve practical instances optimally. In this
paper, we present a fast and simple generic approach for obtaining new
lower bounds, based on dual feasible functions. Worst case analysis as
well as computational results show that one of our classes clearly out-
performs the currently best known “economical” lower bound for the bin
packing problem by Martello and Toth, which can be understood as a
special case. This indicates the usefulness of our results in a branch and
bound framework.
1 Introduction
The bin packing problem (BPP) can be described as follows: Given a set of n
“items” with integer size x1 , . . . , xn , and a supply of identical “containers” of
capacity C, decide how many containers are necessary to pack all the items.
This task is one of the classical problems of combinatorial optimization and NP-
hard in the strong sense – see Garey and Johnson [9]. An excellent survey by
Coffmann, Garey, and Johnson can be found as Chapter 2 in the recent book [2].
Over the years, many clever methods have been devised to deal with the re-
sulting theoretical difficulties. Most notably, Fernandez de la Vega and Lueker [8],
and Karmarkar and Karp [12] have developed polynomial time approximation
schemes that allow it to approximate an optimal solution within 1 + ε in polyno-
mial (even linear) time, for any fixed ε. However, these methods can be hardly
called practical, due to the enormous size of the constants. On the other hand,
there is still a lack of results that allow it solve even moderately sized test prob-
lems optimally – see Martello and Toth [15,16], and the ORLIB set of benchmark
problems [1]. The need for better understanding is highlighted by a recent ob-
servation by Gent [10]. He showed that even though some of these benchmark
?
This work was supported by the German Federal Ministry of Education, Science,
Research and Technology (BMBF, Förderkennzeichen 01 IR 411 C7).
problems of 120 and 250 items had defied all systematic algorithmic solution
attempts, they are not exactly hard, since they can be solved by hand.
This situation emphasizes the need for ideas that are oriented towards the
exact solution of problem instances, rather than results that are mainly worst
case oriented. In this paper, we present a simple and fast generic approach for
obtaining lower bounds, based on dual feasible functions. Assuming that the
items are sorted by size, our bounds can be computed in linear time with small
constants, a property they share with the best lower bound for the BPP by
Martello and Toth [15,16]. As it turns out, one of our classes of lower bounds
can be interpreted as a systematic generalization of the bound by Martello and
Toth. Worst case analysis as well as computational results indicate that our
generalization provides a clear improvement in performance, indicating their
usefulness in the context of a branch and bound framework. Moreover, we can
show that the simplicity of our systematic approach is suited to simplify and
improve other hand-tailored types of bounds.
The rest of this paper is organized as follows. In Section 2, we give an intro-
duction to dual feasible functions and show how they can be used to obtain fast
and simple lower bounds for the BPP. In Section 3, we consider the worst case
performance of one of our classes of lower bounds, as well as some computational
results on the practical performance. Section 4 concludes with a discussion of
possible extensions, including higher-dimensional packing problems.
For the rest of this paper, we assume without loss of generality that the items
have size xi ∈ [0, 1], and the container size C is normalized to 1. Then we
introduce the following:
Dual feasible functions have been used in the performance analysis of heuris-
tics for the BPP, first by Johnson [11], then by Lueker [13]; see Coffman and
Lueker [3] for a more detailed description. The Term (which was first introduced
by Lueker [13]) refers to the fact that for any dual feasible function u and for any
bin packing instance with item sizes x1 , . . . , xn , the vector (u(x1 ), . . . , u(xn )) is a
feasible solution for the dual of the corresponding fractional bin packing problem
(see [12]). By definition, convex combination and compositions of dual feasible
functions are dual feasible.
We show in this paper that dual feasible functions can be used for improving
lower bounds for the one-dimensional bin packing problem. This is based on the
following easy lemma.
Lower Bounds for Bin Packing Problems 259
1/2
x 0 1
k=1
1
y 0
1/3 2/3
x 0 1
k=2
y 0 1/2 1
y = u(k) (x)
Our third class of dual feasible functions has some similarities to some bounds
that were hand-tailored for the two-dimensional and three-dimensional BPP by
ε 1- ε
x 1
0
y 0 x 1
(ε)
y = U (x)
ε =1/3
y 0 1/3 2/3 1
x 0 1/4 1/2 3/4 1
ε =1/4
y 0 1/4 3/4 1
x 0 1/6 1/2 4/6 5/6 1
ε =1/6
y 0 1/6 4/6 5/6 1
ε =1/8
y 0 1/8 5/8 6/8 7/8 1
(ε)
y =φ (x)
Martello and Vigo [17], and Martello, Pisinger, and Vigo [14]. However, our
bounds are simpler and dominate theirs.
This third class also ignores items of size below a threshold value . For the
interval (, 12 ], these functions are constant, on ( 12 , 1] they have the form of stair
functions. Figure 3 shows that for small values of , the area of loss zones for φ()
exceeds the area of win zones by a clear margin. This contrasts to the behavior
of the functions u(k) and U () , where the win and loss areas have the same size.
P
Proof. Let S be a finite set of nonnegative real numbers, with x ≤ 1. Let
x∈S
S 0 := {x ∈ S | ≤ x ≤ 12 }. We distinguish two cases:
t
u
The easiest lower bound for the BPP is the total volume of all items (the size
of the container will be assumed to be 1), rounded up to the next integer. For a
normalized BPP instance I := (x1 , . . . , xn ), this bound can be formulated as
& n '
X
L1 (I) := xi . (8)
i=1
Martello and Toth showed that for their ILP formulation of the BPP, the bound
L1 dominates the LP relaxation, the surrogate relaxation, and the Lagrange
relaxation. (See [16], pp. 224.) According to their numerical experiments, L1
approximates the optimal value very well, as long as there are sufficiently many
items of small size, meaning that the remaining capacity of bins with big items
can be exploited. If this is not the case, then the ratio between L1 and the
optimal value can reach a worst case performance of r(L1 ) = 12 , as shown by the
class of examples with 2k items of size 12 + 2k
1
.
In the situation which is critical for L1 (“not enough small items to fill up
bins”), we can make use of the dual feasible functions U () from Theorem 2;
these functions neglect small items in favor of big ones. This yields the bound
L2 : For a BPP instance I, let
From Lemma 1, it follows immediately that L2 is a lower bound for the BPP.
The worst case performance is improved significantly:
Theorem 5 (Martello and Toth). r(L2 ) = 23 .
This bound of 23 is tight: consider the class of BPP instances with 6k items of
size 13 + 6k
1
.
There is little hope that a lower bound for the BPP that can be computed
in polynomial time can reach an absolute worst case performance above 23 . Oth-
erwise, the N P -hard problem Partition (see [9], p. 47) of deciding whether two
sets of items can be split into two sets of equal total size could be solved in
polynomial time.
L2 can be computed in time O(n log n). The computational effort is deter-
mined by sorting the items by their size, the rest can be performed in linear time
by using appropriate updates.
Lemma 2 (Martello and Toth). Consider a BPP instance I := (x1 , . . . , xn ).
If the sizes xi are sorted, then L2 (I) can be computed in time O(n).
Now we define for any k ∈ IN
(k)
L2 (I) := max1 L1 (u(k) ◦ U () (I)) (10)
∈[0, 2 ]
264 Sándor P. Fekete and Jörg Schepers
By Lemma 1, these are valid lower bounds. As for L2 , the time needed for
computing these bounds is dominated by sorting:
Lemma 3. Let I := (x1 , . . . , xn ) be an instance of the BPP. If the items xi are
(q)
given sorted by size, then L∗ (I) can be computed in time O(n) for any fixed
q ≥ 2.
d3xi − 1e 1
u(2) (xi ) = ≥ . (12)
2 2
For n ≥ 2m − 1, we get
& n '
(2)
X (2m − 1)
(2) (2)
L2 (I) ≥ L1 (u (I)) = u (xi ) ≥ = m. (13)
i=1
2
(2)
Hence, the lower bound L2 (I) yields the optimal value, leaving the case
n < 2m − 1. (14)
Lower Bounds for Bin Packing Problems 265
... ...
Fig. 4. Normal form of an optimal solution for a BPP instance with sizes xi >
1/3.
xm−1 + xm ≤ 1. (20)
266 Sándor P. Fekete and Jörg Schepers
1111
0000
0000
1111
0000
1111
*
2m-i -1
1111
0000
0000
1111
111
000
000
111
000
111
000
111
000
111
000
111
000
111
000
111
i *
000
111
i* i*+2 m
Fig. 5. Determining i∗ .
Using the assumptions (14) and (20), we show that there is an i∗ ∈ {2m −
n, . . . , n} with
Figure 5 shows the meaning of this statement: At least one of the upper items
cannot be combined with the lower item two bins to the left.
This is shown in the following way: If for all i∗ ∈ {2m − n, . . . , n}, we had
xi + x2m−i−1 ≤ 1, (22)
then all upper items could be moved two bins to the left, since the first two
items do not contain more than one item by (14). This would allow it to pack
item xm−1 with xm , saving a bin.
Now let := x2m−i∗ −1 . By (21), we have for all i ∈ {1, . . . , i∗ } that
hence
xi ≥ x2m−i∗ −1 = , (25)
and therefore
1
u(2) ◦ U () (xi ) ≥ u(2) (xi ) ≥ . (26)
2
Summarizing, we get
& i∗ 2m−i∗ '
(2)
X X−1
(2) () (2) ()
L2 (I) ≥ u ◦ U (xi ) + u ◦ U (xi ) (27)
i=1 i=i∗ +1
Lower Bounds for Bin Packing Problems 267
& i∗ 2m−i∗ '
X X−1 1
≥ 1+ (28)
i=1 i=i∗ +1
2
∗
(2m − 2i − 1)
= i∗ + = m. (29)
2
As we have stated above, we cannot hope to improve the worst case performance
of L2 . However, we can show that the asymptotic worst case performance is
(2)
improved by r∞ (L∗ ):
Theorem 7.
(2) 3
r∞ (L∗ ) = . (30)
4
Proof. Let I := (x1 , . . . , xn ) be a BPP instance. We start by showing
(2) 3
max{L2 (I), L2 (I)} ≥ opt(I) − 1. (31)
4
(2)
By Theorem 6, all items with xi > 13 fit into m ≤ L2 (I) bins. Let these bins
be indexed by 1, . . . , m. Using the First Fit Decreasing heuristic, we add the
remaining items, i. e., sort these items by decreasing order and put each item
into the first bin with sufficient capacity; if necessary, use a new bin. Let q denote
the number of bins in this solution.
Suppose we need m bins for the big items and not more than m 3 items for
the rest, then Theorem 6 yields the first part of the statement:
4 4 (2)
opt(I) ≤ q ≤ m ≤ max{L2 (I), L2 (I)}. (32)
3 3
Therefore, assume
3q
>m (33)
4
for the rest of the proof.
Let α denote the largest free capacity of one of the bins 1 through m, i. e.,
the total size of all items in this bin is at least (1 − α).
No item that was placed in one of the bins m + 1 through q can fit into the
bin with free capacity α. This means that all these bins can only contain items
xi > α. On the other hand, the size of these items does not exceed 13 . This
implies that the bins m + 1 through q − 1 must contain at least three items of
size xi > α, while bin q holds at least one item xi > α.
268 Sándor P. Fekete and Jörg Schepers
Thus, we get
& n '
X
L2 (I) ≥ L1 (I) = xi ≥ d(1 − α)m + 3α(q − 1 − m) + αe (34)
i=1
= d(1 − 4α)m + 3α(q − 1) + αe .
Now consider two cases.
Case 1: Assume α > 14 . Since (1 − 4α) < 0, we can replace the term m in
(34) by 3q
4 > m:
3
L2 (I) > (1 − 4α) q + 3α(q − 1) + α (35)
4
3
= q − 2α (36)
4
3 3
≥ q − 1 ≥ opt(I) − 1. (37)
4 4
Case 2: For α ≤ 14 , neglect the term (1 − 4α)m ≥ 0 in (34):
L2 (I) ≥ d3α(q − 1) + αe (38)
3 3
≥ q − 1 ≥ opt(I) − 1. (39)
4 4
(2)
This proves r∞ (L∗ ) ≥ 34 . For showing that equality holds, consider the family of
bin packing instances with 3k items of size 1/4+δ with δ > 0. This needs at least
(2)
k bins. For sufficiently small δ, we have L2 = 0 and L2 (I) = L1 (I) ≤ 34 k+1. u t
4 Conclusions
We have presented a fast new method for generating lower bounds for the bin
packing problem. The underlying method of dual feasible functions can also be
used in the case of higher dimensions by combining our ideas the approach for
modeling higher-dimensional orthogonal packings that we developed for find-
ing exact solutions for the d-dimensional knapsack problem [4]. Details will be
contained in the forthcoming papers [5,6,7].
References
10. I. P. Gent. Heuristic solution of open bin packing problems. (To appear in Journal
of Heuristics). http://www.cs.strath.ac.uk/~apes/papers
11. D. S. Johnson. Near-optimal bin packing algorithms. PhD thesis, Massachusetts
Institute of Technology, Cambridge, Massachusetts, 1973.
12. N. Karmarkar and R. M. Karp. An efficient approximation scheme for the one-
dimensional bin packing problem. Proc. 23rd Annual Symp. Found. Comp. Sci.
(FOCS 1982), pages 312–320, 1982.
13. G. S. Lueker. Bin packing with items uniformly distributed over intervals [a, b].
Proc. 24th Annual Symp. Found. Comp. Sci. (FOCS 1983), pages 289–297, 1983.
14. S. Martello, D. Pisinger, and D. Vigo. The three-dimensional bin packing problem.
Technical Report DEIS-OR-97-6, 1997. http://www.deis.unibo.it
15. S. Martello and P. Toth. Lower bounds and reduction procedures for the bin pack-
ing problem. Discrete Applied Mathematics, 28:59–70, 1990.
16. S. Martello and P. Toth. Knapsack Problems. Wiley, New York, 1990.
17. S. Martello and D. Vigo. Exact solution of the two-dimensional finite bin packing
problem. Technical Report DEIS-OR-96-3, 1996. http://www. deis.unibo.it
18. J. Schepers. Exakte Algorithmen für Orthogonale Packungsprobleme. PhD thesis,
Mathematisches Institut, Universität zu Köln, 1997.
Solving Integer and Disjunctive Programs by
Lift and Project
1 Introduction
K0 ∪ K1 (1)
We shall denote
or, equivalently
^
{ x | Ax ≥ b, (di0 x ≥ gi0 ∨ di1 x ≥ gi1 ) } (5)
i=1,...,p
Ki0 = { x | Ax ≥ b, xi ≤ 0}
Ki1 = { x | Ax ≥ b, xi ≥ 1}
for (i = 1, . . . , p). Then with this definition of Ki0 and Ki1 (5) is the usual way
of expressing the feasible set of the mixed 0–1 program. Moreover, if for some i
we choose
The next theorem, due to Balas, provides a representation of the set P in (1).
This representation will be used in the next section as the basis for disjunctive
cutting plane generation.
Theorem 1 (Balas [4]). Assume that the sets K0 and K1 are nonempty. Then
(α, β) ∈ P ∗ if and only if there exists u0 , v 0 , u1 , v 1 such that
uj A +v j dj = α (j = 0, 1)
uj b +v j gj ≥ β (j = 0, 1) (7)
uj , v j ≥ 0 (j = 0, 1)
274 Sebastián Ceria and Gábor Pataki
In fact, this result holds under a more general regularity condition, than the
nonemptyness of all Ki ’s (assuming nonemptyness, the result follows by simply
using Farkas’ lemma).
The lift-and-project method is based on the generation of disjunctive or lift-
and-project cuts, αx ≥ β which are valid for P , and violated by the current
LP-solution x̄, i.e. αx̄ < β. Theorem 7 provides a way of generating disjunctive
cuts for a general disjunctive program through the solution of a linear program,
called the cut-generation LP, of the form
max β − αx̄
s.t. (α, β) ∈ P ∗ (8)
(α, β) ∈ S
where S is a normalization set ensuring boundedness of the CLP.
There are several possible choices for the set S (see [13] for a complete de-
scription). In our current implementation we use the following normalization
constraint:
1
X
S = {(u0 , v 0 , u1 , v 1 ) : (uj + v j )T e ≤ 1}
j=0
2 Facial Disjunctions
Our purpose is to use disjunctive cuts for solving general disjunctive programs.
We will devote particular attention to a special class of facial disjunctive pro-
grams. A disjunctive set is called facial if the sets K0 and K1 are faces of K.
Some examples of facial and non-facial disjunctive programs include:
• Variable upper bound constraints: Suppose that we wish to model the
following situation: if an arc i in a network is installed, we can send up to ui
units of flow on it; if it is not installed, we can send none. If we denote by yi
the amount of flow on the arc, and xi is a 0–1 variable indicating whether
the arc is installed, or not, then clearly,
xi = 1 ∨ yi = 0
(9)
0 ≤ yi ≤ u
is a correct model.
• Linear complementarity: The linear complementarity problem (LCP for
short) is finding x, z satisfying
x, z ≥ 0
Mx + z = q (10)
xT z = 0
Clearly, (10) is a facial disjunctive program in CNF, with the disjunctions
being xi = 0 ∨ zi = 0.
Integer and Disjunctive Programming by Lift and Project 275
is valid for all the feasible solutions of the SPP, if R is a subset of any Ri .
However, if R is chosen as the intersection of Ri1 and Ri2 for two rows i1
and i2 , then the disjunction will perform particularly well as a branching
rule, when solving the SPP by branch-and-bound.
• Machine scheduling (see [6]): In the machine scheduling problem we
are given a number of operations {1, . . . , n} with processing times p1 , . . . , pn
that need to be performed on different items using a set of machines. The
objective is to minimize total completion time while satisfying precedence
constraints between operations and the condition that a machine can process
one operation at a time, and operations cannot be interrupted. The problem
can be formulated as
M in tn
tj − ti ≥ di , (i, j) ∈ Z
(11)
ti ≥ 0, i = {1, . . . , n}
tj − ti ≥ di ∨ ti − tj ≥ dj (i, j) ∈ W
where ti is the starting time of job i, Z is the set of pairs of operations
constrained by precedence relations and W is the set of pairs that use the
same machine and therefore cannot overlap.
This disjunctive program is NOT facial.
One of the most important theoretical properties of 0–1 disjunctive cuts is
the ease with which they can be lifted ([8,9]). For clarity, recall that
K = {x | Ax ≥ b}
Kj = {x | x ∈ K, dj x ≥ gj } (j = 0, 1) (12)
P = cl conv (K0 ∪ K1 )
Let K 0 be a face of K, and
Kj0 = {x | x ∈ K 0 , dj x ≥ gj } (j = 0, 1)
(13)
P 0 = cl conv (K00 ∪ K10 )
Suppose that we are given a disjunctive cut (α0 , β 0 ) valid for P 0 and violated by
x̄ ∈ K 0 . Is it possible to quickly compute a cut (α, β), which is valid for P , and
violated by x̄ ?
276 Sebastián Ceria and Gábor Pataki
The answer is yes, if (α0 , β 0 ) is a cut obtained from a 0–1 disjunction ([8,9]),
and K 0 is obtained from K by setting several variables to their bounds. Moreover,
it is not only sufficient to solve the CLP with the constraints representing K 0
in place of K, its size can be reduced by removing those columns from A which
correspond to the variables at bounds. In practice these variables are the ones
fixed in branch-and-cut, plus the ones that happen to be at their bounds in the
optimal LP-solution at the current node. Cut lifting is vital for the viability of
the lift-and-project method within branch-and-cut; if the cut generation LP’s
are solved with putting all columns of A into the CLP, the time spent on cut
generation is an order of magnitude larger, while the cuts obtained are rarely
better ([9]). The main result of this section is :
Theorem 2. Let K 0 be a an arbitrary face of K and Kj0 and P 0 as above. Let
(α0 , β 0 ) ∈ (P 0 )∗ with the corresponding multipliers given. Then we can compute
a cut (α, β) that is valid for P and for all x ∈ K 0
αx − β = α0 x − β 0 (14)
Proof. Somewhat surprisingly, our proof is even simpler, than the original for
the 0–1 case. Let K 0 be represented as
K 0 = {x | A= x = b= , A+ x ≥ b+ }
α = u0= A= + u0+ A+ + v0 s
= u1= A= + u1+ A+ + v1 t
(15)
β ≤ u0= b= + u0+ b+ + v0 s0
β ≤ u1= b= + u1+ b+ + v1 t0
any given node of the tree, the LP-relaxation is always a system that arises from
the system defining K by imposing equality in some valid inequalities. In other
words, the LP-relaxation at any given node defines a face of the LP-relaxation at
the root. Therefore, if we also wish to generate disjunctice cuts, this can always
be done using the LP-relaxation at the current node of the branch-and-cut tree,
then lifting the resulting cut to be globally valid. Notice, that for this scheme to
work, we only require the disjunctions for branching to be facial; the disjunctions
for cutting can be arbitrary.
3 Computations
3.1 The Implementation
The computational issues that need to be addressed when generating lift-and-
project cuts were thoroughly studied in [9]. Their experience can be briefly sum-
marized as:
• It is better to generate cuts
• in large rounds, before adding them to the linear programming relax-
ation, and reoptimizing.
• in the space of the variables which are strictly between their upper and
lower bounds, then to lift the cut to the full space.
• The distance of the current fractional point from the cut hyperplane is a
reliable measure of cut quality.
We adopted most of their choices, and based on our own experience, we added
several new features to our code, namely,
• In every round of cutting, we choose 50, (or less, if fewer are available) 0–1
disjunctions for cut generation. In an analogous way, we also choose a set of
general integer disjunctions of the form xi ≤ bx̄i c ∨ xi ≥ dx̄i e.
• The 50 0–1 disjunctions are chosen from a candidate set of 150. It is rather
conceivable that a disjunction will give rise to a strong cut if and only if
it would perform well when used for branching; i.e. the improvement of
the objective function on the two branches would be substantial. Therefore,
we use “branching” information to choose the variables from the candidate
set. In the current implementation we used the strongbranch routine of
CPLEX 5.0, which returns an estimate of the improvements on both gener-
ated branches. Our strategy is testing the 150 candidate variables (or fewer
if less are available) then picking those 50 which maximize some function
(currently we use the harmonic mean) of the two estimates. We call this
procedure the strong choice of cutting variables. We then repeat this process
for the general integer variables, if any. We are in the process of testing other
rules commonly used for selecting branching variables, like pseudo-costs and
integer estimates.
• We pay particular attention to the accuracy of the cuts. If the cuts we derive
are numerically unstable we resolve the CLP with a better accuracy.
278 Sebastián Ceria and Gábor Pataki
• We use a normalization constraint (the set S in CLP) that bounds the sum
of all multipliers (ui , v i ).
• In joint work with Avella and Rossi [1], we have chosen to generate more
than one cut from one disjunction using a simple heuristic. After solving
the CLP, we fix a nonzero multiplier to zero, then resolve. We repeat this
procedure several times always checking whether the consecutive cuts are
close to being parallel; if so, one of them is discarded.
many special purpose cuts, and noswot is highly symmetric. However, disjunctive
cuts perform strikingly well on the last two instances.
Until now, set1ch could be solved to optimality only by using special pur-
pose path-inequalities [26]. After exhausting the memory limits, CPLEX could
only find a solution within 15.86 % of the optimum. We ran our cutting plane
generator for 10 rounds, raising the lower bound to within 1.4 % of the integer
optimum. CPLEX was then able to solve the strengthened formulation in 28
seconds by enumerating 474 nodes. It is important to note that no numerical
difficulties were encountered during the cutting phase, (even if we generated 15
rounds, although this proved unnecessary) and the found optimal solution pre-
cisely agrees with the one reported in MIPLIB (the objective coefficients are
one-fourth integral).
The problem seymour is an extremely difficult setcovering instance; it was
donated to MIPLIB by Paul Seymour, and its purpose is to find a minimal
“irreducible configuration” in the proof of the four-colour conjecture. It has not
been solved to optimality. The value of the LP-relaxation is 403.84, and an integer
solution of 423.0 is known. The best previously known lower bound of 412.76
[2] was obtained by running CPLEX 4.0 on an HP SPP2000 with 16 processors,
each processor having 180 MHz frequency, and 720 Mflops peak performance, for
the total of approximately 58 hours and using approx. 1360 Mbytes of memory.
Due to the difficulty of the problem, we ran our cutting plane algorithm on
this problem with a rather generous setting. We generated 10 rounds of cuts, in
each round choosing the 50 cutting variables picked by our strong choice from
Integer and Disjunctive Programming by Lift and Project 281
among all fractional variables with the iteration limit set to 1000. The total time
spent on generating the 10 rounds was approximately 10.5 hours, and the lower
bound was raised to 413.16. The memory useage was below 50Mbytes. Running
CPLEX 4.0 on the strengthened formulation for approximately 10 more hours
raised the lower bound to 414.20 - a bound that currently seems unattainable
without using our cuts.
References
1. P. Avella and F. Rossi. Private communication.
2. G. Astfalk and R. Bixby. Private communication.
3. E. Balas. Intersection cuts – A new type of cutting planes for integer programming.
Operations Research, 19:19–39, 1971.
4. E. Balas. Disjunctive programming: Facets of the convex hull of feasible points.
Technical Report No. 348, GSIA, Carnegie Mellon University, 1974.
5. E. Balas. Disjunctive programming. Annals of Discrete Mathematics, 5:3–51, 1979.
6. E. Balas. Disjunctive programming and a hierarchy of relaxations for discrete op-
timization problems. SIAM J. Alg. Disc. Meth., 6:466–486, 1985.
7. E. Balas. Enhancements of lift-and-project. Technical Report, GSIA, Carnegie Mel-
lon University, 1997.
8. E. Balas, S. Ceria, and G. Cornuéjols. A lift-and-project cutting plane algorithm
for mixed 0–1 programs. Mathematical Programming, 58:295–324, 1993.
9. E. Balas, S. Ceria, and G. Cornuéjols. Mixed 0–1 Programming by lift-ad-project
in a branch-and-cut framework. Management Science, 42:1229–1246, 1996.
10. E. Balas, S. Ceria, G. Cornuéjols, and G. Pataki. Polyhedral Methods for the
Maximum Clique Problem. AMS, DIMACS Series on Discrete Mathematics and
Computer Science, 26:11–28, 1996.
11. N. Beaumont. An algorithm for disjunctive programs. European Journal of Oper-
ational Research, 48:362–371, 1990.
12. C. Blair. Two rules for deducing valid inequalities for 0–1 problems. SIAM Journal
of Applied Mathematics, 31:614–617, 1976.
13. S. Ceria and J. Soares. Disjunctive cuts for mixed 0–1 programming: Duality and
lifting. Working paper, Graduate School of Business, Columbia University, 1997.
14. S. Ceria and J. Soares. Convex programming for disjunctive optimization. Working
paper, Graduate School of Business, Columbia University, 1997.
15. J. Hooker. Logic based methods for optimization. In A. Borning, editor, Principles
and practice of constraint programming, LNCS, Vol. 626, pages 184–200, 1992.
16. J. Hooker, M. Osorio. Mixed logical/linear programming. Technical report, GSIA,
Carnegie Mellon University, 1997.
17. J. Hooker, H. Yan, I. Grossman, and R. Raman. Logic cuts for processing networks
with fixed charges. Computers and Operations Research, 21:265–279, 1994.
18. R. Jeroslow. Representability in mixed-integer programming I: Characterization
results. Discrete Applied Mathematics, 17:223–243, 1987.
19. R. Jeroslow. Logic based decision support: Mixed-integer model formulation. An-
nals of Discrete Mathematics, 40, 1989.
20. L. Lovász and A. Schrijver. Cones of matrices and set-functions and 0–1 optimiza-
tion. SIAM J. Optimization, 1:166–190, 1991.
21. R. Meyer. Integer and mixed-integer programming models: General properties.
Journal of Optimization Theory and Applications, 16:191–206, 1975.
22. H. Sherali and W. Adams. A hierarchy of relaxations between the continuous and
convex hull representations for zero-one programming problems. SIAM J. Disc.
Math., 3:411–430, 1990.
23. H. Sherali and C. Shetty. Optimization with disjunctive constraints, In M. Beckman
and H. Kunzi, editors, Lecture notes in Economics and Mathematical Systems,
Vol. 181. Springer-Verlag, 1980.
24. J. Soares. Disjunctive Methods for Discrete Optimization Problems, PhD thesis,
Graduate School of Business, Columbia University, 1997. In preparation.
Integer and Disjunctive Programming by Lift and Project 283
1 Introduction
Goal programming [2] is a useful model when a decision maker wants to come “as
close as possible” to satisfying a number of incompatible goals. It is frequently
cited in introductory textbooks in management science and operations research.
This model usually assumes that the variables are continuous but, of course, it
can also arise when the decision variables must be 0,1 valued. As an example,
consider the following market-sharing problem proposed by Williams [18]: A
large company has two divisions D1 and D2 . The company supplies retailers
with several products. The goal is to allocate each retailer to either division D1
or division D2 so that D1 controls 40% of the company’s market for each product
and D2 the remaining 60% or, if such a perfect 40/60 split is not possible for
all the products, to minimize the sum of percentage deviations from the 40/60
split. This problem can be modeled as the following integer program (IP):
?
This work was supported in part by NSF grant DMI-9424348.
??
Part of the work was done while this author was affiliated with Carnegie Mellon
University.
Pm
Min |si |
Pn i=1
s.t. j=1 aij xj + si = bi i = 1, ..., m
xj ∈ {0, 1} for j = 1, ..., n
si free for i = 1, ..., m.
where n is the number of retailers, m is the number of products, aij is the demand
of retailer i for product j, and the right hand side vector bi is determined from
the desired market split among the two divisions D1 and D2 . Note that the
objective function of IP is not linear but it is straightforward to linearize it.
This integer program also models the following basic Feasibility Problem (FP)
in geometry:
Feasibility Problem: Given m hyperplanes in <n , does there exist a point
n
x ∈ {0, 1} which lies on the intersection of these m hyperplanes?
If the optimum solution to IP is 0, the answer to FP is “yes”, else the answer
to FP is “no”. Clearly, FP is NP-complete since for m = 1, FP is the subset-
sum problem which is known to be NP-complete [6]. Problems of this form can
be very difficult for existing IP solvers even for a relatively small number n of
retailers and number m of products (e.g. n = 50, m = 6, and uniform integer
demand between 0 and 99 for each product and retailer). More generally, with
this choice of aij , asking for a 50/50 split and setting n = 10(m − 1) produces a
class of hard instances of 0–1 programs for existing IP solvers.
In this paper, we consider instances from the above class generated as follows:
aij P uniform integer between 0 and 99 (= D − 1), n = P 10(m − 1) and bi =
b 12 nj=1 aij c or, more generally, in the range b 12 (−D + nj=1 aij )c to b 12 (−D +
Pn
j=1 aij )c + D − 1.
case, the solution to IP is strictly greater than 0. Instances with 40-50 variables
take several weeks before running to completion.
Note: The problem class IP is related to the knapsack problems considered by
Chvátal [3]. It is shown in [3] that these knapsack problems are hard to solve
using branch-and-bound algorithms. However, the coefficients of the knapsack
n
constraint are required to be very large (U [1, 10 2 ]). For the instances in the
class IP that we consider, the coefficients aij are relatively small (U [0, 99]). By
combining the constraints of IP with appropriate multipliers (e.g. multiplying
constraint i by (nD)i−1 ) and obtaining a surrogate constraint, we get an equiva-
lent problem by choosing D large enough, say D = 100 in our case. The resulting
class of knapsack instances is similar to that considered in [3].
Using the surrogate constraint approach described above, we get a 0–1 knap-
sack problem which is equivalent to the original problem. Clearly, this technique
is suitable for problems with only a few constraints. Dynamic programming
algorithms can be used to solve this knapsack problem. Here, we use an imple-
mentation due to Martello and Toth [13] pages 108–109. The complexity of the
algorithm is O(min(2n+1 , nc)) where c is the right-hand-side of the knapsack
A Class of Hard Small 0–1 Programs 287
constraint. For the instances of size 3 × 20 and 4 × 30, we used the multiplier
(nD)i−1 with D = 100 for constraint i to obtain the surrogate constraint. For
the larger instances, we faced space problems: We tried using smaller multipliers
0 0
(e.g. (nD )i−1 with D = 20) but then the one-to-one correspondence between
solutions of the original problem and that of the surrogate constraint is lost. So
one has to investigate all the solutions to the surrogate constraint. Unfortunately,
this requires that we store all the states of the dynamic program (the worst case
bound for the number of states is 2n ). Hence, even when we decreased the multi-
pliers, we faced space problems. See Table 2. We note that there are other more
sophisticated dynamic programming based procedures [14] which could be used
here. Hybrid techniques which use, for example, dynamic programming within
branch-and-bound are also available [13].
For the basis reduction approach, we report results obtained using an imple-
mentation of the generalized basis reduction by Xin Wang [16][17]. It uses the
ideas from Lenstra [11], Lovász and Scarf [12] and Cook, Rutherford, Scarf and
Shallcross [4]. We consider the feasibility question FP here. Given the polytope
P = {0 ≤ x ≤ 1 : Ax = b}, the basis reduction algorithm either finds a 0,1
point in P or generates a direction d in which P is “flat”. That is, max{dx − dy :
x, y ∈ P } is small. Without loss of generality, assume d has integer coordinates.
For each integer t such that dmin{dx : x ∈ P }e ≤ t ≤ bmax{dx : x ∈ P }c the
feasibility question is recursively asked for P ∩ {x : dx = t}. The dimension of
each of the polytopes P ∩ {x : dx = t} is less than the dimension of P . Thus,
applying the procedure to each polytope, a search tree is built which is at most
n deep. A direction d in which the polytope is “flat” is found using a generalized
basis reduction procedure [12][4].
S = {x ∈ {0, 1}n : Ax = b}
where δ ∈ Z+ m
. GP is interesting because (i) In general, GP is easier to solve
than IP [15] and (ii) Every solution of FP satisfies GP. The feasible solutions to
GP can be represented as s-t paths in a directed acyclic layered network G. The
digraph G has a layer corresponding to each variable xj , j ∈ N , a source node s
A Class of Hard Small 0–1 Programs 289
and a sink node t. The layer corresponding to variable xj has δ1 ×δ2 ...×δm nodes.
Node j k where k = (k1 , ..., km ), ki = 0, . . . , δi −1 for i = 1, . . . , m, can be reached
from the source node s if variables x1 , x2 , ..., xj can be assigned values 0 or 1 such
Pj
that `=1 ai` x` ≡ ki (mod δi ), i = 1, 2, ..., m. When this is the case, node j k has
0
two outgoing arcs (j k , (j +1)k ) and (j k , (j +1)k ), where ki0 ≡ ki +ai,j+1 (mod δi ),
corresponding to setting variable xj+1 to 0 or to 1. The only arc to t is from
node nb (mod δ) . So, the digraph G has N = 2 + n × δ1 ... × δm nodes and at
most twice as many arcs.
Example 2: Consider the set
S = {x ∈ {0, 1}4 : 3x1 + 2x2 + 3x3 + 4x4 = 5
6x1 + 7x2 + 3x3 + 3x4 = 10}
Corresponding to the choice δi = 2, i = 1, 2, we have the following group
relaxation
S22 = {x ∈ {0, 1}4 : 1x1 + 0x2 + 1x3 + 0x4 ≡ 1 (mod 2)
0x1 + 1x2 + 1x3 + 1x4 ≡ 0 (mod 2)}
Figure 1 gives the layered digraph G for this relaxation.
0 0 0 0
s
00 00 u 00 u u
1 u2 2 3 3 4 4 400
u1 0 0
01 01 u3 u3 01 01
1 2 3 4
0 0 0
10 10 u3 10 u4 10
1 u2 2 3 4
u4
t
0 0
11 11 11 11
1 2 3 4
Every s-t path in G represents a feasible 0–1 solution to S22 . What is more
important is that every feasible solution to FP is also a s-t path in G. But this
relationship is not reversible. That is, an s-t path in G may not be feasible for IP.
Also, G may contain several arcs which do not belong to any s-t path. Such arcs
can be easily identified and discarded as follows: Among the outgoing arcs from
nodes in layer n − 1, we only keep those arcs which reach the node nb (mod δ)
and delete all other arcs. This may introduce paths which terminate at layer
n − 1. Hence, going through the nodes in layer n − 2, we discard all outgoing
arcs on paths which terminate at layer n − 1, and so on. It can be easily seen
that performing a “backward sweep” in G in this manner, in time O(N ), we
0
get a new graph G which consists of only the arcs in solutions to the group
0
relaxation. For the graph G in Figure 1, the graph G is shown in Figure 2.
290 Gérard Cornuéjols and Milind Dawande
0 0
s
00 u2 00 u 00 00
1 2 3 3 4
u1
01 01 u3 01 01
1 2 3 4
0 0 0
10 10 10 10
1 u2 2 3 4
u4
t
0
11 11 11 11
1 2 3 4
0
Fig. 2. The solution digraph, G , for Example 2.
3. Let k = 2p , i = 1 and j = k.
do while ((i ≤ k) OR (j ≥ 1)) {
If (SS 1 [i] + SS 2 [j] = b) then quit. (Answer to SSFP is “yes”)
else if (SS 1 [i] + SS 2 [j] < b) then set i = i + 1
else set j = j − 1 }.
4. Answer to SSFP is “No”.
The complexity of this procedure is dominated by the sorting step and there-
n
fore it is O(n2 2 ). This procedure can be extended to answer FP as follows: For
i = 1, ..., m, multiply the ith constraint by (nD)i−1 and add all the constraints
to obtain a single surrogate constraint
X
n X
m X
m
(nD)i−1 aij xj = (nD)i−1 bi
j=1 i=1 i=1
P P Pm
Let a = ( m i=1 (nD)
i−1
ai1 , ...., mi=1 (nD)
i−1
ain ), b = i=1 (nD)
i−1
bi . Call
SSP(n,a,b).
Note: As for dynamic programming, this technique is suitable only for problems
with a few constraints. If (nD)m−1 is too large, a smaller number can be used
but then the one-to-one correspondence between the solutions of FP and the
solutions of the surrogate constraint is lost. In this case note that, if for some
i and j we have SS 1 [i] + SS 2 [j] = b, the corresponding 0–1 solution may not
satisfy FP. So, in order to solve FP, we need to find all the pairs i, j such that
SS 1 [i] + SS 2 [j] = b.
4 Conclusions
In this paper, we consider a class of 0,1 programs with n variables, where n is a
multiple of 10. As noted in the previous section, although the group relaxation is
able to solve problem instances with up to 50 variables, its running time increases
rapidly.
√ Itsnspace complexity and expected time complexity can be estimated to
be O( n2 2 ). It is an open question to find an algorithm with expected time
292 Gérard Cornuéjols and Milind Dawande
n
complexity better than O(2 2 ). Our computational experience indicates that the
standard approaches to integer programming are not well suited for this class
of problems. As such, we would like to present these small-sized 0–1 integer
programs as a challenge for the research community and we hope that they may
lead to new algorithmic ideas.
References
1. E. Balas, S. Ceria, and G. Cornuéjols. Mixed 0–1 programming by lift-and-project
in a branch-and-cut framework. Management Science, 42:1229–1246, 1996.
2. A. Charnes and W. W. Cooper. Management Models and Industrial Applications
of Linear Programming. Wiley, New York, 1961.
3. V. Chvátal. Hard knapsack problems. Operations Research, 28:1402–1411, 1980.
4. W. Cook, T. Rutherford, H. E. Scarf, and D. Shallcross. An implementation of the
generalized basis reduction algorithm for integer programming. ORSA Journal of
Computing, 3:206–212, 1993.
5. H. P. Crowder and E. L. Johnson. Use of cyclic group methods in branch-and-
bound. In T. C. Hu and S. M. Robinson, editors, Mathematical Programming,
pages 213–216. Academic Press, 1973.
A Class of Hard Small 0–1 Programs 293
Lisa Fleischer
1 Introduction
A minimum cut of a graph is a non-empty, proper subset of the vertices such
that the sum of the weights of the edges with only one endpoint in the set is
minimized. An undirected graph on n vertices can contain up to n2 minimum
cuts [7,4]. For many applications, it is useful to know many, or all minimum cuts
of a graph, for instance, in separation algorithms for cutting plane approaches
to solving integer programs [5,8,2], and in solving network augmentation and
reliability problems [3]. Many other applications of minimum cuts are described
in [19,1].
In 1976, Dinits, Karzanov, and Lomonosov [7] published a description of a
very simple data structure called a cactus that represents all minimum cuts of
an undirected graph in linear space. This is notable considering the number of
possible minimum cuts in a graph, and the space needed to store one minimum
cut. Ten years later, Karzanov and Timofeev [16] outlined the first algorithm
to build such a structure for an unweighted graph. Although their outline lacks
some important details, it does provide a framework for constructing correct
algorithms [20]. In addition, it can be extended to weighted graphs.
?
The full paper is available at http://www.ieor.columbia.edu/∼lisa/papers.html.
This work supported in part by ONR through an NDSEG fellowship, by AASERT
through grant N00014-95-1-0985, by an American Association of University Women
Educational Foundation Selected Professions Fellowship, by the NSF PYI award of
Éva Tardos, and by NSF through grant DMS 9505155.
The earliest algorithm for finding all minimum cuts in a graph uses maximum
flows to compute minimum (s, t)-cuts for all pairs of vertices (s, t). Gomory
and Hu [12] show how to do this with only n (s, t)-flow computations. The
fastest known deterministic maximum flow algorithm, designed by Goldberg
and Tarjan [11], runs in O(nm log(n2 /m)) time. Hao and Orlin [13] show how
a minimum cut can be computed in the same asymptotic time as one run of
the Goldberg-Tarjan algorithm. Using ideas of Picard and Queyranne [18], the
Hao-Orlin algorithm can be easily modified to produce all minimum cuts. Karger
and Stein [15] describe a randomized algorithm that finds all minimum cuts in
O(n2 log3 n) time. Recently, Karger has devised a new, randomized algorithm
that finds all minimum cuts in O(n2 log n) time.
The Karzanov-Timofeev outline breaks neatly into two parts: generating a
sequence of all minimum cuts, and constructing the cactus from this sequence.
This two-phase approach applies to both unweighted and weighted graphs. It is
known that the second phase can be performed in O(n2 ) time for both weighted
and unweighted graphs [16,17,20]. The bottleneck for the weighted case is the
first phase. Thus the efficiency of an algorithm to build a cactus tree depends
on the efficiency of the algorithm used to generate an appropriate sequence of
all minimum cuts of an undirected graph. The Karzanov-Timofeev framework
requires a sequence of all minimum cuts found by generating all (s, t) minimum
cuts for a given s and a specific sequence of t’s. The Hao-Orlin algorithm also
generates minimum cuts by finding all (s, t) minimum cuts for a given s and a
sequence of t’s. However, the order of the t’s cannot be predetermined in the
Hao-Orlin algorithm, and it may not be an appropriate order for the Karzanov-
Timofeev framework.
All minimum cuts, produced by any algorithm, can be sequenced appro-
priately for constructing a cactus tree in O(n3 ) time. This is not hard to do
considering there are at most n2 minimum cuts, and each can be stored in
O(n) space. The main result of this paper is an algorithm that constructs an
appropriate sequence of minimum cuts within the same time as the asymptot-
ically fastest, deterministic algorithm that finds all minimum cuts in weighted
graphs, improving the deterministic time to construct the cactus in graphs with
n vertices and m edges from O(n3 ) to O(nm log(n2 /m)).
Why build a cactus tree? Any algorithm that is capable of computing all
minimum cuts of a graph implicitly produces a data structure that represents
all the cuts. For instance, Karger’s randomized algorithm builds a data struc-
ture that represents all minimum cuts in O(k + n log n) space, where k is the
number of minimum cuts. The cactus tree is special because it is simple. The
size of a cactus tree is linear in the number of vertices in the original graph,
and any cut can be retrieved in time linearly proportional to the size of the cut.
In addition, the cactus displays explicitly all nesting and intersection relations
among minimum cuts. This, as well as the compactness of a cactus, is unique
among representations of minimum cuts of weighted graphs.
Karzanov and Timofeev [16] propose a method of constructing a cactus tree
using the chain representation of minimum cuts (described in Section 2.4). Their
296 Lisa Fleischer
algorithm is lacking details, some of which are provided by Naor and Vazirani [17]
in a paper that describes a parallel cactus algorithm. Both of these algorithms
are not correct since they construct cacti that may not contain all minimum cuts
of the original graph. De Vitis [20] provides a complete and correct description
of an algorithm to construct a cactus, based on the ideas in [16] and [17]. Karger
and Stein [15] give a randomized algorithm for constructing the chain represen-
tation in O(n2 log3 n) time. Benczúr [3] outlines another approach to build a
cactus without using the chain representation. However, it is not correct since
it constructs cacti that may not contain all minimum cuts of the original graph.
Gabow [9,10] describes a linear-sized representation of minimum cuts of an un-
weighted graph and gives an O(m + λ2 n log(n/λ)) time algorithm to construct
this representation, where λ is the number of edges in the minimum cut.
This paper describes how to modify the output of the Hao-Orlin algorithm
and rearrange the minimum cuts into an order suitable for a cactus algorithm
based on Karzanov-Timofeev framework. The algorithm presented here runs in
O(nm + n2 log n) time—at least as fast as the Hao-Orlin algorithm. Since an
algorithm based on the Karzanov-Timofeev outline requires O(n2 ) time, plus
the time to find and sort all minimum cuts, this leads to the fastest known
deterministic algorithm to construct a cactus of a weighted graph, and the fastest
algorithm for sparse graphs.
2 Preliminaries
We assume the reader is familiar with standard graph terminology as found in [6].
A graph G = (V, E) is defined by a set of vertices V , with |V | = n and a set
of edges E ⊆ V xV , with |E| = m. A weighted graph also has a weight function
on the edges, w : E → <. For the purposes of this paper, we assume w is non-
negative. A cut in a graph is a non-empty, proper subset of the vertices. The
weight of a cut C is the sum of weights of edges with exactly one endpoint in the
set. The weight of edges with one endpoint in each of two disjoint vertex sets S
and T is denoted as w(S, T ). A minimum cut is a cut C with w(C, C) ≤ w(C 0 , C 0 )
for all cuts C 0 . An (S, T )-cut is a cut that contains S and is disjoint from T . A
(S, T ) minimum cut is a minimum cut that separates S and T . Note that if the
value of the minimum (S, T )-cut is greater than the value of the minimum cut,
there are no (S, T ) minimum cuts.
Two cuts (S1 , S1 ) and (S2 , S2 ) that meet the conditions of the above lemma are
called crossing cuts. A fundamental lemma further explaining the structure of
minimum cuts in a graph is the Circular Partition Lemma. This lemma is proven
by Bixby [4] and Dinits, et al. [7], with alternate proofs in [3,20].
The proof of this lemma is long and technical, and it is omitted here. The
proof uses Lemma 1 to argue that any minimum cut not represented in a circular
partition must be contained in one of the sets of the partition.
It may be that G has more than one circular partition. Let P := {V1 , . . . , Vk }
and Q := {U1 , . . . , Ul } be two distinct circular partitions of V . These partitions
are compatible if there is a unique i and j such that Ur ⊂ Vi for all r 6= j and
Vs ⊂ Uj for all s 6= i. Proofs of the next two statements are in the full paper.
A set of sets is called laminar if every pair sets is either disjoint or one set is
contained in the other. Laminar sets that do not include the empty set can be
represented by a tree where the root node corresponds to the entire underlying
set, and the leaves correspond to the sets that contain no other sets. The parent
of a set A is the smallest set properly containing A. Since the total number of
nodes in a tree with n leaves is less than 2n, the size of the largest set of laminar
sets of n objects is at most 2n − 1.
5 6 7 1 19 17 11 13
1/2 16
20 18
8
4 10 12
2 1
16 11 9
13 14
3 2
1 17 14 8
4 3
12
20 19 18 15 6
5 7 10 15 9
As defined here, and in [7], a graph does not necessarily have a unique cactus.
For instance, a cycle on three nodes can also be represented by a cactus that
is a star: an empty node of degree three, and three nodes of degree one each
containing a distinct vertex. There are many rules that could make the definition
unique [17,20]. We will follow De Vitis [20] in the definition of a canonical cactus.
Chain and Cactus Representations of Minimum Cuts 299
Theorem 8 (De Vitis [20]). Every weighted graph has a unique canonical
cactus.
Karzanov and Timofeev [16] make an important observation about the struc-
ture of minimum cuts, which they use to build the cactus: if two vertices s and
t are adjacent in the graph G, then the minimum cuts that separate these ver-
tices are nested sets. This motivates assigning vertices of G an adjacency order
{v1 , . . . , vn } so that vi+1 is adjacent to a vertex in Vi := {v1 , . . . , vi }. Let Mi
be the set of minimum cuts that contain Vi but not vi+1 . We will refer to such
minimum cuts as (Vi , vi+1 ) minimum cuts. The following lemma summarizes the
observation of [16].
Lemma 9. If the vertices in G are adjacency ordered, then all cuts in Mi are
non-crossing.
This implies that the cuts in Mi form a nested chain and can be represented by
a path Pi of sets that partition V : let A1 ⊂ A2 ⊂ · · · ⊂ Al be the minimum cuts
separating Vi and vi+1 . The first set X1 of the path is A1 , and each additional
set Xr = Ar \Ar−1 , with the final set Xl+1 equal to V \Al . Each link of the
path represents the minimum cut Ar that would result if the path were broken
between sets Xr and Xr+1 .
Note that, for any ordering of vertices, the Mi form a partition of the min-
imum cuts of G: vi and vi+1 are the smallest, consecutively indexed pair of
vertices that are separated by a cut, if and only if the cut is in Mi . The set of
Pi for all 1 ≤ i < n is called the chain representation of minimum cuts. For this
reason, we will refer to these paths as chains.
300 Lisa Fleischer
Lemma 12. Let (u, w) be a cycle edge of H(Gi+1 ) that lies on cycle Y , and
let T1 , S
T2 , . . . , Tr be the circular partition represented by Y with Vi ⊂ T1 . Then
r
either l=2 Tl ⊂ Xj for some j, or there are indices a and b such that T2 = Xa ,
T3 = Xa+1 , . . . , Tr = Xb .
Chain and Cactus Representations of Minimum Cuts 301
Theorem 13. The canonical cactus of a graph can be constructed from the chain
representation of all minimum cuts of the graph in O(n2 ) time.
To find all minimum cuts, we make minor modifications to the minimum cut
algorithm of Hao and Orlin [13]. The Hao-Orlin algorithm is based on Goldberg
and Tarjan’s preflow-push algorithm for finding a maximum flow [11]. It starts
by designating a source vertex, u1 , assigning it a label of n, and labeling all other
vertices 0. For the first iteration, it selects a sink vertex, u2 , and sends as much
flow as possible from the source to the sink (using the weights as arc capacities),
increasing the labels on some of the vertices in the process. The algorithm then
repeats this procedure n − 2 times, starting each time by contracting the current
sink into the source, and designating a node with the lowest label as the new
sink. The overall minimum cut is the minimum cut found in the iteration with
the smallest maximum flow value, where the value of a flow is the amount of
flow that enters the sink.
To find all minimum cuts with this algorithm, we use the following result.
Define a closure of a set A of vertices in a directed graph to be the smallest set
containing A that has no arcs leaving the set.
Let Ui be the set of vertices in the source at iteration i of the Hao-Orlin routine,
1 ≤ i ≤ n− 1. If a complete maximum flow is computed at iteration i, Lemma 14
implies that the set of (Ui , ui+1 ) minimum cuts equals the set of closures in the
residual graph of this flow. This representation can be made more compact by
contracting strongly connected components of the residual graph, creating a
directed, acyclic graph (DAG). We refer to the graph on the same vertex set,
but with the direction of all arcs reversed (so that they direct from Ui to ui+1 ),
as the DAG representation of (Ui , ui+1 ) minimum cuts.
The Hao-Orlin routine does not necessarily compute an entire maximum flow
at iteration i. Instead it computes a flow of value ≥ λ that obeys the capacity
constraint for each edge, but leaves excess flow at some nodes contained in a dor-
mant region that includes the source. Let Ri denote the vertices in the dormant
region at the end of the ith iteration of the Hao-Orlin algorithm. The following
302 Lisa Fleischer
lemma follows easily from the results in [13]. Together with the above observa-
tions, this implies that at the end of iteration i of the Hao-Orlin algorithm, we
can build a linear-sized DAG representation of all (Ui , ui+1 ) minimum cuts.
The second and more serious problem with the Hao-Orlin algorithm is that
the ordering of the vertices implied by the selection of sinks in the algorithm
may not be an adjacency ordering as required for the construction phase of the
Karzanov-Timofeev framework. This means that some of the DAGs may not
correspond to directed paths. We address this problem in the next section.
3 The Algorithm
In this section, we discuss how to transform the DAG representation of all min-
imum cuts into the chains that can be used to construct a cactus representation
of all minimum cuts. To do this, we use an intermediate structure called an
(S, T )-cactus.
3.1 (S,T)-Cacti
Each cycle in an (S, T )-cactus has two nodes that are adjacent to the rest of the
path, one on the source side, one on the sink side. The other nodes on the cycle
form two paths between these two end nodes. We will call these cycle-paths.
Thus each cycle in the (S, T )-cactus can be described by a source-side node, a
sink-side node, and two cycle-paths of nodes connecting them. The length of a
cycle-path refers to the number of nodes on the cycle-path. A zero length cycle-
path implies that it consists of just one arc joining the source-side node to the
sink-side node.
Without loss of generality, we assume that no cycle of an (S, T )-cacti has a
zero length cycle-path. Any cycle of an (S, T )-cactus that contains a zero length
cycle-path can be transformed into a path by deleting the arc in the zero length
cycle-path. This operation does not delete any (S, T )-cut represented by the
(S, T )-cactus.
Note that Lemma 9 implies that an (S, T )-cactus of a chain is a path without
cycles. A first step in building these chains needed for the cactus algorithm is
Chain and Cactus Representations of Minimum Cuts 303
the (Uj−1 , uj )-cacti, 1 < j ≤ n. Let Dj be the (Uj−1 , uj )-cactus for 1 < j ≤ n.
We start by fixing an adjacency ordering {v1 , . . . , vn } with v1 = u1 and let
σ : V → V be the permutation σ(i) = j if vi = uj .
The algorithm we present below builds each chain Pi , 1 < i ≤ n, one at
a time by reading cuts off of the Dj . The basic idea is to use the following
fact established below: If any two cuts from Dj are such that one is completely
contained within the other, then the index of the chain to which the first belongs
is no more than the index of the chain to which the second belongs. Thus, all
the minimum cuts belonging in Pi that are contained in one Dj are consecutive;
and, as we walk through the cuts from Uj−1 to uj in Dj , the index of the chain
to which a cut belongs is non-decreasing. The validity of these statements is
established in the next two subsections.
The Code
(s,t)-CactiToChains (v)
0. For i = 2 to n,
0. Pi = ∅.
0. For j = 2 to n − 1,
1. nij := the node in Dj that contains vi .
2. If nij is not the source node,
3. Identify the path of nodes from source to predecessor of nij in Dj .
4. If Pi = ∅, let the source node of Dj be the source node of Pi .
5. Else, add vertices in the source but not in Pi to the last node of Pi .
6. Append the remaining path to Pi , skipping empty nodes;
7. and, in Dj , contract this path into the source node.
8. If nij is on a cycle in Dj ,
9. Append to Pi the chain of the cycle that does not contain nij .
10. Contract nij into the source node of Dj .
11. Add a component to Pi that contains only uj .
12. If Pi 6= ∅, add the vertices not in Pi to the last node of Pi .
source sink
Fig. 2. The (s, t)-cactus Dj , updated for iteration i. The black nodes represent
the possible locations of nij .
Lemma 20. At the end of phase i, all vertices vk , k ≤ i are contained in the
source node of every remaining Dj .
Proof. Proof is by induction. At start, all sources contain vertex v1 = u1 . Assume
vertices vk , k < i are contained in the sources of the remaining Dj at the start
of phase i. For each j, if nij is not the source node, then nij is contracted into
the source in Step 10. t
u
Lemma 21. In phase i, for all j, nij either lies on the path in Dj from the
source to the first node of the cycle closest to the source, or is one of the two
nodes on the cycle adjacent to this path, as in Figure 2.
Proof. Figure 2 shows the possible locations of nij in Dj as specified in the
lemma. We show that if there is a cycle between nij and the source Sj , then we
can find crossing cuts in Mi , contradicting our choice of the ordering of the vi .
If nij is not in one of the locations stipulated in the lemma, then some cycle
contains at least one node that either precedes, or is unrelated to nij , on both
of its cycle-paths. (Recall that we are assuming that every cycle-path has length
greater than zero.) Thus there are two crossing minimum cuts that separate the
source of Dj from vi . Lemma 20 implies that Vi−1 is contained in the source,
and hence these are cuts in Mi , contradicting Lemma 1. t
u
Lemma 22. The algorithm constructs chains that contain every vertex exactly
once.
Proof. By construction, each Pi is a chain that contains every vertex. Suppose,
in iteration j, we are about to add a vertex ur to the chain Pi . If ur is in the
source component of Dj , we explicitly check before we add ur . Otherwise, r ≥ j
and there is some cut that separates vertices in Uj−1 and Vi−1 from vertices ur
and uj . All cuts added to Pi before this iteration come from a Dk with k < j, and
thus contain a strict subset of vertices in Uj−1 . By Lemma 9, the cuts separating
Vi−1 from vi are nested, and so none of the previous cuts contain ur in the source
side. Thus we add ur to Pi exactly once. t
u
Lemma 23. Each complete node added to Pi represents the same cut that is
represented by the node in the current Dj .
306 Lisa Fleischer
Proof. Proof is by induction on j. The first node added to Pi is the source node
of some Dj and clearly both these cuts are the same. Now assume that up until
this last node, all previous nodes added to Pi represented the corresponding cut
of the relevant Dk , k ≤ j. Adding the current node from Dj , we add or have
added in previous steps to Pi all the vertices that are in the source side of this
cut. We must argue that there are no additional vertices in any node preceding
this one in Pi . Recall that the cuts in Mi are nested. Thus all previous nodes
added to Pi represent cuts strictly contained in the current cut. Hence the node
added to Pi represents the same cut this node represents in the current Dj . u t
Lemma 24. Each complete node added to Pi , 1 < i ≤ n, except the last, repre-
sents a distinct cut in Mi .
Proof. Since each node added to Pi contains some vertex, and no vertex is re-
peated, each represents a distinct cut. When Pi is started, Lemma 20 implies
that all vertices in Vi−1 are contained in the source. Vertex vi is only added in
Step 11, when j = σ(i). This starts the final node of Pi since vi = uj is con-
tained in the source nodes of all Dk , k > j. Hence all previous nodes added to
Pi represent cuts that contain Vi−1 but not vi , and are thus cuts in Mi . t
u
Proof of Theorem 19. For a fixed cut C, let vi be the vertex of least index in C.
We show that this cut is represented in Pi . By the end of each phase k, k < i, the
algorithm contracts all nodes on the path from the source to the node containing
vk . Since Vi−1 is contained in the source side of C, this cut is not contracted
in Dj at the start of phase i. If the cut C is represented in Dj by one node, it
lies on the path of Dj from the expanded source to nij . Thus this node is added
to Pi in either Step 5 or 6. Otherwise the cut is through the same cycle that
contains nij . One node representing the cycle is the node immediately preceding
nij , currently source-side node of the cycle. The other node lies on the cycle-path
not containing nij . This cut is added to Pi in Step 9, when this latter node is
added. t
u
Proof. In Step 1, we use the labeling of the arcs to walk through Dj starting from
the source until we find nij . By Lemmas 20 and 21, all these cuts are (Vi−1 , vi )-
cuts, and hence the arcs are labeled with vi . The time to do this depends on the
out degree of each node encountered in Dj (at most 2), and is charged to the
minimum cuts we encounter. Note that if none of the arcs leaving the source is
labeled with the current chain index i, then nij must be the source node. This
takes care of Steps 1-3, and Step 8.
Let’s put aside Steps 5 and 12 and concentrate on the remaining steps. In
these, we are either adding nodes and vertices to Pi , or contracting nodes of Dj .
This takes constant time per addition or contraction of vertex. Since each vertex
is added at most once to Pi and contracted into the source of Dj at most once,
over the course of the algorithm these steps take no more than O(n2 ) time.
Finally, we consider Steps 5 and 12. In these, we need to determine the
difference of two sets that are increasing over the course of the algorithm. To do
this efficiently, we wait until the end of a phase to add the vertices that would
have been added at Step 5. At the end of each phase, we make a list of the
vertices that are missing from Pi . This can be done in linear time per phase by
maintaining an array in each phase that indicates if a vertex has been included
in Pi . For each of the vertices not in Pi , we then need to determine to which
node of Pi it should be added. The nodes that are possible candidates are the
incomplete nodes—any node created in Step 11.
Vertex v is added to the node containing uk in Step 5 if v is contained in the
source of Dj , j > k but is not contained in the source of Dk , for iterations k and
j where nik and nij are not source nodes, and k is the highest index with these
properties. Consider the Dj for which nij is not the source node. The sources
of these Dj are nested for any fixed i, by the observation that the cuts of Mi
are nested. That is, once a vertex is contained in one of them, it is contained
in the rest. During each phase, we maintain a array-list of the consecutive j for
which nij is not the source node. For each vertex, we can now binary search
through these nested sources using the arrays described before the statement
of the theorem to find the node of Pi that should contain v in O(log n) time.
The time spent on this step over the course of the algorithm is then bounded by
O(n2 log n): logarithmic time per vertex per phase.
Note that we have added vertices to the sources of these Dj since we started
the phase. All the vertices we added in Step 7 have also been added to Pi , so
they are not among the vertices we need to place at the end (i.e. the vertices not
in Pi ). We do need to worry about the vertices added in Step 10, however. To
avoid this problem, simply postpone the contractions described in Step 10 until
after we have assigned all vertices to a node of Pi . t
u
Corollary 26. The chain and the cactus representations of all minimum cuts
of a weighted graph can both be constructed in O(mn log n2 /m) time. t
u
308 Lisa Fleischer
Acknowledgement
I would like to thank Éva Tardos for assistance with the proof of Theorem 25.
References
17. D. Naor and V. V. Vazirani. Representing and enumerating edge connectivity cuts
in RNC. In Proc. Second Workshop on Algorithms and Data Structures, LNCS,
Vol. 519, pages 273–285. Springer-Verlag, 1991.
18. J.-C. Picard and M. Queyranne. On the structure of all minimum cuts in a network
and applications. Mathematical Programming Study, 13:8–16, 1980.
19. J.-C. Picard and M. Queyranne. Selected applications of minimum cuts in net-
works. INFOR, 20(4):394–422, 1982.
20. A. De Vitis. The cactus representation of all minimum cuts in a weighted graph.
Technical Report 454, IASI-CNR, 1997.
Simple Generalized Maximum Flow Algorithms
1 Introduction
In this paper we present new algorithms for the generalized maximum flow prob-
lem, also known as the generalized circulation problem. In the traditional max-
imum flow problem, the objective is to send as much flow through a network
from one distinguished node called the source to another called the sink, subject
to capacity and flow conservation constraints. In generalized networks, a fixed
percentage of the flow is lost when it is sent along arc. Specifically, each arc
(v, w) has an associated gain factor γ(v, w). When g(v, w) units of flow enter arc
(v, w) at node v then γ(v, w)g(v, w) arrive at w. The gains factors can represent
physical transformations due to evaporation, energy dissipation, breeding, theft,
or interest rates. They can also represent transformations from one commodity
to another as a result of manufacturing, blending, or currency exchange. They
?
Research supported in part by an NSF PYI award DMI-9157199, by NSF through
grant DMS 9505155, and by ONR through grant N00014-96-1-0050.
??
Research supported in part by ONR through grant AASERT N00014-97-1-0681.
may also represent arc failure probabilities. Many applications are described in
[1,3,5].
Since the generalized maximum flow problem is a special case of linear pro-
gramming, it can be solved using simplex, ellipsoid, or interior-point methods.
Many general purpose linear programming algorithms can be tailored for the
problem. The network simplex method can handle generalized flows. Kapoor
and Vaidya [16] showed how to speed up interior-point methods on network
flow problems by exploiting the structured sparsity in the underlying constraint
matrix. Murray [18] and Kamath and Palmon [15] designed different interior-
point algorithms for the problem. We note that these simplex and interior-point
methods can also solve the generalized minimum cost flow problem.
The first combinatorial algorithms for the generalized maximum flow prob-
lem were the augmenting path algorithms of Jewell [14] and Onaga [19] and
exponential-time variants. Truemper [22] observed that the problem is closely
related to the minimum cost flow problem, and that many of the early gen-
eralized maximum flow algorithms were, in fact, analogs of pseudo-polynomial
minimum cost flow algorithms. Goldberg, Plotkin and Tardos [7] designed the
first two combinatorial polynomial-time algorithms for the problem: Fat-Path
and MCF. The Fat-Path algorithm uses capacity-scaling and a subroutine that
cancels flow-generating cycles. The MCF algorithm performs minimum cost flow
computations. Radzik [20] modified the Fat-Path algorithm, by canceling only
flow-generating cycle with sufficiently large gains. Goldfarb and Jin [12] modified
the MCF algorithm by replacing the minimum cost flow subroutine with a sim-
pler computation. Goldfarb and Jin [11] also presented a dual simplex variant of
this algorithm. Recently, Goldfarb, Jin and Orlin [13] designed a new capacity-
scaling algorithm, motivated by the Fat-Path algorithm. Tseng and Bertsekas
[23] proposed an -relaxation method for solving the more general generalized
minimum cost flow problem with separable convex costs. However, their running
time may be exponential in the input size.
Researchers have also developed algorithms for the approximate generalized
maximum flow problem. Here, the objective is to find a ξ-optimal flow, i.e., a flow
that generates excess at the sink that is within a (1 - ξ) factor of the optimum,
where ξ is an input parameter. Cohen and Megiddo [2] showed that the approx-
imate generalized maximum flow problem can be solved in strongly polynomial-
time. Their algorithm uses a subroutine which tests feasibility of a linear system
with two variables per inequality. Radzik [20] observed that the Fat-Path algo-
rithm can be used to compute approximates flow faster than optimal flows. His
Fat-Path variant, that cancels only flow-generating cycles with large gain, is the
fastest algorithm for computing approximate flows. Subsequently, Radzik [21]
gave a new strongly polynomial-time analysis for canceling all flow-generating
cycles, implying that the original Fat-Path algorithm computes an approximate
flow in strongly polynomial-time. For the linear programming algorithms, it is
not known how to improve the worst-case complexity of the exact algorithms to
find approximate flows.
312 Éva Tardos and Kevin D. Wayne
2 Preliminaries
2.1 Generalized Networks
Since some of our algorithms are iterative and recursive, it is convenient to solve a
seemingly more general version of the problem which allows for multiple sources.
An instance of the generalized maximum flow problem is a generalized network
G = (V, E, t, u, γ, e), where V is an n-set of nodes, E is an m-set of directed
arcs, t ∈ V is a distinguished node called the sink, u : E → <≥0 is a capacity
function, γ : E → <>0 is a gain function, and e : V → <≥0 is an initial excess
function. A residual arc is an arc with positive capacity. A lossy network is a
generalized network in which no residual arc has gain factor exceeding one. We
Q simple directed paths and cycles. The gain of a path P is denoted
consider only
by γ(P ) = e∈P γ(e). The gain of a cycle is defined similarly. A flow-generating
cycle is a cycle whose gain is more than one.
For notational convenience we assume that G has no parallel arcs. Our algo-
rithms easily extend to allow for parallel arcs and the running times we present
remain valid. Without loss of generality, we assume the network is symmetric and
the gain function is antisymmetric. That is, for each arc (v, w) ∈ E there is an
arc (w, v) ∈ E (possibly with zero capacity) and γ(w, v) = 1/γ(v, w). We assume
the capacities and initial excesses are given as integers between 1 and B, and
the gains are given as ratios of integers which are between 1 and B. To simplify
the running times we assume B ≥ m, and use Õ(f ) to denote f logO(1) m.
g(v, w) = −γ(w, Pv)g(w, v) for all (v, w) ∈ E. The residual excess of g at node v is
eg (v) = e(v)− (v,w)∈E g(v, w), i.e., the initial excess minus the the net flow out
of v. If eg (v) is positive (negative) we say that g has residual excess (deficit) at
node v. A flow g is a pseudoflow that has no residual deficits; it may have residual
excesses. A proper flow is a flow which does not generate any additional residual
excess, except possibly at the sink. We note that a flow can be converted into a
proper flow, by removing flow on useless paths and cycles. For a flow g we denote
its value |g| = eg (t) to be the residual excess at the sink. Let OPT(G) denote the
maximum possible value of any flow in network G. A flow g is optimal in network
G if |g| = OPT(G) and ξ-optimal if |g| ≥ (1 − ξ)OPT(G). The (approximate)
generalized maximum flow problem is to find a (ξ-) optimal flow. We sometimes
omit the adjective generalized when its meaning is clear from context.
An augmenting path is a residual path from a node with residual excess to the
sink. A generalized augmenting path (GAP) is a residual flow-generating cycle,
together with a (possibly trivial) residual path from a node on this cycle to the
sink. By sending flow along augmenting paths or GAPs we increase the net flow
into the sink. The following theorem of Onaga [19] says that the nonexistence of
augmenting paths and GAPs implies that the flow is optimal.
314 Éva Tardos and Kevin D. Wayne
3 Gain-Scaling
In this section we present a rounding and scaling framework. Together, these
ideas provide a technique which can be viewed as a type of gain-scaling. By
rounding the gains, we can improve the complexity of many generalized flow
computations (e.g., canceling flow-generating cycles above). However, our ap-
proximation from rounding creates error. Using an iterative or recursive ap-
proach, we can gradually refine our approximation, until we obtain the desired
level of precision.
Theorem 4. Let G be a lossy network and let H be the rounded network con-
structed as above. If 0 < ξ < 1 then (1 − ξ)OPT(G) ≤ OPT(H) ≤ OPT(G).
Proof. Clearly OPT(H) ≤ OPT(G) since we only decrease the gain factors of
residual arcs. To prove the other inequality, we consider the path formulation
of the maximum flow problem in lossy networks. We include a variable xj for
each path Pj , representing the amount of flow sent along the path. Let x∗ be an
optimal path flow in G. Then x∗ is also a feasible path flow in H. From path Pj ,
γ(Pj )x∗j units of flow arrive at the sink in network G, while only γ̄(Pj )x∗j arrive
in network H. The theorem then follows, since for each path Pj ,
γ(Pj ) γ(Pj )
γ̄(Pj ) ≥ ≥ ≥ γ(Pj )(1 − ξ).
b |P |
1+ξ
Corollary 1. Let G be a lossy network and let H be the rounded network con-
structed as above. If 0 < ξ < 1 then the interpretation of a ξ 0 -optimal flow in H
is a ξ + ξ 0 -optimal flow in G.
316 Éva Tardos and Kevin D. Wayne
4 Truemper’s Algorithm
Truemper’s maximum flow based augmenting path algorithm is one of the sim-
plest algorithms for the generalized maximum flow problem. We apply our gain-
scaling techniques to Truemper’s algorithm, producing perhaps the cleanest and
simplest polynomial-time algorithms for the problem. In this section we first
review Truemper’s [22] algorithm. Our first variant runs Truemper’s algorithm
in a rounded network. It computes a ξ-optimal flow in polynomial-time, for
any constant ξ > 0. However, it requires exponential-time to compute optimal
flows, since we would need ξ to be very small. By incorporating error-scaling, we
show that a simple variant of Truemper’s algorithm computes an optimal flow
in polynomial-time.
A natural and intuitive algorithm for the maximum flow problem in lossy net-
works is to repeatedly send flow from excess nodes to the sink along highest-gain
(most-efficient) augmenting paths. Onaga observed that if the input network has
no residual flow-generating cycles, then the algorithm maintains this property.
Thus, we can find a highest-gain augmenting path using a single shortest path
computation with costs c(v, w) = − log γ(v, w). By maintaining canonical labels,
Simple Generalized Maximum Flow Algorithms 317
we can ensure that all relabeled gains are at most one, and a Dijkstra shortest
path computation suffices. Unit gain paths in the canonically relabeled network
correspond to highest gain paths in the original network. This is essentially
Onaga’s [19] algorithm. If the algorithm terminates, then the resulting flow is
optimal by Theorem 1. However, this algorithm may not terminate in finite time
if the capacities are irrational. Truemper’s algorithm [22] uses a (nongeneralized)
maximum flow computation to simultaneously augment flow along all highest-
gain augmenting paths. It is the generalized flow analog of Jewell’s primal-dual
minimum cost flow algorithm.
Proof. After each maximum flow computation, µ(v) strictly increases for each
excess node v =
6 t.
In the full paper we prove that Algorithm IRT actually finds an optimal flow in
Õ(m2 n3 log B + m2 n2 log2 B) time.
5 Preflow-Push
In this section we adapt Goldberg and Tarjan’s [10] preflow-push algorithm to
the generalized maximum flow problem. This is the first polynomial-time preflow
push algorithm for generalized network flows. Tseng and Bertsekas [23] designed
a preflow push-like algorithm for the generalized minimum cost flow problem,
but it may require more than B n iterations. Using our rounding technique, we
present a preflow-push algorithm that computes a ξ-optimal flow in polynomial-
time for any constant ξ > 0. Then by incorporating error-scaling, we show how
to find an optimal flow in polynomial-time.
flow through this node, then that flow does not reach the sink. So we can safely
disregard this useless residual excess. (Periodically RPP determines which nodes
have residual paths to the sink.) Algorithm RPP maintains a flow h and node
labels µ. The algorithm repeatedly selects an active node v. If there is an ad-
missible arc (v, w) emanating from node v, IPP pushes δ = min{eh (v), uh (v, w)}
units of flow from node v to w. If δ = uh (v, w) the push is called saturating;
otherwise it is nonsaturating. If there is no such admissible arc, RPP increases
the label of node v by a factor of 2 = b1/n ; this corresponding to an additive
potential increase for minimum cost flows. This process is referred to as a relabel
operation. Relabeling node v can create new admissible arcs emanating from v.
To ensure that we do not create residual flow-generating cycles, we only increase
the label by a relatively small amount.
The input to Algorithm RPP is a lossy network G and error parameter ξ.
Before applying the preflow-push method, IPP rounds the gains to powers of
b = (1 + ξ)1/n , as described in Section 3.1. The method above is then applied to
the rounded network H. Algorithm RPP is described in Figure 2.
We note that our algorithm maintains a pseudoflow with excesses, but no
deficits. In contrast, the Goldberg-Tarjan algorithm allows both excesses and
deficits. Also their algorithm scales . We currently do not see how to improve
the worst-case complexity by a direct scaling of .
RPP does not compute an optimal flow in polynomial time, since the precision
required is roughly ξ = B −m . Like Algorithm IRT, Algorithm IRPP adds error-
scaling, resulting in the following theorem.
In this section we present a simple variant of Goldberg, Plotkin, and Tardos’ [7]
Fat-Path algorithm which has the same complexity as Radzik’s [20] Fat-Path
variant. Our algorithm is intuitive and its proof of correctness is much simpler
than Radzik’s. The Fat-Path algorithm can be viewed as an analog of Orlin’s
capacity scaling algorithm for the minimum cost flow problem. The original Fat-
Path algorithm computes a ξ-optimal flow in Õ(mn2 log B log ξ −1 ) time, while
Radzik’s and our variants require only Õ(m(m + n log log B) log ξ −1 ) time.
The bottleneck computation in the original Fat-Path algorithm is cancel-
ing residual flow-generating cycles. Radzik’s variant reduces the bottleneck by
canceling only residual flow-generating cycles with big gains. The remaining
flow-generating cycles are removed by decreasing the gain factors. Analyzing the
precision of the resulting solution is technically complicated. Instead, our vari-
ant rounds down the gains to integer powers of a base b, which depends on the
precision of the solution desired. Our rounding is done in a lossy network, which
makes the quality of the resulting solution easy to analyze. Subsequent calls to
CancelCycles are performed in a rounded network, improving the complexity.
We first review the FatAugmentations subroutine which finds augmenting
paths with sufficiently large capacity. Then we present Algorithm RFP, which
runs the Fat-Path algorithm in a rounded network. It computes approximately
optimal and optimal flows in polynomial-time. We then present a recursive ver-
sion of RFP, which improves the complexity when computing nearly optimal and
optimal flows.
Proof. To bound the running time, we note that there are at most log2 (n/ξ)
phases. FatAugmentations requires Õ(m2 ) time per phase, and CancelCy-
cles requires Õ(mn log C) time, where we bound C = O(nξ −1 log B) as above.
The algorithm terminates when ∆ ≤ ξOPT(H). At this point h is ξ-optimal in
network H, since we maintain ∆ ≥ OPT(H) − |h|. The quality of the resulting
solution then follows using Theorem 4.
Algorithm RFP computes a ξ-optimal flow in Õ(m2 + mn log log B) time when
ξ > 0 is inversely polynomial in m. However it may require more time to
322 Éva Tardos and Kevin D. Wayne
compute optimal flows than the original Fat-Path algorithm. By using the re-
cursive scheme from Section 3.2, we can compute nearly optimal and optimal
flows faster than the original Fat-Path algorithm. In each recursive call, we
reround the network. We cancel flow-generating cycles in an already (partially)
rounded network. The benefit is roughly to decrease the average value of C from
O(nξ −1 log B) to O(n log B).
7 Practical Cycle-Canceling
References
1. R. K. Ahuja, T. L. Magnanti, and J. B. Orlin. Network Flows: Theory, Algorithms,
and Applications. Prentice Hall, Englewood Cliffs, New Jersey, 1993.
2. Edith Cohen and Nimrod Megiddo. New algorithms for generalized network flows.
Math Programming, 64:325–336, 1994.
3. F. Glover, J. Hultz, D. Klingman, and J. Stutz. Generalized networks: A funda-
mental computer based planning tool. Management Science, 24:1209–1220, 1978.
324 Éva Tardos and Kevin D. Wayne
?
Dorit S. Hochbaum
1 Introduction
graph with arc capacities and node weights and does not contain distinguished
source and sink nodes. The objective of the s-excess problem is to find a subset
of the nodes that maximizes the sum of node weights, minus the weight of
the arcs separating the set from the remainder of the nodes. The new problem
is shown to be equivalent to the minimum cut problem that is traditionally
solved by deriving a maximum flow first. With the new algorithm these problems
can be solved without considering flows explicitly. The steps of the algorithm
can be interpreted as manipulating pseudoflow – a flow that does not satisfy
flow balance constraints. For this reason we choose to call the algorithm the
pseudoflow algorithm.
The main feature that distinguishes the pseudoflow algorithm from other
known algorithms for the maximum flow problem is that it does not seek to either
preserve or progress towards feasibility. Instead the algorithm creates “pockets”
of nodes so that at optimum there is no residual arc that can carry additional
flow between an “excess pocket” and a “deficit pocket”. The set of nodes in
all the “excess pockets” form the source set of a minimum cut and also the
maximum s-excess set.
The certificate maintained by our algorithm bears a resemblance to the ba-
sic arcs tree maintained by simplex. It is demonstrated that this certificate is
analogous to the concept of a strong basis introduced by Cunningham [C76]
if implemented in a certain “extended network” permitting violations of flow
balance constraints. It is further shown that the algorithmic steps taken by our
algorithm are substantially different from those of the simplex and lead to a
different outcome in the next iteration based on the same strong basis in the
given iteration.
The contributions in this paper include:
1.1 Notation
For P, Q ⊂ V , the set of arcs going from P to Q is denoted by, (P, Q) = {(u, v) ∈
A|u ∈ P and v ∈ Q}. Let the capacity of arc (u, v) be denoted by cuv or c(u, v).
A New Max Flow Algorithm 327
We elaborate here further on this problem and its relationship to the maxi-
mum flow and minimum cut problems.
The maximum flow problem is defined on a directed graph with distinguished
source and sink nodes and the arcs adjacent to source and sink, A(s) and A(t),
Gst = (V ∪ {s, t}, A ∪ A(s) ∪ A(t)).
The standard formulation of the maximum flow problem with zero lower
bounds and xij variables indicating the amount of flow on arc (i, j) is,
Max xts
P P
subject to i xki − j xjk = 0 k ∈ V
0 ≤ xij ≤ cij ∀(i, j) ∈ A.
In this formulation the first set of (equality) constraints is called the flow bal-
ance constraints. The second set of (inequality) constraints is called the capacity
constraints.
328 Dorit S. Hochbaum
We next prove that the s-excess problem is equivalent to the minimum cut
problem,
The latter term is the capacity of the cut ({s}∪S, S̄ ∪{t}). Hence maximizing the
s-excess capacity is equivalent to minimizing the capacity of the cut separating
s from t.
To see that the opposite is true, consider the network (V ∪ {s, t}, A) with
arc capacities. Assign to node v ∈ V a weight that is csv if the node is adjacent
to s and −cvt if the node is adjacent to t. Note that it is always possible to
remove paths of length 2 from s to t thus avoiding the presence of nodes that
are adjacent to both source and sink. This is done by subtracting from the arcs’
capacities csv , cvt the quantity min{csv , cvt }. The capacities then translate into
node weights that serve as input to the s-excess problem and satisfy the equalities
above. t
u
The reader may wonder about the arbitrary nature of the s-excess problem,
at least in the sense that it has not been previously addressed in the literature.
The explanation is that this problem is a relaxation of the maximum closure
problem where the objective is to find, in a node weighted graph, a closed set of
nodes of maximum total weight. In the maximum closure problem it is required
that all successors of each node in the closure set will belong to the set. In the
s-excess problem this requirement is replaced by a penalty assigned to arcs of
immediate successors that are not included in the set. In that sense the s-excess
problem is a relaxation of the maximum closure problem. The proof of Lemma
3 is effectively an extension of Picard’s proof [Pic76] demonstrating that the
maximum weight closed set in a graph (maximum closure) is the source set of a
minimum cut.
We provide a detailed account of the use of the pseudoflow and other algo-
rithms for the maximum closure problem in [Hoc96]. We also explain there how
these algorithms have been used in the mining industry and describe the link to
the algorithm of Lerchs and Grossmann, [LG64].
The absolute value of excess that is less than zero is called deficit, i.e.
−excess(D) = deficit (D).
Given a rooted tree T . For a subtree Tv = T[v,p(v)] , let M[v,p(v)] = Mv =
excess(Tv ) and be called the mass of the node v or the arc [v, p(v)]. That is,
the mass is the amount of flow on (v, p(v)) directed towards the root. A flow
directed in the opposite direction – from p(v) to v – is interpreted as negative
excess or mass.
We define the extended network as follows: The network Gst is augmented
with a set of arcs – two additional arcs per node. Each node has one arc of
infinite capacity directed into it from the sink, and one arc of infinite capacity
directed from it to the source. This construction is shown in Figure 1. We refer
to the appended arcs from sink t as the deficit arcs and the appended arcs to the
source s as the excess arcs. The source and sink nodes are compressed into a ‘root’
node r. We refer to the extended network’s set of arcs as Aaug . These include, in
330 Dorit S. Hochbaum
8
ν
s V t
addition to the deficit and excess arcs, also the arcs adjacent to source and sink
– A(s) and A(t). The extended network is the graph Gaug = (V ∪ {r}, Aaug ).
Any pseudoflow on a graph has an equivalent feasible flow on the extended
network derived from the graph – a node with excess sends the excess back to
the source, and a node with deficit receives a flow that balances this deficit from
the sink.
Throughout our discussion of flows on extended networks, all the flows con-
sidered saturate the arcs adjacent to source and sink and thus the status of
these arcs, as saturated, remains invariant. We thus omit repeated reference to
the arcs A(s) and A(t).
4 A Normalized Tree
The algorithm maintains a construction that we call a normalized tree after the
use of this term by Lerchs and Grossmann in [LG64] for a construction that
inspired ours. Let node r 6∈ V serve as root and represent a contraction of s and
t. Let (V ∪ {r}, T ) be a tree where T ⊂ Ā. The children of r are called the roots
of their respective branches or subtrees. The deficit and excess arcs are only used
to connect r to the roots of the branches.
A normalized tree is a rooted tree in r that induces a forest in (V, A). We
refer to each rooted tree in the forest as branch. A branch of the normalized
tree rooted at a child of r, ri , Tri is called strong if excess(Tri ) > 0, and weak
otherwise. All nodes of strong branches are considered strong, and all nodes of
weak branches are considered weak.
A normalized tree is depicted in Figure 2.
A New Max Flow Algorithm 331
s = r = t
excess > 0 excess ≤ 0
deficit arc
r1 r2 r3
strong weak
Property 5. In every branch all downwards residual capacities are strictly pos-
itive.
Property 6. The only nodes that do not satisfy flow balance constraints are the
roots of their respective branches that are adjacent to r in the extended network.
This equality is used to prove the superoptimality of the set of strong nodes (in
the superoptimality Property).
We choose to work with normalized trees that satisfy an optional property
stronger than 5:
332 Dorit S. Hochbaum
Property 8 (Unsaturated arcs property). The tree T has all upwards resid-
ual capacities strictly positive.
From the proof of the superoptimality property it follows that when all arcs
from S to S̄ are saturated, then no set of nodes other than S has a larger s-excess.
We thus obtain the optimality condition as a corollary to the superoptimality
property.
Corollary 11 (Optimality condition). Given a normalized tree, a pseud-
oflow f and the collection of strong nodes in the tree S. If f saturates all arcs
in (S, S̄) then S is a maximum s-excess set in the graph.
The next Corollary holds only if Property 8 is satisfied. It implies minimality
of the optimal solution set S.
Corollary 12 (Minimality). Any proper subset of the strong nodes is not a
maximum s-excess set in (V, A0 ).
On the other hand, it is possible to append to the set of strong nodes S any
collection of 0-deficit branches that have no residual arcs to weak nodes without
changing the value of the optimal solution. This leads to a maximal maximum
s-excess set.
forms an “excess pocket” with the total excess of the branch assigned to its root.
Within each branch the pseudoflow is feasible.
Each iteration of the algorithm consists of identifying an infeasibility in the
form of a residual arc from a strong node to a weak node. The arc is then added
in and the tree is updated. The update consists of pushing the entire excess
of the strong branch along a path from the root of the strong branch to the
merger arc (s0 , w) and progressing towards the root of the weak branch. The first
arc encountered that does not have sufficient residual capacity to accommodate
the pushed flow gets split and the subtree suspended from that arc becomes a
strong branch with excess equal to the amount of flow that could not be pushed
through the arc. The process continues along the path till the next bottleneck
arc is encountered
Recall that G = (V, A), and Af is the set of residual arcs with respect to a
given pseudoflow f .
begin
Initialize ∀(s, j) ∈ A(s), f (s, j) = c(s, j). ∀(j, t) ∈ A(t), f (j, t) = c(j, t).
For all arcs (i, j) ∈ A, f (i, j) = 0.
T = ∪j∈V [r, j], the branches of the tree are {j}j∈V .
Nodes with positive excess are strong, S, and the rest are weak, W .
while (S, W ) ∩ Af 6= ∅ do
Select (s0 , w) ∈ (S, W )
Merge T ← T \ [r, rs0 ] ∪ (s0 , w).
Renormalize
Push δ = M[r,rs0 ] units of flow along the path [rs0 , . . . , s0 , w, . . . , rw , r]:
begin
Let [vi , vi+1 ] be the next edge on the path.
If cf (vi , vi+1 ) > δ augment flow by δ, f (vi , vi+1 ) ← f (vi , vi+1 ) + δ.
Else, split {(vi , vi+1 ), δ − cf (vi , vi+1 )}.
Set δ ← cf (vi , vi+1 ).
Set f (vi , vi+1 ) ← c(vi , vi+1 ); i ← i + 1
end
end
end
procedure split {(a, b), M }
T ← T \ (a, b) ∪ (r, a); M(r,a) = M .
The branch Ta is strong or 0-deficit with excess M .
Af ← Af ∪ {(b, a)} \ {(a, b)}.
end
The push step, in which we augment flow by δ if cf (vi , vi+1 ) > δ, can be
replaced by augmentation if cf (vi , vi+1 ) ≥ δ. The algorithm remains correct,
334 Dorit S. Hochbaum
but the set of strong nodes is no longer minimal among maximum s-excess sets,
and will not satisfy Property 8. We prove in the expanded version of this paper
that the tree maintained is indeed normalized, which establishes the algorithm’s
correctness.
5.2 Initialization
We choose an initial normalized tree with each node as a separate branch for
which the node serves as root. The corresponding pseudoflow saturates all arcs
adjacent to source and to sink. Thus all nodes adjacent to source are strong
nodes, and all those adjacent to sink are weak nodes. All the remaining nodes
have zero inflow and outflow, and are thus of 0 deficit and set as weak. If a node
is adjacent to both source and sink, then the lower capacity arc among the two
is removed, and the other has that value subtracted from it. Therefore each node
is uniquely identified with being adjacent to either source or sink or to neither.
5.3 Termination
The algorithm terminates when there is no residual arc between any strong and
weak nodes.
From Corollary 12 we conclude that at termination the set of strong nodes
is a minimal source set of a minimum cut. In other words, any proper subset
of the set of strong nodes cannot be a source set of a minimum cut. It will be
necessary to identify additional optimal solutions, and in particular a minimum
cut with maximal source set for the parametric analysis.
To that end, we identify the 0-deficit branches among the weak branches. The
set of strong branches can be appended with any collection of 0-deficit branches
without residual arcs to weak nodes for an alternative optimal solution. The
collection of all such 0-deficit branches with the strong nodes forms the sink set
of a minimum cut that is maximal. To see that, consider an analogue of Corollary
12 that demonstrates that no proper subset of a weak branch (of negative deficit)
can be in a source set of a minimum cut.
Given any tree in the extended network, and a specification of pseudoflow values
on the out of tree arcs, it is possible to determine in linear time O(n) whether
the tree is normalized. If the tree is not normalized, then the process is used to
derive a normalized tree which consists of a subset of the arcs of the given tree.
Given a normalized tree it is possible to derive in O(n) time the values of the
pseudoflow on the tree arcs, and in time O(mn) to derive an associated feasible
flow. At termination, that feasible flow is a maximum flow.
A New Max Flow Algorithm 335
6 Pseudoflow-Based Simplex
source, thus the merger arc completes a cycle. Alternatively we shrink source
and sink into a single node r as before.
Nodes that are on the source side of the tree are referred to as strong, and
those that are on the sink side, as weak, with the notation of S and W respec-
tively. Let an entering arc with positive residual capacity be (s0 , w). The cycle
created is [r, rs0 , . . . , s0 , w, . . . , rw , r].
The largest amount of the flow that can be augmented along the cycle is
the bottleneck residual capacity along the cycle. The first arc attaining this
bottleneck capacity is the leaving arc.
In the simplex the amount of flow pushed is determined by the bottleneck
capacity. In the pseudoflow algorithm the entire excess is pushed even though it
may be blocked by one or more arcs that have insufficient residual capacity.
The use of the lowest label selection rule in the pseudoflow-based simplex
algorithm for the choice of an entering arc leads to precisely the same complexity
as that of our pseudoflow algorithm, O(mn log n).
average work per iteration (which depends on the length of the path from the
root to the merger node). Other details on the similarities and differences be-
tween simplex and the pseudoflow algorithm are provided in the full version of
the paper.
References
C76. W. H. Cunningham. A network simplex method. Mathematical Program-
ming, 1:105–116, 1976.
GGT89. G. Gallo, M. D. Grigoriadis and R. E. Tarjan. A fast parametric maximum
flow algorithm and applications. SIAM Journal of Computing, 18(1):30–55,
1989.
GT86. A. V. Goldberg and R. E. Tarjan. A new approach to the maximum flow
problem. J. Assoc. Comput. Mach., 35:921–940, 1988.
GC96. D. Goldfarb and W. Chen. On strongly polynomial dual algorithms for the
maximum flow problem. Special issue of Mathematical Programming B, 1996.
To appear.
GH90. D. Goldfarb and J. Hao. A primal simplex method that solves the Maxi-
mum flow problem in at most nm pivots and O(n2 m) time. Mathematical
Programming, 47:353–365, 1990.
Hoc96. D. S. Hochbaum. A new – old algorithm for minimum cut on closure graphs.
Manuscript, June 1996.
LG64. H. Lerchs, I. F. Grossmann. Optimum design of open-pit mines. Transac-
tions, C.I.M., LXVIII:17–24, 1965.
Pic76. J. C. Picard. Maximal closure of a graph and applications to combinatorial
problems. Management Science, 22:1268–1272, 1976.
An Implementation of a Combinatorial
Approximation Algorithm for Minimum-Cost
Multicommodity Flow
?
Research partially supported by an NSF Graduate Research Fellowship, ARO Grant
DAAH04-95-1-0121, and NSF Grants CCR-9304971 and CCR-9307045.
??
Research supported by ARO Grant DAAH04-95-1-0121, NSF Grants CCR-9304971
and CCR-9307045, and a Terman Fellowship.
???
Research partly supported by NSF Award CCR-9308701 and NSF Career Award
CCR-9624828. Some of this work was done while this author was visiting Stanford
University.
1 Introduction
The minimum-cost multicommodity flow problem involves simultaneously ship-
ping multiple commodities through a single network so the total flow obeys the
arc capacity constraints and has minimum cost. The problem occurs in many
contexts where different items share the same resource, e.g., communication net-
works, transportation, and scheduling problems [AMO93,HL96,HO96].
Traditional methods for solving minimum-cost and no-cost multicommodity
flow problems are linear-programming based [AMO93,Ass78,CN96,KH80]. Using
the ellipsoid [Kha80] or the interior-point [Kar84] methods, linear-programming
problems can be solved in polynomial time. Theoretically, the fastest algorithms
for solving the minimum-cost multicommodity flow problem exactly use the
problem structure to speed up the interior-point method [KP95a,KV86,Vai89].
In practice, solutions to within, say 1%, often suffice. More precisely, we say
that a flow is -optimal if it overflows the capacities by at most 1 + factor and
has cost that is within 1 + of the optimum. Algorithms for computing approxi-
mate solutions to the multicommodity flow problem were developed in [LMP+ 95]
(no-cost case) and [GK96,KP95b,PST95] (minimum-cost case). Theoretically,
these algorithms are much faster than interior-point method based algorithms
for constant . The algorithm in [LMP+ 95] was implemented [LSS93] and was
shown that indeed it often outperforms the more traditional approaches. Prior to
our work, it was not known whether the combinatorial approximation algorithms
for the minimum-cost case could be implemented to run quickly.
In this paper we describe MCMCF, our implementation of a combinatorial ap-
proximation algorithm for the minimum-cost multicommodity flow problem. A
direct implementation of [KP95b] yielded a correct but practically slow imple-
mentation. Much experimentation helped us select among the different theoret-
ical insights of [KP95b,LMP+ 95,LSS93,PST95,Rad97] to achieve good practical
performance.
We compare our implementation with CPLEX [CPL95] and PPRN [CN96]. (Sev-
eral other efficient minimum-cost multicommodity flow implementations, e.g.,
[ARVK89], are proprietary so we were unable to use these programs in our study.)
Both are based on the simplex method [Dan63] and both find exact solutions.
CPLEX is a state-of-the-art commercial linear programming package, and PPRN
uses a primal partitioning technique to take advantage of the multicommodity
flow problem structure.
Our results indicate that the theoretical advantages of approximation algo-
rithms over linear-programming-based algorithms can be translated into prac-
tice. On the examples we studied, MCMCF was several orders of magnitude faster
than CPLEX and PPRN. For example, for 1% accuracy, it was up to three orders
of magnitude faster. Our implementation’s dependence on the number of com-
modities and the network size is also smaller, and hence we are able to solve
larger problems.
We would like to compare MCMCF’s running times with modified CPLEX and
PPRN programs that yield approximate solutions, but it is not clear how to make
the modifications. Even if we could make the modifications, we would probably
340 Andrew V. Goldberg et al.
need to use CPLEX’s primal simplex to obtain a feasible flow before an exact
solution is found. Since its primal simplex is an order of magnitude slower than
its dual simplex for the problem instances we tested, the approximate code would
probably not be any faster than computing an exact solution using dual simplex.
To find an -optimal multicommodity flow, MCMCF repeatedly chooses a com-
modity and then computes a single-commodity minimum-cost flow in an auxil-
iary graph. This graph’s arc costs are exponential functions of the current flow.
The base of the exponent depends on a parameter α, which our implementation
chooses. A fraction σ of the commodity’s flow is then rerouted to the correspond-
ing minimum-cost flow. Each rerouting decreases a certain potential function.
The algorithm iterates this process until it finds an -optimal flow.
As we have mentioned above, a direct implementation of [KP95b], while
theoretically fast, is very slow in practice. Several issues are crucial for achieving
an efficient implementation:
Exponential Costs: The value of the parameter α, which defines the base of
the exponent, must be chosen carefully: Using a value that is too small will
not guarantee any progress, and using a value that is too large will lead
to very slow progress. Our adaptive scheme for choosing α leads to signifi-
cantly better performance than using the theoretical value. Importantly, this
heuristic does not invalidate the worst-case performance guarantees proved
for algorithms using fixed α.
Stopping Condition: Theoretically, the algorithm yields an -optimal flow
when the potential function becomes sufficiently small [KP95b]. Alterna-
tive algorithms, e.g., [PST95], explicitly compute lower bounds. Although
these stopping conditions lead to the same asymptotic running time, the
latter one leads to much better performance in our experiments.
Step Size: Theory specifies the rerouting fraction σ as a fixed function of α.
Computing σ that maximizes the exponential potential function reduction
experimentally decreases the running time. We show that is it possible to use
the Newton-Raphson method [Rap90] to quickly find a near-optimal value
of σ for every rerouting. Additionally, a commodity’s flow usually differs
from its minimum-cost flow on only a few arcs. We use this fact to speed up
these computations.
Minimum-Cost Flow Subroutine: Minimum-cost flow computations domi-
nate the algorithm’s running time both in theory and in practice. The arc
costs and capacities do not change much between consecutive minimum-cost
flow computations for a particular commodity. Furthermore, the problem
size is moderate by minimum-cost flow standards. This led us to decide to
use the primal network simplex method. We use the current flow and a ba-
sis from a previous minimum-cost flow to “warm-start” each minimum-cost
flow computation. Excepting the warm-start idea, our primal simplex code
is similar to that of Grigoriadis [Gri86].
In the rest of this paper, we first introduce the theoretical ideas behind the
implementation. After discussing the various choices in translating the theoreti-
cal ideas into practical performance, we present experimental data showing that
Minimum-Cost Multicommodity Flow Combinatorial Implementation 341
2 Theoretical Background
2.1 Definitions
and the step size σ. It then computes the dual variables yr = eα(λr −1) , where
r rangesPover the arcs A and the arc cost function c, and a potential function
φ(f) = r yr . The algorithm chooses a commodity i to reroute in a round robin
order, as in [Rad97]. It computes, for that commodity, a minimum-cost flow fi∗
in a graph with arc costs related to the gradient ∇φ(f) of the potential func-
tion and arc capacities λA u. The commodity’s flow fi is changed to the convex
combination (1 − σ)fi + σfi∗ . An appropriate choice of values for α and σ lead
to Õ(−3 nmk) running time (suppressing logarithmic terms). Grigoriadis and
Khachiyan [GK96] decreased the dependence on to −2 .
Since these minimum-cost algorithms compute a multiflow having arc cost at
most a budget bound B, we use binary search on B to determine an -optimal
cost. The arc cost of the initial flow gives the initial lower bound because the
flow is the union of minimum-cost single-commodity flows with respect to the arc
cost function c and arc capacities u. Lower bound computations (see Sect. 3.1)
increase the lower bound and the algorithm decreases the congestion and cost
until an -optimal flow is found.
Theoretically, a small potential function value and a sufficiently large value of the
constant α indicates the flow is -optimal [KP95b], but this pessimistic indicator
leads to poor performance. Instead, we periodically compute the lower bound
on the optimal congestion λ∗ as found in [LMP+ 95,PST95]. Since the problem
Minimum-Cost Multicommodity Flow Combinatorial Implementation 343
For commodity i, Ci (λA ) represents the cost of the current flow fi with respect
to arc capacities λA u and the cost function y t A, where A is the km × m arc
adjacency matrix together with the arc cost function c. Ci∗ (λA
P) is the minimum-
P
∗ ∗
cost
P ∗ flow. ForPall choices of dual variables and λA ≥ 1, λ ≥ i C i (1)/ r yr ≥
i Ci (λA )/ r yr . Thus, this ratio serves as a lower bound on the optimal
congestion λ∗ .
3.3 Choosing α
The algorithm’s performance depends on the value of α. The larger its value,
the more running time the algorithm requires. Unfortunately, α must be large
enough to produce an -optimal flow. Thus, we developed heuristics for slowly
increasing its value. There are two different theoretical explanations for α than
can be used to develop two different heuristics.
Karger and Plotkin [KP95b] choose α so that, when the potential function is
less than a constant factor of its minimum, the flow is -optimal. The heuristic
344 Andrew V. Goldberg et al.
Table 1. Computing an (almost) optimal step size reduces the running time and
number of minimum-cost flow (MCF) computations by two orders of magnitude.
of starting with a small α and increasing it when the potential function’s value
became too small experimentally failed to decrease significantly the running
time.
Plotkin, Shmoys, and Tardos [PST95] use the weak duality inequalities (1)
upon which we base a different heuristic. The product of the gaps bounds the
distance between the potential function and the optimal flow. The algorithm’s
improvement is proportional to the size of the right gap, and increasing α de-
creases the left gap’s size. Choosing α too large, however, can impede progress
because progress is proportional to the step size σ which itself depends on how
closely the potential function’s linearization approximates its value. Thus, larger
α reduces the step size.
Our heuristic attempts to balance the left and right gaps. More precisely, it
chooses α dynamically to ensure the ratio of inequalities
P P
(λ r yr / comm. i Ci (λA )) − 1
P P (2)
( comm. i Ci (λA )/ comm. i Ci∗ (λA )) − 1
remains balanced. We increase α by factor β if the ratio is larger than 0.5 and
otherwise decrease it by γ. After limited experimentation, we decided to use the
golden ratio for both β and γ. The α values are frequently much lower than
those from [PST95]. Using this heuristic rather than using the theoretical value
of ln(3m)/ [KP95b] usually decreases the running time by a factor of between
two and six. See Table 2.
Several strategies for selecting the next commodity to reroute, proposed for con-
current flows, also apply to the minimum-cost multicommodity flow problem.
These strategies include weighted [KPST94] and uniform [Gol92] randomiza-
tion, and round-robin [Rad97] selection. Our experiments, which also included
adaptive strategies, suggest that round robin works best.
Minimum-Cost Multicommodity Flow Combinatorial Implementation 345
Theoretically, MCMCF can use any minimum-cost flow subroutine. In practice, the
repeated evaluation of single-commodity problems with similar arc costs and
capacities favor an implementation that can take advantage of restarting from a
previous solution. We show that using a primal network simplex implementation
allows restarting and thereby reduces the running time by one-third to one-half.
To solve a single-commodity problem, the primal simplex algorithm repeat-
edly pivots arcs into and out of a spanning tree until the tree has minimum cost.
Each pivot maintains the flow’s feasibility and can decrease its cost. The sim-
plex algorithm can start with any feasible flow and any spanning tree. Since the
cost and capacity functions do not vary much between MCF calls for the same
commodity, we can speed up the computation, using the previously-computed
spanning tree. Using the previously-found minimum-cost flow requires O(km)
additional storage. Moreover, it is more frequently unusable because it is in-
feasible with respect to the capacity constraints than using the current flow. In
contrast, using the current flow requires no additional storage, this flow is known
to be feasible, and starting from this flow experimentally requires a very small
number of pivots.
Fairly quickly, the number of pivots per MCF iteration becomes very small.
See Fig. 1. For the 2121-arc rmfgen-d-7-10-040 instance, the average number of
pivots are 27, 13, and 7 for the three commodities shown. Less than two percent
of arcs served as pivots. For the 260-arc gte problem, the average numbers are
8, 3, and 1, i.e., at most three percent of the arcs.
Instead of using a commodity’s current flow and its previous spanning tree,
a minimum-cost flow computation could start from an arbitrary spanning tree
and flow. On the problem instances we tried, restarting reduces the running time
by a factor of about 1.3 to 2. See Table 3. Because optimal flows are not unique,
the number of MCF computations differ, but the difference of usually less than
five percent.
346 Andrew V. Goldberg et al.
rmfgen-d-7-10-040 gte
4 500
6×10
400
4
4×10
300
200
2×104
100
0 0
4 Experimental Results
4.1 Dependence on the Approximation Factor
The approximation algorithm MCMCF yields an -optimal flow. Plotkin, Shmoys,
and Tardos [PST95] solve the minimum-cost multicommodity flow problem using
shortest-paths as a basic subroutine. Karger and Plotkin [KP95b] decreased
the running time by m/n using minimum-cost flow subroutines and adding a
linear-cost term to the gradient to ensure each flow’s arc cost is bounded. This
change increases the -dependence of [PST95] by 1/ to −3 . Grigoriadis and
Khachiyan [GK96] improved the [KP95b] technique, reducing the -dependence
back to −2 . MCMCF implements the linear-cost term, but experimentation showed
the minimum-cost flows’ arc costs were bounded even without using the linear-
cost term. Furthermore, running times usually decrease when omitting the term.
Table 3. Restarting the minimum-cost flow computations using the current flow
and the previous spanning tree reduces the running time by at least 35%.
restarting no restarting
problem instance time (seconds) time (seconds) ratio
rmfgen-d-7-10-020 0.01 88 180 2.06
rmfgen-d-7-10-240 0.01 437 825 1.89
rmfgen-d-7-12-240 0.01 613 993 1.62
rmfgen-d-7-14-240 0.01 837 1396 1.67
rmfgen-d-7-16-240 0.01 1207 2014 1.67
multigrid-032-032-128-0080 0.01 21 37 1.77
multigrid-064-064-128-0160 0.01 275 801 2.92
Minimum-Cost Multicommodity Flow Combinatorial Implementation 347
2×104
104 2000
5000
1000
2000
500
1000
500
200
5 10 20 50 100 5 10 20 50 100 200 500
Inverse 1/ of Desired Accuracy (log scale) Inverse 1/ of Desired Accuracy (log scale)
104
5
1.5×10
8000
6000
105
4000
4
5×10 2000
The combinatorial algorithm MCMCF solves our problem instances two to three
orders of magnitude faster than the linear-programming-based implementations
CPLEX and PPRN. Furthermore, its running time depends mostly on the network
structure and much less on the arc costs’ magnitude.
We solved several different rmfgen networks (see Fig. 4) with various num-
bers of commodities and two different arc cost schemes. Even for instances having
as few as fifty commodities, MCMCF required less running time. Furthermore, its
dependence on the number k of commodities was much smaller. For the left
side of Fig. 4, the arc costs were randomly chosen from the range [1, 100]. For
these problems, CPLEX’s running time is roughly quadratic in k, while MCMCF’s
is roughly linear. Although for problems with few commodities, CPLEX is some-
what faster, for larger problems MCMCF is faster by an order of magnitude. PPRN
is about five times slower than CPLEX for these problems. Changing the cost of
interframe arcs significantly changes CPLEX’s running time. (See the right side
of Fig. 4.) Both MCMCF’s and PPRN’s running times decrease slightly. The running
times’ dependences on k do not change appreciably.
rmfgen with Nonzero-Cost Interframe Arcs rmfgen with Zero-Cost Interframe Arcs
PPRN-14 CPLEX-12
1000 1000 CPLEX-14
Running Time (min) (log scale)
PPRN-14
PPRN-12
CPLEX-14 PPRN-12
100
100
CPLEX-12
MCMCF-14
MCMCF-14
10
MCMCF-12
10
MCMCF-12
1
1
20 50 100 200 20 50 100 200
Number k of Commodity Groups (log scale) Number k of Commodity Groups (log scale)
1000 PPRN
MCMCF
800
1
200
0.1
0
6 Concluding Remarks
For the problem classes we studied, MCMCF solved minimum-cost multicommodity
flow problems significantly faster than state-of-the-art linear-programming-based
Minimum-Cost Multicommodity Flow Combinatorial Implementation 351
programs. This is strong evidence the approximate problem is simpler, and that
combinatorial-based methods, appropriately implemented, should be considered
for this problem. We believe many of these techniques can be extended to other
problems solved using the fractional packing and covering framework of [PST95].
We conclude with two unanswered questions. Since our implementation never
needs to use the linear-cost term [KP95b], it is interesting to prove whether the
term is indeed unnecessary. Also, it is interesting to try to prove the experimental
O(−1.5 ) dependence of Sect. 4.1.
References
AMO93. R. K. Ahuja, T. L. Magnanti, and J. B. Orlin. Network Flows: Theory,
Algorithms, and Applications. Prentice Hall, Englewood Cliffs, NJ, 1993.
ARVK89. I. Adler, M. G. C. Resende, G. Veiga, and N. Karmarkar. An implemen-
tation of Karmarkar’s algorithm for linear programming. Mathematical
Programming A, 44(3):297–335, 1989.
Ass78. A. A. Assad. Multicommodity network flows – A survey. Networks, 8(1):37–
91, Spring 1978.
Bad91. T. Badics. genrmf. 1991. ftp://dimacs.rutgers.edu/pub/netflow/
generators/network/genrmf/
CN96. J. Castro and N. Nabona. An implementation of linear and nonlinear
multicommodity network flows. European Journal of Operational Research,
92(1):37–53, 1996.
CPL95. CPLEX Optimization, Inc., Incline Village, NV. Using the CPLEX
Callable Library, 4.0 edition, 1995.
Dan63. G. B. Dantzig. Linear Programming and Extensions. Princeton University
Press, Princeton, NJ, 1963.
GK96. M. D. Grigoriadis and L. G. Khachiyan. Approximate minimum-cost
multicommodity flows in Õ(−2 knm) time. Mathematical Programming,
75(3):477–482, 1996.
Gol92. A. V. Goldberg. A natural randomization strategy for multicommodity
flow and related algorithms. Information Processing Letters, 42(5):249–
256, 1992.
GOPS97. A. Goldberg, J. D. Oldham, S. Plotkin, and C. Stein. An implementation of
a combinatorial approximation algorithm for minimum-cost multicommod-
ity flow. Technical Report CS-TR-97-1600, Stanford University, December
1997.
Gri86. M. D. Grigoriadis. An efficient implementation of the network simplex
method. Mathematical Programming Study, 26:83–111, 1986.
HL96. R. W. Hall and D. Lotspeich. Optimized lane assignment on an automated
highway. Transportation Research—C, 4C(4):211–229, 1996.
HO96. A. Haghani and S.-C. Oh. Formulation and solution of a multi-commodity,
multi-modal network flow model for disaster relief operations. Transporta-
tion Research—A, 30A(3):231–250, 1996.
Kar84. N. Karmarkar. A new polynomial-time algorithm for linear programming.
Combinatorica, 4(4):373–395, 1984.
KH80. J. L. Kennington and R. V. Helgason. Algorithms for Network Program-
ming. John Wiley & Sons, New York, 1980.
352 Andrew V. Goldberg et al.
1 Introduction
Since the early 1970s, the algorithms and optimization community has put
lots of efforts into identifying the computational complexity of various combi-
natorial optimization problems. Nowadays it is common knowledge that, when
dealing with an N P-hard optimization problem, one should not expect to find
a polynomial-time solution algorithm. This insight motivates the search for ap-
proximation algorithms that output provably good solutions in polynomial time.
It also immediately raises the question of how well we can approximate a specific
optimization problem in polynomial time.
We say that a polynomial-time approximation algorithm for some optimiza-
tion problem has a performance guarantee or worst-case ratio ρ, if it outputs a
feasible solution with cost at most ρ times the optimum value for all instances of
the problem; such an algorithm is also called a polynomial-time ρ-approximation
algorithm. Now, given an N P-hard optimization problem, for which values of
ρ does there exist and for which values of ρ does there not exist a polynomial-
time ρ-approximation algorithm? In this paper we focus on ‘negative’ results
for scheduling problems in this area, i.e., we demonstrate for several scheduling
?
Supported by the START program Y43–MAT of the Austrian Ministry of Science.
– Lenstra & Rinnooy Kan [9] prove that P | prec, pj = 1 | Cmax (makespan min-
imization on parallel machines with precedence constraints and unit process-
ing times) does not have a polynomial-time approximation algorithm with
performance guarantee strictly better than 4/3.
– Lenstra, Shmoys & Tardos [11] show that R | | Cmax (makespan minimiza-
tion on unrelated machines) does not have a polynomial-time approximation
algorithm with performance guarantee strictly better than 3/2.
– Hoogeveen, Lenstra & Veltman [5] prove that P | prec, c = 1, pj = 1 | Cmax
and P ∞ | prec, c = 1, pj = 1 | Cmax (two variants of makespan minimization
on parallel machines with unit processing times and unit communication
delays) cannot be approximated with worst-case ratios better than 5/4 and
7/6, respectively.
– Williamson et al. [16] prove that O | | Cmax and F | | Cmax (makespan mini-
mization in open shops and flow shops, respectively) cannot be approximated
in polynomial time with performance guarantees better than 5/4.
All the listed non-approximability results have been derived via the so-called gap
technique, i.e., via N P-hardness reductions that create gaps in the cost function
of the constructed instances. More precisely, such a reduction transforms the
YES-instances of some N P-hard problem into scheduling instances with ob-
jective value at most c∗ , and it transforms the NO-instances into scheduling
instances with objective value at least g · c∗ , where g > 1 is some fixed real
number. Then a polynomial-time approximation algorithm for the scheduling
problem with performance guarantee strictly better than g (i.e., with guaran-
tee g − ε where ε > 0) would be able to separate the YES-instances from the
NO-instances, thus yielding a polynomial-time solution algorithm for an N P-
Non-approximability of Scheduling Problems 355
2 Preliminaries on Non-approximability
This section gives some information on approximation algorithms, and it summa-
rizes some basic facts on Max SNP-hardness. For a more extensive explanation
we refer the reader to Papadimitriou & Yannakakis [14]. For a compendium of
publications on non-approximability results we refer to Crescenzi & Kann [2].
A polynomial-time approximation scheme for an optimization problem, PTAS
for short, is a family of polynomial-time (1 + ε)-approximation algorithms for
all ε > 0. Essentially, a polynomial-time approximation scheme is the strongest
possible approximability result for an N P-hard problem. For N P-hard prob-
lems an important question is whether such a scheme exists. The main tool for
356 Han Hoogeveen et al.
for some positive constant β, where c(S(s)) and c(s) represent the costs of
S(s) and s, respectively. u
t
Papadimitriou & Yannakakis [14] prove that L-reductions in fact are approx-
imation preserving reductions. If there is an L-reduction from the optimiza-
tion problem A to problem B with parameters α and β, and if there exists
a polynomial-time approximation algorithm for B with performance guarantee
1 + ε, then there exists a polynomial-time approximation algorithm for A with
performance guarantee 1 + αβε. Consequently, if there exists a PTAS for B, then
there also exists a PTAS for A.
Papadimitriou & Yannakakis [14] also define a class of optimization problems
called Max SNP, and they prove that every problem in this class is approx-
imable in polynomial time within some constant factor. The class Max SNP is
closed under L-reductions, and the hardest problems in this class (with respect
to L-reductions) are the Max SNP-complete ones. A problem that is at least as
hard (with respect to L-reductions) as a Max SNP-complete problem is called
Max SNP-hard . For none of these Max SNP-hard problems, a PTAS has been
constructed. Moreover, if there does exist a PTAS for one Max SNP-hard prob-
lem, then all Max SNP-hard problems have a PTAS, and
Proposition 2 (Arora, Lund, Motwani, Sudan, and Szegedy [1]). If
there exists a PTAS for some Max SNP-hard problem, then P = N P. u
t
Proposition 2 provides a strong tool for proving the non-approximability of an
optimization problem X. Just provide an L-reduction from a Max SNP-hard
problem to X. Then unless P = N P, problem X cannot have a PTAS.
job. The q dummy machines are split into two groups: q − k of them process an
A-job and a B-job, and k of them process a single dummy job. An illustration for
schedules of this structure is given in Figure 1. All jobs are scheduled as early as
possible. The cost Zk of a schedule σ with the special structure described above
a b c
k
a b c
Triple machines
d c
q-k
d c
d
s-q
d
a b
Dummy machines
q-k
a b
d
k
d
Lemma 4. Let σ be any feasible schedule for R(I) with k good machines. Then
the objective value of σ is at least equal to Zk , and there exists a feasible sched-
ule σ 0 satisfying the structure described above with the same number k of good
machines.
k1 + k2 ≥ q − `C − k. (3)
The number of jobs that have release date zero equals the number of machines.
Hence, the processing of at least k1 of the A-jobs and dummy jobs does not start
at time zero, and we conclude that `A + `D 1 + `2 ≥ k1 . Analogously at least k2
D
of the B-jobs and dummy jobs are not processed during the time interval [1, 2],
and therefore `B + `D2 ≥ k2 holds. Summarizing, one gets that the additional
cost caused by jobs in σ that do not start at their release date is at least
`A + `B + `C + `D
1 + 2`2 = (` + `1 + `2 ) + (` + `2 ) + `
D A D D B D C
≥ k1 + k2 + `C ≥ q − `C − k + `C = q − k.
Lemma 6. For any feasible schedule σ of R(I), the feasible solution S(σ) of
instance I fulfills the inequality |Opt(I)−c(S(σ))| ≤ |Opt(R(I))−c(σ)|. Hence,
the polynomial-time transformation S fulfills condition (2) of Definition 1.
Proof. The statement of Lemma 4 implies that if there exists a schedule of cost
7q+3s−k 0 for R(I), then there exists a solution T 0 for I with cardinality |T 0 | = k 0 .
Let k = Opt(I). Then |Opt(I) − c(S(σ))| = k − k 0 and |Opt(R(I)) − c(σ)| =
|7q + 3s − k − (7q + 3s − k 0 )|. t
u
360 Han Hoogeveen et al.
– For each variable xj , there are two assignment machines: the first one pro-
cesses the operations B(xj1 ) and B(xj1 ), whereas the second one processes
the operations B(xj2 ) and B(xj2 ).
– For each variable xj , there are two consistency machines: the first one pro-
cesses the operations M (xj1 ) and M (xj2 ), whereas the second one processes
the operations M (xj2 ) and M (xj1 ).
– For each clause a∨b, there is a clause machine that processes E(a) and E(b).
– For each literal x ∈ {xi2 , xi2 } that does not occur in the formula, there
is a garbage machine that processes the operation E(x) and the dummy
operations D1 (x), D2 (x), and D3 (x).
The processing of every job first goes through the assignment machines, then
through the consistency machines, then through the clause machines, and finally
through the garbage machines. Since most operations have length 0, the precise
processing order within every machine class is not essential; we only note that
for every variable job, processing on the first assignment (first consistency) ma-
chine always precedes processing on the second assignment (second consistency)
machine. Similarly as in Section 3, we are mainly interested in schedules for
R(I) with a special combinatorial structure. In a so-called consistent schedule,
for every variable x either both operations B(xi1 ) and B(xi2 ) are processed in
362 Han Hoogeveen et al.
B(x i 1) B(x i 1)
Assignment machines
B(x i 2) B(x i 2)
M(x i 1) M(x i 2)
Consistency machines
M(x i 2) M(x i 1)
E(x) E(y)
Clause machines
E(u) E(v)
the interval [0, 1], or both operations B(xi1 ) and B(xi2 ) are processed during
[0, 1]. Moreover, in a consistent schedule the machines process the operations of
length 1 during the following intervals. The assignment machines are only pro-
cessing length 1 operations during [0, 2], and the consistency machines are only
processing such operations during [1, 3]. On every clause machine, the operations
of length 1 are either processed during [2, 3] and [3, 4] or during [3, 4] and [4, 5].
On the garbage machines, all four operations of length 1 are processed during
[0, 4]; there are no restrictions on the processing order on the garbage machines.
Figure 2 gives an illustration of a consistent schedule.
Lemma 11. Let σ be any feasible schedule for R(I). Then there exists a feasible
consistent schedule σ 0 whose objective value is at most the objective value of σ.
Proof. Let σ be an arbitrary feasible schedule for R(I). Throughout the proof,
we only deal with the placement of length 1 operations (as placing the length 0
operations is straightforward); a machine is busy if it is processing a length 1
operation. Our first goal is to transform σ into a schedule in which the assign-
ment machines are only busy during [0, 2] and the consistency machines are only
busy during [1, 3]. We start by shifting all operations on the assignment and
consistency machines as far to the left as possible without violating feasibility.
Clearly, in the resulting schedule all operations on the assignment machines are
processed during [0, 2].
Now suppose that on some consistency machine some operation, say opera-
tion M (xi1 ), only completes at time four. Since all operations were shifted to the
left, this yields that both operations B(xi1 ) and B(xi2 ) are scheduled during the
time interval [1, 2]. Moreover, operations B(xi1 ) and B(xi2 ) are both processed
Non-approximability of Scheduling Problems 363
Proof. There are s clause machines and at most 2q garbage machines. Since
the total completion time of two jobs on the same clause machine is at most
4 + 5 = 9, the total completion time of the variable jobs that have non-zero
processing requirement on some clause machine is at most 9s. Moreover, the total
completion time of the remaining jobs (i.e., the jobs with non-zero processing
time on some garbage machine) is at most (1 + 2 + 3 + 4)2q ≤ 20s. Hence
Opt(R(I)) ≤ 29s, and Lemma 10 completes the proof. t
u
364 Han Hoogeveen et al.
Lemma 13. For any feasible schedule σ of R(I), the feasible solution S(σ) of in-
stance I fulfills the inequality |Opt(I) − c(S(σ))| ≤ 12 |Opt(R(I)) − c(σ)|. Hence,
the polynomial-time transformation S fulfills condition (2) of Definition 1.
Proof. As has been argued before, the length 1 operations on a clause machine
have completion times 3 and 4, if the corresponding clause is satisfied, and they
have completion times 4 and 5, if the clause is not satisfied. In other words, every
unsatisfied clause induces an extra cost of 2 in the objective function. The claim
follows. t
u
Lemma 12 and 13 state that the transformations R and S satisfy the condi-
tions in Definition 1. Since
P both transformations are computable in polynomial
time, the problem F | | Cj is Max SNP-hard. This completes the proof of
the flow shop and of the job shop part of Theorem 8.
The essential difference between the flow shop problem and the open shop prob-
lem is that the order in which the operations belonging to the same job are
processed is no longer given; therefore, we must look for a different way to en-
force that the beginning operation indeed precedes the middle operation, which
in turn must precede the ending operation. To this end, we introduce a number
of additional jobs, which are used to fill the interval [0, 1] on the consistency ma-
chines and the interval [0, 2] on the clause machines; these additional jobs can
be forced to go there, because our objective is to minimize the total completion
time, which favors small jobs. We further need some more jobs, which are used
to remove unnecessary idle time. This can be worked out as follows.
Similar to the flow shop we start from an instance I = (U, C) of Max-2Sat-B.
We introduce the same set of variable jobs, dummy jobs, assignment machines,
consistency machines, clause machines, and garbage machines. Additionally, the
instance R(I) contains 26q + 6s so-called structure jobs. Every structure job con-
sists of m − 1 operations of length 0 and of a single operation of non-zero length;
this operation is called the structure operation corresponding to the structure
job.
It can be shown that for any feasible schedule for R(I), there exists a reasonable
consistent schedule with non-larger objective value. With this, one can define a
Non-approximability of Scheduling Problems 365
truth setting S(σ) like in Subsection 4.1. Again, the constructed transformations
are polynomialPtime computable and fulfill the conditions in Definition 1. Hence,
problem O | | Cj is Max SNP-hard. This completes the proof of Theorem 8.
5 Conclusions
In this paper, we have derived a number of non-approximability results for
scheduling problems with total job completion time objective. The approxima-
bility status of most scheduling problems with this objective function or its
weighted counterpart remains amazingly unclear: until today, all that we know
is that some of these problems can be solved
P in polynomialPtime by straightfor-
ward algorithms (like the problems 1 | | wj Cj and P | | Cj ) and that some
of these problems do not have a PTAS (like the problems investigated in this
paper). However, there is not a single strongly N P-hard scheduling problem
with minsum objective for which a PTAS has been constructed. We state the
following conjectures.
P
Conjecture 14. The problems P 1 | rj | Cj (scheduling a single machine with
job release dates) and P | | wj Cj (scheduling parallel identical machines with
the objective of minimizing the total weighted job completion time) both do have
a PTAS.
P
Conjecture 15. Neither of the problems P | rj | CPj (scheduling parallel iden-
tical machines with job release dates) and 1 | prec | Cj (scheduling a single
machine with precedence constraints) has a PTAS.
References
1. S. Arora, C. Lund, R. Motwani, M. Sudan, and M. Szegedy. Proof verification and
hardness of approximation problems. Proceedings of the 33rd IEEE Symposium on
the Foundations of Computer Science, pages 14–23, 1992.
2. P. Crescenzi and V. Kann. A compendium of NP-optimization problems. 1997.
http://www.nada.kth.se/nada/theory/problemlist/html.
3. M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the
Theory of N P-Completeness. Freeman, San Francisco, 1979.
4. R. L. Graham, E. L. Lawler, J. K. Lenstra, and A. H. G. Rinnooy Kan. Opti-
mization and approximation in deterministic sequencing and scheduling: A survey.
Annals of Discrete Mathematics, 5:287–326, 1979.
5. J. A. Hoogeveen, J. K. Lenstra, and B. Veltman. Three, four, five, six, or the
complexity of scheduling with communication delays. Operations Research Letters,
16:129–137, 1994.
6. V. Kann. Maximum bounded 3-dimensional matching is MAX SNP-complete. In-
formation Processing Letters, 37:27–35, 1991.
7. H. Kellerer, T. Tautenhahn, and G. J. Woeginger. Approximability and nonapprox-
imability results for minimizing total flow time on a single machine. Proceedings
of the 28th Annual ACM Symposium on the Theory of Computing, pages 418–426,
1996.
366 Han Hoogeveen et al.
1 Introduction
Scheduling problems involving precedence constraints are among the most dif-
ficult problems in the area of machine scheduling, in particular for the design
of good approximation algorithms. Our understanding of the structure of these
problems and our ability to generate near-optimal solutions remain limited. The
following examples illustrate this point. (i) The first approximation algorithm
for P|prec|Cmax by Graham [14] is not only more than thirty years old, but it is
also still essentially the best one available for this problem. On the other hand,
it is only known that no polynomial-time algorithm can have a better approx-
imation ratio than 4/3 unless P = NP [23]. (ii) The computational complexity
of the problem Pm|pj = 1, prec|Cmax , open problem 8 from the original list of
Garey and Johnson [11] is still open. (iii) The situation is also unsatisfactory with
machines running at different speed, for which no constant-factor approximation
algorithms are known. For the makespan objective, Chudak and Shmoys [10] only
recently
√ improved to O(log m) an almost twenty year old approximation ratio of
O( m) due to Jaffe [20]. They obtained the same approximation ratio for the
total weighted completion time objective. (iv) Progress is also quite recent for
the latter objective on a single machine or identical parallel machines. Until re-
cently, no constant-factor approximation algorithms were known. Lately, a better
understanding of linear programming relaxations and their use to guide P solution
strategies led to
P a 2– and a 2.719–approximation algorithm for 1|prec| wj Cj
and 1|rj , prec| wj Cj P, respectively [16,34,35], and to a 5.328–approximation al-
gorithm for P|rj , prec| wj Cj [7]. Few deep negative results are known for these
problems (see [18] for the total completion times objective).
In thisPpaper, we consider (a generalization of) the scheduling problem
P|rj , prec| wj Cj and answer a question of Hall et al. [16, Page 530]:
“Unfortunately, we do not know how to prove a good performance guar-
antee for this model by using a simple list-scheduling variant.”
Indeed their algorithm, as well as its improvement by Chakrabarti et al. [7],
is rather elaborate and its performance ratio does not match the quality of the
lower bound it uses. We show that using the same LP relaxation in a different
way (reading the list order from the LP midpoints instead of LPPcompletion
times) yields a simple 4–approximation algorithm for P|rj , prec| wj Cj . We
actually obtain this result in the more general framework of precedence delays.
We consider a general class of precedence-constrained scheduling problems
on identical parallel machines. We have a set N of n jobs and m identical par-
allel machines. Each job j has a nonnegative processing requirement (size) pj
and must be processed for that amount of time on any one of the machines. A
job must be processed in an uninterrupted fashion, and a machine can process
only one job at a time. We are interested in constrained scheduling problems
in which each job j may have a release date rj before which it cannot be pro-
cessed, and there may be a partial order A on the jobs. We associate with each
precedence-constrained job pair (i, j) ∈ A a nonnegative precedence delay dij ,
with the following meaning: in every feasible schedule, job j cannot start until
dij time units after job i is completed. Special cases include ordinary precedence
constraints (dij = 0); and release dates rj ≥ 0 (which may be modeled by adding
a dummy job 0 with zero processing time and precedence delays d0j = rj for
all other jobs). Delivery times (or lags), which must elapse between the end of a
job’s processing and its actual completion time, may also be modeled by adding
one or several dummy jobs and the corresponding precedence delays.
We denote the completion time of a job j in a schedule S as CjS and will
drop the superscript S when it is clear to which schedule we refer. We con-
sider the usual objectives of minimizing the makespanP Cmax = maxj Cj and,
for given nonnegative weights wj ≥ 0, a weighted sum j wj Cj of completion
times. In an extension of the common notation introduced in [15], we P may de-
note these problems as P|prec. delays dij |Cmax and P|prec. delays dij | wj Cj ,
Approximation Bounds for Parallel Machine Scheduling 369
respectively. These problems are NP-hard (see, e.g., Lawler et al. [22]), and we
discuss here the quality of relaxations and approximation algorithms. An α–
approximation algorithm is a polynomial-time algorithm that delivers a solution
with objective value at most α times the optimal value. Sometimes α is called
the (worst-case) performance guarantee or ratio of the algorithm.
Precedence delays were considered for resource-constrained project schedul-
ing under the name “finish-to-start lags”, e.g., by Bartusch, Möhring, and Rader-
macher [4] and Herroelen and Demeulemeester [17], for one-machine scheduling
by Wikum, Llewellyn, and Nemhauser [37] under the name “generalized prece-
dence constraints”, and by Balas, Lenstra, and Vazacopoulos [3] under that of
“delayed precedence constraints”; the latter authors use the Lmax minimization
problem as a key relaxation in a modified version of the shifting bottleneck
procedure for the classic job-shop scheduling problem. Most of the theoretical
studies concerning this class of precedence constraints consider the one ma-
chine problem 1|prec. delays dij = k, pj = 1|Cmax which corresponds to a basic
pipeline scheduling problem (see [21] for a survey). Leung, Vornberger, and Wit-
thoff [24] showed that this problem is NP-complete. Several other authors (e.g.,
[6,5,28]) obtained polynomial-time algorithms for particular instances by utiliz-
ing well-known algorithms for special cases of the classical m–machine problem.
In the context of approximation algorithms, the main result is that Graham’s list
scheduling algorithm [14] was extended to P|prec. delays dij = k, pj = 1|Cmax
to give a worst-case performance ratio of 2 − 1/(m(k + 1)) [21,28]. We extend
this result, in Section 3, to nonidentical precedence delays and processing times.
List scheduling algorithms, first analyzed by Graham [14] are among the
simplest and most commonly used approximate solution methods for parallel
machine scheduling problems. These algorithms use priority rules, or job rank-
ings, which are often derived from solutions to relaxed versions of the problems.
For example, several algorithms of Hall, Schulz, Shmoys, and Wein [16] use the
job completion times obtained from linear programming relaxations. In Section 2
we show that a modified, job-driven version of list scheduling based on job com-
pletion times can, in the presence of precedence constraints, lead to P solutions
that are about as bad as m times the optimum, for both the Cmax and j wj Cj
objectives; this behavior may also occur when using actual optimum completion
times.
Graham’s original list scheduling, however, works well for minimizing the
makespan as we show in Section 3 byPextending it to the case of precedence de-
lays. For minimizing a weighted sum j wj Cj of completion times, we present in
Section 4 a new algorithm with approximation ratio bounded by 4 for the general
problem with precedence delays. This algorithm is based on an LP relaxation
of this problem, which is a straightforward extension of earlier LP relaxations
proposed by Hall et al. [16]. The decision variables in this relaxation are the com-
pletion times Cj of every job j, so we choose to ignore the machine assignments
in these relaxations. There are two sets of linear constraints, one representing
the precedence delays (and, through the use of a dummy job, the release dates)
in a straightforward fashion; the other set of constraints is a relatively simple
370 Alix Munier et al.
way of enforcing the total capacity of the m machines. Although the machine
assignments are ignored and the machine capacities are modeled in a simplistic
way, this is sufficient to obtain the best relaxation and approximation bounds
known so far for these problems and several special cases thereof. We show that
using midpoints derived from the LP relaxation leads to a performance ratio
bounded by 4 for the general problem described above. Recall that in a given
schedule the midpoint of a job is the earliest point in time at which half of its
processing has been performed; that is, if the schedule is (or may be considered
as) nonpreemptive then the midpoint of job j is simply CjR − pj /2 where CjR is
its completion time in the relaxation R. The advantage of using midpoints in the
analysis of approximation algorithms was first observed by Goemans [12] and
has since then been used by several authors (e.g., [35,36,13]). Our result seems
to be the first, however, where midpoints are really needed within the algorithm
itself. We also show how the analysis yields tighter bounds for some special cases,
and then conclude with some additional remarks in Section 5. We believe that
the approach of applying a list-scheduling rule in which the jobs are ordered
based on their midpoints in an LP solution will have further consequences for
the design of approximation algorithms.
In summary, the main contributions of this paper are as follows.
Due to space limitations some details are omitted from this paper. They can
be found in the complete version, see [27].
In his seminal paper, Graham (1966) showed that a simple list-scheduling rule
1
is a (2 − m )–approximation algorithm for P|prec|Cmax . In this algorithm, the
jobs are ordered in some list, and whenever one of the m machines becomes
idle, the next available job on the list is started on that machine, where a job
is available if all of its predecessors have completed processing. By their non-
idling property, Graham’s List Scheduling Algorithms (GLSAs) are well suited
when machine utilization is an important consideration. Indeed, it is shown in
Section 3 that, for the makespan minimization problem P|prec. delays dij |Cmax ,
any GLSA (i.e., no matter which list of jobs is used) produces a schedule with
objective function value within a factor 2 of the optimum. In this case, a job is
available if all its predecessors are completed and the corresponding precedence
delays have elapsed.
In contrast, the elementary Example 1 shows that the non-idling property
may lead to an arbitrarily P poor performance ratio for a weighted sum of com-
pletion times objective j∈N wj Cj .
The ordinary precedence constraints (j, k) (with djk = 0) are defined as follows:
(i) j = 1 + h(m + 1) and k = j + g, for all h = 0, . . . , m − 1 and all g = 1, . . . , m;
and (ii) for all j < n and k = n. The processing times are pj = 1 + h(m + 1) for
j = 1 + h(m + 1) and h = 0, . . . , m − 1; and pj = otherwise.
P The objective is
either to minimize the makespan, or a weighted sum j wj Cj of job completion
times with weights wj = 0 for all j < n and wn = 1; note that, due to the
precedence constraints (ii) above, these two objectives coincide for any feasible
schedule.
An optimal solution has, for h = 0, . . . , m − 1, job j = 1 + h(m + 1) starting
at time Sj∗ = 0 on machine h + 1, immediately followed by jobs j + 1, . . . , j + m
assigned as uniformly as possible to machines 1, . . . , h+1. Job n is then processed
∗
last on machine m, so that the optimal objective value is Cmax = Cn∗ = 1+(m2 +
1). A corresponding list is L = (1, 2, . . . , n). Any version of the list scheduling
algorithm described above produces the following schedule from this list: job 1
is scheduled with start time S1L = 0 and completion time C1L =1; the m jobs k =
2, . . . , m + 1 are then scheduled, each with SkL = 1 and CkL = 1 + on a different
machine; this will force all subsequent jobs to be scheduled no earlier than time
1+. As a result, for h = 0, . . . , m−1, job j = 1+h(m+1) is scheduled with start
time SjL = h + ( 21 (h − 1)h(m + 1) + h), followed by jobs k = j + 1, . . . , j + (m + 1)
each with SkL = h + 1 + ( 12 h(h + 1)(m + 1) + h) on a different machine. Finally,
job n is scheduled last with SnL = m + ( 12 (m − 1)m(m + 1) + m) and thus the
objective value is Cmax L
= CnL = m + o(), or arbitrarily close to m times the
∗
optimal value Cmax for > 0 small enough. t
u
The example shows that list scheduling according to completion times can
lead to poor schedules on identical parallel machines with job precedence con-
straints. In contrast, we will present in Section 4 a linear programming relax-
ation of the general problem with precedence delays and show that job-based
list scheduling according to job midpoints leads to a bounded performance ratio.
Constraints (1) are the precedence delay constraints. Constraints (2) are a rela-
tively weak way of expressing the requirement that each machine can process at
most one job at a time; for the single-machine case (m = 1) they were introduced
by Wolsey [38] and Queyranne [30], and studied by Queyranne and Wang [31],
von Arnim, Schrader, and Wang [1], von Arnim and Schulz [2], and Schulz [33]
in the presence of ordinary precedence constraints; they were extended to m ≥ 2
parallel machines by Hall et al. [16]. Note that these constraints, for F = {j},
imply Cj ≥ 0; these and, as indicated above, the use of a dummy job 0 allow
the formulation of release date constraints.
For a weighted sum of completion times objective, the LP formulation is
simply:
X
minimize wj Cj subject to (1) - (2). (3)
j∈N
Let C LP denote any feasible solution to the constraint set (1)–(2) of this LP;
we will call CjLP the LP completion time of job j. We now use this LP solution
to define a feasible schedule with completion time vector C H and analyze the
job-by-job relationship between CjH and CjLP for every job j ∈ N .
We define the LP start time SjLP and LP midpoint MjLP as SjLP = CjLP − pj
and MjLP = CjLP − pj /2, respectively. We now use the List Scheduling Algo-
rithm of Section 2 with the LP midpoint list L defined by sorting the jobs in
nondecreasing order of their midpoints MjLP . The next theorem contains our
main result.
376 Alix Munier et al.
Theorem 2. Let C LP denote any feasible solution to the constraint set (1)–(2)
and let M LP and S LP denote the associated LP midpoints and start times, re-
spectively. Let S H be the vector of start times of the feasible schedule constructed
by the List Scheduling Algorithm using the LP midpoint list. Then
Proof. Assume for simplicity that the jobs are indexed in the order of their LP
midpoints, that is, M1LP ≤ M2LP ≤ · · · ≤ MnLP . We fix job j ∈ N and consider
the schedule constructed by the List Scheduling heuristic using the LP midpoint
list L = (1, 2, . . . , n) up to and including the scheduling of job j, that is, up to
the completion of Step 3 with k = j. Let [j] = {1, . . . , j}.
Let µ denote the total time between 0 and start time SjH of job j when all m
machines are busy at this stage of the algorithm. Since only jobs in [j − 1] have
1
Pj−1
been scheduled so far, we have µ ≤ m i=1 pi . Let λ = Sj − µ. To prove (4),
H
1 X
j−1
(i) pi ≤ 2MjLP and (ii) λ ≤ 2SjLP .
m i=1
that is, A[j] is the set of precedence pairs in [j] for which the precedence delay
constraints (1) are tight for C H . If bq > 0 then a machine becomes busy at date bq
(or starts processing job j if bq = SjH ) and thus there exists a job x(q) ∈ [j] with
start time Sx(q)
H
= bq . We repeat the following process for decreasing values
of the interval index h, starting with h = q, until we reach the date 0 or the
busy interval [0, a1 ]. Let (v(1), . . . , v(s)) denote a maximal path in G[j] with
last node (job) v(s) = x(h). Note that we must have bg < Sv(1) H
≤ ag+1 for
some busy interval [bg , ag+1 ] with ag+1 < bh , for otherwise some machine is
idle immediately before the start time Sv(1) H
of job v(1) and this job, not being
constrained by any tight precedence delay constraint, should have started earlier
than that date. This implies in particular that s ≥ 2. We have
s−1
X Xs−1
bh − ag+1 ≤ Sv(s)
H
− Sv(1)
H
= Sv(i+1)
H
− Sv(i)
H
= pv(i) + dv(i)v(i+1) .(5)
i=1 i=1
Approximation Bounds for Parallel Machine Scheduling 377
1 1
Mv(i+1)
LP
≥ Mv(i)
LP
+ pv(i) + dv(i)v(i+1) + pv(i+1)
2 2
for all i = 1, . . . , s − 1. Therefore
1X
s−1
1
Mx(h)
LP
− Mv(1)
LP
≥ px(h) + pv(i) + dv(i)v(i+1)
2 2 i=1
and thus
1
Sx(h)
LP
− Mv(1)
LP
≥ (bh − ag+1 ) .
2
If bg > 0, then let x(g) denote a job with start time Sx(g)
H
satisfying bg ≤ Sx(g)
H
≤
ag+1 and with minimum value of Mx(g) under this condition. Therefore Mx(g) ≤
LP LP
Mv(1)
LP
. We also have (k, x(g)) ∈ A[j] for some k ∈ [j] with SkH < bg ≤ Sx(g)H
, for
otherwise job x(g) should have started processing on some idle machine before
date bg . This implies
1
Sx(h)
LP
− Mx(g)
LP
≥ (bh − ag+1 ) (6)
2
and we may repeat the above process with h = g and job x(h) = x(g). Since
g < h at each step, this whole process must terminate, generating a decreasing
sequence of indices q = h(1) > . . . > h(q 0 ) = 0 such that every idle interval
is contained in some interval [ah(i+1)+1 , bh(i) ]. Adding the inequalities (6) and
using SjLP ≤ MjLP for all j = h(i), we obtain
0
X
q
λ≤ (bh(i) − ah(i+1)+1 ) ≤ 2(Sx(h(1))
LP
− Mx(h(q
LP
0 )) ) ≤ 2(Sj
LP
− 0) . (7)
i=1
There exist instances showing that the factors 2 in inequality (4) are (asymp-
totically) best possible for any number of machines, see [27].
Using for C LP an optimal LP solution, Theorem 2 implies performance ratios
of 1/4
P and 4 for the LP relaxation and the heuristic solution, respectively, for
the wj Cj objective.
Examples show that the latter bound is (asymptotically) tight for an arbi-
trary number of machines. We suspect that the first inequality in (8), bounding
the performance ratio of the LP relaxation, is not tight. The worst instances we
know have a performance ratio of 1/3 for the LP relaxation, see [27] for details.
The analysis in Theorem 2 may be refined for some P special cases, yielding
tighter performance ratios. For the problem P|prec| wj Cj , observe that the
list scheduling algorithm will not allow all machines to be simultaneously idle
at any date before the start time of any job i ∈ N . Therefore, in the proof of
Theorem 2, all the idle intervals, with total length λ, contain some processing
of some job(s) i < j; as a result the total work during the busy intervals is at
Pj−1
most i=1 pi − λ. Hence, we obtain the following result.
5 Concluding Remarks
The appropriate introduction of idle time is a rather important part in the design
of approximation algorithms to minimize the weighted sum of completion times
subject to precedence delays. As Example 1 illustrates, idle time is needed to
avoid that profitable jobs which become available soon are delayed by other, less
important jobs. On the other hand, too much idle time is undesired as well. The
necessity to balance these two effects contributes to the difficulty of P
this problem.
Interestingly, all former approximation algorithms for P|rj , prec| wj Cj with
constant-factor performance ratios are based on variants of Graham’s original
list scheduling which actually tries to avoid machine idle time. In fact, Hall
et al. [16] partition jobs into groups that are individually scheduled according
to a GLSA, and then these schedules are concatenated to obtain a solution of
Approximation Bounds for Parallel Machine Scheduling 379
the original problem. To find a good partition, this scheme was enriched with
randomness by Chakrabarti et al. [7]. Chekuri et al. [8] presented a different
variant of a GLSA by artificially introducing idle time whenever it seems that
a further delay of the next available job in the list (if it is not the first) can be
afforded. Hence, the algorithm analyzed in Section 4 seems the first within this
context that does not take the machine-based point of view of GLSAs.
However, an advantage of the rather simple scheme of Chekuri et al. is its
small running time (though the performance ratios obtained are considerably
worse). In fact, so far we have not even explained that the algorithms presented
above are indeed polynomial-time algorithms. Whereas this is obvious for the
GLSA variant for makespan minimization, we have to argue that in case of the
total weighted completion time the linear programming relaxation (3) behaves
well. In fact, it can be solved in polynomial time since the corresponding sepa-
ration problem is polynomially solvable [33].
It seems worth to note that Theorem 2 actually implies stronger results than
stated in Corollaries 1 and 3. The performance ratios given there not only hold
for the weighted sum of completion times, but even for the weighted sum of
third-points and midpoints, respectively. Recall that, in a given schedule and for
a given value 0 < α ≤ 1, the α–point of job j is the earliest time at which a
fraction α of its processing has been performed; thus if the schedule is (or may be
considered as) nonpreemptive, then the α–point of job j is simply Cj − (1 − α)pj .
Talking about α–points, it is interesting to note that in the proof of Theorem 2
other α–points could be used in this analysis, provided that 12 ≤ α < 1, but the
midpoint (α = 1/2) leads to the best bound.
Finally, let us relate precedence delays to another kind of restrictions that has
been given quite some attention recently. Assume that precedence constraints
(i, j) are caused by some technological requirements. Then it seems reasonable
that the information or object produced during the processing of job i needs to
be transferred to job j before the processing of j can start. Hence, precedence
delays might be interpreted as kind of communication delays. This term is coined
with a slightly different meaning, however (see, e.g., [32,19,9,25,26]). In fact, in
this context one usually assumes that a delay only occurs if i and j are assigned
to different machines. Our results can be extended to the model with precedence
and communication delays. For details, we again refer the reader to the full
version of this paper [27].
Acknowledgments
References
1. A. von Arnim, R. Schrader, and Y. Wang. The permutahedron of N-sparse posets.
Mathematical Programming, 75:1–18, 1996.
2. A. von Arnim and A. S. Schulz. Facets of the generalized permutahedron of a
poset. Discrete Applied Mathematics, 72:179–192, 1997.
3. E. Balas, J. K. Lenstra, and A. Vazacopoulos. The one machine problem with
delayed precedence constraints and its use in job-shop scheduling. Management
Science, 41:94–109, 1995.
4. M. Bartusch, R. H. Möhring, and F. J. Radermacher. Scheduling project net-
works with resource constraints and time windows. Annals of Operations Research,
16:201–240, 1988.
5. D. Bernstein and I. Gertner. Scheduling expressions on a pipelined processor with
a maximum delay of one cycle. ACM Transactions on Programming Languages
and Systems, 11:57 – 66, 1989.
6. J. Bruno, J. W. Jones, and K. So. Deterministic scheduling with pipelined proces-
sors. IEEE Transactions on Computers, C-29:308–316, 1980.
7. S. Chakrabarti, C. A. Phillips, A. S. Schulz, D. B. Shmoys, C. Stein, and J. Wein.
Improved scheduling algorithms for minsum criteria. In F. Meyer auf der Heide
and B. Monien, editors, Automata, Languages and Programming, LNCS, Vol. 1099,
pages 646–657. Springer, Berlin, 1996.
8. C. S. Chekuri, R. Motwani, B. Natarajan, and C. Stein. Approximation techniques
for average completion time scheduling. In Proceedings of the 8th ACM–SIAM
Symposium on Discrete Algorithms, pages 609–618, 1997.
9. P. Chrétienne and C. Picouleau. Scheduling with communication delays: A survey.
In P. Chrétienne, E. G. Coffman Jr., J. K. Lenstra, and Z. Liu, editors, Scheduling
Theory and its Applications, chapter 4, pages 65–90. John Wiley & Sons, 1995.
10. F. A. Chudak and D. B. Shmoys. Approximation algorithms for precedence–
constrained scheduling problems on parallel machines that run at different speeds.
In Proceedings of the 8th ACM–SIAM Symposium on Discrete Algorithms, pages
581–590, 1997.
11. M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the
Theory of NP–Completeness. Freeman, San Francisco, 1979.
12. M. X. Goemans. Improved approximation algorithms for scheduling with release
dates. In Proceedings of the 8th ACM–SIAM Symposium on Discrete Algorithms,
pages 591–598, 1997.
13. M. X. Goemans, M. Queyranne, A. S. Schulz, M. Skutella, and Y. Wang. Single
machine scheduling with release dates. Working paper, 1997.
14. R. L. Graham. Bounds for certain multiprocessing anomalies. Bell System Tech.
J., 45:1563–1581, 1966.
15. R. L. Graham, E. L. Lawler, J. K. Lenstra, and A. H. G. Rinnooy Kan. Opti-
mization and approximation in deterministic sequencing and scheduling: A survey.
Annals of Discrete Mathematics, 5:287–326, 1979.
16. L. A. Hall, A. S. Schulz, D. B. Shmoys, and J. Wein. Scheduling to minimize average
completion time: Off–line and on–line approximation algorithms. Mathematics of
Operations Research, 22:513–544, 1997.
17. W. Herroelen and E. Demeulemeester. Recent advances in branch-and-bound pro-
cedures for resource-constrained project scheduling problems. In P. Chrétienne,
E. G. Coffman Jr. , J. K. Lenstra, and Z. Liu, editors, Scheduling Theory and its
Applications, chapter 12, pages 259–276. John Wiley & Sons, 1995.
Approximation Bounds for Parallel Machine Scheduling 381
?
Supported primarily by an IBM Cooperative Fellowship. Remaining support was pro-
vided by an ARO MURI Grant DAAH04-96-1-0007 and NSF Award CCR-9357849,
with matching funds from IBM, Schlumberger Foundation, Shell Foundation, and
Xerox Corporation.
1 Introduction
Liu and Liu [9] analyzed the performance of Graham’s list scheduling algo-
rithm for the case of different speeds and showed that the approximation guar-
antee depends on the ratio of the largest to the smallest speed. This ratio could
be arbitrarily large even for a small number of machines. The first algorithm to
have a bound independent of the speeds was given by Jaffe [7]. He showed that
list scheduling
√ restricted to the set of machines with speeds√that are within a
factor of 1/ m of the fastest machine speed results in an O( m) bound. More
recently, Chudak and Shmoys [1] improved the ratio considerably and gave an
algorithm which has a guarantee of O(log m). At a more basic level their algo-
rithm has a guarantee of O(K) where K is the number of distinct speeds. The
above mentioned algorithm relies on solving a linear programming relaxation
and uses the information obtained from the solution to allocate jobs to proces-
sors. We present a new algorithm which finds an allocation without solving a
linear program. The ratio guaranteed by our algorithm is also O(log m) but is
advantageous for the following reason. Our algorithm runs in O(n3 ) time and
is combinatorial, hence is more efficient than the algorithm in [1]. Further, the
analysis of our algorithm relies on a new lower bound which is very natural,
and might be useful in other contexts. In addition we show that our algorithm
achieves a constant factor approximation when the precedence constraints are
induced by a collection of chains. We remark here that our work was inspired
by, and builds upon the ideas in [1].
2 Preliminaries
We summarize below the basic ideas in the work of Chudak and Shmoys [1].
Their main result is an algorithm which gives a ratio of O(K) for the problem
of Q|prec|Cmax where K is the number of distinct speeds. They also show how
to reduce the general case with arbitrary speeds to one in which there are only
O(log m) distinct speeds as follows.
– Ignore all machines with speed less than 1/m times the speed of the fastest
machine.
– Round down all speeds to the nearest power of 2.
They observe that the above transformation can be done while losing only a con-
stant factor in the approximation ratio. Using this observation, we will restrict
ourselves to the case where we have K distinct speeds.
When all machines have the same speed (K = 1), Graham [4] showed that
list scheduling gives a 2 approximation. His analysis shows that in any schedule
produced by list scheduling, we can identify a chain of jobs j1 ≺ j2 . . . ≺ jr such
that a machine is idle only when one of the jobs in the above chain is being
processed. The time spent processing the above chain is a lower bound on the
optimal makespan. In addition, the measure of the time instants during which
all machines are busy is also a lower bound by arguments about the average
load. These two bounds provide an upper bound of 2 on the approximation ratio
of list scheduling. One can apply a similar analysis for the multiple speed case.
As observed in [1], the difficulty is that the time spent in processing the chain
identified from the list scheduling analysis, is not a lower bound. The only claim
that can be made is that the processing time of any chain on the fastest machine
is a lower bound. However the jobs in the chain guaranteed by the list scheduling
analysis do not necessarily run on the fastest machine. Based on this observation,
the algorithm in [1] tries to find an assignment of jobs to speeds (machines) that
ensures that the processing time of any chain is bounded by some factor of the
optimal.
We will follow the notation of [1] for sake of continuity and convenience.
Recall that we have K distinct speeds. Let mk be the number of machines
with speed sk , k = 1, . . . , K, where s1 > . . . > sK . Let Muv denote the sum
P v
k=u mk . In the sequel we will be interested in assigning jobs to speeds. For
a given assignment, let k(j) denote the speed at which job j is assigned to be
processed. The average processing allocated to a machine of a specific speed k,
denoted by Dk , is the following.
1 X
Dk = pj .
m k sk
j:k(j)=k
A chain is simply a subset of jobs which are totally ordered by the precedence
constraints. Let P be the set of all chains induced by the precedence constraints.
We compute a quantity C defined by the following equation.
X pj
C = max
P ∈P sk(j)
j∈P
386 Chandra Chekuri and Michael Bender
A natural variant of list scheduling called speed based list scheduling is developed
in [1] which is constrained to schedule according to the speed assignments of the
jobs. In classical list scheduling, the first available job from the list is scheduled
as soon as a machine is free. In speed based list scheduling, an available job is
scheduled on a free machine provided the speed of free machine matches the
speed assignment of the job. The following theorem is from [1]. The analysis is
a simple generalization of Graham’s analysis of list scheduling.
X
K
Cmax ≤ C + Dk .
k=1
In this section we develop a simple and natural lower bound that will be used in
the analysis of our algorithm. Before formally stating the lower bound we provide
some intuition. The two lower bounds used in Graham’s analysis for identical
parallel machines are the maximum chain length and the average load. As dis-
cussed in the previous section, a naive generalization of the first lower bound
implies that the maximum chain length (a chain’s length is sum of processing
times of jobs in it) divided by the fastest speed is a lower bound. However it is
easy to generate examples where the maximum of this bound and the average
load is O(1/m) times the optimal. We describe the general nature of such exam-
ples to motivate our new bound. Suppose we have two speeds with s1 = D and
s2 = 1. The precedence constraints between the jobs are induced by a collection
of ` > 1 chains, each of the same length D. Suppose m1 = 1, and m2 = ` · D.
The average load can be seen to be upper bounded by 1. In addition the time
to process any chain on the fastest processor is 1. However if D ` it is easy to
observe that the optimal is Ω(`) since only ` machines can be busy at any time
instant. The key insight we obtain from the above example is that the amount
of parallelism in an instance restricts the number of machines that can be used.
We capture this insight in our lower bound in a simple way. We need a few defi-
nitions to formalize the intuition. We view the precedence relations between the
jobs as a weighted poset where each element of the poset has a weight associated
with it that is the same as the processing time of the associated job. We will
further assume that we have the transitive closure of the poset.
An Algorithm for Uniformly Related Machines 387
With the above definitions in place we are ready to state and prove the new
lower bound.
Theorem 2. Let P = {P1 , P2 , . . . , Pr } be any
Pn maximal
Pmchain decomposition of
the precedence graph of the jobs. Let AL = ( j=1 pi )/( i=1 si ) which represents
the average load. Then
∗
Cmax ≥ max{AL, LP }.
Moreover the lower bound is valid for the preemptive case as well.
∗
Proof. It is easy to observe that Cmax ≥ AL. We will show the following for
1≤j≤m
Pj
∗ |Pi |
Cmax ≥ Pi=1
j
i=1 si
which will prove the theorem. Consider the first j chains. Suppose our input
instance was modified to have only the jobs in the first j chains. It is easy to see
that a lower bound for this modified instance is a lower bound for the original
instance. Since it is possible to execute only one job from each chain at any
time instant, only
Pthe j machines are relevant for this modified instance.
fastestP
j j
The expression ( i=1 |Pi |)/( i=1 si ) is simply the average load for the modified
instance, which as we observed before, is a lower bound. Since the average load
is also a lower bound for the preemptive case, the claimed lower bound applies
even if preemptions are allowed.
Horvath, Lam, and Sethi [6] proved that the above lower bound gives the
optimal schedule length for preemptive scheduling of chains on uniformly related
machines. The idea of extending their lower bound to general precedences using
maximal chain decompositions is natural but does not appear to have been
effectively used before.
388 Chandra Chekuri and Michael Bender
3
Theorem 3. A maximal chain decomposition can be computed in
2
√ O(n ) time.
If all pj are the same, the running time can be improved to O(n n).
Proof. It is necessary to find the transitive closure of the given graph of prece-
dence constraints. This can be done in O(n3 ) time using a BFS from each vertex.
From a theoretical point of view this can be improved to O(nω ) where ω ≤ 2.376
using fast matrix multiplication [2]. A longest chain in a weighted DAG can be
found in O(n2 ) time using standard algorithms. Using this at most n times, a
maximal chain decomposition can be obtained in O(n3 ) time. If all pj are the
same (without loss of generality we can assume they are all 1), the length of a
chain is the same as the number of vertices in the chain. It is possible to√use
this additional structure to obtain a maximal chain decomposition in O(n2 n)
time. We omit the details.
Proof. We prove the above assertions by induction on u. Consider the base case
when u = 1 and `(1) = 1. From the definition of LP it follows that |P1 |/s1 ≤ B.
Since P1 is the longest chain, it follows that |Pj |/s1 ≤ B for 1 ≤ j ≤ r. Let t
be the last chain allocated to s1 . If t = r we are done. If t < r, it must be the
case that adding P(t+1) increases the average load on s1 to more than 4B. Since
Pt
P(t+1) /s1 ≤ B, we conclude that D1 = j=1 |Pj |/m1 s1 > 3B > 2B.
Assume that the conditions of the lemma are satisfied for speeds s1 to su−1
and consider speed su . We will assume that `(u) < r for otherwise there is
nothing to prove. We observe that the second condition follows from the first
using an argument similar to the one used above for the base case. Therefore
it is sufficient to prove the first condition. Suppose |P`(u) |/su > 2B. We will
derive a contradiction later. Let j = Pv`(u) and let v be the index such that
M1v−1 < j ≤ M1v (recall that M1v = k=1 mk ). If j > m, no such index exists
and we set v to K, the slowest speed. If j ≤ m, for convenience of notation we
assume that j = M1v simply by ignoring other machines of speed sv . It is easy
to see that v ≥ u and j > M1u−1 . From the definition of LP , AL, and B, we
Pj Pv
get the following. If j ≤ m then LP ≥ ( i=1 |Pi |)/( k=1 mk sk ). If j > m then
Pj PK
AL ≥ ( i=1 |Pi |)/( k=1 mk sk ). In either case we obtain the fact that
Pj
|P |
Pv i=1 i ≤ max{LP , AL} = B (1)
k=1 mk sk
Since |Pj |/su > 2B, it must be the case that |Pi |/su > 2B for all M1u−1 < i ≤ j.
This implies that
X
j
|Pi | > 2B(j − M1u−1 )su
M1u−1 <i
X
v
≥ 2B m k sk
k=u
X
j X
v
⇒ |Pi | > 2B m k sk (2)
i=1 k=u
The last inequality follows since we are summing up more terms on the left hand
side. From the induction hypothesis it follows that speeds s1 to su−1 have an
average load greater than 2B. From this we obtain
X
j−1 X
u−1
|Pi | > 2B m k sk (3)
i=1 k=1
X
j X
u−1
⇒ |Pi | > 2B m k sk (4)
i=1 k=1
390 Chandra Chekuri and Michael Bender
X
j X
u−1 X
v
2 |Pi | > 2B mk sk + 2B m k sk
i=1 k=1 k=u
Xv
> 2B m k sk
k=1
X
j X
v
⇒ |Pi | > B m k sk (5)
i=1 k=1
|Pj |
Corollary 1. If chain Pj is assigned to speed i, then si ≤ 2B.
∗
Lemma 2. For 1 ≤ k ≤ K, Dk ≤ 4Cmax .
∗
Proof. Since B ≤ Cmax and the algorithm never loads a speed by more than an
average load of 4B, the bound follows.
∗
Lemma 3. For the job assignment produced by Chain-Alloc C ≤ 2KCmax .
P ∗
Proof. Let P be any chain. We will show that j∈P pj /sk(j) ≤ 2KCmax where
k(j) is the speed to which job j is assigned. Let Ai be the set of jobs in P which
are assigned to speed i. Let P` beP the longest chain assigned to speed i by the
algorithm. We claim that |P` | ≥ j∈Ai pi . This is because the jobs in Ai form a
chain when we picked P` to be the longest chain in the max chain decomposition.
∗
From Corollary 1 we know that |P` |/si ≤ 2B ≤ 2Cmax . Therefore it follows that
X pj XK
|Ai | ∗
= ≤ 2KCmax .
sk(j) i=1
si
j∈P
Theorem 4. Using speed based list scheduling on the job assignment produced
by Algorithm Chain-Alloc gives a 6K approximation where K is the number of
distinct speeds. Furthermore the algorithm runs in O(n3 ) time. The running time
2√
can be improved to O(n n) if all pj are the same.
∗
Proof. From Lemma 2 we have Dk ≤ 4Cmax for 1 ≤ k ≤ K and from Lemma 3
∗
we have C ≤ 2KCmax . Putting these two facts together, for the job assignment
produced by the algorithm Chain-Alloc, speed based list scheduling gives the
following upper bound by Theorem 1.
X
K
∗ ∗ ∗
Cmax ≤ C + Dk ≤ 2KCmax + 4KCmax ≤ 6KCmax .
k=1
An Algorithm for Uniformly Related Machines 391
It is easy to see that the speed based list scheduling can be implemented in
O(n2 ) time. The running time is dominated by the time to do the maximum
chain decomposition. Theorem 3 gives the desired bounds.
We remark here that the leading constant in the LP based algorithm in [1]
is better. We also observe that the above bound is based on our lower bound
which is valid for preemptive schedules as well. Hence our approximation ratio
is also valid for preemptive schedules. In [1] it is shown that the lower bound
provided by the LP relaxation is a factor of Ω(log m/ log log m) away from the
optimal. Surprisingly it is easy to show using the same example as in [1] that
our lower bound from Section 3 is also a factor of Ω(log m/ log log m) away from
the optimal.
Theorem 5. There are instances where the lower bound given in Theorem 2 is
a factor of Ω(log m/ log log m) away from the optimal.
Proof. The proof of Theorem 3.3 in [1] provides the instance and it is easily
verified that any maximum chain decomposition of that instance is a factor of
Ω(log m/ log log m) away from the optimal.
Now consider the scenario where each job j has a release date rj before which
it cannot be processed. By a general result of Shmoys, Wein, and Williamson
[10] an approximation algorithm for the problem without release dates can be
transformed to one with release dates losing only a factor of 2 in the process.
Therefore we obtain the following.
Theorem 6. There is an O(log m) approximation algorithm for the problem
Q|prec, rj |Cmax that runs in time O(n3 ).
In this subsection we show that Chain-Alloc followed by speed based list schedul-
ing gives a constant factor approximation if the precedence constraints are in-
duced by a collection of chains. We give an informal proof in this version of
the paper. We first observe that any maximal chain decomposition of a collec-
tion of chains is simply the collection itself. The crucial observation is that the
algorithm Chain-Alloc allocates all jobs of any chain to the same speed class.
The two observation together imply that there are no precedence relations be-
tween jobs allocated to different speeds. This allows us to obtain a stronger ver-
sion of Theorem 1 where we can upper bound the makespan obtained by speed
392 Chandra Chekuri and Michael Bender
5 Conclusions
The main contribution of this paper is a simple and efficient O(log m) approxi-
mation to the scheduling problem Q|prec|Cmax . Chudak and Shmoys [1] provide
similar approximations for the more general casePwhen the objective function is
the average weighted completion time (Q|prec| wj Cj ) using linear program-
ming relaxations. We believe that the techniques of this paper can be extended
to obtain a simpler and combinatorial algorithm for that case as well. It is known
that the problem of minimizing makespan is hard to approximate to within a
factor of 4/3 even if all machines have the same speed [8]. However, for the single
speed case a 2 approximation is known, while the current ratio for the multi-
ple speed case is only O(log m). Obtaining a constant factor approximation, or
improving the hardness are interesting open problems.
Acknowledgments
We thank Monika Henzinger for simplifying the proof of Lemma 1.
References
1. F. Chudak and D. Shmoys. Approximation algorithms for precedence-constrained
scheduling problems on parallel machines that run at different speeds. Proceedings
of the Eighth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA),
1997.
2. D. Coppersmith and S. Winograd. Matrix multiplication via arithmetic progres-
sion. Proceedings of the 19th ACM Symposium on Theory of Computing, pages
1–6, 1987.
3. M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the
Theory of NP-Completeness. Freeman, San Francisco, 1979.
4. R.L. Graham. Bounds for certain multiprocessor anomalies. Bell System Tech. J.,
45:1563–81, 1966.
5. R. L. Graham, E. L. Lawler, J. K. Lenstra, and A. H. G. Rinnooy Kan. Opti-
mization and approximation in deterministic sequencing and scheduling: A survey.
Ann. Discrete Math., 5:287–326, 1979.
6. E. Horvath, S. Lam, and R. Sethi. A level algorithm for preemptive scheduling.
Journal of the ACM, 24(1):32–43, 1977.
An Algorithm for Uniformly Related Machines 393
7. J. Jaffe. Efficient scheduling of tasks without full use of processor resources. The-
oretical Computer Science, 26:1–17, 1980.
8. J. K. Lenstra and A. H. G. Rinnooy Kan. Complexity of scheduling under prece-
dence constraints. Operations Research, 26:22–35, 1978.
9. J. W. S. Lui and C. L. Lui. Bounds on scheduling algorithms for heterogeneous
computing systems. In J. L. Rosenfeld, editor, Information Processing 74, pages
349–353. North-Holland, 1974.
10. D. Shmoys, J. Wein, and D. Williamson. Scheduling parallel machines on-line.
SIAM Journal on Computing, 24:1313–31, 1995.
On the Relationship Between Combinatorial and
LP-Based Approaches to NP-Hard Scheduling
Problems
? ??
R. N. Uma and Joel Wein
1 Introduction
A well-studied approach to the exact solution of NP-hard scheduling problems
may be called enumerative methods, in which (implicitly) every possible solution
to an instance is considered in an ordered fashion. An example of these methods
is branch-and-bound, which uses upper and lower bounds on the value of the
optimal solution to cut down the search space to a (potentially) computationally
tractable size. Such methods are typically most effective when the subroutines
used to calculate both the upper and lower bounds are fast and yield strong
bounds, hence quickly eliminating much of the search space from consideration.
Although there are a wealth of approaches to designing the lower-bounding
subroutines, we can identify two that have been particularly prominent. The
first relies on a linear-programming relaxation of the problem, which itself is
often derived from an integer linear-programming formulation by relaxing the
integrality constraints; Queyranne and Schulz give an extensive survey of this
approach [15]. The second relies on what we will call a combinatorial relaxation of
the problem and yields what we will call a combinatorial lower bound. By this we
simply mean that the lower bound is produced by exploiting some understanding
of the structure of the problem as opposed to by solving a mathematical program.
For example, in this paper we focus on combinatorial lower bounds that are
obtained by relaxing the constraint (in a nonpreemptive scheduling problem)
that the entire job must be processed in an uninterrupted fashion.
Another approach to an NP-hard scheduling problem is to develop an ap-
proximation algorithm. Here the goal is to design an algorithm that runs in
polynomial time and produces a near-optimal solution of some guaranteed qual-
ity. Specifically, we define a ρ-approximation algorithm to be an algorithm that
runs in polynomial time and delivers a solution of value at most ρ times optimal;
see [9] for a survey. In contrast, an enumerative approach attempts to solve a
(usually small) problem to optimality, with no guarantee that the solution will
be obtained in time polynomial in the size of the input.
Recently various researchers have been successful in creating new connec-
tions between linear-programming relaxations used to give lower bounds for
certain scheduling problems and the design of approximation algorithms. Specif-
ically, they have used these relaxations to develop approximation algorithms
with small-constant-factor worst-case performance guarantees; as a by-product
one obtains worst-case bounds on the quality of the lower bound delivered by
these relaxations [14,10,7,18,17]. We define a ρ-relaxation of a problem to be a
relaxation that yields a lower bound that is always within a factor of ρ of the
optimal solution.
In this paper we establish additional connections between different approaches
to these problems. We consider two N P -hard scheduling problems in which the
goal is
Pto minimize the average weighted completion time of the jobs scheduled:
1|rj | wj Cj , theP problem of scheduling n jobs with release dates on a single
machine, and P || wj Cj , the problem of scheduling n jobs on identical parallel
processors. For each problem we show that a combinatorial lower bound that
was used successfully in a branch-and-bound code for the problem is equivalent
396 R. N. Uma and Joel Wein
Akker et. al. based on xjt -relaxations [20] (since they were developed several
years apart in different programming languages on different architectures, etc.)
the evidence seems to be that neither much dominates the other; however, that
of Belouadah, Posner and Potts seems to have been somewhat stronger, as they
were able to solve to optimality problems of size 50 whereas van den Akker et.
al solved to optimality problems of size 30. The enhanced strength of the lower
bounds due to the xjt -relaxations does not make up for the amount of time it
takes to solve them.
Discussion of Results: This paper was born out of an interest to make more
precise, from both an analytical and empirical perspective, the comparison be-
tween the LP-based techniques and the techniques associated with the best com-
binatorial branch-and-bound algorithm. In this process several potentially sur-
prising relationships between these two approaches arose. Specifically,
P we show
that the solution delivered by the yjt -based relaxation for 1|rj | wj Cj is identi-
cal to that used to deliver the weaker of the two lower bounds used by Belouadah,
Posner and Potts. We also show that the stronger of their two lower bounds, while
empirically usually weaker than the xjt -based relaxation, neither always domi-
nates that lower bound nor is it dominated by it. A corollary of this
P observation
is that the optimal preemptive schedule for an instance of 1|rj | wj Cj neither
always dominates nor is dominated by the solution to the xjt -relaxation.
We then establish a similar relationship P for a different problem. Webster
[23] gave a series of lower bounds for P || wj Cj that are based on a similar
notion to the job-splitting approach of Belouadah, Posner and Potts. We show
that the weakest of his lower bounds (which in fact was originally proposed by
Eastman, Even and Isaacs in 1964 [6] ) is equivalent to a generalization of the
yjt relaxation to parallel
P machines that was also used to give approximation
algorithms for P |rj | wj Cj by Schulz and Skutella [18,17].
We then give an empirical evaluation P of the quality of the different lower
bounds and associated heuristics for 1|rj | wj Cj ; this extends and puts in a
broader context a recent experimental study of Savelsbergh and the authors [16].
We demonstrate that the stronger lower bound considered by Belouadah, Posner
and Potts on synthetic data sets (which can be computed in O(n2 ) time) on aver-
age improves on the yjt lower bound by a few percent, and that heuristics based
on this relaxation improve by a few percent as well. However, we demonstrate
that on most of the synthetic data sets we consider, the simple greedy heuristic
used by Belouadah, Posner and Potts is superior to all of the heuristics based
on the approximation algorithms associated with the different LP relaxations.
It is only on data sets that were specifically designed to be difficult that the
LP-based heuristics outperform the simple greedy approach.
Finally, we note that simple local-improvement techniques are often very suc-
cessful in giving good solutions to scheduling problems [1]; we therefore consider
the impact of some simple local improvement techniques when applied both
“from scratch” and to the solutions yielded by the various heuristics that we
consider.
398 R. N. Uma and Joel Wein
2 Background
In this section we briefly review the relevant lower bounds and algorithms. In
both problems we consider we have n jobs j, j = 1, . . . P , n, each with positive
processing time pj and nonnegative weight wj . For 1|rj | wj Cj with each job
is associated a release date rj before which it is not available for processing.
LP-Relaxations: P We begin with the two relevant linear-programming relax-
ations of 1|rj | wj Cj . As mentioned earlier, Dyer and Wolsey introduced sev-
eral integer linear programming formulations of the problem. We focus on two.
In the first, with variables yjt and completion-time variables Cj , yjt = 1 if job j
is being processed in the time period [t, t + 1] and yjt = 0 otherwise.
Pn
minimize j=1 wj Cj
Pn
subject to yjt ≤ 1, t = 1, . . . , T ;
PTj=1
y
t=1 jt = p j , j = 1, . . . , n;
pj 1 PT 1
Cj = 2 + pj t=1 (t + 2 )yjt , j = 1, . . . , n;
yjt ≥ 0, j = 1, . . . , n, t = rj , . . . , T.
The assignment constraints (1) state that each job has to be completed ex-
actly once, and the capacity constraints (2) state that the machine can process
at most one job during any time period.
Job Splitting: The lower bounds of Belouadah, Posner and Potts are based on
job splitting. This technique is based on the idea that a relaxation of a nonpre-
emptive scheduling problem may be obtained by splitting each job intoPsmaller
pieces that can be scheduled individually. If the objective function is wj Cj ,
when we split job j into pieces we also must split its weight wj among the pieces
as well. In essence, we create a number of smaller jobs. If we split the jobs in
such a way that we can solve the resulting relaxed problem in polynomial time,
Combinatorial and LP-Based Approaches for Scheduling Problems 399
One Machine: We first introduce some notation to describe the two BPP lower
p w
bounds. We say job l is “better” than job j if wpll < wjj , or, equivalently, if wpll > pjj .
For both bounds jobs are split as follows. When a better job arrives, we split the
400 R. N. Uma and Joel Wein
currently executing job into two pieces such that one piece completes at the
arrival time of the new job and the the second piece is considered for scheduling
later. When a job is split into pieces, its weight is also split. So if job j is split
into k pieces, then each piece i has a processing time pij , a weight wji and release
Pk Pk
date rj , such that i=1 pij = pj and i=1 wji = wj .
For the BPP1 bound, the weights are assigned to the pieces of a job such
wji wj
that pij
= pj for all i = 1, . . . k, whereas for BPP2 the weights are assigned to
the pieces in a greedy fashion with the aim of maximizing the lower bound; in
[2] they have shown that BPP2 is always greater than or equal to BPP1.
Let us denote the lower bound given by BPP1 as LB BP P 1 and the lower
bound given by the yjt LP relaxation as LB yjt .
Theorem 1. LB yjt = LB BP P 1 .
X
k
wj ∗ (t1j + pj ) = wji Cji + CBRKj (3)
i=1
X
k−1 X
k
CBRKj = wji phj
i=1 h=i+1
y
LBj jt ). Let job j be released at rj with a processing time requirement of pj and
weight wj . Let this job be split into k pieces of lengths p1j , . . . , pkj starting at
times t1j , . . . , tkj , respectively. So we have p1j + p2j + · · · + pkj = pj . BPP1 would
pij
assign weights wji = pj wj for i = 1, . . . , k. The cost of breaking job j is given by,
X
k−1 X
k
CBRKj = wji phj
i=1 h=i+1
X
k−1
wj i X h
k
= · pj pj
i=1
pj
h=i+1
wj 1 X
k Xk
= · (( pij )2 − (pij )2 )
pj 2 i=1 i=1
1X i i
k
1
= wj pj − w p
2 2 i=1 j j
wj X i 1 i
k
wj pj 1 1
= + ((t + )(t + 1 + ) + · · · + (tij + (pij − 1) + ))
2 pj i=1 j 2 j 2 2
wj X i i (pij )2
k
wj pj
= + (pj tj + (pij )2 − )
2 pj i=1 2
Xk
pij wj pj wj X i 2
k
= ( wj )(tij + pij ) + − (p )
i=1
pj 2 2pj i=1 j
= LBjBP P 1
Summing over all jobs j we have the required result. t
u
As an immediate corollary we obtain an upper bound on the quality of lower
bound provided by both BPP1 and BPP2.PGoemans et al. [8] proved that the
yjt -relaxation is a 1.685-relaxation of 1|rj | wj Cj ; thus we see that BPP1 and
BPP2 are as well. We now turn to the relationship with the xjt relaxation; it is
known that this is stronger than the yjt [5].
402 R. N. Uma and Joel Wein
Theorem 2. The lower bound given by BPP2 neither always dominates nor is
dominated by the xjt -lower bound.
The proof is by exhibiting two instances; one on which BPP2 is better and
one on which xjt is better. Due to space constraints the instances are omitted
in this extended abstract.
Parallel
P Identical Machines: In [23], Webster considers the problem
P || wj Cj He gives a series of progressively stronger lower bounds for this prob-
lem all of which are based on ideas similar to job-splitting; these lower bounds
lead to a successful branch-and-bound algorithm. The weakest of these bounds is
actually due to a 1964 paper by Eastman, Even and Isaacs [6]. By an argument
of a similar flavor to that of the one machine problem we can show that in fact
the weakest bound is equivalent to an extension of the yjt -relaxation to parallel
machines. In this extension the m machines are conceptualized as one machine
of speedPm. Schulz and Skutella show that P this formulation is a 2-relaxation
of P |rj | wj Cj and a 3/2-relaxation of P || wj Cj . Williamson [24] had also,
independently, observed this equivalence between theP lower bounds due to East-
man, Even and Isaacs and the yjt -relaxation of P || wj Cj . By establishing this
equivalence we obtain a worst-case upper bound on the performance of all of
Webster’s lower bounds. In fact, he considers a more general problem in which
each processor can have non-trivial ready times – our results extend to this case
as well. The details are omitted due to the space constraints of the extended
abstract.
4 Empirical Evaluation
bound at modest additional computational cost (O(n log n) to O(n2 )), but since
both are relaxations of the optimal preemptive schedule, on the Hard1 data
set the BPP2 bound is still far from the xjt -lower bound. (Do not be misled by
the small numbers recorded for Hard2. They are with respect to the best lower
bound we know for that instance, which is BPP2.) Furthermore, note that on
the Synthetic1 data set sometimes BPP2 is better than the xjt -relaxation, and
this explains why none of the numbers in that column is 0 – the comparison
is always with respect to the best lower bound for that instance. We note that
the maximum improvement observed by BPP2 over BPP1 on any instance was
9.492%, on an instance in the Hard1 data set.
Table 1. Quality of the lower bounds with respect to the weighted flow time
given by yjt , BP P 2 and xjt relaxations. We report on (BEST
LB
−LB)
× 100, where
BEST is the best available lower bound and LB is the corresponding lower
bound. The values reported are averaged over all the instances in each case.
Results for the yjt and xjt relaxations are from the experimental work of Savels-
bergh et al.
In some sense this performance is quite surprising, but in another it is not very
surprising at all. WSPT, while lacking any worst-case performance guarantee, is
a natural choice that should work well “most of the time”. It is likely that when
one generates synthetic data one is generating instances that one would think
of “much of the time”. It is on the harder sorts of instances that the potential
problems with such a heuristic arise.
Although it would not be difficult to generate instances that would yield
horrendous performance for WSPT the purpose of an experimental study is to
yield insight into algorithm performance on instances that may be somewhat
natural. Towards this end we generated a spectrum of problems in the framework
of “a few jobs of size P and lots of jobs of size 1”, with P ranging from 1 to
1000. The results of the experiment, plotted in Figure 1, gives a qualitative
sense of the range in which WSPT is competitive with algorithms with worst-
case performance guarantee, which is essentially up to P = 100 or so.
Finally, we experimented with the impact of local improvement, which can
be a very powerful algorithmic technique for certain scheduling problems. Specif-
ically, given a solution we considered all pairs and all triples of jobs, switching
any that led to an improved solution and iterating until no improving switch
existed. We applied these to the solutions of all the heuristics. For the heuristics
that considered several possible schedules we applied local improvement to all
of them and took the best resulting schedule. The results, reported in Table 3,
indicate that the combination of local improvement applied to a collection of
high-quality schedules yield the best results. We note further that applying this
local improvement from scratch (random orderings) was not competitive with
its application to a good initial schedule; the latter approach on average yielded
solutions of quality 40-50% better. The importance of the quality of the initial
schedule for local improvement was also observed by Savelsbergh et al [16] in
the case of a real resource constrained scheduling problem.
406 R. N. Uma and Joel Wein
3.5
2.5
1.5
0.5
0
0 200 400 600 800 1000
p_max (k)
P
Fig. 1. Plot of ALG
LP ratios for wj Fj for Best-α, 5-Best-α and WSPT. Each
data point is an average of 10 instances. On the x-axis we plot the maximum
job size pmax . pmax = k means that the processing time was generated so that
p = 1 with a probability of 0.9 and p = k with a probability of 0.1. The arrival
times were generated uniformly in the range [0..500]
5 Conclusions
Enthusiasts of worst-case analysis may be disappointed by the relatively poor
showing of the approximation algorithms with respect to the simple WSPT
heuristic. They may be consoled by their advantages on certain classes of diffi-
cult problems and their supremacy when coupled with local improvement. We
suggest, however, that although it is interesting to compare these approaches on
simple models, perhaps the most important role for worst-case analysis is as a
tool that forces the algorithm designer to have new ideas that may also be useful
in other more complex problems1 . Savelsbergh et al. showed that the idea of us-
ing many α values led to improved solutions for actual complex manufacturing
scheduling problems; for these problems it is unlikely that there exist simple
heuristics that will perform as well in such settings.
Finally, in this study we have touched on several approaches to scheduling
problems: linear programming, approximation, combinatorial relaxations and
branch-and-bound, and local improvement, and made a modest contribution to
our further understanding of their relationship. We feel that it is an important
direction to continue to try to understand in a unified fashion the different roles
that these elements can play in the theory and practice of scheduling.
also like to thank Andreas Schulz for inviting him to ISMP ’97, where the idea for
this paper arose in discussions with Chris Potts. Some of the results in Section
3 were independently obtained by David Williamson and a joint journal paper
is forthcoming.
References
Volker Kaibel
1 Introduction
In the symmetric case we have quadratic costs q̂({i,k},{j,l}) for assigning the two
objects i and k anyhow to the two locations j and l, and we have to find an
assignment ϕ : {1, . . . , m} −→ {1, . . . , n} that minimizes
X
m X
m X
m
q̂({i,k},{ϕ(i),ϕ(k)}) + c(i,ϕ(i)) .
i=1 k=i+1 i=1
2 QAP-Polytopes
A hyperedge {(i, j), (k, l), (i, l), (k, j)} is denoted by hi, j, k, li. The sets rowi :=
{(i, j) ∈ Vm,n : j ∈ N } and colj := {(i, j) ∈ Vm,n : i ∈ M} are called the i-th
row and the j-th column of Vm,n , respectively.
We call a subset C ⊂ Vm,n of nodes a clique of the hypergraph Ĝm,n if it
intersects neither any row nor any column more than once. The maximal cliques
of Ĝm,n are the m-cliques. The set of hyperedges that is associated with an m-
clique C ⊂ Vm,n of Ĝm,n consists of all hyperedges that share two nodes with C.
This set is denoted by Êm,n (C). Solving symmetric QAPs then is equivalent to
finding minimally node- and hyperedge-weighted m-cliques in Ĝm,n .
We denote by x(... ) ∈ RVm,n and z (... ) ∈ RÊm,n the characteristic vectors
of subsets of Vm,n and Êm,n , respectively. Thus the following polytope encodes
the structure of the symmetric QAP in an adequate fashion (where we simplify
(xC , z C ) := (xC , z Êm,n (C) )):
n o
SQAP m,n := conv (xC , z C ) : C is an m-clique of Ĝm,n
Proof. The “only if part” is obvious. To prove the “if part”, let (x, z) ∈ RVm,n ×
RÊm,n satisfy (1), . . . ,(5). Since x is a 0/1-vector that satisfies (1) and (2) it must
be the characteristic vector of some m-clique C ⊂ Vm,n of Ĝm,n . Considering
two appropriate equations from (3), one obtains (by the nonnegativity of z) that
zhi,j,k,li > 0 implies x(i,j) = x(k,l) = 1 or x(i,l) = x(k,j) = 1. But then, in each
of the equations (3) there is at most one hyperedge involved that corresponds
to a non-zero component of z. This leads to the fact that zhi,j,k,li > 0 implies
412 Volker Kaibel
How is the n × n-case related to the m × n-case? Obviously, SQAP m,n arises
from SQAP n,n by the canonical orthogonal projection σ̂ (m,n) : RVn,n ×RÊn,n −→
RVm,n × RÊm,n . Let Wm,n = Vn,n \Vm,n and Fm,n = {hi, j, k, li ∈ Eˆn,n : hi, j, k, li∩
Wm,n 6= ∅} be the sets of nodes and hyperedges that are “projected out” this
way. The following connection is very useful.
Remark 1. If an inequality (a, b)T (x, z) ≤ α defines a facet of SQAP n,n and
av = 0 holds for all v ∈ Wm,n as well as bh = 0 for all h ∈ Fm,n , then the
“projected inequality” (a0 , b0 )T (x0 , z 0 ) ≤ α with (a0 , b0 ) = σ̂ (m,n) (a, b) defines a
facet of SQAP m,n .
The following result shows that in order to investigate the m × n-case with
m < n it suffices to restrict even to m ≤ n − 2. In fact, it turns out later that
the structures of the polytopes for m ≤ n − 2 differ a lot from those for m = n
or m = n − 1.
x(colj) = 1 (j ∈ N ) (6)
(i,j)
− x(i,j) − x(i,l) + z ∆(i,l) = 0 (i, j, l ∈ N , j < l) (7)
are valid for SQAP n,n . Obviously, the columns of these equations that corre-
spond to nodes in Wn−1,n or to hyperedges in Fn−1,n are linearly independent.
This implies the theorem. t
u
The questions for the affine hull, the dimension, and the trivial facets are an-
swered by the following theorem.
Theorem 3. Let 3 ≤ m ≤ n − 2.
(i) The affine hull of SQAP m,n is precisely the solution space of (1) and (3).
X(rowi ) = 1 (i ∈ N ) (8)
X(colj) = 1 (j ∈ N ) (9)
(i,j)
− X(i,j) − X(k,j) + Z ∆(k,j) = 0 (i, j, k ∈ N , i < k) (10)
(i,j)
− X(i,j) − X(i,l) + Z ∆(i,l) = 0 (i, j, l ∈ N , j < l) (11)
The fact that (9) and (11) are needed additionally to describe the affine hull of
the polytope in the n × n-case is the most important difference to the m × n-case
with m ≤ n − 2.
It turned out ([12,8]) that minimizing over the intersection SEQP n,n of
aff(SQAP n,n ) and the nonnegative orthant empirically yields a very strong lower
bound for the symmetric n× n-QAP. In contrast to that, minimizing over the in-
tersection SEQP m,n of aff(SQAP m,n ) and the nonnegative orthant usually gives
rather poor lower bounds (for m ≤ n − 2). However, solving the corresponding
linear programs is much faster in the m × n case (as long as m is much smaller
than n).
In order to obtain a good lower bound also in the m×n-case, one could add n−
m dummy objects to the instance and after that calculate the bound in the n×n-
model. Clearly it would be desirable to be able to compute that bound without
“blowing up” the model by adding dummies. The following result provides a
possibility to do so, and hence, enables us to compute good lower bounds fast in
case of considerably less objects than locations. One more notational convention
is needed. For two disjoint columns colj and coll of Ĝm,n we denote by hcolj : coll i
the set of all hyperedges that share two nodes with colj and two nodes with coll .
x(rowi ) = 1 (i ∈ M) (12)
x(colj) ≤ 1 (j ∈ N ) (13)
(i,j)
− x(i,j) − x(k,j) + z ∆(k,j) = 0 (i, k ∈ M, i < k, j ∈ N ) (14)
414 Volker Kaibel
(i,j)
− x(i,j) − x(i,l) + z ∆(i,l) ≤ 0 (j, l ∈ N , j < l, i ∈ M) (15)
x(colj ∪ coll ) − z(hcolj : coll i) ≤ 1 (j, l ∈ N , j < l) (16)
xv ≥ 0 (v ∈ Vm,n ) (17)
zh ≥ 0 (h ∈ Êm,n ) (18)
Proof. It should be always clear from the context whether a symbol like rowi is
meant to be the i-th row of Vn,n or of Vm,n . The rule is that in connection with
variables denoted by lower-case letters always Vm,n is the reference set, while
variables denoted by upper-case letters refer to Vn,n .
We shall first consider the “only if claim” of the theorem. Let (X, Z) ∈
SEQP n,n , and let (x, z) = σ̂ (m,n) (X, Z) be the projections of (X, Z). Obviously,
(12), (14), and the nonnegativity constraints hold for (x, z). The inequalities (13)
and (15) follow from (9), (11) and the the nonnegativity of (X, Z).
It remains to show that the inequalities (16) are satisfied by (x, z). The
equations
hold, since (X, Z) ∈ aff(SQAP n,n ) and they are easily seen to be valid for
SQAP n,n . For j ∈ N we denote
Adding some equations of (11) (the ones with i > m) to (19) yields equations
Thus, by the nonnegativity of Z, the inequalities (16) hold for the projected
vector (x, z).
We come to the more interesting “if claim”. In order to show that the
given system (12), . . . ,(18) of linear constraints forces the point (x, z) to be
contained in the projected polytope σ̂ (m,n) (SEQP n,n ), we shall exhibit a map
φ : RVm,n × RÊm,n −→ RVn,n × RÊn,n that maps such a point (x, z) satisfying
(12), . . . ,(18) to a point (X, Z) = φ(x, z) ∈ SEQP n,n which coincides with (x, z)
on the components belonging to Ĝm,n (as a subgraph of Ĝn,n ). Hence, the first
step is to define (X, Z) = φ(x, z) as an extension of (x, z), and the second step
is to prove that this (X, Z) indeed satisfies (8), . . . ,(11), as well as (X, Z) ≥ 0.
The following extension turns out to be a suitable choice (recall that m ≤ n − 2):
1 − x(colj )
X(i,j) := (i > m) (21)
n−m
(i,j)
x(i,j) + x(i,l) − z ∆(i,l)
Zhi,j,k,li := (i ≤ m, k > m) (22)
n−m
2 1 − x(colj ∪ coll ) + z (hcolj : coll i)
Zhi,j,k,li := (i, k > m) (23)
(n − m − 1)(n − m)
Polyhedral Combinatorics of QAPs 415
Let (x, z) ∈ RVm,n × RÊm,n satisfy (12), . . . ,(18), and let (X, Z) = φ(x, z) be the
extension defined by (21), . . . ,(23). Clearly, X is nonnegative (by (13)) and Z
is nonnegative (by (15) for i ≤ m, k > m and by (16) for i, k > m).
The validity of (8), . . . ,(11) for (X, Z) is shown by the following series of
calculations. We use the notation
for the set of all hyperedges of Ĝm,n that contain the node (i, j). Note that by
(14) we have
(21) X 1 − x(colj )
X(rowi ) =
n−m
j∈N
X
1
= n−m n− x(colj )
j∈N
X
1
= n−m n− x(rowi )
i∈M
(12)
= 1 .
(21) 1 − x(colj )
X(colj ) = x(colj ) + (n − m)
n−m
= 1 .
1
It remains to consider the case i, k > m. Here, we get (using α := (n−m−1)(n−m)
in order to increase readability)
(i,j)
−X(i,j) − X(k,j) + Z ∆(k,j)
(23) X
= −X(i,j) − X(k,j) + 2α (1 − x(colj ∪ coll ) + z(hcolj : coll i))
l∈N \j
= −X(i,j) − X(k,j)
X 1
+2α n − 1 − (n − 2)x(colj ) − x(Vm,n ) + z(∆(i, j))
2
i∈M
(12),(24)
= −X(i,j) − X(k,j) + 2α n − m − 1 + (m − n + 1)x(colj )
2
= −X(i,j) − X(k,j) + (1 − x(colj ))
n−m
(21)
= 0 .
(i,j)
−X(i,j) − X(i,l) + Z ∆(i,l)
X X
= −x(i,j) − x(i,l) + Zhi,j,k,li + Zhi,j,k,li
k∈M\i k∈N \M
(i,j)
(22) X x(i,j) + x(i,l) − z ∆(i,l)
(i,j)
= −x(i,j) − x(i,l) + z ∆(i,l) +
n−m
k∈N \M
= 0 .
(i,j)
−X(i,j) − X(i,l) + Z ∆(i,l)
X X
= −X(i,j) − X(i,l) + Zhi,j,k,li + Zhi,j,k,li
k∈M k∈N \M\i
(k,l)
(22),(23) X x(k,l) + x(k,j) − z ∆(k,j)
= −X(i,j) − X(i,l) +
n−m
k∈M
X 1 − x(colj ∪ coll ) + z(hcolj : coll i)
+2
(n − m − 1)(n − m)
k∈(N \M)\i
Polyhedral Combinatorics of QAPs 417
1
= −X(i,j) − X(i,l) + x(coll + x(colj ) − 2z(hcoll : colj i)
n−m
2
+ 1 − x(colj ∪ coll ) + z(hcolj : coll i)
n−m
1
= −X(i,j) − X(i,l) + 2 − x(colj ) − x(coll )
n−m
(21)
= 0 .
t
u
Finally, we investigate the system (12), . . . ,(18) with respect to the question
of redundancies. From Theorem 3 we know already that the nonnegativity con-
straints (17) and (18) define facets of SQAP m,n as well as that (12) and (14)
are needed in the linear description of the affine hull of the polytope. Thus it
remains to investigate (13), (15), and (16). And in fact, it turns out that one of
these classes is redundant.
Theorem 5. Let 4 ≤ m ≤ n − 2.
and
x (Vm,n ) = m (26)
hold for SQAP m,n . Thus, they are implied by the linear system (12), (14) due
to Theorem 3. Adding up all inequalities (16) for a fixed j ∈ N and all l ∈ N \ j
and subtracting (25) (for that j) and (26) yields
X
n−m−1≥ x(colj ∪ coll ) − z(hcolj : coll i)
l∈N \j
6 Computational Results
Using the ABACUS framework (Jünger and Thienel [7]) we have implemented a
simple cutting plane algorithm for (symmetric) m×n-instances (with m ≤ n−2)
Polyhedral Combinatorics of QAPs 419
that uses (12), (14), . . . ,(18) as the initial set of constraints. Thus, by Theorem 4
(and Theorem 5 (i)), the first bound that is computed is the symmetric equa-
tion bound (SEQB), which is obtained by optimizing over the intersection of
aff(SQAP n,n ) with the nonnegative orthant.
The separation algorithm that we use is a simple 2-opt based heuristic for
finding violated 1-box inequalities with β = 2. We limited the experiments to
this small subclass of box inequalities since on the one hand they emerged as
the most valuable ones from initial tests, and on the other hand even our simple
heuristic usually finds many violated inequalities among the 1-box inequalities
with β = 2 (if it is called several times with different randomly chosen initial
boxes T ).
The experiments were carried out on a Silicon Graphics Power Challenge
computer. For solving the linear programs we used the barrier code of CPLEX
4.0, which was run in its parallel version on four processors.
We tested our code on the esc instances of the QAPLIB, which are the
only ones in that problem library that have much less objects than locations.
Note that all these instances have both a symmetric (integral) flow as well as
a symmetric (integral) distance matrix, yielding that only even numbers occur
as objective function values of feasible solutions. Thus, every lower bound can
be rounded up to the next even integer number greater than or equal to it.
Our tests are restricted to those ones among these instances that have 16 or 32
locations. All the esc16 instances (with 16 locations) were solved for the first
time to optimality by Clausen and Perreghard [3]. The esc32 (with 32 locations)
instances are still unsolved, up to three easy ones among them.
Table 1 shows the results for the esc16 instances. The instances esc16b,
esc16c, and esc16h are omitted since they do not satisfy m ≤ n − 2 (esc16f
was removed from the QAPLIB since it has an all-zero flow matrix). The bounds
Table 1. The column objects contains the number of objects in the respective
instance, opt is the optimal solution value, SEQB is the symmetric equation
bound (i.e., the bound after the first LP), box is the bound obtained after some
cutting plane iterations, LPs shows the number of linear programs being solved,
time is the CPU time in seconds, and speed up is the quotient of the running
times for working in the n × n- and in the m × n-model. The last column gives
the running times Clausen and Perregard needed to solve the instances on a
parallel machine with 16 i860 processors.
name objects opt SEQB box LPs time (s) speed up CP (s)
esc16a 10 68 48 64 3 522 4.87 65
esc16d 14 16 4 16 2 269 2.74 492
esc16e 9 28 14 28 4 588 3.37 66
esc16g 8 26 14 26 3 58 14.62 7
esc16i 9 14 0 14 4 106 28.18 84
esc16j 7 8 2 8 2 25 32.96 14
420 Volker Kaibel
produced by our cutting plane code match the optimal solution values for all
instances but esc16a (see also Fig. 1). Working in the m × n-model speeds up
the cutting plane code quite much for some instances. The running times in the
m × n-model are comparable with the ones of the branch-and-bound code of [3].
0.8
lower/upper
0.6
0.4
0.2
0
esc16a esc16d esc16e esc16g esc16i esc16j
Fig. 1. The bars (gray for SEQB and black for the bound obtained by the box
inequalities) show the ratios of the lower and upper bounds, where the upper
bounds are always the optimal solution values here.
For the esc32 instances, our cutting plane algorithm computes always the
best known lower bounds (see Tab. 2 and Fig. 2). The three instances esc32e,
esc32f, and esc32g were solved to optimality for the first time by Brüngger,
Marzetta, Clausen, and Perregard [1]. Our cutting plane code is able to solve
these instances to optimality within a few hundred seconds of CPU time (on
Table 2. The column labels have the same meanings as in Tab. 1. Additionally,
upper gives the objective function value of the best known feasible solution and
prev lb denotes the best previously known lower bound. (Running times with a
? are only approximately measured due to problems with the queuing system of
the machine).
four processors). These are about the same running times as needed by [1] with
a branch-and-bound code on a 32 processor NEC Cenju-3 machine.
The formerly best known lower bounds for the other esc32 instances were
calculated by the triangle decomposition bounding procedure of Karisch and
Rendl [9]. The bounds obtained by the cutting plane code improve (or match, in
case of esc32c) all these bounds. The most impressive gain is the improvement
of the bound quality from 0.28 to 0.68 for esc32a. While for the esc16 instances
switching from the n×n- to the m×n-model yields a significant speed up, in case
of the esc32 instances to solve the linear programs even became only possible
in the m × n-model.
Nevertheless, for the hard ones among the esc32 instances the running times
of the cutting plane code are rather large. Here, a more sophisticated cutting
plane algorithm is required in order to succeed in solving these instances to
optimality. This concerns the separation algorithms and strategies, the treatment
of the linear programs, as well as the exploitation of sparsity of the objective
functions, which will be briefly addressed in the following section.
0.8
lower/upper
0.6
0.4
0.2
0
esc32a esc32b esc32c esc32d esc32e esc32f esc32g esc32h
Fig. 2. The dark gray and the black bars have the same meaning as in Fig. 1.
Additionally, the light gray bars show the qualities of the previously best known
lower bounds.
7 Conclusion
The polyhedral studies reported in this paper have enabled us to build for the
first time a cutting plane code for QAPs with less objects than locations that
has a similar performance as current parallel branch-and-bound codes for smaller
instances and gives new lower bounds for the larger ones. More elaborated sepa-
ration procedures (including parallelization) and a more sophisticated handling
of the linear programs will surely increase the performance of the cutting plane
algorithm still further.
At the moment, the limiting factor for the cutting plane approach is the size
(and the hardness) of the linear programs. But if one considers the instances
422 Volker Kaibel
in the QAPLIB more closely, it turns out that the flow matrices very often are
extremely sparse. If one exploits this sparsity, one can “project out” even more
variables than we did by passing from the n × n- to the m × n-model. In our
opinion, investigations of the associated projected polytopes will eventually lead
to cutting plane algorithms in much smaller models, which perhaps will push
the limits for exact solutions of quadratic assignment problems far beyond the
current ones.
References
1. A. Brüngger, A. Marzetta, J. Clausen, and M. Perregaard. Joining forces in solving
large-scale quadratic assignment problems. In Proceedings of the 11th International
Parallel Processing Symposium IPPS, pages 418–427, 1997.
2. R. E. Burkard, S. E. Karisch, and F. Rendl. QAPLIB - A quadratic assignment
problem library. Journal of Global Optimization, 10:391–403, 1997.
3. J. Clausen and M. Perregaard. Solving large quadratic assignment problems in
parallel. Computational Optimization and Applications, 8(2):111–127, 1997.
4. M. Jünger and V. Kaibel. On the SQAP-polytope. Technical Report 96.241,
Angewandte Mathematik und Informatik, Universität zu Köln, 1996.
5. M. Jünger and V. Kaibel. Box-inequalities for quadratic assignment polytopes.
Technical Report 97.285, Angewandte Mathematik und Informatik, Universität zu
Köln, 1997.
6. M. Jünger and V. Kaibel. The QAP-polytope and the star-transformation. Techni-
cal Report 97.284, Angewandte Mathematik und Informatik, Universität zu Köln,
1997.
7. M. Jünger and S. Thienel. Introduction to ABACUS – A Branch-And-CUt System.
Technical Report 97.263, Angewandte Mathematik und Informatik, Universität zu
Köln, 1997. (To appear in OR Letters).
8. V. Kaibel. Polyhedral Combinatorics of the Quadratic Assignment Problem.
PhD thesis, Universität zu Köln, 1997. http://www.informatik.uni-koeln.de/
ls juenger/staff/kaibel/diss.html.
9. S. E. Karisch and F. Rendl. Lower bounds for the quadratic assignment problem
via triangle decompositions. Mathematical Programming, 71(2):137–152, 1995.
10. T. C. Koopmans and M. J. Beckmann. Assignment problems and the location of
economic activities. Econometrica, 25:53–76, 1957.
11. M. Padberg and M. P. Rijal. Location, Scheduling, Design and Integer Program-
ming. Kluwer Academic Publishers, 1996.
12. M. G. C. Resende, K. G. Ramakrishnan, and Z. Drezner. Computing lower bounds
for the quadratic assignment problem with an interior point solver for linear pro-
gramming. Operations Research, 43:781–791, 1995.
13. M. P. Rijal. Scheduling, Design and Assignment Problems with Quadratic Costs.
PhD thesis, New York University, 1995.
14. S. Sahni and T. Gonzales. P-complete approximation problems. Journal of the
Association for Computing Machinery, 1976.
Incorporating Inequality Constraints in the
Spectral Bundle Method
1 Introduction
Since the landmark papers [9,4,10,2] it is well known that semidefinite pro-
gramming allows to design powerful relaxations for constrained quadratic 0-1
programming and graph partitioning problems. The most commonly used algo-
rithms for solving these relaxations, primal-dual interior point methods, offer
little possibilities to exploit problem structure. Typically their runtime is gov-
erned by the factorization of a dense symmetric positive definite matrix in the
number of constraints and by the line search that ensures the positive definite-
ness of the matrix variables. Computation times for problems with more than
3000 constraints or matrix variables of order 500, say, are prohibitive. Very re-
cently, a pure dual approach has been proposed in [1] that is able to exploit the
sparsity of the cost matrix in the case of the max-cut relaxation with diagonal
constraints. It is not yet clear whether these results extend to problems with a
huge number of less structured constraints.
The spectral bundle method [6] works on a reformulation of semidefinite re-
laxations as eigenvalue optimization problems and was developed to provide ap-
proximate solutions to structured problems fast. In contrast to standard bundle
methods [7,11], a non-polyhedral semidefinite cutting plane model is constructed
from the subgradients. Reinterpreted in terms of the original semidefinite pro-
gram, the semidefinite model ensures positive semidefiniteness of the dual matrix
variable on a subspace only. Subgradients correspond to eigenvectors to negative
eigenvalues and are used to correct the subspace. By means of an aggregate sub-
gradient the dimension of the subspace can be kept small, thus ensuring efficient
solvability of the subproblems. Lanczos methods (see e.g. [3]) allow to compute a
few extremal eigenvalues and their eigenvectors efficiently by a series of matrix-
vector multiplications which do not require the matrix in explicit form. Thus
structural properties of cost and coefficient matrices can be exploited.
Like most first order methods, the spectral bundle method exhibits fast
progress in the beginning, but shows a strong tailing off effect as the optimal
solution is approached. Fortunately many semidefinite relaxations do not have
to be solved exactly. Rather an approximate solution is used to improve, e.g., by
cutting planes, the current relaxation, which is then resolved.
In its original form the spectral bundle method is designed for equality con-
straints only because sign constraints on the dual variables may increase com-
putation times for the semidefinite subproblem significantly. In this paper we
employ Lagrangian relaxation to approximate the solution of a sign constrained
semidefinite subproblem. Surprisingly just one update of Lagrange multipliers
per function evaluation suffices to ensure convergence. The semidefinite subprob-
lem can be solved as efficiently as in the unconstrained case, thus rendering this
method an attractive choice for large scale semidefinite cutting plane algorithms.
Section 2 introduces some notation and explains the connection to semidefi-
nite programming. This is followed by a very brief review of important properties
of the maximal eigenvalue function. Section 4 explains the extension of the spec-
tral bundle method to inequality constraints. In Section 5 we discuss efficiency
aspects of the subproblem solution. Section 6 gives computational results.
2 Semidefinite Programs
Let Sn denote the space of symmetric matrices of order n. The inner product
in this space is the usual matrix inner product, hA, Bi = tr(B T A) for A, B ∈
IRm×n . Let Sn+ denote the set of symmetric positive semidefinite matrices. Sn+
is a pointed closed convex cone. Except for its apex {0}, a face F of this cone
can be described as
F = P V P T : V ∈ Sr+ ,
where P ∈ IRn×r is some fixed matrix
with orthonormal columns (w.l.o.g.). The
2 . For A, B ∈ Sn , A B refers to the Löwner
dimension of such a face F is r+1
partial order induced by the cone Sn+ (A B ⇐⇒ A − B ∈ Sn+ ).
Inequality Constraints in the Spectral Bundle Method 425
max hC, Xi
min hb, yi
s.t. AJ¯(X) = bJ¯
(P) (D) s.t. Z = AT(y) − C
AJ (X) ≤ bJ
Z 0, yJ ≥ 0.
X 0.
orthonormal basis of the eigenspace of the maximal eigenvalue of X̂, then the
subdifferential (the set of subgradients) of λmax (·) at X̂ is
∂λmax (X̂) = P V P T : tr(V ) = 1, V ∈ Sr+ (2)
n o
= conv vv T : v T X̂v = λmax (X̂), kvk = 1 .
We will specify the choice of Ŵ k and discuss the computation of fˆk in detail in
Sect. 5. The usual bundle subproblem of finding
¯ k 2
for W ∈ Ŵ k and η ∈ IRm+ . It has the form L(·; W, η) = fW,η (·) + 2 k · −x k ,
u
where
f¯W,η (·) = hC, W i + hb − η − A(W ), ·i
is an affine function minorizing fˆSk = fˆk + ıS and hence fS . The dual function
ϕ(W, η) = min L(·; W, η), computed by finding
u b − η − A(W )
yW,η = arg min f¯W,η (y) + ky − xk k2 = xk − ,
y 2 u
has the form
1
ϕ(W, η) = hC, W i + b − η − A(W ), xk − kb − η − A(W )k2 .
2u
Denote by η k the multipliers of the previous iteration. We find an approximate
maximizer (W k+1 , η k+1 ) to ϕ over Ŵ k × IRm
+ by first computing
At the test point y k+1 the function is evaluated and a new subgradient is com-
puted.
By the observations above, we have
This and the following lemma motivate a stopping criterion of the form
Lemma 1. f (xk ) ≥ f¯k+1 (y k+1 ), and if f (xk ) = f¯k+1 (y k+1 ) then xk is optimal.
For practical reasons we state the algorithm with an inner loop allowing for
several repetitions of the two “coordinatewise” maximization steps (6) and (7).
Algorithm 1.
Input: y 0 ∈ IRm + , εopt ≥ 0, εM ∈ (0, ∞], an improvement parameter mL ∈
(0, 12 ), a weight u > 0.
1. (Initialization) Set k = 0, x0 = y 0 , η 0 = 0, f (x0 ) and Ŵ 0 (cf. Sect. 5).
2. (Direction finding) Set η + = η k .
(a) Find W + ∈ Arg maxW ∈Ŵ k ϕ(W, η + ).
(b) Compute η + = arg maxη≥0 ϕ(W + , η).
(c) Compute y + = yW + ,η+ .
(d) (Termination) If f (xk ) − f¯W + ,η+ (y + ) ≤ εopt (|f (xk )| + 1) then STOP.
(e) If fˆk (y + ) − f¯W + ,η+ (y + ) > εM [f (xk ) − f¯W + ,η+ (y + )] then go to (a).
Set η k+1 = η + , W k+1 = W + , y k+1 = y + .
3. (Evaluation) Compute f (y k+1 ),
find WSk+1 ∈ Arg max C − AT(y k+1 ), W : tr(W ) = 1, W 0 .
4. (Model updating) Determine Ŵ k+1 ⊇ conv W k+1 , WSk+1 (cf. Sect. 5).
5. (Descent test) If f (xk )−f (y k+1 ) ≥ mL [f (xk )− f¯k+1 (y k+1 )] then set xk+1 =
y k+1 (serious step); otherwise set xk+1 = xk (null step).
6. Increase k by 1 and go to Step 2.
For εM = ∞ the algorithm performs exactly one inner iteration as described
before. This single inner iteration suffices to guarantee convergence.
Theorem 1. Let εopt = 0 and εM = ∞. If Arg min fS 6= ∅ then xk → x̄ ∈
arg min fS , otherwise kxk k → ∞. In both cases f (xk ) ↓ inf fS .
The proof is rather technical and we refer the reader to the full version of the
paper for details. To sketch the main idea only, assume that test point y k has
caused a null step. Then y k is the (unconstrained) minimizer of the strongly
convex function f¯k (·)+ u2 k·−xk k2 with modulus u and therefore, since W k ∈ Ŵ k ,
u
L(yW k+1 ,ηk ; W k+1 , η k ) ≥ L(y k ; W k , η k ) + ky k+1 k − y k k2 .
2 W ,η
Likewise we obtain
u k+1
ky − yW k+1 ,ηk k2 .
L(y k+1 ; W k+1 , η k+1 ) ≥ L(yW k+1 ,ηk ; W k+1 , η k ) +
2
Using these relations and the fact that the subgradients generated by the algo-
rithm remain locally bounded one can arrive at Theorem 1 along a similar line
of arguments as given in [7].
k
where P k ∈ IRn×r is some fixed matrix with orthonormal columns and W ∈ Sn+
k
satisfies tr(W ) = 1. P k should span at least partially the eigenspace belonging
k
to the largest eigenvalues of matrices C − AT(y) for y in the vicinity of xk . W
serves to aggregate subgradient information that cannot be represented within
k
the set P k V (P k )T : tr(V ) = 1, V ∈ Sr+ . The use of W ensures convergence
of the spectral bundle method even if the number of columns of P k is restricted
to r = 1. The quality of the semidefinite model as well as the computation time
for solving (6) depend heavily on r.
The special structure of Ŵ k allows us to evaluate fˆk directly:
n D k Eo
fˆk (y) = max λmax ((P k )T (C − AT(y))P k ), W , C − AT(y) + hb, yi .
Observe that the eigenvalue computation involved is cheap since the argument
is an r × r symmetric matrix.
By the choice of Ŵ k , for a fixed η = η k , (6) is equivalent to the quadratic
semidefinite program
1 k
min 2u kbD−η − A(P k V (P k )T + αW )k2 E
k
− P k V (P k )T + αW , C − AT(xk ) − b − η, xk (8)
s.t. tr(V ) + α = 1
V 0, α ≥ 0.
k
Its optimal solution (V ∗ , α∗ ) gives rise to W k+1 = P k V ∗ (P k )T + α∗ W and
k
is also used to update P k and W in Step 4 of the algorithm. Let QΛQT be
an eigenvalue decomposition of V ∗ . Then the ‘important’ part of the spectrum
of W k+1 is spanned by the eigenvectors associated with the ‘large’ eigenvalues
of V ∗ . Thus the eigenvectors of Q are split into two parts Q = [Q1 Q2 ] (with
corresponding spectra Λ1 and Λ2 ), Q1 containing as columns the eigenvectors
associated to ‘large’ eigenvalues of V ∗ and Q2 containing the remaining columns.
P k+1 then contains an orthonormal basis of the columns of P k Q1 and at least
one eigenvector to the maximal eigenvalue of C − AT(y k+1 ) computed in Step 3
of the algorithm. The next aggregate matrix is
k+1 k
W = α∗ W + P k Q2 Λ2 QT2 (P k )T /(α∗ + tr(Λ2 )). (9)
can be brought into the following form (recall that, for A, B ∈ Sr , hA, Bi =
svec(A)T svec(B) and that tr(V ) = hI, V i)
where
1
Pm
Q11 = u i=1 svec(P Ai P )svec(P Ai P )
T T T
1
q12 = u svec(P A (A(W ))P )
T T
1
q22 = u A(W ), A(W )
c1 = −a svec(P T ( u1 AT(b − η) + C − AT(y))P )
c2 = −a( u1 (b − η) − y, A(W ) + C, W )
sI = svec(I).
This problem has r+1 2 +1 variables and can be solved quite efficiently by interior
point methods if r is not too large, smaller than 25, say. Since convergence is
guaranteed even for r = 1, it is possible to run this algorithm for problems with
a huge number of constraints m. Several remarks are in order.
First, it is not necessary to have W available as a matrix, it suffices to store
the m-vector A(W ) and the scalar C, W . These values are easily updated
whenever W is changed.
Second, almost all computations involve the projected matrices P T Ai P .
These have to be computed only once for each evaluation of (10), they are
symmetric of size r × r, and only one such projected matrix has to be kept in
memory if the values of Q11 to c2 are accumulated.
Third, the most expensive operation in computing the cost coefficients is the
accumulation of Q11 , which involves the4 summation of m dyadic products of
vectors of size r+1 2 for a total of O(mr ) operations. Even for rather small r
but sufficiently large m, this operation takes longer than solving the reduced
quadratic semidefinite program.
Finally, changes in η do not affect the quadratic cost matrices Q11 to q22 ,
but only the linear cost coefficients c1 and c2 . Within the inner loop it suffices
to update the linear cost coefficients. The dominating cost of computing Q11
can be avoided. If the inner iteration yields only small changes in η then the
optimal solution will also change only slightly. This can be exploited in restarting
strategies.
We solve (10) by the primal-dual interior point code used in [6]. It maintains
primal and dual feasibility throughout (U is the dual variable of V , β is the dual
variable of α, and t is the dual variable to the primal equality constraint),
determines the changes in the dual variables up to a diagonal shift that can be
applied through t. This diagonal shift is chosen so that the changes in U and
β are positive definite. Thus U 0 (β 0 ) is strictly positive definite but not too
far from U ∗ (β ∗ ). Experience shows that this restarting heuristic reduces the
number of iterations to two thirds down to one half depending on the size of the
changes in η.
For the bundle algorithm the diagonal of C is removed. This does not change
the problem because the diagonal elements of X are fixed to one. The offset
eT (Ae − diag(A))/4 is not used internally in the spectral bundle code. However,
after each serious step we check externally whether the stopping criterion is
satisfied if the offset is added. If so, we terminate the algorithm. As starting
vector y 0 we choose the zero vector.
For inequality constrained problems our spectral bundle code exhibits an
even stronger tailing off effect than for equality constrained problems. To solve
the relaxation exactly seems to be out of reach. However, within the first few
iterations the objective value gets already very close to the optimal value. In
cutting plane approaches it does not make sense to solve relaxations to optimality
if much faster progress can be achieved by adding new inequalities. Therefore
the quick initial convergence is a desirable property for these applications.
In this spirit we give the time needed to get within 1% and 0.1% of the
optimum in Table 1 for both the spectral bundle code with εM = .6 and the
interior point code. The first column specifies the problem instance, the sec-
ond (IP-sol) gives the optimal value of the relaxation with triangle inequalities.
Columns three and five (four and six) display the times needed by both codes to
get within 1% (0.1%, resp.) of the optimum. (The entries for the interior point
code are estimates, since its output only gives the overall computation time.)
Inequality Constraints in the Spectral Bundle Method 433
Table 2. Performance of the spectral bundle code for εopt = 5·10−4 and εM = .6.
f (xk )−f ∗
Problem f∗ f (xk ) f∗
total time eig time[%] # calls # serious
−4
G1 12049.33 12055.79 5.4·10 5:10 62.9 15 11
G2 12053.88 12057.64 3.1·10−4 12:06 53.99 25 16
G3 12048.56 12051.59 2.5·10−4 13:15 53.21 27 18
G4 12071.59 12078.58 5.8·10−4 4:26 61.28 15 11
G5 12059.68 12065.88 5.1·10−4 6:28 56.96 18 13
G6 2615.55 2617.04 5.7·10−4 26:17 45.21 49 22
G7 2451.61 2453.27 6.8·10−4 15:38 45.95 34 21
G8 2463.68 2464.86 4.8·10−4 31:33 46.01 59 22
G9 2493.51 2494.79 4.8·10−4 28:06 45.37 54 22
G10 2447.79 2449.71 7.8·10−4 15:20 43.8 35 22
G11 623.49 623.95 7.3·10−4 1:11:04 68.64 94 30
G12 613.02 613.61 9.6·10−4 47:42 78.13 90 35
G13 636.45 637.03 9.1·10−4 39:00 79.74 82 35
G14 3181.35 3182.53 3.7·10−4 19:46 64.67 43 29
G15 3161.89 3163.24 4.3·10−4 19:51 66.16 40 27
G16 3164.95 3165.98 3.3·10−4 29:32 64.73 50 28
G17 3161.78 3163.52 5.5·10−4 18:48 67.55 41 28
G18 1147.61 1148.25 5.6·10−4 21:54 55.48 48 31
G19 1064.57 1065.06 4.6·10−4 22:33 54.99 48 28
G20 1095.46 1095.94 4.4·10−4 20:05 56.02 46 29
G21 1087.89 1088.72 7.6·10−4 14:48 59.57 40 29
Table 3. Performance of the spectral bundle code for εopt = 5·10−4 and εM = ∞.
f (xk )−f ∗
Problem f∗ f (xk ) f∗
total time eig time[%] # calls # serious
−4
G1 12049.33 12055.79 5.4·10 5:14 62.42 15 11
G2 12053.88 12057.31 5.4·10−4 13:13 54.22 27 16
G3 12048.56 12053.27 3.9·10−4 11:54 54.06 25 17
G4 12071.59 12078.58 5.8·10−4 4:23 61.98 15 11
G5 12059.68 12065.88 5.1·10−4 6:26 57.51 18 13
G6 2615.55 2616.89 5.1·10−4 26:32 45.79 52 24
G7 2451.61 2453.27 6.8·10−4 15:14 46.50 34 21
G8 2463.68 2464.86 4.7·10−4 32:02 44.59 59 22
G9 2493.51 2494.69 4.7·10−4 30:14 46.14 58 23
G10 2447.79 2449.51 7.0·10−4 14:32 44.84 34 22
G11 623.49 623.89 6.4·10−4 1:30:05 71.3 113 33
G12 613.02 613.69 1.1·10−3 53:17 74.8 95 33
G13 636.45 637.05 9.4·10−4 43:31 79.1 87 36
G14 3181.35 3182.68 4.1·10−4 19:23 64.49 43 28
G15 3161.89 3163.18 4.1·10−4 19:29 66.47 40 27
G16 3164.95 3165.98 3.3·10−4 28:55 65.42 50 28
G17 3161.78 3163.46 5.3·10−4 18:35 67.89 41 28
G18 1147.61 1148.28 5.8·10−4 20:16 58.31 47 30
G19 1064.57 1065.04 4.4·10−4 23:24 59.69 51 28
G20 1095.46 1095.94 4.3·10−4 18:39 59.34 46 28
G21 1087.89 1088.63 6.8·10−4 15:09 61.17 42 29
References