通过MATD3 求解 UAV-Assisted MEC 问题的论文的读书笔记

11 阅读10分钟

简介

本文章是 《Multi-Agent Deep Reinforcement Learning for Task Offloading in UAV-Assisted Mobile Edge Computing》 这篇论文的阅读笔记。这篇论文研究了一种多动态无人机,多EC(边缘云,即:边缘计算节点)协作的算法。研究联合考虑了无人机轨迹、计算任务分配和通信资源管理等问题,以获得最小的执行延迟和能量消耗。

背景

如今越来越多的移动应用任务变得计算密集型和延迟敏感,但这些任务可能会给计算和电池能力有限的用户设备(UE)带来巨大挑战。而多接入点边缘计算(multi-access edge computing)被认为是能够解决这个问题的技术。

但是该技术也面临着一定的问题,1. 在偏远地区也具有不少的UE需要移动边缘计算,但这些地区的基础设施分布稀疏,环境不确定性高。2. 可能有大量用户同时需要计算密集型服务。

这个问题可以通过多无人机辅助MEC系统进行解决。在这个结构中,无人机充当飞行的MEC服务器,由于它能够离UE更近,所以它能够以较低的网络开销和卸载时延提供卸载服务。

工作

设计了多个无人机和多个EC来分担UE的计算任务。提出了以最小执行延迟和最小能耗为目标的UE任务卸载优化问题。提出了一种用于无人机航迹获取、计算任务分配和通信资源管理的协作多智能体DRL(MADRL)方法。

  1. 研究了多无人机多EC-MEC系统中的协同任务卸载策略,其中无人机和EC协同卸载UE的计算任务。
  2. 通过联合设计无人机的航迹、计算任务分配和通信资源管理,建立了以系统总费用最小为目标的任务卸载优化问题。
  3. 使用MATD3进行求解
  4. 进行仿真实验分析

系统总示意图如下: 系统总示意图.png

系统建模

M代表UEs,N代表UAVs,K代表ECs,每一个UE所要处理的任务为Wm=(Dm,Cm,λm)W_m=(D_m, C_m, \lambda_m),分别代表任务大小,CPU时钟周期,任务到达率。

UE不能进行本地计算,无人机向地面UE提供边缘计算服务。

无人机是轨迹是精心规划的(意思是:轨迹不会重叠,这使得无人机之间不会碰撞),并且每台无人机会在一个分区内为地面UE提供边缘计算服务,每个分区之间不会重合。每台无人机都通过无线回程链路(the wireless backhaul links)与单个地面边缘云进行连接(那为什么fig. 1画的是与多个)

本实验的任务卸载流程由四部分组成:

  1. UEs卸载到UAVs
  2. 在UAVs处计算
  3. 从UAVs卸载到ECs
  4. 在ECs处计算

UAVs 移动

UAV的移动是3D的,t时刻,UAV n的坐标为ωn(t)=[xn(t),yn(t),zn(t)]T\omega_n(t)=[x_n(t),y_n(t),z_n(t)]^T,并且令vn(t)=[xn(t),yn(t)]v_n(t)=[x_n(t),y_n(t)]为UAV n在t时刻的二维坐标。假设UAV n在水平飞行时会用方向角ϑn(t)\vartheta_n(t)ln(t)l_n(t)的距离,故:下一时刻的x和y为:xn(t+1)=xn(t)+ln(t)cos(ϑn(t))x_n(t+1)=x_n(t)+l_n(t)cos(\vartheta_n(t))yn(t+1)=yn(t)+ln(t)sin(ϑn(t))y_n(t+1)=y_n(t)+l_n(t)sin(\vartheta_n(t))

另外,假设UAV n有一个最大仰角ϕn\phi_n,此时在时间t,UAV n的最大水平服务半径Cmaxn(t)=zn(t)tan(ϕn)C_{max}^n(t)=z_n(t)\tan(\phi_n)

无人机服务范围示意图.png

并且UAV的移动有以下约束:

  1. Zminzn(t)ZmaxZ_{min}\le z_n(t) \le Z_{max},表示UAV的高度介于最大高度和最小高度之间
  2. ln(t)=vn(t+1)vn(t)Lmaxhl_n(t)=||v_n(t+1)-v_n(t)||\le L_{max}^h,表示一个时间段内的水平的移动距离不会超过一个时间段最大水平移动距离(因为速度有限)
  3. Δzn(t)=zn(t+1)zn(t)Lmaxv\Delta z_n(t)=|z_n(t+1)-z_n(t)|\le L_{max}^v,表示一个时间段内的高度的移动距离不会超过一个时间段最大高度移动距离(因为速度有限)

此外为了保证无人机在服务的矩形区域内移动,必须满足以下移动约束:

  1. 0xn(t)Xmax0 \le x_n(t)\le X_{max}XmaxYmaxX_{max} Y_{max}分别代表矩形边长
  2. 0yn(t)Ymax0\le y_n(t) \le Y_{max}

