Results 1 - 10
of
17
An Efficient Implementation Of A Scaling Minimum-Cost Flow Algorithm
- Journal of Algorithms
, 1992
"... . The scaling push-relabel method is an important theoretical development in the area of minimum-cost flow algorithms. We study practical implementations of this method. We are especially interested in heuristics which improve real-life performance of the method. Our implementation works very well o ..."
Abstract
-
Cited by 84 (7 self)
- Add to MetaCart
. The scaling push-relabel method is an important theoretical development in the area of minimum-cost flow algorithms. We study practical implementations of this method. We are especially interested in heuristics which improve real-life performance of the method. Our implementation works very well over a wide range of problem classes. In our experiments, it was always competitive with the established codes, and usually outperformed these codes by a wide margin. Some heuristics we develop may apply to other network algorithms. Our experimental work on the minimum-cost flow problem motivated theoretical work on related problems. Supported in part by ONR Young Investigator Award N00014-91-J-1855, NSF Presidential Young Investigator Grant CCR-8858097 with matching funds from AT&T and DEC, Stanford University Office of Technology Licensing, and a grant form the Powell Foundation. 1 1. Introduction. Significant theoretical progress has been made recently in the area of minimum-cost flow ...
Faster scaling algorithms for general graph-matching problems
- JOURNAL OF THE ACM
, 1991
"... An algorithm for minimum-cost matching on a general graph with integral edge costs is presented. The algorithm runs in time close to the fastest known bound for maximum-cardinality matching. Specifically, let n, m, and N denote the number of vertices, number of edges, and largest magnitude of a cost ..."
Abstract
-
Cited by 66 (2 self)
- Add to MetaCart
An algorithm for minimum-cost matching on a general graph with integral edge costs is presented. The algorithm runs in time close to the fastest known bound for maximum-cardinality matching. Specifically, let n, m, and N denote the number of vertices, number of edges, and largest magnitude of a cost, respectively. The best known time bound for maximum-cardinal ity matching M 0 ( Am). The new algorithm for minimum-cost matching has time bound 0 ( in a ( m, n)Iog n m log ( nN)). A slight modification of the new algorithm finds a maximum-cardinality matching in 0 ( fire) time. Other applications of the new algorlthm are given, mchrding an efficient implementation of Christofides ’ traveling salesman approximation algorithm and efficient solutions to update problems that require the linear programming duals for matching.
Sublinear-Time Parallel Algorithms for Matching and Related Problems
, 1988
"... This paper presents the first sublinear-time deterministic parallel algorithms for bipartite matching and several related problems, including maximal node-disjoint paths, depth-first search, and flows in zero-one networks. Our results are based on a better understanding of the combinatorial struc ..."
Abstract
-
Cited by 33 (6 self)
- Add to MetaCart
This paper presents the first sublinear-time deterministic parallel algorithms for bipartite matching and several related problems, including maximal node-disjoint paths, depth-first search, and flows in zero-one networks. Our results are based on a better understanding of the combinatorial structure of the above problems, which leads to new algorithmic techniques. In particular, we show how to use maximal matching to extend, in parallel, a current set of nodedisjoint paths and how to take advantage of the parallelism that arises when a large number of nodes are "active" during an execution of a push-relabel network flow algorithm. We also show how to apply our techniques to design parallel algorithms for the weighted versions of the above problems. In particular, we present sublinear-time deterministic parallel algorithms for finding a minimum-weight bipartite matching and for finding a minimum-cost flow in a network with zero-one capacities, if the weights are polynomially ...
Improved Algorithms For Bipartite Network Flow
, 1994
"... In this paper, we study network flow algorithms for bipartite networks. 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 = jV j, n 1 = jV 1 j, n 2 = jV 2 j, m = jE ..."
Abstract
-
Cited by 28 (5 self)
- Add to MetaCart
In this paper, we study network flow algorithms for bipartite networks. 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 = jV j, n 1 = jV 1 j, n 2 = jV 2 j, m = jEj and assume without loss of generality that n 1 n 2 . We call a bipartite network unbalanced if n 1 ø n 2 and balanced otherwise. (This notion is necessarily imprecise.) We show that several maximum flow 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 us 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, we show that the two-edge push version of Goldberg and Tarjan's FIFO preflow push algorithm runs in O(n 1 m + n 3 1 ) time and that the analogous version of Ahuja and Orlin's excess scaling algori...
DUAL COORDINATE STEP METHODS FOR LINEAR NETWORK FLOW PROBLEMS
, 1988
"... We review a class of recently-proposed linear-cost network flow methods which are amenable to distributed implementation. All the methods in the class use the notion of e-complementary slackness, and most do not explicitly manipulate any "global " objects such as paths, trees, or cuts. Interestingly ..."
Abstract
-
Cited by 26 (6 self)
- Add to MetaCart
We review a class of recently-proposed linear-cost network flow methods which are amenable to distributed implementation. All the methods in the class use the notion of e-complementary slackness, and most do not explicitly manipulate any "global " objects such as paths, trees, or cuts. Interestingly, these methods have stimulated a large number of new serial computational complexity results. We develop the basic theory of these methods and present two specific methods, the e-relaxation algorithm for the minimum-cost flow problem, and the auction algorithm for the assignment problem. We show how to implement these methods with serial complexities of O(N 3 log NC) and O(NA log NC), respectively. We also discuss practical implementation issues and computational experience to date. Finally, we show how to implement e-relaxation in a completely asynchronous, "chaotic" environment in which some processors compute faster than others, some processors communicate faster than others, and there can be arbitrarily large communication delays.
Finding Minimum-Cost Flows by Double Scaling
- MATHEMATICAL PROGRAMMING
, 1992
"... Several researchers have recently developed new techniques that give fast algorithms for the minimum-cost flow problem. In this paper we combine several of these techniques to yield an algorithm running in O(nm log log U log(nC)) time on networks with n vertices, m arcs, maximum arc capacity U, and ..."
Abstract
-
Cited by 23 (4 self)
- Add to MetaCart
Several researchers have recently developed new techniques that give fast algorithms for the minimum-cost flow problem. In this paper we combine several of these techniques to yield an algorithm running in O(nm log log U log(nC)) time on networks with n vertices, m arcs, maximum arc capacity U, and maximum arc cost magnitude C. The major techniques used are the capacity-scaling approach of Edmonds and Karp, the excess-scaling approach of Ahuja and Orlin, the cost-scaling approach of Goldberg and Tarjan, and the dynamic tree data structure of Sleator and Taijan. For nonsparse graphs with large maximum arc capacity, we obtain a similar but slightly better bound. We also obtain a slightly better bound for the (uncapacitated) transportation problem. In addition, we discuss a capacity-bounding approach to the
A Block-Asynchronous Relaxation Method for Graphics Processing Units
"... Abstract—In this paper, we analyze the potential of asynchronous relaxation methods on Graphics Processing Units (GPUs). For this purpose, we developed a set of asynchronous iteration algorithms in CUDA and compared them with a parallel implementation of synchronous relaxation methods on CPU-based s ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
Abstract—In this paper, we analyze the potential of asynchronous relaxation methods on Graphics Processing Units (GPUs). For this purpose, we developed a set of asynchronous iteration algorithms in CUDA and compared them with a parallel implementation of synchronous relaxation methods on CPU-based systems. For a set of test matrices taken from the University of Florida Matrix Collection we monitor the convergence behavior, the average iteration time and the total time-to-solution time. Analyzing the results, we observe that even for our most basic asynchronous relaxation scheme, despite its lower convergence rate compared to the Gauss-Seidel relaxation (that we expected), the asynchronous iteration running on GPUs is still able to provide solution approximations of certain accuracy in considerably shorter time then Gauss-Seidel running on CPUs. Hence, it overcompensates for the
Network Problems with Non-Polynomial Weights And Applications
, 2005
"... The most efficient algorithms for several network problems like minimum cost flow and the maximum weight matching problem follow the primal-dual paradigm. These algorithms perform arithmetic (additions and subtractions) on numbers of magnitude O(nC) when the edge weights (also called costs) are ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
The most efficient algorithms for several network problems like minimum cost flow and the maximum weight matching problem follow the primal-dual paradigm. These algorithms perform arithmetic (additions and subtractions) on numbers of magnitude O(nC) when the edge weights (also called costs) are integers bounded by C and n denotes the number of vertices. Under the standard assumption that arithmetic on numbers of magnitude O(n) has constant cost, arithmetic on numbers of this size has cost O((log C)/ log n). We show for the scaling versions of these algorithms that arithmetic on numbers of size polynomial in n suffices without increasing the asymptotic number of arithmetic operations. In this way,

