Matteo Fischetti, University of Padova

Slides:



Advertisements
Similar presentations
© Imperial College London Eplex: Harnessing Mathematical Programming Solvers for Constraint Logic Programming Kish Shen and Joachim Schimpf IC-Parc.
Advertisements

EE 553 Integer Programming
Progress in Linear Programming Based Branch-and-Bound Algorithms
Shuai Li and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University West Lafayette, IN, Mixed Integer Programming Models.
Applications of Stochastic Programming in the Energy Industry Chonawee Supatgiat Research Group Enron Corp. INFORMS Houston Chapter Meeting August 2, 2001.
1 Logic-Based Benders Methods for Planning and Scheduling John Hooker Carnegie Mellon University August 2003.
1 Logic-Based Methods for Global Optimization J. N. Hooker Carnegie Mellon University, USA November 2003.
1 Optimisation Although Constraint Logic Programming is somehow focussed in constraint satisfaction (closer to a “logical” view), constraint optimisation.
Aussois, 4-8/1/20101 = ? Matteo Fischetti and Domenico Salvagnin University of Padova +
Computational Methods for Management and Economics Carla Gomes
Branch and Bound Algorithm for Solving Integer Linear Programming
1 Planning and Scheduling to Minimize Tardiness John Hooker Carnegie Mellon University September 2005.
1 Contents college 3 en 4 Book: Appendix A.1, A.3, A.4, §3.4, §3.5, §4.1, §4.2, §4.4, §4.6 (not: §3.6 - §3.8, §4.2 - §4.3) Extra literature on resource.
Lift-and-Project cuts: an efficient solution method for mixed-integer programs Sebastian Ceria Graduate School of Business and Computational Optimization.
Towards a Fast Heuristic for MINLP John W. Chinneck, M. Shafique Systems and Computer Engineering Carleton University, Ottawa, Canada.
The simpler the better: Thinning out MIP's by Occam's razor Matteo Fischetti, University of Padova CORS/INFORMS 2015, Montreal, June
A Decomposition Heuristic for Stochastic Programming Natashia Boland +, Matteo Fischetti*, Michele Monaci*, Martin Savelsbergh + + Georgia Institute of.
Thinning out Steiner Trees
Proximity search heuristics for Mixed Integer Programs Matteo Fischetti University of Padova, Italy RAMP, 17 October Joint work with Martina Fischetti.
Linear Programming Chapter 6. Large Scale Optimization.
MILP algorithms: branch-and-bound and branch-and-cut
Thin Models for Big Data OR 2015, Vienna, Sept Matteo Fischetti, University of Padova.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
“LOGISTICS MODELS” Andrés Weintraub P
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen Department of Computer Sciences University of Wisconsin-Madison Jeff Linderoth, Argonne.
Simplified Benders cuts for Facility Location
Branch and Bound Algorithms Present by Tina Yang Qianmei Feng.
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories.
September 28, 2000 Improved Simultaneous Data Reconciliation, Bias Detection and Identification Using Mixed Integer Optimization Methods Presented by:
5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.
Intersection Cuts for Bilevel Optimization
Water resources planning and management by use of generalized Benders decomposition method to solve large-scale MINLP problems By Prof. André A. Keller.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from P. Van Hentenryck’s course.
Sebastian Ceria Graduate School of Business and
Integer Programming An integer linear program (ILP) is defined exactly as a linear program except that values of variables in a feasible solution have.
Matteo Fischetti, Michele Monaci University of Padova
Signal processing and Networking for Big Data Applications: Lecture 9 Mix Integer Programming: Benders decomposition And Branch & Bound NOTE: To change.
From Mixed-Integer Linear to Mixed-Integer Bilevel Linear Programming
Solver & Optimization Problems
5.3 Mixed-Integer Nonlinear Programming (MINLP) Models
Exact Algorithms for Mixed-Integer Bilevel Linear Programming
The minimum cost flow problem
Modern Benders (in a nutshell)
Lecture 11: Tree Search © J. Christopher Beck 2008.
The CPLEX Library: Mixed Integer Programming
6.5 Stochastic Prog. and Benders’ decomposition
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
Matteo Fischetti, University of Padova
Branch-and-cut implementation of Benders’ decomposition
MILP algorithms: branch-and-bound and branch-and-cut
1.3 Modeling with exponentially many constr.
5.3 Mixed Integer Nonlinear Programming Models
#post_modern Branch-and-Cut Implementation
Chapter 6. Large Scale Optimization
MIP Tools Branch and Cut with Callbacks Lazy Constraint Callback
Integer Programming (정수계획법)
Instructors: Fei Fang (This Lecture) and Dave Touretzky
Chapter 6. Large Scale Optimization
Matteo Fischenders, University of Padova
Matteo Fischetti, University of Padova
Deep Learning and Mixed Integer Optimization
CPS 173 Computational problems, algorithms, runtime, hardness
6.5 Stochastic Prog. and Benders’ decomposition
Intersection Cuts from Bilinear Disjunctions
Chapter 1. Formulations.
Branch-and-Bound Algorithm for Integer Program
Chapter 6. Large Scale Optimization
Intersection Cuts for Quadratic Mixed-Integer Optimization
Discrete Optimization
Presentation transcript:

