Reducing Directed Max Flow to Undirected Max Flow and Bipartite Matching

In this paper, we prove two new results related to finding maximum flows in directed graphs and finding maximum matchings in bipartite graphs. In our first result, we derive a new algorithm for finding maximum flows in directed graphs. Our algorithm works by reducing a maximum flow problem on a directed graph to a maximum flow problem on an undirected graph, and running the Karger-Levine algorithm to find a maximum flow in the undirected graph. Given a directed graph G = (V, E) with n nodes,m edges, maximum flow valuev, and capacitiesce, our reduction yields a Õ(m + n(v + i)) algorithm for finding a maximum flow in G, where i is the imbalance of the graph and defined to bei = P u∈V−{s,t} | P (w,u)∈E c(w,u)− P (u,w)∈E c(u,w)|. For directed graphs with small imbalance, this yields a faster algorithm for computing maximum flows. In our second result, we show that the maximum flow problem on directed graphs with unit capacity edges can be reduced to the bipartite matching problem. Although our second result does not yield a faster algorithm for finding maximum flows in unit capacity directed graphs, it does show that if one can find a maximum matching in faster than o(mn/ log n) time on bipartite graphs with n nodes and m = O(n) edges, then it would yield a faster algorithm for finding maximum flows in directed graphs, running in time o(m). In some sense, our second result may be viewed as a hardness result for finding faster bipartite matching algorithms.

[1]  D. R. Fulkerson,et al.  Maximal Flow Through a Network , 1956 .

[2]  E. A. Dinic Algorithm for solution of a problem of maximal flow in a network with power estimation , 1970 .

[3]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[4]  Richard M. Karp,et al.  Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems , 1972, Combinatorial Optimization.

[5]  Alexander V. Karzanov,et al.  On finding a maximum flow in a network with special structure and some applications 1 , 1973 .

[6]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[7]  Robert E. Tarjan,et al.  Network Flow and Testing Graph Connectivity , 1975, SIAM J. Comput..

[8]  H. D. Ratliff,et al.  Minimum cuts and related problems , 1975, Networks.

[9]  Harold N. Gabow,et al.  An efficient reduction technique for degree-constrained subgraph and bidirected network flow problems , 1983, STOC.

[10]  Eli Upfal,et al.  Constructing a perfect matching is in random NC , 1985, STOC '85.

[11]  Andrew V. Goldberg,et al.  Beyond the flow decomposition barrier , 1998, JACM.

[12]  David R. Karger,et al.  Random Sampling in Cut, Flow, and Network Design Problems , 1999, Math. Oper. Res..

[13]  Takao Asano,et al.  RECENT DEVELOPMENTS IN MAXIMUM FLOW ALGORITHMS , 2000 .

[14]  David R. Karger,et al.  Random sampling in residual graphs , 2002, STOC '02.

[15]  Alexander Schrijver,et al.  Combinatorial optimization. Polyhedra and efficiency. , 2003 .

[16]  Piotr Sankowski,et al.  Maximum matchings via Gaussian elimination , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[17]  Éva Tardos,et al.  Algorithm design , 2005 .