Large-scale optimization and decomposition methods: outline. Column Generation and Cutting Plane methods: a unified view

Size: px
Start display at page:

Download "Large-scale optimization and decomposition methods: outline. Column Generation and Cutting Plane methods: a unified view"

Transcription

1 Large-scale optimization and decomposition methods: outline I Solution approaches for large-scaled problems: I Delayed column generation I Cutting plane methods (delayed constraint generation) 7 I Problems amenable to the above methods: I Cutting stock problem, etc. I Problems reformulated via decomposition methods I Benders decomposition I Dantzig-Wolfe decomposition 7 Not to be confused with the cutting stock problem, which is actually solved with a delayed column generation algorithm IOE 610: LP II, Fall 2013 Large-scale optimization Page 247 Column Generation and Cutting Plane methods: a unified view (P) min c T x (D) max b T p Ax = b p T A apple c T x 0 A 2< m n,wheren >> m. Typicaliteration: 1. Start with I {1,...,n} 2. Solve the Restricted/Relaxed Master Problem: P (ResMP) min j2i c jx j (RelMP) max b T p P j2i A jx j = b p T A j apple c T j j 2 I 0, j 2 I x j Let (x I, p) berespectiveoptimalsolutions. 3. Check if c j p T A j < 0 for some j 2 {1,...,n}. 4. If not, terminate: (x, p), where x j = 0 for j 62 I, are optimal for (P)/(D) 5. Otherwise I add one (or more) indices j (with at least one c j p T A j < 0) to I ; I if desired, remove one or more non-basic indices from I ; I return to step 1. IOE 610: LP II, Fall 2013 Overview Page 248

2 The pricing problem I If n is large, enumerating all columns of A in step 3 is impossible I Sometimes, structure of the columns of A is such that we can easily solve the pricing subproblem: Z? (p) = min (c j p T A j ) j2{1,...,n} without explicitly examining each column I Note: if Z? (p) 0, then the algorithm terminates; o/w solution to the pricing problem gives us an entering variable I The nature of the pricing problem depends on the setting; studied via examples I The Cutting Stock Problem is one of the most famous, and simple, examples IOE 610: LP II, Fall 2013 Overview Page 249 Cutting stock problem Introduction I A paper company has a supply of large rolls of paper, each of width W I Customer orders are for o i rolls of width w i, i =1,...,m (w i apple W ) IOE 610: LP II, Fall 2013 Cutting stock problem Page 250

3 Cutting stock problem Introduction I The demand can be met by slicing a large roll in a certain way, called a pattern. I For example, a large roll of width 100 can be cut into I 4 rolls each of width 25, or I 2 rolls each of width 35, with a waste of 30 I etc. I Goal: meet the demand with the lowest amount of waste IOE 610: LP II, Fall 2013 Cutting stock problem Page 251 Solution approach I: L.V. Kantorovich Formulation 1939 Russian, 1960 English L.V. Kantorovich, Mathematical Methods of Planning and Organising Production Management Science, 6, I K: Set of available rolls. I y k : 1 if roll k is used (cut), 0 otherwise, k 2 K. I x k i : number of times item i is cut on roll k, k 2 K, i =1,...,m. Model: min P Pk2K y k P k2k x i k o i for each item i =1,...,m, i w ixi k apple Wy k for each roll k 2 K, xi k 0, integer k 2 K, i =1,...,m y k binary k 2 K IOE 610: LP II, Fall 2013 Cutting stock problem Page 252

4 Solution approach I AMPL model The AMPL model for the problem: # # CUTTING STOCK USING KANTOROVICH'es MODEL # param roll_width > 0; param roll_number:=100; to be cut set WIDTHS; param orders {WIDTHS} > 0; # width of raw rolls # upper bound on the number of raw rolls # set of widths to be cut # number of each width to be cut var y{1..roll_number} binary; var x{widths,1..roll_number}>=0, integer; minimize Number: sum{k in 1..roll_number} y[k]; subj to Feas_Width{k in 1..roll_number}: sum {i in WIDTHS} i * x[i,k] <= roll_width*y[k]; subj to Demand{i in WIDTHS}: sum{k in 1..roll_number}x[i,k]>=orders[i]; option cplex_options 'mipdisplay=2 mipinterval=10000 timing=1'; IOE 610: LP II, Fall 2013 Cutting stock problem Page 253 Solution approach I Solution times 8 Experiment I: I o i : uniform, between 1 and 100 (rand(100)+1); I w i : uniform, between 1 and 30 (rand(30)+1); I Width of Roll, W = 3000; Rolls Items constr variables CPU (s) Warning: here and beyond, results of 5-year old runs IOE 610: LP II, Fall 2013 Cutting stock problem Page 254

5 Solution approach I Solution times Experiment II: Change width of the roll from 3000 to 150. Rolls Items constr variables CPU (s) out of memory The performance has deteriorated. Why? IOE 610: LP II, Fall 2013 Cutting stock problem Page 255 How good is the LP relaxation? P i w i o i W. Observation: z LP = The optimal solution of LP relaxation will satisfy: I Choose y k as small as possible. Therefore, for all k, w i xi k = Wy k I Choose x k i Objective value: y k = P i w ixi k W k2k k2k i as small as possible. Therefore, for all i = o i = i K k2k x k i w i W x k i = i w i W k2k x k i = i relaxation might be good if W is very large compared to w i, but not if their values are comparable. IOE 610: LP II, Fall 2013 Cutting stock problem Page 256 w i o i W

