当前位置:文档之家› 第八章 装箱问题 (第10讲)

第八章 装箱问题 (第10讲)


Go back
问 L(a) L1 ? 未必! 如 (wj a, j 1 n)
Corollary 3.1 Proof :
记 L2 max L(a) 0 a C 2 , a 为整数


则 L2 是装箱问题的最优解的一个下界,且 L2 L1 . L2 为最优解的下界是显然的 . (若证明 L(0) L1 ,则可得 L2 L1 )
wi . 定界法;二是启发式(近似)算法 是它的一个最优解 . i 1
min z yi
i 1 n opt
分支
z

C
(1)
(2)
((BP C BP))
s.t.
w x
x
i 1
n
j 1 n
j ij
Cyi
i 1 n
ij
1
j 1 n
1, xij 1 1 i, ji, j1 yi 0 0 yior 1, 0 xij 0 or 1n . n.
而且存在 zopt ( I ) 任意大的实例 I ,使
17 z FF ( I ) ( zopt ( I ) 1) 10
因而
R
FF
17 . 10
第八章 装箱问题
物品
Example 2 Solution :
I : C = 10
J1
J2
J3
J4
J5
J6
wj
6
7
4
2
8
3
首先,将 J1 放入 B1; 由于 J2 在 B1 中放不下, 所 以将 J2 放入 B2 ,
C
个箱子中第一个物品,因此这两个箱子中物品的总长度
大于 C ,所以前 2k 个箱子中物品的总长度大于 Ck . n zNF ( I ) w Ck 这与 i 矛盾 . 2, 从而 RNF 2. i 1 zopt ( I ) 1 1 1 1 1 1 w , w , , w , , , , , , 4N 考虑实例 I : C = 1, 1 2 2 2 N 2 2 N 2 2 N
§1
装箱问题的描述
Go back
BP 的应用举例:
1.44 7 10.08 10
1、下料问题 轧钢厂生产的线材一般为同一长度, 而用
户所需的线材则可能具有各种不同的尺寸, 如何根据用
户提出的要求,用最少的线材截出所需的定货; 4、生产流水线的平衡问题 给定流水节拍 C , 如何设置 2 、 二维 BP 玻璃厂生产出长宽一定的大的平板玻璃, 最少的工作站,(按一定的紧前约束)沿着流水线将任
箱子 B1,B2,…的长均为 C ,按物品给定的顺序装箱 .
先将 J1 放入 B1,若 w1 w2 C , 则 J2 放入 B1 , 否
则,J2 放入 B2 ; 若 J2 已放入 B2,对于 J3 则依次检查
B1、B2 , 若 B1 能放得下, 则 J3 放入 B1 , 否则查看 B2 , 若 B2 能放得下,则 J3 放入 B2 , 否则启用 B3, J3 放入 B3.
但用户所需玻璃的长宽可能有许多差异,如何根据用 务分配到各工作站上 . 称为带附加优先约束的 BP . 户提出的要求,用最少的平板玻璃截出所需的定货;
3、计算机的存贮问题 BP 是容量限制的工厂选址问题的特例之一 如要把大小不同的共 10.MB 的 文件拷贝到磁盘中去,而每张磁盘的容量为 1. 44 MB ,
最优目标可如何提?
体积 etc . 即二维、三维、…装箱问题;
2、对每个箱子的负荷限制不是常数 C ; 而是 Ci , i 1 n. 3、物品J1,J2,…,Jn 的负荷事先并不知道,来货是 随到随装;即 在线(On-Line)装箱问题; 4、由于场地的限制,在同一时间只能允许一定数量的
箱子停留现场可供使用, etc .
j
则 B1 已放入 J1,J2,…,Jj,将其关闭,将 Jj+1 放入 B2 .
同法进行,直到所有物品装完为止 . 计算复杂性为 O(n).
特点: 1、按物品给定的顺序装箱; 2、关闭原则 .
§3
装箱问题的近似算法 I : C = 10
物品 J1
6
Example 1 Solution :
J2
7
J3
解为:
B1
B2
B4
x11 x22 x33 x34 x45 x56 1 其余为零,zNF ( I ) 5.
第八章 装箱问题
Theorem 3.3
RNF 2
n i
先证 RNF 2 再说明不可改进
Proof : 设 I 为任一实例,zopt ( I ) k. (要证 zNF ( I ) 2k )
是最优解的一个下界 .
第八章 装箱问题
Proof : 仅考虑对 I1,I2,I3中物品的装箱 . I1 I 2 中物品的长度大于C/2 ,
C C-a Note: w 可能小于零 C/2 a


