Skip to main content

Full text of "Smoothed Analysis of Interior-Point Algorithms: Termination"

See other formats

Smoothed Analysis of Interior-Point Algorithms: Termination 

Daniel A. Spielman * Shang-Hua Teng t 

Department of Mathematics Department of Computer Science 

Massachusetts Institute of Technology Boston University and 

Akamai Technologies Inc. 

February 1, 2008 


We perform a smoothed analysis of the termination phase of an interior-point method. 
By combining this analysis with the smoothed analysis of Renegar's interior-point algorithm 
in |DST02j , we show that the smoothed complexity of an interior-point algorithm for linear 
programming is 0(m 3 \og(m/a)). In contrast, the best known bound on the worst-case 
complexity of linear programming is 0(m 3 L), where L could be as large as m. We include 
an introduction to smoothed analysis and a tutorial on proof techniques that have been 
useful in smoothed analyses. 

1 Introduction 

This paper has two objectives: to provide an introduction to smoothed analysis and to present 
a new result — the smoothed analysis of the termination of interior-point algorithms. We begin 
with an intuitive introduction to smoothed analysis (Section 11.1(1 followed by a more formal 
introduction (Section II .2(1 . After introducing necessary notation in Section |5J we survey the 
complexity of interior-point algorithms (Section |3J), emphasizing the role of Renegar's condition 
number (Section0J. We then explain the termination algorithm (Section^}) present its smoothed 
analysis at a high level (Section^)), and then delve into the geometric (Section^) and probabilistic 
(Section [SJ) aspects of its analysis. In Section |H1 we include a tutorial of the fundamental 
techniques used in this work and in the smoothed analysis of the simplex method |ST01] . Finally, 
in Section EH we explain how the analysis of termination is related to the analysis of the simplex 

1.1 Intuitive Introduction to Smoothed Analysis 

Folklore holds that most algorithms have much better performance in practice than can be proved 
theoretically. This is partially due to the lack of a theoretical definition of "practice" , partially 

'Partially supported by NSF grant CCR-0112487. 

f Partially supported by NSF grants CCR-9972532, and CCR-0112487. 


due to the approximations made in most theoretical analyses, and partially due to the dearth of 
performance measures considered in theoretical analyses. In jSTOlj . we suggested that smoothed 
analysis might provide a theoretically analyzable measure of an algorithm's performance that 
would be more predictive of its behavior in practice. . 

Algorithms are typically analyzed through either worst-case or average-case complexity. Worst- 
case analyses may disagree with practical experience because they are dominated by the most 
pathological input instances. For many algorithms, these pathological inputs are rarely, if ever, 
encountered in practice, and are only known from lower-bound proofs. In an attempt to create 
a less pessimistic analysis, researchers introduced average-case analysis, in which one defines a 
probability distribution on input instances and then measures the expected performance of an 
algorithm on inputs drawn from that distribution. A low average-case complexity provides some 
evidence that an algorithm may run quickly in practice. However, this evidence is not conclusive 
as the inputs encountered by the algorithm in practice may not look like random inputs. 

This discrepancy between theoretical and experimental analysis manifests itself in the analysis 
of linear programming algorithms. The simplex method for linear programming is known to per- 
form very well in practice, but to have exponential worst-case complexity K \ 1 721 [Mur80l FGS79 , 
G 0I8 3~| lAC 78 1 IJer 73| I A Z 99] . On the other hand, it is known to have polynomial average-case com- 
plexity under a number of notions of average-case |Bor80[ IBor77| ISma83| IHai83| IAKS87| [AM85 , 
Tod86,. Interior-point methods are known to have polynomial worst-case complexity Kar84 . 
However, their performance in practice is much better than their worst-case analyses would sug- 
gest |IL941 ILMS901 IEA96 . It has been shown that the average-case complexity of interior-point 
methods is significantly lower than their worst-case complexity |A.)PY93lfI.IPY99| (the term L 
is replaced by O(logn)); but these analyses are still a factor of approximately y/n off from that 
observed in practice. 

Smoothed analysis provides an alternative to worst-case and average-case analyses, and also 
attempts to circumvent the need for a theoretical definition of "practical inputs" . The smoothed 
complexity of an algorithm is defined to be the maximum over its inputs of the expected running 
time of the algorithm under slight perturbations of that input. The smoothed complexity is 
then measured as a function of the input size and the magnitude of the perturbation. While 
many notions of perturbation are reasonable, most results have been obtained for Gaussian 
perturbations. The assumption that inputs are subject to perturbation is reasonable in many 
circumstances: in many real-world numerical and geometric applications, data are derived from 
experimental and physical measurements and are therefore subject to errors |Wil651 paragraph 
2, pp. 62]. Perturbations can also be used to heuristically model the arbitrary decisions that 
effect to formation of inputs that are presented to algorithms. 

Two important aspects of smoothed analysis are: 

• Smoothed analysis interpolates between worst-case and average-case analysis: By letting 
the magnitude of the random perturbation to the data (e.g., the variance of the Gaussian 
noise) become large, one obtains the traditional average-case complexity measure. By 
letting the magnitude of the random perturbation go to zero, one obtains the traditional 
worst-case complexity measure. In between, one obtains a model corresponding to noise 

1 We remark that a similar framework for discrete problems was introduced by Blum and Spencer |BS95| 


in low-order digits of the input. 

• The smoothed complexity of an algorithm provides an upper bound on the expected com- 
plexity of the algorithm in every neighborhood of inputs. That is, if the smoothed com- 
plexity of an algorithm is low, then it will run quickly on inputs drawn from any small 
neighborhood of inputs. 

Thus, if the inputs presented to an algorithm in practice are subject to perturbation, the 
smoothed complexity of the algorithm should upper bound the practical performance of 
the algorithm. 

In jSTOlj . we introduced smoothed complexity by proving that a particular variant of the 
shadow-vertex simplex method has polynomial smoothed complexity. 

1.2 Formal Introduction to Smoothed Analysis 

The inputs to most numerical and geometric problems may be viewed as points in a vector 
space. For example, an m by n real matrix can be viewed as a vector in IR mn . Similarly, a set 
of n points in d dimensions can be viewed as a vector in IR . 

The most natural notion of perturbations of vectors in a real vector space is that of Gaussian 
perturbations. Recall that a Gaussian random variable with mean and variance a 2 has density 

1 -x 2 /2a 2 

and that a Gaussian random vector of variance a 2 centered at the origin in M n , denoted M(0, cr 2 ), 
is a vector in which each entry is a Gaussian random variable of variance a 2 and mean 0, and 
has density 

1 c -IHl 2 /2q2 

Definition 1.1 (Gaussian perturbation). Let x G IR™. The Gaussian perturbation of x of 
variance a 2 is the random vector x = x + g, where g is a Gaussian random vector of variance 
a 2 , centered at the origin o/M". 

The Gaussian perturbation of x may also be described as a Gaussian random vector of variance 
a 2 centered at x. 

Using the notion of Gaussian perturbation, we define the smoothed value of a function: 

Definition 1.2 (Smoothed value). Let f be a non-negative function on H n . The smoothed 
value of f with respect to Gaussian perturbations of variance a 2 is given by 

m f E 9 ^(0,^) [/(* + 11*11 9)\ 

Note that in this definition we multiply the perturbation g by so that a represents the 
magnitude of the perturbation relative to the data. 


Definition 1.3 (Smoothed complexity). Let A be an algorithm whose inputs can be expressed 
as vectors in ]R n and let T A (x) be the running time of algorithm A on input x. Then the 
smoothed complexity of algorithm A is 

C A (n,a) = maxE 9 ^ (0i(j2) [T A (x + \\x\\ g)] . 

In |ST01| . Spielman and Teng consider the complexity of a particular two-phase shadow- vertex 
simplex method on linear programs of the form 

■ • T 

maximize c x 

subject to Ax < b, (1) 
where A is an m-by-n matrix, b is an m-vector, and c is an n-vector. They prove: 

Theorem 1.4 (Spielman- Teng). There is a two-phase shadow-vertex simplex method with 
time complexity T(A, b, c) such that for every m-vector b and n-vector c, the smoothed com- 
plexity of the algorithm, 

max Eg 

Aen mxn 

T A + 



is polynomial in m, n, and 1/a, independent of b and c, where G is a Gaussian random m by 
n matrix of variance a 2 centered at the origin. 

One need not limit smoothed analysis to measuring the expected complexity of algorithms in 
various neighborhoods. It is quite reasonable to prove other facts about the distribution of 
running times when the expectation does not exist, or when much stronger bounds can be 
proved. For example, Blum and Dunagan BD02 prove 

Theorem 1.5 (Blum-Dunagan). Let a%, . . . ,a n be Gaussian random vectors in JR d of variance 
a 2 < l/(2d) centered at points each of norm at most 1. Then, there exists a constant c such that 
the probability that the perceptron algorithm for linear programming takes more than cd - ^ '•"^ 
iterations is at most 5. 

2 Notation and Norms 

Throughout the paper, we use bold letters such as b and x to denote vectors, capital letters 
such as A and G to denote matrices, and lower case letters to denote scalars. In any context in 
which the vector b is present, bj denotes the j'th component of b. For a set, V, we let by denote 
the vector obtained by restricting b to the coordinates in V. When indexing and constructing 
matrices, we use the conventions of Matlab. Thus, A.jj denotes the matrix formed by taking 
the columns indexed by U, and Ay,u denotes the sub-matrix of rows indexed by V and columns 
indexed by U. For sets, U and V, we let U and V denote their complements. We also let V, U 
denote the set of pairs (i,j) (V,U); for example, we let Ay-jj denote the set of entries of A 
not in Ay^j. For a matrix A and a column vector b, we let [A, b] denote the matrix obtained 
by appending column b to A. 


For an event, £, we let [£] denote the random variable that is 1 when £ is true and is otherwise. 
We use of the following vector norms: 

• IMIi = Si \ x i\i and 

• 1 1 3 ' I loo = max i 

and note that 

||x||„ < llxll < llxll-, . 

II Moo — II II — II •"111" 

We also use the following matrix norms: 

• \\A\\ = Px|| / ||x||, 

• Plloo = max ^o ll^lloo / ll^lloo' and 

• \\A\\ F = ^/trace(yl T 'A), the square root of the sum of the squares of entries in A. 
We note that 

• Plloo = maX i 111' 
. PIU^PH, 

• \\A\\ < \\A\\ F , and 

• for sets U and V, \\Auy\\ < \\A\\. 

3 Complexity of Interior Point Algorithms 

A linear program is typically specified by a matrix A together with two vectors b and c, where 
where A is an m-by-n matrix, c is an n-dimensional row vector, and b is an m-dimensional 
column vector. There are several canonical forms of linear programs. For the analyses in this 
paper, we will consider linear programs of the form 

max cx such that Ax < b, x > 0, 

with dual 

minyb such that yA > c, y > 0. 
We will assume throughout that m > n. 

If they exist, we denote the solutions to the primal and dual by x* and y*, and note that x* is 
an n-dimensional column vector and y* is an m-dimensional row vector. 

A linear programming algorithm should: (1) determine whether or not the linear program is 
feasible or bounded; and, (2) if the program is feasible and bounded, output a solution. One can 


either insist that the solution be a precisely optimal solution to the linear program, or merely a 
feasible point at which the objective function is approximately optimized. 

The best bounds on the worst-case complexity of interior point methods, and for linear program- 
ming in general, were first obtained by Gonzaga |Gon88j and Vaidya |Vai90| . who showed how 
to solve linear programs in 0(m 3 L) arithmetic operations 2 , where m > n and L is a parameter 
measuring the precision needed to perform the arithmetic operations exactly, and which here 
also appears in the number of arithmetic operations performed. The definition of L varies in 
the literature: Khachiyan Kha79 , Karmarkar Kar8|J, and Vaidya |Vai90| define L for integer 
matrices A to be some constant times 

log(largest absolute value of the determinant of any square sub-matrix of A) 

+ lo g(ll c lloo) + lo g(ll b lloo) + log(m + n). 

Under this definition, L is not efficiently computable, and unless A comes from a very special 
class of matrices, it is difficult to find L below Q(n). Others use cruder bounds such as the total 
number of bits in a row of the matrix or the total number of bits in the entire matrix Wri96 . 

To understand the time complexity of interior point algorithms, we note that they are typically 
divided into three phases: 

[Initialization]: In this phase, the algorithm determines whether or not the program is 
feasible and bounded; and, if it is feasible and bounded, returns a feasible point. 

[Iteration]: In this phase, the algorithm iteratively finds feasible points on which the 
objective function becomes increasingly closer to optimal. 

[Termination]: In this phase, the algorithm jumps from a feasible point that is close to 
optimal to the exact optimal solution of the linear program. 

Of course, if one merely desires an approximate solution to the linear program, then one can 
skip the termination phase. However, the dependency on L appears in both the initialization 
and termination phase. So, the worst-case complexity of linear programming algorithms is not 
decreased by merely asking for an approximate solution. 

The kernel of an interior-point algorithm is the iteration phase, in which feasible points of 
increasing quality are computed. A typical measure of quality in a primal algorithm is the 
optimality gap between the objective function at the current point and the optimal, while in a 
primal-dual algorithm it is the duality gap between the current primal and dual feasible points. 
In either case, one can prove that after k iterations the gap decreases by the multiplicative 

factor ^1 — -j=^j , for some constant c |Ren88[ fVai9f)l lYe97| . If performed carefully, each of 

these iterations has complexity 0(m 5//2 ) Gon88 . Therefore, the total number of arithmetic 
operations required to reduce the gap from R to e is 0(m 3 log(i?/e)). The worst-case complexity 
bounds come from the facts that a typical interior-point algorithm discovers a feasible point with 
initial gap bounded by R = 2°^ in the initialization phase, and requires a point with gap less 
than e = 2~°^ to start the termination phase. 

2 Vaidya's algorithm is somewhat faster as its complexity is 0((m + n)n 2 + (m + n) 15 n)L 


In practice, the speed of interior point methods is much better than that proved in their worst- 
case analyses |IL941 ILMS901 lEA96j . This difference in speed seems to have two sources: first, 
the upper bound of L is overly pessimistic; and, second, the improvement made at each iteration 
is typically much better than ^1 — ■ However, we note that Todd |Tod94j and Todd and 

Ye |TY96j have exhibited linear programs in which f2(n 1//3 ) iterations are required to improve 
the gap by a constant factor. 

In this paper, we perform a smoothed analysis of a simple termination phase for interior point 
methods. By combing this analysis with the analysis of the first two phases of Renegar's interior 
point algorithm Ren95b in DST02 , we obtain an interior point algorithm with smoothed 
complexity 0(m 3 log(m/cr)). Essentially, this analysis replaces the dependency on L in the 
initialization and termination phases with a dependency on log(m/<r). We conjecture that 
one can improve this smoothed complexity estimate by proving that the smoothed number of 
iterations taken by an interior point method is less than 0(y/m log (m/cr)). 

Renegar |Ren95b( IRen95a( IRen94| defined a condition number C(A, b, c) of a linear program, 
and developed an algorithm for the initialization of an interior point method that runs in time 
0(m 3 log(C(^4, b, c))) and returns a feasible point with initial optimality gap R < 0(mC(A, 6, c)). 
Applying a primal iteration phase to this feasible point, one obtains an algorithm that af- 
ter 0(\/mlog(mC(A, b, c))/e) rounds and 0(m 3 log(mC(A, &, c))/e) arithmetic operations pro- 
duces points with optimality gap at most e. Renegar's condition number will be discussed further 
in Section |IJ 

Dunagan, Spielman and Teng DST02 perform a smoothed analysis of Renegar's condition 
number and prove: 

Theorem 3.1 (Dunagan-Spielman-Teng). Let A be an m-by-n matrix for m > n, b an 


< 1, and let A, b and c be the Gaussian 


m-vector, and c an n-vector for which 
perturbations of A, b and c of variance a < 1/y/mn. Then, 

E AAc [log(C(A b, c))\ < 0(\og{m/a)). 

Combining this analysis with that of Renegar, we find that the smoothed complexity of finding 
an e-optimal solution to a linear program is 0(m 3 log (m/cre)). 

In Section [SJ we define a simple termination algorithm that takes 0(m 3 ) arithmetic operations. 
We define 5(A, b, c) to be the greatest number such that cx* — cx < 5(A, b, c) implies that the 
termination algorithm is successful. Thus, after 0(^/mlog(mC (A, b, c))/6(A, b, c)) iterations, 
and 0(m 3 log(mC(A, b, c))/6(A, b, c)) arithmetic operations, one can apply the termination 
phase to find the exact solution to the linear program. Like Karmarkar K ar84j . we handle the 
technical difficulty that the algorithm does not know C(A,b,c) or 5(A,b,c) by periodically 
attempting to terminate, but only once every y/n iterations so as not to increase the complexity 
of the algorithm. 

In Theorem 15.61 proved over Sections H3 and |H1 we show that the smoothed value of 
max (1, log (1/6(A, b, c))) is O (log (m/cr)). We thus prove: 

Theorem 3.2 (Smoothed Complexity of IPM). Let A be an m-by-n matrix for m >n , b 

an m-vector, and c an n-vector for which 

A, b, c 

< 1, and let A, b and c be the Gaussian 



perturbations of A, b and c of variance a < 1/y/mn. Let T(A,b,c) denote the complexity 
of Renegar's interior point algorithm with the periodic application of the termination procedure 
described in Section^ Then, 

E AAc [T(A, b, c)\ < 0(m 3 log(m/a)). 

While this is the statement of the complexity that is most natural for our proof techniques, we 
note that it is not exactly the form specified in Definition 11.31 The difference comes from the 

upper bounds on a and 

A, b. 

in the statement of the theorem. As the behavior of the 

interior point methods are unchanged by multiplicative changes to A, b and e, only the upper 

bound on a is significant: if 
A, b, c 

A, 6, 

> 1, then one can scale down A, b, c, and a to make 

= 1. One could adjust Theorem 13. 21 in two ways to handle a > 1/y/mn: one could 

either extend the proofs, or one could use Theorem 13.21 as a black-box and derive the more 
general statement from it. Such a proof could proceed by observing that a Gaussian of variance 
a 2 is the sum of a Gaussian of variance r 2 and a Gaussian of variance a 2 — t 2 . Thus, one can 
apply Theorem 13.21 with a Gaussian of variance r 2 to the result of perturbing the original data 
by a Gaussian of variance a 2 — r 2 , for an appropriate choice of r. The reader can find a precise 
implementation of this technique in |ST01| Section 5.1]. 

4 Renegar's Condition Number for Linear Programming 

In an effort to develop a parameter in which to measure the complexity of linear programming 
that was more natural than /.. Renegar |Ren95bl Ren95al Ren!) 1 . introduced the condition 
number, C(A, b, c), of a linear program and developed an interior point method that runs in 
time 0(m 3 log(C(j4, b, c)/e)). In contrast with the parameter L, C(A, 6, c) is naturally defined 
for rational or real matrices A. Moreover, C(A, b, c) is often much smaller than L. 

Formally, we define the distance of a linear program specified by (A, b, c) to primal ill-posedness 
to be 

sup : \\A — A', b — b'\\ F < k implies A'x < b, x > is feasible} 

(A b) — ^ ^ X ~ ^' x — ® ^ s ^ eas ible, and 

Kp ' sup {k : \\A — A' , b — b'\\ F < k implies A'x < b, x > is infeasible} 

if A'x < b, x > is infeasible. 

The distance to dual ill-posedness, kd(A, c), is defined similarly. We then define C(A, b, c) 
to be the maximum of the primal condition number Cp{A, b) and the dual condition number 
Cd(A, c), where Cp(A, b) and Cd(A, c) are the normalized distances to primal and dual ill- 

C P {A,b) = \\A,b\\ F /K P (A,b) and C D {A,c) = \\A, c\\ F /k d (A, c). 

We remark that, with this normalization, Cp and Cp> are always at least 1. 

We also note that the linear programs for which Todd |Tod94j and Todd and Ye |TY96j prove 
a ^(n 1 / 3 ) iteration lower bound have exponentially poor condition. It is not known if one can 
prove such an iteration lower bound for a well-conditioned linear program. 


5 Termination 

One can often terminate linear programming algorithms that approach the optimal solution 
of a linear program by using a good solution to guess the optimal solution. The process by 
which this is done is often called termination or rounding. Termination is possible because at 
the optimal solution a number of the inequalities are tight, and the knowledge of the identity 
of these inequalities is enough to reconstruct the optimal solution. Thus, most termination 
algorithms work by guessing that the inequalities having the least slack at a very good solution 
are those which have no slack at the optimal solution. 

We being by recalling the facts that we will use to prove that termination is possible, ignoring 
complications that may occur with probability zero for perturbed A, b and c. We begin with 

Proposition 5.1. For Gaussian distributed A, b and c, with probability 1, the program specified 
by (A, b, c) is either infeasible, unbounded, or has unique primal and dual optimal solutions, x* 
and y* . Moreover, x* makes tight exactly n of the inequalities {x,i > 0} U {Aj t -x < bj} and y* 
makes tight exactly m of the inequalities {yj > 0} U {yA : ^ > q}. 

Proof. If the primal program is feasible and bounded but does not have a unique optimal solu- 
tion, then the space of optimal solutions must lie in a subspace defined by fewer than n of the 
inequalities {xi = 0} U {Aj t: x = bj}, and c must be orthogonal to this subspace. However, as 
this restricts c to a set of measure zero and the number of such possible subspaces is finite given 
A and &, this is an event with probability zero. By symmetry, the same holds for the optimal 
solution of the dual program. To prove the second part, we note that if n + 1 of the inequalities 
are tight at x* , then these inequalities form a system of n + 1 equations in n variables that has 
a solution. As any such degeneracy has probability zero, and there are only finitely many such 
possible degeneracies, the probability of this happening is zero. □ 

We now recall the Duality Theorem of Linear Programming: 

Theorem 5.2 (LP duality). For a linear program specified by (A, b, c), 

• (Weak Duality) for every primal feasible x and dual feasible y, yb > cx, and 

• (Strong Duality) if the linear program is bounded and feasible then for primal optimal x* 
and a dual optimal y* , we have y*b = y* Ax* = cx* . 

For a feasible and bounded linear program (A, b, c) with unique optimal primal and dual solu- 
tions x* and y*, we define 

U = {i:x*> 0} 
V = {j : y* > 0}, 

and we say that the program is of type (U, V). 

We can show that U and V are related to the set of tight constraints: 


Lemma 5.3 (Tight constraints). For a feasible and bounded linear program specified by 
(A, b, c), we have 

V Q {j ' '■ Aj t x* = bj}, and 
UC{i: y*A :!i = a}. 

Proof. Let 

V' = {j : Aj.x* = bj}, and 
U' = {%: y*A , = Ci }. 

To show that U C U', assume by way of contradiction that there exists an % 6 U such that 
y*A : j > Ci. Because x* > we have y*A-.jX% > CiX*, which would imply y*b > cx* and 
contradict Theorem 15.21 Therefore U C U' . We can similarly show that V C V'. □ 

With probability 1, these sets are actually identical: 

Lemma 5.4 (U and V). For Gaussian distributed A, b and c, if the corresponding linear 
program is bounded and feasible, then with probability 1, 

V = {j : Aj !: x* = bj}, and 
U = {i: y*A hi = c,i}. 

Proof. Define V and U' as in the proof of Lemma 15.31 We will show \U\ = \U'\ and \V\ = \V'\. 
By Proposition I5.1[ with probability 1, the number of zeros in x* plus \U'\ equals n. Because 
x* is an n-place vector, the number of zeros in x* plus the number of non-zeros in x* , which is 
\U\, is equal to n. Thus \U\ = \U'\. Similarly \V\ = \V'\. □ 

We will consider the following termination scheme: suppose x is an approximate solution to the 
primal program, we let U(x) and V(x) be the set of indices such that 

{xi : i U(x)} U {bj - Aj.x : j G V(x)} 

are the smallest n values in {x{} U {bj — Aj^-x}. We then guess the optimal solution to be the 
solution to the following linear system: £Cj = for i U(x) and bj — Aj t -x = for j £ V{x). 
We will show that if x is sufficiently close to optimal, then this termination scheme produces 
the optimal solution to the linear program. We now define S(A, b,c) to measure how close to 
optimal x needs to be. 

Definition 5.5 (5(A, b, c)). For a feasible and bounded linear program specified by A, b and c, 
we define 


to be the supremum of the 5 for which 

(cx* — cx) < 5 implies U(x) = U and V(x) = V. (2) 
For unbounded or infeasible programs, we set 5 to oo. 


The main technical contribution of this paper is: 

Theorem 5.6. Let A be an m-by-n matrix , m > n, b an m-vector, and c an n-vector for 
which A , b , \\c\\ < 1, and let A, b and c be a Gaussian random matrix and two Gaussian 

random vectors of variance a 1 centered at A, b and c, respectively. Then, for a 2 < 1, 



max 1, log 


< 0(log(m/<r)). 

Our proof of Theorem 15.61 is broken into three sections. In Section H3 we define geometric 
quantities that we will use to bound 5(A, b, c), state the relation between S(A, b, c) and these 
quantities proved in Section [7[ and state the probability bounds for these quantities obtained 
in Section El The rest of the material in Section El is a routine calculation using the results of 
Sections |S1 and Theorem 13. II The reader will probably be most interested in Section |H1 which 
we begin with an intuitive explanation of how the probability estimates are obtained, carefully 
explain the tools used to make these arguments rigorous, and then finally apply these tools to 
obtain the probability bounds. 

We remark that Theorem l5.6l depends very little on the properties of Gaussian random variables. 
Aside for the bound on E [log \\A\\] of Proposition 16.91 which is easily generalized to other distri- 
butions, the only fact about Gaussian random variables used is that proved in Lemma f8.ll Thus, 
one could prove statements similar to Theorem 15.61 for a number of families of perturbations. 

6 Smoothed Analysis of log(l/c^) 

Our analysis of the probability that 5(A, b, c) is small will be divided into two parts: a geometric 
condition for 5(A, b, c) to be small, and a bound on the probability that this geometric condition 
is satisfied. 

To described the geometric condition, we define the following five quantities for bounded and 
feasible linear programs with unique optimal primal and dual solutions x* and y* . 

• a P (A, b, c) = mm ieU x* , 

• a D (A,b,c) = mm j£V y*, 

• Pp(A, b, c) = min Jg y bj — Aj j: x*, 

• 0d(A, b, c) = min j6 j7 y*A : ^ - a, 

• j(A, b, c) = mhifcet/ dist (A v ,k, Span (A v ,u-k))- 

The geometric condition is that one of these five quantities is small. 

When A, b and c are clear from context, we will just write ap, ap>, Pd, Pp, 7 or 5. Note that 
a D (A, b, c) = a P (-A T , -c T , -b T ) and Pd(A, b, c) = (3 P (-A T , -c T , -b T ). 

In Section [71 we prove 


Lemma 6.1. For a linear program specified by {A, b, c) with unique optimal primal and dual 
solutions x* and y* , let 


\(A, b, c) = min (a P (A, b, c),a D (A, b, c),(3 P (A, b, c),j3 D (A, b, c)) . 

A(AM) 2 7(AM) 

5(A,b,c) > 

2max(l,Vn||A||)(l + ||A||)" 

We define J- (A, b, c) to be the event that the linear program specified by A, b, c is feasible and 
bounded. In Section |H1 we prove 

Lemma 6.2 (Probability of small a). Under the conditions of Theorem \ 

8en(m + 1) 


a P (A, b, c) < 

and J-(A, 6, c) 



JA|| +2)^11**11 + 1) 
Lemma 6.3 (Probability of small /3). Under the conditions of Theorem \5.b\ 



P (A,b,c) < 

and T{A, b, c)) 


max (1, \\A\\ ||** | 

Lemma 6.4 (Probability of small 7). Under the conditions of Theorem \5.b\ 


A v ,u 

l(A,b,c) < 

(1 + ||a;*|| 2 + ||y*|| 2 

141 + 3) 

and J- {A, b, c) 




From these three lemmas, we can reduce our analysis of the probability that S(A, b, c) is small 
to an analysis of the probability that ||**||, \\y*\\ or ||vl|| is large. 

Lemma 6.5. Under the conditions of Theorem \5.(A 



5(A,b : c)(\\A\\+3) 7 (l + \\x*\\ + \\y*\\) 4 <e 

21e 1 / 3 n 1 /6( n+ i)( m + i) 
< ^ — -. (3) 


Proof. As 5(A, b, c) is infinite for infeasible or unbounded programs, 


A,b,c L 

'd(A,b,c)(\\A\\+3) 7 (l + \\x*\\ + \\y*\\) 4 <e 



S(A, b, c) {\\A\\ + 3) 7 (1 + ||**|| + \\y*\\) A < e and T(A, b, c) 

As an{A, b, c) = ap{— A f , — c*, —6*), and 



+2) 2 (||**|| + 1) max(l, \\A\\ \\x* 


Lemmas 16.21 and 16.31 imply 



rmn(ap,aD,fip,f3D) < 



(||vl||+2) 2 (max (||**|| , ||y*||) + l) 
8en(m + 1) + 8em(n + 1) + 4em + 4en 

and J 7 (A, b, c) 


8e ((n + l/2)(m + 1) + (m + l/2)(n + 1)) 

Let A = min (ap, ap, ftp, /3d)- If 
A 2 7 < 


then either 


(||A||+3) 5 (l + ||**|| + ||y*||) 4 

(||A|| + 2)' J (max(||a!*||,||»*||) + l) 

A < 

1 + ||**|| 2 + ||y*|| 2 ) (\\A\\ +3) 

(||A|| + 2Y (max (||**|| , ||y*||) + l) 


l + ||a;*|| 2 + ||y*f )(PII+3) 




A 2 7 < 

(p||+3) & (l + 11**11 + 11^1 

and J 7 (A, b, c) 

ene 8e ((n + 1/2) (m + 1) + (m + 1/2) (n + 1)) 


16e(n + l)(m + l) 


As Lemma Ifi.ll tells us that 

«5(A,6,c) > 

A 2 7 

2max(l,^P||)(l + P||)' 

we obtain 



5 < 

< Pr 


(\\A\\ +3) 5 (1 + ||**|| + ||y*ll) 4 V2max(l, Vn\\A\\) (1 + ||A||) 


j and ^(A, &, c 

and .F(.A, &, c) 

A 2 7 < 


(||A|| + 3) s (l + ||x*|| + \\y 
16e(n + l)(m+ 1) 


From this inequality, we derive 



5(\\A\\ +3) 7 (1 + \\x*\\ + ||y*||) 4 < and T{A, b, c) 

< Pr 

6 (\\A\\ + 3) 5 (1 + ||a;*|| + ||yl) 4 max(l, \\A\\) (1 + \\A\\) < — p= and JF(A, 6, c) 



16e(n + l)(m + l) 


The lemma now follows by changing e i /(2^/n) to 


To convert this bound on the probability that 5 is small to a bound on the expectation of 
log (1/(5), we will use the following technical lemma: 

Lemma 6.6. Let x be a non-negative random variable for which there exist constants a and k 
such that \og(a)/k > 1 and 

Pr [x < e] < ae k . 


Proof. We compute 
E [max (1, log(l/x))] 

E [max(l,log(l/x))] < 

1 + log a 
k ' 

Pr [max(l,log(l/x)) > t] dt 





Pr [max(l,log(l/x)) > t] dt + / Pr [max (1, log(l/x)) > t] dt 

I logo; 

log a 

< I k dt + I Pr[log(l/x) > t] dt, as (logo)/*; > 1, 

f log a 



log at 

< I dt + 

log a 1 
= — h -• 

k k 


ae- tk dt 


From this, we obtain 

Corollary 6.7. Under the conditions of Theorem \5.b\ 
E ■-■ ' 1 

max I 1, log 

<5(A,6 >C ) 

< 3(log(21(m + l) 13/6 /a 2 ) + 1) + 71og(||A|| + 3) + 41og(l + \\x*\\ + ||y*| 


Proof. Applying Lemma ESI to ©, and recalling m > n, we obtain 



max 1, log 


7E [log(p|| + 3)] - 4E [log(l + + ||y*||)] 

< 3 (log(21(m + l) 13/6 /o" 2 ) + 1 


As || a:* || and ||y*|| can be bounded in terms of the condition number of the linear program, we 
will be able to use Theorem 13. II to bound the probability that they are large. The probability 
that ||j4|| is large may be obtained by more elementary means. In particular, we prove 

To bound E [log(l + || as* || + ||y*||)], we note that Renegar Ren95a ( Propositions 2.2 and 2.3] 
has proved 

Lemma 6.8 (Norms of optimal solutions). 

max(\\x*\\,\\y*\\) <C(A,b,c) 2 . 

So, we may apply Theorem 13. II to bound the norms of x* and y* . To bound the norm of A, we 

Proposition 6.9. Let A be a Gaussian perturbation of variance a 2 < 1 of an m-by-n matrix A 
of norm at most 1 . Then, 

E [log(||^|| + 3)] < log((^ + V^)a + 4) 

Proof. Write A = A + Go where G is a Gaussian random matrix of variance 1 centered at 
the origin and A < 1. Seginer SegOO proves that E [||G||] < \fn + \/m, which implies 

E[||Gct||] < a(^/E + ^/nl) and 

E[||A|| +3] < + + 

As the logarithm is a convex function, 

E [log(p|| + 3)] < log (E [\\A\\ + 3]) < log ((Vn + y/m) a + 4) . 
Putting this all together, we prove the main theorem: 

Proof of Theorem \5.b\ To bound the terms obtained in Corollary 16.71 we apply Proposition 
to show 

E [log(P|| + 3)] < log(v^ + Vm + 4). 
We then apply Lemma 16.81 to show 

(l + \\x*\\ + \\y*\\)<3C(A,b,c) 2 , 



and Theorem 13 .11 to obtain 

E [log(l + 11*1 + ||y*||)] < E [log (3C(A, b, c) 2 )] 

<log(3) + 2E [logC(A,b,c)} 
< 0(log(mn/a)). 


7 Geometric Analysis of 5 

To prove Lemma 16.11 we use the following lemma which says that if the value of cx is close to 
optimal, then x must be close to x* . 

Lemma 7.1. For a linear program specified by (A, b, c) with unique optimal primal and dual 
solutions x* and y* , let 

X(A, b, c) = mm(a P (A, 6, c),a D (A, b, c),(3 P (A, b, c),(3 D (A, 6, c)) . 


II as* - a^lL ^ c ( x * ~ x ) 

1 + 


Proof of Lemma 16', it Assuming 

X(A,b,c) 2 7 (A,b,c) 

c(x* — x) < 

2max(l,^p||)(l + PID' 
we need to show U(x) = U and V{x) = V. From Lemma 17. 11 we have 

A 2 7 / 1 + \\A\\ \ A A 

11 "°° 2max(l,^p||)(l + || J 4||) VAmin(7, l)y - 2max(l,^||yl||) - 2' 

We then have 

(a) for i eU, Xi > a P (A, b, c) - A/2 > A/2 , 

(b) for i£U,Xi< A/2, 

As \Aj >: (x* - x)\ < WAW^ \\x* — aslloo < \fn \A\ \x* - x\ 00 , we also have 

(c) for j e V, bj - Aj.x < A/2, 

(d) for j V, bj - Aj.x > P (A, b, c) - A/2 > A/2. 

So, the smallest n values in {xi} U {bj — Aj y x} are those indexed by U and V. □ 
The proof of Lemma 17. II relies on the following technical lemmas. 



Lemma 7.2. For x a feasible point for a bounded linear program specified by (A, b, c), 

c(x* -x)> a D (A, b, c) \\A v .(x* - x)\\ . 

Proof. As y*A > c, we have 

c(x* — x) > cx* — y* Ax 

= y* Ax* — y* Ax (by strong duality) 

= y*A(x* - x) 
= y* v A v -(x* - x), 

as y* is zero outside of V. As Ay t: (x* — x) is non-negative, we may conclude that 

y* v A v .(x* -x)> a D {A, 6, c) \\A v .{x* - x)^ > a D {A, b, c) \\A v .(x* - x)\\ . 

Lemma 7.3. For x a feasible point for a bounded linear program specified by (A, b, c), 

\\A VlU (xu - xu)\\ > 7(A, b, c) \\xjj - xuWoo ■ 
Proof. For any k £ U, let q be the null vector of the span of Ayu—k- Then, 

qA v ,ux = q (A Vtk x k + Av,u-k&u-k) = XkqA Vtk = x fc dist (A v ,k, Span (A v ,u-k)) ■ 


\\A v ,u{xu - x v )\\ > \qA v ,u(xu - x v )\ 

= \x% - x k \ dist (A Vik , Span (A VtU _ k )) 
> \ x l- x k\l(A b,c). 

Lemma 7.4. For x a feasible solution to a linear program specified by (A, b, c), 

c(x* — x) 
™ ~ p D (A,b,cY 

Proof. As y*A itV = c v , (y*A - c)x = {y*A.jy - c )x D . 

As every entry in y* A. jy — Cy is at least Pd(A, b, c) and x > 0, we have 

(y*A - c)x = {y*A. fi - c D )x D > D {A, b, c) Wx^ > D (A, b, c) \\x D \\ . (4) 

As y* > 0, 

cx* — cx = y* b — cx > y* Ax — cx > (3d{A, b, c) \\xfj\\ , 
where the last inequality follows from □ 



Proof of Lemma \7.1\ Applying the triangle inequality, we observe 

\\A v .(x* - x)\\ > \\A ViU (xu - xu)\\ - \\A Vjf j(xfj - x D )\\ . 

We can bound the first of these terms by applying Lemma 17.31 and the second by observing 
a;^. = and H-Ay^a^H < [[.Ay^H ||scj/-||, thereby proving 

\\A v .{x* - x)\\ > j(A, b, c) \\x* v - xuWoo - \\A Vj tj\\ \\xfj\\ . 
By now applying Lemma 17.21 we obtain 

c(x* — x)> ao(A, b, c) (j(A, b, c) \\xjj - xu\\<x> ~ ||^v,E/|| \\ x u\\) > which implies 
a D (A, b, c) \\A Vjt j\\ \\xfj\\ + c(x* - x) > a D (A, b, c)j(A, b, c) \\x* v - xuW^ ■ 

As Lemma 17.41 implies c(x* — x) > (3d(A, b, c) and > L4y^ , we obtain 

1 + r C \ \\A\\] c(x* - x) > a D (A, b, c)j(A, b, c) \\x\j - x v \\ which implies 

Pr>[A,b,c) J 

c(x*-x)(l + \\A\\) ... , 

>l(A,b,c)\\x u -x u \\ oo . 

min {a D (A, b, c),/3 D (A, b, c)) 
The lemma now follows from this inequality and Lemma 17.41 which implies 

c(x* — x) 

p D (A,b,c) 

> \\Xu\\ - ll^Cflloo _ \\ X U ~ X U\ 


8 Bounds on a, (3, and 7 

For this section, we let /jla, fJ-b and /i c denote the Gaussian densities on A, b and c in Theorem l5.6l 
For an index j or set of indices V, we let fj,^. and Hb v denote the induced distributions on bj 
and by, and we extend this notational convention to sub-matrices of A and sub-vectors of c. 

The idea behind our proofs of Lemma 16.21 16.31 and 16.41 is that for any configuration of A, b and 
c in which a, (3, or 7 is small, there are many nearby configurations in which the term is not 
too small. As Gaussian densities do not fall off too quickly, this nearby configuration will have 
approximately the same probability as the original. To make this idea rigorous, we establish 
mappings pairing configurations in which these terms are small with configurations in which 
these terms are not. We then use these mappings to show that the Gaussian probability of the 
configurations in which the terms are not small is much larger than those in which they are. 

To show that it is unlikely that (3p is small, we hold A, y*, c, and x* constant, and map those 
bj's that are close to Aj -x* to be a little further away. To show that it is unlikely that ap 
is small, we hold A, y* and c constant, and map small non-zero entries of x* to larger values 
while simultaneously mapping the entries of b to preserve the tight constraints and maintain 
slack in the others. To show that it is unlikely that 7 is small, we hold x* , y* , and the slack 


components of b and c constant. We then vary Ayu slightly, changing by and Cjj accordingly. 
As each slight motion described only induces a slight motion in the other components, we can 
prove that each configuration obtained has similar probability. 

To turn these intuitive arguments into proofs, we need four tools: 

1. a bound on the smoothness of the Gaussian density, 

2. a bound on the probability that a random variable is small given that its density is smooth 
near zero, 

3. a lemma making rigorous the change of variables implicitly used in the intuitive arguments, 

4. a proof that the probability of an event can be bounded by the maximum of its probability 
over the sets in a partition of its probability space. 

Each of these tools is relatively simple, and the last should be obvious for finite partitions. The 
bound on the smoothed complexity of the simplex method STOl] uses each of these tools along 
with some others. It is our hope that the reader would have an easier time understanding the 
proofs in jSTOlj after having read this section. 

We now develop these four tools, and at the end of the section apply them to the proofs of the 
bounds on a, (3 and 7. 

We make use of the following elementary bound on the smoothness of Gaussians: 

Lemma 8.1 (Smoothness of Gaussians). Let ^{x) be a Gaussian distribution in H n of 
variance a 2 centered at a point of norm at most 1. 7/dist (x, y) < e < 1, then 


Proof. Let x be the center of the distribution. We compute 

Mj/) = e ^(ll!/-i|| 2 -ll*-i|| 2 ) 


> e^ 7 

((\\y-x\\ + \\x-x\\) 2 -\\x-x\\ 2 ) 

by the triangle inequality 


= e^ 1 

(2|| 2 /-x||||x-i|| + ||;/-a ; || 2 ) 



(2e||x-x||+e 2 ) 


> e^ 7 

(2e(|M| + l)+c 2 ) 

as \\x\\ < 1 




as e < 1 



> e 

<7 2 . 



We remark that this lemma is the only fact about Gaussian random variables used in this paper. 
Thus, one could obtain results of a similar character for any distribution that satisfies properties 
similar to those derived for Gaussian random vectors above. 

The argument by which we obtain probability bounds from comparing configurations is encap- 
sulated in the following lemma, which is used in each of the three proofs. This lemma essentially 
says that if a distribution of a random variable is relatively flat near a point, then the variable 
is unlikely to lie too close to that point. 

Lemma 8.2 (Smooth distributions unlikely small). Let x be a real random variable dis- 
tributed according to density p such that there exist constants a and c for which 


< x < x < a implies — — — - > c. 


Then, for e < a, 
In particular, 

Pr [x 6 [0,e]\x G [0, a]] < 

Pr [x E [0, el] < — . 




Proof. From the definition of conditional probability, we have 

Pr[xe [0,e]|x€ [0,a]] = j° ■ 

Setting y = (e/a)x, we compute 

p(x)dx=(a/e) p({a / e)y) dy > {a / e) I cp{y) dy . 
Jo Jo 

From which the lemma follows. □ 

For example, we can use the previous lemma to derive a bound on the probability that a Gaussian 
random variable is greater than t + e given that it is greater than t: 

Lemma 8.3 (Comparison of Gaussian tails). Let x be a Gaussian random variable of 
variance a 2 < 1 and mean of absolute value at most 1. For e > 0, r > 1 and t < t, 

Pr \x < t + e \x > t < -^e~^~ and Pr \x > t + e \x > t] > 1 kC~^~ . 

o~ L 1 J a z 

Proof. It suffices to prove the first bound. Let p be the density function of x. Let a = cr 2 /r < 1. 
For e > a the lemma is vacuous. For e < a, we will show that 

; t 1 ^') _ e ( T + 3 ) 

t<x<x'<t + a implies — r— > e ^ , (5) 


and then apply Lemma |8.2I to finish the proof. For t < —1. (p)jl is trivial as p is monotone 
increasing on [t, t + a]. For t > —1, we have ||x|| < r + 1 so (jSJ follows from Lemma 18. II □ 


Finally, we note that our intuitive explanation of the proofs of Lemmas 16 , 2116.31 and 16 . 41 implicitly 
used a change of variables: instead of reasoning in terms of the variables A, b and c, we found 
it more convenient to think of x* and y* as quantities to fix or vary. We now introduce the 
machinery that enables us to reason in terms of these variables. We begin by observing that for 
any sets U and V, not necessarily the combinatorial type of (A, b, c), we can introduce variables 
x v and y v , not necessarily the optimal primal and dual solutions, and define 

by = A VyU x\j and cjj = y v A V)U . 

We can then compute probabilities in these new variables by observing that the joint density of 
A, x* v , y* v , b v , and c v is 

VAi^^bviAv^x^^iyyAvv)^ (b v )^ c (c )det (A 


To see why this is true, recall that probabilities are best understood as integrals, and that the 
probability of an event £ (A, b, c) is 

[£(A, b, c)\ (j, A (A){j, b (b)fj, c (c) dA db dc 



To express this integral in the new variables, we first compute the Jacobian of the change of 
variables, which is 


dA db dc 

det ( d{A, by, Cjj, by, cu) 
\d(A, by,c D ,xij,yv) 

d(A, by, Cjj, b v , cu 

det {A v ,uf 


d(A, b v , c v ,x v ,yy) 

dA dby dcjj dx*y dy\ 


det (Ayjj) dA dby dc v dx v dy 

V ! 


A,by ,Cfj ,y v 

[£(A, b, c)]fx A (A)fx bv (A v ,ux u )ii cu {y v Av,u)^by{b v )fj 1C0 (c u )det (A v ,uY 

dA dby dcjj dx v dy 


While we can define this change of variables for any sets U and V, we will of course only apply 
this change of variables to programs of type (U, V). If we let Type^y^, b, c) denote the set of 
(A, b, c) of type (U, V), then we can express the probability of [£(A, b, c) and J 7 (A, b, c)] as 


[£(A, b, c)] fj, A (A)fJ, b (b)(j, c (c) dA db dc 


v JA,b,c:Type u v (A,b,c) 

[£(A, b, c)] ix A (A)fi b (b)n c (c) dA db dc , 

and then apply the change of variables corresponding to (U, V) to evaluate the integral over 
Type;y y(A, b, c) on the right. In fact, in each of our proofs, we will actually bound 

maxPr [£{A, b, c)\Type uy (A, b, c)] . 

To see that this upper bounds the probability of [£(A, b, c) and J r (A, b, c)], we prove 


Claim 8.4. 

Pr [£(A, b, c) and F(A, b, c)] < maxPr [£(A, b, c)| Type uv (A, b, c)] . 


Pr [£(A, b, c) and F(A, b, c)] = Pr [ s (A b > c ) and T yP e t/,v(A b > c )] 

= ^Pr [Type^A, 6, c)] Pr [£(A, 6, c)|Type [7 y(A, 6, c)] 

< maxPr [f (A, 6, c)|Type [7)y (A, 6, c)] , 

as Euy Pr [Type^y (A, b, c)] < 1. □ 

We summarize this discussion in the following lemma: 

Lemma 8.5 (Change of variables). Let £(A, b, c) be an event. Then, 

Pr [£(A,b,c) and F(A,b,c)} 


< max Pr [£(A, b, c)\A v x* < by and y*A D > c D ] , 

f7,y A,x* ,y* ,bv,Cjj 

where A, x* , y* , by and c-q have joint density 

HA(A)n bv (A VjU x^)fi Cu (y v A V:U )n bv (b v )fi Co (c D ) det (A v>u ) 2 . 

In fact, all of our proofs begin by fixing some subset of the variables, and then proving a 
probability bound for any configuration of the fixed variables. This amounts to proving a 
probability upper bound by dividing the probability space into a number of regions, and proving 
that the bound holds in each of these regions. Formally, we are using the fact: 

Proposition 8.6 (Upper bound by max of probabilities). Let X and Y be random vari- 
ables distributed according to an integrable density function fi(X,Y) and let £(X,Y) be an event. 

Pr [£(X, Y)} < max Pr [£(X, Y)\Y = y) ^ maxPr [£(X, Y)\Y] . 

Proof. By Tonelli's Theorem, we have 

Pr [£(X, Y)] = [ [£(X, Y)] fx(X, Y) dX dY 

X < Y JX,Y 

= J (J P y )] Y) dX \ dY 

' ! u(X Y)dx]( JxW>Y)MX,Y)dX \ 
v Jx^ Y)dX ) [ (f x »(X,Y)dX) J dY 

J^j x H(X,Y)dX^ (P x T[£(X,Y)\Y]^j dY 




J (^J n(X,Y)dX^j dY = 1. 


Having established these tools, we now proceed with the proofs of Lemmas 16.21 16.31 and 16.41 
Proof of Lem,m,a \()Jft (Probability of small (5). By Lemma l8.5| it suffices to bound 

max Pr 

U,V A,x* ,y* ,b^,Cfj 

P P (A,b,c) < 

Ay .x* < by and y* A. (j > c 

max(l, \\A\\ [| sb* | 

By Proposition 18.61 it suffices to prove that for all U, V, A, x*j, y v and c U} 

Pr [3j € V : bj -A u x* < e' \ V? : bj - A jt .x* > 0] 
b v 

< ^ Pr [bj - Aj.x* < e' | Vj : bj - Aj.x* > 0] 

j&v 3 

= ^Vr[bj - Aj.x* <e' \ bj-Aj.x*>0] 

jeV 3 


J2^[bj<Aj,x* + e' | bj>Aj,x*} 


me'(\\A\\\\x*\\) »M 

by Lemma 18.31 

Setting e = e' max (1, ||A|| ||sc* ||), and observing that the lemma is vacuously true for e > a 2 /4m, 
we deduce 

Pr [3j eV:b 3 - A jtl x* < e | Vj : bj - Aj,x* > 0] < ™e£ < ^ < 



for e < a 2 /Am. 

Proof of Lemma \6.4\ (Probability of small j). By Lemma 18.51 it suffices to bound 


max Pr 

U,V A,x^,y v ,b v ,c 

j(A,b,c) < 

l + ||a;*|| 2 + ||y*|| 2 ) (Pll +3) 

Ay .x* < by and y* A. v > Cj 

By Proposition 18.61 it suffices to prove that for all U, V, Ayjj, b v , Cfj, x* and y*, for which 
Av,U x U — ana - Vv^V,U — c \Ji 

Pr [y(A, b,c)<e]< 

e^e ( 1 + ||£c*|| 2 + ||2/*|| 2 ) (Pv,HI+3) 



where we note that having fixed Ayjj, b v , eg, x* and y* , the induced distribution on Ay,u is 
I^A v , u ( A v,u)tJ'b v (Av,uXu)fJ'c u (yvAv,u)det {Ay^f . 

To prove l[7]). we show that for all k £ U and all Ay t jj_ k , 

ee(l + ||z*|| 2 + b*|| 2 ) (\\A V;U \\ + 3) 
Pr [dist (A v . k , Span {A VjU - k )) < e] < — ^ ^ (8) 

and apply a union bound over k £ U. Having fixed Av,u-k, we may express Ay :k as a + tq 
where a £ Span (Ay ! fj_ k ), 9 is a unit vector orthogonal to Span (Ay \u-k) an d i € M. With 
this representation, we have \t\ = dist (Ay jk , Span (Ayjj_ k )) an d det (Ay t u) = ct, where c is 
some constant depending only on Ay^u-k- 

By the symmetry of q with — q, we can prove (JSJ) by bounding the probability that t is less than 
e given that t is at least 0. Thus, we prove (jSJ) by observing H^Ay^H > HAyjj-fc, a\\ and showing 

ee (l + ||z:*|| 2 + \\y*\\ 2 ) (\\A VtU - k ,a\\ + 3) 

max Pr [t < e\t > 0] < — ^ ^ (9) 

aeSpan(A ViC/ _ fc ) * a 

where the induced distribution on t is proportional to 

p(*) = f MAv,* ( a + *«)M6v (Aw-^tz-fc + (a + tq)x*)/j, Ck (y* v (a + tg)) t 2 . (10) 

We now set 


a 2 

3(l + ||;c*|| 2 + ||y*|| 2 ) (Pv,i;-fc,o|| + 3) 
and prove 

< t < t' < a implies > 1/e, (11) 

from which @ follows by Lemma 18.21 
To prove (|11|). we observe 

1. As dist (a + i'g, a + tg) < t' — t < a < 1, we may apply Lemma 18. II to show 

flA v k {a + t' q) -c»(||a+tg||+2) -a(||g||+3) , ,., 

'■ — r- > e ° 2 > e > e ' . 

H Avk (a + tq) 

2. As 

llAyc/.fcaj^.fc + axfc+tgXfcH < (\\A v ,v-k, *|| + «) II^MI ■ 


dist (^y )C /_ & a;^_ fe + a4 + tg4, Ay )[7 _ fc a;^_ fc + ax* k + i'g4) = (i' -t)x%< ax%, 
Lemma 18.11 implies 

Hb v {A v ,u-kX*jj_ k + (a + t'q)x*) ^ -^(( |Ki/- fc; HMlKII+ 2 ) 

Hh v (A VtU - k x*rr_ k + (a + tq)x*) 

> e > e~ 1/3 . 


3. As \y*{a + tq)\ < \\y*\\ (||o|| +t \\q\\) = \\y*\\ (||a|| + a), and 

dist (y*(a + tq), y*(a + t' q)) = (t' -t)\y*q\<a \\y*\\ , 
Lemma 18.11 implies 

/x Cfc (y v (a + t'q)) > e Hklk|WMi3 > g _ 1/3 
Vc k {y* v (a + tq)) ~ 

Proof of Lemma \6.2\ (Probability of small a). By Lemma l8.5| it suffices to bound 


max Pr 

U,V A,x* ,y* ,by,Cfj 

a P (A, b, c) < 

Ay .x* < b v and y* A. y > c v 

(|L4||+2) 2 (||^|| + l) 

By Proposition Eini it suffices to prove that for all U, V, A, y v and c U} such that y v A vu > c v , 

8en(m + 1) 

a(A, b, c) < 

(P||+2) 2 (||^|| + l) 

Av,u x u — by 



where we note that, fixing U, V, A, y* and Cjj and conditioning upon Ay yXy < by, the 
induced density on x^ is proportional to 

(Ayux^j) Yl Pr [bj > A jtU xlj} . 

To prove (|T2*)) , we show 

V iec/ V x& _ ! Pr [x* < e\A v u x^ < by] < 
which implies 

max max Pr 

i&J x* u _ i X* 

We then observe 

8e(m + l)(|L4|| + 2) 2 (Hx^ll + 1) 

x i < 

(P||+2) 2 (||^_ i ||+l) 


A-v,u x u — by 



8e(m+ 1) 


77--T — - — n — r < ttttt, — TTTTi n — v and union bound over i G U. To prove 

(||A||+2) 2 (|^_ i ||+l) - (11411+2)^(11^11+1) P 

(f X3|> . we first note that having fixed i £ U and x^ J _ i , the induced density on x* is proportional 


*n def 

p(x*) = ^(Ayp-iXu^ + AyiX*) Yl Pr [bj > Ajp-iXu-i + A i 

We now set 



4(m + l)(||A|| + 2) 2 (||^|| + 1) 

< 1, 

and prove that 


< Xi < x\ < a implies > 1/2, 



from which (|13|) follows by Lemma 18.21 

To prove (|14|) . we note that for < X{ < x\ < a, 

dist [Av^-iXu-i + Ay,iXi, Av,u-iXu_i + Av,ix'j) = \\Av,i\\ - Xi) < ||A|| a < 1, 


^A v ,u-iXu-i + A v,iXi\\ < \\A ViU -i\\ ||a;^_j|| + \\A v>i \\ Xi < \\A\\ (||a;^_j|| + l) . 
So, by Lemma I5~TI 


> e ^ > e > 1 

Vb v (A V:U _ i x* u _ i + A Vti Xi) ' 4(m+l)' 

by our choice of a. 

We can also apply Lemma to show that for each j V, 

Pr bj [6, > Aw-iX^ + A hl x[] > i {\\A\\ + l)) \\A\\ a ^MH-j;^)^ 

Pr fe . [6j > A jiC7 _jX^_ i + ^j,iXi] a 2 

_ 2(P||(||^||+l))P|| n 



> 1 

2(m+ 1)' 

by our choice of a. Thus, we may conclude 

n(x'A ( 1 \ / 1 \ m m + 1 

> I-77 \ ) ( — —-. > 1 - = 1/2. 

p{xi) - V 4(m + l)7v 2(m + l)y ~ 2(m + 1) 


9 Connection to Smoothed Analysis of Simplex Method 

The analysis of the simplex method in |ST01| is broken into two parts: a combinatorial bound 
on the smoothed size of a two-dimensional shadow of a linear program, and an analysis of a two- 
phase algorithm that uses this combinatorial bound as a black-box. The analysis of termination 
in this paper is closely related to the smoothed analysis of the shadow size. The intuition behind 
this analysis is that if the angle at a corner of the polytope of feasible points is bounded away 
from being flat, then the simplex method should make significant progress as it traverses this 
corner. The measure of angle used in |ST01| is approximately ^y(A, b, c), at least for the corner 
optimizing the linear program. The size of the shadow, which upper bounds the number of 
steps taken by the simplex method, is then bounded by varying c over the plane onto which the 
shadow is projected. 

The main technical lemma of the shadow-size analysis in STOl], Lemma 4.0.11 (Angle bound), 
essentially says that for every b, c and A, the probability that a Gaussian perturbation A of 
A has up (A, b, c)^f(A, b, c) < e is linear in e, with a coefficient polynomial in n, m and a. 


The most significant difference between this statement and the analysis in Lemma 16.21 and 16.41 
is that in |ST01| . b and c are not perturbed. This restriction seems necessary to apply the 
combinatorial bound in a black-box fashion in the analysis of the two-phase simplex algorithm. 
Also note that the simplex method analysis is for linear programs without the constraint x > 0. 

Otherwise, the arguments in this paper have a flavor very similar to those of jSTOlj . which 
mainly use the four techniques outlined in Section |H] of this paper; although, that paper uses 
more elaborate changes of variables. One probabilistic technique used in |ST01| that is absent 
in this paper is the Combination Lemma ST01, Lemma 2.3.5] which allows one to obtain tight 
bounds on the probability that a product of parameters is small from bounds on the probabilities 
that the individual parameters are small. The conditions of this lemma dictate the structure 
of the proofs in |ST01| as without it one could not obtain a bound on the probability of angle 
less than e that is linear in e. Moreover, without a bound that is linear in e, one could not 
prove that the shadow has expected polynomial size. In contrast, in Lemma 16.51 of this paper 
the dependency is on e 1 / 3 . It is possible that one could reduce this dependency using the 
combination lemma, but it is not essential for the results in this paper. 

It is our hope that this paper will serve as a gentile introduction to the techniques used in the 
smoothed analysis of the simplex method. 


[AC78] David Avis and Vasek Chvatal. Notes on Bland's pivoting rule. In Polyhedral Com- 
binatorics, volume 8 of Math. Programming Study, pages 24-34. 1978. 

[AJPY93] K. M. Anstreicher, J. Ji, F. A. Potra, and Y. Ye. Average performance of a self- 
dual interior-point algorithm for linear programming. In P. M. Pardalos, editor, 
Complexity in Numerical Optimization, pages 1-15. World Scientific Publishing Co., 
London, United Kingdom, 1993. 

[AJPY99] K. M. Anstreicher, J. Ji, F. A. Potra, and Y. Ye. Probabilistic analysis of an 
infeasible-interior-point algorithm for linear programming. Mathematics of Opera- 
tions Research, 24(1):176-192, 1999. 

[AKS87] I. Adler, R. M. Karp, and R. Shamir. A simplex variant solving an m x d linear 
program in 0(min(m 2 , d 2 )) expected number of pivot steps. J. Complexity, 3:372- 
387, 1987. 

[AM85] Ilan Adler and Nimrod Megiddo. A simplex algorithm whose average number of steps 
is bounded between two quadratic functions of the smaller dimension. Journal of the 
ACM, 32(4):871-895, October 1985. 

[AZ99] Nina Amenta and Gunter Ziegler. Deformed products and maximal shadows of poly- 
topes. In B. Chazelle, J.E. Goodman, and R. Pollack, editors, Advances in Discrete 
and Computational Geometry, number 223 in Contemporary Mathematics, pages 57- 
90. Amer. Math. Soc, 1999. 


[BD02] Avrim Blum and John Dunagan. Smoothed analysis of the perceptron algorithm for 
linear programming. In SODA '02, pages 905-914, 2002. 

[Bor77] Karl Heinz Borgwardt. [Inter suchung en zur Asymptotik der mittleren Schrittzahl 
von Simplexverfahren in der linearen Optimierung. PhD thesis, Universitat Kaiser- 
slautern, 1977. 

[Bor80] Karl Heinz Borgwardt. The Simplex Method: a probabilistic analysis. Number 1 in 
Algorithms and Combinatorics. Springer- Verlag, 1980. 

[BS95] Avrim Blum and Joel Spencer. Coloring random and semi-random k-colorable graphs. 
J. Algorithms, 19(2):204-234, 1995. 

[DST02] John Dunagan, Daniel A. Spielman, and Shang-Hua Teng. Smoothed anal- 
ysis of interior point methods: Condition numbers. Submitted. Available at 
http : //math . mit . edu/ ~spielman/SmoothedAnalysis, 2002. 

[EA96] C. Mezaros X. Xu E. Andersen, J. Gondzio. Implementation of interior point methods 
for large scale linear programming. In T. Terlaky, editor, Interior point methods in 
mathematical programming. Kluwer Academic Publisher, 1996. 

[Gol83] Donald Goldfarb. Worst case complexity of the shadow vertex simplex algorithm. 
Technical report, Columbia University, 1983. 

[Gon88] Clovis C. Gonzaga. An Algorithm for Solving Linear Programming Problems in 
0(n 3 L) Operations, pages 1-28. Springer- Verlag, 1988. Progress in Mathematical 
Programming, N. Megiddo ed.. 

[GS79] Donald Goldfarb and William T. Sit. Worst case behaviour of the steepest edge 
simplex method. Discrete Applied Math, 1:277-285, 1979. 

[Hai83] M. Haimovich. The simplex algorithm is very good!: On the expected number of pivot 
steps and related properties of random linear programs. Technical report, Columbia 
University, April 1983. 

[IL94] D. Shanno I. Lustig, R. Marsten. Interior point methods: computational state of the 
art. ORSA Journal on Computing, 6(1):1-14, 1994. 

[Jer73] Robert G. Jeroslow. The simplex algorithm with the pivot rule of maximizing im- 
provement criterion. Discrete Math., 4:367-377, 1973. 

[Kar84] N. Karmarkar. A new polynomial time algorithm for linear programming. Combina- 
torica, 4:373-395, 1984. 

[Kha79] L. G. Khachiyan. A polynomial algorithm in linear programming. Doklady Akademia 
Nauk SSSR, pages 1093-1096, 1979. 

[KM72] V. Klee and G. J. Minty. How good is the simplex algorithm? In Shisha, O., editor, 
Inequalities - III, pages 159-175. Academic Press, 1972. 


[LMS90] I. J. Lustig, R. E. Marsten, and D. F. Shanno. The primal-dual interior point method 
on the Cray supercomputer. In T. F. Coleman and Y. Li, editors, Large-Scale Nu- 
merical Optimization, Papers from the Workshop held at Cornell University, Ithaca, 
NY, USA, October 1989, volume 46 of SIAM Proceedings in Applied Mathematics, 
pages 70-80. Society of Industrial and Applied Mathematics (SIAM), Philadelphia, 
PA, USA, 1990. 

[Mur80] K. G. Murty. Computational complexity of parametric linear programming. Math. 
Programming, 19:213-219, 1980. 

[Ren88] J. Renegar. A polynomial-time algorithm, based on Newton's method, for linear 
programming. Math. Programming, 40(1 (Ser. A)):59-93, 1988. 

[Ren94] J. Renegar. Some perturbation theory for linear programming. Math. Programming, 
65(1, Ser. A):73-91, 1994. 

[Ren95a] J. Renegar. Incorporating condition measures into the complexity theory of linear 
programming. SIAM J. Optim., 5(3):506-524, 1995. 

[Ren95b] J. Renegar. Linear programming, complexity theory and elementary functional anal- 
ysis. Math. Programming, 70(3, Ser. A):279-351, 1995. 

[SegOO] Yoav Seginer. The expected norm of random matrices. Combinatorics, Probability 
and Computing, 9:149-166, 2000. 

[Sma83] S. Smale. On the average number of steps in the simplex method of linear program- 
ming. Mathematical Programming, 27:241-262, 1983. 

[ST01] Daniel A. Spielman and Shang-Hua Teng. Smoothed analysis of algorithms: Why the 
simplex algorithm usually takes polynomial time. In Proceedings of the 33rd Annual 
ACM Symposium on the Theory of Computing (STOC '01), pages 296-305, 2001. 
available at . 

[Tod86] M.J. Todd. Polynomial expected behavior of a pivoting algorithm for linear comple- 
mentarity and linear programming problems. Mathematical Programming, 35:173- 
192, 1986. 

[Tod94] M. J. Todd. A lower bound on the number of iterations of primal-dual interior- 
point methods for linear programming. In G. A. Watson and D. F. Griffiths, editors, 
Numerical Analysis 1993, pages 237-259. Longman Press, Harlow, 1994. 

[TY96] M. J. Todd and Y. Ye. A lower bound on the number of iterations of long-step and 
polynomial interior-point methods for linear programming. Annals of Operations 
Research, 62:233-252, 1996. 

[Vai90] P. M. Vaidya. An algorithm for linear programming which requires 
0((m + n)n 2 + (m + n) 1,5 nL) arithmetic operations. Mathematical Programming, 
47:175-201, 1990. Condensed version in : Proceedings of the 19th Annual ACM Sym- 
posium on Theory of Computing, 29-38, 1987. 


[Wil65] J. H. Wilkinson. The Algebraic Eigenvalue Problem. Oxford University Press, 1965. 

[Wri96] S. Wright. Primal- Dual Interior- Point Methods. Society for Industrial and Applied 
Mathematics (SIAM), Philadelphia, Pa, 1996. 

[Ye97] Yinyu Ye. Interior Point Algorithms. Wiley-Interscience, 1997.