6 Solution approach I Adi cult instance Another example: W = 273 Quantity Ordered Order Width (inches) I LP relaxation: solved in less than 0.1s. Objective value I IP: found solution with objective value 230, then got stuck enumerating the branch-and-bound tree IOE 610: LP II, Fall 2013 Cutting stock problem Page 257 Solution approach II: Gilmore and Gomory Set covering formulation P.C. Gilmore and R.E. Gomory, A linear programming approach to the cutting-stock problem, Oper. Res., 8 (1961), pp Idea: Each way to cut the roll into items is a pattern I Pattern j characterized by a ij = number of times item i is cut in pattern j, i =1,...,m I For example, a large roll of width 100 can be cut into I 4 rolls each of width w i = 25 (pattern j, a ij = 4, all others 0) I 2 rolls each of width w k = 35 (pattern l, a kl = 2, all others 0) I x j = number of times pattern j is used IOE 610: LP II, Fall 2013 Cutting stock problem Page 258

7 Solution approach II Example Example: An instance: W = 100, m = 3. pattern w i o i Formulation: minimize P 6 j=1 x j x 1 x 2 x 3 x 4 x 5 x 6 RHS 4x 1 + 2x 2 + 2x 3 + 1x 4 + 0x 5 + 0x x 1 + 1x 2 + 0x 3 + 2x 4 + 1x 5 + 0x x 1 + 0x 2 + 1x 3 + 0x 4 + 1x 5 + 2x x j 0, integer, j =1,...,n. IOE 610: LP II, Fall 2013 Cutting stock problem Page 259 Solution approach II Formulation and relaxation Set-covering formulation: min P n j=1 x j P n j=1 a ijx j o i, i =1,...,m, x j 2 Z +, j =1,...,n min Linear relaxation (LP): P n j=1 x j P n j=1 a ijx j s i = o i, i =1,...m, x j 0, j =1,...,n s i 0, i =1,...,m I We will focus on solving the LP via column generation I Each variable corresponds to a di erent feasible pattern I Large-scale problem: n may be huge! I However, m is just the number of di erent orders IOE 610: LP II, Fall 2013 Cutting stock problem Page 260

8 Cutting stock problem Pricing subproblem I Let I {1,...,n}, andlet(x, p) solve the corresponding (ResMP) and (RelMP) I I should include all slacks, and enough patterns to ensure feasibility of (ResMP) I Pricing subproblem: Z? (p) = min (c j p T A j ) = min (1 j2{1,...,n} z is a feasible pattern pt z) I Characterizing feasible patterns: all vectors z 2 Z m + satisfying m w i z i apple W i=1 I So, the pricing problem can be formulated as the following IP: Z? P (p) =min 1 m P i=1 p iz i i w iz i apple W z i 2 Z + 8i IOE 610: LP II, Fall 2013 Cutting stock problem Page 261 Cutting stock problem Solving the pricing subproblem Knapsack problem I The pricing problem for the Cutting Stock Problem is equivalent to the following Knapsack problem: max P m Pi=1 iz i i w iz i apple W z i 2 Z + 8i I Computational results on random instances using the MIP solver from CPLE: n CPU (s) 1, , , I More specialized algorithm can be used to solve the Knapsack problem even more e ciently in practice. IOE 610: LP II, Fall 2013 Cutting stock problem Page 262

9 Cutting stock problem How good is the LP bound? Round Up Conjecture: v IP appledv LP e? Unfortunately, this is not true: I W = 273 w 1 = 18 o 1 = 233 w 2 = 91 o 2 = 310 w 3 = 21 o 3 = 122 w 4 = 136 o 4 = 157 w 5 = 51 o 5 = 120 I v LP (CG) = , v IP = 230. Modified Round Up Conjecture: v IP appledv LP e + 1? I This conjecture has not been answered. IOE 610: LP II, Fall 2013 Cutting stock problem Page 263 Cutting stock problem Getting integer solutions: Round-up heuristic I Let x j be the LP solution obtained from the column generation method possibly fractional. I Let x 0 j = dx j e integer. I P j a i,jx j o i implies P j a i,jx 0 j o i.sox 0 j defined in this way is a feasible integer solution. I How good is this heuristic? W = 273 w 1 = 18 o 1 = 233 w 2 = 91 o 2 = 310 w 3 = 21 o 3 = 122 w 4 = 136 o 4 = 157 w 5 = 51 o 5 = 120 I v LP (CG) = ; Round-Up produces a value of 231 IOE 610: LP II, Fall 2013 Cutting stock problem Page 264

10 Cutting stock problem Round-up heuristic Round-Up Fractional cut cut cut cut cut cut cut Can you give a bound on j x 0 j x j?? j IOE 610: LP II, Fall 2013 Cutting stock problem Page 265 Cutting stock problem Exact solution approach I For an exact solution, can apply B&B algorithm to the cutting stock problem I Every subproblem is an instance of the cutting stock problem with lower/upper bounds on some of the variables I LP relaxation of every subproblem can be solved by this column generation method IOE 610: LP II, Fall 2013 Cutting stock problem Page 266

11 Other applications of this column generation technique Vehicle routing Vehicle Routing with time window or other types of constraint: I A set of m customers. I Each customer must be served within certain time window. I Problem: Find a set of routes to serve all the customers, so that each customer will be visited by a vehicle within the stipulated time window. I Likely objectives could be: I Minimize the total number of vehicles I Minimize the total cost (fixed per-vehicle cost, plus travel costs) Note the set covering nature of this problem. IOE 610: LP II, Fall 2013 Column generation in other problems Page 267 Other applications of this column generation technique Vehicle routing IOE 610: LP II, Fall 2013 Column generation in other problems Page 268

