Title: Optima
Full Citation
Permanent Link: http://ufdc.ufl.edu/UF00090046/00058
 Material Information
Title: Optima
Series Title: Optima
Physical Description: Serial
Language: English
Creator: Mathematical Programming Society, University of Florida
Publisher: Mathematical Programming Society, University of Florida
Place of Publication: Gainesville, Fla.
Publication Date: June 1998
 Record Information
Bibliographic ID: UF00090046
Volume ID: VID00058
Source Institution: University of Florida
Holding Location: University of Florida
Rights Management: All rights reserved by the source institution and holding location.


This item has the following downloads:

optima58 ( PDF )

Full Text





Mathematical Programming Society Newsletter

JUNE 1998

David Karger was awarded
the 1997 Tucker Prize by the
Society for his thesis Random
Sampling in Graph Optimiza-
tion Problems. The jury found
his contribution, on the inter
face between computer sci
ence and optimization, deep
and elegant. To make David's
work even better known
among the membership, I
invited him to write a feature
article on some of his very
interesting techniques and
David Karger obtained an
A.B. degree from Harvard
University, a Math Certificate
from Cambridge University,
and a Ph.D. degree from
Stanford University. Apart
from the Tucker Prize, David
has been awarded numerous
other fellowships and prizes,
such as the ACM Doctoral
Dissertation award, an Alfred
P. Sloane Foundation Fellow
ship, and a David and Lucille
Packard Foundation Fellow
ship. His main research inter
ests are analysis of algorithms
and information retrieval, on
which he has written number
ous papers that appeared in
both conference proceedings
and journals. Since 1995,
David has been assistant pro
fessor at the Laboratory for
Computer Science at MIT.
If you want to find out more
about David's research activi
ties, his home page (see note,
below) is an excellent source!
-Karen Aardal

Randomization in
Graph Optimization
Problems: A Survey
David Karger*

Randomization has become a pervasive technique in combinatorial
optimization. We survey our thesis and subsequent work, which
uses four common randomization techniques to attack numerous
optimization problems on undirected graphs.

1 Introduction
Randomization has become a pervasive technique in combinatorial optimization. Randomization has been used
to develop algorithms that are faster, simpler, and/or better-performing than previous deterministic algorithms.
This article surveys our thesis [Kar94], which presents randomized algorithms for numerous problems on
undirected graphs. Our work uses four important randomization techniques: Random Selection, which lets us
easily choose a "typical" element of a set, avoiding rare "bad" elements; Random Sampling, which provides a
quick way to build a small, representative subproblem of a larger problem for quick analysis; Randomized
Rounding, which lets us transform fractional problem solutions into integral ones; and Monte Carlo Simula
tion, which lets us estimate the probabilities of interesting events.
We apply these techniques to numerous optimization problems on undirected graphs. The graph is one of
the most common structures in computer science and optimization, modeling among other things roads, com
munication and transportation networks, electrical circuits, relationships between individuals, hypertext collec
tions, resource allocations, project plans, database and program dependencies, and parallel architectures. Among
the graph problems we address are finding a minimum spanning tree, finding a maximum flow, determining
the connectivity (minimum cut) of a graph, network design, graph coloring, and estimating the reliability
(disconnection probability) of a network with random edge failures. A great deal of work has been done on all
of these problems. Due to space limitations, we are unable to discuss all of this related work. Such a discussion
can be found in our thesis.
It is extremely important to note that we are not carrying out "expected case" analysis of algorithms running
on random inputs. Rather, we consider worst caseinputs and use random choices by the algorithm to solve them

We begin this article with a survey of many of our applications of the four randomization techniques, sketch
ing the methods, the problems, and the resulting algorithms. Afterwards, we will present a more detailed dis
cussion of a few algorithms and proofs which will hopefully give some flavor of our work.

*MIT Laboratory for Computer Science, Cambridge, MA 02138
e-mail: karger@lcs.mit.edu
URL: http://theory.lcs.mit.edu/-karger
Work supported in part by ARPA contract N00014-95-1-1246 and NSF contract CCR-9624239,
and Fellowships from the Alfred P. Sloane and David and Lucille Packard Foundations.

reviews 19 gallimaufry 23


conference notes 16

updated MIPLIB 12

10 P T I M A 5 8

1.1 Notation
We address only undirected graphs; directed graphs
have so far not succumbed to the techniques we apply
here. Throughout our discussion, we will consider a
graph Gwith m edges and n vertices. Each graph edge
mayhavea iu I e'/,hr fl, i rl nl., .ist ..r capacity) associated
withit.T i i.....I,.1 .. ..... I .. .I .. weoftenfocus
on unweighted graphs (that is, graphs with all edge
weights equal to one), though many of our algorithms
apply equally well to weighted graphs. Unless it has
parallel edges (multiple edges with the same endpoints)
a graph has m (').
The notation O (f) denotes O (flogd n) for some
constant d.

1.2 Overview of Results
We show how randomization can be used in several
ways on problems of varying degrees of difficulty. For
the "easy to solve" minimum spanning tree problem,
where a long line of research has resulted in ever closer
to linear-time algorithms, random sampling gives the
final small increment to a truly linear time algorithm.
For harder problems it improves running times by a
more significant factor. For example, we improve the
time needed to find minimum cuts from O (mn) to
0 (m), and give the first efficient parallel algorithm for
the problem. Addressing some hard NP complete
problems such as network design and graph coloring,
where finding an exact solution in polynomial time is
thought to be hopeless, we use randomized rounding
to give better approximation algorithms than were pre
viously known. Finally, for the problem of determine
ing the reliability of a network (a #P-complete prob
lem which is thought to be "even harder" than NP
complete ones) we use Monte Carlo simulation to give
the first efficient approximation algorithm.

1.3 Randomized Algorithms
Our work deals with randomized algorithms. Our
typical model is that the algorithm has a source of "ran
dombits" variables that are mutually independent and
take on values 0 or 1 with probability 1/2 each. Extract
ing one random bit from the source is assumed to take
constant time. If our algorithms use more complex
operations, such as flipping biased coins or generating
samples from more complex distributions, we take into
account the time needed to simulate these operations in
our unbiased-bit model. Event probabilities are taken
over the sample space of random bit strings produced
by the random bit generator. An event occurs .
probability (w.h.p)if on problems of size nit occurs with
probability greater than (1- 1) for some constant k>1,
and with lowprobabilityif its complement occurs with
high probability.
The random choices that an algorithm makes can
affect both its running time and its correctness. An
algorithm that has a fixed deterministicc) running time

e are happy to announce that
starting in 1999, Mathematical
Programmingwill be published by
Springer-Verlag. This decision was the result
of an extensive search and negotiation carried
out by a committee made up of Stephen
Wright, Jan Karel Lenstra and myself. The de
liberations of the committee were reviewed
periodically by the Mathematical Program
ming Society Council, with the final decision
subsequently approved by the Council. The
three principal reasons for the decision:
Springer's willingness to accept a pricing
scheme in line with society expectations; the
worldwide editorial and marketing capabilities
of Springer; and a modern, successful facility
for providing electronic access to the journal.
The contractual details were settled just
before Christmas 1997. As before, each mem
ber of the society will receive a free copy of
Mathematical Programming. Additional
benefits include:
* Each quarter, Springer-Verlag will offer a list
of 50 books selected to be of particular inter
est to MPS. These books will be available at
a discount of 25%. The list will be published
in "OPTIMA" and as part of Springer's mar
keting information on the Internet (http://
* Members of the society will have free access
to the electronic version of Mathematical

but has a low probability of giving an incorrect answer
is called Monte Carlo (MC). If the running time of the
algorithm is a random variable but the correct answer
is given with certainty, then the algorithm is said to be
Las Vegas (L V). Depending on the circumstances, one
type of algorithm may be better than the other. How
ever, a Las Vegas algorithm is "stronger" in the follow
ing sense.
A Las Vegas algorithm can be made Monte Carlo by
having it term inate, .11 l... .. .. .. -. ... .. .1.1
exceeds the time bound f(n). Since the Las Vegas algo
1 h11,,,, ,,,,h1.1, I I ...... I .... Il,, ....I IIh .... ,. I. I
1_- ..,i ,Il ,,,,, i i1 I I .. the wrong answer. On the
other hand, there is no universal method for making a
Monte Carlo algorithm into a Las Vegas one, and in
deed some of the algorithms we present are Monte Carlo
with no Las Vegas version apparent. The fundamental
problem is that sometimes it is impossible to check
whether an algorithm has given a correct answer. How
ever, the failure probability of a Monte Carlo optimi
,h ,, 1 ,l .0 h ...1 .. .. 1-. ...1I I 1,, .,III ..I .1

Programmingvia Springer's LINK service.
Springer is one of the world's best known
publishers in mathematics, computer science
and operations research and will launch a ma
jor international promotional campaign for
our journal. Increased subscriptions generated
by Springer will also increase visibility of our
society and journal in related fields of re
search. Members of the society are urged to
support this effort by encouraging "their"
libraries to subscribe to the journal.
From August onwards, society members
will have the chance for a "sneak preview" for
papers already accepted for publication in
Volume 84 for 1999. To see how the elec
tronic journal facility is working, please look
at http://link.springer.de/.
If you have any questions concerning the
change, the editors to contact at Springer
Verlag are: Dr. Martin Peters, Senior Math
ematics Editor, Springer-Verlag,
Tiergartenstrasse 17, D-69121 Heidelberg,
Germany (Peters@Springer.de); Achi
Dosanjh, Mathematics Editor, Springer
Verlag, 175 Fifth Avenue, New York, NY
10010, USA (Adosanjh@Springer-ny.com);
Maria Taylor, Executive Editor, Physical Sci
ences Journals, Springer-Verlag, 175 Fifth
Avenue, New York, NY 10010, USA

ing it several times and taking the best answer; we shall
see several examples of this below. In particular, we can
r.' i,., i I .. i.. ....i. ... .1.. ,,thatotherunavoid
,lh ,,, 1I *,ih I .. ... I ,,..I ..I ......'... l. h Il ii,.
an incorrect answer.

2 A Survey of Techniques and
In this section, we provide a high level overview of the
four randomization techniques and the various algo
rithms we have been able to develop by using them.

2.1 Random Selection
The first and simplest randomization technique we
discuss is random selection. The intuition behind this
idea is that a single randomly selected individual is
probably a "typical" representative of the entire popu
nation. Thus, random selection provides a good way to
avoid choosing rare "bad" elements. This is the idea
behind Quicksort [Hoa62], where the assumption is
that the randomly selected pivot will be neither ex

JUNE 1998


Mathematical Programming has a new publisher.

0 T I M A -5 81


tremely large nor extremely small, and will therefore
serve to separate the remaining elements into two
roughly equal sized groups.
We apply this idea in a new algorithm for finding
minimum cuts in undirected graphs. A cutis a partition
of the graph vertices into two groups; the value of the
cut is the number (or total weight) of edges with one
endpoint in each group. The minimum cut problem is
t.. I. .,1, i, .... i ............. ..value. W e distinguish the
(global) minimum cut from an s-tminimum cutwhich
is required to separate two specific vertices sand t Find
ing minimum cuts is of great importance in analyzing
network reliability and also plays a role in solving trav
eling salesman and network design problems.
We present the Recursive Contraction Algorithm
(joint work with Clifford Stein [KS96]). The idea be
hind our algorithm is simple: a randomly selected edge
is unlikely to cross a particular minimum cut, so its
endpoints are probably on the same side. If we merge
two vertices on the same side of this minimum cut, then
we will not affect the minimum cut but will reduce the
number of graph vertices by one. Therefore, we can find
the minimum cut by repeatedly selecting a randomedge
,.,,I ..,, .._ I ...II..i ....I .... .h 1. ... I , .. .. ... ..
and the minimum cut becomes obvious.
An efficient implementation of the above idea leads
to a strongly polynomial 0 (r2) time algorithm for the
minimum cut problem on weighted undirected graphs.
In contrast, the best deterministic bound, due to Hao
and Orlin [HO94], is 0 (mn). Our algorithm actually

to enumerating approximately minimum cuts and
minimum k way cuts for constant k, as well as to con
structing the cactusofa graph (a compactrepresentation
of all its minimum cuts). The algorithm is the first with
a theoretically good parallelization. A derandomization
of the algorithm (joint with Rajeev Motwani [KM97])
gave the first proof that there was a fast deterministic
parallel algorithm for the minimum cut problem. An
implementation experiment shows that the algorithm
has reasonable time bounds in practice [CGK+97].
The Contraction Algorithm is Monte Carlo: it gives
the correct answer with high probability, but does have
a small chance ofbeing wrong. Aswe are unaware of any
algorithm for verifyingthat a cut is minimum, we have
been unable to devise a Las Vegas version of the algo
rithm .T I.. .. . I .... 1 .. ...... .... ...
be wrong seems to provide a significant speedup.
The Contraction Algorithm also gives an important
new bound on the number of small cuts a graph may
contain; this has important applications in network
reliability analysis and graph sampling (see below).
In subsequent work [BK98], we used the Contrac
tionAlgorithmt.. ii, .. ..11I II, .Taphaugmenta
tionproblem : adding tl .. .............. ... I.I1 i .... to
a graph so as to increase its minimum cut to a given value
(this work is joint with Andras Benczur).

2.2 Random Sampling

A more general use of randomization than random
selection is to generate small representative subprob
lems. The representative random sample is a central
concept of statistics. It is often possible to gather a great
deal of information about a large population by exam
ining a small sample randomly drawn from it. This
approach has obvious advantages in reducing the
investigator's work, both in gathering and in analyze
ing the data.
Given an optimization problem, it may be possible
to generate a small representative subproblem by ran
dom sampling (perhaps the most natural sample from
a graph is random subset ofits edges). Intuitively, such
a subproblem should form a microcosm of the larger
problem. Our goal is to examine the subproblem and
use it to glean information about the original problem.
Since the subproblemis small, we can spend proportion
ally more time examining it than we would spend ex
amining the original problem. In one approach that we
use frequently, an optimal solution to the subproblem
may be a nearly optimal solution to the problem as a
whole. In some situations, such an approximation might
besufficient. Another .1 I .1.. ... .1 ... . ... i ....
this good solution into a truly optimal solution.
Floyd and Rivest [FR75] use this approach in a fast
and elegant algorithm for finding the median of an
ordered set. They select a small random sample of ele
ments from the set and show how inspecting this sample
gives a very accurate estimate of the value of the median.
It is then easy to find the actual median by examining
only those elements close to the estimate. This algorithm,
which is very simple to implement, uses fewer compari-
sons than any other known median-finding algorithm.
The Floyd-Rivest algorithm typifies three compo
nents needed in a random-sampling algorithm. The first
is a definition of a randomly sampledsubproblem. The
second is an approximation theorem that proves that a
solution to the subproblem is an approximate solution
to the original problem. These two components by
themselves will typically yield an obvious approxima
t .. .. . 1.... ... . .... I .. ..... 1. .. I .I T hethird
component is a refinement., that takes the
approximate solution and turns it into an actual solu
tion. Combining these three components can yield an
algorithm whose running time will be determined by
th ato ft .. .. 1......... , ,.,,... ... h.I .. I ......... -
shouldbe easier than computing a solution from scratch.
In an application of this approach, we present the first
(randomized) linear-time algorithm for finding mini
mum spanning trees in the comparison-based model of
computation. This result reflects oint work with Philip
Klein and Robert E. Tarjan [KKT95]. A long stream of
results reduced the best known deterministic time bound
to almost linear [GGST86], but a linear time bound
remained elusive. Our fundamental insight is that if we

construct a subgraph of a graph by taking a random
sample of the graph's edges, then the minimum span
ning tree in the subgraph is a "nearly" minimum span
ning tree of the entire graph. More precisely, very few
graph edges can be used to improve the sample's mini
mum spanning tree. By examining these few edges, we
can refine our approximation into the actual minimum
spanning tree at little additional cost.
We also apply sampling to the minimum cut prob
lem and several other related problems involving cuts
in graphs, including maximum flows. The maximum
flow problem is perhaps the most widely studied of all
graph optimization problems, having hundreds of ap
plications. Given vertices sand tand capacitated edges,
the goal is to ship the maximum quantity of material
from sto without exceeding the capacities of the edges.
The value of a graph's maximum flow is completely
determined by the value of the minimum s-tcut in the
We prove a cut sampling theorem that says that when
we choose half a graph's edges at random we approxi
mately halve the value of every cut. In particular, we halve
the graph's connectivity and the value of all s-t mini
mum cuts and maximum flows. This theorem gives a
random-sampling scheme for approximating minimum
cuts and maximum flows: compute the minimum cut
and maximum flow in a random sample of the graph
edges. Since the sample has fewer edges, the computa
tion is faster. At the same time, our sampling theorems
show that this approach gives accurate estimates of the
correct values. If we want to get exact solutions rather
than approximations, we still can use our samples as
l I,",'- I,. h ,,h ' I I''I " I" ,,, h ,,,
ment algorithms. This leads to a simple randomized
divide-and-conquer algorithm for finding exact maxi
mum flows.
We put our results on graph sampling into a larger
framework by examining sampling from matroids
[Kar93]. We generalize our minimum spanning tree
algorithm to the problem of finding a minimum cost
matroid basis, and extend our cut-sampling and maxi
mum flow results to the problem of matroid basis pack
ing. Our techniques actually give a paradigm that can
be applied to anypackingproblemwhere the goal, given
a collection of feasible subsets of a universe, is to find a
maximum collection of disjoint feasible subsets. For
example, in the maximum flow problem, we are attempt
ing to send units of flow from s to t. Each such unit of
flow travels along a path from sto t, so the feasible edge
sets are the s tpaths. We apply the sampling paradigm
to the problem of packing disjoint bases in a matroid,
and get faster algorithms for approximating and exactly
finding optimum basis packing.
We have continued to apply random sampling tech
nique in work following our thesis. Our recent results

S A JUNE 1998 PAGE /

* An O(mlog3 n) time Monte Carlo algorithm for
finding minimum cuts [Kar96],
* A li, i, us transform any
undirected graph into a graph with O (n) edges but
roughly the same cut values, speeding up any algo
rithm that depends only on cut values [BK96],
* As an application, an O(nlog n) time Monte Carlo
el_....Ih.....,.., I. ... .. ,, ..... I ,,,I 1 I.. .," ap p rox i
mation to an s-t minimum cut [BK96],
* An 0 (m n) time Las Vegas algorithm for finding
any constant factor approximation to an st max
flow [Kar98a],
* An O (1 22) time algorithm for finding a maximum
flow in a simple (uncapacitated) graph [KL98]
(joint work with Matt Levine).
A ll of tl. I ........ I ... . . ... ...i .I . than the
best general time bound for finding maximum flows in
directed graphs (0 (mn) for a strongly polynomial bound
[GT88], and recently C I I.. [4 for a scaling algo
rithm of Goldberg and Rao [GR97]). This suggests that
perhaps a better bound for maximum flow can be
achieved, at least on undirected graphs.

2.3 Randomized Rounding
Yet another powerful randomization technique is ran
domizedrounding. This approach is used to find ap
proximate solutions to NP hard integer programs.
These problems typically ask for an assignment of 0/
1 values to variables x. such that linear constraints of
the form ax.= care satisfied. If we relaxthe integer
program, allowing each x.to take any real value between
0 and 1, we get a linear program that can be solved in
polynomial time, giving values such that ap.= c.
Raghavan and Thompson [RT87] observed that we
could treat the resulting valuesp1as probabilities. If we
randomly set x 1 with probability p and 0 otherwise,
then the expected valueof ax.is ap= c. Raghavan
and Thompson presented techniques for ensuring that
the randomly chosen values do in fact yield a sum near
the expectation, thus giving approximately correct so
lutions to the integer program. We can view random
ized rounding as a way of sampling randomly from a
large space of answers, rather than subproblems as
before. Linear programming relaxation is used to con
struct an answer-space in which most of the answers
are good ones.
We use our graph sampling theorems to apply ran
domized rounding to network design problems. Such a
,.'l .. .... h.I .. .. I.1 .1 pI.C Gwitheachedge
assigned a cost. The goal is to output a subgraph of G
satisfying certain connectivity requirements at mini
mum cost (measured as the sum of the costs of edges
used). These requirements are described by i .. i .. ...
a minimum number of edges that must cross each cut
of G. This formulation easily captures many classic
problems including perfect matching, minimum cost
flow, Steiner tree, and minimum T join. By applying

randomized rounding, we improve the approximation
bounds for a large class of network design problems, from
O(Iog n) (due to Goemans et al. [GGP+94]) to 1+o(1)
in some cases. Our graph sampling theorems provide the
necessary tools for showing that randomized rounding
works well in this case.
We also apply randomized rounding to the classic
graph coloringproblem. No linear programs have yetbeen
devised that provide a useful fractional solution, so we
S, ..... I... . i ,- . .... i i
ing point. We show that any 3-colorable graph can be
colored in polynomial time with O(n14) colors, improve
ing on the previous best bound of O(n18) [Blu94]. We
also give presently best results for k colorable graphs.
Along the way, we discover new properties of the Lovasz
J-function, an object that has received a great deal of at
tention because of its connections to graph coloring,
cliques, and independent sets. This work is joint with
RajeevMotwani and Madhu Sudan [KMS98]. We gave
a slight improvement with Avrim Blum [BK97].

2.4 Monte Carlo Estimation

The last randomization technique we consider is
Monte Carlo estimation. The technique is applied
when we want to estimate the probability pof a given
event Eover some probability space. Monte Carlo es
timation carries outrepeated "trials" (samples from the
probability space) and measures in what fraction of the
trials the event Eoccurs. This gives a natural estimate
of the event probability.
The Monte Carlo approach breaks down when the
interesting probabilitypis very small. To estimated, we
need to carry out enough experiments to see at least a
few occurrences of E But we expect to see a first occur
rence only after 1/p trials, which may be too many to
.. .... .. .. .. .I l,,,..... thisproblem, explored
by Karp, Luby and Madras [KLM89], is to carry out the
Monte Carlo simulation in a different, "biased" way that
makes the event Emore i, 1 ......... so that we can
get by with fewer trials. The trick is to choose the new
simulation so that it gives us useful information about
the originalprobability space.
We apply this technique to the network reliability
problem. In this problem, we are interested in estimate
ing the probability that a network is disconnected by
random edge failures, so it is perhaps unsurprising that
randomization is useful. We are given a graph Gwhose
edges f ,,i 1.... ....I / and independently with certain
specified probabilities. Our goal is to determine the
probability that the graph becomes disconnected by edge
Unfortunately, itis known to be #P-hard (evenworse
than NP hard) to exactly determine the reliability of a
network. Butweuse Monte C I- ....ii. .-I I.- .. I
polynomial randomizedapproximation scheme (FPRAS)
for the network reliability problem [Kar98c]. Given a
ft .. ... I .1 .1 .. .ii .1 .. ii. I ...' algorithm in tim e

polynomial in n and 1/e returns a number Pthat esti
mates the probability FAIL(p) that the graph becomes
disconnected. With high probability, Pis in the range
(1 -e)FAIL (p). The algorithms Monte Carlo, meaning
that the approximation is correct with high probability
but that it is not possible to verify its correctness. It
generalizes to the case where the edge failure probabili
ties are different, to computing the probability the graph
failstobe connected I...... .I .1 ....)I I.themore
general problem of approximating the TuttePolynomial
for a large family of graphs. Our algorithm is easy to
implement and appears likely to have satisfactory time
bounds in practice [Kar98c, CGK+97, KT97].
A natural way to estimate a network's failure prob
ability is to carry out numerous simulations of the edge
failures and check how often the graph is disconnected
by them. But as mentioned above, this can take prohibi
tively many trials if the failure probability is extremely
small. However, we use our cut counting and sampling
theorems to prove that when Pis small, only the small
rOill. .. _,,. ,, ,_,,h ,,,iI h I .. .,I W euseour
cut algorithms to enumerate these small cuts and then
use the biased Monte Carlo technique developed by
Karp, Lubyand Madras [KLM89] to estimate the prob
ability that one of the explicitly enumerated cuts fails.

