Lecture: Algorithms for LP, SOCP and SDP

Similar documents
Lecture: Introduction to LP, SDP and SOCP

CSCI 1951-G Optimization Methods in Finance Part 01: Linear Programming

Linear Programming: Simplex

Operations Research Lecture 2: Linear Programming Simplex Method

Yinyu Ye, MS&E, Stanford MS&E310 Lecture Note #06. The Simplex Method

Simplex method(s) for solving LPs in standard form

2.098/6.255/ Optimization Methods Practice True/False Questions

min 4x 1 5x 2 + 3x 3 s.t. x 1 + 2x 2 + x 3 = 10 x 1 x 2 6 x 1 + 3x 2 + x 3 14

A Review of Linear Programming

Interior-Point Methods

Lecture slides by Kevin Wayne

Week 2. The Simplex method was developed by Dantzig in the late 40-ties.

12. Interior-point methods

Example. 1 Rows 1,..., m of the simplex tableau remain lexicographically positive

LINEAR PROGRAMMING I. a refreshing example standard form fundamental questions geometry linear algebra simplex algorithm

I.3. LMI DUALITY. Didier HENRION EECI Graduate School on Control Supélec - Spring 2010

Linear Programming. Linear Programming I. Lecture 1. Linear Programming. Linear Programming

LP Duality: outline. Duality theory for Linear Programming. alternatives. optimization I Idea: polyhedra

CO 602/CM 740: Fundamentals of Optimization Problem Set 4

10 Numerical methods for constrained problems

Lecture 1. 1 Conic programming. MA 796S: Convex Optimization and Interior Point Methods October 8, Consider the conic program. min.

Linear Programming. Murti V. Salapaka Electrical Engineering Department University Of Minnesota, Twin Cities

3 The Simplex Method. 3.1 Basic Solutions

3. THE SIMPLEX ALGORITHM

Lecture: Examples of LP, SOCP and SDP

4.5 Simplex method. LP in standard form: min z = c T x s.t. Ax = b

Advanced Mathematical Programming IE417. Lecture 24. Dr. Ted Ralphs

Spring 2017 CO 250 Course Notes TABLE OF CONTENTS. richardwu.ca. CO 250 Course Notes. Introduction to Optimization

LP. Lecture 3. Chapter 3: degeneracy. degeneracy example cycling the lexicographic method other pivot rules the fundamental theorem of LP

CO 250 Final Exam Guide

Introduction to optimization

The Q Method for Symmetric Cone Programmin

Lecture: Duality of LP, SOCP and SDP

Interior Point Methods. We ll discuss linear programming first, followed by three nonlinear problems. Algorithms for Linear Programming Problems

Conic Linear Programming. Yinyu Ye

9.1 Linear Programs in canonical form

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination

More First-Order Optimization Algorithms

The Q Method for Second-Order Cone Programming

Semidefinite and Second Order Cone Programming Seminar Fall 2001 Lecture 4

Chapter 1. Preliminaries

Simplex Algorithm Using Canonical Tableaus

Math 273a: Optimization The Simplex method

Lecture 17: Primal-dual interior-point methods part II

Ω R n is called the constraint set or feasible set. x 1

1 Review Session. 1.1 Lecture 2

Developing an Algorithm for LP Preamble to Section 3 (Simplex Method)

TIM 206 Lecture 3: The Simplex Method

3. Linear Programming and Polyhedral Combinatorics

1. Algebraic and geometric treatments Consider an LP problem in the standard form. x 0. Solutions to the system of linear equations

Interior Point Algorithms for Constrained Convex Optimization

Convex Optimization M2

Introduction to Mathematical Programming IE406. Lecture 10. Dr. Ted Ralphs

Optimality Conditions for Constrained Optimization

Optimality, Duality, Complementarity for Constrained Optimization

Convex Optimization & Lagrange Duality

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory

Algorithms for nonlinear programming problems II

4.5 Simplex method. min z = c T x s.v. Ax = b. LP in standard form

Note 3: LP Duality. If the primal problem (P) in the canonical form is min Z = n (1) then the dual problem (D) in the canonical form is max W = m (2)

