第三章 装箱问题ppt课件.ppt
《第三章 装箱问题ppt课件.ppt》由会员分享,可在线阅读,更多相关《第三章 装箱问题ppt课件.ppt(33页珍藏版)》请在三一办公上搜索。
1、第三章 装箱问题,信息处理中的组合优化,Combinatorial Optimization in Information Processing,第三章 装箱问题,1 装箱问题的描述,2 装箱问题的最优解值下界,3 装箱问题的近似算法,第三章 装箱问题,装箱问题(Bin Packing)是一个经典的组合优化问题,有着广泛的应用,在日常生活中也屡见不鲜 .,1 装箱问题的描述,设有许多具有同样结构和负荷的箱子 B1,B2,其数量足够供所达到目的之用 . 每个箱子的负荷(可为长度、重量 etc.)为 C ,今有 n 个负荷为 wj,0 wj C j = 1,2,n 的物品 J1,J2,Jn 需要装
2、入箱内.,装箱问题:,是指寻找一种方法,使得能以最小数量的箱子数将J1,J2,Jn 全部装入箱内.,1 装箱问题的描述,由于 wi C,所以 BP 的最优解的箱子数不超过 n .,设,则装箱问题的整数线性规划模型为:,约束条件(1)表示:一旦箱子 Bi 被使用,放入 Bi 的物品总负荷不超过 C ;,约束条件(2)表示:每个物品恰好放入一个箱子中 .,第三章 装箱问题,上述装箱问题是这类问题最早被研究的,也是提法上最简单的问题,称为一维装箱问题 . 但,装箱问题的其他一些提法:,1、在装箱时,不仅考虑长度,同时考虑重量或面积、 体积 etc . 即二维、三维、装箱问题;,2、对每个箱子的负荷限
3、制不是常数 C ; 而是,最优目标可如何提?,3、物品J1,J2,Jn 的负荷事先并不知道,来货是 随到随装;即 在线(On-Line)装箱问题;,4、由于场地的限制,在同一时间只能允许一定数量的 箱子停留现场可供使用, etc .,1 装箱问题的描述,BP 的应用举例:,1、下料问题 轧钢厂生产的线材一般为同一长度, 而用户所需的线材则可能具有各种不同的尺寸, 如何根据用户提出的要求,用最少的线材截出所需的定货;,2、 二维 BP 玻璃厂生产出长宽一定的大的平板玻璃,但用户所需玻璃的长宽可能有许多差异,如何根据用户提出的要求,用最少的平板玻璃截出所需的定货;,3、计算机的存贮问题 如要把大小
4、不同的共 10 MB 的文件拷贝到磁盘中去,而每张磁盘的容量为 1. 44 MB ,已知每个文件的字节数不超过 1.44 MB , 而且一个文件不能分成几部分存贮,如何用最少的磁盘张数完成 .,4、生产流水线的平衡问题 给定流水节拍 C , 如何设置最少的工作站,(按一定的紧前约束)沿着流水线将任务分配到各工作站上 . 称为带附加优先约束的 BP .,BP 是容量限制的工厂选址问题的特例之一.,Go back,第三章 装箱问题,2 装箱问题的最优解值下界,由于 BP 是 NP-C 问题,所以求解考虑 一是尽可能改进简单的穷举搜索法,减少搜索工作量 . 如: 分支定界法;二是启发式(近似)算法
5、.,显然 是它的一个最优解 .,2 装箱问题的最优解值下界,Theorem 3.1,BP 最优值的一个下界为,表示不小于 a 的最小整数.,Theorem 3.2,设 a 是任意满足 的整数,对 BP 的任一实例 I ,记,则,是最优解的一个下界 .,第三章 装箱问题,a,C,C/2,C-a,I1,I2,I3,Proof :,仅考虑对 I1,I2,I3中物品的装箱 .,中物品的长度大于C/2 ,每个物品需单独放入一个箱子,这就需要 个箱子 .,又 中每个物品长度至少为 a ,但可能与 I2 中的物品共用箱子,,它不能与 I1 中的物品共用箱子,与 I2 中的物品如何?,由于放 I2 中物品的
6、个箱子的剩余总长度为,在最好的情形下, 被 I3 中的物品全部充满,故剩下总长度 将另外至少 个附加的箱子 .,Note: 可能小于零,是最优解的一个下界 .,2 装箱问题的最优解值下界,问 ?,未必!,如,Corollary 3.1,记,则 L2 是装箱问题的最优解的一个下界,且 .,Proof :,L2 为最优解的下界是显然的 .,(若证明 ,则可得 ),当 a = 0 时, 是所有物品 .,Go back,第三章 装箱问题,3 装箱问题的近似算法,一、NF ( Next Fit ) 算法,设物品 J1,J2,,Jn 的长度分别为 w1,w2,,wn箱子 B1,B2,的长均为 C ,按物品
7、给定的顺序装箱 .,先将 J1 放入 B1, 如果 则将 J2 放入 B1 ,如果 而,则 B1 已放入 J1,J2,,Jj,将其关闭,将 Jj+1 放入 B2 .,同法进行,直到所有物品装完为止 .,特点:,1、按物品给定的顺序装箱;,2、关闭原则 .,对当前要装的物品 Ji 只关心具有最大下标的已使用过的箱子 Bj 能否装得下?能. 则 Ji 放入 Bj ;否 . 关闭 Bj ,Ji 放入新箱子 Bj+1 .,计算复杂性为 O(n).,3 装箱问题的近似算法,Example 1,I : C = 10,J1,J5,J6,J4,J3,J2,B1,B2,B3,B4,B5,J1,J2,J3,J4,
8、J5,J6,Solution :,首先,将 J1 放入 B1;,由于 J2 在 B1 中放不下, 所以关闭 B1 , 将 J2 放入 B2 ,J3 在 B2 中放不下(不考虑B1 是否能装), 所以关闭 B2将 J3 放入 B3,,解为:,其余为零,,第三章 装箱问题,Theorem 3.3,Proof :,先证再说明不可改进,设 I 为任一实例,,(要证 ),显然,由 得,反证,如果 ,则 对任意 i = 1, 2, k,由于起用第 2i 个箱子是因为第 2i -1 个箱子放不下第2i个箱子中第一个物品,因此这两个箱子中物品的总长度大于 C ,所以前 2k 个箱子中物品的总长度大于 Ck .
9、,这与 矛盾 .,考虑实例 I : C = 1,3 装箱问题的近似算法,二、FF ( First Fit ) 算法,设物品 J1,J2,,Jn 的长度分别为 w1,w2,,wn箱子 B1,B2,的长均为 C ,按物品给定的顺序装箱 .,I : C = 10,用 NF 算法装箱, 当放入 J3 时, 仅看 B2,是否能放入,因 B1 已关闭,参见 EX .1,但事实上,B1 此时是能放得下 J3 的 .,如何修正 NF 算法,先将 J1 放入 B1,若 ,则 J2 放入 B1 , 否,则,J2 放入 B2 ; 若 J2 已放入 B2,对于 J3 则依次检查,B1、B2 , 若 B1 能放得下,
10、则 J3 放入 B1 , 否则查看 B2 ,若 B2 能放得下,则 J3 放入 B2 , 否则启用 B3, J3 放入 B3.,第三章 装箱问题,一般地,J1,,Jj 已放入 B1,,Bi 箱子,对于 Jj+1,则依次检查 B1,B2,,Bi,将 Jj+1 放入首先找到的能放得下的箱子,如果都放不下,则启用箱子 Bi+1 ,将 Jj+1 放入 Bi+1 ,如此继续,直到所有物品装完为止 .,计算复杂性为 O(nlogn).,特点:,1、按物品给定的顺序装箱;,2、对于每个物品 Jj 总是放在能容纳它的具 有最小标号的箱子 .,但精度比NF 算法更高,3 装箱问题的近似算法,Theorem 3.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三章 装箱问题ppt课件 第三 装箱 问题 ppt 课件
链接地址:https://www.31ppt.com/p-1430062.html