舰船科学技术  2022, Vol. 44 Issue (18): 173-176    DOI: 10.3404/j.issn.1672-7649.2022.18.036   PDF    
基于深度网络的船舶冰区航行路线规划方法
贾立校, 乔前防, 牛童     
江苏航运职业技术学院 航海技术学院,江苏 南通 226010
摘要: 本文提出基于深度网络的船舶冰区航行路线规划方法。从船舶航行动作出发,以深度Q网络为基础,设计船舶航行所处的状态空间、动作空间以及奖励函数,其中使用栅格法建立冰区模型,构建船舶航行的冰区状态空间;船舶动作在各空间及奖励函数过程中学习与训练,生成寻优路线,经平滑处理后,缩短航行距离,由此为船舶规划出从当前位置出发,能够避免与冰区中浮冰发生碰撞的航行线路。研究结果表明,该方法迭代8000次后能够生成较为良好的路径,模拟生成的航线能够准确避开浮冰且路径节点减少较为平滑。
关键词: 深度网络     冰区航行     路线规划     状态空间     动作空间     奖励函数    
Research on ship route planning in ice area based on deep network
JIA Li-xiao, QIAO Qian-fang, NIU Tong     
School of Nautical Technology, Jiangsu Shipping College, Nantong 226010, China
Abstract: The navigation route planning of ships in ice area based on deep network is studied. Based on deep Q network, the state space, action space and reward function of ship navigation are designed. The ice area model is established by raster method to construct the ice area state space. The ship action is learned and trained in each space and reward function process, and the optimal route is generated. After smooth processing, the sailing distance is shortened, and the sailing route is planned for the ship from the current position, which can avoid the collision with the floating ice in the ice area. The research results show that the proposed method can generate a good path after 8000 iterations, and the simulated route can avoid the floating ice accurately and the path node reduction is smooth.
Key words: deep network     ice area navigation     route planning     state space     action space     reward function    
0 引 言

北极圈与南极圈气候环境与地理环境极为复杂,不但存在大量浮冰同时还有许多移动中的冰山,各类船舶在此区域航行过程中经常遭遇极端恶劣环境与诸多障碍问题,尤其是能见度较低情况下,凭借船员的驾驶经验很难避开这些海上障碍物[1]。由于高纬度地区的浮冰分布较为复杂且连续程度较高,经过该区域时需要保持精神高度集中并且多人相互协作才能确保船舶航行的安全,这一过程操作难度大,航路切换频繁,带来较大压力[2-3]。童帮裕等[4]提出使用改进蚁群算法实现船舶的航行避障路径优化,该方法利用人工势场法改进粒子群算法,确定海冰覆盖率后,构建海面航行栅格模型,在该模型中验证方法的规划效果,研究结果证明该方法能够准确避开海面上的浮冰,但是如果遇到浮冰数量较多的情况,避障效果就没有那么理想。杨琪森等[5]提出以复杂水域为研究对象,使用长短神经网络预测船舶航行轨迹,确定最优避障速度。这种方法常见于动态避障,对于运动速度较慢的浮冰并没有较好的避障效果。

本文使用深度Q网络,计算最优策略,为船舶在海面避冰航行规划出更加优异的路线。

1 船舶冰区航行避障路线规划设计 1.1 基于深度Q网络的船舶路线规划准备