3 The Contraction Algorithm
Togivesomeflavorofourresults, I....... .I i..
ing an algorithm for finding a minimum cut in an
undirected graph [KS96]. For simplicity we discuss
unweighted graphs, but the algorithm works equally
well for graphs with edge weights.
The algorithm is based on the idea of
( I_ ..i i i... . ". ,.. ,,, h1... ,1.1.1.. ,I h.1.1 l ,, I_,
that did not cross the minimum cut. This would tell us
that both of its endpoints are on the same side of the cut.
We can use this information to ....,I.1, I,, graph by
contracting the two endpoints. To contract two verti
ces vj and v, we replace them by a vertex v and let the
set ofedges incident on vbe the union of the sets of edges
incident on v1 and v2. We do not merge edges from v,
and v, that have the same other endpoint; instead, we
allow multiple instances of those edges. However, we
remove self loops formed by edges originally connect
ing v1 to v,. Formally, we delete all edges vl, v, and
replaceeachedge (v, ) or ( .1 .i1 .....l (, The
rest of the graph remains unchanged. We will use G/
(v, v2) to denote graph Gwith edge (v1, v) contracted
(b y . II . ,,,, ,,,, . 1. h 11.. I .
endpoints of the edge).
Note that a contraction reduces the number of graph
vertices by one. We can imagine repeatedly selecting and

one of tworemaining "metavertices." These metavertices
define a cutof the original graph: each side corresponds
to the vertices contained in one of the metavertices. It

JUNE 1998


10 P T I M A 5 8


I . ... h I I ... 1 I l h ,- crosses
the minimum cut, then the two metavertices we end up
with will correspond to the two sides of the minimum
cut we are looking for.
So our subgoal is to devise a method for selecting an
edge that does not cross the minimum cut. There are
some sophisticated deterministic algorithms for doing
this [NI92], but unfortunately they are slow. We instead
rely on the following observation: almost none of the
edges in a graph cross the minimum cut. Thus, if we
choose a random edge to contract, we probably get a non
min-cut edge! This gives us a very fast edge selection
algorithm; the trade-off is that we must be prepared for
it occasionally to make mistakes. We describe our algo
rithm in Figure 1. Assume initially that we are given a
multigraph G( V,) with n vertices and m edges. The
C I which is described in Figure 1,
repeatedly chooses an edge at random and contracts it.

Algorithm Contract(G)
repeat until G has 2 vertices
choose an edge (v, w) uniformly at random from G
let < G/(v,w)
return the unique cut defined by (the contracted) G

Figure 1. The Contraction Algorithm

It is relatively straightforward to implement this al
gorithm in O(9r) time.

Lemma 3.1. A particular minimum cut in
G is returned by the Contraction Algorithm
with probability at least (n) .
Proof. Fix attention on some specific minimum cut C
with c crossing edges. We will use the term minimum
cut edge to refer only to edges crossing C. If we never
select a minimum cut edge during the Contraction
Algorithm, then the two vertices we end up with must
define the minimum cut.
Observe that after each contraction, the minimum
cut value in the new graph must still be at least c. This
is because every cut in the contracted graph corresponds
to a cut of the same value in the original graph, and thus
has value at least c. Furthermore, if we contract an edge
(v, ) that does not cross C, then the cut Ccorresponds
to a cut of value cin C i, .11) this corresponding cut is
a minimum cut (of value c) in the contracted graph.
Each time we contract an edge, we reduce the num
ber of vertices in the graph by one. Consider the stage
in which the graph has rvertices. Since the contracted
graph has a minimum cut of at least c, it must have
minimum degree c, and thus at least rc/2 edges. How
ever, only cof these edges are in the minimum cut. Thus,
a randomly chosen edge is in the minimum cut with
probability at most 2/r. To determine the probability

that we never contract a minimum cut edge, we simply
multiply all of the per-stage probabilities. This shows
that the probability that we never contract a minimum
cut edge through all n-2 contractions is at least

2 2 2 n-2 n-3 2 1
1 1 1
L nIL n-11 L 31 L n ILn-11 L41L31

t 1 n 2.

..i i, .I i' 1 /12, so the Contraction Algorithm

ing. But it is large enough to be useful. To improve our
chance of success, we may simply repeat the algorithm
a large number of times. If we run the Contraction
Algorithm 2 In times, and take the best answer we see,
then the probability that we fail to give the right answer
isjust the probability that noneof the repetitions of the
algorithm yield the right answer, which is at most
(1 1/)nIn n >> I/n,
which means the algorithm works with high probabil
ity. This" amplification through repetition" is standard
for randomized algorithms: we can get an exponential
decrease in the failure probability from a linear slow
down in the running time.
SincetheCo,, 1..... I .....I I.I 1 1 1.....
iteration, we immediately get an algorithm that finds a
minimumcut 0 ..O(n4 log n) time.
This is somewhat unsatisfactory, as algorithms based on
flow [HO94] can be used to find the minimum cut in
O(mn) time.

3.1 The Recursive Contraction Algorithm
By adding another idea we can improve the running
time of our minimum cut algorithm to O (9i). We aim
to "share work" among the numerous iterations of the
algorithm. Note that the failure probability of the
Contraction Algorithm rises as its size decreases. In fact,
if we contract Guntil it has k vertices rather than 2,
then the probability that the algorithm does not de
stroy the minimum cut of Gexceeds (k/n)2 (this fol
lows by truncating the product we used to analyze the
original Contraction Algorithm). So the real problem
with the Contraction Algorithm arises when the graph
has gotten small. We might imagine switching over to
a deterministic algorithm once the graph is small, and
indeed this approach yields improved performance.
But we can do even better with another application of
the principle that "repetition improves your chances."
When the graph gets small, in order to improve our
odds of success, we (recursively) carry out two execu
tions of the algorithm on what remains.
Let Contract (G,k) denote a subroutine that runs the
Contraction Algorithm until Gis reduced to kvertices.
Consider the Recursive C I ... F ....

2. As can be seen, we perform two independent trials.
In each, i I 11 II .11 contract the graph, but not so
much that the likelihood of the cut surviving is too small.
By contracting the graph until it has n/ 2 vertices, we
E .. .... i 1... 1 . I j .. ....I.... I ...
cut edge, so we expect that on the average one of the two
attempts will avoid contracting a minimum cut edge.
We then recursively apply the algorithm to each of the
two partially contracted graphs. As described, the algo
rithm returnsonly a cut v .I ... I I ...... 1.1.. I
to return a cut of the given value. Alternatively, we might
want to output every cut encountered, hoping to enu
merate all the minimum cuts.

Algorithm Recursive-Contract (G,n)
input A graph G of size n.
if G has 2 vertices
return the weight of (unique) cut in G
else repeat twice
G' < Contract (G,n/ 2)
Recursive-Contract (G',n/ ).
return the smaller of the two resulting values.

Figure 2. The Recursive Contraction Algorithm

Next we analyze the running time of this algorithm.

Lemma 3.2. Algorithm Recursive-Contract
runs in O(rn log n) time.
Proof. One level of recursion consists of two indepen
dent trials ofcontraction of Gto n/ vertices followed
by a recursive call. Performing a contraction to n/ 2
vertices can be implemented by Algorithm Contract
from the previous section in O(I ) time. We thus have
the following recurrence for the running time:
(fn)= 2(, + n/2)). (1)
This recurrence is solved by
7(n) = O(Q log n).

We now analyze the probability that the algorithm
finds the particular minimum cut we are looking for. We
.11 ,. .1 i h, '... le Contraction Algorithm finds
a certain minimum cut if that minimum cut corresponds
to one of the leaves in the algorithm's tree of recursive
c a lls. . .l .l .... I.. ...I ... ................
then it will output the minimum cut value.

Lemma 3.3. The Recursive Contraction
Algorithm finds a particular minimum cut
with probability W (i/log n).

Proof. We give a recursive argument. The algorithm
will find a particular minimum cut if, in one of its two
iterations, the following two things happen: (i) the call
to Contract (G,n/ 2) preserves the minimum cut and
(ii) the recursive call finds the particular minimum cut.

0 P*T I M A -5 81

10 T I M A 5 8

The probability that an iteration succeeds is just the
product of the probabilities of events (i) and (ii). The
algorithm succeeds if eitheriteration succeeds, and thus
fails only if both iterations fail. The probability that this
double failure happens is just the square of the prob
ability that one iteration fails. Thus the success prob
ability is one minus this squared quantity. This yields
a recurrence P(n) for a lower bound on the probability
of success on a graph of size n:
P(2) = 1
1 P 1/ 2 )
P(n) l 1 1 y _)

