基于分层强化学习的无人机路径规划方法

专利2023-02-01  164



1.本发明涉及无人机路径规划技术领域,具体涉及一种基于分层强化学习的无人机路径规划方法。


背景技术:

2.近年来无人机在军用、民用的许多领域的广泛应用,使得对其具有自主化的需求更加强烈,其中无人机自主路径规划又是研究的重点。现阶段无人机路径规划的研究,大多集中在静态环境中的路径规划,对于动态环境研究比较少。目前在路径规划的诸方法中,强化学习因其独特的奖惩机制,并通过与环境交互自主学习最优策略的特点,成为路径规划的热点方法。作为强化学习最经典算法的q学习(q-learning)被广泛的应用于无人机的路径规划问题。但q学习因其表格学习的特质无法适用于环境复杂或是状态空间维度大的场景。所以结合深度学习的深度强化学习被提出并应用于各种复杂的无人机路径规划问题中,这其中应用最广泛的就是深度q网络(dqn)算法。
3.然而,本发明发明人在实现基于深度q网络算法的无人机动态路径规划问题中发现,强化学习算法因采用随机选择动作的探索策略,会导致训练初期的效率低下、迭代次数过长且规划的路径并非最优。这种情况在动态、静态障碍物并存的复杂环境更加的严重。此外,还发现单个深度q网络算法在面对动态环境时,由于动态障碍物的位置不固定,导致其训练过程中网络的拟合不好,也就导致最终训练出的网络性能不好。
4.可见,现有技术中存在训练效率低与网络拟合易受影响的技术问题。


技术实现要素:

5.本发明提供了一种基于分层强化学习的无人机路径规划方法,以解决现有技术中训练效率低与网络拟合易受影响的问题。
6.本发明提供了一种基于分层强化学习的无人机路径规划方法,包括如下步骤:
7.步骤1:初始化深度q网络算法、q学习算法;
8.步骤2:驱动无人机从起始点移动至目标点,对深度q网络算法、q学习算法进行训练;
9.移动过程中当无人机未检测到动态障碍物时,则使用深度q网络算法对路径进行规划;
10.移动过程中当无人机检测到动态障碍物时,则使用q学习算法对路径进行规划;
11.步骤3:重复步骤2直至深度q网络算法、q学习算法训练完成,设置无人机实际坐标、起点坐标、目标点坐标,通过训练完成的深度q网络算法、q学习算法对路径进行规划。
12.进一步地,当无人机未检测到动态障碍物,深度q网络算法对路径进行规划后,还包括通过当前规划路径后深度q网络算法中产生的经验元组对q学习算法进行更新。此时,更新深度q网络算法使用的奖励函数与其正常更新的保持一致;
13.当无人机检测到动态障碍物,q学习算法对路径进行规划后,还包括通过当前规划
路径后q学习算法中产生的经验元组对深度q网络算法进行更新。
14.进一步地,通过当前规划路径后深度q网络算法中产生的经验元组对q学习算法进行更新时,q学习算法使用的奖励函数公式如下:
15.reward=η(d
s-1-ds)
16.其中,η为常数;d
s-1
为上一时刻无人机离目标点的距离;ds为当前时刻无人机离目标点的距离。
17.进一步地,所述步骤2中,在深度q网络算法、q学习算法对路径进行规划之前,还包括:通过启发式鱼算法作为深度q网络算法、q学习算法在路径规划中的动作指导;其中,所述启发式鱼算法包括:行进行为过程、觅食行为过程,其中,行进行为过程为获取无人机会与周围障碍物碰撞的方向;觅食行为过程为获取无人机朝向目标点行进的数个优先级高的方向,启发式鱼算法在数个优先级高的方向中去掉碰撞方向作为动作指导。
18.进一步地,在获取无人机会与周围障碍物碰撞的方向时,且当障碍物为动态时,通过障碍物的运动方向和运动速度判断无人机是否会与障碍物发生碰撞。
19.本发明的有益效果:
20.本发明通过在基础的深度q网络算法和q学习算法的动作选择策略中加入了启发式鱼算法的动作指导策略。在快速到达目标点和动静态障碍物的躲避两个方面上进行动作指导,这种动作指导在算法训练的初期大大减少不必要的探索从而降低原始算法探索的盲目性。
21.本发明利用分层强化学习,在面对动态的复杂环境时,使用两种算法分别处理静态和动态障碍物。这种设计克服单个算法应用于动态环境时,存在的网络拟合易受动态障碍物影响的问题,提升了算法路径规划的性能。
22.上述两种效果分别解决了现有技术中算法训练效率低,规划路径缺乏安全性考虑的问题。
附图说明
23.通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
24.图1为本发明具体实施例的流程示意图;
25.图2为本发明具体实施例所描述无人机传感器在环境中的探测示意图;
26.图3为本发明具体实施例启发式鱼算法流程示意图;
27.图4为本发明具体实施例所描述启发式鱼算法的觅食行为某一种情况的示意图;
28.图5为本发明具体实施例所描述启发式鱼算法的行进行为某一种情况的示意图。
具体实施方式
29.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
30.本发明实施例提供一种基于分层强化学习的无人机路径规划方法,本方法流程结
构如图1所示,包括如下步骤:
31.步骤1:初始化深度q网络算法的网络参数θ,经验回放区以及q学习的q表格;初始化训练回合数n
episode
,设定无人机飞行任务的起点po和目标点p
t

