APP下载

基于深度神经网络的船舶交通流预测

2021-01-07索永峰陈文科杨神化陈立媛

关键词:交通流量交通流神经网络

索永峰,陈文科,杨神化,陈立媛

(集美大学航海学院,福建 厦门 361021)

0 引言

船舶自动识别系统(automatic identification system, AIS)显著提升了海上交通调度及港口管理能力,同时所积累的船舶轨迹数据通过数据挖掘可以得到包括微观的船舶行为模式和宏观的交通流特征,从而为港口工作安排部署提供科学量化依据。目前,关于船舶交通流量预测的理论方法较多,大多采用浅层交通流预测模型[1],结构简单,误差较大,存在一定的局限性。船舶交通流具有非线性和不确定性等特点[2-3],给海上交通领域内的船舶流量预测带来巨大挑战。随着人工智能及深度学习算法地不断发展,预测方法已由传统统计方法演变至数据驱动方法。在船舶交通流预测中,常用模型有两种:非参数模型和参数模型[4]。李晓磊等[5]将ARIMA(autoregressive integrated moving average model)模型运用于海上交通领域,通过分析季节对交通流的影响分析,改进ARIMA模型,完成船舶月交通流量预测,得到了良好的预测效果;LI等[6]运用结合模拟退火算法的SVM(support vector machines)模型预测船舶交通流量;ZHANG等[7]将遗传算法和SVM相结合,设计了船舶流量预测模型;LV等[8]将SAES应用于交通流预测,其预测结果比SVM、前馈反向传播神经网络(back propagation,BP)更好;刘承勇等[9]结合灰色理论与马尔可夫理论,运用于船舶交通流预测,将预测误差控制在10%以内。

本文根据港口条件及通航状况,利用解码和筛选后的AIS数据,构建以每4 h为间隔的船舶交通流量样本库,以此作为训练集,在预测模型中进行实验。经多次实验对比,得到模型最佳参数。

1 构建交通流预测模型

1.1 LSTM模型

循环神经网络(recurrent neural network,RNN)是一类以序列数据为输入,循环单元按链式连接的递归神经网络[10],能够处理短期预测问题。但传统的RNN训练网络时,会出现梯度消失的现象,为此,引入RNN的改良网络LSTM(long short term memory)网络。LSTM结构中包含原始RNN的隐含层状态,由于该网络对短期的输入信息较为敏感,因此增加一个状态Ct,用于保持长期记忆[10],此状态也称之为长期状态,用于记录随时间传递的信息。LSTM结构如图1所示。

1.2 GRU(sate recurrent unit)模型

GRU模型[12]使用门控机制来保存尽可能多的长期信息,并且对各种任务同样有效,能实现历史时序信息的储存,但是在计算方面GRU模型更简化。GRU结构如图2所示。

将LSTM单元的ft和it合并为GRU单元的更新门zt,与重置门一起用于控制船舶交通流特征信息的流动[13]。重置门将新输入的下一时刻交通流信息和之前的记忆进行组合;更新门用于决定留下之前的部分记忆单元,使用隐藏状态传递系列之间的信息。由于GRU模型具有相对简单的结构,训练参数少,在训练过程中,其训练速度较快。训练过程如下:

rt=σ(Wr·[ht-1,xt]);

zt=σ(Wz·[ht-1,xt]);

2 实例分析

2.1 实验环境

第九代Intel Core i 7处理器CPU,6核12线程,主频为2.6 GHz;实验编程语言为Python3.7;实验平台为基于深度学习的Keras框架。

2.2 模型指标评价

为确保数据间无量纲干扰,将原始时间序列经式(1)离差标准化化后转化为循环神经网络的输入序列。

Xstd=(x-xmin)/(xmax-xmin)。

(1)

式中:Xstd为归一化后数据;xmin为样本的最小值。

将经神经网络处理后的数据映射在区间[0,1]的结果进行反归一化处理,映射到样本原来的量纲级别:Xscaler=xstd(xmax-xmin)+xmin。式中:Xscaler为反归一化后数据。

采用均方误差(mean square error,MSE)、平均绝对百分比误差(mean absolute percentage error,MAPE)以及相对误差(relative error,RE)3种指标来评估预测模型。即:

2.3 港口船舶AIS数据预处理

取福建漳州古雷港区2018—2019年AIS数据为实验数据。主要包含两类:船舶静态数据,如水上移动通信业务识别码(maritime mobile service identity,MMSI)、船长、吃水、船舶类型等;船舶动态数据,如经度、纬度、航向、航速等[14]。

从AIS数据提取动态航行序列,作为筛选实验数据的基础,该序列主要包括5个字段:MMSI、UTC(时间)、Longitude(经度)和Latitude(纬度)、COG(航向)、SOG(航速)。由于经纬度和速度等特征有异常值、空值和重复值出现,将影响交通流数据的准确性,故将筛选后的数据存入MySQL数据库以作备用。

2.4 交通流数据筛选条件

古雷作业区岸线条件优越,掩护条件良好,是天然深水避风港。古雷港主航道分布如图3所示。由南往北依次布置油品化工码头区、通用码头南区等6个作业区,航道通航标准自东山湾口外A点(现15万吨级航道起点)至古雷作业区南2#泊位(A~B~C′~C1航段),满足15万吨级船舶单向乘潮通航的需求(同时可满足10万吨级船舶不乘潮双向通航,以及15万吨级油船和5万吨级散货船交汇通航),航道有效宽度400 m。取穿越最宽阔横截面船舶的AIS数据,进行船舶流量分析。根据港口的功能属性,取南门湾与古雷头之间较宽阔水域为横断面,每隔4 h统计船舶交通流量。