( w j ( I 2 C w j )) 每个物品需单独放入一个箱子, jI jI





当 a = 0 时,I1 , I 2 I3 是所有物品 .
L2 L(0) L1

第八章 装箱问题
§3 装箱问题的近似算法
一、NF ( Next Fit ) 算法 设物品 J1,J2,…,JJ w1,w2,…,wn 对当前要装的物品 只关心具有最大下标的已使 n i的长度分别为 箱子 B1,B2, 的长均为 C ,按物品给定的顺序装箱 . 用过的箱子 B… 能否装得下? 先将 J1 放入 B1, 如果 w1 w2 C 则将 J2 放入 B1 … 能. 则 Ji 放入 Bj ;否 . 关闭 Bj ,Ji 放入新箱子 Bj+1 . 如果 w1 w2 wj C 而 w1 w2 wj wj 1 C
最优化方法
Optimizing Methods
第八章 装箱问题
第八章
装箱问题
§1 装箱问题的描述 §2 装箱问题的最优解值下界 §3 装箱问题的近似算法
第八章 装箱问题
装箱问题(Bin Packing)是一个经典的组合优化
问题,有着广泛的应用,在日常生活中也屡见不鲜 .
§1 装箱问题的描述
设有许多具有同样结构和负荷的箱子 B1,B2,…
有最小标号的箱子 .
计算复杂性为 O(nlogn).
但精度比NF
算法更高
§3
装箱问题的近似算法
Theorem 3.4 Theorem 3.5 对任意实例 I ,
zFF ( I ) 7 . zopt ( I ) 4
7 17 1 4 10 20
17 z FF ( I ) zopt ( I ) 1 10
物品共用箱子,由于放 I2 中物品的 I 2 个箱子的剩余 总长度为
C I2 C wj
jI 2
在最好的情形下,C 被 I3 中的物品全部充满,故剩 下总长度 w
wj C
jI 3
与 中的物品如何? I 2 w 将另外至少 个附加的箱子 C
.
§2
装箱问题的最优解值下界
I3 物品 j C w j a , 2
I 2 物品 j C a w j C



, 2

( w j ( I 2 C w j )) jI 2 L(a) I1 I 2 max 0, jI3 C

3 L(a ) I1 I 2 max 0, . 这就需要 I1 I2 个箱子 2
又 I 3 中每个物品长度至少为 a , 是最优解的一个下界 . 它不能与 I1 中的物品共用箱子, 但可能与 I2 中的
C I1 I2 I3
n ( w j I 2 C ) L(0) 0 I 2 max 0, j 1 C ( w j ( I 2 C w j )) j I 3 max jI 2 L I2 , L LI 1 1 I 2 (2 a ) max I1 I 20, L max 0, 1 C
4
J4
2
J5
8
J6
3
wj
首先,将 J1 放入 B1; 由于 J2 在 B1 中放不下, 所
J1 J2 J3 J4 J5 J6
以关闭 B1 , 将 J2 放入 B2 ,
J3 在 B2 中放不下(不考虑
B1 是否能装), 所以关闭 B2
将 J3 放入 B3,…

J1 J2
J4 J3 B3 J5 J6 B5
min
n
z yi
i 1
n
( BP )
s.t.
w x
x
i 1
j 1 n
j ij

Cyi
i 1 n
(1)
(2)
ij
1
j 1 n
yi 0 or 1, xij 0 or 1
i, j 1 n.
第八章 装箱问题
上述装箱问题是这类问题最早被研究的,也是提
法上最简单的问题,称为一维装箱问题 . 但 BP NP C. 装箱问题的其他一些提法: 1、在装箱时,不仅考虑长度,同时考虑重量或面积、
§2
n w i i 1 Theorem 3.1 BP 最优值的一个下界为 L1 C . a 表示不小于 a 的最小整数 .
装箱问题的最优解值下界
Theorem 3.2 设 a 是任意满足 0 a C 2 的整数,对 BP 的任一实例 I , 记 I1 物品 j w j C a ,
相关主题