CN107545366A - 全自动化集装箱码头的装船调度方法及系统 - Google Patents
全自动化集装箱码头的装船调度方法及系统 Download PDFInfo
- Publication number
- CN107545366A CN107545366A CN201710749352.0A CN201710749352A CN107545366A CN 107545366 A CN107545366 A CN 107545366A CN 201710749352 A CN201710749352 A CN 201710749352A CN 107545366 A CN107545366 A CN 107545366A
- Authority
- CN
- China
- Prior art keywords
- task
- queue
- uac
- horizontal transport
- automatic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 241001233278 Scalopus aquaticus Species 0.000 claims description 38
- 238000004519 manufacturing process Methods 0.000 claims description 19
- 230000001419 dependent effect Effects 0.000 claims description 17
- 238000009826 distribution Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 11
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 230000007306 turnover Effects 0.000 claims description 7
- 238000002864 sequence alignment Methods 0.000 claims description 5
- 239000000969 carrier Substances 0.000 claims 1
- 238000013459 approach Methods 0.000 abstract description 2
- 238000003860 storage Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 102100029469 WD repeat and HMG-box DNA-binding protein 1 Human genes 0.000 description 4
- 101710097421 WD repeat and HMG-box DNA-binding protein 1 Proteins 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Ship Loading And Unloading (AREA)
Abstract
本发明公开了一种全自动化集装箱码头的装船调度方法及系统,该方法包括:构造动态结构式流水线:设定任务优先级;根据拓扑法计算装船任务次序;根据拓扑序计算三角形堆箱斜面;根据作业路负荷动态分配自动导向水平运输车。本发明把一个集装箱从堆场搬到船上的作业设为一个任务,综合考虑机械设备的当前负荷,均衡设备执行效率与任务执行次序间的矛盾,每隔一个执行周期给出当前时间段内合理的待执行装船任务队列;按队列发任务,调用和配置相应的设备和码头资源并控制作业进度,进而正确、有序、高效地执行码头装船作业。
Description
技术领域
本发明涉及装船调度系统及方法,更具体地说,涉及一种全自动化集装箱码头的装船调度方法及系统。
背景技术
全自动集装箱码头是一种建立在现代计算机、通信网络和自动控制技术基础上的先进码头。相较传统码头可以降低用工成本,提高安全作业水平,提升作业效率。不同港口采用的自动化码头作业工艺不尽相同,码头布局也有差异。大多数全自动化集装箱码头采用双小车岸桥(STS)、自动导向水平运输车(AGV)、自动轨道吊(ASC)装卸工艺。图1是采用STS、AGV、ASC装卸工艺,堆场与岸线平行的全自动化码头。本发明以图1工艺为参考。
图1展示的装船流程为ASC从箱区BLOCK抓箱并移动到堆场海侧交换区WSTP,ASC放箱到在WSTP等候的AGV上,AGV载箱到STS交换区QCTP,STS从AGV抓箱放到船上。卸船流程与之相反。QCTP是STS与AGV的换箱作业区域,QCPB是AGV进出QCTP的缓冲区。WSTP是海侧ASC与AGV的换箱作业区域,Mate伴侣是WSTP上的集装箱缓存设备,AGV或ASC可以把载运的箱子先放在伴侣上,以释放AGV或ASC。BLOCK是堆场箱区。LSTP是陆侧集卡换箱作业区。
除了STS上的司机外,自动化码头依靠自动设备实现了无人操作,以此降低人工成本、提高人员安全性,并且机器可以不知疲倦地连续作业。但是,码头作业的主流程并没有发生根本性改变,只是实现流程的方式有了变化。装船流程依然是制定配载图、按配载要求发送装船指令、堆场出箱、水平运输车载箱、集装箱核对、岸桥装船,与传统作业不同的是把人工操作设备、调度设备、控制进度的环节换成了机器按指令自动执行。
如何调度和指挥自动设备执行任务,使设备协调运转,把设备的利用率最大化?传统码头由人根据作业情况组织作业和调度设备,自动化码头则是设计由计算机软件实现的策略,通过策略算法分析实时采集的工况数据并进行目标计算,根据计算结果向设备发送指令,驱动设备完成各种任务操作。
发明内容
针对上述问题,本发明提供一种全自动化集装箱码头的装船调度方法及系统。
为实现上述目的,本发明采用如下技术方案:
一种全自动化集装箱码头的装船调度方法,包括:构造动态结构式流水线;设定任务优先级;根据拓扑法计算装船任务次序;根据拓扑序计算三角形堆箱斜面;根据作业路负荷动态分配自动导向水平运输车。
进一步地,任务优先级的参数包括均衡岸桥负荷、可执行任务、在场箱翻倒频次、作业路配置的自动导向水平运输车数量、任务计划时间、均衡自动轨道吊负荷。
进一步地,根据拓扑法计算装船任务次序包括以下步骤:W:由任务箱信息WI组成的集合,W={WIi|WIi∈WQ,i∈N};二维矩阵TopologyMatrix[m][n]:用W作为二维矩阵的行、列,用0、1、-1描述<WIm,WIn>之间次序关系,0表示次序无关,1表示WIm在WIn之前,-1表示WIm在WIn之后;TopologySort()方法:根据TopologyMatrix[m][n]列出的关系对W做拓扑排序,根据排序结果修改任务箱信息WI的时间戳属性,任务箱信息WI之间的先后次序即可由时间戳确定;GetSourceWI()方法:获取没有物理和逻辑依赖的任务箱信息WI,这类任务箱信息WI对应的集装箱任务JOB具有高优先派发权。
进一步地,根据拓扑序计算三角形堆箱斜面包括以下步骤:4.1:对工作队列WQ内任务箱信息WI进行拓扑排序获得全序<TopoW,<>;4.2:找出TopoW中没有对本WQ有物理依赖的任务箱信息WI并排序生成KeyWIQueue队列;4.3:从KeyWIQueue取出最后一个任务箱信息WI记为KeyWILast;4.4:从TopoW中取出排在KeyWILast之后的WI生成RemainWIList列表;4.5:从RemainWIList中找出对KeyWILast有物理依赖的WI附加到KeyWIQueue队尾;4.6:重复步骤4.3、4.4、4.5,直到RemainWIList为空或从RemainWIList找不到对KeyWILast有物理依赖的任务箱信息WI为止;4.7:创建用于存储斜面的队列SlopeQueue;4.8:从KeyWIQueue队列取出队首元素记为KeyWINext;4.9:取出从TopoW首个元素到KeyWINext的所有元素生成集合Slope,把Slope附加到斜面队列SlopeQueue;4.10:重复4.8、4.9,直到KeyWIQueue为空;其中,W={WIi|WIi∈WQ,i∈N},TopoW=TopologySort(W)=><TopoW,<>,TopoS={WIi|WIi∈TopoW∧WIi∈SLOPE,i∈N},TopoS∈<TopoW,<>=><TopoS,<>,<TopoW,<>=><{TopoSj,j∈N},<>,W:工作队列WQ内的任务箱信息WI集合,SLOPE:工作队列WQ内任意斜面,TopoW:经过拓扑排序的W,TopoS:经过拓扑排序的SLOPE,<TopoW,<>:TopoW上WI的全序排列,<TopoS,<>:TopoS上WI的全序排列,{TopoSj,j∈N}:由不同TopoS组成的集合,<{TopoSj,j∈N},<>:TopoS集合上的全序排列。
进一步地,根据作业路负荷动态分配自动导向水平运输车包括以下步骤:5.1,针对流水线最小自动导向水平运输车设定值的自动导向水平运输车分配;5.2,在5.1的分配基础上,针对流水线最大自动导向水平运输车设定值的自动导向水平运输车分配。
进一步地,步骤5.1进一步包括以下步骤:6.1,计算可调度的自动导向水平运输车数量,记为AgvCount;6.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;6.3,从WLL找出WL.UAC最小且WL.UAC小于WL.MIA的WL;6.4,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;6.5,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;6.6,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;6.7,AgvCount:=AgvCount–NeedAgvCount;6.8,迭代6.2、6.3、6.4、6.5、6.6、6.7步骤,直到AgvCount为0或WL.CJQ为空或WLL中找不到WL.UAC最小且WL.UAC小于WL.MIA的WL;其中,WL为流水线对象;WLL为流水线对象列表;WL.EJQ为流水线任务作业队列;WL.CJQ为流水线可执行任务队列;WL.UAC为流水线自动导向水平运输车用量;WL.MAA为流水线最大自动导向水平运输车设定值;WL.MIA为流水线最小自动导向水平运输车设定值。
进一步地,步骤5.2进一步包括以下步骤:7.1,计算可调度的自动导向水平运输车数量,记为AgvCount;7.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;7.3,从WLL找出WL.UAC小于WL.MIA的WL;7.4,WL.UAC:=WL.MIA,为流水线保留最小数量的自动导向水平运输车;7.5,AgvCount:=AgvCount–(WL.MIA-WL.UAC);7.6,迭代步骤7.2、7.3、7.4、7.5直到找不到WL.UAC小于WL.MIA的WL;7.7,从WLL找出WL.UAC最小且WL.UAC小于WL.MAA的WL;7.8,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;7.9,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;7.10,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;7.11,AgvCount:=AgvCount–NeedAgvCount;7.12,迭代7.7、7.8、7.9、7.10、7.11步骤,直到AgvCount为0或WL.CJQ为空或找不到WL.UAC最小且WL.UAC小于WL.MAA的WL。
为实现上述目的,本发明还采用如下技术方案:
一种全自动化集装箱码头的装船调度系统,包括动态结构式流水线模块、任务优先级模块、装船任务次序模块、三角形堆箱斜面模块、自动导向水平运输车分配模块。其中,动态结构式流水线模块执行以下操作:创建流水线对象,维护流水线上的任务队列;任务优先级模块设定任务优先级;装船任务次序模块根据拓扑法计算装船任务次序;三角形堆箱斜面模块根据拓扑序计算三角形堆箱斜面;自动导向水平运输车分配模块根据作业路负荷动态分配自动导向水平运输车。
进一步地,任务优先级模块的参数包括均衡岸桥负荷、可执行任务、在场箱翻倒频次、作业路配置的自动导向水平运输车数量、任务计划时间、均衡自动轨道吊负荷。
进一步地,装船任务次序模块执行以下操作:W:由任务箱信息WI组成的集合,W={WIi|WIi∈WQ,i∈N};二维矩阵TopologyMatrix[m][n]:用W作为二维矩阵的行、列,用0、1、-1描述<WIm,WIn>之间次序关系,0表示次序无关,1表示WIm在WIn之前,-1表示WIm在WIn之后;TopologySort()方法:根据TopologyMatrix[m][n]列出的关系对W做拓扑排序,根据排序结果修改任务箱信息WI的时间戳属性,任务箱信息WI之间的先后次序即可由时间戳确定;GetSourceWI()方法:获取没有物理和逻辑依赖的任务箱信息WI,这类任务箱信息WI对应的集装箱任务JOB具有高优先派发权。
进一步地,三角形堆箱斜面模块执行以下操作:11.1:对工作队列WQ内任务箱信息WI进行拓扑排序获得全序<TopoW,<>;11.2:找出TopoW中没有对本WQ有物理依赖的任务箱信息WI并排序生成KeyWIQueue队列;11.3:从KeyWIQueue取出最后一个任务箱信息WI记为KeyWILast;11.4:从TopoW中取出排在KeyWILast之后的WI生成RemainWIList列表;11.5:从RemainWIList中找出对KeyWILast有物理依赖的WI附加到KeyWIQueue队尾;11.6:重复步骤11.3、11.4、11.5,直到RemainWIList为空或从RemainWIList找不到对KeyWILast有物理依赖的任务箱信息WI为止;11.7:创建用于存储斜面的队列SlopeQueue;11.8:从KeyWIQueue队列取出队首元素记为KeyWINext;11.9:取出从TopoW首个元素到KeyWINext的所有元素生成集合Slope,把Slope附加到斜面队列SlopeQueue;11.10:重复11.8、11.9,直到KeyWIQueue为空;其中,W={WIi|WIi∈WQ,i∈N},TopoW=TopologySort(W)=><TopoW,<>,TopoS={WIi|WIi∈TopoW∧WIi∈SLOPE,i∈N},<TopoW,<>=><TopoS,<>,<TopoW,<>=><{TopoSj,j∈N},<>,W:工作队列WQ内的任务箱信息WI集合,SLOPE:工作队列WQ内任意斜面,TopoW:经过拓扑排序的W,TopoS:经过拓扑排序的SLOPE,<TopoW,<>:TopoW上WI的全序排列,<TopoS,<>:TopoS上WI的全序排列,{TopoSj,j∈N}:由不同TopoS组成的集合,<{TopoSj,j∈N},<>:TopoS集合上的全序排列。
进一步地,自动导向水平运输车分配模块包括:第一子模块,第一子模块针对流水线最小自动导向水平运输车设定值的自动导向水平运输车分配;第二子模块,第二子模块针对流水线最大自动导向水平运输车设定值的自动导向水平运输车分配。
进一步地,第一子模块执行以下操作:13.1,计算可调度的自动导向水平运输车数量,记为AgvCount;13.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;13.3,从WLL找出WL.UAC最小且WL.UAC小于WL.MIA的WL;13.4,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;13.5,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;13.6,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;13.7,AgvCount:=AgvCount–NeedAgvCount;13.8,迭代13.2、13.3、13.4、13.5、13.6、13.7步骤,直到AgvCount为0或WL.CJQ为空或WLL中找不到WL.UAC最小且WL.UAC小于WL.MIA的WL;其中,WL为流水线对象;WLL为流水线对象列表;WL.EJQ为流水线任务作业队列;WL.CJQ为流水线可执行任务队列;WL.UAC为流水线自动导向水平运输车用量;WL.MAA为流水线最大自动导向水平运输车设定值;WL.MIA为流水线最小自动导向水平运输车设定值。
进一步地,第二子模块执行以下操作:14.1,计算可调度的自动导向水平运输车数量,记为AgvCount;14.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;14.3,从WLL找出WL.UAC小于WL.MIA的WL;14.4,WL.UAC:=WL.MIA,为流水线保留最小数量的自动导向水平运输车;14.5,AgvCount:=AgvCount–(WL.MIA-WL.UAC);14.6,迭代步骤14.2、14.3、14.4、14.5直到找不到WL.UAC小于WL.MIA的WL;14.7,从WLL找出WL.UAC最小且WL.UAC小于WL.MAA的WL;14.8,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;14.9,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;14.10,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;14.11,AgvCount:=AgvCount–NeedAgvCount;14.12,迭代14.7、14.8、14.9、14.10、14.11步骤,直到AgvCount为0或WL.CJQ为空或找不到WL.UAC最小且WL.UAC小于WL.MAA的WL。
在上述技术方案中,本发明的全自动化集装箱码头的装船调度方法及系统设计了一个集装箱自动化码头的装船调度策略:把一个集装箱从堆场搬到船上的作业设为一个任务,综合考虑机械设备的当前负荷,均衡设备执行效率与任务执行次序间的矛盾,每隔一个执行周期给出当前时间段内合理的待执行装船任务队列;按队列发任务,调用和配置相应的设备和码头资源并控制作业进度,进而正确、有序、高效地执行码头装船作业。
附图说明
图1是堆场与岸线平行的全自动化码头示意图;
图2a和2b是本发明的一种三角形堆箱次序示意图;
图3是TopologyMatrix矩阵示意图;
图4是集装箱堆码次序示意图;
图5a和5b是本发明的另一种堆箱示意图;
图6是AGV数量动态控制示意图;
图7a、7b和7c是任务派发算法的流程示意图。
具体实施方式
下面结合附图和实施例进一步说明本发明的技术方案。
首先定义本发明涉及的部分术语:
作业路:把集装箱从堆场搬到船上的作业途径,包括相关的岸桥STS、自动运输车AGV、自动轨道吊ASC、海侧交换区伴侣、车道等设备和资源。作业路核心设备是STS,码头作业时以使STS全负荷运转为目标。任务箱信息WI(WorkInstruction):一个任务箱信息,含船箱位,装船时的物理和逻辑前置箱等内容。
工作队列WQ(WorkQueue):一般船上一个Bay分为一个或多个WQ。WQ包含一个WI队列,并有船号、舱位、计划作业时间、对应的STS作业设备等信息和内容。
集装箱任务JOB:把一个集装箱从堆场搬到船上的作业任务。JOB由STSJOB、AGVJOB、ASCJOB三个分量构成。装船JOB含任务执行的过程信息,并通过任务箱ID与WI关联。JOB随任务执行进度经历“待执行-执行-执行结束”的过程,描述任务状态和步骤的JOB内容会随执行进度而改变。JOB有一个计划时间戳属性,记为JOB-PLANTIME。
任务状态与节点:任务状态,任务的状态信息,如集装箱在AGV上。任务节点,指任务执行过程中的执行步骤。不同的任务节点既可对应不同的任务状态,也可对应相同任务状态。如AGV在STS载箱与AGV载箱行驶在车道上,都是AGV在载箱,但执行的任务节点不同。任务节点由起始到终止的方向不可逆。
拓扑依赖:因为配载的关系,装船WI一般会有前置依赖箱任务,即必须等前置箱装船后才能装对它有依赖关系的下一个箱子。物理依赖,上下层箱的堆码依赖关系。逻辑依赖,非物理依赖的前置依赖关系。前置依赖箱是WI的属性,本发明用一组箱号字符串描述,记为PREPHYSICAL和PRELOGICAL。
在本发明中,影响装船调度策略的因素主要有以下几项:
均衡岸桥负荷:
理论上,当所有作业STS的工作负荷达到额定负荷的上限时,码头的装卸作业效率最大。多数情况下,多路或单路STS作业的效率还受限于作业路AGV数量、ASC负荷状况、船舶配载、堆场积载等工况的影响。多路STS并行作业时,按照每台STS作业能力均衡STS负荷可以获得理想的效率。均衡STS负荷既是影响调度策略的因素也是调度策略要实现的目标。
可执行任务:
不是从堆场任意拉一个出口箱就能装上船的。码头方要根据船舶预配载要求制定配载图,并通过船方审核后方能按配载装船。配载图结合装船工艺可以得到装船任务序列。这个关系用函数式1描述
G(x)=S
G:装船堆箱工艺 式(1)
x:配载
S:装船任务序列
S是一个以物理和逻辑依赖关系组成的偏序序列。如果把水平载运系统看作传送带,在某个时刻,从堆场决策出箱时需按偏序关系从S中找出可出箱的任务集,一般为S中已解除物理和逻辑依赖关系的任务,该任务集即为可执行任务。
任务计划时间:
STS装完一Bay后,STS大车从船头或船尾向另一侧移动,按序做另一船Bay的装船作业。因此,可以根据STS工作效率对每个Bay的作业推算一个计划时间,又因为每个Bay的任务集可划分成一个或多个WQ,所以每个WQ都有一个计划时间。随着作业的持续,这个时间会修正。该时间是设定任务优先级的依据之一。
在场箱翻倒频次:
装船时,如果配载不合理,出箱任务队列从箱区出箱的次序与在场箱积载的位置有冲突,可能导致频繁倒箱。可以优化出箱次序,减少在场箱翻倒频次。
作业路配置的AGV数量:
AGV基本不受任务属性的影响,具有比较大分配自由度。在某个时间段内,为某作业路配置一定数量的AGV可以控制该作业路的作业效率。多路作业时,动态调整各作业路的AGV的使用量,可以控制整个码头作业的综合效率。
均衡ASC负荷:
与传统码头不同的是自动化码头采用端出箱方式,自动化转运车AGV主要在海侧WSTP实现与堆场的换箱作业,即每个箱区只能在WSTP出箱。每次出箱ASC大车都要移动,不能固定在某场Bay持续作业。因此,要求多箱区并发作业以提高效率。当各箱区ASC均衡负荷时,作业效率最高。事实上,受配载出箱次序和各ASC作业速度差异的影响,会造成各箱区ASC负荷失衡的情况。可以优化出箱次序,均衡ASC负荷。
构造动态结构式流水线:
针对上述因素,本发明构造动态结构式流水线作为策略模型的基本组成对象。本发明首先公开一种全自动化集装箱码头的装船调度系统,其主要包括动态结构式流水线模块、任务优先级模块、装船任务次序模块、三角形堆箱斜面模块、自动导向水平运输车分配模块。动态结构指组成流水线的设备构成是动态变化的,在装船作业路中,只有STS是不变的,但与STS有关的AGV缓冲车道(QCPB)也是变化的。其它工序的设备及其缓冲设备或资源(Mate伴侣,海侧交换区WSTP车道)都是可变的。通过流水线结构与组成的变化为智能控制和调整各作业路的生产奠定基础。
因此,分析作业路装船任务流,每个任务都经历堆场出箱、AGV载运、STS装船的过程,任务是并发重叠执行的,符合流水线生产特征。通过式2可知:在流水线上每条任务的执行时间可压缩为一道工序的执行时间,所以,采用流水线结构和工艺能有效提高生产效率。
T=m*△t+(n-1)*△t
当n>>m时,T=(n-1)*△t 式(2)
T:任务执行时间总和
n:任务量
m:每条任务的工序数
△t:每个工序的执行时间
理论上,流水线的效率取决于流水线中处理能力最低的工序。作业路中STS工序的设备是确定的,最大作业能力相对稳定。其它工序用到的设备及数量都是动态变化的。AGV工序作业能力随作业路AGV数量的变化而动态变化。作业路ASC工序的设备使用量与作业路任务关联的出箱箱区有关,在出箱任务序列合理(均衡出箱)的情况下,ASC工序的作业能力也是由ASC数量决定。只要AGV、ASC工序配置的设备量足够多,那么STS工序的最大效率就是作业路的最大效率。
因为在绑定任务之前,AGV不受装船任务序列的约束,所以作业路选择AGV的自由度最高。通过设置某作业路最大、最小可用AGV数量,可以控制该作业路的作业能力,从而实现长、短杆作业目标。
本发明给出作业路动态结构式流水线对象WL(WorkLine)基本数据结构:
STSID:作业路STSID;
MAA(MaxAgvNumber):设定的最大AGV数;
MIA(MinAgvNumber):设定的最小AGV数;
UGL(UsedAgvList):已使用的AGV列表;
USL(UsedAscList):已使用的ASC列表;
UML(UsedMateList):已使用的Mate伴侣列表;
EJQ(ExcutingJobQueue):正在执行的任务队列;
CJQ(CanDispatchJobQueue):可以派发的任务队列;
FJL(FinishedJobList):已完成的任务集。
拓扑法计算装船任务次序
参考式1,通过配载和装船堆箱工艺计算出某WQ内各WI的物理和逻辑依赖箱。舱下与舱上的堆箱工艺不同。舱下设有集装箱导槽,箱子可以沿导槽直接放置,所以舱下WI只要设置物理依赖就可以了。舱上比较复杂,舱上堆箱要考虑相对层高,否则会有安全问题,还要考虑规避插箱作业,所以舱上装船对堆码形态有要求,目前采用舱上三角形堆箱工艺是比较流行的做法。
因此,本发明利用装船任务次序模块根据拓扑法计算装船任务次序,如图2a和2b所示。图2a是舱上某WQ的三角形堆箱次序,按这个次序堆箱能堆出三角形阶梯形态;图2b所示,三角形堆箱工艺可以解决相对层高和插箱的问题。
设WQ内WI集合为W,WI之间的次序关系本质上是偏序关系<W,≤>。舱下是上层排在下层之后,舱上则按三角阶梯依次排序。可以用拓扑排序法根据物理和逻辑依赖关系对W做拓扑排序。本发明设计偏序对象定义拓扑数据结构及操作方法。说明如下:
W:由WI组成的集合,W={WIi|WIi∈WQ,i∈N};
二维矩阵TopologyMatrix[m][n]:用W作为二维矩阵的行、列。用0、1、-1描述<WIm,WIn>之间次序关系,0表示次序无关,1表示WIm在WIn之前,-1表示WIm在WIn之后,如图3所示;
TopologySort()方法:根据TopologyMatrix[m][n]列出的关系对W做拓扑排序,根据排序结果修改WI时间戳WI-PLANTIME属性,WI之间的先后次序即可由时间戳确定;
GetSourceWI()方法:获取没有物理和逻辑依赖的WI,这类WI对应的JOB具有高优先派发权。
基于拓扑序的三角形堆箱斜面计算方法
如图2b所示,研究舱上三角形堆箱工艺发现只在某阶梯斜面的船箱位上堆箱,无论什么次序都可以满足控制相对层高和避免插箱的要求。因此,同一个斜面上的堆箱次序可以是任意的。考虑到AGV工序仅做水平搬运,可推断同斜面的箱子具有同一的堆场出箱优先级,这样,可以把一个出箱点增加为多个,有利于均衡堆场出箱和优化在场箱翻倒的频次。
因此,本发明利用三角形堆箱斜面模块根据拓扑序计算三角形堆箱斜面,如图4所示A、B、C三个斜面,如果B斜面阶梯上的箱位堆满后,C斜面上7、8、9、10箱位上箱子的堆码次序是任意的。在派发任务时,计算机如何算出某一斜面上的箱子并在派发时根据堆场均衡与优化倒箱的要求调整次序呢?本发明根据自身模型特点采用创新的算法实现这个需求。
首先,根据配载和三角形堆放工艺确定WI的物理和逻辑依赖关系,通过拓扑排序,同一斜面内的箱子是按序连续排列的,把斜面作为集合的元素,斜面与斜面也是按序排列的。
W={WIi|WIi∈WQ,i∈N}
TopoW=TopologySort(W)=><TopoW,<>
TopoS={WIi|WIi∈TopoW∧WIi∈SLOPE,i∈N}
<TopoW,<>=><TopoS,<>
<TopoW,<>=><{TopoSj,j∈N},<>
W:WQ内WI集合
SLOPE:WQ内任意斜面
TopoW:经过拓扑排序的W
TopoS:经过拓扑排序的SLOPE
<TopoW,<>:TopoW上WI的全序排列
<TopoS,<>:TopoS上WI的全序排列
{TopoSj,j∈N}:由不同TopoS组成的集合
<{TopoSj,j∈N},<>:TopoS集合上的全序排列
式3说明斜面集{TopoSj,j∈N}也是全序排列的,只要找出每个TopoS内最后一个WI即可从相邻斜面TopoSj、TopoS(j+1)中分离出斜面S(j+1)。观察图5a、5b中带箭头的KEY线,KEY线经过WQ最底层箱1、3、6、10、14、19、24、30。底层箱的一个特征是在本WQ内没有物理依赖关系,并且它们是各自斜面的尾箱。再看KEY线经过的35、39、42,这几个箱子也是斜面尾箱,它们在边侧按物理关系依次压到最后一个底层箱30上。只需根据物理关系即可从30箱按序找出它们。
下面是获取斜面的算法步骤:
1、对WQ内WI进行拓扑排序获得全序<TopoW,<>;
2、找出TopoW中没有对本WQ有物理依赖的WI并排序生成KeyWIQueue队列;
3、从KeyWIQueue取出最后一个WI记为KeyWILast;
4、从TopoW中取出排在KeyWILast之后的WI生成RemainWIList列表;
5、从RemainWIList中找出对KeyWILast有物理依赖的WI附加到KeyWIQueue队尾;
6、重复步骤3、4、5,直到RemainWIList为空或从RemainWIList找不到对KeyWILast有物理依赖的WI为止;
7、创建用于存储斜面的队列SlopeQueue;
8、从KeyWIQueue队列取出队首元素记为KeyWINext;
9、取出从TopoW首个元素到KeyWINext的所有元素生成集合Slope,把Slope附加到斜面队列SlopeQueue;
10、重复8、9,直到KeyWIQueue为空。
其次,发箱与装船次序受WI物理和逻辑依赖关系的约束。正常工况作业,只有在WI依赖的前置箱任务已发送到作业路流水线后才会派发本WI的任务。因此,把斜面上所有WI的逻辑依赖箱统一置为前斜面上的箱子,使所有斜面箱具有等效的依赖关系,即可实现同一斜面箱发送次序的任意性。具体算法如下:
1、在前述算法的基础上取斜面集队列SlopeQueue;
2、取出SlopeQueue队首元素记为SlopeLast;
3、取出SlopeQueue队首元素记为SlopeNext;
4、取SlopeLast里每个WI的箱号ID生成字符串组CtnIDSet;
5、把SlopeNext里每个WI逻辑依赖属性PRELOGICAL的内容替换成CtnIDSet
6、重复步骤2、3、4、5,直到SlopeQueue为空。
任务优先级设定策略
影响装船调度策略的因素是构成本装船策略模型的基本约束,因素通过作用于任务的优先级而影响任务的执行顺序,且各因素相互制约互相协调。如:
WQ内任务计划时间与可执行任务的拓扑序有关;
多路作业并发执行时,均衡岸桥负荷需要动态均衡作业路配置的AGV数量;
要提高作业路的效率首先要均衡ASC负荷;
减少倒箱频次能提高ASC使用效率,进而提高作业路效率;
在某个时刻,各作业路争用AGV或ASC资源时,可以依据计划时间合理分配AGV。
进一步研究因素间的相关性及对作业影响的程度,本发明发现不同因素对于任务优先级的影响是不同的,因素间也有一种优先关系,依据这种优先关系去决策任务的优先级。因此,本发明在任务优先级模块中设定任务优先级,其涉及的参数包括:均衡岸桥负荷、可执行任务、在场箱翻倒频次、作业路配置的自动导向水平运输车数量、任务计划时间、均衡自动轨道吊负荷,如下表1所示:
表(1)
多数工况可直接使用表1决策任务优先级。有特定需求时,可以针对某些因素量化优先级,参考表1设置优先级权系数,从量化角度计算任务优先级。如在均衡ASC负荷与任务计划时间之间做优先决策时,设均衡ASC负荷权系数为WASC,计划时间权系数为WT,WASC>WT。
根据作业路负荷动态分配AGV
作业路负荷指作业路上正在执行的任务量,作业路之间要实现均衡负荷必须合理使用设备资源。另外,码头作业路根据岸桥当前作业Bay箱量的多少有长、短杆的设置,长杆作业路的负荷大,要求资源优先。
如何配置资源、控制进度、控制效率?理论上,流水线的效率取决于物料进给量和流水线上各工序的处理能力,在进给物料确定的情况下,流水线的效率瓶颈是处理能力最低的工序。所以,通过调整某工序的作业能力即可控制整个流水线的生产效率。因此,本发明利用自动导向水平运输车分配模块根据作业路负荷动态分配自动导向水平运输车。
在某个时间窗内,ASC工序的设备配置受配载及出箱点制约,只有AGV可以自由分配。如果能实时调整作业路配置的AGV数量,即可控制AGV工序的作业能力,进而控制流水线的作业能力。本发明设计任务派发控制环,实时反馈各作业路AGV使用量,通过控制派发任务的数量实现对作业路AGV数量的动态控制,并控制作业路的作业进度,如图6所示。
图6控制环从流水线角度把“可执行任务”看做进给物料,在一段时间内,物料的进给量受流水线当前处理能力的制约。把可执行任务转化为需要的AGV数量同作业路中已使用的AGV数量一起作为输入参数输给任务派发控制器,通过任务派发控制器算法的计算,选择适合的任务派发到任务作业队列。
本发明由自动导向水平运输车分配模块执行任务派发算法,自动导向水平运输车分配模块包括第一子模块和第二子模块。相应地,算法分为两个部分:A)第一子模块针对流水线最小AGV设定值的AGV分配;B)第二子模块在A的分配基础上,针对流水线最大AGV设定值的AGV分配。A、B两部分按顺序执行。
设流水线对象为WL(WorkLine);
设流水线对象列表为WLL(WorkLineList);
设流水线任务作业队列为WL.EJQ(WorkLine.ExcutingJobQueue);
设流水线可执行任务队列为WL.CJQ(WorkLine.CanDispatchJobQueue);
设流水线AGV用量为WL.UAC(WorkLine.UsedAgvCount)
设流水线最大AGV设定值为WL.MAA(WorkLine.MaxAgvNumber);
设流水线最小AGV设定值为WL.MIA(WorkLine.MinAgvNumber);
如图7a、7b所示:
A部分算法:
S7.1、计算当前可调度的AGV数量,记为AgvCount;
S7.2、依据WL.EJQ计算每条流水线的AGV用量WL.UAC;
S7.3、从WLL找出WL.UAC最小且WL.UAC小于WL.MIA的WL
S7.4、计算海侧ASC设备为空闲状态的箱区列表IdleBlockList;
S7.5、关联WL.CJQ与IdleBlockList,通过均衡ASC负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;
S7.6、取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算JobFirst的AGV需量NeedAgvCount,如果JobFirst是双箱任务之一,且另一任务在WL.EJQ,则NeedAgvCount为0;
S7.7、AgvCount:=AgvCount–NeedAgvCount;
S7.8、迭代S7.2、S7.3、S7.4、S7.5、S7.6、S7.7步骤,直到AgvCount为0或WL.CJQ为空或WLL中找不到WL.UAC最小且WL.UAC小于WL.MIA的WL。
B部分算法:
S8.1、计算当前可调度的AGV数量,记为AgvCount;
S8.2、依据WL.EJQ计算每条流水线的AGV用量WL.UAC;
S8.3、从WLL找出WL.UAC小于WL.MIA的WL;
S8.4、WL.UAC:=WL.MIA,为流水线保留最小数量的AGV;
S8.5、AgvCount:=AgvCount–(WL.MIA-WL.UAC);
S8.6、迭代步骤S8.2、S8.3、S8.4、S8.5直到找不到WL.UAC小于WL.MIA的WL;
S8.7、从WLL找出WL.UAC最小且WL.UAC小于WL.MAA的WL;
S8.8、计算海侧ASC设备为空闲状态的箱区列表IdleBlockList;
S8.9、关联WL.CJQ与IdleBlockList,通过均衡ASC负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;
S8.10、取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算JobFirst的AGV需量NeedAgvCount,如果JobFirst是双箱任务之一,且另一任务在WL.EJQ,则NeedAgvCount为0;
S8.11、AgvCount:=AgvCount–NeedAgvCount;
S8.12、迭代S8.7、S8.8、S8.9、S8.10、S8.11步骤,直到AgvCount为0或WL.CJQ为空或找不到WL.UAC最小且WL.UAC小于WL.MAA的WL。
进一步地,图7c具体展示了7a和7b中任务派发流程的具体步骤,即:
判断WL.CJQ.Count>0以及AgvCount>0是否同时满足;
找出海侧ASC空闲的箱区IdleBlockist;
关联IdleBlockist与WL.CJQ,用均衡ASC负荷算法计算WL.CJQ任务优先级;
对WL.CJQ排序;
取出WL.CJQ队首JOBFirst附加到WL.CJQ队尾;
计算JOBFirst的AGV需量NeedAgvCount;
AgvCount:=AgvCount-NeedAgvCount。
本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本发明,而并非用作为对本发明的限定,只要在本发明的实质精神范围内,对以上所述实施例的变化、变型都将落在本发明的权利要求书范围内。
Claims (14)
1.一种全自动化集装箱码头的装船调度方法,其特征在于,包括:
构造动态结构式流水线;
设定任务优先级;
根据拓扑法计算装船任务次序;
根据拓扑序计算三角形堆箱斜面;
根据作业路负荷动态分配自动导向水平运输车。
2.如权利要求1所述的全自动化集装箱码头的装船调度方法,其特征在于:
所述任务优先级的参数包括均衡岸桥负荷、可执行任务、在场箱翻倒频次、作业路配置的自动导向水平运输车数量、任务计划时间、均衡自动轨道吊负荷。
3.如权利要求1所述的全自动化集装箱码头的装船调度方法,其特征在于,所述根据拓扑法计算装船任务次序包括以下步骤:
W:由任务箱信息WI组成的集合,W={WIi|WIi∈WQ,i∈N};
二维矩阵TopologyMatrix[m][n]:用W作为二维矩阵的行、列。用0、1、-1描述<WIm,WIn>之间次序关系,0表示次序无关,1表示WIm在WIn之前,-1表示WIm在WIn之后;
TopologySort()方法:根据TopologyMatrix[m][n]列出的关系对W做拓扑排序,根据排序结果修改任务箱信息WI的时间戳属性,任务箱信息WI之间的先后次序即可有时间戳确定;
GetSourceWI()方法:获取没有物理和逻辑依赖的任务箱信息WI,这类任务箱信息WI对应的集装箱任务JOB具有高优先派发权。
4.如权利要求1所述的全自动化集装箱码头的装船调度方法,其特征在于,根据拓扑序计算三角形堆箱斜面包括以下步骤:
4.1:对工作队列WQ内任务箱信息WI进行拓扑排序获得全序<TopoW,<>;
4.2:找出TopoW中没有对本WQ有物理依赖的任务箱信息WI并排序生成KeyWIQueue队列;
4.3:从KeyWIQueue取出最后一个任务箱信息WI记为KeyWILast;
4.4:从TopoW中取出排在KeyWILast之后的WI生成RemainWIList列表;
4.5:从RemainWIList中找出对KeyWILast有物理依赖的WI附加到KeyWIQueue队尾;
4.6:重复步骤4.3、4.4、4.5,直到RemainWIList为空或从RemainWIList找不到对KeyWILast有物理依赖的任务箱信息WI为止;
4.7:创建用于存储斜面的队列SlopeQueue;
4.8:从KeyWIQueue队列取出队首元素记为KeyWINext;
4.9:取出从TopoW首个元素到KeyWINext的所有元素生成集合Slope,把Slope附加到斜面队列SlopeQueue;
4.10:重复4.8、4.9,直到KeyWIQueue为空;
其中,
W={WIi|WIi∈WQ,i∈N}
TopoW=TopologySort(W)=><TopoW,<>
TopoS={WIi|WIi∈TopoW∧WIi∈SLOPE,i∈N}
<mrow>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>S</mi>
<mo>&Element;</mo>
<mo>{</mo>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>S</mi>
<mi>j</mi>
<mo>,</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>N</mi>
<mo>}</mo>
<mo>=</mo>
<mo>></mo>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>S</mi>
<mi>j</mi>
<mo>&SubsetEqual;</mo>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>W</mi>
</mrow>
<TopoW,<>=><TopoS,<>
<TopoW,<>=><{TopoSj,j∈N},<>
W:工作队列WQ内的任务箱信息WI集合
SLOPE:工作队列WQ内任意斜面
TopoW:经过拓扑排序的W
TopoS:经过拓扑排序的SLOPE
<TopoW,<>:TopoW上WI的全序排列
<TopoS,<>:TopoS上WI的全序排列
{TopoSj,j∈N}:由不同TopoS组成的集合
<{TopoSj,j∈N},<>:TopoS集合上的全序排列。
5.如权利要求1所述的全自动化集装箱码头的装船调度方法,其特征在于,根据作业路负荷动态分配自动导向水平运输车包括以下步骤:
5.1,针对流水线最小自动导向水平运输车设定值的自动导向水平运输车分配;
5.2,在5.1的分配基础上,针对流水线最大自动导向水平运输车设定值的自动导向水平运输车分配。
6.如权利要求5所述的全自动化集装箱码头的装船调度方法,其特征在于,步骤5.1进一步包括以下步骤:
6.1,计算当前可调度的自动导向水平运输车数量,记为AgvCount;
6.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;
6.3,从WLL找出WL.UAC最小且WL.UAC小于WL.MIA的WL
6.4,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;
6.5,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;
6.6,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;
6.7,AgvCount:=AgvCount–NeedAgvCount;
6.8,迭代6.2、6.3、6.4、6.5、6.6、6.7步骤,直到AgvCount为0或WL.CJQ为空或WLL中找不到WL.UAC最小且WL.UAC小于WL.MIA的WL;
其中,
WL为流水线对象;
WLL为流水线对象列表;
WL.EJQ为流水线任务作业队列;
WL.CJQ为流水线可执行任务队列;
WL.UAC为流水线自动导向水平运输车用量;
WL.MAA为流水线最大自动导向水平运输车设定值;
WL.MIA为流水线最小自动导向水平运输车设定值。
7.如权利要求6所述的全自动化集装箱码头的装船调度方法,其特征在于,步骤5.2进一步包括以下步骤:
7.1,计算当前可调度的自动导向水平运输车数量,记为AgvCount;
7.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;
7.3,从WLL找出WL.UAC小于WL.MIA的WL;
7.4,WL.UAC:=WL.MIA,为流水线保留最小数量的自动导向水平运输车;
7.5,AgvCount:=AgvCount–(WL.MIA-WL.UAC);
7.6,迭代步骤7.2、7.3、7.4、7.5直到找不到WL.UAC小于WL.MIA的WL;
7.7,从WLL找出WL.UAC最小且WL.UAC小于WL.MAA的WL;
7.8,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;
7.9,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;
7.10,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;
7.11,AgvCount:=AgvCount–NeedAgvCount;
7.12,迭代7.7、7.8、7.9、7.10、7.11步骤,直到AgvCount为0或WL.CJQ为空或找不到WL.UAC最小且WL.UAC小于WL.MAA的WL。
8.一种全自动化集装箱码头的装船调度系统,其特征在于,包括:
动态结构式流水线模块、任务优先级模块、装船任务次序模块、三角形堆箱斜面模块、自动导向水平运输车分配模块;
所述动态结构式流水线模块执行以下操作:创建流水线对象,维护流水线上的任务队列;
所述任务优先级模块设定任务优先级;
所述装船任务次序模块根据拓扑法计算装船任务次序;
所述三角形堆箱斜面模块根据拓扑序计算三角形堆箱斜面;
所述自动导向水平运输车分配模块根据作业路负荷动态分配自动导向水平运输车。
9.如权利要求8所述的全自动化集装箱码头的装船调度系统,其特征在于:
所述任务优先级模块的参数包括均衡岸桥负荷、可执行任务、在场箱翻倒频次、作业路配置的自动导向水平运输车数量、任务计划时间、均衡自动轨道吊负荷。
10.如权利要求8所述的全自动化集装箱码头的装船调度系统,其特征在于,所述装船任务次序模块执行以下操作:
W:由任务箱信息WI组成的集合,W={WIi|WIi∈WQ,i∈N};
二维矩阵TopologyMatrix[m][n]:用W作为二维矩阵的行、列。用0、1、-1描述<WIm,WIn>之间次序关系,0表示次序无关,1表示WIm在WIn之前,-1表示WIm在WIn之后;
TopologySort()方法:根据TopologyMatrix[m][n]列出的关系对W做拓扑排序,根据排序结果修改任务箱信息WI的时间戳属性,任务箱信息WI之间的先后次序即可有时间戳确定;
GetSourceWI()方法:获取没有物理和逻辑依赖的任务箱信息WI,这类任务箱信息WI对应的集装箱任务JOB具有高优先派发权。
11.如权利要求8所述的全自动化集装箱码头的装船调度系统,其特征在于,所述三角形堆箱斜面模块执行以下操作:
11.1:对工作队列WQ内任务箱信息WI进行拓扑排序获得全序<TopoW,<>;
11.2:找出TopoW中没有对本WQ有物理依赖的任务箱信息WI并排序生成KeyWIQueue队列;
11.3:从KeyWIQueue取出最后一个任务箱信息WI记为KeyWILast;
11.4:从TopoW中取出排在KeyWILast之后的WI生成RemainWIList列表;
11.5:从RemainWIList中找出对KeyWILast有物理依赖的WI附加到KeyWIQueue队尾;
11.6:重复步骤11.3、11.4、11.5,直到RemainWIList为空或从RemainWIList找不到对KeyWILast有物理依赖的任务箱信息WI为止;
11.7:创建用于存储斜面的队列SlopeQueue;
11.8:从KeyWIQueue队列取出队首元素记为KeyWINext;
11.9:取出从TopoW首个元素到KeyWINext的所有元素生成集合Slope,把Slope附加到斜面队列SlopeQueue;
11.10:重复11.8、11.9,直到KeyWIQueue为空;
其中,
W={WIi|WIi∈WQ,i∈N}
TopoW=TopologySort(W)=><TopoW,<>
TopoS={WIi|WIi∈TopoW∧WIi∈SLOPE,i∈N}
<mrow>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>S</mi>
<mo>&Element;</mo>
<mo>{</mo>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>S</mi>
<mi>j</mi>
<mo>,</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>N</mi>
<mo>}</mo>
<mo>=</mo>
<mo>></mo>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>S</mi>
<mi>j</mi>
<mo>&SubsetEqual;</mo>
<mi>T</mi>
<mi>o</mi>
<mi>p</mi>
<mi>o</mi>
<mi>W</mi>
</mrow>
<TopoW,<>=><TopoS,<>
<TopoW,<>=><{TopoSj,j∈N},<>
W:工作队列WQ内的任务箱信息WI集合
SLOPE:工作队列WQ内任意斜面
TopoW:经过拓扑排序的W
TopoS:经过拓扑排序的SLOPE
<TopoW,<>:TopoW上WI的全序排列
<TopoS,<>:TopoS上WI的全序排列
{TopoSj,j∈N}:由不同TopoS组成的集合
<{TopoSj,j∈N},<>:TopoS集合上的全序排列。
12.如权利要求8所述的全自动化集装箱码头的装船调度系统,其特征在于,所述自动导向水平运输车分配模块包括:
第一子模块,所述第一子模块针对流水线最小自动导向水平运输车设定值的自动导向水平运输车分配;
第二子模块,所述第二子模块针对流水线最大自动导向水平运输车设定值的自动导向水平运输车分配。
13.如权利要求12所述的全自动化集装箱码头的装船调度系统,其特征在于,所述第一子模块执行以下操作:
13.1,计算当前可调度的自动导向水平运输车数量,记为AgvCount;
13.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;
13.3,从WLL找出WL.UAC最小且WL.UAC小于WL.MIA的WL
13.4,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;
13.5,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;
13.6,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;
13.7,AgvCount:=AgvCount–NeedAgvCount;
13.8,迭代13.2、13.3、13.4、13.5、13.6、13.7步骤,直到AgvCount为0或WL.CJQ为空或WLL中找不到WL.UAC最小且WL.UAC小于WL.MIA的WL;
其中,
WL为流水线对象;
WLL为流水线对象列表;
WL.EJQ为流水线任务作业队列;
WL.CJQ为流水线可执行任务队列;
WL.UAC为流水线自动导向水平运输车用量;
WL.MAA为流水线最大自动导向水平运输车设定值;
WL.MIA为流水线最小自动导向水平运输车设定值。
14.如权利要求13所述的全自动化集装箱码头的装船调度系统,其特征在于,所述第二子模块执行以下操作:
14.1,计算当前可调度的自动导向水平运输车数量,记为AgvCount;
14.2,依据WL.EJQ计算每条流水线的自动导向水平运输车用量WL.UAC;
14.3,从WLL找出WL.UAC小于WL.MIA的WL;
14.4,WL.UAC:=WL.MIA,为流水线保留最小数量的自动导向水平运输车;
14.5,AgvCount:=AgvCount–(WL.MIA-WL.UAC);
14.6,迭代步骤14.2、14.3、14.4、14.5直到找不到WL.UAC小于WL.MIA的WL;
14.7,从WLL找出WL.UAC最小且WL.UAC小于WL.MAA的WL;
14.8,计算海侧自动轨道吊设备为空闲状态的箱区列表IdleBlockList;
14.9,关联WL.CJQ与箱区列表IdleBlockList,通过均衡自动轨道吊负荷算法调整WL.CJQ内部任务的优先级,按优先级对WL.CJQ排序;
14.10,取出WL.CJQ队首任务JobFirst附加到WL.EJQ队尾。计算队首任务JobFirst的自动导向水平运输车需量NeedAgvCount,如果队首任务JobFirst是双箱任务之一,且另一任务在WL.EJQ,则设定NeedAgvCount为0;
14.11,AgvCount:=AgvCount–NeedAgvCount;
14.12,迭代14.7、14.8、14.9、14.10、14.11步骤,直到AgvCount为0或WL.CJQ为空或找不到WL.UAC最小且WL.UAC小于WL.MAA的WL。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710749352.0A CN107545366B (zh) | 2017-08-28 | 2017-08-28 | 全自动化集装箱码头的装船调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710749352.0A CN107545366B (zh) | 2017-08-28 | 2017-08-28 | 全自动化集装箱码头的装船调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107545366A true CN107545366A (zh) | 2018-01-05 |
CN107545366B CN107545366B (zh) | 2020-07-31 |
Family
ID=60957522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710749352.0A Active CN107545366B (zh) | 2017-08-28 | 2017-08-28 | 全自动化集装箱码头的装船调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107545366B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109032135A (zh) * | 2018-07-17 | 2018-12-18 | 河南森源电气股份有限公司 | 一种自动引导车的调度方法及系统 |
CN109019056A (zh) * | 2018-08-28 | 2018-12-18 | 盐田国际集装箱码头有限公司 | 一种集装箱堆场双层高架轨道垂直运输设备调度方法 |
CN109534023A (zh) * | 2018-12-29 | 2019-03-29 | 上海振华重工(集团)股份有限公司 | 一种自动化集装箱码头岸边装船指令顺序控制方法 |
CN109685435A (zh) * | 2018-11-07 | 2019-04-26 | 上海图森未来人工智能科技有限公司 | 船舶卸船、装船控制系统及相关系统和装置 |
CN109711787A (zh) * | 2018-11-07 | 2019-05-03 | 上海图森未来人工智能科技有限公司 | 一种港口智能控制系统及相关系统和装置 |
CN110347156A (zh) * | 2019-06-28 | 2019-10-18 | 青岛港国际股份有限公司 | 一种agv进出岸桥下作业车道的路径优化方法及系统 |
CN110516894A (zh) * | 2018-05-22 | 2019-11-29 | 招商局国际信息技术有限公司 | 货场调度方法及装置 |
CN111582804A (zh) * | 2020-05-28 | 2020-08-25 | 中国人民解放军军事科学院国防科技创新研究院 | 一种无人驾驶运输装置的任务分配方法 |
CN112785185A (zh) * | 2021-02-02 | 2021-05-11 | 青岛港国际股份有限公司 | 一种自动化码头空轨调度方法 |
CN112905722A (zh) * | 2019-12-04 | 2021-06-04 | 顺丰科技有限公司 | 一种行为识别的方法、装置及存储介质 |
CN113706052A (zh) * | 2021-09-10 | 2021-11-26 | 上海振华重工(集团)股份有限公司 | 一种自动化码头水平运输机械的智能排队方法 |
CN115320789A (zh) * | 2022-08-12 | 2022-11-11 | 青岛港国际股份有限公司 | 一种实现45度装船的新型船舶装载方法 |
CN115571653A (zh) * | 2022-09-26 | 2023-01-06 | 青岛港国际股份有限公司 | 一种码头自动化水平运输系统 |
CN115826507A (zh) * | 2022-09-08 | 2023-03-21 | 广州港股份有限公司 | 一种集装箱码头自动化堆场调度系统及应用其的作业方法 |
WO2023082763A1 (zh) * | 2021-11-10 | 2023-05-19 | 上海海事大学 | 自动化码头多级作业超网络延误传导度量方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1702655A (zh) * | 2004-09-09 | 2005-11-30 | 上海浦东国际集装箱码头有限公司 | 一种装船时减少集装箱翻箱量的优化方法 |
US7155406B2 (en) * | 2002-03-04 | 2006-12-26 | Total Soft Bank, Ltd. | Scheduling method for loading and unloading containers at the terminal and a computer readable recording medium recorded a computer programming of the same |
CN101930556A (zh) * | 2009-06-18 | 2010-12-29 | 上海振华重工(集团)股份有限公司 | 一种自动化码头的桥吊计划调度方法 |
CN103164782A (zh) * | 2011-12-16 | 2013-06-19 | 招商局国际信息技术有限公司 | 一种集装箱卡车智能调度系统及方法 |
CN106651049A (zh) * | 2016-12-29 | 2017-05-10 | 上海海事大学 | 自动化集装箱码头装卸设备的重调度方法 |
-
2017
- 2017-08-28 CN CN201710749352.0A patent/CN107545366B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7155406B2 (en) * | 2002-03-04 | 2006-12-26 | Total Soft Bank, Ltd. | Scheduling method for loading and unloading containers at the terminal and a computer readable recording medium recorded a computer programming of the same |
CN1702655A (zh) * | 2004-09-09 | 2005-11-30 | 上海浦东国际集装箱码头有限公司 | 一种装船时减少集装箱翻箱量的优化方法 |
CN101930556A (zh) * | 2009-06-18 | 2010-12-29 | 上海振华重工(集团)股份有限公司 | 一种自动化码头的桥吊计划调度方法 |
CN103164782A (zh) * | 2011-12-16 | 2013-06-19 | 招商局国际信息技术有限公司 | 一种集装箱卡车智能调度系统及方法 |
CN106651049A (zh) * | 2016-12-29 | 2017-05-10 | 上海海事大学 | 自动化集装箱码头装卸设备的重调度方法 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110516894A (zh) * | 2018-05-22 | 2019-11-29 | 招商局国际信息技术有限公司 | 货场调度方法及装置 |
CN109032135A (zh) * | 2018-07-17 | 2018-12-18 | 河南森源电气股份有限公司 | 一种自动引导车的调度方法及系统 |
CN109019056A (zh) * | 2018-08-28 | 2018-12-18 | 盐田国际集装箱码头有限公司 | 一种集装箱堆场双层高架轨道垂直运输设备调度方法 |
CN109685435A (zh) * | 2018-11-07 | 2019-04-26 | 上海图森未来人工智能科技有限公司 | 船舶卸船、装船控制系统及相关系统和装置 |
CN109711787A (zh) * | 2018-11-07 | 2019-05-03 | 上海图森未来人工智能科技有限公司 | 一种港口智能控制系统及相关系统和装置 |
US11972501B2 (en) | 2018-11-07 | 2024-04-30 | Beijing Tusen Zhitu Technology Co., Ltd. | Intelligent port control system and related systems and apparatuses |
CN109711787B (zh) * | 2018-11-07 | 2024-04-19 | 北京图森智途科技有限公司 | 一种港口智能控制系统及相关系统和装置 |
CN109534023A (zh) * | 2018-12-29 | 2019-03-29 | 上海振华重工(集团)股份有限公司 | 一种自动化集装箱码头岸边装船指令顺序控制方法 |
CN109534023B (zh) * | 2018-12-29 | 2020-07-31 | 上海振华重工(集团)股份有限公司 | 一种自动化集装箱码头岸边装船指令顺序控制方法 |
CN110347156A (zh) * | 2019-06-28 | 2019-10-18 | 青岛港国际股份有限公司 | 一种agv进出岸桥下作业车道的路径优化方法及系统 |
CN112905722A (zh) * | 2019-12-04 | 2021-06-04 | 顺丰科技有限公司 | 一种行为识别的方法、装置及存储介质 |
CN112905722B (zh) * | 2019-12-04 | 2022-10-21 | 顺丰科技有限公司 | 一种行为识别的方法、装置及存储介质 |
CN111582804A (zh) * | 2020-05-28 | 2020-08-25 | 中国人民解放军军事科学院国防科技创新研究院 | 一种无人驾驶运输装置的任务分配方法 |
CN112785185A (zh) * | 2021-02-02 | 2021-05-11 | 青岛港国际股份有限公司 | 一种自动化码头空轨调度方法 |
CN113706052A (zh) * | 2021-09-10 | 2021-11-26 | 上海振华重工(集团)股份有限公司 | 一种自动化码头水平运输机械的智能排队方法 |
CN113706052B (zh) * | 2021-09-10 | 2023-10-24 | 上海振华重工(集团)股份有限公司 | 一种自动化码头水平运输机械的智能排队方法 |
WO2023082763A1 (zh) * | 2021-11-10 | 2023-05-19 | 上海海事大学 | 自动化码头多级作业超网络延误传导度量方法 |
CN115320789A (zh) * | 2022-08-12 | 2022-11-11 | 青岛港国际股份有限公司 | 一种实现45度装船的新型船舶装载方法 |
CN115826507A (zh) * | 2022-09-08 | 2023-03-21 | 广州港股份有限公司 | 一种集装箱码头自动化堆场调度系统及应用其的作业方法 |
CN115826507B (zh) * | 2022-09-08 | 2024-04-19 | 广州港股份有限公司 | 一种集装箱码头自动化堆场调度系统及应用其的作业方法 |
CN115571653A (zh) * | 2022-09-26 | 2023-01-06 | 青岛港国际股份有限公司 | 一种码头自动化水平运输系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107545366B (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107545366B (zh) | 全自动化集装箱码头的装船调度方法及系统 | |
Dekker et al. | Advanced methods for container stacking | |
Chen et al. | A tabu search algorithm for the integrated scheduling problem of container handling systems in a maritime terminal | |
Tang et al. | Modeling and solution of the joint quay crane and truck scheduling problem | |
Imai et al. | The strategic berth template problem | |
CN105190658B (zh) | 控制至少两个自动化非穿过式轨道安装式龙门起重机的系统和方法 | |
CN107451720B (zh) | 面向自动化集装箱码头的船次作业计划评价方法 | |
CN111498696B (zh) | 一种双吊具场桥调度优化方法及装置 | |
CN112434870B (zh) | 一种集装箱区垂直布置的双自动化场桥动态调度方法 | |
CN105427075A (zh) | 一种用于港口集装箱卡车的混合式动态调度方法 | |
WO2022222797A1 (zh) | 机器人调度的方法、装置、系统、存储介质及程序产品 | |
CN101587571A (zh) | 集装箱码头堆场优化系统 | |
Wang et al. | A quay crane scheduling algorithm considering the workload of yard cranes in a container yard | |
CN110175771B (zh) | 一种双重载循环下的岸桥集卡场桥协同作业方法 | |
CN109325703A (zh) | 一种两端式轨道吊的任务分配方法及系统 | |
Zhang et al. | Optimization for two-stage double-cycle operations in container terminals | |
CN110942203A (zh) | 一种自动化集装箱码头agv路径优化方法 | |
CN101930556A (zh) | 一种自动化码头的桥吊计划调度方法 | |
CN116629424A (zh) | 新型集装箱堆场作业模式的自动化双场桥智能调度方法 | |
Nguyen et al. | Heuristic algorithms for constructing transporter pools in container terminals | |
CN114331075A (zh) | 堆场拖车调度方法、装置、设备及存储介质 | |
Huang et al. | A bounded two-level dynamic programming algorithm for quay crane scheduling in container terminals | |
Gudelj et al. | Planning and optimization of AGV jobs by petri net and genetic algorithm | |
Shin et al. | Container loading and unloading scheduling for a Mobile Harbor system: a global and local search method | |
Gao et al. | A decision framework for decomposed stowage planning for containers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |