How to pack your items when you have to buy your knapsack
Paper in proceedings, 2013
In this paper we consider a generalization of the classical knapsack problem. While in the standard setting a fixed capacity may not be exceeded by the weight of the chosen items, we replace this hard constraint by a weight-dependent cost function. The objective is to maximize the total profit of the chosten items minus the cost induced by their total weight. We study two natural classes of cost functions, namely convex and concave functions. For the concave case, we show that the problem can be solved in polynomial time; for the convex case we present an FPTAS and a 2-approximation algorithm with the running time of O(n log n), where n is the number of items. Before, only a 3-approximation algorithm was known. We note that our problem with a convex cost function is a special case of maximizing a non-monotone, possibly negative submodular function.