当前,无人平台的发展速度越来越快,有关研究也越来越广泛。无人平台是指无人操作的智能性任务执行平台,其包括无人机、无人船、无人车以及机器人等,是相关无人设备的总称,如图1所示。其技术涉及到机械设计、运动控制、数据融合、人工智能等多个专业领域,研究内容包括任务规划与智能决策、路径规划与智能避障、自主航行控制、综合导航与高精度定位、智能感知、远程无线高速通信、武器发射控制等众多方面。进入21世纪以来,随着计算机、网络、传感器、人工智能等技术的发展,这些平台的“ 无人化”水平越来越高,多种学科交叉融合的“ 无人技术”在其中扮演越来越重要的角色,同时促进了多种无人平台的发展,无人平台的发展趋势也由遥控型向半自主、全自主发展[1]。根据无人平台智能程度的不同可将其分为3类:1)遥控型无人平台,如遥控无人机等;2)半自主型的无人平台,指能够按照预设程序航行并完成相应任务的无人平台,如有人/无人半自主的无人船等;3)具有自主任务规划、自主航行功能,并可通过搭载的不同传感器及设备自主完成环境感知目标探测等任务的全自主型无人平台。
本文以无人水面艇(Unmanned Surface Vehicle,USV)为代表的无人平台来分析,其中航路规划系统在无人平台中起着至关重要的作用,也是体现无人平台自主性与智能性关键技术。无人艇的航路规划是指在具有障碍物的环境中,能够规划出一条从起始位置状态到目标位置状态无碰撞的最优路径或次优路径,并满足所有约束条件,最优状态下完成设定任务以及处理突发情况。对于无人艇的航路规划系统而言,根据航路规划的作用范围,可以将其分为路径规划、任务规划两大规划单元。路径规划单元根据作用域的大小可以进一步细分为全局路径规划和局部路径规划[2]。任务规划单元更加侧重于执行对应的任务时路径规划的策略研究,也可称之为任务策略。目前全局路径规划方法主要有可视图法[3]、自由空间法、Voronoi图法、栅格法[4]、A*搜索算法[5],RRT算法[6],粒子群算法[7]、蚁群算法、遗传算法等。局部路径规划方法主要有人工势场法[8]、向量场直方图法[9]、动态窗口法、速度障碍法[10]等优化避障方法。本文提出基于无人艇自身信息与外界环境信息的智能航行系统,针对无人艇的任务执行与轨迹生成,基于无人艇自身特性设计了相关规划单元,更好地符合无人艇的特性,提高无人艇的自主航行与智能规划能力。
1 智能航路规划系统设计 1.1 总体框架设计智能航行规划系统整体模块框架如图2所示,其设计是基于分层策略展开的。
整个智能航行系统各单元功能如下:
1)人机交互单元。主要实现任务下发、确定策略,数据加载及实时显示功能。完成相关初始化的任务,包括本地数据库的下载,相关地图的加载,设备初始化验证工作等。
2)全局规划单元。主要实现大范围区域的全局路径规划设计。根据给点的起点、终点信息,按照目标约束策略,进行大范围粗粒度的路径规划。
3)局部规划单元。主要实现小范围区域的航路重规划设计。通过感知传感器更新数据,探测未知的静态障碍物,并调整航路,避开危险障碍物。
4)任务规划单元。主要实现在任务执行的局部区域内,完成区域内的路径规划设计。需针对几种特定的任务,制定相关的任务策略,快速、及时完成相应任务。
5)底层避障单元。主要实现近距离的动态障碍物的避碰调整,保证无人艇在动态环境下的安全性。利用传感器信息探测动态船舶等信息,实时调整本艇的航向航速,达到安全航行的目的。
6)轨迹规划单元。主要实现无人艇在动力学约束下的轨迹优化问题,保证无人艇的轨迹可行,实时可控。
7)异常处理单元。主要实现无人艇发生异常情况下,规划策略调整或紧急制动。
1.2 航路规划算法设计智能航行系统的分层策略包括两部分:慎思式AI模型,也称为基于模型的规划法。是以环境模型为基础进行全局无碰路径规划,可方便找到全局目标,难以适应动态变化的环境,一般用于全局与局部。反应式AI模型,不需要事先进行规划,而是让平台直接去响应环境变化,根据传感器探测的环境数据实时的回避障碍,具有快速、实时、高效的特点,一般用于局部与底层避障。其中规划的分层策略设计为:任务规划、路径规划、智能避障3个部分,分别对应不同阶段的规划方案。其数据流图如图3所示。
其中,全局路径规划是在已知海洋信息(电子海图)前提下,建立数字海图环境模型,并通过一定的搜索算法搜索路径,进行全局范围路径规划;而局部路径规划是根据无人艇上的雷达以及视觉传感器对四周未知环境信息进行探测,进而得到无人艇的周围未知障碍物分布信息,最后通过安全有效的算法对无人艇进行方向和速度控制,达到避开障碍物的目标,实现智能避碰,属于小范围规划。其中全局规划采用的A*算法,局部规划采用的基于碰撞锥的局部点插入算法,在底层避障上采用的是速度避障法,都有成熟算法介绍,本文重点关注无人艇智能航行的任务规划与轨迹规划算法。算法流程如图4所示。
任务规划与避障的更新策略不同,避障需要不断的实时刷新,但任务规划可以采取一定的时间间隔进行更新,只需确保实际过程中任务的偏差量符合任务要求。为区别于普通航路点信息,任务规划生成的或者任务要求的点统一定义为任务点,属性要多于普通航路点,优先级更高,而由避障产生的点定义为避障点,其优先级最高。当三者同时产生的时候,优先避障,其次执行任务点,最后是航行点。因此可以将航路点属性分为3类:航行点、任务点、避障点(见表1)。航行点为离线算法生成得到,任务点可以离线设定或者实时生成,避障点则是由实时生成得到的。
USV任务规划根据已知作业环境信息,与外界感知得到的数据相融合,在任务区域内,执行相应的任务。其中感知数据包括光电信息,雷达信息,导航信息等,光电信息,雷达信息可以感知目标的方位与速度等,导航信息可以感知当前无人艇所处的位置信息。一旦进入相应的任务区域,则执行任务规划策略。
以定点巡逻任务为例,定点巡逻是指无人艇在一定区域内,对区域内几个定点位置进行探测巡逻(顺序可以为有序也可以为无序)。算法流程如下:
1)先将起始位置点与所需巡逻点构建一个拓扑图,其中拓扑图的构建可采用A星算法,对两两最短路径进行探索,得出两两之间的距离拓扑图,并记录两两之间序列点。
2)根据巡逻顺序进行判断,若有序,则按照规定顺序规划一条合理路径巡逻,若无序,则利用动态规划算法[11],设定相应的代价,主要考虑对无人艇航行有较大影响的因素距离代价、转弯代价。
3)合理规划出一条最小代价的航路,实现对各个巡逻点的监测,获取路径序列点。
4)利用轨迹规划的算法在巡逻点中插值上述序列点,规划出一条离线无碰最短路径。
以实际的例子来说明,在栅格化之后的地图上,随机生成几个巡逻点,通过A星算法得出两两点之间的距离,然后利用动态规划算法规划好相关路径,如图5所示,路径2为得到的路径,并根据运动学约束模拟无人艇的行进路径,进行碰撞检测,最终生成无人艇可航行路径,如路径1所示。
对于原始航迹中存在直线航迹段,无人艇按此直线航行,而无需考虑其他机动性能约束。但在相邻航迹段之间的衔接存在一定的夹角,此时必须进行转弯,所以保持直航显然不可能,此时需要满足船速、船首向、角速度、最小转弯半径等约束。
首先需要结合无人艇的船体模型来分析无人艇的动力学特性,在动力学分析上,无人艇一般来说是具有非完整约束。可以定义无人艇的动力学模型为
$\begin{aligned} {\left[ \begin{gathered} x \\ y \\ \varphi \\ \end{gathered} \right]_{t + \Delta t}} & = {\left[ \begin{gathered} x \\ y \\ \varphi \\ \end{gathered} \right]_t} + \Delta t\left[ \begin{gathered} \cos \varphi \;\;\;\;\;0 \\ \sin \varphi \;\;\;\;\;0 \\ 0\;\;\;\;\;\;\;\;\;\;1 \\ \end{gathered} \right]\left[ \begin{gathered} v \\ \omega \\ \end{gathered} \right] \text{,} \end{aligned} $ | (1) |
$\begin{aligned} {\left[ \begin{gathered} v \\ \omega \\ \end{gathered} \right]_{t + \Delta t}} & = {\left[ \begin{gathered} v \\ \omega \\ \end{gathered} \right]_t} + \Delta t\left[ \begin{gathered} {\dot v} \\ {\dot w} \\ \end{gathered} \right] \text{,} \end{aligned} $ | (2) |
其中
$ R = \frac{v}{\omega }\text{。} $ | (3) |
由无人艇的动力学特性可以确定无人艇的动力学参数。在轨迹规划单元中,通过动力学参数,可以得到无人艇的速度,角速度的采样区间:
$\begin{gathered} v = \{ v - {{\dot v}_{\max }}\Delta t,v + {{\dot v}_{\max }}\Delta t\}\text{,} \end{gathered} $ | (4) |
$\begin{gathered} w = \{ w - {{\dot w}_{\max }}\Delta t,w + {{\dot w}_{\max }}\Delta t\} \text{,} \end{gathered} $ | (5) |
其中
B样条曲线法[12]是目前比较实用的航迹平滑算法,该方法具有整体全局优化的优势,因此所获得的航迹整体过渡自然,B样条函数具有曲率变化比较均匀及一、二阶导数连续等特点,因此可满足无人艇实际航行中速度及加速度连续变化的要求。航迹的B样条曲线的曲率表达式推导如下。每一段二次均匀B样条曲线参数方程记作:
$\left\{ \begin{aligned} x & = \varphi (t) , \\ y & = \Phi (t) ,\\ \end{aligned} \right.\;\;\;\;\;\;\;\;\;0 \leqslant t \leqslant 1\text{。} $ | (6) |
根据曲线曲率计算公式:
$k = \frac{{|y''|}}{{{{(1 + {{y'}^2})}^{1.5}}}},\;\;\;\;\;\;0 \leqslant t \leqslant 1\text{。}$ | (7) |
曲线曲率半径
考虑到在实际运行中,生成的轨迹可能会与障碍物发生碰撞,如图6所示,线条1代表原规划路径,路径2为采样路径,无人艇由ab方向转到bc方向,通过圆形拟合选取一个较大的半径R时候,此时发现此路径经过了障碍物点,因此此条路径不可取。基于此,需要对生成的曲线进行碰撞检测,当检测到路线经过障碍物时,需要对路线进行一个重新采样,通过在当前半径上加减,设定不同的采样半径,形成一组不同半径的采用空间,直至选取了一条无障碍轨迹,确定最终的转弯半径,完成最终的轨迹规划方案。
以5个航路点做测试序列,实际规划的路径如图中路径2,由于大转弯与多转弯的存在,无人艇无法准确按照此路径行驶,此时采用B样条曲线法拟合以及设定无人艇的转弯半径,最终得到一条合理的路径如图中路径1所示,既能保持起点与终点的斜率一致,又能满足无人艇的运动约束,实现对无人艇的最优规划,便于无人艇后期的控制。
利用GIS信息,并用栅格化的算法对渤海湾区域构建出二值化编码的地图[13]。图8为GIS图与栅格化结果。
针对智能航行系统开展仿真测试,在地图上设定起点在(120°E,38°N),终点在(132°E,39°N),以栅格化的电子海图为参考,其中线1为全局规划的结果,线2为对全局规划进行局部任务规划,确定关键任务点,最后利用这些关键点信息,进行轨迹规划,形成最终的曲线3,其结果验证了本论文提出的智能航行系统的有效性。图9为形成的航路规划系统界面图与规划结果。
无人艇航路规划系统实现合理规划航路、紧急避碰、完成指定任务等,极大地降低无人艇对远程操控人员的依赖,同时扩展无人艇的多任务作战能力。该系统能够让无人艇具有较高的自主路径规划和智能避障能力,同时无人艇可以独立地执行远程探测、信息搜集、巡逻跟踪等任务,基本上实现了无人艇的全自主性与智能性。
[1] |
刘大学, 宋金泽, 聂祖国. 分级智能化的武器平台—无人平台体系结构解析[J]. 国防科技, 2013, 34(5): 7-11. DOI:10.3969/j.issn.1671-4547.2013.05.002 |
[2] |
BIBULI M, SINGH Y, SHARMA S, et al. A two layered optimal approach towards cooperative motion planning of unmanned surface vehicles in a constrained maritime Environment[J]. IFAC-PapersOnLine, 2018, 51(29): 378-383. DOI:10.1016/j.ifacol.2018.09.458 |
[3] |
许斯军, 曹奇英. 基于可视图的移动机器人路径规划[J]. 计算机应用与软件. 2011, 3(28): 220–236.
|
[4] |
MOUSAZADEH H, JAFARBIGLU H, ABDOLMALEKI H, et al. Developing a navigation, guidance and obstacle avoidance algorithm for an Unmanned Surface Vehicle (USV) by algorithms fusion[J]. Ocean Engineering, 2018, 159: 56-65. DOI:10.1016/j.oceaneng.2018.04.018 |
[5] |
BOROUJENI Z, GOEHRING D, ULBRICH F, et al. Flexible unit A-star trajectory planning for autonomous vehicles on structured road maps[C]. IEEE International Conference on Vehicular Electronics and Safety. 2017: 7–12.
|
[6] |
ZHUANG Jia-yuan, ZHANG Lei, SUN Han-bin. Improved rapidly-exploring random tree algorithm application in unmanned surface vehicle local path planning[J]. Journal of Harbin Institute of Technology, 2015, 47(1): 112-117. |
[7] |
向祖权, 靳超, 杜开君, 等. 基于粒子群优化算法的水面无人艇分层局部航迹规划[J]. 武汉理工大学学报, 2015, 37(7): 38-45. |
[8] |
ZHANG T, ZHU Y, SONG J. Real-time motion planning for mobile robots by means of artificial potential field method in unknown environment[J]. Industrial Robot, 2010, 37(4): 384-400. DOI:10.1108/01439911011044840 |
[9] |
洪晓斌, 魏新勇, 黄烨笙, 等. 融合图像识别和VFH+的无人艇局部路径规划方法[J]. 华南理工大学学报, 2019, 47(10): 24-33. |
[10] |
OWEN E, MONTANO L. Motion planning in dynamic environments using the velocity space. Piscataway, NJ, USA: IEEE, 2005.2833–2838.
|
[11] |
AGARWAL A, LIM M H, ER M J, et al. ACO for a new TSP in region coverage[C]. International Conference on Intelligent Robots and Systems. 2005: 1717–1722.
|
[12] |
ELBANHAWI M, SIMIC M, JAZAR R. Randomized bidirectional B-spline parameterization motion planning[J]. IEEE Transactions on Intelligent Transportation Systems, 2016, 17(2): 406-419. DOI:10.1109/TITS.2015.2477355 |
[13] |
LI Ji-gong, FENG Yi-wei, ZHU Chao-qun. A novel path planning method based on certainty grids map for mobile robot[C]. The Proceeding of 26th Chinese Control Conference. 2007: 185–188.
|