Table of Contents
Fetching ...

Distributed Maximum Flow in Planar Graphs

Yaseen Abd-Elhaleem, Michal Dory, Merav Parter, Oren Weimann

TL;DR

This work extends the distributed algorithmic toolbox to operate on the dual of a directed planar graph, enabling dual-based solutions that yield primal network optimization results. The core approach combines minor-aggregation on the dual via a face-disjoint graph with a distance-labeling scheme that supports efficient dual SSSP, all within the CONGEST model. The authors achieve a $ ilde{O}(D^2)$-round distributed SSSP on the dual, which immediately gives exact maximum $st$-flow and directed global minimum cut on the primal, and, under special undirected/st-planar conditions, near-optimal approximations with $D ilde{n}^{o(1)}$ rounds; they also obtain a near-optimal $ ilde{O}(D)$-round weighted girth computation. The results demonstrate that duality, combined with careful dual decompositions and dual-scale labeling, can match the performance of primal planar algorithms and open avenues for distributed planar optimization via dual reductions.

Abstract

The dual of a planar graph $G$ is a planar graph $G^*$ that has a vertex for each face of $G$ and an edge for each pair of adjacent faces of $G$. The profound relationship between a planar graph and its dual has been the algorithmic basis for solving numerous (centralized) classical problems on planar graphs. In the distributed setting however, the only use of planar duality is for finding a recursive decomposition of $G$ [DISC 2017, STOC 2019]. We extend the distributed algorithmic toolkit to work on the dual graph $G^*$. These tools can then facilitate various algorithms on $G$ by solving a suitable dual problem on $G^*$. Given a directed planar graph $G$ with positive and negative edge-lengths and hop-diameter $D$, our key result is an $\tilde{O}(D^2)$-round algorithm for Single Source Shortest Paths on $G^*$, which then implies $\tilde{O}(D^2)$-round algorithms for Maximum $st$-Flow and Directed Global Min-Cut on $G$. Prior to our work, no $\tilde{O}(\text{poly}(D))$-round algorithm was known for those problems. We further obtain a $D\cdot n^{o(1)}$-rounds $(1-ε)$-approximation algorithm for Maximum $st$-Flow on $G$ when $G$ is undirected and $st$-planar. Finally, we give a near optimal $\tilde O(D)$-round algorithm for computing the weighted girth of $G$. The main challenges in our work are that $G^*$ is not the communication graph (e.g., a vertex of $G$ is mapped to multiple vertices of $G^*$), and that the diameter of $G^*$ can be much larger than $D$ (i.e., possibly by a linear factor). We overcome these challenges by carefully defining and maintaining subgraphs of the dual graph $G^*$ while applying the recursive decomposition on the primal graph $G$. The main technical difficulty, is that along the recursive decomposition, a face of $G$ gets shattered into (disconnected) components yet we still need to treat it as a dual node.

Distributed Maximum Flow in Planar Graphs

TL;DR

This work extends the distributed algorithmic toolbox to operate on the dual of a directed planar graph, enabling dual-based solutions that yield primal network optimization results. The core approach combines minor-aggregation on the dual via a face-disjoint graph with a distance-labeling scheme that supports efficient dual SSSP, all within the CONGEST model. The authors achieve a -round distributed SSSP on the dual, which immediately gives exact maximum -flow and directed global minimum cut on the primal, and, under special undirected/st-planar conditions, near-optimal approximations with rounds; they also obtain a near-optimal -round weighted girth computation. The results demonstrate that duality, combined with careful dual decompositions and dual-scale labeling, can match the performance of primal planar algorithms and open avenues for distributed planar optimization via dual reductions.

Abstract

The dual of a planar graph is a planar graph that has a vertex for each face of and an edge for each pair of adjacent faces of . The profound relationship between a planar graph and its dual has been the algorithmic basis for solving numerous (centralized) classical problems on planar graphs. In the distributed setting however, the only use of planar duality is for finding a recursive decomposition of [DISC 2017, STOC 2019]. We extend the distributed algorithmic toolkit to work on the dual graph . These tools can then facilitate various algorithms on by solving a suitable dual problem on . Given a directed planar graph with positive and negative edge-lengths and hop-diameter , our key result is an -round algorithm for Single Source Shortest Paths on , which then implies -round algorithms for Maximum -Flow and Directed Global Min-Cut on . Prior to our work, no -round algorithm was known for those problems. We further obtain a -rounds -approximation algorithm for Maximum -Flow on when is undirected and -planar. Finally, we give a near optimal -round algorithm for computing the weighted girth of . The main challenges in our work are that is not the communication graph (e.g., a vertex of is mapped to multiple vertices of ), and that the diameter of can be much larger than (i.e., possibly by a linear factor). We overcome these challenges by carefully defining and maintaining subgraphs of the dual graph while applying the recursive decomposition on the primal graph . The main technical difficulty, is that along the recursive decomposition, a face of gets shattered into (disconnected) components yet we still need to treat it as a dual node.

