Abstract
Post-optimal analysis is the task of understanding the behavior of the solution of a problem due to changes in the data. Frequently, post-optimal analysis is as important as obtaining the optimal solution itself. Post-optimal analysis for linear programming problems is well established and widely used. However, for integer programming problems the task is much more computationally demanding, and various approaches based on branch-and-bound or cutting planes have been presented. In the present paper, we study how much coefficients in the original problem can vary without changing the optimal solution vector, the so-called tolerance analysis. We show how to perform exact tolerance analysis for the 0–1 knapsack problem with integer coefficients in amortized time O(clog n) for each item, where n is the number of items, and c is the capacity of the knapsack. Amortized running times report the time used for each item, when calculating tolerance limits of all items. Exact tolerance limits are the widest possible intervals, while approximate tolerance limits may be suboptimal. We show how various upper bounds can be used to determine approximate tolerance limits in time O(log n) or O(1) per item using the Dantzig bound and Dembo–Hammer bound, respectively. The running times and quality of the tolerance limits of all exact and approximate algorithms are experimentally compared, showing that all tolerance limits can be found in less than a second. The approximate bounds are of good quality for large-sized instances, while it is worth using the exact approach for smaller instances.
Original language | English |
---|---|
Journal | European Journal of Operational Research |
Volume | 258 |
Issue number | 3 |
Pages (from-to) | 866-876 |
Number of pages | 11 |
ISSN | 0377-2217 |
DOIs | |
Publication status | Published - 2017 |
Keywords
- Modeling and Simulation
- Management Science and Operations Research
- Information Systems and Management
- Dynamic programming
- Knapsack problem
- Post-optimal analysis
- Robustness & sensitivity analysis
- Combinatorial optimization
- Fits and tolerances
- Integer programming
- Linear programming
- Optimal systems
- Sensitivity analysis
- Approximate algorithms
- Integer coefficient
- Integer programming problems
- Knapsack problems
- Linear programming problem
- Optimal analysis
- Optimal solutions
- Tolerance analysis