一种目的港口的预测方法与流程

文档编号:20167843
研发日期:2020/3/24

本发明属于港口预测技术领域,具体涉及一种目的港口的预测方法。



背景技术:

水面舰船目标的检测与运动方向判断,在许多领域都有着广泛的应用。对于运输船只的状态的监控和港口管理以及国土安全等方面都有着很重大的意义。

传统的港口预测依赖于船员上报的日志记录,但是船员无法实时或准确的填报相关信息,导致无法判断船只未来要到达的港口。

因此,针对上述技术问题,有必要提供一种目的港口的预测方法。



技术实现要素:

有鉴于此,本发明的目的在于提供一种可预测船只未来要到达的目的港口的预测方法。

为了实现上述目的,本发明一实施例提供的技术方案如下:

一种目的港口的预测方法,所述方法包括:采用概率图模型、循环神经网络模型对已知的船舶途径的港口序列进行建模,结合数据融合,输出要到达的目的港口的分布。

一实施例中,所述概率图模型包括:将港口序列抽象成概率图的节点,通过求解概率图的转移概率得到预测结果。

一实施例中,所述循环神经网络模型包括:将港口序列用长短时记忆网络进行建模,最后转化为分类问题并输出分类结果。

一实施例中,所述数据融合包括:将概率图模型和循环神经网络模型得到的结果融合,作为最终的输出结果。

一实施例中,所述港口序列由船舶的历史轨迹数据转换得到。

一实施例中,所述采用概率图模型对已知的船舶途径的港口序列进行建模包括:

对港口位置进行编号;

利用概率图模型对单条船只的港口序列进行建模,利用贝叶斯公式建立:其中,x为x序列,x为港口位置,y为目的港港口位置,p(xy)为x和y的联合概率分布,p(x)是x的联合概率分布;

输入序列x到p(y|x),得到目的港口的概率分布。

一实施例中,采用长短时记忆网络对所有船只的港口序列进行建模包括:

将港口序列进行one-hot化,通过矩阵w将one-hot稀疏向量转化为低维度稠密向量,得到输入向量i,其中,one-hot编码,又称为一位有效编码,主要是采用n位状态寄存器来对n个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效,w是对one-hot编码进行变换的矩阵,其参数可以通过随机初始化,最后得到变换后的向量即i;

计算遗忘门:ft=σ(wf·[ht-1,it]),其中σ是sigmoid函数,ht-1为上一时刻的隐藏层输出值;

计算输入门:it=σ(wi·[ht-1,it]),更新状态:

输出状态:

计算输出隐藏状态:ht=σ(wo·[ht-1,it])*tanh(ct);

输出采用softmax损失函数,并利用批梯度下降法更新模型参数。

一实施例中,所述数据融合包括:将概率图模型和循环神经网络模型得到的结果加权平均得到最终结果。

本发明具有以下有益效果:提供了一种目的港口预测方案,能够准确、实时地预测到船只未来要到达的目的港口。

附图说明

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

图1为本发明方法的流程示意图;

图2为本发明概率图结构示意图;

图3为本发明长短时记忆网络结构示意图。

具体实施方式

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

本发明实施例所揭示的一种目的港口的预测方法,实现通过对大量船舶历史轨迹数据进行建模,来预测船只未来要到达的目的港口,进而为航运从业者提供关键信息。

具体地,如图1所示,所述方法包括:

步骤1,对港口位置进行编号。

本实施例中,采用x序列来表示港口位置,x={x,,x2,x3,x4,x5,……},其中,x1为目的港口的前一个港口位置,x2为目的港口的前两个港口位置,x3为目的港口的前三个港口位置,x4为目的港口的前四个港口位置,x5为目的港口的前五个港口位置,依此类推。

步骤2,将船舶的历史轨迹数据转换为港口序列。

具体地,首先对历史轨迹进行驻留点处理,判断驻留点位置属于哪一个港口,从而依次得到港口序列。

步骤3,利用概率图模型对单条船只的港口序列进行建模,利用贝叶斯公式建立:其中,x为x序列,x为港口位置,y为目的港港口位置,p(xy)为x和y的联合概率分布,p(x)是x的联合概率分布;输入序列x到p(y|x),得到目的港口的概率分布。

该步骤即采用概率图模型对已知的船舶途径的港口序列进行建模,如图2所示,具体是将港口序列抽象成概率图的节点,通过求解概率图的转移概率得到预测结果。

本实施例中,分别假设目的港口依赖于前一个港口位置、前两个港口位置、前三个港口位置、前四个港口位置、前五个港口位置,利用贝叶斯公式建立:p(y|x1),p(y|x1,x2),p(y|x1,x2,x3),p(y|x1,x2,x3,x4),p(y|x1,x2,x3,x4,x5),分别输入x={x1},x={x1,x2},x={x1,x2,x3},x={x,,x2,x3,x4,},x={x,,x2,x3,x4,x5}到相应的贝叶斯公式,得到目的港口的概率分布。在其他实施例中,可不限于依赖于前五个港口位置来求目的港口的概率分布。

步骤4,利用tensorflow(是一个采用数据流图,用于数值计算的开源软件库)搭建长短时记忆网络进行训练。

该步骤是采用循环神经网络模型对已知的船舶途径的港口序列进行建模,如图3所示,具体是将港口序列用长短时记忆网络进行建模,最后转化为分类问题并输出分类结果。

本实施例中,采用长短时记忆网络对所有船只的港口序列进行建模具体包括:

将港口序列进行one-hot化,通过矩阵w将one-hot稀疏向量转化为低维度稠密向量,得到输入向量i,其中,one-hot编码,又称为一位有效编码,主要是采用n位状态寄存器来对n个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效,w是对one-hot编码进行变换的矩阵,其参数可以通过随机初始化,最后得到变换后的向量即i;

计算遗忘门:ft=σ(wf·[ht-1,it]),其中σ是sigmoid函数,ht-1为上一时刻的隐藏层输出值;

计算输入门:it=σ(wi·[ht-1,it]),更新状态:

输出状态:

计算输出隐藏状态:ht=σ(wo·[ht-1,it])*tanh(ct);

输出采用softmax损失函数,并利用批梯度下降法更新模型参数。

步骤5,将概率图模型和循环神经网络模型得到的结果融合,作为最终的输出结果。

本实施例中,采用数据融合技术,将概率图模型和循环神经网络模型得到的结果加权平均得到最终结果。其中,权重可以根据需要自行调整。

由以上技术方案可以看出,本发明具有以下优点:提供了一种目的港口预测方案,能够准确、实时地预测到船只未来要到达的目的港口。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本说明书一个或多个实施例的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

当前第1页1 2 3 
猜你喜欢
网友询问留言