Solving Billion-Scale Knapsack Problems
Abstract
Knapsack problems (KPs) are common in industry, but solving KPs is known to be NP-hard and has been tractable only at a relatively small scale. This paper examines KPs in a slightly generalized form and shows that they can be solved nearly optimally at scale via distributed algorithms. The proposed approach can be implemented fairly easily with off-the-shelf distributed computing frameworks (e.g. MPI, Hadoop, Spark). As an example, our implementation leads to one of the most efficient KP solvers known to date -- capable to solve KPs at an unprecedented scale (e.g., KPs with 1 billion decision variables and 1 billion constraints can be solved within 1 hour). The system has been deployed to production and called on a daily basis, yielding significant business impacts at Ant Financial.
Keywords
Cite
@article{arxiv.2002.00352,
title = {Solving Billion-Scale Knapsack Problems},
author = {Xingwen Zhang and Feng Qi and Zhigang Hua and Shuang Yang},
journal= {arXiv preprint arXiv:2002.00352},
year = {2020}
}