32.步骤2:当训练回合数小于设定的最大回合数时,重置状态和环境,开始本次回合的训练。根据传感器探测环境,并判断探测范围内是否有动态障碍物,传感器探测范围如图2所示;
33.移动过程中当无人机未检测到动态障碍物时,则使用深度q网络算法对路径进行规划;
34.深度q网络算法根据无人机当前的位置以及静态障碍物的位置信息,利用启发式鱼算法作为算法的动作指导选择动作并执行,然后到达下一状态。对于当前动作的奖励可由奖励函数得到,本发明实施例将静态路径规划部分奖励函数设置为:
[0035][0036]
α,β为常数,决定了两个奖励计算单元在总奖励函数的权重。根据实验调试,本实例将α,β分别设置为1.1,2。ds表示上一个状态中无人机与目标点的距离;d
s-1
表示下一个状态中无人机与目标点之间的距离。为无人机到各个静态障碍物的距离。
[0037]
将本次交互得到的由当前状态、动作、奖励和下一状态四部分构成的经验元组[s,a,r,s

]存放至经验回放区中。然后算法按照设定好的批次数m从经验回放区中采样数据来对深度q网络算法的q网络进行更新。
[0038]
同时,在深度q网络算法和q学习算法在切换使用时,如果一方完全脱离另一方停止工作,会导致两个算法训练完成后,会存在部分状态动作对的q值缺失。为了避免这一问题,在深度q网络算法工作时,也要利用其在上一步中交互产生的经验元组对q学习算法的q表进行更新,此时,由于q学习算法在非工作时期无人机传感器范围内没有动态障碍物,故将奖励函数定义为:
[0039]
reward=η(d
s-1-ds)
[0040]
最后,如果无人机这一次采取的动作导致了碰撞,就结束并开始新的训练回合;如果没有导致碰撞,则继续当前回合的训练。
[0041]
移动过程中当无人机检测到动态障碍物时,则使用q学习算法对路径进行规划;
[0042]
q学习算法根据无人机当前位置以及检测到的动态障碍物的信息,利用启发式鱼算法作为算法的动作指导选择动作并执行,到达下一状态。对于动态路径规划部分的奖励函数,本发明实施例将其设置为:
[0043][0044]
γ,δ为权重常数,根据实验调试,本实例将γ,δ的分别设置为1.1,1;d
′u→
t
,du→
t
分别表示上一时刻和当前时刻无人机与目标点的距离;d
′u→o,du→o分别表示上一时刻和当前时刻无人机离所躲避的动态障碍物的距离。
[0045]
然后,根据本次交互得到的信息元组[s,a,r,s

],对q学习算法的q表进行更新。
[0046]
同样,利用上一步交互得到的经验元组,对深度q网络算法的网络进行更新。此时,
奖励函数与深度q网络算法实际进行静态路径规划时的奖励函数保持一致。
[0047]
最后,如果无人机这一次采取的动作导致了碰撞,就结束并开始新的训练回合;如果没有导致碰撞,则继续当前回合的训练。
[0048]
步骤3:重复步骤2,若无人机到达目标点就结束当前回合;如果无人机当前的训练回合数达到设置的最大回合数n
episode
,则深度q网络算法、q学习算法训练完成。此时,设置无人机实际坐标、起点坐标、目标点坐标,通过训练完成的深度q网络算法、q学习算法对路径进行规划。
[0049]
步骤2中,在深度q网络算法、q学习算法对路径进行规划之前,还包括:通过启发式鱼算法作为深度q网络算法、q学习算法在路径规划中的动作指导;其中,启发式鱼算法是受自然界中鱼能够在黑暗环境利用侧线器官进行觅食这一现象所启发,算法包括:行进行为过程、觅食行为过程,其中,行进行为过程为获取无人机会与周围障碍物碰撞的方向;觅食行为过程为获取无人机朝向目标点行进的数个优先级高的方向,启发式鱼算法在数个优先级高的方向中去掉碰撞方向作为动作指导。本算法流程如图3所示,包括如下步骤:
[0050]
步骤21:当深度q网络算法或是q学习算法调用启发式鱼算法选择动作时,将当前状态、目标点位置、以及包含动、静态障碍物的信息输入启发式鱼算法。本发明采用的实验环境为栅格环境,无人机可采取八个方向上的动作,启发式鱼算法负责从其中选出当前状态下的最优动作。
[0051]
步骤22:觅食行为根据当前状态以及目标点位置,计算可选动作集合,如图4所示。设无人机当前位置和目标点构成的方向向量为lu→
t
,l
horizontal
为无人机forward方向的一个单位向量,则两向量的夹角为:
[0052][0053]
其次,l
action
,action∈a分别为动作空间某动作上的一个单位方向向量,各动作与l
horizontal
之间的夹角为:
[0054][0055]
则θ
t
与各个θ
action
的差值为:
[0056][0057]
最后,根据差值从小到大赋予各动作从高到低的优先级,并返回优先级前五的动作集合。
[0058]
步骤23:行进行为根据当前状态以及动、静态障碍物信息,计算不会导致碰撞的可选动作集合,如图5所示,灰色方块表示静态障碍物,斜线方块表示动态障碍物。
[0059]
对于静态障碍物的躲避,就利用静态障碍物的位置信息,当无人机执行某一动作会进入静态障碍物的区域,就将此动作设置为当前状态的禁止动作,并返回可用动作。
[0060]
对于动态障碍物的躲避,根据传感器探测得到的动态障碍物的信息集合[speed,direction,position],预测该动态障碍物下一时刻的威胁区域,当无人机执行某一动作会进入此威胁区域,就将此动作设置为当前状态的禁止动作,并返回可用动作。
[0061]
步骤24:综合步骤22、步骤23返回的动作,向深度q网络算法或是q学习返回数个有高优先级且不会导致碰撞的动作。本次调用结束。
[0062]
以模拟方式对具体实施例过程进行举例,具体如下:
[0063]
例1:分层强化学习
[0064]
步骤1:初始化深度q网络算法的网络参数,经验回放区大小为1000000;初始化q学习算法的q表格。设置训练总回合数为500回合,无人机飞行任务的起点po=[0,0]和目标点p
t
=[29,29];
[0065]
步骤2:设置传感器探测范围为3,如图2所示。
[0066]
若无人机当前探测范围内没有动态障碍物就调用深度q算法进行静态路径规划,然后算法调用启发式鱼算法进行动作选择。无人机执行选取的动作进入下一状态,同时获得执行这一动作的奖励。算法将经验元组存放至经验回放区。同时从经验回放去中按照设定好的批次m=16采样信息进行网络参数的更新,并利用此经验元组更新q学习算法的q表。
[0067]
若探测范围内存在动态障碍物如图2情况,则调用q学习算法进行动态路径规划。同样调用启发式鱼算法选择动作,然后无人机执行选取的动作进入下一状态并获得此动作的奖励。最后q学习算法利用经验元组更新q表格,同时,利用经验元组更新深度q网络算法的网络。
[0068]
步骤3:无人机与环境交互过程中不断循环:检测动态障碍物

