Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

Size: px
Start display at page:

Download "Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity"

Transcription

1 Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity Marc Uetz University of Twente m.uetz@utwente.nl Lecture 5: sheet 1 / 26 Marc Uetz Discrete Optimization

2 Outline 1 Min-Cost Flows 2 Polyhedra and Total Unimodularity Lecture 5: sheet 2 / 26 Marc Uetz Discrete Optimization

3 Minimum Cost Flow Problem In Matrix Notation... A = node arc incidence matrix, E = identity matrix c = vector of integer arc costs, w.l.o.g. c 0 [arc reversal] u = vector of integer arc capacities, u 0 b = vector of integer node balances, i V b i = 0 min c x s.t. Ax = b Ex u x 0 W.l.o.g. consider special case: b s = v, b t = v, b i = 0 otherwise Lecture 5: sheet 3 / 26 Marc Uetz Discrete Optimization

4 Optimality Condition I Theorem (Negative Cost Cycle Optimality Condition) A flow x (of value v) is a minimum cost flow if and only if the residual graph G(x) has no negative cost directed cycle. Lecture 5: sheet 4 / 26 Marc Uetz Discrete Optimization

5 Cycle Canceling Algorithm Algorithm 1: Cycle Canceling input : network (G, u) capacities u 0, costs c, flow value v, and nodes s, t V output: x = minimum-cost (s, t)-flow with value v compute (s, t)-flow x with value v [e.g., augmenting paths]; while ( negative cost dicycle C in G(x)) do x C = maximum flow along C; reduce cost by updating flow, x = x + x C ; update residual graph, i.e., re-compute G(x); Computation time is not polynomial in general (adapting the Ford-Fulkerson example for maximum flow) Lecture 5: sheet 5 / 26 Marc Uetz Discrete Optimization

6 Minimum Mean Cycle Algorithm Definition Given a network with arc costs c ij, a minimum mean cycle is a directed cycle minimizing the expression 1 C c ij (i,j) C 1 Find any (s, t)-flow flow x of value v [e.g., augmenting paths] 2 While ( negative cost dicycle(s) in G(x)) C = minimum mean cycle, x C = maximum flow along C x = x + x C update G(x) Implementable in O( n 2 m 2 log(nc) ) time, where C = max{c ij } note that this is polynomial time [min. mean cycle in O( nm )] Lecture 5: sheet 6 / 26 Marc Uetz Discrete Optimization

7 Optimality Condition II (Dual) Theorem (Reduced Cost Optimality Condition) A flow x (of value v) is a minimum cost flow if and only if for some set of node labels π(i), i V, the reduced cost optimality condition holds in the residual graph G(x): c π ij := c ij π(i) + π(j) 0 (i, j) G(x) Lecture 5: sheet 7 / 26 Marc Uetz Discrete Optimization

8 Intuition about Reduced Cost Condition π(i) π(j) c ij π(i) = min. cost of getting 1 unit flow into i in G(x) then the π s should better fulfill -inequality, π(j) π(i) + c ij c π ij = c ij π(i) + π(j) 0 Lecture 5: sheet 8 / 26 Marc Uetz Discrete Optimization

9 Successive Shortest Path Algorithm Algorithm 2: Successive Shortest Paths input : network (G, u) capacities u 0, costs c, flow value v, and nodes s, t V output: x = minimum-cost (s, t)-flow with value v Initialize x = 0, G(x) = G, π(i) = 0 i V ; while (value v(x) < v) do d(i) := shortest path distances in G(x) with arc lengths c π ij ; P = shortest (s, t)-path (w.r.t. distances d); x P = maximum/necessary flow on P; x = x + x P ; update residual graph, i.e., re-compute G(x); update node labels π, i.e., π(i) = π(i) d(i) i V ; Lecture 5: sheet 9 / 26 Marc Uetz Discrete Optimization

10 Analysis Invariant (requires a proof) Anytime c π ij 0 for all (i, j) G(x), hence anytime the flow is a min-cost flow (correctness thus follows from Reduced Cost Condition) Termination Each iteration augments flow by 1, at most v iterations Computation time Each iteration: O( n ) + 1 Dijkstra, so total: O( vn 2 ) (polynomial only if v polynomial) Lecture 5: sheet 10 / 26 Marc Uetz Discrete Optimization

11 Proof of invariant c π 0, by induction Start: c π = c 0, since we assumed arc costs 0, and π = 0 Step: Suppose c π ij = c ij π(i) + π(j) 0 before current iteration d(i) = shortest c π -path distances s i in G(x) send flow along P and update G(x) (possibly new arcs!) we update π(i) π(i) d(i) Claim: new c π ij = c ij π(i) + π(j) 0 for all (i, j) new G(x) Case 1, (i, j) not new: d( ) = shortest paths d(j) d(i) + c π ij d(j) d(i) + c ij π(i) + π(j) 0 c ij (π(i) d(i)) + (π(j) d(j)) = new c π ij Case 2, (i, j) new: flow was sent along (j, i) d(i) = d(j) + c π ji d(i) = d(j) + c ji π(j) + π(i) c ji = (π(i) d(i)) + (π(j) d(j)) Now, new c π ij = c ij (π(i) d(i)) + (π(j) d(j)) = c ij + c ji = 0 Lecture 5: sheet 11 / 26 Marc Uetz Discrete Optimization

