无人机路径跟随引导率参数优化选择方法

2020-09-04 04:58陈鸿宇卜方玲赵筱玥汪志航
计算机工程与设计 2020年8期
关键词:航向适应度遗传算法

陈鸿宇,卜方玲,赵筱玥,汪志航

(武汉大学 电子信息学院,湖北 武汉 430072)

0 引 言

近年来,由于轻便、体积小、成本低等优点,无人机在自然灾害地区调查以及交通和事故监测等领域得到了广泛的关注[1,2]。在上述任务中,无人机需要自动沿着预先设定的轨迹飞行[3],即实现路径跟随。预设的路径常常使用一系列的路径点来描述[4]。为了引导偏离航迹的无人机回到预设路径上并沿路径继续飞行,无人机需要不断改变其航向,航向改变所依据的规则被称为引导率。研究者们设计了一系列的引导率来实现路径跟随,Kothari等结合了纯追踪法和视线法,提出了PLOS(pure pursuit and line-of-sight)引导率[5]。Sujit等总结了包括carrot chase和NLGL在内的5种引导率[6],通过仿真研究了不同参数选择下路径跟随的结果,并制定了相应的评价指标,对引导结果进行评价。通过Sujit的工作,可以看出参数的选择对引导结果影响很大,但是上述方法中均缺乏参数选择的策略。为此,本文选取了广泛应用于实际飞行中的carrot chase和路径跟随结果非常优秀的NLGL引导率,用于无人机路径跟随算法中引导率最优参数选择问题的研究。

选择一个引导率参数,使得在相应的指标下路径跟随的结果达到最优,是一个优化问题。优化问题有两类解决办法,一种是精确算法,另一种是启发式算法[7]。精确算法在全局搜索域内寻找最优解,效率低,只适用于小规模问题。启发式算法易于实现,不需要梯度信息,能避免局部最优,被广泛应用于求解优化问题[8]。常用的启发式算法有模拟退火、遗传算法、群体优化算法等。模拟退火算法是一种随机算法,非常易于实现[9],然而为了接近全局最优解,最终温度会被设置为极低的值,使其收敛速度下降,也有可能陷在局部最优解中[10]。群体优化算法如粒子群算法,对初始种群的选择具有很好的鲁棒性,但是在接近全局最优解时,搜索速度会下降且容易陷于局部最优解中[11]。遗传算法因其具有全局搜索的特性往往能取得出色的结果[12],且搜索从群体出发,具有潜在的并行性和鲁棒性。为了得到鲁棒性的全局最优解,本文选择遗传算法作为该问题的解决方法。

针对路径跟随算法中引导率参数选择非优化的问题,本文提出了一种基于遗传算的引导率参数优化选择方法,构建无人机自适应路径跟随系统,实现了无人机自适应路径跟随。首先根据路径的信息、无人机的初始姿态以及引导率,用遗传算法计算出代价最小的引导率参数,然后再将该参数引入相应引导率中,引导无人机进行朝着预设的路径飞行。

1 无人机路径跟随算法

1.1 路径跟随问题描述

无人机路径跟随的目的是为了让无人机能够准确地、自动地沿着预设的路径飞行[13]。用数学模型[6]来描述这一问题,如图1所示,给定一条路径(由路径点Wi和Wi+1来描述),无人机的初始位置P、速度v和航向角,路径跟随算法的目标是,在无人机飞行过程中,最小化无人机到路径的距离d,以及航向角与路径角度θ之间的差值,即随着时间t增大,使d→0,|-θ|→0。通过路径跟随算法中的引导率,计算出无人机下一时间点所要求的航向角,从而不断调整无人机航向角,使其在任务进行过程中能够精确回到预设路径上,并沿着路径飞行。

图1 路径跟随

1.2 路径跟随算法

本文聚焦于无人机在二维空间的路径跟随,因此算法只需要控制无人机的航向角,同时将无人机速度方向控制为机头方向。路径跟随算法中引导率的输出往往为径向加速度控制量u,可根据如下式(1)计算得到航向角

(1)

路径跟随算法中的核心规则为引导率,它根据输入的预设路径和无人机位置、姿态信息,生成相应的控制指令,即航向角的控制信息。本文选取了广泛应用于实际飞行的carrot chase以及路径跟随效果非常优秀NLGL引导率,在以下两小节中进行简单的介绍。

1.2.1 Carrot chase引导率

