开放科学(资源服务)标志码(OSID):
移动互联网中各种数据流量的爆发式增长和用户设备使用率的不断增高,极大地推动了无线通信和移动网络技术的发展[1]。此外,随着物联网、人工智能、第五代移动通信(5G)等技术的普及,也使移动用户对数据处理速率和服务质量(Quality of Service,QoS)的要求不断提高[2]。目前,移动边缘计算(Mobile Edge Computing,MEC)是产业界和学术界研究的重点[3],旨在解决价值与应用之间的矛盾,并且应用场景十分丰富[4],如智能交通[5]、车联网等。MEC是无线接入网中的一种新模式,其通过部署高性能的服务器来提高移动网络边缘的计算能力[6]。MEC服务器密集分布在移动用户附近,用户设备可以通过无线链接将计算任务卸载到MEC服务器[7]。计算卸载可以帮助移动用户显著降低应用程序的体验延迟[8]。将移动边缘服务器部署在离数据源较近的范围内,可以避免数据上传到较远的云服务器,从而减少数据往返的等待时延和消耗成本[9]。
本文针对单用户MEC系统,设计基于深度确定性策略梯度(Deep Deterministic Policy Gradient,DDPG)算法的数据缓存优化机制,对服务缓存放置、计算卸载决策和系统资源分配(即移动用户的CPU处理频率和传输功率)进行联合优化。
1 相关研究随着各种移动应用程序高度普及[10],设备以非常快的速度产生大量数据,这给移动核心网络和回程链路带来了很大的负担。移动边缘缓存使数据能够在MEC服务器中进行存储,是缓解这一问题的有效方法[11-12]。与此同时,缓存在移动数据流量激增的情况下也表现出极大的优势[13]。
针对单用户MEC系统,目前已有很多优化方法。文献[14]研究了任务卸载调度和传输功率分配的联合问题。文献[15]以最小化超低功耗单天线设备的能耗为目标,优化了用于能量收集、信息解码和本地计算的时隙,以及卸载所需的时隙和功率。文献[16]考虑到功率受限和不可预测的任务,以单用户处理能力最大化为目标的功率分配问题对MEC系统进行研究,提出一种二分搜索算法。文献[17]设计一种迭代启发式的MEC资源分配算法实现动态卸载决策。然而上述研究没有考虑数据缓存,单用户MEC系统中的联合任务卸载决策、数据缓存和资源分配仍然是一个有待解决的问题。
针对多用户MEC场景也出现了很多优化方法。文献[18]考虑具有多个用户和单个MEC服务器的场景,提出NOMA-MEC系统,通过使用强化学习中的深度Q网络(Deep Q-Network,DQN)算法,在事先未知其他用户动作的情况下选择同时卸载的用户,得到最优组合状态,使系统卸载延迟最小。文献[19]研究了多用户MEC系统中的资源分配问题,利用回归算法求解通信资源(子载波)的分配问题并合理分配通信和计算资源,在延迟约束下达到了系统能量消耗最小的目标。文献[20]利用频谱效率较优的非正交多路访问(Non-Othogonal Multiple Access,NOMA)技术共同优化计算卸载决策、通信和计算资源分配,提高了MEC的访问能力,并使所有用户的计算成本最小化。文献[21]针对NOMA用户研究不同上传时延与共信道干扰之间的相互作用,提出一种计算卸载方案,通过对卸载决策和资源分配的联合优化降低了用户的平均卸载延迟。文献[22]针对如何在满足时延约束下缩短MEC计算任务的完成时间并降低终端能耗的问题,提出一个卸载决策与资源分配联合优化的方法。文献[23]提出一种基于强化学习的状态-动作-奖赏-状态-动作(RL-SARSA)算法解决边缘服务器的资源管理问题,并通过优化卸载决策来最小化系统成本(包括能量消耗和计算时延)。文献[24]研究了MEC中任务卸载决策、卸载调度和功率分配的联合问题,设计一种节能、低延迟的MEC卸载调度机制,实现了最小化系统能耗同时降低系统时延的目标。文献[25]研究MEC中的卸载策略与功率分配问题,采用二分搜索法求解传输功率,利用非合作博弈论解决多用户卸载决策问题。
以上研究主要考虑MEC系统卸载和资源分配场景,以最小化能源消耗或延迟为目标,但没有考虑任务数据缓存在系统中的情况。在边缘计算系统场景下联合卸载、缓存决策和传输能力以及CPU频率分配是一个具有挑战性的问题。
近年来,边缘缓存受到较多关注。文献[26]将缓存问题视为一个优化问题进行建模,探讨不同算法的优化性能和复杂度。文献[27]设计了一个以信息为中心的异构网络框架,旨在支持内容缓存和计算。此外,由于整个系统的虚拟化,通信、计算和高速缓存资源都可以在与不同虚拟服务提供者关联的所有用户之间共享。文献[28]引入一种新的基于体验质量(Quality of Experience,QoE)的效用优化方法来解决MEC系统中联合服务缓存和任务卸载的问题,反映了用户对服务延迟的感知和用户为分配的计算资源所支付的成本之间的权衡,但未深入研究单用户MEC系统中任务卸载、数据缓存和资源分配的联合问题。本文设计一种基于DDPG的数据缓存优化机制,以期优化用户对服务延迟的体验质量和用户使用计算资源所节约的成本。
2 MEC任务卸载模型 2.1 系统模型本文考虑单用户多任务MEC系统,如图 1所示,其中包含1个无线无线接入点(Access Point,AP)和1个移动用户(Mobile User,MU),AP配备1个MEC服务器,MU有M个计算任务。在此系统中,每个任务由N个程序中的1个处理,如果1个任务需要由第j个程序处理,则将其称为类型j任务,
![]() |
Download:
|
图 1 MEC系统模型 Fig. 1 MEC system model |
在图 1所示系统中,第i个任务输入和输出数据的大小分别表示为
![]() |
Download:
|
图 2 任务模型 Fig. 2 Task model |
假设MU通过上传自己的程序数据(如通过C/C++代码生成程序),在MEC平台上运行自己的定制程序,第j个程序的数据大小表示为
边缘服务器与MU之间的数据传输包括上传程序和(或)任务数据以及下载计算结果。第i个任务输入数据的上行传输速率和所需程序数据的上行传输速率分别如式(1)和式(2)所示:
$ {R}_{i}^{{\rm{u}}}=B\;{\rm{1}}{\rm{b}}\left(1+\frac{{p}_{i}^{{\rm{u}}}{G}_{i}}{{\sigma }^{2}}\right) $ | (1) |
$ {R}_{i}^{{\rm{s}}}=B\;{\rm{1}}{\rm{b}}\left(1+\frac{{p}_{i}^{{\rm{s}}}{G}_{i}}{{\sigma }^{2}}\right) $ | (2) |
其中:
每个任务都可以在本地或边缘服务器上执行计算。令
假设MU只能上传用于处理当前在边缘执行的任务的程序数据,即:如果
1)第j个程序在上个任务执行之前已经在缓存中,即
2)第j个程序数据在上个任务执行时间内上传到边缘服务器,这需要
$ \begin{array}{l}{x}_{i, j}\le {a}_{i-1}{u}_{i-1, j}+{x}_{i-1, j}\\ i\in \varLambda =\{{\rm{1, 2}}, \cdots , M\}, {\rm{ }}j\in \varGamma =\{{\rm{1, 2}}, \cdots , N\}\end{array} $ | (3) |
此外,在整个系统任务的处理过程中,需要满足式(4)所示的缓存容量约束:
$ \sum\limits _{j=1}^{N}{r}_{j}{x}_{i, j}\le R, i\in \varLambda =\{{\rm{1, 2}}, \cdots , M\} $ | (4) |
假设MU拥有处理其任务所需的所有程序,如预安装在本地磁盘上,这样本地处理任务i所花费的时间只包括计算时间。第i个任务在本地计算所消耗的时间
$ {T}_{i}^{\rm{1}}=\frac{{L}_{i}}{{f}_{i}^{\rm{1}}} ,{E}_{i}^{\rm{1}}=k({f}_{i}^{\rm{1}}{)}^{\alpha }{T}_{i}^{\rm{1}}=k\frac{({L}_{i}{)}^{\alpha }}{({f}_{i}^{\rm{1}}{)}^{\alpha -1}} $ | (5) |
其中:
若第i-1个任务卸载到MEC计算,则第i个任务的输入数据从MEC下载到MU进行本地计算的传输时间
$ {T}_{i}^{{\rm{d}}}=\frac{{O}_{i-1}}{{R}_{i}^{{\rm{d}}}} $ | (6) |
其中:
因此,第i个任务在本地执行的总时延
$ {T}_{i}^{{\rm{l}}{\rm{o}}{\rm{c}}{\rm{a}}{\rm{l}}}=(1-{a}_{i}){T}_{i}^{{\rm{1}}}+{a}_{i-1}(1-{a}_{i}){T}_{i}^{{\rm{d}}} $ | (7) |
每个任务可以在MU本地计算,也可以卸载到边缘服务器上进行远程执行。当任务i在边缘上执行时,计算时间包括任务计算时间和程序生成时间两部分。
任务计算时间
$ {T}_{i}^{\rm{c}}=\frac{{L}_{i}}{{f}_{i}^{\rm{m}\rm{e}\rm{c}}} ,{f}_{i}^{\rm{m}\rm{e}\rm{c}}=\frac{{L}_{i}}{\sum\limits _{i\in \varLambda }{a}_{i}{L}_{i}}\cdot F $ | (8) |
其中:
如果计算任务所需程序没有在缓存中,则服务器可能需要生成一个新的程序(如程序编译和加载函数库)。
程序生成时间wi如式(9)所示:
$ {w}_{i}=\sum\limits _{j=1}^{N}{u}_{i, j}{D}_{j} $ | (9) |
其中:Dj为第j个程序生成时间。
第i个任务卸载程序数据上传所消耗的时间和能量分别如式(10)和式(11)所示:
$ {T}_{i}^{{\rm{s}}}=\frac{\sum\limits _{j=1}^{N}{u}_{i, j}{s}_{j}}{{R}_{i}^{{\rm{u}}}} $ | (10) |
$ {E}_{i}^{{\rm{s}}}={p}_{i}^{{\rm{s}}}{T}_{i}^{{\rm{s}}}={p}_{i}^{{\rm{s}}}\frac{\sum\limits _{j=1}^{N}{u}_{i, j}{s}_{j}}{{R}_{i}^{{\rm{u}}}} $ | (11) |
能量函数对于时间是凸的。因此,第i个任务卸载任务数据所花费的时间和能量分别如式(12)和式(13)所示:
$ {T}_{i}^{{\rm{u}}}=\frac{{O}_{i-1}}{{R}_{i}^{{\rm{u}}}} $ | (12) |
$ {E}_{i}^{{\rm{u}}}={p}_{i}^{{\rm{u}}}{T}_{i}^{{\rm{u}}}={p}_{i}^{{\rm{u}}}\frac{{O}_{i-1}}{{R}_{i}^{{\rm{u}}}} $ | (13) |
综上所述,第i个任务卸载执行的总延迟和MU所消耗的能量分别如式(14)和式(15)所示:
$ {T}_{i}^{{\rm{o}}{\rm{f}}{\rm{f}}}={a}_{i}{T}_{i}^{{\rm{c}}}+(1-{a}_{i-1}){a}_{i}{T}_{i}^{{\rm{u}}}+{a}_{i}{T}_{i}^{{\rm{o}}} $ | (14) |
$ {E}_{i}^{{\rm{o}}{\rm{f}}{\rm{f}}}=(1-{a}_{i-1}){a}_{i}{E}_{i}^{{\rm{u}}}+{a}_{i}{E}_{i}^{{\rm{o}}} $ | (15) |
其中:
本文研究的目标是优化用户的QoE和用户使用计算资源所节约的成本,其中计算时间和能耗由本地执行和卸载执行两部分组成,第i个任务的执行时间和总能耗如式(16)和式(17)所示:
$ {T}_{i}={T}_{i}^{{\rm{l}}{\rm{o}}{\rm{c}}{\rm{a}}{\rm{l}}}+{T}_{i}^{{\rm{o}}{\rm{f}}{\rm{f}}}=(1-{a}_{i-1}){a}_{i}{T}_{i}^{{\rm{u}}}+{a}_{i-1}(1-{a}_{i}){T}_{i}^{{\rm{d}}} $ | (16) |
$ {E}_{i}=(1-{a}_{i}){E}_{i}^{{\rm{1}}}+(1-{a}_{i-1}){a}_{i}{E}_{i}^{{\rm{u}}}+{a}_{i}{E}_{i}^{{\rm{o}}} $ | (17) |
通过使用具有2个预定义阈值Tmin和Tmax的QoE映射函数,将服务延迟映射到一个平均意见评分量表中,以优秀、良好、合格、差、不满意或阻塞评价,如式(18)所示:
$ {W}_{i}=\left\{\begin{array}{l}1, {T}_{i}\le {T}^{{\rm{m}}{\rm{i}}{\rm{n}}}\\ \frac{{T}^{{\rm{m}}{\rm{a}}{\rm{x}}}-{T}_{i}}{{T}^{{\rm{m}}{\rm{a}}{\rm{x}}}-{T}^{{\rm{m}}{\rm{i}}{\rm{n}}}}, {T}^{{\rm{m}}{\rm{i}}{\rm{n}}}<{T}_{i}<{T}^{{\rm{m}}{\rm{a}}{\rm{x}}}\\ {W}^{{\rm{b}}},{\rm{其}}{\rm{他}}\end{array}\right. $ | (18) |
当任务i的执行时间
定义一个可选点
![]() |
Download:
|
图 3 用户体验质量映射函数 Fig. 3 User experience quality mapping function |
除了用户的QoE,本文模型还考虑了使用计算资源节约的成本。基本上,更小的服务延迟是以更高的计算资源使用成本为代价的。用ε表示边缘服务器计算任务i的单位成本,设Hi为任务i使用计算资源的预算,移动边缘服务器分配给任务i的计算资源,必须满足式(19)所示的预算约束:
$ {f}_{i}^{{\rm{m}}{\rm{e}}{\rm{c}}}={\rm{m}}{\rm{i}}{\rm{n}}\left\{\frac{{H}_{i}}{\varepsilon }, \frac{{L}_{i}}{\sum\limits _{i\in \varLambda }{a}_{i}{L}_{i}}F\right\} $ | (19) |
边缘服务器分配给任务i的计算资源成本如式(20)所示,任务i节约的预算成本如式(21)所示,则任务i的效用函数如式(22)所示:
$ {c}_{i}=\sum\limits _{i\in \varLambda }{a}_{i}{f}_{i}^{{\rm{m}}{\rm{e}}{\rm{c}}}\varepsilon $ | (20) |
$ {S}_{i}=\frac{{H}_{i}-{c}_{i}}{{H}_{i}} ,i\in \varLambda $ | (21) |
$ {Q}_{i}=\lambda {W}_{i}+(1-\lambda ){S}_{i} ,\lambda \in \left\{\rm{0, 1}\right\} $ | (22) |
上述模型的目标是最大化用户的总效用以及联合优化服务缓存、任务卸载和资源分配问题,是一个混合整数非线性规划问题,如式(23)所示:
$ \underset{{a}_{i}, {x}_{i, j}, {f}_{i}^{{\rm{1}}}, {p}_{i}^{{\rm{u}}}, {p}_{i}^{{\rm{s}}}}{{\rm{m}}{\rm{a}}{\rm{x}}}\sum\limits _{i\in \varLambda }{Q}_{i} $ | (23a) |
$ {a}_{i}, {x}_{i, j}\in \left\{{\rm{0, 1}}\right\}, i={\rm{1, 2}}, \cdots , M, j={\rm{1, 2}}, \cdots , N $ | (23b) |
$ \sum\limits _{j=1}^{N}{r}_{j}{x}_{i, j}\le R, i={\rm{1, 2}}, \cdots , M $ | (23c) |
$ 0\le {p}_{i}^{{\rm{u}}}, {p}_{i}^{{\rm{s}}}\le {P}_{{\rm{m}}{\rm{a}}{\rm{x}}} $ | (23d) |
$ 0\le {f}_{i}^{\rm{1}}\le {F}_{\rm{m}\rm{a}\rm{x}}^{\rm{l}\rm{o}\rm{c}\rm{a}\rm{l}} $ | (23e) |
$ (1-{a}_{i}){E}_{i}^{\rm{1}}+(1-{a}_{i-1}){a}_{i}{E}_{i}^{\rm{u}}+{a}_{i}{E}_{i}^{\rm{o}}\le {E}_{\rm{m}\rm{a}\rm{x}} $ | (23f) |
其中:式(23b)表示卸载和缓存决策分别为0~1整数优化变量;式(23c)表示缓存的计算结果不能超过MEC服务器的缓存容量;式(23d)表示用户i分配给任务j的数据传输功率不能超过最大传输功率;式(23e)表示用户分配给任务j的CPU频率不能超过最大本地CPU频率;式(23f)表示任务i执行的能量消耗不能超过最大能源消耗限制。
3 基于DDPG的策略优化和资源分配算法本文对单用户多任务MEC系统中联合任务卸载、缓存决策和本地服务器资源分配的问题进行建模,目标是最大化用户对服务的体验质量和用户使用计算资源所节约的成本。为求解这个混合整数非线性规划问题,提出基于DDPG的优化算法DADDPG,最大程度地优化用户的体验质量和节约的成本。算法框架如图 4所示。
![]() |
Download:
|
图 4 DADDPG算法框架 Fig. 4 Framework of DADDPG algorithm |
深度强化学习方法求解问题的关键要素为状态、动作和奖励,具体到本节的模型定义如下:
1)系统State。用S表示系统状态,
2)系统Action。用A表示系统动作,
3)系统Reward。在本文研究的MEC系统中,优化的目标是最大化用户的总效用,在每一步,智能体在执行一个动作A之后,都会在这个动作对应的状态S下获得奖励值R。一般来说,奖励函数应与目标函数相关。因此,本文的优化目标是获得最大的用户总效用,而深度学习的目标是获得最大的奖励回报,奖励值应与系统总效用的大小呈正相关。因此,将奖励定义为目标值,即
如图 4所示,DADDPG算法由Actor部分和Critic部分组成,Actor部分的角色是根据所观察到的环境状态定义参数化的策略并生成行动,而Critic部分则负责通过处理从环境中获得的奖励来评估和批评当前的策略。简单来说,Actor负责策略网络,进行动作选择,Critic负责值网络。
Critic使用经验回放技术。回放内存使用
$ L\left(w\right)={E}_{D}[{R}_{t}+\beta \rm{m}\rm{a}\rm{x}{Q}_{{w}^{-}}({S}_{t+1}, {A}_{t+1})-{Q}_{w}({S}_{t}, {A}_{t}\left)\right] $ | (24) |
其中:
$ \rm{\Delta }w={\alpha }_{\rm{c}}[{Q}_{t}-{Q}_{w}({S}_{t}, {A}_{t}\left)\right]{\nabla }_{w}{Q}_{w}({S}_{t}, {A}_{t}) $ | (25) |
策略
$ \pi (S, A)=\frac{{\rm{e}}^{{\theta }^{\rm{T}}}\cdot \phi (S, A)}{\sum \limits_{a\in A}{\rm{e}}^{{\theta }^{\rm{T}}}\cdot \phi (S, A)} $ | (26) |
其中:
$ J\left( {{\pi _\theta }} \right) = E\left\{ {{Q^{\left( \pi \right)}}\left( {S, A} \right)} \right\} = \sum\limits_{s \in S} d \left( S \right)\sum\limits_{a \in A} {{\pi _\theta }} (A|S){Q^{\left( \pi \right)}}(S, A) $ | (27) |
$ \pi (S, A)=\frac{{\rm{e}}^{{\theta }^{\rm{T}}}\cdot \phi (S, A)}{\sum\limits _{a\in A}{\rm{e}}^{{\theta }^{\rm{T}}}\cdot \phi (S, A)} $ | (28) |
$ \begin{array}{l}{\nabla }_{\theta }J\left({\pi }_{\theta }\right)=\sum\limits _{s\in S}d\left(S\right)\sum\limits _{a\in A}{\pi }_{\theta }\left(A\right|S\left){\nabla }_{\theta }\rm{l}\rm{n}\rm{ }{\pi }_{\theta }\right(A\left|S\right){Q}_{w}(S, A)=\\ E\left\{{\nabla }_{\theta }\rm{l}\rm{n}\rm{ }{\pi }_{\theta }\right(A\left|S\right){Q}_{w}(S, A)\}\end{array} $ | (29) |
使用随机梯度上升方法优化目标,更新采样梯度:
$ \rm{\Delta }\theta ={\alpha }_{\alpha }\nabla \rm{l}\rm{n}{\pi }_{\theta }(S, A){Q}_{w}(S, A) $ | (30) |
DADDPG算法具体描述如下:
算法 DADDPG
输入 用户设备的所有任务集合,边缘服务器CPU总频率F和缓存容量R
输出 达到最大用户总效用的最优动作向量
初始化 经验池容量D,Actor网络中online策略网络参数和目标策略网络参数
For t=1,T:
1.初始化当前状态
2.Actor根据
3.将元组(St,At,Rt,St+1)存储到经验池D中;
4.从经验池中随机采样一批数据(Sj,Aj,Rj,Sj+1)作为训练数据。
5.If
Else
6.利用式(30)更新Critic当前网络的所有参数。
7.利用式(27)更新Actor当前网络的所有参数。
8.if T%%C=1
9.If
End for
Else转到步骤2
4 仿真实验 4.1 参数设置利用python3.7进行仿真实验。设置1个MEC服务器和1个用户的场景,该用户有一个任务序列需要执行。设置
![]() |
下载CSV 表 1 仿真实验初始参数 Table 1 Initial parameters of simulation experiment |
选取以下3种算法,通过仿真结果对比验证DADDPG算法的有效性和优越性。
1)无缓存策略的DADDPG算法DADDPGno:每个任务可以选择卸载执行和本地执行,但MEC不提供缓存功能。
2)随机选择策略算法DARAND:每个任务随机选择卸载执行和本地执行,也随机选择缓存与不缓存相应数据到MEC。
3)无缓存随机选择策略算法DARANDno:每个任务随机选择卸载执行和本地执行,但MEC不提供缓存功能。
图 5展示了不同算法下总效用随任务数的变化情况,设置目标函数的权重系数w=0.5。可以看出:随着任务数的累加,各个算法的总效用均随之增加,这是因为随着任务数增多,执行任务的时间和用户利用计算资源的成本也相应增加;本文提出的DADDPG算法在不同的权重影响下总效用均为最大,这是因为该算法采用了双层网络,可以更稳定地优化变量,即卸载策略、缓存策略和本地计算频率、本地上传功率,可以获得更优的目标值;DARAND算法是随机选择卸载策略和缓存策略,DARANDno算法是随机选择卸载策略,这样获得的目标值不是稳定的,优化性能不如本文提出的DADDPG算法。
![]() |
Download:
|
图 5 不同任务数对总效用的影响 Fig. 5 The total utility versus different numbers of tasks |
图 6展示了DADDPG算法下总体验质量(QoE)和为用户节省成本的情况。通过改变权重参数,在总用户体验质量和为用户节省成本之间的最佳性能权衡。正如预期,当w增加时,总用户体验质量的值增加,此时用户节省的成本同步下降。可以看出:总体验质量在0.1 < w < 0.3的区间内增加比较缓慢,而节省成本的下降速度稍快,因为在这一区间内,总体验质量占总效用的比重不高,主要侧重优化节省成本;当0.3 < w < 0.7时,总体验质量增加速度较快,因为解决方案将把重点放在提高体验质量,从而使用了更多的计算资源;当w > 0.7时,总体验质量增加比较缓慢,而总节约成本降低较快。由此可见,对于用户来说,即使利用了更多的计算资源来减少延迟,其体验质量也不会在超过某个阈值后得到改善。
![]() |
Download:
|
图 6 不同权重对QoE和节约成本的影响 Fig. 6 QoE and cost savings versus different weights |
图 7展示了改变平均预算时本文DADDPG算法和3个基线之间的总效用(w=0.5)。此实验中比较了3种情况下用户总效用的变化情况:1)比较平均预算的一半
![]() |
Download:
|
图 7 不同预算成本对总效用的影响 Fig. 7 The total utility versus different weighted budgets |
图 8展示了不同权重下DADDPG算法的训练性能。可以看出,在3种不同权重参数下,DADDPG算法最终都可以收敛。当调整系数w= 0.1和w=0.9时,累计奖励值大于w=0.5的情况,这是因为w=0.1时解决方案侧重总节约成本,w= 0.9时解决方案侧重总体验质量使得目标值会偏向总节约成本或者总节约成本的值,而w=0.5时总体验质量和总节约成本会达到平衡状态。同时由图 8可以看出,3种不同权重参数下的累计奖励值均在第510 episode左右达到收敛状态。
![]() |
Download:
|
图 8 DADDPG算法的训练性能 Fig. 8 Training performance of DADDPG algorithm |
本文基于深度确定性策略梯度算法对MEC中服务缓存、任务卸载和资源分配进行联合优化,提出DADDPG算法,并通过仿真分析各变量在实验过程中对服务质量和节约成本的影响。实验结果表明,DADDPG算法能够有效地优化目标值。然而在任务卸载过程中,需要选择任务数据卸载与存储的MEC,而在快速移动时可能会使移动用户在MEC之间进行快速切换,这会导致任务中断,进而影响用户的QoE。因此,下一步将考虑用户的移动性,完善MEC系统中任务卸载和服务缓存结构。
[1] |
HASABELNABY M A, SELMY H, DESSOUKY M I. Joint optimal transceiver placement and resource allocation schemes for redirected cooperative hybrid FSO/mmW 5G fronthaul networks[J]. Journal of Optical Communications and Networking, 2018, 10(12): 975. DOI:10.1364/JOCN.10.000975 |
[2] |
SABELLA D, VAILLANT A, KUURE P, et al. Mobile-edge computing architecture: the role of MEC in the Internet of things[J]. IEEE Consumer Electronics Magazine, 2016, 5(4): 84-91. DOI:10.1109/MCE.2016.2590118 |
[3] |
SHI W S, ZHANG X Z, WANG Y F, et al. Edge computing: state-of-the-art and future directions[J]. Journal of Computer Research and Development, 2019, 56(1): 69-89. (in Chinese) 施巍松, 张星洲, 王一帆, 等. 边缘计算: 现状与展望[J]. 计算机研究与发展, 2019, 56(1): 69-89. |
[4] |
XIE R C, LIAN X F, JIA Q M, et al. Survey on computation offloading in mobile edge computing[J]. Journal on Communications, 2018, 39(11): 142-159. (in Chinese) 谢人超, 廉晓飞, 贾庆民, 等. 移动边缘计算卸载技术综述[J]. 通信学报, 2018, 39(11): 142-159. |
[5] |
ZHANG P, WANG B S. Design of a POF-based communication system for edge computing in intelligent transportation system[J]. Semiconductor Optoelectronics, 2019, 40(6): 886-890. (in Chinese) 张鹏, 王博思. 基于塑料光纤的智能交通移动边缘计算通信系统设计[J]. 半导体光电, 2019, 40(6): 886-890. |
[6] |
MAO Y, YOU C, ZHANG J, et al. A survey on mobile edge computing: the communication perspective[J]. IEEE Communications Surveys & Tutorials, 2017, 19(4): 2322-2358. |
[7] |
WANG C, YU F R, LIANG C, et al. Joint computation offloading and interference management in wireless cellular networks with mobile edge computing[J]. IEEE Transactions on Vehicular Technology, 2017, 66(8): 7432-7445. DOI:10.1109/TVT.2017.2672701 |
[8] |
ZHANG G, YAN C, SHEN Z, et al. Distributed energy management for multiuser mobile-edge computing systems with energy harvesting devices and QoS constraints[J]. IEEE Internet of Things Journal, 2019, 6(3): 4035-4048. DOI:10.1109/JIOT.2018.2875909 |
[9] |
LIU Y, PENG M, SHOU G, et al. Towards edge intelligence: multi-access edge computing for 5G and Internet of things[J]. IEEE Internet of Things Journal, 2020, 7(8): 6722-6747. DOI:10.1109/JIOT.2020.3004500 |
[10] |
ZHU D, WANG X D. Research on edge computing and caching technology of mobile network[J]. Application of Railway Computer, 2017, 26(8): 56-59. (in Chinese) 朱丹, 王晓冬. 移动网络边缘计算与缓存技术研究[J]. 铁路计算机应用, 2017, 26(8): 56-59. |
[11] |
ZHOU Z, YU S, CHEN X. Edge intelligence: a new paradigm of edge computing and artificial intelligence[J]. Big Data, 2019, 5(2): 53-63. (in Chinese) 周知, 于帅, 陈旭. 边缘智能: 边缘计算与人工智能融合的新范式[J]. 大数据, 2019, 5(2): 53-63. |
[12] |
YAO J, HAN T, ANSARI N. On mobile edge caching[J]. IEEE Communications Surveys & Tutorials, 2019, 21(3): 2525-2553. DOI:10.1109/COMST.2019.2908280 |
[13] |
LYU X, REN C, NI W, et al. Distributed online learning of cooperative caching in edge cloud[J]. IEEE Transactions on Mobile Computing, 2021, 20(8): 2550-2562. DOI:10.1109/TMC.2020.2983924 |
[14] |
MAO Y, ZHANG J, LETAIEF K B. Joint task offloading scheduling and transmit power allocation for mobile-edge computing systems[C]//Proceedings of 2017 IEEE Wireless Communications and Networking Conference. Washington D.C., USA: IEEE Press, 2017: 1-6.
|
[15] |
JANATIAN N, STUPIA I, VANDENDORPE L. Optimal resource allocation in ultra-low power fog-computing SWIPT-based networks[C]//Proceedings of 2018 IEEE Wireless Communications and Networking Conference. Washington D.C., USA: IEEE Press, 2018: 1-6.
|
[16] |
NING Z, DONG P, KONG X, et al. A cooperative partial computation offloading scheme for mobile edge computing enabled Internet of things[J]. IEEE Internet of Things Journal, 2019, 6(3): 4804-4814. DOI:10.1109/JIOT.2018.2868616 |
[17] |
QIN M, CHEN L, ZHAO N, et al. Power-constrained edge computing with maximum processing capacity for IoT networks[J]. IEEE Internet of Things Journal, 2019, 6(3): 4330-4343. DOI:10.1109/JIOT.2018.2875218 |
[18] |
YANG P, LI L, LIANG W, et al. Latency optimization for multi-user NOMA-MEC offloading using reinforcement learning[C]//Proceedings of the 28th Wireless and Optical Communications Conference. Beijing, China: [s. n. ], 2019: 1-5.
|
[19] |
ZHANG Y, ZHOU X, TENG Y, et al. Resource allocation for multi-user MEC system: machine learning approaches[C]//Proceedings of 2018 International Conference on Computational Science and Computational Intelligence. Washington D.C., USA: IEEE Press, 2018: 794-799.
|
[20] |
ZHOU W, LIN L, LIU J, et al. Joint offloading decision and resource allocation for multiuser NOMA-MEC systems[J]. IEEE Access, 2019, 7: 181100-181116. DOI:10.1109/ACCESS.2019.2959434 |
[21] |
SHENG M, DAI Y, LIU J, et al. Delay-aware computation offloading in NOMA MEC under differentiated uploading delay[J]. IEEE Transactions on Wireless Communications, 2020, 19(4): 2813-2826. DOI:10.1109/TWC.2020.2968426 |
[22] |
YANG T, YANG J. Deep reinforcement learning method of offloading decision and resource allocation in MEC[J]. Computer Engineering, 2021, 47(8): 37-44. (in Chinese) 杨天, 杨军. MEC中卸载决策与资源分配的深度强化学习方法[J]. 计算机工程, 2021, 47(8): 37-44. |
[23] |
ALFAKIH T, HASSAN M M, GUMAEI A, et al. Task offloading and resource allocation for mobile edge computing by deep reinforcement learning based on SARSA[J]. IEEE Access, 2020, 8: 54074-54084. |
[24] |
KUANG Z F, LI L F, GAO J, et al. Partial offloading scheduling and power allocation for mobile edge computing systems[J]. IEEE Internet of Things Journal, 2019, 6(4): 6774-6785. DOI:10.1109/JIOT.2019.2911455 |
[25] |
YU X, SHI X Q, LIU Y X. Joint optimization of offloading strategy and power in mobile-edge computing[J]. Computer Engineering, 2020, 46(6): 20-25. (in Chinese) 余翔, 石雪琴, 刘一勋. 移动边缘计算中卸载策略与功率的联合优化[J]. 计算机工程, 2020, 46(6): 20-25. |
[26] |
SHUAI Y, LANGAR R, FU X, et al. Computation offloading with data caching enhancement for mobile edge computing[J]. IEEE Transactions on Vehicular Technology, 2018, 67(11): 11098-11112. DOI:10.1109/TVT.2018.2869144 |
[27] |
ZHOU Y, YU F R, CHEN J, et al. Resource allocation for information-centric virtualized heterogeneous networks with in-network caching and mobile edge computing[J]. IEEE Transactions on Vehicular Technology, 2017, 66(12): 11339-11351. DOI:10.1109/TVT.2017.2737028 |
[28] |
PHAM X Q, NGUYEN T D, NGUYEN V D, et al. Joint service caching and task offloading in multi-access edge computing: a QoE-based utility optimization approach[J]. IEEE Communications Letters, 2021, 25(3): 965-969. DOI:10.1109/LCOMM.2020.3034668 |