一种基于模式相似度的船舶作业行为异常检测方法及系统与流程

文档序号:16633819发布日期:2019-01-16 06:49阅读:184来源:国知局
一种基于模式相似度的船舶作业行为异常检测方法及系统与流程

本发明涉及船舶数据处理技术领域,具体地,涉及一种基于模式相似度的船舶作业行为异常检测方法及系统。



背景技术:

随着在传感、通信、存储和计算领域的进步,人们在网络和实体空间活动时留下的记录正以前所未有的速度累积。这些记录的规模和多样性为人们在不同环境下了解社会行为和社会动态提供了新的机会,尤其在公共安全、城市规划、交通管理等方面。

船舶自动识别系统(automaticidentificationsystem,简称ais系统)由岸基(基站)设施和船载设备共同组成,是一种新型的集网络技术、现代通讯技术、计算机技术、电子信息显示技术为一体的数字助航系统和设备。收集和分析这些ais信息,有利于人们揭示城市的动态变化和人类行为等信息。比如说发现交通模式、城市动态、行车路线等等。

船舶在航行过程中往往需要遵循特定的航线或者不同工程中的船舶需要在特定起始和终止区域之间航行。但是出于利益问题,某些船只会选择违规行驶或者不按照制定流程完成作业任务,这些违规操作会给工程质量和委托方带来损失。因此检测这些行为是确保工程质量和提高工程效率的关键。当前这些违规行为是委托监理单位安排经验丰富的监理人根据视频监控以及相关数据报表记录进行的,但是不仅人力成本大,而且时间上也十分低效。并且监理人的工作质量本身也不可控,因此准确地判断船舶异常航行行为,既有利于维护船舶公司的整体声誉,有效的约束船只负责人的行为,同时也能保护工程方合法权益,提高工程质量和效率,具有十分重要的意义。目前关于船舶坐标点异常问题急需一种可靠可行的方法。

近年来学术界对异常轨迹检测研究的热度越来越高,越来越多的检测方法被提出,凸显出其实用价值。如构建集群来检测连续轨迹流,对一个全局的异常事件进行检测,使用基于距离和密度特征两种形式证据的组合模型等方法。但是已有方法存在无法在个体层面上发现异常行为、对轨迹距离范围有特定要求等问题。而且由于轨迹数据的隐私性和复杂性等问题,目前可行的船舶轨迹异常检测方法仍然相对匮乏。



技术实现要素:

针对现有技术中的缺陷,本发明的目的是提供一种基于模式相似度的船舶作业行为异常检测方法及系统。

根据本发明提供的一种基于模式相似度的船舶作业行为异常检测方法,包括坐标点异常检测流程:

从ais系统中提取船舶的历史轨迹的轨迹特征,得到历史轨迹序列,通过网格化和倒排索引对历史轨迹序列进行存储及索引,将待测船舶的轨迹与历史轨迹序列进行对比,检测坐标点是否异常。

较佳的,还包括流程异常检测流程:

将历史轨迹序列与待测船舶的轨迹分别转化为状态序列,提取标志性事件及标志性事件对应的时间,将待测船舶的标志性事件之间的时间间隔与历史轨迹序列的标志性事件之间的平均时间间隔进行对比,检测流程是否异常。

较佳的,所述坐标点异常检测流程包括:

步骤11:从ais系统中提取历史轨迹的轨迹特征,按照船舶编号进行分组并进行降噪处理,得到对应每条船舶的历史轨迹序列;

步骤12:在历史轨迹序列的基础上生成历史轨迹网格的倒排索引表;

步骤13:根据待测船舶的轨迹的起点和终点,通过所述倒排索引表提取所有有效的历史轨迹序列;

步骤14:利用坐标点异常检测算法对待测船舶的轨迹和所有有效的历史轨迹序列进行比较,检测航行是否异常。

较佳的,所述坐标点异常检测算法包括:

