船舶靠泊时间预测方法及系统与流程

文档序号:25860504发布日期:2021-07-13 16:16阅读:351来源:国知局
船舶靠泊时间预测方法及系统与流程

本发明涉及计算机技术领域,尤其涉及一种船舶靠泊时间预测方法及系统。



背景技术:

对于以集装箱班轮为例的海上航行船舶来说,船期表是船舶航行和靠泊的时间表,是货主订舱和制定物流运输计划的重要依据,在船期表中,船舶靠泊时间是一个重要的要素,然而由于各种自然因素和人为因素的限制,船期表的误差较大,并不能准确预测出船舶靠泊时间。

目前为了预测船舶靠泊时间,往往是通过代理询问船舶对应的运维公司,但是这种方式效率较低,且只能获取大概的时间,还有通过卫星ais技术追踪船舶航行轨迹和实时动态的方法,但是由于ais报文中所显示的船舶靠泊时间是由船员填写的,由于管理不够规范,准确率也比较低,还有用剩余的航行距离除以平均航行速度的方式,但是也受到各种自然因素和人为因素的限制,预测的船舶靠泊时间准确率较低。



技术实现要素:

本发明提供一种船舶靠泊时间预测方法,用以解决现有技术中预测的船舶靠泊时间准确率较低的缺陷,实现提高船舶靠泊时间的预测准确率。

本发明提供一种船舶靠泊时间预测方法,该船舶靠泊时间预测方法包括:获取目标船舶信息;将所述目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间;所述靠泊时间预测模型为以样本船舶信息为样本,以与所述样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

根据本发明提供的一种船舶靠泊时间预测方法,所述靠泊时间预测模型包括:wide子模型、deep子模型、lstm子模型和回归预测层;所述将所述目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间,包括:将所述目标船舶信息输入至所述wide子模型,输出第一参考数据;将所述目标船舶信息输入至所述deep子模型,输出第二参考数据;将所述目标船舶信息输入至所述lstm子模型,输出第三参考数据;将所述第一参考数据、所述第二参考数据以及所述第三参考数据输入至所述回归预测层,输出所述目标靠泊时间。

根据本发明提供的一种船舶靠泊时间预测方法,所述wide子模型包括:用于对所述目标船舶信息中的类别特征进行操作的第一embedding层、用于连结所述目标船舶信息中的类别特征与数值特征的第一concatenate层、用于进行特征交叉转换的crossproduct层以及用于连接所述目标船舶信息中的转换后特征与原始特征的第二concatenate层;所述deep子模型包括:与所述wide子模型共用的所述第一embedding层、与所述wide子模型共用的所述第一concatenate层以及激活函数为relu,dropout的参数分别为0.5、0.5、0.5和0.3的4层全连接层网络;所述lstm子模型包括:用于对所述目标船舶信息中的类别特征进行操作的第二embedding层、用于连结所述目标船舶信息中的类别特征与数值特征的第三concatenate层、两个lstm层以及激活函数为relu,dropout的参数为0.1的全连接层网络。

根据本发明提供的一种船舶靠泊时间预测方法,所述将所述目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间,包括:对所述目标船舶信息进行预处理,得到目标船舶张量数据;将所述目标船舶张量数据输入至所述靠泊时间预测模型中,输出所述目标靠泊时间。

根据本发明提供的一种船舶靠泊时间预测方法,所述对所述目标船舶信息进行预处理,得到目标船舶张量数据,包括:对所述目标船舶信息进行编码处理、归一化处理以及排序处理中的至少一种预处理,得到所述目标船舶张量数据。

根据本发明提供的一种船舶靠泊时间预测方法,所述目标船舶信息包括:当前航次特征、历史统计特征、船舶基本特征、目的码头特征、目的港口特征以及排队船舶集合特征中的至少一种。

根据本发明提供的一种船舶靠泊时间预测方法,所述靠泊时间预测模型为以mape为损失函数,基于反向传播算法和梯度下降算法进行训练得到。

