A Polynomial Time Approximation Algorithm for the Two-Commodity Splittable Flow Problem

A Polynomial Time Approximation Algorithm for the Two-Commodity   Splittable Flow Problem
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

We consider a generalization of the unsplittable maximum two-commodity flow problem on undirected graphs where each commodity $i\in{1,2}$ can be split into a bounded number $k_i$ of equally-sized chunks that can be routed on different paths. We show that in contrast to the single-commodity case this problem is NP-hard, and hard to approximate to within a factor of $\alpha>1/2$. We present a polynomial time 1/2-approximation algorithm for the case of uniform chunk size over both commodities and show that for even $k_i$ and a mild cut condition it can be modified to yield an exact method. The uniform case can be used to derive a 1/4-approximation for the maximum concurrent $(k_1,k_2)$-splittable flow without chunk size restrictions for fixed demand ratios.


💡 Research Summary

The paper investigates a two‑commodity splittable flow problem on an undirected capacitated graph. Each commodity i (i = 1, 2) may be divided into at most k_i paths, and every path of a given commodity must carry the same amount of flow (uniform chunk size). The authors first prove that, unlike the single‑commodity case, the two‑commodity version is NP‑hard even when k₁ = k₂ = 2, and that achieving an approximation factor better than ½ is also NP‑hard.

To obtain a tractable algorithm they introduce a new cut‑based upper bound c_{k₁,k₂}(G). For any cut S they define a demand dem(S) that counts how many chunks of each commodity must cross the cut. The bound is expressed as a mixed integer program that packs two item types (the two commodities) into the edge capacities of the cut. By enumerating four possible placements of the four terminals relative to S, c_{k₁,k₂}(G) can be computed in O((k₁+k₂)|E| log |E|) time using the known single‑commodity k‑cut algorithm.

Lemma 2 shows that from c_{k₁,k₂}(G) one can construct a 2k₁, 2k₂‑splittable totally uniform flow of total value (k₁ + k₂)·c_{k₁,k₂}(G). If the graph does not contain a specific forbidden minor (Figure 4) the half‑integral flow theorem of Hu guarantees an integral solution, yielding a k₁, k₂‑splittable totally uniform flow of the same value.

The main algorithm simply computes c_{k₁,k₂}(G) and returns the flow described above. In the general case this gives a ½‑approximation for the maximum totally uniform flow, which matches the hardness threshold (α > ½). When the equality 2·c_{k₁,k₂}(G) = c_{k₁/2,k₂/2}(G) holds (e.g., for even k_i and no forbidden minor), the algorithm is exact.

Finally, by discarding the uniform‑chunk restriction and assuming fixed demand ratios d₁/d₂, the authors apply the ½‑approximation twice to obtain a ¼‑approximation for the maximum concurrent (k₁,k₂)-splittable flow. This extends previous single‑commodity results to the more challenging two‑commodity setting.

Overall, the paper provides the first polynomial‑time approximation algorithm for two‑commodity splittable flows, establishes tight hardness bounds, and offers a pathway to exact solutions under mild structural conditions.


Comments & Academic Discussion

Loading comments...

Leave a Comment