Dantzig-Wolfe bound and Dantzig-Wolfe cookbook thst@man.dtu.dk DTU-Management Technical University of Denmark 1
Outline LP strength of the Dantzig-Wolfe The exercise from last week... The Dantzig-Wolfe cookbook 2
Dantzig-Wolfe bound strength I have previously stated that the main reason for using DZ is speed. This is not entirely true: The LP bound can be strengthened using Dantzig-Wolfe! 3
Example from last time 4 Objective 3 2 A1 A2 1 1 2 3 4 4
Example from last time: MIP version 4 Objective 3 2 A1 A2 1 Optimum 1 2 3 4 5
Example from last time: MIP version 4 LP optimum IP optimum Objective 3 2 A1 A2 1 Convex hull optimum 1 2 3 4 6
Condition for bound improvement So, besides improving the speed of LP solution, we can get an improved bound if: The sub-problem (A 2 ) has non-integral solution property So we have to solve an integer problem which is hard in the sub-problem... We may need specialized algorithms... We may be able to improve solution speed if a number of smaller sub-problems are created. 7
Job planning under budget constraint i: Jobs to perform j: Persons to perform job C i,j : Cost if person j performs job i T i,j : Training cost to train j for job i 8
Direct model Min: s.t.: i,j C i,j x i,j i,j x i,j = 1 j i j x i,j = 1 i T i,j x i,j 18 x i,j [0, 1] 9
The possibilities of decomposition Which constraint should be removed? The assignment constraints? The sub-problem creates full schedules assigning all jobs to all persons The master problem selects combinations of the schedules. The budget constraint??? 10
1 Sub-problem (only the constraints) Min: c r s =??? s.t.: x i,j = 1 j i x i,j {0,1} Notice: α 0 and β R j x i,j = 1 i 11
1 Master problem Min: C s y s s.t.: T s y s 18 (α 0) s s y s = 1 (β R) s y s [0, 1] 12
1 Sub-problem Min: c r s = i,j C i,j x i,j α i,j T i,j x i,j β = i,j (C i,j α T i,j )x i,j β s.t.: x i,j = 1 j i j x i,j {0,1} x i,j = 1 i Notice: α 0 and β R 13
2 decomposition The budget constraint: The schedules are now job selections which obeys the training budget constraint. The master problem job is then to mix (fractionally) the different schedules The subproblem is then a knapsack problem... 14
2 Sub-problem (without objective function) Min: c i,j =??? s.t.: T i,j x i,j 18 i,j x i,j {0,1} Notice: α j R and β i R 15
2 Master problem Min: C s y s s.t.: A s jy s = 1 j (α j R) s s s B s iy s = 1 i (β i R) y s = 1 (γ R) s y s [0, 1] 16
2 Sub-problem Min: c i,j = C i,j x i,j i,j j α j β i x i,j γ x i,j i i j = i,j (C i,j α j β i )x i,j γ s.t.: T i,j x i,j 18 i,j x i,j {0,1} Notice: α j R and β i R 17
Dantzig-Wolfe cookbook Write up the original MIP problem (carefully!) Write up dual variables for each type of constraints and set dual variable bounds Move set of constraints (A 2 ) to sub-problem (ignore the sub-problem objective for now). WHAT IS THE SUB-PROBLEM INTUITIVELY??? What does one solution correspond to? 18
Dantzig-Wolfe cookbook Write up the master problem, with the new variables, both constraints and objective function Finally, write up the sub-problem objective: minc red =(c π A 1 )x α, i.e. the original cost minus the column times the dual variables. Open question: How should the sub-problem be solved? 19