本发明还提供一种船舶靠泊时间预测系统,所述船舶靠泊时间预测系统包括:获取模块,用于获取目标船舶信息;输出模块,用于将所述目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间;所述靠泊时间预测模型为以样本船舶信息为样本,以与所述样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述船舶靠泊时间预测方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述船舶靠泊时间预测方法的步骤。

本发明提供的船舶靠泊时间预测方法及系统,通过利用经过训练后的靠泊时间预测模型来根据目标船舶信息预测出目标靠泊时间,能够更加接近真实值,提高船舶靠泊时间的预测准确率。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的船舶靠泊时间预测方法的流程示意图;

图2是本发明提供的船舶靠泊时间预测方法的靠泊时间预测模型结构示意图之一;

图3是本发明提供的船舶靠泊时间预测方法的靠泊时间预测模型结构示意图之二;

图4是本发明提供的船舶靠泊时间预测系统的结构示意图;

图5是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合图1-图5描述本发明的船舶靠泊时间预测方法及系统。

如图1所示,本发明提供一种船舶靠泊时间预测方法,该船舶靠泊时间预测方法包括如下步骤110至步骤120。

步骤110、获取目标船舶信息。

可以理解的是,目标船舶是需要预测船舶靠泊时间的对象,目标船舶信息为与船舶航行相关的特征,比如可以包括船舶的名称、船舶的吨位、船舶的航向以及船舶的航速等基本特征,能够反映出船舶航行的物理参数。

在一些实施例中,目标船舶信息包括:当前航次特征、历史统计特征、船舶基本特征、目的码头特征、目的港口特征以及排队船舶集合特征中的至少一种。

可以理解的是,排队船舶集合为与目标船舶的目的码头一致并且距离目的码头更近的其他所有在航船舶的集合。

当前航次特征包括:上一港港口id、下一港港口id、目的码头id、当前经纬度、船舶所在区域、所在区域的气象特征、当前速度以及船期上的下一港eta(estimatedtimeofarrival,预计靠泊时间)等,用于表征目标船舶或者排队船舶的当前状态。

历史统计特征包括:船舶历史上所有挂靠的作业时间、等待时间以及船期误差统计值,其中,统计指标选取均值、标准差、20%分位数以及80%分位数,统计值每周更新一次,用于表征目标船舶或者排队船舶的作业效率以及准班率。

船舶基本特征包括:船名、船长、船公司、载重吨以及最大吃水等基本信息,用于表征目标船舶或者排队船舶的基本性质。

目的码头特征包括:码头的基本特征、码头的当前时刻特征和码头的历史统计特征。其中码头的基本特征包括码头id和码头长度等基本信息;码头的当前时刻特征包括码头上正在作业的船舶个数、船舶总长度、码头的剩余泊位描述以及锚地上目的码头为当前码头的船舶个数和船舶总长度等,用于表征码头当前的繁忙程度;码头的历史统计特征包括该码头历史上所有挂靠的作业时间、等待时间以及船期误差的统计值,其中,统计指标选取均值、标准差、20%分位数以及80%分位数,统计值每周更新一次,用于表征码头的作业效率以及准班率。

目的港口特征包括:港口的当前时刻特征和港口的历史统计特征。其中港口的当前时刻特征包括港区内的船舶个数、船舶总长度以及港区的气象特征等,用于表征港口当前的繁忙程度和气象状态;港口的历史统计特征包括该港口历史上所有挂靠的作业时间、等待时间以及船期误差的统计值,其中,统计指标选取均值、标准差、20%分位数以及80%分位数,统计值每周更新一次,用于表征目的港口的作业效率以及准班率。

排队船舶集合特征为排队船舶集合内的每个排队船舶的当前航次特征、每个排队船舶的历史统计特征和每个排队船舶的船舶基本特征。

步骤120、将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间。

可以理解的是,靠泊时间预测模型可以为神经网络模型,可以采用大量船舶样本来训练该神经网络模型,经过训练后的靠泊时间预测模型,能够用于基于目标船舶信息高效准确地预测出目标靠泊时间。

靠泊时间预测模型为以样本船舶信息为样本,以与样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

