具有单连续变量的背包问题(Knapsack Problem with a single Continuous variable,KPC)是标准0-1背包问题的一个新颖扩展形式,它既是一个NP完全问题,又是一个带有连续变量S的新颖组合优化问题,求解难度非常大.为了快速高效地求解KPC问题...具有单连续变量的背包问题(Knapsack Problem with a single Continuous variable,KPC)是标准0-1背包问题的一个新颖扩展形式,它既是一个NP完全问题,又是一个带有连续变量S的新颖组合优化问题,求解难度非常大.为了快速高效地求解KPC问题,该文提出了利用演化算法求解KPC的新思路,并给出了基于离散差分演化算法求解KPC的两个有效方法.首先,介绍了基本差分演化算法和具有混合编码的二进制差分演化算法(HBDE)的原理,给出了HBDE的算法伪代码描述,并分析了KPC的基本数学模型KPCM1的计算复杂度.然后,在基于降维法消除KPCM1中连续变量S的基础上,建立了KPC的一个新离散数学模型KPCM2;随后在基于贪心策略提出处理不可行解的有效算法基础上,基于单种群HBDE给出了求解KPC的第一个离散演化算法S-HBDE.第三,通过把连续变量S的取值范围划分为两个子区间将KPC分解为两个子问题,并基于降维法建立了KPC的适于并行求解的第二个数学模型KPCM3;在利用贪心策略给出处理子问题不可行解的两个有效算法基础上,基于双种群HBDE提出了求解KPC的第二个离散演化算法B-HBDE.最后,在给出四类大规模KPC实例的基础上,利用S-HBDE和B-HBDE分别求解这些实例,并与近似算法AP-KPC、遗传算法和离散粒子群优化算法的计算结果、耗费时间和稳定性等指标进行比较,比较结果表明S-HBDE和B-HBDE不仅在求解精度和稳定性方面均优于其它3个算法,而且求解速度很快,非常适于在实际应用中快速高效地求解大规模KPC实例.展开更多
具有单连续变量的背包问题(knapsack problem with a single continuous variable,KPC)是标准0-1背包问题的自然推广,在KPC中背包容量不是固定的,因此其求解难度变大。针对现有差分进化(differential evolution,DE)算法在高维KPC实例上...具有单连续变量的背包问题(knapsack problem with a single continuous variable,KPC)是标准0-1背包问题的自然推广,在KPC中背包容量不是固定的,因此其求解难度变大。针对现有差分进化(differential evolution,DE)算法在高维KPC实例上求解精度不够高的不足,提出基于拉马克进化的DE(Lamarckian evolution-based DE,LEDE)算法,将贪心修复优化算子产生的改进遗传给后代,以加快DE算法的收敛速度,提高DE算法在高维KPC实例上的求解精度。同时,在贪心修复优化算子中引入基于价值的贪心优化策略,用于优化使用基于价值密度的贪心修复策略生成的可行解,以帮助算法跳出局部最优。在40个KPC实例上对LEDE算法进行了实验分析,结果表明拉马克进化和基于价值的贪心优化策略能够提高LEDE算法的求精能力,LEDE算法在获得最优解和平均解方面均优于其他智能优化算法。展开更多
文摘具有单连续变量的背包问题(Knapsack Problem with a single Continuous variable,KPC)是标准0-1背包问题的一个新颖扩展形式,它既是一个NP完全问题,又是一个带有连续变量S的新颖组合优化问题,求解难度非常大.为了快速高效地求解KPC问题,该文提出了利用演化算法求解KPC的新思路,并给出了基于离散差分演化算法求解KPC的两个有效方法.首先,介绍了基本差分演化算法和具有混合编码的二进制差分演化算法(HBDE)的原理,给出了HBDE的算法伪代码描述,并分析了KPC的基本数学模型KPCM1的计算复杂度.然后,在基于降维法消除KPCM1中连续变量S的基础上,建立了KPC的一个新离散数学模型KPCM2;随后在基于贪心策略提出处理不可行解的有效算法基础上,基于单种群HBDE给出了求解KPC的第一个离散演化算法S-HBDE.第三,通过把连续变量S的取值范围划分为两个子区间将KPC分解为两个子问题,并基于降维法建立了KPC的适于并行求解的第二个数学模型KPCM3;在利用贪心策略给出处理子问题不可行解的两个有效算法基础上,基于双种群HBDE提出了求解KPC的第二个离散演化算法B-HBDE.最后,在给出四类大规模KPC实例的基础上,利用S-HBDE和B-HBDE分别求解这些实例,并与近似算法AP-KPC、遗传算法和离散粒子群优化算法的计算结果、耗费时间和稳定性等指标进行比较,比较结果表明S-HBDE和B-HBDE不仅在求解精度和稳定性方面均优于其它3个算法,而且求解速度很快,非常适于在实际应用中快速高效地求解大规模KPC实例.
文摘具有单连续变量的背包问题(knapsack problem with a single continuous variable,KPC)是标准0-1背包问题的自然推广,在KPC中背包容量不是固定的,因此其求解难度变大。针对现有差分进化(differential evolution,DE)算法在高维KPC实例上求解精度不够高的不足,提出基于拉马克进化的DE(Lamarckian evolution-based DE,LEDE)算法,将贪心修复优化算子产生的改进遗传给后代,以加快DE算法的收敛速度,提高DE算法在高维KPC实例上的求解精度。同时,在贪心修复优化算子中引入基于价值的贪心优化策略,用于优化使用基于价值密度的贪心修复策略生成的可行解,以帮助算法跳出局部最优。在40个KPC实例上对LEDE算法进行了实验分析,结果表明拉马克进化和基于价值的贪心优化策略能够提高LEDE算法的求精能力,LEDE算法在获得最优解和平均解方面均优于其他智能优化算法。