Lecture 13: Polynomial-Time Algorithms for Min Cost Flows. (Reading: AM&O Chapter 10)
|
|
- Eric Gilbert
- 6 years ago
- Views:
Transcription
1 Lecture 1: Polynomial-Time Algorithms for Min Cost Flows (Reading: AM&O Chapter 1)
2 Polynomial Algorithms for Min Cost Flows Improvements on the two algorithms for min cost flow: Successive Shortest Path scale costs scale capacities Cycle Cancelling augment along minimum mean cycles Assumption throughout: All data integer. C = largest cost of an arc U = largest capacity of an arc.
3 Capacity Scaling Idea: Augment along large capacity arcs. More specifically, let the current flow be x, the current shortest path values d i and threshold flow value of recall the -residual network G(x, ) of arcs of G(x) having residual capacity at least. Then the procedure is: Step 1: push flow along every arc of the residual graph G(x, ) having negative cost up to its residual capacity; Step : move flow from the set E( ) of nodes with excess at least to the set D( ) of nodes with deficit at least along shortest paths in G(x, ). Step is just the Shortest Successive Path Algorithm applied to the -reduced network, after an initialization stage where flow is pushed along large capacity cost-decreasing arcs.
4 The Capacity Scaling Algorithm for Min Cost Flows Initialize: Set x =, = U/ while 1 ( -scaling phase) Step 1: For each (i, j) in G(x, ) with negative reduced cost, push flow along (i, j) up to residual capacity. (All arcs with cost retain their original flow values.) Step : while E do Select node s E( ) and t D( ) and find a shortest (s, t)-path P in G(x, ). (Note that you may use the reduced costs from the previous shortest-path computations for this.) Set δ = min{r ij : (i, j) P } {e(k), e(l)}, and augment δ units of flow along path P. Update G(x, ), E( ), and D( ) where appropriate. end while Set = / end -scaling phase
5 u,c ij ij 45,$ 5,$5 b i ,$4 5,$7 64,$,$ 4 4 4,$1 5 s =,16 45,$ [] 4 1 π i = d i [ ] =8 [ ] 5,$5 (true costs) 5,$ 1,$ (reduced costs) [ 7] 4 4 t 64,$ 4,$1 5 [ 19],$ [ 17] [] 1 4,$ 4,$ 64,$14 15,$ 15 [ 19],$ [ 7] 4 4,$ 5 [ 17] push 15 units from 1 to t [5] ,$ 4,$ [] 1,$5 4,$ 5 64,$ [] =4,$ 15,$ [ ] [5] [ ] 5,$ 5,$ ,$4 49,$ 15,$ 4 4,$1 15,$ [],$ [ 1] s [] 15,$,$14 5 [ 1] no flow change, current flow optimal 4,$ Example of Capacity Scaling
6 Complexity of Capacity Scaling Algorithm potential function : Φ = sum of excesses 1. The number of scaling phases is O(logU). At the beginning of each -scaling phase, residual capacities in G(x, ) are between and, and Φ is at most n.. After Step 1 of the -scaling phase, Φ can be increased to at most n + m. 4. In Step of the -scaling phase, each augmentation decreases Φ by at least. Thus the number of augmentations is O(n+m) = O(m) Theorem 1.1 : The capacity scaling algorithm solves the min cost flow problem in O(m log U S(n, m, nc)), where S(n, m, nc) is the complexity of the best label-setting algorithm on an n-node, m-arc network with max cost nc.
7 Cost Scaling The Cost Scaling Algorithm is also a modification of the Shortest Augmenting Path Algorithm for finding max flows. The Cost Scaling Algorithm, however, augments flow along almost shortest paths. Specifically, let x be a pseudoflow, and π i a set of node-numbers representing almost shortest (i, t)-path lengths, and set reduced costs to c π ij = c ij π i + π j. For positive constant ϵ, we say that x and π satisfy the ϵ-optimality conditions if the associated reduced costs satisfy c π ij > ϵ (i, j) Gπ (x), If, in addition x is feasible, then we call x an ϵ-optimal flow.
8 Lemma 1.: For any ϵ < 1/n, an ϵ-optimal flow x is in fact optimal. Proof: Suppose not. Then by the Negative Cycle Optimality Conditions there must be a cycle W that has negative total cost, or what is the same, negative reduced costs c π (W ). But every arc in W has reduced cost greater than ϵ = 1/n. Thus c π (W ) > 1, and since all costs are integer, c π (W ). Thus there are no negative weight cycles in G(x), and so x is an optimal flow.
9 Idea of Algorithm The Cost Scaling Algorithm starts with ϵ = C, and finds ϵ-optimal flows for successively smaller ϵ, until ϵ reaches 1/n, at which point the ϵ-optimal flow is optimal. It does this by starting with a pseudoflow x that is ϵ-optimal, and pushes flow from excess nodes to deficit nodes along ϵ/-shortest paths, that is, paths whose arcs satisfying c π ij < ϵ/ Clearly any pseudoflow obtained in this way will continue to satisfy the ϵ-optimality conditions. We search for these paths in much the same way as the Shortest Augmenting Path Algorithm for Max Flow (note that in the SAP version the paths must satisfy c π ij = ), updating the π values during retreats. When an ϵ/-optimal flow is found, we set ϵ = ϵ/ and start the process over again.
10 ϵ-scaling Phase: Start with a flow that is ϵ-optimal, and end with a flow that is ϵ/- optimal. Initialization of the phase: Use the old values of π, and set flow on G π (x) equal to residual capacity on arcs with c π ij ϵ/, adjusting residual capacities and excesses accordingly. This will make x an ϵ/-optimal pseudoflow. We call an arc (i, j) ϵ-admissible if c π ij < ϵ/. By only pushing flow along ϵ-admissible arcs, we create a true flow for which G π (x) satisfies the ϵ/-optimality conditions. To do this we perform the Shortest Augmenting Path Algorithm on G π (x), with the following changes: perform advances along ϵ-admissible arcs; relabel by adding ϵ/ to π i ;
11 The Cost Scaling Algorithm Initialize: Set π =, ϵ = C, x = Create G π (x) while ϵ 1/n do (ϵ-scaling phase) for each arc (i, j) with c π (i, j) ϵ/, push r(i, j) units of flow along arc (i, j), adjusting G π (x) accordingly. while E do (label/augment routine) Choose s E. Perform the Shortest Augmenting Path Algorithm on G π (x), doing advances along ϵ-admissible arcs and relabeling in a retreat from node i by adding ϵ/ to π i. When a node t D is reached, augment flow along ϵ/-shortest path P by min{r ij : (i, j) P } {e(s), e(t)}. If no such t is reached STOP, problem is infeasible. end do while Set ϵ = ϵ/. end ϵ-scaling phase
12 Example of the Cost Scaling Algorithm (all capacities are 15) Start of First Scaling Phase (ϵ = 16:) πi $9 5 c ij $9 $7 s b i 1 1 $7 $15 $7 t $16 $7 4 π-values Retreat Node (augment) Augment along path 1 6 7, δ = 1. End of first scaling phase. x, ij cπ ij $9 πi 8 $1 5 $7 5,$7 5,$7 5,$ , $ , $7 1, $7 $8 $7 4
13 Second Scaling Phase (ϵ = 8) Flow on arcs (1,),(,6),(6,7) set to. Starting network: x, ij π i 8 $1 5 cπ ij $9 $7 s b i 1 1 5,$7 5,$7 6 5,$ t 1 $8 $7 4 π-values Retreat Node (augment) Augment along path 1 5 7, δ = 1.
14 End of second scaling phase. x, ij cπ ij 5,$1 π i 1, $ ,$1 5 1, $1 1, $ 5,$ 1 $ $ 6 $ $ $ 4 4
15 Third Scaling Phase (ϵ = 4:) Flow on arc (5,7) set to. Starting flow: x, ij cπ ij 5,$1 π i 1, $ ,$1 5 1, $1 s 1 b i 5,$ 1 $ $ 6 $ t 1 $ $ 4 4 π-values Retreat Node (search ) (augment) Augment along path , δ = 1. End of third scaling phase. π c ij $ 1 πi 1 4 $1 5 $ 1 $ $1 6 $ ,$ 1,$ 5, $1 1,$1 4 6
16 Optimal Flow The current flow of 1 units on arcs (1,4) and (4,7) turns out to be optimal. The final residual graph, with the given π values has no nonnegative cycles. Solving the shortest path problem on G(x) with the final reduced costs (or the original costs) gives the following reduced costs satisfying the Reduced Cost Optimality Conditions: π c ij $ π 1 $ $ 6 $ ,$ i 14 1,$ $ 4 7 5,$ 5 5 $ 1,$
17 Lemma 1: Let x and π be the current ϵ/- optimal pseudoflow and node numbers, respectively, at some point of the ϵ/-phase of the Cost Scaling Algorithm, and let x and π be the flow and node numbers, respectively, at the end of the previous ϵ-phase. Let P be an (s, t)-path in G(x) such that the (t, s)-path P of reverse arcs of P existed in G(x ). Then (π s π s ) (π t π t ) < nϵ. Proof: Let l(p ) and l( P ) be the length of P and P, respectively, and let p be the number of arcs in each. Then But c π ij l(p ) = (i,j) P l( P ) = (i,j) P c π ij π s + π t c π ij π t + π s ϵ/, since x is ϵ/-optimal; c π ij ϵ, since x was ϵ-optimal; l( P ) = l(p ), since their edges are oppositely directed. Thus pϵ π s + π t l( P ) = l(p ) pϵ/ + π t π s. and so (π s π s ) (π t π t ) < pϵ nϵ.
18 Lemma 1.4 No node will be relabeled more than n times during an ϵ-scaling phase. Proof: Let x and π be the ϵ-optimal flow and node numbers at the end of the ϵ-scaling phase of the Cost Scaling Algorithm, and let x and π be the ϵ/-optimal pseudoflow and node numbers at some point in the label/augment routine from node s during the ϵ/-scaling phase. Now consider the flow x x. Since x is a feasible flow on G, then x x is then a flow on G(x) with supplies and demands being the imbalances e. We can therefore decompose this flow into a set of E-to-D paths and cycles on G(x), and further, the reverse of these paths and cycles also appeared in G(x ). Thus the conditions of Lemma 1 are satisfied on any of these paths. From the description of the Cost Scaling Algorithm it follows that a deficit node t is never relabeled until its deficit is satisfied, so that π t = π t. Thus for any excess node s, Lemma 1.4 insures that π s will never increase more than nϵ during the label/augment part of the algorithm. But since each relabeling of a node increases its node number by ϵ/, then there can be no more than n relabels of any node.
19 Complexity of the Algorithm Facts: 1. After each ϵ-scaling phase, the current x is ϵ/-optimal; when ϵ < 1/n the current x is optimal (Lemma 1.).. ϵ starts at value C, the algorithm ends when ϵ 1/n. Thus the total number of ϵ-scaling phases is log nc.. No node will be relabeled more than n times during an ϵ-scaling phase (Lemma 1.4). 4. During an ϵ-scaling phase: for each s E chosen there will be at most nm total augment steps, with total time complexity O(n m). (This follows exactly the same argument as for the Shortest Augmenting Path Algorithm, independent of how many t nodes are reached.) 5. The total time for an ϵ-scaling phase is therefore O(n m). Theorem: The cost scaling algorithm runs in O(n m log nc) time.
20 The Minimum Mean Cycle-Canceling Algorithm Recall the Cycle Canceling Algorithm: Initialize: Find some feasible flow x in G and form the residual graph G(x). while G(x) contains a negative-cost cycle Find some negative cost cycle W in G(x) Set δ = min{r ij : (i, j) W } Augment δ units of flow around W and update G(x) end while Minimum mean cycle-canceling algorithm: In the cycle-cancelling algorithm, choose the cycle W with minimum mean cost c(w )/ W ( W = the number of arcs in W ). Theorem 1.18: The minimum mean cycle-canceling algorithm performs O(nm log n) iterations and runs in O(n m log n) time. Proof: (Two sections and seven pages. Pass.)
21 Preflow Push Algorithms Most of the most theoretically efficient algorithms for min-cost flow involve pushing flow along arcs rather than paths. We outline some of them here. Algorithm Description Complexity Preflow Push Cap. Scaling Wave Implementation Double Scaling Repeated Capacity Scaling Enhanced Capacity Scaling Capacity scaling using the preflow push technique. Modification of cost scaling algorithm where nodes of the (acyclic) admissible network are examinined in topological order. Capacity scaling algorithm is embedded in the ϵ-scaling phase of the cost scaling algorithm (applied to the transportation transformation of the problem). Capacity scaling algorithm is used to find the optimal solution to the dual problem, and the min flow is constructed from this. Capacity scaling algorithm, but using the previous flow in the succeeding phase rather than starting a new flow. O(n m log(nc)) O(n log(nc)) O(nm log U log(nc)) O(n log n S(n, m)) O(m log n S(n, m)) where S(n, m) is the best strongly polynomial complexity of a shortest path algorithm using nonnegative arc weights (currently O(m+n log m)). The Enhanced Scaling Algorithm is the best known strongly polynomial algorithm.
Graphs and Network Flows IE411. Lecture 12. Dr. Ted Ralphs
Graphs and Network Flows IE411 Lecture 12 Dr. Ted Ralphs IE411 Lecture 12 1 References for Today s Lecture Required reading Sections 21.1 21.2 References AMO Chapter 6 CLRS Sections 26.1 26.2 IE411 Lecture
More informationGraphs and Network Flows IE411. Lecture 15. Dr. Ted Ralphs
Graphs and Network Flows IE411 Lecture 15 Dr. Ted Ralphs IE411 Lecture 15 1 Preflow-Push Algorithms First developed by A. V. Goldberg in 1985. Best preflow-push algorithms outperform best augmenting path
More informationMath 5490 Network Flows
Math 90 Network Flows Lecture 8: Flow Decomposition Algorithm Stephen Billups University of Colorado at Denver Math 90Network Flows p./6 Flow Decomposition Algorithms Two approaches to modeling network
More informationLecture 3. 1 Polynomial-time algorithms for the maximum flow problem
ORIE 633 Network Flows August 30, 2007 Lecturer: David P. Williamson Lecture 3 Scribe: Gema Plaza-Martínez 1 Polynomial-time algorithms for the maximum flow problem 1.1 Introduction Let s turn now to considering
More information15.082J and 6.855J and ESD.78J October 21, Max Flows 4
5.08J and 6.855J and ESD.78J October, 00 Max Flows 4 Overview of today s lecture Scaling Algorithms Potential function analysis The Excess Scaling Algorithm O(n log U) non-saturating pushes, where U =
More informationORIE 633 Network Flows October 4, Lecture 10
ORIE 633 Network Flows October 4, 2007 Lecturer: David P. Williamson Lecture 10 Scribe: Kathleen King 1 Efficient algorithms for max flows 1.1 The Goldberg-Rao algorithm Recall from last time: Dinic s
More informationMaximum flow problem (part I)
Maximum flow problem (part I) Combinatorial Optimization Giovanni Righini Università degli Studi di Milano Definitions A flow network is a digraph D = (N,A) with two particular nodes s and t acting as
More informationDiscrete Optimization 2010 Lecture 3 Maximum Flows
Remainder: Shortest Paths Maximum Flows Discrete Optimization 2010 Lecture 3 Maximum Flows Marc Uetz University of Twente m.uetz@utwente.nl Lecture 3: sheet 1 / 29 Marc Uetz Discrete Optimization Outline
More informationNetwork Flows. 4. Maximum Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini
In the name of God Network Flows 4. Maximum Flows Problems 4.1 Introduction Fall 2010 Instructor: Dr. Masoud Yaghini Introduction Introduction The maximum flow problem In a capacitated network, we wish
More informationA FAST MAX FLOW ALGORITHM
A FAST MAX FLOW ALGORITHM Xiaoyue Gong MIT, xygong@mit.edu James B. Orlin MIT, jorlin@mit.edu Abstract. In 2013, Orlin proved that the max flow problem could be solved in O(nm) time. His algorithm ran
More informationEnergy minimization via graph-cuts
Energy minimization via graph-cuts Nikos Komodakis Ecole des Ponts ParisTech, LIGM Traitement de l information et vision artificielle Binary energy minimization We will first consider binary MRFs: Graph
More informationApproximate Binary Search Algorithms for Mean Cuts and Cycles
Approximate Binary Search Algorithms for Mean Cuts and Cycles S. Thomas McCormick Faculty of Commerce and Business Administration University of British Columbia Vancouver, BC V6T 1Z2 Canada June 1992,
More informationMinimum Cost Flow Algorithms
4 Minimum Cost Flow Algorithms Assumption 4.1 In this chapter we will always use G =(V,R,,!) to denote a finite graph and l, c be real-valued functions which assign lower and upper capacities to the arcs
More informationTwo Applications of Maximum Flow
Two Applications of Maximum Flow The Bipartite Matching Problem a bipartite graph as a flow network maximum flow and maximum matching alternating paths perfect matchings 2 Circulation with Demands flows
More informationProblem set 1. (c) Is the Ford-Fulkerson algorithm guaranteed to produce an acyclic maximum flow?
CS261, Winter 2017. Instructor: Ashish Goel. Problem set 1 Electronic submission to Gradescope due 11:59pm Thursday 2/2. Form a group of 2-3 students that is, submit one homework with all of your names.
More informationINVERSE SPANNING TREE PROBLEMS: FORMULATIONS AND ALGORITHMS
INVERSE SPANNING TREE PROBLEMS: FORMULATIONS AND ALGORITHMS P. T. Sokkalingam Department of Mathematics Indian Institute of Technology, Kanpur-208 016, INDIA Ravindra K. Ahuja Dept. of Industrial & Management
More informationThe Budget-Constrained Maximum Flow Problem
9 The Budget-Constrained Maximum Flow Problem In this chapter we consider the following problem which is called the constrained maximum flow problem ( Cmfp) [AO95]: We are given a budget B and we seek
More informationRunning Time. Assumption. All capacities are integers between 1 and C.
Running Time Assumption. All capacities are integers between and. Invariant. Every flow value f(e) and every residual capacities c f (e) remains an integer throughout the algorithm. Theorem. The algorithm
More information6.854 Advanced Algorithms
6.854 Advanced Algorithms Homework 5 Solutions 1 10 pts Define the following sets: P = positions on the results page C = clicked old results U = unclicked old results N = new results and let π : (C U)
More informationMaximum flow problem
Maximum flow problem 7000 Network flows Network Directed graph G = (V, E) Source node s V, sink node t V Edge capacities: cap : E R 0 Flow: f : E R 0 satisfying 1. Flow conservation constraints e:target(e)=v
More informationMinimum Cost Flow. Lecture 5: Jan 25
Minimum Cost Flow Lecture 5: Jan 25 Bibliografia Network Flows, Ahuja, Magnanti e Orlin Capítulos 1 e 2 Seção 3.5 Seções 9.1, 9.2 and 9.3, 9.6 and 9.7 Seções 10.1,10.2 Lecture 5: Jan 25 Flows Def. An s-t
More informationWeek 4. (1) 0 f ij u ij.
Week 4 1 Network Flow Chapter 7 of the book is about optimisation problems on networks. Section 7.1 gives a quick introduction to the definitions of graph theory. In fact I hope these are already known
More informationInternet Routing Example
Internet Routing Example Acme Routing Company wants to route traffic over the internet from San Fransisco to New York. It owns some wires that go between San Francisco, Houston, Chicago and New York. The
More informationMaximum Integer Flows in Directed Planar Graphs with Multiple Sources and Sinks and Vertex Capacities
Maximum Integer Flows in Directed Planar Graphs with Multiple Sources and Sinks and Vertex Capacities Yipu Wang University of Illinois at Urbana-Champaign ywang298@illinois.edu July 12, 2018 Abstract We
More informationMaximum flow problem CE 377K. February 26, 2015
Maximum flow problem CE 377K February 6, 05 REVIEW HW due in week Review Label setting vs. label correcting Bellman-Ford algorithm Review MAXIMUM FLOW PROBLEM Maximum Flow Problem What is the greatest
More informationLecture 21 November 11, 2014
CS 224: Advanced Algorithms Fall 2-14 Prof. Jelani Nelson Lecture 21 November 11, 2014 Scribe: Nithin Tumma 1 Overview In the previous lecture we finished covering the multiplicative weights method and
More informationLecture 7: Shortest Paths in Graphs with Negative Arc Lengths. Reading: AM&O Chapter 5
Lecture 7: Shortest Paths in Graphs with Negative Arc Lengths Reading: AM&O Chapter Label Correcting Methods Assume the network G is allowed to have negative arc lengths but no directed negativelyweighted
More informationStrongly Polynomial Algorithm for a Class of Minimum-Cost Flow Problems with Separable Convex Objectives
Strongly Polynomial Algorithm for a Class of Minimum-Cost Flow Problems with Separable Convex Objectives László A. Végh April 12, 2013 Abstract A well-studied nonlinear extension of the minimum-cost flow
More informationdirected weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time
Network Flow 1 The Maximum-Flow Problem directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time 2 Maximum Flows and Minimum Cuts flows and cuts max flow equals
More informationChapter 7 Network Flow Problems, I
Chapter 7 Network Flow Problems, I Network flow problems are the most frequently solved linear programming problems. They include as special cases, the assignment, transportation, maximum flow, and shortest
More informationMinimum cost transportation problem
Minimum cost transportation problem Complements of Operations Research Giovanni Righini Università degli Studi di Milano Definitions The minimum cost transportation problem is a special case of the minimum
More informationCSC 373: Algorithm Design and Analysis Lecture 12
CSC 373: Algorithm Design and Analysis Lecture 12 Allan Borodin February 4, 2013 1 / 16 Lecture 12: Announcements and Outline Announcements Term test 1 in tutorials. Need to use only two rooms due to sickness
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LETURE 28 Network Flow hoosing good augmenting paths apacity scaling algorithm A. Smith /4/2008 A. Smith; based on slides by K. Wayne and S. Raskhodnikova Pre-break: Ford-Fulkerson
More informationAlgorithms and Theory of Computation. Lecture 11: Network Flow
Algorithms and Theory of Computation Lecture 11: Network Flow Xiaohui Bei MAS 714 September 18, 2018 Nanyang Technological University MAS 714 September 18, 2018 1 / 26 Flow Network A flow network is a
More informationFlows. Chapter Circulations
Chapter 4 Flows For a directed graph D = (V,A), we define δ + (U) := {(u,v) A : u U,v / U} as the arcs leaving U and δ (U) := {(u,v) A u / U,v U} as the arcs entering U. 4. Circulations In a directed graph
More informationAn Analysis of the Highest-Level Selection Rule in the Preflow-Push Max-Flow Algorithm
An Analysis of the Highest-Level Selection Rule in the Preflow-Push Max-Flow Algorithm Joseph Cheriyan Kurt Mehlhorn August 20, 1998 Abstract Consider the problem of finding a maximum flow in a network.
More information(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6
The exam is three hours long and consists of 4 exercises. The exam is graded on a scale 0-25 points, and the points assigned to each question are indicated in parenthesis within the text. Problem 1 Consider
More informationRecall: Matchings. Examples. K n,m, K n, Petersen graph, Q k ; graphs without perfect matching
Recall: Matchings A matching is a set of (non-loop) edges with no shared endpoints. The vertices incident to an edge of a matching M are saturated by M, the others are unsaturated. A perfect matching of
More informationu = 50 u = 30 Generalized Maximum Flow Problem s u = 00 2 u = 00 u = 50 4 = 3=4 u = 00 t capacity u = 20 3 u = 20 = =2 5 u = 00 gain/loss factor Max o
Generalized Max Flows Kevin Wayne Cornell University www.orie.cornell.edu/~wayne = 3=4 40 v w 30 advisor: Eva Tardos u = 50 u = 30 Generalized Maximum Flow Problem s u = 00 2 u = 00 u = 50 4 = 3=4 u =
More informationComputer Science & Engineering 423/823 Design and Analysis of Algorithms
Bipartite Matching Computer Science & Engineering 423/823 Design and s Lecture 07 (Chapter 26) Stephen Scott (Adapted from Vinodchandran N. Variyam) 1 / 36 Spring 2010 Bipartite Matching 2 / 36 Can use
More informationMathematics for Decision Making: An Introduction. Lecture 13
Mathematics for Decision Making: An Introduction Lecture 13 Matthias Köppe UC Davis, Mathematics February 17, 2009 13 1 Reminder: Flows in networks General structure: Flows in networks In general, consider
More informationDuality of LPs and Applications
Lecture 6 Duality of LPs and Applications Last lecture we introduced duality of linear programs. We saw how to form duals, and proved both the weak and strong duality theorems. In this lecture we will
More informationCMSC 451: Max-Flow Extensions
CMSC 51: Max-Flow Extensions Slides By: Carl Kingsford Department of Computer Science University of Maryland, College Park Based on Section 7.7 of Algorithm Design by Kleinberg & Tardos. Circulations with
More informationNetwork Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini
In the name of God Network Flows 6. Lagrangian Relaxation 6.3 Lagrangian Relaxation and Integer Programming Fall 2010 Instructor: Dr. Masoud Yaghini Integer Programming Outline Branch-and-Bound Technique
More informationA Faster Combinatorial Approximation Algorithm for Scheduling Unrelated Parallel Machines
A Faster Combinatorial Approximation Algorithm for Scheduling Unrelated Parallel Machines Martin Gairing Burkhard Monien Andreas Woclaw Faculty of Computer Science, Electrical Engineering and Mathematics,
More informationShortest paths: label setting
: label setting CE 377K February 19, 2015 REVIEW HW 2 posted, due in 2 weeks Review Basic search algorithm Prim s algorithm Review Algorithm (Assumes that the network is connected.) 1 Arbitrarily choose
More informationACO Comprehensive Exam March 20 and 21, Computability, Complexity and Algorithms
1. Computability, Complexity and Algorithms Part a: You are given a graph G = (V,E) with edge weights w(e) > 0 for e E. You are also given a minimum cost spanning tree (MST) T. For one particular edge
More informationEXERCISES 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 informationLecture 8 Network Optimization Algorithms
Advanced Algorithms Floriano Zini Free University of Bozen-Bolzano Faculty of Computer Science Academic Year 2013-2014 Lecture 8 Network Optimization Algorithms 1 21/01/14 Introduction Network models have
More informationThe Max Flow Problem
The Max Flow Problem jla,jc@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark 1 1 3 4 6 6 1 2 4 3 r 3 2 4 5 7 s 6 2 1 8 1 3 3 2 6 2 Max-Flow Terminology We consider a digraph
More informationNetwork Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini
In the name of God Network Flows 7. Multicommodity Flows Problems 7.3 Column Generation Approach Fall 2010 Instructor: Dr. Masoud Yaghini Path Flow Formulation Path Flow Formulation Let first reformulate
More informationAn Efficient Algorithm for Computing Robust Minimum Capacity s-t Cuts
An Efficient Algorithm for Computing Robust Minimum Capacity s-t Cuts Doug Altner H. Milton Stewart School of Industrial and Systems Engineering Georgia Institute of Technology 765 Ferst Drive NW, Atlanta,
More informationFriday, September 21, Flows
Flows Building evacuation plan people to evacuate from the offices corridors and stairways capacity 10 10 5 50 15 15 15 60 60 50 15 10 60 10 60 15 15 50 For each person determine the path to follow to
More informationA Faster Combinatorial Approximation Algorithm for Scheduling Unrelated Parallel Machines
A Faster Combinatorial Approximation Algorithm for Scheduling Unrelated Parallel Machines Martin Gairing, Burkhard Monien, and Andreas Woclaw Faculty of Computer Science, Electrical Engineering and Mathematics,
More informationA FASTER STRONGLY POLYNOMIAL MINIMUM COST FLOW ALGORITHM. James B. Orlin
A FASTER STRONGLY POLYNOMIAL MINIMUM COST FLOW ALGORITHM James B. Orlin Sloan W.P. No. 3060-89-MS August, 1989 Report Documentation Page Form Approved OMB No. 0704-0188 Public reporting burden for the
More informationAdvanced Linear Programming: The Exercises
Advanced Linear Programming: The Exercises The answers are sometimes not written out completely. 1.5 a) min c T x + d T y Ax + By b y = x (1) First reformulation, using z smallest number satisfying x z
More information7. Lecture notes on the ellipsoid algorithm
Massachusetts Institute of Technology Michel X. Goemans 18.433: Combinatorial Optimization 7. Lecture notes on the ellipsoid algorithm The simplex algorithm was the first algorithm proposed for linear
More information1 The linear algebra of linear programs (March 15 and 22, 2015)
1 The linear algebra of linear programs (March 15 and 22, 2015) Many optimization problems can be formulated as linear programs. The main features of a linear program are the following: Variables are real
More informationAgenda. Soviet Rail Network, We ve done Greedy Method Divide and Conquer Dynamic Programming
Agenda We ve done Greedy Method Divide and Conquer Dynamic Programming Now Flow Networks, Max-flow Min-cut and Applications c Hung Q. Ngo (SUNY at Buffalo) CSE 531 Algorithm Analysis and Design 1 / 52
More informationLecture 1. 1 Overview. 2 Maximum Flow. COMPSCI 532: Design and Analysis of Algorithms August 26, 2015
COMPSCI 532: Design and Analysis of Algorithms August 26, 205 Lecture Lecturer: Debmalya Panigrahi Scribe: Allen Xiao Oeriew In this lecture, we will define the maximum flow problem and discuss two algorithms
More informationOn Végh s Strongly Polynomial Algorithm for Generalized Flows
On Végh s Strongly Polynomial Algorithm for Generalized Flows by Venus Hiu Ling Lo A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Master of
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LETURE 2 Network Flow Finish bipartite matching apacity-scaling algorithm Adam Smith 0//0 A. Smith; based on slides by E. Demaine,. Leiserson, S. Raskhodnikova, K. Wayne Marriage
More informationx 1 + 4x 2 = 5, 7x 1 + 5x 2 + 2x 3 4,
LUNDS TEKNISKA HÖGSKOLA MATEMATIK LÖSNINGAR LINJÄR OCH KOMBINATORISK OPTIMERING 2018-03-16 1. a) The rst thing to do is to rewrite the problem so that the right hand side of all constraints are positive.
More information15-850: Advanced Algorithms CMU, Fall 2018 HW #4 (out October 17, 2018) Due: October 28, 2018
15-850: Advanced Algorithms CMU, Fall 2018 HW #4 (out October 17, 2018) Due: October 28, 2018 Usual rules. :) Exercises 1. Lots of Flows. Suppose you wanted to find an approximate solution to the following
More informationDiscrete Optimization 2010 Lecture 2 Matroids & Shortest Paths
Matroids Shortest Paths Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths Marc Uetz University of Twente m.uetz@utwente.nl Lecture 2: sheet 1 / 25 Marc Uetz Discrete Optimization Matroids
More informationThe Maximum Flow Problem
The Maximum Flow Problem put: a directed graph G =(V,E), source node s V, sink node t V edge capacities cap : E IR 0 s 1/0 1/1 1/1 t 2/2 2/1 oal: compute a flow of maximal value, i.e., a function f : E
More information- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs
LP-Duality ( Approximation Algorithms by V. Vazirani, Chapter 12) - Well-characterized problems, min-max relations, approximate certificates - LP problems in the standard form, primal and dual linear programs
More informationCMPSCI 611: Advanced Algorithms
CMPSCI 611: Advanced Algorithms Lecture 12: Network Flow Part II Andrew McGregor Last Compiled: December 14, 2017 1/26 Definitions Input: Directed Graph G = (V, E) Capacities C(u, v) > 0 for (u, v) E and
More informationFINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)
FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except
More informationIE 5531: Engineering Optimization I
IE 5531: Engineering Optimization I Lecture 7: Duality and applications Prof. John Gunnar Carlsson September 29, 2010 Prof. John Gunnar Carlsson IE 5531: Engineering Optimization I September 29, 2010 1
More informationChapter 10. Maximum flow
Chapter 10 Maximum flow An s t flow is defined as a nonnegative real-valued function on the arcs of a digraph satisfying the flow conservation law at each vertex s, t. In this chapter we consider the problem
More informationA primal-simplex based Tardos algorithm
A primal-simplex based Tardos algorithm Shinji Mizuno a, Noriyoshi Sukegawa a, and Antoine Deza b a Graduate School of Decision Science and Technology, Tokyo Institute of Technology, 2-12-1-W9-58, Oo-Okayama,
More informationMaximum Flow Problem (Ford and Fulkerson, 1956)
Maximum Flow Problem (Ford and Fulkerson, 196) In this problem we find the maximum flow possible in a directed connected network with arc capacities. There is unlimited quantity available in the given
More informationBulletin of the Transilvania University of Braşov Vol 8(57), No Series III: Mathematics, Informatics, Physics,
Bulletin of the Transilvania University of Braşov Vol 8(57), No. - 05 Series III: Mathematics, Informatics, Physics, -8 MAXIMUM CUTS FOR A MINIMUM FLOW Eleonor CIUREA Abstract In this paper we resolve
More informationMaximum Flow. Reading: CLRS Chapter 26. CSE 6331 Algorithms Steve Lai
Maximum Flow Reading: CLRS Chapter 26. CSE 6331 Algorithms Steve Lai Flow Network A low network G ( V, E) is a directed graph with a source node sv, a sink node tv, a capacity unction c. Each edge ( u,
More informationPolynomial-Time Highest-Gain Augmenting Path Algorithms for the Generalized Circulation Problem. by Donald Goldfarb Zhiying Jin James B.
Polynomial-Time Highest-Gain Augmenting Path Algorithms for the Generalized Circulation Problem by Donald Goldfarb Zhiying Jin James B. Orlin WP #3909-96 June 1996 Polynomial-Time Highest-Gain Augmenting
More informationLecture #21. c T x Ax b. maximize subject to
COMPSCI 330: Design and Analysis of Algorithms 11/11/2014 Lecture #21 Lecturer: Debmalya Panigrahi Scribe: Samuel Haney 1 Overview In this lecture, we discuss linear programming. We first show that the
More informationChapter 7. Network Flow. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.
Chapter 7 Network Flow Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 7.5 Bipartite Matching Matching Matching. Input: undirected graph G = (V, E). M E is a matching
More informationA faster combinatorial approximation algorithm for scheduling unrelated parallel machines
Theoretical Computer Science 380 (2007) 87 99 www.elsevier.com/locate/tcs A faster combinatorial approximation algorithm for scheduling unrelated parallel machines Martin Gairing, Burkhard Monien, Andreas
More informationNote that M i,j depends on two entries in row (i 1). If we proceed in a row major order, these two entries will be available when we are ready to comp
CSE 3500 Algorithms and Complexity Fall 2016 Lecture 18: October 27, 2016 Dynamic Programming Steps involved in a typical dynamic programming algorithm are: 1. Identify a function such that the solution
More informationSemi-Simultaneous Flows and Binary Constrained (Integer) Linear Programs
DEPARTMENT OF MATHEMATICAL SCIENCES Clemson University, South Carolina, USA Technical Report TR2006 07 EH Semi-Simultaneous Flows and Binary Constrained (Integer Linear Programs A. Engau and H. W. Hamacher
More informationGraph Algorithms -2: Flow Networks. N. H. N. D. de Silva Dept. of Computer Science & Eng University of Moratuwa
CS4460 Advanced d Algorithms Batch 08, L4S2 Lecture 9 Graph Algorithms -2: Flow Networks Dept. of Computer Science & Eng University of Moratuwa Announcement Assignment 2 is due on 18 th of November Worth
More informationDynamic Programming: Shortest Paths and DFA to Reg Exps
CS 374: Algorithms & Models of Computation, Spring 207 Dynamic Programming: Shortest Paths and DFA to Reg Exps Lecture 8 March 28, 207 Chandra Chekuri (UIUC) CS374 Spring 207 / 56 Part I Shortest Paths
More informationPart V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows
Matching Input: undirected graph G = (V, E). M E is a matching if each node appears in at most one Part V edge in M. Maximum Matching: find a matching of maximum cardinality Matchings Ernst Mayr, Harald
More informationIntroduction to Algorithms
Introduction to Algorithms 6.046J/18.401J/SMA5503 Lecture 18 Prof. Erik Demaine Negative-weight cycles Recall: If a graph G = (V, E) contains a negativeweight cycle, then some shortest paths may not exist.
More informationUses of duality. Geoff Gordon & Ryan Tibshirani Optimization /
Uses of duality Geoff Gordon & Ryan Tibshirani Optimization 10-725 / 36-725 1 Remember conjugate functions Given f : R n R, the function is called its conjugate f (y) = max x R n yt x f(x) Conjugates appear
More informationLecture 2: Divide and conquer and Dynamic programming
Chapter 2 Lecture 2: Divide and conquer and Dynamic programming 2.1 Divide and Conquer Idea: - divide the problem into subproblems in linear time - solve subproblems recursively - combine the results in
More informationThe maximum flow problem
The maximum flow problem A. Agnetis 1 Basic properties Given a network G = (N, A) (having N = n nodes and A = m arcs), and two nodes s (source) and t (sink), the maximum flow problem consists in finding
More informationCS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi
CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs Instructor: Shaddin Dughmi Outline 1 Introduction 2 Shortest Path 3 Algorithms for Single-Source
More informationIntroduction to Integer Programming
Lecture 3/3/2006 p. /27 Introduction to Integer Programming Leo Liberti LIX, École Polytechnique liberti@lix.polytechnique.fr Lecture 3/3/2006 p. 2/27 Contents IP formulations and examples Total unimodularity
More informationCSC Design and Analysis of Algorithms. LP Shader Electronics Example
CSC 80- Design and Analysis of Algorithms Lecture (LP) LP Shader Electronics Example The Shader Electronics Company produces two products:.eclipse, a portable touchscreen digital player; it takes hours
More informationPrimal vector is primal infeasible till end. So when primal feasibility attained, the pair becomes opt. & method terminates. 3. Two main steps carried
4.1 Primal-Dual Algorithms Katta G. Murty, IOE 612 Lecture slides 4 Here we discuss special min cost ow problems on bipartite networks, the assignment and transportation problems. Algorithms based on an
More informationAlgorithms and Theory of Computation. Lecture 13: Linear Programming (2)
Algorithms and Theory of Computation Lecture 13: Linear Programming (2) Xiaohui Bei MAS 714 September 25, 2018 Nanyang Technological University MAS 714 September 25, 2018 1 / 15 LP Duality Primal problem
More informationRobust Network Codes for Unicast Connections: A Case Study
Robust Network Codes for Unicast Connections: A Case Study Salim Y. El Rouayheb, Alex Sprintson, and Costas Georghiades Department of Electrical and Computer Engineering Texas A&M University College Station,
More informationLecture 13 Spectral Graph Algorithms
COMS 995-3: Advanced Algorithms March 6, 7 Lecture 3 Spectral Graph Algorithms Instructor: Alex Andoni Scribe: Srikar Varadaraj Introduction Today s topics: Finish proof from last lecture Example of random
More informationFlows and Cuts. 1 Concepts. CS 787: Advanced Algorithms. Instructor: Dieter van Melkebeek
CS 787: Advanced Algorithms Flows and Cuts Instructor: Dieter van Melkebeek This lecture covers the construction of optimal flows and cuts in networks, their relationship, and some applications. It paves
More informationComplexity and algorithms for nonlinear optimization problems
Ann Oper Res (2007) 153: 257 296 DOI 10.1007/s10479-007-0172-6 Complexity and algorithms for nonlinear optimization problems Dorit S. Hochbaum Published online: 3 May 2007 Springer Science+Business Media,
More informationDiscrete Optimization
Prof. Friedrich Eisenbrand Martin Niemeier Due Date: April 15, 2010 Discussions: March 25, April 01 Discrete Optimization Spring 2010 s 3 You can hand in written solutions for up to two of the exercises
More informationDiscrete Optimization Lecture 5. M. Pawan Kumar
Discrete Optimization Lecture 5 M. Pawan Kumar pawan.kumar@ecp.fr Exam Question Type 1 v 1 s v 0 4 2 1 v 4 Q. Find the distance of the shortest path from s=v 0 to all vertices in the graph using Dijkstra
More informationGRAPH ALGORITHMS Week 7 (13 Nov - 18 Nov 2017)
GRAPH ALGORITHMS Week 7 (13 Nov - 18 Nov 2017) C. Croitoru croitoru@info.uaic.ro FII November 12, 2017 1 / 33 OUTLINE Matchings Analytical Formulation of the Maximum Matching Problem Perfect Matchings
More information