Abstract 1 Introduction 2 New Lower Bound 3 Approximation Algorithm 4 Open Problems References

Approximation of Spanning Tree Congestion Using Hereditary Bisection

Petr Kolman ORCID Department of Applied Mathematics, Faculty of Mathematics and Physics, Charles University, Prague, Czech Republic
Abstract

The Spanning Tree Congestion (STC) problem is the following NP-hard problem: given a graph G, construct a spanning tree T of G minimizing its maximum edge congestion where the congestion of an edge eT is the number of edges uv in G such that the unique path between u and v in T passes through e; the optimal value for a given graph G is denoted STC(G).

It is known that every spanning tree is an n/2-approximation for the STC problem. A long-standing problem is to design a better approximation algorithm. Our contribution towards this goal is an 𝒪(Δlog3/2n)-approximation algorithm where Δ is the maximum degree in G and n the number of vertices. For graphs with a maximum degree bounded by a polylog of the number of vertices, this is an exponential improvement over the previous best approximation.

Our main tool for the algorithm is a new lower bound on the spanning tree congestion which is of independent interest. Denoting by hb(G) the hereditary bisection of G which is the maximum bisection width over all subgraphs of G, we prove that for every graph G, STC(G)Ω(hb(G)/Δ).

Keywords and phrases:
Spanning Tree Congestion, Bisection, Expansion, Divide and Conquer
Copyright and License:
[Uncaptioned image] © Petr Kolman; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Mathematics of computing Discrete mathematics
; Theory of computation Design and analysis of algorithms
Editors:
Olaf Beyersdorff, Michał Pilipczuk, Elaine Pimentel, and Nguyễn Kim Thắng

1 Introduction

The spanning tree congestion problem has been studied from various viewpoints for more than twenty years, yet our ability to approximate it is still extremely limited. It has been shown that every spanning tree is an n/2-approximation [9] but no o(n)-approximation for general graphs is known. For graphs with ω(nlog2n) edges, Chandran et al. [2] described an algorithm that constructs in polynomial time a spanning tree with congestion at most 𝒪(mn); combined with the trivial lower bound Ω(m/n) on the spanning tree congestion, this yields an 𝒪(n/logn)-approximation. There is also an 𝒪~(n11/(logn+1))-approximation111The Big-O-Tilde notation 𝒪~ ignores logarithmic factors. algorithm for graphs with maximum degree bounded by polylog of the number of vertices [5].

On the hardness side, the strongest known lower bound states that no c-approximation with c smaller than 6/5 is possible unless P=NP [8]. The Ω(n) gap between the best upper and lower bounds is highly unsatisfactory.

For a detailed overview of other related results, we refer to the survey paper by Otachi [9], to our recent paper [5], and to the new paper by Lampis et al. [7] that deals with the STC problem from the perspective of parameterized complexity.

1.1 Our Results

Our contribution in this paper is twofold. We describe an 𝒪(Δlog3/2n)-approximation algorithm for the spanning tree congestion problem where Δ is the maximum degree in G and n the number of vertices. For graphs with maximum degree bounded by Δ=o(n/log3/2n), we get o(n)-approximation; this significantly extends the class of graphs for which sublinear approximation is known, and provides a partial answer to the open problem P2 from our recent paper [5]. Moreover, for graphs with a stronger bound on the maximum degree, the approximation ratio is even better than o(n). For example, for graphs with a maximum degree bounded by polylog of the number of vertices, the approximation is polylogarithmic which is an exponential improvement over the previous best approximation [5].

For graphs excluding any fixed graph as a minor (e.g., planar graphs or bounded genus graphs), we get a slightly better bound of 𝒪(Δlogn) on the approximation ratio.

Our key tool in the algorithm design is a new lower bound on STC(G) which is our second contribution. In the recent paper [5], we proved that STC(G)b(G)Δlogn where b(G) is the bisection of G. We strengthen the bound and prove that STC(G)Ω(hb(G)Δ) where hb(G) is the hereditary bisection of G which is the maximum of b(H) over all subgraphs H of G. This is a corollary of another new lower bound saying that for every subgraph H of G, STC(G)β(H)n3Δ; here β(H) is the expansion of H and n is the number of vertices in H.

1.2 Sketch of the Algorithm

The algorithm uses the standard Divide and Conquer framework and is conceptually very simple: partition the graph by a 23-balanced cut into two or more connected components, solve the problem recursively for each of the components, and arbitrarily combine the spanning trees of the components into a spanning tree of the entire graph. The structure of the algorithm is the same as the structure of our recent o(n)-approximation algorithm [5] for graphs with maximum degree bounded by polylog(n) - there is a minor difference in the tool used in the partitioning step and in the stopping condition for the recursion.

