【技术实现步骤摘要】
考虑主观需求的0-1背包问题的求解方法及电子设备
[0001]本专利技术涉及动态规划
,具体涉及一种考虑主观需求的0-1背包问题的求解方法及电子设备。
技术介绍
[0002]背包问题[1](knapsack problem,简称KP),最早由Dantzing与20世纪50年代提出并研究,作为一类经典的组合优化问题,属于NP-hard问题,该问题具有众多的变种,包括0-1背包问题[2]、有界背包问题、多背包问题、多维背包问题[3]、二次背包问题和折扣0-1背包[4]问题等。在资源分配、投资决策、车辆装载、信息公共安全等领域具有重要的理论研究价值与实际应用价值。
[0003]由于背包问题的提出时间较早,各种背包问题的模型都趋于完善,具有较强的适应能力。然而,在常见的背包问题中约束条件一般都是背包的额定容量,即便是较为复杂的折扣0-1背包问题,除了需要考虑编码结构的可行性,其约束条件也同样是背包的额定容量。但在实际生活中,不同的决策者对于同样的问题不仅需要考虑问题本身的约束等客观因素,决策者的自身需求等主观因素同样值得考虑。
[0004]目前,针对背包问题的研究算法主要分成两类:贪心算法[5]、动态规划算法、穷举法等精确算法与遗传算法[6]、蚁群算法[7]、和声搜索算法[8]、蝙蝠算法[9]、狮群算法[10]等近似算法。两类算法各有优劣,在针对不同规模的背包问题时两类算法都能够展现出各自的优势。其中,贪心算法作为一类针对最值问题的经典算法,常被用以解决各类背包问题,但是由于其局部收敛性太强众多学者在使 ...
【技术保护点】
【技术特征摘要】
1.一种考虑主观需求的0-1背包问题的求解方法,其特征在于,所述方法包括以下步骤:S1利用主观需求概念,建立考虑决策者主观需求的0-1背包问题模型;S2利用贪心算子,先考虑主观需求再考虑客观约束,对初始种群进行优化与修正;S3利用局部搜索算子,改进扰动位点的选择方式,实现对局部最优解的扰动;S4将上述算子嵌入到遗传算法得到混合贪心遗传算法;S5利用混合贪心遗传算法对主观需求的0-1背包问题模型进行求解。2.根据权利要求1所述的考虑主观需求的0-1背包问题的求解方法,其特征在于,所述问题模型描述为:给定n个物品,共分为A、B、C三类,每一个物品i都有它的重量w
i
和价值v
i
;已知三类物品的数量分别为a、b、c(a+b+c=n),决策者对这每一类物品的需求上限分别为C
a
、C
b
、C
c
,背包的额定载重为C,三类物品的需求总和超过背包额定载重C,要求在不超过额定限重和各类物品需求上限的前提下,使得装入背包中的所有物品的总价值最大。3.根据权利要求2所述的考虑主观需求的0-1背包问题的求解方法,其特征在于,所述问题型表示如下:问题型表示如下:问题型表示如下:问题型表示如下:问题型表示如下:s.t.C
a
+C
b
+C
c
>C
ꢀꢀ
(6)模型中,目标函数(1)表示最大化装入包中三类物品的总价值;约束式(2),(3),(4)分别表示a,b,c三类物品的需求上限为C
a
、C
b
、C
c
;约束式(5)表示装入包中的三类物品的总重量不得超过背包的额定载重C;约束式(6)表示三类物品的需求上限之和必须超过背包的额定载重;约束式(7)中的x
i
,x
j
,x
k
为决策变量,1表示选择对应物品,0表示不选择对应物品。4.根据权利要求1所述的考虑主观需求的0-1背包问题的求解方法,其特征在于,所述贪心算子优化修正的步骤为:T1分别计算当前解X对应的包内三类物品的重量W
A
、W
B
、W
C
;T2分别对三类物品(A、B、C)进行修复操作,得到中间解X
’
;T3计算中间解X”对应的所有物品总重量W”,确定所有已选物品;T4将所有已选物品按照价值密度递减的顺序进行排列,依次选取放入包内直到满足背
包的容量C;T5将中间解X”的对应二进制位点进行调整,得到最终解。5.根据权利要求4所述的考虑主观需求的0-1背包问题的求解方法,其特征在于,若此类物品的总重量w大于此类物品的需求D,则将已选的物品按照价值密度递减的顺序进行排列,依次选取放入包内直到满足此类物品的需求D,并将当前解X的对应二进制位点进行调整;若此类物品的总重量w小于此类物品的需求D,则将未选的物品按照价值密度递减的顺序进行排列,依次选取放入包内直到满足此类物品的需求D,并将当前解X的对应二进制位点进行调整。6.根据权利要求1所述的考虑主观需求的0-1背包问题的求解方法,其特征在于,所述局部搜索算子包括以下步骤:B1根据局部最优解个体x
best
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。