A Weight-Scaling Algorithm for f-Factors of Multigraphs
Harold N. Gabow
DOI: https://doi.org/10.1007/s00453-023-01127-x
IF: 0.909
2023-05-19
Algorithmica
Abstract:The challenge for graph matching algorithms is to extend known time bounds for bipartite graphs to general graphs. We discuss combinatorial algorithms for finding a maximum weight f -factor on an arbitrary multigraph, for given integral weights of magnitude at most W . (An f -factor is a subgraph whose degree function is the given function .) For simple bipartite graphs the best-known time bound for combinatorial algorithms is [Gabow and Tarjan, SIAM J Comput 18(5):1013–1036, 1989; n and m are respectively the number of vertices and edges.] A recent algorithm of Duan et al. [in: Proc. of the 47th International Colloquium on Automata, Languages, and Programming (ICALP 2020), 2020] for f -factors of simple general graphs comes within logarithmic factors of this bound, . The best-known bound for bipartite multigraphs is ( is the size of the f -factor, ). This bound is more general than the restriction to simple graphs, and is even superior on "small" simple graphs, i.e., . We present an algorithm that comes within a factor of this bound, i.e., . The algorithm is a direct generalization of the algorithm of Gabow and Tarjan [J ACM 38(4):815–853, 1991] for the special case of ordinary matching ( ). We present that algorithm first. Our analysis is a simplified and more concrete version of Gabow and Tarjan [J ACM 38(4):815–853, 1991] and has independent interest. Furthermore the algorithm and analysis are both incorporated, without modification, into the f -factor algorithm. To extend these ideas to f -factors, the first step is "expanding" edges (i.e., replacing an edge by a length 3 alternating path). Duan et al. [in: Proc. of the 47th International Colloquium on Automata, Languages, and Programming (ICALP 2020), 2020] uses a one-time expansion of the entire graph. In contrast, our algorithm keeps the graph small by only expanding selected edges (edges incident to blossoms, in " I ( B ) sets"). Expanded edges get "compressed" back to their source when no longer needed. Expansion necessitates using an alternate graph model for blossoms (we call them "e-blossoms"). Compression requires coordinating e-blossoms with standard blossoms.
computer science, software engineering,mathematics, applied