大规模集装箱装载问题
2021-03-08
来源:步旅网
ComputerEngineering伽 , ca砌,z 计算机工程与应用 ◎工程与应用◎ 大规模集装箱装载问题 吴楚楠 ,刘科峰。,彭斯俊 ,黄樟灿。 WU Chunan ,LIU Kefeng ,PENG SUun ,HUANG Zhangcan。 1.武汉理工大学计算机学院,武汉430070 2.武汉理工大学数学系,武汉430070 1.School of Computer Science and Technology,Wuhan University of Technology,Wuhan 430070,China 2.School ofMathmatics,Wuhan University ofTechnology,Wuhan 430070,China wU Chunan,LIU Kefeng,PENG Sijun,et a1.Large-scale container loading problem.Computer Engineering and Appli- cations,2013,49(1):231—233. Abstract:For large—scale three—dimensional packing problem,in use of the basic idea of domain decomposition method,the huge complex problems by packing the goods are re—divided into a number of small regional issues,and then merge those together, the whole region solution will come out.This method can decompose large problems into small issues,complex regional problems into simple regional issues.In base of traditional evolutionary algorithm,simulated annealing generating new individual ideas is introduced to improve it,raising the efifciency of the algorithm and the effectiveness of solution.Through the test of a number of cases of a certain port,the results prove that this method can meet the actual load demand. Key words:domain decomposition method;goods reorganization;evolutionary algorithm 摘 要:对于大规模三维装箱问题,利用区域分裂法的基本思想,将复杂的大规模装箱问题通过货物的重组分解为若干个 小区域上的问题,然后通过合并小区域之间的解得到整个区域的解。该方法能分解大型问题为小型问题,复杂区域问题 为简单区域问题。在传统演化算法的基础上,引入了模拟退火产生新个体思想对其进行改进,提高了算法的运行效率和 解的有效性。通过对某港口案例进行测试,结果证实该算法能满足实际装载需求。 关键词:区域分裂法;货物重组;演化算法 文献标志码:A 中图分类号:0223;TP391 doi:10.3778 ̄.issn.1002.8331.1106-05l1 l 引言 集装箱装载问题属于NP—hard问题,采用穷举法求取 现代物流存在着一个十分关键的基础性难题,即“尺 它的精确解是不现实的,在理论研究和实际应用方面多采 寸协调”问题,也就是如何最大限度地利用固定的空间大 用启发式求解方法。近年来,出现了许多有效解决三维装 小,集装箱装载就是其中一例子。集装箱装载问题广泛地 箱问题的算法。文献[2】给出了CLP的第一个启发式算法; 出现在铁路货车车厢装载、汽车车厢装载、轮船配载、集装 文献[3]提出了基于图搜索求解三维装箱问题的算法;文献 箱装载等情况。 【4]提出了一个新的启发式算法;文献【5]提出了一个随机自 问题的提法:将一批待装的长方体货物装入长方体容 适应启发式算法GRASP;BischofP 基于一个寻找最优参数 器中,目标是使容器空间利用率达到最高。文献[1]中, 设置的搜索算法,提出了一个新的启发式算法;文献[7]用 Bortfeldt根据货物的情形将CLP分为同类(homogeneous)、 三叉树对三维空间分解的方法来进行集装箱的填充。启 弱异类(weakly heterogeneous)和强异类(strongly hetero— 发式策略的确解决了一些装箱题,但当问题规模大到一定 geneous)三类。本文研究的是弱异类问题。 程度时,单纯使用启发式算法往很难在有限时间内求解。 基金项目:国家自然科学基金(No.30570611)。 作者简介:吴楚楠(199O一),男,主要研究领域为模式识别及最优化方法;刘科峰(1987一),男,硕士,主要研究领域为统计建模,模式识别; 彭斯俊(1965一),男,博士,副教授,主要研究领域为演化计算及统计分析;黄樟灿(196O一),男,博士,教授,主要研究领域为 优化与智能控制。E.mail:gmwuchunan0708@gmail.tom 收稿日期:2011-07—01 修回日期:2011-10,l1 文章编号:1002.8331(2013)01.0231-03 CNKI出版日期:201l一10.24 http://www.cnki.net/kcms/detail/11.2127.TP.20111024.1009.021.html ComputerEngineeringandApplications计算机工程与应用 后来人们意识到遗传算法作一种全局随机搜索技术,在求 解装箱等NP—hard问题时有独特的优势,应用智能算法求 解装箱问题的研究也纷纷涌现。文献【8]分别应用串行和 并行策略设计了装载方法;Gehring 等报告了遗传算法在 装箱问题中的应用;Bortfeldt 。 等分别提出了禁忌搜索以 3.1空间分割算法 本文利用对货物进行“重组”(可以看成是一种新的货 物种类)来实现对搜索空间进行分割,从而将复杂的大规 模集装箱装载问题转化为若干小规模的集装箱装载问 题。货物重组的主要思想是将同类货物按照同一方向组 合,从而使得新的货物的某一边长与集装箱极为接近。 及混合遗传求解算法;Gehring” 等提出并行化的遗传算 法;Bortfeldt ”等提出了并行化的禁忌搜索算法;文献[121 提出了一种最大穴度的占角动作优先的拟人型求解算法。 上述研究求解的装箱问题规模都在500个货物以下, 本文的“重组”算法有如下几个特点: (1)只在同一方向进行“重组”(如图1~图3),并在这个 方向尽可能与容器的某条边长接近。这主要是为了控制 而现实生活中,需要装载的货物常在1 000个左右。如此 大的规模,如果不对其进行适当降维,很难在有效时间内 求出可行解。本文提出了一种基于部分货物拼块保留货 物种类多样性的将维算子,再利用混合演化算法求解三维 装箱问题。对宁波大港货柜有限公司的一些装箱案例进 行了测试,结果显示,本文算法能满足实际装箱需求。 2问题的模型 三维装箱问题是把若干种类且每类个数不限的立方体 货物,放入一个集装箱里,在满足一定的约束条件下,使集装 箱里装入的货物尽量多,也就是使集装箱的体积利用率最 大化。不妨设待装的货物种类数为K,第k类货物数量为 ,该类货物的长、宽、高分别是lk、 和h ,Ftk( ) 为第k类货物装入第一个集装箱的个数。集装箱的尺度 为:长( ),宽( ),高(H)。则目标函数可表示如下: max ̄Z ・W ・he)n } P — 寺 类似于文献[131,本文算法也做出如下假设: (1)只考虑待装货物的形状为长方体。 (2)每种货物都足够坚固,能够承担放在它上面的其 他货物的重量。 (3)货物为弱异类的,即货物种类较少,且每类数量较多。 (4)同一类货物尽量放在一起,以便货物的装卸。 (5)货物的每个面都能作为底面放置。 (6)不考虑货物的重量约束和重心约束。 通过上面的假设,问题得到了很大程度的简化,且对 问题的实用性影响较小。 3 装箱算法 实际装箱过程中,由于待装货物数量通常比较大,如 果不对货物做任何处理,直接用演化算法求解,导致收敛 速度极为缓慢。利用区域分裂法的基本思想,将复杂的大 规模问题分解为若干个小区域上的问题求解,然后通过合 并小区域之间的解得到整个区域的解。该方法能分解大 型问题为小型问题,复杂区域问题为简单区域问题。之后, 在传统演化算法的基础上,引入了模拟退火产生新个体思 想对其进行改进,提高了算法的运行效率和解的有效性。 新的货物含有原先货物的数量,这个数量越大,问题的规 模越小,但求得的解越容易陷入局部最优解,反之则不易 陷入局部最优解。 L l lj一 图1横向“重组” 图2纵向“重组” 图3竖向“ 组” (2)并不将同一种类的所有货物进行“重组”,保留小 部分数量(本文选择5%)的原来种类货物,以保证货物种类 的多样性,可以提高货物的装载率。 具体的“重组”算法如下: 步骤1分别将集装箱的各边长与货物的各边长进行 取余运算,构成一个集合 。 步骤2标记集合A中的最小的元素,并找出它对应的 集装箱的某条边 以及货物某条边 步骤3对此类货物按照边,方向进行“重组”,并保证 原货物数量的5%不进行重组,以此增加货物的多样性。 步骤4更新货物的种类以及数量。 3.2演化算法 3.2.1个体编码和解码 本文的编码采用Grefenstette等针对TSP提出的基于 顺序表示的遗传基因编码方式,按照货物的装载顺序进行 编码并考虑其旋转方向,得到一个编码长度为2n的符号串 个体: P={p1,P2,L,P ,P +1,L,P2 } 其中, 代表货物的种类数,P -p 基因为整数,表示货物 的种类编号。以种类编号作为编码基因,可以使同一类货 物在装箱时尽量摆放在一起,避免产生过多的闲置空间, 有利于提高集装箱的空间利用率。基因P + -p 表示货 物的旋转方向,由【0~5]问随机产生的一系列可重复整数排 列组成。 吴楚楠,刘科峰,彭斯俊。等:大规模集装箱装载问题 3.2.2适应度函数 为了提高适应值的区分度,将适应度函数取做目标函 数的三次方。即: ∑㈦ 、, = =l L.W.H 其中,, 、W 、h 分别表示第k类货物的长宽高; 表示 第k类货物装入第一集装箱里的个数;L、W、H分别表 示集装箱的长、宽、高。 3.2.3 演化算子 (1)选择算子的设计 步骤如下: ①按个体的适应值大小对适应度向量做升序排列,对 应地,对种群中的个体向量也做升序排列。 ②将适应度最大的个体复制给子代。 ③再利用轮盘赌原理进行选择。在做轮盘赌选择前 执行②保证了适应度最大的个体被选择保留下来,而又不 会破坏种群的多样性,起到加速演化算法收敛的作用。 (2)产生新解的算子 对于编码P 、P,,本文采用的一种模拟退火与遗传算 法混合的产生新解方法。具体操作如下:一 跏长E l一,~圳 m 9 一 ~甜躬躬m¨他 5 ①在尸.中任意取两个基因P, 与P 找到P 中对应 的基因; ②把P 中p,。与p, 之间的基因与P 中对应的基因 交换; ③同样将它们的旋转基因进行交换; ④计算新产生的个体与原来两个个体的适应值增量: △叩1,△叩2,对于△叩】,如果△叩1>0,接受这个新个体,如果 量Aq,<0,以概率exp{一At一一 一 一/。似・叩 )}接受新个体,其中叩 为新 个体的适应值, 为一个平衡系数,"一般取 =0. 01; ⑤在一个一级编码的后 个基因中,以0=1一 的变 异概率选出基因p…,它变为{0,1,2,3,4,5}中异于它本 身的一个数的概率均为20%。 4计算结果 4.1 计算实例 对宁波港某“堆场”的数据进行测试,选取的集装箱规 格:长(590.5 cm),宽(235 cm),高(239.2 cm)。待装货物 长、宽、高以及数量如表1;把待装物品“重组”后得到的待 装物品规格和数量如表2。 表1待装货物规格和数目 类型 长/cm 宽/cm 高/cm 51.O 26 O 15.9 43.0 31.0 17 5 32.9 22.7 30.6 51.O 26.O 15.9 41.0 21.0 24-3 43.5 31.O 17.5 4.2结果分析 对上述例子,如果用传统的观察法即根据经验来装 箱,第一个集装箱只能把1~5类型货物全部装下,6号类型 的货物只能装下57个,还有72不能装入。装箱率为 85.74%,本文的算法能将待装货物全部装下,装箱率达到 了90.86%。在此,用Matlab给出了装箱效果图,如图1; 图4把一个“新货物”也当成一个货物装载。 2 g 1 图4三维装箱效果图 5结论 不同于其他求解NP难度问题的演化算法、禁忌搜索 等启发式算法,利用区域分裂法的基本思想,把复杂的大 规模问题分解为若干个小区域上的问题求解,将搜索空间 进行分割,结合改进的演化算法求取小规模的装箱问题, 然后通过合并小区域之间的解得到整个区域的解。结合 宁波港的案例,本文的装箱率均高于实际装效率平均5个 百分点。在今后的工作中,拟结合更多的代表性算例,进 一说明本文算法的有效性。 参考文献: [1]Bortfeldt A.A genetic algorithm for the container loading pro— blem[C]//Proceedings of the Conference on Industrial Auto— marion Singapore,1994:115-126. [2]George J A,Robinson D F.A heuristic for packing boxes into a container loading problem[J].International Transactions on Operational Research.1980,7(3):147—156. (下转257页) 卫丹华,何建忠:蒸发器过热度时滞系统的动态矩阵控制研究 2013,49(1) 257 4实验结果分析 5结语 本文的控制对象是上海丘寿冷库项目中的蒸发器,该 针对蒸发器过热度对象的大纯滞的特点,采用DMC 冷库中有6台独立工作的蒸发器机组,现仅对5号机组进 的方法,通过对被控对象动态模型进行辨识,进而提前预 行DMC控制。 测出整个时滞系统的变化,从而提高了预测控制的效果。 制冷系统的主要部件以及参数如下: 仿真和实验结果表明,本文方法实现简单,可靠性高,控制 (1)本制冷系统采用螺杆式压缩机,选用风冷冷凝器, 效果好。 翅片管式。 (2)蒸发器选用螺旋管式,浸在冷媒水中,蒸发器盘管 参考文献: 使用光管,制冷剂为R22。 [1]席裕庚预测控制[M] E京:国防工业出版社,1993. (3)采用艾默生电子膨胀阀,由两相四线制步进电机 [2]舒迪前.预测控制系统及其应用[M].北京:机械工业出版社, l996. 驱动,艾默生电子膨胀阀的开启度能够在10%~100%范围 [3]陈文勇,陈芝久,朱瑞琪,等.电子膨胀阀调节蒸发器过热度的 内调节。通常,在电子膨胀阀前安装有电磁阀,作为电子 控制算法『J]上海交通大学学报,2001,35(8):I229.1232. 膨胀阀失效时的保护装置。 [4】罗云辉,刘红波,贾磊,等.一种基于DMC的新型预测PID控制 (4)采集模块采用NTC温度传感器,在蒸发器的入口 器及其整定【J】.控制理论与应用,2010,27(12):1743—1749. 和出口分别设置一个温度传感器丁2和压力传感器P1。 【5】宁璀,张泉灵,苏宏业.多变量一阶加纯滞后系统的预测函数 实验环境是一l6℃,开机稳定一段时间后,改变电子膨 控制fJ].信息与控制,2007,36(6):702 707. 胀阀的开度。考虑到电子膨胀阀的使用寿命,实验时阀的 [6]唐功友,于忠清,孙朝晖.时滞系统的状态预测观测器及预测 开度不应有剧烈的变化。 控制器设计[J].控制与决策,2003,18(2):207—209. 在实验时,采用DMC控制时,蒸发器过热度也能够比 [7]Culter C R,Remaker B L.dynamic matrix control—a computer control algorithm[C]//Proceedings of JACC 1980.San Francisco: 较平稳地保持在目标值8℃附近。而采用常规的PID控制 American Automatic Control Council.1 980. 时,控制器不能很好地跟随被控对象的参数变化而动态变 [8】Elliott M S,Shenoy B,Rasmussen B P.A control architecture 化,容易产生较大的超调,不利于后续的控制。由此证明 solution to superheat nonlinearity[C】//Proceedings of American 了动态矩阵控制对过热度有较好的控制效果。 Control Conference,2010:5898—5903. (上接233页) [9]Gehring H,Bortfeldt A.A genetic algorithm for solving the [3]Morabito R,Arenales M.An AND/OR-graph approach to the container loading problem[J].International Transactions on container loading problem[J].International Transactions on Operational Research,1994(4):401—418. Operational Research,1994(1):59—73. [1 0]Gehfing H,Bortfeldt A.A parallel genetic algorithm for solving [4】Lim A,Rodrigues B,Yang Y.32D container packing heuris— the container loading problem[J].International Transactions tics[J].Applied Intelligence.2005,22(2):125-134. on Operational Research,2002,9(4):497—511. [5]Moura A,Oliveira J F.A GRASP approach to the container— [11]Bortfeldt A,Gehring H,Mack D.A parallel tabu search loading problem[J].IEEE Intelligent Systems,2005,20(4): algorithm for solving the container loading problem[J].Parallel 50.57. Research,2001,131:143—161. [6】Bischoff E E.Three—dimensional packing of items with limited [1 2]Huang W,He K.Pure personification algorithm of solving the load bearing strength[J].European Journal of Operational cuboid packing question[J].Chinese Science,2009,39(6): Research,2006,168(3):952—966. 617—622. [7]Wang Z,Li K W,Levy J K.A heuristic for the container loading [13]Ngoi B K A,Tay M L,Chua E S.Applying spatial repre— problem:a tertiary—tree—based dynamic space decomposition sentation techniques to the container packing problem[J]. approach[J].European Journal of Operations Research,2008, Internationa1 JournaI of Production Research,1 994,32(1): l91:86—89. ll1一l23. [8】Eley M.Solving container loading problems by block arrange— [14】Loh T H,Nee A Y C.A packing algorithm for hexahedral ment[J].European Journal of Operational Research,2002,141: boxes[C]//Proceedings of the Conference on Industrial 393—409 Automation,Singapore,1992:115-126.