Towards a practical simplex method for second order cone programming

Similar documents
Linear programming and duality theory

David G. Luenberger Yinyu Ye. Linear and Nonlinear. Programming. Fourth Edition. ö Springer

Research Interests Optimization:

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

A primal-dual Dikin affine scaling method for symmetric conic optimization

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

Math 5593 Linear Programming Lecture Notes

A PRIMAL-DUAL EXTERIOR POINT ALGORITHM FOR LINEAR PROGRAMMING PROBLEMS

Some Advanced Topics in Linear Programming

Linear Optimization. Andongwisye John. November 17, Linkoping University. Andongwisye John (Linkoping University) November 17, / 25

Linear Programming. Course review MS-E2140. v. 1.1

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs

Contents. I Basics 1. Copyright by SIAM. Unauthorized reproduction of this article is prohibited.

Lecture Notes 2: The Simplex Algorithm

Read: H&L chapters 1-6

Linear Optimization and Extensions: Theory and Algorithms

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Open problems in convex geometry

The Ascendance of the Dual Simplex Method: A Geometric View

Dual-fitting analysis of Greedy for Set Cover

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi

THEORY OF LINEAR AND INTEGER PROGRAMMING

Linear Programming in Small Dimensions

INTRODUCTION TO LINEAR AND NONLINEAR PROGRAMMING

Lecture 2. Topology of Sets in R n. August 27, 2008

Open problems in convex optimisation

Detecting Infeasibility in Infeasible-Interior-Point. Methods for Optimization

Properties of a Cutting Plane Method for Semidefinite Programming 1

Graphs that have the feasible bases of a given linear

Programming, numerics and optimization

Conic Duality. yyye

Lesson 17. Geometry and Algebra of Corner Points

Optimization under uncertainty: modeling and solution methods

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

Extensions of Semidefinite Coordinate Direction Algorithm. for Detecting Necessary Constraints to Unbounded Regions

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Convex Sets. CSCI5254: Convex Optimization & Its Applications. subspaces, affine sets, and convex sets. operations that preserve convexity

4.1 Graphical solution of a linear program and standard form

Stability of closedness of convex cones under linear mappings

LARGE SCALE LINEAR AND INTEGER OPTIMIZATION: A UNIFIED APPROACH

Part 4. Decomposition Algorithms Dantzig-Wolf Decomposition Algorithm

Programs. Introduction

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

Mathematical and Algorithmic Foundations Linear Programming and Matchings

AMS : Combinatorial Optimization Homework Problems - Week V

Marginal and Sensitivity Analyses

Conic Optimization via Operator Splitting and Homogeneous Self-Dual Embedding

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Bilinear Programming

Convex Optimization M2

2. Convex sets. x 1. x 2. affine set: contains the line through any two distinct points in the set

Aone-phaseinteriorpointmethodfornonconvexoptimization

Math Models of OR: The Simplex Algorithm: Practical Considerations

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

DEGENERACY AND THE FUNDAMENTAL THEOREM

Convex Optimization. Convex Sets. ENSAE: Optimisation 1/24

EE/ACM Applications of Convex Optimization in Signal Processing and Communications Lecture 6

Lecture 5: Duality Theory

What is linear programming (LP)? NATCOR Convex Optimization Linear Programming 1. Solving LP problems: The standard simplex method

LECTURE 18 LECTURE OUTLINE

A PARAMETRIC SIMPLEX METHOD FOR OPTIMIZING A LINEAR FUNCTION OVER THE EFFICIENT SET OF A BICRITERIA LINEAR PROBLEM. 1.

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

Linear Programming Problems

Surrogate Gradient Algorithm for Lagrangian Relaxation 1,2

NATCOR Convex Optimization Linear Programming 1

2. Convex sets. affine and convex sets. some important examples. operations that preserve convexity. generalized inequalities

Linear and Integer Programming (ADM II) Script. Rolf Möhring WS 2010/11

New Penalty Approaches for Bilevel Optimization Problems arising in Transportation Network Design

Mixed Integer Second Order Cone Optimization (MISOCO): Cuts, Warm Start, and Rounding

Constrained optimization

Linear Programming: Mathematics, Theory and Algorithms