维持一个包含最新传入gps点的自适应窗口,并将自适应窗口中的子轨迹与所有有效的历史轨迹序列进行比较,随着新的gps点被添加到自适应窗口中,逐步删除不包含自适应窗口中子轨迹的有效的历史轨迹序列;

只要在自适应窗口中的子轨迹的支持度高于设定值θ,新的gps点将继续添加到自适应窗口中,如果支持度不高于设定值θ,则自适应窗口减小为仅包含最新的gps点。

较佳的,步骤12包括:

将历史轨迹序列t中的所有点(p1,p2,…,pn)全部通过map映射后得到历史轨迹网格然后将历史轨迹网格映射到(网格:轨迹编号,网格位置)的键值对上,通过对相同键的规约将结果写入数据库。

较佳的,所述流程异常检测流程包括:

步骤21:对待测船舶指定起始区域和目标区域,并明确起始区域和目标区域的坐标信息;

步骤22:将历史轨迹序列转化成包含地理位置信息的状态序列和距离序列;

步骤23:识别接近目标区域的坐标点集合:p=(pn|dn<d),其中dn是所述距离序列中的值,对应所述历史轨迹序列中的点到目标区域的距离,d是距离常量;

步骤24:计算历史轨迹序列的标志性事件之间的平均时间间隔;

步骤25:将待测船舶的轨迹转化为状态序列,提取标志性事件及标志性事件对应的时间,将待测船舶的标志性事件之间的时间间隔与所述平均时间间隔进行对比,检测流程是否异常。

较佳的,状态包括:s1、s2和s3,s1为在起始区域内,s2为在目标区域内,s3为在起始区域和目标区域外的区域;

步骤22中,将历史轨迹序列t中的所有点〈p1,p2,…,pn>转化为状态序列如:(s1,s1,s1,…,s3,s3,..,s3,s2,…,s3,…,s1,…),距离序列:(d1,d2,…dn),从状态序列中提取出标志性事件序列及标志性事件对应的时间记录到数据库中,记录格式包括:s3->s1:e1,代表进入起始区域,s1->s3:e2,代表出起始区域,s3->s2:e3代表进入目标区域,s2->s3:e4,代表出目标区域,标志性事件序列如:(e1,e2,e3,e4,e1,e2,e3,e4,e1,…),待测船舶的一个完整的工作流程为:e1(t1),e2(t2),e3(t3),e4(t4),其中t1、t2、t3、t4分别为各个标志性事件之间对应的时间间隔。

较佳的,存在t1>|t1+x%|或t2>|t2+x%|或t3>|t3+x%|或t4>|t4+x%|,则待测船舶的工作流程为异常工作流程,其中t1、t2、t3、t4分别为各个标志性事件之间对应的平均时间间隔,x为误差允许范围。

根据本发明提供的一种基于模式相似度的船舶作业行为异常检测系统,包括坐标点异常检测子系统:

从ais系统中提取船舶的历史轨迹的轨迹特征,得到历史轨迹序列,通过网格化和倒排索引对历史轨迹序列进行存储及索引,将待测船舶的轨迹与历史轨迹序列进行对比,检测坐标点是否异常。

较佳的,还包括流程异常检测子系统:

将历史轨迹序列与待测船舶的轨迹分别转化为状态序列,提取标志性事件及标志性事件对应的时间,将待测船舶的标志性事件之间的时间间隔与历史轨迹序列的标志性事件之间的平均时间间隔进行对比,检测流程是否异常。

与现有技术相比,本发明具有如下的有益效果:

本发明极大简化了原本复杂的船舶轨迹数据表示,也使得复杂轨迹点数据之间隐含的特征得以便于分析。不同于传统全局时间异常的定义和检测,本发明通过对单个坐标点的位置属性进行分析实现对单个点的实时异常检测。从而可以将异常发生的具体时间更精确的识别出来,便于对异常信息进行提取和记录。同时针对明确具体起始区域和目标区域的任务,对船舶轨迹转化成状态序列并进行事件检测,进而提取流程异常记录。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明倒排索引的过程图;

