Knapsack is one of the most fundamental problems in theoretical computer science. In the $(1 - \epsilon)$-approximation setting, although there is a fine-grained lower bound of $(n + 1 / \epsilon) ^ {2 - o(1)}$ based on the $(\min, +)$-convolution hypothesis ([K{\"u}nnemann, Paturi and Stefan Schneider, ICALP 2017] and [Cygan, Mucha, Wegrzycki and Wlodarczyk, 2017]), the best algorithm is randomized and runs in $\tilde O\left(n + (\frac{1}{\epsilon})^{11/5}/2^{\Omega(\sqrt{\log(1/\epsilon)})}\right)$ time [Deng, Jin and Mao, SODA 2023], and it remains an important open problem whether an algorithm with a running time that matches the lower bound (up to a sub-polynomial factor) exists. We answer the question positively by showing a deterministic $(1 - \epsilon)$-approximation scheme for knapsack that runs in $\tilde O(n + (1 / \epsilon) ^ {2})$ time. We first extend a known lemma in a recursive way to reduce the problem to $n \epsilon$-additive approximation for $n$ items with profits in $[1, 2)$. Then we give a simple efficient geometry-based algorithm for the reduced problem.
翻译:背包问题是理论计算机科学中最基础的问题之一。在$(1 - \epsilon)$-近似设定下,尽管基于$(\min, +)$-卷积假设存在$(n + 1 / \epsilon) ^ {2 - o(1)}$的精细下界([K{\"u}nnemann, Paturi and Stefan Schneider, ICALP 2017]与[Cygan, Mucha, Wegrzycki and Wlodarczyk, 2017]),但当前最优算法为随机化算法,运行时间为$\tilde O\left(n + (\frac{1}{\epsilon})^{11/5}/2^{\Omega(\sqrt{\log(1/\epsilon)})}\right)$ [Deng, Jin and Mao, SODA 2023]。是否存在运行时间匹配该下界(至多相差亚多项式因子)的算法仍是一个重要开放问题。我们通过提出一个在$\tilde O(n + (1 / \epsilon) ^ {2})$时间内运行的确定性$(1 - \epsilon)$-近似方案,对此问题给出肯定回答。我们首先以递归方式扩展一个已知引理,将问题归约为对利润值在$[1, 2)$间的$n$个物品进行$n \epsilon$-加法近似,随后针对该归约后的问题给出一个简洁高效的基于几何结构的算法。