Improved Gomory Cuts for Primal Cutting Plane Algorithms

Similar documents
Lecture 3. Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets. Tepper School of Business Carnegie Mellon University, Pittsburgh

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

THEORY OF LINEAR AND INTEGER PROGRAMMING

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

Pivot and Gomory Cut. A MIP Feasibility Heuristic NSERC

AM 121: Intro to Optimization Models and Methods Fall 2017

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

Math 5593 Linear Programming Lecture Notes

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Integer Programming Theory

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

5.3 Cutting plane methods and Gomory fractional cuts

Investigating Mixed-Integer Hulls using a MIP-Solver

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Optimization Methods in Management Science

Split-Cuts and the Stable Set Polytope of Quasi-Line Graphs

Solutions for Operations Research Final Exam

Integer Programming: Algorithms - 2

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

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

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

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Optimization of Design. Lecturer:Dung-An Wang Lecture 8

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

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

Unit.9 Integer Programming

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

February 19, Integer programming. Outline. Problem formulation. Branch-andbound

Marginal and Sensitivity Analyses

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs

3 INTEGER LINEAR PROGRAMMING

From final point cuts to!-polyhedral cuts

Some Advanced Topics in Linear Programming

The Ascendance of the Dual Simplex Method: A Geometric View

Pure Cutting Plane Methods for ILP: a computational perspective

Lagrangian Relaxation: An overview

A List Heuristic for Vertex Cover

The simplex method and the diameter of a 0-1 polytope

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

Linear programming and duality theory

Duality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1

Part 4. Decomposition Algorithms Dantzig-Wolf Decomposition Algorithm

DETERMINISTIC OPERATIONS RESEARCH

Fundamentals of Integer Programming

Lecture 4: Linear Programming

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

3. The Simplex algorithmn The Simplex algorithmn 3.1 Forms of linear programs

From the Separation to the Intersection Sub-problem in Benders Decomposition Models with Prohibitively-Many Constraints

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

Stable sets, corner polyhedra and the Chvátal closure

Discrete Optimization. Lecture Notes 2

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

Linear Programming Duality and Algorithms

Artificial Intelligence

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Primal Heuristics in SCIP

The Simplex Algorithm. Chapter 5. Decision Procedures. An Algorithmic Point of View. Revision 1.0

The MIP-Solving-Framework SCIP

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

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

Lecture Notes 2: The Simplex Algorithm

Integer Programming Chapter 9

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

COLUMN GENERATION IN LINEAR PROGRAMMING

Optimality certificates for convex minimization and Helly numbers

Algorithms II MIP Details

Separation Algorithms for 0-1 Knapsack Polytopes

Convex Optimization CMU-10725

15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Noncommercial Software for Mixed-Integer Linear Programming

Algorithms for Decision Support. Integer linear programming models

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING

Cutting Planes for Some Nonconvex Combinatorial Optimization Problems

The Simplex Algorithm

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018

Read: H&L chapters 1-6

A Comparison of Mixed-Integer Programming Models for Non-Convex Piecewise Linear Cost Minimization Problems

Integer Programming. Xi Chen. Department of Management Science and Engineering International Business School Beijing Foreign Studies University

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

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

Lecture 19 Subgradient Methods. November 5, 2008

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

Penalty Alternating Direction Methods for Mixed- Integer Optimization: A New View on Feasibility Pumps

Column Generation Based Primal Heuristics

How to use your favorite MIP Solver: modeling, solving, cannibalizing. Andrea Lodi University of Bologna, Italy

Optimality certificates for convex minimization and Helly numbers

Stable sets, corner polyhedra and the Chvátal closure

Experiments On General Disjunctions

CMPSCI611: The Simplex Algorithm Lecture 24

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

11 Linear Programming

Lecture 14: Linear Programming II

3 No-Wait Job Shops with Variable Processing Times

From the Separation to the Intersection Sub-problem in Benders Decomposition Models with Prohibitively-Many Constraints

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

