基于DBSCAN的港口泊位自动识别算法设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

上海船舶运输科学研究所学报JOURNAL OFSHANGHAISHIP AND SHIPPING RESEARCHINSTITUTE Vol.44No.1 Mar2021
441
20213
文章编号:1674-5949(2021)01-0031-06
基于DBSCAN的港口泊位自动识别算法设计
刘鑫鑫,韩懿
(中远海运科技股份有限公司,上海200135)
摘要:为更好地监测船舶动态和船舶在港口的作业情况,通过对K-Means算法和DBSCAN(Density-Based Spa­tial Clustering of Applications with Noise)密度聚类算法进行对比,选择DBSCAN密度聚类算法对港口泊位进行聚类,对港口泊位的位置和大小进行识别。

基于船舶自动识别系统(Automatic Identification System,AIS)历史数据、船舶动态信息和船舶基础信息,采用DBSCAN密度聚类算法对全球4079个港口的泊位进行自动识别,得出泊位的位置、方向、岸线长度和类型等信息’将聚类结果与真实泊位信息相对比,结果表明,聚类结果的误差很小,证明该算法是有效的。

计算结果可用于实时跟踪船舶在港作业动态,分析泊位历史作业情况,为港航基于数据的协同优化提供参考°
关键词:DBSCAN算法&全球港口泊位;密度聚类算法&数据可视化
中图分类号:U691文献标志码:A
Port Berth Identification with DBSCAN Clustering Algorithm
LlUXtntn,HAN Yt
(COSCO SHIPPING Technology Co.,Ltd.,Shanghai200135,China)
Abstract:AIS data are used to find position and size information of berths in ports by means of cluster analysis.K-Means algo­rithms and DBSCAN(Density-Based Spatial Clustering of Applications with Noise)algorithm are compared and the la t er is se-ectedforthispurpose.AIS(AutomaticIdentificationSystem)datafrom4079portsworldwide$whichreflectship movement andshipbasicinformationaroundtheports$areprocessedandberthsoftheportsareidentified.Thelocation$orientation$ shorelinetypesandlengthofthoseberthsarecalculatedandcheckedwiththeactualdataoftheberths$whichprovesthee f ec-tivenessofthealgorithm.
Key words:DBSCAN(Density-Based Spatial Clustering of Applications with Noise)algorithm;berths in ports worldwide;den-stycluster5ngalgorthm&datav5sualzaton
0引言
近年来,船舶自动识别系统(Automatic Identification System,AIS)在船上得到广泛应用,装有AIS的船舶通常配合全球定位系统(Global Positioning System,GPS),将船位、船速、改变航向率和航向等船舶动态数据与船名、呼号、船型、吃水和危险货物等船舶静态信息相结合,实时向外广播,为航运企业和海事机构等进行船舶安全管理提供基础数据。

当前,在信息技术不断发展的大背景下,AIS数据已从服务航行安全保障走向服务航运企业的经营管理和行业决策,成为航运大数据挖掘的基础信息,帮助企业对船舶管理、成本核算、风险控制和运力分配等进行优化。

在已有研究中:张智凯等在总结多泊位油品码头平面布置要点时指出了泊位空间平面布置的重要性&汪士寒等*〕基于排队论,对鼠浪湖铁矿石码头泊位的布局进行了优化研究,指出鼠浪湖泊位优化方案是基于
收稿日期20201125
作者简介:刘鑫鑫(1995—),男,河南三门峡人,硕士生,主要从事航运大数据应用研究。

32上海船舶运输科学研究所学报20211
泊位位置和具体信息得到的。

这些研究都是在单个港口的静态泊位数据的基础上开展的。

为进一步研究泊位对港口作业的,找出泊位的具体位为重要。

叶仁道等囚提出采用DBSCAN(Density-Based Spa­tial Clustering of Applications with Noise)密度聚类算法研究船舶停泊点,虽然采用DBSCAN聚类了船舶在海上的停泊点,但只是进行了初步的聚类,没有对聚类结处理,获取的只是海上一些的点,且聚类的是海上的停泊点而非泊位,不具备成为普遍实用性数据产品的可行性。

2018年,中远海技股份有司开始基于大数据技术和数据服务技术研发航运数据中台,目标是应用海量的AIS数据、港口基础数据文气象数据船舶航行全内行为的动态识别,并进一步平台拓展应用到港口动态监控、航线识别与动态监控、船营大品运力监控等领域中。

