APP下载

基于DDPG的无人机路径规划

2022-03-16李双霖高佩忻

兵器装备工程学报 2022年2期
关键词:威胁状态函数

李 琳,李双霖,高佩忻

(1.中国电子科技集团公司第二十研究所, 西安 710068; 2.西北工业大学 电子信息学院, 西安 710072)

1 引言

近年来,无人机(UAV)应用场景更加广泛。其不仅在农业、安保、搜索救援、地面勘探、物流等许多商业领域取得了不俗的成绩,而且在军事领域也大放异彩,出色地完成了许多有人驾驶飞机难以完成的任务。

传统无人机路径规划通常采用人工势场法、栅格法、遗传算法、动态贝叶斯网络等方法。但是,由于这些算法存在对复杂情况适应程度低、在线求解效率低、计算量大、甚至无法在线求解等问题,使得无人机路径规划的自主性大大降低,难以满足在军事领域无人机智能化的要求。

随着深度强化学习的快速发展,运用其快速求解无人机航路问题成为可能。本文基于深度强化学习,提出一种无人机路径规划算法。首先,建立了无人机运动模型和威胁模型;然后采用深度强化学习理论构建了无人机路径规划算法;最后,通过仿真验证了本文所提出算法的有效性。

2 无人机运动模型与威胁模型

不考虑无人机的形状大小等物理特性,将无人机简化为质点运动。无人机在二维空间的简化运动模型定义为:

(1)

主要考虑地面的雷达威胁和防空导弹威胁。

雷达威胁主要是指在无人机飞行时防空雷达对其造成的威胁程度。假设敌方防空雷达的探测角度是360°,为雷达最大探测距离,因此雷达威胁的数学模型为:

(2)

式(2)中,是无人机当前位置与雷达位置的相对距离。

导弹威胁主要是指无人机飞行时防空导弹对其造成的威胁程度。导弹威胁数学模型为:

(3)

式(3)中:是无人机当前位置与导弹位置的距离;为导弹所能攻击的最远距离;为不可逃逸半径。一旦无人机与导弹的距离小于,则无人机一定会被击中。

3 基于DDPG的无人机路径规划算法

3.1 DDPG算法模型

DDPG算法(deep deterministic policy gradient,DDPG)是深度确定性策略梯度算法。DDPG算法继承了DPG算法(deterministic policy gradient,DPG)的确定性策略,智能体根据状态决策输出确定性动作,并且DDPG采用深度神经网络,增强对决策函数的拟合能力。相比随机性策略,DDPG大大减少了采样数据量,提高了算法的效率,更有助于智能体在连续动作空间中进行学习。

DDPG算法采用Actor-Critic框架形式, 主要包含演员(actor)网络和评论家(critic)网络。Actor网络负责为无人机生成动作和环境交互,Critic网络负责评估状态和动作的表现,并指导策略函数生成下一阶段的动作。Actor和Critic均采用双网络结构,拥有各自的目标(target)网络和估计(eval)网络。DDPG的网络结构如图1所示。

图1 DDPG的网络结构示意图

图1中,Actor-eval网络主要负责策略网络参数的迭代更新,根据当前的状态来选择动作,在和环境交互过程中,生成下一时刻的状态′和执行当前动作产生的回报值。Actor-target网络负责根据经验池中采样下一状态′选择最优的下一时刻动作′。网络参数定期从Actor-eval 网络中的复制。Critic-eval网络主要是对网络参数的迭代更新,计算当前值(,,)和目标值=+′(′,′,),其中表示折扣因子,影响训练过程中未来奖励相对于当前奖励的重要程度。Critic-target网络中主要参数是从定期复制Critic-eval网络的参数得来的,主要负责计算目标值中的′(′,′,)。

设时刻,无人机的状态为,动作为。则:

1) Actor-eval网络输出实时的动作(|),被无人机执行,并与环境进行交互;

2) Critic-eval网络输出值(,|),用来判定当前状态-动作的价值;

3) Actor-target网络输出′(+1|),根据经验回放池中采样的下一状态+1最优的下一时刻动作′计算目标值;

4) Critic-target网络输出目标值′(+1,′(+1|)|),无人机从环境获得奖励用来计算目标值。

对DDPG算法相关基本概念定义如下:

1) 确定性动作策略:定义为一个函数,每一步的动作可以通过=()计算获得。

2) 策略网络:用一个神经网络对函数进行模拟,这个网络叫做策略网络,其参数为

3)函数:又叫performance objective,用来衡量一个策略的表现,针对off-policy学习的场景,定义函数为:

(4)

式(4)中:是基于agent的behavior策略产生的状态;是它的分布函数;(,())表示在不同的状态下,都按照策略选择action时,能够产生的值。即()是根据分布时(,())的期望值。

4) 策略梯度的定义:表示performance objective的函数针对的梯度。

5) 动作值函数:也称action-value函数。在状态下,采取动作后,且如果持续执行策略情况下,所获得的期望值,定义为:

(,)=[(,)+(+1,(+1))]

(5)

