Identify a computable weight function enabling a push-prioritized weighted push–relabel algorithm in near-linear time

Develop an algorithm that, without first computing a maximum flow, computes an edge-weight function for directed graphs that enables a push-prioritized weighted push–relabel algorithm to run in m^{1+o(1)} time and compute a 1/n^{o(1)}-approximate maximum s–t flow. In particular, determine how to construct such a “good” weight function that guides the push-prioritized variant effectively, analogous to how a weight function induced by the DAG of the maximum flow would in the unit-vertex-capacity case.

Background

The paper introduces a weighted push–relabel algorithm that is relabel-prioritized and shows how, given a suitable edge-weight function, it can list augmenting paths efficiently and yield a near-optimal max-flow algorithm in n{2+o(1)} time. However, this implementation prioritizes relabeling rather than pushing, which becomes a bottleneck.

The authors note that traditional push–relabel implementations often prioritize pushing and can be much faster on certain inputs (e.g., linear time on paths). They pose a question about whether a weighted variant of push-prioritized push–relabel could achieve m{1+o(1)} time for a 1/n{o(1)}-approximate max flow, provided an appropriate weight function is available. While in unit vertex-capacity graphs the weight induced by the DAG of the maximum flow would suffice, constructing such a weight function without already having the maximum flow is currently not understood.

References

This raises the exciting question of whether a weighted version of the push-prioritized push-relabel algorithm can be devised so that, given a good weight function (or something similar), it runs in m{1+o(1)} time and computes a (1/n{o(1)})-approximate maximum flow. In a graph with unit vertex capacities, a weight function induced by the DAG of the maximum flow will guide a push-prioritized algorithm to run in linear time, but as of now it is unclear how to identify such a “good” weight function without first computing the maximum flow.

Maximum Flow by Augmenting Paths in $n^{2+o(1)}$ Time  (2406.03648 - Bernstein et al., 2024) in Remark (push-prioritized), Section 3.2 (Implementation)