A branch-and-cut method for the bi-objective bi-dimensional knapsack problem
Résumé
Multi-objective multi-dimensional knapsack problems (pOmDKP) are widely used to represent practical problems as capital budgeting or allocating processors. It aims to select a subset of n items such that the sum of weight of the selected items does not exceed the capacity on any of the m dimensions, while maximizing p objective functions. Each item has a weight on each dimension and a profit for each objective function. This problem is known for being particularly difficult as soon as the number of dimensions exceeds one, even in its single-objective version.
There are many published papers focusing on the exact solution of multi-objective single-dimensional knapsack. The solutions methods are often two-phases methods. The second phase is either a branch-and-bound method (as in [1] for the bi-objective case or in [2] for the three-objective case), either a dynamic programming method [3], or a dedicated ranking method [2].
Only a few works have studied exactly the multi-objective multi-dimensional case. Concerning the single-objective multi-dimensional knapsack problem, many works have investigated cutting inequalities to speed-up the computation of solution [4].
In this work we are interested in the exact solution of the bi-objective bi-dimensional knapsack problem (2O2DKP), using a branch-and-cut method. A branch-and-cut method is a combination of a cutting plane method and a branch-and-bound method. According to its name, one of the main component of a branch-and-bound method aims at computing bounds of the problem. Convex relaxation has been a key component for successful bi-objective branch-and-bound algorithm (see for example [5]). It defines indeed a tight upper bound set, which can be computed easily if the single-objective version of the problem can be solved in (pseudo-)polynomial time. However, this is not the case for 2O2DKP. On the contrary, the linear relaxation remains relatively easy to compute, but the resulting bound set is less tight, which makes more difficult the exploration of nodes and leads to larger search-trees.
To improve the quality of the upper bound set based on linear relaxation, we introduce cover inequalities at each node of the branch-and-bound method, turning it to a branch-and-cut method. Cover inequalities consist of cuts defined for single-objective binary problems [6]. A cover is a set of objects such that the sum of the weights associated to these objects exceeds the capacity. In [6], the authors remark that computing all possible cover inequalities would be time-consuming and even impossible to implement. Instead, they consider the optimal solution of the linear relaxation and solve a smaller binary problem to find a cover inequality that is violated. In the bi-objective context, the linear relaxation is described by a set of extreme points, which are associated to efficient solutions. Moreover, each of these efficient solutions may be fractional and have a different subset of fractional variables. The generation of cover inequalities is therefore more complex, particularly to get a good tradeoff between quality of the improved upper bound set defined and computational time. This leads to numerous strategies to generate cover inequalities.
This presentation will describe the mechanisms used in the multi-objective branch-and-cut method that we have developed (separation procedure, bound sets, generation of cover inequalities...). These strategies have been then experimentally validated.
[1] Visée, M., Teghem, J., Pirlot, M., Ulungu, E. L., March 1998. Two-phases method and branch and bound procedures to solve the bi–objective knapsack problem. Journal of Global Optimization 12, 139–155.
[2] Jorge, J., May 2010. Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires. Thèse, Université de Nantes.
[3] Delort, C., Spanjaard, O., 2010. Using bound sets in multiobjective optimization: Application to the biobjective binary knapsack problem. In: Festa, P. (Ed.), SEA. Vol 6049 of Lecture Notes in Computer Science. Springer, 253-265.
[4] Osorio, M. A., Glover, F., Hammer, P., 2002. Cutting and surrogate constraint analysis for improved multidimensional knapsack solutions. Annals of Operations Research 117 (1-4), 71–93.
[5] Sourd F. and Spanjaard O., 2008. A multi-objective branch-and bound framework: Application to the biobjective spanning tree problem. INFORMS Journal on Computing, 20:472-484.
[6] Crowder, H., Johnson, E. L., Padberg, M. W., 1983. Solving large-scale zero-one linear programming problems. Operations Research 31 (5), 803–834.