VARIANTS OF THE SIMPLEX METHOD

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

A Simplex-Cosine Method for Solving Hard Linear Problems

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Primal and Dual Methods for Optimisation over the Non-dominated Set of a Multi-objective Programme and Computing the Nadir Point

Tribhuvan University Institute Of Science and Technology Tribhuvan University Institute of Science and Technology

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Optimization Methods. Final Examination. 1. There are 5 problems each w i t h 20 p o i n ts for a maximum of 100 points.

Advanced Algorithms Linear Programming

Nonlinear Programming

George B. Dantzig Mukund N. Thapa. Linear Programming. 1: Introduction. With 87 Illustrations. Springer

60 2 Convex sets. {x a T x b} {x ã T x b}

R n a T i x = b i} is a Hyperplane.

Interpretation of Dual Model for Piecewise Linear. Programming Problem Robert Hlavatý

Simplex Algorithm in 1 Slide

The Affine Scaling Method

Selected Topics in Column Generation

Artificial Intelligence

Convex Optimization - Chapter 1-2. Xiangru Lian August 28, 2015

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

Convex Optimization. 2. Convex Sets. Prof. Ying Cui. Department of Electrical Engineering Shanghai Jiao Tong University. SJTU Ying Cui 1 / 33

AMATH 383 Lecture Notes Linear Programming

DETERMINISTIC OPERATIONS RESEARCH

Integer Programming Theory

Improved Gomory Cuts for Primal Cutting Plane Algorithms

Applied Integer Programming

Transcription:

Towards a practical simplex method for second order cone programming Kartik Krishnan Department of Computing and Software McMaster University Joint work with Gábor Pataki (UNC), Neha Gupta (IIT Delhi), and Tamás Terlaky (Mac) INFORMS Annual Meeting Denver Oct 26, 2004

Overview Second Order Cone Programming (SOCP) Contrast simplex-like approaches and IPMs for conic optimization The geometry of SOCP Simplex algorithm for SOCP Special case: Simplex method for LP Properties of the algorithm Preliminary computational results Conclusions and future work 1

Second order cone optimization Primal min c T 1 x 1 + c T 2 x 2 +... + c T r x r A 1 x 1 + A 2 x 2 +... + A r x r = b, (SOCP) x i K i. Dual max b T y A T i y + s i = c i, i = 1,..., r, s i K i. (SOCD) Notation A = (A 1, A 2,..., A r ) R m n with full row rank. K = K 1... K r. Each K i = { x R n i : x 1 of size n i, i = 1,..., r. x 2:ni } is a second order cone 2

Optimality conditions (x, y, s ) are optimal iff Ax = b, x K, A T y + s = c, s K, x i s i = 0, i = 1,..., r. (CS) (PF) (DF) For an SOCP cone in R n x s = ( x T s x(1)s(2 : n) + s(1)x(2 : n) ). For any cone K x K, s K, x T s = 0 x s = 0. 3

Eigenvalues and Eigenvectors Given x R n, we have ( x = 1 2 ( x 1 x 2:n ) 1; x ) 2:n + 1 x 2:n 2 ( x 1 + x 2:n ) = λ min ( x)v min ( x) + λ max ( x)v max ( x). Index classification: Given x i K i we have i O (zero blocks) if λ max ( x i ) = 0. i R (boundary blocks) if λ min ( x i ) = 0. i I (interior blocks) if λ min ( x i ) > 0. ( 1; ) x 2:n x 2:n 4

Contrast simplex and IPMs for CP I. Start Extreme Points Start Central Path Our Algorithm Simplex Method Finish Interior Point Method Finish Feasible Direction Method Interior Point Methods deal with matrices of full rank. In the simplex method, the rank of the extreme points satisfy (1) r <= m (Linear Programming) (2) r(r+1)/2 <= m (Semidefinite Programming) 5

Contrast simplex and IPMs for CP II. Why a simplex method for conic programming?. 1. Listed as an important open problem in conic programming. 2. Warm start after branching or the addition of cutting planes using the dual simplex method. 3. It is possible to do every simplex iteration more quickly than an IPM iteration using fast basis LU updates to factorize the basis matrix. 6

