Advanced Methods for MILP Marco Chiarandini Department of - - PowerPoint PPT Presentation

advanced methods for milp
SMART_READER_LITE
LIVE PREVIEW

Advanced Methods for MILP Marco Chiarandini Department of - - PowerPoint PPT Presentation

DM204 Autumn 2013 Scheduling, Timetabling and Routing Lecture 5 Advanced Methods for MILP Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark [ Partly based on slides by David Pisinger, DIKU


slide-1
SLIDE 1

DM204 – Autumn 2013 Scheduling, Timetabling and Routing Lecture 5

Advanced Methods for MILP

Marco Chiarandini

Department of Mathematics & Computer Science University of Southern Denmark

[Partly based on slides by David Pisinger, DIKU (now DTU)]

slide-2
SLIDE 2

Outline

  • 1. Avanced Methods for MILP

Lagrangian Relaxation Dantzig-Wolfe Decomposition Delayed Column Generation

2

slide-3
SLIDE 3

Outline

  • 1. Avanced Methods for MILP

Lagrangian Relaxation Dantzig-Wolfe Decomposition Delayed Column Generation

3

slide-4
SLIDE 4

Relaxation

In branch and bound we find upper bounds by relaxing the problem Relaxation max

s∈P g(s) ≥

  • maxs∈P f (s)

maxs∈S g(s)

  • ≥ max

s∈S f (s)

P: candidate solutions; S ⊆ P feasible solutions; g(x) ≥ f (x) Which constraints should be relaxed? Quality of bound (tightness of relaxation) Remaining problem can be solved efficiently Proper multipliers can be found efficiently Constraints difficult to formulate mathematically Constraints which are too expensive to write up

5

slide-5
SLIDE 5

Different relaxations LP-relaxation Deleting constraint Lagrange relaxation Surrogate relaxation Semidefinite relaxation

Best Lagrangian relaxation relaxation Best surrogate LP relaxation Tighter

Relaxations are often used in combination.

6

slide-6
SLIDE 6

Tightness of relaxation

max cx s.t. Ax ≤ b Dx ≤ d x ∈ Zn

+

LP-relaxation: max {cx : x ∈ conv(Ax ≤ b, Dx ≤ d, x ∈ Z+)} Lagrangian Relaxation: max zLR(λ) = cx − λ(Dx − d) s.t. Ax ≤ b x ∈ Zn

+

LP-relaxation: max {cx : Dx ≤ d, x ∈ conv(Ax ≤ b, x ∈ Z+)}

7

slide-7
SLIDE 7

Surrogate relaxation

Relax complicating constraints Dx ≤ d. Surrogate Relax Dx ≤ d using multipliers λ ≥ 0, i.e., ad dtogether constraints using weights λ zSR(λ) = max cx s.t. Ax ≤ b λDx ≤ λd x ∈ Zn

+

Surrogate Dual Problem zSD = min

λ≥0 zLR(λ)

LP Relaxation: max {cx : x ∈ conv(Ax ≤ b, λDx ≤ λd, x ∈ Z+)} best surrogate relaxation (i.e., best λ multipliers) is tighter than best Lagrangian relax.

8

slide-8
SLIDE 8
slide-9
SLIDE 9

Relaxation strategies

Which constraints should be relaxed "the complicating ones" remaining problem is polynomially solvable (e.g. min spanning tree, assignment problem, linear programming) remaining problem is totally unimodular (e.g. network problems) remaining problem is NP-hard but good techniques exist (e.g. knapsack) constraints which cannot be expressed in MIP terms (e.g. cutting) constraints which are too extensive to express (e.g. subtour elimination in TSP)

10

slide-10
SLIDE 10

Subgradient optimization Lagrange multipliers

max z = cx

  • s. t. Ax ≤ b

Dx ≤ d x ∈ Zn

+

Lagrange Relaxation, multipliers λ ≥ 0 zLR(λ) = max cx − λ(Dx − d)

  • s. t. Ax ≤ b

x ∈ Zn

+

Lagrange Dual Problem zLD = min

λ≥0 zLR(λ)

We do not need best multipliers in B&B algorithm Subgradient optimization fast method Works well due to convexity

11

slide-11
SLIDE 11

Subgradient optimization, motivation

Netwon-like method to minimize a function in one variable Lagrange function zLR(λ) is piecewise linear and convex

12

slide-12
SLIDE 12

Digression: Gradient methods

Gradient methods are iterative approaches: find a descent direction with respect to the objective function f move x in that direction by a step size The descent direction can be computed by various methods, such as gradient descent, Newton-Raphson method and others. The step size can be computed either exactly or loosely by solving a line search problem. Example: gradient descent

  • 1. Set iteration counter t = 0, and make an initial guess x0 for the

minimum

  • 2. Repeat:

3.

Compute a descent direction ∆t = ∇(f (xt))

4.

Choose αt to minimize f (xt − α∆t) over α ∈ R+

5.

Update xt+1 = xt − αt∆t, and t = t + 1

  • 6. Until ∇f (xk) < tolerance

Step 4 can be solved ’loosely’ by taking a fixed small enough value α > 0

13

slide-13
SLIDE 13

Newton-Raphson method

[from Wikipedia] Find zeros of a real-valued derivable function x : f (x) = 0 . Start with a guess x0 Repeat: Move to a better approximation xn+1 = xn − f (xn) f ′(xn) until a sufficiently accurate value is reached. Geometrically, (xn, 0) is the intersection with the x-axis of a line tangent to f at (xn, f (xn)). f ′(xn) = ∆y ∆x = f (xn) − 0 xn − xn+1 .

14

slide-14
SLIDE 14

Subgradient Generalization of gradients to non-differentiable functions. Definition An m-vector γ is subgradient of f (λ) at ¯ λ if f (λ) ≥ f (¯ λ) + γ(λ − ¯ λ) The inequality says that the hyperplane y = f (¯ λ) + γ(λ − ¯ λ) is tangent to y = f (λ) at λ = ¯ λ and supports f (λ) from below

15

slide-15
SLIDE 15

Proposition Given a choice of nonnegative multipliers ¯ λ. If x′ is an optimal solution to zLR(λ) then γ = d − Dx′ is a subgradient of zLR(λ) at λ = ¯ λ. Proof We wish to prove that from the subgradient definition: max

Ax≤b (cx − λ(Dx − d)) ≥ max Ax≤b

  • cx − ¯

λ(Dx − d)

  • + γ(λ − ¯

λ) Let x′ be an opt. solution to f (¯ λ) on the right hand side Inserting γ we get: max

Ax≤b (cx − λ(Dx − d)) ≥ (d − Dx′)(λ − ¯

λ) + (cx′ − ¯ λ(Dx′ − d)) = cx′ − λ(Dx′ − d)

16

slide-16
SLIDE 16

Intuition Lagrange dual: min zLR(λ) = cx − λ(Dx − d) s.t. Ax ≤ b x ∈ Zn

+

Gradient in x′ is γ = d − Dx′ Subgradient Iteration Recursion λk+1 = max

  • λk − θγk, 0
  • where θ > 0 is step-size

If γ > 0 and θ is sufficiently small zLR(λ) will decrease. Small θ slow convergence Large θ unstable

17

slide-17
SLIDE 17

18

slide-18
SLIDE 18

Lagrange relaxation and LP For an LP-problem where we Lagrange relax all constraints Dual variables are best choice of Lagrange multipliers Lagrange relaxation and LP "relaxation" give same bound Gives a clue to solve LP-problems without Simplex Iterative algorithms Polynomial algorithms

19

slide-19
SLIDE 19

Dantzig-Wolfe Decomposition

Motivation: Large difficult IP models ➨ split them up into smaller pieces Applications Cutting Stock problems Multicommodity Flow problems Facility Location problems Capacitated Multi-item Lot-sizing problem Air-crew and Manpower Scheduling Vehicle Routing Problems Scheduling (current research) Leads to methods also known as: Branch-and-price (column generation + branch and bound) Branch-and-cut-and-price (column generation + branch and bound + cutting planes)

21

slide-20
SLIDE 20

Dantzig-Wolfe Decomposition The problem is split into a master problem and a subproblem + Tighter bounds + Better control of subproblem − Model may become (very) large Delayed column generation Write up the decomposed model gradually as needed Generate a few solutions to the subproblems Solve the master problem to LP-optimality Use the dual information to find most promising solutions to the subproblem Extend the master problem with the new subproblem solutions.

22

slide-21
SLIDE 21
slide-22
SLIDE 22
slide-23
SLIDE 23
slide-24
SLIDE 24
slide-25
SLIDE 25
slide-26
SLIDE 26
slide-27
SLIDE 27
slide-28
SLIDE 28
slide-29
SLIDE 29
slide-30
SLIDE 30

Delayed Column Generation

Delayed column generation, linear master Master problem can (and will) contain many columns To find bound, solve LP-relaxation of master Delayed column generation gradually writes up master

33

slide-31
SLIDE 31
slide-32
SLIDE 32

Revised Simplex Method

max {cx | Ax ≤ b, x ≥ 0} B = {1 . . . m} basic variables N = {n + 1 . . . n + m} non-basic variables (will be set to lower bound 0) AB = [A1 . . . Am] AN = [An+1 . . . An+m] Standard form     AN AB b cN cB 1    

35

slide-33
SLIDE 33

Ax = ANxN + ABxB = b ABxB = b − ANxN xB = A−1

B b − A−1 B ANxN

basic feasible solution: XN = 0 AB lin. indep. XB ≥ 0 z = cx = cB(A−1

B b − A−1 B ANxN) + cNxN =

= cBA−1

B b + (cN − cBA−1 B AN)xN

Canonical form     A−1

B AN

I A−1

B b

cT

N − C T B A−1 B AN

1 −cT

B A−1 B b

   

36

slide-34
SLIDE 34

The objective function is obtained by multiplying and subtracting constraints by means of multipliers π (the dual variables) z =

p

  • j=1
  • cj −

p

  • i=1

πiaij

  • xj +

p+q

  • j=p+1
  • cj −

p

  • i=1

πiaij

  • xj +

p

  • i=1

πibi Each basic variable has cost null in the objective function cj −

p

  • i=1

πiaij = 0 = ⇒ π = cBA−1

B

Reduced costs of non-basic variables: cj −

p

  • i=1

πiaij

37

slide-35
SLIDE 35

Dantzig Wolfe Decomposition with Column Generation

[illustration by Simon Spoorendonk, DIKU]

38

slide-36
SLIDE 36
slide-37
SLIDE 37
slide-38
SLIDE 38
slide-39
SLIDE 39

Questions Will the process terminate? Always improving objective value. Only a finite number of basis solutions. Can we repeat the same pattern? No, since the objective function is improved. We know the best solution among existing columns. If we generate an already existing column, then we will not improve the objective.

42

slide-40
SLIDE 40

Tailing off effect Column generation may converge slowly in the end We do not need exact solution, just lower bound Solving master problem for subset of columns does not give valid lower bound (why?) Instead we may use Lagrangian relaxation of joint constraint “guess” lagrangian multipliers equal to dual variables from master problem

44

slide-41
SLIDE 41

Dual Bounds

Linear relaxation of the reduced master problem: zLRMP = max

  • cλ | ¯

Aλ ≤ b, λ ≥ 0

  • Note: ZLRMP ≥ zLMP (LMP Lin. relax. master problem)

However, during colum generation we have access to a dual bound so that we can terminate the process when a desired solution quality is reached. When we know that

  • j∈J

λj ≤ κ for an optimal solution of the master, we cannot improve zRMP by more than κ times the largest reduced cost obtained by the Pricing Problem (PP): zRMP + κzPP ≤ zMP (It can be shown that this bound coincide with the Lagrangian dual bound.) with convexity constraints

j∈J λj ≤ 1 then κ = 1

when c = 1 then κ = zMP and

zRMP 1−zPP ≤ zMP

45

slide-42
SLIDE 42

Convergence in CG

For a problem of minimum:

[plot by Stefano Gualandi, Milan University]

46

slide-43
SLIDE 43

Row and Column Generation

In problems with many rows we can generate then like done in column generation. Cutting plane methods where the pricing problem is the separation problem. Combining the two: column generation cannot ignore the missing rows. Existing approaches are problem specific.

47

slide-44
SLIDE 44

Mixed Integer Linear Programs

The primary use of column generation is in this context (in LP simplex is better) column generation re-formulations often give much stronger bounds than the original LP relaxation Often column generation referred to as branch-and-price

48

slide-45
SLIDE 45

Branch-and-Price

Terminology

Master Problem Restricted Master Problem Subproblem or Pricing Problem Branch and cut: Branch-and-bound algorithm using cuts to strengthen bounds. Branch and price: Branch-and-bound algorithm using column generation to derive bounds.

49

slide-46
SLIDE 46

Branch-and-price

LP-solution of master problem may have fractional solutions Branch-and-bound for getting IP-solution In each node solve LP-relaxation of master Subproblem may change when we add constraints to master problem Branching strategy should make subproblem easy to solve

50

slide-47
SLIDE 47
slide-48
SLIDE 48

[illustration by Stefano Gualandi, Milan Un.]

(the pricing problem is for a GCP)

52

slide-49
SLIDE 49

Heuristic solution (eg, in sec. 12.6) Restricted master problem will only contain a subset of the columns We may solve restricted master problem to IP-optimality Restricted master is a “set-covering-like” problem which is not too difficult to solve

53

slide-50
SLIDE 50

References

Fisher M.L. (2004). The Lagrangian relaxation method for solving integer programming problems. Management Science, 50(12), pp. 1861–1871. This article originally appeared in Management Science, January 1981, Volume 27, Number 1, pp. 1-18, published by The Institute of Management Sciences. Lübbecke M.E., Cochran J.J., Cox L.A., Keskinocak P., Kharoufeh J.P., and Smith J.C. (2010). Column Generation. John Wiley & Sons, Inc.

54