Advanced linear programming

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

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

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

Operations Research Lecture 6: Integer Programming

Week Cuts, Branch & Bound, and Lagrangean Relaxation

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

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

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

Introduction to Integer Linear Programming

Lecture 8: Column Generation

1 Column Generation and the Cutting Stock Problem

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

Chapter 3: Discrete Optimization Integer Programming

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs

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

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

Lecture 8: Column Generation

Decision Procedures An Algorithmic Point of View

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Recoverable Robustness in Scheduling Problems

Chapter 3: Discrete Optimization Integer Programming

3.4 Relaxations and bounds

3.10 Lagrangian relaxation

Section #2: Linear and Integer Programming

3.7 Cutting plane methods

3.10 Column generation method

Introduction to Integer Programming

3.10 Column generation method

Classification of Dantzig-Wolfe Reformulations for MIP s

CS Algorithms and Complexity

PART 4 INTEGER PROGRAMMING

Introduction column generation

Week 4. (1) 0 f ij u ij.

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

Algorithms and Theory of Computation. Lecture 13: Linear Programming (2)

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

Combinatorial Optimization

Gestion de la production. Book: Linear Programming, Vasek Chvatal, McGill University, W.H. Freeman and Company, New York, USA

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

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

AM 121: Intro to Optimization! Models and Methods! Fall 2018!

Topics in Theoretical Computer Science April 08, Lecture 8

AM 121: Intro to Optimization! Models and Methods! Fall 2018!

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

23. Cutting planes and branch & bound

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

Lecture 9: Dantzig-Wolfe Decomposition

Part 4. Decomposition Algorithms

19. Fixed costs and variable bounds

Integer Programming. Wolfram Wiesemann. December 6, 2007

Integer Programming Methods LNMB

Integer Programming Part II

Integer Linear Programming Modeling

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Applications. Stephen J. Stoyan, Maged M. Dessouky*, and Xiaoqing Wang

Discrete (and Continuous) Optimization WI4 131

The P versus NP Problem. Ker-I Ko. Stony Brook, New York

Section Notes 8. Integer Programming II. Applied Math 121. Week of April 5, expand your knowledge of big M s and logical constraints.

Integer programming: an introduction. Alessandro Astolfi

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

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

Optimisation and Operations Research

Decomposition and Reformulation in Integer Programming

Integer Linear Programming (ILP)

CS 6901 (Applied Algorithms) Lecture 3

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

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

SECTION 5.1: Polynomials

21. Set cover and TSP

Lagrangian Relaxation in MIP

Column Generation. i = 1,, 255;

Introduction to optimization and operations research

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

Reconnect 04 Introduction to Integer Programming

Optimisation and Operations Research

Lagrangean relaxation

Linear and Integer Programming - ideas

Linear integer programming and its application

Optimization Exercise Set n.5 :

Motivating examples Introduction to algorithms Simplex algorithm. On a particular example General algorithm. Duality An application to game theory

Lecture 1 Introduction

Linear Programming. Scheduling problems

Lectures 6, 7 and part of 8

Optimization Exercise Set n. 4 :

KNAPSACK PROBLEMS WITH SETUPS

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

2007/87. Valid inequalities for the single-item capacitated lot sizing problem with step-wise costs. Ayse Akbalik and Yves Pochet

Discrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P

Modelling linear and linear integer optimization problems An introduction

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

Multicommodity Flows and Column Generation

Strengthened Benders Cuts for Stochastic Integer Programs with Continuous Recourse

1 T 1 = where 1 is the all-ones vector. For the upper bound, let v 1 be the eigenvector corresponding. u:(u,v) E v 1(u)

Analysis of Algorithms. Unit 5 - Intractable Problems

Resource Constrained Project Scheduling Linear and Integer Programming (1)

A Hub Location Problem with Fully Interconnected Backbone and Access Networks

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

Transcription:

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 of Operations Research TU/e Engineer Netherlands Aerospace Center (NLR) Lecturer/researcher Computer Science UU: Research on planning algorithms, integer linear programming and simulation Master courses : Algorithms for decision support (COSC), Advanced Linear Programming (Mastermath) Coordination Software- and Gameproject 2

Method of working Lectures Self study material Slides and your own notes Book Some lecture notes (under construction) Additional reading material Exercises (if you hand in a solution I can check, good solutions can be made available on the course website) Slides and reading material published on website http://www.staff.science.uu.nl/~akker103/alp/ Written exam at the end. ONE retake 3 3/20/2017

Topics of part 2 Large-scale LP (Ch 6) Column generation and Dantzig-Wolfe decomposition Benders decomposition Integer Linear Programming (ILP) (Ch 10 + 11): Modelling Solving by branch-and-bound Cutting planes, branch-and-cut Lagrangean relaxation (Ch 11) Since column generation and Benders have their main applications in ILP, we will do ILP first. 4

This lecture ILP models Remarks on complexity LP and ILP Solving ILP by branch-and-bound Model choice matters: strength of LP-relaxation 5

Knapsack problem Knapsack with volume 15 What should you take with you to maximize utility? Item 1:paper 2:book 3:bread 4:smart -phone Utility 8 12 7 15 12 Volume 4 8 5 2 6 5:water 6

Knapsack problem (2) x 1 = 1 if item 1 is selected, 0 otherwise, x 2, max z= 8 x 1 + 12 x 2 + 7 x 3 + 15 x 4 + 12 x 5 subject to 4 x 1 + 8 x 2 + 5 x 3 + 2 x 4 + 6 x 5 15 x 1, x 2, x 3, x 4, x 5 Є {0,1} 7

