Minimum routing cost spanning tree

In computer science, the minimum routing cost spanning tree of a weighted graph is a spanning tree minimizing the sum of pairwise distances between vertices in the tree. It is also called the optimum distance spanning tree, shortest total path length spanning tree, minimum total distance spanning tree, or minimum average distance spanning tree. In an unweighted graph, this is the spanning tree of minimum Wiener index. writes that the problem of constructing these trees was proposed by Francesco Maffioli.

It is NP-hard to construct it, even for unweighted graphs. However, it has a polynomial-time approximation scheme. The approximation works by choosing a number $$k$$ that depends on the approximation ratio but not on the number of vertices of the input graph, and by searching among all trees with $$k$$ internal nodes.

The minimum routing cost spanning tree of an unweighted interval graph can be constructed in linear time. A polynomial time algorithm is also known for distance-hereditary graphs, weighted so that the weighted distances are hereditary.

Fairness considerations
Several works assume that different people may have different preferences on edges in the graph, and the goal is to find a spanning tree that is "socially" best.


 * Darmann, Klamler and Pferschy present a greedy algorithm that finds such a spanning tree.


 * Escoffier, Gourvès and Monnot study the problem under the egalitarian rule - maximizing the smallest utility of an agent.
 * Galand, Perny and Spanjaard study the problem under the criterion of minimizing the Choquet integral.