12 Comparison of Algorithms Cycle Canceling starts with feasible flow (value v), possibly not optimal always maintains feasibility (anytime flow value v) works towards optimality Successive Shortest Paths starts with infeasible flow (value 0), but cost optimal always maintains optimality (for current flow value) works towards feasibility Lecture 5: sheet 12 / 26 Marc Uetz Discrete Optimization

13 Outline 1 Min-Cost Flows 2 Polyhedra and Total Unimodularity Lecture 5: sheet 13 / 26 Marc Uetz Discrete Optimization

14 Integrality of Min-Cost Flows Theorem Given integer input data, and given the problem is not unbounded (negative cost cycle with unbounded capacity), any Min-Cost Flow problem has an optimal solution with integer arc flows. Proof: Both algorithms solve the problem, and anytime augment flow in integer amounts. Lecture 5: sheet 14 / 26 Marc Uetz Discrete Optimization

15 Integrality of Primal & Dual Optimal Solutions Primal Min-Cost Flow min c t x s.t. Ax = b Ex u x 0 Dual of Min-Cost Flow ( ) max (b t, u t π ) α ( ) s.t. [A t π, E] c α α 0 If not unbounded, both problems have an integer optimal solution. Lecture 5: sheet 15 / 26 Marc Uetz Discrete Optimization

16 Integrality of the Dual of Min-Cost Flow ( ) π max (b, u) α ( ) s.t. [A t π, E] c α α 0 Observe that the constraints are π(i) π(j) α ij c ij α ij cij π Let x be flow by successive shortest path alg., define dual solution π(i) upon termination α ij = max{0, c π ij } [note: c π ij < 0 is possible, only if (i, j) G(x), so if x ij = u ij ] feasible: α 0 and α c π by definition optimal: it fulfills complementary slackness (Exercise) Lecture 5: sheet 16 / 26 Marc Uetz Discrete Optimization

17 LPs With No Integer Optimal Solutions!"#$%#$%&'(%()*+%,')%-&.%/#&+-)%0)'1)-2 Another LP with all data integer, even all 0/1 (which problem?):!"#$%&'(%)*'+,-."'#%./,-0'#%(.#1,-."2% %486% Only optimal solution is ( 1 9-,&%./,-0'#%.:;<+,-=<%='#1<%786>%?@*..)AB 2, 1 2, 1 2 ) with value 3 2, but any integer solution, e.g. (0, 0, 1), only has value 1 C"$%-",<D*'#%(.#1,-."%."#$%$-<#E(%='#1<%4> Question When has a linear programming problem integer optimal solutions? Lecture 5: sheet 17 / 26 Marc Uetz Discrete Optimization

18 Polyhedra & Polytopes Polyhedron P R n is polyhedron if it is the solution set of a finite number of linear inequalities, P = {x R n Ax b}, for A R m n, b R m. P Polytope A polyhedron that is bounded (does not contain any infinite ray ) P Lecture 5: sheet 18 / 26 Marc Uetz Discrete Optimization

19 Faces Let polyhedron P = {x R n Ax b} be given. Supporting Hyperplane Let 0 w R n, r R, then {x w t x = r} is a hyperplane in R n. Inequality w t x r is called valid for P if P {x w t x r} and a supporting hyperplane if it is valid for P and P {x w t x = r} Face Let {x w t x = r} be a supporting hyperplane for P, then the intersection F = P {x w t x = r} is called a (proper) face of P. Theorem (see Literature Proposition 6.7) If F is a minimal face of P = {x Ax b} (by inclusion), then F = {x A o x = b o } for some subsystem A o, b o of Ax b. Lecture 5: sheet 19 / 26 Marc Uetz Discrete Optimization

20 Vertices (I) Definition A minimal face of polyhedron P that consist of only one point {x} is called a vertex. Theorem (see Literature Proposition 6.9) Point x P is a vertex of P if and only if it cannot be written as convex combination of two other points of P ( cornerpoint of P). A polyhedron need not have vertices, for example P = {(x 1, x 2 ) R 2 x 1 0} Lecture 5: sheet 20 / 26 Marc Uetz Discrete Optimization

21 Vertices (II) Theorem (see Literature Proposition 6.7) Any vertex x of a polyhedron P = {x R n Ax b} is defined by n linearly independent rows of A (which are fulfilled with equality, so A o x = b o for a non-singular subsystem A o, b o of Ax b). Consequence Polyhedron {x R n Ax b} has a vertex if and only if rank(a) = n. Exercise: Show that polyhedron P {x x 0} has a vertex Lecture 5: sheet 21 / 26 Marc Uetz Discrete Optimization

