Table of Contents
Fetching ...

A Partition-and-Merge Algorithm for Solving the Steiner Tree Problem in Large Graphs

Ming Sun, Xinyu Wu, Yi Zhou, Jin-Kao Hao, Zhang-Hua Fu

TL;DR

The paper tackles the Steiner tree problem on large graphs by introducing Partition-and-Merge (PM), a Voronoi-based partitioning strategy that builds partial solutions in small subgraphs and then merges them bottom-up with two phases. It integrates multiple merging heuristics, a solution-storing reweighting mechanism, and a population-based local optimization to guide search, achieving high-quality solutions on very large instances. Empirical results on 113 large instances and 30 DIMACS instances show PM outperforms leading heuristics on large GEO/I/EFST graphs and remains competitive on standard benchmarks, with merging-rule choice (random-edge or min-distance) significantly impacting performance. The approach is naturally parallelizable due to independent subgraph optimizations, offering practical scalability for real-world large-scale STP applications.

Abstract

The Steiner tree problem aims to determine a minimum edge-weighted tree that spans a given set of terminal vertices from a given graph. In the past decade, a considerable number of algorithms have been developed to solve this computationally challenging problem. However, existing algorithms typically encounter difficulties for solving large instances, i.e., graphs with a high number of vertices and terminals. In this paper, we present a novel partition-and-merge algorithm to effectively solve this problem in large graphs. The algorithm breaks the input network into small subgraphs and then merges the subgraphs in a bottom-up manner. In the merging procedure, partial Steiner trees in the subgraphs are also created and optimized by efficient local optimization. When the merging procedure ends, the algorithm terminates and reports the final solution for the input graph. We evaluated the algorithm on a wide range of benchmark instances, showing that the algorithm outperforms the best-known algorithms on large instances and competes favorably with them on small or medium-sized instances.

A Partition-and-Merge Algorithm for Solving the Steiner Tree Problem in Large Graphs

TL;DR

The paper tackles the Steiner tree problem on large graphs by introducing Partition-and-Merge (PM), a Voronoi-based partitioning strategy that builds partial solutions in small subgraphs and then merges them bottom-up with two phases. It integrates multiple merging heuristics, a solution-storing reweighting mechanism, and a population-based local optimization to guide search, achieving high-quality solutions on very large instances. Empirical results on 113 large instances and 30 DIMACS instances show PM outperforms leading heuristics on large GEO/I/EFST graphs and remains competitive on standard benchmarks, with merging-rule choice (random-edge or min-distance) significantly impacting performance. The approach is naturally parallelizable due to independent subgraph optimizations, offering practical scalability for real-world large-scale STP applications.

Abstract

The Steiner tree problem aims to determine a minimum edge-weighted tree that spans a given set of terminal vertices from a given graph. In the past decade, a considerable number of algorithms have been developed to solve this computationally challenging problem. However, existing algorithms typically encounter difficulties for solving large instances, i.e., graphs with a high number of vertices and terminals. In this paper, we present a novel partition-and-merge algorithm to effectively solve this problem in large graphs. The algorithm breaks the input network into small subgraphs and then merges the subgraphs in a bottom-up manner. In the merging procedure, partial Steiner trees in the subgraphs are also created and optimized by efficient local optimization. When the merging procedure ends, the algorithm terminates and reports the final solution for the input graph. We evaluated the algorithm on a wide range of benchmark instances, showing that the algorithm outperforms the best-known algorithms on large instances and competes favorably with them on small or medium-sized instances.
Paper Structure (17 sections, 1 equation, 2 figures, 4 tables, 2 algorithms)

This paper contains 17 sections, 1 equation, 2 figures, 4 tables, 2 algorithms.

Figures (2)

  • Figure 1: The bottom-up partition-and-merge procedure. Terminal vertices are marked by black dots. The sub-solutions computed for subgraphs are marked by bold lines.
  • Figure 2: Example for three merging rules. $G_1-G_4$ are four subgraphs. Lines connecting the subgraphs represent the cutting edges between subgraphs. The minimum distance between the terminals of each two subgraphs is shown in the right-side of the figure.