Towards Distributed 2-Approximation Steiner Minimal Trees in Billion-edge Graphs

05/28/2022
by   Tahsin Reza, et al.
0

Given an edge-weighted graph and a set of known seed vertices, a network scientist often desires to understand the graph relationships to explain connections between the seed vertices. When the seed set is 3 or larger Steiner minimal tree - min-weight acyclic connected subgraph (of the input graph) that contains all the seed vertices - is an attractive generalization of shortest weighted paths. In general, computing a Steiner minimal tree is NP-hard, but several polynomial-time algorithms have been designed and proven to yield Steiner trees whose total weight is bounded within 2 times the Steiner minimal tree. In this paper, we present a parallel 2-approximation Steiner minimal tree algorithm and its MPI-based distributed implementation. In place of distance computation between all pairs of seed vertices, an expensive phase in many algorithms, our solution exploits Voronoi cell computation. Also, this approach has higher parallel efficiency than others that involve minimum spanning tree computation on the entire graph. Furthermore, our distributed design exploits asynchronous processing and a message prioritization scheme to accelerate convergence of distance computation, and harnesses both vertex and edge centric processing to offer fast time-to-solution. We demonstrate scalability and performance of our solution using real-world graphs with up to 128 billion edges and 512 compute nodes (8K processes). We compare our solution with the state-of-the-art exact Steiner minimal tree solver, SCIP-Jack, and two serial algorithms. Our solution comfortably outperforms these related works on graphs with 10s million edges and offers decent strong scaling - up to 90 We empirically show that, on average, the total distance of the Steiner tree identified by our solution is 1.0527 times greater than the Steiner minimal tree - well within the theoretical bound of less than equal to 2.

READ FULL TEXT

page 1

page 7

page 8

research
10/30/2020

Monitoring the edges of a graph using distances

We introduce a new graph-theoretic concept in the area of network monito...
research
08/07/2021

An output-sensitive algorithm for all-pairs shortest paths in directed acyclic graphs

A straightforward dynamic programming method for the single-source short...
research
06/22/2020

Better approximation algorithms for maximum weight internal spanning trees in cubic graphs and claw-free graphs

Given a connected vertex-weighted graph G, the maximum weight internal s...
research
10/22/2020

Polynomial Delay Enumeration for Minimal Steiner Problems

Let G = (V, E) be a undirected graph and let W ⊆ V be a set of terminals...
research
02/12/2019

Performance of All-Pairs Shortest-Paths Solvers with Apache Spark

Algorithms for computing All-Pairs Shortest-Paths (APSP) are critical bu...
research
02/07/2023

Two Parallel PageRank Algorithms via Improving Forward Push

Initially used to rank web pages, PageRank has now been applied in many ...
research
09/16/2020

Characterizing Attitudinal Network Graphs through Frustration Cloud

Attitudinal Network Graphs (ANG) are network graphs where edges capture ...

Please sign up or login with your details

Forgot password? Click here to reset