并且为了确保任意两个无人机的覆盖范围不能相互重叠,必须满足以下重叠约束:vn(t)vj(t)[Cmaxn(t)+Cmaxj(t)]||v_n(t)-v_j(t)||\ge [C_{max}^n(t)+C_{max}^j(t)],即:任意两架无人机的水平距离必须大于等于这两架无人机最大水平半径之和。

为了避免任意两个无人机之间的碰撞,无人机的距离应不小于最小距离DminD_{min},故UAV还有以下约束:ωn(t)ωj(t)Dmin||\omega_n(t)-\omega_j(t)||\ge D_{min}

若多个UE位于某个特定的UAV的覆盖范围内,则这些UE都会由该UAV进行服务。令UAV n在时间t时服务的UEs为Mn(t)M_n(t),令ρmn(t)\rho_m^n(t)为一个二进制变量,值为1时代表UE m被UAV n服务,反之则为0。假设在任何时刻,每个UE仅能被唯一的UAV服务。

从UEs传输到UAVs

令UE m的坐标为ωm(t)=[xm(t),ym(t),0]T\omega_m(t)=[x_m(t),y_m(t),0]^T,则UAV n与UE m的距离为:dmn(t)=ωn(t)ωm(t)d_{mn}(t)=||\omega_n(t)-\omega_m(t)||。本文假定地面UE通过正交频分多址技术与UAV进行通信,则可以忽略每个无人机覆盖范围内不同UE之间的干扰。由于UAV是在空中活动,故LOS信道衰减比其他的因素居于主要地位。无人机的高机动性引起的多普勒频移(The Doppler shift)可以假定在UE处得到了完美的补偿。故基于上述分析,G2A(UEs传输到UAVs)的信道增益可以用自由空间路径损耗(free-space path loss model)来表示:hmn(t)=g0/[dmn(t)]2h_{mn}(t)=g_0/[d_{mn}(t)]^2,其中g0g_0表示参照距离为1米的功率增益。

在任务卸载过程中假设上行链路带宽BuB_u平均分配给每一个UE,所以UE m与UAV n之间的G2A传输速率为: 香农公式.png ,其中PmP_m是UE的传输功率,σu2\sigma_u^2为在UAV的加性高斯白噪声功率。所以G2A传输时延为:TmnG2A(t)=Dm/Rmn(t)T^{G2A}_{mn}(t)=D_m/R_{mn}(t),传输能耗为:,PnrP_n^r为UAV接收功率。

G2A传输能耗.png

在UAV进行边缘计算

每个UAV接收到UEs处的所有输入数据后,进行保留多少数据在本地进行计算的决策。定义γmkn(t)\gamma^n_{mk}(t)γm0n(t)\gamma_{m0}^n(t),它们的取值都为[0, 1],代表着UE m的任务在EC k和UAV n执行的百分比。UAV n处理UE m的任务的计算延迟为:TmnUAV(t)=γm0n(t)DmCm/fmn(t)T^{UAV}_{mn}(t)=\gamma^n_{m0}(t)D_mC_m/f_{mn}(t),其中fmn(t)f_{mn}(t)代表UAV n分配UE m的计算资源,而计算资源FuF_u则是被平均分配给每个被服务的UE,即:fmn(t)=Fu/Mn(t)f_{mn}(t)=F_u/M_n(t)。对于UAV n处理UE m的任务的计算能耗为:UAV计算能耗.png,其中系数κ>0\kappa\gt0

从UAVs 到 ECs 的A2G传输

EC k是有一个固定的坐标ωk=[xk,yk,0]T\omega_k=[x_k, y_k, 0]^T,EC k与UAV n之间的距离为:dkn(t)=ωn(t)ωkd_{kn}(t)=||\omega_n(t)-\omega_k||。UAV n与EC k之间的A2G信道增益被定义为:hnk(t)=g0/[dkn(t)]2h_{nk}(t) = g_0/[d_{kn}(t)]^2。UAV n与EC k之间的数据传输速率为:![](./assert/传输速率 UAV to EC.png)。其中BkB_k是预先分配给EC k的带宽,Pnt(t)P^t_n(t)代表UAV n的传输功率,σe2\sigma^2_e是每个EC的加性高斯白噪声功率。

所以UE m到EC k之间通过A2G链路的传输时延可以定义为:TmnkA2G=γmkn(t)Dm/Rnk(t)T_{mnk}^{A2G}=\gamma_{mk}^n(t)D_m / R_{nk}(t),相似的,UE m和EC k通过UAV n的A2G传输能耗为:EmnkA2G(t)=PntTmnkA2G(t)=γmkn(t)DmPnt/Rnk(t)E_{mnk}^{A2G}(t)=P_n^tT^{A2G}_{mnk}(t)=\gamma_{mk}^n(t)D_mP_n^t/R_{nk}(t)

ECs边缘计算

从无人机处获得数据后,ECs开始处理计算任务,在EC k的计算时延为:TmnkEC(t)=γmkn(t)DmCm/fmk(t)T_{mnk}^{EC}(t)=\gamma_{mk}^n(t)D_mC_m/f_{mk}(t),其中fmk(t)f_{mk}(t)代表着分配给UE m的计算资源,EC的计算资源是平均分配给每一个UE,即:fmk(t)=Fke/Mf_{mk}(t)=F^e_k/M

