基于改进人工势场算法的无人机群避障算法研究
2020-11-17陈麒杰晋玉强王陶昱
陈麒杰,晋玉强,王陶昱
(海军航空大学,烟台 264001)
0 引言
随着世界科学技术的发展和应用,无人机的性能发展越来越全面[1]。近年来,无人机不论在军事还是民用领域都发挥着越来越重要的作用,发展潜能也逐渐被挖掘[2],具有自主执行任务能力的无人机是未来发展的必然趋势。路径规划则是保证无人机自主飞行,提高生存能力和安全指标的关键技术[3]。
无人机路径规划是综合考虑无人机在有障碍物或者威胁环境中,以一定的控制算法,寻找一条从起始位置到达目标位置的无碰撞路径,综合考虑了障碍目标导引[4]。近年来,国内外的众多学者对路径规划问题做了大量的研究,并提出了许多可行的算法,如随机路图法(Probabilistic Road Maps,PRM)、A*算法、快速扩展随机树法(Rapidly Exploring Random Tree,RRT)以及他们的改进算法,到遗传算法等智能算法[6],再到蚁群算法[7]、鸽群算法[8]、鱼群算法[9]等生物仿真算法。以上的各类算法在进行单机避障路径计算时,都有较好的避障性能,但进行多机协同避障时,计算量会成几何倍数增长,实时控制性不够好,最终导致避障失败。
无人机单机执行任务时,生存率低,完成任务失败率高,侦察效率低,因此无人机机群控制成为必然。目前,无人机机群控制多基于长机-僚机[10]的主从关系控制,在一定程度上解决了无人机机群协同控制问题,但此方法降低了每一架无人机的灵活度,限制了其中个体无人机的性能发挥。本文基于改进的人工势场[11],提出了一种适合于无人机群的控制方法,该方法中,重新定义的斥力函数作为障碍物对无人机的斥力,解决了无人机因为目标点附近障碍物斥力较大无法到达目标点的问题; 新增加了前置形心的概念,前置形心对无人机之间有相应的引力,解决了无人机陷入局部极小值的问题。
1 基于人工势场法的无人机路径规划
1.1 人工势场概述
人工势场法最初是由Khatib[12]提出的一种解决路径规划问题的方法。路径规划的方法是将机器人在环境中的运功,设计成为一种抽象的人造引力场中的运动,目标点对无人机的移动提供引力[13],障碍物对移动的无人机提供斥力,最后通过求合力以达到控制无人机避障的目的[14]。该方法优点在于规划的路径较为光滑,避免了大角度的转弯造成无人机失速引起的危险;缺点一是容易陷入极小值点[15],二是在离目标点较近,且目标点周围有较大障碍物时,障碍物斥力大于目标引力,无人机不能到达目标点。
1.2 无人机群前置形心定义
为了解决人工势场法存在的缺陷,本文定义了一个新的引力源,即前置形心(如图1所示)。前置形心为无人机机群形心位置向目标点方向固定步长的点,在无人机前方无障碍物,目标引力和障碍物斥力相等时,以前置形心作为无人机群的另一引力源,引力源对无人有机引力作用,打破了无人机的受力平衡,使无人机向目标点方向机动。
图1 前置形心示意图Fig.1 Pre-centroid diagram
目标点对该前置点的引力Fat归一化后的方向作为前置形心前进的目标方向,即
(1)
前置形心的计算公式为
(2)
1.3 引力函数定义
目标对无人机的引力场,目的在于导引无人机向目标点飞行,定义目标引力场为
(3)
其中,Ka是引力增益常数;Pa是单位向量,方向由无人机指向目标点;ρgoal为无人机距离目标的距离;ρmax为设定的目标点对无人机作用的最大距离。当无人机距离目标点较远时,对无人机的引力过大,可能因为障碍物的斥力不够,导致避障失败。所以设定阈值,避免目标点的引力过大,造成避障失败。
飞行过程中,前置形心对无人机产生引力,避免无人机陷入极小值点,前置形心的引力定义为
Fatp=KbρupPup
(4)
式中,Kb为前置形心引力增益常量;ρup为无人机距离前置形心的距离;Pup为单位向量,方向由无人机指向前置形心。
1.4 斥力函数定义
障碍物斥力场,目的在于对无人机飞行产生斥力,使无人机适时做出避障动作。由于改进的人工势场函数中,对斥力的定义容易造成无人机在到达目标点附近时,引力不够大,从而造成无人机在目标点附近徘徊,达不到目标点的位置。因此在原有斥力的基础上,增加与目标点距离的影响因子,构造新的斥力函数为
(5)
其中,Ke为障碍物斥力增益常量;ρobs为无人机距离障碍物的距离;ρ0为障碍物斥力作用的范围;λ为根据障碍物和ρmax可调整的常数;Poe为单位向量,方向由障碍物指向无人机。
在无人机飞行过程中,添加无人机之间的斥力,将无人机的当前位置信息作为新的障碍点,使无人机之间产生斥力,避免了无人机之间的撞击,斥力方程定义为
(6)
其中,Ku无人机斥力增益常数,ρuu为2架无人机之间的距离;ρu0为无人机之间作用力的距离,当超过该距离时,无人机之间无影响力;Puu为单位向量,方向由编号在前的无人机指向编号在后的无人机。
因此,无人机在人工势场中的受力为
(7)
图2所示为无人机在飞行过程中受到目标点的引力和障碍物的斥力的示意图。
图2 无人机受力示意图Fig.2 Force diagram of UAV
图3所示为无人机飞行过程中,无人机之间斥力示意图。
图3 无人机之间斥力示意图Fig.3 Diagram of repulsion between UAVs
2 无人机的编队避障控制思想
假设在规定的飞行区域内,有n架无人机进行编组飞行,第i架无人机在T时刻的位置信息为(xi,yi),计算无人机到目标点的距离ρgoal,同时计算目标点对无人机的引力fatt,根据公式
(8)
由于无人机飞行过程中,存在很多障碍物,有些障碍物对无人机并不造成影响,因此在避障过程中,规定无人机避开目标方向上距离自己最近的障碍物即为避障成功。由此可取距离无人机最近的障碍物计算障碍物斥力。由无人机信息采集功能测得无人机距离最近障碍物的距离为ρobs,根据式(5)计算障碍物斥力Fre,根据式(7)计算无人机所受合力。
3 仿真验证
为了验证试验猜想,下面使用MATLAB2014a进行仿真,仿真流程图如图4所示。
图4 仿真流程示意图Fig.4 Schematic diagram of simulation process
设定1号无人机初始位置为(x1,y1)=(450,150),2号无人机初始位置为(x2,y2)=(350,250),3号无人机初始位置为 (x3,y3)=(250,350),4号无人机初始位置为(x4,y4)=(150,450);无人机速度为10;无人机大小设置为10;引力场增益系数Ka为30;斥力场增益系数Kb设置为30;得到如图5所示的仿真结果。
图5 4台无人机路径规划仿真图Fig.5 Simulation diagram of path planning for four UAVs
从图5可以看出,无人机在匀速向目标点前进的过程中,遇到障碍物时,能够及时做出相应的避障动作,并且因为2号无人机和3号无人机之间避障路径相似,使无人机之间产生相应的斥力,可以看出,2号无人机在前进过程中对于3号机的避让效果。在无人机飞出障碍区之后,1号无人机和2号无人机之间,由于无人机之间的斥力和目标点对于无人机的引力,1号无人机和2号无人机重新规划了相应的飞行路径。
当增加无人机目标区域障碍物,其余条件不变,设定无人机初始位置为(x1,y1)=(450,150)、(x2,y2)=(350,250)、(x3,y3)=(250,350)、(x4,y4)=(150,450),使编队处于无序状态时,其余参数不变,得到如图6所示的仿真结果。
图6 4台无人机目标区域有障碍物路径规划仿真图Fig.6 Simulation diagram of obstacles path planning for four UAVs in target area
由图6可以看出,在无人机开始避障之前,由于无人机之间相互斥力的作用,每一架无人机的路径规划都有明显的避让行为。以5号无人机为例,在进入障碍区前,该机将序号靠前的无人机的路径点作为当前障碍物点,并重新规划路径;进入障碍区之后,以其他无人机和障碍物的斥力为依据,规划路径,成功避障。在所有无人机到达目标区域时,由图可以看出,由于改进了斥力函数,增加了目标点距离的影响因子,从而使得无人机在目标区域周围有障碍物时,也能够成功到达目标区域。
4 结论
本文针对无人机编队飞行中的路径规划问题,提出了一种基于改进人工势场的无人机路径规划方法,通过实验仿真可以看出:
1)飞行过程中,避免了无人机进入极小值点,造成避障失败的问题。本文提出的增加前置形心引力和无人机之间的斥力的合力,有效避免了无人机进入极小值点之后的受力平衡。
2)编队飞行过程中,在前置形心引力和无人机之间斥力的作用下,既保证了编队飞行的稳定性,又保证了单架无人机的自主性,提高了整体的鲁棒性。本文只对无人机所受的虚拟力进行定义和约束,对无人机的行为不做约束,因此在遇到外界新增障碍物时,能够有效地做出避障动作。
3)到达目标点后,基于改进势场的斥力函数,由于指数函数的存在,衰减得更快,避免了无人机到达目标点附近,却不能到达目标点的情况,有效增强了无人机到达目标点的能力。