IMPROVED ALGORITHMS FOR BIPARTITE NETWORK FLOW

被引:87
|
作者
AHUJA, RK
ORLIN, JB
STEIN, C
TARJAN, RE
机构
[1] MIT,ALFRED P SLOAN SCH MANAGEMENT,CAMBRIDGE,MA 02139
[2] DARTMOUTH COLL,DEPT COMP SCI,HANOVER,NH 03755
[3] MIT,COMP SCI LAB,CAMBRIDGE,MA 02139
[4] PRINCETON UNIV,DEPT COMP SCI,PRINCETON,NJ 08544
[5] NEC RES INST,PRINCETON,NJ 08540
关键词
NETWORK FLOW; BIPARTITE GRAPHS; MAXIMUM FLOW; MINIMUM-COST FLOW; PARAMETRIC MAXIMUM FLOW; PARALLEL ALGORITHMS;
D O I
10.1137/S0097539791199334
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
In this paper, network flow algorithms for bipartite networks are studied. A network G = (V, E) is called bipartite if its vertex set V can be partitioned into two subsets V-1 and V-2 such that all edges have one endpoint in V-1 and the other in V-2. Let n = \V\, n(1) = \V-1\, n(2) = \V-2\, m = \E\ and assume without loss of generality that n(1) less than or equal to I n(2). A bipartite network is called unbalanced if n(1) << n(2) and balanced otherwise. (This notion is necessarily imprecise.) It is shown that several maximum Bow algorithms can be substantially sped up when applied to unbalanced networks. The basic idea in these improvements is a two-edge push rule that allows one to ''charge'' most computation to vertices in V-1, and hence develop algorithms whose running times depend on n(1) rather than n. For example, it is shown that the two-edge push version of Goldberg and Tarjan's FIFO preflow-push algorithm runs in O(n(1)m + n(1)(3)) time and that the analogous version of Ahuja and Orlin's excess scaling algorithm runs in O(n(1)m + n(1)(2) log U) time, where U is the largest edge capacity. These ideas are also extended to dynamic tree implementations, parametric maximum flows, and minimum-cost flows.
引用
收藏
页码:906 / 933
页数:28
相关论文
共 50 条