12 Other applications of this column generation technique Vehicle routing formulation I Variables: x j 2 {0, 1} binary, representing whether the jth route is taken by one of the trucks I Each variable/column represents a feasible route, i.e., a subset of customers, and the order in which they are visited, so that each visit occurs within appropriate time windows I Parameters: a ij = 1 if customer i is included in route j; 0 otherwise I Formulation ( minimize number of vehicles version): min P j x j P j a ijx j 1, i =1,...,m x j 2 {0, 1} 8j IOE 610: LP II, Fall 2013 Column generation in other problems Page 269 Other applications of this column generation technique Vehicle routing Column generation and pricing subproblem I LP relaxation is hard to solve due to enormous number of variables use column generation I Solve LP relaxation with a small subset of columns/variables I Obtain dual variables p i for each demand point (can be interpreted as marginal profits of the customers) I Reduced cost c j =1 a ij p i =1 i i:route j visits i I Pricing subproblem: find a route that: I satisfies feasibility constraints (meets the time window constraints); I total profits accrued by serving the demand points on the route is maximized a variant of the Traveling Salesman problem. IOE 610: LP II, Fall 2013 Column generation in other problems Page 270 p i

Lecture 8: Column Generation

Lecture 8: Column Generation Lecture 8: Column Generation (3 units) Outline Cutting stock problem Classical IP formulation Set covering formulation Column generation A dual perspective Vehicle routing problem 1 / 33 Cutting stock

More information

Lecture 8: Column Generation

Lecture 8: Column Generation Lecture 8: Column Generation (3 units) Outline Cutting stock problem Classical IP formulation Set covering formulation Column generation A dual perspective 1 / 24 Cutting stock problem 2 / 24 Problem description

More information

Column Generation I. Teo Chung-Piaw (NUS)

Column Generation I. Teo Chung-Piaw (NUS) Column Generation I Teo Chung-Piaw (NUS) 21 st February 2002 1 Outline Cutting Stock Problem Slide 1 Classical Integer Programming Formulation Set Covering Formulation Column Generation Approach Connection

More information

3.10 Column generation method

3.10 Column generation method 3.10 Column generation method Many relevant decision-making problems can be formulated as ILP problems with a very large (exponential) number of variables. Examples: cutting stock, crew scheduling, vehicle

More information

Decomposition methods in optimization

Decomposition methods in optimization Decomposition methods in optimization I Approach I: I Partition problem constraints into two groups: explicit and implicit I Approach II: I Partition decision variables into two groups: primary and secondary

More information

3.10 Column generation method

3.10 Column generation method 3.10 Column generation method Many relevant decision-making (discrete optimization) problems can be formulated as ILP problems with a very large (exponential) number of variables. Examples: cutting stock,

More information

Column Generation. ORLAB - Operations Research Laboratory. Stefano Gualandi. June 14, Politecnico di Milano, Italy

Column Generation. ORLAB - Operations Research Laboratory. Stefano Gualandi. June 14, Politecnico di Milano, Italy ORLAB - Operations Research Laboratory Politecnico di Milano, Italy June 14, 2011 Cutting Stock Problem (from wikipedia) Imagine that you work in a paper mill and you have a number of rolls of paper of

More information

Column Generation. MTech Seminar Report. Soumitra Pal Roll No: under the guidance of

Column Generation. MTech Seminar Report. Soumitra Pal Roll No: under the guidance of Column Generation MTech Seminar Report by Soumitra Pal Roll No: 05305015 under the guidance of Prof. A. G. Ranade Computer Science and Engineering IIT-Bombay a Department of Computer Science and Engineering

More information

1 Column Generation and the Cutting Stock Problem

1 Column Generation and the Cutting Stock Problem 1 Column Generation and the Cutting Stock Problem In the linear programming approach to the traveling salesman problem we used the cutting plane approach. The cutting plane approach is appropriate when

More information

Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications

Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications François Vanderbeck University of Bordeaux INRIA Bordeaux-Sud-Ouest part : Defining Extended Formulations

More information

Decomposition Methods for Integer Programming

Decomposition Methods for Integer Programming Decomposition Methods for Integer Programming J.M. Valério de Carvalho vc@dps.uminho.pt Departamento de Produção e Sistemas Escola de Engenharia, Universidade do Minho Portugal PhD Course Programa Doutoral

More information

Introduction to Bin Packing Problems

Introduction to Bin Packing Problems Introduction to Bin Packing Problems Fabio Furini March 13, 2015 Outline Origins and applications Applications: Definition: Bin Packing Problem (BPP) Solution techniques for the BPP Heuristic Algorithms

More information

Improving Branch-And-Price Algorithms For Solving One Dimensional Cutting Stock Problem

Improving Branch-And-Price Algorithms For Solving One Dimensional Cutting Stock Problem Improving Branch-And-Price Algorithms For Solving One Dimensional Cutting Stock Problem M. Tech. Dissertation Submitted in partial fulfillment of the requirements for the degree of Master of Technology

More information

Notes on Dantzig-Wolfe decomposition and column generation

Notes on Dantzig-Wolfe decomposition and column generation Notes on Dantzig-Wolfe decomposition and column generation Mette Gamst November 11, 2010 1 Introduction This note introduces an exact solution method for mathematical programming problems. The method is

More information

to work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting

to work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting Summary so far z =max{c T x : Ax apple b, x 2 Z n +} I Modeling with IP (and MIP, and BIP) problems I Formulation for a discrete set that is a feasible region of an IP I Alternative formulations for the

More information

A Node-Flow Model for 1D Stock Cutting: Robust Branch-Cut-and-Price

A Node-Flow Model for 1D Stock Cutting: Robust Branch-Cut-and-Price A Node-Flow Model for 1D Stock Cutting: Robust Branch-Cut-and-Price Gleb Belov University of Dresden Adam N. Letchford Lancaster University Eduardo Uchoa Universidade Federal Fluminense August 4, 2011

More information

