Eliminating redundant columns from column generation subproblems using classical Benders’ cuts
Marco L¨ ubbecke 1 Stephen Maher 2 Jonas Witt 1
1RWTH Aachen University 2Lancaster University
Eliminating redundant columns from column generation subproblems - - PowerPoint PPT Presentation
Eliminating redundant columns from column generation subproblems using classical Benders cuts ubbecke 1 Stephen Maher 2 Jonas Witt 1 Marco L 1 RWTH Aachen University 2 Lancaster University SCIP workshop 2018 Aachen 08/03/2018
1RWTH Aachen University 2Lancaster University
p.2
p.2
p.2
p.2
p.3
p.3
p.3
p.3
p.3
p.3
p.4
◮ until now: only domain propagation for tighter variable bounds
◮ this talk: add inequalities/cuts to subproblems p.4
◮ until now: only domain propagation for tighter variable bounds
◮ this talk: add inequalities/cuts to subproblems
p.4
p.5
p.5
1
2
1 ¯
2 ¯
p.5
p.6
p.6
p.6
p.6
p.6
p.7
p.7
p.7
p.7
p.8
1 if πc = 0:
p.8
1 if πc = 0:
2 if πc < 0, normalize πc = −1:
p.8
1 if πc = 0:
2 if πc < 0, normalize πc = −1:
◮ alternative way without objective constraints:
p.8
1
2
◮ check redundancy with LP ◮ if redundant, add subproblem cut 3
1 p.9
1
2
◮ check redundancy with LP ◮ if redundant, add subproblem cut 3
1
p.9
1
2
◮ check redundancy with LP ◮ if redundant, add subproblem cut 3
1
p.9
◮ callbacks SEPAEXECLP and SEPAEXECSOL reduce the domain
◮ cuts are by default only separated in the pricing loop
◮ propagation of domain reductions p.10
◮ callbacks SEPAEXECLP and SEPAEXECSOL reduce the domain
◮ cuts are by default only separated in the pricing loop
◮ propagation of domain reductions
p.10
◮ callbacks SEPAEXECLP and SEPAEXECSOL reduce the domain
◮ cuts are by default only separated in the pricing loop
◮ propagation of domain reductions
p.10
p.11
◮ no cuts on binpacking, capacitated p-median, coloring etc. p.11
◮ no cuts on binpacking, capacitated p-median, coloring etc.
p.11
◮ no cuts on binpacking, capacitated p-median, coloring etc.
p.11
◮ period decomposition
◮ horizon decompositions
◮ period, horizon decompositions
◮ automatic detection with GCG ◮ max. white score p.12
p.13
p.13
p.13
p.14
1 2 3 4 5 6 7 0.0 0.2 0.4 0.6 0.8 1.0 nostab-nosepa subcuts-nostab-nosepa
5 10 15 20 0.0 0.2 0.4 0.6 0.8 1.0 nostab-nosepa subcuts-nostab-nosepa
1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 0.0 0.2 0.4 0.6 0.8 1.0 nostab-nosepa subcuts-nostab-nosepa
1.0 1.2 1.4 1.6 1.8 2.0 2.2 0.0 0.2 0.4 0.6 0.8 1.0 nostab-nosepa subcuts-nostab-nosepa
p.15
10 20 30 40 50 instance 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 gap of orig LP closed nostab-nosepa subcuts-nostab-nosepa
10 20 30 40 50 instance 0.0 0.2 0.4 0.6 0.8 1.0 gap of orig LP closed nostab-nosepa subcuts-nostab-nosepa
10 20 30 40 50 60 instance 0.0 0.2 0.4 0.6 0.8 1.0 gap of orig LP closed nostab-nosepa subcuts-nostab-nosepa
10 20 30 40 50 60 70 instance 0.0 0.2 0.4 0.6 0.8 1.0 gap of orig LP closed nostab-nosepa subcuts-nostab-nosepa
p.16
p.17
p.17
p.17
20 40 60 80 100 120 140 160 pricing rounds (root node) 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 time in seconds default subcuts 100 200 300 400 500 600 700 800 nsubcuts
p.18
20 40 60 80 100 120 pricing rounds (root node) 0.0 0.2 0.4 0.6 0.8 1.0 1.2 time in seconds default subcuts 0.00 0.25 0.50 0.75 1.00 1.25 1.50 1.75 2.00 nsubcuts
p.19
2 4 6 8 10 12 14 16 18 instance 0.0 0.2 0.4 0.6 0.8 1.0 gap of orig LP closed nostab-nosepa subcuts-nostab-nosepa
p.20
p.21
p.22
p.23