Abstract 1 Introduction 2 Preliminaries and Notation 3 Improved Upper Bound for Outerplanar Instances 4 Improved Lower Bound for Outerplanar Instances References

Pinning on Tight Cuts: Improved Algorithm and Bounds for Unsplittable Multicommodity Flows in Outerplanar Graphs

David Alemán Espinosa ORCID Department of Combinatorics and Optimization, University of Waterloo, Canada    Niklas Schlomberg Research Institute for Discrete Mathematics and Hausdorff Center for Mathematics, University of Bonn, Germany
Abstract

The multicommodity flow problem in an undirected capacitated graph G is specified by a set of source-sink pairs with nonnegative demands. A flow is feasible if it routes all demands without exceeding the edge capacities, and it is unsplittable if it routes each demand along a single path.

Let α be the smallest value such that the existence of a feasible flow implies the existence of an unsplittable flow that exceeds the edge capacities by at most +αdmax. Schrijver, Seymour, and Winkler showed that α[1.01, 1.5] if G is a cycle. These bounds were ultimately improved to α[1.1, 1.3] by Skutella and Däubel. Recently, Alemán Espinosa and Kumar extended this constant upper bound to the broader class of outerplanar graphs, and showed that if G is outerplanar then α3.6.

We show that α[43,2] if G is outerplanar. We introduce a novel technique that considers the global parameters of the instance, and that may be useful in other (more general) settings where the cut-condition is sufficient, or nearly sufficient, for the existence of a feasible flow.

Keywords and phrases:
Unsplittable Flows, Multicommodity Flows, Planar Graphs
Category:
Track A: Algorithms, Complexity and Games
Funding:
David Alemán Espinosa: Supported in part by C. Swamy’s NSERC Discovery grant 2024-04532.
Niklas Schlomberg: Partially supported by the SNSF grant 200021-236706
Copyright and License:
[Uncaptioned image] © David Alemán Espinosa and Niklas Schlomberg; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Network flows
; Mathematics of computing Paths and connectivity problems
Acknowledgements:
We thank the anonymous reviewers for their valuable comments and suggestions. We are grateful to Chaitanya Swamy for detailed feedback on a preliminary version of this paper, and to Nikhil Kumar, Joseph Poremba, and Bruce Shepherd for many interesting discussions. David thanks both institutions for their hospitality during this visit.
Funding:
This project started while David was visiting the Research Institute for Discrete Mathematics at the University of Bonn, with financial support from the Hausdorff Center for Mathematics, funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany’s Excellence Strategy – EXC-2047/2 – 390685813.
Related Version:
Full Version: https://arxiv.org/abs/2606.04456
Editors:
Sayan Bhattacharya, Danupon Nanongkai, Michael Benedikt, and Gabriele Puppis

1 Introduction

Network flows are a fundamental and extensively studied class of problems in combinatorial optimization [1]. The multicommodity flow problem involves routing multiple distinct commodities through a shared network. An instance, which we denote by the tuple (G,u,H,d), is given by an undirected supply graph G=(V,E(G)) with edge capacities u:E(G)0, and a collection of source-sink pairs {si,ti} in V with associated nonnegative demands d(si,ti). It will be convenient to think of the source-sink pairs as forming the edges of a demand graph H=(V,E(H)). The goal is to compute a flow in G that simultaneously routes all demands and respects the edge capacities, or to certify that no such flow exists. In the standard (fractional) version of the problem, the demand between a source-sink pair may be split across multiple paths, and this flexibility enables the precise formulation of the problem as a linear program that can be solved efficiently. This model has been studied for almost 70 years [10, 11].

Unsplittable multicommodity flows.

Many practical applications often require the flow between each source-sink pair to be routed along a single path. Such a flow is called unsplittable.111In this work, whenever we refer to an unsplittable flow, we also assume that it routes all demands.

This additional requirement gives rise to a significantly harder and less well understood problem. Various fundamental NP-complete problems in combinatorial optimization such as bin packing, partitioning, and makespan minimization on identical and related machines, can be reduced to unsplittable multicommodity flow problems in networks consisting of only two nodes, which are the source-sink nodes of all demands, and parallel edges between them [12]. Moreover, already for very small feasible instances, any unsplittable flow violates some edge capacity by at least an additive amount of dmax, where dmax=maxid(si,ti) denotes the maximum demand value (see Figure 1). Furthermore, strong impossibility and/or hardness results imply that even with unit demands, and even when a feasible multicommodity flow exists, finding an unsplittable flow with only a small violation of edge capacities may be impossible or computationally intractable; see, e.g., the (updated) survey by Kolliopoulos [13].

Therefore, a natural question is to study the conditions under which the existence of a feasible flow implies the existence of an unsplittable flow that incurs only a small violation of edge capacities. Extensive work studies this question for special instances [8, 22, 25, 17, 26, 7, 18, 24, 28, 2, 16, 3, 27].

In the single-source setting (i.e., when the demand graph H is a star), the most prominent result of this kind is due to Dinitz, Garg, and Goemans [8], who proved that any feasible (fractional) flow can be converted into an unsplittable flow that violates the edge capacities by at most dmax, the value of the maximum demand.222This result also holds for directed single-source instances.

However, in the multicommodity setting very few results of this kind are known for unsplittable flows [22, 24, 2, 16, 3]. A prominent example is the case where the supply graph G is a cycle and the demand graph H is arbitrary, which is known as the ring-loading problem, first studied by Cosares and Saniee [6]. In a classical result, Schrijver, Seymour, and Winkler [22] proved that any feasible (fractional) flow for a ring-loading instance can be converted into an unsplittable flow that exceeds the edge capacities by at most an additive amount of 1.5dmax; the best known bound, due to Däubel [7], is 1.3dmax.

Shapley and Shmoys [24] considered the much broader class of instances in which G is outerplanar and H is arbitrary. Recall that G is outerplanar if it admits a planar embedding in which all vertices lie on the unbounded face. They showed that any feasible flow can be converted into an unsplittable flow that exceeds capacities by at most O(logf)dmax, where f is the number of faces of G. This was recently improved by Alemán Espinosa and Kumar [2], who gave an additive 3.6dmax congestion bound.

We show that an additive congestion of 2dmax can be attained in outerplanar graphs. In terms of lower bounds on the additive violation needed, the only known result is a lower bound of 1.1dmax by Skutella [26] for the ring-loading problem. We show that the additive congestion has to be at least 43dmax for outerplanar graphs. We remark that outerplanar graphs are the only known nontrivial class of supply graphs for which the existence of a feasible flow guarantees the existence of an unsplittable flow exceeding edge capacities by at most O(dmax), regardless of the demand graph H.

Figure 1: An example.

1.1 Our contributions

In this work, we significantly improve the state-of-the-art capacity-violation bounds for the existence of an unsplittable flow in outerplanar graphs.

Let αO>0 be the smallest value such that every feasible instance with an outerplanar supply graph G admits an unsplittable flow that exceeds the edge capacities by at most an additive amount of αOdmax. Similarly, let αRL denote the smallest associated value for ring-loading instances.

Prior work showed that 1.01αRL1.5 [22], which was ultimately improved to αRL1.3 [7], and the lower bound αRL1.1 [26]. Since every cycle is an outerplanar graph, we have αOαRL, and prior to our work, it was not known that the parameters αO and αRL are necessarily different.

Our first main result establishes that αO2, improving on the bound of Alemán Espinosa and Kumar [2], who showed that αO2αRL+1[3.2,3.6]. Our proof uses a more robust divide-and-conquer framework that treats the parameters of the instance more globally. We hope this approach to be useful for obtaining similar congestion bounds in other settings where the cut condition is sufficient, or approximately sufficient, for feasibility.

Theorem 1.

Let G be an outerplanar graph. If an instance (G,u,H,d) is feasible, or equivalently, if it satisfies the cut-condition, then there exists an unsplittable flow y such that

y(e)u(e)+2dmaxfor all eE(G).

Moreover, y can be computed in polynomial time.

We complement this result by showing that αO43.