Column Generation. i = 1,, 255;

Column Generation. i = 1,, 255; Column Generation The idea of the column generation can be motivated by the trim-loss problem: We receive an order to cut 50 pieces of.5-meter (pipe) segments, 250 pieces of 2-meter segments, and 200 pieces

More information

Interior-Point versus Simplex methods for Integer Programming Branch-and-Bound

Interior-Point versus Simplex methods for Integer Programming Branch-and-Bound Interior-Point versus Simplex methods for Integer Programming Branch-and-Bound Samir Elhedhli elhedhli@uwaterloo.ca Department of Management Sciences, University of Waterloo, Canada Page of 4 McMaster

More information

Feasibility Pump Heuristics for Column Generation Approaches

Feasibility Pump Heuristics for Column Generation Approaches 1 / 29 Feasibility Pump Heuristics for Column Generation Approaches Ruslan Sadykov 2 Pierre Pesneau 1,2 Francois Vanderbeck 1,2 1 University Bordeaux I 2 INRIA Bordeaux Sud-Ouest SEA 2012 Bordeaux, France,

More information

Section Notes 9. Midterm 2 Review. Applied Math / Engineering Sciences 121. Week of December 3, 2018

Section Notes 9. Midterm 2 Review. Applied Math / Engineering Sciences 121. Week of December 3, 2018 Section Notes 9 Midterm 2 Review Applied Math / Engineering Sciences 121 Week of December 3, 2018 The following list of topics is an overview of the material that was covered in the lectures and sections

More information

Integer Programming Part II

Integer Programming Part II Be the first in your neighborhood to master this delightful little algorithm. Integer Programming Part II The Branch and Bound Algorithm learn about fathoming, bounding, branching, pruning, and much more!

More information

The two-dimensional bin-packing problem is the problem of orthogonally packing a given set of rectangles

The two-dimensional bin-packing problem is the problem of orthogonally packing a given set of rectangles INFORMS Journal on Computing Vol. 19, No. 1, Winter 2007, pp. 36 51 issn 1091-9856 eissn 1526-5528 07 1901 0036 informs doi 10.1287/ijoc.1060.0181 2007 INFORMS Using Decomposition Techniques and Constraint

More information

Branch-and-Price-and-Cut for the Split Delivery Vehicle Routing Problem with Time Windows

Branch-and-Price-and-Cut for the Split Delivery Vehicle Routing Problem with Time Windows Branch-and-Price-and-Cut for the Split Delivery Vehicle Routing Problem with Time Windows Guy Desaulniers École Polytechnique de Montréal and GERAD Column Generation 2008 Aussois, France Outline Introduction

More information

15.081J/6.251J Introduction to Mathematical Programming. Lecture 24: Discrete Optimization

15.081J/6.251J Introduction to Mathematical Programming. Lecture 24: Discrete Optimization 15.081J/6.251J Introduction to Mathematical Programming Lecture 24: Discrete Optimization 1 Outline Modeling with integer variables Slide 1 What is a good formulation? Theme: The Power of Formulations

More information

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING 1. Lagrangian Relaxation Lecture 12 Single Machine Models, Column Generation 2. Dantzig-Wolfe Decomposition Dantzig-Wolfe Decomposition Delayed Column

More information

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini In the name of God Network Flows 6. Lagrangian Relaxation 6.3 Lagrangian Relaxation and Integer Programming Fall 2010 Instructor: Dr. Masoud Yaghini Integer Programming Outline Branch-and-Bound Technique

More information

Partial Path Column Generation for the Vehicle Routing Problem with Time Windows

Partial Path Column Generation for the Vehicle Routing Problem with Time Windows Partial Path Column Generation for the Vehicle Routing Problem with Time Windows Bjørn Petersen & Mads Kehlet Jepsen } DIKU Department of Computer Science, University of Copenhagen Universitetsparken 1,

More information

Classification of Dantzig-Wolfe Reformulations for MIP s

Classification of Dantzig-Wolfe Reformulations for MIP s Classification of Dantzig-Wolfe Reformulations for MIP s Raf Jans Rotterdam School of Management HEC Montreal Workshop on Column Generation Aussois, June 2008 Outline and Motivation Dantzig-Wolfe reformulation

More information

Operations Research Lecture 6: Integer Programming

Operations Research Lecture 6: Integer Programming Operations Research Lecture 6: Integer Programming Notes taken by Kaiquan Xu@Business School, Nanjing University May 12th 2016 1 Integer programming (IP) formulations The integer programming (IP) is the

More information

Introduction to optimization and operations research

Introduction to optimization and operations research Introduction to optimization and operations research David Pisinger, Fall 2002 1 Smoked ham (Chvatal 1.6, adapted from Greene et al. (1957)) A meat packing plant produces 480 hams, 400 pork bellies, and

More information

Integer Linear Programming

Integer Linear Programming Integer Linear Programming Solution : cutting planes and Branch and Bound Hugues Talbot Laboratoire CVN April 13, 2018 IP Resolution Gomory s cutting planes Solution branch-and-bound General method Resolution

More information

Lecture 9: Dantzig-Wolfe Decomposition

Lecture 9: Dantzig-Wolfe Decomposition Lecture 9: Dantzig-Wolfe Decomposition (3 units) Outline Dantzig-Wolfe decomposition Column generation algorithm Relation to Lagrangian dual Branch-and-price method Generated assignment problem and multi-commodity

More information

Integer Programming. Wolfram Wiesemann. December 6, 2007

Integer Programming. Wolfram Wiesemann. December 6, 2007 Integer Programming Wolfram Wiesemann December 6, 2007 Contents of this Lecture Revision: Mixed Integer Programming Problems Branch & Bound Algorithms: The Big Picture Solving MIP s: Complete Enumeration