Carrot chase是路径跟随算法中最为广泛应用的引导率之一,该算法通过在路径上设置虚拟目标,使无人机不断追逐虚拟目标,从而实现路径跟随。虚拟目标的设置如图2所示,根据无人机的位置和预设路径,计算出无人机在路径上的投影P′,再将其加上一个参数δ,得到虚拟目标S。

图2 Carrot chase引导率虚拟点设置

引导率的输出,即径向加速度控制量u的定义为

u=k(d-)

(2)

其中,ψd为无人机位置P和虚拟目标S连线与水平轴之间的夹角,k为控制增益,参照文献[6]取k=0.5。改变参数δ的值,虚拟目标的位置会产生变化,路径跟随结果也会有所不同。

1.2.2 NLGL引导率

NLGL引导率也用到了虚拟目标的概念,如图3所示,以无人机位置为圆心,参数L为半径画圆,与路径相交于S和S′,取前进方向与该圆的交点为虚拟目标。

图3 NILG引导率虚拟点设置

引导率输出定义为

u=2v2sin(η)/L

(3)

其中,v为无人机速度,η为虚拟目标和位置连线与无人机飞行方向之间的夹角。若L值小于无人机到路径的距离,则将u确定为一个固定值,直到无人机到路径距离小于L的值。改变参数L的值,将改变虚拟目标的位置,同时由式(3)可以看出,会对控制量u产生影响,从而改变路径跟随的结果。由此可见,引导率参数的选择对路径跟随算法至关重要。

2 自适应路径跟随方法

2.1 基于遗传算法的引导率参数计算方法

遗传算法是一种基于生物遗传过程的自然优化机制的启发式算法[14],算法受到达尔文进化生物学的启发,使用遗传、选择、变异和交叉技术来寻找最优解[15]。遗传算法首先随机初始化一个种群,然后对种群进行选择、变异和交叉操作,以产生下一代种群,直到满足终止条件(通常为确定一个迭代次数),输出最优个体。迭代过程中,使用适应度函数来评价个体,适应度函数得分越高,产生的个体越接近最优解。

将遗传算法用于引导率的参数选择,以carrot chase引导率为例,将参数δ作为遗传算法中的个体,用十进制的方式进行参数编码,随机生成一个初始种群。选择操作基于轮盘赌的思想,适应度值越大,该个体被选择为父代的概率越大。被选择为父代的个体将进行之后的交叉、变异以及精英选择操作。交叉则是随机选取两个父代个体,进行基因重组,对于十进制编码的个体,即以一个随机的权重,求得两个父代的加权和作为下一代个体。变异保证了遗传的多样性,对于十进制编码的个体,随机选取一个父代,使它的值随机上下浮动,产生的新个体作为下一代子代。为了使得遗传算法能更快的收敛,将会在每次迭代中选择最佳的个体作为精英个体,该精英个体直接保留到下一代中,该操作称之为精英选择。为了完成上述操作,最为关键的是定义一个适应度函数。我们定义了路径跟随评价指标作为适应度函数,以对结果进行定量的比较。

常用的路径跟随评价指标有航迹误差和控制效益。航迹误差是指无人机到路径的距离d,而控制效益则为式(2)、式(3)中的控制量u。综合考虑航迹误差和控制效益,参考文献[6],我们定义评价指标ξ为

(4)

(5)

(6)

Γ为权重,下文中选择为0.5。无人机是否回到路径上的判断准则为:若最后时刻无人机位置距离路径不超过1 m且此时航向角与路径方向差值不超过0.1弧度,则判定为回到路径上,否则,判定为未回到路径上。

由于路径跟随指标ξ越小说明路径跟随结果越佳,而遗传算法会选择适应度更高的个体,因此我们将适应度函数定义为

(7)

不同的参数δ将会计算出一条不同的路径,其航迹误差和控制效益也会有所差异,根据式(7)中的适应度函数,将会产生不同适应度值,在进行一定代数的选择、交叉、变异及精英选择操作后,输出一个最优的个体δ。整个过程见表1。

表1 总体框架

NLGL引导率的参数选择也与上述方法类似,只是将遗传算法的个体修改为参数L,其它步骤类似。

2.2 基于遗传算法的路径跟随

针对路径跟随算法中忽略引导率参数选择的问题,提出了一种基于遗传算法的引导率参数优化选择方法。方法流程如图4所示,首先将初始信息,包括路径点坐标,无人机飞行速度和方向以及选用的引导率传入遗传算法中,遗传算法根据适应度函数计算出一个最优的引导率参数,然后每隔一段时间获取无人机实时的位置信息和姿态信息(主要是航向角),输入到引导率中,计算出无人机应该调整的角度,控制无人机飞行,从而实现路径跟随。

