
图5 多无人机场景
Fig. 5 Scenario of multiple UAVs
it取正,在无人机右侧则取为负。
无人机状态输入是大小为13 的向量,如下

3.2 动作空间
固定翼无人机的机动决策是通过选择合适的加速度和角速度然后执行 TΔ 时间,达到无人机的期望速度和期望航向角。如公式(1),无人机i 的控制输入为一个二维向量,即动作空间

式中, ia 表示无人机i 的加速度, iω 表示无人机i的角速度,满足约束公式(2)。
其具体的速度大小范围设定参照CW-10 型号的固定翼无人机,设定为[10 m/s, 20 m/s]。
3.3 状态转移函数
无人机根据当前状态,决策出机动动作后,环境的状态将会发生改变,变为下一时刻状态。环境的状态就是无人机与目标点、障碍物之间的关系,包括位置和速度信息,因此状态转移函数就是无人机的运动状态转移方程,即

3.4 奖励函数
为了提高样本效率,加快收敛学习速度,本文奖励函数的设计采用稀疏奖励[16-17]和引导型回报函数相结合的方式。
设计到达奖励 rarrive,当无人机与目标点的距离小于阈值 dgoal ,即认为到达目标点,给予一个正向奖励。设计碰撞惩罚 rc ollision ,当雷达探测反馈的最小距离小于安全阈值时,则认为无人机在环境中发生碰撞,给予碰撞行为负面惩罚。设计危险惩罚 rdanger,当无人机靠近障碍物时给予惩罚

对于每架无人机而言,环境中存在“移动障碍物”,环境不是特别稳定,所以训练的难度和不稳定性会增强。为了实现全局的目标,每架无人机的奖励函数中应加入与整体任务完成情况相关的奖惩指标。
此外,即使每架无人机自身不动,在未得到最优策略时,别的无人机也有几率迎面撞上来,或者出现双方速度过快来不及反应就发生碰撞的情况,因此多无人机系统的避障难度和要求相比于单无人机系统会更高。为了加强无人机避障能力的训练,本文设置每回合的重置机制如下:
(1)单架无人机到达其指定目标点后,环境不会被重置,因为其他无人机仍未完成任务。在所有无人机都完成任务之前,该架无人机将持续使用其完成任务时刻的状态作为网络输入,以主动增加顺利到达目标点的数据样本供其他无人机学习。只有全部无人机均完成任务,才能将本次回合视为一个成功回合。
(2)为了实现全局任务,每架无人机的单步奖励函数被设计为所有无人机与其目标点之间的距离相关的函数 ,分别表示所有无人机相邻两个时刻与目标点距离、航向角的差值。
每回合结束情形如图6 所示。

图6 多无人机场景训练回合结束情形
Fig. 6 End of the training round in the multiple UAVs scene
综上所述,每架无人机以及无人机编队总体的单步奖励函数设计为

式中, ra 是到达奖励; rb 和 rc 是引导无人机朝向目标点飞行的引导奖励,r b 代表无人机从t-1 时刻到t时刻通过与目标距离的变化获得的奖励, rc 代表无人机从t-1 时刻到t 时刻通过速度方向与目标夹角的变化获得的奖励, 1c 和 c2 都是常数, tiρ 代表无人机i 在t 时刻与目标的距离,θit代表无人机i在t 时刻速度方向与目标方向的夹角; rc ollision 是无人机发生碰撞时获得的惩罚值; rd anger是对无人机过于靠近障碍物的惩罚;常数C 是一个很小的负值,用于促使无人机能使用较少的步数尽快到达目标点; rtotal 为无人机编队的奖励值,为其下属各无人机的奖励均值。
式(15)中具体的参数取值如表1 所示。
表1 仿真奖励参数设计
Table 1 Design of simulation reward parameter

每轮训练无人机编队总体的奖励R 设计如下:

式中, r
代表第i 步无人机编队的奖励值,n 为该轮次下无人机编队的总步数。
3.5 PER-PDDPG 算法流程
在多无人机场景下,为简化任务,本文设置与无人机数量相同的目标点。本章中使用匈牙利分配算法[18],按照第2.3 节中的算法步骤,根据不同无人机在不同目标点执行任务的代价矩阵,对多个目标点进行预先分配。基于PER-PDDPG的多无人机路径规划算法流程如表2 所示。
表2 PER-PDDPG 算法
Table 2 PER-PDDPG algorithm

当算法开始执行时,评价网络 Q( s, a | θ Q)和策略网络 μ ( s| θ μ)的参数 θ Q和 θ μ将被随机初始化。初始化完成后,参数将被同时拷贝到对应的目标网络中,随后初始化经验池D。算法最多被执行Max _Episode 个回合,每个回合最多与环境有Max _Step 步的互动和学习。在每个回合开始时,环境以及用于动作探索的噪声函数将被初始化。
在每一步的互动中,算法会首先通过策略网络 μ ( s| θ μ),根据每个无人机的观测状态量以及噪声函数确定在这一时刻该无人机的动作a kt。在获得了所有无人机的动作后,确认下一时刻的环境状态,获取每个无人机在该环境下的状态观测量S k ( t+1 )以及执行动作 ak t的回报奖励值 rk t。然后将交互样本( sk t , a kt , rk t ,s k ( t+1 ))存放到经验池D中,并设置其优先级 Pt = maxPi。