More information

IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, You wish to solve the IP below with a cutting plane technique.

IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, You wish to solve the IP below with a cutting plane technique. IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, 31 14. You wish to solve the IP below with a cutting plane technique. Maximize 4x 1 + 2x 2 + x 3 subject to 14x 1 + 10x 2 + 11x 3 32 10x 1 +

More information

Section Notes 9. IP: Cutting Planes. Applied Math 121. Week of April 12, 2010

Section Notes 9. IP: Cutting Planes. Applied Math 121. Week of April 12, 2010 Section Notes 9 IP: Cutting Planes Applied Math 121 Week of April 12, 2010 Goals for the week understand what a strong formulations is. be familiar with the cutting planes algorithm and the types of cuts

More information

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

Integer Programming ISE 418. Lecture 16. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 16 Dr. Ted Ralphs ISE 418 Lecture 16 1 Reading for This Lecture Wolsey, Chapters 10 and 11 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.3.7, II.5.4 CCZ Chapter 8

More information

What is an integer program? Modelling with Integer Variables. Mixed Integer Program. Let us start with a linear program: max cx s.t.

What is an integer program? Modelling with Integer Variables. Mixed Integer Program. Let us start with a linear program: max cx s.t. Modelling with Integer Variables jesla@mandtudk Department of Management Engineering Technical University of Denmark What is an integer program? Let us start with a linear program: st Ax b x 0 where A

More information

Lecture 23 Branch-and-Bound Algorithm. November 3, 2009

Lecture 23 Branch-and-Bound Algorithm. November 3, 2009 Branch-and-Bound Algorithm November 3, 2009 Outline Lecture 23 Modeling aspect: Either-Or requirement Special ILPs: Totally unimodular matrices Branch-and-Bound Algorithm Underlying idea Terminology Formal

More information

The Traveling Salesman Problem: An Overview. David P. Williamson, Cornell University Ebay Research January 21, 2014

The Traveling Salesman Problem: An Overview. David P. Williamson, Cornell University Ebay Research January 21, 2014 The Traveling Salesman Problem: An Overview David P. Williamson, Cornell University Ebay Research January 21, 2014 (Cook 2012) A highly readable introduction Some terminology (imprecise) Problem Traditional

More information

and to estimate the quality of feasible solutions I A new way to derive dual bounds:

and to estimate the quality of feasible solutions I A new way to derive dual bounds: Lagrangian Relaxations and Duality I Recall: I Relaxations provide dual bounds for the problem I So do feasible solutions of dual problems I Having tight dual bounds is important in algorithms (B&B), and

More information

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

MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2017 04 07 Lecture 8 Linear and integer optimization with applications

More information

Integer Programming Reformulations: Dantzig-Wolfe & Benders Decomposition the Coluna Software Platform

Integer Programming Reformulations: Dantzig-Wolfe & Benders Decomposition the Coluna Software Platform Integer Programming Reformulations: Dantzig-Wolfe & Benders Decomposition the Coluna Software Platform François Vanderbeck B. Detienne, F. Clautiaux, R. Griset, T. Leite, G. Marques, V. Nesello, A. Pessoa,

More information

Introduction to Integer Linear Programming

Introduction to Integer Linear Programming Lecture 7/12/2006 p. 1/30 Introduction to Integer Linear Programming Leo Liberti, Ruslan Sadykov LIX, École Polytechnique liberti@lix.polytechnique.fr sadykov@lix.polytechnique.fr Lecture 7/12/2006 p.

More information

Column Generation for Extended Formulations

Column Generation for Extended Formulations 1 / 28 Column Generation for Extended Formulations Ruslan Sadykov 1 François Vanderbeck 2,1 1 INRIA Bordeaux Sud-Ouest, France 2 University Bordeaux I, France ISMP 2012 Berlin, August 23 2 / 28 Contents

More information

A BRANCH&BOUND ALGORITHM FOR SOLVING ONE-DIMENSIONAL CUTTING STOCK PROBLEMS EXACTLY

A BRANCH&BOUND ALGORITHM FOR SOLVING ONE-DIMENSIONAL CUTTING STOCK PROBLEMS EXACTLY APPLICATIONES MATHEMATICAE 23,2 (1995), pp. 151 167 G. SCHEITHAUER and J. TERNO (Dresden) A BRANCH&BOUND ALGORITHM FOR SOLVING ONE-DIMENSIONAL CUTTING STOCK PROBLEMS EXACTLY Abstract. Many numerical computations

More information

Integer Programming. The focus of this chapter is on solution techniques for integer programming models.

Integer Programming. The focus of this chapter is on solution techniques for integer programming models. Integer Programming Introduction The general linear programming model depends on the assumption of divisibility. In other words, the decision variables are allowed to take non-negative integer as well

More information

Integer Linear Programming Modeling

Integer Linear Programming Modeling DM554/DM545 Linear and Lecture 9 Integer Linear Programming Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. Assignment Problem Knapsack Problem

More information

Recoverable Robustness in Scheduling Problems

Recoverable Robustness in Scheduling Problems Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker

More information

Integer programming: an introduction. Alessandro Astolfi

Integer programming: an introduction. Alessandro Astolfi Integer programming: an introduction Alessandro Astolfi Outline Introduction Examples Methods for solving ILP Optimization on graphs LP problems with integer solutions Summary Introduction Integer programming

More information

maxz = 3x 1 +4x 2 2x 1 +x 2 6 2x 1 +3x 2 9 x 1,x 2

