EMIS 8374 Max-Flow in Undirected Networks Updated 18 March 2008

Slides:



Advertisements
Similar presentations
Graph Theory Arnold Mesa. Basic Concepts n A graph G = (V,E) is defined by a set of vertices and edges v3 v1 v2Vertex (v1) Edge (e1) A Graph with 3 vertices.
Advertisements

Graph Partitioning Problems Lecture 18: March 14 s1 s3 s4 s2 T1 T4 T2 T3 s1 s4 s2 s3 t3 t1 t2 t4 A region R1 R2 C1 C2.
Approximation Algoirthms: Graph Partitioning Problems Lecture 17: March 16 s1 s3 s4 s2 T1 T4 T2 T3.
Max Flow Problem Given network N=(V,A), two nodes s,t of V, and capacities on the arcs: uij is the capacity on arc (i,j). Find non-negative flow fij for.
15.082J & 6.855J & ESD.78J October 14, 2010 Maximum Flows 2.
Introduction to Markov Random Fields and Graph Cuts Simon Prince
EMIS 8374 Vertex Connectivity Updated 20 March 2008.
R. Johnsonbaugh Discrete Mathematics 5 th edition, 2001 Chapter 8 Network models.
Foreground/Background Image Segmentation. What is our goal? To label each pixel in an image as belonging to either the foreground of the scene or the.
Network Optimization Models: Maximum Flow Problems
MAXIMUM FLOW Max-Flow Min-Cut Theorem (Ford Fukerson’s Algorithm)
1 Maximum Flow Networks Suppose G = (V, E) is a directed network. Each edge (i,j) in E has an associated ‘capacity’ u ij. Goal: Determine the maximum amount.
In this handout, Maximum flow problem Minimum cut An application of max flow problem: Baseball Elimination Problem.
Network Optimization Models: Maximum Flow Problems In this handout: The problem statement Solving by linear programming Augmenting path algorithm.
3 t s the black numbers next to an arc is its capacity.
The Shortest Path Problem
NetworkModel-1 Network Optimization Models. NetworkModel-2 Network Terminology A network consists of a set of nodes and arcs. The arcs may have some flow.
Flow Models and Optimal Routing. How can we evaluate the performance of a routing algorithm –quantify how well they do –use arrival rates at nodes and.
Homework 2. Problem 1 Families 1…..N go out for dinner together. To increase their social interaction, no two members of the same family use the same.
Maximization of Network Survivability against Intelligent and Malicious Attacks (Cont’d) Presented by Erion Lin.
EMIS 8374 Optimal Trees updated 25 April slide 1 Minimum Spanning Tree (MST) Input –A (simple) graph G = (V,E) –Edge cost c ij for each edge e 
 Rooted tree and binary tree  Theorem 5.19: A full binary tree with t leaves contains i=t-1 internal vertices.