22 Polytopes Theorem (Minkowski) A polytope is equal to the convex hull of its vertices, x 1,..., x k, so P = {x R n Ax b} = conv{x 1,..., x k }. P If Q is convex, and Q contains all vertices of polytope P, P Q. Lecture 5: sheet 22 / 26 Marc Uetz Discrete Optimization

23 Polytopes Associated to LPs Polytope described by!"#$%"&' ()*+'),-(.'+*.$*%/'*0*1."2'*(3'451#(%(')6 6 inequalities given above "-*7*'8%-'9'*&"(3%)*:;<6<6<=6;>6<6<=6;<6>6<=6;<6<6>=6;?6?6?=@ 5 vertices: {(0, 0, 0), (1, 0, 0), (0, 1, 0), (0, 0, 1), ( 1 2, 1 2, 1 2 )} A"%(,'B*C3'*"D*%/'*'8%-'9'*&"(3%)*()3E%*(3%'F-1#6*1#%/"5F/* Note: 1##*,"'DD(,('3%)*(3*%/'*#(3'1-*(3'451#(%(')*1-' not all vertices are integer, although all coefficients are Lecture 5: sheet 23 / 26 Marc Uetz Discrete Optimization

24 Question Under what conditions on A and b is it true that all vertices of P = {x R n Ax b, x 0} happen to be integer? Because then, for any c the linear program max c t x s.t. Ax b, x 0 (if not infeasible or unbounded) has an integer optimal solution as the set of optimal solutions of P is a face of {x Ax b, x 0} Can even solve integer linear programming problems by solving an LP only (say with Simplex), because an optimum solution (if it exists) also occurs at a vertex which happens to be integer. Answer: If A is totally unimodular, and b integer Lecture 5: sheet 24 / 26 Marc Uetz Discrete Optimization

25 (Totally) Unimodular Matrices Definition 1 An integer square matrix B Z n n is unimodular if det(b) = ±1 2 An integer matrix A Z m n is totally unimodular (TU) if each square submatrix B of A has det(b) {0, ±1}. Some easy facts: entries of a TU matrix are {0, ±1} by definition (1 1 submatrices) if A is TU, adding or deleting a row or column vector (0,..., 1,..., 0), the result is again TU if A is TU, multiplying any row/column by 1, the result is again TU Lecture 5: sheet 25 / 26 Marc Uetz Discrete Optimization

26 Square Submatrix Back Lecture 5: sheet 26 / 26 Marc Uetz Discrete Optimization

4 Integer Linear Programming (ILP)

4 Integer Linear Programming (ILP) TDA6/DIT37 DISCRETE OPTIMIZATION 17 PERIOD 3 WEEK III 4 Integer Linear Programg (ILP) 14 An integer linear program, ILP for short, has the same form as a linear program (LP). The only difference is that

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli October 24, 2016 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

Linear programming and duality theory

Linear programming and duality theory Linear programming and duality theory Complements of Operations Research Giovanni Righini Linear Programming (LP) A linear program is defined by linear constraints, a linear objective function. Its variables

More information

Lecture 3: Totally Unimodularity and Network Flows

Lecture 3: Totally Unimodularity and Network Flows Lecture 3: Totally Unimodularity and Network Flows (3 units) Outline Properties of Easy Problems Totally Unimodular Matrix Minimum Cost Network Flows Dijkstra Algorithm for Shortest Path Problem Ford-Fulkerson

More information

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini DM545 Linear and Integer Programming Lecture 2 The Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 3. 4. Standard Form Basic Feasible Solutions

More information

AMS : Combinatorial Optimization Homework Problems - Week V

AMS : Combinatorial Optimization Homework Problems - Week V AMS 553.766: Combinatorial Optimization Homework Problems - Week V For the following problems, A R m n will be m n matrices, and b R m. An affine subspace is the set of solutions to a a system of linear

More information

Dual-fitting analysis of Greedy for Set Cover

Dual-fitting analysis of Greedy for Set Cover Dual-fitting analysis of Greedy for Set Cover We showed earlier that the greedy algorithm for set cover gives a H n approximation We will show that greedy produces a solution of cost at most H n OPT LP

More information

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Mathematical and Algorithmic Foundations Linear Programming and Matchings Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis

More information

LECTURES 3 and 4: Flows and Matchings

LECTURES 3 and 4: Flows and Matchings LECTURES 3 and 4: Flows and Matchings 1 Max Flow MAX FLOW (SP). Instance: Directed graph N = (V,A), two nodes s,t V, and capacities on the arcs c : A R +. A flow is a set of numbers on the arcs such that

More information

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Mathematical programming (optimization) problem: min f (x) s.t. x X R n set of feasible solutions with linear objective function

More information

3. The Simplex algorithmn The Simplex algorithmn 3.1 Forms of linear programs

3. The Simplex algorithmn The Simplex algorithmn 3.1 Forms of linear programs 11 3.1 Forms of linear programs... 12 3.2 Basic feasible solutions... 13 3.3 The geometry of linear programs... 14 3.4 Local search among basic feasible solutions... 15 3.5 Organization in tableaus...

More information

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

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar http://www.robots.ox.ac.uk/~oval/ Outline Linear Programming Matroid Polytopes Polymatroid Polyhedron Ax b A : m x n matrix b:

More information

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

Linear Programming. Course review MS-E2140. v. 1.1 Linear Programming MS-E2140 Course review v. 1.1 Course structure Modeling techniques Linear programming theory and the Simplex method Duality theory Dual Simplex algorithm and sensitivity analysis Integer

More information

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :) Outline Combinatorial Optimization 2 Rumen Andonov Irisa/Symbiose and University of Rennes 1 9 novembre 2009 Finite Systems of Linear Inequalities, variants of Farkas Lemma Duality theory in Linear Programming

