An NP-Hard combinatorial optimization problem that has significant industrial applications is the Multiple Knapsack Problem. If approximate solution approaches are used to solve the Multiple Knapsack Problem there are no guarantees on solution quality and exact solution approaches can be intricate and challenging to implement. This article demonstrates the iterative use of general-purpose integer programming software (Gurobi) to generate solutions for test problems that are available in the literature. Using the software package Gurobi on a standard PC, we generate in a relatively straightforward manner solutions to these problems in an average of less than a minute that are guaranteed to be within 0.16% of the optimum. This algorithm, called the Simple Sequential Increasing Tolerance (SSIT) algorithm, iteratively increases tolerances in Gurobi to generate a solution that is guaranteed to be close to the optimum in a short time. This solution strategy generates bounded solutions in a timely manner without requiring the coding of a problem-specific algorithm. This approach is attractive to management for solving industrial problems because it is both cost and time effective and guarantees the quality of the generated solutions. Finally, comparing SSIT results for 480 large multiple knapsack problem instances to results using published multiple knapsack problem algorithms demonstrates that SSIT outperforms these specialized algorithms.
Read full abstract