Dynamic Programming Revisited: Improving Knapsack Algorithms

被引:0
|
作者
U. Pferschy
机构
[1] Department of Statistics and Operations Research,
[2] University of Graz,undefined
[3] Universitätsstr. 15,undefined
[4] A-8010 Graz,undefined
[5] Austria,undefined
[6] e-mail: pferschy@kfunigraz.ac.at ,undefined
来源
Computing | 1999年 / 63卷
关键词
AMS Subject Classifications:90C10, 90C39.; Key words.Knapsack, bounded knapsack, dynamic programming.;
D O I
暂无
中图分类号
学科分类号
摘要
The contribution of this paper is twofold: At first an improved dynamic programming algorithm for the bounded knapsack problem is given. It decreases the running time for an instance with n items and capacity c from \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$O(nc\log c)$\end{document} to \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$O(nc)$\end{document}, which is the same pseudopolynomial complexity as usually given for the 0--1 knapsack problem. In the second part a general approach based on dynamic programming is presented to reduce the storage requirements for combinatorial optimization problems where it is computationally more expensive to compute the explicit solution structure than the optimal solution value. Among other applications of this scheme it is shown that the 0--1 knapsack problem as well as the bounded knapsack problem can be solved in \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$O(nc)$\end{document} time and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$O(n+c)$\end{document} space.
引用
收藏
页码:419 / 430
页数:11
相关论文
共 50 条