Optimization WS 13/14:, by Y. Goldstein/K. Reinert, 9. Dezember 2013, 16: Linear programming. Optimization Problems

"SYMMETRIC" PRIMAL-DUAL PAIR

Notes taken by Graham Taylor. January 22, 2005

Introduction to Linear and Combinatorial Optimization (ADM I)

Lecture Notes for CAAM 378 A Quick Introduction to Linear Programming (DRAFT) Yin Zhang

Summary of the simplex method

4. The Dual Simplex Method

ORF 522. Linear Programming and Convex Analysis

Lecture Simplex Issues: Number of Pivots. ORIE 6300 Mathematical Programming I October 9, 2014

Semidefinite Programming. Yinyu Ye

Copositive Plus Matrices

A Strongly Polynomial Simplex Method for Totally Unimodular LP

The Primal-Dual Algorithm P&S Chapter 5 Last Revised October 30, 2006

Lecture 5. Theorems of Alternatives and Self-Dual Embedding

Conic Linear Programming. Yinyu Ye

Midterm Review. Yinyu Ye Department of Management Science and Engineering Stanford University Stanford, CA 94305, U.S.A.

TRANSPORTATION PROBLEMS

Lagrange Duality. Daniel P. Palomar. Hong Kong University of Science and Technology (HKUST)

15-780: LinearProgramming

ISM206 Lecture Optimization of Nonlinear Objective with Linear Constraints

Chapter 5 Linear Programming (LP)

Dual Basic Solutions. Observation 5.7. Consider LP in standard form with A 2 R m n,rank(a) =m, and dual LP:

MATH 4211/6211 Optimization Linear Programming

Simplex Method for LP (II)

Algorithm for QP thro LCP

Summary of the simplex method

Semidefinite Programming

Conic Linear Optimization and its Dual. yyye

Primal-Dual Interior-Point Methods

OPERATIONS RESEARCH. Linear Programming Problem

CS711008Z Algorithm Design and Analysis

IE 5531: Engineering Optimization I

Review Solutions, Exam 2, Operations Research

CSC Linear Programming and Combinatorial Optimization Lecture 10: Semidefinite Programming

12. Interior-point methods

Appendix A Taylor Approximations and Definite Matrices

Lecture: Duality.

Lecture 6: Conic Optimization September 8

1 Overview. 2 Extreme Points. AM 221: Advanced Optimization Spring 2016

Interior Point Methods for LP

Transcription:

1/53 Lecture: Algorithms for LP, SOCP and SDP Zaiwen Wen Beijing International Center For Mathematical Research Peking University http://bicmr.pku.edu.cn/~wenzw/bigdata2018.html wenzw@pku.edu.cn Acknowledgement: this slides is based on chapters 13 and 14 of Numerical Optimization, Jorge Nocedal and Stephen Wright, Springer some parts are based on Prof. Farid Alizadeh lecture notes

Standard form LP (P) min c x s.t. Ax = b x 0 (D) max b y s.t. A y + s = c s 0 KKT condition Ax = b, x 0 A y + s = c, s 0 x i s i = 0 for i = 1,..., n Strong duality: If a LP has an optimal solution, so does its dual, and their objective fun. are equal. primal dual finite unbounded infeasible finite unbounded infeasible 2/53

Geometry of the feasible set Assume that A R m n has full row rank. Let A i be the ith column of A: A = ( A 1 A 2... A n ) A vector x is a basic feasible solution (BFS) if x is feasible and there exists a subset B {1, 2,..., n} such that B contains exactly m indices i / B = x i = 0 The m m submatrix B = [A i ] i B is nonsingular B is called a basis and B is called the basis matrix Properties: If (P) has a nonempty feasible region, then there is at least one basic feasible point; If (P) has solutions, then at least one such solution is a basic optimal point. If (P) is feasible and bounded, then it has an optimal solution. 3/53