图2为坐标点异常检测的整体流程图;

图3为坐标点异常检测的算法伪代码图;

图4为坐标点异常检测实例的示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

由于ais点坐标是以经纬度的形式进行定位的,而经度和纬度的值都属于连续域。这里定义一个映射函数map:

map(pi):r2→g

map函数将属于连续域的ais坐标映射到网格矩阵g内的一个网格中,网格矩阵g是将地理区域分解为若干个网格得到的,gij表示矩阵g中第i行、第j列的网格。将轨迹t中的所有点<p1,p2,…,pn>全部通过map映射后得到网格轨迹(对任意1≤i≤n,gi=map(pi))。如map(p1)=g23,map(p2)=g44,map(p3)=g55。

倒排索引是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。本发明将轨迹作为文档,单元格作为单词,构建对每个单元格的索引。将单元格作为行键,轨迹编号作为列修饰符,单元格位置作为该列的值写入数据库。该过程如图1所示。

在建立倒排索引之后,我们若要查找通过某个网格的所有轨迹,则直接将对应行的所有列返回即可得到结果。

然后对本发明的船舶工作流程检测进行说明。对于有具体规定起始工作区域和目标工作区域的工程,船舶的轨迹点可以用一些状态进行划分,如:s1(在起始区域内),s2(在目标区域内),s3(在起始区域和目标区域以外的区域)。那么船舶轨迹就可以转化成状态序列进而可以从状态序列中提取出标志性事件。如:e1(进入起始区域),e2(出起始区域),e3(进入目标区域),e4(出目标区域)。

如图2所示,本发明提供的一种基于模式相似度的船舶作业行为异常检测方法,包括坐标点异常检测流程以及流程异常检测流程两个部分。

坐标点异常检测流程是从ais系统中提取船舶的历史轨迹的轨迹特征,得到历史轨迹序列,通过网格化和倒排索引对历史轨迹序列进行存储及索引,将待测船舶的轨迹与历史轨迹序列进行对比,检测坐标点是否异常。具体按照以下步骤进行:

步骤11:从ais系统中提取历史轨迹的轨迹特征,提取的轨迹特征包括但不限于坐标记录时间、坐标点经度和坐标点纬度,并按照船舶编号进行分组并进行降噪处理,得到对应每条船舶的历史轨迹序列。

步骤12:在历史轨迹序列的基础上生成历史轨迹网格的倒排索引表。将历史轨迹序列t中的所有点<p1,p2,…,pn>全部通过map映射后得到历史轨迹网格然后将历史轨迹网格映射到(网格:轨迹编号,网格位置)的键值对上,通过对相同键的规约将结果写入数据库。

步骤13:根据待测船舶的轨迹的起点和终点,通过所述倒排索引表提取经过起点和终点的所有轨迹编号,并且除去从终点到起点的轨迹,从而得到所有有效的历史轨迹序列。

如图1所示,若要获得从g3到g5的所有轨迹,首先从倒排索引数据库获得经过g3的所有轨迹以及经过g5的轨迹又对于轨迹网格g3在轨迹中的位置为3,网格g5在轨迹中的位置为2,则可以断定是从g5到g3的轨迹,因此g3到g5的所有轨迹

步骤14:利用坐标点异常检测算法对待测船舶的轨迹和所有有效的历史轨迹序列进行比较,检测航行是否异常。坐标点异常检测算法包括:

维持一个包含最新传入gps点的自适应窗口,并将自适应窗口中的子轨迹与所有有效的历史轨迹序列进行比较,随着新的gps点被添加到自适应窗口中,逐步删除不包含自适应窗口中子轨迹的有效的历史轨迹序列;只要在自适应窗口中的子轨迹的支持度高于设定值θ,新的gps点将继续添加到自适应窗口中,如果支持度不高于设定值θ,则自适应窗口减小为仅包含最新的gps点。算法伪代码如图3所示。

