1.2 Guidelines for strong formulations  Running time for LP usually depends on m and n ( number of iterations O(m), O(log n)). Not critically depend on.

Slides:



Advertisements
Similar presentations
Branch-and-Bound Technique for Solving Integer Programs
Advertisements

Branch-and-Bound In this handout,  Summary of branch-and-bound for integer programs Updating the lower and upper bounds for OPT(IP) Summary of fathoming.
Introduction to Algorithms
Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013.
Instructor Neelima Gupta Table of Contents Lp –rounding Dual Fitting LP-Duality.
CSCI 3160 Design and Analysis of Algorithms Tutorial 6 Fei Chen.
Solving Integer Programs. Natural solution ideas that don’t work well Solution idea #1: Explicit enumeration: Try all possible solutions and pick the.
Approximation Algorithms
Integer Programming Difference from linear programming –Variables x i must take on integral values, not real values Lots of interesting problems can be.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
(Not in text).  An LP with additional constraints requiring that all the variables be integers is called an all-integer linear program (IP).  The LP.
Decision Procedures An Algorithmic Point of View
1.3 Modeling with exponentially many constr.  Some strong formulations (or even formulation itself) may involve exponentially many constraints (cutting.
Chapter 12 Discrete Optimization Methods
Approximating Minimum Bounded Degree Spanning Tree (MBDST) Mohit Singh and Lap Chi Lau “Approximating Minimum Bounded DegreeApproximating Minimum Bounded.
Linear Programming System of Linear Inequalities  The solution set of LP is described by Ax  b. Gauss showed how to solve a system of linear.
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
15.082J and 6.855J and ESD.78J Lagrangian Relaxation 2 Applications Algorithms Theory.
MILP algorithms: branch-and-bound and branch-and-cut
Chapter 1. Formulations 1. Integer Programming  Mixed Integer Optimization Problem (or (Linear) Mixed Integer Program, MIP) min c’x + d’y Ax +
Chap 10. Integer Prog. Formulations
Integer Programming Li Xiaolei. Introduction to Integer Programming An IP in which all variables are required to be integers is called a pure integer.
I.4 Polyhedral Theory 1. Integer Programming  Objective of Study: want to know how to describe the convex hull of the solution set to the IP problem.
Divide and Conquer Optimization problem: z = max{cx : x  S}
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
1/74 Lagrangian Relaxation and Network Optimization Cheng-Ta Lee Department of Information Management National Taiwan University September 29, 2005.
Chapter 2. Optimal Trees and Paths Combinatorial Optimization
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
Supplementary: Feasible Labels and Linear Programming  Consider the LP formulation of the shortest s-t path problem: (P) Minimize  (i, j)  A c ij x.
Proving that a Valid Inequality is Facet-defining  Ref: W, p  X  Z + n. For simplicity, assume conv(X) bounded and full-dimensional. Consider.
Linear Programming Chap 2. The Geometry of LP  In the text, polyhedron is defined as P = { x  R n : Ax  b }. So some of our earlier results should.
Approximation Algorithms Duality My T. UF.
OR Chapter 4. How fast is the simplex method  Efficiency of an algorithm : measured by running time (number of unit operations) with respect to.
Linear Programming Piyush Kumar Welcome to CIS5930.
Chapter 1. Introduction Ex : Diet Problem
6.5 Stochastic Prog. and Benders’ decomposition
Proving that a Valid Inequality is Facet-defining
Chapter 5. Optimal Matchings
Chap 9. General LP problems: Duality and Infeasibility
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Chapter 6. Large Scale Optimization
Chapter 5. Sensitivity Analysis
Chap 3. The simplex method
Integer Programming (정수계획법)
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Chapter 6. Large Scale Optimization
2. Generating All Valid Inequalities
Chapter 1. Formulations (BW)
2.2 Shortest Paths Def: directed graph or digraph
1.3 Modeling with exponentially many constr.
Chapter 5. The Duality Theorem
Integer Programming (정수계획법)
I.4 Polyhedral Theory (NW)
Flow Feasibility Problems
I.4 Polyhedral Theory.
Proving that a Valid Inequality is Facet-defining
Chapter 8. General LP Problems
Part II General Integer Programming
6.5 Stochastic Prog. and Benders’ decomposition
Chapter 2. Simplex method
Chapter 8. General LP Problems
Chapter 1. Formulations.
Branch-and-Bound Algorithm for Integer Program
1.2 Guidelines for strong formulations
Chapter 6. Large Scale Optimization
Branch-and-Bound Technique for Solving Integer Programs
Chapter 2. Simplex method
1.2 Guidelines for strong formulations
Presentation transcript:

1.2 Guidelines for strong formulations  Running time for LP usually depends on m and n ( number of iterations O(m), O(log n)). Not critically depend on formulation (usually). For IP, the running time is very erratic on different classes of problems and also depends on the choice of formulation significantly.  Reason: most algorithms for IP are basically divide-and-conquer type. If the enumeration tree grows big, running time becomes prohibitive.  recent research efforts mostly focus on preventing the growth of the enumeration tree. Also, there are strong theoretical indication that divide-and-conquer may be the best we can do to solve general IP problems (no efficient algorithms exist). However, recent advances in theory and software make it possible to solve many practically sized problems (very fast in some cases). Integer Programming

 Definition 1.1: The linear relaxation of MIP is obtained by dropping the integrality requirements on integer variables (resulting problem is LP)  Def (NW, p298, in max form) A problem (RP) z R = max { z R (x) : x  S R } is a relaxation of (IP) z IP = max { c’x : x  S } if : (i) S  S R, and (ii) c’x  z R (x) for all x  S. (relaxation may be defined in different solution space (variables))  Prop 1.1) If RP is infeasible, so is IP. If IP is feasible, then z IP  z R. pf) From (i), first statement is true. Now suppose z IP is finite and let x 0 be an optimal solution to IP. Then z IP = c’x 0  z R (x 0 )  z R. Finally, if z IP = , (i) and (ii) imply that z R = .  Integer Programming

 Hence optimal solution to a relaxation provides an upper bound on optimal value (for maximization problem). (Lower bound for minimization problem.)  Typical methods to obtain lower bound  Relaxation  Dual problem  LP relaxation widely used, but there are other types of relaxations: Lagrangian relaxation, combinatorial relaxation, semidefinite relaxation, … Purpose is to obtain lower bound  Upper bound usually obtained by finding a feasible solution. If lower bound = upper bound, it is optimal value (we may need to find the solution additionally)  We usually use divide-and- conquer. If z LP is the lower bound for a subproblem, and z’ is the current best objective value we know (upper bound) and z LP  z’, then we can discard the subproblem since the subproblem does not have a better solution. So it is important to have a good (tight) lower bound to increase the possibility of pruning the subproblem early in the divide-and-conquer (branch-and-bound). Integer Programming

 Suppose we have two formulations A and B for the same problem, and let P A and P B be the polyhedra defined by the LP relaxation of the formulations, respectively. Then, if P A  P B, we have z*  z A  z B. So P A gives tighter lower bound, hence better formulation.  If an optimal solution to the relaxation is feasible to the MIP, then it is also an optimal solution to MIP. Integer Programming

 Ex: Facility location problem Alternative formulation: min  j  N c j y j +  i  M  j  N d ij x ij  j  N x ij = 1,for i  M  i  M x ij  my j,for j  N 0  x ij  1 for i  M, j  N, y j  {0, 1} for j  N  Let P FL = { (x, y)’:  j  N x ij = 1,  i, x ij  y j,  i, j 0  x ij  1, 0  y j  1 } P AFL = { (x, y)’:  j  N x ij = 1,  i,  i  M x ij  my j,  j 0  x ij  1, 0  y j  1 }  P FL  P AFL, and the inclusion can be strict. Hence z FL  z AFL. Integer Programming

