一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于图数据模型的船舶碰撞事故相似性分析方法

2022-06-05 02:26:52 来源:中国专利 TAG:


1.本发明涉及船舶碰撞事故分析方法,尤其涉及一种基于图数据模型的船舶碰撞事故相似性分析方法。


背景技术:

2.船舶碰撞事故是指船舶在水域内发生接触造成损害的事故,其主要原因包括:人为操作失误,船舶因素,环境影响以及船公司管理失误等。船舶碰撞事故呈现出多因素、难以判定等特点。完整收集、存储并分析船舶碰撞事故数据至关重要。国内外学者大多采用关系型数据库进行事故数据的存储。然而,由于海事事故数据具有多源异构、属性关联性强等特点,关系型数据模型并不能高效地处理这一类数据。具体问题有以下两方面:
3.1)建模方式较为繁琐,数据关联性表达较弱
4.船舶碰撞事故数据的建模需要构建多张数据表(事故的每一项数据特征都需要建立一张表),并用数据的id值相关联,基于关系数据库建模复杂且抽象;数据关联分析需要逐层遍历与事故表相关联的其他事故数据表。
5.2)数据的查询与遍历时间较长
6.关系型数据库的关系模型建模为多对多关联表,并且每个关联表有两个关联关系,查询计算过程需要遍历多张数据表,耗费大量算力和时间,才能得到最终返回结果。并且随着数据集的增长,性能迅速下降。
7.目前对于船舶碰撞事故的相似度分析大多基于ism层次分析法建立船舶碰撞影响因素多层次结构图,分析同一层次及不同层次各因素之间的关系;以及基于数据挖掘的apriori算法从全因素模式方法对事故各致因因素同事故间的相关性进行分析。这两种方法都是基于对于事故致因进行提取,然后仅从致因的角度对事故进行聚类分析以挖掘出事故之间的关联性。由于关系型数据库的数据关联性表达能力较弱,在事故多维度数据的处理与分析能力方面也有所欠缺。但是,图数据模型对事故数据的组织可以实现高效的关系遍历、事故相关数据遍历等计算,相较于关系型数据库的分析效果更优。再者,目前对事故原因的影响力分析方面大多基于粗糙集、贝叶斯网络、等数据挖掘与计量经济模型加以识别与分析,计算事故等级(严重性)与事故类型、事故发生时间、船旗国、吨位、船型、船龄、气象、人为因素、碰撞数据等各影响因素之间的关联性。这些方法将各因素进行分类赋值,随后通过关联性计算得出影响因素的权值,从而揭示事故内在规律。但是这些方法仅仅是将事故与原因本身看作是独立的个体而割裂了与其他事故的关联性,即忽略了各类因素的链式传播的情况。
8.综上所述,关系型数据库处理分析海事事故数据难以高效处理数据间的关联性,对于数据的关联性大多基于聚类分析的方式进行数据聚和,缺少高效利用数据间耦合性和关联性的数据模型。


技术实现要素:

9.本发明为了克服现有技术的缺陷,提出了一种基于图数据模型的船舶碰撞事故相似性分析方法。具体步骤如下:
10.步骤一、船舶碰撞事故数据的提取:
11.通过搜集近几年的国内外船舶碰撞事故报告数据,将船舶碰撞事故的各类属性数据进行提取和分类,主要包括事故发生时间、地点、能见度、风速、浪高以及事故方船长、船宽、船深、船速、距离等各类参数,将这些数据整理并保存。
12.步骤二、数据节点建模:
13.a)船舶节点存储船舶的全部参数,其中包括船长、船宽、船深、总吨位、船龄、船籍国等各项参数,与另一艘事故船舶参与方通过事故节点产生联系。
14.b)事故节点存储事故属性所有参数,其中包括事故发生时间、地点、严重程度、伤亡人数、经济损失、污染情况等各类事故属性。事故节点与具体原因节点以及环境节点构建关系。
15.c)环境节点存储事故周围水域的通航情况以及天气情况,包括能见度、浪高、风速等参数。
16.d)具体原因节点存储事故发生的详细原因,而具体原因节点又将被聚类成若干抽象原因节点,并与之相连,构建原因之间的相互关系。抽象原因节点存储具体原因节点所聚类得出的各类原因情况,聚类情况包括人为操作失误,船舶因素,环境影响以及船公司管理失误四类影响因素。
17.步骤三、节点关系建模:
18.根据上述节点数据中的描述处理节点之间的对应关系。
19.a)事故船舶节点—》事故节点(参与关系):从事故数据中提取事故双方船舶id与船舶节点相匹配,关系匹配字段为船舶(id)—》事故(id)。
20.b)具体原因节点—》事故节点(产生关系):从事故数据中提取事故发生的原因id与原因节点相匹配,关系匹配字段为原因(id)—》事故(id)。
21.c)抽象原因节点—》具体原因节点(包含关系):从具体原因节点聚类得出各类原因情况与抽象原因节点相匹配,关系匹配字段为抽象原因(id)—》具体原因(id)。
22.d)环境节点—》事故节点(关联关系):从事故数据中提取事故发生时刻周围水域的通航情况以及天气情况并与环境节点相匹配,关系匹配字段为环境(id)—》事故(id)。
23.步骤四、清洗数据:
24.为处理节点数据建模过程产生重复节点及节点关系建模时产生歧义关系,需对数据进行清洗,从而保证节点的唯一性和关系的非歧义性:
25.a)融合重复节点:使用neo4j数据库所匹配的cypher语句中match()、collect()、count()函数查询具有相同标签、属性的重复节点,然后使用neo4j数据库中apoc算法库所含有的mergenodes()函数将重复节点进行合并操作,至此节点融合完成。但是,在节点合并后,相应的关系也迁移到了新的节点,这些节点与节点之间存在了重复及歧义的关系。
26.b)进行关系消歧:同样使用cypher语句中match()、collect()、count()函数查询节点间重复的关系,再使用apoc算法库所含有的mergerelationships()函数将重复关系进行合并、消歧。
27.步骤五、事故相似性分析:
28.使用jasccard相似性分析方法进行事故相似性分析。jasccard相似性分析方法用于衡量集合之间的相似度。相似度被定义为交集的大小除以两个集合并集的大小。计算公式如下:
29.j(a,b)=|a∩b|/|a| |b|-|a∩b|#(1)
30.(1)式中,a与b是两个事故节点,该算法从事故节点的连接关系(节点间出链与入链情况)及节点的属性特征两方面去计算事故间的交集及并集并进行计算,从而判断事故间是否相似。通过该结果可以得到与所有事故相似度总和最高的事故,该事故为高发事故类型,可以通过研究分析该事故的特征,从而提取该事故影响因子构成,以降低该类事故以及与该事故相似的所有事故可能发生的概率。
31.步骤六、事故关联节点影响力分析:
32.使用pagerank算法进行事故关联节点影响力分析。pagerank算法根据传入关系的数量和相应源节点(最先被赋予pagerank值的节点,为便于后续计算)的重要性来衡量图中每个节点的重要性。计算公式如下:
[0033][0034]
(2)式中d是阻尼系数,表示为跳转概率,通常设置为0.85,n表示节点个数。p1到pn定义为指向pi节点的所有入链节点,l(pj)定义为离开节点pj的链接数(即出链数)。所有节点的迭代计算过程可以写成以下矩阵形式:
[0035][0036]
(3)式中pi表示第i个节点,表示节点链接概率矩阵,其中其含义为节点j连接节点i的概率。通过(3)式可计算出所有原因节点的pagerank值,从而得到该原因传播能力大小,即影响力大小,若pi节点的pagerank值越大,则表示该点传播力最强,影响力最大,该原因为导致事故发生的重要因素。通过关联节点影响力分析可以间接反映事故相似性程度。
[0037]
本发明基于图数据模型的船舶碰撞事故相似性分析方法的优点如下:
[0038]
1)建模方式更加便捷,数据关联性表达强
[0039]
图数据模型能够更为直接地表达事故数据实体和属性、实体和实体间的关系,只需要构建一张知识图谱就可以存储所有的事故数据,将事故、船舶、事故原因等数据都作为节点存储在图数据库中,代替了原先关系型数据库多表关联的数据模型。
[0040]
2)数据查询与遍历时间较短
[0041]
基于图数据结构的图数据模型在数据查询和遍历方面更具性能优势。图数据模型在事故数据存储过程中把关联属性连接在一起,事故节点和属性等查询和遍历计算无需耗
时耗内存的join操作,可以保持常数级时间复杂度,极大程度地减少了数据查询所需时间。
[0042]
3)数据相似性分析能力强
[0043]
基于图数据模型组织的事故数据关联性得到了充分表达,并能匹配高性能算法,在进行事故数据相似性分析时,具有较高的分析性能。
附图说明
[0044]
图1是本发明基于图数据模型的船舶碰撞事故相似性分析方法船舶碰撞事故数据模型示意图。
[0045]
图2是本发明基于图数据模型的船舶碰撞事故相似性分析方法的流程图。
具体实施方式
[0046]
为了对本发明的技术特征、目的和效果有更加清楚地理解,现对照附图详细说明本发明的具体实施方式。
[0047]
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]
首先,进行船舶碰撞事故数据的提取,通过搜集近几年的国内外船舶碰撞事故报告数据,对搜集的船舶碰撞事故报告的数据进行提取与整理,将船舶碰撞事故的各类属性数据进行分类,主要包括事故发生时间、地点、能见度、风速、浪高以及事故方船长、船宽、船深、船速、距离等各类参数,将这些数据整理为csv文件以方便图数据库对数据进行读取。
[0049]
进一步,构建附图1所示数据模型,进行数据节点建模,按照附图2所示流程,使用图数据库自带的cypher语句将csv文件中的节点数据导入数据库中,从而直接生成图数据节点,包括:
[0050]
a)船舶节点存储船舶的全部参数,其中包括船长、船宽、船深、总吨位、船龄、船籍国等各项参数,与另一艘事故船舶参与方通过事故节点产生联系。
[0051]
b)事故节点存储事故属性所有参数,其中包括事故发生时间、地点、严重程度、伤亡人数、经济损失、污染情况等各类事故属性。事故节点与具体原因节点以及环境节点构建关系。
[0052]
c)环境节点存储事故周围水域的通航情况以及天气情况,包括能见度、浪高、风速等参数。
[0053]
d)具体原因节点存储事故发生的详细原因,而具体原因节点又将被聚类成若干抽象原因节点,并与之相连,构建原因之间的相互关系。抽象原因节点存储具体原因节点所聚类得出的各类原因情况,聚类情况包括人为操作失误,船舶因素,环境影响以及船公司管理失误四类影响因素。
[0054]
进一步,构建附图1所示节点关系,根据上述节点数据中的描述处理节点之间的对应关系,按照附图2所示流程,读取csv文件将节点间的关系数据导入数据库中,生成节点间的有向关系。
[0055]
a)事故船舶节点—》事故节点(参与关系):从事故数据中提取事故双方船舶id与
船舶节点相匹配,关系匹配字段为船舶(id)—》事故(id)。
[0056]
b)具体原因节点—》事故节点(产生关系):从事故数据中提取事故发生的原因id与原因节点相匹配,关系匹配字段为原因(id)—》事故(id)。
[0057]
c)抽象原因节点—》具体原因节点(包含关系):从具体原因节点聚类得出各类原因情况与抽象原因节点相匹配,关系匹配字段为抽象原因(id)—》具体原因(id)。
[0058]
d)环境节点—》事故节点(关联关系):从事故数据中提取事故发生时刻周围水域的通航情况以及天气情况并与环境节点相匹配,关系匹配字段为环境(id)—》事故(id)。
[0059]
进一步,进行清洗数据。为处理节点数据建模过程产生重复节点及节点关系建模时产生歧义关系,需对数据进行清洗,从而保证节点的唯一性和关系的非歧义性:
[0060]
a)融合重复节点:使用neo4j数据库所匹配的cypher语句中match()、collect()、count()函数查询具有相同标签、属性的重复节点,然后使用neo4j数据库中apoc算法库所含有的mergenodes()函数将重复节点进行合并操作,至此节点融合完成。但是,在节点合并后,相应的关系也迁移到了新的节点,这些节点与节点之间存在了重复及歧义的关系。
[0061]
b)进行关系消歧:同样使用cypher语句中match()、collect()、count()函数查询节点间重复的关系,再使用apoc算法库所含有的mergerelationships()函数将重复关系进行合并、消歧。
[0062]
然后,进行事故相似性分析计算。使用jasccard相似性分析方法进行事故相似性分析。jasccard相似性分析方法用于衡量集合之间的相似度。相似度被定义为交集的大小除以两个集合并集的大小。计算公式如下:
[0063]
j(a,b)=|a∩b|/|a| |b|-|a∩b|#(1)
[0064]
(1)式中,a与b是两个事故节点,该算法从事故节点的连接关系(节点间出链与入链情况)及节点的属性特征两方面去计算事故间的交集及并集并进行计算,从而判断事故间是否相似。通过该结果可以得到与所有事故相似度总和最高的事故,该事故为高发事故类型,可以通过研究分析该事故的特征,从而提取该事故影响因子构成,以降低该类事故以及与该事故相似的所有事故可能发生的概率。
[0065]
部分计算结果如表1所示,显示两两事故间的相似度值。
[0066]
表1事故节点间相似度分析结果
[0067][0068][0069]
最后,进行事故关联节点影响力分析计算,并返回各关联节点对于事故产生的影响力数值。使用pagerank算法进行事故关联节点影响力分析。pagerank算法根据传入关系的数量和相应源节点(最先被赋予pagerank值的节点,为便于后续计算)的重要性来衡量图
中每个节点的重要性。计算公式如下:
[0070][0071]
(2)式中d是阻尼系数,表示为跳转概率,通常设置为0.85,n表示节点个数。p1到pn定义为指向pi节点的所有入链节点,l(pj)定义为离开节点pj的链接数(即出链数)。所有节点的迭代计算过程可以写成以下矩阵形式:
[0072][0073]
(3)式中pi表示第i个节点,表示节点链接概率矩阵,其中其含义为节点j连接节点i的概率。通过(3)式可计算出所有原因节点的pagerank值,从而得到该原因传播能力大小,即影响力大小,若pi节点的pagerank值越大,则表示该点传播力最强,影响力最大,该原因为导致事故发生的重要因素。通过关联节点影响力分析可以间接反映事故相似性程度。
[0074]
部分结果如表2所示,显示原因节点对于事故影响力的大小。
[0075]
表2原因节点与事故节点间影响力分析结果
[0076][0077]
本发明是通过几个具体实施例进行说明的,本领域技术人员应当明白,在不脱离本发明范围的情况下,还可以对本发明进行各种变换和等同替代。另外,针对特定情形或具体情况,可以对本发明做各种修改,而不脱离本使用新型的范围。因此,本发明不局限于所公开的具体实施例,而应当包括落入本发明权利要求范围内的全部实施方式。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献