4/53 If (P) has a nonempty feasible region, then there is at least one BFS; Choose a feasible x with the minimal number (p) of nonzero x i : p i=1 A ix i = b Suppose that A 1,..., A p are linearly dependent A p = p 1 i=1 z ia i. Let x(ɛ) = x + ɛ(z 1,..., z p 1, 1, 0,..., 0) = x + ɛz. Then Ax(ɛ) = b, x i (ɛ) > 0, i = 1,..., p, for ɛ sufficiently small. There exists ɛ such that x i ( ɛ) = 0 for some i = 1,..., p. Contradiction to the choice of x. If p = m, done. Otherwise, choose m p columns from among A p+1,..., A n to build up a set set of m linearly independent vectors.

Polyhedra, extreme points, vertex, BFS 5/53 A Polyhedra is a set that can be described in the form {x R n Ax b} Let P be a polyhedra. A vector x P is an extreme point if we cannot find two vectors y, z P (both different from x) such that x = λy + (1 λ)z for λ [0, 1] Let P be a polyhedra. A vector x P is a vertex if there exists some c such that c x < c y for all y P and y x Let P be a nonempty polyhedra. Let x P. The following statements are equivalent: (i) x is vertex; (ii) x is an extreme point; (iii) x is a BFS A basis B is said to be degenerate if x i = 0 for some i B, where x is the BFS corresponding to B. A linear program (P) is said to be degenerate if it has at least one degenerate basis.

Vertices of a three-dimensional polyhedron (indicated by ) 6/53

7/53 The Simplex Method For LP Basic Principle Move from a BFS to its adjacent BFS unitil convergence (either optimal or unbounded) Let x be a BFS and B be the corresponding basis Let N = {1, 2,..., n}\b, N = [A i ] i N, x B = [x i ] i B and x N = [x i ] i N Since x is a BFS, then x N = 0 and Ax = Bx B + Nx N = b: x B = B 1 b Find exactly one q N and exactly one p B such that B + = {q} (B\{p})

Finding q N to enter the basis 8/53 Let x + be the new BFS: ( ) x + x + = B x +, Ax + = b = x + B = B 1 b B 1 Nx + N N The cost at x + is c x + = c B x + B + c N x + N = c B B 1 b c B B 1 Nx + N + c N x + N = c x + (c N c B B 1 N)x + N = c x + j N(c j c B B 1 A j }{{} s j is also called reduced cost. It is actually the dual slackness If s j 0, j N, then x is optimal as c x + c x s j )x + j Otherwise, find q such that s q < 0. Then c x + = c x + s q x + q c x

Finding p B to exit the basis 9/53 What is x + : select q N and p B such that x + B = B 1 b B 1 A q x + q, x + q 0, x + p = 0, x + j = 0, j N \{q} Let u = B 1 A q. Then x + B = x B ux + q If u 0, then c x + = c x + s q x + q as x + q + and x + is feasible. (P) is unbounded If u k > 0, then find x + q and p such that x + B = x B ux + q 0, x + p = 0 Let p be the index corresponding to x + q = min i=1,...,m u i >0 x B(i) u i

An iteration of the simplex method 10/53 Typically, we start from a BFS x and its associate basis B such that x B = B 1 b and x N = 0. Solve y = c B B 1 and then the reduced costs s N = c N N y If s N 0, x is optimal and stop; Else, choose q N with s q < 0. Compute u = B 1 A q. If u 0, then (P) is unbounded and stop. If u k > 0, then find x q + = min i=1,...,m u i >0 the minimizing i. Set x + B = x B ux q +. x B(i) u i and use p to denote Change B by adding q and removing the basic variable corresponding to column p of B.

Simplex iterates for a two-dimensional problem 11/53

Finite Termination of the simplex method Theorem Suppose that the LP (P) is nondegenerate and bounded, the simplex method terminates at a basic optimal point. nondegenerate: x B > 0 and c x is bounded A strict reduction of c x at each iteration There are only a finite number of BFS since the number of possible bases B is finite (there are only a finite number of ways to choose a subset of m indices from {1, 2,..., n}), and since each basis defines a single basic feasible point Finite termination does not mean a polynomial-time algorithm 12/53