6 P FL P AFL conv(F)

 Ideal Formulation (also in Chap 3, BW)  Def: Given a set X  R n, the convex hull of X, denoted conv(X), is defined as: conv(X) = { x : x =  i = 1 t i x i,  i = 1 t i = 1, i  0 for i = 1, …, t over all finite subsets { x 1, …, x t } of X } Assume |X| finite, then  Prop 1.1: conv(X) is a polyhedron. (polytope)  Prop 1.2: The extreme points of conv(X) all lie in X. Props also hold for unbounded integer sets. (NW, p104)  Rationale: to solve IP : max { cx: x  X }, Solve max { cx : x  conv(X) }. The problem is LP and LP has an extreme point optimal solution (simplex method can find it). Integer Programming

 But conv(X) may need lots of inequalities (not a big problem) to describe and/or we may have limited knowledge about the characteristics of the inequalities ( trouble). Good approximation to conv(X) is helpful ( X  conv(X)  P ), we may have stronger bound. Integer Programming

 Ex : The pigeon hole principle Place n+1 pigeons into n holes in such a way that no two pigeons share the same hole. (impossible)  Formulations:  (1.3)  j=1 n x ij = 1,i = 1, …., n+1, x ij + x kj  1, j = 1, …, n, i  k, i, k = 1, …, n+1 x ij  {0, 1}, i = 1, …, n+1, j = 1, …, n  (1.4)  j=1 n x ij = 1,i = 1, …., n+1,  i=1 n+1 x ij  1,j = 1, …., n, x ij  {0, 1}, i = 1, …, n+1, j = 1, …, n  x ij = 1/n for all i, j satisfies LP relaxation of (1.3), but LP relaxation of (1.4) infeasible. Integer Programming