AMS : Combinatorial Optimization Homework Problems - Week V

Selected Topics in Column Generation

Transcription:

Improved Gomory Cuts for Primal Cutting Plane Algorithms S. Dey J-P. Richard Industrial Engineering Purdue University INFORMS, 2005

Outline 1 Motivation The Basic Idea Set up the Lifting Problem How to Solve this Lifting Problem 2 Primal Algorithm Glover s Algorithm Implementation 3 Results Some Computational Results Summary

Information From More than One Constraint? Most cutting planes are generated using one constraint or are based on specific structures. Examples of cuts based on single constraint: Gomory s Fractional Cut Cover Cuts Example of cuts based on specific structure: Cuts based on Variable upper bound Cuts based on Generalized upper bounds Cuts based on mixing polytopes 3

Information From More than One Constraint? Some examples of cuts generation based on multiple rows. Johnson, E. 1974. On the group problem with for mixed integer programming. Math. Programming Study 2.137-179. Koppe, M., Weismantel, R. 2002. Cutting Plane from a mixed interval farkas Lemma. Operations Research Letters 32. 207-211. Marchand, H., Wolsey, L.A. 2001. Aggregation and mixed integer rounding to Solve MIPS. Operations Research.49. 363-371. Martin, A., Weismantel, R. 1998. The intersection of knapsack polyhedron and extensions. Lecture Notes in Computer Science1412, 243-256. 4

Assumptions The feasible region is: a ij x j = b i i T = {1, 2, 3,..., m} (1) j N x j Z + j N (2) We already have a cut: α j x j r (3) j N α j Z j N r Z (4) The feasible region is bounded. There exists a valid point with x k = 0 for the LP relaxation. 5

Improving Coefficients of a Cut We are looking for the best value of β: α j x j + βx k r j N\{k} which is valid for a ij x j = b i i T = {1, 2, 3,..., m} j N x j Z + j N 6

Improving Coefficients of a Cut The value can be determined as: β = min xk Z,x k 1 s.t. r j N\{k} α jx j x k a ij x j = b i i T = {1, 2, 3,..., m} j N x j Z + j N This is difficult to solve! 7

A More Tractable Problem We relax the feasible region: β = min xk Z,x k 1 s.t. r j N\{k} α jx j x k a ij x j = b i i T = {1, 2, 3,..., m} j N x j 0 j N 8

A little Improvement to the Relaxation The approximate β can improved as: β = min xk Z,x k 1 s.t. r j N\{k} α jx j x k a ij x j = b i i T = {1, 2, 3,..., m} j N x j 0 j N 9

The Lifting Problem There is one LP for each integer value of x k. β λ = min r j N\{k} α jx j λ s.t. a ij x j = b i i T = {1, 2, 3,..., m} j N x j 0 j N x k = λ (5) Observation : β = min λ Z,λ 1 βλ Is it possible to reduce the number of LPs to be solved? 10

Definition Variant of the Value Function : Γ(λ) = r + min s.t. j N\{k} j N\{k} α j x j a ij x i + a ik λ = b i i T x j 0 j N \ {k} (6) Whenever the problem is feasible. Observe : β λ = Γ(λ) λ Define µ(λ) to be the optimal dual variables corresponding to the minimization problem in Γ(λ). 11

Some Results Proposition 1: The function Γ is piecewise linear and convex over the domain of λ, and µ(λ) T a k is a subgradient for the function Γ at λ. Lemma 2: If Γ(0) 0, then β j β 1 1. Lemma 3: Assume that Γ(1) exists. If µ(1) T a k Γ(1), then β j β 1. 12

β can be approximated by solving 1 LP Theorem 4: If Γ(0) 0, then, β β, where β 1 if Γ(1) exists and µ(1) T a k Γ(1) β = β 1 1 if Γ(1) exists andµ(1) T a k > Γ(1) 0 if Γ(1) does not exist (7) 13

