Engineering Papers⌕ Search

Engineering topics

Sanders, Geoffrey

Publications and source records attributed to Sanders, Geoffrey.

Vectorization of Dynamic Subgraphs via Generative Models (Final Report)

An important class of data analysis tasks stem from comparing subsets of connected records within massive sets of complex relational data. A common approach is to represent each set of connected records with a small graph, or set of data entities (graph vertices) and their relationships (graph edges), and efficient methods to gauge similarity for pairs of graphs are of high interest. This project concentrated on dynamic graphs, where each edge record has an associated timestamp denoting the time of observation. Pre-existing techniques for comparing dynamic graphs concentrate on either computing graph edit distance (number of vertex and edge deletion, addition, and timestamp modifications) or vectorizing the graph with counts of a limited set of dynamic graph motifs (tiny fundamental subgraphs) and computing distances between the vectors. These approaches are less able to see similarities in graphs that are fairly different in size but come from identical graph generation processes. The motif counting approach can be improved for graphs from the same process, but suffers from requiring many types of motifs meaning it is expensive. Moreover, many motifs are not present for small graphs, meaning realizing a a much larger graph came from the same process is difficult.

97 MATHEMATICS AND COMPUTING↗

Distributed approximate minimal Steiner trees with millions of seed vertices on billion-edge graphs

In this report, we present a parallel 2-approximation Steiner minimal tree algorithm and its MPI-based distributed implementation. In place of expensive distance computations between all pairs of seed vertices, the solution we employ exploits a cheaper Voronoi cell computation. Our design leverages asynchronous processing and message prioritization to accelerate convergence of distance computations, and harnesses vertex and edge centric processing to offer fast time-to-solution. We demonstrate scalability and performance using real-world graphs with up to 128 billion edges and 512 compute nodes, and show the ability to find Steiner trees with up to one million seed vertices. Using 12 data instances, we present comparison with the state-of-the-art exact solver, SCIP-Jack, and two sequential 2-approximate algorithms. We empirically show that, on average, the total distance of the Steiner tree identified by our solution is 1.1290 times greater than the Steiner minimal tree – well within the theoretical approximation bound of 2.

97 MATHEMATICS AND COMPUTING↗