Matteo Fischetti, University of Padova Benders in a nutshell Matteo Fischetti, University of Padova ODS 2017, Sorrento, September 2017

Benders decomposition The original Benders decomposition from the 1960s uses two distinct ingredients for solving a Mixed-Integer Linear Program (MILP): 1) A search strategy where a relaxed (NP-hard) MILP on a variable subspace is solved exactly (i.e., to integrality) by a black-box solver, and then is iteratively tightened by means of additional “Benders” linear cuts 2) The technicality of how to actually compute those cuts (Farkas’ projection) Papers proposing “a new Benders-like scheme” typically refer to 1) Students scared by “Benders implementations” typically refer to 2) Later developments in the 1970s: Folklore (Miliotios for TSP?): generate Benders cuts within a single B&B tree to cut any infeasible integer solution that is going to update the incumbent McDaniel & Devine (1977): use Benders cuts to cut fractional sol.s as well (root node only) Everything fits very naturally within a modern Branch-and-Cut (B&C) framework. ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Branch-and-Cut (B&C) B&C was proposed by Padberg and Rinaldi in the 1990s and is nowadays the method of choice for solving MIPs B&C is a clever mixture of cutting-plane and branch-and-bound methods Since the beginning, an highly-effective implementation was part of the B&C trademark (use of cut pool, global vs local cuts, variable pricing, etc.) Modern commercial B&C solvers such as IBM ILOG Cplex, Gurobi, XPRESS etc. can be fully customized by using callback functions Callback functions are just entry points in the B&C code where an advanced user (you!) can add his/her customized cuts, heuristics, etc. ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Benders cuts Consider the convex MINLP in the (x,y) space and let that the convex function is well defined for every y in  no “Benders feasibility cut” needed (otherwise, see the full paper) ODS 2017, Sorrento, September 2017

Working on the y-space (projection) (1) (2) (3) Original MINLP in the (x,y) space  Benders’ master problem in the y space Warning: projection changes the objective function (e.g., linear  convex nonlinear) “isolate the inner minimization over x” ODS 2017, Sorrento, September 2017

Outer-approximation of the Φ function Solving Benders’ master problem calls for the minimization of a nonlinear convex function (even if you start from a linear problem!) Branch-and-cut MINLP solvers generate a sequence of linear cuts to approximate this function from below (outer-approximation) subgradient (aka Benders) cut at a given y*  Taylor’s first order approx. ODS 2017, Sorrento, September 2017

Benders cut separation Benders (for linear) and Geoffrion (general convex) showed how to compute a subgradient to be used in the cut derivation, by using the optimal primal-dual solution (x*,u*) available after computing We propose the use of the following simpler and completely general recipe to generate a (most violated) Benders cut for a given y*. ODS 2017, Sorrento, September 2017

Successful Benders applications Benders decomposition works well when fixing y = y* for computing makes the problem much simpler to solve. This usually happens when The problem for y = y* decomposes into a number of independent subproblems Stochastic Programming Uncapacitated Facility Location etc. Fixing y = y* changes the nature of some constraints: in Capacitated Facility Location, tons of constr.s of the form become just variable bounds Second Order Cone const.s become quadratic ODS 2017, Sorrento, September 2017

Cut-loop stabilization In practice, Benders decomposition can work quite well, but sometimes it is desperately slow at the root node (the lower bound does not improve even after the addition of tons of Benders cuts) Slow convergence is generally attributed to the poor quality of Benders cuts, to be cured by a more clever selection policy (Pareto optimality of Magnanti and Wong, 1981, etc.) An important role is also played by the Kelley’s cut loop (always cut an optimal vertex of the current master problem)  try alternative schemes that cut an internal point of the master relaxation (analytic center, bundle, in-out, etc.) ODS 2017, Sorrento, September 2017

Effect of the improved cut loop Comparing Kelley cut loop at the root node with Kelley+ (add epsilon to y*) and with our chase-the-carrot method (inout) Koerkel-Ghosh qUFL instance gs250a-1 (250x250, quadratic costs) *nc = n. of Benders cuts generated at the end of the root node times in logarithmic scale ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Conclusions To summarize: Benders cuts are easy to implement within modern B&C (just use a callback where you solve the problem for y = y* and compute reduced costs) Kelley’s cut loop can be desperately slow hence stabilization is a must Suitable for general MIP solvers (already in Cplex 12.7) Slides available at http://www.dei.unipd.it/~fisch/papers/slides/ Reference papers: M. Fischetti, I. Ljubic, M. Sinnl, "Benders decomposition without separability: a computational study for capacitated facility location problems", European Journal of Operational Research, 253, 557-569, 2016. M. Fischetti, I. Ljubic, M. Sinnl, "Redesigning Benders Decomposition for Large Scale Facility Location", to appear in Management Science, 2016.  . ODS 2017, Sorrento, September 2017