Improving Gomory s Fractional cut For a tableau row: x Bu + j NB āujx j = b u, Gomory s Fractional cut is: x Bu + j NB ā uj x j b u. All the coefficients are integer in the cut. We can fix a non-basic variable to zero. Since the cut is guaranteed to cut off the fractional point, Γ(0) < 0. Note : Not working with GMIC, because no known primal algorithm which converges using GMIC. 14

Primal Algorithm using Cutting Planes Ben-Israel, A., Charnes A. 1962. On some problems of diophantine programming. Cahiers du Centre d Etudes de Recherche Operationelle. 4, 215-280. Young, R.D. 1965. A primal (all-integer) integer programming algorithm. J. of Res. of the National Bureau of Standards 69B, 213-250. Young, R.D. 1968. A simplified primal(all-integer) integer programming agorithm. Oper. Res. 16, 750-782. Glover, F. 1968. A new foundation for a simplified primal integer programming algorithm. Oper. Res.16, 724-740. Sharma, S., Sharma, B., 1997. New technique for solving primal all-integer linear programming. Opsearch 34. 62-68. Lechford, A., Lodi, A. 2002. Math. Methods of Oper. Res. 56(1), 67-81.

Glover s algorithm Initialization: 1 Start with an existing integer solution with an integer dictionary. 2 A special row is added. Different types of special rows can be added. The one used is P i NB x i M. M was obtained by adding the bounds for each of the nonbasic variables. Entering Column Selection: Select the entering column based on a lexicographical ordering rule. 16

Glover s Algorithm - Contd. Pivoting: If the pivot element is 1 a normal simplex pivot is done. If the pivot element is greater than or equal to 2, a cut is added. Cut Generation 1 The row for cut generation is selected by a specific rule from Glover s algorithm. 2 The Gomory s Fractional cut is generated. We attempt to improve this cut. 3 After adding the cut (improved or otherwise) and pivoting if the new basic variable is a slack variable of some previous added cut, the pivot row is dropped. Optimality Check : If the reduced cost are of the right sign stop else go to step 3. 17

Convergence Result Theorem 5: The variant of Glover s algorithm with improved cuts is convergent. 18

Details on Cut Improvement 1 First the Gomory s fractional cut is generated. 2 Temporary pivoting is done after adding the Gomory s cut. The new reduced costs are found. 3 If the reduced cost is negative then it is divided by the entry in the special row. 4 The resulting vector of reduced costs is sorted in an increasing order. We attempt to improve the coefficients in the above order. 5 This improving process involves finding Γ(1) by solving the Linear program for (6). Then the new coefficient β is found according to Theorem 4. If β is greater than the value in the Gomory s cut it is replaced. 19

One method to reduce computations of LPs corresponding to each variable Solved: min j N\{k 1 } α j x j s.t. a j x j = b a k1 j N\{k 1 } Primal Simplex min j N α j x j s.t. j N a j x j = b a k1 Dual Simplex min α j x j j N\{k 2 } s.t. a j x j = b a k2 j N\{k 2 }

One method to reduce computations of LPs corresponding to each variable Solved: min j N\{k 1 } α j x j s.t. a j x j = b a k1 j N\{k 1 } Primal Simplex min j N α j x j s.t. j N a j x j = b a k1 Dual Simplex min α j x j j N\{k 2 } s.t. a j x j = b a k2 j N\{k 2 }

One method to reduce computations of LPs corresponding to each variable Solved: min j N\{k 1 } α j x j s.t. a j x j = b a k1 j N\{k 1 } Primal Simplex min j N α j x j s.t. j N a j x j = b a k1 Dual Simplex min α j x j j N\{k 2 } s.t. a j x j = b a k2 j N\{k 2 }