可以理解的是,样本船舶可以为各种不同时段以及不同目的码头的所有已经产生实际靠泊时间的集装箱船舶。样本船舶信息也可以包括:当前航次特征、历史统计特征、船舶基本特征、目的码头特征、目的港口特征以及排队船舶集合特征中的至少一种。

用于训练靠泊时间预测模型的样本集中具有大量样本船舶信息以及与样本船舶信息所对应的样本靠泊时间,样本靠泊时间与样本船舶信息的对应关系能够反映真实情况下靠泊时间受到船舶航行中的各种自然因素或者人为因素的影响。

经过训练后的靠泊时间预测模型能够应用于目标船舶的靠泊时间预测当中,在将目标船舶信息输入到靠泊时间预测模型后,能够高效便捷地预测出目标船舶的靠泊时间。

本发明提供的船舶靠泊时间预测方法,通过利用经过训练后的靠泊时间预测模型来根据目标船舶信息预测出目标靠泊时间,能够更加接近真实值,提高船舶靠泊时间的预测准确率。

在一些实施例中,将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间,包括:将目标船舶信息输入至wide子模型,输出第一参考数据;将目标船舶信息输入至deep子模型,输出第二参考数据;将目标船舶信息输入至lstm子模型,输出第三参考数据;将第一参考数据、第二参考数据以及第三参考数据输入至回归预测层,输出目标靠泊时间。

可以理解的是,本实施例提供的靠泊时间预测模型的结构是基于wide&deep网络以及lstm神经元的思想构建起来的,因而也可以被称作wdl模型,靠泊时间预测模型具有三个子网络块和一个回归预测层,三个子网络块分别是wide子模型、deep子模型和lstm子模型。

如图2所示,wide&deep网络是google发布的一类应用于分类和回归的模型,核心思想是结合线性模型的记忆能力和dnn模型的泛化能力,在训练过程中同时优化2个模型的参数,从而达到整体模型的预测能力最优。

wide子模型是形式为y=wtx+b的广义线性模型,结构见图2的左半部分。

其中,y是预测值,x=[x1,x2,...,xd]是包含d个特征的向量,w=[w1,w2,...,wd]是模型的参数,t为矩阵转置运算符,b是偏置。特征集合包括原始的输入特征和转换后的特征,转换是指交叉积转换,定义为:其中,k表示第k个交叉特征的下标,cki为第i个原始特征在第k个交叉特征生成时的幂指数。

deep子模型是一个前馈神经网络模型,结构见图2的右半部分。deep模型首先通过特征嵌入层将类别特征映射为数值特征,然后与原始输入的数值特征联结为特征向量作为神经网络隐藏层的输入。隐藏层执行以下运算,a(l+1)=f(w(l)a(l)+b(l)),其中,l是层号,f是激活函数,通常情况采用矫正线性单元函数(relus)。a(l),b(l)和w(l)分别为模型的第l层激活值,偏置和权重。

lstm子模型属于循环神经网络,可以同时捕获每个时间步的局部特征以及序列的长期依赖特征。lstm子模型采用几个门控制信息流。在lstm子模型的每个推理步骤中,输入门、遗忘门、输出门和调制输入分别以以下方式更新:

it=σ(wi[xt;ht-1]+bi),

ft=σ(wf[xt;ht-1]+bf),

ot=σ(wo[xt;ht-1]+bo),

gt=σ(wg[xt;ht-1]+bg),

其中,wi,wf,wo,wg分别为输入门、遗忘门、输出门和调制输入的更新权重,bi,bf,bo,bg分别为更新偏置,xt为当前时间步的输入,ht-1为上一个时间步的隐藏层状态。σ(·)是sigmoid函数σ(u)=1/(1+e-u)。每个等式都包含一个仿射变换和一个非线性激活。记忆神经元和隐藏层的状态更新方式如下:

ct=ft⊙ct-1+it⊙gt,

ht=ot⊙tanh(ct),

其中,⊙是元素乘法,tanh为双曲正切函数,ft,it,gt和ot分别为当前时间步的遗忘门状态,输入门状态,输出门状态以及调制输入的状态,ct-1为上一个时间步的记忆神经元状态。