本文港口泊位的位[行,实现泊位信动态信息的自动化识别,用于对泊位作业时监控,对历史数据进行分析,数据可,为船舶、港口的作业计划风险管理提供参考。

1数据采集
本文基于船舶AIS历史数据、船舶动态信息和船舶静态信息,采用DBSCAN密度聚类算法对全球4079个港口的泊位进行自动识别,得到泊位的位置、方向、岸线长度和类型等信息,用于实时跟踪船舶在港作业动态,分析泊位历史作业。

图1为某船舶某个完整航次的动态信气象条件。

图1某船舶某个完整航次的动态信息和气象条件
本文研究的基础数据主要为AIS历史数据、船舶在港动态信船舶静态信息。

AIS主要将航运动态定义为航行、锚泊、靠泊等4种,分别用0、1、5和6,航运数据中台基于AIS动态数据船舶行为的识别,即对所有船舶靠泊行为的识别(如图1所示)'以锦州港为例,从船舶历史动态数据中提取的历史靠泊数据见图2。

从船舶历史动态数据中提取的数据字1'
图2从船舶历史动态数据中提取的历史靠泊数据
表1从船舶历史动态数据中提取的数据字段说明
字段名字段说明
mmsi船舶标号
portcode港口代码
start_port_lat靠泊点纬度
start_port_lon靠泊点经度
hdg7向
duration_time靠泊时长
calibre船舶归属标识!为集团自有;2为集团租赁;3为集团外)
vessel_type船舶类型一级分类
vessel_sub2type船舶类型三级分类
dwt载重吨
teu集装箱船集装箱数量
刘鑫鑫,等:基于DBCAN的港口泊位自动识别算法设计33
2算法比较及选择
常见的聚类算法主要有基于密度的聚类方法(代表算法为DBSCAN算法)、基于层次的聚类方法(代表算法为BIRCH算法)和基于划分的聚类方法(代表算法为K-Means算法)等3类。

此外还有一些基于这3类算法的衍生算法。

本文主要对K-Means算法和DBSCAN算法进行对比分析。

2.1K-Means算法
在应用K-Means算法时,需先确定样本类的个数n,从样本中随机挑选"点作为类心,迭代更新类心,直到类心不再改变,流程如下:
1)在样本中随机选取K个点,作为每一类的中心点。

2)计算余下n_K个样本点到每个聚类中心的距离(距离有很多种,这里采用欧式距离"对于每个样本点,将其归到与其距离最近的聚类中心所属的类中。

3)重新计算每个聚类中心的位置,步骤2)中得到的结果是n个点都有自己所属的类,对每一类内的所有点取平均值(这里假设是二维空间,即对c坐标和$坐标分别取平均值),计算出新的聚类中心。

4)重复步骤2)和步骤3)的操作,直到所有的聚类中心不再改变。

2.2DBSCAN密度聚类算法
DBSCAN密度聚类算法是基于密度的聚类算法,在应用该算法时,不需要预先确定簇的个数,只需设置半径eps和半径内最少点的个数min_samples即可。

该算法将数据点分为3类,其中:核心点是在半径eps 内点的数量超过min_samples的点;边界点是在半径eps内点的数量小于min_s a mple s,但落在核心点的邻域内的点;噪声点是核心点和边界点以外的点。

主要概念定义如下。

1)直接密度可达:给定一个对象集合D,若对象0在对象g的ep s邻域内,而对象g是一个核心对象,则称对象0从对象g出发时是直接密度可达的。

2)密度可达:若存在一个对象链01,…,0,,…,0”,满足0t=0和0”=g,0,是从0—1出发时关于ep s和min_s a mple s直接密度可达的,则对象g是从对象0出发时关于ep s和min_s a mple s密度可达的。

3)密度相连:若存在对象O5D,使对象0和g都是从O出发时关于ep s和min_s a mple s密度可达的,则对象0到g是关于ep s和min_s a mple s密度相连的。

DBSCAN算法原理⑷如下:
1)DBSCAN通过检查数据集中每点的ep s邻域搜索簇,若点0的ep s邻域内包含的点多于min_s a m­ple个$一个0为象的簇;
2)DBSCAN迭代地聚集从这些核心对象出发时直接密度可达的对象,这个过程可能涉及一些密度可簇的;
3)当没有新的点添加到任何簇时,该过程结束。

2.3算法选择
研究初期选定的算法是K-Means算法,采用该算法的关键在于确定类的数量,通过搜索引擎搜索港口泊位的真实信息。