Theorem 2.

For any ε>0 there exists a feasible instance (G,u,H,d) on an outerplanar supply graph G, such that for any unsplittable flow y, there exists a supply edge eE(G) with

y(e)>u(e)+(43ε)dmax.

Recall that previously, the only lower bound known on αO was that αOαRL1.1. Our improved lower bound in Theorem 2, together with the fact that αRL1.3 [7], shows that the α-parameters for ring-loading and outerplanar graphs are different, and concretely shows that outerplanar graphs are more difficult settings than ring-loading instances for multicommodity unsplittable flows.

1.2 Related work

Very recently, Alemán Espinosa, Kumar, Poremba, and Shepherd [3] showed that in the fully planar setting, defined by instances in which G+H is planar, any feasible flow can be converted into an unsplittable flow that violates the edge capacities by at most 2dmax. They also showed that the additive congestion has to be at least 1.5dmax in this setting. The authors in [3] also showed that when G is series-parallel (i.e., G does not contain a K4 minor), any feasible flow can be converted into an unsplittable flow such that the flow on any edge is at most twice its capacity plus 7.2dmax.

The directed single-source setting has been extensively studied; see, e.g., [25, 17, 18, 28, 27], including work on minimum-cost variants. Recently, Majthoub Almoghrabi, Skutella, and Warode [16] studied a multicommodity setting in a special class of directed series-parallel graphs and showed that any fractional flow can be converted into an unsplittable flow of no larger cost, such that the flow values on each arc differ by at most dmax.333We note that, as mentioned in [16] (see footnote on page 429 in [16]), that their results do not extend to the undirected (outerplanar) setting we consider here, nor the other way around.

1.3 The cut-condition

Interestingly, and perhaps not surprisingly, all of these settings have the common feature that one can identify a simple structural property, called the cut-condition that is sufficient, or nearly-sufficient, to guarantee the existence of a feasible flow. This condition requires that, for every cut, the total demand separated by the cut is at most the total capacity of the supply edges crossing it. The cut-condition is always necessary for feasibility of a multicommodity flow instance (see, e.g., [21]), but it is not always sufficient, even for small graphs such as G=K2,3 [19]. It is well known that the cut-condition is sufficient for the following instances:

  1. (i)

    (Single-source setting) G is arbitrary and H is a star [9].

  2. (ii)

    (Okamura-Seymour setting) G is planar and E(H) is incident to one face of G [19].

  3. (iii)

    (Outerplanar setting) G is outerplanar and H is arbitrary (special case of (ii)).

  4. (iv)

    (Fully planar setting) G+H=(V,E(G)E(H)) is planar [23].

Alemán Espinosa and Kumar [2] posed as an open problem whether every feasible Okamura–Seymour instance admits an unsplittable flow with additive congestion O(dmax). Alemán Espinosa, Kumar, Poremba, and Shepherd [3] posed a more general question. Given a (supply graph, demand graph) pair (G,H), the flow-cut gap of (G,H) is the smallest value β1 such that, for all choices of capacities and demands, if every cut has capacity at least β times the total demand it separates, then a feasible flow exists. For example, β=1 for the classes of instances (i)–(iv), it is known that β=2 for instances in which G is series-parallel and H is arbitrary [5, 14]. For instances in which G is planar it is only known that β[2,O(logn)] [20, 14]. In contrast, for general graphs the flow-cut gap is known to be β=Θ(logk), where k is the number of source-sink pairs [15, 4]. Alemán Espinosa, Kumar, Poremba, and Shepherd [3] posed the natural question of whether a flow-cut gap of β for a class of instances implies the existence of an unsplittable flow that can be routed with capacities O(β)u+O(dmax), or even f(β)u+O(dmax) for some f:00.

The sufficiency of the cut-condition for the outerplanar setting is used crucially in [2] and also in this work. Its approximate sufficiency for series-parallel graphs is used in [3], where the framework in [2] is carefully adapted to handle this setting. We build on the ideas in [2] and develop a more robust divide-and-conquer framework that treats the instance parameters more globally. We hope that this approach can be extended beyond the outerplanar setting, for example, to the significantly more intricate Okamura–Seymour setting (ii), which is perhaps the most natural (intermediate) generalization.

1.4 Technical contributions and overview

Pinning a demand edge h=(s,t)E(H) is a standard technique in (unsplittable) multicommodity flow problems. It subdivides h into a sequence (s,v1),(v1,v2),,(v,t) of demand edges, each with the same demand value, with the goal of transforming the instance into a more structured one. However, pinning can destroy feasibility: the resulting instance may not even admit a fractional flow. The algorithms of Dinitz et al. [8], Alemán Espinosa and Kumar [2], Majthoub Almoghrabi et al. [16], and Alemán Espinosa et al. [3] (for series-parallel graphs), perform pinnings in a controlled way so that an unsplittable flow exists, while incurring only an O(dmax) additive capacity violation.

We first provide a high-level overview of the algorithm in [2] for outerplanar instances, which proceeds in two phases. In the first phase, it performs pinnings until every demand edge becomes parallel to a supply edge. They show that the cut-condition, and hence feasibility, can be preserved throughout this phase by increasing capacities by at most 2αRLdmax, where αRL1.3 [7] is the ring-loading parameter. In the second phase, they compute an unsplittable flow greedily, exceeding capacities by an additional amount of dmax. We say that an ear of G is a path whose internal vertices have degree two, ignoring parallel edges. In each iteration of the first phase, their algorithm selects an ear P=v1,,v (with {v1,v}E(G)), and considers the set HPE(H) of demand edges with at least one endpoint in P. Each demand (vi,w)HP is then pinned along a subpath of P. The key observation in [2] is that all demands in HP can be pinned via a reduction to ring-loading, which preserves the cut-condition in the resulting instance, at the expense of increasing capacities on E(P)+{v1,v} by an additive amount of αRLdmax. After the pinnings along P are made, a feasible flow is computed, and then each demand (s,t)E(H)E(G) and its corresponding s-t flow are removed from the first phase. After this removal, P can be treated as an edge that is parallel to {v1,v} for the remaining demands E(H)HP. A similar ring-loading reduction approach was implemented by Alemán Espinosa et al. [3] in order to contract the ears of series-parallel graphs, where the goal of the first phase is to pin the demands so that the resulting instance becomes fully planar (i.e., G+H is planar).

The main drawback of this procedure is that we can not remove the ear P after an iteration because the demands in E(H)HP may still require the residual capacity of P. This is not an issue in the outerplanar setting, but it becomes critical in, for example, an Okamura-Seymour instance (G,u,H,d). For example, suppose that both endpoints of every demand edge lie on the unbounded face of G. Not being able to remove P implies that one cannot pin the demands by using the inner nodes of G. If one makes such a pinning, then the resulting instance is no longer an Okamura-Seymour instance. Therefore, one can not get access to these inner nodes by relying on such a ring-loading reduction.

Our main technical contribution is to consider a tight cut (S1,S2:=V(G)S1), that is, a cut whose capacity equals the demand it separates, instead of an ear of G. We then solve a smaller instance that allows us not only to pin the demands in δH(S1) on the cut, but also to fix their unsplittable routing on δG(S1). This yields another smaller instance, which we solve recursively.

More concretely, tightness of the cut (S1,S2) implies that all demands in H[Si] are routed within G[Si]. We construct a cut instance by picking i{1,2}, deleting all demands in H[Si] and all inner (not outer) edges of G within Si, and updating the capacities of the outer edges in Si to guarantee feasibility of the cut instance.

We solve the cut instance recursively, i.e., we find an unsplittable flow y for which violates edge capacities in by at most 2dmax. Actually, for the outer edges (edges on the boundary of the outer face) we will even get a stronger bound of 32dmax. The flow y already determines our unsplittable flow for on all edges except for G[Si].

