APP下载

保障无人机安全通信的自主飞行3D路径规划

2022-06-23孙卉游亚璇沙德双

信号处理 2022年5期
关键词:时隙表演者轨迹

孙卉 赵 睿 游亚璇 沙德双

(华侨大学厦门市移动多媒体通信实验室,福建厦门 361021)

1 引言

无人机(unmanned aerial vehicle,UAV)辅助的无线通信近年来受到广泛的关注,由于UAV 的高机动性和灵活性,可以用于许多通信场景[1-4]。与地面固定基站不同的是,UAV 作为空中基站,可以在自然灾害、人为恶意破坏等突发情况下,随时为地面用户提供无线通信服务,增加对地面用户的覆盖率[5]。另外,UAV 作为空中基站可以利用自身的移动性,灵活地调整自身位置与地面用户建立视距(line of sight,LoS)通信链路。

虽然UAV 作为空中基站有很多优点,但也存在一定的安全隐患。因为UAV 辅助的无线通信是以广播方式进行通信,这样容易被地面存在的恶意用户窃听。为了最大化UAV 辅助通信的安全速率,文献[6]中利用UAV 充当中继来辅助物联网节点传输信号,通过WoLF-PHC 算法动态优化物联网节点的发射功率、UAV 的发射功率和移动轨迹来保证安全通信。文献[7-9]中利用多架UAV 为地面用户提供服务,其中一部分UAV 作为发射机,另一部分UAV作为干扰机,多架发射机共同为地面用户提供服务,干扰机用于向地面发射干扰信号。通过联合优化UAV 的轨迹、发射功率和用户调度来使最小安全速率最大化。文献[10]中考虑了基于双UAV的非正交多址(non-orthogonal multiple access,NOMA)场景,该场景由一架提供服务的UAV 和一架抗干扰UAV 组成,通过优化UAV 轨迹和人工噪声功率来最大化安全能量效率。文献[11]中考虑的场景为一架UAV四处移动并向移动用户发送机密信息,而另一架UAV发送人工噪声信号干扰恶意窃听者,通过联合优化UAV 的三维轨迹、最大速度以及避碰和定位误差等约束条件,最大化最坏情况下的安全速率。

但上述文献都是采用凸优化方法求解通信模型,最近有大量文献利用深度强化学习(deep rein⁃forcement learning,DRL)[12]对UAV辅助的安全通信问题进行优化。该方法是将问题建模为马尔可夫决策过程(markov decision process,MDP)[13],其中智能体通过观察环境状态,采取对应行动,并获得奖励,接着转移到下一状态。与凸优化方法不同的是,DRL 算法的目标是最大化累积回报,而不需要将非凸问题转化为凸问题。DRL 算法可以利用深度神经网络来处理复杂的高维数据。文献[14]中,UAV 作为空中基站,服务多个地面用户,采用多智能体深度确定性策略梯度(multi-agent deep deter⁃ministic strategy gradient,MADDPG)算法,通过联合优化UAV 飞行轨迹、UAV 发射机的发射功率和UAV 干扰机的干扰功率,来最大化安全速率。文献[15]利用K-means 算法获取用户的单元划分,提出基于Q-learning的部署位置选择算法。

本文考虑如下通信场景,UAV 作为空中基站服务多个地面移动用户,地面存在一个窃听者窃听UAV 信息,通过优化UAV 的3D 轨迹来最大化安全速率。我们基于DRL 算法,提出了一个名为正确轨迹深度确定性策略梯度(CT-DDPG)的算法用于规划UAV 的3D 飞行轨迹来完成安全速率最大化的任务。由于本文提出的通信模型具有高维度状态空间和连续动作空间的控制问题,因此本文设计了基于深度确定性策略梯度(deep deterministic strategy gradient,DDPG)的CT-DDPG算法。

全文结构如下,第2 节介绍UAV 作为空中基站,服务多个地面移动用户,同时地面存在一个窃听者的系统模型,并对该系统模型进行数学描述。第3 节首先简单介绍DRL 算法,然后详细描述了本文提出CT-DDPG 算法。第4 节给出仿真结果,同时验证了本文理论分析结果的正确性。第5节对全文进行总结。

2 系统模型和问题描述

2.1 系统模型

