数学建模-第七章背包问题.

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。



此时,最优解中 x j 0 所以,该物品事先可去掉;
令 N 1 j N p j 0, w j 0

此时,最优解中 x j 1 所以,该物品事先可去掉;
第七章 背包问题
(3) 若 p j 0 且 wj 0
令 N j N p j 0, w j 0
j 1 j 1
j N 1,2,, n
y j 0 or 1
n
j N 1,2,, n

q wj C
j 1
min
s.t.
u pj yj
j 1
j
n
该问题的实际意义 是求不放在包中的物
w
j 1
n
yj q
品的价值和最小 .
y j 0 or 1
方面有应用,而且常以子问题形式出现在大规模优化问
题中,它的理论与算法具有一定的代表性.
§1 背包问题的描述
背包问题的一般描述为:设有物品集 U u1, u2 ,, un
是一个准备放入容量为 C Z 的背包中的 n 项物品的集
合. 如何选择 U 中的一些物品装入背包,使这些物品的 总重量不超过 C ,且使总价值达到最大?
max z
jN N
x j y j p j p j w j wj
则原问题化为:

p j yj
jN N 1

pj
s.t.
jN N

wj yj C
jN N 1

wj
y j 0 or 1,
j N N
§1
背包问题的描述
§1
背包问题的描述
KP Z NP C重量 w
j
背包问题的数学模型:
max
z pj xj
j 1
n
pj Z
CZ
价值 容量
Baidu Nhomakorabea
( KP )
s.t.
w x
j 1 j
n
j
C
x j 0 or 1
j N 1,2,, n
因为决策变量 x j 0 or 1 ,所以也称 0-1 背包问题. 一般背包问题: x j Z 0
n n( KP )
max
如果在(KP)中,令
max
s.t.
j 1 j 1
x j 1 y j
z pj xj
j j
n
Go back
j 模型的意义 1
z p j p j y j s.t.
n n j j j
w x
j 1
n
C
0 or 1 j C w w y x
s min j wi C i 1
j
物品的序号
……
思路:将物品按价值密度从大到小的顺序放入包内, 记 —— 关键项
§2
背包问题的分支定界法
Theorem 2.1
C(KP) 最优解为
x j 1 j 1 s 1
xs C ws
x j 0 j s 1 n
缺点:需要更多的分支运算 .
第七章 背包问题
考虑 KP 的松弛问题 :?
x j 0,1 x j 0,1
max
z pj xj
j 1
n
C((KP KP)) s.t.
w x
j 1 j
n
C(KP)如何求解?
j
C
第一个放不下的
0 x j 0,1 1 x j N 1,2,, n j


只需在模型中,令 x j 1 y j ,则系数即为大于零了. 综上,对不满足(1)、(2)、(3)的假定,可
作如下处理,使之满足:
对 jN 对 jN

令 x j 1 y j p j p j w j w j
N \ (N 0 N 1 N ) 令
组合优化理论
Combinatorial Optimization Theory
第七章 背包问题
第七章
背包问题
§1 背包问题的描述 §2 背包问题的分支定界法 §3 背包问题的近似算法 §4 0-1背包问题的一些相关问题
第七章 背包问题
物品u j 的重量为 w j Z
价值为 p j Z
背包问题 ( Knapsack Problem ) 是一个有着广泛应 用的组合优化问题,它不仅在投资决策、装载、库存等
§2
背包问题的分支定界法
△ 划分方法的选择 原则是希望分出来的子问题容易被查清,可加快计算 . △ 选哪个活问题先检查 1、先检查最大上界(极大化问题)的活问题 优点:检查子问题较其他规则为少; 缺点:计算机储存量较大 选择的不同,提供了发挥的余地 . 2、先检查最新产生的最大上界的活问题
优点:计算机储存量较少 ;
( General Knapsack Problem )
j N 1,2,, n
第七章 背包问题
为讨论方便,总可假定(相当于标准化):
1、wj 0, p j 0
j 1 ~ n;
2、 wj C
3、
j 1~ n;
实际问题 并非满足
wj C
j 1
n
pn p1 p2 4、 w1 w2 wn 即按价值密度从大到小排列.
其中 C C w j
j 1 s 1
最优解值为
j N 1,2,, n
第七章 背包问题
极大(小)化问题
上(下)界 §2 背包问题的分支定界法
分支定界法 ( Branch and Bound Method ) 的基本 思想在运筹学课程中已介绍,它的重要在于它提出了一
类新的思路(隐枚举法),使得许多原来不好解决的问
题有了解决的可能性。(具有普适性) 这两个原则不易统一,所以可选择不同的松弛问题 △ 确定问题(子问题)的最优值的界 通常是通过求解松弛问题,用松弛问题的解作为界 Note : 松弛问题选择的原则 1、松弛问题要与原问题的最优值尽量接近; 2、松弛问题要尽量容易解 .
§1
背包问题的描述
容量取
对 4 只需 O(nln n)次运算即可; 对3若
C1 C wj
w
j 1
n
j
C
,最优解为 x1 x2 xn 1;
对 2 若 w j C ,则最优解中 x j 0, 事先可去掉; 对 1 分三种情况讨论: (1) 若 p j 0 且 wj 0 (2) 若 p j 0 且 wj 0 令 N 0 j N p j 0, w j 0
相关文档
最新文档