Week 10. c T x + d T y. Ax + Dy = b. x integer.

Size: px
Start display at page:

Download "Week 10. c T x + d T y. Ax + Dy = b. x integer."

Transcription

1 Week 10 1 Integer Linear Programg So far we considered LP s with continuous variables. However sometimes decisions are intrinsically restricted to integer numbers. E.g., in the long term planning, decision variables that model acquisition of a number of machines for a future production process, or ordering of airplanes, cars etc., are bound to be integer. Therefore an important class of optimization problems is so-called mixed integer linear programg problems (MILP): c T x + d T y Ax + Dy = b x, y 0 x integer. Without continuous variables y it is called Integer LP (ILP). Ignoring the integrality restriction gives the so-called LP-relaxation. Solving the LP-relaxation and rounding is usually not too bad in case the optimal solution has high numbers. But in case the x-values of the optimal LP-solution are between 0 and 1 then rounding may make a significant difference and indeed lead to unacceptable infeasibilities. This is all the more important since integer variables that are restricted to have value either 0 or 1, so-called binary variables, enhance the modelling power of ILP enormously. 1.1 Modelling with binary variables Binary variables are used to represent a choice: take an action or not, process a job on a particular machine or not, select an item in your knapsack or not. Facility location m clients are to be served from facilities to be established on any of n candidate locations c j is the cost of opening a facility at location j, j = 1,..., n d ij is the cost of serving client i from facility j facilities have unlimited capacity w.r.t. serving clients select locations for facilities and assign each client to a facility opened such as to imize total cost We introduce binary variables y j, which gets value 1 if a facility is opened on location j and value 0 otherwise, j = 1,..., n; 1

2 x ij, which gets value 1 if client i is served from a facility at location j, and 0 otherwise, i = 1,..., m, j = 1,..., n The ILP-formulation n j=1 c jy j + m n i=1 j=1 d ijx ij n j=1 x ij = 1, x ij y j, x ij, y j {0, 1}. i, i, j, (1) The second set of constraints prohibit service from a facility that is not open. We can apply a trick with a large enough number M to get to a more compact ILP-formulation of the facility location problem: n j=1 c jy j + m n i=1 j=1 d ijx ij n j=1 x ij = 1, m i=1 x ij My j, x ij y j {0, 1}. Again, the second constraints prohibit service from a facility that is not open, and if the facility is open then M is chosen so big that there is no restriction on the number of clients to be serve from it. Notice that M = m suffices here. We could be tempted to conclude that the more compact formulation is the better of the two. However, we will exhibit a criterion for the strength of an ILP-formulation, under which, in fact, formulation (1) is stronger. Clearly, both formulations have the same optimal solution with value that we call Z IP. For formulations (1) and (2) the LP-relaxation gives an optimal solution with value, respectively, Z F L1 and Z F L2, both less than or equal to Z IP. A closer look at the formulations reveals that Z F L2 Z F L1 Z IP. Notice that, in the LP-relaxation, any solution that satisfies x ij y j, i, also satisfies m i=1 x ij my j, but not necessarily the other way round (think of a solution with value y j = 1/2). Thus the feasible region of the LP-relaxation of (2) contains the feasible region of the LP-relaxation of (1), whereas both contain the convex hull of the feasible (integer) points of (1) and (2). It is easy to see that all extreme points of the convex hull of a set of integer points are integer. This means that if we had the formulation in terms of linear inequalities of the convex hull of the feasible points of the facility location problem, i.e., the formulation whose LP-relaxation has only integer extreme points, then we could simply solve the facility location problem by Simplex or any other LP-method. i, j, (2) 2

3 In Chapter 11 we will see solution methods that are based on solutions for the LP-relaxations and for these methods the closer the feasible region of the LPrelaxation is to the convex hull of the integer feasible solutions the better. In this context we call formulation (1) stronger than formulation (2) since the feasible region of the LP-relaxation of (1) the feasible region of the LP-relaxation of (1). We do not qualify one polyhedron as stronger than another if it is not fully contained in the other one. Disjunctive constraints The trick with big M is also applicable to model the following situation. Suppose that at least one of two constraints a T 1 x b 1, a T 2 x b 2 has to be satisfied. Introduce binary variable y and a large enough number M and set a T 1 x b 1 My, a T 2 x b 2 M(1 y) y {0, 1}. If M is large enough then y = 1 implies that the first restriction is always satisfied, and y = 0 that the second restriction is always satisfied. This can be generalised as is asked in Exercise Making ILP-formulations of problems is a craft, in which some people are very good. Please read for yourself the examples for job sequencing with set-up times and for the allocation of fellowships and make Exercise Minimum spanning tree Minimum Spanning Tree (MST): Given a graph G = (V, E) and (integer) weights on the edges c : E Z, find a spanning tree of edges of G with imum total weight of its edges. We skipped this problem in Section It is extremely easily solved by a greedy method that orders the edges according to non-decreasing weight and selects them in this order unless the next edge in the order makes a cycle with the previously selected edges, in which case it is not selected. However, from the viewpoint of learning about strength of a ILP-formulation we will study two ILP-formulations of the MST which at first sight look equally good. In both formulations we use decision variables x e getting value 1 if they 3

