基于虚拟力的船舶导航建模方法*
2020-07-27郭超麒黄立文
郭超麒 黄立文
(武汉理工大学航运学院 武汉 430063)
0 引 言
精准、可靠的船舶导航是保障船舶安全航行的前提,随着越来越多的现代导航设备和日趋成熟的航运技术,船舶航行的安全性已经有了很大水平的提高,各种海事事故数目明显减少[1].但为了实现更加安全高效的发展,对船舶导航也提出了更高的要求.一方面,在某些能见度不良的水域,利用现有的导航技术仍很难保证安全可靠的航行;另一方面,船舶的发展趋于智能化、无人化,未来无人船如何进行“拟人化”的导航,也正成为当前研究的热点和未来船舶导航发展的趋势[2-3].
实现船舶导航必须要解决船舶定位和航向决策两大问题.目前关于船舶定位的设备及方法已趋于完善,因此,本文主要针对船舶的航向决策提出一种新的方法,引入常用于机器人避障领域的虚拟力来对船舶导航的方向进行研究.在船舶航行中,可直接感知并用具体物理量衡量的作用力称为实际力,而无法直接作用于船舶或对船舶运动产生影响,仅能根据驾驶人员对船舶安全和运行效率的经验认知进而通过操纵产生影响的作用力称为虚拟力,其本质为引力和斥力.
本文主要利用传统虚拟力场法[4]以确定虚拟力的方向,借鉴船舶避碰研究中经常用到的碰撞危险度的概念来计算虚拟力的相对大小,然后根据矢量合成的方法得到船舶虚拟力模型.基于虚拟力模型建立有无风、流情况下的船舶导航模型,最后带入具体数值对该模型进行验证.
1 船舶虚拟力模型
1.1 虚拟力方向
根据Oussama在移动机器人的导航研究中提出的传统虚拟力场法,将目标点设置为中心点构造引力势场,引力的方向指向目标点,大小随着船舶与目标点的距离而变化,距离越大引力越大,反之则越小;再将障碍物设置为中心点构造斥力势场,斥力的方向指向与障碍物连线的反方向,大小随着船舶与障碍物的距离而变化,距离越小斥力越大,反之则越小.
在某一个固定的时间点,目标点对船舶的虚拟引力方向指向目标点,各类障碍物对船舶的虚拟斥力方向指向与障碍物连线的反方向.据此,可以以本船为中心点建立直角坐标系,将各个障碍物对船舶的虚拟力标示出来.下面进行具体介绍.
假设本船A在一连续可航区域内航行,目标是开往远处目的港T,本船A右后方有一靠泊船B,右后侧有建立在海岸S边的码头C,本船左前方有一船D,左前方有一礁石F,右前侧沿岸有一浅滩G,见图1.
图1 本船及其附近障碍物情况
在此时刻,本船所受到的全部虚拟力方向见图2.
FT-船舶最终(阶段性)目标驱动力;FB-靠泊船B产生的斥力;FC-码头C产生的斥力;FD-左侧船D产生的斥力;FF-礁石F产生的斥力;FG-浅滩G产生的斥力;FS-岸线S产生的斥力.图2 此刻本船所受虚拟力方向情况
1.2 虚拟力大小
障碍物周围会产生一个斥力场,斥力会使船舶驾驶人员存在避开这些障碍物的趋势,因此船舶驾驶人员会通过对船舶的操纵来避开障碍物,从而实现虚拟力对船舶的影响.由此可见,虚拟力不能像实际力那样用含有物理意义的数值进行表述,只能借助特殊的模型用不同大小的数字来表示.而且这些数字也仅仅只能在该模型下与其他虚拟力进行横向比较,若脱离该模型则不具备任何意义.
各种障碍物对船舶虚拟力的大小如何界定成为研究的重点,在参考了文献[5-6]后,本文选用船舶碰撞危险度的概念来量化虚拟力的大小,通过回归、系统学习、推理等方法来建模两船间碰撞风险,用碰撞风险值的大小表示障碍物对本船虚拟力的大小.
碰撞危险度把会遇中目标船与本船的距离、相对角度、船速比等因素作为基本评判参数,是用来描述船舶间碰撞风险的重要依据.当两船碰撞危险度大时,两船的碰撞风险大,目标船对本船驾驶人员心理层面的压力也大,故目标船对本船的虚拟力就大;反之,当两船碰撞危险度小时,两船的碰撞风险小,目标船对本船驾驶人员心理层面的压力也小,故目标船对本船的虚拟力就小.用船舶碰撞危险度的大小来无量纲化处理两船间虚拟力并进行比较是较为合理的.
船与目标船位置关系图见图3,本船(O)的坐标为(x0,y0),航速为v0、航向为φ0.
图3 本船与目标船位置关系图
两船的船速比为
(1)
两船之间的距离为
(2)
以本船(O)为中心,目标船(T)的真方位为
(3)
式中:a1主要由(xT-x0)项确定正负.
目标船的相对方位为
(4)
目标船与本船的航向交角为
CT=φT-φ0
(5)
目标船与本船的DCPA为
DCPA=RT×sin(φR-aT-π)
(6)
目标船与本船的TCPA为
(7)
计算得到两船的DCPA、TCPA等相关数据后,然后运用模糊数学的综合评判理论,来分析目标船对本船虚拟力的大小.此时可以得到由目标船的各个参数组成的目标因素集.
(8)
那么,目标船的评语集:
V=[r1,r2]
(9)
式中:r1为目标危险;r2为目标安全.
目标因素的具体权重分配为
(10)
式中:aDCPA+aTCPA+aRT+aθ′T+aK=1.
目标评判矩阵为
(11)
式中:rDCPA,rTCPA,rRT,rθ′T,rK均属于[0,1],rDCPA,rTCPA,rRT,rθ′T,rK为目标船的危险隶属度,为目标船的各个参数对本船危险程度的大小.目标综合评判结果写为E=A×R.
整理以上公式,可以得出:
E=[(aDCPArDCPA+aTCPArTCPA+aRTrRT+
(12)
式中:E满足归一化条件,其中第一个数值指“目标危险”的评判结果,即为目标船碰撞危险度;第二个数值指目标船安全度.那么,目标船碰撞危险度为
e=aDCPArDCPA+aTCPArTCPA+
(13)
综上,目标船对本船虚拟力的大小为
F=aDCPArDCPA+aTCPArTCPA+
(14)
2 基于虚拟力的船舶导航模型
当船舶正常航行且无碰撞危险时,设定目标点对船舶的引力为最大值1,方向由船舶指向目标点.由于多船会遇可看作多个本船与目标船会遇过程的叠加,本船与静态障碍物会遇可看作目标船速度为0的情况,航道边界等虚拟障碍物可看作位于船舶在两侧航道上垂直投影点上的静态障碍物.分别处理多次两船会遇情况,便得到可以进行互相比较的虚拟力大小的数字,然后用矢量合成的方法对船舶受到的虚拟力进行叠加,最终虚拟力的方向就是基于虚拟力的船舶导航决策方向,虚拟力的大小(0~1)为船舶往该方向运动趋势的强烈程度且数值越大表面船舶的运动趋势越强烈.
式中:F合为本船虚拟力合力;I为障碍物总数;Fi为第i个障碍物对本船的虚拟力;FT为船舶最终(阶段性)目标驱动力,虚拟力合力的方向为各个虚拟力经矢量三角形方法合成后所得的最终方向,该方向即为船舶推荐的实时动态航向.
2.1 不考虑风、流时的导航模型
由于不考虑风、流的情况,没有风、流荷载造成的船舶“滞后性”,此时根据障碍物对船舶虚拟力得到实时动态航向可以直接通过船舶操舵来实现.因此在不考虑风、流情况下,船舶虚拟力合力的方向即为船舶在该局面下推荐的实时动态航向,基于虚拟力能准确地进行船舶导航决策.
2.2 考虑风、流时的导航模型
由于风、流等实际荷载对船舶的作用力可以用具体的物理量来进行表示,而虚拟力的大小仅为可以内部比较的数字,双方属于不同的量纲、处于不同的维度,不能进行简单的合成及分解.因此,本文选择在本船上仅进行虚拟力的分析及合成,把风、流等实际荷载对本船的影响转移到目标船上.此时,目标船除自身受到风、流等实际荷载的影响,还将受到本船的风、流等实际荷载叠加带来的影响,通过风、流等实际荷载对目标船的两次影响,得到目标船的新位置,再来分析目标船对本船虚拟力的大小和方向.
假设在t0时刻,本船A位于连续可航区域中航行,受到由北向南方向的恒定风场W和由东向西的流场L的共同作用,本船右前侧存在一目标船B.此时本船A所受的虚拟力F0见图4.
图4 t0时刻本船与目标船位置关系图
经过一段很小的时间Δt后(即t1时刻),此时本船A在风、流的作用下发生了一定的位移XA,目标船B也在风、流作用下发生了一定的位移XB,由于船A所在位置流速更快,故船A所受到流的作用较船B更大,其位置变化见图5.
图5 t1时刻本船与目标船位置关系图
若假设本船A不动,将风、流对船A的位移XA叠加到船B上,则B船的位移变成XA与XB的矢量叠加,此时船B对本船A的虚拟力即为考虑风、流作用下的虚拟力,其位置变化见图6.
图6 考虑风、流情况下船B对本船的虚拟力
再将此方法引申到其他障碍物,并参考1.1的方法求得其他障碍物虚拟力的方向,参考1.2的方法求得其他障碍物虚拟力的大小,经过矢量合成即可得到考虑风、流情况下的虚拟力合力方向,该方向即为推荐的船舶实时动态航向.
3 模型验证
选取图1模型中具有代表性的障碍物,其距离关系见图7.
图7 本船与附近典型障碍物的距离关系图
为方便计算,本验证暂不考虑风、流等实际荷载的影响.假设本船以15 n mile/h的速度、以平行于海岸S的航向在连续可航区域内航行,其目标是目的港T(与本船的夹角为13°),本船的船长为100 m,且航行环境良好,船舶驾驶人员水平较高.船舶右后方有一艘正在驶向右岸码头C的靠泊船B,左前方有一艘相向驶来的船舶D,船舶左前方航道中央有礁石F,右前方有一浅滩G.各障碍物的具体速度及距本船的距离和方位见表1.
表1 障碍物具体信息表
对于船舶D,根据1.2公式及设定条件,可求得:DCPA=1.5 n mile,TCPA=0.078 7 h,R=0.3 n mile,θ′=60°,K=1.2.
根据相关文献[7-9]中船舶碰撞危险度的隶属函数表达式,可得到各参数的危险隶属度,分别为:rDCPA=0,rTCPA=0.105,rR=0.0576,r?′=0.806,rK=0.569.参考统计研究结果,取定各危险隶属度的权重分配因子为aDCPA=0.36,aTCPA=0.32,aR=0.14,a?′=0.10,aK=0.08.对各参数的危险隶属度进行加权求和,最终可得到下行船舶D对本船的船舶碰撞危险度e=0.168,即下行船舶D对本船的虚拟力FD=-0.168.
继续利用以上方法,同理可得到靠泊船B、码头C、礁石F、浅滩G,以及虚拟障碍物E和S对本船的虚拟力大小分别为:FB=0.243,FC=0.056,FF=0.063,FG=0.047,FS=0.082.
此时本船的虚拟力合力FA=FT+FB+FC+FD+FF+FG+FS.
通过矢量分解求得FxA=0.950;FyA=-0.162.
可以求得虚拟合力大小F合=0.729,与x轴的夹角约为9.7°,本船A所受虚拟力及最终虚拟合力情况见图8.
图8 本船所受虚拟力合成情况图
因此,在不考虑风、流等实际荷载情况下,船A在面对图7的情况时的推荐的实时动态航向应为99.7°,虚拟力合力的相对大小为0.729,表示船舶朝该航行有较强的运动趋势,此结果符合航行实践及驾驶人员的实际认知.
验证结果表明:
1) 使用碰撞危险度的方法来无量纲化处理虚拟力的大小是合理的、可行的.
2) 通过虚拟力合成导航法能够根据当前障碍物情况计算出每个障碍物对本船的虚拟力,并通过矢量合成的方法求得虚拟力的合力的大小和方向,该合力的方向为推荐的实时动态航向,合力的大小为船舶往该航行运动趋势的强烈程度,为船舶导航提供方向决策.
在验证中,若想考虑风、流影响,则按照2.2先计算叠加风、流荷载后各障碍物的位置,再计算各个障碍物对本船的虚拟力并进行矢量合成即可.
4 结 束 语
本文首先通过分析虚拟力的方向和大小建立了船舶虚拟力的模型,然后在此基础上分别构建了不考虑风、流和考虑风、流情况下船舶导航模型,最后利用假定的数学模型进行带入计算,验证了其可行性及合理性.本文充分考虑了风、流荷载的影响,使用模糊数学的综合评判理论,将虚拟力的大小无量纲化处理,得到可以进行互相比较的虚拟力大小的数字,合成后的虚拟力可以为船舶提供推荐的实时动态航向及船舶往该方向运动趋势的强烈程度.