Lagrangean relaxation

Similar documents
3.10 Lagrangian relaxation

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs

Lagrangian Relaxation in MIP

Lecture 7: Lagrangian Relaxation and Duality Theory

In the original knapsack problem, the value of the contents of the knapsack is maximized subject to a single capacity constraint, for example weight.

and to estimate the quality of feasible solutions I A new way to derive dual bounds:

Lecture 3: Lagrangian duality and algorithms for the Lagrangian dual problem

Benders Decomposition

Minimum cost transportation problem

3.4 Relaxations and bounds

to work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting

Section Notes 9. Midterm 2 Review. Applied Math / Engineering Sciences 121. Week of December 3, 2018

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation

Lagrange duality. The Lagrangian. We consider an optimization program of the form

maxz = 3x 1 +4x 2 2x 1 +x 2 6 2x 1 +3x 2 9 x 1,x 2

Foundations of Operations Research

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

BBM402-Lecture 20: LP Duality

14. Duality. ˆ Upper and lower bounds. ˆ General duality. ˆ Constraint qualifications. ˆ Counterexample. ˆ Complementary slackness.

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming

Duality of LPs and Applications

Primal/Dual Decomposition Methods

where X is the feasible region, i.e., the set of the feasible solutions.

1 Review Session. 1.1 Lecture 2

On the knapsack closure of 0-1 Integer Linear Programs. Matteo Fischetti University of Padova, Italy

Topic: Primal-Dual Algorithms Date: We finished our discussion of randomized rounding and began talking about LP Duality.

Reformulation and Decomposition of Integer Programs

Section Notes 9. IP: Cutting Planes. Applied Math 121. Week of April 12, 2010

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini

3. Linear Programming and Polyhedral Combinatorics

Operations Research Lecture 6: Integer Programming

Applications of Linear Programming

ICS-E4030 Kernel Methods in Machine Learning

Chapter 1 Linear Programming. Paragraph 5 Duality

Lecture 9: Dantzig-Wolfe Decomposition

min3x 1 + 4x 2 + 5x 3 2x 1 + 2x 2 + x 3 6 x 1 + 2x 2 + 3x 3 5 x 1, x 2, x 3 0.

Discrete (and Continuous) Optimization WI4 131

Lecture #21. c T x Ax b. maximize subject to

Lagrangian Duality Theory

3.10 Column generation method

3.7 Cutting plane methods

Solving Dual Problems

Convex Optimization and SVM

Structural and Multidisciplinary Optimization. P. Duysinx and P. Tossings

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

Lecture 15 (Oct 6): LP Duality

3.10 Column generation method

Decomposition Methods for Integer Programming

CO 250 Final Exam Guide

IP Duality. Menal Guzelsoy. Seminar Series, /21-07/28-08/04-08/11. Department of Industrial and Systems Engineering Lehigh University

Lectures 6, 7 and part of 8

8. Geometric problems

Integer Programming ISE 418. Lecture 16. Dr. Ted Ralphs

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

Part 1. The Review of Linear Programming

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

Interior Point Algorithms for Constrained Convex Optimization

Planning and Optimization

3.7 Strong valid inequalities for structured ILP problems

Lecture 10: Linear programming duality and sensitivity 0-0

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

Section Notes 8. Integer Programming II. Applied Math 121. Week of April 5, expand your knowledge of big M s and logical constraints.

Numerical Optimization

Conic optimization under combinatorial sparsity constraints

Uses of duality. Geoff Gordon & Ryan Tibshirani Optimization /

Optimization for Communications and Networks. Poompat Saengudomlert. Session 4 Duality and Lagrange Multipliers

1 Column Generation and the Cutting Stock Problem

Convex Optimization and Support Vector Machine

4y Springer NONLINEAR INTEGER PROGRAMMING