We solve this recurrence through a change of vari
ables."'... 4/P(2k2) _,soil I i +1).Plug
going this into the above recurrence and solving for Zk
z 3
zk= Zk + 1 + 1/z,.

Since clearly z, t 1, it follows by induction that
k< z< 3+2k

Thus z = Q (k) and thus that
P(n)= I +1) Q(1/logn).

In other words, one trial of theRecursive Contraction
Algorithm finds any particular minimum cut with
probability W (1/log n). E
Those familiar with branching processes might see
that we are evaluating the probability that the extinc
tion of contracted graphs containing the minimum cut
does not occur before depth 2 log n.

Theorem 3.4 ( [KS96]). All minimum cuts
in an arbitrarily weighted undirected graph
with n vertices can be found with high
probability in O(n2log3n) time.
Proof. We will see below that there are at most (")
minimum cuts in a graph. Repeating Recursive-Con
tract O(log2 n) times gives an O(1/n4) chance of miss
ing any particular minimum cut. Thus our chance of
missing any one of the at most (") minimum cuts is
upper bounded by O((j) n ) = O(1/ ). O

3.2 Counting Cuts
Besides serving as an algorithm to find minimumcuts,
the Contraction Algorithm tells us some interesting
things about the number of minimum and, more gen
erally, small cuts in a graph. These results are extremely
useful when we consider our next topic, random sam
pling from graphs.

Definition 3.5. An a -minimum cut is a cut
whose value is at most a times that of the
(global) minimum cut.

Lemma 3.6. There are at most (") < n
minimum cuts.
Proof. We showed that the Contraction Algorithm
outputs a given minimum cut with probability at least
() 1. Suppose that there were more than k minimum
cuts. Each is output with probability k. Since these
output events are disjoint (the algorithm outputs only
one cut), the probability that one of them is output is
just the sum of their individual probabilities, namely
k/(1). This quantity, being a probability, is at most one.
So k ().

Theorem 3.7 (Cut Counting [KS96]). In a
graph with minimum cut c, there are less
than n2r cuts of value at most ac.
Proof. If we consider a cut of value ac, we can prove
(by generalizing the argument we gave for minimum
cuts in the obvious way) that the Contraction Algo
rithm outputs it with probability at least 1/ a. The
argument then proceeds as in the previous lemma.

4 Random Sampling
So far we have addressed random selection, which
works by finding a "typical" element (e.g., a non-min
cut edge). We now turn to random sampling, where
the goal is to build a small representative model of our
input problem. We will describe algorithms for ap
proximating and -. 11 1........ ........ .. ii.ws and
minimum cuts in an undirected graph. For simplicity,
we will restrict our discussion to graphs with unit
capacity edges unweightedd graphs) though many of
the techniques that we discuss can be applied to
weighted graphs as well. Due to space limitations, and
because we are focusing on our thesis work rather than
later improvements, we present algorithms that only
work well when the minimum cut of the graph is large.
Inunweighted graphs, the s-tmaximumflowproblem
is to find a maximum set, or packing, of edge-disjoint
s-tpaths. It is known [FF62] that the value of this flow
is equal to the value of the minimum s-tcut. In fact, the
.,I I ... ... 1 .i i.... i. .. i I ..1 ....I I -tm inim um cut
,,,I.I ,,I. ,,II ,, ,ii ilh ,I I ,1 y 1 .. iyans tm aximum
In unweighted graphs, a classic algorithm for find
ing s. i. ............. in . i pathalgo
rithm (cf. [Tar83, AM093]). Given a graph and an
s-tflow of value f a linear-time depth first search of the
so -, l11h I 11 1 1 h 1.. 1 ,,,_... ..1
the flow to one of value f+1 or prove that f is the value
of the maximum flow. This algorithm can be used to find
a maximum flow of value vin O(mv) time by finding
vaugmenting paths. Of course, since the algorithm's
running time depends on the edge count and flow value,
we can make it faster by reducing one or both quanti
ties. We show how random sampling can be used to do

4.1 A Sampling Theorem
C I,,, ,l ,.,,lh ,,, ,,, ,III .. . I,, ,, ,_ lh h ll,. ,,, ..... I,
of random sampling in graphs. We are given an
unweighted graph G= ( ,V) with a sampling probabil
ityp for each edge e, and we construct a random sub
graph, or skeleton, on the same vertices Vby placing
each edge ein the skeleton independently with prob
ability p. We denote the skeleton by G(p). Note that
if a given cut has k edges crossing it in G, then the
expected number of edges crossing that cut in G(p) is
pk In particular, if the s minimum cut in Ghas value
v, then we might expect that the s-t minimum cut in
G(p) has value pv.
Unfortunately, samples invariably deviatefrom their
expectations. In order t.. I .... f ..f a skel
eton, we need to show that these deviations are small.
I ll,.. ,,. then tl, I.1. -.., 111l ll ih ...,. 1-- h.. I
original graph that are approximately correct. Let cbe
the minimum cut of graph G. Our main theorem says
that so long as pc (the minimum expected cut value in
the skeleton) i .. 1I.. .11 large, every cut in the skel
eton takes on roughly its expected value.

Theorem 4.1 ([Kar98b]).

Let e = J3(d + 2) (nn) / pc(sop = Q ((Inn) / ec)).
/fe 1, then withprobability 1- O(1/r), every
cut in G(p) has value between 1-e and 1 +e
times its expected value.
This result is somewhat surprising. A graph has ex
potentially many (2"1) cuts. Naively, even if each cut
i ....11 I .. deviate far from its expected value, with
so many cuts one probably will. We are saved by the cut
counting theorem discussed in the previous section. The
central limit theorem (as quantified by the Chernoff
bound [Che52, MR95b]) says that as the expected value
of a sample gets larger, its sample value becomes more
and more tightly concentrated about its expectation. In
particular, as a cut value grows, its probability of devi
ating by a given ratio e from its expectation decays
exponentially with the cut value. The cut counting
theorem says that the number of cuts of a given value
increases "only" exponentially with the cut value. The
parameters of Theorem 4.1 are chosen so that the ex
potential decrease in deviation probability dominates
the exponential increase in the number of cuts.

4.2 Applications
We now show how the skeleton approach can be ap
plied to minimum cuts and maximum flows. We use
the following definitions:

Definition 4.2. An a -minimum s-t cut is
an s-t cut whose value is at most a times the
value of the s-t minimum cut. An a -
maximum s-t flow is an s-t flow whose
value is at least a times the optimum.



0 T I M A -5 81


We have the following immediate extension of
Theorem 4.1:

Theorem 4.3. Let G be any graph with
minimum cut c and let p-Q ((ln n)/ec) as
in Theorem 4. 1. Suppose the s-t minimum
cut of G has value v. Then with high
probability, the s-t minimum cut in G(p)
has value between (1-e)pv and (+e)pv, and
the minimum cut has value between (1- epc

Corollary 4.4. Assuming e min-cut in G(p) corresponds to a (1+4e) -
minimum s-t cut in G.
Proof. Assuming that Theorem 4.3 holds, the mini
mum cut in Gis sampled to a cut of value at most (1+e) c
in G(p). So G(p) has minimum cut no larger. And (again
by the previous theorem) this minimum cut corre
spends to a cut of value at most (l+e)c/
(1le)<(l+4e)cwhen e< 1/2.
This means that if we use augmenting paths to find
maximum flows in a skeleton, we find them faster than
in the original graph for two reasons: the sampled graph
has fewer edges, and the value of the maximum flow is
smaller. The maximum flow in the skeleton reveals an
s minimum cut in the skeleton, which corresponds to
a near-minimum stcut of the original graph. An exten
sion of this idea lets us find near-maximum flows: we
randomly partition the graph's edges into many groups
(each a skeleton), find maximum flows in each group,
and then merge the skeleton flows into a flow in the
original graph. Furthermore, once we have an approxi
mately maximum flow, we can turn it into a maximum
flow with a small number of augmenting path compu
stations. This leads to an algorithm called DAUG that finds
a maximum flow in O(mv (logn) c)) time, improve
ing on the basic augmenting paths algorithm when cis
In the following subsections, we detail the algorithms
wejust sketched. We lead into DAUG with some more
straightforward algorithms.

4.2.1 Approximate s-t Minimum Cuts
The most obvious application of Theorem 4.3 is to
approximate st minimum cuts. We can find an ap
1 ... . ... ............ . i ,. I.. ... .-tm inim um
cut in a skeleton.

Lemma 4.5. In a graph with minimum cut
c, a (1 + )approximation to the s-t
minimum cut of value v can be computed
in O(mv/ec2) time (with a low probability
of error).
Proof. Given a determine the corresponding= Q ((log
n)/ec) from Theorem 4.3. Suppose we compute an
s maximum flow in G(p). By Theorem 4.3, 1/ptimes
the value of the computed maximum flow gives a (1+e)

approximation to the s-tmin-cut value (with high prob-
ability). Furthermore, any flow-saturated (and thus
s-t minimum) cut in G(p) will be a (l+e)-minimum
s-t cut in G.
By the Chernoff bound [Che52, MR95b], the skel
eton has O(pm) edges (that is, about its expectation) with
high probability. Also, by Theorem 4.3, the s-tmini
mum cut in the skeleton has value O(p). Therefore, the
standard augmenting path algorithm can find a skeletal
s-tmaximum flow in O((pm)(pv))= O(mvlog2 n/e42)
time. Our improved augmenting paths algorithm DAUG
in Section 4.2.4 lets us shave a factor of
Q ( pclogn) =Q(1/e) from this running time,
yielding the claimed bound. E

4.2.2 Approximate Maximum Flows
A slightvariationon tl i... i .....I l... .....
pute approximate maximum flows.

Lemma 4.6. In a graph with minimum cut
c and s-t maximum flow v, a (1-e)-
maximum s-t flow can be found in 0(mv/
ec) time (with a low probability of error).
Proof. Givenpas determined by e randomly partition
the edges into lip groups, creating lip graphs. Each
graph looks like (has the distribution of) a skeleton,
and thus with high probability has an s-tminimum cut
of value at least pv(l e). It has an st maximum flow
of the same value that can be computed in O((pm) (pW)
time as in the previous section (the skeletons are not
independent, but even the sum of the probabilities that
any one of them violates the sampling theorem is neg
eligible Adding the lip flows that result gives a flow
of value v(l-e). The running time is O((1/
p) (pm) (pv))= O(mv(log n) e c). If we use our improved
augmenting path algorithm DAUG in Section 4.2.4,
we improve the running time by an additional factor
of Q (1/e), yielding the claimed bound.

4.2.3 A Las Vegas Algorithm
Our max-flow and mincut approximation algorithms
are both Monte Carlo, since they are not guaranteed
to give the correct output (though the error probabil
ity can be r.. ,.. I., ...I small). However, by com
bining the two approximation algorithms, we can cer
.1 II. . .... ..i. .....i. .. i ;andobtainaLas Vegas
algorithm for both problems-one that is guaranteed
to find the right answer, but has a small probability of
taking a long time to do so. This is a standard example
of turning a Monte Carlo (error-prone) algorithm into
a Las Vegas (correct but occasionally slow) one by
checking the correctness of the output and trying again
if it is wrong.

Corollary 4.7. In a graph with minimum
cut c and s-t maximum flow v, a (1- -
maximum s-t flow and a (1 +e) -minimum
s-t cut can be found in O(mv/ec) time by a
Las Vegas algorithm.
Proof. Run both the approximate min-cut and approxi
mate max-flow algorithms, obtaining (with high prob
ability) a (1 -2) maximumflow of value voanda (1+e
2) minimum cut of value v1. We know that vo v
v .. i....... .. -f theresultsallweneed
do is check that (1+e2) v tf (1 e2) v, which happens
with high probability. To make the algorithm Las
Vegas, we repeat both algorithms until each demon
states the other's correctness (or switch to a determine
istic algorithm if the first randomized attempt fails).
We are right on the :.. i, 11 l. I. I. probability, so
the algorithm runs fast with high probability. E

4.2.4 Exact Maximum Flows
We now use the above sampling ideas to speed up the
familiar augmenting paths algorithm for maximum
flows. This section is devoted to proving the follow
ing theorem:

Theorem 4.8 ([Kar98b]). In a graph with
minimum cut value c, a maximum flow of
value v can be found in 0(mv/ c) time by a
Las Vegas algorithm.
We assume for now that v t log n. Our approach is
a randomized divide-and-conquer algorithm that we
analyze by treating each subproblem as a (non-indepen
dent) random sample. This technique gives a general ap
proach to solving packing problems with an augmen
station algorithm (including packing bases in a matroid
[Kar93]). The flow that we are attempting to find can
be seen as a packing of disjoint st paths. We use the
algorithminFigure 3, whichwe call DAUG (Divide-and
conquer AUGmentation).

1. Randomly split the edges of G into two
groups (each edge goes to one or the other
group with probability 1/2), yielding
graphs GI and G2.
2. Recursively compute s-t maximum flows
in G1 and G2.
3. Add the two flows, yielding an s-tflow
fin G.
4. Use augmenting paths to increase /
to a maximum flow.

Figure 3. Algorithm DAUG

Note that we cannot apply sampling in DAUG's
cleanup phase (Step 4) because the residual graph we
manipulate there is directed, while our sampling theo
rems apply only to undirected graphs. We have left out

10m P* __I.M A '5 l


a condition for terminating the recursion; when the
, ,I .. .ii .. I. ....11 (saywithoneedge) weusethe
basic augmenting path algorithm.
The outcome of Steps 1-3 is a flow. Regardless of its
value, Step 4 will transform this flow into a maximum
flow. Thus, our algorithm is clearly correct; the only
question is how fast it runs. Suppose the st maximum
flow is v. Consider G1. Since each edge of Gis in G, with
probability 1/2, we can apply Theorem 4.3 to deduce
that with high probability the s maximum flow in G1
is at least (v 2) (1 O( c)) and the global minimum
cut is Q (c/2). The same holds for G2 (the two graphs are
not independent, but this is irrelevant). It follows that
the flow fhas value v(1 0(1/ c)) = v- O(v/ c).
Therefore the number of augmentations that must be
performed in Gto make fa maximum flow is O(v/ c).
Each augmentation takes O(m) time on an m edge
graph. Intuitively, thissuggeststhe following recurrence
for the running time of the algorithm in terms of m, v,
and c:
7(m,v,c) = 2 m/2, v2,c2) + O(mv c).
(where we use the fact that each of the two subprob
lems expects to contain m/2 edges). If we solve this re
currency, it evaluates to I(m, v,c = O(m/ c).
Unfortunately, this argument does not constitute a
proof because the actual running time recurrence is in
fact a probabilistic recurrence: the number of edges and
sizes of cuts in the subproblems are randomvariables not
guaranteed to equal their expectations. Inparticular, the
, , ,, _, ,,, I ,1 I ,I .1 I .... (I, .. I
Actually proving the result requires some additional
work [Kar98b].

5 Randomized Rounding
Next we turn to Randomized Rounding. Randomized
Rounding is a powerful method for approximately
solving integer programming problems. The basic idea
is to take the values of some relaxation of the problem
(e.g., a linear program) and use them to generate in
teger values that define a solution to the integer pro
gram. There are two elements of a randomized round
ing approach: a good relaxation that preserves much
of the structure of the original intractable problembut
can be solved ii. I. ..II .. I u,. ending strategy that
transforms the relaxed solution into an integer one
(along with a proof that it works well).
We apply randomized rounding to two NP complete
problems: network design and graph coloring. Both
rounding approaches are slightly unusual. In the net
work design problem, we simultaneouslyround against
exponentially many constraints. For graph coloring, we
.. 1.i . -fthemoretradi-
tional linear programming to determine a structure
preserving relaxation.

5.1 Network Design
The network design problem is a mirror to the mini
mum cut problem. The input is a set of vertices and a
collection of candidate edges, each of which can be
purchased for some specified cost. The goal is to design
a network whose cuts are ,.I. I., ,,i.1 large." For ex
ample, one might wish to build (at minimum cost) a
network that is k connected. Alternatively one might
wantanetwork .i, ,,ii. I.i.. ii torouteacer
tain amountof flow between two vertices sand t(thus,
the network must have s-tminimum cut ). Network
design also covers many other classic problems, often
NP complete, including perfect matching, minimum
cost flow, Steiner tree, and minimum T join. A mini
mum cost 1 connected graph isjust a minimum span
ning tree, but for larger values of kthe minimum-cost
k connected graph problem is NP complete even when
all edge costs are 1 or infinity [ET76].

lated in terms of (lower bound) constraints on the ca
pacity or number of edges crossing each cut, one can
S.. .1 ...... .... .. ...... .... .11. ,.1 [variab le
for each edge that may be purchased and a constraint
for each cut. To make the problem more tractable, we
can relax the requirement that variables take 0/1 val
ues and allow them to take fractional values in the
interval [0,1]. This gives rise to a linear programming
relaxation that can often be solved in polynomial time.
Sometimes the linear programs can be represented
compactly and solved with standard methods. At other
times, even though the relaxation has exponentially
many constraints, it has a good separation oracle (e.g.
a minimum cut computation for the k connected sub
graph problem) and can thus be solved with the ellip
soid algorithm.
Solving the relaxation yields a fractional solution.
Randomized rounding isused to convert the fractional
solution back into an integral one. Given fractional
variable values x,... ,x, we convert them to integer
values yl ...,y by setting yj 1 with probability x and
0 otherwise. Note that Ely]=x It follows that if axYb
for some constraintvector aand scalar b, then E[ay = b.
In other words, yis "expected" to satisfy the same con
straint that x did.
The problem, of course, is that random experiment
deviate somewhat from their expectation. Raghavan
and Thompson [RT87] showed that these deviations
are often (provably) small enough that the resulting
rounded solution is an approximately optimal solution
to the integer program. Unfortunately, their analysis
is focused on problems with a small number of con
straints, which lets them argue that massive deviations
f ....... i.. .,I ... ...... ,,, -, ..hI -...... T henetw ork
design problem has exponentially many constraints, so
,,,of them. Founael, Ian analo e I Ito our cut samp
of them. Fortunately, an analogue to our cut sampling


theorem bounds these deviations, with the conclusion
thatrandomized rounding can be applied to" fractional
graphs" with much the same approximation guarantees
as the original Raghavan-Thompson analysis. Among
the results this yields is a 1 + O((log n)/k) approximation
algorithm for the minimum k connected subgraph
problem [Kar98b].

5.2 Graph Coloring
We also apply randomized rounding to the problem
of graph coloring. This problem is NP complete and
has recently been proven extremely hard even to ap
proximate well on graphs with large chromatic num
ber [LY93]. However, there still remains some hope
that it might be possible to do reasonably well color
ing a graph with small chromatic number. In our thesis,
we focus on 3-colorable graphs, and show how to color
themwith O(n 4) colors. The technique extends to give
new performance ratios for graphs with larger chro
matic number. This work isjoint with Rajeev Motwani
and Madhu Sudan [KMS98] and built upon the ex
citing work of Goemans and Williamson [GW95] on
the maximum cut problem. We later improved it in
joint work with Avrim Blum [BK97].
To attack graph coloring, we turned to the recently
developed technique of semidefiniteprogramming. In
stead of rounding fractional valued scalars to integers,
we round vectors. To illustrate, we describe the relaxation
of our graph coloring problem. We aim to assign a unit
length vector v. to each vertex i of our graph such that
for any two adjacent vertices iandj, the dot product v,
v. -1/2. To see that this can be done to any three-col
orable graph, consider a "star" of three vectors on the
unit circle with 120' angles between them, for example
(1,0), (-1/2, 3/2), and (-1/2, 3/2). Each has unit
length and has dot product 1/2 with the other two
vectors. Given a 3-colored graph, we can solve the vec
tor problem by assigning the first vector to all red ver
tices, the second to all green, and the third to all blue
vertices. This proves that any 3 colorable graph has a fea
sible solution to our vector problem, which means that
it is a valid relaxation.
Solving the relaxation can be formulated as finding
a feasible (vector) solution to the following semidefinite
program (where Edenotes the set of edges in the graph

v. v. 1/2 if (ij) E
*, = 1.

The fact that such a system of constraints (on any lin
ear combination of dot products) can be solved (to
within ... -.1 ..11 small error) in polynomial time is
a difficult result [GLS88] which we can fortunately use
as a black box.
Unfortunately, there are: ... .. .I ........... ,
to this semidefinite program-mostin a dimension much
higher than 2. We cannot constrain the solution to be

0 T I M A -5 81


two dimensional (and still solve the problem in poly
nomial time) so we must decide how to take a high di
mensional relaxed solution and transform it into a col
oring. Our method for doing so is quite straightforward:
we choose a number of random unit vectors as centers,
and color vertex with the center closest to v. We show
Il. i ll. ...i ..l .. .. .i . I h,. .. ,, Il/large, no tw o
adjacent vertices are likely to be assigned to the same
center-that is, we get a legal coloring. The intuition
behind our argument is simple. The vectors for adja
centverticesiandjpoint "away" fromeachother thanks
to the semidefinite constraints. Thus, ifiis "near" aran
dom center,jwill be "far" from that center and is thus
likely to end up attached to some other center. Some
technical arguments involving Gaussian distributions
suffice to prove that 0(n'4) centers suffice to make the
probabilities work out.

6 Monte Carlo Estimation
The last randomization technique we consider is
Monte Carlo estimation. The technique is applied
when we want to estimate the probability of a given
event over some probability space. Monte Carlo es
timation carries out repeated "trials" (samples from
the probability space) and measures how often the
given event occurs. This gives a natural estimate of the
event probability.
We use Monte-Carlo estimation to attack the all

nvertices, each of whose mlinks is assumed to fail (dis
appear) independently with some probability, deter
mine the probability that the surviving network is con
nected. The practical applications of this question to
communication networks are obvious, and the prob
lem has therefore been the subject of a great deal of
study. A comprehensive survey canbefound in [Col87].
As mentioned in Section 2, this problem is #P hard to
solve exactly, so we give a fullypolynomialrandomized
approximation scheme (FPRAS) that gives an answer
accurate to within a relative error of ein time polyno
mial in nand 1/e Although our algorithm is quite gen
eral [Kar98c], we restrict discussion here to the case
where every edge fails independently with the same
probability p. We let FAIL(p) denote the failure prob
ability of G when edges fail with probability p.
The basic approach of our FPRAS is to consider two
cases. When FAIL(p) is large, we estimate it in polyno
mial time by direct Monte Carlo simulation of edge
failures. That is, we randomly fail edges and check
whether the graph remains connected. Since FAIL(p)
is large, a small number of trials gives enough data to
estimate it well. When FAIL(p) is small, we show that
we can focus on the small cuts in a graph. We enumer
ate them with our cut algorithms and then use a biased
Monte Carlo estimation technique to determine their
failure probability.

0 1. . 11. .1 _.. .... h .I. ......, l,. II- . I
when all of the edges in some cut of the graph fail. If
each edge i ,I I i ....I. .1Ii.. / p, then the probability
that a k edge cut fails is p. Thus, the smaller a cut, the
more likely it is to fail. It is therefore natural to focus
attention on the small graph cuts. In particular, the
probability that the graph becomes disconnected is at
least, ( lh lh l.. . . I.. .l li..l ............... ..i
fails). At the same time, the probability that any one a
minimum cut fails is pac
We can now describe our two cases. When FAIL(p)
Sf p n3, we use direct Monte Carlo simulation to
estimate the failure probability. A single experiment
consists of flipping coins to see which edges fail and then
checking whether the graph is connected. If we carry
out roughly (log n)/ FAIL(p)= 0(/ d) experiments
(a polynomial number), we will see about (log n)/e~
failures. This provides enough "evidence" to give a good
estimate of the failure probability [Che52, KLM89].
Unfortunately, when FAIL(p) is small, we need too
many simulations to develop a good baseline (note that
we do not expect to see a single failure until we perform
1/FAIL(p) experiments; this number can be super
polynomial). We instead turn to an enumeration of the
small cuts. When pf n3, we know that a given a
minimum nI .1I Ii. i...I. ,I.,I.I /p c n3a. Butwe
argued in our Cut Counting theorem that the number
ofa minimum cuts is only a. It follows that the prob-
ability that anya-minimum cut fails is less than n-
that is, exponentially decreasing with a. Thus, for arela
tively small a, the probability that a greater than a mini
mum cut fails is negligible. We can therefore approxi
mate FAIL(p) by approximating the probability that
some less than a-minimum cut fails. We do so by enu
merating the a-minimum cuts (using a modification
of the Contraction Algorithm [KS96]) and then apply
inga D' .I.... il ..... I. .11. KarpLuby,
and Madras [KLM89]. The algorithm of [KLM89] is
also based on Monte-Carlo methods, but uses biased
sampling to ensure that we see failures often so that a
good estimate of their likelihood can be constructed
quickly. The contribution of our work is to show that
it is possible to build a small formula that can be fed to
the DNF counting algorithm to produce a meaningful

7 Conclusion
Randomization has become an essential tool in the
design of optimization algorithms. Randomization
leads to algorithms that are faster, simpler, and/or
better-performing than their deterministic counter
parts. The basic techniques of random selection, ran
dom sampling, randomized rounding and Monte
Carlo estimation let us draw on our intuitions about
common cases and representative samples: whenever
we expect that something should "usually" happen or

be "typical," randomization may give us a way to turn
our suspicion into an algorithm. We have demon
strated this approach on numerous basic optimization
problems. But a great deal ofworkremains to be done.
The most direct open question is how far our particu
lar results can be pushed. The minimum spanning tree
and minimum cut problems are essentially "done," one
with a linear time algorithm and the other with a linear
times-polylog time algorithm; but our results on s-t
m minimum cuts .. I .... ......... -..
plete: no lower bounds are evident, and our upper
boundsare"odd" (e.g. CI 'I .. iI.. .. . .... .1.
[KL98]) in ways that suggest that it must be possible to
improve them (e.g. to O(i2)). Our approximation al
gorithms apply well to both capacitated and
uncapacitated problems, but our exact algorithms so far
apply best to uncapacitated problems. We suspect that
more can be done here.
More questionable is whether any of our technology
can be applied to directedgraphs. Absolutely none of the
results discussed in this article extend to directed graphs:
the Contraction Algorithm fails on them, and as a re
sult we have been unable to prove a sampling theorem,
a cut counting theorem (in fact a directed graph can have
exponentially many minimum cuts), a sampling theo
rem, a rounding theorem, or anything about directed
reliability. One possible explanation for this is that
undirected graphs form natural matroids while directed
graphs do not [Kar93].
Thinking more broadly, a fundamental question
about randomization is whether it is truly "necessary."
Often, after a randomized algorithm gives insight into
a problem, one can devise a deterministic algorithm with
some of the same properties. Within theoretical com
puter science, there is an entire subfield devoted to
derandomization the development of techniques that
.II , ..... .11 ,I . I . ,,,, I .... . I _.1 0I 1.... ... I >,
a deterministic one. For example, the randomized
rounding procedure for (polynomial size) linear pro
grams can be made deterministic [Rag88], as can our
randomized rounding algorithm for graph coloring
[MR95a]. We have also derandomized our Contraction
Algorithm [KM97].
Even when it is possible to derandomize an algorithm,
it may not be worth doing so. The derandomization can
add complexity, either computational (e.g. in the case
of the Contraction Algorithm, where the
derandomization drastically slows the algorithm) or con
ceptual (e.g. forrandomized rounding, where the intui
tive expectation argument is replaced by a more com
plex numeric calculation).
H ,, lh. , ,,, h.ii. ,,.l, h. 1... .1.. ,,,,_ li,,
derandomization question. Perhaps the strongest is the
wish for an algorithm with predictable behavior. In a
situation with lives at stake, it would be unsatisfactory
to be right mostof the time, or I ....... I. This

S JUNE1998 PAGE 1(

problem is particularly acute with our Monte Carlo
algorithms, where one cannot even tell whether the
answer is correct! An obvious place to begin is the mini
mum cut problem, where a Monte Carlo algorithm can
solve the problem (with high probability) in 0(m) time
but the best known deterministic running time is
O(mn). Another specific question is whether there is a
deterministiclinear-time minimum spanning tree algo
rithm (which would finally put the problem to rest for
good). A more abstract question is the following: we
have proven that any graph has a sparse" skeleton" that
accurately approximates its cuts; this seems to have
assorted uses. Can such a skeleton be constructed de
terministically in polynomial time?
Comments and questions on this survey are most

[AM093] R.K. Ahuja, T.L. Magnanti, and J.B.
Orlin. Network Flows: Theory,
Algorithms, and Applications. Prentice
Hall, 1993.
[BK96] A.A. Bencztir and D.R. Karger.
Approximate s-t min cuts in O(n2)
time. In G. Miller, editor, Proceedings
of the 26" ACM Symposium on Theory
of Computing, pages 47 55. ACM,
ACM Press, May 1996.
[BK97] A. Blum and D.R. Karger. Improved
approximation for graph coloring.
Information Processing Letters,
61(1):49 53, January 1997.
[BK98] A.A. Benczir and D.R. Karger.
Augmenting undirected edge
connectivity in O(2) time. In H.
Karloff, editor, Proceedings of the 9"
Annual ACM-SIAM Symposium on
Discrete Algorithms, pages 500 509.
ACM SIAM, January 1998.
[Blu94] A. Blum. New approximation
algorithms for graph coloring. Journal
oftheACM 41(3):470 516, May
[CGK+97] C.C. Chekuri, A.V. Goldberg, D.R.
Karger, M.S. Levine, and C. Stein.
Experimental study of minimum cut
algorithms. In M. Saks, editor,
Proceedings of the f" Annual A CM-
SIAM Symposium on Discrete
Algorithms, pages 324 333. ACM
SIAM, January 1997.
[Che52] H. Chernoff. A measure of the
asymptotic efficiency for tests of a
hypothesis based on the sum of
observations. Annals of Mathematical
Statistics, 23:493 509, 1952.
[Col87] C.J. Colbourn. The Combinatorics of
Network Reliability, volume 4 of The
International Series of Monographs on
Computer Science. Oxford University
Press, 1987.

[ET76] K.P. Eswaran and R.E. Tarjan.
Augmentation problems. SIAM
Journal on Computing, 5:653 665,
[FF62] L.R. Ford Jr. and D.R. Fulkerson.
Flows in Networks. Princeton
University Press, Princeton, New
Jersey, 1962.
[FR75] R.W. Floyd and R.L. Rivest. Expected
time bounds for selection. Communi-
cations of theACM, 18(3):165 172,
[GGP'94] M.X. Goemans, A. Goldberg, S.
Plotkin, D. Shmoys, E. Tardos, and
D. Williamson. Improved approxima
tion algorithms for network design
problems. In D.D. Sleator, editor,
Proceedings of the FSAnnual ACM-
SIAM Symposium on Discrete
Algorithms, pages 223 232. ACM
SIAM, January 1994.
[GGST86] H.N. Gabow, Z. Galil, T.H. Spencer,
and R.E. Tarjan. Efficient algorithms
for finding minimum spanning tree in
undirected and directed graphs.
Combinatorica, 6:109 122, 1986.
[GLS88] M. Groetschel, L. Lovasz, and A.
Schrijver. Geometric Algorithms and
Combinatorial Optimization, volume
2 of Algorithms and Combinatorics.
Springer Verlag, 1988.
[GR97] A. Goldberg and S. Rao. Beyond the
flow decomposition barrier. In
Proceedings of the 30" Annual
Symposium on the Foundations of
Computer Science, pages 2 11. IEEE,
IEEE Computer Society Press,
October 1997.
[GT88] A.V. Goldberg and R.E. Tarjan. A new
approach to the maximum flow
problem. Journal of the ACM, 35:921
940, 1988.
[GW95] M.X. Goemans and D.P. Williamson.
Improved approximation algorithms
for maximum cut and satisfiability
problems using semidefinite program
ming. Journal of the ACM, 1995.
[HO94] Hao and Orlin. A faster algorithm for
finding the minimum cut in a directed
graph. Journal of Algorithms,
17(3):424 446, 1994. A preliminary
version appeared in Proceedings of the
3rd Annual ACM SIAM Symposium
on Discrete Algorithms.
[Hoa62] C.A.R. Hoare. Quicksort. Computer
Journal, 5(1):10 15, 1962.
[Kar93] D.R. Karger. Random sampling in
matroids, with applications to graph
connectivity and minimum spanning
trees. In L. Guibas, editor, Proceedings
of the 34" Annual Symposium on the
Foundations of Computer Science,
pages 84 93. IEEE, IEEE Computer
Society Press, November 1993. To
appear in Mathematical Programming

[Kar94] D.R. Karger. Random Sampling in
Graph Optimization Problems. PhD
thesis, Stanford University, Stanford,
CA 94305, 1994. Contact at
karger@lcs.mit.edu. Available from
[Kar96] D.R. Karger. Minimum cuts in near
linear time. In G. Miller, editor,
Proceedings of the 26" ACM Sympo-
sium on Theory of Computing, pages
56 63. ACM, ACM Press, May 1996.
[Kar98a] D.R. Karger. Better random sampling
algorithms for flows in undirected
graphs. In H. Karloff, editor,
Proceedings of the 9" Annual ACM-
SIAM Symposium on Discrete
Algorithms, pages 490 499. ACM
SIAM, January 1998.
[Kar98b] D.R. Karger. Random sampling in
cut, flow, and network design
problems. Mathematics of Operations
Research, 1998. To appear. A
preliminary version appeared in the
1994 Symposium on the Theory of
[Kar98c] D.R. Karger. A randomized fully
polynomial approximation scheme for
the all terminal network reliability
problem. SIAM Journal on Comput-
ing, 1998. To appear. A preliminary
version appeared in the 1995
Symposium on the Theory of
[KKT95] D.R. Karger, P.N. Klein, and R.E.
Tarjan. A randomized linear time
algorithm to find minimum spanning
trees. Journal of the ACM, 42(2):321
328, 1995.
[KL98] D.R. Karger and M. Levine. Finding
maximum flows in simple undirected
graphs seems faster than bipartite
matching. In Proceedings of the 29"
ACM Symposium on Theory of
Computing. ACM, ACM Press, May
[KLM89] R.M. Karp, M. Luby, and N. Madras.
Monte carlo approximation algo
rithms for enumeration problems.
Journal ofAlgorithms, 10(3):429 448,
September 1989.
[KM97] D.R. Karger and R. Motwani.
Derandomization through approxima
tion: An NCalgorithm for minimum
cuts. SIAM Journal on Computing,
26(1):255 272, 1997. A preliminary
version appeared in STOC 1993, p.
[KMS98] D.R. Karger, R. Motwani, and M.
Sudan. Approximate graph coloring
by semidefinite programming. Journal
oftheACM, 45(2):246 265, March



10 P T I M A 5 8


[KS96] D.R. Karger and C. Stein. A new
approach to the minimum cut
problem. Journal of the ACM,
43(4):601 640, July 1996. Prelimi
nary portions appeared in SODA
1992 and STOC 1993.
[KT97] D.R. Karger and R.P. Tai. Imple
meeting a fully polynomial time
approximation scheme for all terminal
network reliability. In M. Saks, editor,
Proceedings of the 8" AnnualACM-
SIAM Symposium on Discrete
Algorithms, pages 334 343. ACM
SIAM, January 1997.
[LY93] C. Lund and M. Yannakakis. On the
hardness of approximating minimize
tion problems. In A. Aggarwal, editor,
Proceedings of the 2" A CM Sympo-
sium on Theory of Computing, pages
286 293. ACM, ACM Press, May
[MR95a] S. Mahajan and H. Ramesh.
Derandomizing semidefinite
programming based approximation
algorithms. In Proceedings of the 38"
Annual Symposium on the Founda-
tions of Computer Science, pages 162
169. IEEE, IEEE Computer Society
Press, October 1995.
[MR95b] R. Motwani and P. Raghavan.
RandomizedAlgorithms. Cambridge
University Press, New York, NY,
[NI92] H. Nagamochi and T. Ibaraki. Linear
time algorithms for finding k edge
connected and k node connected
spanning subgraphs. Algorithmica,
7:583 596, 1992.
[Rag88] P. Raghavan. Probabilistic construct
tion of deterministic algorithms:
Approximate packing integer
programs. Journal of Computer and
System Sciences, 37(2):130 43,
October 1988.
[RT87] P. Raghavan and C.D. Thompson.
Randomized rounding: a technique
for provably good algorithms and
algorithmic proofs. Combinatorica,
7(4):365 374, 1987.
[Tar83] R.E. Tarjan. Data Structures and
NetworkAlgorithms, volume 44 of
CBMS-NSF Regional Conference
Series in Applied Mathematics. SIAM,

Solving Optimization Problems with AMPL and NEOS

In the conventional approach to solving opti
mization problems, the user must first identify
and obtain the appropriate piece of optimization
software; write code to define the problem in the
manner required; and then compile, link, and
run the software. For nonlinear problems, For
tran or C code must be written to define the
problem, compute function values and deriva
tives, and specify sparsity patterns.
The Network-Enabled Optimization System
(NEOS) Server at Argonne National Laboratory
(ANL) provides a novel alternative to this pro
cess. NEOS allows users to solve optimization
problems over the Internet with state-of-the-art
software without downloading and linking code.
NEOS provides the user with a choice of solvers.
Once a nonlinear optimization problem is speci
fied, NEOS uses automatic differentiation tools
to compute derivatives and sparsity patterns,
compiles all subroutines, links with the appropri
ate libraries, and executes the solver. The process
is simplified for linear problems since there is no
need to compute derivatives. In all cases, the user
is given a solution, along with runtime statistics.
Most of the computation is done in the back
ground, hidden from view.
Although problem-solving is greatly simplified
with NEOS, the user still needs to define the
problem in Fortran or C. For many problems,
this can require considerable effort. To streamline
the process, Jorge More, in cooperation with
leading experts in optimization software, added a
series of AMPL solvers to the NEOS system.
AMPL is a comprehensive and powerful model
ing language for optimization problems that sim
plifies the formulation of optimization problems.
AMPL's flexibility and convenience makes it suit
able for rapid prototyping and model develop

13509-city TSP solved

David Applegate, Robert Bixby,
Vasek Chvatal, and Bill Cook have
solved instance "usa13509" from TSPLIB.
At the time the instance was added to TSPLIB
(early in 1995), it consisted of the continental
US cities having population 500 or more. The
final computations were run on a cluster of 3
AlphaServer 4100's (12 processors total) and
a network of 32 Pentium II PCs.

The following solvers can be used for AMPL
formatted optimization problems on the NEOS
MINOS, and SNOPT. Each solver has instruc
tions on how to submit a problem using AMPL,
as well as pointers to a user guide and a set of
sample problems.
Using the service is simple. The user only
needs to provide the problem in AMPL format.
The problem is specified by a model file, and op
tionally, a data file and command file. See http://
www.netlib.org/ampl/models for examples of
models in AMPL format. For the AMPL-PRO
interface, which allows users to submit a problem
to all the solvers, see http://www.mcs.anl.gov/otc/
Sample problems can be found at http://
Contributors to the development and install
tion of AMPL Solvers on the NEOS Server and
the related web sites are as follows:
AMPL: David Gay, Bell Laboratories; and
Bob Fourer, Northwestern University
AMPL-PRO: Chih-Jen Lin, ANL and the
University of Michigan (http://
DONLP2: Hans Mittelmann, Arizona State
University; and Peter Spellucci, Technical
University of Darmstadt, Germany (http://
ware library/AMPL:DONLP2).
LANCELOT: Nick Gould, Rutherford
Appleton Laboratories, UK (http://
LOQO: Bob Vanderbei, Princeton University
software library/AMPL:LOQO).
MINOS: Michael Saunders, Stanford Univer
sity (http://www.mcs.anl.gov/otc/Server/
SNOPT: Philip Gill, University of California
at San Diego (http://www.mcs.anl.gov/otc/
For general information about the NEOS
Server, including frequently asked questions, cli
ent software, submission tools, usage statistics,
and collaborators, see http://www.mcs.anl.gov/



0 P T I M A -5 81


An Updated Mixed Integer Programming Library: MIPLIB 3.0

Robert E. Bixby

Sebastian Ceria

Cassandra M. McZeal

Martin W.P. Savelsbergh

1 Introduction
In response to the needs of researchers for access to
challenging mixed integer programs, Bixby et al. [1]
created MIPLIB, an electronically available library of
both pure and mixed integer programs, most of which
arise from real-world applications.
Since its introduction, MIPLIB has become a stan
dard test set for comparing the performance of mixed
integerol. I. ..... 11.I, |l ..1.1l -..1l 1h I...- -.l.- I
an important stimulus for researchers in this very active
area. As technology has progressed, however, there
have been significant improvements in state-of the-art
optimizers and computing machinery. Consequently,
several instances have become too easy, and a need has
emerged for more difficult instances. Also, it has been
observed that certain types of problems are overrep
resented in MIPLIB and others underrepresented.
These considerations have prompted the present up
Since mixed integer programming is such an active
research area, and the performance of optimizers keeps
improving, we anticipate that this update will not be
the last. Subsequent updates are planned on a yearly
basis. We encourage bothresearchers and practitioners
in integer programming to submitreal-world instances
for consideration and possible inclusion in MIPLIB.
This note describes the MIPLIB update. We have
added several new problems and deleted some exist
ing ones. In addition, we have included, for each
problem, certain auxiliary information describing the
structure of the constraint matrix. The purpose of this
information is to identify constraint classes that may
be useful in the various phases of problem solving, such
as preprocessing, constraint generation, and branch

Table 1: Problem Statistics


0lteams 230 2025 1800 ALL 225
air03 124 10757 10757 ALL 0
air04 823 8904 8904 ALL 0
air05 426 7195 7195 ALL 0
arkiOOl 1048 1388 538 415 850
bel3a 123 133 71 39 62
bell5 91 104 58 30 46
blend 274 353 264 231 89
cap6000 2176 6000 6000 ALL 0
dano3mip 3202 13873 552 ALL 13321
danoint 664 521 56 ALL 465
dcmulti 290 548 75 ALL 473
dsbmip 1182 1886 192 160 1694
egout 98 141 55 ALL 86
enigma 21 100 100 ALL 0
fast0507 507 63009 63009 ALL 0
fiber 363 1298 1254 ALL 44
fixnet6 478 878 378 ALL 500
flugpl 18 18 11 0 7
gen 780 870 150 144 720
gesa2 1392 1224 408 240 816
gesa2_o 1248 1224 720 384 504
gesa3 1368 1152 384 216 768
gesa3_o 1224 1152 672 336 480
gt2 29 188 188 24 0
harp2 112 2993 2993 ALL 0
khb05250 101 1350 24 ALL 1326
ll521av 97 1989 1989 ALL 0
Iseu 28 89 89 ALL 0
misc03 96 160 159 ALL 1
misc06 820 1808 112 ALL 1696
misc07 212 260 259 ALL 1
mitre 2054 10724 10724 ALL 0
mod008 6 319 319 ALL 0
mod010 146 2655 2655 ALL 0
mod01l 4480 10958 96 ALL 10862
modglob 291 422 98 ALL 324
noswot 182 128 100 75 28
nw04 36 87482 87482 ALL 0
p0033 16 33 33 ALL 0
p0201 133 201 201 ALL 0
p0282 241 282 282 ALL 0
p0548 176 548 548 ALL 0
p2756 755 2756 2756 ALL 0
pkl 45 86 55 ALL 31
pp08a 136 240 64 ALL 176
ppO8aCUTS 246 240 64 ALL 176
qiu 1192 840 48 ALL 792
qnetl 503 1541 1417 1288 124
qnetl_o 456 1541 1417 1288 124
rentacar 6803 9557 55 ALL 9502
rgn 24 180 100 ALL 80
rout 291 556 315 300 241
setlch 492 712 240 ALL 472
seymour 4944 1372 1372 ALL 0
stein27 118 27 27 ALL 0
stein45 331 45 45 ALL 0
vpml 234 378 168 ALL 210
vpm2 234 378 168 ALL 210







10 P T I M A 58!

0iPS T A -5i8!

2 Problems

2.1 Problem Additions

Twenty-three new problems have been added to
MIPLIB: lOteams, arkiOOl, blend, dano3mip,
danoint, fast050Z fiber, gesa, gesa2 o, gesa3, gesa3 o,
gt2, harp2, mitre, nw04, pp08a,pp08aCUTS, pkl,
qnetl, qnetl o, rout, seymour, and vpm2. Most of the
new problems arose from real-world applications.
The lOteams model is a sports scheduling model,
describing the allocation of teams to time slots in the
English football league. The primary objective is fea
sibility. The problem arkiOO1 describes raw-material
extraction in batches to fit production processes. The
problems danoint and dano3mip resulted from tele
communications applications. Problem dano3mip
deals with ATM network layout (design). The appli
cation is described in more detail in "Computational
experience with a difficult mixed-integer multi-com
modity flow problem," by O. Gunluk and D.
Bienstock, which appeared in Mathematical Program
ming, 68 (1995), pp. 213-238.
The fast0507model is a set covering problem aris
ing from a crew-scheduling application for a railway
company. The model fibers a fiber routing problem.
The models gesa2 o and gesa3 o are general integer
programs arising from the optimization of electricity
generation in the Balearic Islands in Spain. The prob
lems gesa2and gesa3are the same as for the "o" ver
sions, except that surrogate knapsacks, linking re
sources at the different islands, have been added. The
LP and IP values are the same as the "o" problems,
but as integer problems they appear to be easier to
The model gt2is a general integer program arising
from a routing application, where the objective is to
determine the number of trucks of a certain type that
will be needed to satisfy "client demands." The prob
lem nw04 arises from an airline set partitioning ap
plication. The model pp08aCUTSis the same aspp08a
except that flow cover inequalities have been added to
strengthen the formulation. The problems qnet and
qnet o are line-leasing models. The problem seymour
is a set-covering problem that arose from workrelated
to the proof of the well-known 4-color Theorem from
graph theory. It tries to find a "best" unavoidable set
of reducible configurations. To our knowledge, this
model has notbeen solved to provable optimality. The
model vpm2is a variation of the vpml model already

2.2 Problem Statistics

The following tables give various statistics for the
complete, revised set of MIPLIB problems.

Table 2: Problem Origins








Dash Associates

Avesta Sheffield, Sweden
William Cook
William Cook
Dash Associates
Karla Hoffman,
Manfred Padberg
Bell Communications Research
Columbia's Center for
Telecommunications Research
Jeremy Shapiro

Etienne Loute
Harlan Crowder
Italian Railway Company
US West

Harvey M. Wagner
Spanish Electricity
Spanish Electricity
Spanish Electricity
Spanish Electricity

Harlan Crowder
C. E. Lemke,
K. Spielberg

IBM France
IBM Yorktown Hts
Uwe H. Suhl
Y. Smeers

Northwest Airlines
CJP set
CJP set
CJP set
CJP set
CJP set

Yu Ping Chiu

Linus E. Schrage
S. Graves

George L. Nemhauser
George L. Nemhauser

Nils Holmberg
William Cook
William Cook


Jeremy Shapiro

Laurence A. Wolsey
Harlan Crowder
Pier Luigi Guida
Youngho Lee
T.J. Van Roy
John W. Gregory
Laurence A. Wolsey
GESA (Consulting Company)
Laurence A. Wolsey
GESA (Consulting Company)
Laurence A. Wolsey

Laurence A. Wolsey
Harlan Crowder
Ellis L. Johnson,
Uwe H. Suhl

IBM France
IBM Yorktown Hts
Uwe H. Suhl
Laurence A. Wolsey
Linus E. Schrage

Ellis L. Johnson
Ellis L. Johnson
Pinar Keskinocak

Yu Ping Chiu
Laurence A. Wolsey

Laurence A. Wolsey
Heran Abeledo
Laurence A. Wolsey

John W. Gregory
John W. Gregory
Laurence A. Wolsey
Laurence A. Wolsey




Bob Daniel
Greg Astfalk
Greg Astfalk
Greg Astfalk
Ame Stolbjerg Drud
William Cook
William Cook
Bob Daniel
Karla Hoffman

Daniel Bienstock
Daniel Bienstock

Jonathan Eckstein
John J. Forrest
Martin W.P. Savelsbergh
E. Andrew Boyd
Sebastian Ceria
Martin W.P. Savelsbergh
Martin W.P. Savelsbergh
E. Andrew Boyd
Sebastian Ceria
Sebastian Ceria
Sebastian Ceria
Sebastian Ceria
Martin W.P. Savelsbergh
Sebastian Ceria
Martin W.P. Savelsbergh
Martin W.P. Savelsbergh
John W. Gregory
John J. Forrest

Greg Astfalk
Greg Astfalk
Greg Astfalk
Martin W.P. Savelsbergh
John J. Forrest
John J. Forrest
John J. Forrest
Martin W.P. Savelsbergh
John W. Gregory
Karla Hoffman
E. Andrew Boyd
E. Andrew Boyd
E. Andrew Boyd
E. Andrew Boyd
E. Andrew Boyd
Sebastian Ceria
Martin W.P. Savelsbergh
Martin W.P. Savelsbergh
Jonathan Eckstein
Sebastian Ceria
Sebastian Ceria
John J. Forrest
Martin W.P. Savelsbergh
Sebastian Ceria
Martin W.P. Savelsbergh
Paul Seymour
E. Andrew Boyd
E. Andrew Boyd
Martin W.P. Savelsbergh
Martin W.P. Savelsbergh

10m P=T I A 5 8'

In Table 1, the first column, NAME, contains the
name of the model. The next two columns, ROWS and
COLS, contain the number of rows (constraints), not
including free rows, and the number of columns (vari
ables) in the problem, respectively. The column INT
specifies the number of variables that are restricted to
integervalues, and the 0/1 .i..i.... . I.. . .. .
of these integer variables are binary. The column
CONT specifies the number of variables that are con
tinuous. The next two columns report the best-known
integral solution and the optimal value with the inte
grality restrictions relaxed, respectively. Three entries
in the INT SOLN column include the qualifier (not
opt) which indicates that the reported solution has not
been proved to be optimal. The last column LP SOLN
contains the solution to the linear programming relax
ation for each problem.
Table 2 contains information regarding the origins
of each problem. The first column is, again, NAME.
The second column, ORIGINATOR, gives the name
of the person (institution) from whom (which) the
problem originated. The next column, FORMULA
TOR, gives the name of the person or organization re
sponsible for formulating the model, and the last col
umn, DONATOR, gives the name of the person or
institution who contributed the problem.

2.3 Problem Deletions

As a part of the modifications to MIPLIB, 25 problems
were deleted from the test set. One of the factors used
to determine whether a problem was to be deleted was
the ease with which the problem was solved. The re
mainder of the deleted problems were chosen to reduce
duplication. These problems were each part of a set of
problems exhibiting either similar form or behavior.

In order to determine which problems were "easy,
all of the current MIPLIB models were run on a SPARC
10/41 using the CPLEX 3.0 mixed-integer optimizer1.
The settings given below were used. They were meant
to correspond to what one might consider the most
straightforward implementation of a reasonable, LP
based branch-and-bound solver: no preprocessing;
branching variable selection i I 1i take
the variable with thel ...- i .. i i., ,I i node
selection (bestbound): in a minimization problem, take
as the next node to process the one with the smallest
value for the solution of its LP relaxation; no cutting
plane generation; no heuristic generation of integral
Using these settings, the problems air0l, air02,
bm23, cracpbl, diamond, 1p41, miscOl, misc02, misc04,
mod013, p0040, pipex, sample, sentoy, stein9, and
steinl5all solved in 11 seconds or less and were selected
for deletion. The solution of every other problem took
at least 25 seconds. The model air06was also removed
since it can be solved as a linear program, requiring no
Various models were deleted to eliminate instances

bell3b, bell4: The problems bell3a, bell3b, bell4, and
bell5are all based upon the same underlying model.
Both bell3aand bell3bare relatively .... I,
seem about equally difficult, with bell5the more dif
ficult of the two.
misc05: The problems misc5Oand misc06have very
similar solution characteristics, and the "misc"set
seemed overrepresented.
p0291: The "p "set also seemed overrepresented.
fixnet3, fixnet4: The problems fixnet3, fixnet4, and

Table 3: Constraint types

G General
K Knapsack
E Equality knapsack
F Facility location

j Ba + ji"cay

j Ba/jX=b
j. Ba/ axk

I Invariant knapsack j,) k(k,, 1 A k,, ME -1)
P Packing jB Xj 1
C Covering j xa 1
S Special ordered set B x = 1
U variable Upper bound ay- O ax,
L variable Lower bound ay. t akx,

fixnet6 were all randomly generated and have very
similar solution characteristics. From the three, we se
elected one to keep, more-or-less at random.
setlal, setlcl: Again, setlal, setlcl, and setlch were
all randomly generated and have similar solution char
acteristics. setlch appears to be the most difficult and
was retained.

2.4 Constraint Classification

One of the most important techniques to successfully
solve mixed integer programs is reformulation. Refor
mulation techniques, such as preprocessing and cut
generation, are incorporated in almost all state-of the
art mixed integer optimizers. Many reformulation

embedded in the constraint matrix. For example, gen-
eration of lifted cover inequalities can only be done if
the constraint matrix contains knapsack inequalities.
Therefore, knowledge about the structure of the con
straint matrix is useful in determining whether certain
reformulation techniques can be applied. In view of the
above, we have decided to provide some basic infor
mation about the constraint matrix of the problems in
the MIPLIB. For each of the problems in the MIPLIB,
information is given about the types of constraints that
appear in the constraint matrix. In defining a constraint
type we use the symbol xto denote binary variables and
the symbol yto denote general integer and continuous
variables. Each constraint type will be an equivalence
class with respect to complementing binary variables,
i l .1 .. .... i, ..... I. l Ih , I, l,..,_ l,. ,_. ,. I I"
then the constraint with ax. replaced by a(1 also
belongs to that class. Consequently, the most general
constraint that can appear in a mixed integer program
can be represented as follows

ajx + a y Ob,
B J ,1 C
where B, land Cdenote the sets of binary, integer, and
continuous variables, respectively, a.is positive forj
B, a is nonzero forj I" C, and E is the sense of the
constraint, either or
We distinguish the types of constraints given in
Table 3.
Note that

x x 1- I N-
].N+ JN-
with N N B, is also considered to be a packing
constraint, since complementing the variables with a
negative coefficient gives

x + x 1
} N+- j N-




Table 4: Constraint types


10teams 110 40 80
air03 124
air04 823
air05 426
arki001 1027 13 6 2
bell3a 101 22
bell5 76 15
blend2 93 79 9 88
cap6000 7 2046 123
dano3mip 2518 606 30

danoint 256 392
dcmulti 165 22 10 45 45
dsbmip 1142 40
egout 43 55
enigma 1 20
fast0507 3 504
fiber 44 90
fixnet6 100 378
flugpl 18
gen 318 24 432 6

gesa2 912 14 288 144
gesa2_o 624 48 144 288 144
gesa3 936 48 264 120
gesa3_o 672 48 120 264 120
gt2 27 2
harp2 30 9 73
khb05250 77 24
l1521av 1 95
Iseu 11 17
misc03 1 3 2 30 3 31 5

misc06 820
misc07 1 3 2 42 3 127 7
mitre 383 1148 140 383
mod008 6
modOlO 1 144
modOll 4400 16 64
modglob 95 196
noswot 137 20 25
nw04 36
p0033 11 4

p0201 33 54 26 20
p0282 64 177
p0548 112 64
p2756 403 352
pkl 45
pp08a 72 64
ppO8aCUTS 182 64
qiu 664 528
qnetl 178 32 4 4 48 45
qnetl_o 152 32 48 32
rentacar 6674 55 55

rgn 20 4
rout 47 14 230
setlch 252 240
seymour 285 4659
stein27 1 117
stein45 1 1 329
vpml 66 168
vpm2 66 168

Table 4 contains information regarding the differ
ent types of constraints occurring in each problem as
well as the actual number of constraints of each type.
For example, the row corresponding to problemp0033
has entries 11 and 4 in columns K and S, respectively,
indicating that eleven knapsack and four special or
dered set constraints are present.

3 MIPLIB Availability
The MIPLIB library is accessible via the Internet.
The MIPLIB page can be found at
' .ji ... i, i -.. .... /-bixby/miplib/
TI.. 1... .. can also be obtained via anonymous ftp.
The library and related files are in the directory
on the machine ftp.caam.rice.edu.

4 MIPLIB submissions
As noted earlier, we encourage both researchers and
practitioners in integer programming to submit real
world instances to the authors for consideration and
possible inclusion in MIPLIB. The library will be
updated at least once each year after review of the
submitted problems. In order to submit a problem, the
MPS file containing the problem should be transferred
i,,i.. iI .I,,,, h ,
the machine ftp.caam.rice.edu. The submission should
be accompanied by an e-mail message to
miplib@caam.rice.edu containing information about
the origin of the instance, the optimal solution (if
known), and the way the optimal solution was ob

[1] Bixby, R.E., E.A. Boyd, and R.R.
Indovina. 1992. MIPLIB: A Test Set of
Mixed Integer Programming Problems.
SIAM News 25:2 (March).

SCPLEX is a trademark of CPLEX Optimization,

0 P T I M A -5 81^^^R^^^^^^*^




Conference Notes

) 4th International Conference on Optimization
July 1-3, 1998, Perth, Australia
URL: http://www.cs.curtin.edu.au/maths/icota98
) APPROX 98 1st International Workshop on Approximation
Algorithms for Combinatorial Optimization Problems
July 18-19, Aalborg, Denmark
URL: http://www.mpi-sb.mpg.de/~approx98/
) Optimization 98
July 20-22, 1998, Coimbra, Portugal
URL: http://www.it.uc.pt/~opti98
August 19-21, 1998, Saarbruecken, Germany
URL: http://www.mpi-sb.mpg.de/~wae981
) INFORMS National Meeting
October 25-28, 1998, Seattle WA
URL: http://www.math.org/seattleinforms.html
) International Conference on Nonlinear Programming and
Variational Inequalities
December 15-18, 1998, Hong Kong
URL: http://www.cityu.edu.hk/malconferencelicnpvi/icnpvi.html
Sixth SIAM Conference on Optimization
May 10-12, 1999, Atlanta, GA
Fourth International Conference on Industrial and
Applied Mathematics
July 5-9, 1999, Edinburgh, Scotland
URL: http://www.ma.hw.ac.ukliciam99/
~ 19th IFIP TC7 Conference on System Modelling and Optimization
-; July 12-16, 1999, Cambridge, England
F URL: http://www.damtp.cam.ac.uk/user/na/tc7con

----'i h



International Congress of Mathematicians

Berlin, Germany
August 18-27, 1998

Web Site

Information about ICM'98 can
be found at the ICM'98 web
site (http://elib.zib.de/ICM98).

Special Activities Related to
Women in Mathematics

All who are interested in the
participation of women in the
study of mathematics and in the
community of mathematicians
are invited to the following
FRIDAY, August 21, 19:30
ognition of the involvement of
women from many countries as
ICM participants, women speakers
from several countries will discuss
"Events and policies: Effects on
women in mathematics."
The panel is being organized by
women from the Association for
Women in Mathematics (AWM),
the European Women in Math
ematics (EWM) and the Commit
tee on Women and Mathematics of
the European Mathematical Soci
ety, represented by a committee
consisting of Bhama Srinivasan
(chair; Chicago, IL, USA), Bettye
Anne Case (Tallahassee, FL, USA),
and Christine Bessenrodt
(Magdeburg, Germany). The orga
nizers have received planning ad
vice from women in several addi
tional countries. They envision that
each speaker will talk about how
certain events or policies in her
country have affected women in
For more information, please con
tact Bettye Anne Case

FRIDAY, August 21, 21:15
A film entitled "Women and Math
ematics across Cultures" will be
shown. The film briefly introduces
EWM, shows some statistics, and
allows four female mathematicians
to share their personal experiences
about the impact of cultural differ
ences on the status of women in the
profession. The film was directed
by Marjatta Naatanen (Helsinki,
Finland) in collaboration with
Bodil Branner (Lyngby, Denmark),
Kari Hag (Trondheim, Norway),
and Caroline Series (Warwick,
For more information, please refer
to the web page (http://
SATURDAY, August 22, 11:00
Cathleen Synge Morawetz, Cou
rant Institute, New York Univer
sity, will present an EMMY
TURE called
"Variations on
Conservation Laws
for the Wave
Equation." The
Emmy Noether
Lecture will be
chaired by Irene
M. Gamba (Aus
tin, TX, USA).
time dependent
wave equation has
many conservation
laws obtainable by using Emmy
Noether's theorem for equations
coming from Lagrangians. From
this nucleus we survey some esti
mates that can be found for equa
tions close and not so close to the
wave equation and show applica
tions for these estimates (time de
cay for exterior problems and non
linear Klein-Gordon, for the re
duced wave equation and for the
Tricomi equation). On a slightly
different note, some weakly quasi

and other nonlinear perturbations
of the time wave equation have
simple formal asymptotic solutions.
These formal solutions probably
represent real solutions but that re
quires some new estimates. For
more information:, please contact
Cathleen Synge Morawetz
- Bettye Anne Case (Tallahassee,
Florida, USA), and Sylvia Wiegand
(Lincoln, Nebraska, USA)

Berlin as a Centre of
Mathematical Activity
Another event of general interest
has reached its final shape. The
workshop "Berlin as a Centre of
Mathematical Activity," suggested
by the International Commission
on the History of Mathematics
(ICHM) and organized on its be
half by G. Israel (Rome) and E.
Knobloch (Berlin),
was approved as
one of the events
of the "Section of
Special Activities."
It will take place
on the afternoon
of Saturday, Au
gust 22. The pro
gram of this work
shop is as follows:
14.00 14.15 h G.
S Israel, University
of Rome: Introduc
14.15 14.45 h David Rowe, Uni-
versity of Mainz: The Berlin
Goettingen Rivalry, 1870 1920
14.45 -15.00 h Discussion
15.00 -15.30 h Ivor Grattan
Guinness, Middlesex Polytechnic,
England: Weierstrassian analysis and
Cantorian set theory in Britain and
the USA, 1890 1910
15.30 15.45 h Discussion
15.45 16.15 h Coffee break
16.15 16.45 h U. Bottazzini,

Centro Linceo Interdisciplinare 'B.
Segre' Accademia dei Lincei, Rome:
Weierstrass 's school of analysis and its
influence on Italian mathematics
16.45 -16.50 h Discussion
16.50 -17.20 h S. Demidov, Rus
sian Academy of Sciences, Moscow:
Russian mathematicians in Berlin in
the 2nd half of the XIXth and at the
beginning of the XXth centuries
17.20 -17.25 h Discussion
17.25 -17.55 h A. Dahan, CNRS
Paris: Images croisees des centres
mathematiques de Paris et de Berlin,
dans les annees 1860/80
17.55 -18.00 h Discussion

URANIA Activities
At its last meeting in August 1994
at Luzern, Switzerland, the IMU
General Assembly (GA) approved
the following:
RESOLUTION 5: "The General
Assembly recommends that the
Programme Committee schedule
some less formal scientific events of
broad interest during the Con
The ICM'98 Organizers agree that
it is of utmost importance to ex
plain general ideas of our science
and to indicate research trends to
the educated layman and to make
connections of mathematics to
other areas of science, technology,
economics, music, art, philosophy,
etc., visible.
To achieve some of these goals, the
ICM'98 Organizing Committee
has rented the Urania building to
present mathematics to a broad au
dience from August 20 to 27,
1998. The Urania building belongs
to the Urania foundation, a well es
tablished organization founded by
important industrialists and famous
scientists more than 100 years ago
in order to popularize scientific re
search (in a broad sense). The man




0 P T I M A -5 81


agement of Urania will support the
advertisement of the mathematical
events through its well-established
The program to be offered at the
Urania is currently taking shape.
The activities are organized by
Ehrhard Behrends (FU Berlin,
behrends@math.fu-berlin.de). You
will obtain the final program with
your conference material; updates
can, of course, be found at the
ICM'98 web site (http://
Although the Urania program is di
rected to the general public, we be
lieve that it will also be of interest
for ICM'98 participants and for ac
companying persons, in particular.

Footloose Tours, A First Glimpse
To convey some of the many facets
of Berlin to the ICM'98 partici
pants and to accompanying per
sons, especially, several Berlin
mathematicians, their friends and
spouses have volunteered to offer
informal tours of Berlin, especially
to places "off the beaten track."
Most of the tours are free of charge,
except for possible entrance fees
(and public transportation fares for
those accompanying persons who
have not bought the transportation
ticket offered by ICM'98). In a few
cases professional guides with par
ticular expertise have been hired.
The list below is preliminary and is
just intended to give you an idea of
what the Berlin mathematicians are
planning as a particular service for
their ICM'98 guests. The final list
of footloose tours will be distrib
uted via the ICM'98 E-mail infor
mation service, probably in early

We want to keep the organization
of the footloose tours very infor
mal. Booking will be possible only
via e-mail. (Special e-mail addresses
for footloose tour registration will
be announced with the final list of
these tours.) Places will be assigned
on a first-come, first-serve basis.
There will, however, be a booth at
the Congress registration desk to
help those who could not book
through e-mail, to handle last
minute changes and, if possible, or
ganize additional ad-hoc tours or
the repetition of tours for which
there was particularly great interest.
We want to keep groups small.
Thus, group sizes are tightly re
stricted. One exception is the organ
recital in the Berliner Dom where
sufficiently many seats are available
and for which you can already reg
Unless stated otherwise, the tours
will start in front of the main
building of the Technical Univer
sity, the site of the Congress.
Ralph-Hardo Schulz (FU Berlin) is
in charge of the organization of the
footloose tours. If you have any
questions or suggestions please con
tact him via e-mail

Preliminary List of Footloose Tours
1. Berliner Dom -Guided Visit
and Organ Recital; 2. Guided
Tours of Berlin in Russian; 3.
Visite de Berlin Guide en Francais;
4. Visita Guidata di Berlino in
Italiano; 5. Tour through the New
Berlin (Guided Tour in English); 6.

Berlin Alternative 7; Path to the
Jewish Berlin; 8. "Fascism: Seizing
of a town"; 9. Gedenkstaette
deutscher Widerstand; 10. Walk
along the Former Border Line
(Wall); 11. A Visit to Humboldt
University; 12. Tombs of
Weierstrass and Kronecker; 13.
Cemetery Tour; 14. Gipsformerei
(Plaster Moulders of the Berlin
Museums); 15. Egyptian Museum
and Park of Charlottenburg Castle;
16. Gemaeldegalerie Kulturforum
(Picture Gallery); 17. Picasso (the
Berggruen collection); 18.
Deutsche Bank (Guggenheim Mu
seum); 19. KPM Werkstatt ("Royal
Prussian Porcelain Manufacture");
20. Guided Walk through the Zoo;
21. Riksha Tour from
Alexanderplatz to the Brandenburg
Gate; 22. Visit of "Hackesche
Hoefe"; 23. Bus No. 100 from
Bahnhof Zoo to Alexanderplatz
and Back; 24. Strolling through the
Botanical Garden; 25. Botanical
Garden (Guided Tour); 26. Shop
ping in KaDeWe; 27. Walk
through the Park of Schloss
Glienicke; 28. Walk through the
Grunewald; 29. Walk around the
Straussee (a lake near Berlin).
The ICM'98 web site (http://
elib.zib.de/ICM98/E/5) now in
cludes a page about the ICM'98
footloose tours. More details will
be added in the near future about
the tours that will be offered.
Written on behalf of Martin
Groetschel, President of the ICM'98
Organizing Committee

International Conference on
Nonlinear Programming and
Variational Inequalities

We are pleased to announce that
the International Conference on
Nonlinear Programming and Varia
tional Inequalities will be held De
cember 15-18, 1998, in Hong
Kong. The conference aims to re
view and discuss recent advances
and promising research trends in
some areas of Nonlinear Program
ming and Variational Inequalities.
Since information on the confer
ence was released in July, there has
been a very good response from the
mathematical community. Around
200 people have already shown in
terest in attending. You are wel
come to join with us as well.
Invited speakers of the conference
include professors from universities
in the USA, Canada, Australia, Ja
pan and Europe. Key speakers in
clude Professor M. Powell (Univer
sity of Cambridge, UK), Professor
R.J.B. Wets (University of Califor
nia at Davis, USA), Professor M.
Kojima (Tokyo Institute of Tech
nology, Japan), Professor J.S. Pang
(Johns Hopkins University, USA),
and Professor Y. Yuan (Chinese
Academy of Sciences, China).
Two international mathematics
journals have recognized the impor
tance of this conference by agreeing
to publish special issues commemo
rating the conference. These are the
Journal of Computational and Ap
plied Mathematics, and the Journal
of Optimization Methods and Soft
If you are interested in joining this
conference, please see web site
b,11 .*. I,, I ... I
for details, or contact me via e-mail
(maopt@cityu.edu.hk) for more in




10 P T I M A 5 8



Interior Point Methods of Mathematical

Edited by T. Terlaky
Kluwer Academic Publishers
ISBN 0-7923-4201-1

This book consists of a collection of articles on interior-point methods, written by
leading experts in the field. Each article forms a chapter of the book. The editor was
careful to solicit a nice collection of articles covering the entire field of interior-point
methods with very little, if any, unnecessary overlap. Below I briefly describe what
is covered in each of the chapters.

Part I: Linear Programming
Chapter 1. Introduction to the Theory of Interior Point Methods (B.
Jansen, C. Roos, and T. Terlaky)
This chapter lays the groundwork for the rest of the book. In it, the authors prove
the strong duality theorem and the strict complementarity theorem using logarith
mic barrier functions for tl. I I....... ... 1I .1., .I problem. It also includes a
I .I l,,h l,,, ,,.... 1 I .I . 1 ,,,,. I I h..,,, Ih, I" I' ,.. I,, .I ..,... ,'point
Chapter 2. Affine Scaling Algorithms (T. Tsuchiya)
This chapter provides an extensive survey of results on affine scaling methods start
ing with the historical significance of these methods and continuing with a detailed
analysis of their convergence properties all the way up to the surprising result that
the primal variables and dual estimates converge when and only when the step length
is at most 2/3 of the way to the boundary of the feasible region. Also presented is
Mascarenhas' example showing that the
primal variables can converge to a
nonoptimal vertex when problems are
degenerate and step lengths are very close
to one.
Chapter 3. Target Following Meth-
ods for Linear Programming (B.
Jansen, C. Roos, and T. Terlaky)
This chapter introduces an approach to
r. interior point methods based on the
space of complementaryproducts, or v
space. This approach can be applied in
many variations and yields some of the
- simplest and most elegant complexity
Chapter 4. Potential Reduction Al-
-- gorithms (K. Anstreicher)
Karmarkar's algorithm, which inspired
the whole subject of interior-point
methods, had three novel aspects: (i) a
nonstandard formulation for the linear
programming problem, (ii) projective
-L* __ transformations, and (iii) a potential
function to measure the progress of the

0i^ P T I M A 5 8





10 P* A 5 8

It was quickly realized that similar results could be obtained with algorithms that
worked on standard forms and without projective transformations. However, the
projective transformation seemed fundamental for quite some time and many vari
ants and convergence results were obtained for so-called potential reduction algo
rithms. This chapter surveys these algorithms and their associated complexities.
Chapter 5. Infeasible Interior Point Algorithms (S. Mizuno)
In this chapter, the so-called infeasible interior-point methods are discussed and
analyzed. In contrast to the earlier chapters, this chapter focuses on algorithms that
are directly related to those methods that (currently) appear to be the most efficient
in practice. These methods are one-phase methods in which each iteration attempts
to decrease three things simultaneously: I .... I ,,,, I.,II cl, ,I ..., ,I.,I, i and
duality gap. Ti .. I..i.I ......... considers two variants: one that is close to what
people implement in practice and another for which good convergence and complexity
results exist.
Chapter 6. Implementation Issues (E. Andersen, J. Gondzio, C. M6szaros,
and X. Xu)
Buildingon theslhin I. I ... I.. .. I ....,I .......I .1 .... I ..i.I I, II.. I ... .... i 'h l '
this chapter discusses many important specific implementation details such as pre
processing, sparse linear algebra, adaptive higher-order methods, initialization, and
stopping strategies. Also discussed are the effect of centering, cross-over to a basis,
and basis identification.

Part II: Convex Programming
Chapter 7. Interior Point Methods for Classes of Convex Programs (F. Jarre)
Much of this chapter is an introduction to self concordant barrier functions intro
duced by Nesterov and Nemirovsky as a means of generalizing interior-point meth
ods to the broader domain of smooth convex optimization problems. Jarre has done
an excellentjob of distilling this important subject into a very understandable form.
Chapter 8. Complementarity Problems (A. Yoshise)
This chapter covers the extension of interior-point methods to linear and nonlinear
complementarity problems. This class of problems is a very natural extension oflinear
programming and includes several important real-world problems such as equilib
rium problems and variational inequalities. Much of the chapter deals with complexity
results for the monotone complementarity problem.
Chapter 9. Semidefinite Programming (M. Ramana, P. Pardalos)
Semidefinite programming is a generalization of linear programming in which the
nonnegative vector of decision variables is replaced by a square positive semidefinite
matrix of such variables. This class of problems has been of particular interest lately
since there are important applications to engineering design problems and to com-
binatorial optimization problems and because Alizadeh discovered that interior-point
methods provide a very natural way to solve these problems. This chapter surveys the
problem domain, the application areas, the interior-point algorithms, and the asso
ciated duality theory. There is a particular emphasis on this latter topic.
Chapter 10. Implementing Barrier Methods for Nonlinear Programming
(D. Shanno, M. Breitfeld, and E. Simantiraki)
This chapter revisits the classical logarithmic barrier method introduced by Fiacco
andMcCormickwiththeaddedinsightprovidedby tl.. i In I .. .. ...I.. ... ....
method development. Algorithms are presented for nonconvex nonlinear program
ming problems and preliminary results using the Hock and Schittkowski test suite
are provided.

Part III: Applications and Extensions
Chapter 11. InteriorPoint Methods for Combinatorial Optimization (J. Mitchell)
This chapter surveys work on applying interior-point methods to the solution of
combinatorial optimization problems. Included are discussions of branch and cut
methods for integer programming, a potential reduction method based on trans
forming an integer programming problem into an equivalent nonconvex quadratic
programming problem, interior-point methods for network flow problems, and
l,,, h I ... I.., .. I ,,,_ ,,,,,h ,. .,,,,, . l I i ,,..1 I, ,,, ,,,. ,,, ._ ,,, ,,,,, ,, .,' -p o in t
column-generation algorithm.
Chapter 12. Interior Point Methods for Global Optimization (P. Pardalos
and M. Resende)
The application of interior-point methods to global optimization problems is still
a subject in its infancy. Nonetheless, promising research directions have emerged
and this chapter surveys some of them. As in the case of combinatorial optimization,
most problems in global optimization are NP hard. Hence, most work involves
finding good approximate solutions.
This chapter describes some potential reduction and affine-scaling algorithms for
nonconvex quadratic programming problems and for some classes of combinatorial
optimization problems. It also provides some new lower bounding techniques for
these problems.
Chapter 13. Interior Point Methods for the VLSI Placement Problem (A.
Vannelli, A. Kennings, and P. Chin)
This final chapter discusses the application of interior-point methods to certain
specific optimization problems arising in VLSI chip design. There are many, many
real-world application areas for optimization technology. It is therefore a bit strange
that this book only considers one such area. Nonetheless, VLSI chip design is an
interesting application and readers will probably enjoy reading about it.

This book is an excellent reference work on all aspects of interior point methods.
Unfortunately, its price is prohibitive -but do look for it in your 1 .. ,. 1.1..

Linear programming: foundations and extensions

by Robert J. Vanderbei
Kluwer Academic Publishers
ISBN 0-7923-9804-1

[Due to the change of editorial board, reviews of Vanderbei's book were acquired
independently by the outgoing and incoming book review editors. We have decided
to publish them both. For the first review, see pg 12, OPTIMA No. 56.-Editor]
During the past decade there has been a lot of activity in the area of linear program
ming mainly due to the introduction of the polynomial time interior-point meth
ods. This seems to have inspired Robert J. Vanderbei to write a new book with the
title "Linear programming: Foundations and extensions" which gives a lively and
elementary introduction to both classical as well as more recent topics in LP.
The book consists of four parts discussing respectively the simplex method and
duality, networkmodels, interior-pointmethods, and extensions to non-linear prob



0 P* A 58

Quite naturally in Chapter 1, the book begins by showing an example of an LP
model to motivate the use of LP. Next, in Chapter 2, the simplex method is derived
using a dictionary approach and not the classical simplex tableau. This has the ad
vantage that the underlying ideas of the simplex method is better exposed to the reader.
H ..... ... 11.. ..' .. .... .. ........ .i i..... i.. .1 h ... I. & T ucker
(1969), andC hvatal (1983). I,- 1 .. .. .. , ... ... .. .. ,, ..... .. ,.
are discussed. In Chapter 5, LP duality theory is presented. This chapter has two very
nice features: first, it emphasize how duality can be used to establish bounds on the
optimal objective function value; second, the dual simplex method is derived in a very
natural way. In Chapter 6 and 7 the matrix based simplex method and sensitivity
analysis is presented. The chapter on sensitivity analysis is too brief and does not discuss
some of the pitfalls using the traditional sensitivity analysis [ch. 19] (Roos, Terlaky
and Vial, 1997). Chapter 7 also includes a presentation of the self dual simplex al
gorithm which seems to be the simplex method preferred by the author. Implemen
station issues are discussed in Chapter 8 and 9. In particular, the topics sparsity, the
LU factorization of the basis and its update, pricing strategies, and general bounds
on the variables are treated.
This discussion could be improved by treating partial pivoting which is necessary
for numerical stability. Also a discussion of the real Markowitz pivoting strategy or
at least a citation of the paper by Suhl & Suhl (1990) would have been appropriate.
At the end of part one of the book there are three chapters about how LP duality can
be used in convex analysis to prove Farkas' lemma and the existence of a strictly
complementary solution for instance. In addition, the use of LP in game theory and
regression analysis is covered.
The second and brief part of the book presents network-type models. Basically,
it is observed that there is a one-to-one correspondence between spanning trees and
bases for network flow problems. Moreover, if this fact is exploited, then all the variants
of the simplex algorithm can be executed much faster. This part also has a chapter
about structural optimization using network models.
The third part of the book is about interior-point methods, which are introduced
using the logarithmic barrier method. This gives an easy and general introduction
to the basic ideas of interior-point methods. The important concept of the central
path is introduced and the so-called infeasible path-following primal-dual algorithm
isderived. InChapters 1S.ii1. I iss ursi rl .r I rI.iilrv r i iri iii irl Ii r-pointmeth
ods are discussed. Especially the subject of Iii... I. ....I I / stable compu
station of the search direction is treated whereas issues such as using a different step
size in the primal and dual space, and Mehrotra's predictor-corrector method is not
covered. The last two chapters of part three contain a discussion on affine scaling
methods and the 1 ........ .... . I 1 ... ..- point method. The presentation
ofthN h. _, ...... ,11 I,,, I, h.,I,,,,hIl ,i,,,. ,. I,1,,.I ,,,.,,,,II,,..I. ,a /using
a Mizuno-Todd-Ye type predictor-corrector algorithm. This important chapter isun
fortunately not as well written as most of the other chapters of the book. The homo
generous model and its properties could have been better separated from the present
station of the homogeneous algorithm leading to abetter emphasis of tl i.... , ,.,1,
detection capability of the homogeneous model.
The fourth and last part of the book contains three chapters about integer pro
g .......... .... . .1. ** i i .. .... ......... i 'P), and general convex program ing.
The chapter about integer programming explains the branch and bound method in
some detail. The main features of the QP chapter is a presentation of the Markowitz
portfolio choice model and a generalization of the primal-dual interior-point method
to convex QP. The chapter about convex programming is very brief, but manages

to present a successive quadratic programming (SQP) type method for solution of
convex optimization problems where the subproblems of course are solved using an
interior-point algorithm. However, the important topics of doing a line search and
convergence are not treated.
Finally, it should be mentioned that the author maintains a web site which in
cludes additional material related to the book. This includes C source code for a
number of the algorithms presented from the book, an interactive Java based pivot
tool, and additional exercises.
Overall, Vanderbei's book gives a modern, comprehensive, and well-balanced
introduction to LP and related topics. The material in the book is presented at an
elementary level which makes it easy for students as well as newcomers to the area
to read and understand the book. It has many nice numerical examples, which will
I., i..... I be appreciated. Moreover, the book prepares the reader well for further
studies of LP.
I also have a few reservations with respect to the book. The notation is occasion
ally more complicated than necessary and is not always standard. Moreover, I would
have preferred if the author had used qualities in his standard LP form because this
reduces the number of symbols to keep track of. The exercise sections of the book
could be improved and extended. In many cases the author prefers using an example
instead of a real proof, which may not always be ideal. A few subjects are absent in
the book; in particular, decomposition methods and semi-definite programming are
not mentioned at all.
In conclusion, Vanderbei'sbook gives an excellent introduction to linear program
ming, especially the algorithmic side of the subject. The book is highly recommended
for both self study and as teaching material.

M. L. Balinski and A. W. Tucker. Duality theory of linear programs: a
constructive approach. SIAM Rev., 11(3):347 377, July 1969.
V. Chvatal. Linear programming. W.H. Freeman and Company, 1983.
C. Roos, T. Terlaky, and J. Ph. Vial. Theory and algorithms for linear
optimization: an interior point approach. John Wiley & Sons, New
York, 1997.
U. H. Suhl and L. M. Suhl. Computing sparse LU factorizations for large
scale linear programming bases. ORSA J. on Comput., 2(4):325 335,

JUNE 1998


10 P*


Annotated Bibliographies in Combinatorial

Edited by M. Dell' Amico, F Maffioli and S. Martello
John Wiley & Sons (1997)
ISBN -471-96574-X

This book presents a quite thorough and up-to-date overview of the field of Com-
binatorial Optimization, with a detailed analysis of the state-of-the-art in many
relevant areas of study and, in particular, annotated bibliographies thereof.
Recognized research leaders examine individual topics: Hardness of Approxima
tion, Polyhedral Combinatorics, Branch-and-Cut Algorithms, Matroids and
Submodular Functions, Perfect, Ideal and Balanced Matrices, Advances in Linear
Optimization, Decomposition and Column Generation, Stochastic Integer Program
ming, Randomized Algorithms, Local Search, Sequencing and Scheduling, The
Traveling Salesman Problem, Vehicle Routing, Max-Cut Problem, Location Prob
lems, Flows and Paths, Network Design, Network Connectivity, Linear Assignments,
Quadratic and Three-Dimensional Assignments, Cutting and Packing, Set Cover
ing Problem, Combinatorial Topics in VLSI Design, and Computational Molecu
lar Biology. There is also a chapter on books in Combinatorial Optimization.
In my opinion this book will be of very high value to researchers, educators and
even practitioners. The organization of the book and the lightweight style in which
fti.. .I.II h I ,, l. .i. .. ,,,, I .. II I ,.II ,,,,,,I, ,I, I ... | I .I I ....I II ,I .1,1 ,,,I
a snapshot of the state and direction of a particular field and relevant references.

Why you need this book.
Combinatorial Optimization, as a look at the above list of topics shows, has grown
explosively in recent years. This growth has been fueled by areas of application that
yield difficult problems, by major advances in the foundations of computer science
and discrete optimization, and by a renewed interest in effective computation. It is
doubtful that anybody could claim to be familiar with every single area of recent
This book makes it easy to become an instant expert on any of the above fields
-after a suitable amount of reading of references, of course. The book will also be
useful to an expert in a particular field, by gathering together and annotating refer
ences. I have already used the book to locate articles where particular results are
described (I knew the result, I knew the author, and I even knew thejournal, but not
the particular reference).

The structure of the book.
Each area of study is analyzed either historically or by sub-fields. An overview of the
current state of the field is presented together with the references. Usually, a road map
to some of the results, and even a sketch of some crucial proofs is also given. I found
this feature particularly enjoyable.


I was also quite pleased to see the chapters on Hardness of Approximation (V.
Kann and A. Panconesi) and Randomized Algorithms (M. Goemans, D. Karger and
J. Kleinberg) included in this volume. These chapters discuss recent results and tech
niques that will have deep and lasting impact in our field, and yet may not be com
pletely familiar to many researchers in Combinatorial Optimization. The chapter
on Branch-and-Cut Algorithms (A. Caprara and M. Fischetti) details some emerg
ing techniques in the successful solution of real-world integer programs. Some ex
c',, ... .. 11 ... .1.1 .i ,. II 11. ..I....I. ...... ..ftheStrongPerfectGraph
Conjecture, are presented in the chapter on Perfect, Ideal and Balanced Matrices (M.
Conforti, G. Cornuejols, A Kapoor, K. Vuskcovic). The Set Covering Problem
chapter (S. Ceria, P. Nobili and A. Sassano) presents a historical overview and also
describes some promising new techniques in the solution of this very important class
of problems. The chapters on Vehicle Routing (G. Laporte) and Location Problems
(M. Labbe and F.V. Louveaux) are a testament to the increasing importance of these
logistical problems. Other important applications with substantial combinatorial
content are described in the chapters on Network Design (A. Balakrishnan, T.L.
MagnantiandP. Mirchandani), CombinatorialTopicsinVL" I I .... l' I.....
D. Wagner) and Computational Molecular Biology (M. Vingron, H.-P. Lenhofand
P. Mutzel). This 1,' I. il. . I .. ..... h .. i,, but in fact all chapters are
useful, substantial and generally well written.

I found this book quite satisfactory, and can only point out some minor issues.
Even though the book is fairly thorough, perhaps it could have included chapters
on Computational Geometry and on the C. ..... -. ....i ,i.l.. These are substan
tial topics which arguably would have fit well. Also, even though computational
. ... .. i ,.i I... ............ .... ., ..... ..1 ..... .I (mostnotably,inthebranch
and-cut chapter) perhaps a unified treatment could have been desirable although
I realize that making such a chapter fit without too much overlap with others might
not be an easy task.
On a different note, the focus of this book is, of course, the references provided
therein. Manyr. .I. .... 1.1 i 1..- ,1 read some of these references, in particu
lar the more recent ones, after finding them here. Nowadays, a common way of
obtaining articles is through the Web. Ideally, the book could have included URLs
for the download of at least some papers although I hasten to add that the creation
and maintenance of such a database of URLs would be a very difficult logistical
undertaking, possibly beyond the scope of a book.
Finally, overall the references appear complete. I found only a few cases of ref
erences that I would have included; and perhaps even some questionable references.
But this may largely be a matter of taste, and in any case a reader interested in a
particular topic is likely to find any "missing" references while reading those pro
vided here!
In conclusion: this is an excellent book, a "must have" for anybody with an in
terest in Combinatorial Optimization.

Rainer Burkard has been elected Honorary Member of the Hungarian Academy of Sciences.

Deadline for the next OPT I M A September 15, 1998

For the electronic version of OPTIMA, please see:


Application for Membership

I wish to enrollas a member of the Society.

My subscription is for my personal use and not for the benefit of any library or institution.

O I willpaymymembership dues on receipt ofyour in voice.

E I wish to pay by credit card (Master/Euro or Visa).




Mail to:
Mathematical Programming Society
3600 University City Sciences Center
Philadelphia PA 19104-2688 USA

Checks or money orders should be made
payable to The Mathematical Programming
Society, Inc. Dues for 1998, including
subscription to the journal
Mathematical Programming, are US $70.
Student applications: Dues are one-half the
above rate. Have a faculty member verify
your student status and send application
with dues to above address.
Faculty x 1 I, -. status









Center for Applied Optimization
371 Weil Hall
PO Box 116595
Gainesville FL 32611 6595 USA


Karen Aardal
Department of Computer Science
Utrecht University
P.O. Box 80089
3508 TB Utrecht
The Netherlands
e-mail: aardal@cs.ruu.nl
URL: http://www.cs.ruu.nl/staff/aardal.html

Mary Elizabeth Hribar
Center for Research on Parallel Computation
Rice University
6100 Main Street MS 134
Houston, TX 77005-1892
e-mail: marybeth@caam.rice.edu
URL: http://www.caam.rice.edu/~marybeth/

Sebastian Ceria
417 Uris Hall
Graduate School of Business
Columbia University
New York, NY 10027-7004
e-mail: sebas@cumparsita.gsb.columbia.edu
URL: http://www.columbia.edu/~sc244/

Elsa Drake, DESIGNER
published by the
Journal contents are subject to change by the publisher.

Robert Weismantel
Konrad-Zuse-Zentrum fir Informationstechnik (ZIB)
Takustrasse 7
D-14195 Berlin-Dahlem
e-mail: weismantel@zib.de

University of Florida Home Page
© 2004 - 2010 University of Florida George A. Smathers Libraries.
All rights reserved.

Acceptable Use, Copyright, and Disclaimer Statement
Last updated October 10, 2010 - - mvs