Terminology I. Given a closed convex cone K R n. Consider x K Lineality space: B x = {d R n : x ± ǫd K, ǫ > 0}. Tangent space: T x = { d R n : dist( x ± ǫd, K) = O(ǫ 2 ), ǫ > 0 }. Residual space: R x = T x \ B x. 7

Terminology II. Cone of feasible directions: Tangent cone: dir( x, K) = (K + B x ) = {d R n : x + ǫd K, ǫ > 0}. TC( x, K) = cl(dir( x, K)) = { d R n : dist( x + ǫd, K) = O(ǫ 2 ), ǫ > 0 }. Null space: N = {x R n : Ax = 0}. 8

Demo Given x i R n i on the boundary of the SOCP cone K i. B xi = α x i for α R. T xi = lin ( B xi ( 0 {( 0 w ) : w T x 2:ni = 0 Note x i + ǫ / K w i. ( ) ( 0 However x i + ǫ + ǫ w 2 1 0 ) ) }). int(k i ). 9

Notions of nondegeneracy A feasible x in (SOCP) is c-nondegenerate This is a generic property. T x + N = R n. f-nondegenerate B x + N = R n. Extreme point B x N = {0}. 10

Simplex algorithm for SOCP I. Given a feasible c-nondegenerate x = ( x I ; x R ; x O ) in (SOCP). Indices i I and j R are ranked on λ min ( x i ) and x j1 respectively. 1. Select basis: Construct the following basis elements: Decompose x = M B x B + M N x N, where M B R n m and M N R n (n m). M B is chosen with Range(M B ) T x such that A B = AM B is a nonsingular basis matrix of size m. Also, c B = M T B c. Let B,N be the index set of cones K i,i = 1,..., r with columns in M B and M N respectively. (Note: B N φ). 2. Construct dual solution: Solve A T B y = c B for ȳ. Compute s i = c i A T i ȳi, i N. (Note: s i = 0, i / N). 11