在应用该算法过程中存在几个无法避免的问题。

1)泊位数(即类的个数)不能准确获取。

很多港口的泊位情况并没有在网络上实时更新,通过搜索引擎搜索,搜索到的泊位数量并不准确。

2)由于漂移等问题,AIS原始数据中会有很多噪声点或错误的船舶状态信息,在此情况下按真实泊位数量聚类,会导致一些分开的泊位聚在同一个类中,或同一个泊位聚在不同的类中。

以锦州港为例,首先搜索到该港有24个泊位(更新时间为2019年9月),采用K-Means算法进行聚类,结果见图3。

图3中:不同的颜色代表不同的泊位;方框部分没有分开,方框内应该是同一泊位,但被分到了2个泊位中;右下角很多零散的泊位被分到了一起作为1个泊位,这样的效果非常不理想。

为避免K-Means算法存在的上述问题,尝试采用DBSCAN算法。

该算法的优势在于不需要提前设置类的个数,只需设置搜索半径和半径内点的最少个数,对不规则图形有较好的聚类效果。

图4为采用DB­SCAN算法聚类的效果。

从图4中可看出,方框内的泊位被较好地聚类了出来,右下角的零散泊位也得到了很好的分类。

34上 海 船 舶 运 输 科 学 研 究 所 学 报2021 1
图3采用K -Means 算法聚类的效果
图4采用DBSCAN 算法聚类的效果
上述聚类算法各有优劣,可根据不同的应用场景选择合适的聚类算法。

本文主要对AIS 靠泊数据进行 聚类,首先排除图团 ,图团 用场景为数据可被 为网络 。

由于在聚类之前无法 泊位的具体个数,从网络上获取的泊位数据不完整且 度不够高,因此不能采用K -Means 算法和肩模型。

DBSCAN 聚类算法、凝聚层次聚类算法和均值漂移聚类算法都不需要先确定类的数量。

凝聚层次聚类 算法的复杂度较高,不适合计算数 大的数据,同时 异值比较 ,在AIS 数据 较低的
适合采用该算法。

相对于均
算法,DBSCAN 聚类算法对异常数据不敏感,且能发 形状的簇,非题 ,可较好 出泊位的形状和大小。

3算法设计和实现
3.1算法工作流程
DBSCAN 聚类算法的工作流程(见图5)如下:
1"提取某港口的靠泊数据,包括船舶的
动通信业务标识码(Maritime Mobile Service Identify ,MMSI)、靠
泊时间、首向和经纬度坐标。

2) 对数据 分类。

(1) 按集装箱船、液散船、干散货船、客船和其他船型
等类别,将不同类型的船分开;
(2) 分离出可能
的船,停靠时间大于200 h 的船属于 船。

3) 对泊位进行聚类,采用DBSCAN 算法对不同类型
船舶的靠泊位
计算。

4) 泊位特征。

(1) 计算每个簇的中心点。

(2) 计算簇的长度。

(3) 计算簇的方向。

① 若有艄向,则取艄向的众数作为泊位方向&
② 有艄向,则以簇内
的2个点连线的方向作为泊位方向。

5) 根据泊位内靠泊船舶的类型,按“泊位类型+ ”的形式对泊位进行命名。

6) 将计算结
出到数据库中。

I 数据分类I I DESCAN 聚刻
确定类心、泊位长度和泊位方向/泊位数据/师图严视化|
图5 DBSCAN
聚类算法工作流程
刘鑫鑫,等:基于DBCAN 的港口泊位自动识别算法设计35
7)前端调用数据库,并将其可视化到地理信息系统(Geographic Information System,GIS )地图上。

3.2关键步骤实现
本文研究的关键步骤为确定DBSCAN 聚类参数、泊位位置、岸线长度和泊位类型°
3. 2. 1确定DBSCAN 聚类参数
DBSCAN 聚类参数有 ep s 和 min _ s a mple s 2 个。

1) 对于参数ep s ,由于输入的坐标是地理上的经纬度坐标,需将传统距离通过单位变换转换到地理坐标 系中。

经纬度单位与国际长度单位之间的变换关系为:赤道上经度1°为111 km ;经线上纬度1。

为111 km ; 其他纬线上经度1°为111 kmXco s A (A 为纬度)
首先确定eps ,若eps 的值过大,会导致噪声点被归入到类内,类的数量会比较少;若eps 的值过小,会导 致类的数量过多。

