An analysis of alternative strategies for implementing matching algorithms

In this paper we explore implementation issues related to the solution of the weighted matching problem defined on an undirected graph G = (V, E). We present algorithms based on the two different linear characterizations of the feasible solutions to the matching problem. Furthermore, we present two specialized implementations, one with an O (|V|3) time bound and one with an O(|V‖E| log |V|) time bound. Both of these implementations have storage requirements that are linear in |V| and |E|. We initially develop these algorithms as special implementations of the well-known primaldual (blossom) algorithm and then show how the updates they perform have an interesting interpretation when the algorithms are viewed as methods that successively find shortest augmenting paths. Finally, we show that postoptimality analysis can be performed very efficiently within this setting.