计算机系统应用  2023, Vol. 32 Issue (5): 36-44   PDF    
自适应斥力系数的无人机路径规划
曹馨文, 时宏伟     
四川大学 计算机学院(软件学院), 成都 610065
摘要:使用人工势场法进行无人机路径规划时, 往往存在目标不可达、运动轨迹迂回反复和路径长度过长等问题. 传统的人工势场法不能根据环境具体信息对斥力系数进行调整, 而现有的改进方法不能在自适应调整斥力系数的同时兼顾规划效果和规划时长. 针对以上问题, 提出了一种基于深度学习的无人机自适应斥力系数路径规划方法. 首先通过融合遗传算法与人工势场法找出在特定环境下最合适的斥力系数样本集, 其次利用该样本集训练残差神经网络, 最后通过残差神经网络计算适应环境的斥力系数, 进而使用人工势场法进行路径规划. 仿真实验表明, 该方法在一定程度上解决了人工势场法规划中目标不可达、运动轨迹迂回反复和路径长度过长等问题, 规划效果和规划时长方面均有优异表现, 能很好地满足无人机路径规划中对当前环境的自适应要求和快速规划的要求.
关键词: 无人机    路径规划    改进人工势场法    自适应斥力系数    遗传算法    深度学习    残差神经网络    
Path Planning of UAV Based on Adaptive Repulsion Coefficient
CAO Xin-Wen, SHI Hong-Wei     
College of Computer Science (College of Software Engineering), Sichuan University, Chengdu 610065, China
Abstract: When the artificial potential field method is employed for unmanned aerial vehicle (UAV) path planning, there are often some problems, such as unreachable targets, repeated motion trajectories, and large path lengths. The traditional artificial potential field method fails to adjust the repulsion coefficient according to the specific information of the environment, while the existing improved methods cannot take into account the planning effect and planning time while adaptively adjusting the repulsion coefficient. To solve the above problems, this study proposes a UAV path planning method based on the adaptive repulsion coefficient with the help of deep learning. Firstly, the most suitable repulsion coefficient sample set in a specific environment is found by integrating a genetic algorithm and the artificial potential field method. Secondly, a residual neural network is trained with the sample set. Finally, the repulsion coefficient adapted to the environment is calculated by the residual neural network, and then the artificial potential field method is used for path planning. Simulation experiments show that the proposed method solves the abovementioned problems in path planning with the artificial potential field method to a certain extent. It has excellent performance in planning effect and planning time and can well meet the requirements for current environment adaptation and rapid planning in UAV path planning.
Key words: unmanned aerial vehicle (UAV)     path planning (PP)     improved artificial potential field method     adaptive repulsion coefficient     genetic algorithm (GA)     deep learning (DL)     residual neural network (RNN)    

相较于有人机, 无人机(unmanned aerial vehicle, UAV)有着体积小、成本低、使用灵活、不会造成人员伤亡等优势. 随着航空技术与自动化技术的不断发展, 无人机在军事、农业、交通、公共管理等领域获得了广泛应用[1]. 比如, 泥石流、山体滑坡等自然灾害发生时, 可以利用无人机安全快速地进行灾情了解; 雾霾天气出现时, 可以利用携带了催化剂的无人机在空中进行喷洒从而清除雾霾; 在交通管制中, 无人机可以即时地发现突发事故, 实施紧急救援; 在军事上, 无人机极大地协作了侦察、目标捕获、情报探测等任务的完成. 随着无人机的应用场景不断从高空向低空拓展, 其飞行过程中遇到障碍物的可能性也大大增加. 路径规划(path planning, PP)是指规划出一条路径, 使无人机能够在一定约束条件下从起点出发, 在不碰到任何障碍物的情况下安全抵达终点, 同时使路程开销尽可能小. 因此, 路径规划是无人机顺利完成飞行任务中必不可少的环节.

路径规划问题一直是无人机自主飞行领域的研究热点, 很多科研人员已经在这方面做了大量工作. 根据其研究成果的不同主要分为基于航路规划算法的路径规划方法和基于局部防碰撞算法的路径规划方法[2, 3]. 基于航路规划算法的路径规划方法是一种全局的路径规划方法, 先规划好飞行路径, 再运用航路跟踪制导方法控制无人机沿规划航路飞行[3]. 现有研究包括杨明亮等人提出的改进A*和动态窗口法相结合的混合算法[4]、邹康格等人提出的基于自适应网格混合机制的多目标粒子群算法[5]、王硕等人研究的改进快速扩展随机树算法[6]以及吉根林研究的基于生物自然选择与遗传机理进行随机搜索的遗传算法(genetic algorithm, GA)[7]. 基于局部防碰撞算法的路径规划方法是一种局部路径规划方法, 不需要知道起始点和目标点的信息, 只需要对实时障碍进行躲避[3]. 这类方法包括Zheng等人在二维平面中通过模糊控制获得无人机避障所需的制导指令以避障[8], 王宏伟等人基于速度障碍法提出的同时调向与调速的混合避障策略[9]以及赵炳巍等人基于模拟退火算法在出现局部极小点的位置附近增设随机目标点来改进人工势场法(artificial potential field method, APFM) [10].