4 are in the tree and 0 otherwise. In the first formulations we use notation E(S) = {{i, j} i S, j S}, for all edges entirely inside a subset S of the nodes. e E c ex e e E x e = n 1, S V, S, V e E(S) x e S 1, S V, S, V x e {0, 1}, e E. (3) The first constraint ensures the right number of edges in the solution and the second group of constraints ensures that there are no cycles (they have become known in the literature under the name subtour eliation constraints. In the LP-relaxation we replace the constraints x e {0, 1} by 0 x e 1, and call its feasible P sub. In the second formulation we use notation δ(s) = {{i, j} i S, j / S} for the cutset of subset of nodes S, i.e., the edges that have one vertex in S and the other outside S. Clearly a spanning tree must have at least one edge in the cutset of any subset of the nodes. Indeed this leads to the following formulation: e E c ex e e E x e = n 1, S V, S, V e δ(s) x (4) e 1, S V, S, V x e {0, 1}, e E. Also here, in the LP-relaxation we replace the constraints x e {0, 1} by 0 x e 1, and call its feasible P cut. Theorem 1.1 P sub P cut Proof. Proof as in the book. The example in the book shows that P cut can have fractional extreme points. It shows a fractional solution that satisfies all constraints of the LP-relaxation and has a value that is superior to the optimal integer value. The point does not satisfy all constraints of the LP-relaxation of formulation (3), since it contains a cycle with sum of x-values 2 i.o. the required 3. In fact it can be shown that P sub is exactly equal to the convex hull of all spanning trees. Hence, solving the LP-relaxation of (3) solves the problem MST. The only obstacle is that the LP-relaxation has 2 n 1 constraints. However, the separation problem is solvable by solving a -cut problem and therefore the LP-relaxation can be solved in polynomial time through the ellipsoid method. Of course, one would never do so in practice, given a pure MSTproblem instance, but it could be a nice alternative in case of MST with some side constraints. 4

5 Perfect matching Given a graph G = (V, E), a matching is a subset of the edges that are vertex disjoint (no two edges are incident to the same vertex). Given a graph with an even number of vertices, a perfect matching is a matching such that the edges cover all vertices, i.e., each vertex is coupled to one other vertex. Given graph G = (V, E) and weights on edges c : E Z, find a perfect matching of imum total weight. The {0, 1}-LP formulation is simply, using the notation of δ introduced before, e E c ex e e δ(v) x e = 1, v V x e {0, 1}, e E. This allows to set values 1 2 on all edges of odd cycles, while in fact at least one vertex on an odd cycle should have an edge to some vertex outside the cycle. This observation can be captured in constraints. For each odd size subset S V, x e 1. e δ(s) Adding these constraints to the ones given before and relaxing the integrality constraints defines the polytope of all perfect matchings as you can read in the book Theory of linear and integer programg by Alexander Schrijver. This is not an easy proof! To prove that the convex hull of all perfect matchings is contained in the polytope is rather straightforward. But to prove the converse is far from trivial. Again, a formulation with an exponential number of constraints, which can be separated in polynomial time. In this case, the standard solution method is a primal-dual method based on the extended formulation. Please read for yourself the two alternative formulation of the Travelling Salesman Problem and make Exercise Example of problematic ILP-formulation That it is craftmanship I recently encountered in a Bachelor s project at the VU. It concerns a problem from biology, specifically from phylogeny. We are to construct the phylogeny tree of a set of species (or subspecies) from data that are given in the form of rooted binary trees on three leaves, as in Fig. 1. The unique rooted triplet (triplet for short) on a leaf set {x, y, z} in which the parent of x and y is a proper descendant of the lowest common ancestor of x and z is denoted by xy z (which is identical to yx z). The triplet in the figure is xy z. We say that a directed binary tree containing, amongst others, leaves x, y and z is consistent with triplet xy z (and conversely xy z is consistent with the tree) if it contains a subdivision of xy z, i.e., the rooted binary tree xy z can be 5

6 x y z Figure 1: One of the three possible triplets on the leaves x, y and z. Note that, we adopt the convention to direct all arcs downwards, away from the root. obtained from the tree by a series of contractions (of edges) and deletions (of vertices). Clearly the triplets xy z and xz y cannot be consistent with one tree. But also the triplets xy z, xw z and zw y cannot be consistent with one tree. Due to measurement errors the triplets are not all perfect, hence inconsistencies may occur. The optimization problem then emerges: Max Phylogenetic Tree: Given a set of triplets on n species, find the binary tree that contains all n species as its leaves and that is consistent with a maximum number of triplets. It is remarkably hard to find a correct ILP-formulation for this problem. In fact the only one we have is indirect, in the sense that it gives the set of consistent triplets in an optimal tree, without giving the tree. Given a set of triplets known to allow for a consistent tree, such a tree can be constructed by a recursive algorithm in O(n log n) time. The ILP-formulation itself is based on a theorem that has been proved by various authors: Theorem 1.2 A binary tree is not consistent with a triplet set if and only if there is a subset of at most four leaves such that the triplets on these four leaves are not all consistent with the tree. Thus, we only have to make sure that for every subset of four leaves the triplets that we select can be made consistent. For the ILP-formulation ( ) we introduce a n variable t ab c for each possible triplet (there are 3 of them), getting value 3 1 meaning that the triplet is chosen to be consistent and 0 otherwise. Then for each set a, b, c we add the restriction t ab c + t ac b + t bc a = 1, and for each ordered set a, b, c, d we add the restriction t ab c + t ac d t bc d 1 enforcing that is the first two triplets are consistent then the third one also needs to be consistent. Given input triplet set T we set the objective t ab c. ab c T 6

7 There are some remarkable features. The number of constraints is growing in the O(n 4 ) which means that problems with more than 40 species become problematic, just by the size of the input, for a desktop version of CPLEX. It is worth investigating how much redundancy there is i the formulation and diish the number of constraints. Or if the separation problem can be solved more efficiently than checking all O(n 4 ) constraints, i.e., without needing to specify all of them. Secondly, in all cases from practice that we had the optimal solution of the LP-relaxation appeared to be integer-valued. The polytope certainly has not only integral extreme points, since then we would have shown that P = NP. But maybe it has the {0, 1, 1 2 }-property? Material of Week 10 from [B& T] Chapter 10 Exercises of Week , 10.4, 10.11, 10.13, and if you like 10.8 Next time in two weeks: April 20 Chapter 11 7

15.093: Optimization Methods. Lecture 12: Discrete Optimization

15.093: Optimization Methods. Lecture 12: Discrete Optimization 15.093: Optimization Methods Lecture 12: Discrete Optimization 1 Todays Lecture Modeling with integer variables Slide 1 What is a good formulation? Theme: The Power of Formulations 2 Integer Optimization

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli November 11, 2014 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x

More information

1 The Minimum Spanning Tree (MST) Problem

1 The Minimum Spanning Tree (MST) Problem IEOR269: Lecture 3 1 Integer Programming and Combinatorial Optimization Lecture #3 IEOR 269 Feb 5, 2010 Lecturer: Dorit Hochbaum Scribe: Dogan Bilguvar Handouts: Game of Fiver and Fire Station Problems

More information

7. Lecture notes on the ellipsoid algorithm

7. Lecture notes on the ellipsoid algorithm Massachusetts Institute of Technology Handout 19 18.433: Combinatorial Optimization May 4th, 009 Michel X. Goemans 7. Lecture notes on the ellipsoid algorithm The simplex algorithm was the first algorithm

More information

Lecture 9 and 10: Iterative rounding II

Lecture 9 and 10: Iterative rounding II Approximation Algorithms and Hardness of Approximation March 19, 013 Lecture 9 and 10: Iterative rounding II Lecturer: Ola Svensson Scribes: Olivier Blanvillain In the last lecture we saw a framework for

More information

Modelling linear and linear integer optimization problems An introduction

Modelling linear and linear integer optimization problems An introduction Modelling linear and linear integer optimization problems An introduction Karen Aardal September 5, 2016 In optimization, developing and analyzing models are key activities. Designing a model is a skill

More information

CSC Linear Programming and Combinatorial Optimization Lecture 12: Approximation Algorithms using Tools from LP

CSC Linear Programming and Combinatorial Optimization Lecture 12: Approximation Algorithms using Tools from LP S2411 - Linear Programming and ombinatorial Optimization Lecture 12: Approximation Algorithms using Tools from LP Notes taken by Matei David April 12, 2005 Summary: In this lecture, we give three example

More information

1 NP-Completeness (continued)

1 NP-Completeness (continued) Mathematical Programming Lecture 27 OR 630 Fall 2006 November 30, 2006 adapted from notes by Omer Hancer 1 NP-Completeness (continued) Before starting on complexity theory, we talked about running times,

More information

15.083/6.859 Integer Programming & Combinatorial Optimization Midterm Review. Kwong Meng Teo

15.083/6.859 Integer Programming & Combinatorial Optimization Midterm Review. Kwong Meng Teo 15.083/6.859 Integer Programg & Combinatorial Optimization Midterm Review Kwong Meng Teo 18th October 2004 1 Chapter 1 1.1 Modeling Techniques General rules to express a valid formulation Slide 1 Understand

More information

2 Approximation Results for Group Steiner Tree

2 Approximation Results for Group Steiner Tree Advanced Approximation Algorithms (CMU 15-854B, Spring 2008) Lecture 10: Group Steiner Tree problem 14 February, 2008 Lecturer: Anupam Gupta Scribe: Amitabh Basu 1 Problem Definition We will be studying

More information

(where C, X R and are column vectors)

(where C, X R and are column vectors) CS 05: Algorithms (Grad) What is a Linear Programming Problem? A linear program (LP) is a minimization problem where we are asked to minimize a given linear function subject to one or more linear inequality

More information

Solving the ILP using branch-and-cut

Solving the ILP using branch-and-cut Solving the ILP using branch-and-cut Solving ILPs is a main topic in combinatorial optimization. We will take a brief look at the branch-and-cut approach. Branch-and-cut makes use of two techniques: Cutting

More information

3.3 Easy ILP problems and totally unimodular matrices

3.3 Easy ILP problems and totally unimodular matrices 3.3 Easy ILP problems and totally unimodular matrices Consider a generic ILP problem expressed in standard form where A Z m n with n m, and b Z m. min{c t x : Ax = b, x Z n +} (1) P(b) = {x R n : Ax =

More information

Chapter 2 Integer Programming. Paragraph 1 Total Unimodularity

Chapter 2 Integer Programming. Paragraph 1 Total Unimodularity Chapter 2 Integer Programming Paragraph 1 Total Unimodularity What we did so far We studied algorithms for solving linear programs Simplex (primal, dual, and primal-dual) Ellipsoid Method (proving LP is

More information

7 Branch and Bound, and Dynamic Programming

7 Branch and Bound, and Dynamic Programming 7 Branch and Bound, and Dynamic Programming 7.1 Knapsack An important combinatorial optimization problem is the Knapsack Problem, which can be defined as follows: Given nonnegative integers n, c 1,...,

More information

Lecture 3: Linear Programming Relaxations and Rounding

Lecture 3: Linear Programming Relaxations and Rounding Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can

More information

Integer Programming Formulations for Minimum Spanning Forest Problem

Integer Programming Formulations for Minimum Spanning Forest Problem Integer Programming Formulations for Minimum Spanning Forest Problem Mehdi Golari Systems and Industrial Engineering Department The University of Arizona Math 543 November 19, 2015 Golari (SIE@UA) () IP

More information

Lecture Notes in Integer Programming

Lecture Notes in Integer Programming Lecture Notes in Integer Programming Andrea Lodi Version 1.2, December 11, 2013 Abstract These are the lecture notes for the course of Optimization Models and Algorithms M, academic year 2013-2014. In

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS Coping with NP-completeness 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Q. Suppose I

More information

10.1 Integer Programming and LP relaxation

10.1 Integer Programming and LP relaxation CS787: Advanced Algorithms Lecture 10: LP Relaxation and Rounding In this lecture we will design approximation algorithms using linear programming. The key insight behind this approach is that the closely

More information

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

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

College of Computer & Information Science Fall 2007 Northeastern University 9 October 2007

College of Computer & Information Science Fall 2007 Northeastern University 9 October 2007 College of Computer & Information Science Fall 2007 Northeastern University 9 October 2007 CS G399: Algorithmic Power Tools I Scribe: Laura Poplawski Lecture Outline: Network Design Steiner Forest (primal-dual

More information

Suggested solution to written exam Introduction to linear and Integer programming (DM515)

Suggested solution to written exam Introduction to linear and Integer programming (DM515) Suggested solution to written exam Introduction to linear and Integer programming (DM515) Institut for Matematik & Datalogi Syddansk Universitet Monday, June 6, 2011, kl. 9 13 PROBLEM 1 Relaxation, the

More information

Lecture 11: Integer Linear Programs

Lecture 11: Integer Linear Programs Lecture 11: Integer Linear Programs 1 Integer Linear Programs Consider the following version of Woody s problem: x 1 = chairs per day, x 2 = tables per day max z = 35x 1 + 60x 2 profits 14x 1 + 26x 2 190

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology Handout 3 18.433: Combinatorial Optimization February 9th, 2009 Michel X. Goemans 1. Lecture notes on bipartite matching Matching problems are among the fundamental

More information

Lecture 5. Combinatorial Algorithm for maximum cardinality matching (König s Theorem and Hall s Theorem)

Lecture 5. Combinatorial Algorithm for maximum cardinality matching (König s Theorem and Hall s Theorem) Topics in Theoretical Computer Science March 16, 2015 Lecture 5 Lecturer: Ola Svensson Scribes: Mateusz Golebiewski, Maciej Duleba These lecture notes are partly based on http://theory.epfl.ch/courses/topicstcs/lecture10.pdf

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

Totally Unimodular Matrices

Totally Unimodular Matrices Totally Unimodular Matrices m constraints, n variables Vertex solution: unique solution of n linearly independent tight inequalities Can be rewritten as: That is: Totally Unimodular Matrices Assuming all

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

1 Approximation Algorithms

1 Approximation Algorithms LECTURES 7, 8 and 9 1 Approximation Algorithms NP-hardness of many combinatorial optimisation problems gives very little hope that we can ever develop an efficient algorithm for their solution. There are

More information

Lecture 6: Approximation via LP Rounding

Lecture 6: Approximation via LP Rounding Lecture 6: Approximation via LP Rounding Let G = (V, E) be an (undirected) graph. A subset C V is called a vertex cover for G if for every edge (v i, v j ) E we have v i C or v j C (or both). In other

More information

Lecture 7: Approximation via Randomized Rounding

Lecture 7: Approximation via Randomized Rounding Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining

More information

Good luck, veel succes!

Good luck, veel succes! Final exam Advanced Linear Programming, May 7, 13.00-16.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam

More information

Discuss the size of the instance for the minimum spanning tree problem.

Discuss the size of the instance for the minimum spanning tree problem. 3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can

More information

Iterative Rounding and Relaxation

Iterative Rounding and Relaxation Iterative Rounding and Relaxation 1 / 58 Iterative Rounding and Relaxation James Davis Department of Computer Science Rutgers University Camden jamesdav@camden.rutgers.edu February 12, 2010 Iterative Rounding

More information

A Branch-and-Cut Approach to the Duplication and Loss Detection in Genome Organization. Sandro Andreotti Freie Universität Berlin

A Branch-and-Cut Approach to the Duplication and Loss Detection in Genome Organization. Sandro Andreotti Freie Universität Berlin A Branch-and-Cut Approach to the Duplication and Loss Detection in Genome Organization Sandro Andreotti Freie Universität Berlin IMPRS Colloquium, 31.10.2012 Introduction Small Phylogeny Problem ancestor

More information

2-stage stochastic linear programming

2-stage stochastic linear programming 2-stage stochastic linear programming Yesterday, we considered problems that were modelling an extreme form of uncertainty. The decision maker, just knows the sort of problem he is going to be solved,

More information

Minimize subject to. x S R

Minimize subject to. x S R Chapter 12 Lagrangian Relaxation This chapter is mostly inspired by Chapter 16 of [1]. In the previous chapters, we have succeeded to find efficient algorithms to solve several important problems such

More information

Optimization (2MMD10/2DME20) TU/e, fall 2015 Problem set for weeks 4 and 5

Optimization (2MMD10/2DME20) TU/e, fall 2015 Problem set for weeks 4 and 5 Optimization (2MMD10/2DME20) TU/e, fall 2015 Problem set for weeks 4 and 5 Exercise 69. State for each of the following decision problems whether you think that it is contained in NP and/or co-np. If you

More information

6. Mixed Integer Linear Programming

6. Mixed Integer Linear Programming 6. Mixed Integer Linear Programming Javier Larrosa Albert Oliveras Enric Rodríguez-Carbonell Problem Solving and Constraint Programming (RPAR) Session 6 p.1/40 Mixed Integer Linear Programming A mixed

More information

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization

More information

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 20: Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 20: Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 20: Consequences of the Ellipsoid Algorithm Instructor: Shaddin Dughmi Announcements Outline 1 Recapping the Ellipsoid Method 2 Complexity

More information

Stanford University CS261: Optimization Handout 5 Luca Trevisan January 18, 2011

Stanford University CS261: Optimization Handout 5 Luca Trevisan January 18, 2011 Stanford University CS261: Optimization Handout 5 Luca Trevisan January 18, 2011 Lecture 5 In which we introduce linear programming. 1 Linear Programming A linear program is an optimization problem in

More information

CHAPTER 9. Integer Programming

CHAPTER 9. Integer Programming CHAPTER 9 Integer Programming An integer linear program (ILP) is, by definition, a linear program with the additional constraint that all variables take integer values: (9.1) max c T x s t Ax b and x integral

More information

Duality. Uri Feige. November 17, 2011

Duality. Uri Feige. November 17, 2011 Duality Uri Feige November 17, 2011 1 Linear programming duality 1.1 The diet problem revisited Recall the diet problem from Lecture 1. There are n foods, m nutrients, and a person (the buyer) is required

More information

1 Bipartite matching and vertex covers

1 Bipartite matching and vertex covers ORF 523 Lecture 6 Spring 2016, Princeton University Instructor: A.A. Ahmadi Scribe: G. Hall Thursday, February 25, 2016 When in doubt on the accuracy of these notes, please cross check with the instructor

More information

PART 9 INTEGER PROGRAMMING

PART 9 INTEGER PROGRAMMING PART 9 INTEGER PROGRAMMING 194 Primary objectives: Capital budgeting: Modelling with integer programming Branch-and-Bound Cutting planes Modelling: Combinatorial Auctions and Constructing an index fund

More information

CSC Linear Programming and Combinatorial Optimization Lecture 7: von Neumann minimax theorem, Yao s minimax Principle, Ellipsoid Algorithm

CSC Linear Programming and Combinatorial Optimization Lecture 7: von Neumann minimax theorem, Yao s minimax Principle, Ellipsoid Algorithm D CSC2411 - Linear Programming and Combinatorial Optimization Lecture : von Neumann minimax theorem, Yao s minimax Principle, Ellipsoid Algorithm Notes taken by Xuming He March 4, 200 Summary: In this

More information

Introduction to Operations Research

Introduction to Operations Research 0-0 Introduction to Operations Research Peng Zhang June 7, 2015 School of Computer Science and Technology, Shandong University, Jinan, 250101, China. Email: algzhang@sdu.edu.cn. 1 Introduction 1 2 Overview

More information

Integer Programming: Large Scale Methods Part I (Chapter 16)

Integer Programming: Large Scale Methods Part I (Chapter 16) Integer Programming: Large Scale Methods Part I (Chapter 16) University of Chicago Booth School of Business Kipp Martin November 9, 2016 1 / 55 Outline List of Files Key Concepts Column Generation/Decomposition

More information

CS 583: Approximation Algorithms Lecture date: February 3, 2016 Instructor: Chandra Chekuri

CS 583: Approximation Algorithms Lecture date: February 3, 2016 Instructor: Chandra Chekuri CS 583: Approximation Algorithms Lecture date: February 3, 2016 Instructor: Chandra Chekuri Scribe: CC Notes updated from Spring 2011. In the previous lecture we discussed the Knapsack problem. In this

More information

Topic: Primal-Dual Method: Steiner Forest and Facility Location Date: 3/8/2007

Topic: Primal-Dual Method: Steiner Forest and Facility Location Date: 3/8/2007 CS880: Approximations Algorithms Scribe: Chi Man Liu Lecturer: Shuchi Chawla Topic: Primal-Dual Method: Steiner Forest and Facility Location Date: 3/8/2007 Last time we discussed how LP-duality can be

More information

We have the following important fact whose proof we leave as an exercise for the reader.

We have the following important fact whose proof we leave as an exercise for the reader. LP Geometry We now briefly turn to a discussion of LP geometry extending the geometric ideas developed in Section for dimensional LPs to n dimensions. In this regard, the key geometric idea is the notion

More information

Scheduling Interval Scheduling, Reservations, and Timetabling. Tim Nieberg

Scheduling Interval Scheduling, Reservations, and Timetabling. Tim Nieberg Scheduling Interval Scheduling, Reservations, and Timetabling Tim Nieberg Service Models activities, which are restricted by time windows, have to be assigned to resources often activities use several

More information

MIXED INTEGER LINEAR PROGRAMMING FORMULATION TECHNIQUES. April 24, 2013

MIXED INTEGER LINEAR PROGRAMMING FORMULATION TECHNIQUES. April 24, 2013 MIXED INTEGER LINEAR PROGRAMMING FORMULATION TECHNIQUES JUAN PABLO VIELMA April 24, 213 Abstract. A wide range of problems can be modeled as Mixed Integer Linear Programming (MIP) problems using standard

More information

Discrete Optimization

Discrete Optimization Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.1-4.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 2015-03-31 Todays presentation Chapter 3 Transforms using

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

56:272 Integer Programming & Network Flows Final Exam Solutions -- Fall 99

56:272 Integer Programming & Network Flows Final Exam Solutions -- Fall 99 56:272 Integer Programming & Network Flows Final Exam Solutions -- Fall 99 Write your name on the first page, and initial the other pages. Answer all the multiple-choice questions and X of the remaining

More information

LINEAR PROGRAMMING. Vazirani Chapter 12 Introduction to LP-Duality. George Alexandridis(NTUA)

LINEAR PROGRAMMING. Vazirani Chapter 12 Introduction to LP-Duality. George Alexandridis(NTUA) LINEAR PROGRAMMING Vazirani Chapter 12 Introduction to LP-Duality George Alexandridis(NTUA) gealexan@mail.ntua.gr 1 LINEAR PROGRAMMING What is it? A tool for optimal allocation of scarce resources, among

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

Linear Programming and Network Optimization

Linear Programming and Network Optimization Linear Programming and Network Optimization Jonathan Turner March 1, 1 Many of the problem we have been studying can be viewed as special cases of the more general linear programming problem (LP). In the

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;

More information

5 TRAVELING SALESMAN PROBLEM

5 TRAVELING SALESMAN PROBLEM 5 TRAVELING SALESMAN PROBLEM PROBLEM DEFINITION AND EXAMPLES TRAVELING SALESMAN PROBLEM, TSP: Find a Hamiltonian cycle of minimum length in a given complete weighted graph G=(V,E) with weights c ij =distance

More information

Decision Aid Methodologies In Transportation Lecture 3: Integer programming

Decision Aid Methodologies In Transportation Lecture 3: Integer programming Decision Aid Methodologies In Transportation Lecture 3: Integer programming Chen Jiang Hang Transportation and Mobility Laboratory May 13, 2013 Chen Jiang Hang (Transportation and Mobility Decision Laboratory)

More information

1. Some applications of integer programming. 2. Solving integer programming problems. 3. The graphical solution of integer programming

1. Some applications of integer programming. 2. Solving integer programming problems. 3. The graphical solution of integer programming 6. INTEGER PROGRAMMING 1. Some applications of integer programming 2. Solving integer programming problems 3. The graphical solution of integer programming problems 4. The branch and bound method 4.1 The

More information

56:272 Integer Programming & Network Flows Final Exam -- Fall 99

56:272 Integer Programming & Network Flows Final Exam -- Fall 99 56:272 Integer Programming & Network Flows Final Exam -- Fall 99 Write your name on the first page, and initial the other pages. Answer all the multiple-choice questions and X of the remaining questions.

More information

Assignment 3a: The Traveling Salesman Problem

Assignment 3a: The Traveling Salesman Problem Assignment 3a: The Traveling Salesman Problem MVE165/MMG630: Applied Optimization 2012 Emil Gustavsson* *Mathematical Sciences, Chalmers University of Technology April 26, 2012 Emil Gustavsson (Chalmers)

More information

Algorithms for Integer Programming

Algorithms for Integer Programming Algorithms for Integer Programming Laura Galli December 18, 2014 Unlike linear programming problems, integer programming problems are very difficult to solve. In fact, no efficient general algorithm is

More information

Lecture 18&19: Iterative relaxation

Lecture 18&19: Iterative relaxation CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 2009) Lecture 18&19: Iterative relaxation Lecturer: Mohammad R. Salavatipour Date: Nov 5, 2009 Scriber: Zhong Li 1 Spanning Tree Polytope

More information

BIP Examples: Set Covering Problem. Set Covering Problem formulation

BIP Examples: Set Covering Problem. Set Covering Problem formulation BIP Examples: Set Covering Problem A hospital ER needs to keep doctors on call, so that a qualified individual is available to perform every medical procedure that might be required (there is an o cial

More information

CSCI 3210: Computational Game Theory Linear Programming and 2-Player Zero-Sum Games Ref: Wikipedia and [AGT] Ch 1

CSCI 3210: Computational Game Theory Linear Programming and 2-Player Zero-Sum Games Ref: Wikipedia and [AGT] Ch 1 CSCI 3210: Computational Game Theory Linear Programming and 2-Player Zero-Sum Games Ref: Wikipedia and [AGT] Ch 1 Mohammad T. Irfan Email: mirfan@bowdoin.edu Web: www.bowdoin.edu/~mirfan Course Website:

More information

Math 5593 Linear Programming Weeks 12/13

Math 5593 Linear Programming Weeks 12/13 Math 5593 Linear Programming Weeks 12/13 University of Colorado Denver, Fall 2013, Prof. Engau 1 Introduction 2 Polyhedral Theory 3 LP and Lagrangean Relaxation 4 Computational Methods and Algorithms Integer

More information

2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines 2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

More information

The multi-integer set cover and the facility terminal cover problem

The multi-integer set cover and the facility terminal cover problem The multi-integer set cover and the facility teral cover problem Dorit S. Hochbaum Asaf Levin December 5, 2007 Abstract The facility teral cover problem is a generalization of the vertex cover problem.

More information

Generalizing Vertex Cover, an Introduction to LPs

Generalizing Vertex Cover, an Introduction to LPs CS5234: Combinatorial and Graph Algorithms Lecture 2 Generalizing Vertex Cover, an Introduction to LPs Lecturer: Seth Gilbert August 19, 2014 Abstract Today we consider two generalizations of vertex cover:

More information

Linear, Integer Linear and Dynamic Programming

Linear, Integer Linear and Dynamic Programming Linear, Integer Linear and Dynamic Programming Enrico Malaguti DEIS - University of Bologna November 10th, 2011 Linear, Integer Linear and Dynamic Programming (E. Malaguti) 1 Outline 1 Optimization Problems

More information

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition

More information

Honours Graph Theory

Honours Graph Theory University of Zimbabwe HMTH215 Graph Theory Honours Graph Theory Author: P. Mafuta Department: Mathematics April 6, 2016 Chapter 1 Introduction: Basic Graph Theory This course serves to answer many questions

More information

Lecture 12: Steiner Tree Problems

Lecture 12: Steiner Tree Problems Advanced Approximation Algorithms (CMU 15-854B, Spring 008) Lecture 1: Steiner Tree Problems February 1, 008 Lecturer: Anupam Gupta Scribe: Michael Dinitz 1 Finishing up Group Steiner Tree Hardness Last

More information

1 Approximation Algorithms: Vertex Cover

1 Approximation Algorithms: Vertex Cover Approximation Algorithms: Vertex Cover. Introduction to Approximation Algorithms There are several optimization problems such as Minimum Spanning Tree (MST), Min-Cut, Maximum- Matching, in which you can

More information

Delegate and Conquer: On Minimum Degree Minimum Cost Spanning Tree

Delegate and Conquer: On Minimum Degree Minimum Cost Spanning Tree Delegate and Conquer: On Minimum Degree Minimum Cost Spanning Tree R. Ravi Carnegie Mellon University Joint Work with Mohit Singh 10/5/2006 1 Minimum Degree MST problem Given an undirected graph G, cost

More information

Polynomiality of Linear Programming

Polynomiality of Linear Programming Chapter 10 Polynomiality of Linear Programming In the previous section, we presented the Simplex Method. This method turns out to be very efficient for solving linear programmes in practice. While it is

More information

MATH3902 Operations Research II: Integer Programming Topics

MATH3902 Operations Research II: Integer Programming Topics MATH3902 Operations Research II Integer Programming p.0 MATH3902 Operations Research II: Integer Programming Topics 1.1 Introduction.................................................................. 1

More information

Approximation Algorithms for Weighted Vertex Cover

Approximation Algorithms for Weighted Vertex Cover Approximation Algorithms for Weighted Vertex Cover CS 511 Iowa State University November 7, 2010 CS 511 (Iowa State University) Approximation Algorithms for Weighted Vertex Cover November 7, 2010 1 / 14

More information

Advantages of utilizing new global optimality conditions when constructing column generation algorithms for integer programming problems

Advantages of utilizing new global optimality conditions when constructing column generation algorithms for integer programming problems MASTER S THESIS Advantages of utilizing new global optimality conditions when constructing column generation algorithms for integer programming problems Martin Önneflod Department of Mathematics CHALMERS

More information

Inverse Optimization by James Orlin

Inverse Optimization by James Orlin Inverse Optimization by James Orlin based on research that is joint with Ravi Ahuja Jeopardy 000 -- the Math Programming Edition The category is linear objective functions The answer: When you maximize

More information

1 Unrelated Parallel Machine Scheduling

1 Unrelated Parallel Machine Scheduling IIIS 014 Spring: ATCS - Selected Topics in Optimization Lecture date: Mar 13, 014 Instructor: Jian Li TA: Lingxiao Huang Scribe: Yifei Jin (Polishing not finished yet.) 1 Unrelated Parallel Machine Scheduling

More information

Stanford University CS261: Optimization Handout 7 Luca Trevisan January 25, 2011

Stanford University CS261: Optimization Handout 7 Luca Trevisan January 25, 2011 Stanford University CS261: Optimization Handout 7 Luca Trevisan January 25, 2011 Lecture 7 In which we show how to use linear programming to approximate the vertex cover problem. 1 Linear Programming Relaxations

More information

Introduction to Optimization

Introduction to Optimization Introduction to Optimization Komei Fukuda Institute for Operations Research, and Institute of Theoretical Computer Science ETH Zurich, Switzerland fukuda@ifor.math.ethz.ch Autumn Semester 2011 Contents

More information

Energy constraint flow for wireless sensor networks. Hans L. Bodlaender Richard Tan Thomas van Dijk Jan van Leeuwen

Energy constraint flow for wireless sensor networks. Hans L. Bodlaender Richard Tan Thomas van Dijk Jan van Leeuwen 1 Energy constraint flow for wireless sensor networks Hans L. Bodlaender Richard Tan Thomas van Dijk Jan van Leeuwen 2 Overview 3 Wireless sensor networks Wireles sensor - smart dust - motes Microchip

More information

Sample Final Examination Questions IE406 Introduction to Mathematical Programming Dr. Ralphs

Sample Final Examination Questions IE406 Introduction to Mathematical Programming Dr. Ralphs Sample Final Examination Questions IE0 Introduction to Mathematical Programming Dr. Ralphs. Consider the following linear programming problem and its optimal final tableau. min x x + x x + x + x 8 x +

More information

On the core and f -nucleolus of flow games

On the core and f -nucleolus of flow games On the core and f -nucleolus of flow games Walter Kern Daniël Paulusma Univerisity of Twente Durham University Bristol Algorithms Days 2008 Introduction Game Theory: models and analyses situations of conflict

More information

Mixed-Integer Linear Programming. Mixed-Integer Linear Programming (MILP): Model Formulation. Mixed-Integer Linear Programming

Mixed-Integer Linear Programming. Mixed-Integer Linear Programming (MILP): Model Formulation. Mixed-Integer Linear Programming Mixed-Integer Linear Programg (MILP): Model Formulation Benoît Chachuat McMaster University Department of Chemical Engineering ChE 4G03: Optimization in Chemical Engineering Benoît

More information

MIXED INTEGER LINEAR PROGRAMMING FORMULATION TECHNIQUES. July 22, 2014

MIXED INTEGER LINEAR PROGRAMMING FORMULATION TECHNIQUES. July 22, 2014 MIXED INTEGER LINEAR PROGRAMMING FORMULATION TECHNIQUES JUAN PABLO VIELMA July 22, 214 Abstract. A wide range of problems can be modeled as Mixed Integer Linear Programming (MIP) problems using standard

More information

Using linear programming to solve for minimax-optimal strategies in games.

Using linear programming to solve for minimax-optimal strategies in games. Lecture 17 Linear Programming I 17.1 Overview In this lecture we describe a very general problem called linear programming that can be used to express a wide variety of different kinds of problems. We

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

Reductions. designing algorithms proving limits classifying problems NP-completeness

Reductions. designing algorithms proving limits classifying problems NP-completeness Reductions designing algorithms proving limits classifying problems NP-completeness 1 Bird s-eye view Desiderata. Classify problems according to their computational requirements. Frustrating news. Huge

More information

Advanced Topics in Machine Learning (Part II)

Advanced Topics in Machine Learning (Part II) Advanced Topics in Machine Learning (Part II) 3. Convexity and Optimisation February 6, 2009 Andreas Argyriou 1 Today s Plan Convex sets and functions Types of convex programs Algorithms Convex learning

More information

15-451/651: Design & Analysis of Algorithms March 28, 2016 Lecture #19 last changed: March 31, 2016

15-451/651: Design & Analysis of Algorithms March 28, 2016 Lecture #19 last changed: March 31, 2016 15-451/651: Design & Analysis of Algorithms March 28, 2016 Lecture #19 last changed: March 31, 2016 While we have good algorithms for many optimization problems, the previous lecture showed that many others

More information