第一参考数据是将目标船舶信息输入到wide子模型得到的,第二参考数据是将目标船舶信息输入到deep子模型得到的,第三参考数据是将目标船舶信息输入到lstm子模型得到的,第一参考数据、第二参考数据以及第三参考数据都是一种中间形式的数据,最终第一参考数据、第二参考数据和第三参考数据在回归预测层中进行联结,回归预测层输出目标靠泊时间。

在一些实施例中,靠泊时间预测模型为以mape为损失函数,基于反向传播算法和梯度下降算法进行训练得到。

换言之,在对靠泊时间预测模型进行训练时,可以利用样本船舶信息以及对应的样本靠泊时间为训练数据集,在mape作为损失函数的条件下,通过反向传播算法和梯度下降算法对wdl模型中的所有参数进行联合训练。

由于靠泊时间预测模型中的3个子网络块的结合使得全局学习率的获得有一定的难度,可以选择一种具有自适应步长和动量的随机梯度下降方法(adam)来优化靠泊时间预测模型。

如图3所示,在一些实施例中,wide子模型包括:用于对目标船舶信息中的类别特征进行操作的第一embedding层、用于连结目标船舶信息中的类别特征与数值特征的第一concatenate层、用于进行特征交叉转换的crossproduct层以及用于连接目标船舶信息中的转换后特征与原始特征的第二concatenate层。

wide子模型还可以具有进行特征交叉转换的层。

deep子模型包括:与wide子模型共用的第一embedding层、与wide子模型共用的第一concatenate层以及激活函数为relu,dropout的参数分别为0.5、0.5、0.5和0.3的4层全连接层网络。

lstm子模型包括:用于对目标船舶信息中的类别特征进行操作的第二embedding层、用于连结目标船舶信息中的类别特征与数值特征的第三concatenate层、两个lstm层以及激活函数为relu,dropout的参数为0.1的全连接层网络。

在一些实施例中,步骤120、将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间,包括:对目标船舶信息进行预处理,得到目标船舶张量数据;将目标船舶张量数据输入至靠泊时间预测模型中,输出目标靠泊时间。

可以理解的是,在将目标船舶信息输入到靠泊时间预测模型之前,可以对目标船舶信息进行预处理,得到目标船舶张量数据,目标船舶张量数据是适应于神经网络输入的张量形式的数据,能够便于靠泊时间预测模型进行处理。

在一些实施例中,对目标船舶信息进行预处理,得到目标船舶张量数据,包括:对目标船舶信息进行编码处理、归一化处理以及排序处理中的至少一种预处理,得到目标船舶张量数据。

可以理解的是,预处理的方式可以为编码处理、归一化处理以及排序处理中的至少一种,编码处理是针对类别型的数据,归一化处理是针对数值型的数据,排序处理是为了生成排队船舶序列数据。

值得注意的是,在靠泊时间预测模型的模型应用过程的预处理与模型训练过程的预处理在逻辑上是一致的。

下面对本发明提供的船舶靠泊时间预测系统进行描述,下文描述的船舶靠泊时间预测系统与上文描述的船舶靠泊时间预测方法可相互对应参照。

如图4所示,本发明还提供一种船舶靠泊时间预测系统,该船舶靠泊时间预测系统包括:获取模块410和输出模块420。

获取模块410,用于获取目标船舶信息。

输出模块420,用于将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间;靠泊时间预测模型为以样本船舶信息为样本,以与样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communicationsinterface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行船舶靠泊时间预测方法,该方法包括:获取目标船舶信息;将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间;靠泊时间预测模型为以样本船舶信息为样本,以与样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的船舶靠泊时间预测方法,该方法包括:获取目标船舶信息;将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间;靠泊时间预测模型为以样本船舶信息为样本,以与样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的船舶靠泊时间预测方法,该方法包括:获取目标船舶信息;将目标船舶信息输入至靠泊时间预测模型中,输出目标靠泊时间;靠泊时间预测模型为以样本船舶信息为样本,以与样本船舶信息对应的样本靠泊时间为样本标签进行训练得到。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1