采用4 h作为时间间隔,主要考虑以下原因:一是渔船多会根据潮汐时间选择出海作业;二是根据进出古雷港船舶的航行规律。

2.5 交通流数据提取算法流程

通过对港口水域通航能力的评估调查,选定通航水域进行区域划定,在划定的横断面海域,对连续一段时间内进港方向且经过该横断面的船舶数据进行历史轨迹的计算分析,得到进港船舶交通流数据集。具体步骤如下:借助python语言的地理科学计算库,根据船舶识别号,将AIS船舶信息的离散轨迹点转成连续的航迹线,利用交点算法依次判断每条船舶轨迹是否与划定的横断面相交,并计算穿越横断面的时刻,同时依据船舶航向判断其进出港属性,将满足以上条件的船舶数据存入数据库中。具体船舶交通流数据提取流程如图4所示。

表1 进港方向穿越横断面船舶交通流量Tab.1 Trafficflowofshipspassingthroughthecrosssectioninthedirectionofportentry时间段Timeinterval船舶交通流量/艘Shiptraffic20180608T0000-20180608T04002520180608T0400-20180608T08004120180608T0800-20180608T12006220180608T1200-20180608T16005920180608T1600-20180608T20004420180608T2000-20180609T000041

将AIS数据从MySQL数据库中提取出来,利用交通流提取算法,统计2018年6月至2018年12月穿越划定横断面海域的船舶数(以4 h为间隔),以此作为数据集,部分数据样例如表1所示,得到1 080组样本。将原始时间序列经标准化后,转化为循环神经网络的输入序列。

2.6 参数分析

GRU模型中,参数的选择对循环神经网络至关重要。通常来说,GRU循环神经网络包含的隐含层数越多,模型的表现力和学习能力就越强,同时会带来容易过度拟合的问题。实验中采用Adam优化器,即随机梯度下降[13],可以避免训练过程中出现陷入局部最优的情况。对网络中重要参数:批次处理数量(batch_size)对比论证,得出最佳参数[14]。批次处理数量可选范围为{8,16,24,32},对批处理数量的选择如表2所示。随着批次处理数量逐渐增大,计算耗时逐渐减少,当批次处理数量过少或过多时,误差也较大,批次数量分别为16和24时,计算耗时相近,且前者误差更小,故选取批次处理数量为16时较好。

表2 不同批次处理数量的性能比较

选择使用两层GRU层和一层全连接层来构建GRU循环神经网络,GRU神经网络的可视化如图5所示。第2层(gru_1)和第3层(gru_2)为GRU层,各包含64个隐含单元;第4层为Dropout层,是一种有效的正则化方法,目的是减少GRU循环神经网络在训练过程中的过拟合情况的发生;第5层为全连接层,包含1个神经元。

2.7 实验评估

为合理地评价GRU循环神经网络在船舶交通流量预测中的结果,将GRU模型与LSTM模型和SAES模型进行比较,训练过程中选取MSE作为模型误差分析指标。

三种模型迭代收敛性如图6所示。从图6可知,三种模型迭代速度均较快,训练损失值能较快得到收敛,训练轮数在90轮左右时,GRU已达到极值,作为对照实验的LSTM和SAES分别在140轮和150轮时达到极值。GRU模型比LSTM模型更快收敛到极值,主要得益于GRU门层结构针对LSTM结构的门层设计得到简化[17]。

各模型对一天内6个时段船舶交通流量的预测结果的验证误差如表3所示。

表3 不同模型的预测结果以及相对误差

从表3可知,LSTM模型、GRU模型和SAES模型误差平均值分别22.04%、19.56%和30.27%。SAES模型预测的误差较大,GRU循环神经网路模型预测的误差控制在20%以内,较LSTM网络模型和SAES模型有更高的准确度,适用性更强。

3 结语

本文利用AIS轨迹数据对港口繁忙水域的横断截面进行船舶流量统计,建立训练数据集,在合理参数范围内对不同参数组合进行实验。选取GRU模型最佳结构和参数,对一天内的船舶流量进行预测,并选取LSTM循环神经网络模型和SAES栈式编码器预测模型作为实验对照组模型。实验结果表明:GRU模型较LSTM模型与SAES模型,预测结果更接近实际船舶交通流量,相对误差较小。后续进一步的研究工作可采用强化学习(reinforcement learning, RL)的机器学习方法,利用不断变化的非线性信息,研究如何随时间变化修正现有的预测模型。

猜你喜欢

交通流量交通流神经网络
基于LSTM的沪渝高速公路短时交通流预测研究
京德高速交通流时空特性数字孪生系统
神经网络抑制无线通信干扰探究
基于XGBOOST算法的拥堵路段短时交通流量预测
基于神经网络的中小学生情感分析
基于GA-BP神经网络的衡大高速公路日交通流量预测
基于神经网络的拉矫机控制模型建立
混合非机动车交通流超车率影响因素模型
基于支持向量机回归和RBF神经网络的PID整定
基于复合卡和ETC的交通流量采集研究