LINEAR PROGRAMMING. Relation to the Text (cont.) Relation to Material in Text. Relation to the Text. Relation to the Text (cont.

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

3. Linear Programming and Polyhedral Combinatorics

Integer Programming: Cutting Planes

Operations Research Methods in Constraint Programming

Interior Point Methods in Mathematical Programming

Linear Programming. Larry Blume Cornell University, IHS Vienna and SFI. Summer 2016

Constrained Optimization and Lagrangian Duality

Slack Variable. Max Z= 3x 1 + 4x 2 + 5X 3. Subject to: X 1 + X 2 + X x 1 + 4x 2 + X X 1 + X 2 + 4X 3 10 X 1 0, X 2 0, X 3 0

Lecture 8: Column Generation

5. Duality. Lagrangian

Combinatorial Optimization

21. Solve the LP given in Exercise 19 using the big-m method discussed in Exercise 20.

Duality. Lagrange dual problem weak and strong duality optimality conditions perturbation and sensitivity analysis generalized inequalities

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

Advanced linear programming

Lecture 8 Plus properties, merit functions and gap functions. September 28, 2008

LP. Kap. 17: Interior-point methods

Summary of the simplex method

12. Interior-point methods

Integer Programming. Wolfram Wiesemann. December 6, 2007

Linear and Combinatorial Optimization

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

Convex Optimization Boyd & Vandenberghe. 5. Duality

2.3 Linear Programming

Linear and Integer Optimization (V3C1/F4C1)

The Strong Duality Theorem 1

Tutorial on Convex Optimization: Part II

Introduction to integer programming II

CS711008Z Algorithm Design and Analysis

Transcription:

Lagrangean relaxation Giovanni Righini Corso di Complementi di Ricerca Operativa

Joseph Louis de la Grange (Torino 1736 - Paris 1813)

Relaxations Given a problem P, such as: minimize z P (x) s.t. x X P a problem R, such as: minimize z R (x) s.t. x X R is a relaxation of P if and only if these two conditions hold: X P X R z R (x) z P (x) x X P. As a consequence z R z P. The optimal value of the relaxation is not worse than the optimal value of the original problem.

Duality Given a problem P, such as: minimize z P (x) s.t. x X its dual problem D has the form: maximize w D (y) s.t. y Y and the following property holds (Weak Duality Theorem): x X, y Y w D (y) z P (x). In particular y Y w D (y) z P.

Dual bounds Combinatorial optimization problems are in general NP-hard and we usually resort to implicit enumeration to solve them to optimality (this is also useful for approximation purposes). Two main methods for implicit enumeration are: branch-and-bound, dynamic programming. In branch-and-bound algorithms we must associate a dual bound with every sub-problem. There are two main techniques to compute a dual bound to a given (sub-)problem: solving a relaxation to optimality (z R z P ), finding a feasible solution for its dual (sub-)problem ( y Y w D (y) z P ).

Consider this problem P: Lagrangean relaxation P)minimize z P (x) =c T x A Lagrangean relaxation of P is: s.t. A 1 x b 1 A 2 x b 2 x 0 integer LR)minimize z LR (x, λ) =c T x+λ T (b 1 A 1 x) s.t. A 2 x b 2 x 0 integer Violations of the relaxed constraints are penalized in the objective function by means of Lagrangean multipliers λ 0.

Is it a relaxation? P)min z P (x) =c T x s.t. A 1 x b 1 A 2 x b 2 x 0 integer LR)min z LR (x, λ) =c T x + λ T (b 1 A 1 x) s.t. A 2 x b 2 x 0 integer We indicate with Q the feasible region of the relaxed problem. X P Q because constraints A 1 x b 1 have been relaxed. x X P A 1 x b 1. So λ 0, λ T (b 1 A 1 x) 0 and hence z LR (x, λ) z P (x).

Variations Lagrangean relaxation can also be applied to equality constraints. In this case λ is unrestricted in sign. Lagrangean relaxation can also be applied to non-linear constraints.

Relaxations, relaxations, relaxations... Relaxations can be obtained in many different ways. Linear relaxation is: P)minimize z P (x) =c T x s.t. A 1 x b 1 A 2 x b 2 x 0 integer LP)minimize z LP (x) =c T x s.t. A 1 x b 1 A 2 x b 2 x 0

Relaxations, relaxations, relaxations... Relaxations can be obtained in many different ways. Lagrangean relaxation is: P)minimize z P (x) =c T x s.t. A 1 x b 1 A 2 x b 2 x 0 integer LR)minimize z LR (x, λ) =c T x + λ T (b 1 A 1 x) s.t. A 2 x b 2 x 0 integer

Relaxations, relaxations, relaxations... Relaxations can be obtained in many different ways. Surrogate relaxation is: P)minimize z P (x) =c T x s.t. A 1 x b 1 SR)minimize z SR (x) =c T x A 2 x b 2 x 0 integer s.t. λ T A 1 x λ T b 1 A 2 x b 2 x 0 integer

