MAS210 Graph Theory Exercises 5 Solutions (1) v 5 (1)

Similar documents
directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time

Ring Sums, Bridges and Fundamental Sets

Algorithms: Lecture 12. Chalmers University of Technology

5 Flows and cuts in digraphs

Preliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)}

Flows and Cuts. 1 Concepts. CS 787: Advanced Algorithms. Instructor: Dieter van Melkebeek

(1,3) (3,4) (2,2) (1,2) (2,4) t

Two Applications of Maximum Flow

GRAPH ALGORITHMS Week 7 (13 Nov - 18 Nov 2017)

Algorithms and Theory of Computation. Lecture 11: Network Flow

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths

The Max Flow Problem

Max Flow: Algorithms and Applications

7.5 Bipartite Matching

Running Time. Assumption. All capacities are integers between 1 and C.

Graph Transformations T1 and T2

Standard Diraphs the (unique) digraph with no vertices or edges. (modulo n) for every 1 i n A digraph whose underlying graph is a complete graph.

10 Max-Flow Min-Cut Flows and Capacitated Graphs 10 MAX-FLOW MIN-CUT

Minimum cost transportation problem

1.3 Vertex Degrees. Vertex Degree for Undirected Graphs: Let G be an undirected. Vertex Degree for Digraphs: Let D be a digraph and y V (D).

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

Discrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees

The partial inverse minimum cut problem with L 1 -norm is strongly NP-hard. Elisabeth Gassner

Chapter 7 Network Flow Problems, I

Agenda. Soviet Rail Network, We ve done Greedy Method Divide and Conquer Dynamic Programming

A short course on matching theory, ECNU Shanghai, July 2011.

Ngày 20 tháng 7 năm Discrete Optimization Graphs

We say that a flow is feasible for G (or just feasible if the graph and capacity function in question are obvious) if

FRACTIONAL PACKING OF T-JOINS. 1. Introduction

Discrete Optimization 2010 Lecture 3 Maximum Flows

CSC Design and Analysis of Algorithms. LP Shader Electronics Example

Scheduling with AND/OR Precedence Constraints

Maximum Flow Problem (Ford and Fulkerson, 1956)

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

Part V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows

Advanced Combinatorial Optimization September 24, Lecture 5

Breadth-First Search of Graphs

Chapter 7. Network Flow. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Algorithm Design and Analysis

Relation of Pure Minimum Cost Flow Model to Linear Programming

Preliminaries and Complexity Theory

CSC 373: Algorithm Design and Analysis Lecture 12

Maximum flow problem CE 377K. February 26, 2015

UNIVERSITY OF YORK. MSc Examinations 2004 MATHEMATICS Networks. Time Allowed: 3 hours.

Flows and Connectivity

Maximum flow problem (part I)

Algorithm Design and Analysis

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

Discrete Optimization

Edmonds Branching Theorem in Digraphs without Forward-infinite Paths arxiv: v1 [math.co] 1 May 2017

Search and Lookahead. Bernhard Nebel, Julien Hué, and Stefan Wölfl. June 4/6, 2012

C&O 355 Mathematical Programming Fall 2010 Lecture 18. N. Harvey

18.312: Algebraic Combinatorics Lionel Levine. Lecture 19

GRAPH ALGORITHMS Week 3 (16-21 October 2017)

Decision Mathematics Module D1

Advanced Combinatorial Optimization Updated February 18, Lecture 5. Lecturer: Michel X. Goemans Scribe: Yehua Wei (2009)

Maximum Integer Flows in Directed Planar Graphs with Multiple Sources and Sinks and Vertex Capacities

Paths with two blocks in n-chromatic digraphs

Relationship between Maximum Flows and Minimum Cuts

ACO Comprehensive Exam 19 March Graph Theory

Lecture 5 January 16, 2013

Introduction 1.1 PROBLEM FORMULATION

Elisabeth Gassner Introduction THE PARTIAL INVERSE MINIMUM CUT PROBLEM WITH L 1 -NORM IS STRONGLY NP-HARD

Network Flows. CTU FEE Department of control engineering. March 28, 2017

Algorithm Theory - Exercise Class

Discrete Optimization 23

Discrete Optimization Lecture 5. M. Pawan Kumar

1. (12 points) Give a table-driven parse table for the following grammar: 1) X ax 2) X P 3) P DT 4) T P 5) T ε 7) D 1

Recall: Matchings. Examples. K n,m, K n, Petersen graph, Q k ; graphs without perfect matching

2 GRAPH AND NETWORK OPTIMIZATION. E. Amaldi Introduction to Operations Research Politecnico Milano 1

Hamiltonian paths in tournaments A generalization of sorting DM19 notes fall 2006

Each question has equal weight. The maximum possible mark is 75/75.

Exact and Heuristic Algorithms for the Symmetric and Asymmetric Vehicle Routing Problem with Backhauls

Factors in Graphs With Multiple Degree Constraints

Mathematical Programs Linear Program (LP)