It is far from obvious that the Divide and Conquer approach works for the spanning tree congestion problem. The difficulty is that there is no apparent relation between STC(G) and STC(H) for a subgraph H of G. In the paper [5], we proved that STC(G)STC(H)e(H,GH) where e(H,GH) denotes the number of edges between the subgraph H and the rest of the graph G. Note that the bound is very weak when e(H,GH) is large. Also, note that the bound is tight in the following sense: there exist graphs for which STC(G) and STC(H)e(H,GH) are equal, up to a small multiplicative constant. For example, let G be a graph obtained from a 3-regular expander H on n vertices by adding a new vertex r and connecting it by an edge to every vertex of H. Then STC(H)=Ω(n) (cf. Lemma 4) while STC(G)=O(1) (consider the spanning tree of G consisting only of all the edges adjacent to the new vertex r).

The main reason for the significant improvement of the bound on the approximation ratio of the algorithm is the new lower bound STC(G)Ω(hb(G)Δ) that connects STC(G) and properties of subgraphs of G in a much tighter way. This connection yields a simpler algorithm with better approximation, broader applicability and simpler analysis.

1.3 Preliminaries

For an undirected graph G=(V,E) and a subset of vertices SV, we denote by E(S,VS) the set of edges between S and VS in G, and by e(S,VS)=|E(S,VS)| the number of these edges. An edge {u,v}E is also denoted by uv for notational simplicity. For a subset of vertices SV, G[S] is the subgraph induced by S. By V(G), we mean the vertex set of the graph G and by E(G) its edge set. Given a graph G=(V,E) and an edge eE, Ge is the graph (V,E{e}).

Let G=(V,E) be a connected graph and T=(V,ET) be a spanning tree of G. For an edge uvET, we denote by Su,SvV the vertex sets of the two connected components of Tuv containing u and v, resp. The congestion c(uv) of the edge uv with respect to G and T, is the number of edges in G between Su and Sv. The congestion c(G,T) of the spanning tree T of G is defined as maxeETc(e), and the spanning tree congestion STC(G) of G is defined as the minimum value of c(G,T) over all spanning trees T of G.

A bisection of a graph with n vertices is a partition of its vertices into two sets, S and VS, each of size at most n/2. The width of a bisection (S,VS) is e(S,VS). The minimum width of a bisection of a graph G is denoted b(G). The hereditary bisection width hb(G) is the maximum of b(H) over all subgraphs H of G. In approximation algorithms, the requirement that each of the two parts in a partition of V is of size at most n/2 is sometimes relaxed to 2n/3, or to some other fraction, and then we talk about balanced cuts. In particular, a c-balanced cut is a partition of the graph vertices into two sets, each of size at most cn. The edge expansion of G is

β(G)=minAVe(A,VA)min{|A|,|VA|}. (1)

There are several approximation and pseudo-approximation algorithms for bisection and balanced cuts. In our algorithm, we will employ the algorithm by Arora, Rao and Vazirani [1], and for graphs excluding any fixed graph as a minor (e.g., planar graphs), a slightly stronger algorithm by Klein, Protkin and Rao [4].

Theorem 1 ([1, 4]).

A 2/3-balanced cut of cost within a ratio of 𝒪(logn) of the optimum bisection can be computed in polynomial time. For graphs excluding any fixed graph as a minor, even 𝒪(1) ratio is possible.

We conclude this section with two more statements that will be used later.

Theorem 2 (Jordan [3]).

Given a tree on n vertices, there exists a vertex whose removal partitions the tree into components, each with at most n/2 vertices.

Lemma 3 (Kolman and Matoušek [6]).

Every graph G on n vertices contains a subgraph on at least 2n/3 vertices with edge expansion at least b(G)/n.

2 New Lower Bound

The main result of this section is captured in the following lemma and its corollary.

Lemma 4.

For every graph G=(V,E) on n vertices with maximum degree Δ and every subgraph H of G on n vertices, we have

STC(G) β(H)n3Δ. (2)
Corollary 5.

For every graph G=(V,E) with maximum degree Δ,

STC(G) 2hb(G)9Δ. (3)

Before proving the lemma and its corollary, we state a slight generalization of Theorem 2; for the sake of completeness, we also provide proof of it, though it is a straightforward extension of the standard proof of Theorem 2.

Lemma 6.

Given a tree T on n vertices with nn vertices marked, there exists a vertex (marked or unmarked) whose removal partitions the tree into components, each with at most n/2 marked vertices.