在实际应用中, 以人工势场法为代表的基于局部防碰撞的路径规划算法往往比基于航路的路径规划算法效果更好. 基于航路的规划算法在找出最优解的时候需要消耗较多的时间, 且不具有实时性, 只能在无人机飞行之前进行规划. 而以人工势场法为代表的基于局部防碰撞的路径规划算法不需要在无人机飞行之前花费大量时间进行预规划, 能够在飞行过程中根据无人机与障碍物的实时位置关系调节无人机的方向和速度. 人工势场法虽然有诸如目标不可达、运动轨迹迂回反复和路径长度过长等问题, 但其凭借着实时性的优势也得到了科研人员们的关注, 研究者们在改进人工势场法领域已做了很多工作. 如通过将相对距离引入到斥力势场函数中解决目标不可达问题[11]; 根据环境信息采取不同的虚拟目标点设置策略以逃离局部极小值点[12]; 采用分段的模拟退火算法进行优化从而解决路径过长的问题[13]. 但是这些改进方法中的斥力系数都是根据经验设定的并且是恒定不变的, 不能自适应环境的变化. 特别地, 甄然等人[14]提出了一种自适应控制的人工势场的无人机路径规划算法来根据环境改变斥力系数, 但是其对斥力系数的优化是通过人工一次次迭代的, 优化速度很慢且每次都需要人工计算, 不具有实际操作性.

针对以上分析, 本文提出一种基于深度学习(deep learning, DL)的无人机自适应斥力系数的路径规划方法.

图1所示, 本文融合了遗传算法、人工势场法、深度学习3种方法的优势, 首先将人工势场法和遗传算法相结合, 生成输入值为障碍物环境信息地图, 输出值为正前方、左方、右方、左前方和右前方5个方向斥力系数的样本集, 然后利用这些样本训练残差神经网络, 最后将残差神经网络与人工势场法相融合进行自适应障碍物环境信息的实时路径规划.

图 1 整体流程图

1 无人机路径规划问题描述 1.1 无人机动力学建模

假设无人机安装有探测装置和速度稳定性装置. 本文研究的是同一高度平面内无人机的飞行路径规划问题, 把无人机单位时间内的运动抽象成匀速直线运动, 把无人机看作是 ${W_{{\text{UAV}}}} \times {L_{{\text{UAV}}}}$ 的矩形, 其中 ${W_{{\text{UAV}}}}$ 表示无人机的宽度, ${L_{{\text{UAV}}}}$ 表示无人机的长度. 考虑到实际飞行情境, 无人机受到以下动力学约束:

$ \left\{\begin{array}{l}V\leqslant{\mathcal{V}}_{{\rm{max}}}\\ \gamma \leqslant{\gamma }_{{\rm{max}}}\\ \psi \leqslant{\psi }_{{\rm{max}}}\end{array}\right. $ (1)

其中, $\mathcal{V}$ $\gamma $ $\psi $ 分别为无人机某一时刻的速度、加速度和转向速度, ${\mathcal{V}_{{\rm{max}}}}$ ${\gamma _{{\rm{max}}}}$ ${\psi _{{\rm{max}}}}$ 分别为无人机的最大行驶速度、最大加速度和最大转向速度.

1.2 障碍物建模

通过高空全局遥感摄像头, 无人机可以在路径规划之前捕捉到相关规划路径上的障碍物环境信息地图. 本文通过将障碍物抽象成大小、位置随机的圆形来进行环境建模. 生成的仿真地图的障碍物满足如下约束:

$ \left\{\begin{array}{l}{r}_{{\rm{min}}}\leqslant r\leqslant {r}_{{\rm{max}}}\\ {n}_{{\rm{min}}}\leqslant n\leqslant {n}_{{\rm{max}}}\end{array}\right.$ (2)

其中, $r$ $n$ 表示障碍物的半径和数量, ${r_{{\rm{min}}}}$ ${r_{{\rm{max}}}}$ ${n_{{\rm{min}}}}$ ${n_{{\rm{max}}}}$ 分别代表障碍物的最小半径、最大半径以及障碍物的最小个数和最大个数. 为了提高环境地图的真实性和复杂性, 障碍物可以重叠. 随机生成的障碍物地图样例如图2所示.

图 2 随机生成的障碍物地图举例

同时假设无人机已安装传感器、摄像头等设备, 可以实时检测环境信息, 能为后续无人机需要在飞行过程中随时探测其正前方、左方、右方、左前方和右前方5个方向距障碍物的距离提供可能性.

2 人工势场法 2.1 传统人工势场法的基本原理

人工势场法是由Khatib在1985年首次提出的[15]. 该方法把无人机看作一个带正电荷的粒子, 把目标点视作带负电荷而产生负电势, 把障碍物视作带正电荷而产生正电势, 无人机在负电势产生的引力和正电势产生的斥力的共同作用下移动. 无人机的引力势场 ${U_{{\text{att}}}}$ 的表达式为:

$ \begin{array}{*{20}{c}} {{U_{{\text{att}}}} = \dfrac{1}{2}{k_{{\text{att}}}}{d^2}\left( {q, {q_{{\text{goal}}}}} \right)} \end{array} $ (3)

其中, ${k_{{\text{att}}}}$ 为引力系数, $d\left( {q, {q_{{\text{goal}}}}} \right)$ 为带正电荷的无人机 $q$ 到带负电荷的目标点 ${q_{{\text{goal}}}}$ 之间的距离. 无人机离目标点的距离越远, 引力势场越大, 距离越近, 引力势场越小, 引力势场随着无人机与目标点之间的距离二次增长. 根据引力势场表达式, 可得出引力大小 ${F_{{\text{att}}}}$ 为:

$ \begin{array}{*{20}{c}} {{F_{{\text{att}}}} = - \nabla {U_{{\text{att}}}} = {k_{{\text{att}}}}d\left( {q, {q_{{\text{goal}}}}} \right)} \end{array} $ (4)

可知, 引力大小 ${F_{{\text{att}}}}$ 与无人机和目标点之间的距离 $d\left( {q, {q_{{\text{goal}}}}} \right)$ 成正比. 无人机的斥力势场 ${U_{{\text{req}}}}$ 的表达式为:

$ \left\{\begin{array}{ll}{U}_{\text{rep}}={\left(\dfrac{1}{2}{k}_{\text{rep}}\dfrac{1}{d\left(q, {q}_{\text{obs}}\right)}-\dfrac{1}{{d}_{0}}\right)}^{2}, & d\left(q, {q}_{\text{obs}}\right)\leqslant {d}_{0}\\{U}_{\text{rep}}=0, & d\left(q, {q}_{\text{obs}}\right) > {d}_{0}\end{array}\right.$ (5)

其中, ${k_{{\text{rep}}}}$ 为斥力系数, $d\left( {q, {q_{{\text{obs}}}}} \right)$ 为带正电荷的无人机 $q$ 到带正电荷的障碍物 ${q_{{\text{obs}}}}$ 之间的距离, ${d_0}$ 为障碍物产生的斥力场可对无人机作用的距离范围. 与引力场对无人机的作用情况相反, 无人机离障碍物的距离越近, 斥力势场越大, 距离越远, 斥力势场越小. 根据斥力势场表达式, 可得出斥力大小 ${F_{{\text{rep}}}}$ 为:

$ \begin{array}{*{20}{c}} {{F_{{\text{rep}}}} = - \nabla {U_{{\text{rep}}}}} \end{array} $ (6)

则:

$ \left\{\begin{array}{ll}{F}_{\text{rep}}={k}_{\text{rep}}\left(\dfrac{1}{d\left(q, {q}_{\text{obs}}\right)}-\dfrac{1}{{d}_{0}}\right)\dfrac{1}{d\left(q, {q}_{\text{obs}}\right)}-\dfrac{q-{q}_{\text{obs}}}{d\left(q, {q}_{\text{obs}}\right)} , & \\ \qquad\qquad\quad d\left(q, {q}_{\text{obs}}\right)\leqslant {d}_{0}\\ {F}_{\text{rep}}=0,\qquad d\left(q, {q}_{\text{obs}}\right)\gt {d}_{0}\end{array}\right. $ (7)

无人机所受的合力为:

$ \begin{array}{*{20}{c}} {{F_{{\text{total}}}} = {F_{{\text{att}}}} + {F_{{\text{rep}}}}} \end{array} $ (8)

无人机受力情况如图3所示.

无人机正是这样在障碍物产生的斥力和目标点产生的引力的共同作用下运动的.

2.2 自适应斥力系数改进人工势场法

本文中, 基于人工势场法进行无人机路径规划的流程如图4所示.

图 3 无人机受力分析

图 4 人工势场法进行无人机路径规划流程图

首先初始化无人机的位置、方向、速度等, 然后计算无人机在正前方、左方、右方、左前方和右前方5个方向距障碍物的距离以及无人机距离目标点的方向和距离, 以此来求解引斥力势场和无人机受到的合力的大小和方向, 从而计算出无人机当下的速度和方向, 更新无人机的位置, 如此循环, 直到规划出无人机由起始位置到目标点的合理路径.

本文对人工势场法的改进是从自适应斥力系数上入手的, 我们把障碍物对无人机的斥力势场简化成从正前方、左方、右方、左前方和右前方5个方向对无人机的作用. 斥力势场受无人机离障碍物的距离、斥力系数和无人机当前的方向的影响, 其表达式为:

$ \left\{ \begin{array}{l}{U}_{\text{repFront}}={\left(\dfrac{1}{d{Front}}\right)}^{{k}_{\text{rep}1}} \times \left[\mathrm{sin}(\theta \right)\mathrm{cos}(\theta )]\\ {U}_{\text{repLeft}}={\left(\dfrac{1}{d{Left}}\right)}^{{k}_{\text{rep}2}} \times \left[\mathrm{sin}(\theta -{\text{π}} /2\right)\mathrm{cos}(\theta -{\text{π}} /2)]\\ {U}_{\text{repRight}}={\left(\dfrac{1}{d{Right}}\right)}^{{k}_{\text{rep}3}} \times \left[\mathrm{sin}(\theta +{\text{π}} /2\right)\mathrm{cos}(\theta +{\text{π}} /2)]\\ {U}_{\text{repFrontLeft}} = {\left(\dfrac{1}{d{FrontLeft}}\right)}^{{k}_{\text{rep}4}} \times \left[\mathrm{sin}(\theta - {\text{π}} /4\right)\mathrm{cos}(\theta - {\text{π}} /4) ]\\ {U}_{\text{repFrontRight}} = {\left(\dfrac{1}{{dFrontRight}}\right)}^{{k}_{\text{rep}5}} \times \left[\mathrm{sin}(\theta + {\text{π}} /4\right)\mathrm{cos}(\theta + {\text{π}} /4) ]\end{array}\right. $ (9)

有斥力合势场:

$ \begin{split} {U_{{\text{rep}}}} =& {U_{{\text{repFront}}}} + {U_{{\text{repLeft}}}} + {U_{{\text{repRight}}}} + {U_{{\text{repFrontLeft}}}}\\& + {U_{{\text{repFrontRight}}}} \end{split} $ (10)

其中, $dFront$ 是无人机距前方障碍物的距离, $dLeft$ 是无人机距左方障碍物的距离, $dRight$ 是无人机距右方障碍物的距离, $dFrontLeft$ 是无人机距左前方障碍物的距离, $dFrontRight$ 是无人机距右前方障碍物之间的距离, ${k_{{\rm{rep1}}}}$ 是无人机前方障碍物产生斥力的斥力系数, ${k_{{\rm{rep2}}}}$ 是无人机左方障碍物产生斥力的斥力系数, ${k_{{\rm{rep3}}}}$ 是无人机右方障碍物产生斥力的斥力系数, ${k_{{\rm{rep}}4}}$ 是无人机左前方障碍物产生斥力的斥力系数, ${k_{{\rm{rep5}}}}$ 是无人机右前方障碍物产生斥力的斥力系数, $\theta $ 是无人机当下的飞行方向.

3 基于遗传算法的样本生成

遗传算法是近年来路径规划领域研究最多、应用最广的智能算法, 是当今路径规划领域研究的主流, 极具发展前景[16]. 在传统的用遗传算法实现无人机路径规划的方法中, 采用的是将地图栅格化, 设置初始化种群, 将路径长度设为适应度函数, 从而在全局找出路径的一个局部最优解的方式. 本文借助遗传算法能够通过仿生物进化找出局部最优解的思想, 利用其找出实现路径局部最优解的斥力系数, 以生成后续深度学习的样本.

本文用遗传算法生成样本的过程主要由3部分组成: 一是编码与解码; 二是适应度函数的定义; 三是选择、交叉、变异遗传算子的设置. 遗传算法生成样本流程图如图5所示.

在遗传算法中, 个体的基因型和表现型之间的映射转换可通过编码和解码完成. 编码是指把解空间生成路径的斥力系数映射到遗传算法搜索空间的过程. 常见的编码方式有浮点数编码(floating point encoding, FPE)、二进制编码(binary encoding, BE)、格雷码编码(gray encoding, GE)等, 由于二进制编码的编码规则简单, 在交叉和变异阶段也易于实现, 本文选用二进制编码. 设5个方向斥力系数的取值范围是 $\left[ {D_1, D_2} \right]$ , 编码变量的二进制位数设为 $W$ , 则映射关系如表1所示.

图 5 遗传算法生成样本流程图

表 1 编码映射关系

表1中, $\delta = \dfrac{{{D_2} - {D_1}}}{{{2^W} - 1}}$ .

解码是指把搜索空间中个体的染色体向具体的路径规划中斥力系数的问题解转化的过程. 具体是把二进制编码映射成斥力系数的真实值, 映射过程不仅取决于二进制编码的值, 也依赖于斥力系数范围 $\left[ {D_1, D_2} \right]$ 和二进制编码位数 $W$ . 斥力系数解码过程为:

$ {K = {D_1} + \left( {\mathop \sum \nolimits_{i = 1}^W {b_i} \cdot {2^{i - 1}}} \right) \cdot \frac{{{D_2} - {D_1}}}{{{2^W} - 1}}} $ (11)

适应度函数是评估个体生存能力的指标. 本文中把规划出来的一条路径看成遗传算法中的一个个体, 适应度函数为路径的长度, 路径长度越短, 则表示个体的适应度越高, 个体的基因越容易传递下去.

选择、交叉和变异3个遗传算子是遗传算法的核心, 决定了遗传算法将按照怎样的规则模仿生物进化进行染色体的选择、重组和变异. 在上一代种群中按照一定的概率选择个体组成下一代, 被选中的概率由个体适应度决定, 常用的选择方法有轮盘赌方式(roulette wheel selection, RWS)、随机遍历采样方式(stochastic universal sampling, SUS)、适应度缩放选择(fitness scaling, FS)等, 随机遍历采样方式由轮盘赌方式改进而来, 更能避免选择偏差的存在, 因此本文用随机遍历采样方式来进行选择. 随机遍历采样方式采用多个选择点, 只旋转一次转盘即可选出全部的个体, 防止了适应度较高的个体被过多地反复选择, 给了适应度较低的个体被选择的机会, 选择的公平性得以保证.

交叉过程模仿生物染色体重组的过程. 从选择的种群中随机选择两个个体, 以一定规则将两个个体的染色体进行交换, 以期产生适应度更高的个体. 常见的交叉算子有多点交叉(multi-point crossover, MC)、均匀交叉(uniform crossover, UC)、算术交叉(arithmetic crossover, AC)等. 本文用到的是单点交叉(single point crossover, SPC)的方式, 即在被挑选出来的两个个体染色体上随机选择一个交叉点位, 在该位置切割染色体, 按照设定的交叉概率 ${P_c}$ 进行互换, 如图6所示.

图 6 染色体交叉过程

为进化出更优秀的个体, 避免遗传算法过早地陷入局部最优解, 遗传算法模仿生物进化中的基因突变设置了变异机制. 本文在二进制编码上采用单点变异(single point variation, SPV)的变异方式, 即遵循设定的变异概率 ${P_m}$ , 按位将二进制编码0变成编码1, 编码1变成编码0. 本文中二进制编码位数为5, 某次变异过程如图7所示.

图 7 按位变异过程

4 基于深度学习的残差神经网络训练

遗传算法找出局部最优路径的斥力系数的速度较慢, 为提高实际规划中的效率, 本文引入深度学习方法. 以随机产生的障碍物环境信息地图作为输入, 遗传算法计算出的无人机5个方向的斥力系数 ${k_{{\text{rep}}1}}$ ${k_{{\text{rep}}2}}$ ${k_{{\text{rep}}3}}$ ${k_{{\text{rep}}4}}$ ${k_{{\text{rep}}5}}$ 作为输出, 共同组成后续训练神经网络的样本, 遗传算法生成样本的示意图如图8所示.

图 8 遗传算法生成样本示意图

传统的利用神经网络进行图像特征提取的方法的输入, 是特定领域的专家设计的若干易于得到的特征. 这种方法中, 神经网络能学习的往往是专家已经掌握了的知识, 专家尚未掌握的知识无法输入到神经网络中供神经网络学习, 但专家未掌握的知识并不代表对输出结果没有影响, 神经网络在进行特征提取的时候并不能考虑到这部分影响因素. 卷积神经网络通过建立深度神经网络来模拟人脑分析、学习和解释数据的过程, 具有强大的表达能力和泛化能力, 能够更好地表示图像的深层次信息[17]. 理论上, 如果往浅层神经网络上堆叠网络结构, 即使新堆叠的结构不进行任何计算, 生成的网络效果也不会比浅层神经网络差, 神经网络的层数越深, 能够提取的特征越多越准确. 然而, 当神经网络的深度达到一定程度时, 会因为梯度消失或爆炸而产生退化现象, 导致较深网络的训练效果反而不如较浅网络的训练效果好. He等人通过构造残差网络结构来解决这一问题[18].

本文通过训练ResNet18模型来对障碍物地图进行学习, 以期直接通过分析障碍物环境信息地图, 找出自适应当前环境的斥力系数, 从而规划出更好的路径. 为符合本文中的应用场景, 将原始ResNet18模型的输入通道由3维转化为1维, 以符合本文中灰度图像的输入, 将最后的全连接层的输出改成5, 以符合对5个方向斥力系数的特征提取, 修改后的ResNet18模型结构如图9所示.

ResNet18由17个卷积层(Conv)和一个全连接层(FC)构成. 图中虚线表示特征图(feature map, FM)的数量发生了改变, 当特征图的大小降低一半时, 特征图的数量增加一倍, 以此保证了网络的复杂性. 为解决深层网络不如浅层网络效果好的问题, 在ResNet18中通过短路机制加入了残差单元, 由于ResNet18网络深度较浅, 每两个卷积层构成一个残差块, 残差块结构如图10所示.

图 9 ResNet18网络结构图

图 10 残差块结构图

把当前残差块 ${L_i}$ 的输出作为下一个残差块 ${L_{i + 1}}$ 的输入, 有:

$ \begin{array}{*{20}{c}} {{Y_i} = h\left( {{X_i}} \right) + F\left( {{X_i}, {W_i}} \right)} \end{array} $ (12)
$ \begin{array}{*{20}{c}} {{X_{i + 1}} = f\left( {{Y_i}} \right)} \end{array} $ (13)

其中, ${X_i}$ 是当前残差块的输入, $h\left( {{X_i}} \right)$ 表示 ${X_i}$ 的恒等映射, ${Y_i}$ ${X_i}$ 经过两层卷积层的输出, $F\left( {{X_i}, {W_i}} \right)$ 为其学习到的残差, $f\left( {{Y_i}} \right)$ ${Y_i}$ 经激活函数ReLU激活后的输出, ${X_{i + 1}}$ 是下一个残差块的输入. 短路机制不直接从 ${X_i}$ 学习得到 ${Y_i}$ , 而是只学习残差 $F\left( {{X_i}, {W_i}} \right)$ , 降低了学习成本. 在仅作数学推导时若忽略掉激活函数ReLU, 则从浅层 ${X_i}$ 到深层 ${X_{i + n}}$ 的学习过程为:

$ \begin{array}{c}{X}_{i+n}={X}_{i}+{{\displaystyle \sum }}_{j=1}^{i+n-1} F\left({X}_{j}, {W}_{j}\right)\end{array} $ (14)

借用链式规则, 可知此学习过程的反向传播中的梯度为:

$ {\frac{{{\alpha _{{\rm{Loss}}}}}}{{{\alpha _{{x_i}}}}} = \frac{{{\alpha _{{\rm{Loss}}}}}}{{{\alpha _{{x_{i + n}}}}}} \times \frac{{{\alpha _{{x_{i + n}}}}}}{{{\alpha _{{x_i}}}}} = \frac{{{\alpha _{{\rm{Loss}}}}}}{{{\alpha _{{x_{i + n}}}}}}\left( {1 + \frac{\alpha }{{{\alpha _{{x_i}}}}}\mathop \sum \nolimits_{j = i}^{i + n} F\left( {{X_j}, {W_j}} \right)} \right)} $ (15)

由式(15)可得, 一定不会存在梯度消失的情况. 在某个残差块的学习中, 最坏的情况是残差 $F\left( {{X_j}, {W_j}} \right) = 0$ , 即 ${Y_i} = h\left( {{X_i}} \right)$ , 数据通过两层卷积层仅做了恒等映射, 也能保证保留上一次学习到的特征.

经过大量实验和优化, 本文选用ReLU函数作为激活函数. 在寻找最优解的训练过程中, 损失函数采用平均平方误差(mean square error, MSE), 平均平方误差的计算方式为逐元素计算, 计算的是神经网络预测的斥力系数值 $\hat y$ 与样本中的斥力系数值 $y$ 之差的平方和的算术平均值, 公式为:

$ {{{\textit{MSE}}} = \frac{1}{N}\mathop \sum \nolimits_{i = 1}^n {{\left( {\hat y - y} \right)}^2}} $ (16)

优化器选用随机梯度下降(stochastic gradient descent, SGD), 对每个样本都迭代更新一次, 从而加快训练速度.

5 仿真实验

本文的仿真实验从两个角度来进行. 其一是比较默认斥力系数的方法和本文提出的方法规划出的路径在效果上的差异; 其二是比较直接用遗传算法优化斥力系数和用预先经离线训练好的神经网络来优化斥力系数在时间上的差异.

实验基于Matlab平台. 本文中在用遗传算法基于人工势场法生成样本时, 斥力系数满足 $ 2\leqslant {k}_{\text{rep}1}、{k}_{\text{rep}2}、{k}_{\text{rep}3}、{k}_{\text{rep}4}、{k}_{\text{rep}5}\leqslant 4 $ , 其中 ${k}_{\text{rep}1}、{k}_{\text{rep}2}、{k}_{\text{rep}3}、{k}_{\text{rep}4}、{k}_{\text{rep}5}$ 分别代表无人机正前方、左方、右方、左前方和右前方障碍物产生的斥力系数. 仿真实验中的其他参数如表2所示.

5.1 对比实验1

传统的人工势场法在规划路径时并不根据环境进行斥力系数的自适应调整, 这样规划得到的路径往往具有目标不可达、运动轨迹迂回反复和路径长度过长等缺陷. 本文的对比实验1对3000个样本分别用默认斥力系数和神经网络模型计算得到的斥力系数进行基于人工势场法的路径规划, 下面分别从目标不可达、运动轨迹迂回反复和路径长度过长3个角度来对实验结果进行对比分析.

(1)目标不可达问题

目标不可达问题是指无人机附近有障碍物时其受到的斥力增大, 在某种特定情况下会出现引斥力趋于平衡的情况, 从而导致无人机在小范围徘徊而无法到达终点的问题.

表 2 仿真实验中的参数设置

仿真实验中采用的环境障碍信息如图11所示, 路径规划过程中5个方向的斥力系数如表3所示.

图 11 目标不可达问题对比试验

表 3 目标不可达问题对比实验中斥力系数值

图11(a)是斥力系数设为默认值时经人工势场法规划得到的路径, 由轨迹图可知, 无人机在某一点出现了受到的引斥力趋于平衡的情况, 以至于无人机徘徊不前, 路径规划失败. 图11(b)是斥力系数自适应环境时经人工势场法规划得到的路径, 由轨迹可知, 无人机轨迹较为顺畅, 从起始点安全地到达目标点, 克服了目标不可达的问题.

(2)运动轨迹迂回反复问题

运动轨迹迂回反复问题是指无人机在比较狭窄的空间中, 受到障碍物产生的斥力较大, 而产生运动轨迹迂回反复的现象.

仿真实验中采用的环境障碍信息如图12所示, 路径规划过程中5个方向的斥力系数如表4所示.

图 12 运动轨迹迂回反复问题对比实验

表 4 运动轨迹迂回反复问题对比实验中斥力系数值

图12(a)是斥力系数设为默认值时人工势场法规划得到的路径, 由轨迹图可知, 无人机在某一点出现了受到障碍物斥力太强而导致运动轨迹迂回反复, 最终无人机从起点到终点的规划路径长度为2 067.696. 图12(b)是斥力系数自适应环境时经人工势场法规划得到的路径, 由轨迹可知, 无人机顺畅地通过了狭窄路径, 从起点到终点的规划路径长度为780.1314, 比图12(a)中的路径优化了1287.5646, 克服了运动轨迹迂回反复的问题.

(3)路径长度过长问题

路径长度过长问题是指无人机在面对道路狭窄等复杂路况时为避免碰撞而选择更远的道路, 以保证无人机能够顺利完成路径规划, 使得规划路径过长, 导致无人机硬件以及能源的多余消耗.

仿真实验中采用的环境障碍信息如图13所示, 路径规划过程中5个方向的斥力系数如表5所示.

图13(a)是斥力系数设为默认值时人工势场法规划得到的路径, 由轨迹可知, 无人机没有选择两个障碍物之间的狭窄路径, 而是选择绕行, 最终无人机从起点到终点的规划路径长度为864.954 1. 图13(b)是斥力系数自适应环境时经人工势场法规划得到的路径, 由轨迹可知, 无人机选择了两个障碍物之间的狭窄路径, 从起点到终点的规划路径长度为784.0148, 比图13(a)中的路径优化了80.9393, 克服了路径长度过长的问题.

图 13 路径长度过长问题对比实验

表 5 路径长度过长问题对比实验中斥力系数值

本文在一定限制条件下随机生成了3000个环境障碍地图, 并进行默认斥力系数和自适应斥力系数的对比试验. 实验得出, 后者规划出的路径平均每个要比前者规划出的路径长度减少99.9419, 优化了平均总路径长度的3.6702%. 综上所述, 本文通过经离线训练好的神经网络计算得到自适应环境的斥力系数后, 再结合人工势场法进行路径规划, 在一定程度上解决了目标不可达、运动轨迹迂回反复和路径长度过长的问题.

5.2 对比实验2

用遗传算法找出自适应环境的斥力系数值进行路径规划可以取得很好的效果, 但由于遗传算法本身随机搜索的特性, 计算时间往往过长. 对比实验2旨在把用遗传算法计算斥力系数和用训练好的神经网络计算斥力系数两种方法的计算用时进行对比.

实验选取的环境障碍物信息如图14所示, 3幅子图分别对应实验编号(1)–(3), 实验结果如表6所示.

图 14 对比实验2中环境障碍物地图

表 6 两种方法计算斥力系数用时对比 (s)

实验得出, 本文提出的用预先离线训练好的神经网络优化斥力系数比直接用遗传算法优化斥力系数快了14984.92倍.

由对比实验1和对比实验2综合得出, 自适应斥力系数下规划得到的路径比默认斥力系数下规划得到的路径在长度上减少了99.9419, 优化了平均总路径长度的3.6702%; 用预先离线训练好的神经网络优化斥力系数比直接用遗传算法优化斥力系数快了14984.92倍. 综上所述, 本文提出的方法规划出的路径的质量和计算斥力系数的用时比之其他方法都有显著优势.

6 结论

传统人工势场法进行无人机路径规划时, 不能根据所处环境对斥力系数进行自适应调整, 而现有的改进方法尚无法在自适应调整斥力系数的同时兼顾规划效果和规划用时. 针对此问题, 本文提出了一种基于深度学习的无人机自适应斥力系数的路径规划方法, 并在理论分析的基础上进行了相关仿真实验验证, 得到的主要结论如下.

(1)为提高人工势场法规划性能, 提出了不使用默认斥力系数而让斥力系数自适应当前障碍物环境的方法.

(2)为找出更适合特定环境的斥力系数, 提出了用遗传算法计算斥力系数的想法.

(3)为解决遗传算法计算斥力系数时用时过长的问题, 提出了离线训练残差神经网络, 实际规划中直接用训练好的残差神经网络计算斥力系数的方法.

仿真结果表明本文提出的方法不仅规划出的路径优于传统默认斥力系数下的人工势场法规划出的路径, 而且规划用时也少于直接用遗传算法计算斥力系数的方法. 故本文提出的方法具有一定的进步性.

参考文献
[1]
张宏宏, 甘旭升, 毛亿, 等. 无人机避障算法综述. 航空兵器, 2021, 28(5): 53-63. DOI:10.12132/ISSN.1673-5048.2021.0006
[2]
Mujumdar A, Padhi R. Evolving philosophies on autonomous obstacle/collision avoidance of unmanned aerial vehicles. Journal of Aerospace Computing, Information, and Communication, 2011, 8(2): 17-41. DOI:10.2514/1.49985
[3]
刘玄冰, 周绍磊, 肖支才, 等. 无人机避障方法研究综述. 兵器装备工程学报, 2022, 43(3): 40-47. DOI:10.11809/bqzbgcxb2022.05.008
[4]
杨明亮, 李宁. 改进A*算法的移动机器人路径规划. 机械科学与技术, 2022, 41(5): 795-800.
[5]
邹康格, 刘衍民. 基于自适应网格混合机制的多目标粒子群算法. 重庆工商大学学报(自然科学版), 2022, 39(2): 14-23. DOI:10.16055/j.issn.1672-058X.2022.0002.003
[6]
王硕, 段蓉凯, 廖与禾. 机器人路径规划中快速扩展随机树算法的改进研究. 西安交通大学学报, 2022, 56(7): 1-8. DOI:10.7652/xjtuxb202207001
[7]
吉根林. 遗传算法研究综述. 计算机应用与软件, 2004(2): 69-73. DOI:10.3969/j.issn.1000-386X.2004.02.032
[8]
Zheng JA, Liu B, Meng ZJ, et al. Integrated real time obstacle avoidance algorithm based on fuzzy logic and L1 control algorithm for unmanned helicopter. 第30届中国控制与决策会议论文集(2). 沈阳: 《控制与决策》编辑部, 2018. 468–473.
[9]
王宏伟, 甘旭升, 韦刚, 等. 针对动态障碍物的无人机最优避撞策略. 电光与控制, 2022, 29(3): 33-37. DOI:10.3969/j.issn.1671-637X.2022.03.007
[10]
赵炳巍, 贾峰, 曹岩, 等. 基于模拟退火算法的人工势场法路径规划研究. 计算机工程与科学, 2022, 44(4): 746-752. DOI:10.3969/j.issn.1007-130X.2022.04.020
[11]
涂柯, 侯宏录, 苏炜. 改进人工势场法的无人机避障路径规划. 西安工业大学学报, 2022, 42(2): 170-177. DOI:10.16185/j.jxatu.edu.cn.2022.02.304
[12]
王兵, 吴洪亮, 牛新征. 基于改进势场法的机器人路径规划. 计算机科学, 2022, 49(7): 196-203. DOI:10.11896/jsjkx.210500020
[13]
林洁, 张志安. 改进人工势场法的路径规划研究. 机械与电子, 2022, 40(3): 65-70, 75. DOI:10.3969/j.issn.1001-2257.2022.03.014
[14]
甄然, 甄士博, 吴学礼. 一种自适应控制的人工势场的无人机路径规划算法. 无线电工程, 2017, 47(5): 54-57. DOI:10.3969/j.issn.1003-3106.2017.05.13
[15]
Khatib O. Real-time obstacle avoidance for manipulators and mobile robots. Proceedings of the 1985 IEEE International Conference on Robotics and Automation. Saint Louis: IEEE, 2003. 500–505.
[16]
李少波, 宋启松, 李志昂, 等. 遗传算法在机器人路径规划中的研究综述. 科学技术与工程, 2020, 20(2): 423-431. DOI:10.3969/j.issn.1671-1815.2020.02.001
[17]
盖荣丽, 蔡建荣, 王诗宇, 等. 卷积神经网络在图像识别中的应用研究综述. 小型微型计算机系统, 2021, 42(9): 1980-1984. DOI:10.3969/j.issn.1000-1220.2021.09.030
[18]
He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 770–778.