根据实际情况,ep s 的取值范围为20〜200 m,对应到地理坐标系上约为0. 000 2。

〜 0.0020°'
2) 对于参数min _samples ,若其值过大,会导致离群点变多,类变多,同一个泊位被划分到2个不同的类 中;若min _samples 的值过小,会导致簇中包含过多的离群点。

3.2.2确定泊位位置和岸线长度
首先确定各泊位的中心点,各泊位中数据点的外形为长条形,可根据类内经纬度极值的平均值获取类的 中心点,有
^center 2 〈 2 丿
式(1)和式⑵中和,°ner 分别为类的中心点的经度和纬度;max 和和"分别为类内经度的极大值和极小 值呼max 和知n 分别为类内纬度的极大值和极小值。

其次确定泊位的长度和方向,其中泊位长度;的计算式为
L 槡(爭max *min ) (<^max A m in ) (3)
最后根据泊位的方向确定泊位的2个端点。

泊位方向优先考虑采用船舶停靠时的方向,即艄向。

靠泊 时艄向的众数定义为泊位方向。

采用三角函数计算,以泊位长度为斜边长,假设中心点为泊位方向角的顶 点,计算端点与中心点的相对位置差。

、 _ L X co s a /八A ral —— o (4丿
L X in a *al = §
(5 )根据经纬度坐标差计算2个端点和B 的值,有
P 1
P 2(A center ~P A ral ,*center ~P *ral )(6 ) (7 )
然而,有很多艄向数据缺失,使得艄向不能单纯作为泊位方向。

由于通过观察发现船舶都是靠着泊位停 靠的,数据可视化形状为长条形,因此可根据类的形状确定泊位的方向。

先取类内的2个极值点,即经度最 大和最小的2个点,取二者的纬度值,分为2种情况(图6和图7)
1)最大经度点的纬度值小于最小经度点的纬度值为情况1此时泊位2个端点为
P 2 (A max ,*max )2)最大经度点的纬度值大于最小纬度值点的纬度值为情况2,此时泊位2个端点为P 1 (A min ,*max )P 2 (A max ,*min )
(8)
(9
(10
(11)3.2.3确定泊位类型
确定泊位的位置、方向和长度之后就可将泊位可视化在地图上,
但在实际中不同泊位的船舶靠泊状态和
36上 海 船 舶 运 输 科 学 研 究 所 学 报2021 1
图6无艄向情况1图7无艄向情况2
作业状态是不同的,因此要区分不同泊位的类型。

本文根据每个分类中船舶的主要类型确定泊位的类型。

有处于跟踪动态的船舶分为集团船和非集团船2种,由于非集团船相 的 性未得到验证,用集团船 泊位类型。

若类内集团船只有1种类型,则可直 泊位的类型。

若类内集团船有2种类型,其中80% 为1种船型,另外有一些是 船,可考虑少部分船为 船,泊位类型 I 按占比80% 的船型判断。

若类内集团船有多种船型,则设置泊位为通用型,其中 船由于其特殊性,只
能在特定的泊位停靠泊,将其细分为液化石油气(Liquefied Petroleum Gas,LPG)船、液化天然气(Liquefied Natural Gas,LNG )船 船。

当类内都是液散船时,若其中有LNG 船、LPG 船
船, 泊位类型确定为LPG 船泊位、LNG 船泊位 船泊位。

类似的,当类内有
石船时,彳 泊位 为铁矿石船泊位。

此外还有一种重要的泊位类型,即修理泊位,该类型泊位 ,对靠泊时长超过200 h 的船 聚类,聚类出来的泊位即为 泊位,修理泊位由于其特殊性,后 认其可靠性。

4结果和结论
采用DBSCAN 聚类算法计算各港口的泊位信息,输出的内容为每个泊位的关联港口代码、类型、中文名 称和位置线的点坐标(见图8) o
图8聚类并处理后的结果
目前该航运数据中台已基于DBSCAN 聚类算法挖掘出全球4 079个港口 34 954个泊位,并结合GIS 地图进行了展示,以锦州港为例,聚类结果地图展示见图9,美国IHS 公司数据源泊位与采用DBSCAN 聚类 算法聚类结 展 10。

图10中共有27个泊位,其中有1个 泊位未被IHS ,IHS 数据源泊位中有1个泊位采用该算法未找到。

出现该问题的主要原因在于,该泊位样本点较少,随着数据的增加, 通 算法,可根据
找到该泊位。

相对于IHS 数据源,该算法更灵活,可根据数据的 找 i 增泊位。

有港口,采用该算法的泊位位置识别 可 90%,部分泊位会出现类型错 多个泊
位被识别为1个的 ,这些问题将在后续优化中。

图9聚类结果地图展示图图10 IHS 数据源泊位与聚类结果综合展示
(下转第43页)
何晓宇,等:港区人员安全监管智能系统开发43
的定位技术、互联网技术和数据库技术等,智能安全监管已具有可行性’
本文引入了BDS定位、互联网、物联网和数据库等技术,开发了智能终端设备,包括智能安全帽、人员定位卡和落水报警终端,设计了应急报警流程,搭建了基于BDS定位的港区安全监管系统,并将其应用到了水运工程施工过程中。

实践结果证明,该系统具有良好的可操作性,与涉水工程人员的作业特点相契合,可为涉水工程施工和管理人员提供安全监管平台,为港口智能化发展奠定基础。

参考文献:
:1+高倍力,李佳恒,田明星,等.一种内河船舶综合安全监管平台的实现[J].水运工程,2012(9)(59163.
[2]杨家轩,马文耀,史国友.船载危险品应急管理系统的设计与实现[J].大连海事大学学报,2013,39(2)(7-59.
:3:张培林,彭雄伟,李7.工业港库场智能管理系统的设计与实现[J].水运工程,2003(1)(2-33.
[4]韩雪,张建光,李晶,等.基于B/S的港口设施维护管理系统交互设计与实现[J].实验技术与管理,2018,35(8):
280-284.
[5+俞进辉,郑晓戈,赵石岩,等.基于WLAN的港口机械设备远程监控系统开发[J].机械设计与制造,2018(4)(69272. [6+田丰,任少兵,方正鹏.公路施工人员施工安全行为智能监测技术研究[J].公路交通科技(应用技术版),2015(4):227-228F
[7+朱庆豪.基于ZigBee的井下人员定位系统研究[J].现代电子技术,2016,39(6)(47149.
[8+李蒙,龚雨洁,余宏亮,等.地铁施工人员安全监控预警系统构建及应用一%基于可穿戴技术[J].建筑经济,2018,39
(7)(37-41F
[9+方来华,梁锦熊.港口智能化安全管理系统[J].劳动保护,2016(6)(577.
[10]陈超,郑元璋.基于B/S结构的船岸一体化管理信息系统[J].中国航海,2013,36(4)(65&
[11]刘晓明.基于B/S构架的海上船舶交通信息管理系统[J].舰船科学技术,2018,40(1A) (163.
[12]韩海雯,齐德昱,封斌.基于云计算与物联网技术的港口物流综合服务平台架构研究[J].计算机科学,2013,40(增刊
1)(232-235
(上接第36页)
5结语
本文采用DBSCAN密度聚类算法识别出了港口泊位的位置、方向、长度和类型等信息。

根据全球港口的泊位信息,可使船舶动态跟踪更加准确,有利于船公司对船舶进行数字化管理,有利于港航数字化协同。

下一步的主要工作是对泊位信息进行动态修正和动态监控,并对历史数据进行分析。

例如,随着数据维度的继续增加,可对泊位信息进行更准确的描述,将泊位名称、岸线长度变化、前沿吃水变化和适合作业的船型等扩充到泊位信息中。

参考文献:
[1]张智凯,张涌昊,苗辉.多泊位油品码头平面布置要点[J].水运工程,2019(9)(35139.
[2]汪士寒,张丽娜.基于排队论的鼠浪湖铁矿石码头泊位布局优化研究[J].浙江海洋大学学报(自然科学版),2019,38(3):
274-280
[3]叶仁道,姜玲,张瑜.大数据背景下全球船舶停泊点的数据挖掘分析[J].杭州电子科技大学学报(社会科学版),2018,14
(1)(13-17
[4]朱合隆.密度聚类算法性能优化和参数选取研究[D].赣州:江西理工大学,2020.
[5]ZHOU X N.聚类方法:DBSCAN算法研究(1)——DBSCAN原理、流程、参数设置、优缺点以及算法[EB/OL].(2017-
04-01)[2020-10-11+h t ps(//blog csdn net/zhouxianen1987/article/details/68945844
[]田璐,张敖木翰,张翼,等•船舶AIS大数据资源管理及分析应用架构设计交通运输研究,2019,5(5)(140.。

相关文档
最新文档