下面用图4中的例子对算法进行简单说明:

图中有三条常走的轨迹route1、route2、route3,分别是100、200、150条。我们对待测轨迹进行检测,开始的时候适应窗口w不断增加直到p4,到p5的时候由于窗口w中的子轨迹<p1,p2,p3,p4,p5>没有轨迹支持,因此p5被加入异常点集合χ,接着子轨迹<p5,p6>也没有轨迹支持,因此p6被加入异常点集合χ,接着子轨迹<p6,p7>有150条route3轨迹支持,因此p7点正常,接着p8、p9、p10又被加入异常点集合χ,直到最后轨迹完成,异常点集合χ={p5,p6,p8,p9,p10}。

流程异常检测流程是将历史轨迹序列与待测船舶的轨迹分别转化为状态序列,提取标志性事件及标志性事件对应的时间,将待测船舶的标志性事件之间的时间间隔与历史轨迹序列的标志性事件之间的平均时间间隔进行对比,检测流程是否异常。具体按照以下步骤进行:

步骤21:对待测船舶指定起始区域和目标区域,并明确起始区域和目标区域的坐标信息。

步骤22:将历史轨迹序列转化成包含地理位置信息的状态序列和距离序列。状态值集合为:{s1(在起始区域内),s2(在目标区域内),s3(在起始区域和目标区域以外的区域)}。例如将历史轨迹序列t中的所有点<p1,p2,…,pn>转化为状态序列如:(s1,s1,s1,…,s3,s3,..,s3,s2,…,s3,…,s1,…),距离序列:(d1,d2,…dn),从状态序列中提取出标志性事件序列及标志性事件对应的时间记录到数据库中,记录格式包括:s3->s1:e1,代表进入起始区域,s1->s3:e2,代表出起始区域,s3->s2:e3代表进入目标区域,s2->s3:e4,代表出目标区域,标志性事件序列如:(e1,e2,e3,e4,e1,e2,e3,e4,e1,…),待测船舶的一个完整的工作流程为:e1(t1),e2(t2),e3(t3),e4(t4),其中t1、t2、t3、t4分别为各个标志性事件之间对应的时间间隔。

步骤23:识别接近目标区域的坐标点集合:p=(pn|dn<d),其中dn是所述距离序列中的值,对应所述历史轨迹序列中的点到目标区域的距离,d是距离常量;

步骤24:计算历史轨迹序列的标志性事件之间的平均时间间隔:e1->e2:t1,e2->e3:t2,e3->e4:t3。

步骤25:将待测船舶的轨迹转化为状态序列,提取标志性事件及标志性事件对应的时间,将待测船舶的标志性事件之间的时间间隔与所述平均时间间隔进行对比,检测流程是否异常。存在t1>|t1+x%|或t2>|t2+x%|或t3>|t3+x%|或t4>|t4+x%|,则待测船舶的工作流程为异常工作流程,其中t1、t2、t3、t4分别为各个标志性事件之间对应的平均时间间隔,x为误差允许范围。

在上述一种基于模式相似度的船舶作业行为异常检测方法的基础上,本发明还提供一种基于模式相似度的船舶作业行为异常检测系统,包括坐标点异常检测子系统和流程异常检测子系统。

坐标点异常检测子系统从ais系统中提取船舶的历史轨迹的轨迹特征,得到历史轨迹序列,通过网格化和倒排索引对历史轨迹序列进行存储及索引,将待测船舶的轨迹与历史轨迹序列进行对比,检测坐标点是否异常。

流程异常检测子系统将历史轨迹序列与待测船舶的轨迹分别转化为状态序列,提取标志性事件及标志性事件对应的时间,将待测船舶的标志性事件之间的时间间隔与历史轨迹序列的标志性事件之间的平均时间间隔进行对比,检测流程是否异常。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

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