Nearly ETH-Tight Algorithms for Planar Steiner Tree with Terminals on Few Faces
The Planar Steiner Tree problem is one of the most fundamental NP-complete problems as it models many network design problems. Recall that an instance of this problem consists of a graph with edge weights, and a subset of vertices (often called terminals); the goal is to find a subtree of the graph of minimum total weight that connects all terminals. A seminal paper by Erickson et al. [Math. Oper. Res., 1987] considers instances where the underlying graph is planar and all terminals can be covered by the boundary of k faces. Erickson et al. show that the problem can be solved by an algorithm using n^O(k) time and n^O(k) space, where n denotes the number of vertices of the input graph. In the past 30 years there has been no significant improvement of this algorithm, despite several efforts. In this work, we give an algorithm for Planar Steiner Tree with running time 2^O(k) n^O(√(k)) using only polynomial space. Furthermore, we show that the running time of our algorithm is almost tight: we prove that there is no f(k)n^o(√(k)) algorithm for Planar Steiner Tree for any computable function f, unless the Exponential Time Hypothesis fails.
READ FULL TEXT