图4 无人机路径跟随流程

3 实验结果与分析

3.1 实验平台

实验分2步进行,第一步计算路径跟随引导率最优参数,第二步,根据计算出的引导率和无人机路径跟随流程,编制软件,在大疆无人机上实现路径跟随。遗传算法计算最优参数基于Matlab实现,计算环境是在处理器为i5-4460,CPU为3.2 GHz的台式电脑和64位Windows系统。计算得到了最优参数后,实际的飞行测试是在大疆M100上实现的,大疆M100上搭载了Manifold开发板,作为路径跟随算法的运行软硬件平台,无人机的定位使用的是GPS。整个无人机平台如图5所示。

图5 无人机平台

3.2 实验结果与分析

本文选取了武汉大学学校操场的一条直线路径,如图6所示,用两个路径点来描述,以第一个路径点W1作为坐标原点,正北方向为Y轴正方向,正东方向为X轴正方向建立坐标系,则W1=(0,0),第二个路径点W2=(-30.0,192.1),无人机的初始坐标为Puav=(18.9,14.3),坐标点的单位为m,无人机速度设定为3 m/s,初始航向为0°,即朝着正北方向。路径跟随算法的控制周期会影响路径跟随的结果,周期设置短,会增大控制效益;周期设置过长,会使跟随结果呈折线状态,增加航迹误差。同时,控制周期的选取也要考虑无人机的速度,若无人机速度小,无人机位置变化慢,此时根据路径跟随算法计算所得的控制量u变化也就不大,过小的控制周期会导致计算资源浪费;相反的,速度较大时由于位置变化快则需要较短的控制周期。综合考虑两者影响,本文选取控制周期为1 s。然后分别在carrot chase和NIGL引导率下进行实验验证,结果如图7-图10所示。

图6 实验路径及无人机初始位置

图7 适应度变化曲线

图8 不同δ下无人机路径跟随结果

表2 不同δ下路径跟随结果评价

3.2.1 Carrot chase引导率

首先进行仿真确定最优的δ参数,迭代次数设置为100,遗传算法的适应度变化曲线如图7所示,算法到达40代左右时收敛,输出的最优参数为11.45,执行时间约为1 min。

然后分别选取δ为5,11.45,20和30进行实际飞行验证,飞行的轨迹如图8所示。

用式(4)中的指标ξ,对上述4条路径进行计算,结果见表2。

其中,δ为20和30时指标为1,这是因为此时无人机并未回到路径上,仍在路径上左右震荡。从表2中可以看出,基于遗传算法选择的最优参数,路径跟随的结果能够达到代价最小。

3.2.2 NLGL引导率

首先进行仿真确定最优的L参数,迭代次数设置为100,遗传算法的适应度变化曲线如图9所示,算法在20代左右收敛,输出的最优参数为18.44,执行时间约为1 min。

图9 适应度变化曲线

图10 不同L下无人机路径跟随结果

然后分别选取L为10,18.44,30,40进行实际飞行验证,飞行结果如图10所示。

用式(4)中的指标ξ,对上述4条路径进行计算,结果见表3。

从表3中可以看出,基于遗传算法选择的最优参数,路径跟随的结果能够达到代价最小。

表3 不同L下路径跟随结果评价

上述两个实验结果表明,在Carrot chase和NLGL(nonlinear guidance law)这两种引导率下,遗传算法均能够选择出一个最优参数;使用该最优参数能够使得评价指标ξ值最小,即路径跟随的代价最小。

4 结束语

本文针对传统路径跟随算法缺引导率参数优化选择的问题,基于遗传算法提出了一种引导率参数优化选择方法,构建了无人机自适应路径跟随系统。给定路径信息以及无人机初始位姿信息,能够计算出一个最优的引导率参数,用于引导无人机回到预设路径上。在大疆M100无人机平台上进行了实际飞行测试,实验结果表明,在carrot chase和NLGL两种引导率下,遗传算法选择的参数是最优的;且基于该参数实现的路径跟随代价最小。

猜你喜欢
航向适应度遗传算法
改进的自适应复制、交叉和突变遗传算法
风浪干扰条件下舰船航向保持非线性控制系统
知坐标,明航向
考虑几何限制的航向道模式设计
一种基于改进适应度的多机器人协作策略
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于干扰观测器的船舶系统航向Backstepping 控制
基于空调导风板成型工艺的Kriging模型适应度研究
软件发布规划的遗传算法实现与解释
基于改进的遗传算法的模糊聚类算法