To extend this partial unsplittable flow to all of G we construct a split instance by only considering G[Si] as supply graph and adding a demand edge between any vertices s,tS that are connected within Si in the unsplittable flow for some demand in y. We also add the demands in H[Si] which were not considered in the cut instance at all. We show that since y does not exceed capacities too much, this split instance becomes feasible after increasing the capacities of the edges EE(G[Si]) which are incident to δG(Si), by 32dmax. This edge set contains at most one edge per block of G[Si].

We again use recursion to solve the split instance, which yields an unsplittable flow y^ that can “fill the gaps” for y. Our final unsplittable flow y will be equal to y^ on G[Si] and to y outside G[Si]. For the edges E we will guarantee an even stronger bound of 12dmax on the capacity violation of y^, which will yield the capacity bounds needed for y.

The only case where our recursion step fails is if the tight cut δG(Si) already contains all inner edges of G, because then the cut instance will not be smaller than the original instance. In this case, we consider a face F which is incident to at most one inner edge {v,w} in G. W.l.o.g. both v and w have degree 3 in G, and we can find two cuts of size 2 among the edges incident to v and w. We will show that for one of these cuts we can perform the same procedure as above to reduce our instance to two smaller instances.

2 Preliminaries and Notation

All of the graphs that we consider in this work are undirected. Given a graph G=(V,E), a function c:E, and an edge {v,w}E, we overload notation and use c(v,w) to denote c({v,w}). For any edge set FE, we use c(F) to denote eFc(e). Given a vertex set SV, we use δG(S) to denote the set of edges of G with precisely one endpoint in S. We sometimes use the term path interchangeably to mean either its edge set or its vertex sequence; the intended meaning will be clear from the context. For any universe U, any SU, and any eU, we sometimes use S+e and Se to denote S{e} and S{e}, respectively.

2.1 Multicommodity flows

An instance (G,u,H,d) of multicommodity flow is given by an undirected graph G=(V,E(G)) with edge capacities u:E(G)0, and a graph H=(V,E(H)) with demand values d:E(H)0. G and H may have parallel edges but no loops. We refer to G and E(G) as the supply graph and supply edges, respectively. We refer to H and E(H) as the demand graph and demand edges, respectively.

For a demand edge h={s,t}E(H), we use 𝒫h to denote the set of all (simple) st-paths in G. A flow for h, or h-flow, is an assignment xh:𝒫h0 of non-negative real numbers to paths in 𝒫h such that P𝒫hxh(P)=d(h). A collection of flows x=(xh)hE(H) constitutes a multicommodity flow for the instance. For simplicity, we often refer to multicommodity flows simply as flows. For a supply edge eE(G) and a demand edge hE(H), we use xh(e):=P:ePxh(P) to denote the total h-flow going through e. We use x(e):=hE(H)xh(e) to denote the total flow going through e. A flow x is feasible if it satisfies the edge-capacity constraints, that is, if x(e)u(e) for all eE(G).

An h-flow xh is called unsplittable if exactly one of the paths in 𝒫h is assigned a non-zero value in xh. We call a flow x=(xh)hE(H) unsplittable if each xh is unsplittable. In this work, whenever we refer to an unsplittable flow, we also assume that it routes all demands. We use dmax:=maxhE(H)d(h) to denote the maximum demand value. To simplify notation in the upcoming proofs, we adopt the notion of α-feasibility introduced in [2] and generalize it to the notion of β-feasibility.444In [3] the authors defined (α,β)-feasibility, to indicate that a flow x satisfies x(e)αu(e)+βdmax for every eE(G) (and some α,β0). In this work, we focus only on additive violations with respect to dmax.

Definition 3 (β-feasibility).

For a vector β0E(G), we say that an (unsplittable) flow x is β-feasible if

x(e)u(e)+β(e)dmax for each eE(G);

we overload notation, and say that x is α-feasible for a real number α, if x(e)u(e)+αdmax for all eE(G) (i.e., x is β-feasible, where β=α1).

We may assume w.l.o.g. that the supply graph G is 2-vertex-connected. Indeed, suppose that G has a cut vertex. Let B1V(G) denote the vertex set of a block555A block of G is a maximal (inclusion-wise) vertex set SV(G) such that G[S] is 2-vertex-connected, where we regard K2 as 2-vertex-connected. of G containing exactly one cut vertex vB1 and define B2:=V(G)(B1{v}). For any demand h={a,b}E(H) with hBi for some i{1,2} we have that any ab-path in G is contained inside Bi, so that demand does not interact with edges in the other component B3i. For a demand h={a,b}E(H) with aB1, bB2 we have that any ab-path in G contains v. Hence, we can replace h by two demands {a,v} and {v,b}, each of value d(h), obtaining an equivalent multicommodity flow instance. Repeating this transformation until no cut vertex exists reduces the problem to a collection of smaller instances, whose supply graphs are the blocks of G.

2.2 Outerplanar instances

A graph is outerplanar if it admits a planar embedding in which all vertices lie on the unbounded face. Throughout this work, the supply graph G of our instance (G,u,H,d) is outerplanar, and we fix an outerplanar embedding of G. We sometimes also call the unbounded face the outer face, and the other faces inner faces. Similarly, we call the edges of G incident with the outer face the outer edges, and the remaining edges the inner edges. We denote the sets of outer and inner edges by Eouter(G) and Einner(G), respectively. Since we may assume that G is 2-vertex-connected, every face of G is bounded by a cycle.

2.3 Cut-condition

Let (G,u,H,d) denote a multicommodity flow instance, and set V:=V(G). For any SV, the cut (S,VS) is a bipartition of the vertex set. The cut-condition requires that, for every cut, the total demand crossing the cut is at most the total capacity of the supply edges crossing it i.e.,

u(δG(S))d(δH(S))for all SV.

A set SV is called central if both of the induced graphs G[S] and G[VS] are connected. We say that (S,VS) is a central cut if S is central. The following is a well known fact (see, e.g., [21]).

Lemma 4.

An instance (G,u,H,d) satisfies the cut-condition if and only if u(δG(S))d(δH(S)) for all central sets SV.

Observe that in a 2-vertex-connected outerplanar graph G, the central sets are precisely the vertex sets of subpaths of the outer face.

A classical result of Okamura and Seymour states that the cut-condition is sufficient whenever G is planar and the endpoints of all demand edges lie on a common face of G.

Theorem 5 (Okamura–Seymour [19]).

Let G be a planar supply graph and H a demand graph. Suppose there exists a face F of G such that for every demand edge {s,t}E(H), both s and t lie on F. Then, for any u:E(G)0 and d:E(H)0, the instance (G,u,H,d) admits a multicommodity flow if and only if it satisfies the cut-condition.

Since every vertex of an outerplanar graph is incident to the outer face, an immediate consequence of the above theorem is that the cut-condition is sufficient for the feasibility of an instance if the supply graph G is outerplanar.

3 Improved Upper Bound for Outerplanar Instances

In this section, we give a proof of Theorem 1, which we restate for convenience. See 1

Our main approach is to reduce our instance to two smaller instances, which can be solved recursively. Ultimately, we arrive at a ring-loading problem, which is better understood than the case where G is outerplanar. We introduce the results on the ring-loading problem that we use in Section 3.1. Afterwards, we prove Theorem 1.

3.1 Ring-loading

For the ring-loading problem, Däubel [7] showed how to compute a 1.3-feasible unsplittable flow in any feasible instance. For our purposes, however, it is essential to obtain a much stronger bound on the capacity violation for one special edge, while still keeping the capacity violations on all other edges small. Therefore, we make use of the algorithm of Schrijver, Seymour, and Winkler [22], which only gives a 32-feasible unsplittable flow, but also directly implies a bound of +12dmax for the capacity violation on one edge that can be chosen arbitrarily in advance.

Theorem 6 (Schrijver, Seymour, Winkler [22]).

Let (G,u,H,d) be a feasible ring-loading instance and eE(G). Then there is a β-feasible unsplittable flow y=(yh)hE(H), where β(e)=12 and β(e)=32 for all other edges eE(G){e}.

We also need an even stronger bound for the special case where all demands are incident to one of two specified vertices.

Lemma 7.