Lagrangean dual problem For each choice of the Lagrangean multipliers λ 0, we obtain a different instance, providing a different dual bound. Example (Set Covering). The Lagrangean dual problem asks for the best Lagrangean multipliers λ : LD) zld = max λ 0 {z LR (λ) = min {z LR(x, λ) = c T x + λ T (b 1 A 1 x)}}. x Q This gives us the best dual bound that can be obtained from the Lagrangean relaxation of constraints A 1 x b 1. But a duality gap may still exist between z LD and z P.

Complementary slackness If the optimal solution x for problem LR is also feasible for P, this does not guarantee that x is also optimal for P. This is true only if the penalty terms are null. Primal optimality requires both: feasibility: x X P, i.e. A 1 x b 1 complementarity: λ T (b 1 A 1 x ) = 0. When equality constraints are relaxed, the two conditions coincide.

Example (1) P) max z P (x) =7x 1 + 2x 2 s.t. x 1 + 2x 2 4 5x 1 + x 2 20 2x 1 2x 2 7 x 1 2 x 2 4 x Z 2 + x 2 conv(x) conv(q) X Q x 1

Example (2) LR) max z LR (x, λ) = =(7+λ)x 1 + (2 2λ)x 2 +4λ s.t. 5x 1 + x 2 20 2x 1 2x 2 7 x 1 2 x 2 4 x Z 2 + Q = {(2, 2),..., (4, 0)}. Q is the polyhedron defined by the linear constraints of LR. x 2 conv(x) conv(q) X Q x 1

Primal viewpoint The objective function z LR (x, λ) can be seen as... a function of x for λ fixed; a function of λ for x fixed. Primal viewpoint. For each given λ 0 we have z LR (λ) = max{z LR(x, λ) : x Q}. Since constraints and objectives are linear: z LR(λ) = max{z LR (x, λ) : x conv(q)}. This is a linear programming problem, where the orientation of the objective function depends on λ.

Primal viewpoint (example). For 0 λ 1 9 zlr (λ) = z((3, 4), λ) = 29 λ. x 2 Q For λ 1 9 zlr (λ) = z((4, 0), λ) = 28 + 8λ. Hence z LD = min λ 0 {z LR (λ)} = z LR ( 1 9 ) = z LR((3, 4), 1 9 ) = z LR ((4, 0), 1 9 ) = 28 + 8 9. conv(x) conv(q) X x 1

Dual viewpoint For each given x i Q, z LR (x i, λ) is an affine function of λ. Hence z LR (λ) = max{z LR(x i, λ) : x i Q, λ 0} is piecewise linear and convex. z LR (λ) = z LR((3, 4), λ) for 0 λ 1 9 z LR (λ) = z LR((4, 0), λ) for λ 1 9. 28 + 8/9 z LR(x i, ) z LR((4,0), ) z LR((3,1), ) z LR((3,2), ) z LR((3,3), ) Then z LR((3,4), ) zld = min{z LR (λ) : λ 0} = = z LR( 1 9 ) = 28 + 8 9. z LR((2,2), ) z LR((2,3), ) 18 1/9 z LR((2,4), )

In our example when λ = 1 9 we have z LR (λ) = 28 + 8 9. Consider the point x = 8 9 (3, 4) + 1 9 (4, 0), which is a convex combination of two integer points of Q. Point x is the intersection point between the segment joining the two integer points and the relaxed constraint. 28 + 8 9 = z LR((3, 4), 1 9 ) = z LR((4, 0), 1 9 ) = z LR(x, 1 9 ) = In general: = c T x + 1 9 (4 ( x 1 + 2x 2 )) = ct x. z LD = max{ct x : A 1 x b 1, x conv(q)}. There exists a convex combination x of points of Q, which satisfies the relaxed constraints and such that the value of the objective function in x is equal to zld. Finding this convex combination which satisfies the relaxed constraints and maximizes the original objective function is a linear problem and it is the dual of the Lagrangean dual.

