Charles Explorer logo
🇬🇧

Streaming Algorithms for Geometric Steiner Forest

Publication at Faculty of Mathematics and Physics |
2022

Abstract

We consider an important generalization of the Steiner tree problem, the Steiner forest problem, in the Euclidean plane: the input is a multiset X SUBSET OF OR EQUAL TO   ℝ2, partitioned into k color classes C1, C2,..., Ck SUBSET OF OR EQUAL TO   X. The goal is to find a minimum-cost Euclidean graph G such that every color class Ci is connected in G.

We study this Steiner forest problem in the streaming setting, where the stream consists of insertions and deletions of points to X. Each input point x ELEMENT OF X arrives with its color color(x) ELEMENT OF [k], and as usual for dynamic geometric streams, the input is restricted to the discrete grid {0,..., INCREMENT }2.

We design a single-pass streaming algorithm that uses poly(k . log INCREMENT ) space and time, and estimates the cost of an optimal Steiner forest solution within ratio arbitrarily close to the famous Euclidean Steiner ratio α2 (currently 1.1547 <= α2 <= 1.214). This approximation guarantee matches the state of the art bound for streaming Steiner tree, i.e., when k = 1.

Our approach relies on a novel combination of streaming techniques, like sampling and linear sketching, with the classical Arora-style dynamic-programming framework for geometric optimization problems, which usually requires large memory and has so far not been applied in the streaming setting. We complement our streaming algorithm for the Steiner forest problem with simple arguments showing that any finite approximation requires Ω(k) bits of space. (C) Artur Czumaj, Shaofeng H.-C.

Jiang, Robert Krauthgamer, and Pavel Veselý; licensed under Creative Commons License CC-BY 4.0