Let =(G,u,H,d) be a feasible ring-loading instance with two vertices v,wV(G) such that any demand edge contains v or w. Let e1,e2E(G). Then there exists a β-feasible unsplittable flow y=(yh)hE(H) for , where β(e1)=β(e2)=12 and β(e)=32 for eE(G){e1,e2}.

The proof of Theorem 6 follows by using the same algorithm and analysis as Schrijver, Seymour, and Winkler [22]. We include the details, together with the proof of Lemma 7, in the extended version of this paper.

3.2 Proof of Theorem 1

Recall that a nonempty vertex set SV(G) is central if G[S] and G[V(G)S] are connected. A useful tool which we use in our proof is the notion of x-nice central sets:

Definition 8 (x-nice sets).

Let (G,u,H,d) be an outerplanar multicommodity flow instance, and let x=(xh)hE(H) be a feasible flow. We call a central vertex set SV(G) x-nice if every hE(H[S]) is routed in G[S], i.e., if xh(e)=0 for every edge eE(G[S]).

We make use of two types of x-nice sets, which are captured in the following two lemmata:

Lemma 9.

Let (G,u,H,d) be a multicommodity flow instance and x=(xh)hE(H) a feasible flow. Let (S,V(G)S) be a central cut that is tight, i.e., u(δG(S))=d(δH(S)). Then S is x-nice.

Proof.

Since x is feasible, we have

u(δG(S))x(δG(S))=hE(H)xh(δG(S))hδH(S)xh(δG(S))d(δH(S))=u(δG(S)).

Therefore, equality holds throughout the above expression. Thus, xh(δG(S))=0 for every hE(H[S]). Since both endpoints of such an h lie in S, this implies that xh(e)=0 for all eE(G[S]). Therefore, S is x-nice.

Lemma 10.

Let =(G,u,H,d) be a multicommodity flow instance and x=(xh)hE(H) a feasible flow that is minimal, i.e., for any feasible flow x for with x(e)x(e) for all eE(G) we actually have x(e)=x(e) for all eE(G). Let (S1,S2=V(G)S1) be a central cut with |δG(S1)|=2. Then S1 or S2 is x-nice.

Proof.

Set C:=δG(S1)=δG(S2). Assume that neither S1 nor S2 is x-nice. Then, for each i=1,2, there is a demand hi={si,ti}E(H[Si]) such that xhi(C)0. Choose an siti-path Pi with E(Pi)C and xhi(Pi)>0. Since both endpoints of hi lie in Si, the path Pi contains both edges of C. Let Qi be the minimal subpath of Pi containing both edges of C. Then QiC is a path in G[S3i]. For each i=1,2, let Pi be the siti-path obtained from Pi by replacing Qi with Q3iC and possibly deleting cycles. Now, decrease xhi(Pi) by a sufficiently small amount ε>0 and increase xhi(Pi) by ε, for i=1,2. This yields another feasible flow x with x(e)x(e) for every eE(G), and with x(e)=x(e)2ε for both edges eC, contradicting the minimality of x.

We can use an x-nice set in the following way to round the splittable flow x to an unsplittable one: First, we remove demands in H[S], together with their flows, from our instance and replace G[S] by a path (consisting of the outer edges of G within S) with adequate edge capacities. This yields a cut instance (cf. Definition 14). Due to the fact that S is x-nice, the cut instance differs from the original instance only within S, so after solving the cut instance recursively, we can fix the obtained unsplittable flow y everywhere except within S. Afterwards, we need to route H[S] and reconnect the segments of the unsplittable flows in y that are routed in S. All of this needs to be routed through S, so we encode this task in a split instance (cf. Definition 16), which we also solve recursively.

Figure 2: The left shows an outerplanar graph with a central set S (blue and circular vertices). The inner and outer paths are depicted on the right. Note that together they form the outer edges of G[S]. For the given edge e, the edge set C(S,e) consists of e, the leftmost edge of Pin, and the inner black edge of G[S] inbetween.
Definition 11 (Outer and inner paths).

Let G be a 2-vertex-connected outerplanar graph and SV(G) a central set.

  1. (i)

    The outer path of S is the unique path Pout with V(Pout)=S and E(Pout)Eouter(G).

  2. (ii)

    For any a,bS we define their outer path Pa,bout as the unique ab-subpath of Pout.

  3. (iii)

    The inner path of S is the path Pin in G[S] between the endpoints of Pout whose edge set is the union of Eouter(G[S])Einner(G) and the bridges666A bridge is an edge whose removal disconnects the graph. of G[S]. Equivalently, if G contains no parallel edges, Pin is the unique shortest path in G[S] between the endpoints of Pout.

See Figure 2 for an example.

 Remark 12.

It is easy to verify that the definition of the inner path Pin is well-defined, i.e., the edge set of Pin actually forms a path. Also, the following useful observations are easy to see. We defer the proofs to the extended version of this paper.

  • The vertex sequence of Pin is a subsequence of the vertex sequence of Pout.

  • The edges in PinPout are precisely the bridges of G[S].

  • The edges in PoutPin are precisely the outer edges of G[S].

  • The inner vertices of Pin are precisely the cut-vertices of G[S].

  • There is a one-to-one correspondence between the blocks of G[S] and the edges of Pin. More precisely, each edge {v,w}Pin corresponds to the block induced by the vertex set of Pv,wout.

We now describe our procedure to compute an unsplittable routing by solving two smaller instances. We first formally define the cut instance.

Definition 13 (Semi-cut).

Let G be a 2-vertex-connected outerplanar graph, SV(G) a central set, and Pout the outer path of S. For any edge eE(Pout) we define the semi-cut w.r.t. S and e as the edge set C(S,e):={{v,w}E(G[S]):eE(Pv,wout)}. Equivalently, C(S,e):=δG[S](X), where XS is the vertex set of a connected component of Poute. See Figure 2 for an example.

Definition 14 (Cut instance).

Let (G,u,H,d) be an outerplanar multicommodity flow instance where G is 2-vertex-connected, and let x=(xh)hE(H) be a feasible flow. Let SV(G) be an x-nice central set, and let Pout be the outer path of S. The cut instance for x and S is the instance cut=(G,u,H,d) defined as follows. See Figure 4 for an illustration. The supply graph G is given by V(G)=V(G) and E(G):=(E(G)E(G[S]))E(Pout). The demand graph and demand values are given by E(H):=E(H)E(H[S]) and d(h):=d(h) for all hE(H). Edge capacities are defined as follows.