图1 给出了UAV 辅助的安全通信模型,该模型由一架UAV 作为空中基站,服务边长为L的正方形区域内的M个地面用户,M={1,…,M}。UAV 在时间t的3D 笛卡尔坐标位置可以表示为u(t)=[x(t),y(t),z(t)]∈R3,0 ≤t≤T,其中T表示UAV 的总飞行时间。考虑到地面用户采用相同速度v向任意方向移动,用户m在时间t的位置坐标可以表示为wm(t) ∈R3。UAV 采用频分多址(frequency divi⁃sion multiple access,FDMA)的通信方式,为每个用户提供相同的带宽,假设总带宽为B,那么每个用户分配到的带宽为Bm=,m∈M,UAV 与每个用户通信采用相同的发射功率P。另外,地面存在一个窃听者,其位置坐标可以表示为we∈R3,假设窃听者的位置坐标是固定的,其位置可以通过配备在UAV上的光学摄像机检测到[16]。

为方便起见,我们将UAV 的飞行时长T划分为N个等长时间间隔,即T=Nδt,δt表示一个时间间隔的长度。那么,UAV 在时隙n的位置坐标可以表示为u[n]=[x[n],y[n],z[n]],n∈N={1,…,N}。同样,用户m在时隙n的位置坐标分别可以表示为wm[n]。假设UAV 服务地面用户的合法链路和UAV 到窃听者的窃听链路都建模为LoS 信道,根据[17]中的测量结果表明,LoS 模型能够很好的近似实际的UAV 与地面通信。因此,UAV 到地面用户m在时隙n处的LoS 信道增益服从自由空间损耗模型,可以表示为:

其中,β0表示在参考距离d0=1 m 处的信道功率增益。dm[n]表示在时隙n处,UAV 到地面用户的距离。同样,UAV 到窃听者在时隙n处的信道增益可以表示为:

其中,β0表示在参考距离d0=1 m 处的信道功率增益。de[n]表示在时隙n处,UAV到窃听者的距离。

那么,在没有窃听者的情况下,UAV 到地面用户m在时隙n处的可达速率(bps/Hz)可以表示为:

其中,σ2表示接收机处的加性高斯白噪声(additive white gaussian noise,AWGN)。同样的,UAV 到窃听者在时隙n处的可达速率(bps/Hz)可以表示为:

根据(3)和(4),UAV 到地面用户在时隙n处的平均安全速率(bps/Hz)可以表示为:

其中[x]+=max(x,0)。

2.2 问题描述

为了保证UAV 与地面用户的安全通信,我们通过优化UAV 的飞行轨迹{u[n]}n∈N={1,…,N},来最大化UAV 到地面用户的平均安全速率。该问题的数学表达式如下:

在每个时隙n,我们假设UAV 的飞行加速度和飞行方向是固定的。因此,根据文献[18]我们有:

其中,vd[n]表示UAV的飞行方向。

根据(12)和(13),可以发现u[n],v[n]和a[n]相互关联。因此,可以通过优化UAV 的速度v[n]和加速度a[n]代替优化UAV 的轨迹u[n]。那么,问题(P1)可以重新表示为:

其中,u0和uc分别表示UAV的初始位置和终止位置,注意UAV 的初始位置和终止位置是随机的。另外,问题(P2)是一个非凸的优化问题,也是一个传统的旅行商问题(traveling salesman problem,TSP)[19],该问题采用传统的优化方法很难被解决。幸运的是,DRL 可以从一个大的策略空间中搜索解决方案,具有强大的数据处理能力。

3 基于深度强化学习的无人机轨迹设计

本节使用DDPG 算法设计UAV 的3D 轨迹。为了解决2.2 节中的优化问题,本文提出了CT-DDPG算法用于控制中心的训练,UAV 相当于是一个智能体,在每个时间间隙n,UAV 通过与环境交互获得当前状态s(i),随后将s(i)输入深度神经网络,输出相应的动作a(i)。同时,UAV 能够获得一个回报r(i),以及转移到下一个新的状态s(i+1)。随后,将上述过程得到的经验(s(i),a(i),r(i),s(i+1))收集到经验缓冲区R中,用于深度神经网络的训练。

3.1 DDPG预备知识

本节将对DDPG 的相关知识做一个简短的介绍,参考文献[20]对DDPG的详细介绍,本节做一个简单的概括。