More information

Lecture 2 - Introduction to Polytopes

Lecture 2 - Introduction to Polytopes Lecture 2 - Introduction to Polytopes Optimization and Approximation - ENS M1 Nicolas Bousquet 1 Reminder of Linear Algebra definitions Let x 1,..., x m be points in R n and λ 1,..., λ m be real numbers.

More information

Graphs and Network Flows IE411. Lecture 13. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 13. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 13 Dr. Ted Ralphs IE411 Lecture 13 1 References for Today s Lecture IE411 Lecture 13 2 References for Today s Lecture Required reading Sections 21.1 21.2 References

More information

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone: MA4254: Discrete Optimization Defeng Sun Department of Mathematics National University of Singapore Office: S14-04-25 Telephone: 6516 3343 Aims/Objectives: Discrete optimization deals with problems of

More information

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs Advanced Operations Research Techniques IE316 Quiz 2 Review Dr. Ted Ralphs IE316 Quiz 2 Review 1 Reading for The Quiz Material covered in detail in lecture Bertsimas 4.1-4.5, 4.8, 5.1-5.5, 6.1-6.3 Material

More information

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems.

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2 Basics In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2.1 Notation Let A R m n be a matrix with row index set M = {1,...,m}

More information

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs Advanced Operations Research Techniques IE316 Quiz 1 Review Dr. Ted Ralphs IE316 Quiz 1 Review 1 Reading for The Quiz Material covered in detail in lecture. 1.1, 1.4, 2.1-2.6, 3.1-3.3, 3.5 Background material

More information

ORIE 6300 Mathematical Programming I September 2, Lecture 3

ORIE 6300 Mathematical Programming I September 2, Lecture 3 ORIE 6300 Mathematical Programming I September 2, 2014 Lecturer: David P. Williamson Lecture 3 Scribe: Divya Singhvi Last time we discussed how to take dual of an LP in two different ways. Today we will

More information

and 6.855J. The Successive Shortest Path Algorithm and the Capacity Scaling Algorithm for the Minimum Cost Flow Problem

and 6.855J. The Successive Shortest Path Algorithm and the Capacity Scaling Algorithm for the Minimum Cost Flow Problem 15.082 and 6.855J The Successive Shortest Path Algorithm and the Capacity Scaling Algorithm for the Minimum Cost Flow Problem 1 Pseudo-Flows A pseudo-flow is a "flow" vector x such that 0 x u. Let e(i)

More information

Lecture Notes 2: The Simplex Algorithm

Lecture Notes 2: The Simplex Algorithm Algorithmic Methods 25/10/2010 Lecture Notes 2: The Simplex Algorithm Professor: Yossi Azar Scribe:Kiril Solovey 1 Introduction In this lecture we will present the Simplex algorithm, finish some unresolved

More information

COMP331/557. Chapter 2: The Geometry of Linear Programming. (Bertsimas & Tsitsiklis, Chapter 2)

COMP331/557. Chapter 2: The Geometry of Linear Programming. (Bertsimas & Tsitsiklis, Chapter 2) COMP331/557 Chapter 2: The Geometry of Linear Programming (Bertsimas & Tsitsiklis, Chapter 2) 49 Polyhedra and Polytopes Definition 2.1. Let A 2 R m n and b 2 R m. a set {x 2 R n A x b} is called polyhedron

More information

Some Advanced Topics in Linear Programming

Some Advanced Topics in Linear Programming Some Advanced Topics in Linear Programming Matthew J. Saltzman July 2, 995 Connections with Algebra and Geometry In this section, we will explore how some of the ideas in linear programming, duality theory,

More information

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 36 CS 473: Algorithms, Spring 2018 LP Duality Lecture 20 April 3, 2018 Some of the

More information

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

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014 5/2/24 Outline CS38 Introduction to Algorithms Lecture 5 May 2, 24 Linear programming simplex algorithm LP duality ellipsoid algorithm * slides from Kevin Wayne May 2, 24 CS38 Lecture 5 May 2, 24 CS38