Proof.

Start with an arbitrary vertex v0T and set i=0. We proceed as follows. If the removal of vi partitions the tree into components such that each contains at most n/2 marked vertices, we are done. Otherwise, one of the components, say a component C, has strictly more than n/2 marked vertices. Let vi+1 be the neighbour of vi that belongs to the component C. Note that for every i>0, vi is different from all the vertices v0,v1,,vi1. As the number of vertices in the tree is bounded, eventually, this process has to stop, and we get to a vertex with the desired properties.

Proof of Lemma 4.

Let T be the spanning tree of G with the minimum congestion. By Lemma 6, there exists a vertex zT whose removal partitions the tree T into components, each with at most n/2 verices from H. We organize the components of Tz into two parts so that the total number of vertices from H in the smaller part is at least n/3; such a partition can be found greedily. Let CV(H) be the vertices from H in the smaller part. Then, by the definition of expansion (1), e(C,V(H)C)β(H)n/3. As for each edge uvE(C,V(H)C), the path connecting u and v in T uses at least one edge adjacent to z, we conclude that

STC(G)e(C,V(H)C)Δβ(H)n3Δ.

Proof of Corollary 5.

Consider a subgraph H of G such that b(H)=hb(G). By Lemma 3, there is a subgraph H of H, such that |V(H)|2|V(H)|/3 and β(H)b(H)/|V(H)|. Since H is a subgraph of G, by Lemma 4,

STC(G)β(H)|V(H)|3Δ2b(H)33Δ=2hb(G)9Δ.

3 Approximation Algorithm

Given a connected graph G=(V,E), we construct the spanning tree of G by the recursive algorithm CongSpanTree called on the graph G. In step 3, one of the algorithms of Theorem 1 is used: for general graphs, the algorithm by Arora, Rao and Vazirani [1], for graphs excluding any fixed graph as a minor, the algorithm by Klein, Protkin and Rao; by α(n) we denote the respective pseudo-approximation factor.

Algorithm 1 CongSpanTree(H).
1:if |V(H)|=1 then
2:  return H
3:construct a 23-balanced cut (S,V(H)S) of H
4:FE(S,V(H)S)
5:for each connected component C of HF do
6:  TC CongSpanTree(C)
7:arbitrarily connect all the trees TC by edges from F to form a spanning tree T of H
8:return T

Let τ denote the tree representing the recursive decomposition of G (implicitly) constructed by the algorithm CongSpanTree: The root r of τ corresponds to the graph G, and the children of a non-leaf node tτ associated with a set Vt correspond to the connected components of G[Vt]F where F is the set of edges of the 23-balanced cut of G[Vt] from step 4; by Theorem 1, |F|α(n)b(G[Vt]). We denote by Gt=G[Vt] the subgraph of G induced by the vertex set Vt, by Tt the spanning tree constructed for Gt by the algorithm CongSpanTree. The height h(t) of a tree node tτ is the number of edges on the longest path from t to a leaf in its subtree (i.e., to a leaf that is a descendant of t).

Lemma 7.

Let tτ be a node of the decomposition tree and t1,,tk its children. Then

c(Gt,Tt)maxic(Gti,Tti)+α(n)b(Gt). (4)

Proof.

Let F be the set of edges of the 23-balanced cut of Gt from step 4. We will show that for every edge eE(Tt), its congestion c(e) with respect to Gt and Tt is at most maxic(Gti,Tti)+|F|; as |F|α(n)b(G[Vt]), this will prove the lemma. Recall that E(Tt)i=1kE(Tti)F, as the spanning tree Tt is constructed (step 7) from the spanning trees Tt1,,Ttk and the set F.

Consider first an edge eE(Tt) that belongs to a tree Tti, for some i. The only edges from E(G) that may contribute to the congestion c(e) of e with respect to Gt and Tt are the edges in E(Gti)F; the contribution of the edges in E(Gti) is at most c(Gti,Tti), the contribution of the edges in F is at most |F|. Thus, the congestion c(e) of the edge e with respect to Gt and Tt is at most c(Gti,Tti)+|F|.

Consider now an edge eFE(Tt). As the only edges from E(G) that may contribute to the congestion c(e) of e with respect to Gt and Tt are the edges in F, its congestion is at most |F|.

Thus, for every edge eE(Tt), its congestion with respect to Gt and Tt is at most maxic(Gti,Tti)+|F|, and the proof of the lemma is completed.

Lemma 8.

Let T=CongSpanTree(G). Then

c(G,T)𝒪(α(n)logn)hb(G). (5)

Proof.

