




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于合理确定集装箱码头摘要:二,对于实现第三种装船方式的意义,以及算法,流程图,程序和对复杂情况的进一步思考.按照计算机程序给出的发箱和装箱顺序,可以得到较快的装船速度和100%的准舱率,既.关键词:算法,计算机类别:专题技术来源:牛档搜索(Niudown.COM)本文系牛档搜索(Niudown.COM)根据用户的指令自动搜索的结果,文中内涉及到的资料均来自互联网,用于学习交流经验,作品其著作权归原作者所有。不代表牛档搜索(Niudown.COM)赞成本文的内容或立场,牛档搜索(Niudown.COM)不对其付相应的法律责任!26关于合理确定集装箱码头装船顺序的算法 论文作者:陈海燕 指导教师:吕长虹内容摘要装船质量和装船速度是衡量一个集装箱码头服务质量的重要指标。由于很多因素的影响,在上海港集装箱码头的装船作业中,常常面临着两者不能兼顾的局面,一般的实际操作都是为保证船期而不得不牺牲了装船质量,从而大大影响了上海港码头的对外形象。如何在保证装船速度的前提下提高装船质量成为上海港实现堆场智能化管理中亟需解决的问题。本文所研究的问题是:如何在给出箱区图和配载图的情况下,根据不同的装船方式,运用计算机程序确定合理的发箱和装箱顺序?这是实现集装箱码头堆场智能化中的一个具体问题。目前,在给出箱区图和配载图的情况下,码头工人一般是依据经验来确定发箱和装箱顺序的,这带有很大的盲目性和随意性,尤其是在兼顾装船质量和装船速度方面,存在着严重的不足。在分析了集装箱码头的有关资料,并作了深入思考之后,本文主要依据实际数据,针对两种在码头实际装船作业中应用性较强的装船方式进行了研究,分别对其做了建立数学矩阵模型,制定合理算法,编写 MATLAB 程序等工作,并论证了它们在实际操作中的可行性。编写的程序成功地做到,只要输入箱区图和配载图的相关信息后,就能迅速得到相应的比较合理的发箱和装箱顺序。这比码头工人依据经验确定的发箱和装箱顺序在装船质量和装船速度上有非常大的提高(本文中有具体事例说明)。因此本文的研究结果将会在集装箱码头的实际装船作业中具有很强的可执行性和应用性。关键词集装箱码头,装船质量,装船速度,算法AbstractShipment quality and shipment speed are important indexes to measure a harbors service quality. In the Shanghai Harbor, because of many reasons, workers are facing the quandary that they cant ensure shipment quality and shipment speed together. The generally actual operation was had to sacrifice the shipment quality for guaranteeing the sailing schedule, which seriously affected the image of the Shanghai Harbor. How to increase the shipment quality at the premise of shipment speed became an important problem of the Shanghai Harbors intelligence management.What I study is: How to calculate a reasonable shipment order under the situation of giving an area diagram and the relevant ship diagram? This is a concrete problem of harbors intelligence management. At present, the dock man is generally according to the experience to decide the shipment order under the situation of giving an area diagram and the relevant ship diagram. It is very blind and arbitrary, and bringing many troubles to shipment work, particularly in the aspects of shipment quality and shipment speed.After analyzing many data of shipment work and reading some relevant articles, in this thesis, I chose two practical shipment methods to discussing. I did a lot of works for each shipment method, such as establishing the mathematics matrix model, looking for the reasonable calculate way and weaving the MATLAB procedure etc. and giving arguments of their possibility in operation. With the help of the MATLAB procedure, we can quickly get the reasonable shipment order as long as input an area diagram and the relevant ship diagram. It is much better than the dock mans method in both aspects of shipment quality and shipment speed (There are concrete examples in the thesis). Therefore the research result is very practical and applicable in actual shipment work.正文一、对于目前码头装船现状的初步认识、 装船质量和装船速度() 装船质量和装船速度的理解本文所指的装船质量,是指集装箱码头装集装箱时,是否严格按照船方确认的配载图装船的优劣程度;装船速度,是指集装箱码头装集装箱时,是否按照船期完成装箱的快慢程度。装船质量与装船速度是集装箱码头装卸综合能力的重要组成部分。() 提高装船质量的重要性 以装卸为主要工作内容的港口服务企业属于服务服务性行业,服务质量就是企业生存和发展的关键;而装船质量的好坏是集装箱码头服务质量中很重要的内容。 提高码头的装船质量关系到港口的形象和港口企业的竞争力,对于建立中国优质港口的模型尤其有着积极的作用。上海要建成国际航运中心,要建成优质高效的港口,除了有良好的天然条件,港口企业更是要有良好的装卸规程,“准舱、高效”以及为船方提供良好的服务是与硬件设施同等重要的要素。() 装船的现状对于某条船的某个航次来讲,除了固有的记载习惯外,每个航次的装船要求既有一些普通要求,也有特殊的积载要求,这意味着不同的船、不同的航次,装船要求都是不一样的,船舶积载的多样性和不确定性要求码头在既定的情况下,形成合理适用的积载过程和积载方案,并且能够实现对方案的实时调整,既要保证质量、又要保证速度。配载图经船方确认,说明船方已计算出大致稳定性,认为适航的。装货完毕后,外轮理货的船图再次送到船方确认,如果前后出入不大,则秩序作少许修改,稳定性影响不大;一旦出入较大,不仅增加了修改船图的时间,船方为了保证船舶行船安全,会要求港方重新翻箱,这样则会延误时间,甚至影响船期。集装箱装船作业时如果可以不讲究装船速度,只要求准舱的话,那么也没什么难办的;而实际操作中往往两者不能兼顾,一般都是为保证船期而牺牲准舱率的。目前,由于码头工人一般是按照经验确定发箱顺序和装箱顺序,这样的装船过程中具有很大的盲目性和随意性,而且码头往往会将装卸的效率,诸如桥吊装卸效率(台时量)、船舶装卸效率(船时量)作为考核的重要指标。所以种种因素致使在实际装船作业中为了追求高产,而忽视装船质量,导致集装箱舱位与配载图不一样,降低了准舱率,影响了上海港码头的对外形象。、 几种装船方式接下来就实际操作中可能出现的堆场情况、船舱情况和装船情况进行图示说明,并提出解决矛盾的方案,论证解决方案在实际操作中的可行性。为了使图例具备普遍性,我们界定的内容为某航某次的装船内容,堆场的22箱区17位于该船某船舱内的状况对应。(1)关于箱区的说明该航次的出口箱区之一22箱区17位上的出口箱情况如图1、图1*所示,是经过一列的“影响装船质量各要素”影响下变成的结果。箱区图:4层2217142217242217342217543层221713221723221733221743221753未放关2层未放关2217222217322217422217522217621层2217112217212217312217412217512217611列2列3列4列5列6列图1(22箱区17位)箱区吨位图:4层32123层13233未放关2层未放关111231层1122321列2列3列4列5列6列图1*(22箱区17位)其中1、2、3代表吨位级虽然图1的结果不是必然的,但就目前码头的堆场现状而言,形成这种情况存在着相当的普遍性,这些导致进箱计划变化的因素在堆场范围内出现一次或多次,单因素或多因素作用于某个位置,使得原来符合高速发箱的堆存方式变得面目全非,影响了装船速度,同时也影响了装船的质量。(2)关于配载图的说明装船前,配载人员根据22箱区17位对该船倍(BAY)舱内进行配图,在此不考虑其配载图是否合理,如图2,图2*所示配载图:102217222217212217132217110822173422173222174222174106221761221752221733221731042217242217542217622217510222171422174322172322175304020103图2 船舱某部分船图配载吨位级图:10111108111206222204223302333304020103图2*(船舱某部分船图)其中1、2、3代表吨位级(3)三种装船方式情况一:只要求装船速度为了避免翻箱,船控将该倍的箱子全部发出,轮胎吊司机接受的指令就是要将2217位的箱子全部装到船舱某倍中去,至于其顺序,则会因实际情况的不同而不同。但有一点是可以肯定,翻箱次数会减少。根据几位轮胎吊司机操作实践,就2217位的状况列出的发箱顺序来看,以最少翻箱,最大速度为前提,大致的发箱顺序会如图3所示的数字4层181133层1991224未放关2层未放关171315571层201814166101列2列3列4列5列6列图3(22箱区17位)图中数字为发箱顺序 按照该发箱顺序,装完该舱的结果则(如图4)所示1022172222172122171322171108221732#221731#22174222174106221723#221761#221734#221733#04221752#221751#221762221724#02221714221743221754#22175304020103图4 船舱某部分(# 为与船图不符的)实际船图装完的船图与原来确认的船图共有10箱位置不对,准舱率为50%,场地翻箱仅为两箱,即未放关的两箱。按照这种装船方式,虽然保证了装船速度,但是它的准舱率太低。情况二:只要求装船质量按一般的装船顺序即从左到右依次装上,要达到100%的准舱率,就必然会发生大量翻箱。具体的发箱顺序如图5所示数字4层151363层1931124未放关2层未放关1714151071层20181216891列2列3列4列5列6列图5 (22箱区17位)图中数字为发箱顺序按照这种顺序,需翻箱数为8次,是第一次的4倍,大大降低了发箱的速度。即使提高了准舱率,却同样不是理想的装船方案。情况三:结合配载与船控的装船思路,即保证装船速度,又保证了较高的准舱率。配载人员在积载船图时,考虑到了在保证准舱的情况下避免翻箱。发箱顺序为图6所示数字4层131153层1941226未放关2层未放关171315791层201814168101列2列3列4列5列6列图6 (22箱区17位)图中数字为发箱顺序按照该发箱顺序,结合配载思路的装船顺序(如图7)所示10221722 17221721 12221713 19221711 2008221734 11221732 13221742 15221741 1606221761 8221752 9221733 12221733 1404221724 3221754 5221762 7221751 1002221714 1221743 2221723 4221753 604020103图7 船舱某部(后面数字为配载思路的装船顺序)实际船图可知,图7所示的依据配载的装船顺序可以保证100%的准舱率,而翻箱也只有“未放关”的两箱,保证了速度和积载原则,是一种非常良好的装船方案。二、对于实现第三种装船方式的意义,以及算法、流程图、程序和对复杂情况的进一步思考1、意义和目的我们已经了解到三种装箱方式,经过实际例子的比较,我们非常清楚地认识到“结合配载与船控的装船思路,既保证装船速度,又保证了较高的准舱率”的第三种装船方式的优势是比较明显的。然而在实际中,单单靠船控从船图来看,是很难看出配载思路的,即使与配载人员交流,也只能解决少数倍(BAY)的发箱顺序问题。因此,对于大量的、随机出现的此类情况,要有更全面的处理系统,即依靠电脑来判断发箱和装箱顺序,以达到在保证装船速度的前提下,最大限度的提高船舶的准舱率。所以设计一个程序,来实现这种装船方式,对于集装箱码头的装船工作是有非常重大的实际意义的。我的最终目的是想设计一个程序,实现只要输入箱区图和配载图的大致情况,就能快速得到相应的发箱顺序和装船顺序。因为条件所限,我目前只就只翻“未放关”箱的情况下用第三种装箱方式实现装箱来进行编程,而对于更复杂的需要多次翻箱的情况我只是给出自己的想法。在实际中,因为配载人员在配载船图时,会考虑到在保证准舱的情况下避免翻箱,所以我认为对于一般的船舶装箱时,在只翻“未放关”箱的情况下用第三种装箱方式实现装箱,这样的情况是非常普遍的。研究这种情况的程序化处理,还是具有很强的实用价值的,而且会对更复杂的装船情况实现程序化打下良好的基础。2、编程思路(1) 装船情况的假设在下面的编程过程中,假设在此次装船过程中,能够在只翻“未放关”箱的情况下就能第三种装船方式顺利实现装船。(2) 矩阵输入将箱区图与配载图的箱号分别输入到矩阵A和B;建立一个行列数与矩阵A相同的零矩阵D,用来标记发箱顺序; 建立一个行列数与矩阵B相同的零矩阵E,用来标记装船顺序。 注: 因为整型数据大小有限制,故矩阵A、B的元素只取其箱号而舍其箱区号和位号; 无箱的箱位在其对应矩阵A的相应位置记为0 ; 未放关的箱子在其相应矩阵A的相应位置记为99。由上述定义可以得到与上文中例中箱区图和配载图(图1、图2)相对应的四个矩阵 (3) 根据箱区图与配载图,确定合理的发箱顺序和装箱顺序一些要说明的概念: 矩阵A的表层元素:即矩阵A的每一列的从上至下的第一个非零元素 矩阵B中的下一个元素:(分两种情况)情况一:若以为目标,在矩阵A的表层元素中找到了与之相等的元素,则从矩阵B的第5行开始从左到右,再依次向上行递进寻找下一个元素。情况二:若以为目标,在矩阵A的表层元素中找不到与之相等的元素, 若 ,则要从上一行开始从左到右搜索第1到第3列,再依次向上行递进寻找下一个元素。若,先考虑同一行的第到第4列有没有符合要求的元素,若没有,则再从上一行开始从左到右搜索第1到第列,再依次向上行递进寻找下一个元素。 设,用来标记发箱顺序和装箱顺序具体步骤:因为按一般的装船顺序应从左到右依次装上,所以先从配载图的最左下方的箱号开始考虑。当选定矩阵B的某一元素为目标后, 在箱区图矩阵A的表层元素从左到右进行搜索,若有与相等的,不妨设此元素为,则令,=0,;此次装箱结束;当每一次装箱结束,搜索矩阵A的表层元素,若遇到“未放关”箱子,即箱号为99的元素,不妨设此元素为,应立即搜索矩阵A中是否出现空列,若有则令=0;再按情况一的方案选定矩阵B中的下一个元素:从矩阵E的第5行第1列元素开始考虑,按从左到右,再依次向上的顺序,判断元素是否为零,不妨设为按此顺序遇到的第一个零元素,则的下一个元素为; 在箱区图矩阵A的表层元素从左到右进行搜索,若没有与相等的,则按情况二的方案决定矩阵B中的下一个元素:若 ,对矩阵E从第行开始从左到右搜索第1到第3列的元素,是否有元素满足,若一行结束仍没有找到符合要求的元素,则再考虑上一行,不妨设为按此顺序找到的第一个符合要求的元素,则的下一个元素为;若,先考虑矩阵E的第行的第到第4列,是否有元素满足,且(时只要考虑满足的元素),若有,不妨设为按此顺序找到的第一个符合要求的元素,则的下一个元素为;若没有,则对矩阵E从第行开始从左到右搜索第1到第列的元素,是否有元素满足,若一行结束仍没有找到符合要求的元素,则再考虑上一行,不妨设为按此顺序找到的第一个符合要求的元素,则的下一个元素为; 最终将得到发箱顺序矩阵D和装箱顺序矩阵E例:对于上述的矩阵A、B、D、E,经过程序处理,可以最终得到如下的结果 结果分析:矩阵D表示结合配载思想的得到的箱区发箱顺序矩阵矩阵E表示结合配载思想的得到的装船时的放箱顺序矩阵按照计算机程序给出的发箱和装箱顺序,可以得到较快的装船速度和100%的准舱率,既保证了装船速度又保证了装船质量。而且计算机程序比人工操作相比,能够更准确、快捷、有效地对大量的、随机出现的此类情况进行全面处理。、 流程示意图:(见附页1)、 算法程序的计算机语言描述(MATLAB)(见附页2)、 对于一定要翻箱(除了翻未放关箱)才能实现第三种方式装船的情况,我提出了以下算法step1:先建立箱区图与配载图的箱号和吨位级矩阵;step2:以配载图中的应立即装船启运的那个集装箱为目标;step3:搜索箱区图表层,n 若有箱号与目标对应,则对相应的箱区图与配载图的矩阵进行相应赋值,然后搜索箱区图表层是否有未放关箱,根据是否有空列进行处理,返回step2;n 若无箱号与目标对应,则以配载图中的可以装船的下一个集装箱为目标,返回step3;n 若以配载图中的应可以装船的4个集装箱在箱区图表层均无箱号与之对应,则进入step4,进行翻箱;step4:1)、在全箱区进行搜索,将与配载图中的相应的可以立即装船启运的4个集装箱,作出标记;2)、选取翻箱列的优先原则n 标记箱上方箱数最少的列n 标记箱个数最多的列n 标记箱上方无“未放关”箱的列n 箱数最少的列n 若这样的优先列个数大于1,可根据实际造作方便性和其他一些因素加入一些次优先原则,如分类,重量等。3)、选取放箱列优先原则n 除去翻箱列的其余列n 无标记箱的列n 放箱在空列上n 放箱在同等重量级的箱子或比它小的箱子上(即2压1,而不是2压3)n 若这样的优先列个数大于1,可根据实际造作方便性和其他一些因素加入一些次优先原则,如分类,重量等。4)、按上述原则选取翻箱列和放箱列进行翻箱,一次翻箱结束后,进入step26、第三种装船方式所需注意的问题在用第三种装船方式进行实际做也是要注意到摆角问题,如果大船是舱外摆角的话,那么这种装船方式是合理有效的。如果大船是舱内摆角的话,将会受到一定的影响。因为舱内普遍的装箱方式是一层一层地堆高,摆角的大船工人攀箱则是从第一层到第二层递进,而上述的装箱方式,理论上来说没有什么困难,但对于大船工人来说,从一层到二层,在从二层下来到一层摆角,这样上下攀爬的次数越多,危险性和劳动强度就越大。因此在大船工人有限的情况下同样会影响装船速度。对于重点船舶的作业可以依靠增加该船的大船工人人数的方式来解决这一矛盾,即保证装船的速度,又保证了准舱率。而对于一般的船舶,我们还要根据实际情况来判断这种装船方式的适用性。三、对于实现第一种装船方式(改进的)的意义,以及算法、流程图和程序1、实际意义:正因为第三种装船方式在实际应用时还受到各方面因素的制约,而且在集装箱码头的实际装船情况中装船效率依然是最主要指标,因此如何找到一种以最少翻箱,最快速度,在保证速度的前提下尽量提高准舱率的应用性强的装船方式,才是码头最关心的。但我们也看到,第一种装船方式的缺陷在于:只注重装船速度,没有顾及装船质量。为此,我认为如果在侧重装船速度的同时,兼顾到装船质量,对第一种装船方式进行一定程度的改进后,会是一种很有实际价值的装船方式。为此我对第一种装船方式进行了一定改进,编写了一个算法,这样可以依靠电脑来判断发箱顺序和实际船图,以达到在保证装船速度的前提下,最大限度的提高船舶的准舱率。 2、算法编写思路:(1)、矩阵输入将箱区图与配载图的箱号分别输入到矩阵A和B;将该箱区的吨位级图输入到矩阵C1;将与配载图相应的吨位级图输入到矩阵C2;建立一个行列数与矩阵A相同的零矩阵D,用来标记发箱顺序; 建立一个行列数与矩阵B相同的零矩阵E,用来标记实际船图。 注: 因为整型数据大小有限制,故矩阵A、B的元素只取其箱号而舍其箱区号和位号; 无箱的箱位在其对应矩阵A的相应位置记为0 ,在其对应矩阵C1的相应位置记为0; 未放关的箱子在其相应矩阵A的相应位置记为99,在其对应矩阵C1的相应位置记为9由上述定义可以得到与图1、图1*以及图2、图2*相对应的矩阵A、C1、B、C2和矩阵D、E (2)、根据配载图与箱区图,确定比较合理的发箱顺序和实际船图因为按一般的装船顺序应从左到右依次装上,所以先从配载图的最左下方的箱号,即矩阵B的第5行第1列的元素开始考虑,依次向右,当一行结束后,再考虑上一行的第1列元素,以此类推。直至综合考虑配载图与箱区图,根据情况确定出发箱顺序和实际船图。一些要说明的概念: 矩阵的表层元素:即矩阵的每一列的从上至下的第一个非零元素 矩阵的次表层元素:即矩阵的每一列的从上至下的第二个非零元素 矩阵B中的下一个元素:若,下一个元素为;若,则下一个元素为;直到 设,用来标记发箱顺序具体步骤:当选定矩阵B的某一元素为目标,先在箱区图表层从左到右进行搜索,即从矩阵A的第1列开始,到第6列为止,依次考虑每一列的从上至下的第一个非零元素。 若矩阵A的表层元素中有与相等的,不妨设此元素为,则令,=0,; 此次装箱结束; 若矩阵A的表层元素中没有与相等的,就考虑的下一个元素,不妨设其为,以其为目标,进行搜索。情况一:若矩阵A的次表层元素中有与相等的,且此元素的同列上行不是“未放关”的箱子,不妨设此元素为,则令此次装箱结束;情况二:若矩阵A的次表层元素中无与相等的;或有与相等的,但此元素的同列上行是“未放关”的箱子,则再看矩阵A的表层元素中是否有与相等的?若矩阵A的表层元素中有与相等的,不妨设此元素为,根据矩阵C2中的值,在矩阵C1表层元素除外,搜索等于或大于的元素(等于者优先,从左到右进行搜索),不妨设此元素为,则令,=0,;此次装箱结束;若矩阵A的表层元素中无与相等的,则根据矩阵C2中的值,在矩阵C1表层元素中,搜索等于或大于的元素(等于者优先,从左到右进行搜索),不妨设此元素为,则令,=0, ;此次装箱结束; 特别注意:当每一次装箱结束,搜索矩阵A的表层元素,若遇到“未放关”箱子,即箱号为99的元素,不妨设此元素为,应立即搜索矩阵A中是否出现空列,若有则令=0,;若无,再考虑矩阵B中的下一个元素。 最终将得到发箱顺序矩阵D和实际船图矩阵E例:对于上例的矩阵A、B、C1、C2、D、E,经过程序处理,可以最终得到如下的结果 结果分析:矩阵D表示根据改进的第一种装船方式得到的箱区发箱顺序矩阵;矩阵E表示根据改进的第一种装船方式得到的实际船图;装完的船图与配载船图共有8箱位置不对(# 为与船图不符的),准舱率为60%,场地翻箱仅为两箱,即未放关的两箱。这种改进后的装船方式具有原来第一种装船方式的优点:保证了装船速度,进行最少翻箱;在装船质量方面也一定程度上弥补了第一种装船方式的欠缺:提高了10%的准舱率。通过实例说明,可以看到,通过计算机程序得到的发箱顺序比码头工人依据经验得到的发箱顺序要合理的多,也快捷的多。所以说,这个算法程序在实际装船作业中将会有很大的应用前景。、 流程示意图:(见附页3)、 算法程序的计算机语言描述(MATLAB)(见附页4)参考文献1阿克逊:提高装船效率 保证装船质量,集装箱化,2003第9期。2尹泽明、丁春利等编著:精通MATLAB6,清华大学出版社,2002年。3袁震东、洪渊、林武忠、蒋鲁敏编著:数学建模,华东师范大学出版社,1997年 。4胡运权主编:运筹学教程,清华大学出版社,1998年。将的下一个元素赋予(情况二的赋值)终止N在矩阵A中赋入相应值Y在矩阵A、D、E中赋入相应值表层元素是否有YY开始输入数据至相应矩阵令,令是否有元素从左到右搜索矩阵A表层元素NYN从左到右搜索矩阵A表层元素矩阵A中是否有空列N将的下一个元素赋予(情况一的赋值)附页1(第三种装船方式的流程图)附页2(第三种装船方式的MATLAB程序)%input the arrays of A B D E%输入相应矩阵(这一步由操作者输入)A=14,24,34,0,54,0; 13,23,33,43,53,99; 99,22,32,42,52,62; 11,21,31,41,51,61;B= 22,21,13,11; 34,32,42,41; 61,52,33,31; 24,54,62,51; 14,43,23,53;D=zeros(4,6);E=zeros(5,4)%shipment%装船k = 1;p = 0;q1 = 0;q2 = 0;s = 0;f = 0;i = 5;j = 1;b = B(i,j);while k 21 p = 0;%search the surface element of array A%搜索矩阵A的表层元素for n = 1:6 m = 1; while A(m,n) = 0 m = m+1; if m = 5 m = m-1; break end end%if found the needed container%如果矩阵A的表层有元素与目标元素相等 if A(m,n) = b p = 1; D(m,n) = k; E(i,j) = k; A(m,n) = 0; k = k+1;%put the uncol container to empty line%把未放关箱放入空列for n = 1:6 m = 1; while A(m,n) = 0 m = m+1; if m = 5 m = m-1; break end end if A(m,n) = 99 for t = 1:6 if A(4,t) = 0 A(m,n) = 0; break end end endend%search the next element of array B %确定下一个目标元素for i = 5:-1:1 for j = 1:4 if E(i,j) = 0 b = B(i,j); break end end if E(i,j) = 0 break endend break endend%if didnt find the needed container%如果矩阵A的表层没有元素与目标元素相等,依据以下情况在矩阵B中确定下一个目标元素if p = 0 q1 = j; q2 = i; if q1 = 4 %如果是第四列% if i = 1,it will be the last container %如果是第一行,则这为最后一个集装箱 for i=(q2-1):-1:1 %考虑此元素的上面那些行的一至三列 for j=1:3 if (E(i+1,j) = 0) & (E(i,j) = 0) b = B(i,j); s=1; break end end if s=1 break end endelse % q1 = 4 %如果不是第四列if q2 = 1 % the first line%如果是第一行,只需考虑此元素的同行右边那些列 for j = (q1+1):4 if (E(i+1,j) = 0) & (E(i,j) = 0) b = B(i,j); break end end elseif q2 = 5 % the fifth line %如果是第五行for j = (q1+1):4%考虑此元素的同行右边那些列%as the element of fifth line,E(i+1,j) doesnt exsit%因为第五行元素的同列下行元素不存在 if E(i,j) = 0 b = B(i,j); f = 1; break end end if f = 0%如果没找到下一个目标元素,再考虑此元素的上面那些行的元素 for i = (q2-1):-1:1 for j = 1:4 if (E(i+1,j) = 0) & (E(i,j) = 0) b = B(i,j) s =1; break end end if s = 1 break end end end else% the second /third/ fourth line %第二、三、四列for j = (q1+1):4 %考虑此元素的同行右边那些列 if (E(i+1,j) = 0) & (E(i,j) = 0) b = B(i,j); f = 1; break end end if f = 0%如果没找到下一个目标元素,再考虑此元素的上面那些行的元素 for i = (q2-1):-1:1 for j = 1:4 if (E(i+1,j) = 0) & (E(i,j) = 0) b = B(i,j) s =1; break end end if s = 1 break end end end endendend%关于k的循环endADE在矩阵A、C1、D、E中赋入相应值将的下一个元素赋予从左到右搜索矩阵A次表层元素是否有元素此元素的同列上行从左到右搜索矩阵A表层元素是否有元素根据吨位级矩阵C1、C2的相应值选定装箱号此次选装箱号时不考虑的箱号YYYY开始输入数据至相应矩阵令,令是否有元素从左到右搜索矩阵A表层元素从左到右对矩阵A表层未放关箱进行处理,看是否有空列将的下一个元素赋予且终止NYNNNN附页3(改进的第一种装船方式的流程图)附页4(改进的第一种装船方式的MATLAB程序)%input the arrays of A B C1 C2 D E%输入相应矩阵(这一步由操作者输入)A=14,24,34,0,54,0; 13,23,33,43,53,99; 99,22,32,42,52,62; 11,21,31,41,51,61;B= 22,21,13,11; 34,32,42,41; 61,52,33,31; 24,54,62,51; 14,43,23,53;C1=3,2,1,0,2,0; 1,3,2,3,3,9; 9,1,1,1,2,3; 1,1,2,2,3,2;C2=1,1,1,1; 1,1,1,2; 2,2,2,2; 2,2,3,3; 3,3,3,3;D=zeros(4,6);E=zeros(5,4);%shipment%装船k = 1;p = 0;b1 = 0;q = 0;r = 0;c = 0;m1 = 0;t = 0;i = 5;j = 1;b = B(i,j);while k 21 b1 = 0; p = 0;q = 0;r = 0;c = 0;m1 = 0;t = 0;%search the surface element of array A%搜索矩阵A的表层元素for n = 1:6 m = 1; while A(m,n) = 0 m = m+1; if m = 5 m = m-1; break end end%if found the needed container%如果矩阵A的表层有元素与目标元素相等 if A(m,n) =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年企业战略变革试题及答案
- 伪随机数生成考试考题及答案
- 抖音双十一活动策划方案
- 2025年云计算应用考试试题及答案
- 计算机技术员考试试题及答案概述
- 项目合同协议书
- 新疆出入境边防检查总站所属事业单位2025年度公开招聘笔试和合格分数线笔试历年典型考题及考点剖析附带答案详解
- 公共关系技巧的训练计划
- 行政法学的评估标准及试题及答案
- 网络问题识别与试题及答案
- GB/T 41631-2022充油电缆用未使用过的矿物绝缘油
- GB/T 39559.2-2020城市轨道交通设施运营监测技术规范第2部分:桥梁
- GB/T 19106-2013次氯酸钠
- 2023年江西省三支一扶真题及答案解析
- 中国铝业遵义氧化铝有限公司氧化铝工程分解分级槽基础工程 施工组织设计
- 中医临床路径
- 初中信息技术-算法基础知识教学教学课件
- 诉讼文书送达地址确认书
- 《中兴通讯绩效管理制度》-人事制度表格【管理资料】
- 铁路工务技术手册
- (完整版)硬件测试规范
评论
0/150
提交评论