Weakly Approximating Knapsack in Subquadratic Time
Lin Chen, Jiayi Lian, Yuchen Mao, Guochuan Zhang
TL;DR
The paper studies weakly approximating Knapsack by simultaneously relaxing profit and capacity, aiming for weight $\le (1+\varepsilon)t$ and profit $\ge OPT/(1+\varepsilon)$. It develops a hybrid approach that leverages efficiency-based grouping, proximity bounds on item selections, and Subset Sum subroutines, with a merge step implemented via bounded monotone $\min,+$-convolution and 2D-FFT. The main result is the first truly subquadratic-time weak approximation for Knapsack, achieving $\tilde{O}(n + (1/\varepsilon)^{7/4})$ time with randomized success and high probability. This advances the theory of weak approximations for Knapsack and extends to Bounded Knapsack via standard reductions, offering new insights for related pseudo-polynomial algorithms under conjectures on convolution hardness.
Abstract
We consider the classic Knapsack problem. Let $t$ and $\mathrm{OPT}$ be the capacity and the optimal value, respectively. If one seeks a solution with total profit at least $\mathrm{OPT}/(1 + \varepsilon)$ and total weight at most $t$, then Knapsack can be solved in $\tilde{O}(n + (\frac{1}{\varepsilon})^2)$ time [Chen, Lian, Mao, and Zhang '24][Mao '24]. This running time is the best possible (up to a logarithmic factor), assuming that $(\min,+)$-convolution cannot be solved in truly subquadratic time [Künnemann, Paturi, and Schneider '17][Cygan, Mucha, Węgrzycki, and Włodarczyk '19]. The same upper and lower bounds hold if one seeks a solution with total profit at least $\mathrm{OPT}$ and total weight at most $(1 + \varepsilon)t$. Therefore, it is natural to ask the following question. If one seeks a solution with total profit at least $\mathrm{OPT}/(1+\varepsilon)$ and total weight at most $(1 + \varepsilon)t$, can Knsapck be solved in $\tilde{O}(n + (\frac{1}{\varepsilon})^{2-δ})$ time for some constant $δ> 0$? We answer this open question affirmatively by proposing an $\tilde{O}(n + (\frac{1}{\varepsilon})^{7/4})$-time algorithm.