More information

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017 Section Notes 5 Review of Linear Programming Applied Math / Engineering Sciences 121 Week of October 15, 2017 The following list of topics is an overview of the material that was covered in the lectures

More information

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS Linear Programming Larry Blume Cornell University & The Santa Fe Institute & IHS Linear Programs The general linear program is a constrained optimization problem where objectives and constraints are all

More information

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension Antoine Vigneron King Abdullah University of Science and Technology November 7, 2012 Antoine Vigneron (KAUST) CS 372 Lecture

More information

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 2009) Lecture 10,11: General Matching Polytope, Maximum Flow Lecturer: Mohammad R Salavatipour Date: Oct 6 and 8, 2009 Scriber: Mohammad

More information

Math 5593 Linear Programming Lecture Notes

Math 5593 Linear Programming Lecture Notes Math 5593 Linear Programming Lecture Notes Unit II: Theory & Foundations (Convex Analysis) University of Colorado Denver, Fall 2013 Topics 1 Convex Sets 1 1.1 Basic Properties (Luenberger-Ye Appendix B.1).........................

More information

5.3 Cutting plane methods and Gomory fractional cuts

5.3 Cutting plane methods and Gomory fractional cuts 5.3 Cutting plane methods and Gomory fractional cuts (ILP) min c T x s.t. Ax b x 0integer feasible region X Assumption: a ij, c j and b i integer. Observation: The feasible region of an ILP can be described

More information

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

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs Introduction to Mathematical Programming IE496 Final Review Dr. Ted Ralphs IE496 Final Review 1 Course Wrap-up: Chapter 2 In the introduction, we discussed the general framework of mathematical modeling

More information

Linear Programming Duality and Algorithms

Linear Programming Duality and Algorithms COMPSCI 330: Design and Analysis of Algorithms 4/5/2016 and 4/7/2016 Linear Programming Duality and Algorithms Lecturer: Debmalya Panigrahi Scribe: Tianqi Song 1 Overview In this lecture, we will cover

More information

Lecture 3. Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets. Tepper School of Business Carnegie Mellon University, Pittsburgh

Lecture 3. Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets. Tepper School of Business Carnegie Mellon University, Pittsburgh Lecture 3 Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets Gérard Cornuéjols Tepper School of Business Carnegie Mellon University, Pittsburgh January 2016 Mixed Integer Linear Programming

More information

6. Lecture notes on matroid intersection

6. Lecture notes on matroid intersection Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

More information

Mathematical Programming and Research Methods (Part II)

Mathematical Programming and Research Methods (Part II) Mathematical Programming and Research Methods (Part II) 4. Convexity and Optimization Massimiliano Pontil (based on previous lecture by Andreas Argyriou) 1 Today s Plan Convex sets and functions Types

More information

R n a T i x = b i} is a Hyperplane.

