220 likes | 388 Views
Method of Column Generation Used in IP Jan Pelikán , Jan Fábry. ___________________________________________________________________________ MME 2004, Brno. Integer Programming Models. Discrete variables: NP-hard problems.
E N D
Method of Column GenerationUsed in IPJan Pelikán, Jan Fábry ___________________________________________________________________________ MME 2004, Brno
Integer Programming Models Discrete variables: NP-hard problems ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Standard Branch and Bound Method • Non-polynomial method (exponential number of branches) • Estimation of the optimal objective value
Modifications of Branch and Bound Method ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno • Branch and Cut Algorithm (Row Generation) • Branch and Price Algorithm (Column Generation)
3 4 6 1 2 5 Branch and Cut Example – Traveling Salesperson Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Solution w/o Restriction of Partial Cycles
3 4 6 1 2 5 Branch and Cut Example – Traveling Salesperson Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Constraint Generation
Branch and Cut ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Reduction of Constraints !
Branch and Price ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Reduction of Variables !
Dantzig-Wolfe Decomposition ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno
Dantzig-Wolfe Decomposition ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Extreme Points of G
Dantzig-Wolfe Decomposition ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno
Dantzig-Wolfe Decomposition Master Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno
Dantzig-Wolfe Decomposition Master Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Reduction of Columns Reduced Problem
Dantzig-Wolfe Decomposition Reduced Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno
Dantzig-Wolfe Decomposition Optimality ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno ? Optimal SOL of Master Problem(and original problem) Optimal SOL of Reduced Problem Optimality Test on Columns in {1,2,…,r}-L(Columns from MP, missed in RP)
Dantzig-Wolfe Decomposition Optimality ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Optimality Test on Columns in {1,2,…,r}-L(Columns from MP, missed in RP) non-optimalSOL Opt. SOL of dual to RP
Column Generation ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Optimal SOL of RP isOptimal SOL of MP Sub-problem New Column Generation
Algorithm of Column Generation L = initial set of columns ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Solve Reduced Problem with L Solve Sub-Problem with New Column Generation: Optimum
Rolls 28 cm 26 cm 21 cm 18 cm 15 cm Demand 120 100 80 150 180 Example – Cutting Stock Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Stock of rolls: standard width 100 cm Standard IP model: 67 possible patterns
Pattern P1 P2 … Pn Demand w1 a11 a12 … a1n d1 w2 a21 a22 a2n d2 … … … … … … wm am1 am2 … amn dm Standard IP Model ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno
Pattern P1 P2 … Pm Demand w1 a11 0 … 0 d1 w2 0 a22 0 d2 … … … … … … wm 0 0 … amm dm Column Generation Initial patterns Reduced Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno
Column Generation Sub-Problem – Integer Knapsack Problem ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno New PatternGeneration yi= number of the rolls of width wi in the generated pattern.
Pattern P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 28 cm 3 0 0 0 0 0 1 3 0 1 0 2 26 cm 0 3 0 0 0 3 0 0 0 0 2 1 21 cm 0 0 4 0 0 1 2 0 0 0 0 0 18 cm 0 0 0 5 0 0 0 0 3 4 1 1 15 cm 0 0 0 0 6 0 2 1 3 0 2 0 Use 0 0 0 0 0 2 39 14 0 25 44 7 Cutting Stock Problem Results ___________________________________________________________________________ Method of Column Generation Used in Integer Programming MME 2004, Brno Initial Patterns Genrated Patterns 131