Abstract

We present a new branch-and-bound algorithm for the Quadratic Multiple Knapsack Problem. A key component of our algorithm is a new upper bound that divides the pairwise item values among individual items, estimates the maximum potential value contributed by each individual item, and calculates the upper bound via a transportation model. A local search is used to adjust the division of pairwise item values in order to improve the upper bound. Reduced costs from the solution of the transportation problem are used to forbid some item-to-knapsack assignments. Information from the upper bound is also used in selecting the item to branch on next. Computational experiments are carried out on three sets of benchmark instances from the literature, two sets of smaller instances with 20–35 items and 3–10 knapsacks per instance, and one set of larger instances with 40–60 items and 3–10 knapsacks per instance. Our algorithm finds and verifies optimal solutions for all small benchmark instances in less than one hour of CPU time apiece and outperforms the best previously proposed algorithms for the problem in terms of both the average computation time and the number of instances for which optimality is verified. For the larger benchmark instances, our algorithm obtains smaller average gaps than the best previously proposed methods.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call