在RL训练过程中,为了探索潜在的更优策略,为action的决策机制引入随机噪声:将action的决策从一个确定性过程变为一个随机过程,再从这个随机过程中采样得到action,下达给环境执行,将这个策略叫做behavior策略,用来表示,这时RL的训练方式叫做异步策略(off-policy)。因为Uhlenbeck-Ornstein(UO)随机过程的随机噪声在时序上具备很好的相关性,可以使agent很好地探索环境,因此本文在DDPG中,使用Uhlenbeck-Ornstein(UO)随机过程进行训练。β策略如图2所示。

图2 β策略示意图

DDPG在进行网络训练过程中,只需要训练和更新Actor 和Critic中的eval网络参数,每隔一定时间后,再通过softupdate算法更新target网络的参数,更新过程如下:

(6)

式(6)中:为target网络参数;是eval网络参数;值一般取0001。

在计算更新Critic网络参数时,定义Critic网络的损失函数为均方误差 (MSE),即:

(7)

式(7)中,将定义为:

=+′(+1,′(+1|)|)

(8)

式(8)中:′是critic中target网络的参数;′是Actor中target网络的参数。可以将看作为“标签”,在训练时,通过back-propagation算法进行网络参数的更新。

在计算Actor的策略梯度时,采用off-policy的训练方法时,策略梯度为:

()[▽(,|)|=()·▽(|)]

(9)

策略梯度是根据分布时▽·▽的期望值。使用蒙特卡洛算法来估算▽·▽的值。在经验储存机构中存储的(transition)状态转移信息<,,,′>是基于agent的behavior策略产生的,它们的分布函数为。所以当从replay memory buffer中随机采样获得mini-batch数据时,根据蒙特卡罗方法,使用mini-batch数据代入上述策略梯度公式,可以作为对上述期望值的一个无偏估计 (un-biased estimate)。因此,策略梯度为:

(,)|=)

(10)

DDPG的算法伪代码表示为:

DDPG

Randomly initialize critic network(,|) and actor(,) with weightsand

Initialize target network′ and′ with weights,

Initialize replay buffer

episode=1,

Initialize a random processfor action exploration

Receive initial observation state

=1,

Select actionaccording to the current policy and exploration noise

Execute actionand observe rewardand observe new state+1

Store transition (,,,+1) in

Sample a random mini-batch oftransitions (,,,+1) from

Set=+′(+1,′(+1|)|)

:

:

(,)|=)

Update the target network:

3.2 无人机路径规划算法模型

无人机自身状态包含当前时刻的速度矢量(uav,,uav,)和在环境中的坐标位置(uav,,uav,)。环境状态包含了环境中个威胁区的坐标位置、威胁半径和目标的坐标位置。其中第个威胁区的坐标位置和威胁半径分别表示为(,,,)和,第个目标的坐标位置可以表示为(,,,)。

在DDPG算法中,无人机的状态包括了自身的状态和环境状态。无人机在时刻的状态定义为(uav,,uav,,uav,,uav,,,,,,,,,,)。

(11)

无人机的动作输出受到最小转弯半径的约束,如果不符合约束条件,则被视为不合理动作输出,需要进行重新选择。

无人机路径规划的奖励函数设计如下:

1) 规避威胁区奖励,当无人机进入威胁区后,会被给予一个负奖励。即=-1,<,其中为无人机与威胁区中心的距离,为威胁区的威胁半径。

2) 为了在开始训练时,能够准确地引导无人机的动作选择,并且让无人机每一步都拥有一个密集奖励,在这里设计了一个距离奖励,计算每一时刻无人机与目标的最近距离,以距离的负值作为奖励值,距离越近,奖励值越大。即=-,其中是无人机与目标的最近距离。最终无人机的奖励函数设计为:

=+

(12)

式(12)中,为距离奖励权重。

4 实验与分析

初始化仿真环境,包含无人机的初始位置、目标的位置和9个威胁区的分布情况。具体初始环境如图3所示。

图3 初始环境示意图

图3中红色三角形表示无人机初始化位置,红色圆形代表威胁区,紫色圆形代表目标位置。无人机需要规避威胁区并顺利到达目标位置。

图4为无人机训练时的奖励变化曲线。横坐标表示训练的回合数(episodes),纵坐标表示每一回合训练时无人机的累计奖励。由图4可以看出,随着训练次数的增多,奖励的绝对值减小,但是奖励逐渐增大,总体呈收敛趋势。

图5为DDPG算法经过训练后得到的无人机路径规划轨迹曲线。由图5可以看出,无人机在躲避了所有的威胁区的同时到达了目标区域。

图4 训练奖励变化曲线

图5 规划轨迹曲线

5 结论

进行了基于DDPG无人机路径规划问题的研究。阐述了DDPG算法的原理和特点,设计了无人机路径规划任务的奖励函数,并将DDPG算法和无人机路径规划问题相结合,构建了基于DDPG的无人机路径规划的算法模型。通过仿真实验证明,DDPG算法仅需200回合左右便可规避障碍,实现路径规划任务,具有较快的收敛速度和学习效率。

猜你喜欢

威胁状态函数
人类的威胁
智珠二则
生命的另一种状态
关于函数的一些补充知识
高中数学中二次函数应用举隅オ
无独有偶 曲径通幽
搞笑图片
“牛顿第一定律”练习