Sinks in Acyclic Orientations of Graphs

NATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: Time Allowed 2 Hours

Introduction to Graph Theory

On (4,2)-digraphs Containing a Cycle of Length 2

1 Matroid intersection

Lecture 2: Network Flows 1

we first add 7 and then either divide by x - 7 = 1 Adding 7 to both sides 3 x = x = x = 3 # 8 1 # x = 3 # 4 # 2 x = 6 1 =?

k-degenerate Graphs Allan Bickle Date Western Michigan University

Bi-Arc Digraphs and Conservative Polymorphisms

ORIE 633 Network Flows October 4, Lecture 10

arxiv: v1 [cs.ds] 26 Feb 2016

Core Mathematics C1 (AS) Unit C1

2. A vertex in G is central if its greatest distance from any other vertex is as small as possible. This distance is the radius of G.

1 Introduction We adopt the terminology of [1]. Let D be a digraph, consisting of a set V (D) of vertices and a set E(D) V (D) V (D) of edges. For a n

MA015: Graph Algorithms

Coloring. Basics. A k-coloring of a loopless graph G is a function f : V (G) S where S = k (often S = [k]).

Lexicographic Flow. Dexter Kozen Department of Computer Science Cornell University Ithaca, New York , USA. June 25, 2009

Graph G = (V, E). V ={vertices}, E={edges}. V={a,b,c,d,e,f,g,h,k} E={(a,b),(a,g),( a,h),(a,k),(b,c),(b,k),...,(h,k)}

ALL GRAPHS WITH PAIRED-DOMINATION NUMBER TWO LESS THAN THEIR ORDER. Włodzimierz Ulatowski

MINIMALLY NON-PFAFFIAN GRAPHS

1.3 LIMITS AT INFINITY; END BEHAVIOR OF A FUNCTION

Countable Menger s theorem with finitary matroid constraints on the ingoing edges

CMPSCI 611: Advanced Algorithms

University of Chicago Autumn 2003 CS Markov Chain Monte Carlo Methods

0-Sum and 1-Sum Flows in Regular Graphs

Transcription:

MAS210 Graph Theor Exercises 5 Solutions Q1 Consider the following directed network N. x 3 (3) v 1 2 (2) v 2 5 (2) 2(2) 1 (0) 3 (0) 2 (0) 3 (0) 3 2 (2) 2(0) v v 5 1 v 6 The numbers in brackets define an x-flow f 1 in N. The numbers not in brackets define the capacities of the arcs of N. (a) Determine the value of f 1. (b) Grow a maximal f 1 -unsaturated tree T 1 rooted at x and use T 1 to construct an x-flow f 2 in x with val(f 2 ) > val(f 1 ). (c) Grow a maximal f 2 -unsaturated tree T 2 rooted at x and use T 2 to construct a set U V (N) with x U, V (N) U and c + (U) = val(f 2 ). Explain wh this equalit implies that f 2 is an x-flow of maximum value in N and A + N (U) is an x-arc cut of minimum capacit. (a) val(f 1 ) = 3 + 2 + 0 = 5. (b) Maximal f 1 -unsaturated tree rooted at x is x v 1 v 2 v v 5 Use the f 1 -unsaturated path x v v 5 v 2 to send one extra unit of flow from x to to give the new x-flow f 2 shown below. 1

x 3 (3) v 1 2 (2) v 2 5 (3) 2 (2) 1 (0) 3 2 (0) 3 (0) (0) 3 2 (2) 2 v (2) v 5 1 v 6 (c) Maximal f 1 -unsaturated tree rooted at x is x v 1 v v 5 The tree does not reach. Put U = V (T 2 ) = {x,, v, v 1, v 5 }. We have c + (U) = 2+1+2+1 = 6 = 1+2+3 = val(f 2 ). We know from lectures that the value of an x-flow is at most c + (U). Since val(f 2 ) = c + (U), f 2 must be an x-flow of maximum value. Similarl, we know that the capacit of an x-arc-cut is at least val(f 2 ). Since c + (U) = val(f 2 ), A + N (U) must be an x-arc-cut of minimum capacit. Q2 Let N be a directed network, x, V (N), and let f be an x-flow in N. Suppose that P is an f-unsaturated path from x to in N. Define g : A(N) Z b f(e) if e A(P ) g(e) = f(e) + 1 if e is a forward arc of P f(e) 1 if e is a backward arc of P Prove that g is an x-flow in N and that val(g) = val(f) + 1. To prove that g is an x-flow in N, we need to show (i) 0 g(e) c(e) for all e A(N), and (ii) g + (v) = g (v) for all v V (N) {x, }. Condition (i) follows since 0 f(e) c(e) for all e A(P ), 0 f(e) c(e) 1 for all forward arcs e of P, and 1 f(e) c(e) for all backward arcs e of P. 2

