Maximizing the Number of Spanning Trees in a Connected Graph

by   Huan Li, et al.
Rensselaer Polytechnic Institute
FUDAN University

We study the problem of maximizing the number of spanning trees in a connected graph by adding at most k edges from a given candidate edge set. We give both algorithmic and hardness results for this problem: - We give a greedy algorithm that, using submodularity, obtains an approximation ratio of (1 - 1/e - ϵ) in the exponent of the number of spanning trees for any ϵ > 0 in time Õ(m ϵ^-1 + (n + q) ϵ^-3), where m and q is the number of edges in the original graph and the candidate edge set, respectively. Our running time is optimal with respect to the input size up to logarithmic factors, and substantially improves upon the O(n^3) running time of the previous proposed greedy algorithm with approximation ratio (1 - 1/e) in the exponent. Notably, the independence of our running time of k is novel, comparing to conventional top-k selections on graphs that usually run in Ω(mk) time. A key ingredient of our greedy algorithm is a routine for maintaining effective resistances under edge additions in an online-offline hybrid setting. - We show the exponential inapproximability of this problem by proving that there exists a constant c > 0 such that it is NP-hard to approximate the optimum number of spanning trees in the exponent within (1 - c). This inapproximability result follows from a reduction from the minimum path cover in undirected graphs, whose hardness again follows from the constant inapproximability of the Traveling Salesman Problem (TSP) with distances 1 and 2. Thus, the approximation ratio of our algorithm is also optimal up to a constant factor in the exponent. To our knowledge, this is the first hardness of approximation result for maximizing the number of spanning trees in a graph, or equivalently, by Kirchhoff's matrix-tree theorem, maximizing the determinant of an SDDM matrix.


page 1

page 2

page 3

page 4


Edge Disjoint Spanning Trees in an Undirected Graph with E=2(V-1)

Given a connected undirected graph G = [V; E] where |E| =2(|V| -1), we p...

Better Hardness Results for the Minimum Spanning Tree Congestion Problem

In the spanning tree congestion problem, given a connected graph G, the ...

Approximating k-Edge-Connected Spanning Subgraphs via a Near-Linear Time LP Solver

In the k-edge-connected spanning subgraph (kECSS) problem, our goal is t...

Multiagent MST Cover: Pleasing All Optimally via A Simple Voting Rule

Given a connected graph on whose edges we can build roads to connect the...

Pivot Gray Codes for the Spanning Trees of a Graph ft. the Fan

We consider the problem of listing all spanning trees of a graph G such ...

Efficient Sampling of Dependency Structures

Probabilistic distributions over spanning trees in directed graphs are a...

Edge-Linear First-Order Dependency Parsing with Undirected Minimum Spanning Tree Inference

The run time complexity of state-of-the-art inference algorithms in grap...

Please sign up or login with your details

Forgot password? Click here to reset