Network Flow. Network flow formulation A network G = (V, E). Capacity c(u, v)  0 for edge (u, v). Assume c(u, v) = 0 if (u, v)  E. Source s and sink.
CS 4407, Algorithms University College Cork, Gregory M. Provan Network Optimization Models: Maximum Flow Problems In this handout: The problem statement.
1 WEEK 11 Graphs III Network Flow Problems A Simple Maximum-Flow Algorithm Izmir University of Economics.
15.082J and 6.855J March 4, 2003 Introduction to Maximum Flows.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 25.
Chapter 8 Maximum Flows: Additional Topics All-Pairs Minimum Value Cut Problem  Given an undirected network G, find minimum value cut for all.
and 6.855J March 6, 2003 Maximum Flows 2. 2 Network Reliability u Communication Network u What is the maximum number of arc disjoint paths from.
Network Analysis Maxflow. What is a Network? Directed connected graph Source node Sink (destination node) Arcs are weighted (costs) Represent a system.
EMIS 8374 The Ford-Fulkerson Algorithm (aka the labeling algorithm) Updated 4 March 2008.
Prof. Swarat Chaudhuri COMP 382: Reasoning about Algorithms Fall 2015.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Facility Location and Network Design Models. Facility Location Assumptions Based on graph G=(V,E) Demand nodes, I  V, are known and fixed Set J  V of.
5.6 Prefix codes and optimal tree Definition 31: Codes with this property which the bit string for a letter never occurs as the first part of the bit string.
Network Flow.
St. Edward’s University
School of Computing Clemson University Fall, 2012
Network Optimization J.B. Orlin
Minimum Spanning Tree 8/7/2018 4:26 AM
CSCI 3160 Design and Analysis of Algorithms Tutorial 8
Network Flow.
Topological Sort (topological order)
EMIS 8374 Node Splitting updated 27 January 2004
Network Flow 2016/04/12.
Instructor: Shengyu Zhang
Network Flow and Connectivity in Wireless Sensor Networks
Introduction to Maximum Flows
3.5 Minimum Cuts in Undirected Graphs
Introduction Basic formulations Applications
Lecture 19-Problem Solving 4 Incremental Method
Vertex Covers, Matchings, and Independent Sets
Not Always Feasible 2 (3,5) 1 s (0,2) 3 (, u) t.
Flow Networks and Bipartite Matching
Max Flow Problem Given network N=(V,A), two nodes s,t of V, and capacities on the arcs: uij is the capacity on arc (i,j). Find non-negative flow fij for.
and 6.855J March 6, 2003 Maximum Flows 2
Network Flow.
Reading before Lecture 13
EMIS 8374 Search Algorithms Updated 9 February 2004
The Ford-Fulkerson Algorithm
INTRODUCTION TO NETWORK FLOWS
Network Flow.
Not Always Feasible 2 (3,5) 1 s (0,2) 3 (, u) t.
EMIS 8374 Search Algorithms Updated 12 February 2008
Max Flows 3 Preflow-Push Algorithms
Maximum Flow Problems in 2005.
Vertex Covers and Matchings
EMIS The Maximum Flow Problem: Flows and Cuts Updated 6 March 2008
The Residual Network Given a flow x, the residual capacity rij of arc (i, j) is the maximum additional flow that can be sent from i to j using arcs (i,
Excess Scaling Approach Algorithm
Presentation transcript:

EMIS 8374 Max-Flow in Undirected Networks Updated 18 March 2008

Max Flow in Undirected Networks 1 4 10 3 8 6 5 5 2 s t 6 2 10 3 4 1 4

Replace Edge {i,j} With Arcs (i,j) and (j,i) 4 6 4 1 t 6 5 5 5 10 2 10 10 2 10 6 6 3 3 1 1 3 s 4 2 4 4 8 8

Max Flow in Directed Network 4 1 t 6 2 4 4 2 10 10 6 3 1 3 s 4 2 4 7

Max Flow in Directed Network 6 4 4 1 2 t 4 10 10 6 3 3 2 1 4 7 s 4

Remove Bi-directional flows if xij  xji then xij = xij – xji and xji = 0 else xji = xji – xij and xij = 0 1 2 4 6 12 10 1 4 6 2-2=0 4-2=2 2 12 10

Max Flow in Undirected Network Arrows indicate flow direction 1 4 6 2 2 4 10 s t 6 2 10 3 3 4 7 1 4

Remove Saturated Edges 1 2 s t 3 S = {s, 4} T = {1, 2, 4, t} 4

Undirected s-t Cut 1 4 6 2 2 4 10 s t 6 2 10 3 3 4 7 1 u[S, T] = 24 4

All-Pairs Minimum Cut Problem Find the minimum value of u[A, B] where [A, B] is an partition of the nodes such that |A|>0 and |B|>0. Also known as the minimum 2-cut. Note that no specific source or sink nodes are specified.

Min 2-Cut Algorithm Since the network is undirected, u[A, B] = u[A, B] Don’t need to try s = j and t = i if we’ve already tried s = i and t = j

Min 2-Cut Algorithm v* = ; for s = 1 .. |N| - 1 for t = s + 1 .. |N| begin solve max s-t flow problem; identify min cut [S, T]; if u[S, T] < v* then A = S; B = T; end

Min 2-Cut Example 10 1 2 3 3 3 1 8 5 3 4 2 5 4

Minimum Cut: s = 1, t = 2 10 1 2 3 3 3 1 8 5 3 4 2 5 S = {1} T = {2, 3, 4, 5} u[S, T] = 17 4

Minimum Cut s = 1, t = 3 1 2 4 3 5 10 8 S = {1,2} T = {3,4,5} u[S, T]=14

Minimum Cut: s = 1, t = 4 10 1 2 3 3 3 1 5 8 3 4 2 5 S = {1,2,3,5} T={4} u[S, T]=12 4

Minimum Cut: s = 1, t = 5 1 2 4 3 5 10 8 S = {1,2} T = {3,4,5} u[S, T]=14

Minimum Cut: s = 2, t =3 10 1 2 3 3 3 1 5 8 3 4 2 5 S = {2,1} T = {3,4,5} u[S, T]=14 4

Observation Suppose s = 2 and t = 3 and let [A, B] be a minimum 2-3 cut. Case 1: node 1 is in A [A, B] is also a 1-3 cut Thus, we already know u[A, B]  14 Case 2: node 1 is in N2 [A, B] is also a 2-1 (1-2) cut Thus, we already know u[A, B]  17 There is no need to solve the max-flow problem for s = 2 and t =3.

An Improved Min 2-Cut Algorithm Consider a minimum 2-cut [A, B] Let A be the set containing node 1. Since |B| > 0, it must contain at least one node in {2, 3, 4, 5}. Thus we can discover [A, B] by solving only |N| - 1 max flow problems with s =1 and t = 2, t = 3, …, t = |N|. Complexity is O(n f(n, m)) where f(n, m) is the complexity of solving a max flow problem

Minimum 2-Cut 10 1 2 3 3 3 1 5 8 3 4 2 5 A = {1,2,3,5} B = {4} 4 u[A, B]=12

Edge Connectivity In a so-called unweighted graph where each edge as a capacity of 1 unit, the capacity of a minimum 2-cut is known as the edge connectivity of the graph Connectivity is an important measure of a network’s reliability. In a telecommunications network an edge connectivity of two (2) means that the network can survive single-link failures.