Simplex algorithm for SOCP II. 3. Pricing: Compute α = max{ λ min ( s i ) : s i / K i, i N}. β = max{ x T i s i : s i K i, i N}. If α = β = 0 STOP; ( x, ȳ, s) is an optimal solution. Else k = { an index s.t. α = λmin ( s k ) if α > β. an index s.t. β = x T k s k if α < β. 4. Find improving direction: Improving component: Compute d N R n where d Ni = min d =1 d TC( x k,k ) st k d k (IC) if i = k 0 for i = 1,..., r and i k. (Note: dir( x k, K k ) is not CLOSED!) 12

Simplex algorithm for SOCP III. 4. Find improving direction (continued): Centering component: Construct d C R n satisfying d Ci = (α;0) i R B, a nonzero subset of R xi Range(A B ) (α;0) i = k if k R 0 otherwise with α > 0 chosen so that s T k ( d N + d C ) < 0. Basic component: Compute d B R m by solving A B d B = (Ad N + Ad C ). The improving direction d = (M B d B + d C + d N ). 13

Simplex algorithm for SOCP IV. 5. Line search: Compute ᾱ where ᾱ = max{α i : x i + α i d i K i, i = 1,..., r}. If ᾱ = the primal is unbounded. STOP. Else set x = x + ᾱ d and return to step 1. (Note: The new x is assumed to be c-nondegenerate). 14

Computing the improving component I. The solution d Nk to (IC) is If k O: d Nk = s k s k if λ max ( s k ) < 0 v min ( s k ) if λ min ( s k ) < 0 and λ max ( s k ) 0 0 if s k K k If k I: d Nk = s k s k if s k 0 0 if s k = 0 15

Computing the improving component II. If k R: We have TC( x k, K k ) = {d R n k : x 1 d 1 n k j=2 x jd j 0} In this case d Nk is d Nk = 0 if s k = ( x 1 ; x 2:nk ) min d =1, d TC( x k,k ) st k d otherwise k 16

Special case: Simplex method for LP 1. The initial iterate is an nondegenerate extreme point solution. If this iterate is not an extreme point, the method is instead a feasible direction method. 2. Given a non-degenerate extreme point, the simplex method chooses the basis matrix as A B = A(:,support( x)). This is nonsingular with Range(A B ) = B x. 3. For the improving direction d N = e k (k is the index for which s i is the most negative) and d B the solution to A B d B = A k. No centering term d C is needed. The resulting direction d is along an edge of the feasible set. 17

Properties of the algorithm Theorem. Let {(x k, y k, s k )} be a sequence generated by the algorithm. Then for all k, x k is primal feasible. At the k-th iteration, one of the following alternative cases arises: 1. If it stops in Step 2 then x k, (y k, s k ) are primal and dual optimal solutions to (SOCP) and (SOCD) respectively. 2. If it stops in Step 5, then (SOCP) is unbounded and (SOCD) is infeasible. 3. Otherwise, if x k is also c-nondegenerate we have c T x k+1 < c T x k. 18

Convergence of the algorithm Some practical issues affecting convergence include: One also adds a centering term d Ci to the cones i I which are very nearly in R. This is to prevent the algorithm from getting jammed at a suboptimal point. There is also the issue of zigzagging with the algorithm. Conjecture. If {x k } contains a nondegenerate subsequence, then the algorithm with the anti-jamming safeguard either terminates in a finite number of steps, or all accumulation points of {x k } are optimal solutions to (SOCP). 19

Comments on the simplex algorithm The simplex algorithm for SOCP is a feasible direction method that generates search directions in the tangent cone. This direction is suitably centered so as to generate a feasible direction. The simplex iterates are not always extreme points and the search directions may traverse the interior of the feasible region. The method resembles the convex simplex method of Zangwill for minimizing a convex function over a polyhedron. The algorithm maintains primal feasibility in every iteration while dual feasibility and complementary slackness are attained at optimality. The step length calculation in Step 5 has a closed analytic expression. 20

Preliminary computational results Prob m n lp r Opt Obj(0) Obj(iter) Iter hs51 14 22 10 [12] -5.99-1.78-5.99(*) 10 slp1 30 50 20 10(3) 52.83 86.01 52.83 200 slp2 50 130 100 10(3) 14.61 1669.43 14.61 200 slp3 50 160 100 [50 10] 38.51 1773.46 38.51(*) 183 slp4 100 180 150 10(3) 426.64 681.72 426.64(*) 896 slp5 50 80 50 10(3) 45.67 103.66 45.67(*) 153 slp6 50 75 25 10(5) 24.05 85.19 24.17 500 slp7 50 150 100 10(5) 21.27 109.21 21.41 1000 slp8 50 110 100 [10] 82.10 300.68 82.10(*) 157 slp9 100 160 150 [10] 16.92 565.37 16.92(*) 128 slp10 100 300 150 [50 50 50] 705.79 2511.93 715.99 5000 slp11 204 279 147 [56 3 73] 219.93 500.45 222.65 10000 21

Conclusions and future work 1. A primal simplex approach for conic optimization of which the primal simplex method for LP is a special case. 2. The simplex approach exploits the well known facial structure of SOCP problems developed in Pataki (2000). 3. We have the framework for solving conic optimization problems over LP, SOCP and SDP cones. 4. We also have a dual simplex variant which mimics the dual simplex method for LP. 5. Currently investigating fast basis inverse (LU) updates to speed up the algorithm. 6. Future use in warm start after branching or the addition of cutting planes. 22

References F. Alizadeh and D. Goldfarb. Second-order cone programming, Mathematical Programming, 95(2003), pp. 3-51. F. Alizadeh, J.P.A. Haeberly, and M.L. Overton. Complementarity and Nondegeneracy in SDP, Mathematical Programming, 77(1997), pp. 111-128. M.S. Bazaraa, H.D. Sherali and C.M. Shetty. Nonlinear Programming: Theory and Algorithms, 2nd edition, John Wiley 1993. K. Krishnan, G. Pataki, N. Gupta and T. Terlaky. A feasible direction method for SOCP, forthcoming. 23

I. Maros. Computational techniques of the simplex method. Kluwer International Series, 2003. G. Pataki. Cone-LP s and Semidefinite Programs: Geometry and a Simplex-type Method, Proceedings of the 5th IPCO conference, Springer Verlag 1996. G. Pataki. The Geometry of Semidefinite Programming, Handbook of SDP edited by H. Wolkowicz et al., Kluwer Academic Publishers, 2000, pp. 29-65.