Fast Polynomial-Space Algorithms Using Möbius Inversion: Improving on Steiner Tree and Related Problems
Fast Polynomial-Space Algorithms Using Möbius Inversion: Improving on Steiner Tree and Related Problems
复制标题
使用莫比乌斯反演的快速多项式空间算法:斯坦纳树及相关问题的改进
DOI:
10.1007/978-3-642-02927-1_59
复制
发表时间:
2009
期刊:
影响因子:
--
通讯作者:
Jesper Nederlof
中科院分区:
文献类型:
--
作者:
Jesper Nederlof
Given a graph with n vertices, k terminals and bounded integer weights on the edges, we compute the minimum Steiner Tree in ${\mathcal{O}^*}(2^k)$ time and polynomial space, where the ${\mathcal{O}^*}$ notation omits poly (n ,k ) factors. Among our results are also polynomial-space $\mathcal{O}^*(2^n)$ algorithms for several ${\mathcal{NP}}$-complete spanning tree and partition problems.
The previous fastest known algorithms for these problems use the technique of dynamic programming among subsets, and require exponential space. We introduce the concept of branching walks and extend the Inclusion-Exclusion algorithm of Karp for counting Hamiltonian paths. Moreover, we show that our algorithms can also be obtained by applying Mobius inversion on the recurrences used for the dynamic programming algorithms.