To verif (ii) we choose v V (N) {x, }. We need to consider different cases. Case 1: v V (P ). Then g(e) = f(e) for all arcs incident to v so g + (v) = f + (v) = f (v) = g (v). Case 2: v lies on P. let e 1 be the arc preceding v on P and e 2 be the arc following v on P. Case 2.1: e 1 and e 2 are both forward arcs of P. Then g + (v) = f + (v) + 1 = f (v) + 1 = g (v). Case 2.2: e 1 and e 2 are both backward arcs of P. Then g + (v) = f + (v) 1 = f (v) 1 = g (v). Case 2.3: e 1 is a forward arc of P and e 2 is a backward arc of P. Then g + (v) = f + (v) = f (v) = g (v). Case 2.: e 1 is a backward arc of P and e 2 is a forward arc of P. Then g + (v) = f + (v) = f (v) = g (v). We next show that val(g) = val(f) + 1. Let e 0 be the arc of P incident to x. We have g(e) = f(e) for all other arcs e of N which are incident to x. If e 0 is a forward arc of P then g(e 0 ) = f(e 0 ) + 1. Thus g + (v) = f + (v) + 1, g (v) = f (v) and val(g) = val(f)+1. On the other hand, if e is a backward arc of P then g(e 0 ) = f(e 0 ) 1. Thus g + (v) = f + (v), g (v) = f (v) 1 and val(g) = val(f) + 1. Q3 Let N be a directed network, x, V (N), and let f be an x-flow in N of maximum value. Let U be the set of all vertices which can be reached from x b f-unsaturated paths. Prove that (a) U. (b) All arcs e A + N (U) satisf f(e) = c(e) and all arcs e A N (U) satisf f(e) = 0. (c) val(f) = c + (U). (a) If U then N would have an f-unsaturated path from x to. This would contradict the fact that f is an x-flow of maximum value (b Q2 above). Thus U. (b) Choose e A + N (U). Then e = uv for some vertices u U and v U. Since u U there is an f-unsaturated path P from x to u in N. If f(e) < c(e), then we could add e to P to get an f-unsaturated path P from x to v in N. This would contradict the fact that v U. Hence f(e) = c(e). Choose e A N (U). Then e = vu for some vertices u U and v U. Since u U there is an f-unsaturated path P from x to u in N. If f(e) > 0, then we could add e to P to get an f-unsaturated path P from x to v in N. This would contradict the fact that v U. Hence f(e) = 0. 3

(c) Using (b) we have val(f) = f + (U) f (U) = e A + N (U) f(e) e A N (U) f(e) = e A + N (U) c(e) 0 = c + (U). Q Let D be a digraph and x, V (D). Suppose that d + D (v) = d D (v) for all v V (D) {x, }. Let U V (D) with x U and V (D) U. Let d + D (U) be the number of arcs of D from U to V (D) U and d D (U) be the number of arcs of D from V (D) U to U. (a) Prove that d + D (U) d D (U) = d+ D (x) d D (x). (b) Deduce that if d + D (x) > d D (x) then there exists a directed path from x to. (a) Since d + D (v) = d D (v) for all v U x, we have d + D (x) d D (x) = u U d + D (u) u U d D (u). The sums on the right hand side of the above equalit count the arcs incident with vertices of U. There are three alternatives for such an arc e. e is incident with two vertices of U. Then e is counted once in u U d+ D (u) and once in u U d D (u) so its contribution to u U d+ D (u) u U d D (u) is zero. e A + N (U). Then e is counted once in u U d+ D (u) so its contribution to u U d+ D (u) u U d D (u) is 1. e A N (U). Then e is counted once in u U d D (u) so its contribution to u U d+ D (u) u U d D (u) is 1. Thus u U d + D (u) u U Hence d + D (x) d D (x) = d+ D (U) d D (U). d D (u) = A+ N (U) A N (U) = d+ D (U) d D (U). (b) Let U be the set of all vertices of N which can be reached from x b directed paths. Suppose U. B (a), d + D (U) d D (U) = d+ D (x) d D (x) > 0. In particular, d + D (U) > 0. Thus there is an arc e from some vertex u U to some vertex v V (D) U. But then we can add e to a directed path from x to u to get a directed path from u to v. This contradicts the fact that v U. Thus we must have U. Hence there is a directed path in D

from x to. Q5 Let N be an acclic directed network and {x 1, x 2,..., x n } be an acclic labeling of D. (a) Explain wh the time that Moravék s algorithm takes to construct the out-arborescence T i from the out-arborescence T i 1 is O(d N (x i)). (b) Deduce that the total time taken b Moravék s algorithm to construct a spanning out-arborescence of N is O( A(N) ). (a) In the i th iteration of Morávek s algorithm, we consider each arc entering x i and choose the arc x j x i entering x i for which dist Ti 1 (x 1 x j )+w(x j x i ) is as large as possible. Thus the time taken b the i th iteration is O(d N (x i)). (b) Since n i=1 d N (x i)) = A(N), the time taken for the algorithm to construct a spanning out arborescence is O( n i=1 d N (x i)) = O( A(N) ). 5