How good is Lagrangean relaxation? Let define R = {x R n + : A 1x b 1 }. conv(x P ) = conv(q R) conv(q) R Hence: z P = max{ct x : x X P } = max{c T x : x conv(x P )} = max{c T x : x conv(q R)} max{c T x : x conv(q) R} = z LD. The duality gap z LD z P depends on the relationship between X P and Q (and then R) and from the coefficients c. z LD = z P c if and only if conv(q R) = conv(q) R. In our example they do not coincide: z LD = 28 + 8 9 and z P = 28.

Lagrangean vs. linear relaxation When the relaxed problem is a discrete one, it is interesting to compare the dual bound zld that can be obtained from Lagrangean relaxation with the dual bound zlp which is (easily) obtained from linear relaxation. zld = z LP c if all extreme points of the polyhedron {x R n + : A 2 x b 2 } are integer, i.e. Q = conv(q). In our example this does not occur and we have z LP = 30 + 2 11 > z LD = 28 + 8 9. If we relaxed all constraints but the last two, we would obtain a feasible region Q with integer extreme points. In that case we would have z LP = z LD = 30 + 2 11.

Lagrangean vs. linear relaxation Summing up: and then conv(x P ) conv(q) R {x R n + : Ax b} z P z LD z LP. In general the best dual bound given by Lagrangean relaxation is tighter than the dual bound given by linear relaxation. They are equivalent when the relaxed problem has the integrality property (all integral extreme points).

Special cases For some particular orientation of the objective function the bounds can be the same even if the general conditions for equivalence are not satisfied. With c 1 : z P = z LD = z LP. With c 2 : z P < z LD = z LP. With c 3 : z P < z LD < z LP. With c 4 : z P = z LD < z LP. x 2 c 4 X conv(x) Q c 3 c 2 conv(q) c 1 x 1

Approximation properties z LD z P ɛ λ 0, x X P : λ T (b 1 A 1 x) δ 1 z LR (λ) z LR(x, λ) δ 2 δ 1 + δ 2 ɛ. Therefore we can have z LD = z P only if there exist λ 0 and x X P such that these two conditions hold: Optimality of the solution of LR: z LR (λ) = z LR(x, λ) Complementary slackness: λ T (b 1 A 1 x) = 0. We can evaluate the distance from optimality if we know δ 1 : the error due to the choice of x in the LR δ 2 : the error due to the choice of λ.

Lagrangean relaxation and problem decomposition (1) A typical application of Lagrangean relaxation is to relax coupling constraints: this allows to decompose the problem into independent sub-problems. Example: Uncapacitated facility location problem. M N N min z P (x, y) = c ij x ij + f j y j i=1 j=1 j=1 N s.t. x ij = ( )1 j=1 x ij y j y B n i = 1,..., M i = 1,..., M j = 1,..., N

Lagrangean relaxation and problem decomposition (2) Relaxing the first set of constraints we have penalties of the form M i=1 λ i(1 N j=1 x ij): M N N N min z LR (x, y, λ) = (c ij λ i )x ij + f j y j + i=1 j=1 s.t. x ij y j y B n j=1 i=1 λ i i = 1,..., M j = 1,..., N This can be decomposed into N independent subproblems: M min z j (x, y, λ) = (c ij λ i )x ij + f j y j i=1 s.t. x ij y j x ij 0 y j {0, 1} i = 1,..., M i = 1,..., M that can be easily solved.

Which relaxation should we choose? There is a trade-off between three criteria: How many constraints do we relax? (n. of Lagrangean multipliers) How difficult the relaxed problem is? (computing time) Does the relaxed problem have the integrality property? (tightness of the dual bound)

An example Consider for instance the Generalized Assignment Problem. M N min z P (x) = c ij x ij i=1 j=1 N s.t. x ij = ( )1 j=1 M a ij x ij b j i=1 x B M N i = 1,..., M j = 1,..., N We can relax the red constraints, the blue constraints or both: we get three different relaxations.

Lagrangean relaxation 1 Penalty terms of constraints N j=1 x ij = ( )1 i = 1,..., M have the form: M N λ i (1 x ij ). Then we obtain: i=1 j=1 M N M min zlr(x, 1 λ) = (c ij λ i )x ij + i=1 j=1 i=1 M s.t. a ij x ij b j i=1 x B M N λ i j = 1,..., N This relaxation: requires M multipliers, implies solving N knapsack problem instances, does not have the integrality property.

