基于驾驶实践的无人船智能避碰决策方法
2021-03-08丁志国张新宇王程博黎泉安兰轩
丁志国,张新宇*,王程博,黎泉,安兰轩
1 大连海事大学 航海动态仿真与控制交通行业重点实验室,辽宁 大连 116026
2 大连海事大学 航海学院,辽宁 大连 116026
0 引 言
随着新一代人工智能技术和无人驾驶技术在航海领域的兴起,海上运输正朝着智能化方向快速发展。无人驾驶船舶作为海上智能交通的载体,已成为国内外航运界关注的焦点。近年来,无人驾驶车辆的智能避碰决策已取得较好成果,国内外许多专家学者积极借鉴无人驾驶车辆的经验,结合航海背景,试图解决船舶的智能避碰决策问题。
无人驾驶船舶自主航行包括感知、理解、决策、控制4 个阶段,而决策阶段是无人驾驶船舶安全航行及避障的关键,因此无人驾驶船舶的智能避碰决策成为国内外学者的研究重点。无人驾驶船舶智能避碰决策问题的核心在于能否在海上环境复杂、多变的情况下快速做出符合《国际海上避碰规则》(以下简称《规则》)以及海员通常做法的安全而有效的决策。实际上,船舶智能避碰决策要解决的实际问题与船舶驾驶人员在避碰实际中要解决的问题是一致的,区别在于是用人工方式解决还是由计算机自主做出决策,而目前基于驾驶实践视角的无人船智能避碰决策研究较少,本文拟从驾驶实践的视角开展无人船的智能避碰决策研究。
基于驾驶实践,无人驾驶船舶智能避碰决策包含航行态势感知、航行态势理解、碰撞危险度决策、避碰行动时机决策、避碰行动有效性决策和复航决策等过程。
航行态势感知系统是借助多种船载传感器设备主动对船舶内、外部信息以及航行环境信息进行多模态感知。
航行态势理解是通过对感知系统获取的多源异构、多模态信息进行分类与理解,将无人驾驶船舶的航行态势进行结构化表述,并结合《规则》与海员的通常做法对船舶会遇场景进行量化划分。目前,对于会遇场景的划分标准不一。陈国权[1]根据相对运动几何规律分析总结了目标交会特征(TEC),通过目标船相对运动航向、船速比的大小以及目标船与本船的航向差取值范围归纳出了15 种TEC,并针对不同的TEC 给出了对应的避碰方案;Perera等[2]将本船碰撞区域划分为8 个区,将目标船的相对运动航向划分为8 个区,然后按照船舶相对距离范围、速比条件将会遇情况划分为了144 种,其中有效情况为63 种。会遇场景量化程度越高,对避碰决策越有利,但随着引入的影响因子的增加,系统复杂性越高,遍历需要的时间也越长。本文将借鉴无人驾驶车辆场景建模方法,通过引入本体论模型,建立航行态势本体模型,并根据《规则》及驾驶实践对会遇场景进行知识表述,实现在线推理,给出会遇场景、本船的避让责任以及避让行动方式,为智能避碰决策提供决策基础,提高决策效率。
碰撞危险度是采取避碰行动的依据。Kearon等[3]首次提出由最近会遇距离DCPA和到达最近会遇点的时间TCPA加权的方法确定碰撞危险度,其只考虑到了2 个因素对碰撞危险度的影响,可能会对实际情况产生误判;文献[4-6]均是采用神经网络的方法来确定船舶碰撞危险度,其将DCPA和TCPA、舷角以及航向航速作为系统输入,具有良好的预测效果;文献[7-9]利用模糊理论研究了碰撞危险度;刘冬冬等[7]在综合考虑DCPA和TCPA、来船方位、距离和船速比的基础上,构建了碰撞危险度模糊评价模型,并运用四元船舶领域(QSD)对DCPA的隶属度函数进行了改进,可为避碰决策提供准确依据;胥文等[8]在考虑以上5 个影响因素的基础上,结合船舶操纵性能、能见度情况以及航行水域情况对模糊隶属度函数进行修正,提高了碰撞危险度研究的准确性。本文将在前人研究的基础上,改进碰撞危险度隶属度函数,并根据航行驾驶实践,重新设计碰撞危险度合成模型。
无人驾驶船舶完成航行态势感知与理解以及碰撞危险决策之后,需要根据驾驶实践做出合理的避碰决策,一些学者迁移应用机器人避碰路径规划研究中的势场理论来解决船舶的避碰问题[10-12],虽然能够在理论上实现障碍物的避碰,但避碰幅度以及避碰行动方式受引力场及斥力场的影响,不能很好地契合航海实践要求;一些学者认为,船舶避碰时机与碰撞危险度CRI直接相关,并以CRI为评价指标来求取避碰策略[13-14],但CRI受航行环境、能见度、两船间距、两船方位、DCPA和TCPA以及船速比等多个因素影响,且各因素之间存在相互制约关系,不同的研究者对不同的影响因素进行分析,CRI的计算结果存在一定的差异,且均没有完备地考虑所有影响,直接将CRI作为船舶避碰的决定性指标会存在较大误差;一些学者结合深度强化学习算法对船舶避碰行为决策展开了研究[15-16],其通过构建适用于无人驾驶船舶的深度强化学习模型(DRL),通过强化训练得到了基本的避碰模型,但该方法需要大量的训练数据,且模型结构对数据的依赖性较强,算法训练耗时长,对于未知环境下的避碰无法达到实时性的要求;李丽娜等[17]提出了拟人化智能避碰决策方法(PIDVCA),通过模仿经验丰富驾驶员(避碰专家)的避碰决策,利用机器学习构建动态避碰规则库,做出了符合《规则》和海员通常做法的合理决策,避碰效果较好,但存在的问题就是不能完备地考虑船舶在航行过程中的所有会遇情况,且随着会遇情况的增加,规则库规模逐步扩大,遍历需要更长的时间。
在船舶避碰过程中如何合理、恰当地确定避碰时机、避碰行动方式以及避碰幅度非常重要,《规则》第十六条规定:“需给他船让路的船舶,应尽可能及早地采取大幅度的行动,宽裕地让清他船”。国内外专家学者采用几何避碰原理、速度障碍法、势场理论、模糊数学方法、神经网络、智能优化算法、人工智能及专家系统等方法建立了船舶避碰决策模型,这些方法对于避碰决策的发展有一定的理论指导意义,但共性问题是不能够很好地贴近航海实际。
目前,基于驾驶实践视角的无人船智能避碰决策研究较少,鉴于此,本文拟从驾驶实践的角度讨论船舶避碰决策问题。首先,对无人驾驶船舶智能避碰决策的合理性和实时性以及唯一性问题进行论述,然后建立智能避碰决策过程的航行态势本体模型、多元复合避碰危险度评估模型以及BOP 智能避碰决策模型这3 个模型,最后,设计仿真实验,并在典型会遇场景下验证方法的有效性。
1 问题分析
从有人驾驶船舶驾驶实践的角度分析无人驾驶船舶在做避碰决策时应主要考虑的问题有:
1) 决策的实时性。
船舶在海上航行时,受风、浪、流、能见度、水深等因素的约束,在避碰决策时需要综合予以考虑。在复杂、多变的环境中快速做出响应是对避碰决策算法的要求,如果决策算法不能保证实时性或不能在可接受的时间范围内做出决策,将严重威胁船舶的航行安全。
2) 决策的合理性。
船舶在做自主避碰决策时,需要最大限度地实现拟人化。有人驾驶船舶在操纵船舶的过程中,驾驶员会结合周围的航行环境、航行规则及本船的操纵性能,将人、船环境视为整体进行考虑,主动做出综合性的、有经验的决策,无人驾驶船舶自主决策同样也需要根据感知系统传来的多源异构信息进行综合处理分析,得出最优的避碰策略,从而实现拟人化且最优的决策。
3) 决策的唯一性。
船舶驾驶员在进行避碰决策的过程中,是通过评判碰撞危险程度,根据驾驶航行经验给出一个准确的决策信息(舵角或者航速)来控制船舶避碰,这就要求无人驾驶船舶在执行决策算法的时候不能出现多个解,只能输出唯一的、确定的、可执行的决策指令。
本文在进行船舶智能避碰决策方法研究的同时,充分考虑了以上问题,在此基础上,构建无人驾驶船舶航行态势本体概念模型,并结合《规则》及海员的通常做法对船舶会遇场景进行量化处理,建立船舶复合碰撞危险度评估模型,从驾驶实践的角度出发,建立驾驶员视角(BOP)智能避碰决策模型,以船舶避碰总路径最短为目标函数求解最优避碰策略,实现船舶智能航行及自主避碰。
2 模型构建
无人驾驶船舶自主航行需要实时与航行环境交互,获取航行状态信息,通过学习算法做出行为决策,其系统架构如图1 所示。输入船舶当前航行状态、周围碍航物信息,信息传入行为决策层,经一系列解算后输出船舶的决策信息并交由控制执行层完成对船舶的运动控制。图中, λ ,ϕ 分别为船舶的经度和纬度;Ψ为船舶航向;u为船舶前进速度;v为船舶横移速度;r为船舶转艏角速度;ΔΨ为决策输出的航向改变量;ΔV为决策输出的航速改变量; δ为船舶舵角;V为船舶航速。
2.1 无人驾驶船舶航行态势本体模型
准确的无人驾驶船舶航行态势理解是行为决策的基础,避碰场景理解主要是基于对《规则》以及海员通常做法的理解,划分典型的会遇场景,为避碰决策提供先决性条件。
图1 无人驾驶船舶自主航行系统架构图Fig. 1 architecture diagram of autonomous navigation system of unmanned ship
《规则》中给出了对遇、交叉相遇、追越3 种会遇场景,如图2 所示。但是在实际的船舶航行过程中对于不同的会遇情况,船舶有不同的航路权,故需要对会遇场景进行详细划分。
图2 3 种典型会遇场景示意图Fig. 2 Schematic diagram of three typical encounter scenarios
目前,有关无人船的航行态势理解与建模的研究较少,无统一化的标准定义。基于简单“IF···THEN···”推理规则的避碰知识库,难以描述各种会遇形式和避碰阶段的避碰方案。本文迁移应用无人车的场景建模方法[18],利用本体模型的强大信息表述能力,可逻辑化表述并量化航行态势,结合驾驶实践,对先验航行知识进行描述,提高避碰决策效率。
航行态势理解是通过对感知系统获取的多源异构信息进行分类与理解,将无人驾驶船舶的航行态势进行结构化表述。首先,根据“本体”理论将无人驾驶船舶的航行态势分为实体和属性。实体类代表着不同本质的客观存在物,属性类用于描述对象实体以及实体之间的关系属性。本文将属性类又分为实体属性和关系属性,其中实体属性包括实体的位置、航向航速,关系属性包括位置关系、航向关系、方位关系和速度关系。
感知系统获取的信息包含静态信息和动态信息。静态信息一般指静态障碍物实体,包括具有结构化的海图实体以及其他静态障碍物实体,其中海图实体包括具有结构化特征的航道、导助航标志等,静态障碍物实体是指静止的非结构化实体,包括锚泊的船舶、礁石等。动态信息一般指航行环境中的动态障碍物实体和环境实体。
通过对感知系统获取的多源异构信息进行实体与属性描述,建立无人驾驶船舶航行态势本体模型,然后在此基础上结合《规则》及良好的船艺要求,将会遇场景进行量化划分,并基于prolog 语言对会遇场景进行表述。
根据《规则》及驾驶实践,本文以目标船的方位关系划分了6 个会遇区域,分别为船艏、船艉、左舷正横前、左舷正横后、右舷正横前及右舷正横后。在每个会遇区域,又根据目标船与本船的航向关系以及航速关系,将会遇场景(ES)划分为12 种,然后基于船舶航行态势本体模型及prolog语言建立航行态势理解与划分表,如表1 所示。表中:HO 为对遇场景;DHO为危险对遇场景;CR为交叉相遇场景;OT 为追越场景;q为目标船的舷角;Ψt为目标船航向;Ψ0为本船航向;Vt为目标船航速;V0为本船航速。
本文针对海上环境复杂多变的特点,结合驾驶实践,提出基于航行态势本体模型的场景划分方法,对航行环境降维处理,实现了无人驾驶船舶对航行态势的理解与划分,为智能避碰决策提供基础,并且在一定程度上提高了决策效率。
表1 航行态势理解与划分表Table 1 Navigation situation understanding and division
2.2 多元复合避碰危险度评估模型
《规则》没有给出碰撞危险的定义,但其中很多条款是以构成碰撞危险为前提的,故需建立一定的模型将其量化。
在航海实践中,驾驶员在判断是否存在碰撞危险的同时,也就对存在碰撞危险的紧迫程度有了直观的感受,以及定性与定量的分析,一般习惯于使用DCPA、两船间距及其变化、TCPA来判断是否存在碰撞危险以及碰撞危险的程度。但影响船舶碰撞危险度大小的因素很多,且相互制约,故本文在前人研究的基础上,利用模糊理论建立了DCPA和TCPA、两船距离、相对方位以及船速比这5 个影响因素的隶属度函数,并依据驾驶实践构建了多元复合碰撞危险度评估模型。
由文献[8]可知,船舶间距离越小,船舶间碰撞危险越大,且从避让难度上看,距离越小,避让效果越差。任意时刻船舶间距离的隶属度函数ud为:
船速比越大,碰撞危险度越大,任意时刻船速比的隶属度函数uK为:
DCPA对碰撞危险度的影响较大,且DCPA的值越小,碰撞危险程度越高。任意时刻DCPA的隶属度函数uDCPA为:
式中,d2为最小安全会遇距离。为简化计算,取d2=2 n mile,考虑到船舶尺度的影响,在DCPA很小时也会发生碰撞,故取两船船长的平均值,一般近似取为0.1 n mile。
TCPA是针对碰撞危险程度的评价指标。TCPA值越小,碰撞危险程度越高,任意时刻TCPA的隶属度函数uTCPA为:
原模型对于CRI的计算采用
根据驾驶实践规律,若DCPA大于安全会遇距离,尽管TCPA很小,船舶仍无碰撞危险,故改进的船舶碰撞危险度为
2.3 BOP 智能避碰决策模型
在前面几个模型的基础上,船舶智能避碰决策主要是解决船舶的最佳避让时机及避让幅度问题。由于船舶采取避碰行动的时机和幅度受《规则》的约束以及驾驶航行经验的影响,不同驾驶员对于不同的会遇情况采取的行动不一致,在不同的时机采取避碰措施会产生不同的避让效果,如图3 所示。
图3 中:O点为本船当前船位;A点为目标船当前船位;R1,R2,R3为船舶的不同避让决策时机;P1,P2,P3为不同的最近会遇点; ∆ψi(i=1,2,3)为对应于不同避让决策时机所采取的不同避让行动幅度,即航向变化量;A1,A2,A3为目标船转向Δψ1,Δψ2,Δψ3的船舶位置;TC为无人驾驶船舶的真航向;AiO为两船相对航向。
图3 船舶转向避碰行动方式示意图Fig. 3 Schematic diagram of ship steering and collision avoidance action mode
本文将从驾驶员思维决策的角度出发,通过分析本船与目标船之间的相对运动几何关系,在保证船舶能在安全会遇距离驶过让清的基础上建立BOP 智能避碰决策模型,以船舶避碰总路径最短为目标函数,船舶操纵性能及《规则》为约束条件,量化避碰转向区间,求解最优的避碰策略。BOP智能避碰决策模型流程图如图4 所示。
当船舶存在碰撞危险时,需要根据船舶安全会遇距离,通过几何解算出避让幅度。在不同的位置采取避碰措施将导致船舶避让路径长度不同,为求取不同转向幅度下的船舶避碰最优路径,建立以下目标函数:
式中:xk,yk分别为船舶当前的船位;xk+1,yk+1分别为船舶下一步的船位。
因避碰决策时机与避碰路径的对应关系不易求解出解析式,故采用避碰行动距离量化模型,来求解每个避碰距离下的转向幅度以及避碰路径。根据驾驶实践,对于正横前的来船,一般在两船相距4~6 n mile 时采取避碰行动;对于正横后的来船,在两船相距3~4 n mile 时采取避碰行动。本文对避碰转向区间进行量化,按步幅为0.1 n mile进行取值,建立避让决策时机 (R1,R2,···,Rn),避让行动幅度一维向量为 (∆ψ1,∆ψ2,···,∆ψn)。
在计算避碰路径时,考虑到国际海上避碰规则要求以及船舶操纵性限制,需满足以下约束条件:
图4 BOP 智能避碰决策模型流程图Fig. 4 Flow chart of BOP intelligent collision avoidance decisionmaking model
在驾驶实践中,要求驾驶员对船舶性能有充分的了解,在做决策时,要考虑船舶的转舵时间以及旋回特性,鉴于此,本文考虑采用Abkowitz提出的三自由度整体型模型[10]:
式中:X,Y为外力在x,y轴上的分量;m为船舶质量;Izz为船体绕通过重心的铅直轴的质量惯性矩(转动惯量);N为作用于船舶的外力绕通过重心的铅直轴的回转力矩。
针对水动力导数的估算方法不作为本文的重点,故此处不再赘述。本文的船舶操纵数学模型选取ITTC 典型的Mariner 标准船型作为研究对象,其船型数据如表2 所示,利用文献[21]中的无量纲水动力数据表,即可求得船舶的运动模型。
表2 Mariner 标准船型数据Table 2 Coefficients in mathematical model of ship maneuvering motion of Mariner
为贴合航海实际,在设计船舶转向控制器时要考虑动舵合理、航向变化快速平稳、调节时间短,故本文采用PD 改向控制器模型。δ 的控制率为Cδ=−Kp(Ψ−Ψdesired)+Kdr,其中Ψ为船舶的当前航向,Ψdesired为决策航向,对船舶PD 控制模型进行参数整定,比例增益Kp= 0.3,微分增益Kd=1。
船舶在避让操作之后,需进行复航操纵。在研究船舶复航时机的过程中,对于避碰行动后是恢复至船舶初始运动状态还是恢复到原航线上一直留有争议。但就避碰而言,只需考虑恢复初始运动状态即可,恢复原航线是航行自动化系统的功能和任务。文献[22]给出了常用的4 种恢复航向的时机模型:
1) 当目标船驶过本船正横处时复航;
2) 当让路船复航后,保证船舶间的DCPA大于最小安全会遇距离;
3) 当目标船驶过最近会遇距离点时复航;
4) 当目标船驶过本船船艏后复航。
无论哪种复航决策方式,都要保证两船之间有一定的安全会遇距离。本文根据几何避碰原理,解算了船舶预测复航时机,图5 所示为船舶复航时机求解示意图。
图5 所示为两船会遇,本船船首向上情况下,本船改向∆Ψ避让目标船,R为避让决策时机,G为预测复航点,RML1 为船舶避碰操纵前的相对运动路径,RML2 为船舶改向后的相对运动路径,RML1'为RML1 的平行路径且与船舶的最小安全会遇距离圆相切,G点为RML2 与RML1'的交点,船舶从R到G航行所用时间即为船舶的复航时机。计算出船舶复航时间点以及船舶复航时应走航向,利用PD 航向控制器控制船舶完成复航操纵。
图5 船舶复航时机求解示意图Fig. 5 Schematic diagram of solving the timing of re-sailing
3 仿真试验及分析
本节以案例仿真实验来验证基于驾驶实践的无人船智能避碰决策研究方法的有效性。在仿真实验中,本船采用ITTC 典型的Mariner 标准船型参数,借助Matlab 2016a,Simulink 仿真平台与python3.6 设计仿真对比实验,并与未考虑船舶操纵运动模型且利用探测圆(半径取4 n mile)确定避碰时机的传统避碰算法进行比较,在典型会遇场景下验证算法的适用性及优越性。无人驾驶船舶与动态目标船舶的初始航行参数如表3 所示,仿真步长取6 s。
表3 船舶初始航行参数设置Table 3 Ship's initial navigation state data
仿真目标为无人驾驶船舶能够趋向目标点并避让动态目标船舶。当环境中不存在障碍物或障碍物不在安全会遇距离内时,无人驾驶船舶保持航向或者处于复航阶段,调整方向朝着目标点前进;当障碍物出现在安全会遇距离内时,无人驾驶船舶利用本文算法及传统避碰算法进行实时避障;当无人驾驶船舶接近目标点时,仿真结束。
在避碰仿真过程中,3 艘动态目标船舶保向保速航行并先后与无人驾驶船舶构成交叉相遇局面、对遇局面以及追越局面。图6 所示为截取的船舶避碰仿真过程关键片段。图中,轨迹交叉部分为无人驾驶船舶避让后穿过动态目标船舶后方时的历史轨迹。
对于动态目标船1,在T=1 000 s 时,无人驾驶船舶判断目标船舶进入到本船的决策领域,分析目标船的航向及方位信息,经过航向态势理解,决策为正横后交叉会遇态势,本船为让路船,采取右转的避让行动方式,通过基于驾驶员视角的智能避碰决策方法求解船舶的最优避碰幅度。在T=2 000 s 时,无人驾驶船舶与目标船2 构成对遇局面,本船为让路船,采取右转的避让行动方式,通过算法求解船舶的最优避碰幅度。在T=4 500 s 时,无人驾驶船舶与目标船构成追越局面,本船为追越船,目标船为让路船,由于目标点在右侧,所以选择从右舷追越。基于传统避碰模型决策得到的避让时机固定,且均比本文算法早,转向幅度较小,船舶路径不光滑,船舶避碰总路径为32.952 n mile,而基于驾驶员视角的智能避碰决策方法求解的船舶避碰总路径为25.022 n mile,较大程度缩短了航程,提升了避让性能。
通过仿真可知,无人驾驶船舶在与目标船舶构成碰撞危险时,能够有效做出避碰决策,并且通过智能避碰决策算法能够给出最优的避碰路径。
图7 所示为无人驾驶船舶在避碰过程中的航向变化以及舵角变化情况。从图中可知,航向变化快速平稳,调节时间短,震荡较小,打舵平滑,动舵合理,符合航海实践。
由仿真实验结果可知,无人驾驶船舶在不同的会遇态势下均能安全避让目标船舶,并根据不同的会遇态势生成最优避碰策略,验证了本文所提算法的有效性。
图6 船舶避碰仿真过程图Fig. 6 Ship collision avoidance simulation process diagram
图7 船舶避碰过程中航向舵角变化曲线Fig. 7 Course and rudder angle variation curve during collision avoidance
4 结 语
通过对无人驾驶船舶避碰决策所面临问题的分析,提出了一种基于驾驶实践的智能避碰决策方法,可使无人驾驶船舶根据感知系统传来的信息,实时与环境交互,做出符合《规则》的避碰决策和路径规划。在典型会遇场景下进行的仿真实验表明,该模型能够在未知环境下完成自主避碰,并解算出最优路径,证明了算法的有效性。在接下来的研究中,还需要对模型不断完善,考虑更为复杂的环境扰动,加入对静、动态障碍物领域模型,更加贴合航海实际。