基于GA-BP模型的船舶靠泊操纵智能化评价
2016-10-11陈锦标肖英杰
陈锦标, 唐 瑶, 肖英杰
(上海海事大学 航运仿真技术教育部工程研究中心, 上海 201306)
基于GA-BP模型的船舶靠泊操纵智能化评价
陈锦标, 唐 瑶, 肖英杰
(上海海事大学 航运仿真技术教育部工程研究中心, 上海 201306)
为实现船舶靠泊操纵的智能化评估,使评价结果更为客观、高效、公平,通过分析靠泊操纵过程,建立两级评价指标体系;利用航海模拟器靠泊操纵数据库,结合专家调查法和高斯拟合,得到各样本的主观评分,实现自动化评估。通过MATLAB编程,利用已有样本集,训练并测试改进的BP神经网络(Genetic Algorithm-Back Propagation,GA-BP)模型,最终实现智能化评估。实例分析结果表明:改进的BP网络的测试误差为0.006 248 1,实际输出与期望输出的贴近性较好,证明利用已训练好的网络对靠泊操纵进行评估具有较高的便捷性、可靠性和客观性。
水路运输;船舶靠泊;智能评价;遗传算法;BP神经网络
Abstract: A two-level evaluation indexes system is set up based on the analysis of the berthing process. With the index system, the operation data in the training simulator database is reevaluated by experts to get subjective scores for each ope-ration sample. The subjective scores are processed with Gauss fitting and used as reference to train and test Genetic Algorithm-Back Propagation(GA-BP) model of the BP neural network. With the refined neural network the intelligent evaluation of ship handling operation gives more accurate, objective, and impartial evaluation. Tests indicate that the error of the improved BP neural network is as low as 0.006 248 1 and the system outputs are extremely close to those expected.
Keywords: waterway transportation; ship berthing; intelligent evaluation; genetic algorithm; BP neural network
船舶靠泊操纵是指船舶从防波堤入口或进港航道端部平稳地驶至并停靠泊位处所进行的全部操纵行为。对船舶靠泊操纵进行智能化评价不仅可以使评价实时化、便利化,而且能降低评价过程中人为因素的影响,使评价更加客观、公正。
船舶靠泊操纵的主要评价方法是根据专家系统或层次分析法确定权重,然后通过采用模糊综合评判法或在模糊综合评判法的基础上融合灰色关联度法来实现自动化评估。[1-8]该评价方法受主观因素的影响且过程历时较长;而反向传播(Back Propagation,BP)神经网络能通过样本训练模拟人脑思考的过程,具有自组织和自学习的特点,是一种相对客观的评价方法。需指出,BP网络的训练和测试样本是基于层次分析法、模糊综合评价法及灰色关联度方法确定的,但在利用训练好的网络评价新的对象时,已极大地剔除评价过程中的主观因素。这里试图通过建立改进的BP神经网络(Genetic Algorithm-Back Propagation,GA-BP)模型来实现船舶靠泊操纵的智能评估,以缩短评价时间、降低人为因素对评价结果的影响。
1 建立评价指标体系
在靠泊操纵过程中,应把握好摆好船位、控制余速和靠拢速度等3个环节。这里从操纵安全性、操纵熟练性和航迹平滑性等3个方面对靠泊操纵进行评价,建立船舶靠泊操纵评价指标体系(见图1)。
图1 船舶靠泊操纵评价指标体系
靠泊操纵对驾驶员的最基本要求是保证本船、本泊位及其前后泊位已停靠船舶安全。这就要求驾驶员在靠泊时控制好余速并选择合适的靠拢角度,以安全的速度完成靠泊操纵。在评价靠泊操纵的娴熟性时,还应考虑对主机、舵机及拖船性能的掌握程度和使用情况。为更加全面地评判学员的靠泊操纵技能,也将航迹的平滑程度纳入评价体系。需说明
1) 靠拢速度是指本船接触码头的瞬间船速在垂直于泊位岸线方向上的分量。
2) 位置准确度是指靠泊后船舶中心沿泊位线方向到N旗的距离(见图2中的D0)。
图2 靠泊操纵示意图
3) 主机连续性是指主机在整个靠泊操纵过程中维持某一车效不变的平均时长。
4) 航迹凹凸次数和最大凹凸度是指实际航迹偏离平滑航迹的频次和幅度。
5) 航迹凹凸度是指在某一凹处(或凸处)存在以最凹点或最凸点为纬向中间点的D1和D2,这两点到基准线的距离的平均值Dm与最凸点(或最凹点)到基准线的距离Dr的差值。
2 GA-BP网络
2.1BP神经网络
BP神经网络是一个多层次的反馈模型,其特点是根据实际输出与期望输出的差值不断调整各层链接权值,直到误差在允许的范围内。3层BP神经网络[9]结构示意图见图3。
图3 BP神经网络结构示意图
简单的BP网络模型的算法如下。
设输入节点数为I,输出节点数为O,指标集U={U1,U2,…,Un},样本模式集为M,则第p个样本的指标集U={Up1,Up2,…,Upn}。
1) 输入层节点的输出为
xi=upi
(1)
式(1)中:upi为样本p的输入;p=0,1,2,…,m;i=1,2,…,n。
2) 隐层节点的输出为
(2)
式(2)中:vij(j=1,2,…,l)为输入层节点i到隐含层节点j的链接权值;θj为隐含层第j个节点的阈值;f1(x)为Sigmoid函数。
3) 输出层节点的输出为
(3)
式(3)中:wjk为隐含层节点j到输出层节点k的连接权值;θk为输出层第k个节点的阈值;f2(x)同上。
总误差为
(4)
式(4)中:tp为第p个样本的期望输出;zp为样本模式p的输出。
输入层节点i到隐含层节点j的权值调整量为
(5)
隐含层节点j到输出层节点k的权值调整量为
(6)
新的权值为
vij(n)=vij(n-1)+ηΔvij(n)+αΔvij(n-1)
(7)
wjk(n)=wjk(n-1)+ηΔwjk(n)+αΔwjk(n-1)
(8)
式(7)~式(8)中:α为动量系数,通常0<α<0.9;η为学习率,范围在0.001~10。
2.2对BP神经网络的改进
BP神经网络主要存在隐含层节点难以确定、算法收敛速度慢和容易陷入局部极小值等3个问题。对此,将试凑法、LM算法和遗传算法融入BP网络,以改进网络的适应性和准确性。
2.2.1试凑法确定隐层节点
隐含层节点过少会导致网络无法较好地实现对样本的学习;节点过多又会出现训练时间较长和容错能力下降的问题。因此,确定隐含层节点时通常很难找到最佳节点数,但只要所选节点数满足误差要求即可。目前有关节点数确定的经验公式有3种[10],这里首先根据经验公式初步确定选择范围,然后通过循环程序比较各节点数下网络的学习能力和速度,从而选出较优的节点数。
2.2.2LM算法改进网络的运算速度
BP神经网络采用梯度下降算法,该算法在开始时下降很快,但当接近最优值时因梯度近似为零,目标函数下降缓慢;牛顿下降法可在最优值附近产生一个理想的搜索方向。Levenberg-Marquard(LM)算法集合了以上2种算法的优势,在网络权值较小时仍可迅速收敛。[11]其权值修正公式为
(9)
式(9)中:Wn+1为第n+1次迭代的权重;Jn为误差对权重的偏分的雅可比(Jacobian)矩阵;μ为非负值,当μ→0时为Gauss-Newton法,当μ→∞时为标准梯度下降法;A为单位矩阵;E为累计误差。
2.2.3GA算法改进BP网络
遗传算法[12](Genetic Algorithm, GA)是一种根据生物界自然选择和自然遗传机制建立的随机化搜索算法。用该算法优化BP网络的具体方式是通过优化BP网络的初始权值和阈值,使其先达到最优解附近,从而避免BP网络陷入局部最优值。GA-BP网络算法的步骤为:编码并确定初始种群数;选取适应度函数;确定被选中的概率;设定交叉变异算子;解码最优值并训练BP网络。
3 实 例
3.1模拟对象及试验工况
为验证所建模型的合理性,借助上海海事大学航海模拟器模拟7万吨级散货船(编号为YLSG116R13)靠嘉兴港独山港区1号泊位,请具备不同操纵水平的人员(1名船长和29位学员)模拟船舶靠泊过程,共模拟30次,其中失败0次,得到有效数据30组(记为样本1,样本2,…,样本30)。本船的基本参数为:船长250 m,船宽32.3 m,吃水13.9 m,载重70 000 t,驾驶台与船尾间距离30 m。船舶模拟试验工况为:直接靠,风向315°,风级6级,流向070°,流速1.5 kn。
3.2数据采集
对30次操纵的数据记录进行整理分析,得到各个二级指标的试验值。理论上,万吨级满载船舶的艏部抵达泊位中间N旗外档时其余速应≤2.0 kn。[13-14]但实际上,由于不同驾驶员对航向、航迹和航速的控制不同,船舶抵达泊位前沿时与泊位的距离有差异。因此,余速和靠拢角度均统一在船位距离泊位2倍船宽时测得。此外,关于位置准确度,取船舶中心点在泊位中心点后为正,否则为负。
3.3采用专家调查法确定学习样本
为确定指标体系权重和评价二级指标的样本值,向经验丰富的船员及船舶操纵领域资深专家和学者发放调查问卷70份,收回有效问卷42份。经统计分析,得出一、二级指标的权重(见表1)和部分二级指标样本值的评价结果。为保证调查结果的可靠性,将统计结果反馈给专家进行修正。
表1 一、二级指标权重
3.3.1权重
安全性指标对评价结果起决定性作用,而靠拢速度又是确保船舶和码头安全的关键因素。因此,首先对待评价对象的靠拢速度指标值进行评价,若超出安全值,则直接评判结果为不合格。
3.3.2隶属度函数
首先,按集中度对每个二级指标的30个样本值进行分组并取组中值,让专家对组中值和特征点进行打分(0~1);同时,为保证评价具有一致性和层次性,咨询评判专家确定各指标的下限(及格点),即下限的得分为0.6。然后,根据组中值和下限的得分进行高斯拟合并作适当调整,其中航迹凹凸次数是离散变量,简单的分段函数即可表征其隶属度情况。最后,由拟合函数求得样本各指标的得分。以指标位置准确度、拖船用车频次和航迹凹凸次数为例,给出其拟合函数和图像(见图4~图6)。30个样本的各个指标得分及加权后综合得分情况见图7。
图4 指标“位置准确度”的样本值的隶属度函数
图5 指标“拖船用车频次”的样本值的隶属度函数
图6 指标“航迹凹凸次数”样本值的隶属度函数
图7 样本集综合得分
4 GA-BP网络的实现过程
4.1网络结构的确定
根据经验公式初步确定隐层节点数的选择范围为[18,26]。表2为各节点数下网络的训练误差,可知隐含层节点数应为24。
表2 各节点数下网络的训练误差
4.2GA-BP算法实现及结果分析
取30组样本数据中的25组作为训练样本,另外5组作为测试样本。考虑到输入数据存在不可公度性和奇异性、直接输入模型输出结果会受到大量纲数据的影响且会屏蔽掉小量纲数据所反映的信息,需对训练样本和测试样本的输入作归一化处理。由于选用Sigmoid函数作为激励函数,其在函数值为0和1附近的变化较小,接近于平坦,因此将输入数据归一到[0.1,0.9]内。
(10)
GA-BP网络算法流程见图8。算法运行多次,得到训练样本和测试样本的平均误差,取其最小值作为训练仿真结果。图9为最优结果的训练样本的误差分布,可看出样本的训练多数集中在[-0.04,0.02]内,但训练样本13,17和19的误差较大,为异常数据点。这是输入数据的维度(10)较高,而样本集容量不够充分造成的。图10为进化过程中测试样本每代的平均误差变化,从中可看出,在第50代时测试样本的均值误差已在精度0.01以下。
图8 GA-BP网络算法流程
图9 最优结果的训练样本的误差分布
图10 进化过程中测试样本的平均误差变化
表3为网络输出与目标输出对比,从中可看出,当用遗传算法对权值和阈值进行优化之后,网络的测试误差和训练误差减小很多,网络训练的结果更加贴近样本的目标输出。
表3 网络输出与目标输出对比
5 结束语
根据训练样本和测试样本对GA-BP网络进行训练仿真,得到的结果较为理想,实际输出与目标输出差距很小。保存训练好的网络,并将待评估对象的二级指标值输入至已保存的网络中,得到的输出即为该对象的综合得分。这样即实现船舶靠泊操纵的智能化评价。从实例中可看出,为使模型能处理各种对象,需增加训练样本的容量、加大样本之间的差异化。此外,由于不同的风和流对靠泊操纵的影响不相同,需要根据实际情况调整训练样本的拟合函数,使评价结果更加灵活、可靠。
[1] 王德龙,任鸿翔,赵月林,等.船舶操纵模拟器进出港操纵自动评估系统[J].大连海事大学学报,2014,40(2):27-30.
[2] 王德龙.船舶操纵模拟器实操自动评估系统初步研究[D].大连:大连海事大学,2013.
[3] 薛满福,房希旺,任鸿翔.船舶靠泊操纵评估模型[J].中国航海,2013,36(3):46-49.
[4] 房希旺.基于航海模拟器的操船评估模型及应用[D].大连:大连海事大学,2008.
[5] 包国江.基于航海模拟器的船舶操纵评估系统的研究[D].大连:大连海事大学,2008.
[6] HSU, KEVIN W K. Assessing the Safety Factors of Ship Berthing Operations[J]. Journal of Navigation,2015,68 (3):576-588.
[7] 陈锦标,吴广宇,应士君.基于灰色模糊综合评估法的大型船舶模拟操纵评价[J].上海海事大学学报,2008,29(4):1-5.
[8] 邱云明,陈伟炯,陈锦标.临海港口航道航行环境安全综合评价模型[J].中国航海,2005(3):41-45.
[9] 胡志武,程葆明,陈延才.基于BP神经网络的船员适任性评价模型[J].上海海事大学学报,2010,31(4):23-27.
[10] 李文娟.改进BP神经网络在水质评价中的应用研究[D].重庆:重庆理工大学,2011.
[11] AHMED Y A, HASEGAWA K. Automatic Ship Berthing Using Artificial Neural Network Trained by Consistent Teaching Data Using Nonlinear Programming Method[J].Engineering Applications of Artificial Intelligence,2013,26(10):2287-2304.
[12] 杨鸣,施伟锋.基于多种群遗传神经网络的船舶发电机故障诊断[J].上海海事大学学报,2013,34(4):18-22.
[13] 洪碧光.船舶操纵[M].大连:大连海事大学出版社,2008:66-68.
[14] 房希旺,何欣,杨林家.船舶操纵[M].大连:大连海事大学出版社,2012:91-93.
IntelligentEvaluationofShipBerthingOperationBasedonGA-BPModel
CHENJinbiao,TANGYao,XIAOYingjie
(Engineering Research Center of Shipping Simulation, Ministry of Education, Shanghai Maritime University, Shanghai 201306, China)
2016-01-11
国家科技支撑计划课题(2015BAG20B05)
陈锦标(1965—),男,上海人,副教授,博士生,从事载运工具运用及船舶操纵研究。E-mail:jbchen@shmtu.edu.cn 唐 瑶(1993—),女,河南卫辉人,硕士生,从事载运工具运用研究。E-mail:tangyao93@163.com
1000-4653(2016)01-0064-05
U675.921
A