Lagrangean relaxation 2 Penalty terms of constraints M i=1 a ijx ij b j j = 1,..., N have the form: N M µ j ( a ij x ij b j ). Then we obtain: min z 2 LR(x, µ) = This relaxation: s.t. j=1 i=1 j=1 i=1 M N N (c ij +a ij µ j )x ij µ j b j N x ij = ( )1 j=1 x B M N requires N multipliers, j=1 implies solving M trivial problem instances, does have the integrality property. i = 1,..., M

Lagrangean relaxation 3 Relaxing both sets of constraints, we obtain: M N M N min zlr(x, 3 λ, µ) = (c ij λ i +a ij µ j )x ij + λ i µ j b j i=1 j=1 i=1 j=1 s.t. x B M N This relaxation: requires M + N multipliers, implies solving M + N very trivial problem instances, does have the integrality property.

How do we solve the Lagrangean dual problem? The Lagrangean dual problem consists of minimizing a piecewise linear and convex function in a space with as many dimensions as the number of Lagrangean multipliers. Convexity: good news. There are no sub-optimal local minima. Piecewise linearity: bad news. First order partial derivatives (gradient vector) are not continuous everywhere. It is a linear programming problem with as many constraints as the number of integer points in Q. To solve this problem we can use one of several approximation methods: sub-gradient optimization, multiplier adjustment, dual ascent.

Sub-gradient optimization (1) It is a local search algorithm that iteratively moves from a current point λ (k) to a next point λ (k+1) with a step of length σ (k) in the direction opposite of the sub-gradient b Ax (λ (k) ). Begin Inizialize λ (0) ; k:=0; while not EndTest do Solve max z LR (x, λ (k) ) = c T x + λ (k)t (b Ax) s.t. x Q; Obtain x (λ (k) ); Choose σ (k) ; λ (k+1) := max{λ (k) σ (k) (b Ax (λ (k) )), 0}; k := k + 1; end while End The sub-gradient algorithm is not monotonic: it is necessary to save the best value encountered so far.

Sub-gradient optimization (2) Initialization is usually not important. The algorithm is not sensitive to it. The end test succeeds when no improvements are observed after a given number of iterations. The step can be chosen with some heuristic rule. Rule of thumb (a). If lim k k i=1 σ(i) = and lim k σ (k) = 0, then the sub-gradient algorithm converges to the optimal value of the Lagrangean dual. Rule of thumb (b). If σ (k) = σ (0) ρ k with ρ < 1, then it converges to optimality provided that µ (0) and ρ are large enough.

Beasley s rules of thumb: Sub-gradient optimization (3) Normalize the right hand sides of the relaxed constraints to 1; Choose 0 < π 2; Choose λ (0) arbitrarily; Define a scalar step σ = π z z LR (λ(0),x ) i max{g i, where,0} 2 z is the value of a feasible solution (possibly increased by a small percentage); x is the optimal solution of LR(λ (0) ); zlr(λ (0), x ) is the corresponding optimal value; i is the index spanning all relaxed constraints; G i = b i x ; n j=1 a ijxj Update λ i := max{0, λ i + σg i }; is the sub-gradient of constraint i evaluated in Halve π when the best value does not improve for a certain number of iterations; Stop after a prescribed number of iterations of when π becomes small enough.

Lagrangean heuristics The information provided by the optimal solution of the Lagrangean relaxation (corresponding to a dual bound), is used to build a primal feasible solution. Example (Set Covering). Lagrangean heuristics must be tailored to each specific problem and relaxation. This allows to compute primal bounds every time dual bounds are computed in a branch-and-bound algorithm.

Variable fixing After solving a Lagrangean relaxation, we have: a reduced cost for each variable, a gap between a primal and a dual bound. If the reduced cost is larger than the gap, the current value of the variable can be fixed. Example (Set covering).

Given a problem Lagrangean decomposition (1) min c T x s.t. A 1 x b 1 A 2 x b 2 x B n we can transform it into the equivalent problem min c T x + (c c ) T y s.t. A 1 x b 1 A 2 y b 2 x = y x, y B n Now we can relax the coupling constraint x = y and decompose.

Lagrangean decomposition (2) From the Lagrangean relaxation of the coupling constraints (equalities) we have: which decomposes into min c T x + (c c ) T y + λ T (x y) s.t. A 1 x b 1 A 2 y b 2 x, y B n min (c + λ) T x s.t. A 1 x b 1 x B n min (c c λ) T y s.t. A 2 y b 2 y B n