(Mixed) Integer linear programming Min c T x + d T y s.t. Ax + By b x,y 0 x integral (or binary) Extension of LP: Good news: more possibilities for modelling Bad news: larger solution times 8

Combinatorial optimization Find feasible solution with minimal cost, maximal revenue Number of possible solutions is finite but very, very large Many combinatorial optimization problem can be modeled as ILP ILP is NP-hard 9

NP-hardness NP-hard!!!! P: problem can be solved in polynomial time NP: check solution for feasibility is polynomial, optimization is not provably faster than enumeration of all solutions. (non-deterministic polynomial) P vs NP $ 1 million Millenium Prize problem http://www.claymath.org/millennium/p_vs_np 10

A long time ago Sissa ben Dahir, the Grand Vizer to the Indian king, Shirham, presented his latest creation to his ruler. It was a game called chess. The king was so pleased, that he told Sissa that he could name his own reward. Sissa replied, "Majesty, give me the sum of 10,000 rupees; or give me some rice in the following manner: 1 grain to place on the first square of the chessboard, 2 grains to place on the second square, 4 grains for the third square, and 8 grains for the 4th square; and to continue in like manner, Cover Netherlands and Belgium with a layer of 1 m oh Mighty and Generous One, let me cover each of the 64 squares of the board." 11

(Mixed) Integer linear program Min c T x + D T y s.t. Ax + By b x,y 0 x integral (or binary) LP-relaxation Min c T x+ D T y s.t. Ax + By b x,y 0 Lower bound (or upper bound in case of maximization) 12

Solution method for linear programming Simplex method Slower than polynomial Practical Ellipsoid method (previous lecture) Polynomial (Khachian, 1979) Not practical Interior points methods Polynomial (Karmakar, 1984) Outperforms Simplex for very large instances LP P 13

Knapsack problem revisited since we use it to demonstrate branch-and-bound for ILP Knapsack volume b Item i has profit c i and weight a i x i = 1 if item i is selected, 0 otherwise max s. t. i= 1 x n i a i n i= 1 x i c i {0,1} x b i ( i = 1,2,..., n) 14 14

Knapsack problem: elements needed in branch-and-bound LP-relaxation: Greedy algorithm Step 0.Order variables such that c a 1 1 c a 2 2... c a n n Step1. x i 0 i ; restcapacity b = b; i = 1 Step 2. If a i b, then x j 1, else x j b a i.set b b a x i i ; j j + 1 Step 3. If b > 0, go to Step 2. Feasible solution: rounding down solution of LP-relaxation 15 15

Solving ILP by branch-and-bound Let x* be the best known feasible solution 1. Select an active sub problem F i (unevaluated node) 2. If F i is infeasible: delete node 3. Compute upper bound Z LP (F i ) by solving LP-relaxation and feasible solution x f (by rounding) If Z LP (F i ) value x* delete node (bounding) If x f is better than x*: update x* If solution x LP to LP-relaxation is integral, then If x LP is better than x*: update x* and node finished, otherwise split node into two new subproblems (branching) 4. Go to step 1 Optional This if for maximization problem, the book uses a minimization problem. 16

Modeling Objective function Constraints Decision variables 17

Facility location Possible locations: n Customers:m 18

Capacitated facility location Data: m customers, n possible locations of depot c ij unit cost of serving customer i by depot j Customer demand: D i Capacity depot: C j Fixed cost for opening depot DC: F j Which depots are opened and which customer is served by which depot? 19

Capacitated facility location: Our example shows modelling possibilities with binary variables Our model uses binary variables for fixed cost constraints Our model uses binary variables forcingconstraints: depot can only be used when it is open. 20

Uncapacitated facility location Data: m customers, n possible locations of depot Each customer is assigned to one depot d ij cost of serving customer i by depot j Fixed cost for opening depot DC: F j Which depots are opened and which customer is served by which depot? 21

Uncapacitated facility location Two formulations: (FL) and (AFL) P F is defined as the feasible set corresponding to the LP-relaxation of F (P F is a polyhedron) We show that P P FL AFL This means that (FL) gives a stronger lower bound However, (FL) has more constraints 22

Strength (quality) of an ILP formulation T set of feasible integral solutions For formulation F, P F is defined as the feasible set of solutions of the LP-relaxation of F P F is a polyhedron Ideal situation: P F is the convex hull of T Formulation A is stronger than formulation B if P A P B Hence, the bound is better This is likely to reduce the number of nodes in the branchand-bound tree This shows that model choices matter! 23

24

Minimum spanning tree G=(N,E) N set of n nodes E set of m edges C e cost of edge e Tree is a subgraph without cycles Spanning tree is a tree containing all nodes Find a spanning tree with minimum cost We compare formulations (Subtour) and (Cut) and show that (Subtour) is stronger. 25

Procurement problem Computer-manufacturer wants to buy 600 hard-disks Offers: Fixed cost Minimum amount to order Price per item Discount Threshold Discount price Available number of items A 100 50 24 250 18 500 B 75 50 28 150 20 700 What is the optimal procurement plan? 26

Procurement problem Contains important ILP modelling features: Already seen in facility location: Fixed cost Forcing contraints Other features: Linearize piece-wise linear cost Choice constraints 27

Treasure island Diamonds are buried on an island Numbers give number of diamonds in neighboring positions (include diagonal) At most one diamond per position No diamond at position with number 28

Treasure island with pitfall Like treasure island but exactly one given number is incorrect. 29

Wrap-up Integer linear programming (ILP) has many modelling possibilities ILP can be solved by branch-and-bound Soemtimes there are different ILP formulation for the same problem. Formulation makes a difference, e.g. because of the strength of the LP-relaxation. 30