Linear algebra in the simplex method 13/53 Given B 1, we need to compute B 1, where B = [A 1,..., A m ], B := B + = [A 1,..., A p 1, A q, A p+1,..., A m ] the cost of inversion B 1 from scratch is O(m 3 ) Since BB 1 = I, we have B 1 B = [e 1,... e p 1, u, e p+1,..., e m ] 1 u 1.... = u p,.... u m 1 where e i is the ith column of I and u = B 1 A q

Linear algebra in the simplex method 14/53 Apply a sequence of elementary row operation For each j p, we add the p-th row times uj u p to the jth row. This replaces u j by zero. We divide the pth row by u p. This replaces u p by one. Q ip = I + D ip, (D ip ) jl = { u j u p, (j, l) = (i, p) 0, otherwise, for i p Find Q such that QB 1 B = I. Computing B 1 needs only O(m 2 ) What if B 1 is computed by the LU factorization, i.e., B = LU? L is is unit lower triangular, U is upper triangular. Read section 13.4 in Numerical Optimization, Jorge Nocedal and Stephen Wright,

An iteration of the revised simplex method 15/53 Typically, we start from a BFS x and its associate basis B such that x B = B 1 b and x N = 0. Solve y = c B B 1 and then the reduced costs s N = c N N y If s N 0, x is optimal and stop; Else, choose q N with s q < 0. Compute u = B 1 A q. If u 0, then (P) is unbounded and stop. If u k > 0, then find x q + = min i=1,...,m u i >0 the minimizing i. Set x + B = x B ux q +. x B(i) u i and use p to denote Form the m (m + 1) matrix [B 1 u]. Add to each one of its rows a multiple of the pth row to make the last column equal to the unit vector e p. The first m columns of the result is the matrix B 1.

Selection of the entering index (pivoting rule) 16/53 Reduced costs s N = c N N y, c x + = c x + s q x + q Dantzig: chooses q N such that s q is the most negative component Bland s rule: choose the smallest j N such that s j < 0; out of all variables x i that are tied in the test for choosing an exiting variable, select the one with with the smallest value i. Steepest-edge: choose q N such that c η q η q ( ) x + x + = B x N + = ( xb x N ) + ( B 1 A q efficient computation of this rule is available e q is minimized, where ) x q = x + η q x + q

Degenerate steps and cycling 17/53 Let q be the entering variable: x + B = B 1 b B 1 A q x + q = x B x + q u, where u = B 1 A q Degenerate step: there exists i B such that x i = 0 and u i > 0. Then x + i < 0 if x + q > 0. Hence, x + q = 0 and do the pivoting Degenerate step may still be useful because they change the basis B, and the updated B may be closer to the optimal basis. cycling: after a number of successive degenerate steps, we may return to an earlier basis B Cycling has been observed frequently in the large LPs that arise as relaxations of integer programming problems Avoid cycling: Bland s rule and Lexicographically pivoting rule

Finding an initial BFS The two-phase simplex method (P) min c x s.t. Ax = b x 0 (P0) f = min z 1 + z 2 +... + z m s.t. Ax + z = b x 0, z 0 A BFS to (P0): x = 0 and z = b If x is feasible to (P), then (x, 0) is feasible to (P0) If the optimal cost f of (P0) is nonzero, then (P) is infeasible If f = 0, then its optimal solution must satisfies: z = 0 and x is feasible to (P) An optimal basis B to (P0) may contain some components of z 18/53

19/53 Finding an initial BFS (x, z) is optimal to (P0) with some components of z in the basis Assume A 1,..., A k are in the basis matrix with k < m. Then B = [A 1,..., A k some columns of I] B 1 A = [e 1,..., e k, B 1 A k+1,..., B 1 A n ] Suppose that lth basic variable is an artificial variable If the lth row of B 1 A is zero, then g A = 0, where g is the lth row of B 1. If g b 0, (P) is infeasible. Otherwise, A has linearly dependent rows. Remove the lth row. There exists j such that the lth entry of B 1 A j is nonzero. Then A j is linearly independent to A 1,..., A k. Perform elementary row operation to replace B 1 A j to be the lth unit vector. Driving one of z out of the basis

20/53 The primal simplex method for LP (P) min c x s.t. Ax = b x 0 (D) max b y s.t. A y + s = c s 0 KKT condition Ax = b, x 0 A y + s = c, s 0 x i s i = 0 for i = 1,..., n The primal simplex method generates x B = B 1 b 0, x N = 0, y = B T c B, s B = c B B y = 0, s N = c N N y?0

21/53 The dual simplex method for LP The dual simplex method generates x B = B 1 b?0, x N = 0, y = B T c B, s B = c B B y = 0, s N = c N N y 0 If x B 0, then (x, y, s) is optimal Otherwise, select q B such that x q < 0 to exit the basis, select r N to enter the basis, i.e., s + r = 0 The update is of the form s + B = s B + αe q obvious y + = y + αv requirement

The dual simplex method for LP What is v? Since A y + + s + = c, it holds s + B = c B B y + = s B + αe q = c B B (y + αv) = e q = B v The update of the dual objective function b y + = b y + αb v = b y αb B T e q = b y αx B e q = b y αx q Since x q < 0 and we maximize b y +, we choose α as large as possible, but require s + N 0 22/53

The dual simplex method for LP 23/53 Let w = N v = N B T e q. Since Ay + s = c and A y + + s + = c, it holds The largest α is s + N = c N N y + = s N αn v = s N αw 0 α = min j N,w j >0 s j w j. Let r be the index at which the minimum is achieved. (D) is unbounded if w 0 s + r = 0, w r = A r v > 0

The dual simplex method for LP The update of x +. Define d such that Bd = A r and use Bx B = i B A i x i = b. we have Ax + = b, i.e., B(x B γd) + γa r = b for any γ. Since it is required x + q = 0, we set γ = x q d q, where d q = d e q = A r B T e q = A r v = w r < 0. Therefore x i γd i, for i B with i q, x i + 0, i = q, = 0, i N with i r, γ, i = r 24/53

An iteration of the dual simplex method 25/53 Typically, we start from a dual feasible (y, s) and its associate basis B such that x B = B 1 b and x N = 0. If x B 0, then x is optimal and stop. Else, choose q such that x q < 0. Compute v = B T e q and w = N v. If w 0, then (D) is unbounded and stop. If w k > 0, then find α = min and use r to denote the j N,w j >0 minimizing j. Set s + B = s B + αe q, s + N = s N αw and y + = y + αv. Change B by adding r and removing the basic variable corresponding to column q of B. s j w j

26/53 Primal-Dual Methods for LP (P) min c x s.t. Ax = b x 0 (D) max b y s.t. A y + s = c s 0 KKT condition Ax = b, x 0 A y + s = c, s 0 x i s i = 0 for i = 1,..., n Perturbed system Ax = b, x 0 A y + s = c, s 0 x i s i = σµ for i = 1,..., n

27/53 Newton s method Let (x, y, s) be the current estimate with (x, s) > 0 Let ( x, y, s) be the search direction Let µ = 1 n x s and σ (0, 1). Hope to find A(x + x) = b A (y + y) + s + s = c (x i + x i )(s i + s i ) = σµ dropping the nonlinaer term x i s i gives A x = r p := b Ax A y + s = r d := c A y s x i s i + x i s i = (r c ) i := σµ x i s i

Newton s method 28/53 Let L x = Diag(x) and L s = Diag(s). The matrix form is: A 0 0 x r p 0 A I y = r d L s 0 L x s r c Solving this system we get y = (AL 1 s L x A ) 1 (r p + AL 1 s (L x r d r c )) s = r d A y x = L 1 s (L x s r c ) The matrix AL 1 s L x A is symmetric and positive definite if A is full rank

The Primal-Dual Path-following Method 29/53 Given (x 0, y 0, s 0 ) with (x 0, s 0 ) 0. A typical iteration is Choose µ = (x k ) s k /n, σ (0, 1) and solve A 0 0 x k r k 0 A I y k p = r k L s k 0 L x k s k d rc k Set (x k+1, y k+1, s k+1 ) = (x k, y k, s k ) + α k ( x k, y k, s k ), choosing α k such that (x k+1, s k+1 ) > 0 The choices of centering parameter σ and step length α k are crucial to the performance of the method.

The Central Path The primal-dual feasible and strictly feasible sets: F = {(x, y, s) Ax = b, A y + s = c, (x, s) 0} F o = {(x, y, s) Ax = b, A y + s = c, (x, s) > 0} The central path is C = {(x τ, y τ, s τ ) τ > 0}, where Ax τ = b, x τ > 0 A y τ + s τ = c, s τ > 0 (x τ ) i (s τ ) i = τ for i = 1,..., n Central path neighborhoods, for θ, γ [0, 1): N 2 (θ) = {(x, y, s) F o L x L s e µe 2 θµ} N (γ) = {(x, y, s) F o x i s i γµ} Tyically, θ = 0.5 and γ = 10 3 30/53

Central path, projected into space of primal variables x, showing a typical neighborhood N 31/53

The Long-Step Path-following Method 32/53 Given (x 0, y 0, s 0 ) N (γ). A typical iteration is Choose µ = (x k ) s k /n, σ (0, 1) and solve A 0 0 x k r k 0 A I y k p = r k L s k 0 L x k s k d rc k Set α k be the largest value of α [0, 1] such that (x k+1, y k+1, s k+1 ) N (γ) where (x k+1, y k+1, s k+1 ) = (x k, y k, s k ) + α k ( x k, y k, s k ),

33/53

Analysis of Primal-Dual Path-Following 1 If (x, y, s) N (γ), then x s 2 3/2 (1 + 1/γ)nµ 2 The long-step path-following method yields ( µ k+1 1 δ ) µ k, n where δ = 2 3/2 γ 1 γ 1+γ σ(1 σ) 3 Given ɛ, γ (0, 1), suppose that the starting point (x 0, y 0, s 0 ) N (γ). Then there exists K = O(nlog(1/ɛ)) such that µ k ɛµ 0, for all k K Proof of 3: ( log(µ k+1 ) log 1 δ ) + log(µ k ) n log(1 + β) β, β > 1 34/53

35/53 Barrier Methods A general strategy for solving convex optimization problem: (P) min c x s.t. x C, where C is convex. Find a barrier function b(x) : Int C R b(x) is convex on Int C for any sequence of points {x i } approaching boundary bd(c), b(x i ) We can replace the problem (II) min c x + µb(x) If x µ is the optimum of (II) and x of (I) then x µ IntC As µ 0, x µ x

36/53 For the positive orthant {x x 0}, a barrier is b(x) = i ln(x i ) For the semidefinite cone {X X 0}, a barrier is b(x) = ln det(x) We will discuss the second order cone shortly

Barriers for LP and SDP 37/53 Thus LP can be replaced by Primal (P) µ min c x µ ln x i i max Dual (D) µ b y + µ i ln s i s.t. Ax = b x > 0 s.t. A y + s = c s > 0 Thus SDP can be replaced by Primal (P) µ min C, X µ ln det(x) s.t. A i, X = b i X 0 Dual (D) µ max b y + µ ln det(s) s.t. y i A i + S = C i S 0

38/53 Applying standard optimality condition we get LP: L(x, y) = c x µ i ln x i y (b Ax) SDP: L(x, y) = C, X µ ln det(x) i y i(b i A i, X ) The Karush-Kuhn-Tucker condition requires that at the optimum X L = 0 which translates into (LP) y L = b Ax = 0 L x i = c i µ x i (y A) i = 0 (SDP) y L = (b i A i, X ) = 0 X = C µx 1 y i A i = 0 i

39/53 In LP: define s i = µ x i, then s is dual feasible In SDP: define S = µs 1, then S is dual feasible The optimality conditions result in the square system (LP) Ax = b A y + s = c x i = µ s i (SDP) A i, X = b i y i A i + S = C i X = µs 1 In LP: if we write x i s i = µ, we get relaxed complementarity In SDP: if we write XS = µi, we get relaxed complementarity

Newton s method for SDP 40/53 Let X, y, S be initial estimates Then If we use XS = µi, X is not symmetric Since X, S 0 then XS = µi iff X S = XS+SX 2 = µi Now applying Newton, we get A i, X + X = b i (y i + y i )A i + S + S = C i (X + X) (S + S) = µi

Newton s method 41/53 Expanding and throwing out nonlinear terms A i, X = (r p ) i y i A i + S = R d i S X + S X = R c where (r p ) i = b i A i, X R d = C i y i A i S R c = µi X S

42/53 In matrix form A 0 0 x r p 0 A I y = r d L S 0 L X s r c vec(a) is a vector made by stacking columns of a matrix A A is a matrix whose rows are vec(a i ) x = vec(x), s = vec(s)... L X (and L S ) are matrix representations of L X (and L S ) operators L X = X I + I X and L S = S I + I S a 11 B... a 1n B Kronecker product: A B =..... a m1 B... a mn B http://en.wikipedia.org/wiki/kronecker_product

43/53 Solving this system we get y = (AL 1 S L XA ) 1 (r p + AL 1 S (L Xr d r c )) s = r d A y x = L 1 S (L X s r c )

44/53 The matrix AL 1 s L x A is not symmetric because L S and L X do not commute! In LP, it is quite easy to compute AL 1 s L x A Most computational work in LP involves solving the system (AL 1 s L x A )v = u in SDP even computing AL 1 s L x A is fairly expensive (in this form requires solving Lyapunov equations)

45/53 How about SOCP? What is an appropriate barrier for the convex cone Q = {x x 0 x }? By analogy we expect relaxed complementary conditions turn out to be x s = µe

Algebra Associated with SOCP 46/53 In SDP The barrier ln det(x) = i ln λ i(x) For each symmetric n n matrix X, there is a characteristic polynomial, such that p(t) = p 0 + p 1 t +... + p n 1 t n 1 + t n roots of p(t) are eigenvalues of X Tr(X) = p n 1, det(x) = p 0 roots of p(t) are real numbers p(x) = 0 by Cayley-Hamilton Theorem There is orthogonal matrix Q: X = QΛQ = λ 1 q 1 q 1 +... + λ nq n q n

SOCP 47/53 Remember ( x x s = ) s x 0 s + s 0 x It is easy to verify ( x0 x L x = Arw(x) = ) x x 0 I e = ( ) 1 0 x x 2x 0 x + (x0 2 x 2 )e = 0 Define the characteristic polynomial p(t) = t 2 2x 0 t + (x0 2 x 2 ) = (t (x 0 + x )(t (x 0 x ) Define eigenvalues of x roots of p(t) : λ 1,2 = x 0 ± x Define Tr(x) = 2x 0 and det(x) = x0 2 x 2

For each x define c 1 = 1 2 ( 1 x x ) c 2 = 1 2 ( 1 ) x x We can verify x = λ 1 c 1 + λ 2 c 2 This relation is the spectral decomposition of the vectors in SOCP Algebra 48/53

to get c 1 and c 2, (i) project x to x 1,..., x n plane, (ii) normalize x and x (iii) lift the normalized vectors up to touch the boundary of the cone 49/53

50/53 Define for any real number t, x t = λ t 1 c 1 + λ t 2 c 2 whenever λ t i is defined x 1 = 1 c 1 + 1 c 2 = 1 ( ) x0 λ 1 λ 2 det(x) x Now we can define an appropriate barrier for Q ln det(x) = ln(x0 2 x 2 ) x ( ln det x) = 2 ( ) x0 = 2x 1 det(x) x

51/53 we can replace SOCP problem with max s.t. c x µ ln det x Ax = b x Q 0 The Lagrangian L(x, y) = c x µ ln det x y (b Ax) Applying KKT b Ax = 0 c µx 1 A y = 0 Setting s = µx 1 we can see that s is dual feasible

52/53 Newton s method Thus we have to solve the following system Ax = b A y + s = c x s = 2µe Using Newton s method, we get A(x + x) = b A (y + y) + s + s = c (x i + x i ) (s i + s i ) = 2µe

Newton s method 53/53 Now expanding and dropping nonlinear terms A x = b Ax A y + s = c A y s x s + x s = 2µe x s nonlinear term x s was dropped In matrix form A 0 0 x r p r p = b Ax 0 A I y = r d where r d = c A y s L s 0 L x s r c r c = 2µe x s