For technical reasons, we extend the notion of the spanning tree congestion also to the trivial graph H=({v},) consisting of a single vertex and no edge (and having a single spanning tree TH=H) by defining c(H,TH)=0.

By induction on the height of vertices in the decomposition tree τ, we prove the following auxiliary claim: for every tτ,

c(Gt,Tt)h(t)α(n)hb(G). (6)

Consider first a node tτ of height zero, that is, a node t that is a leaf. Then both sides of (6) are zero and the inequality holds.

Consider now a node tτ such that for all his children the inequality (6) holds. Let t be the child of the node t for which c(Gt,Tt) is the largest among the children of t. Then, as b(Gt)hb(G) by the definition of hb, by Lemma 7 we get

c(Gt,Tt)c(Gt,Tt)+α(n)hb(G).

By the inductive assumption applied on the node t,

c(Gt,Tt)h(t)α(n)hb(G).

Because h(t)+1h(t), the proof of the auxiliary claim is completed.

Observing that the height of the root of the decomposition tree τ is at most 𝒪(logn), as all cuts used by the algorithm are balanced, the proof is completed.

Theorem 9.

Given a graph G with maximum degree Δ, the algorithm CongSpanTree constructs an 𝒪(Δlog3/2n)-approximation of the minimum congestion spanning tree; for graphs excluding any fixed graph as a minor, the approximation is 𝒪(Δlogn).

Proof.

By Corollary 5, for every graph G, Ω(hb(G)/Δ) is a lower bound on STC(G). By Lemma 8, the algorithm CongSpanTree(G) constructs a spanning tree T of congestion at most 𝒪(α(n)logn)hb(G). Combining these two results yields the theorem: c(G,T)𝒪(α(n)logn)hb(G)𝒪(α(n)lognΔ)STC(G). Plugging in the bounds on α(n) from Theorem 1 yields the theorem.

4 Open Problems

The inevitable question is whether it is possible to eliminate the dependency of the approximation ratio of the algorithm on the largest degree Δ in the graph and obtain an o(n)-approximation algorithm for the STC problem for all graphs.

References

  • [1] Sanjeev Arora, Satish Rao, and Umesh V. Vazirani. Expander flows, geometric embeddings and graph partitioning. J. ACM, 56(2):5:1–5:37, 2009. Preliminary version in Proc. of the 40th Annual ACM Symposium on Theory of Computing (STOC), 2004. doi:10.1145/1502793.1502794.
  • [2] L. Sunil Chandran, Yun Kuen Cheung, and Davis Issac. Spanning tree congestion and computation of generalized Györi-Lovász partition. In Proc. of 45th International Colloquium on Automata, Languages, and Programming (ICALP), volume 107 of LIPIcs, pages 32:1–32:14. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2018. doi:10.4230/LIPICS.ICALP.2018.32.
  • [3] Camille Jordan. Sur les assemblages de lignes. Journal für die reine und angewandte Mathematik, 70:185–190, 1869.
  • [4] Philip N. Klein, Serge A. Plotkin, and Satish Rao. Excluded minors, network decomposition, and multicommodity flow. In Proc. of the Twenty-Fifth Annual ACM Symposium on Theory of Computing (STOC), pages 682–690, 1993. doi:10.1145/167088.167261.
  • [5] Petr Kolman. Approximating spanning tree congestion on graphs with polylog degree. In Proc. of International Workshop on Combinatorial Algorithms (IWOCA), pages 497–508, 2024. doi:10.1007/978-3-031-63021-7_38.
  • [6] Petr Kolman and Jiří Matoušek. Crossing number, pair-crossing number, and expansion. Journal of Combinatorial Theory, Series B, 92(1):99–113, 2004. doi:10.1016/j.jctb.2003.09.002.
  • [7] Michael Lampis, Valia Mitsou, Edouard Nemery, Yota Otachi, Manolis Vasilakis, and Daniel Vaz. Parameterized spanning tree congestion, 2024. doi:10.48550/arXiv.2410.08314.
  • [8] Huong Luu and Marek Chrobak. Better hardness results for the minimum spanning tree congestion problem. Algorithmica, pages 1–18, 2024. Preliminary version in Proc. of 17th International Conference and Workshops on Algorithms and Computation (WALCOM), 2023. doi:10.1007/s00453-024-01278-5.
  • [9] Yota Otachi. A survey on spanning tree congestion. In Treewidth, Kernels, and Algorithms: Essays Dedicated to Hans L. Bodlaender on the Occasion of His 60th Birthday, volume 12160 of Lecture Notes in Computer Science, pages 165–172, 2020. doi:10.1007/978-3-030-42071-0_12.