Solving lexicographic multiobjective MIPs with Branch-Cut-Price

Similar documents
Wireless frequency auctions: Mixed Integer Programs and Dantzig-Wolfe decomposition

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem

Column Generation: Cutting Stock

Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class)

GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI

Combinatorial Auctions: A Survey by de Vries and Vohra

COLUMN GENERATION IN LINEAR PROGRAMMING

Fundamentals of Integer Programming

Part 4. Decomposition Algorithms Dantzig-Wolf Decomposition Algorithm

Selected Topics in Column Generation

lpsymphony - Integer Linear Programming in R

The MIP-Solving-Framework SCIP

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

DETERMINISTIC OPERATIONS RESEARCH

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem

Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen

Column Generation Method for an Agent Scheduling Problem

Unit.9 Integer Programming

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

Benders Decomposition

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

5.3 Cutting plane methods and Gomory fractional cuts

TIM 206 Lecture Notes Integer Programming

Solutions for Operations Research Final Exam

Parallel Branch & Bound

Recursive column generation for the Tactical Berth Allocation Problem

Implementing Scalable Parallel Search Algorithms for Data-Intensive Applications

Primal Heuristics in SCIP

Algorithms for Integer Programming

Integer Programming Explained Through Gomory s Cutting Plane Algorithm and Column Generation

Approximation Techniques for Utilitarian Mechanism Design

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

1 Linear programming relaxation

Exploiting Degeneracy in MIP

3 INTEGER LINEAR PROGRAMMING

CSE 417 Network Flows (pt 4) Min Cost Flows

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs

LP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Integer Programming Theory

Algorithms for Decision Support. Integer linear programming models

Previously Local sensitivity analysis: having found an optimal basis to a problem in standard form,

Branch-price-and-cut for vehicle routing. Guy Desaulniers

Modern Benders (in a nutshell)

Auctions for Multi-robot Coordination and Task Allocation

Two-stage column generation

A List Heuristic for Vertex Cover

15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs

Some Advanced Topics in Linear Programming

Cutting Planes for Some Nonconvex Combinatorial Optimization Problems

Benders in a nutshell Matteo Fischetti, University of Padova

11. APPROXIMATION ALGORITHMS

The Ascendance of the Dual Simplex Method: A Geometric View

Financial Optimization ISE 347/447. Lecture 13. Dr. Ted Ralphs

Decomposition in Integer Linear Programming

2. Modeling AEA 2018/2019. Based on Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice - ch. 2

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

Pure Cutting Plane Methods for ILP: a computational perspective

Parallel Auction Algorithm for Linear Assignment Problem

Improving Dual Bound for Stochastic MILP Models Using Sensitivity Analysis

Column Generation Based Primal Heuristics

An Improved Decomposition Algorithm and Computer Technique for Solving LPs

On the Global Solution of Linear Programs with Linear Complementarity Constraints

1. What do you get as the integer and noninteger parts if you factor this as we did with our cutting planes:

Towards a Memory-Efficient Knapsack DP Algorithm

Integer Programming Chapter 9

Gurobi Guidelines for Numerical Issues February 2017

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

3 No-Wait Job Shops with Variable Processing Times

Lecture 4 Duality and Decomposition Techniques

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

A Comparison of Mixed-Integer Programming Models for Non-Convex Piecewise Linear Cost Minimization Problems

An Extension of the Multicut L-Shaped Method. INEN Large-Scale Stochastic Optimization Semester project. Svyatoslav Trukhanov

6 Randomized rounding of semidefinite programs

Decomposition in Integer Linear Programming

Branch-and-cut implementation of Benders decomposition Matteo Fischetti, University of Padova

Linear Programming. Course review MS-E2140. v. 1.1

Approximation Algorithms

Minimum Weight Constrained Forest Problems. Problem Definition

Linear programming and duality theory

Approximation Algorithms

Implementing Constraint Handlers in SCIP

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

