/*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} Q21E An edge of a flow network is cal... [FREE SOLUTION] | 91Ó°ÊÓ

91Ó°ÊÓ

An edge of a flow network is called critical if decreasing the capacity of this edge results in a decrease in the maximum flow. Give an efficient algorithm that finds a critical edge in a network

Short Answer

Expert verified

The overall running time of the above algorithm is O(VE2)

Step by step solution

01

Introduction

Edge of network is having flow which is help to create some critically decreasing of maximum flow of connectivity. Even though an edges is critical towards the algorithm, it really should be completely filled.

02

Algorithm to find the critical edge in a network

Graph: G (V, E)

Output: FindCriticalEdge (G)

define getCriticalEdge (G):

residualGraph = fordFulkerson (G)

for edge u, v in residualGraph such that u, v is not in

residualGraph and u,v is not in

DFS ( residualGraph, u )

If has no path to v

Return u,v

return null

03

FordFulkerson Method

FordFulkerson approach is being used in the above procedure to obtain the maximum circulation inside a flow network. Even when an edge is crucial in the algorithm, it should have been filled to the brim; otherwise, the capacity will be reduced without compromising the maximum current.

All of this checks for a path from u to v using the DFS algorithm.

The for loop checks for the presence of something like a path every time DFS is run; if there isn't one, this edge seems to be a critical edge.

Therefore, the efficient algorithm to find the critical edge in a network has been obtained.

Unlock Step-by-Step Solutions & Ace Your Exams!

  • Full Textbook Solutions

    Get detailed explanations and key concepts

  • Unlimited Al creation

    Al flashcards, explanations, exams and more...

  • Ads-free access

    To over 500 millions flashcards

  • Money-back guarantee

    We refund you if you fail your exam.

Over 30 million students worldwide already upgrade their learning with 91Ó°ÊÓ!

One App. One Place for Learning.

All the tools & learning materials you need for study success - in one app.

Get started for free

Most popular questions from this chapter

Question: Consider the following simple network with edge capacities as shown.

a) Show that, if the Ford-Fulkerson algorithm is run on this graph, a careless choice of updates might cause it to take 1000iterations. Imagine if the capacities were a million instead of 1000.

We will now find a strategy for choosing paths under which the algorithm is guaranteed to terminate in a reasonable number of iterations.

Consider an arbitrary directed network (G=V,E,s,t,ce)in which we want to find the maximum flow.Assume for simplicity that all edge capacities are at least 1, and define the capacity of an s - t path to be the smallest capacity of its constituent edges. The fattest path from s to t is the path with the most capacity.

b) Show that the fattest s - t path in a graph can be computed by a variant of Dijkstra’s algorithm.

c) Show that the maximum flow in Gis the sum of individual flows along at most|E|paths from s to t.

d) Now show that if we always increase flow along the fattest path in the residual graph, then the Ford-Fulkerson algorithm will terminate in at mostO(ElogF) iterations, where F is the size of the maximum flow. (Hint: It might help to recall the proof for the greedy set cover algorithm in Section 5.4.)

In fact, an even simpler rule—finding a path in the residual graph using breadth-first search— guarantees that atO(V.E)most iterations will be needed.

Find necessary and sufficient conditions on the reals a and b under which the linear program

max x+yax+by≤1x,y≥0

(a) Is infeasible.

(b) Is unbounded.

(c) Has a unique optimal solution.

Hall’s theorem. Returning to the matchmaking scenario of Section 7.3, suppose we have a bipartite graph with boys on the left and an equal number of girls on the right. Hall’s theorem says that there is a perfect matching if and only if the following condition holds: any subset sof boys is connected to at least |s|girls.

Prove this theorem. (Hint: The max-flow min-cut theorem should be helpful.)

Matching pennies. In this simple two-player game, the players (call them Rand C) each choose an outcome, heads or tails. If both outcomes are equal, Cgives a dollar to R; if the outcomes are different, Rgives a dollar to C.

(a) Represent the payoffs by a2×2 matrix.

(b) What is the value of this game, and what are the optimal strategies for the two players?

Direct bipartite matching. We’ve seen how to find a maximum matching in a bipartite graph via reduction to the maximum flow problem. We now develop a direct algorithm.

Let G=(V1∪V2,E)be a bipartite graph (so each edge has one endpoint in V1and one endpoint in V2), and letM∈Ebe a matching in the graph (that is, a set of edges that don’t touch). A vertex is said to be covered byMif it is the endpoint of one of the edges in M. An alternating path is a path of odd length that starts and ends with a non-covered vertex, and whose edges alternate between Mand E-M.

(a) In the bipartite graph below, a matching Mis shown in bold. Find an alternating path.


(b) Prove that a matchingMis maximal if and only if there does not exist an alternating path with respect to it.

(c) Design an algorithm that finds an alternating path inO(|V|+|E|)time using a variant of breadth-first search.

(d) Give a directO(|V|-|E|)algorithm for finding a maximal matching in a bipartite graph.

See all solutions

Recommended explanations on Computer Science Textbooks

View all explanations

What do you think about this solution?

We value your feedback to improve our textbook solutions.

Study anywhere. Anytime. Across all devices.