船舶避障技术综述∗
2019-12-05杜志啸赵甲文
杜志啸 赵甲文 郭 鹍 马 硕
(中船航海科技有限责任公司 北京 100070)
1 引言
随着全球贸易量的持续上升,水路运输由于运量大、成本低等优势,在其中起到了关键的作用[1]。然而随着航线的增加,也带来了水路运输相关的安全性不足等问题,其中一个较为主要的问题即为船舶避碰问题,避碰问题主要包含两种,一为船舶避碰,即有效地避开他船安全航行;二为对障碍物的躲避。本文主要关注智能船舶在远洋运输中对障碍物的躲避,其又具有惯性大、时滞性强等运动特性。另一方面,随着近来综合信息采集系统,处理系统,人工智能等技术的发展,为我们带来了一个新的解决方向,在采集的数据的基础上,通过智能化算法来提高船舶航行的安全性,也已成为必然的趋势。
所谓船舶避障,就是当前进方向受到外界的阻碍时,能够及时调整方向以最小的经济代价做出躲避障碍物的动作。并在成功躲避之后继续前行的过程。避障一般情况下,通过从海图中提取障碍物、水深、海况等信息数据,并根据周围环境划分为全局避障和局部避障。全局避障即将全部环境信息作为已知,根据已知情况计算最优路径。局部避障的条件是部分环境信息已知,或是依赖自身探测设备获取信息后经过处理,用于模型计算用,需要在尽可能短的时间内,动态躲避可能出现的障碍物。
综上,本文试图对国内外远洋航行中如何结合船舶的运动特性安全躲避障碍物的方法进行深入分析,并在其基础上进行系统性归纳总结,以对探索船舶行驶中的安全策略提供一定的参考依据。
2 数据采集及环境预处理
要研究船舶避障问题,获取到相应的环境数据是首要的,利用各种设备组合,构建船舶物联网,能够为实时跟踪,监控分析船舶提供强有力的依据。进而对环境进行建模,根据数据以及模型算法更好地为船舶规划安全经济的避障路线。
2.1 综合船桥系统
综合船桥系统正在推动未来的导航系统规划[2]。该系统从各种船舶传感器中获取输入,电子显示定位信息,并提供预先设定的过程所需的维护船只的控制信号。导航器已成为系统管理器,可选择系统预置,解释系统输出,以及监视船舶响应等,避碰系统即为其中的一个最基本功能组件。
它从20世纪60年代末期发展起来,经历了几个阶段[3]。Norcontrol公司在60年代末期开发了世界上第一套船桥系统,其功能主要就是避碰和综合导航。早期还有很多故障率较高,各个独立厂商设备之间标准不统一等问题,后期较新一代的综合船桥系统如 K-Bridge integrated navigation[4],是真正采用标准组件的系统,拥有直观的用户界面,其导航传感器数据通过导航传感器接口在网络上广播,对传感器数据进行收集和分发,以保证各工作站分享同样的海图数据库。
2.2 船舶领域模型
船舶领域概念最早是由日本学者藤井在研究一条水道的交通容量时提出的[5],其最早的定义为后继船舶的驾驶员避免进入到前一艘船舶的领域,但也基本适用于航行路线上的障碍物。早期藤井通过交通调查的方式给出了一种椭圆形船舶领域模型,主要适用于狭窄水域。之后Goodwin[6]在其基础上研究了开阔水域下的领域模型,这些研究都是通过交通规则统计分析等进行的定性研究,不具备很好的学习性,并且是从二维角度出发的,鉴于此,徐周华[7]等结合障碍物附近水域特点,提出了狭窄水域的三维领域模型的思想,且随着人工智能的发展,一种模糊集合理论被运用到领域模型中[8]。在使用下节提及的环境建模方法时,适当考虑到船舶的领域划分,将更有效地满足船舶的空间需求,进而保证船舶行驶安全性。
2.3 环境建模
在对船舶行驶进行路径规划时,首先需对环境进行建模,最早的时候采用“位姿空间”来描述船舶及其周围的环境,即可视图法[9]。其将船舶视为一点,并将该点与目标点和多边形障碍物的各顶点连接成一个无交叉不会穿越障碍物的图,进而转换成一个求最短距离的问题。但存在距离障碍物太近或者不必要的连线过多等问题。其余的一些建模方法也被提出了,如崔荣鑫等[10]使用Voronoi图这种自由空间法分割水下区域,自由空间法采用预先定义的基本形状构造自由空间,并将其表示为连通图。这种方法较为灵活,不会因其中部分点的改变而受大影响。但随着障碍物的增加,算法的复杂程度也会成正比例的增加。栅格法[11]是一种将环境分解成一系列具有二值信息的网格单元,然后在其基础上计算场景投影图矩阵,进而求解避障路径。环境信息的复杂度与栅格划分的细密度有关,因此当规划时间较长时,可采取改进的栅格法来弥补栅格法的不足,即将以栅格为单位记录更换为以障碍物为单位记录[12]。
3 路径规划
对环境进行建模后,需要讨论的就是如何规划出一条安全的路径,并且可在满足安全需求的前提下保证路径的经济性。目前路径规划方案一般可分为全局的路径规划方法,以及局部路径规划方法。
3.1 路径搜索策略
较为传统的全局路径搜索策略主要有A*算法,D*算法,Dijkstra算法,如陈超等[13]提出了一种基于可视图的A*算法,使用启发式搜索的方式减少规划时间。谭宝成等[14]针对A*算法在规划过程中因遍历节点多导致搜索时间长和路径规划距离长的问题,采用了两点间的欧氏距离作为估价函数,并以前向搜索和后向搜索交替进行的方式减少路径规划时间。庄佳园等[15]提出了基于电子海图的距离寻优Dijkstra算法。克服了传统Dijkstra算法占用内存大的问题,减少时间,并提高规划精度。D*算法被称为Dynamic A*算法,在局部规划中进行实时的动态避障时较有效果[16]。
3.2 局部路径规划
虽说该类方法称为局部路径规划,但通过逐步搜索最优路径,使路径精度达到要求,结合其他算法,也可以达到较强的全局路径规划能力。主要方法有人工势场法,遗传算法和模糊逻辑算法。
人工势场法本是一种Khatib[17]为了机器人路径规划提出的虚拟力法,基本思想是将机器人在环境中的运动,设计出抽象的人造引力场的运动,即通过引力和斥力的相互作用作为机器人的加速力,以此来控制前进方向。关腾飞等[18]就应用了虚拟立场法建立了避障模型,运用Move_to_goal和Avoid_obstacle行为设计,实现了从船舶运动坐标值到控制量的转变,从而导出船舶避障实现算法流程。该方法结构简单,但容易陷入局部最优,J Holland提出的遗传算法[19]构造了一类的随机化搜索。对目标问题进行染色体编码,通过选择,交叉培养以及随机变异几个过程来控制,不要求适应度函数可导或连续,只要求为正,且可以作为一个并行算法运行,适用于全局搜索,更有可能找到全局最优解,但遗传算法的运算速度较慢,进行大量的进化要占据较大的存储空间和运算时间。张玉奎[20]分别利用了遗传算法和人工势场法设计了避障路径规划,并且实验证明了该方法能对复杂的障碍物环境进行规划。范云生等[21]利用一种改进的遗传算法,通过随机快速搜索产生初始种群进行路径搜索,提高路径规划的收敛效率和速度。模糊逻辑控制法原来主要来自于汽车驾驶员的驾驶处理模式,具体的处理模式就是将信息进行模糊化处理后划分,并根据经验对划分的信息做出决策,正因如此,模糊逻辑法速度快,然而难以达到较高精度的求解。利用实时的传感信息,张闯[22]提出了一种基于模糊逻辑的二维粒子群航迹规划算法,结合SVM模型设定航路的决策边界,确定了适应值评价函数,并针对不同环境模型进行了仿真。
4 路径优化
船舶行驶过程中,还应考虑到其实际的一些运动特性,如航向角不宜过小,不宜频繁的转向等,以及在构建了一系列航点以后,需要将折线路径平滑化。张闯[22]提出了一种网络优化方法,生成了一个特殊的适用于船舶操纵性的随机网络,对应于由直线段和回旋曲线组成的平滑航迹的航路,通过允许设置回转半径约束以及频繁小角度转向约束等,确定航路。王红卫[23]针对折线多、转折次数多等问题,通过按照一定规则删除节点的方式建立平滑A*模型。王宪[24]针对传统的避障路径规划中常常存在不连续点的问题,结合B样条曲线规划出平滑避障路线。
5 结语
文本针对船舶的避障问题,从环境建模,避障算法,以及船舶自身航行特性等方面综述了主要的研究成果。
1)在研究船舶智能避障的过程中,主要采用可视图法,自由空间法,栅格法进行环境建模。并在其基础上利用遗传算法、模糊算法、势场法、粒子群优化算法,采取全局规划与局部调整相结合的混合规划方式规划安全路径。全局规划上可以融入一些避碰规则,局部调整上更多的采用一些速度快的算法,并使用全局信息做约束。
2)结合船舶自身的特性,往往还需要考虑到船舶行驶的转向角限制,时速的限制以及路径的平滑化,以及船舶的领域模型。
根据目前研究的现状以及发展趋势,未来可以从以下一些方面做探讨。
1)结合水域复杂度以及气象条件进行更加有效地反映真实环境的仿真实验。实际情况下,船舶的行驶并不像模拟中那么灵活且易操控。因此需要更好地衡量船舶行驶的危险区域以及其时滞性。
2)可以结合经验作为约束条件,结合各算法的优点,在避障结束后,能够更好地使船舶不偏离规划路径继续安全航行。