In the Directed Steiner Tree (DST) problem we are given an n-vertex
directed edge-weighted graph, a root r, and a collection of k terminal
nodes. Our goal is to find a minimum-cost arborescence that contains a directed
path from r to every terminal. We present an O(log2k/loglogk)-approximation algorithm for DST that runs in
quasi-polynomial-time. By adjusting the parameters in the hardness result of
Halperin and Krauthgamer, we show the matching lower bound of
Ω(log2k/loglogk) for the class of quasi-polynomial-time
algorithms. This is the first improvement on the DST problem since the
classical quasi-polynomial-time O(log3k) approximation algorithm by
Charikar et al. (The paper erroneously claims an O(log2k) approximation due
to a mistake in prior work.)
Our approach is based on two main ingredients. First, we derive an
approximation preserving reduction to the Label-Consistent Subtree (LCST)
problem. The LCST instance has quasi-polynomial size and logarithmic height. We
remark that, in contrast, Zelikovsky's heigh-reduction theorem used in all
prior work on DST achieves a reduction to a tree instance of the related Group
Steiner Tree (GST) problem of similar height, however losing a logarithmic
factor in the approximation ratio. Our second ingredient is an LP-rounding
algorithm to approximately solve LCST instances, which is inspired by the
framework developed by Rothvo{\ss}. We consider a Sherali-Adams lifting of a
proper LP relaxation of LCST. Our rounding algorithm proceeds level by level
from the root to the leaves, rounding and conditioning each time on a proper
subset of label variables. A small enough (namely, polylogarithmic) number of
Sherali-Adams lifting levels is sufficient to condition up to the leaves