DDPG 算法是一个采用了表演者和批判者框架[21]的确定性策略梯度(deterministic strategy gradi⁃ent,DPG)算法[22],包含一个参数化的表演者函数u(s|θu),输入状态信息到该函数中,输出相应的动作,另外有一个参数化的批判者函数Q(s,a|θQ),将输入表演者函数的状态信息和表演者函数输出的动作共同输入到批判者函数中,批判者函数输出的Q值实际上就是对表演者函数表现情况的打分。其中,θu和θQ分别表示表演者神经网络和批判者神经网络的参数。

与其他DRL算法类似,DDPG算法也设置了经验缓冲区,用于训练深度神经网络参数,还运用了文献[11]中的目标网络和“软”目标网络更新。其中,目标网络是通过创建表演者和批判者神经网络的副本,即来表示。分别表示表演者目标神经网络和批判者目标神经网络的参数。通过它们缓慢跟踪学习到的网络权值来更新目标网络的权值,即θ′ ←τθ+(1 -τ)θ′,其中τ≪1。

3.2 状态空间

从2.1 节中得知,安全速率与UAV 的位置、地面用户的位置以及窃听者的位置有关,同时地面用户的位置每个时隙都在变化。因此,状态空间包括地面用户的位置{wm[n]}m∈M、窃听者的位置we以及UAV 在每个时隙的位置u[n]。根据2.2 节中的描述,每个飞行周期结束,UAV 都要飞到随机生成的终止位置uc。因此,终点uc也要被纳入状态空间中。另外,UAV 每个时隙的飞行速度v[n]与UAV的加速度a[n]有关,为了满足约束条件,UAV 的速度v[n]也被纳入状态空间中。

因此,状态空间的表达式总结如下:

该状态空间总共有(3M+10)维。

3.3 动作空间

为了实现UAV 的3D 路径规划,本文采用文献[18]中的球坐标系,如图2 所示,由UAV 的飞行速度、仰角以及方位角组成,即{v,φp,φa}。其中,飞行速度v要满足优化问题(P2)中的约束条件,即0 ≤v≤vmax,仰角φp应该满足使UAV 处于3D 坐标系中z轴正半轴的条件,即0 ≤φp≤π,方位角φa应该满足使UAV 处于3D 坐标系中x轴与y轴所组成平面的条件,即-π ≤φa≤π。

为方便起见,本文对UAV 的飞行速度、仰角以及方位角采用归一化表示:

3.4 回报设计

在DRL 中,回报用于评估当前状态下的动作是否是一个好的动作,可以将优化目标Rsec作为回报的一部分,那么最大化回报相当于最大化目标函数值,这样就可以很好的解决2.2 节中的优化问题。另外,为了满足优化问题中的约束条件,可以对回报进行如下设计。

3.4.1 安全速率

在每个时隙n,UAV 和地面用户位置都会发生变化,可以利用(5)计算得到的安全速率作为回报,即:

3.4.2 飞行距离

为了到达终止位置,UAV 在飞行过程中应当保持一定的飞行距离,尽量不要停留在原地,因此UAV 在每个时隙n都应该获得一定的奖励,因此该部分的回报可以设置为:

其中,ddis表示UAV 当前位置与上一时隙位置之间的距离。

3.4.3 约束

为了满足2.2节中优化问题(P2)的加速度和速度约束,本文设置如下回报:

其中,ξa[n]是一个二进制加速度约束控制指标,当加速度满足约束条件时,ξa[n]=1,否则ξ a[n]=0。ka表示任意常数,用于控制加速度约束的回报值。同样的,ξv[n]是一个二进制速度约束控制指标,当速度满足约束条件时,ξv[n]=1,否则ξv[n]=0。kv表示任意常数,用于控制速度约束的回报值。

3.5 训练算法

表1 CT-DDPG算法Tab.1 CT-DDPG algorithm

续表1

CT-DDPG 算法的每一片段从出发点开始,到终止点或最大时间点结束。

在训练阶段,每一片段的开头,先随机初始化UAV 的起始位置u0和终止位置uc,以及地面用户和窃听者的位置。初始化一个随机噪声N0,用于平衡探索和开发。在初始阶段,所选动作与最优解相距较远,因此需要加入探索噪声,以防陷入次优解。但随着迭代次数的增加,算法逐渐收敛,随之逐渐减少探索噪声,增加开发度。本文将探索噪声设置为均值为0,方差为2 的高斯噪声,在迭代过程中,以0.995的衰减率衰减。