maxz = 3x 1 +4x 2 2x 1 +x 2 6 2x 1 +3x 2 9 x 1,x 2 ex-5.-5. Foundations of Operations Research Prof. E. Amaldi 5. Branch-and-Bound Given the integer linear program maxz = x +x x +x 6 x +x 9 x,x integer solve it via the Branch-and-Bound method (solving

More information

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

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 8 Dr. Ted Ralphs ISE 418 Lecture 8 1 Reading for This Lecture Wolsey Chapter 2 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Duality for Mixed-Integer

More information

Introduction to Integer Programming

Introduction to Integer Programming Lecture 3/3/2006 p. /27 Introduction to Integer Programming Leo Liberti LIX, École Polytechnique liberti@lix.polytechnique.fr Lecture 3/3/2006 p. 2/27 Contents IP formulations and examples Total unimodularity

More information

PART 4 INTEGER PROGRAMMING

PART 4 INTEGER PROGRAMMING PART 4 INTEGER PROGRAMMING 102 Read Chapters 11 and 12 in textbook 103 A capital budgeting problem We want to invest $19 000 Four investment opportunities which cannot be split (take it or leave it) 1.

More information

21. Set cover and TSP

21. Set cover and TSP CS/ECE/ISyE 524 Introduction to Optimization Spring 2017 18 21. Set cover and TSP ˆ Set covering ˆ Cutting problems and column generation ˆ Traveling salesman problem Laurent Lessard (www.laurentlessard.com)

More information

Travelling Salesman Problem

Travelling Salesman Problem Travelling Salesman Problem Fabio Furini November 10th, 2014 Travelling Salesman Problem 1 Outline 1 Traveling Salesman Problem Separation Travelling Salesman Problem 2 (Asymmetric) Traveling Salesman

More information

Decomposition-based Methods for Large-scale Discrete Optimization p.1

Decomposition-based Methods for Large-scale Discrete Optimization p.1 Decomposition-based Methods for Large-scale Discrete Optimization Matthew V Galati Ted K Ralphs Department of Industrial and Systems Engineering Lehigh University, Bethlehem, PA, USA Départment de Mathématiques

More information

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Definition: An Integer Linear Programming problem is an optimization problem of the form (ILP) min

More information

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg MVE165/MMG630, Integer linear programming: models and applications; complexity Ann-Brith Strömberg 2011 04 01 Modelling with integer variables (Ch. 13.1) Variables Linear programming (LP) uses continuous

More information

SOLVING INTEGER LINEAR PROGRAMS. 1. Solving the LP relaxation. 2. How to deal with fractional solutions?

SOLVING INTEGER LINEAR PROGRAMS. 1. Solving the LP relaxation. 2. How to deal with fractional solutions? SOLVING INTEGER LINEAR PROGRAMS 1. Solving the LP relaxation. 2. How to deal with fractional solutions? Integer Linear Program: Example max x 1 2x 2 0.5x 3 0.2x 4 x 5 +0.6x 6 s.t. x 1 +2x 2 1 x 1 + x 2

More information

min3x 1 + 4x 2 + 5x 3 2x 1 + 2x 2 + x 3 6 x 1 + 2x 2 + 3x 3 5 x 1, x 2, x 3 0.

min3x 1 + 4x 2 + 5x 3 2x 1 + 2x 2 + x 3 6 x 1 + 2x 2 + 3x 3 5 x 1, x 2, x 3 0. ex-.-. Foundations of Operations Research Prof. E. Amaldi. Dual simplex algorithm Given the linear program minx + x + x x + x + x 6 x + x + x x, x, x. solve it via the dual simplex algorithm. Describe

More information

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Sito web: http://home.deib.polimi.it/amaldi/ott-13-14.shtml A.A. 2013-14 Edoardo

More information

18 hours nodes, first feasible 3.7% gap Time: 92 days!! LP relaxation at root node: Branch and bound

18 hours nodes, first feasible 3.7% gap Time: 92 days!! LP relaxation at root node: Branch and bound The MIP Landscape 1 Example 1: LP still can be HARD SGM: Schedule Generation Model Example 157323 1: LP rows, still can 182812 be HARD columns, 6348437 nzs LP relaxation at root node: 18 hours Branch and

More information

Pedro Munari - COA 2017, February 10th, University of Edinburgh, Scotland, UK 2

Pedro Munari - COA 2017, February 10th, University of Edinburgh, Scotland, UK 2 Pedro Munari [munari@dep.ufscar.br] - COA 2017, February 10th, University of Edinburgh, Scotland, UK 2 Outline Vehicle routing problem; How interior point methods can help; Interior point branch-price-and-cut:

More information

Advanced linear programming

Advanced linear programming Advanced linear programming http://www.staff.science.uu.nl/~akker103/alp/ Chapter 10: Integer linear programming models Marjan van den Akker 1 Intro. Marjan van den Akker Master Mathematics TU/e PhD Mathematics

More information

A Hub Location Problem with Fully Interconnected Backbone and Access Networks

A Hub Location Problem with Fully Interconnected Backbone and Access Networks A Hub Location Problem with Fully Interconnected Backbone and Access Networks Tommy Thomadsen Informatics and Mathematical Modelling Technical University of Denmark 2800 Kgs. Lyngby Denmark tt@imm.dtu.dk

More information

Modeling with Integer Programming

Modeling with Integer Programming Modeling with Integer Programg Laura Galli December 18, 2014 We can use 0-1 (binary) variables for a variety of purposes, such as: Modeling yes/no decisions Enforcing disjunctions Enforcing logical conditions

More information

Lagrangian Relaxation in MIP

Lagrangian Relaxation in MIP Lagrangian Relaxation in MIP Bernard Gendron May 28, 2016 Master Class on Decomposition, CPAIOR2016, Banff, Canada CIRRELT and Département d informatique et de recherche opérationnelle, Université de Montréal,

More information

Linear and Integer Programming - ideas

Linear and Integer Programming - ideas Linear and Integer Programming - ideas Paweł Zieliński Institute of Mathematics and Computer Science, Wrocław University of Technology, Poland http://www.im.pwr.wroc.pl/ pziel/ Toulouse, France 2012 Literature

More information

Spring 2018 IE 102. Operations Research and Mathematical Programming Part 2

Spring 2018 IE 102. Operations Research and Mathematical Programming Part 2 Spring 2018 IE 102 Operations Research and Mathematical Programming Part 2 Graphical Solution of 2-variable LP Problems Consider an example max x 1 + 3 x 2 s.t. x 1 + x 2 6 (1) - x 1 + 2x 2 8 (2) x 1,

More information

A Column Generation Based Heuristic for the Dial-A-Ride Problem

A Column Generation Based Heuristic for the Dial-A-Ride Problem A Column Generation Based Heuristic for the Dial-A-Ride Problem Nastaran Rahmani 1, Boris Detienne 2,3, Ruslan Sadykov 3,2, François Vanderbeck 2,3 1 Kedge Business School, 680 Cours de la Libération,

More information

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Website: http://home.deib.polimi.it/amaldi/opt-16-17.shtml Academic year 2016-17

More information

A Priori Route Evaluation for the Lateral Transhipment Problem (ARELTP) with Piecewise Linear Profits

A Priori Route Evaluation for the Lateral Transhipment Problem (ARELTP) with Piecewise Linear Profits 1 / 47 A Priori Route Evaluation for the Lateral Transhipment Problem (ARELTP) with Piecewise Linear Profits Martin Romauch 1 Richard Hartl 1 Thibaut Vidal 2 1 University of Vienna 2 PUC-Rio, Rio de Janeiro,

More information

Cutting Planes in SCIP

Cutting Planes in SCIP Cutting Planes in SCIP Kati Wolter Zuse-Institute Berlin Department Optimization Berlin, 6th June 2007 Outline 1 Cutting Planes in SCIP 2 Cutting Planes for the 0-1 Knapsack Problem 2.1 Cover Cuts 2.2

More information

The Fixed Charge Transportation Problem: A Strong Formulation Based On Lagrangian Decomposition and Column Generation

The Fixed Charge Transportation Problem: A Strong Formulation Based On Lagrangian Decomposition and Column Generation The Fixed Charge Transportation Problem: A Strong Formulation Based On Lagrangian Decomposition and Column Generation Yixin Zhao, Torbjörn Larsson and Department of Mathematics, Linköping University, Sweden

More information

Decomposition and Reformulation in Integer Programming

Decomposition and Reformulation in Integer Programming and Reformulation in Integer Programming Laurence A. WOLSEY 7/1/2008 / Aussois and Reformulation in Integer Programming Outline 1 Resource 2 and Reformulation in Integer Programming Outline Resource 1

More information

An exact algorithm for Aircraft Landing Problem

An exact algorithm for Aircraft Landing Problem An exact algorithm for Aircraft Landing Problem Min Wen Jesper Larsen Jens Clausen Informatics and Mathematical Modelling Technical University of Denmark 2800 Kgs. Lyngby Denmark September 4, 2005 Abstract

More information

An Integer Cutting-Plane Procedure for the Dantzig-Wolfe Decomposition: Theory

An Integer Cutting-Plane Procedure for the Dantzig-Wolfe Decomposition: Theory An Integer Cutting-Plane Procedure for the Dantzig-Wolfe Decomposition: Theory by Troels Martin Range Discussion Papers on Business and Economics No. 10/2006 FURTHER INFORMATION Department of Business

More information

Lecture 10: Linear programming. duality. and. The dual of the LP in standard form. maximize w = b T y (D) subject to A T y c, minimize z = c T x (P)

Lecture 10: Linear programming. duality. and. The dual of the LP in standard form. maximize w = b T y (D) subject to A T y c, minimize z = c T x (P) Lecture 10: Linear programming duality Michael Patriksson 19 February 2004 0-0 The dual of the LP in standard form minimize z = c T x (P) subject to Ax = b, x 0 n, and maximize w = b T y (D) subject to

More information

Integer Solutions to Cutting Stock Problems

Integer Solutions to Cutting Stock Problems Integer Solutions to Cutting Stock Problems L. Fernández, L. A. Fernández, C. Pola Dpto. Matemáticas, Estadística y Computación, Universidad de Cantabria, 39005 Santander, Spain, laura.fernandezfern@alumnos.unican.es,

More information

Orbital Shrinking: A New Tool for Hybrid MIP/CP Methods

Orbital Shrinking: A New Tool for Hybrid MIP/CP Methods Orbital Shrinking: A New Tool for Hybrid MIP/CP Methods Domenico Salvagnin DEI, University of Padova salvagni@dei.unipd.it Abstract. Orbital shrinking is a newly developed technique in the MIP community

More information

Integer program reformulation for robust branch-and-cut-and-price

Integer program reformulation for robust branch-and-cut-and-price Integer program reformulation for robust branch-and-cut-and-price Marcus Poggi de Aragão Informática PUC-Rio Eduardo Uchoa Engenharia de Produção Universidade Federal Fluminense Outline of the talk Robust

More information

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

Introduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2 IE406 Lecture 21 2 Branch and Bound Branch

More information

Optimization Methods for NDP

Optimization Methods for NDP Optimization Methods for NDP Hongwei Zhang http://www.cs.wayne.edu/~hzhang Acknowledgment: the slides are based on those from Drs. Yong Liu, Deep Medhi, and Michał Pióro. Optimization Methods optimization

More information

Discrete (and Continuous) Optimization WI4 131

Discrete (and Continuous) Optimization WI4 131 Discrete (and Continuous) Optimization WI4 131 Kees Roos Technische Universiteit Delft Faculteit Electrotechniek, Wiskunde en Informatica Afdeling Informatie, Systemen en Algoritmiek e-mail: C.Roos@ewi.tudelft.nl

More information

Integer Linear Programming (ILP)

Integer Linear Programming (ILP) Integer Linear Programming (ILP) Zdeněk Hanzálek, Přemysl Šůcha hanzalek@fel.cvut.cz CTU in Prague March 8, 2017 Z. Hanzálek (CTU) Integer Linear Programming (ILP) March 8, 2017 1 / 43 Table of contents

More information

Cutting Plane Separators in SCIP

Cutting Plane Separators in SCIP Cutting Plane Separators in SCIP Kati Wolter Zuse Institute Berlin DFG Research Center MATHEON Mathematics for key technologies 1 / 36 General Cutting Plane Method MIP min{c T x : x X MIP }, X MIP := {x

More information

Strengthened Benders Cuts for Stochastic Integer Programs with Continuous Recourse

Strengthened Benders Cuts for Stochastic Integer Programs with Continuous Recourse Strengthened Benders Cuts for Stochastic Integer Programs with Continuous Recourse Merve Bodur 1, Sanjeeb Dash 2, Otay Günlü 2, and James Luedte 3 1 Department of Mechanical and Industrial Engineering,

More information

Overview of course. Introduction to Optimization, DIKU Monday 12 November David Pisinger

Overview of course. Introduction to Optimization, DIKU Monday 12 November David Pisinger Introduction to Optimization, DIKU 007-08 Monday November David Pisinger Lecture What is OR, linear models, standard form, slack form, simplex repetition, graphical interpretation, extreme points, basic

More information

56:270 Final Exam - May

56:270  Final Exam - May @ @ 56:270 Linear Programming @ @ Final Exam - May 4, 1989 @ @ @ @ @ @ @ @ @ @ @ @ @ @ Select any 7 of the 9 problems below: (1.) ANALYSIS OF MPSX OUTPUT: Please refer to the attached materials on the

More information

Models and Cuts for the Two-Echelon Vehicle Routing Problem

Models and Cuts for the Two-Echelon Vehicle Routing Problem Models and Cuts for the Two-Echelon Vehicle Routing Problem Guido Perboli Roberto Tadei Francesco Masoero Department of Control and Computer Engineering, Politecnico di Torino Corso Duca degli Abruzzi,

More information

Introduction column generation

Introduction column generation Introduction column generation Han Hoogeveen Institute of Information and Computing Sciences University Utrecht The Netherlands May 28, 2018 Contents Shadow prices Reduced cost Column generation Example:

More information

KNAPSACK PROBLEMS WITH SETUPS

KNAPSACK PROBLEMS WITH SETUPS 7 e Conférence Francophone de MOdélisation et SIMulation - MOSIM 08 - du 31 mars au 2 avril 2008 - Paris - France Modélisation, Optimisation et Simulation des Systèmes : Communication, Coopération et Coordination

More information

3.10 Lagrangian relaxation

3.10 Lagrangian relaxation 3.10 Lagrangian relaxation Consider a generic ILP problem min {c t x : Ax b, Dx d, x Z n } with integer coefficients. Suppose Dx d are the complicating constraints. Often the linear relaxation and the

More information

Generation and Representation of Piecewise Polyhedral Value Functions

Generation and Representation of Piecewise Polyhedral Value Functions Generation and Representation of Piecewise Polyhedral Value Functions Ted Ralphs 1 Joint work with Menal Güzelsoy 2 and Anahita Hassanzadeh 1 1 COR@L Lab, Department of Industrial and Systems Engineering,

More information

Stabilized Branch-and-cut-and-price for the Generalized Assignment Problem

Stabilized Branch-and-cut-and-price for the Generalized Assignment Problem Stabilized Branch-and-cut-and-price for the Generalized Assignment Problem Alexandre Pigatti, Marcus Poggi de Aragão Departamento de Informática, PUC do Rio de Janeiro {apigatti, poggi}@inf.puc-rio.br

More information

MTHSC 4420 Advanced Mathematical Programming Homework 2

MTHSC 4420 Advanced Mathematical Programming Homework 2 MTHSC 4420 Advanced Mathematical Programming Homework 2 Megan Bryant October 30, 2013 1. Use Dijkstra s algorithm to solve the shortest path problem depicted below. For each iteration, list the node you

More information

Linear Programming. H. R. Alvarez A., Ph. D. 1

Linear Programming. H. R. Alvarez A., Ph. D. 1 Linear Programming H. R. Alvarez A., Ph. D. 1 Introduction It is a mathematical technique that allows the selection of the best course of action defining a program of feasible actions. The objective of

More information

Acceleration and Stabilization Techniques for Column Generation

Acceleration and Stabilization Techniques for Column Generation Acceleration and Stabilization Techniques for Column Generation Zhouchun Huang Qipeng Phil Zheng Department of Industrial Engineering & Management Systems University of Central Florida Sep 26, 2014 Outline

More information

Linear integer programming and its application

Linear integer programming and its application Linear integer programming and its application Presented by Dr. Sasthi C. Ghosh Associate Professor Advanced Computing & Microelectronics Unit Indian Statistical Institute Kolkata, India Outline Introduction

More information

Partial Path Column Generation for the Elementary Shortest Path Problem with Resource Constraints

Partial Path Column Generation for the Elementary Shortest Path Problem with Resource Constraints Partial Path Column Generation for the Elementary Shortest Path Problem with Resource Constraints Mads Kehlet Jepsen & Bjørn Petersen Department of Computer Science, University of Copenhagen Universitetsparken

More information