切换算法

选择动作

执行动作

计算奖励

更新q网络/q表格,直至与障碍物发生碰撞或是到达目标点,就结束当前回合。当总训练回合数到达设定的n
episode
时,结束整个训练。
[0069]
例2:启发式鱼算法
[0070]
步骤1:启发式被深度q网络算法或是q学习算法调用,并输入包含当前状态,目标点位置,以及包含动、静态障碍物的信息。启发式算法分别执行觅食、行进行为选择可用动作集合。
[0071]
步骤2:觅食行为根据当前状态以及目标点位置,计算θ
t
,θ
action
,再计算θ
t
与各个θ
action
的差值,然后根据此差值赋予八个动作不同优先级,并返回优先级前五的动作。请参考图4,这种情况下返回的优先级动作集合为[左前,前,左,右前,左后]。
[0072]
步骤3:行进行为根据静态、动态障碍物的信息,返回不会导致碰撞的动作。对于静态障碍物,因其位置固定,就禁止选择进入该区域的动作;对于动态障碍物,利用集合[speed,direction,position],预测下一时刻此障碍物的位置,然后禁止选择进入该区域的动作。如图5所示的一种行进行为的场景,灰色方框为静态障碍物,斜线为动态障碍物,动态障碍物的信息为[1,左,当前位置],故其下一时刻为图中所标注区域。最后去掉会导致碰撞的动作[左,右后],则剩余6个动作为可选动作。
[0073]
步骤4:综合步骤2、步骤3返回的动作,返回可选动作集合为[左前,前,右前,左后],本次调用结束。
[0074]
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