在每个时隙n,智能体根据a[n]=u(s[n]|θu)+N0选择动作之后,根据3.3 节中对动作空间的描述,动作空间中速度v和仰角φp的归一化值λv和的取值范围为[0,1],而方位角φa的归一化值的取值范围为[-1,1]。如果采用文献[17]在表演者神经网络输出层使用不同激活函数的方式,会增加神经网络的复杂度,降低训练算法的收敛速度。因此,本文在表演者神经网络输出层只采用一个激活函数tanh,该激活函数的取值范围为[-1,1],只能满足方位角归一化值的取值范围。为了能同时满足λv、和的取值范围,本文采用对激活函数输出值进行修正的方式解决。已知表演者神经网络输出值为动作a[n],该动作的三个维度分别对应,将动作a[n]的第一维度表示为a0[n],第二维度表示为a1[n],那么修正表达式分别为,这样可以将原本[-1,1]的取值范围修正为[0,1],正好满足动作空间中的归一化值的取值范围。

该算法还对UAV 在飞行过程中的位置进行修正,如果UAV 在飞行过程中飞出预设边界,立即将其速度归一化值λv置为0。将修正后的动作a[n]与环境交互,得到新的状态s[n+1]后,输出对应的回报值r[n]。本文设置了三种情况下的回报值,一是UAV 的飞行轨迹超出预设边界的情况,该情况下的回报值设置为r[n]=r1[n]+r2[n]+r3[n]+r4[n]-c1,其中c1表示任意常数,是对UAV 飞出边界的惩罚。二是UAV 到达预先设定目的地的情况,该情况下的回报值设置为r[n]=c2,c2表示任意常数,表示UAV 只要飞到目的地就能获得奖励。三是UAV 正常飞行的情况,该情况下的回报设置为r[n]=r1[n]+r2[n]+r3[n]+r4[n]。注意,在获得回报的同时,要更新地面用户的位置。

智能体在得到回报r[n]后,再与环境进行交互,得到新的状态s[n+1],接着将{s[n],a[n],r[n],s[n+1]}存储到经验缓冲区R中。随后,以Nb个小批量从经验缓冲区R中采样,按照目标网络参数u′和Q′计算表演者和批判者的损失函数值。最后,利用“软”更新的方式更新目标网络参数u′和Q′。

在实施阶段,UAV 根据实际环境情况,通过训练好的神经网络选择相应的动作,完成指定的任务。

4 仿真结果

在本节中,将进行仿真以评估所提出的CTDDPG算法。

4.1 仿真设置

本文在配备Intel i7 处理器,CPU 主频为2.90 GHz,内存为8.00 GB 的计算机中使用TensorFlow 2.0.0,python 3.7.0 进行仿真,考虑地面用户和窃听者随机分布在100 m × 100 m 的正方形区域内,UAV 的最小和最大高度分别为zmin=5 m和zmax=20 m。本文设置地面用户的数量M=4,移动速度v=1 m/s,窃听者的数量为1。设置UAV 的总带宽B为1 MHz,发射功率P为10 W,最大飞行速度为vmax=20 m/s,最大加速度amax=5 m/s2。设置在参考距离d0=1 m处的信道功率增益β0=10-5,AWGN为σ2=10-11。设置经验缓冲区R的大小为10000,小批量Nb的大小为32。UAV的总飞行时间T为800 s,时间间隔σt为8 s,因此总共有100个时间间隔。

4.2 网络结构

本文设置表演者网络结构为四层隐藏层,每层的神经元个数分别为100,150,100,50。其中,输入层包含用户的位置坐标、窃听者的位置坐标、UAV的位置坐标、UAV 的速度以及UAV 的终止位置坐标共13 个神经元。输出层包括UAV 的速度、仰角以及方位角。除了输出层采用的是tanh 激活函数以外,其他每一层都采用ReLU 激活函数。另外,批判者网络结构也设置相同数量的隐藏层和神经元个数,但批判者网络的输入层包括动作和状态两部分共13+3=16 个神经元,输出层的神经元个数为1。其中,表演者网络和批判者网络采用的学习率分别为0.008和0.01。

4.3 仿真与分析

