[论文解读] Genetic Algorithm for the 0/1 Multidimensional Knapsack Problem
本文提出了一种针对 0/1 多维背包问题的新型遗传算法,通过在贪心交叉算子中集成迭代计算的拉格朗日乘子,以提升解的质量与收敛速度。通过利用拉格朗日乘子对约束进行加权,并采用基于效用比率的选择过程,该算法在标准基准实例上可在数秒内获得最优或近似最优解,其速度与精度均优于先前的方法。
The 0/1 multidimensional knapsack problem is the 0/1 knapsack problem with m constraints which makes it difficult to solve using traditional methods like dynamic programming or branch and bound algorithms. We present a genetic algorithm for the multidimensional knapsack problem with Java code that is able to solve publicly available instances in a very short computational duration. Our algorithm uses iteratively computed Lagrangian multipliers as constraint weights to augment the greedy algorithm for the multidimensional knapsack problem and uses that information in a greedy crossover in a genetic algorithm. The algorithm uses several other hyperparameters which can be set in the code to control convergence. Our algorithm improves upon the algorithm by Chu and Beasley in that it converges to optimum or near optimum solutions much faster.
研究动机与目标
- 解决使用传统方法(如动态规划或分支定界法)求解 0/1 多维背包问题时面临的计算困难。
- 在收敛速度与解的质量方面超越现有元启发式方法,特别是楚与比斯莱算法。
- 将领域特定知识——具体而言,通过拉格朗日乘子对约束进行加权——整合进遗传算法框架,以建设性地引导搜索过程。
- 开发一种可扩展且可并行化的实现,能够高效求解大规模实例。
提出的方法
- 初始种群通过每个物品以 50% 概率被包含的方式生成,以引入多样性,但同时也可能产生无效解。
- 拉格朗日乘子被迭代计算,并用于对每个约束进行加权,以调整物品的效用比率,反映约束的难度。
- 效用比率计算为利润除以所有约束下(权重 × 拉格朗日乘子)之和,再除以约束数量。
- 贪心交叉算子通过按修改后的效用比率非递增顺序选择物品来构建后代,确保满足所有约束。
- 该算法使用可配置的超参数,如代数数量,可通过代码中的 Constants.java 文件进行调整。
- 该框架使用 Java 和 C++ 实现,支持标准基准数据集,如 ORLIB 和 Weing/Weish/Sento 实例。
实验结果
研究问题
- RQ1基于拉格朗日乘子的约束加权能否使增强后的遗传算法在求解 0/1 多维背包问题时优于现有元启发式方法?
- RQ2通过拉格朗日乘子增强的效用比率引导的贪心交叉如何影响收敛速度与解的质量?
- RQ3该方法在多样化基准实例上在多大程度上能获得最优或近似最优解?
- RQ4该算法能否高效扩展至更大规模的问题实例?是否适合并行化?
主要发现
- 该算法在 100% 的 Weish10、Weish15、Weish20、Weish25 和 Weish30 实例上达到最优解,平均求解时间为 1.5 秒。
- 对于 Weing7 实例(105 个物品,2 个约束),该算法平均在 27.4 秒内获得最优解,但仅在 20 次运行中有 1 次成功。
- Sento1 和 Sento2 实例分别在 4.8 秒和 0.2 秒内完全求解,与最优解的差距为 0%。
- Weing5 和 Weing8 实例分别在 0.6 秒和 2 秒内完全求解,未出现最优性间隙。
- 在 Weish05、Weish10 和 Weish15 实例上,该算法在 20 次运行中有 16 次达到 0% 最优性间隙,表明在小型实例上具有高度可靠性。
- 该方法在收敛速度方面显著优于楚与比斯莱算法,在大多数基准实例上能更快达到最优解。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。