R n a T i x = b i} is a Hyperplane. Geometry of LPs Consider the following LP : min {c T x a T i x b i The feasible region is i =1,...,m}. X := {x R n a T i x b i i =1,...,m} = m i=1 {x Rn a T i x b i} }{{} X i The set X i is a Half-space.

More information

Circuit Walks in Integral Polyhedra

Circuit Walks in Integral Polyhedra Circuit Walks in Integral Polyhedra Charles Viss Steffen Borgwardt University of Colorado Denver Optimization and Discrete Geometry: Theory and Practice Tel Aviv University, April 2018 LINEAR PROGRAMMING

More information

Lecture 6: Faces, Facets

Lecture 6: Faces, Facets IE 511: Integer Programming, Spring 2019 31 Jan, 2019 Lecturer: Karthik Chandrasekaran Lecture 6: Faces, Facets Scribe: Setareh Taki Disclaimer: These notes have not been subjected to the usual scrutiny

More information

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 29 CS 473: Algorithms, Spring 2018 Simplex and LP Duality Lecture 19 March 29, 2018

More information

J Linear Programming Algorithms

J Linear Programming Algorithms Simplicibus itaque verbis gaudet Mathematica Veritas, cum etiam per se simplex sit Veritatis oratio. [And thus Mathematical Truth prefers simple words, because the language of Truth is itself simple.]

More information

Math 414 Lecture 2 Everyone have a laptop?

Math 414 Lecture 2 Everyone have a laptop? Math 44 Lecture 2 Everyone have a laptop? THEOREM. Let v,...,v k be k vectors in an n-dimensional space and A = [v ;...; v k ] v,..., v k independent v,..., v k span the space v,..., v k a basis v,...,

More information

LP Geometry: outline. A general LP. minimize x c T x s.t. a T i. x b i, i 2 M 1 a T i x = b i, i 2 M 3 x j 0, j 2 N 1. where

LP Geometry: outline. A general LP. minimize x c T x s.t. a T i. x b i, i 2 M 1 a T i x = b i, i 2 M 3 x j 0, j 2 N 1. where LP Geometry: outline I Polyhedra I Extreme points, vertices, basic feasible solutions I Degeneracy I Existence of extreme points I Optimality of extreme points IOE 610: LP II, Fall 2013 Geometry of Linear

More information

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 CS G399: Algorithmic Power Tools I Scribe: Eric Robinson Lecture Outline: Linear Programming: Vertex Definitions

More information

Linear Programming and its Applications

Linear Programming and its Applications Linear Programming and its Applications Outline for Today What is linear programming (LP)? Examples Formal definition Geometric intuition Why is LP useful? A first look at LP algorithms Duality Linear

More information

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

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I Instructor: Shaddin Dughmi Announcements Posted solutions to HW1 Today: Combinatorial problems

More information

Linear Programming in Small Dimensions

Linear Programming in Small Dimensions Linear Programming in Small Dimensions Lekcija 7 sergio.cabello@fmf.uni-lj.si FMF Univerza v Ljubljani Edited from slides by Antoine Vigneron Outline linear programming, motivation and definition one dimensional

More information

Polytopes Course Notes

Polytopes Course Notes Polytopes Course Notes Carl W. Lee Department of Mathematics University of Kentucky Lexington, KY 40506 lee@ms.uky.edu Fall 2013 i Contents 1 Polytopes 1 1.1 Convex Combinations and V-Polytopes.....................

More information

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize. Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject

More information

Graphs and Network Flows IE411. Lecture 20. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 20. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 20 Dr. Ted Ralphs IE411 Lecture 20 1 Network Simplex Algorithm Input: A network G = (N, A), a vector of capacities u Z A, a vector of costs c Z A, and a vector of

More information

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

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748 COT 6936: Topics in Algorithms! Giri Narasimhan ECS 254A / EC 2443; Phone: x3748 giri@cs.fiu.edu http://www.cs.fiu.edu/~giri/teach/cot6936_s12.html https://moodle.cis.fiu.edu/v2.1/course/view.php?id=174

More information

Primal-Dual Methods for Approximation Algorithms

Primal-Dual Methods for Approximation Algorithms Primal-Dual Methods for Approximation Algorithms Nadia Hardy, April 2004 The following is based on: Approximation Algorithms for NP-Hard Problems. D.Hochbaum, ed. Chapter 4: The primal-dual method for

More information

Lecture 5: Properties of convex sets

Lecture 5: Properties of convex sets Lecture 5: Properties of convex sets Rajat Mittal IIT Kanpur This week we will see properties of convex sets. These properties make convex sets special and are the reason why convex optimization problems

More information

Linear Programming Algorithms [Read Chapters G and H first.] Status: Half-finished.

Linear Programming Algorithms [Read Chapters G and H first.] Status: Half-finished. Simplicibus itaque verbis gaudet Mathematica Veritas, cum etiam per se simplex sit Veritatis oratio. [And thus Mathematical Truth prefers simple words, because the language of Truth is itself simple.]

More information

Convex Geometry arising in Optimization

Convex Geometry arising in Optimization Convex Geometry arising in Optimization Jesús A. De Loera University of California, Davis Berlin Mathematical School Summer 2015 WHAT IS THIS COURSE ABOUT? Combinatorial Convexity and Optimization PLAN

More information

POLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if

POLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if POLYHEDRAL GEOMETRY Mathematical Programming Niels Lauritzen 7.9.2007 Convex functions and sets Recall that a subset C R n is convex if {λx + (1 λ)y 0 λ 1} C for every x, y C and 0 λ 1. A function f :

More information

Lecture 4: Linear Programming

Lecture 4: Linear Programming COMP36111: Advanced Algorithms I Lecture 4: Linear Programming Ian Pratt-Hartmann Room KB2.38: email: ipratt@cs.man.ac.uk 2017 18 Outline The Linear Programming Problem Geometrical analysis The Simplex

More information

NOTES ON COMBINATORIAL OPTIMIZATION

NOTES ON COMBINATORIAL OPTIMIZATION NOTES ON COMBINATORIAL OPTIMIZATION GEIR DAHL and CARLO MANNINO October 1, 01 Department of Mathematics and Department of Informatics, CMA, University of Oslo, Norway. geird@math.uio.no University of Rome,

More information

Math 5490 Network Flows

Math 5490 Network Flows Math 590 Network Flows Lecture 7: Preflow Push Algorithm, cont. Stephen Billups University of Colorado at Denver Math 590Network Flows p./6 Preliminaries Optimization Seminar Next Thursday: Speaker: Ariela

More information

and 6.855J March 6, Maximum Flows 2

and 6.855J March 6, Maximum Flows 2 5.08 and.855j March, 00 Maximum Flows Network Reliability Communication Network What is the maximum number of arc disjoint paths from s to t? How can we determine this number? Theorem. Let G = (N,A) be

More information

Linear Programming Motivation: The Diet Problem

Linear Programming Motivation: The Diet Problem Agenda We ve done Greedy Method Divide and Conquer Dynamic Programming Network Flows & Applications NP-completeness Now Linear Programming and the Simplex Method Hung Q. Ngo (SUNY at Buffalo) CSE 531 1

More information

Advanced Algorithms Linear Programming

Advanced Algorithms Linear Programming Reading: Advanced Algorithms Linear Programming CLRS, Chapter29 (2 nd ed. onward). Linear Algebra and Its Applications, by Gilbert Strang, chapter 8 Linear Programming, by Vasek Chvatal Introduction to

More information

x ji = s i, i N, (1.1)

x ji = s i, i N, (1.1) Dual Ascent Methods. DUAL ASCENT In this chapter we focus on the minimum cost flow problem minimize subject to (i,j) A {j (i,j) A} a ij x ij x ij {j (j,i) A} (MCF) x ji = s i, i N, (.) b ij x ij c ij,

More information

Generalized Network Flow Programming

Generalized Network Flow Programming Appendix C Page Generalized Network Flow Programming This chapter adapts the bounded variable primal simplex method to the generalized minimum cost flow problem. Generalized networks are far more useful

More information

Marginal and Sensitivity Analyses

Marginal and Sensitivity Analyses 8.1 Marginal and Sensitivity Analyses Katta G. Murty, IOE 510, LP, U. Of Michigan, Ann Arbor, Winter 1997. Consider LP in standard form: min z = cx, subject to Ax = b, x 0 where A m n and rank m. Theorem:

More information

THEORY OF LINEAR AND INTEGER PROGRAMMING

THEORY OF LINEAR AND INTEGER PROGRAMMING THEORY OF LINEAR AND INTEGER PROGRAMMING ALEXANDER SCHRIJVER Centrum voor Wiskunde en Informatica, Amsterdam A Wiley-Inter science Publication JOHN WILEY & SONS^ Chichester New York Weinheim Brisbane Singapore

More information

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM EXERCISES Prepared by Natashia Boland 1 and Irina Dumitrescu 2 1 Applications and Modelling 1.1

More information

CS522: Advanced Algorithms

CS522: Advanced Algorithms Lecture 1 CS5: Advanced Algorithms October 4, 004 Lecturer: Kamal Jain Notes: Chris Re 1.1 Plan for the week Figure 1.1: Plan for the week The underlined tools, weak duality theorem and complimentary slackness,

More information

Lecture 12: Feasible direction methods

Lecture 12: Feasible direction methods Lecture 12 Lecture 12: Feasible direction methods Kin Cheong Sou December 2, 2013 TMA947 Lecture 12 Lecture 12: Feasible direction methods 1 / 1 Feasible-direction methods, I Intro Consider the problem

More information

Lecture 4: Rational IPs, Polyhedron, Decomposition Theorem

Lecture 4: Rational IPs, Polyhedron, Decomposition Theorem IE 5: Integer Programming, Spring 29 24 Jan, 29 Lecture 4: Rational IPs, Polyhedron, Decomposition Theorem Lecturer: Karthik Chandrasekaran Scribe: Setareh Taki Disclaimer: These notes have not been subjected

More information

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix. Math Lecture The greedy algorithm provides the initial transportation matrix. matrix P P Demand W ª «2 ª2 «W ª «W ª «ª «ª «Supply The circled x ij s are the initial basic variables. Erase all other values

More information

The Simplex Algorithm

The Simplex Algorithm The Simplex Algorithm April 25, 2005 We seek x 1,..., x n 0 which mini- Problem. mizes C(x 1,..., x n ) = c 1 x 1 + + c n x n, subject to the constraint Ax b, where A is m n, b = m 1. Through the introduction

More information

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

CSE 417 Network Flows (pt 3) Modeling with Min Cuts CSE 417 Network Flows (pt 3) Modeling with Min Cuts Reminders > HW6 is due on Friday start early bug fixed on line 33 of OptimalLineup.java: > change true to false Review of last two lectures > Defined

More information

The Simplex Algorithm

The Simplex Algorithm The Simplex Algorithm Uri Feige November 2011 1 The simplex algorithm The simplex algorithm was designed by Danzig in 1947. This write-up presents the main ideas involved. It is a slight update (mostly

More information

Combinatorial Geometry & Topology arising in Game Theory and Optimization

Combinatorial Geometry & Topology arising in Game Theory and Optimization Combinatorial Geometry & Topology arising in Game Theory and Optimization Jesús A. De Loera University of California, Davis LAST EPISODE... We discuss the content of the course... Convex Sets A set is

More information

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 21 Dr. Ted Ralphs IE411 Lecture 21 1 Combinatorial Optimization and Network Flows In general, most combinatorial optimization and integer programming problems are

More information

The simplex method and the diameter of a 0-1 polytope

The simplex method and the diameter of a 0-1 polytope The simplex method and the diameter of a 0-1 polytope Tomonari Kitahara and Shinji Mizuno May 2012 Abstract We will derive two main results related to the primal simplex method for an LP on a 0-1 polytope.

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Group Members: 1. Geng Xue (A0095628R) 2. Cai Jingli (A0095623B) 3. Xing Zhe (A0095644W) 4. Zhu Xiaolu (A0109657W) 5. Wang Zixiao (A0095670X) 6. Jiao Qing (A0095637R) 7. Zhang

More information

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality 6.854 Advanced Algorithms Scribes: Jay Kumar Sundararajan Lecturer: David Karger Duality This lecture covers weak and strong duality, and also explains the rules for finding the dual of a linear program,

More information

CSE 417 Network Flows (pt 4) Min Cost Flows

CSE 417 Network Flows (pt 4) Min Cost Flows CSE 417 Network Flows (pt 4) Min Cost Flows Reminders > HW6 is due Monday Review of last three lectures > Defined the maximum flow problem find the feasible flow of maximum value flow is feasible if it

More information

MATH 890 HOMEWORK 2 DAVID MEREDITH

MATH 890 HOMEWORK 2 DAVID MEREDITH MATH 890 HOMEWORK 2 DAVID MEREDITH (1) Suppose P and Q are polyhedra. Then P Q is a polyhedron. Moreover if P and Q are polytopes then P Q is a polytope. The facets of P Q are either F Q where F is a facet

More information

maximize c, x subject to Ax b,

maximize c, x subject to Ax b, Lecture 8 Linear programming is about problems of the form maximize c, x subject to Ax b, where A R m n, x R n, c R n, and b R m, and the inequality sign means inequality in each row. The feasible set

More information

Convexity: an introduction

Convexity: an introduction Convexity: an introduction Geir Dahl CMA, Dept. of Mathematics and Dept. of Informatics University of Oslo 1 / 74 1. Introduction 1. Introduction what is convexity where does it arise main concepts and

More information

Programming, numerics and optimization

Programming, numerics and optimization Programming, numerics and optimization Lecture C-4: Constrained optimization Łukasz Jankowski ljank@ippt.pan.pl Institute of Fundamental Technological Research Room 4.32, Phone +22.8261281 ext. 428 June

More information

11 Linear Programming

11 Linear Programming 11 Linear Programming 11.1 Definition and Importance The final topic in this course is Linear Programming. We say that a problem is an instance of linear programming when it can be effectively expressed

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

More information

Incremental Algorithms for the Minimum Cost Flow Problem

Incremental Algorithms for the Minimum Cost Flow Problem Incremental Algorithms for the Minimum Cost Flow Problem LAURA CIUPALĂ Department of Computer Science University Transilvania of Braşov Iuliu Maniu Street 50, Braşov ROMANIA laura_ciupala@yahoo.com Abstract:

More information

Algorithms for Integer Programming

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

More information

Discrete Optimization. Lecture Notes 2

Discrete Optimization. Lecture Notes 2 Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The

More information

Integer Programming. Leo Liberti. March 13, Abstract

Integer Programming. Leo Liberti. March 13, Abstract Integer Programming Leo Liberti LIX, École Polytechnique, F-9118 Palaiseau, France (liberti@lix.polytechnique.fr) March 1, 6 Abstract A short introduction to Integer Programming (IP). Problems leading

More information

Notes taken by Mea Wang. February 11, 2005

Notes taken by Mea Wang. February 11, 2005 CSC2411 - Linear Programming and Combinatorial Optimization Lecture 5: Smoothed Analysis, Randomized Combinatorial Algorithms, and Linear Programming Duality Notes taken by Mea Wang February 11, 2005 Summary:

More information

4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1

4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1 4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1 Definition: A Linear Programming (LP) problem is an optimization problem: where min f () s.t. X n the

More information

Notes for Lecture 20

Notes for Lecture 20 U.C. Berkeley CS170: Intro to CS Theory Handout N20 Professor Luca Trevisan November 13, 2001 Notes for Lecture 20 1 Duality As it turns out, the max-flow min-cut theorem is a special case of a more general

More information

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Material handling and Transportation in Logistics Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Introduction to Graph Theory Graph Theory As Mathematical

More information

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms Given a simple directed graph G = (V, E), a cycle cover is a set of vertex-disjoint directed cycles that cover all vertices of the graph. 1. Show that there

More information

Outline: Finish uncapacitated simplex method Negative cost cycle algorithm The max-flow problem Max-flow min-cut theorem

Outline: Finish uncapacitated simplex method Negative cost cycle algorithm The max-flow problem Max-flow min-cut theorem Outline: Finish uncapacitated simplex method Negative cost cycle algorithm The max-flow problem Max-flow min-cut theorem Uncapacitated Networks: Basic primal and dual solutions Flow conservation constraints

More information

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY 5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY 5.1 DUALITY Associated with every linear programming problem (the primal) is another linear programming problem called its dual. If the primal involves

More information