件杂货码头连续泊位调度与货场分配
2020-02-28刘志雄
李 俊,刘志雄,张 煜
(1.武汉科技大学汽车与交通工程学院,武汉430065;2.武汉科技大学机械自动化学院,武汉430081;3.福建工程学院交通运输学院,福州350108;4.武汉理工大学港口物流技术与装备教育部研究中心,武汉430063)
0 引 言
件杂货码头的生存和发展必须考虑如何充分利用各种有限资源,制定科学合理调度方案,尽可能缩短船舶在港作业时间,提高码头装卸作业效率.泊位和作业线作为重点设施设备,是码头的核心和稀缺资源,其调度计划会对码头作业产生关键影响.
关于件杂货码头泊位调度与货场分配方面的研究文献很少.闫锡伟[1]基于离散泊位调度方法提出件杂货码头连续泊位调度的启发式算法,但缺乏考虑堆场作业,未涉及货场分配.刘志雄等围绕堆场货物管理[2],码头装卸作业线建模[3],堆场货物堆存策略[4],码头装卸作业主要环节仿真建模[5],水平运输作业工艺[6]等问题展开了较为系统的研究,也有学者研究件杂货船舶能效问题[7-8].已有连续泊位调度相关研究主要集中在集装箱码头,且大多考虑加入岸桥分配,针对件杂货码头泊位调度与货场分配的研究较为匮乏.
为此,本文从件杂货码头实际作业需求出发,采用两阶段分层方法研究其连续泊位调度与货场分配.分别构建泊位调度与货场分配模型来实现问题求解,并提出了两种不同的船舶进港调度策略.最后通过算例试验验证了模型及不同策略的有效性.
1 问题提出
为保证船舶装卸作业效率,件杂货码头一般采用两条及以上平行作业线对其作业.码头作业线通常由门座式起重机—拖车(拖头加拖板)—轮胎起重机(或叉车)组成,连续泊位调度和货场分配是在完成船舶泊位调度后将其结果作为输入进行货场分配.
具体说来,泊位调度需在考虑泊位等级和潮汐动态前提下,以最小化船舶水平运输周转量为目标确定进港船舶的靠泊位置;货场分配时将船舶靠泊位置作为输入,考虑作业线作业量均衡和最大作业完工时间最小,对船舶对应货场进行作业线分配,确定每条作业线作业的货场及其作业先后顺序,使船舶尽早离港.
2 模型构建
2.1 泊位调度模型
北方某件杂货码头有7段泊位,包括水平和垂直方向岸线,长度约为1 040 m和360 m.为便于求解,将连续型的泊位岸线以10 m为一个单位划分,进行离散化处理.
(1)集 合.
K——码头泊位集合,K={1,2,…,7};
P,Q——水平与垂直方向泊位岸线分段集合,P={1,2,…,104},Q={1,2,…,36};
I,J——船舶作业货场与货类集合.
(2)参 数.
Dp,Dq——第p或q段泊位等级(万t),p∈P,q∈Q;
Cp,Cq——第p或q段泊位水深(m),p∈P,q∈Q;
Emin——最低潮汐(m);
Lv,Cv,Dv——船舶长度(m),吃水深度(m),等级(万t);
Mv——船舶中心点位置;
gij——货场i内货类j的总重量(t),i∈I,j∈J;
Bik——货场i到泊位k的运输距离(m),i∈I,k∈K;
S——船舶间水平安全距离(m);
Wp,Wq——船头位于第p或q段岸线时船舶的水平运输周转量(t ⋅m),p∈P,q∈Q.
(3)变 量.
xp,yq——若第p或q段泊位被占用,则为1;否则为0,p∈P,q∈Q;
a——循环变量,表示某一段泊位,辅助实现上述变量xa与ya的累加求和,以及参数泊位等级Da与泊位水深Ca的约束条件判断,或其中ceil(⋅)表示向上取整函数.
(4)模 型.
①若船舶靠泊水平岸线,船头位于第p段(p∈P)岸线处,则其中心点位置Mv为
船舶的中心点位置Mv与泊位k之间的对应关系如表1所示.
表1 船舶中心点位置与泊位对应关系Table1 Correspondence between vessel's center position and its berth
由表1可确定货物水平运输距离Bik,构建泊位调度模型(Berth Scheduling Model 1,BSM1)为
式(2)为目标函数,表示最小化船舶的水平运输周转量.式(3)~式(7)为约束条件,式(3)计算水平运输周转量,式(4)表示船舶所需岸线在靠泊前必须未被占用;式(5)与式(6)分别表示船舶所占岸线的泊位等级和水深条件均需满足船舶要求;式(7)定义变量取值范围.
②若船舶靠泊垂直岸线,同样将模型BSM1所有与水平岸线相关参数、变量更改为垂直岸线的,即可得到泊位调度模型(Berth Scheduling Model 2,BSM2).
2.2 货场分配模型
北方某件杂货码头装卸作业线主要由门座起重机(门机)—拖车(拖头加拖板)—轮胎起重机(轮胎吊)组成,即码头前沿由门机完成装卸作业,拖车由拖头加拖板组成,采用甩挂作业模式完成码头前沿与堆场之间水平运输,堆场作业则由轮胎吊完成.
(1)集 合.
L——船舶作业线集合;
Mi——船舶对应货场i内的货类集合,i∈I.
(2)参 数.
Tl,Pl,nl——作业线l的作业时间(min),作业量(t),货场总数,l∈L;
Pl′——作业线l′的作业量(t),l′∈L;
Tlij,Glij——作业线l对货场i中货类j的装卸时间(min)与作业量(t),l∈L,j∈Mi,i∈I;
qj——货类j的拖车单车满载件数(件),j∈J;
rlij,Nlij,wlij——作业线l对货场i中货类j的作业件数,装载拖车次数,最后一车装载件数,l∈L,j∈Mi,i∈I;
,——拖车的重载、空载速度(m/s);
:作业线l中拖车在货场i与泊位k之间的往返作业时间(min),l∈L,i∈I,k∈K;
S(j1),S(j2)——门机、轮胎吊作业货类j的单钩作业能力(件/钩),j∈J;
,——门机、轮胎吊作业货类j的单钩作业循环时间(min/钩),j∈J;
,——作业线l中门机、轮胎吊对货场i中货类j作业时间(min),l∈L,j∈Mi,i∈I;
Tr(2)——轮胎吊收起支腿时间和工属具拆装时间(min);
V2——轮胎吊行驶速度(m/s);
Tsl,Tzl——作业线l的装卸时间与转场时间(min),l∈L;
Ui(i+1)——货场i与货场i+1 之间的转场距离(m),i∈I,i+1 ∈I;
A——一个大数.
(3)变 量.
zlij——若货场i中货类j分配给作业线l作业,则为1,否则为0,l∈L,j∈Mi,i∈I;
αli——若作业线l对货场i进行作业,则为1,否则为0,l∈L,i∈I.
(4)模 型.
构建多作业线货场分配模型(Cargo Yard Allocation Model,CYAM)为
式(8)和式(9)为目标函数,分别表示最小化作业线作业量差和最大作业完工时间.式(10)~式(23)为约束条件,式(10)计算作业线作业量;式(11)表示作业线作业时间为装卸时间和转场时间之和;式(12)计算作业线装卸时间;式(13)表示作业线l对货场i中货类j的装卸时间为门机、拖车和轮胎吊三者作业时间中的最大者;式(14)和式(15)分别表示装载拖车次数及最后一车装载件数;式(16)~式(18)分别表示拖车、门机、轮胎吊的作业时间;式(19)计算作业线转场时间;式(20)表示作业货场总数;式(21)定义变量之间关系,若货场i中存在货类j分配给作业线l,则且αli=1,否则且αli=0 ;式(22)和式(23)定义变量取值范围.
3 求解方法
针对件杂货码头连续泊位调度与货场分配问题,采用的两阶段分层方法求解,如图1所示.
图1 泊位调度与货场分配的两阶段求解Fig.1 Two-stage solving process for berth scheduling and cargo yard allocation
3.1 泊位调度实现
假设某进港动态包含H艘船舶,则泊位调度按以下规则逐步实现:
(1)针对当前进港船舶h(h≤H),分别求解模型BSM1和BSM2,其目标值分别为f1和f2.
(2)若f1≤f2,则船舶靠泊水平方向泊位,船头位于第p段岸线时,更新xa=1 ,a∈[p,p+ceil[(Lv+S)/10]-1];若f1>f2,则船舶靠泊垂直方向泊位,船头位于第q段岸线时,更新yb=1,b∈[q,q+ceil[(Lv+S)/10]-1].
(3)船舶完成在港作业离泊,释放岸线占用,将原占用岸线属性值由1更新为0.
(4)若h≤H,则重复步骤(1)~(3)至所有船舶泊位调度完毕.
3.2 货场分配实现
利用惯性权重线性递减粒子群算法求解货场分配模型CYAM.设计基于粒子位置取整的编码方法,假设某船舶作业货场数有J0个,作业线有L0条,则粒子可如表2所示进行表示.
表2 基于粒子位置取整的编码方法Table2 Integer coding method based on particle location
其中,第一维表示船舶作业货场编号,第二维粒子位置(Xi)用来确定货场作业的先后顺序,第三维粒子位置(Yi)在(0,L0)范围内随机生成后进位取整给货场确定作业线.
3.3 调度策略设计
确定船舶具体进港顺序时,设计两种不同的调度策略来进行对比试验,如图2所示.
图2 两种不同调度策略Fig.2 Process of two different scheduling strategies
(1)动态FCFS 调度策略.先到先服务(First Come First Service,FCFS)前提下动态调度.按照船舶到港的先后顺序进行泊位调度,若空闲岸线不能满足当前船舶靠泊需求,但满足后续某艘(些)船舶需求,则本次调度时让后续可靠泊船舶先进港靠泊.
(2)严格FCFS 调度策略.严格地执行先到先服务(FCFS)调度策略,如果空闲泊位岸线不满足当前船舶靠泊需求,则所有船舶继续等待至出现满足其靠泊需求的空闲泊位岸线.
4 算例试验
4.1 算例设计
(1)码头泊位数据.
北方某件杂货码头为便于生产管理,将泊位岸线划分为7段,如表3所示.
表3 北方某件杂货码头泊位情况Table3 Berth frontage of a northern general cargo terminal
(2)码头设备数据.
该码头作业涉及的主要货类及门机、轮胎吊和拖车的作业数据,拖车与轮胎吊速度均参见文献[3].根据码头实际调研数据,最低潮汐Emin由码头潮汐表输入,轮胎吊收起支腿时间和工属具拆装时间Tr(2)=5 min.
(3)进港船舶数据.
针对该码头实际作业情况,选取某个进港动态内的10艘船舶进行算例试验,如表4所示.根据实际货场信息设计算例,所有船舶对应的作业货场数最大为8.
表4 船舶基本信息Table4 Vessels'information
4.2 算法参数
算例中作业货场数最多为8个,货场分配时计算复杂度较低,多次试验后将粒子群算法的基本参数设置为学习因子均为2,惯性权重从0.9 线性递减至0.4,种群大小为20,最大迭代次数为200次.
4.3 评价指标
为了评价两种不同调度策略的优劣性,除了考虑船舶的最大作业完工时间,还引入泊位岸线利用率[9]进行评价.
4.4 算例求解
(1)求解结果.
假设每艘船舶安排两条作业线,初始时码头所有岸线均空闲,将全局时间变量T初始化为T=0 min.利用VB 6.0 编程求解,采用两种不同调度策略得到的泊位调度结果如表5和表6所示,货场分配结果如表7所示.
表5 动态FCFS 调度策略下泊位调度结果Table5 Berth scheduling results of dynamic FCFS strategy
表6 严格FCFS 调度策略下泊位调度结果Table6 Berth scheduling results of strict FCFS strategy
从表5和表6中可看出,不同调度策略下的泊位调度结果不同,主要体现为船舶8和9.其中动态FCFS 调度策略下,船舶靠泊顺序为1 →2 →3 →4 →8 →9 →5 →6 →7 →10 ,最 后 作 业 完 工船舶为船舶7,其作业完工时间为1 983 min;严格动态FCFS 调度策略下,船舶靠泊顺序为1 →2 →3 →4 →5 →6 →7 →8 →9 →10,最后作业完工船舶为9,其作业完工时间为2 442.9 min.当完成船舶4泊位调度时,空闲泊位岸线无法满足船舶5靠泊需求,动态FCFS调度策略下船舶8和9可优先靠泊,而严格FCFS调度策略下则需继续等待.以上结果表明,在优化船舶最大作业完工时间方面,动态FCFS调度策略表现更优.
在泊位岸线利用率方面,动态FCFS调度策略下其值为ρ1=49.9% ,严格FCFS 调度策略下ρ2=40.5%.以上差异性主要是船舶9 在港作业时间较长导致的.随着进港船舶数量的不断增加,不同策略下的泊位岸线利用率均会提高且差距会加大.以上结果表明,在泊位岸线利用率方面,动态FCFS调度策略表现更优.
表7 不同调度策略下货场分配结果Table7 Cargo yard allocation results of different scheduling strategies
从表7可以看出,由于两种策略下船舶靠泊位置未发生改变,其货场分配结果均一致(作业线1和2 为两条相同的平行作业线),同时不同作业线之间的作业量差异均不大.以上结果表明,货场分配求解的有效性和稳定性.
(2)可视化.
基于VB 6.0编制求解程序实现调度结果可视化,如图3和图4所示.图中矩形框表示船舶泊位占用,其长度为船舶占用泊位段数,高度为在港装卸作业时间.矩形框左下角数字为船头位置,右下角数字为船尾位置,下边中间数字为开始作业时间(若为0,则省略);上边中间数字为作业完工时间.
5 结 论
件杂货码头泊位岸线和作业线的调度计划会对其装卸作业效率产生关键影响,针对码头连续型泊位调度与货场分配,采用两阶段分层方法实现问题求解.第1阶段泊位调度以最小化水平运输周转量为目标,确定船舶靠泊位置;第2 阶段货场分配将船舶靠泊位置作为输入,考虑作业线作业量均衡和最大作业完工时间最小化,实现不同作业线的货场分配.
图3 基于FCFS 的动态调度结果Fig.3 Result based on FCFS dynamic scheduling
图4 严格FCFS 的调度结果Fig.4 Result based on strict FCFS scheduling
算例研究表明,所提模型与求解方法可对问题有效求解,且不同调度策略下,动态FCFS 调度策略表现更优,可在提高码头泊位岸线利用率的同时,保证所有船舶尽早完成作业离港.后续研究中,将结合码头实际作业情况,实现多个进港动态内船舶连续滚动调度.