## Augment or Push? A computational study of Bipartite Matching and Unit Capacity Flow Algorithms (1998)

### Cached

### Download Links

- [dendrite.cs.brandeis.edu]
- [www.dcc.unicamp.br]
- DBLP

### Other Repositories/Bibliography

Venue: | ACM J. EXP. ALGORITHMICS |

Citations: | 29 - 1 self |

### BibTeX

@ARTICLE{Cherkassky98augmentor,

author = {Boris V. Cherkassky and Andrew V. Goldberg and Paul Martin and Joao C. Setubal and Jorge Stolfi},

title = {Augment or Push? A computational study of Bipartite Matching and Unit Capacity Flow Algorithms},

journal = {ACM J. EXP. ALGORITHMICS},

year = {1998},

volume = {3},

pages = {1998}

}

### Years of Citing Articles

### OpenURL

### Abstract

We conduct a computational study of unit capacity flow and bipartite matching algorithms. Our goal is to determine which variant of the push-relabel method is most efficient in practice and to compare push-relabel algorithms with augmenting path algorithms. We have implemented and compared three push-relabel algorithms, three augmenting path algorithms (one of which is new), and one augment-relabel algorithm. The depth-first search augmenting path algorithm was thought to be a good choice for the bipartite matching problem, but our study shows that it is not robust. For the problems we study, our implementations of the fifo and lowest-level selection push-relabel algorithms have the most robust asymptotic rate of growth and work best overall. Augmenting path algorithms, although not as robust, on some problem classes are faster by a moderate constant factor. Our study includes several new problem families and input graphs with as many as 5 \Theta 10 5 vertices.

### Citations

1419 |
Network Flows: Theory, Algorithms, and Applications
- Ahuja, Magnanti, et al.
- 1993
(Show Context)
Citation Context ...heoretically efficient. We study the highest-level (hi-pr), lowestlevels(lo-pr), and first-in, first-out (fifo-pr) variants of the push-relabel method. We also study an augment-relabel algorithm (ar) =-=[1]-=- that finds augmenting paths using relabel operations. Our study includes more algorithms and more problem families than the previous ones and gives new insight into computational performance of the a... |

548 |
An n5/2 algorithm for maximum matchings in bipartite graphs
- Hopcroft, Karp
(Show Context)
Citation Context ...uction Maximum unit capacity flow and bipartite matching are two closely related combinatorial problems that have been extensively studied from the point of view of theoretical analysis of algorithms =-=[21, 22, 23, 13, 3, 6, 14]-=-. The best bound for the former problem is O(m 1:5 ) [13, 22] and for the latter it is O( p nm log(n 2 =m)= log n) [14] or, for dense graphs on a RAM with \Omega\Gamma n)-bit words, O(n 2:5 = log n) [... |

514 | A New Approach to the Maximum-Flow Problem
- Goldberg, Tarjan
- 1988
(Show Context)
Citation Context ... the label reaches n. When there are no active vertices, all that remains is to return excess flow to the source. We do this by finding a succession of paths and cycles along which we can remove flow =-=[18]-=-. In the case of bipartite matching this last step is unnecessary, since the only vertices that may have any excess flow are the source's neighbors. We examine three variants of push-relabel based on ... |

453 |
Combinatorial Optimization: Networks and Matroids
- Lawler
- 1976
(Show Context)
Citation Context ...j. The bipartite matching problem is to find a maximum cardinality matching. The bipartite matching problem can be transformed into a unit capacity flow problem by the following simple transformation =-=[25]-=-: add a source s, and an arc from s to each vertex of X; add a sink t and an arc from each vertex of Y to t; and replace each arc (u; v), u 2 X; v 2 Y with an arc from u to v. 3 Implementations The ma... |

152 | A.V.: On implementing the push-relabel method for the maximum flow problem
- Cherkassky, Goldberg
- 1997
(Show Context)
Citation Context ...lied to the bipartite matching problem). For the maximum flow problem with arbitrary capacities, several studies have shown that the push-relabel method is superior to other known methods in practice =-=[4, 8, 10, 11, 26]-=-. Push-relabel algorithms based on the highest-level selection rule appear to be the fastest. For the unit capacity case, Goldberg and Kennedy [16] showed that the lowest-level selection rule, in comb... |

129 |
Algorithm for solution of a problem of maximum flow in networks with power estimation
- Dinic
- 1970
(Show Context)
Citation Context ...d that a pushrelabel implementation for bipartite matching was significantly faster than an implementation based on Hopcroft-Karp's algorithm [21] (which is similar to Dinitz's maximum flow algorithm =-=[12]-=- applied to the bipartite matching problem). For the maximum flow problem with arbitrary capacities, several studies have shown that the push-relabel method is superior to other known methods in pract... |

93 |
Network Flow and Testing Graph Connectivity
- Even, Tarjan
- 1975
(Show Context)
Citation Context ...uction Maximum unit capacity flow and bipartite matching are two closely related combinatorial problems that have been extensively studied from the point of view of theoretical analysis of algorithms =-=[21, 22, 23, 13, 3, 6, 14]-=-. The best bound for the former problem is O(m 1:5 ) [13, 22] and for the latter it is O( p nm log(n 2 =m)= log n) [14] or, for dense graphs on a RAM with \Omega\Gamma n)-bit words, O(n 2:5 = log n) [... |

72 | Clique partitions, graph compression, and speeding-up algorithms
- Feder, Motwani
- 1991
(Show Context)
Citation Context ...uction Maximum unit capacity flow and bipartite matching are two closely related combinatorial problems that have been extensively studied from the point of view of theoretical analysis of algorithms =-=[21, 22, 23, 13, 3, 6, 14]-=-. The best bound for the former problem is O(m 1:5 ) [13, 22] and for the latter it is O( p nm log(n 2 =m)= log n) [14] or, for dense graphs on a RAM with \Omega\Gamma n)-bit words, O(n 2:5 = log n) [... |

45 |
Computing a maximum cardinality matching in a bipartite graph in time O(n 1.5√ m/ log n
- Alt, Blum, et al.
- 1991
(Show Context)
Citation Context |

44 |
Efficient graph algorithms for sequential and parallel computers
- Goldberg
- 1987
(Show Context)
Citation Context ...he algorithms need the capacities, not the flows, for internal operation. 3.3 Global Relabeling The global relabeling heuristic improves computational performance of the push-relabel method (see e.g. =-=[4, 15, 26]-=-). This heuristic uses breadth-first search to compute distances to the sink in the residual graph with unit arc lengths; the distance labels are set to these distances. Such a computation takes linea... |

40 | Improved algorithms for bipartite network flow
- Ahuja, Orlin, et al.
- 1994
(Show Context)
Citation Context ... For the special case of bipartite matching, we exploit the special structure of the problem in order to make the algorithms more efficient. We replace the push operation with a double-push operation =-=[2, 17]-=- where a unit of excess flow is pushed first from a vertex in X to a vertex in Y and then is either pushed to the sink or is pushed to a vertex in X. The second portion of the double-push can be perfo... |

33 | Sublinear-time parallel algorithms for matching and related problems
- Goldberg, Plotkin, et al.
- 1993
(Show Context)
Citation Context ... For the special case of bipartite matching, we exploit the special structure of the problem in order to make the algorithms more efficient. We replace the push operation with a double-push operation =-=[2, 17]-=- where a unit of excess flow is pushed first from a vertex in X to a vertex in Y and then is either pushed to the sink or is pushed to a vertex in X. The second portion of the double-push can be perfo... |

30 |
A Computational Comparison of the Dinic and Network Simplex Methods for Maximum Flow, Fortran Codes for Network Optimization, Edited by B. Simeone et al
- GOLDFARB, GRIGORIADIS
- 1988
(Show Context)
Citation Context ...a = k 2 , ` = 10 and F = 10 for several values of the parameter k. 4.7 rmfuC, rmfuL, rmfuL The RMFU family is generated by a unit capacity version of the RMF generator due to Goldfarb and Grigoriadis =-=[20]. This gen-=-erator takes parameters a, b, and c. The graphs that it generates have b "frames" in addition to the source and the sink. Each frame is an a \Theta a grid, with each vertex of the grid conne... |

28 |
Implementing Goldberg's Max-Flow Algorithm: A
- DERIGS, MEIER
- 1989
(Show Context)
Citation Context ...lied to the bipartite matching problem). For the maximum flow problem with arbitrary capacities, several studies have shown that the push-relabel method is superior to other known methods in practice =-=[4, 8, 10, 11, 26]-=-. Push-relabel algorithms based on the highest-level selection rule appear to be the fastest. For the unit capacity case, Goldberg and Kennedy [16] showed that the lowest-level selection rule, in comb... |

19 |
Goldberg's Algorithm for Maximum Flow in Perspective: A Computational Study, Algorithms for Network Flows and Matching, Edited by D
- ANDERSON, SETUBAL
- 1993
(Show Context)
Citation Context ...lied to the bipartite matching problem). For the maximum flow problem with arbitrary capacities, several studies have shown that the push-relabel method is superior to other known methods in practice =-=[4, 8, 10, 11, 26]-=-. Push-relabel algorithms based on the highest-level selection rule appear to be the fastest. For the unit capacity case, Goldberg and Kennedy [16] showed that the lowest-level selection rule, in comb... |

18 | Algorithms for dense graphs and networks on the random access computer
- CHERIYAN, MEHLHORN
- 1996
(Show Context)
Citation Context |

18 |
Implementations of the GoldbergTarjan Maximum Flow Algorithm, Algorithms for Network Flows and Matching, Edited by D
- NGUYEN, VENKATESWARAN
- 1993
(Show Context)
Citation Context |

16 | Sequential and parallel experimental results with bipartite matching algorithms
- Setubal
- 1996
(Show Context)
Citation Context ...shed computational studies of bipartite matching algorithms [9, 5, 27] and of no computational studies of unit capacity flow algorithms. Our study includes a refinement of a previous study by Setubal =-=[28]-=-, which itself refined the results in [27] but has not been published in journal form. It is well-known that the bipartite matching problem is a special case of the unit capacity flow problem. Hence a... |

13 |
0 nakhozhdenii maksimal’nogo potoka v setyakh spetsial’nogo vida i nekotorykh prilozheniyakh
- Karzanov
- 1973
(Show Context)
Citation Context |

12 | Global price updates help
- Goldberg, Kennedy
- 1997
(Show Context)
Citation Context ...ior to other known methods in practice [4, 8, 10, 11, 26]. Push-relabel algorithms based on the highest-level selection rule appear to be the fastest. For the unit capacity case, Goldberg and Kennedy =-=[16]-=- showed that the lowest-level selection rule, in combination with the global relabeling heuristic, is theoretically efficient. We study the highest-level (hi), lowest-level (lo), and first-in, first-o... |

10 |
A fast algorithm for computing maximum flow in a network
- Cherkassky
- 1994
(Show Context)
Citation Context ...ve vertices at that distance. However, for fifo we can use a simple queue to determine which vertex to scan next. The bucket data structure used for hi and lo allows us to implement the gap heuristic =-=[7, 10]-=- with little additional effort. The gap heuristic takes advantage of the fact that if there are no vertices with label d then we can ignore all vertices with label greater than d, since they cannot re... |

9 |
An ecient cost scaling algorithm for the assignment problem
- Goldberg, Kennedy
- 1995
(Show Context)
Citation Context ...ly since each vertex v 2 Y has exactly one arc directed out of it, (v; w), the label of v must be the label of w plus one. Therefore we can implicitly represent the labels for all vertices of Y . See =-=[14, 22]-=- for more details. 3.6. Augment-Relabel The augment-relabel algorithm (see e.g. [1]) uses depth-first search in combination with the relabel operation to find augmenting paths. In the context of the b... |

5 |
An Evaluation of Algorithmic Refinements and Proper Data-Structures for the Preflow-Push Approach for Maximum Flow
- Derigs, Meier
- 1992
(Show Context)
Citation Context |

4 |
Tochnaya otzenka algoritma nakhojdeniya maksimalnogo potoka, primenennogo k zadache "o predstavitelyakh
- Karzanov
- 1973
(Show Context)
Citation Context |

4 |
Solving unweighted and weighted bipartite matching problems in theory and practice
- Kennedy
- 1995
(Show Context)
Citation Context ...since each vertex v 2 Y 6 has exactly one arc (v; w) directed out of it the label of v must be the label of w plus one. Therefore we do not need to explicitly represent labels for vertices of Y . See =-=[16, 24]-=- for more details. 3.5 Depth-First Search This implementation uses depth-first search to find augmenting paths. A search is attempted from each of the source's neighbors. It includes the following heu... |

3 |
New experimental results for bipartite matching
- Setubal
- 1992
(Show Context)
Citation Context ...n this paper we study computational efficiency of bipartite matching and unit capacity flow algorithms. We are aware of three previous published computational studies of bipartite matching algorithms =-=[9, 5, 27]-=- and of no computational studies of unit capacity flow algorithms. Our study includes a refinement of a previous study by Setubal [28], which itself refined the results in [27] but has not been publis... |

2 |
A Faster Implementation of a Bipartite Cardinality Matching Algorithm
- Chang, McCormick
- 1990
(Show Context)
Citation Context ...n this paper we study computational efficiency of bipartite matching and unit capacity flow algorithms. We are aware of three previous published computational studies of bipartite matching algorithms =-=[9, 5, 27]-=- and of no computational studies of unit capacity flow algorithms. Our study includes a refinement of a previous study by Setubal [28], which itself refined the results in [27] but has not been publis... |

2 |
The Exploration of Sparsity in Large Scale Linear Programming Problems -- Data Structures and Restructuring Algorithms
- Darby-Dowman
- 1980
(Show Context)
Citation Context ...n this paper we study computational efficiency of bipartite matching and unit capacity flow algorithms. We are aware of three previous published computational studies of bipartite matching algorithms =-=[9, 5, 27]-=- and of no computational studies of unit capacity flow algorithms. Our study includes a refinement of a previous study by Setubal [28], which itself refined the results in [27] but has not been publis... |