唐 俊
(中铁第四勘察设计院集团有限公司,湖北 武汉 430063)
无人机航迹规划是指在考虑地形、气象、威胁等环境因素及自身的飞行性能的基础上,为无人机制定出从初始位置到目标位置的最优飞行路径[1]。无人机航迹规划是无人机任务规划系统中的关键,对于提高无人机作业效率和应用能力具有重要意义[2]。
无人机航迹规划算法在二维与2.5维发展较为成熟[3-5]。但在贴近无人机实际应用的三维环境下,具有一定局限性。如神经网络算法结合可调步长策略能快速生成三维航迹,但不适用多种约束共存的环境[6];遗传算法与粒子群算法容易陷入局部最优,且在复杂约束的路径规划问题中航迹精度不理想[7-10];蚁群算法改进启发函数和信息素更新能使三维路径长度与搜索效率得到提高,但难以顾及无人机的性能约束特点,规划航迹适应性不足[11-12];人工势场法适用于二维复杂环境,但无法应用于三维环境中[13]。A*算法在二维图形搜索领域应用成熟[14],若直接应用于三维环境,则运算将成指数倍上升,效率缓慢,因此需要进行改进[15]。
综上,目前无人机三维航迹规划能在单一约束下快速生成航迹,但在复杂环境约束下缺少对最优路径的考虑,且无法同时兼顾复杂环境约束与无人机自身性能约束。因此,针对以上不足,本文拟设计多层扩展A*算法,提出一种顾及复杂环境约束的无人机三维航迹快速规划方法,期望能高效、准确地生成无人机航迹。
根据算法基于规则格网空间搜索的特点将环境模型构建成格网空间。主要方式如下:由于无人机在改变方向时存在最小惯性距离的约束,可将该长度作为格网单元,将路径规划区域分为一个m×n的格网,每个格网具有对应的行列号,存储无人机可飞行的高度范围信息。
构建的模型空间表示为
Ωm={(Xi,Yj,ZXi,Yj)|0≤Xi≤m,0≤Yj≤n,
Z1 (1) 式中,Z1、Z2、Z3、Z4为高度值,且Z1 在构建环境模型后,需要将典型复杂环境约束信息融入环境模型,地形信息采用仿射变换方式。气象与禁飞区等柱型约束先竖直投影成多边形,然后获取约束区域边界所经过的环境模型行列号。危险物约束简化为球形或正方体类型融入环境模型。通视约束是指因某些无人机任务要求,需要无人时刻在至少一个地面站的通视下飞行,要求航迹始终符合地面站通视性要求。通视融入主要采用视域分析方法并以不断模拟拔高各地面站监测点高程,反复进行视域分析的方式以获取环境模型各格网约束信息。 构建环境模型后,通过多层扩展A*算法在环境模型中搜索出参考航迹,接着对参考航迹采用航迹简化与航线平滑方法进行优化,可高效、准确地生成无人机航迹。 受无人机本身硬件性能的限制,无人机在水平方向转弯时,转弯角度受到最大水平转弯角的限制,因此在算法搜索时,新增8个方向值,每次搜索时,仅能搜索与原先方向相同或左右最邻近的两方向。 无人机在爬升与俯冲时有最大俯仰角的限制,根据此特点,算法在路径格网搜索扩展节点时,根据水平扩展距离与无人机最大俯仰角的大小计算本次扩展竖直高度的可达范围,然后在竖直可达范围内以固定高度间隔为基准分层扩展竖直节点。竖直高度可达范围计算公式为 (2) 式中,Hcur为当前高度;Hnext为本次扩展高度取值范围;Lc为格网宽度;α为最大俯仰角。 在扩展多个节点后,需要改进算法代价函数以快速获得一系列最优航迹节点,而无人机航迹规划一般受距离与飞行高度的影响,可能还受其他因素的影响。因此代价的计算方式为 J=ω1L+ω2Z+ω3T1+ω4T2 (3) 式中,ω1、ω2、ω3、ω4均为权重值,它根据应用情况相应取值;L为航迹段长度;Z为轨迹平均高度;T1、T2为影响因素代价。这些影响因素需要归一化到同一个数量级。 按照多层扩展A*算法设计思路,从起始点开始逐格网依次搜索至目标点,得到格网间一系列点的坐标,按顺序相连即是参考航迹。算法流程如图2所示。 算法搜索得到的参考航迹曲折多变,无法满足无人机不频繁转向或升降的实际需求,需要进行航迹简化,将频繁的微小转向又回复的航迹简化为直线。其主要思路是根据相邻方向向量的差异程度判断是否简化,简化方向向量相近的点,若判断出连续两方向向量与之前不相近,则为不简化点。算法流程如图3所示。 在进行线简化后,所生成的航线均是由一系列直线段构成,需要采用样条曲线进行航线平滑,使其符合无人机平滑转弯的实际飞行特点,最终生成一条可飞航迹。 通过选取四川省甘孜藏族自治州金沙江附近山谷地带大约2200 km2的范围作为案例试验区域,设置航迹规划初始参数为:最大俯仰角为20°,最大水平角为45°,最小航迹段为20 m,最低离地高度为10 m,最大飞行高度为4500 m,以航迹距离为代价,权重系数ε为1.44,将地形、大气环境约束区域、起止点添加至同一场景中,如图4所示。 按照以上参数进行航迹规划试验。首先对算法在各步骤所生成的航迹进行对比,如图5所示。由图5可知,无论是经典A*算法、稀疏A*算法还是本文多层扩展A*算法,在未进行线简化时,其航迹均有波浪形式;平滑前的航迹在转弯时均是直边形式,而平滑后转弯是曲线平滑过渡,更符合无人机的实际飞行特点。 然后将经典A*算法、稀疏A*算法与本文多层扩展A*算法分别进行对比试验,其航迹效果如图6与图7所示。 3种算法生成的结果信息见表1。 表1 试验1算法效率对比 由图6整体航迹结果图可知,3种算法航迹均能有效避开约束区域,且航迹主要差别在前半段部分,将其放大如图7局部图所示。由图7与表1可知,经典A*算法由于其扩展方向不受限制,规划时间长,其路径仅考虑最短的需求,还造成路径多曲折,频繁转向,也未考虑无人机性能约束。稀疏A*算法虽顾及了无人机自身性能特点,并且在算法搜索中所规划时间较短,但由于其扩展节点过少,导致航迹缺乏最优性。本文多层扩展A*算法在其基础上,采用多层扩展的方式,规划效率与精度都有一定的提升,同时顾及了无人机自身性能特点生成的航路为可飞航路,少转向,更加适合无人机飞行。 试验1中起止点距离较短,适用于分析航迹,而航迹规划算法效率体现不够明显。因此,再次设置参数模拟进行试验2,以航迹距离与飞行高度为代价,系数分别为0.6与0.4;权重系数ε为1.732;最大俯仰角修改为40°;最低离地高度为50 m;其余不变,途中设置约束区域,同样将3种算法分别进行对比分析,其时间与解最优性见表2。 表2 试验2算法效率对比 通过表2对比分析可得,经典A*算法仍存在效率问题,算法运行缓慢;稀疏A*算法存在解的最优性问题,航迹距离较长。本文多层扩展A*算法能够兼顾效率与解的最优性,是更为理想的方法。 本文针对复杂环境约束下无人机三维航迹规划效率缓慢与精度低的问题,设计了适应于复杂环境约束的多层扩展A*算法,能够生成一条符合要求的飞行航迹。通过选择案例区域与经典A*算法、稀疏A*算法进行对比试验,结果证明本文方法能够实现安全绕开威胁,并且提高了航迹规划的效率与精度。2 无人机三维航迹快速规划方法
2.1 多层扩展A*算法设计
2.2 无人机三维航迹规划方法
2.3 航线优化
3 试验与分析
4 结 语