u(e):={eC(S,e)hE(H)xh(e),if ePoutu(e),otherwise.
Figure 3: The left shows an outerplanar multicommodity flow instance (black edges) with 5 demands (colored dashed edges). The right image shows a feasible splittable flow, where the flow of each demand is drawn in the same color as the demand.
Figure 4: The left shows the cut instance for the instance from Figure 3, where S is chosen as in Figure 2. Note that the red demand is removed, and the capacities of inner edges in S are added along their outer paths. The right image shows a possible unsplittable flow for the cut instance.
Figure 5: The left shows the split instance for the unsplittable flow from Figure 4. Note that the green demand from Figure 4 induces two demands here. The capacity on the inner path (straight horizontal edges) is increased to make it feasible. An unsplittable flow in this instance can be combined with the unsplittable flow from Figure 4 to a solution for the original instance.
Figure 6: Combining the unsplittable flows from Figure 4 and Figure 5 yields an unsplittable flow for the original instance.

In other words, we first remove the flow of the demands that are routed completely inside S. We add the (residual) capacities of the inner edges of G inside S to the outer path of S, and then remove those inner edges from the instance. This makes sure that we maintain feasibility of the cut instance:

Lemma 15.

In the situation of Definition 14, the cut instance cut is feasible.

Proof.

We construct a feasible flow x=(xh)hE(H) for cut from the flow x. For any h={s,t}E(H) we construct xh as follows. For each st-path P in G that lies in the support of xh, let P be the st-path in G obtained from P by replacing each edge {v,w}E(P) with v,wS by their outer path Pv,wout, and then deleting cycles if necessary. We then increase xh(P) by xh(P). Doing this for all st-paths in the support of xh yields a flow xh of value d(h)=d(h) in G. It remains to check that the capacities of cut are satisfied. If eE(G)E(Pout), the above procedure does not increase the flow on e, and hence x(e)x(e)u(e)=u(e). Now let eE(Pout). By construction of x, for every hE(H),

xh(e){v,w}E(G[S])eE(Pv,wout)xh({v,w})={v,w}C(S,e)xh({v,w}).

Therefore,

x(e)=hE(H)xh(e)hE(H)eC(S,e)xh(e)=u(e).

Thus, x is feasible for cut.

Our rounding algorithm will find an adequate x-nice set such that the cut instance is simpler and can be solved recursively. Next, the obtained solution is be fixed on the edges not in G[S] and the remaining task is to connect the endpoints of our partial unsplittable flow inside G[S]. This task is captured in the split instance, which we define now:

Definition 16 (Split instance).

Let =(G,u,H,d) be an outerplanar multicommodity flow instance where G is 2-vertex-connected, and let x=(xh)hE(H) be a feasible flow. Let SV(G) be an x-nice central set, and let Pout and Pin be the outer path and inner path of S, respectively. Let cut=(G,u,H,d) be the cut instance for x and S. Let y=(yh)hE(H) be a β-feasible unsplittable flow of cut, for some β0E(G).

The split instance for ,cut, y and β is the instance split=(G^,u^,H^,d^) defined as follows. First, we set G^:=G[S]. Edge capacities are given by

u^(v,w):={u(v,w)+max{β(e):ePv,wout}dmax,if {v,w}E(Pin)u(v,w),otherwise.

The demands E(H^) are constructed as follows. First, we add all the demands in E(H[S])=E(H)E(H) to E(H^). Next, for each edge hE(H), let Ph denote the path on which yh routes h. Let 𝒬h denote the set of maximal subpaths of Ph that are in G[S]=Pout. For each Q𝒬h with E(Q) we add a demand hQ between the endpoints of Q to H^ and set d^(hQ):=d(h). See Figure 5 for an example.

A key property of the split instance is that it is always feasible, although we only increased capacities along the inner path Pin.

Lemma 17.

In the situation of Definition 16 the split instance split is feasible.

Proof.

We first observe that we may assume that H=H. If this is not the case, we could first remove all demands in E(H)E(H) from H and decrease all capacities u(e) by hE(H)E(H)xh(e). This does not change the cut instance cut. Thus, if the lemma holds for the resulting split instance, then restoring the removed demands and their flows yields the lemma for the original split instance.

Suppose that the outer face is bounded by the cycle v1,v2,,vn,v1. Assume w.l.o.g. that S={v1,v2,,vk} (and thus Pout=v1,v2,,vk). Let XS denote the set of vertices that are adjacent to V(G)S in G (note that XV(Pin)). By Lemma 4 and Theorem 5, it suffices to show that the cut-condition holds for all central cuts of G^. Let US be a central set of G^=G[S]. W.l.o.g. U={vi,,vj} for some 1ijk. We distinguish two cases:

Case 1:

i>1 and j<k.

Since SU is also a central set of G[S], it follows that U does not contain a cut-vertex of G[S]; otherwise, v1 would be disconnected from vk in SU. Since the cut-vertices of G[S] are precisely the inner vertices of Pin (see Remark 12), and since v1,vkU, it follows that UXUV(Pin)=. Therefore, δG^(U)=δG(U) and u(δG(U))=u^(δG^(U)). Note that each demand hE(H) induces at most one demand hQ with an endpoint in SX. If such an hQ exists, then this endpoint is the unique endpoint of h inside S. Hence, since UX=, we have δH^(U)=δH(U).

Thus, d^(δH^(U))=d(δH(U))u(δG(U))=u^(δG^(U)), where the inequality follows from the fact that the initial instance satisfies the cut-condition.

Case 2:

i=1 or j=k. W.l.o.g. i=1 and thus j<k. Define e:={vj,vj+1}, and observe that δG^(U) is precisely the semi-cut C(S,e) for S and e (see Definition 13). Since exactly one endpoint of Pin lies in U, there is some eC(S,e)E(Pin). We have u^(e)u(e)+β(e). Thus, u^(δG^(U))u(C(S,e))+β(e)u(e)+β(e)y(e). Finally, observe that by definition of H^ we have d^(δH^(U))=y(e).

We now have all the ingredients to prove Theorem 1. We prove a slightly stronger statement that enables us to use an inductive argument. Rather than presenting the proof as an explicit induction, we use a minimal counterexample argument.

Theorem 18.

Let =(G,u,H,d) be an outerplanar multicommodity flow instance that is feasible, or equivalently, that satisfies the cut-condition. Let EEouter(G) be a set of outer edges of G that contains at most one edge of each block of G. Then there exists a β-feasible unsplittable flow y=(yh)hE(H), where

β(e):={12,if eE,32,if eEouter(G)E,2,if eEinner(G).

Proof.

Assume that this statement is false, and let (G,u,H,d), together with EE(G), be a counterexample that lexicographically minimizes (|Einner(G)|,|E(H)|). As discussed in Section 2.2, the blocks of G are independent, so we may assume that G is 2-vertex-connected. In particular, |E|1 and we can assume w.l.o.g. that E={e} for some outer edge eEouter(G).

Furthermore, we may assume that for every edge eE(G) there exists a central cut (Se,V(G)Se) with eδG(Se) that is tight, i.e., u(δG(Se))=d(δH(Se)). Otherwise, we can decrease u(e) while preserving the cut-condition, until either such a cut exists or u(e)=0. The latter case can be ruled out by the minimality of the counterexample. Let S:=Se and let x=(xh)hE(H) be a feasible flow for . By Lemma 9, both S and V(G)S are x-nice. Also, the fact that each edge belongs to a tight cut implies that x is minimal, i.e., if x is feasible with x(e)x(e) for all eE(G) then also x(e)=x(e) for all eE(G).

Case 1:

G[S] or G[V(G)S] contains an inner edge of G.

W.l.o.g. E(G[S])Einner(G). Let Pout and Pin denote the outer path of S and inner path of S, respectively. Let cut=(G,u,H,d) be the cut instance for x and S.

Observe that |Einner(G)|<|Einner(G)|. Thus, by minimality of our counterexample, we can assume that there is a β-feasible unsplittable flow y=(yh)hE(H) for cut, where β(e)=12, β(e)=32 for eEouter(G){e} and β(e)=2 for eEinner(G).

Let split=(G^,u^,H^,d^) be the split instance for , cut, y and β according to Definition 16. By Lemma 17, split is feasible. Recall that Eouter(G^)=PoutPin, and that for any edge {v,w}Pin, the vertex set V(Pv,wout) is a block of G^. Therefore, Pin contains precisely one edge from every block of G^. Since |Einner(G^)|<|Einner(G)|, by minimality of our counterexample we can find a β^-feasible unsplittable flow y^=(y^h)hE(H^) for split, where β^(e)=12 for eE(Pin), β^(e)=32 for eEouter(G^)E(Pin) and β^(e)=2 for eEinner(G^).

Now, we can define the unsplittable flow y=(yh)hE(H) for the original instance (G,u,H,d): For hE(H)E(H) we also have hE(H^), and hence yh:=y^h defines an unsplittable h-flow. For hE(H) let Ph denote the path on which yh routes h. As in Definition 16, let 𝒬h define the set of maximal subpaths of Ph that are in G[S]=Pout. For each Q𝒬h we have added a demand hQ to E(H^); we construct the path Ph from Ph by replacing each Q𝒬h by the path that hQ is routed on in the unsplittable flow y^, and deleting possible cycles in the constructed walk. We define yh to be the unsplittable h-flow that routes h along Ph (cf. Figure 6).

It is left to check the capacity constraints for y. For eE(G)E(G[S]) we have

y^(e)y(e)u(e)+β(e)dmax=u(e)+β(e)dmax.

Now consider an edge eE(G[S]). We have y(e)y^(e)u^(e)+β^(e)dmax. If eE(Pin) then u^(e)=u(e) and β^(e)=β(e), so y(e)u(e)+β(e)dmax. Finally, consider the case eE(Pin). By our choice of β, Definition 16 implies u^(e)u(e)+32dmax in this case. If eE(Pin) is an outer edge of G then e must be a bridge in G^; in particular we even have y^(e)u^(e)u(e)+32dmax=u(e)+β(e)dmax. Otherwise, we have β^(e)=12=β(e)32, which concludes the case eE(Pin). This finishes the proof for case 1.

Case 2:

δG(S) contains all inner edges of G.777In this case, deleting the vertex corresponding to the outer face from the planar dual results in a path.

Let F be the (unique) inner face of G that is incident to e. If F is the only inner face of G then G is a cycle, and Theorem 6 yields a β-feasible unsplittable flow. Otherwise, since δG(S) contains e and all inner edges of G, F is incident to exactly one inner edge, say {v,w}Einner(G). Let v1,v2V(G) such that {v1,v} and {v2,v} are the two outer edges of G incident to v, where {v1} lies on the boundary of F. Let w1,w2V(G) be defined analogously for w.

We can assume w.l.o.g. that |δG(v)|=3 and that no demand edges of H are incident to v; otherwise, replace v by two vertices v and v that are connected by an edge {v,v} and connect all edges in δG+H(v) except {v1,v} and {v,w} to v instead of v. We can choose the capacity for the new edge {v,v} large enough such that our instance is feasible. Note that any β-feasible unsplittable flow in the constructed instance directly induces a β-feasible unsplittable flow in the original instance. Similarly, we can assume that |δG(w)|=3 and that no demand edges of H are incident to w. Now, we again distinguish two cases:

Case 2a:

There exists a demand edge h between two vertices on the boundary of F.

Observe that xh({v1,v})=xh({w1,w}). Note that if xh({v1,v})=0 then x routes all the demand of h along a single path (on the boundary of F). Thus, removing h from H as well as removing xh from x and u yields a counterexample with fewer demand edges, contradicting minimality of our counterexample. So w.l.o.g. assume xh({v1,v})>0. By Lemma 10 one connected component SV(G) of G{{v1,v},{w1,w}} is x-nice, and due to the flow xh we know that v,wS. In particular, the supply graph of the cut instance for x and S has less inner edges than G, so we can proceed exactly as in Case 1 to finish the proof in this case.

Case 2b:

Any demand edge contains at most one vertex on the boundary of F.

In this case we consider the set S of all vertices on the boundary of F. S is x-nice because H[S]=. Let cut=(G,u,H,d) be the cut instance for x and S. We have E(G)=E(G){{v,w}}, so by minimality of our counterexample there exists a β-feasible unsplittable flow y=(yh)hE(H) for cut, where β(e)=32 for eEouter(G) and β(e)=2 for eEinner(G). Now let split=(G^,u^,H^,d^) be the split instance for , cut, y and β. Clearly, G^ is a cycle corresponding to the boundary edges of F. Furthermore, the assumption of case 2b implies that each edge of H^ is incident to v or w. Therefore, we can apply Lemma 7 to find a β^-feasible unsplittable flow y^ for split, where β^(e)=β^({v,w})=12 and β^(e)=32 for all other eE(G^).

Define the unsplittable flow y as in case 1. Analogously to case 1, it is straightforward to verify that the flow y fulfills the requirements of the lemma.

Since β(e)2 for all edges eE(G) in Theorem 18, this directly implies the existence part of Theorem 1. Note that although the proof of Theorem 18 is existential, it still shows a clear way to obtain an unsplittable flow y as desired: In each iteration, after partitioning the instance into the blocks of G and removing demands which are already routed unsplittably, we construct two smaller instances, the cut instance cut and the split instance split, and solve them recursively. Afterwards, we combine the obtained unsplittable flows to the flow y. Note that the combined number of inner faces of the supply graphs in cut and split equals the number of inner faces of G, so the total number of recursion steps is bounded linearly. Thus, we can also compute an unsplittable flow as guaranteed by Theorem 18 in polynomial time.

4 Improved Lower Bound for Outerplanar Instances

We prove Theorem 2 in this section, which we restate for convenience. See 2 This lower bound improves over the previous best lower bound of 1110dmax in [26] for outerplanar graphs, which is achieved in a ring-loading instance.

We show that for any n>0, there is a feasible multicommodity flow instance supported on an outerplanar graph with 1+4n inner faces, such that any unsplittable flow must necessarily exceed the capacity of some edge by at least (1+n1+3n)dmax. Since 1+n1+3n43 as n, Theorem 2 will follow.888One can take n=19ε, where ε>0 is as in the statement of Theorem 2.

We start by considering a family of ring-loading instances on a common (supply graph, demand graph) pair (C,H). For any n0 and any [n] we define the following ring-loading instance (n,):=(C,u,H,d), which we illustrate in Figure 7.

Figure 7: The ring-loading instance (n,).
Supply graph: C=s0,s1,s2,s3,s4,t0,t1,t2,t3,t4,s0 is a 10-cycle,
Demand graph: E(H)={{s1,t1},{s2,t2},{s3,t3}},
Capacities: u(s1,s2)=u(s2,s3)=1+n1+3n,
u(s3,s4)=u(s4,t0)=u(t0,t1)=11+3n,
u(t1,t2)=u(t2,t3)=1+n1+3n,
u(t3,t4)=u(t4,s0)=u(s0,s1)=1++2n1+3n,
Demands: d(s1,t1)=1,d(s2,t2)=2n1+3n,d(s3,t3)=1.
Lemma 19.

For any n0 and [n], (n,) is a feasible instance.

Proof.

For each i{1,2,3}, let ri denote the amount of siti-flow routed (clockwise) along the path si,si+1,,s4,t0,,ti, and let ri¯ denote the amount of siti-flow routed (counter-clockwise) along the path si,si1,,s0,t4,,ti. Take

r1=r3=12+n1+3n2+6n,r1¯=r3¯=12+2n1+3n+2+6n,r2=r2¯=n1+3n.

This flow routes the required demand, since r1+r¯1=r3+r¯3=1 and r2+r¯2=2n1+3n. Observe that the flow on each edge of the paths s1,s2,s3 and t1,t2,t3 is equal to 1+n1+3n. The flow on each edge of the path s3,s4,t0,t1 is equal to 11+3n. Finally, the flow on each edge of the path t3,t4,s0,s1 is equal to 1++2n1+3n. Thus, on every edge the total flow equals its capacity, and the instance is feasible.

Next, we construct an (intermediate) instance as follows. Consider the n vertex-disjoint instances {(n,)=(C(),u(),H(),d())}[n], where we assume that (n,) is supported on the cycle C()=s0,,s4,t0,,t4,s0 (and where we interpret sisi and titi). We concatenate these instances into a larger instance whose inner faces form a one-dimensional grid. Informally, for each [n1], we identify s0+1 with s4, identify t4+1 with t0, and add the capacity of {t4+1,s0+1} to that of {s4,t0}. The demands and the capacities of all other edges (i.e., the outer edges of the resulting instance) remain unchanged. This results in the following instance 𝒥=(G,u,H,d). See Figure 8 for an illustration.

Figure 8: The -th and +1-st inner face in the outerplanar instance 𝒥.
Vertex set: V==1nV(C())=2n{s0,t4}.
Supply edges: E(G)==1nE(C()){{t4,s0}: 2n}.
Demand edges: E(H)==1n{{s1,t1},{s2,t2},{s3,t3}}.
Capacities: u(s1,s2)=u(s2,s3)=u(t1,t2)=u(t2,t3)=1+n1+3n[n],
u(s3,s4)=u(t0,t1)=11+3n[n],
u(t3,t01)=u(s41,s1)=1++2n1+3n2n,
u(s4,t0)=u()(s4,t0)+u(+1)(t4+1,s0+1)=3n1+3n[n1],
u(t31,t41)=u(t41,s01)=u(s01,s11)=2n1+3n,u(s4n,t0n)=1n1+3n.
Demands: d(s1,t1)=1,d(s2,t2)=2n1+3n,d(s3,t3)=1[n].

Note that dmax=1 and that removing the outer face from the planar dual of G results in a path whose th node corresponds to the inner face of G bounded by the cycle C().

Lemma 20.

𝒥 is a feasible instance.

Proof.

For each [n] we can route the demands {s1,t1},{s2,t2},{s3,t3} as in Lemma 19, around the boundary of the inner face that contains all si and ti for i=1,2,3.

For simplicity, we introduce the following definition.

Definition 21.

Consider an unsplittable flow y of 𝒥, and let [n] and i{1,2,3}. We say that y routes {si,ti} to the right if y routes {si,ti} along an siti-path containing the edge {si,si+1}; otherwise, we say that y routes {si,ti} to the left, i.e., if y routes {si,ti} along an siti-path containing the edge {si,si1}.999We interpret s0s41 for any 2n

Later, we construct the instance satisfying the conditions of Theorem 2 by taking four vertex-disjoint copies of 𝒥 and identifying the edge {t41,s01} of each copy with an edge of a central cycle. The next lemma will allow us to assume later that, within every copy, all demands {s1,t1} and {s3,t3} must be routed to the left.

Lemma 22.

Let y be an unsplittable flow of 𝒥=(G,u,H,d). If, for some [n] and some i{1,3}, y routes {si,ti} to the right, then there is an edge eE(G){{t41,s01}} with

y(e)u(e)+1+n1+3n.

Proof.

We start by observing that if the demands {s1,t1} and {s3,t3} are routed in opposite directions, then y exceeds the capacity of some edge of the -th face of G by at least 1+n1+3n.

Claim 23.

If for some [n] and distinct i,j{1,3}, y routes {si,ti} to the right and it routes {sj,tj} to the left, then there is a supply edge eE(G) with y(e)u(e)+1+n1+3n.

Proof.

Suppose first that i=1 and j=3. Observe that in this case both {s1,t1} and {s3,t3} are routed in y by using the edges of the path s1,s2,s3. Thus, if {s2,t2} is routed to the left, then

y(s1,s2)d(s1,t1)+d(s2,t2)+d(s3,t3)=2+2n1+3n=2(1+n1+3n)=u(s1,s2)+1+n1+3n.

On the other hand, if {s2,t2} is routed to the right, then

y(s2,s3)d(s1,t1)+d(s2,t2)+d(s3,t3)=2+2n1+3n=2(1+n1+3n)=u(s2,s3)+1+n1+3n.

The case in which i=3 and j=1 is analogous. In that case, the capacity of either {t1,t2} or {t2,t3} is exceeded by at least 1+n1+3n units of flow. By the previous claim, we can assume that for all [n] either both {s1,t1} and {s3,t3} are routed to the right, or that both are routed to the left. Take the largest such that both {s1,t1} and {s3,t3} are routed to the right. If =n, then y routes at least 2=d(s1n,t1n)+d(s3n,t3n) units of flow through the edge {s4n,t0n}. Thus,

y(s4n,t0n)2=u(s4n,t0n)+1+n1+3n.

Therefore, we can assume that <n. For simplicity, let P1 and P3 denote the paths on which y routes {s1,t1} and {s3,t3}, respectively. Similarly, let P1+1 and P3+1 denote the paths on which y routes {s1+1,t1+1} and {s3+1,t3+1}, respectively. By our choice of (and the assumption that for each of these n indices, the two corresponding demands are routed in the same direction), we have that

{s3,s4}P1P3 and {s4,s1+1}P1+1P3+1.

Observe that if these four (unit) demands are routed on the inner edge {s4,t0} i.e., {s4,t0}P1P3P1+1P3+1, then

y(s4,t0)u(s4,t0)4(3n1+3n)=1+n1+3n.

Thus, we assume that either {s3,s4}P1+1P3+1 or {s4,s1+1}P1P3. If {s3,s4}P1+1P3+1, then y would route (at least) 3 units of flow on {s3,s4}, implying that

y(s3,s4)u(s3,s4)3(11+3n)>2.

On the other hand, if {s4,s1+1}P1P3 then {s1+1,s2+1},{s2+1,s3+1}P1P3. Since {s1+1,s2+1},{s2+1,s3+1}P3+1 as well, this implies that y routes at least 2 units of flow on these two supply edges without counting the demand {s2+1,t2+1}. Thus, the same argument of Claim 23 implies that either y(s1+1,s2+1)u(s1+1,s2+1)1+n1+3n (if {s2+1,t2+1} is routed to the left), or y(s2+1,s3+1)u(s2+1,s3+1)1+n1+3n (if {s2+1,t2+1} is routed to the right).

Now we describe the instance which will imply the proof of Theorem 2. The instance is illustrated in Figure 9. We create four disjoint copies of 𝒥 and identify the edge {t41,s01} of each of these copies with an edge of a central 12-cycle W containing four new vertices w1,w2,w3,w4 and two “crossing” unit demands {w1,w3}, {w2,w4}. We increase the capacity of the four copies of {t41,s01} by one unit, and then assign one unit of capacity to the remaining edges of W. By Lemma 22, we can assume that the demands {s11,t11} and {s31,t31} of each of these copies are routed to the left; otherwise, the capacity of some edge within the corresponding copy is exceeded by at least 1+n1+3n. We can then argue that {w1,w3}, {w2,w4}, together with the demands {s11,t11}, {s31,t31} of one of the four copies of 𝒥, must exceed the capacity of some edge by at least 1+n1+3n. We provide a formal proof for completeness.

Consider four vertex-disjoint copies {𝒥(θ)=(Gθ,uθ,Hθ,dθ)}θ{a,b,c,r} of 𝒥. To simplify notation, we use tθ and sθ to denote the copies of nodes t41 and s01 in 𝒥(θ), respectively. Consider the 12-cycle

W=w1,ta,sa,w2,tb,sb,w3,tc,sc,w4,tr,sr,w1.

Consider the following instance =(G,u,H,d).

Vertex set: V={w1,w2,w3,w4}θ{a,b,c,r}V(Gθ).
Supply edges: E(G)=E(W)θ{a,b,c,r}(E(Gθ){{tθ,sθ}}).
Demand edges: E(H)={{w1,w3},{w2,w4}}θ{a,b,c,r}E(Hθ).
Capacities: u(e)=uθ(e),θ{a,b,c,r},eE(Gθ){{tθ,sθ}}.
u(tθ,sθ)=1+uθ(tθ,sθ)=3n1+3n,θ{a,b,c,r}.
u(e)=1,eE(W){{tθ,sθ}:θ=a,b,c,r}.
Demands: d(h)=dθ(h),θ{a,b,c,r},hE(Hθ).
d(w1,w3)=1,d(w2,w4)=1.
Figure 9: The instance that consists of four copies of 𝒥, joined at the cycle W.
Lemma 24.

=(G,u,H,d) is a feasible instance.

Proof.

First, route {w1,w3} (resp. {w2,w4}) by sending 12 units of flow along each of the two w1w3-paths (resp. w2w4-paths) in W. The residual capacity, with respect to u, on each edge eE(Gθ)E(G) is precisely uθ(e), for each θ{a,b,c,r}. Since each instance 𝒥θ is feasible, the remaining demands can be routed within the corresponding copies. It follows that is feasible. We can now prove Theorem 2.

Proof of Theorem 2.

As mentioned at the start of the section, it suffices to show that for any unsplittable flow y of , there exists some eE(G) with y(e)u(e)+1+n1+3n (note that dmax=1). Let P1,3 and P2,4 denote the paths on which y routes {w1,w3} and {w2,w4}, respectively. Then, there exists some i[4] and θ{a,b,c,r} such that {wi,tθ},{sθ,wi+1}P1,3P2,4 (where we interpret w5w1). Suppose without loss of generality (by the symmetry of the instance) that {w1,ta},{sa,w2}P1,3P2,4. Observe that if y routes any demand of E(Ha) on some e{{w1,ta},{sa,w2}}, then

y(e)d(w1,w3)+d(w2,w4)+2n1+3n=2+2n1+3n=u(e)+1+2n1+3n,

where we use the fact that 2n1+3n is the minimum demand value in . Thus, we can assume that y routes every demand in E(Ha) using only the edges of E(Ga). We overload notation and use si1 and ti1 for each i{0,1,2,3,4} to denote the corresponding copies of these nodes of 𝒥 in V(Ga) (note that s01sa and t41ta). Since u(e)=ua(e) for every eE(Ga){{ta,sa}}, Lemma 22 allows us to assume that, in 𝒥a, all demands {s1,t1} and {s3,t3} are routed to the left. In particular, this holds for {s11,t11} and {s31,t31}. Let Q1 and Q3 denote the paths on which y routes {s11,t11} and {s31,t31}, respectively. By the above, {ta,sa}{t41,s01} is contained in Q1Q3. Observe that if {ta,sa} is contained in P1,3P2,4, then

y(ta,sa)d(w1,w3)+d(w2,w4)+d(s11,t11)+d(s31,t31)=4=u(ta,sa)+1+n1+3n.

Thus, we can w.l.o.g. assume that {sa,s11}{s01,s11} is contained in P1,3 (since sa has degree 3). Since y routes {s11,t11} and {s31,t31} to the left, {sa,s11}Q1Q3. It follows that

y(sa,s11)d(w1,w3)+d(s11,t11)+d(s31,t31)=3=u(sa,s11)+1+n1+3n.

References

  • [1] Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, Englewood Cliffs, NJ, 1993.
  • [2] David Alemán Espinosa and Nikhil Kumar. Unsplittable multicommodity flows in outerplanar graphs. In International Conference on Integer Programming and Combinatorial Optimization (IPCO), pages 385–399. Springer, 2025. doi:10.1007/978-3-031-93112-3_28.
  • [3] David Alemán Espinosa, Nikhil Kumar, Joseph Poremba, and Bruce Shepherd. Unsplittable flow cut gap in undirected graphs. In Proceedings of the 2026 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 1570–1605. SIAM, 2026. doi:10.1137/1.9781611978971.57.
  • [4] Yonatan Aumann and Yuval Rabani. An O(logk) approximate min-cut max-flow theorem and approximation algorithm. SIAM Journal on Computing, 27(1):291–301, 1998. doi:10.1137/S0097539794285983.
  • [5] Amit Chakrabarti, Alexander Jaffe, James R. Lee, and Justin Vincent. Embeddings of topological graphs: Lossy invariants, linearization, and 2-sums. In Proceedings of the 49th Annual Symposium on Foundations of Computer Science (FOCS), pages 761–770. IEEE, 2008. doi:10.1109/FOCS.2008.79.
  • [6] Steve Cosares and Iraj Saniee. An optimization problem related to balancing loads on SONET rings. Telecommunication Systems, 3:165–181, 1994. doi:10.1007/BF02110141.
  • [7] Karl Däubel. An improved upper bound for the ring loading problem. SIAM Journal on Discrete Mathematics, 36(2):867–887, 2022. doi:10.1137/20M1319395.
  • [8] Yefim Dinitz, Naveen Garg, and Michel X. Goemans. On the single-source unsplittable flow problem. Combinatorica, 19(1):17–41, 1999. doi:10.1007/s004930050043.
  • [9] Lester R. Ford Jr. and Delbert R. Fulkerson. Maximal flow through a network. Canadian Journal of Mathematics, 8:399–404, 1956. doi:10.4153/CJM-1956-045-5.
  • [10] Lester R. Ford Jr. and Delbert R. Fulkerson. A suggested computation for maximal multi-commodity network flows. Management Science, 5(1):97–101, 1958. doi:10.1287/mnsc.5.1.97.
  • [11] Ralph E. Gomory and Tien Chung Hu. Multi-terminal network flows. Journal of the Society for Industrial and Applied Mathematics, 9(4):551–570, 1961. doi:10.1137/0109047.
  • [12] Jon M. Kleinberg. Single-source unsplittable flow. In Proceedings of the 37th Annual Symposium on Foundations of Computer Science (FOCS), pages 68–77. IEEE, 1996. doi:10.1109/SFCS.1996.548465.
  • [13] Stavros G. Kolliopoulos. Disjoint paths and unsplittable flow. In Handbook of Approximation Algorithms and Metaheuristics, Second Edition, volume 2, chapter 11. Chapman and Hall/CRC, 2018.
  • [14] James R. Lee and Prasad Raghavendra. Coarse differentiation and multi-flows in planar graphs. Discrete & Computational Geometry, 43(2):346–362, 2010. doi:10.1007/s00454-009-9172-4.
  • [15] Nathan Linial, Eran London, and Yuri Rabinovich. The geometry of graphs and some of its algorithmic applications. Combinatorica, 15:215–245, 1995. doi:10.1007/BF01200757.
  • [16] Mohammed Majthoub Almoghrabi, Martin Skutella, and Philipp Warode. Integer and unsplittable multiflows in series-parallel digraphs. In International Conference on Integer Programming and Combinatorial Optimization (IPCO), pages 427–441. Springer, 2025. doi:10.1007/978-3-031-93112-3_31.
  • [17] Maren Martens, Fernanda Salazar, and Martin Skutella. Convex combinations of single source unsplittable flows. In Proceedings of the 15th Annual European Symposium on Algorithms (ESA), volume 4698 of Lecture Notes in Computer Science, pages 395–406, 2007. doi:10.1007/978-3-540-75520-3_36.
  • [18] Sarah Morell and Martin Skutella. Single source unsplittable flows with arc-wise lower and upper bounds. Mathematical Programming, 192(1):477–496, 2022. doi:10.1007/s10107-021-01704-4.
  • [19] Haruko Okamura and Paul D. Seymour. Multicommodity flows in planar graphs. Journal of Combinatorial Theory, Series B, 31(1):75–81, 1981. doi:10.1016/S0095-8956(81)80012-3.
  • [20] Satish Rao. Small distortion and volume preserving embeddings for planar and euclidean metrics. In Proceedings of the Fifteenth Annual Symposium on Computational Geometry (SoCG), pages 300–306. ACM, 1999. doi:10.1145/304893.304983.
  • [21] Alexander Schrijver. Combinatorial Optimization: Polyhedra and Efficiency, volume 24. Springer, 2003.
  • [22] Alexander Schrijver, Paul D. Seymour, and Peter Winkler. The ring loading problem. SIAM Journal on Discrete Mathematics, 11(1):1–14, 1998. doi:10.1137/S0895480195294994.
  • [23] Paul D. Seymour. On odd cuts and plane multicommodity flows. Proceedings of the London Mathematical Society, s3-42:178–192, 1981. doi:10.1112/plms/s3-42.1.178.
  • [24] Richard Shapley and David B. Shmoys. Small additive error for unsplittable multicommodity flow in outerplanar graphs. In Proceedings of the 22nd International Workshop on Approximation and Online Algorithms (WAOA), pages 167–182, 2024. doi:10.1007/978-3-031-81396-2_12.
  • [25] Martin Skutella. Approximating the single source unsplittable min-cost flow problem. Mathematical Programming, 91:493–514, 2002. doi:10.1007/s101070100260.
  • [26] Martin Skutella. A note on the ring loading problem. SIAM Journal on Discrete Mathematics, 30(1):327–342, 2016. doi:10.1137/14099588X.
  • [27] Chaitanya Swamy, Vera Traub, Laura Vargas Koch, and Rico Zenklusen. Unsplittable cost flows from unweighted error-bounded variants. In 2026 SIAM Symposium on Simplicity in Algorithms (SOSA), pages 512–523. SIAM, 2026. doi:10.1137/1.9781611978964.42.
  • [28] Vera Traub, Laura Vargas Koch, and Rico Zenklusen. Single-source unsplittable flows in planar graphs. In Proceedings of the 2024 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 639–668. SIAM, 2024. doi:10.1137/1.9781611977912.24.