本节使用所提出的CT-DDPG 算法对系统模型进行仿真,并进行相应的分析。

图3画出了所提算法在训练过程中的累计回报随片段数增加的变化情况。从图中可以看出,在开始的100 次迭代中,累计回报的波动很大,在12000到16000之间不断变化。原因是该算法在训练的初始时期还处于探索阶段,存在探索噪声,神经网络的输出值与最优值相距较远,因此得到的回报值较小,同时存在波动性。第100片段之后,累计回报随着片段数的增加呈现上升趋势,直到第200片段处,累计回报达到最大值18000 左右,之后随着片段数的增加,累计回报也不再出现很大波动,算法趋于收敛。可以看出,该算法在迭代200 次左右就能趋于收敛,收敛速度快,进一步说明该算法对提升训练速度的有效性。

图4画出了所提算法在训练过程中的总训练时间随片段数增加的情况。从图中可以看出,在经过500 次迭代后,总训练时间为1270 s左右。在前100片段,每一片段的训练耗时少,这是因为算法处于探索阶段,探索得到的结果只用于储存到经验缓冲区R中。在100 片段之后,每一片段的训练耗时显著增加,这是因为算法已经完成了前期探索,开始从经验缓冲区R中取出数据进行训练。

图5 画出了UAV 的3D 飞行轨迹图,其中100 m × 100 m的正方形区域内随机分布4个用户和1 个窃听者。图(a)是地面用户实时移动,窃听者位置固定的情况。随机生成的UAV 起始点坐标为[79,64,16],终止点坐标为[12,3,16]。注意,地面用户是以速度v=1 m/s 向随机方向移动的,每一时隙都移动一段距离,但在图中只画出了地面用户最后一个时隙的位置。图(b)是地面用户实时移动,窃听者位置也实时移动的情况。随机生成的UAV起始点坐标为[57,34,9],终止点坐标为[4,3,9]。注意,地面用户和窃听者都以速度v=1 m/s 向随机方向移动,每一时隙都移动一段距离,但在图中只画出了最后一个时隙的位置。从图中可以看出,UAV几乎飞行在同一高度,这是因为本文采用的是LoS信道模型,UAV 在一个固定的高度就能很好的完成任务。同时,飞行高度满足最小高度zmin=5 m 和最大高度zmax=20 m的约束条件。从UAV的飞行轨迹可以看出,为了达到最大安全速率,UAV在服务地面用户的过程中,会尽可能的远离地面窃听者。

图6画出了UAV的2D飞行轨迹图。图(a)是地面用户实时移动,窃听者位置固定的情况。图(b)是地面用户实时移动,窃听者位置也实时移动的情况。注意图中只画出了两者最后一个时隙所在位置。从图(a)中可以看出,在移动用户较为疏散,且距离窃听者较远的区域,UAV 会在移动用户上方盘旋,为移动用户提供较长时间的通信服务。而在移动用户较为集中,且距离窃听者较近的区域,UAV选择快速飞过该区域,保证为移动用户提供服务的同时最大化安全速率。从图(b)中可以看出,UAV在飞行过程中会尽可能的远离移动窃听者,在地面移动用户上方盘旋,为地面移动用户提供安全服务。

5 结论

本文利用所提出的CT-DDPG 算法规划UAV 的飞行轨迹,对地面多个移动用户且存在一个窃听者的通信模型进行仿真。由于该算法中的动作归一化值具有不同的取值范围,与传统算法在表演者网络输出层采用多个激活函数不同的是,该算法采用单个激活函数,再利用区间收缩的方式对输出值进行修正,简化了神经网络结构。从仿真结果可以看出,该算法在训练过程中能够快速收敛,训练耗时短,执行过程中UAV 能很好的服务地面移动用户,同时远离窃听者。未来的研究可以对UAV 的信道模型进行改进,使其更加贴近实际通信情况。

猜你喜欢

时隙表演者轨迹
基于阵列天线的数据时隙资源比例公平动态分配方案设计
解析几何中的轨迹方程的常用求法
轨迹
轨迹
基于时分多址的网络时隙资源分配研究
钢琴表演艺术中审美素养能力提升
Link—16中继时隙自适应调整分配技术研究
一种车载网络中基于簇的时隙碰撞解决方法
手称扑克
2012年龙年网络春晚节目单