Linear Programming Duality and Algorithms

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Constraint Satisfaction Problems

CMPSCI611: The Simplex Algorithm Lecture 24

An Integer Programming Approach to Packing Lightpaths on WDM Networks 파장분할다중화망의광경로패킹에대한정수계획해법. 1. Introduction

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

4 Integer Linear Programming (ILP)

Exact Algorithms for Mixed-Integer Bilevel Linear Programming

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

Decomposition of loosely coupled integer programs: A multiobjective perspective

Theorem 2.9: nearest addition algorithm

Lecture 14: Linear Programming II

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming

Transcription:

Solving lexicographic multiobjective MIPs with Branch-Cut-Price Marta Eso (The Hotchkiss School) Laszlo Ladanyi (IBM T.J. Watson Research Center) David Jensen (IBM T.J. Watson Research Center) McMaster University, 12/09/2002 p. 1/32

Outline Application: FCC Auction #31 Solving IPs with branch-and-bound using an unusual relaxation Incorporating cutting planes to create branch-cut-price Treating the secondary objective via complementarity Application: FCC Auction #31 (revisited) McMaster University, 12/09/2002 p. 2/32

Application: FCC Auction #31 1 Wireless frequency licenses are auctioned off. Iterative auction: repeat until no more new bids Bid submission: regulated by complex rules (eligibility, bid survival, etc.) See Public Notices. Bid evaluation: given the bids, compute revenue-maximizing provisional allocation of licences. Feedback: bids standing, info on raising bid amounts for non-winning bids. Bids may be submitted for individual licences or for bundles of licences. McMaster University, 12/09/2002 p. 3/32

Application: FCC Auction #31 2 primary objective: maximize revenue secondary objective: random (ensures random choice between alternate optima) Slow auction, with only a few rounds per day Target: bid evaluation and feedback computation in less than 15 mins These are IP s that must be solved to optimality Major reservation against package bidding was its computational complexity McMaster University, 12/09/2002 p. 4/32

Optimization at the end of a round 1 Bid evaluation Stage I: Select a revenue-maximizing subset of bids consider bids from all rounds so far XOR of OR bids: bidder may win any bids from a round but all winning bids must come from the same round Stage II: Select one of the optimal solutions randomly achieved by optimizing wrt random secondary objective traditionally implemented by adding the primary objective as a constraint McMaster University, 12/09/2002 p. 5/32

Optimization at the end of a round 2 Feedback: provide price estimates for licences proper anonymous item prices do not exist in general unless bid evaluation can be solved as an LP anonymous: price doesn t depend on identity of bidder proper: add up exactly to the bid amount for winning bids; to no less than the bid amount for non-winning bids price estimates: allow sum to drop below bid amount for non-winning bids minimize the total drop, select solution that least deviates from prices in previous round an LP followed by a QP we solve the dual problems for numerical stability McMaster University, 12/09/2002 p. 6/32

Stage I: Revenue maximization For each agent and round define: of bids bids : the matrix whose columns are the incidence vectors : the array of objective coeffs corresponding to these : binary variables indicating which of these bids are accepted : a binary variable indicating whether any of these bids are selected or not. McMaster University, 12/09/2002 p. 7/32

Stage I: disaggregated formulation objective: license constraints bidder constraints bid-round constraints McMaster University, 12/09/2002 p. 8/32

Column Generation Reformulation 1 Formulated by Dietrich & Forrest: Variables correspond to proposals: possible bid combinations of a bidder. The vector of variables for bidder is. Formulation of master problem List proposals of bidder in Require that at most one proposal per bidder is selected Require that s are integral Subproblems used to dynamically generate proposals McMaster University, 12/09/2002 p. 9/32

binary Column Generation Reformulation 2 Master Problem Subproblems for each, Solve via branch-and-bound. McMaster University, 12/09/2002 p. 10/32

