Advanced Algorithms Lecture 04,1
Advanced Algorithms Lecture 04,1
http://ocw.mit.edu
For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.
18.415/6.854 Advanced Algorithms September 24, 2001
Lecture 4
Lecturer: Michel X. Goemans Scribe: Reina Riemann
1 L P Duality
Last time, we proved the strong duality theorem. Let P and D be the following pair of dual
linear programs:
T
( P ) z* = min{c x : Ax = b,x 2 O),
(D) w * = m a ~ { b ~ ~ : ~ ~ ~ < c ) .
Theorem 1 (Strong duality) If P or D i s feasible then z* = w* .
+ +
-41x1 4 2 x 2 4 3 x 3 = bl
+ +
A2151 A2252 A2323 2 b2
+ +
A31~1 A32~2 A33~3 <
b3
X I > 0 , x2<0 , X3 UIS,
where Aij is a mtrix of size mi x nj (and thus x j E Enj) and UIS denotes no restrictions
("unrestricted in sign7')on these variables, then the dual is:
+ +
w = max blT yl bFy2 bT3 Y3
2 Size of L P
In order to be able to discuss the complexity for solving a linear program, we need first to
discuss the size of the input. We assume that every integer data is given in binary encoding,
thus for n E Z, we need
bits, for u E ZP, we need
bits. As a result, to represent all the data of a linear program, we need a size equal to
The above size is not very convenient when proving the complexity of a linear program-
ming algorithm. Instead, we will be considering another size, defined by
where detmax= max 1 det (A') I over all submatrices A' of A, bmax = maxi lbi 1 and cmax =
maxj Icj1.
In the next proposition, we show that L is smaller than size(LP), which implies that
if we can prove that an algorithm has a running time polynomially bounded in terms of L
then it will certainly be polynomial in size(LP) as well.
Proof: Recall that for A = [al,aa, ...,a k ] ,I det (A)I can be visualized as the volume of the
parallelipiped spanned by the column vectors. Hence,
From the definition of L, the following remark follows; this is what we will need mostly
when analyzing running times or sizes.
Claim 4 LP E N P
We now show that if we take not just any feasible solution, but a basic feasible solution,
then its size will be polynomially bounded in the size of the input.
Proof: Since x is a vertex, then x is a basic feasible solution with basis B such that
XB = ~ i l and
b XN = 0 (notice that As is square). By Cramer's rule:
where cof (A) is a matrix whose entries are all determinants of submatrices of A. Letting
q = det (Ag), we get that q 5 detmax < 2L and pi 5 m detmax bmax < 2L.
Now, to prove Claim 4, for yes instances, the certificate will be a vertex of {x : Ax =
b,x 2 0) such that cTx 5 A. However, to be precise, we also have to deal with the case
in which the LP is unbounded, since in that case, there might not be any such vertex.
But in that case, we can give a certificate of unboundedness by (i) exhibiting a vertex of
{x : Ax = b, x 2 0) (showing it is not empty, and it is concise by the above theorem) and
(ii) showing that the dual feasible region {y : 5 c) is empty by using Farkas' lemma
and exhibiting a vertex of Ax = b, x 2 0, cTx = -1 which is also concise by the above
theorem.
Thanks to duality, we can also show that:
Claim 6 LP E co- N P .
Indeed, for no instances, we can use strong duality and exhibit a basic feasible solution
of ATy 5 c s.t. bTy > X (or show that {x 2 0 : Ax = 6) is empty using Farkas' lemma).
In the case when {x : Ax = b, x 2 0) is feasible, the correctness follows from strong duality
saying that
>
min{cTx: Ax = b,x 0) = rnax{bTy : ~ 5 c).
~ y
Thus, L P E N P n co - N P which makes it likely to be in P. And indeed, LP was shown
to be polynomially solvable through the ellipsoid algorithm.
The Ellipsoid algorithm was proposed by the Russian mathematician Shor in 1977 for
general convex optimization problems, and applied to linear programming by Khachyan in
1979.
Figure 1: One iteration of the ellipsoid algorithm.
The ellipsoid algorithm has the important property that the ellipsoids contructed shrink
in volume as the algorithm proceeds; this is stated precisely in the next lemma. This means
that if the set P has positive volume, we will eventually find a point in P. We will need to
deal with the case when P has no volume (i.e. P has just a single point), and also discuss
when we can stop and be guaranteed that either we have a point in P or we know that P
is empty.
Lemma 7 VoW%i-1) <e-k.
Before we can state the algorithm more precisely, we need to define ellipsoids.
Definition 1 Given a center a, and a positive definite matrix A, the ellipsoid E(a, A) i s
defined as {x E Rn : (x - a ) T ~ - l ( x- a) 5 1).
One important fact about a positive definite matrix A is that there exists B such that
A = B-lB, and hence A-' = B - ~ ( B - ' ) ~ .Ellipsoids are in fact just affine tansformations
of unit spheres. To see this, consider the (bijective) affine transformation T : x + y =
( B - ' ) ~ ( x- a). It maps E(a,A) -t {y : yTy 5 1) = E(0, I).
We first consider the simple case in which the ellipsoid El, is the unit sphere and that the
inequality we generate is xl 2 0. We claim that the ellipsoid containing Ekn {x : xl 2 0)
In this specific case, we can prove easily lemma 7 (we prove a slight weakening of it by
just showing an upper bound of e-'I2("+l)) :
Proof: The volume of an ellipsoid is proportional to the product of its side lengths. Hence
the ratio between the unit ellipsoid El, and Ek+1is
(")( n2 )+
V~l(Ek+l) -
- nfl n2-1
Vol Ek 1
+
where we have used the fact that 1 x 5 ex for all x.