问题建模

当所有UE的计算任务完成后,UAV的能耗为:UAV总能耗.png,其中ρmn(t)\rho_m^n(t)为在t时刻UE m是否卸载到UAV n,λm\lambda_m为任务到达率。

因为UAV计算和传输到ECs可以并行,所以该边缘计算系统的执行延迟为:

计算时延.png

cost为Un(t)=ω1En(t)+ω2Tn(t)U_n(t)=\omega_1E_n(t)+\omega_2T_n(t)

将联合优化任务建模为:

建模1.png

建模2.png

MADRL 求解任务卸载优化问题

本文将上述提到的问题建模为一个扩展的MDP,采用多智能体的强化学习进行求解。其中:

  • 智能体集合:其中每架无人机作为一个智能体,学习其位置,发射功率和任务配比方案,并获得最小的系统总成本。

  • 状态空间:UAVs的三维坐标s(t)=ω1(t),...,ωN(t)s(t)={\omega_1(t),...,\omega_N(t)}

  • 动作空间:动作空间是每个无人机的动作空间集合。而每台UAV都需要确定其运动(水平飞行距离,水平方向角,垂直飞行距离)、发射功率和任务分配比例,所以动作空间an(t)a_n(t)为:an(t)={ln(t),ϑn(t),Δzn(t),Pnt(t),γmkn(t),k}a_n(t)=\{l_n(t),\vartheta_n(t),\Delta z_n(t),P_n^t(t),\gamma_{mk}^n(t),\forall k\},(原文有各个数据的取值范围)

  • 奖励函数:系统成本的负数,即:奖励函数.png,其中η1,η2,η3\eta_1,\eta_2,\eta_3分别表示与重叠约束、碰撞约束和覆盖约束相关的惩罚。具体地说,任意两个UAV的水平距离不满足水平约束时,这两个无人机都要得到一个η1\eta_1惩罚,任意两个UAV之间的距离不满足碰撞约束时,则都要受到η2\eta_2惩罚,当任何UE都未被无人机覆盖时,所有无人机都将遭到含有η3\eta_3这项的惩罚。

通过MATD3 DRL算法求解问题

本论文采用的深度强化学习算法对问题进行求解,具体来说,采用的是MDTD3算法,下图是该算法的示意图。

MATD3示意图.png 该算法采用了CTDE(集中训练分散执行)训练方式(基本这个研究方向都是这样做),然后因为各个无人机是纯粹的分布式计算,没有其他UAV的位置信息所以也存在着一些博弈论的味道。

集中训练的时候,就可以获取到所有信息进行训练了。而分散执行的时候,每个UAV仅仅通过自己的本地状态来进行决策。

本算法还能够在UAV覆盖某些热点地区时,相应的无人机保持其3D位置,仅改变其发射功率和任务分配比。

actor网络的梯度下降方式如下:

actor网络的梯度下降方式.png

此外,为了防止Q值窄峰处过拟合,在target actor网络中加入了随机噪声,从而实现更加平滑的状态-动作值估计。修改后的目标操作由下公式给出:

target actor network的动作加入噪音.png ,其中噪音是一个服从clip(N(0,σ2),1,1)clip(N(0, \sigma^2), -1, 1)的一个数值。

目标Q值yiy_i可由以下公式给出:

目标v值公式.png

两个critic网络的损失函数为:

critic的损失函数.png 均方差损失函数。

其中actor和critic都是采用梯度下降的方法进行更新,而target_actor和target_critic都采用了软更新的方式。

本论文的训练采用了MLP作为模型,由分别具有400个和300个神经元的两层线性层网络组成。

性能分析

场景:一个400x400 平方米的具有两个固定的EC节点和多台无人机进行辅助的MEC系统,有30个UE 随机分布到两个热点地区,2个UAV被随机放置用于提供计算卸载帮助,如下图所示:

测试场景.png 输入数据大小从[2,10]内随机生成,计算密集度从[100, 200]内均匀随机生成,UAV的计算资源固定为3GHz,EC的计算资源从[6,9]GHz中均匀生成。

本论文的主要超参数如下表1所示:

image.png

训练模型所使用的超参数如下表2所示:

image.png

训练曲线如下图所示:

image.png

可以看出在学习之初,训练步非常大。随着episode的增加,训练步很快就下降,这使得收敛速度趋于加快。如图所示训练步在episode到30之内就收敛到10步以下。此外,随着episode的增加,两架无人机覆盖服务区域的速度也更快。这让得到的惩罚值逐渐趋于零,达到训练奖励的收敛。

从下图中我们可以观察到,每架无人机几乎都可以位于一个热点的中心,这使得无人机能够高效地提供计算卸载。此外,蓝色圆圈代表无人机的覆盖范围。无人机的位置越高,覆盖范围就越大。考虑到无人机的避碰约束和信道条件,该提出的方法可以获得无人机的最优位置,为UE提供卸载机会。

image.png image.png

原文中还有着大量的实验分析被我省略了,如果想了解更多的分析结果,可以仔细阅读原论文。希望我对这篇论文的分析能够对你了解这篇论文有所帮助。