技术特征:
1.一种基于分层强化学习的无人机路径规划方法,其特征在于,包括如下步骤:步骤1:初始化深度q网络算法、q学习算法;步骤2:驱动无人机从起始点移动至目标点,对深度q网络算法、q学习算法进行训练;移动过程中当无人机未检测到动态障碍物时,则使用深度q网络算法对路径进行规划;移动过程中当无人机检测到动态障碍物时,则使用q学习算法对路径进行规划;步骤3:重复步骤2直至深度q网络算法、q学习算法训练完成,设置无人机实际坐标、起点坐标、目标点坐标,通过训练完成的深度q网络算法、q学习算法对路径进行规划。2.如权利要求1所述的基于分层强化学习的无人机路径规划方法,其特征在于,当无人机未检测到动态障碍物,深度q网络算法对路径进行规划后,还包括通过当前规划路径后深度q网络算法中产生的经验元组对q学习算法进行更新;当无人机检测到动态障碍物,q学习算法对路径进行规划后,还包括通过当前规划路径后q学习算法中产生的经验元组对深度q网络算法进行更新。3.如权利要求2所述的基于分层强化学习的无人机路径规划方法,其特征在于,通过当前规划路径后深度q网络算法中产生的经验元组对q学习算法进行更新时,q学习算法使用的奖励函数公式如下:reward=η(d
s-1-d
s
)其中,η为常数;d
s-1
为上一时刻无人机离目标点的距离;d
s
为当前时刻无人机离目标点的距离。4.如权利要求1所述的基于分层强化学习的无人机路径规划方法,其特征在于,所述步骤2中,在深度q网络算法、q学习算法对路径进行规划之前,还包括:通过启发式鱼算法作为深度q网络算法、q学习算法在路径规划中的动作指导;其中,所述启发式鱼算法包括:行进行为过程、觅食行为过程,其中,行进行为过程为获取无人机会与周围障碍物碰撞的方向;觅食行为过程为获取无人机朝向目标点行进的数个优先级高的方向,启发式鱼算法在数个优先级高的方向中去掉碰撞方向作为动作指导。5.如权利要求4所述的基于分层强化学习的无人机路径规划方法,其特征在于,在获取无人机会与周围障碍物碰撞的方向时,且当障碍物为动态时,通过障碍物的运动方向和运动速度判断无人机是否会与障碍物发生碰撞。

技术总结
本发明公开了基于分层强化学习的无人机路径规划方法,包括:步骤1:初始化深度Q网络算法、Q学习算法;步骤2:驱动无人机从起始点移动至目标点,对深度Q网络算法、Q学习算法进行训练;移动过程中当无人机未检测到动态障碍物时,则使用深度Q网络算法对路径进行规划;移动过程中当无人机检测到动态障碍物时,则使用Q学习算法对路径进行规划;步骤3:重复步骤2直至深度Q网络算法、Q学习算法训练完成,设置无人机实际坐标、起点坐标、目标点坐标,通过训练完成的深度Q网络算法、Q学习算法对路径进行规划。本发明克服单个算法应用于动态环境时,存在的网络拟合易受动态障碍物影响的问题,提升了算法路径规划的性能。了算法路径规划的性能。了算法路径规划的性能。


技术研发人员:王琦 潘德民 王栋 高尚 于化龙 崔弘杨
受保护的技术使用者:江苏科技大学
技术研发日:2022.07.26
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-534.html

最新回复(0)