李生长,王凤武
(1.烟台大学 海洋学院,山东 烟台264005;2.大连海事大学 航海学院,辽宁 大连116026)
船舶耐波性是船舶在波浪扰动下,仍能维持一定航速安全航行的性能,对船舶航行中的安全尤为重要。耐波性的考量主要通过各种耐波性评价方法完成,在耐波性评价方法中计算船舶航行在一定风浪环境下的耐波性安全评估值,依据评估值的大小可以选取当时风浪条件下最有利的航速和航向,从而指导船舶操纵,保证航行安全。本文在计算船舶的耐波性安全评估值时采用的是基于BP神经网络的耐波性安全评价方法,为了方便和快速地进行评估值计算,本文将BP神经网络的耐波性评价方法分为几个模块,通过应用Matlab软件与C语言的接口方法设计出了船舶的耐波性安全评价程序界面。计算机程序界面的应用更易于操作和快速地计算一定风浪环境下的安全评估值,从而能够更好地选择合适的航速和航向来指导船长和驾驶员进行船舶操纵。
船舶在一定风浪环境中的安全性可以依据当时航态下的耐波性安全评估值来进行考量,在BP神经网络的船舶耐波性安全评价中,通过计算耐波性综合评估方程来获得安全评估值。船舶耐波性综合评估方程如下:
式中:Rx为某风浪环境下船舶以一定航速和航向航行时的安全评估值,它越大,表明船舶沿此航态航行越安全;n为选取的耐波性因素个数;Ki为各耐波性因素的权重系数,其值反映各因素响应对船舶安全性的影响程度,采用层次分析方法计算获得;Pi为各耐波性因素在当前海况和航态下的响应幅值或其超越耐波性衡准值出现的概率;P'i为保证船舶安全航行时各因素允许的响应幅值或其为衡准时允许出现的概率[1]。
从耐波性的综合评估方程中可知,要得出耐波性安全评估值Rx,需要选取影响船舶航行安全的耐波性因素,并且要计算出在一定的风浪环境和航行状态下与其对应的响应幅值或其超越衡准值出现的概率。通过查阅有关文献,研究海上风浪对航行安全的影响以及对船舶驾驶员的调研,选取了影响船舶安全较显著的耐波性因素,包括横摇、纵摇、升沉、船首垂向加速度、砰击、螺旋桨出水和甲板上浪等7个因素,其响应幅值或超越衡准值出现的概率通过谱分析方法和耐波性计算公式获得[2]。
1.2.1 海浪谱密度公式
基于BP神经网络的船舶耐波性安全评价采用ITTC(国际船模试验池会议)推荐的双参数谱计算海区的海浪谱密度,其公式如下:
通过海浪谱密度的计算,进而预报船舶在风浪中航行时的性能。
1.2.2 船舶在不规则波中的六自由度运动计算
依据不规则波理论和平稳随机过程中的谱分析知道,船舶在风浪中的运动表现为线性系统对不规则海浪输入的响应问题,故而:
由此可得到船舶六自由度运动的方差:
应用同样原理,可以计算当时风浪环境下横摇、升沉、船首垂向加速度的有义幅值。
1.2.3 砰击、螺旋桨出水、甲板上浪计算
一定风浪环境下,砰击发生概率P和单位时间内砰击次数N的值,依据不规则波理论和砰击条件,通过以下公式求得:
图1 纵摇有义幅值随浪向角变化曲线Fig.1 Curve of pitching significant amplitude with wave angle
式中:d为计算点的吃水;v为临界相对速度;σ2为计算点的相对位移的方差为计算点相对速度的方差。
同样的,螺旋桨出水和甲板上浪在一定风浪环境下的发生概率和单位时间内的发生次数也可以依据不规则波理论和各自相应的发生条件求得。
船舶耐波性安全评价的Matlab实现必须要有用于建模的样本数据,BP神经网络的样本数据包括样本的输入向量和输出向量。将上面提到的横摇、纵摇等7个因素和由综合评估方程计算得到的安全评估值Rx分别作为样本数据的输入向量和输出向量。为了尽可能全地描述船舶航行在风浪环境中的各运动状态以及保证样本数据的科学合理性,选择以浪向角0°为基准,每间隔15°取一样本,对应船舶航速分别为13 kn和15 kn,依据上面提到的船舶资料和风浪条件获得的部分样本数据如表1所示。
表1 耐波性安全评价的部分样本数据Tab.1 Integrant sample data of seakeeping's safety evaluation
为了保证BP神经网络评价模型的正确及网络结构的稳定,选择线性的purelin函数作为输出层的传递函数;设置一个隐层,隐层的传递函数采用S型函数tansig,隐层神经元的数目通过试验的方法选择,取为15;训练函数采用改进的训练算法traingd,学习速率根据网络训练情况选择为0.05。在Matlab环境下调用相应函数对建立的耐波性安全评价模型进行训练[4]。网络训练过程如图2所示。
图2 网络训练过程Fig.2 The process of network training
由训练过程可看出,网络经过7848次训练达到了训练精度10-4,经过网络训练之后的耐波性安全评价模型,可以用来计算船舶一定航态下的耐波性安全评估值R[5]。
x
要完成船舶耐波性安全评价的计算机程序设计首先需要对BP神经网络模型各个计算模块进行分析,其中主要涉及以下几个模块:船舶参数模块、航行环境模块、耐波性因素值计算模块、耐波性衡准模块、耐波性综合评估方程计算模块、BP神经网络评价模块、船舶航态模块、耐波性安全评估值显示模块。船舶参数模块用来输入船舶的主要资料数据,包括船长、船宽、排水体积等;航行环境模块可以输入航行海域的实时风力,应用统计数据获取波浪特征周期和有义波高,从而用来计算当时的波浪谱密度;耐波性因素值计算模块是在给定条件的船舶航态下结合船舶参数模块和航行环境模块应用上述提到的计算公式来获得耐波性因素值,耐波性因素值一方面用于综合评估方程的计算,另一方面作为BP神经网络评价模型的样本输入向量;耐波性衡准为各耐波性衡准要素能达到的极限指标值,参考各国有关的研究机构和专家学者提出的建议选定,其值恒定;耐波性综合评估方程计算模块是应用耐波性因素值与耐波性衡准来计算安全评估值,为BP神经网络评价模型提供样本输出向量;BP神经网络评价模型模块主要通过样本输入向量和样本输出向量选取合适的网络结构和网络参数生成船舶的耐波性安全评价模型;船舶航态为船舶航行时实时的航速和航向信息;耐波性安全评估值显示模块为应用BP神经网络建立模型之后根据船舶航态实时数据计算出当时的安全评估值,用以判断该航行状态下的安全程度,该值越大越安全,从而指导船舶的安全操纵。通过分析绘制出的评价模型流程如图3所示。
图3 耐波性评价模型流程图Fig.3 The flowchart of the seakeeping's evaluation model
BP神经网络方法的耐波性安全评价是在Matlab环境下完成的,Matlab具有很好的开放性,通过与C语言程序的结合,将Matlab作为计算引擎,在C语言应用程序中调用,可以很好地对耐波性安全评价进行程序设计。通过ActiveX控件,前台设计为由C语言编写的选择显示界面,后台由Matlab来进行计算[6]。
结合上面的模块分析,应用C语言编程,设计出了一个菜单界面和一个结果显示界面。菜单界面如图4所示,主要包括船舶参数、航行环境、耐波性衡准、船舶航态、BP神经网络参数等菜单选项,每个菜单项都包含各自的子菜单,可以进行有关数据的输入和修改,如图5为船舶参数子菜单。结果显示界面主要是直观显示耐波性安全评估值,还可以查看和检验所选择的BP神经网络结构,如图6为耐波性安全评估值显示界面,图7为BP神经网络结构图显示界面。通过程序设计及界面菜单选择,可以方便和快速地进行BP神经网络的耐波性评价模型构建,以及直观地获取耐波性安全评估值,进而选择合适的航向和航速信息来指导船长和驾驶员对船舶的操纵。
图4 菜单界面Fig.4 The menu interface
图5 船舶参数界面Fig.5 The interface of ship's parameters
图6 耐波性安全评估值显示界面Fig.6 The display interface of safety evaluation value
图7 BP神经网络结构图Fig.7 The structure of BP neutral network
船舶在海上航行,难免遭遇大风浪等恶劣天气,如何在恶劣天气下选择正确地操纵,保证船舶安全尤为重要。通过应用BP神经网络进行船舶的耐波性安全评价,以及使用Matlab软件与C程序语言的接口方法建立安全评价的程序界面,可以方便和快速地计算出安全评估值,并且可以实现通过按键、菜单、窗口等方式进行操作和评估,进而从理论上指导船长和驾驶员的操纵。未来可以应用计算机编程对船舶航行时各个航态下的耐波性安全评估值进行优选,选取当时风浪环境下船舶航行最安全的航态来更好地指导船舶操纵。
[1] 熊文海.船舶耐波性评价及其在航海安全中的应用[D].武汉:武汉理工大学,2004.XIONG Wen-hai.The evaluation of seakeeping and application in navigational safety[D].Wuhan:Wuhan University of Technology,2004.
[2] 李积德.船舶耐波性[M].哈尔滨:哈尔滨工程大学出版社,2007:65-76,95-126.LI Ji-de.Seakeeping of ship[M].Harbin:Harbin Engineering University Press,2007:65 -76,95 -126.
[3] 熊云峰.基于灰色系统理论的船舶耐波性综合评价研究[D].武汉:武汉理工大学,2005.XIONG Yun-feng.The comprehensive evaluation of seakeeping based on the theory of grey system[D].Wuhan:Wuhan University of Technology,2005.
[4] 董长虹.Matlab神经网络与应用(第二版)[M].北京:国防工业出版社,2007:85-92.DONG Chang-hong.Matlab Neural network and application(the second edition)[M].Beijing:National Defence Industry Press,2007:85 -92.
[5] 李生长.油船大风浪航行中的耐波性评价研究[D].大连:大连海事大学,2011.LI Sheng-zhang.The seakeeping assessment of oil tanker in storm wave[D].Dalian:Dalian Martime University Press,2011.
[6] 陈杰.MATLAB宝典(第四版)[M].北京:电子工业出版社,2013:829-849.CHEN Jie.Matlab Collection(the fourth edition)[M].Beijing:Publishing House Of Electronics Industry,2013:829-849.