深度Q网络能够准确感知复杂环境,将该方法应用于船舶冰区航行避障,能够获得更加理想效果[6]。深度Q网络能够一定程度提升神经网络的稳定性,该过程主要依靠Q空间以及目标值网络(Q'),为提升深度Q网络处理复杂控制问题的能力,Q值更新使用随机梯度下降函数,这也帮助网络无需额外数据信息实现训练。深度Q网络的基本形式见下式:

$ Q\left( {s,a} \right) = Q\left( {s,a} \right) + \alpha \left[ {r + \gamma \mathop {\max }\limits_a Q\left( {{s_{t + 1}},{a_{t + 1}}} \right) - Q\left( {s,a} \right)} \right]。$ (1)

式中: $ Q\left( {s,a} \right) $ 为动作值函数; $ a $ 为船舶航行当前避冰动作; $ {a_{t + 1}} $ 为船舶的下一个避冰动作; $ s $ $ {s_{t + 1}} $ 分别为海洋冰区当前以及下一个状态; $ a $ 为奖励; $ \gamma $ 为奖励衰减系数; $ \mathop {\max }\limits_a Q\left( {{s_{t + 1}},{a_{t + 1}}} \right) $ 用于描述 $ {s_{t + 1}} $ 状态下动作极大Q值, $ \alpha $ 代表学习率。

深度Q网络通过构建Q值表找寻最佳线路,但是这种算法会出现维度灾难,不能实现复杂路径规划,如果冰区障碍物较多,无法准确实现避障,所以需要引入卷积神经网络,在卷积神经网路中输入原始数据,实现数据智能处理[7-8]。改进后的深度Q网络能够与环境交互,获取含奖励值的样本数据,促进在线网络参数更新。一段时间后,目标值网络接收在线值网络复制的参数,目标值经目标子网络计算获取。深度Q网络的详细计算流程如图1所示。图中, $ \omega $ 表示主网络权值, $ {\omega ^ - } $ 用于描述目标网络权值。本文考虑海洋冰区不同状态( $ s $ $ {s_{t + 1}} $ ),利用使用深度Q学习确定船舶当前以及下一个避冰动作( $ a $ $ {a_{t + 1}} $ ),同时获取奖励 $ a $ ,最终规划船舶避冰路线。该方法中最关键的步骤是船舶避障路线的状态、动作空间以及奖励机制。

图 1 深度Q网络计算流程 Fig. 1 Calculation flow of deep Q network
1.2 船舶冰区避障路径设计 1.2.1 海洋环境建模

使用栅格法能够将密布冰块的海洋环境信息清晰地显示出来,只要栅格选取合适,可以确保整个海洋环境的清晰程度,能够提升船舶冰区避障路径规划的速度。栅格化模型之中使用黑色区域表示海洋中的冰块障碍物,正常无障碍海域使用空白表示,利用二进制“0”及“1”描述栅格化地图,利用该二进制组成的矩阵构建20×20的二维栅格图,使用整数实现网格标记,确保坐标系单位长度一致。利用XOY正交坐标系制定障碍物坐标点。使用描述栅格序号值 $ k $ (取整数),从起点开始记录,一直标记至400,使用下式表述栅格坐标:

$ \left\{ \begin{gathered} x = \bmod \frac{k}{m} - 1,\\ y = {{\rm{int}}} \frac{k}{m}。\\ \end{gathered} \right. $ (2)

其中, $ \bmod $ $ {{\rm{int}}} $ 分别取余运算与整运算, $ m $ 代表栅格上各行上的格数量。通过两点式坐标标识栅格,最终完成海洋环境的模型构建:

$ s = \left( {x,y} \right)。$ (3)
1.2.2 避障路线状态空间确定

根据栅格模型的构建结果,可以确定栅格中的各栅格个体都代表一个环境状态,这些状态都能使用式(4)描述。海洋环境变幻莫测,假设状态共有N个,使用式(3)定义环境空间:

$ S = \left\{ {{s_i} = \left( {{x_i},{y_i}} \right)\left| {i = 1,2, \cdots ,N} \right.} \right\} 。$ (4)
1.2.3 避障路线动作空间确定

研究过程中发现,路径规划时需要在栅格模型中简化模拟船舶模型,将船舶简化成1×1像素大小的像素点,从实际航行状态考虑,船舶的状态空间可以划分成4个基本动作,分别为上动作、下动作、左动作、右动作,动作空间设计时使用 $ \varepsilon $ 贪婪策略,航行路径上的新海洋环境探索需要通过 $ \varepsilon $ 概率选择船舶的随机动作,Q值最大动作 $ a $ 选取通过 $ 1 - \varepsilon $ 概率确定,使用下式描述探索-利用机制:

$ \begin{cases}a=\mathrm{arg}{\mathrm{max}}_{a}Q\left(s,a\right)\left(\varepsilon 的概率\right),\\ 开展新探索\left(1-\varepsilon 的概率\right)。\end{cases} $ (5)

通过 $ \varepsilon $ 贪婪策略,不但可以确保船舶选取较优航行路径,同时还能确保全部航行区域的状态空间都能被搜索到。

1.2.4 设计奖励函数

可以看出,船舶航行的动作空间较为有限,同时还具有离散化特点,所以可以泛化处理奖励函数 $ R $ ,一旦船舶到达目的地,可以将100设置为奖励值;如果在栅格模型上出现船舶像素点与黑色方格重合的情况,可以判断船舶没有有效躲避冰区中的冰块,出现碰撞情况,此时设置–100为奖励值,表示惩罚机制。在栅格模型中,把全部无障碍的白色区域奖励值设置为0,使用下式描述奖励函数:

$ R=\begin{cases}100\left(抵达终点\right),\\ 0\left(没有与冰块发生碰撞\text{,}抵达终点\right),\\ -100\left(与冰块发生碰撞\right)。\end{cases} $ (6)
1.2.5 航路平滑设置

研究表明栅格模型会限制船舶路径规划,通过计算规划出的船舶航行路径中会存在诸多节点,但是在冰区实际航行过程中,驾驶船舶躲避冰块的难度较大,所以采取算法处理深度Q网络规划后船舶航行节点序列 $ \left\{{P}_{0},{P}_{1}\cdots ,{P}_{n-1},{P}_{n}\right\} $ 上的冗余节点,由此获得船舶航行线路规划的平滑处理,使得规划后的船舶航线线路具有较高指导意义。遍历船舶航行路径上各个节点序列,分析节点之间相连所获得的线路是否从冰块上通过,以此为依据将规划后船舶航行的路线上非必需节点剔除。如果经过分析后发现每2个节点之间形成的路线没有从冰块上穿越,就可以把非必要节点剔除,获得平滑处理后的船舶航行避冰线路。

2 结果与分析

选择北半球高纬度某海域作为本文所研究的冰区,收集该区域的具体环境资料,构建该冰区的栅格模型。该区域纬度为北纬67.34°,海域最深区域超过5 000 m,最浅区域仅为1 097 m,气候较为寒冷,最低气温能够达到–70℃,全年平均温度在–1.5℃~8℃,大部分时间洋面密集分布浮冰,尤其是冬季,80%海面均为浮冰,导致船舶航行困难较大。舶情况参考“海冰722”破冰船,长度与宽度分别为85 m与16 m,满载情况下排水量达到9 191 t,可抗12级大风,最大航速为18 kn。由于试验环境限制,不能在真实海域开展研究,因此将这些海洋数据与船舶数据一起输入模拟试验平台中,利用栅格模型开展模拟试验。试验过程深度Q网络中所需要使用的参数为:学习率 $ \alpha $ =0.01,Q目标网络更新间隔=200,奖励衰减因子=1.0, $ \varepsilon $ 概率=0.15,迭代步数=8 000。

为了确定迭代步数变化下奖励值的变化趋势,设置8 000步迭代次数,训练深度Q网络,在该迭代次数之下奖励值的变化趋势如图2所示。可以看出,随着迭代次数的不断增加,奖励值无限接近于0,根据式(6)中的内容可知,奖励值为0时代表船舶在冰区中航行并未与冰块发生碰撞而安全抵达终点,由此可以确定,奖励值的这一变化趋势,证明本文方法能够实现船舶航行的冰区避障,且算法能够向收敛靠近。

图 2 奖励值变化趋势 Fig. 2 Change trend of reward value

算法训练开始阶段与训练结束阶段,损失函数波动情况会发生变化,2个阶段的损失函数变化规律如图3所示。可知,训练初期,真实Q值与算法预估Q值之间存在较大差异,该阶段损失函数出现较为剧烈的波动,这个阶段所规划的船舶航行路径并没有学会准确躲避冰区中的浮冰,迭代次数增加,算法已经能够熟练捕捉特性,训练结束以后,算法已经平均损失波动较为平缓且稀疏,损失出现明显收敛,说明该节点算法已经可以明确避障,该阶段船舶路径规划结果已经可以准确躲避冰区中的浮冰

图 3 损失函数变化 Fig. 3 Change of loss function

本文方法在船舶航行冰区避障研究中添加路径平滑处理,因此规划后路径节点更少,对比平滑处理前后路径规划效果,结果如图4所示。能够看出,使用本文方法规划后的冰区船舶航行路径,不但能够有效避开航行区域上的浮冰干扰,同时路径更加平滑,减少众多不必要节点,实际航行中能够有效提升船舶在冰区中的航行速度,同时降低船舶与浮冰碰撞而出现的事故概率,有效提升冰区船舶航行的安全性。

图 4 平滑处理前后路径规划效果 Fig. 4 Effect of path planning before and after smoothing

所研究区域每年不同季节下,海域浮冰面积不同,综合考虑多种气候影响下冰区浮冰障碍物的面积,使用模拟试验平台模拟出不同浮冰面积下,本文方法路径规划的效果,结果如图5所示。可知,使用本文方法,无论船舶所处冰区环境如何复杂,船舶仍旧可以准确躲避浮冰,准确且安全抵达最终目的地,完成船舶航行目标。

图 5 不同浮冰面积下船舶避障效果 Fig. 5 Obstacle avoidance effect of ships under different floating ice areas
3 结 语

本文基于深度网络的冰区船舶路径规划,使用深度Q网络实现路线规划,同时引入平滑处理机制,减少路径规划结果中的节点,节省船舶航行时间。试验结果表明,本文方法能够实现冰区船舶的避障路线的准确规划,即使面对较为密集的冰区障碍,仍旧能够保持安全平稳地避障航行,提升船舶在冰区航行的安全性。

参考文献
[1]
杨帆, 何正伟, 何帆. 基于深度网络和船舶交通流的航道水深预测方法研究[J]. 武汉理工大学学报(交通科学与工程版), 2019, 43(1): 130-135.
[2]
韩志豪, 汪益兵, 张宇, 等. 基于深度强化学习的船舶航线自动规划[J]. 中国航海, 2021, 44(1): 100-105. DOI:10.3969/j.issn.1000-4653.2021.01.017
[3]
刚旭皓, 田于逵, 季少鹏, 等. 冰区航行船舶冰阻力数值研究进展[J]. 船舶工程, 2020, 42(9): 6-13+43. DOI:10.13788/j.cnki.cbgc.2020.09.02
[4]
童帮裕, 胡坚堃. 基于改进蚁群算法的船舶冰区航行路径规划[J]. 中国航海, 2020, 43(1): 24-28. DOI:10.3969/j.issn.1000-4653.2020.01.005
[5]
杨琪森, 王慎执, 桑金楠, 等. 复杂开放水域下智能船舶路径规划与避障方法[J]. 计算机集成制造系统, 2022, 28(7): 2030-2040. DOI:10.13196/j.cims.2022.07.009
[6]
朱坤财, 徐郑攀, 赵自奇, 等. 基于航迹预测的水面无人艇动态避障方法[J]. 中国测试, 2021, 47(11): 28-33+46. DOI:10.11857/j.issn.1674-5124.2021020095
[7]
罗贤程, 尹建川, 李宏宾. 基于动态分阶势场法的船舶自动避碰系统[J]. 上海海事大学学报, 2020, 41(1): 1-7. DOI:10.13340/j.jsmu.2020.01.001
[8]
洪晓斌, 徐郑攀, 魏新勇, 等. 基e于改进速度障碍法的水面无人艇动态避障[J]. 光学精密工程, 2021, 29(9): 2126-2139. DOI:10.37188/OPE.2021.0272