於 磊 ,丁荣涛 ,严 元
(1.杭州科技职业技术学院,浙江 杭州 311402 2.浙江商业职业技术学院,浙江 杭州 310053 3.杭州第一技师学院,浙江 杭州 310023)
港口集疏运体系是指与港口相互衔接,为集中和疏散港口吞吐货物的交通运输系统。任何港口要不断发展壮大并成为港口所在地甚至全国重要的水陆交通枢纽,就必须拥有完善的集疏运系统。由于各港口的实际情况互不相同,其集疏运协作管理的复杂程度也不尽相同。孙巍(2007)提出分级计划的方法,建立集装箱多式联运的计划模型及基于协同的组织管理模型,并运用遗传算法对计划的分配模型进行求解[1]。陈羽(2017)认为目前我国集疏运发展尚存在诸多不足,铁路、水路比例偏低,多式联运发展相对滞后,港口集疏运体系结构不平衡,集疏运基础设施投融资机制不明确,港口企业承担较大的资金压力[2]。姬晓岭(2019)等构建可选路径初始网络图,利用Dijkstra算法求得备选路径。引入非直线系数作为最优路径的最终判定方法。在港口集装箱吞吐量预测基础上,以运输时间、运输费用、中转时间和碳排放量为影响因素构建路径评价组合模型[3]。曾庆成(2020)构建基于集卡共享的运输任务分配优化模型,通过将进口任务与出口任务进行最优组合,减少集卡空驶,有利于提高集卡的作业效率,进而提高集疏运效率[4]。
因为集装箱港口集疏运作业既覆盖了船舶泊位、港口岸边、堆场、闸口等重叠作业空间,同时也联合了垂直装卸和水平转移协同连续作业过程,所以集疏运作业调度是包括了空间和时间多目标复杂调度。目前许多港口已利用数字化实现绿色港口转型升级,即通过实现智能理货、智能闸口、平面运输及堆场作业等自动化设备广泛应用和码头作业数据自动采集、港作机械设备远程控制,用数字化支配资源、用数字化控制能耗和碳排放、用数字化提高生产效率。图1可见集装箱港口集疏运作业系统由泊位装卸、水平搬运、堆场和闸口四个子系统组成,其作业对象是集装箱,功能是装卸、存储和转运,各子业务分域管理,子系统信息相互作用、相互制约,必须协调一致地发展才能充分发挥港口作业系统中各部分的功能。
图1 港口集疏运作业系统
其中,堆场子系统是集疏运系统的核心,一般而言,港口堆场由多个箱区组成,堆场内不同类型的集装箱采取隔离堆存策略(separated Strategy),每个港口的堆场堆放规则是港口事先定义的,如同尺寸集装箱同贝堆放、同船集装箱同排或同贝堆放、同港口集装箱同排或同贝堆放等,堆场资源客观约束条件下,堆场堆放方式和装箱倒箱率决定着其他子系统的作业能力,因此堆场子系统成为了绿色港口集疏运系统的重中之重。其他子系统作业调度目标一般包括:泊位装卸子系统将船舶在港靠泊时间最小为目标,决定着港口的通过能力,是港口吞吐量考核的重要影响因素;水平搬运子系统是多集卡共同作业调度的结果,受港口通道约束,既以集卡完成所有任务的时间最短为目标,又要考虑所有的分段路径距离和最短;闸口作业子系统为随机服务排队系统,闸口核定通过能力在港口设计时就已经确定,所以闸口子系统调度目标设定为闸口在一定利用率下能通过的饱和集卡数在闸口前排队最大队长。
为实现最优目标,以上每个集疏运子系统中都会有相应的调度规则,在每个港口集疏运系统生产调度中都发挥着重要作用,尤其在实时调度系统中,规则知识通常出自生产者工作经验,将耗费大量的时间和人力。为避免在系统代码中直接嵌入调度规则,加大系统升级修改的维护成本,通常将规则放置在特定的规则库中。在集疏运物流系统中,有些规则是港口事先定义的,有些规则是随着新的调度问题和调度目标的出现不断增加的,这些分布在各子系统中的规则可能会出现相同或相似领域知识,可以利用现有规则知识库进行合并升级,形成更广泛应用的通用规则知识库。
基于Agent的规则库开发方法可以在系统开发过程中实现业务逻辑与应用逻辑的分离,即业务规则可以在应用过程中根据需求重新添加、修改及删除而无须重新编译应用系统,这将大大提高港口集疏运的管理应变能力。Agent是一种自治的、包含信念、意图、承诺等多种状态的能够在异质的环境中针对特定目标协同完成任务的软件实体,目前很多分布式系统引入多Agent流引擎技术解决分布式应用问题。在系统搭建时就将港口集疏运多调度复杂系统分成小的、彼此相互通讯及协调的、易于管理的子系统,将结构化规则库的规则定义在Agent中,Agent为调度信息跨系统访问提供安全接口,在满足系统的性能指标要求下协同完成同一个完整的集疏运任务[5-7]。
由于Agent的多样性,很难给出一个统一的结构模型。下而是通过参考一般的Agent结构,并结合系统的自身需求,给出的集疏运系统结构模型(如图2)。基于多Agent的港口集疏运规则库解决方案将根据实际需要分为四层(如图2)。支持层Agent主要负责存放规则库中的经验规则和推导规则;接口层的Agent则负责将规则信息传递给个应用层和决策层中,同时负责协调各Agent的活动;应用层A-gent分布在各个子系统单位节点上,负责接收子系统业务相关定性和定量信息;最后在决策层结合应用数据和知识库规则计算决策最有调度安排,输出调度结果。
图2 系统整体架构
调度规则一般是指利用特定集疏运任务的相关信息(如工作时间、工作成本、工作路径等),赋予任务一个优先级系数,从而指导作业的一类决策方法。调度规则存放在行为规则库中,行为规则库是一种特殊的数据库。
虽然调度任务不同,本文选择常见调度规则进行分类概括,具体描述如下:
(1)EDD(最早交付期)规则:优先选择交付期最早的任务执行;
(2)EIEO(先到先服务)规则:当排队任务频率大于服务效率时,一般按先到先服务的顺序进行;
(3)WIWO(重进重出)规则:保证每台设备在运行过程中没有闲置状态;
(4)SL(最短路径)规则:优先选择移动路径最短的任务或集装箱;
(5)ST(最短时间)规则:优先选择集疏运加工时间最短的任务;
(6)SC(最小成本)规则:优先选择集疏运成本最小的机械设备;
(7)SAFE(安全)规则:在某任务间活动空间被干扰时,选择放弃或停留操作,保证工作过程的安全性。
(8)RANDOM(随机)规则:随机挑选一个集疏运任务或者一台机械设备。
(9)CONTINUE(连续)规则:机械设备可以在一个区域里连续作业,而无需在不同区域之间移动,以便节省操作成本。
(10)BANDING(绑定)规则:集疏运任务相关设备之间形成作业路,例如一定数量的集卡与某台岸边装卸桥绑定。
规则库中除了存放优化集疏运生产任务的调度规则外,另一个重要组成部分是用于评价规则调度应用结果优劣的性能指标。港口集疏运常用的性能指标如下:
(1)最长完成时间:最后装卸转运完成所有集装箱的完工时间,要求越小越好;
(2)平均流程时间:单个集装箱的平均集疏运时间,要求越小越好;
(3)平均延期时间:集装箱不能按期集疏运的平均时间,要求越小越好;
(4)平均设备率:集装箱集疏运过程中调用设备数量与集装箱总量比率,要求越小越好;
(5)设备闲置时间:设备闲置时间,要求越小越好;
(6)能耗总成本:集装箱集疏运完成的整个能耗成本,要求越小越好;
(7)碳排放总量:集装箱集疏运完成过程中设备的碳排放量,要求越小越好;
综合前述,以上规则既具有一定的全局性和关联关系,调度规则在信息输入时被调用,性能规则在信息输出时被调用,此处可以预定义在SYSTEMRULES表中,其他具体集疏运规则为读取效率,被分类详细定义。此处有必要对数据字典和各表进行了详细的设计。
表1 规则库中相关表
由于子系统之间的关联性,以上规则表之间也有联动作用的。比如一个集疏运任务分配时,首先要从SYSTEMRULES调取调度目标,然后根据业务流程依次交由处理规则SHIPRULES、CRANERULES、LORRYSRULES、YARDRULES进行响应处理,如果匹配成功,计算结果从SYSTEMRULES输出性能规则进行校验。这里以SYSTEMRULES和SHIPRULES表为例解释规则表间的逻辑关系,如图3所示。
图3 规则表间的联动关系
当集疏运具体数据调度任务目标符合某条SYSTEMRULES规则时,该规则匹配RID号中的RULES具体记录,从而进行处理,同时将该规则中的ACTION信息下放下一级模块,进行进一步检测及处理。
由于强大规则库的存在,集疏运业务流的产生基本不需要人为干预,只需要向Agent输入参数,Agent引擎会在规则推导下自动分配设备资源,产生集疏运工作流。为了便于执行规则,需要定义规则表达式结构指导作出决策,下面对Agent存放的和输出的进行定义是事先定义的规则描述,是根据规则产生的具体集疏运流程结果。
将规则驱动的港口集疏运调度系统中的规则和规则执行引擎嵌入到多Agent系统中,由结构化的集疏运流程驱动Agent代理,从规则数据库中匹配并调取出相应的规则,进行解析与执行,由基于规则的界面生成Agent引擎为每一个Agent生成特定的业务输出仿真界面。集疏运信息采集完成后,由规则执行引擎结合规则和输入参数,指导Agent快速、高效地做出决策,从而驱动下一个Agent的执行。Agent工作流程图4所示,从下往上依次是:行为规则输出,规则执行引擎计算,子系统决策计算,规则库信息读取、调度结果输出和业务数据输入。
图4 Agent工作流程
系统决策过程中,如果输入信息不充分,则会导致规则推导进程阻塞或变形,进而影响决策准确性,系统中必须包含Agent相匹配的规则执行引擎和业务输出仿真界面,其详细设计方法与实现过程如下:
(1)首先提取出规则库中执行集疏运任务的所有的规则名称、必要条件、属性名称,存入集合中。
(2)当船舶到港或者集卡到闸时,需要通过导入采集的任务信息的输入属性名称作为中的中的属性名称。
(4)以输入属性名称和目标性能属性为参数,调用规则定义服务,动态显示规则引擎在对该集疏运任务做出决策时,需要采集的充分且必要的信息。获取与属性名称对应的集疏运业务流列表和相应的性能列表,包括属性说明、默认值、数据类型、取值范围和属性描述。
结合港口集疏运数据管理的需要,本文出了具体的集疏运管理规则库的定义思路和基于Agent的调度引擎系统结构,并在此基础上实现了行为规则库数据库原型,所设计的Agent系统也具有高度的灵活性和易用性,有利于港口集疏运业务系统管理的稳定性和可扩展性。基于Agent的港口集疏运规则库设计方法引入Agent工作流引擎技术,将规则库设计嵌入Agent,赋予Agent除计算外更多的推导功能,能将集疏运任务执行处于Agent的监控之下,并实时参与集疏运业务流的推导。该方法除了具有实时快速的特点外,在一定程度上还能满足集疏运各子系统协作调度要求。另外基于规则的调度引擎与业务系统分离,避免了规则变动对整个业务系统进行修改。