Computational Experiment - Problem Instances Random Problems based on Lechford and Lodi [1]. n {5; 10; 15; 20; 25} m {5; 10} Five random instances making 50 total instances. The objective function coefficients are integers generated uniformly between 1 and 10. For the instances with m = 5, the left-hand side coefficients are also integers generated uniformly between 1 and 10. For the instances with m = 10 the matrix is 50% dense. In all cases the right-hand side of each constraint was set to half the sum of the left hand side coefficients. 23

Glover s Algorithm with Gomory Fractional cut No. Rows Columns Reach. Opt. Proved Opt. 1 10 5 5 5 2 10 10 4 1 3 10 15 3 0 4 10 20 1 0 5 10 25 1 0 6 5 5 5 5 7 5 10 4 1 8 5 15 3 0 9 5 20 3 0 10 5 25 1 0 24

Glover s Algorithm with Improved Gomory Fractional cut No. Rows Columns Rh. Opt. Prvd Opt. Imp. Gomory 1 10 5 5 5 2.6 1 2 10 10 5 5 4.6 0.4 3 10 15 5 5 13.2 0.8 4 10 20 5 5 28.4 0.8 5 10 25 4 4 168 2.2 6 5 5 5 5 3 0 7 5 10 5 5 7.2 0.4 8 5 15 5 5 10.4 0.2 9 5 20 5 5 15.6 0.4 10 5 25 5 5 23.2 0.8 25

Results at a Glance The results appear to be as good as results in Lechford and Lodi [1] without using cover cuts and primal heuristics. Out of 1416 cuts only 35 could not be improved. (2.5%) P0033 is solve by 65 improved cuts and 2 Gomory cuts. Could not reach optimal solution for P0201. Reached 500 cut limit. 26

Summary This method seems to be particularly suitable for Primal algorithm since we know which coefficients need to be improved. Even if such a technique is never used in practice - this definitely shows the usefulness of generating cuts based on multiple constraints. Since stronger cutting planes are needed for primal algorithms compared to dual algorithm, this kind of strengthening may be useful in general. Other cuts like cover cuts can also be improved. For MIP, similar results can be proven with slight modifications - but the improvement is only possible for integer variables. 27

Summary This method seems to be particularly suitable for Primal algorithm since we know which coefficients need to be improved. Even if such a technique is never used in practice - this definitely shows the usefulness of generating cuts based on multiple constraints. Since stronger cutting planes are needed for primal algorithms compared to dual algorithm, this kind of strengthening may be useful in general. Other cuts like cover cuts can also be improved. For MIP, similar results can be proven with slight modifications - but the improvement is only possible for integer variables. 28

Summary This method seems to be particularly suitable for Primal algorithm since we know which coefficients need to be improved. Even if such a technique is never used in practice - this definitely shows the usefulness of generating cuts based on multiple constraints. Since stronger cutting planes are needed for primal algorithms compared to dual algorithm, this kind of strengthening may be useful in general. Other cuts like cover cuts can also be improved. For MIP, similar results can be proven with slight modifications - but the improvement is only possible for integer variables. 29

Summary This method seems to be particularly suitable for Primal algorithm since we know which coefficients need to be improved. Even if such a technique is never used in practice - this definitely shows the usefulness of generating cuts based on multiple constraints. Since stronger cutting planes are needed for primal algorithms compared to dual algorithm, this kind of strengthening may be useful in general. Other cuts like cover cuts can also be improved. For MIP, similar results can be proven with slight modifications - but the improvement is only possible for integer variables. 30

Summary This method seems to be particularly suitable for Primal algorithm since we know which coefficients need to be improved. Even if such a technique is never used in practice - this definitely shows the usefulness of generating cuts based on multiple constraints. Since stronger cutting planes are needed for primal algorithms compared to dual algorithm, this kind of strengthening may be useful in general. Other cuts like cover cuts can also be improved. For MIP, similar results can be proven with slight modifications - but the improvement is only possible for integer variables. 31

Thank You.

Appendix References I A. Lechford, A. Lodi. Math. Methods of Oper. Res.. 2002. 56(1), 67-81.