From Mixed-Integer Linear to Mixed-Integer Bilevel Linear Programming

Slides:



Advertisements
Similar presentations
Integer Optimization Basic Concepts Integer Linear Program(ILP): A linear program except that some or all of the decision variables must have integer.
Advertisements

Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
OR Simplex method (algebraic interpretation) Add slack variables( 여유변수 ) to each constraint to convert them to equations. (We may refer it as.
EE 553 Integer Programming
Computational Methods for Management and Economics Carla Gomes Module 6b Simplex Pitfalls (Textbook – Hillier and Lieberman)
1 State of the art for TSP TSP instances of thousand of cities can be consistently solved to optimality. Instances of up to cities have been solved:
1 Optimisation Although Constraint Logic Programming is somehow focussed in constraint satisfaction (closer to a “logical” view), constraint optimisation.
Computational Methods for Management and Economics Carla Gomes
1 Maximum matching Max Flow Shortest paths Min Cost Flow Linear Programming Mixed Integer Linear Programming Worst case polynomial time by Local Search.
Review of Reservoir Problem OR753 October 29, 2014 Remote Sensing and GISc, IST.
1 Robustness by cutting planes and the Uncertain Set Covering Problem AIRO 2008, Ischia, 10 September 2008 (work supported my MiUR and EU) Matteo Fischetti.
Lift-and-Project cuts: an efficient solution method for mixed-integer programs Sebastian Ceria Graduate School of Business and Computational Optimization.
LP formulation of Economic Dispatch
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Decision Procedures An Algorithmic Point of View
A Decomposition Heuristic for Stochastic Programming Natashia Boland +, Matteo Fischetti*, Michele Monaci*, Martin Savelsbergh + + Georgia Institute of.
Simplex method (algebraic interpretation)
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
MILP algorithms: branch-and-bound and branch-and-cut
Integer programming, MA Operational Research1 Integer Programming Operational Research -Level 4 Prepared by T.M.J.A.Cooray Department of Mathematics.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
Gomory Cuts Updated 25 March Example ILP Example taken from “Operations Research: An Introduction” by Hamdy A. Taha (8 th Edition)“Operations Research:
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
OR Simplex method (algebraic interpretation) Add slack variables( 여유변수 ) to each constraint to convert them to equations. (We may refer it as.
Intersection Cuts for Bilevel Optimization
D Nagesh Kumar, IIScOptimization Methods: M8L1 1 Advanced Topics in Optimization Piecewise Linear Approximation of a Nonlinear Function.
1 Two-Phase Simplex Method file Simplex3_AMII_05b_gr Rev. 1.4 by M. Miccio on December 17, 2014 from a presentation at the Fuqua School of Business MIT.
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.
Chap 10. Sensitivity Analysis
Signal processing and Networking for Big Data Applications: Lecture 9 Mix Integer Programming: Benders decomposition And Branch & Bound NOTE: To change.
Solver & Optimization Problems
5.3 Mixed-Integer Nonlinear Programming (MINLP) Models
Exact Algorithms for Mixed-Integer Bilevel Linear Programming
Modern Benders (in a nutshell)
Georgina Hall Princeton, ORFE Joint work with Amir Ali Ahmadi
Matteo Fischetti, University of Padova
Branch-and-cut implementation of Benders’ decomposition
MILP algorithms: branch-and-bound and branch-and-cut
Gomory Cuts Updated 25 March 2009.
1.3 Modeling with exponentially many constr.
Chapter 4 Linear Programming: The Simplex Method
5.3 Mixed Integer Nonlinear Programming Models
#post_modern Branch-and-Cut Implementation
Chap 9. General LP problems: Duality and Infeasibility
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Chapter 6. Large Scale Optimization
Chap 3. The simplex method
Integer Programming (정수계획법)
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Starting Solutions and Convergence
Chapter 6. Large Scale Optimization
Matteo Fischenders, University of Padova
2. Generating All Valid Inequalities
Chapter 1. Formulations (BW)
1.3 Modeling with exponentially many constr.
Matteo Fischetti, University of Padova
Integer Programming (정수계획법)
Flow Feasibility Problems
Part II General Integer Programming
Intersection Cuts from Bilinear Disjunctions
Simplex method (algebraic interpretation)
Chapter 1. Formulations.
Branch-and-Bound Algorithm for Integer Program
1.2 Guidelines for strong formulations
Chapter 6. Large Scale Optimization
1.2 Guidelines for strong formulations
Intersection Cuts for Quadratic Mixed-Integer Optimization
Discrete Optimization
Presentation transcript:

From Mixed-Integer Linear to Mixed-Integer Bilevel Linear Programming Matteo Fischetti, University of Padova ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Bilevel Optimization The general Bilevel Optimization Problem (optimistic version) reads: where x var.s only are controlled by the leader, while y var.s are computed by another player (the follower) solving a different problem. A very very hard problem even in a convex setting with continuous var.s only Convergent solution algorithms are problematic and typically require additional assumptions (binary/integer var.s or alike) ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Example: 0-1 ILP A generic 0-1 ILP can be reformulated as the following linear & continuos bilevel problem Note that y is fixed to 0 but it cannot be removed from the model! ODS 2017, Sorrento, September 2017

Interdiction Problems A special case where F(x,y) = - f(x,y) and the action of the leader consists in the “interdiction” of some choices of the follower Typically stated as min-max optimization problems of the form: E.g., the follower solves a max flow and the leader wants to keep the resulting flow as small as possible by interdicting (i.e., deleting) some arcs subject to a budget constraint Very very hard both in theory (Sigma-2) and in practice ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Reformulation By defining the value function the problem can be restated as Dropping the nonconvex condition one gets the so-called High Point Relaxation (HPR) ODS 2017, Sorrento, September 2017

Mixed-Integer Bilevel Linear Problems We will focus the Mixed-Integer Bilevel Linear case (MIBLP) where F, G, f and g are affine functions, namely: where for a given x = x* one computes the value function by solving the following MILP: ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Example A notorious example from where f(x,y) = y x points of HPR relax. LP relax. of HPR ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Example (cont.d) Value-function reformulation ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 A MILP-based solver We want to apply a standard Branch-and-Cut MILP solver to HPR, by generating bilevel-specific cuts on the fly to approximate the missing nonlinear condition by a sequence of (local) linear cuts Forget for a moment about internal heuristics (i.e., deactivate all of them), and assume the LP relaxation at each node is solved by the simplex algorithm  each relevant sol. (x*,y*) comes with an LP basis At each B&C node, let (x*,y*) be the current LP optimal vertex: if (x*,y*) is fractional  cut it by a MILP cut, or branch as usual if (x*,y*) is integer and  (x*,y*) is bilevel-feasible and integer  update the incumbent as usual i.e., no bilevel-specific actions are needed (the MILP solver already knows what to do) ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 The difficult case But, what can we do in third possible case, namely (x*,y*) is integer but not bilevel-feasible, i.e., when ? How can we cut this infeasible but integer (x*,y*) ? Possible answers from the literature If (x,y) is restricted to be binary, add a no-good linear cut requiring to flip at least one variable w.r.t. (x*,y*) or w.r.t. x* If (x,y) is restricted to be integer and all MILP coeff.s are integer, add a cut requiring a slack of 1 for the sum of all the inequalities that are tight at (x*,y*) Is there a better way to enforce ? ODS 2017, Sorrento, September 2017

Intersection Cuts (ICs) Try and use of intersection cuts (Balas, 1971) instead ICs are a powerful tool to separate a point x* from a set X by a linear cut All you need is a cone pointed at x*, containing all x ε X a convex set S with x* (but no x ε X) in its interior If x* vertex of an LP relaxation, a suitable cone comes for the LP basis ODS 2017, Sorrento, September 2017

ICs for bilevel problems Our idea is first illustrated on the Moore&Bard example where f(x,y) = y x points of HPR relax. LP relax. of HPR ODS 2017, Sorrento, September 2017

Define a suitable bilevel-free set Take the LP vertex (x*,y*) = (2,4)  f(x*,y*) = y* = 4 > Phi(x*) = 2 ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Intersection cut We can therefore generate the intersection cut y <= 2 and repeat ODS 2017, Sorrento, September 2017

Constructing a bilevel-free set Note: is a convex set (actually, a polyhedron) in the MIBLP case Separation algorithm: given an optimal vertex (x*,y*) of the LP relaxation of HPR Solve the follower for x=x* and get an optimal sol., say if (x*,y*) strictly inside then generate a violated IC using the LP-cone pointed at (x*,y*) together with the bilevel-free set ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 However… The above Lemma does exclude that (x*,y*) can be on the frontier of the bilevel-free set ,, so we cannot guarantee to cut it … We need to define an enlarged bilevel-free set if we want be sure to cut (x*,y*), though this requires additional assumptions ODS 2017, Sorrento, September 2017

An enlarged bilevel-free set Assuming g(x,y) is integer for all integer HPR solutions, one can “move apart” by 1 the frontier of so as be sure that the point (x*,y*) belongs to its interior The above result leads to a “minimalist” B&C solver for MIBLP Notes (see the full papers for details) branching on integer variables can be required to break tailing-off and to ensure finite convergence alternative bilevel-free sets can be defined to produce hopefully deeper ICs additional features (preprocessing, heuristics etc.) available ODS 2017, Sorrento, September 2017

IC-separation numerical issues IC separation can be problematic, as we need to read the cone rays from the LP tableau  numerical accuracy can be a big issue here! For MILPs, ICs like Gomory cuts are not mandatory (so we can skip their generation in case of numerical problems), but for MIBLPs they are instrumental #SeparateOrPerish Notation change: let be the LP relaxation at a given node be the bilevel-free set be the corresp. disjunction (valid for all feas. sol.s) ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Numerically safe ICs A single valid inequality can be obtained by taking, for each variable, the worst LHS Coefficient (and RHS) in each disjunction To be applied to a reduced form of each disjunction where the coefficient of all basic variables is zero (kind of LP reduced costs) ODS 2017, Sorrento, September 2017

ODS 2017, Sorrento, September 2017 Conclusions Mixed-Integer Bilevel Linear Programming is a MILP plus additional constr.s Intersection cuts can produce valuable information at the B&B nodes Sound MIBLP heuristics, preprocessing etc. (not discussed here) available Many instances from the literature can be solved in a satisfactory way Our binary code is available on request (research purposes) Slides http://www.dei.unipd.it/~fisch/papers/slides/ Reference papers: M. Fischetti, I. Ljubic, M. Monaci, M. Sinnl, "Intersection cuts for bilevel optimization", in Integer Programming and Combinatorial Optimization: 18th International Conference, IPCO 2016 Proceedings, 77-88, 2016 (to appear in Mathematical Programming) M. Fischetti, I. Ljubic, M. Monaci, M. Sinnl, "A new general-purpose algorithm for mixed-integer bilevel linear program", to appear in Operations Research.  M. Fischetti, I. Ljubic, M. Monaci, M. Sinnl, "Interdiction Games and Monotonicity", Tech. Report 2016 (submitted) ODS 2017, Sorrento, September 2017