Paper Structure

This paper contains 35 sections, 47 theorems, 3 equations, 16 figures, 2 algorithms.

Key Result

Theorem 1.2

There is a randomized distributed algorithm that, given an $n$-vertex directed planar network $G$ with hop-diameter $D$ and integral edge-capacities, and two vertices $s, t$, computes the maximum $st$-flow value and assignment w.h.p. in $\tilde{O}(D^2)$ rounds.

Figures (16)

  • Figure 1: On the left, the primal graph $G$. On the right $\hat{G}$. Notice that each face of $G$ maps to a face (black cycle) of $\hat{G}$.
  • Figure 2: Two levels of the recursive separator decomposition of $G$ and their correspondent levels in the desired dual decomposition of $G^*$. The black edges demonstrate the separating cycle $S_{\!_G}$ in $G$, the same edges map to a cut in $G^*$. For simplicity, the dual node corresponding to the face $f_\infty$ of $G$ is not illustrated in $G^*$ (its incident edges are the ones missing an endpoint).
  • Figure 3: The edge $e_{\!_G}$ in the interior of the face $f$ is the virtual edge added to close a cycle, i.e., $P=S_{\!_G} \setminus\{e_{\!_G}\}$. Note, since $e_{\!_G}$ is not an edge of $G$, it does not exist in $G^*$, and $f$ corresponds to a single node in $G^*$ instead of two. Thus, removing the separator vertices in $G$ disconnects $G$, however, removing its real (non-virtual) edges in $G^*$ does not disconnect it.
  • Figure 4: Three examples of a bag $X$ and its child bags $X_i$ (of distinct colors). The bold black cycle is the separator $S_{\!_X}$. The virtual edge $e_{\!_X}$ is dashed. The green child bag $X_1$ is the interior of $S_{\!_X}$. When $e_{\!_X} \in E(G)$ (left image), we show that no face is partitioned between the child bags $X_i$. When $e_{\!_X} \notin E(G)$ (middle and right images), edges of the critical face $f$ are red. Notice, the face $f$ (middle) is partitioned into two child bags ($X_1$ and $X_4$), and the face-part $f$ (right) is further partitioned into three child bags ($X_1,X_4,X_5$); I.e., in the right image, $f$ was a face in a previous levels that got partitioned into face-parts, in particular, each dashed edge $e_{\!_H}\neq e_{\!_X}$ that appears in the empty white subgraph is an edge of a separator $S_{\!_H}$ from an ancestor bag $H$ of $X$, such that $e_{\!_H}$ had partitioned $f$ into parts.
  • Figure 5: A bag $X^*$ on the left and its child bags on the right. Each shadow color demonstrates a distinct child bag of $X^*$. Each edge that is shadowed by a color, is entirely contained in the child bag corresponding to that color. The nodes shown in $X^*$ are the nodes of $F_{\!_X}$. Some of these nodes are partitioned into several nodes in different child bags of $X^*$. The black nodes are nodes of $X^*$ that are incident to a (dual) edge of $S_{\!_X}$, the yellow node corresponds to the critical face of $X$, and the red nodes correspond to face-parts of $X$. Notice how for the face-parts and the critical face of $X$ there are incident edges, each is entirely contained in a distinct child bag of $X^*$. Edges that are not contained in any child bag of $X^*$ are (dual) edges of $S_{\!_X}$.
  • ...and 11 more figures

Theorems & Definitions (77)

  • Theorem 1.2: Exact maximum $st$-flow in directed planar graphs
  • Theorem 1.3: Approximate maximum $st$-flow in undirected $st$-planar graphs
  • Theorem 1.5: Planar directed global minimum cut
  • Theorem 1.5: Planar directed global minimum cut
  • Theorem 1.7: Planar weighted girth
  • Theorem 2.1: Dual distance labeling
  • Lemma 2.1: Dual single source shortest paths
  • Lemma 2.2: Few face-parts, Informal
  • Lemma 2.3: Dual Separator - Informal
  • Definition 4.1: Low-congestion shortcuts
  • ...and 67 more