Even Faster Knapsack via Rectangular Monotone Min-Plus Convolution and Balancing
Karl Bringmann, Anita Dürr, Adam Polak
TL;DR
The paper advances Knapsack algorithms in the pseudopolynomial regime by achieving a near-optimal randomized running time of $\tilde{O}(n + t\sqrt{p_{\max}})$, significantly improving prior bounds that scale with $tp_{\max}$. The key ideas are a convolve-and-partition framework, a novel rectangular bounded monotone max-plus convolution, and a balancing reduction that aligns profit/weight scales to enable efficient subproblem solving. It also provides symmetric trade-offs involving $OPT$ and $w_{\max}$, plus conditional lower bounds via a bounded min-plus convolution verification problem, suggesting the presented times are near-optimal under plausible complexity assumptions. The work introduces techniques that may be of independent interest, including reductions from Knapsack to balanced instances and a one-to-two monotone convolution transfer, with practical implications for fast pseudopolynomial algorithms in related combinatorial optimization problems.
Abstract
We present a pseudopolynomial-time algorithm for the Knapsack problem that has running time $\widetilde{O}(n + t\sqrt{p_{\max}})$, where $n$ is the number of items, $t$ is the knapsack capacity, and $p_{\max}$ is the maximum item profit. This improves over the $\widetilde{O}(n + t \, p_{\max})$-time algorithm based on the convolution and prediction technique by Bateni et al.~(STOC 2018). Moreover, we give some evidence, based on a strengthening of the Min-Plus Convolution Hypothesis, that our running time might be optimal. Our algorithm uses two new technical tools, which might be of independent interest. First, we generalize the $\widetilde{O}(n^{1.5})$-time algorithm for bounded monotone min-plus convolution by Chi et al.~(STOC 2022) to the \emph{rectangular} case where the range of entries can be different from the sequence length. Second, we give a reduction from general knapsack instances to \emph{balanced} instances, where all items have nearly the same profit-to-weight ratio, up to a constant factor. Using these techniques, we can also obtain algorithms that run in time $\widetilde{O}(n + OPT\sqrt{w_{\max}})$, $\widetilde{O}(n + (nw_{\max}p_{\max})^{1/3}t^{2/3})$, and $\widetilde{O}(n + (nw_{\max}p_{\max})^{1/3} OPT^{2/3})$, where $OPT$ is the optimal total profit and $w_{\max}$ is the maximum item weight.