In genip problem considered binary hard connecting constraints block-diagonal easy constraints binary requirement just for easier notation, trivial to relax to real MIP McMaster University, 12/09/2002 p. 11/32

Solving (IP) with Branch-and-Bound Branching: any combination of changing bounds on constraints and/or variables (just to simplify discussion; easy to generalize) Bounding: Instead of LP relaxation consider intersection of LP relaxation and the convex hull of IP solutions feasible to the easy constraints. Solve the bounding via Dantzig-Wolfe decomposition McMaster University, 12/09/2002 p. 12/32

! Dantzig-Wolfe for bounding vectors reflect the branching decisions),, and, Original relaxation (the such that integer Dantzig-Wolfe decomposition: subproblem Master Problem The i integer "# : the dual vector corresponding to the hard constraints convexity constraint. : the dual value corresponding to the $ McMaster University, 12/09/2002 p. 13/32

Extension: cut generation For a solution generate cuts Incorporate to the Master Problem is a solution to the original. in the original space. into, i.e., add constraints to the Master Problem. The duals of the new constraints are incorporated into the objectives of the subproblems. Note: there might be violated cuts for the master problem (in the traditional branch-and-price sense, i.e., when is assumed to be integer) while there are none for the original problem. McMaster University, 12/09/2002 p. 14/32

Extension: general branching, real MIP Extend branching from change bounds to add cuts and change bounds. Additional cuts are incorporated into constraints., the set of hard General bounds on the variables and allowing continuous variables trivially carry over to the subproblems. McMaster University, 12/09/2002 p. 15/32

End result: branch-cut-price Original formulation is never explicitly maintained in effect branch-cut-price is implemented on the master problem where integrality of is required In traditional branch-and-price integrality of required hence the trouble with cut generation (the duals of cuts generated for the master problem can t be interpreted) is McMaster University, 12/09/2002 p. 16/32

Lexicographic optimization After optimizing wrt. a primary objective (Stage I.) we need to further optimize wrt. a secondary objective (Stage II.): binary minimizes primary objective Traditionally done by adding an extra constraint degeneracy, numerical instability. McMaster University, 12/09/2002 p. 17/32

Stage II. solution method Explore Stage I. search tree. Discard leaves with lower bound > optimal primary value. In the rest of the leaves find alternate optimal solution with best secondary objective value and take best of those. McMaster University, 12/09/2002 p. 18/32

Evaluating a leaf Suppose all subproblems solved as LP when D-W terminated; the leaf might as well have been bounded via LP relaxation; can create dual optimal solution to original formulation; can use complementarity to fix bounds to stay on LP optimal face; primary objective will not change, can continue branch and bound with secondary objective. McMaster University, 12/09/2002 p. 19/32

Removing the "solve as LP" assumption When D-W terminates, for each subproblem that does not solve as an LP do NOT carry over the subproblem to Stage II, rather: Explore the search tree of the subproblem. Concentrate on the leaves where lower bound = optimal value For all such leaves create a subproblem in Stage II. with the appropriate bound changes that define this leaf; however, these subproblems will share the convexity constraint of the original subproblem. McMaster University, 12/09/2002 p. 20/32

Exploiting complementarity Let be the dual vector in the master problem and the dual vectors of the subproblems. Then dual optimal to the original formulation. s be is if (in the original formulation) the reduced cost of variable is negative (positive) then the variable must be fixed at its current upper (lower) bound for Stage II. if the dual value is negative (positive) then the row of the original problem (and the master problem) must be fixed at its current upper (lower) bound for Stage II. if the dual value is negative (positive) then the row of the subproblem must be fixed at its current upper (lower) bound for Stage II. McMaster University, 12/09/2002 p. 21/32

# FCC Auction #31: Stage I objective: # license constraints # bidder constraints bid-round constraints apply Branch-and-Bound to this formulation bounding at search tree nodes is via Dantzig-Wolfe (bid-round + binary are "easy") McMaster University, 12/09/2002 p. 22/32

$ # # "# "! "# FCC Auction #31: Dantzig-Wolfe Dantzig-Wolfe (license round constraints and binary are easy ): # # # binary in convexity constraints (0 is solution to with replace subproblem) McMaster University, 12/09/2002 p. 23/32

FCC Auction #31: Dantzig-Wolfe 2 Throughout column generation will always be binary. will always be and will trivially be binary, no matter what binary). is (since if all s are / then the bidder constraints dominate the convexity constraints hence there is an opt sol to the master problem with all s being. is In master problem discard convexity constraints (they ll be always dominated by the bidder constraints) In subproblems set s to uninteresting problem). ( leads to a rather McMaster University, 12/09/2002 p. 24/32

"# "! "# FCC Auction #31: B-C-P formulation Master Problem Subproblems binary variables. Note: was non-trivial to eliminate the McMaster University, 12/09/2002 p. 25/32

Flashback: Dietrich and Forrest proposals: possible bid combinations of a bidder. Formulation of master problem List proposals of bidder in Require that at most one proposal per bidder is selected Require that s are integral Subproblems used to dynamically generate proposals Solution method is branch-and-price; lower bounding through LP relaxation. McMaster University, 12/09/2002 p. 26/32

Flashback: Dietrich and Forrest - 2 D&F lower bounding problem is identical to ours. D&F branching rule must be based on naive formulation to be able to do branch-and-price (consistency) D&F search tree and our search tree uses same bounding and same branching: same formulation! intuitive column generation is the same as Dantzig-Wolfe based. McMaster University, 12/09/2002 p. 27/32

FCC Auction #31: Implementation 1 branching on license: whether or not a license is assigned to a particular bidder. The yes side is enforced by setting the constraint of this licence in all the subproblems of this bidder eliminating conflicting bids from other bidders subproblems setting the constraint of this licence in MP generated clique and odd hole inequalities McMaster University, 12/09/2002 p. 28/32

FCC Auction #31: Implementation 2 Stage I. computation is fast (the subproblems usually solve as LPs) Stage II. is instantenous, in effect the problem is fixed. Compare this to the natural approach, where: matrix contains a fully dense row (primary obj) matrix ill-conditioned (mostly 0-1, coeffs in new row objective coeffs also dangerously close to machine precision ( ) ) Implementation used the BCP framework and the Cut Generation Library from http://www.coin-or.org McMaster University, 12/09/2002 p. 29/32

Tips and tricks (a.k.a. enhancements) preprocessing: eliminate rounds and bids that cannot be winners (dominated by bids from a later round by the same bidder) enumeration of small subproblems into proposals. presolving subproblems at the beginning of each search tree node FCC bids (reserve prices are implemented by a single bid for each license): instead of creating a subproblem for the FCC, subtract the reserve amounts from all other bids. McMaster University, 12/09/2002 p. 30/32

Data and results Current plan calls for auctioning 12 licences, could be solved by enumeration of all proposals (see Dietrich and Forrest). Problems from the FCC s problem generator. 12 licences, up to 44 rounds, 6-7000 bids, up to 30 bidders. 60-80 percent removed by preprocessing (we have 20-30 instances of this) under 2 seconds 50 licences, 15K bids, 16 rounds, 50 bidders (we have 5 instances) about 2.5 minutes; second stage never takes more than a couple of seconds this is usually the difficult stage. stages 3-4 less than 15 seconds. 150 licences, 10K bids, 50 bidders, 4 rounds (1 instance) about 20 minutes; second stage no more than a couple of seconds. stages 3-4 less than a minute McMaster University, 12/09/2002 p. 31/32

Conclusion and future work Using branch-cut-price was very effective for this application. We plan to experiment with solving general MIPs: Find a set of separator rows Treat the separator as the hard constraint Treat the decomposed small problems individually as the subproblems. McMaster University, 12/09/2002 p. 32/32