2. 杭州电子科技大学 计算机学院, 浙江 杭州 310018;
3. 清华大学 计算机科学与技术系, 北京 100084;
4. 南京大学 计算机科学与技术系, 江苏 南京 210023;
5. 南京邮电大学 计算机学院, 江苏 南京 210046
2. School of Computer Science, Hangzhou Dianzi University, Hangzhou 310018, China;
3. Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China;
4. Department of Computer Science and Technology, Nanjing University, Nanjing 210023, China;
5. School of Computer Science, Nanjing University of Posts and Telecommunications, Nanjing 210046, China
随着移动设备例如智能手机、传感器和穿戴设备的广泛使用, 相应的智能移动应用也随之产生, 包括人脸识别、视频应用等, 它们具有数据密集和时延敏感的特点, 如果计算延迟过高, 则会影响应用的服务质量. 边缘计算[1]在网络边缘部署了计算基础设施, 可以提供较高的计算性能和低延迟的服务, 所以将计算任务从移动设备卸载到物理距离邻近服务器上执行是一种可行的方案. 通过卸载应用中部分或者全部任务, 可以提升移动应用的服务质量. 然而, 由于边缘服务器和基站的资源有限, 并且需要同时服务多个移动设备[2-5], 当出现大量服务请求时任务处理的服务质量可能出现下降的情况[3], 这主要体现在引起较长的任务等待时延以及任务超时失效.
在任务卸载到边缘服务器之后, 任务之间的调度顺序将会进一步影响到各个任务的处理时延以及是否超时. 特别是在用户数量比较多, 而可用资源有限的情况下, 任务排队等待时间的影响会更加显著. 一般而言, 先分配处理器的任务更有可能获得更短的完成时间. 对于时延敏感任务, 能够在截止期限之前完成并且返回结果是关键的服务质量评价依据[6], 这对任务的资源分配提出了更高的要求. 此外, 卸载到边缘服务器上执行的任务可能来自不同的移动设备, 优化任务之间的调度顺序可以协调多个设备之间的优化目标. 通常使用的调度方法如先到先调度可能使得信道条件较稳定、传输数据量小的设备总是得到快速响应, 而信道状况较差、传输数据量大的设备所卸载的任务则总是无法在截止期限内完成, 从而无法很好地平衡多个设备的优化目标.
鉴于此, 本文主要研究可用资源受限的单基站、多个移动设备的典型边缘计算框架[6, 7], 并针对时延敏感任务提出了任务卸载和任务调度的联合优化策略. 该策略是一个基于强化学习的两步策略, 包括了带有替代回报的深度强化学习[8]的任务卸载方案和基于组合多臂赌博机(combinatorial multi-armed bandit, CMAB)的任务调度方案. 在每一个决策时隙, 卸载决策单元首先产生每个设备是否卸载任务的控制信号, 移动设备根据控制信号将任务卸载到服务器执行或者置于本机执行; 服务器收集到来自设备的任务之后, 根据调度单元生成的调度优先级执行任务调度, 并将奖励信号反馈给任务调度单元, 用以持续优化任务调度策略. 本文的主要贡献如下.
• 针对带截止期限的任务, 解决了在边缘计算平台资源有限条件下多用户任务卸载问题. 基于任务在终端和服务器端执行的两种情况, 本文设立了决策模型和最小化系统整体代价的优化目标, 并在调度阶段加入卸载成功率约束来改进多用户之间的公平性.
• 提出了基于 CMAB 的动态任务调度算法. 对资源受限的边缘计算平台, 采用李亚普诺夫(Lyapunov)优化方程将长期的卸载成功率约束和费用最小化目标转化为多阶段在线优化问题. 然后将任务调度问题建模为 CMAB 模型, 采用改进的 CUCB (combinatorial upper confidence bound)方法求解.
• 提出了协作任务卸载策略. 考虑动态改变的调度顺序带来回报值不稳定问题, 改进了基于扰动回报的深度 Q 学习方法来进行任务卸载决策. 在训练过程中对回报值扰动噪声进行拟合, 使用估计的替代回报代替直接观测的回报值. 其中多个用户的协作体现在共同更新替代回报估计矩阵、采用共享参数的方式训练以及同时观测环境并做决策.
• 仿真实验结果表明: 对于带截止期限的多用户任务卸载, 本文所提出的改进方案在边缘计算平台资源受限的场景下具有良好的适应性和可靠性保证, 相比于已有方法在整体性能上具有明显优势.
本文第1节介绍相关研究工作. 第2节介绍边缘环境下系统模型和问题描述. 第3节介绍基于强化学习的任务卸载和调度联合优化方案. 第4节分别介绍卸载和调度策略性能分析. 第5节通过仿真实验对算法进行性能评估和结果分析. 第6节对本文工作进行总结.
1 相关工作目前有很多学者从计算卸载和任务调度的优化角度进行了一些相关研究, 并且有一部分工作从不同角度出发探讨了资源受限的场景. 此外, 强化学习(reinforcement learning, RL)方法是一个广泛采纳的任务卸载解决方案. 本节从问题和解法两个角度出发, 介绍边缘环境下的任务卸载和任务调度的研究现状.
1.1 计算卸载和任务调度现有的任务卸载方法一般考虑固定的边缘服务器中任务调度策略[4]. 但是在计算资源受限的实际场景中, 任务在边缘服务器上的排队等待时间是影响服务质量不可忽视的因素, 传统的优化计算卸载决策的方法无法对服务器上任务处理时延进行优化. 因此有学者将任务调度和任务卸载进行联合优化或者针对计算卸载的任务特性设计优化的任务调度策略[7, 9-14]. 任务的处理时延优化[15, 16]以及兼顾各个用户的性能目标是计算卸载和任务调度联合优化中着重考虑的问题. 文献 [7] 中针对卸载任务异步到达边缘服务器的问题, 提出了服务器端的序列化的任务执行模型, 并且考虑了资源无限的理想化场景以及资源有限的实际场景. 文献 [11] 中研究了一个最小化移动设备能耗开销的任务卸载策略, 并且提出了在边缘服务器端基于动态优先级的任务调度策略. 文献 [14] 中不仅考虑了用户向MEC (multi-access edge computing)平台卸载任务的场景, 也考虑了用户之间进行任务卸载的可能. 在此模型下将问题建模为混合整数非线性规划问题. 他们首先提出了一个资源优化方案的闭式解, 然后基于块坐标下降方法导出较低计算复杂度的近似解.
已有一些研究工作致力于解决时延敏感任务的决策与调度问题[17-22]. 例如文献[17]提出了一种时间任务调度算法, 以在应用延迟约束内调度所有任务. 文献[18]提出一种基于深度强化学习的方法来调度混合云中的实时作业. 文献[19]提出了如何通过在能耗和任务执行时间之间进行良好的权衡来调整任务放置和资源分配. 然而这些工作并非针对有限资源场景下的任务调度. 文献[20]提出了一种在有限资源边缘计算场景下的串行任务卸载策略, 但未考虑多个终端之间的卸载公平性. 在兼顾多用户性能方面, 现有研究采用了不同的公平性指标来保证多用户之间的公平性. 文献 [13] 中设计了关于吞吐量的公平性指标; 文献 [12] 保证了虚拟机之间的公平性; 文献 [4, 7, 23] 通过最小化最长任务执行时间以保证公平性. 但是以上方法都没有考虑如何平衡多个时延敏感任务的调度目标, 并且所采用的启发式解法专注于即时回报, 可能造成最终性能下降.
1.2 基于强化学习的卸载决策不同于传统的基于即时回报的解法或是手工设计的启发式算法, 强化学习方法的优势在于可对长期目标进行优化, 并且具有更好的泛化性. 对于单基站多用户的任务卸载场景, 目前已有多种基于强化学习的解决方案. 文献 [24] 中采用了Q学习的方法来最小化所有用户的能耗, 同时考虑了任务的时延约束以及异构计算任务的动态资源需求. 作者将问题建模为一个混合整数非线性规划问题. 在每个决策时隙, MEC服务器需要决定每个任务是在设备终端还是在边缘服务器上执行以及信道资源分配. 该算法在多个不同场景下进行测试, 但其性能仅在小型基站下得到验证. 文献 [25] 中设计了一个基于强化学习的在线算法, 能在时变的无线信道状态下进行自适应计算卸载决策. 他们的方法将原优化问题解耦为卸载决策的子问题和资源分配的子问题, 并在连续的状态空间下起作用. 文献 [4] 中针对每个移动设备传输能力有限的场景, 导出优化的动态调度方法以最小化所有用户的最终能耗以及时延. 调度方法需要做出3类决策: 任务在终端还是服务器上执行; 对于需要进行任务卸载的设备, 需要分配多少传输能量; MEC服务器对每个任务分配多少计算资源. 文献 [3] 中基于基站中存在大规模用户的场景, 研究如何应对基站对卸载信号的检测出现遗漏的情况. 该策略令所有的用户轮流进行计算卸载, 而其他用户的动作在这一时隙是固定的. 为了避免网络的训练陷入局部最优, 以一定的概率随机作出动作. 实验结果表明这一方法可以在大规模用户场景下显现优势. 文献 [2] 中将用户分为多个组形成多个相互独立的MEC环境进行训练, 使用了分布式强化学习方法来提升训练的多样性. 方法基于A2C (advantage actor critic)的强化学习方法, 采用了自适应的n步训练方法来提升训练效率的同时避免由于分布式训练造成高偏差. 应对环境的不确定性, 文献 [2] 采用高斯噪声来增加策略的鲁棒性. 然而这些方法都无法处理有偏观测回报, 即真实的回报值因为环境扰动而在观测时改变为其他回报. 这种回报值的有偏性会使策略出现不可控的改变.
基于以上分析, 本文提出的策略针对时延敏感任务的卸载优化问题. 其中对于资源受限的边缘计算系统平衡系统总体性能和各个用户的性能指标, 并且采用带有替代回报值的强化学习方法提高卸载决策的鲁棒性.
2 模型及问题描述本节的场景介绍包括决策模型、任务处理时延约束模型、任务在本机设备和边缘服务器的执行模型, 然后对计算卸载和任务调度的联合优化问题做出描述. 单基站多用户的场景模型如图1所示, 其中红色箭头表示执行任务卸载. 令
![]() |
图 1 单基站多用户系统模型 |
2.1 决策模型
为了在不损害总体性能的前提下兼顾多个用户的性能目标, 不仅需要对任务是否卸载进行决策来最小化设备的整体开销, 还需要保证每个设备所卸载的任务都能以一定概率在截止期限内完成. 而任务的时延和排队等待时间相关, 因此解决这一问题需要同时对卸载和调度顺序进行决策. 在每个决策时隙, 决策的执行分别基于卸载决策单元和任务调度单元. 本文采用文献 [2] 中的任务模型, 假设设备
在决策时隙开头, 卸载决策单元根据系统状态, 对每个设备产生的任务做出决策
在卸载的任务(
如果任务
$ \tau _{{i}}^l = \frac{{{c_i}}}{{c{p_i}}} + {q_i} $ | (1) |
能耗开销费用计算如下:
$ e_i^l = {c_i} \cdot {\beta _i} \cdot \lambda $ | (2) |
其中,
$ C_i^l = \left\{ \begin{array}{*{20}{l}} {e_i^l} , &{\tau _i^l \leqslant {d_i}} \\ \Xi , &{{\rm{otherwise}}} \end{array} \right.$ | (3) |
如果任务
$ {\sigma _i} = \omega \cdot {\log _2}\left(1 + \frac{{{p_i} \cdot {g_{i, e}}}}{{{\varpi _{i, e}} + \displaystyle\sum\nolimits_{j \in {\boldsymbol{U}}\backslash \left\{ i \right\};{a_i} \ne {a_j}} {{p_j} \cdot {g_{i, e}}} }}\right) $ | (4) |
其中,
$ \tau _i^{tr, e} = \frac{{{k_i}}}{{{\sigma _i}}} $ | (5) |
由于基站到设备端的下行传输率相对上行传输率较高, 并且任务的结果数据量通常较小, 所以返回结果所产生的能耗以及结果数据的传输时间可忽略不计[27].
类似于本机处理, 任务
$ \tau _i^e = \tau _i^{tr, e} + \tau _i^{{\rm{comp}}, e} $ | (6) |
其中,
$ \tau _i^e = \tau _i^{tr, e} + \tau _i^{{\rm{comp}}, e} $ | (7) |
边缘计算的能耗开销包含了因任务执行向边缘服务器支付的费用以及数据传输带来的能耗开销, 计算如下:
$ e_i^e = {c_i} \cdot {\beta _e} + \tau _i^{tr, e} \cdot {p_i} \cdot \lambda $ | (8) |
其中,
和本机处理类似, 卸载到边缘服务器的任务也须在截止期限内完成. 因此任务卸载的开销计算如下:
$ C_i^e = \left\{ \begin{array}{*{20}{l}} {e_i^e} , &{\tau _i^e \leqslant {d_i}} \\ \Xi , &{{\rm{otherwise}}} \end{array} \right.$ | (9) |
对于单基站多用户的计算卸载, 边缘服务器是共享资源, 所以对卸载任务的执行成功率建立约束以保证用户之间的公平性. 如果等待时间给任务执行带来明显影响, 并且影响到达一定程度导致任务过期, 那么任务即使完成也不再具有实际意义时则判定该任务执行失败. 反之, 任务在截止期限内完成则判定为成功执行. 为了权衡所有用户的性能目标, 我们对需要在服务器上等待的任务引入长期的卸载成功率约束, 即:
$ \mathop {\lim }\limits_{T \to \infty } \frac{1}{T}\sum\limits_{t = 1}^T {{\boldsymbol{E}}\left[ {s_{i, t}^e} \right]} \geqslant \kappa $ | (10) |
其中,
综合以上模型和评价指标, 优化问题可以表示为:
$ ({\rm{P}}1) \; \min \sum\limits_{t = 1}^T {\sum\limits_{i = 1}^U {(1 - {b_{i, t}})} } \cdot C_{i, t}^e + {b_{i, t}} \cdot C_{i, t}^l \tag{11a}$ |
$ {\rm{s}}.{\rm{t}}. \; {{{b}}_i} \in \left\{ {0, 1} \right\},\;{i \in \boldsymbol{U}} \tag{11b} $ |
$ \mathop {\lim }\limits_{T \to \infty } \frac{1}{T}\sum\limits_{t = 1}^T {{\boldsymbol{E}}\left[ {s_{i, t}^e} \right]} \geqslant \kappa \tag{11c}$ |
这是一个带约束的多目标优化问题.由于约束和时间紧密耦合, 因此难以用通常的离线算法进行求解. 因此把目标(P1)分解为计算卸载(SUB1-P1)和任务调度(SUB2-P1)两个子问题, 即:
$ ({\rm{SUB}}1\text{-}{\rm{P}}1) \; \min \sum\limits_{t = 1}^T {\sum\limits_{i = 1}^U {\left( {1 - {b_{i, t}}} \right)} } \cdot C_{i, t}^l + {b_{i, t}} \cdot C_{i, t}^e \tag{12a}$ |
$ {\rm{s}}.{\rm{t}}. \; {b_{i, t}} \in \left\{ {0, 1} \right\}, \;{i \in {\boldsymbol{U}}} \tag{12b} $ |
和
$ ({\rm{SUB}}2\text{-}{\rm{P}}1) \; \min \sum\limits_{t = 1}^T {\sum\limits_{i = 1}^U {s_{i, t}^e} } \cdot {c_{i, t}} \cdot {\beta _e} \tag{13a}$ |
$ {\rm{s}}.{\rm{t}}. \; s_{i, t}^e \leqslant {b_{i, t}} \tag{13b}$ |
$ \mathop {\lim }\limits_{T \to \infty } \frac{1}{T}\sum\limits_{t = 1}^T {{\boldsymbol{E}}\left[ {s_{i, t}^e} \right]} \geqslant \kappa \tag{13c}$ |
由于任务调度仅针对卸载到服务器端的任务, 假定调度单元可以根据调度顺序预估任务的处理时延, 对于无法在截止期限内完成的任务不予执行, 而是将资源腾出给其他需要执行的任务, 由此可以进一步减少任务执行所需的费用并提升任务成功执行的整体概率.
3 计算卸载与任务调度的联合优化 3.1 基于李亚普诺夫框架的调度优化问题转化本文利用李亚普诺夫框架将调度问题转化为可求解的在线优化问题. 首先分别为每个设备引入一个虚拟队列, 在时隙
$ {Y_{i, t + 1}} = \max \left\{ {{Y_{i, t}} + {{\kappa}} - s_{i, t}^e, 0} \right\} $ | (14) |
接下来介绍定理1来证明这一规则的合理性.
定理1. 长期时延约束成立当且仅当在决策过程中虚拟队列保持稳定的平均比率.
证明: 根据排队论[28], 如果所有的虚拟队列在决策过程中保持稳定的平均比率(
$ \frac{1}{T}\mathop {\lim }\limits_{T \to \infty } \sum\limits_{t = 1}^T {{\boldsymbol{E}}\left[ {\left| {{{\boldsymbol{O}}_t}} \right| \cdot {{\kappa}} - \left| {{\boldsymbol{S}}_t^e} \right|} \right]} \leqslant 0 $ | (15) |
其中,
通过定理1, 时隙耦合的约束转化为在决策过程中保持虚拟队列具有稳定的平均比率. 为达到这一目的, 一个直接的方式就是限定虚拟队列的每一次增长. 基于此, 我们通过李亚普诺夫优化技术来限制虚拟队列长度的增加, 同时最小化SUB2-P1的目标. 建立的李亚普诺夫二次方程如下:
$ L\left( {{\boldsymbol{\varTheta }}\left( t \right)} \right) = \frac{1}{2}\sum\limits_{i \in {\boldsymbol{U}}} {Y_{i, t}^2} $ | (16) |
其中,
为限制每个时隙虚拟
$ \Delta L ( {\boldsymbol{\varTheta }}( t ) ) = {\boldsymbol{E}}\left[ L ( {\boldsymbol{\varTheta }( {t + 1} )} ) - L( {{\boldsymbol{\varTheta }}( t )} )|{\boldsymbol{\varTheta }}\left( t \right) \right] $ | (17) |
合并考虑SUB2-P1目标即最小化任务执行的总费用, 可以得到如下方程:
$ f\left( {{\boldsymbol{S}}_t^e} \right) = \Delta L\left( {{\boldsymbol{\varTheta }}\left( t \right)} \right) + X \cdot {\boldsymbol{E}}\left[ {\sum\limits_{i \in {\boldsymbol{U}}} {s_{i, t}^e \cdot {c_i} \cdot {\beta _e}|{\boldsymbol{\varTheta }}\left( t \right)} } \right] $ | (18) |
其中,
定理2.
$ \Delta L\left( {{\boldsymbol{\varTheta }}\left( t \right)} \right) + X \cdot {\boldsymbol{E}}\left[ {\sum\limits_{i \in {\boldsymbol{U}}} {s_{i, t}^e \cdot {c_i} \cdot {\beta _e}|{\boldsymbol{\varTheta }}\left( t \right)} } \right] \\ \leqslant \Gamma + \sum\limits_{i = 1}^U {{Y_{i, t}} \cdot {\boldsymbol{E}}\left[ {\kappa - s_{i, t}^e|{\boldsymbol{\varTheta }}\left( t \right)} \right] + X \cdot {\boldsymbol{E}}\left[ {\sum\limits_{i = 1}^U {s_{i, t}^e \cdot {c_i} \cdot {\beta _e}} |{\boldsymbol{\varTheta }}\left( t \right)} \right]} $ | (19) |
其中,
证明: 将演化方程求平方, 可得:
$ Y_{i, t + 1}^2 = Y_{i, t}^2 + 2 \cdot {Y_{i, t}} \cdot \left( {\kappa - s_{i, t}^e} \right) + {\left( {\kappa - s_{i, t}^e} \right)^2} $ | (20) |
$ \frac{1}{2} \cdot \left( {Y_{i, t + 1}^2 - Y_{i, t}^2} \right) = \frac{1}{2} \cdot {\left( {\kappa - s_{i, t}^e} \right)^2} + {Y_{i, t}} \cdot \left( {\kappa - s_{i, t}^e} \right) \leqslant \frac{1}{2} \cdot \left( {{\kappa ^2} + {{\left( {s_{i, t}^e} \right)}^2}} \right) + {Y_{i, t}} \cdot \left( {\kappa - s_{i, t}^e} \right) \leqslant \frac{1}{2} \cdot \left( {{\kappa ^2} + 1} \right) + {Y_{i, t}} \cdot \left( {\kappa - s_{i, t}^e} \right) $ | (21) |
由此可得:
$ \Delta L\left( {{\boldsymbol{\varTheta }}\left( t \right)} \right) \leqslant \Gamma + \sum\limits_{i \in {\boldsymbol{U}}} {{Y_{i, t}} \cdot {\boldsymbol{E}}\left[ {\kappa - s_{i, t}^e|{\boldsymbol{\varTheta }}\left( t \right)} \right]} $ | (22) |
将
因此, 在线调度问题形式化为:
$ ({\rm{SUB}}2\text{-}{\rm{P}}2) \; {\min _{{{\boldsymbol{S}}}_t^e}}\Gamma + \sum\limits_{i \in {\boldsymbol{U}}} {{Y_{i, t}} \cdot \left( {\kappa - s_{i, t}^e} \right)} + X \cdot \sum\limits_{i \in {\boldsymbol{U}}} {s_{i, t}^e \cdot {c_i} \cdot {\beta _e}}\tag{23a}$ |
${\rm{s}}.{\rm{t}}. \; s_{i, t}^e \leqslant {b_{i, t}} \tag{23b}$ |
$ s_{i, t}^e \in \left\{ {0, 1} \right\}\tag{23c} $ |
为简化表达式, 我们将常数项去除, 可得:
$({\rm{SUB}}2\text{-}{\rm{P}}3) \; {\min _{{{\boldsymbol{S}}}_t^e}}\sum\limits_{i \in {\boldsymbol{U}}} {{Y_{i, t}} \cdot \left( {\kappa - s_{i, t}^e} \right)} + X \cdot \sum\limits_{i \in {\boldsymbol{U}}} {s_{i, t}^e \cdot {c_i} \cdot {\beta _e}} \tag{24a}$ |
$ {\rm{s}}.{\rm{t}}. \; s_{i, t}^e \leqslant {b_{i, t}}\tag{24b} $ |
$s_{i, t}^e \in \left\{ {0, 1} \right\}\tag{24c} $ |
本文改进基于多臂赌博机(multi-armed bandit, MAB)的强化学习方法[26,29-32]来求解调度排序问题. MAB通常用于在不确定的环境下处理在线优化问题. 一个基本的MAB模型包括一个具有多个相互独立摇臂的开槽机, 每拉动一个摇臂会反馈相应的奖励, 奖励的分布函数未知. 赌徒在每一轮中根据规则拉动一个或多个摇臂, 使得累积奖励最大. 我们将任务排序建模为一个组合多臂赌博机(CMAB)问题.
定义1 (CMAB模型). 令每个设备的索引作为一个摇臂, 即
定义2 (奖励函数). 在第
$ {r_{i, t}} = {Y_{i, t}} \cdot s_{i, t}^e - X \cdot s_{i, t}^e \cdot {c_i} \cdot {\beta _e} $ | (25) |
根据CUCB对于奖励期望的定义, 在时隙s结束摇臂
$ { \hat \mu _i} = \left( {\sum\limits_{t = 1}^s {{r_{i, t}}} } \right)/{T_{i, s}} $ | (26) |
超臂奖励期望的计算则是采用线性加和的方式, 即超臂的奖励是超臂内所包含所有摇臂的奖励之和. 因此, 超臂
$ {r_t} = \sum\limits_{{\phi _i} \in {{\boldsymbol{\varPhi }}_t}} {{r_{i, t}}} $ | (27) |
基于以上定义, 算法1中展示了调度顺序生成算法. 对于卸载任务的设备所对应摇臂, 首先根据
算法1. 调度顺序生成算法.
输入:
输出:
1. 初始化:
2. 使用
3. 初始化一个键值对空集合
4. 令位次索引
5. for
6.
7.
8. if
9. 中止循环
10. 根据
算法2展示了基于CMAB的任务调度流程, 即在执行实际的任务调度的同时不断优化摇臂分布. 算法2中, 首先将每个摇臂的
![]() |
图 2 时隙t基于CMAB的任务调度流程图 |
算法2. 基于CMAB的任务调度机制.
输入:
输出:
1. 初始化:
2. 对于每个摇臂
3.
4. for
5. 对于每个摇臂
6. 使用算法1得到任务的调度顺序
7. 依据调度顺序执行任务, 并得到每一个任务是否成功执行的信息
8. 所有满足
9. 根据公式(26)更新
10. 根据公式(14)更新本轮执行任务卸载对应设备的
11. 根据公式(25)和公式(27)得到超臂的奖励
12.
13.
本节介绍如何改进基于DQN的强化学习方法来求解任务卸载问题. DQN算法基于值函数近似, 是深度强化学习的基本算法之一. 本节首先将任务卸载决策建模为一个MDP模型[33]. 一个典型的MDP模型包含5个元素, 即
$ {R_{i, t}} = - \left( {\left( {1 - {b_{i, t}}} \right) \cdot C_{i, t}^l + {b_{i, t}} \cdot C_{i, t}^e} \right) $ | (28) |
由于卸载任务是否在截止期限以前完成与调度顺序有关, 所以边缘服务器上任务的调度顺序会影响到强化学习agent获得的回报. 例如, 考虑4个标号为1, 2, 3, 4设备的任务卸载场景. 对于设备4, 时隙t和时隙k
因为任务调度顺序不断动态调整, 扰动回报出现的概率较大, 因此需要对扰动回报进行修正. 假设任务的计算负载取值范围是
基于文献 [36] 中的引理2, 本文采用替代回报
定义3 (替代回报). 假设矩阵
$ {\hat {\mathbb{R}}} = {\mathbb{F}^{ - 1}} \cdot \mathbb{R} $ | (29) |
使得
本文采用带有替代回报的DQN算法进行卸载决策. 在状态
![]() |
图 3 带有替代回报的DQN流程图 |
$ Q\left( {{S_{i, t}}, {A_{i, t}}} \right) \leftarrow Q\left( {{S_{i, t}}, {A_{i, t}}} \right) + \alpha \cdot \left[ {{R_{i, t}} + \gamma \cdot {{\max }_\pi }Q\left( {{S_{i, t + 1}}, {A_{i, t + 1}}} \right) - Q\left( {{S_{i, t}}, {A_{i, t}}} \right)} \right] $ | (30) |
其中,
$ {L_{i, t}}\left( {{\theta _i}} \right) = {\boldsymbol{E}}\left[ {{{\left( {{R_{i, t}} + \gamma \cdot {{\max }_a}A\left( {{S_{i, t + 1}}, a, \theta _{i,t}^ - } \right) - Q\left( {{S_{i, t}}, {A_{i, t}}, {\theta _{i,t}}} \right)} \right)}^2}} \right] $ | (31) |
如图3所示, 从环境反馈的回报值需要转化为估计的替代回报
$ \bar R \left( {S, A} \right) = \arg {\max _{{R_i} \in {\boldsymbol{R}}}} \bot \left[ {\bar R \left( {S, A} \right) = {R_i}} \right] $ | (32) |
$ {\tilde f_{j, k}} = \frac{{\displaystyle\sum\nolimits_{\left( {S, A} \right) \in {{\mathbb{S}}} \times {{\mathbb{A}}}} { \bot \left[ {\tilde R\left( {S, A} \right) = {R_k}|\bar R \left( {S, A} \right) = {R_j}} \right]} }}{{\displaystyle\sum\nolimits_{\left( {S, A} \right) \in {{\mathbb{S}}} \times {{\mathbb{A}}}} { \bot \left[ {\bar R \left( {S, A} \right) = {R_j}} \right]} }} $ | (33) |
其中,
在DQN训练阶段, 本文利用分布式的模型训练方式[37]: 每个agent维护相应的DQN模型参数
$ {\theta _{t + 1}} \leftarrow \frac{1}{M}\sum\limits_{i = 1}^M {{\theta _{i, t}}} $ | (34) |
算法3. 替代函数估计策略.
输入:
输出: 替代回报
1. if 对
2. 根据公式(32)得到预测的真实回报
3. 根据公式(33)基于
4. 根据公式(31)得到估计的替代回报
算法4展示具体的计算卸载策略. 其中所有的agent共同更新同一个错误率估计矩阵
算法4. 基于替代函数估计的计算卸载策略.
输入:
输出:
1. 初始化: 随机初始化值函数
2. for
3. 初始化状态
4. while S 不是终止状态 do
5. 每个agent随机选择一个动作
6. 每个agent 执行相应动作
7. 每个agent使用算法3得到相应的估计回报
8. for
9. 初始化状态
10. while S 不是终止状态 do
11. 每个agent采用概率
12. 否则
13. 每个agent使用算法3得到估计的回报
14. 每个agent将
15. 每个agent从
16. 每隔N轮迭代将模型参数
17. 每个agent关于
18. 采用公式(34)的模型聚合方法得到模型参数
19. 返回
本节给出任务卸载以及调度策略的性能评估. 根据所采用的算法, 本文对调度算法和卸载策略分别选取不同的性能评估指标. 对基于CMAB的任务调度策略, 本文采用遗憾界限(regret bound)来衡量算法的性能; 对带有替代回报的任务卸载策略, 本文讨论回报函数的方差和模型训练过程中的采样复杂度. 下面分别从任务调度和任务卸载两方面进行详细分析.
首先给出调度算法的收敛性证明. 根据CMAB收敛性分析[27], 定理3给出了任务调度算法的后悔度上界.
定理3. 令
$ {\left( {{{\frac{{2 \cdot \ln t \cdot \left( {\displaystyle\sum\nolimits_{i \in {{\boldsymbol{O}}_t}} {t \cdot \kappa } } \right)}}{{3 \cdot {U^2}}}}^3} + {{\frac{{2 \cdot \ln t \cdot \left( {\displaystyle\sum\nolimits_{i \in {{\boldsymbol{O}}_t}} {{Y_{i, t}} + X \cdot \displaystyle\sum\nolimits_{i \in {{\boldsymbol{O}}_t}} {{c_i} \cdot {\beta _e}} } } \right)}}{{{U^2}}}}^3}} \right) + \left( {\frac{\pi }{3} + 1} \right)} \cdot \left| {{{\boldsymbol{O}}_t}} \right| \cdot \left( {\sum\limits_U {t \cdot \kappa } } \right) $ | (35) |
证明: 假设时隙
$ \Delta _{\min }^i = \min \left\{ {\left\{ {{v_t}\left( {\boldsymbol{\varPhi }} \right)|{\boldsymbol{\varPhi }} \in {{\boldsymbol{\varPhi }}_B}} \right\} - {v_{{t}}}\left( {{{\boldsymbol{\varPhi }}^*}} \right)} \right\} $ | (36) |
$ \Delta _{\max }^i = \max \left\{ {\left\{ {{v_t}\left( {\boldsymbol{\varPhi }} \right)|{\boldsymbol{\varPhi }} \in {{\boldsymbol{\varPhi }}_B}} \right\} - {v_{{t}}}\left( {{{\boldsymbol{\varPhi }}^*}} \right)} \right\} $ | (37) |
其中,
因此可得:
$ $ |
$ {v_t}\left( {{{\boldsymbol{\varPhi }}^*}} \right) - {v_t}\left( {\boldsymbol{\varPhi }} \right) = X \cdot \left( {{c_t}\left( {{\boldsymbol{S}}_t^{e*}, {{\boldsymbol{\varPhi }}^*}} \right) - {c_t}\left( {{\boldsymbol{S}}_t^e, {\boldsymbol{\varPhi }}} \right)} \right) + \left( {{d_t}\left( {{\boldsymbol{S}}_t^{e*}, {{\boldsymbol{\varPhi }}^*}} \right) - {d_t}\left( {{\boldsymbol{S}}_t^e, {\boldsymbol{\varPhi }}} \right)} \right) $ | (38) |
假设时隙t卸载到服务器的任务集合为
$ - \sum\limits_{i \in {{\boldsymbol{O}}_t}} {{c_i} \cdot {\beta _e}} \leqslant {c_t}\left( {{\boldsymbol{S}}_t^e, {\boldsymbol{\varPhi }}} \right) \leqslant 0 $ | (39) |
当所有卸载的任务都在截止期限内完成取最小值, 所有任务都超时取最大值.
对于
$ 0 \leqslant {d_t}\left( {{\boldsymbol{S}}_t^e, {\boldsymbol{\varPhi }}} \right) \leqslant \sum\limits_{i \in {{\boldsymbol{O}}_t}} {{Y_{i, t}}} \leqslant \sum\limits_{i \in {{\boldsymbol{O}}_t}} {t \cdot \kappa } $ | (40) |
因此有
$ \sum\limits_{i \in {\boldsymbol{S}}_t^e} {\left( {\frac{{6 \cdot \ln t \cdot {{\left( {\Delta _{\min }^i} \right)}^3}}}{{{U^2}}} + \int_{\Delta _{\min }^i}^{\Delta _{\max }^i} {\frac{{6 \cdot \ln t \cdot {x^2}}}{{{U^2}}}dx} } \right)} + \left( {\frac{\pi }{3} + 1} \right) \cdot \left| {{\boldsymbol{S}}_t^e} \right| \cdot {\Delta _{\max }} $ |
$ \begin{aligned}[b] &< \sum\limits_{i \in {{{\boldsymbol{O}}_t}} } {\left( {\frac{{6 \cdot \ln t \cdot {{\left( {\Delta _{\min }^i} \right)}^3}}}{{{U^2}}} + \frac{{2 \cdot \ln t \cdot {{\left( {\Delta _{\max }^i} \right)}^3}}}{{{U^2}}}} \right)} + \left( {\frac{\pi }{3} + 1} \right) \cdot \left| {{{\boldsymbol{O}}_t}} \right| \cdot {\Delta _{\max }}\\ &< {\left( {\frac{{2 \cdot \ln t \cdot {{\left( {\displaystyle\sum\nolimits_{i \in {{\boldsymbol{O}}_t}} {t \cdot \kappa } } \right)}^3}}}{{3 \cdot {U^2}}} + \frac{{2 \cdot \ln t \cdot {{\left( {\displaystyle\sum\nolimits_{i \in {{\boldsymbol{O}}_t}} {{Y_{i, t}}} + X \cdot \sum\nolimits_{i \in {{\boldsymbol{O}}_t}} {{c_i} \cdot {\beta _e}} } \right)}^3}}}{{{U^2}}}} \right)} + \left( {\frac{\pi }{3} + 1} \right) \cdot \left| {{{\boldsymbol{O}}_t}} \right| \cdot \left( {\sum\limits_{i \in {\boldsymbol{U}}} {t \cdot \kappa } } \right) \end{aligned} $ | (41) |
由此可得公式(35)成立. 证毕.
该定理是为了说明文中所提出的在线决策算法与最优策略
关于任务卸载算法, 性能分析如定理4所示.
定理4.
1) 替代回报的方差界为:
$ {\boldsymbol{Var}}\left( R \right) \leqslant {\boldsymbol{Var}}\left( {\hat R} \right) \leqslant \frac{{{{\left( {\Omega + 1} \right)}^2}}}{{\det {{\left( \mathbb{F} \right)}^2}}} \cdot R_0^2 $ | (42) |
$ k = O\left( {\frac{{T \cdot \left( {{q_{e,\max }} \cdot q_{\max}} \right) \cdot \left( {M + 1} \right)}}{{{\varepsilon ^2} \cdot {{\left( {1 - \gamma } \right)}^2} \cdot \det {{\left( \mathbb{F} \right)}^2}}}\log \frac{{T \cdot \left( {{q_{e,\max }} \cdot {q_{\max }}} \right) \cdot \left( {M + 1} \right)}}{\delta }} \right) $ | (43) |
其中, 错误率
证明: 首先给出方差界的证明.
根据文献[34]中定理3可得:
$ {\boldsymbol{Var}}\left( R \right) \leqslant {\boldsymbol{Var}}\left( {\hat R} \right) \leqslant \frac{{{{\left( {\Omega + 1} \right)}^2}}}{{\det \left( \mathbb{F} \right)}} \cdot R_0^2, \;{R \in {\boldsymbol{R}}} $ | (44) |
又因为:
$ \frac{{{{\left( {\Omega + 1} \right)}^2}}}{{\det \left( \mathbb{F} \right)}} \cdot R_0^2 \leqslant \frac{{{{\left( {\Omega + 1} \right)}^2}}}{{\det {{\left( \mathbb{F} \right)}^2}}} \cdot R_0^2 $ | (45) |
综合公式(44)和公式(45), 公式(42)得证.
对于每个agent, 状态空间大小为
又因为
从系统开销角度分析, 相比于文献[13, 21, 24]等基于一般强化学习方法的卸载方案, 该方法增加的额外开销主要包括训练时产生的通信和计算开销
本节对计算卸载和任务调度策略的性能进行仿真实验, 旨在于评估任务调度算法对于任务超时问题的优化程度、任务卸载策略对于环境扰动的鲁棒性以及二者的整体性能. 仿真实验采用实验室服务器, CPU为7核的Intel(R) Xeon(R) CPU E5-2678, 主频为2.5 GHz, 内存大小为32 GB. 操作系统为Red Hat 4.8.5-44. GPU为RTX 2080 Ti. 本节首先探究环境参数(包括设备数目和服务器最大队列长度)对于算法性能的影响, 然后分别对任务调度和卸载策略分别进行性能分析. 和文献[2, 19]一致, 本节使用人脸识别应用的历史日志作为任务参数来模拟带有时延约束的计算密集型任务, 日志中包含用户id信息. 其中输入数据量和CPU周期的取值范围分别是 [471, 6583] KB和 [49, 1123] MHz. 任务截止期限为1000, 执行超时罚数为2000. 其余环境参数定义如表1所示.
![]() |
表 1 基站、边缘服务器和移动设备的环境参数 |
为测试各个改进部分(约束优化目标设计、任务调度策略和带替代回报的卸载策略)的性能, 本文实现了本文所提出的算法(RLSR-CMAB)和以下几个基线算法.
• RL-CMAB: 采用带有一般回报函数的深度Q学习方法进行计算卸载决策, 以及采用基于CMAB的算法产生调度顺序.
• RANDOM-CMAB: 随机决定任务本地处理或者卸载处理, 在本机或者边缘服务器. 以及采用基于CMAB的算法产生调度顺序.
• RLSR-FCFS: 在每个决策时隙采用带有扰动回报的深度Q学习方法进行卸载决策, 任务调度采用先到先服务的策略.
• RLSR-GREEDY: 在每个决策时隙采用带有扰动回报的深度Q学习方法进行计算卸载决策, 在调度方面采用相同的优化目标和约束条件, 并采用贪心算法每次产生使目标函数(公式(24a))最小的调度顺序.
此外, 还将本文算法与相关的已有工作[3, 21, 24]进行对比: 1) 对于时延敏感任务, 以最小化能耗为目标, 采用基于Q学习的卸载策略(QECO)[24]; 2)以最小化用户计算开销为目标, 采用基于DQN的分布式卸载策略(DRLDCO)[3]; 3) 对于时延敏感任务, 以最小化能耗为目标, 采用基于DDQN (double deep neural network)的卸载决策(DRLECO)[21]. 所有开销的计算均基于本文的系统模型.
根据实验目的和本文算法的优化目标, 在实验中设置了如下性能指标.
• 累计系统开销:运行一个epoch所有设备的累计开销之和.
• 卸载率: 在测试数据集上运行一个epoch所有设备的累计卸载次数之和与累计任务数之和比率.
• 最小卸载成功率: 在测试数据集上运行一个epoch所有设备中最小的累计卸载任务执行成功率.
其中卸载成功率指单个设备卸载到服务器并在截止期限前完成的累计任务数与卸载到服务器执行的累计任务数之比. 由于本文是以最小卸载成功率来约束公平性, 对应于该公平性约束, 所以比较的是最小卸载成功率. 任务调度算法是在卸载决策的基础上优化边缘服务器端的任务调度机制, 仅涉及卸载到边缘服务器端的任务, 并且不改变卸载策略, 所以不会导致所有任务整体截止期限满足率的下降. 另外, 在带有扰动回报的深度Q学习算法中, 折扣因子
本组实验研究设备数量对不同卸载和调度策略的影响, 即算法的扩展性能. 参数配置为: 边缘服务器组包含有16个处理器, 每个移动设备装载双核CPU. 实验中不考虑队列长度的限制.
从图4(a)和图4(b)可知: 随着设备数目增加, RLSR-CMAB、RLSR-FCFS、RLSR-GREEDY和RL-CMAB策略的系统总开销都会明显提高, 同时卸载任务的执行成功率也逐渐下降, 主要是随着设备数目增加, 每个时隙产生的待处理任务数增加, 对处理器的竞争加剧, 边缘服务器无法提供足够的资源同时处理多个设备的请求. 在服务器提供资源不足的情况下, 采用替代回报的方案(RLSR-CMAB、RLSR-FCFS、RLSR-GREEDY)倾向于将任务放在本地执行, 所以资源不足的影响相对较小, 卸载任务执行成功率较高. 其中RLSR-FCFS策略和RLSR-GREEDY策略相比, 两者的性能相近, 说明采用贪心策略进行调度优化程度有限. 而RLSR-CMAB算法系统开销和任务执行成功率均较优. 而相比于可针对大规模设备的分布式卸载策略DRLDCO, RLSR-CMAB在累计系统开销和小卸载成功率方面均具有更优的性能. 从表2可以看出, 在设备数较少的情况下, 表明服务器和基站资源充足, 采用替代回报的方案RLSR-CMAB具有较高的卸载率; 随着设备数增加, 卸载到服务器的任务可能出现失效, 并且通信开销因数据传输速率降低而增大, 这时RLSR-CMAB具有明显较低的卸载率, 任务更多地放在设备执行; 而带有普通回报函数的卸载策略无法针对服务器资源是否充裕做出相应的卸载决策, 在设备数目较小的情况下反而具有更低的卸载率, 在服务器资源不充裕的情况下更多将任务放至服务器执行, 从而导致了性能的下降.
![]() |
图 4 设备数目对累计系统开销和卸载成功率的影响 |
![]() |
表 2 设备数目对卸载率的影响 |
4.2 队列长度限制的影响
本组实验研究服务器队列长度限制对不同卸载和调度策略的影响. 参数配置为: 边缘服务器组包含有16个处理器, 每个移动设备装载双核CPU.
从图5(a)和图5(b)可知: RLSR-CMAB、RLSR-GREEDY、RLSR-FCFS和RL-CMAB的任务执行成功率都与最大队列长度呈正相关. 在队列长度过短会引起卸载任务直接失效的情况下, 带有替代回报的策略RLSR-CMAB相比于其他基线算法具有明显更小的系统总开销和卸载任务执行成功率. 这是因为带有替代回报的卸载策略倾向于通过将任务置于本地执行来缓解服务器资源的紧张, 缩短了任务在边缘服务器的平均等待时间; 而基于CMAB策略的任务调度方案则会折中卸载成功率以及系统开销两个目标来优化系统的整体性能. 此外, RLSR-CMAB相比于已有算法在系统开销和最小卸载成功率方面均有更好的性能. 从后文表3可以看出, 在最大队列长度远小于设备数的情况下, 表明服务器资源不足, 卸载到服务器的任务可能出现失效, 采用替代回报的方案具有较低的卸载率; 随着队列长度限制放宽, 带有替代回报的方案卸载率逐渐增加, 因为此时服务器端相比于终端产生的开销较小, RLSR-CMAB考虑向边缘服务器提交更多的卸载请求; 而RL-CMAB策略无法对服务器资源是否充裕进行正确的观测, 因为回报值存在较大偏差, 所以在不同队列长度限制的情况下卸载率相差不大, 从而导致了性能的下降. RLSR-CMAB相对于已有的3个算法具有更好的性能. 这是因为QECO和DRLECO无法通过动态调整调度顺序以保证截止期限满足率, 而DRLDCO算法未设置截止期限约束, 因此对于时延敏感任务卸载的性能较差.
![]() |
图 5 队列长度对累计系统开销和卸载成功率的影响 |
![]() |
表 3 最大队列长度对于卸载率的影响 |
在本组实验中, 仅将RLSR-CMAB与同为分布式设计的已有算法DRLDCO进行比较. 而QECO和DRLECO均为集中式算法. 在边缘计算中, 用户使用免授权多址方案将其任务数据传输到基站, 然后基站检测卸载用户并解码任务数据. 如果是集中式计算卸载, 可能会出现漏检情况, 并且漏检概率随着卸载用户总数的增加而增加. 此外, 基于强化学习的集中式计算卸载方案的训练复杂度更高, 并且随着用户数的增多, 状态以及动作空间将急剧增加. 因此, 分布式的卸载策略对于较大规模用户具有更好的适应性.
4.3 调度策略的性能评估本组实验研究在卸载策略相同的情况下, 不同参数对于调度策略的影响. 参数配置为: 边缘服务器组包含有16个处理器, 设备数目为20, 每个移动设备装载双核CPU.
首先固定X 值为0.03, 研究
![]() |
表 4 不同
|
4.4 卸载策略的性能评估
本组实验研究在训练过程中, 不同m值对卸载策略的影响. 参数配置为: 边缘服务器组包含有16个处理器, 设备数目为25, 每个移动设备装载双核CPU. 实验中没有设置最大队列长度.
从图7(a)和图7(b)可以看出, m=40和m=120时算法具有相似的曲线, 并且带有替代回报的方法具有更低的累计系统开销. 并且从第1个epoch开始, 带有替代回报的策略累计回报即相对更低, 这是因为在训练DQN之前就已经对替代回报估计参数进行了20轮epoch的拟合. 从图7(c)和图7(d)可以看出, 当m取值增大, 二者训练过程更加稳定, 并且损失函数方差减小. 这是因为当m值增大时, 强化学习agent观测到的回报值更接近于连续回报值, 而m值较小时则偏差较大. 实验结果表明相比于直接使用观测的回报函数, 使用替代回报可以使得任务卸载收敛到一个较优策略. 这是因为替代回报相比于观测回报具有更小的偏差. 通过这一实验可以分析得到, 对于采用替代回报的DQN算法, 虽然回报函数输出值数量的增多可能使得方差增大, 但是这一劣势因回报值的截断误差减小而抵消, 因此能够在训练稳定性和累计回报上取得较好性能. 从表5中可以看出, 在测试数据集上采用替代回报的方案能够得到更低的系统开销. 此外, RLSR-CMAB的卸载策略是离线策略, 而调度顺序的计算时间可以忽略不计(
![]() |
表 5 m值大小对累计系统开销的影响 |
![]() |
图 6 参数X对最小卸载成功率的影响 |
![]() |
图 7 训练过程中参数m对累计系统开销和损失函数值的影响 |
5 总结和展望
本文针对边缘服务器资源受限的问题, 提出了一种面向多用户时延敏感任务的任务调度和卸载的联合优化策略. 该策略动态调整服务器的调度顺序以兼顾多用户的优化目标, 同时降低系统总开销, 并采用带替代回报估计的任务卸载策略来消除不同任务排序带来的扰动. 通过对所提出方案的一系列实验测评, 实验结果表明: 本文所提出的任务调度和卸载策略在资源受限的场景下, 在系统总开销和任务执行成功率方面优于基线算法. 其中替代回报估计方法可以使得模型收敛到一个较优策略. 本文任务调度方案通过约束任务的长期失效率来兼顾所有用户的性能目标. 对于基站资源的公平性, 本文令所有的用户同时观测环境并做出系统决策, 没有考虑用户执行动作对于其他用户环境观测的干扰. 为了进一步优化系统性能, 可以结合multi-agent的方法开展研究工作. 此外, 当前工作在卸载方法的鲁棒性方面, 随着设备数量增加, 混淆矩阵的规模也会随之增大, 因此制约了系统的扩展性. 因而可以考虑利用混淆矩阵的稀疏性, 消除替代回报估计的计算与存储的性能瓶颈.
[1] |
Davis A, Parikh J, Weihl WE. EdgeComputing: Extending enterprise applications to the edge of the Internet. In: Proc. of the 13th Int’l World Wide Web Conf. New York: ACM, 2004. 180–187.
|
[2] |
Qiu XY, Zhang WK, Chen WH, Zheng ZB. Distributed and collective deep reinforcement learning for computation offloading: A practical perspective. IEEE Trans. on Parallel and Distributed Systems, 2021, 32(5): 1085-1101.
[doi:10.1109/TPDS.2020.3042599] |
[3] |
Jiang B, Li KK, Zhou B, Tao MX, Chen ZY. Deep reinforcement learning for distributed computation offloading in massive-user mobile edge networks. In: Proc. of the 2020 Int’l Conf. on Wireless Communications and Signal Processing. Nanjing: IEEE, 2020. 811–816.
|
[4] |
Nath S, Wu JX. Dynamic computation offloading and resource allocation for multi-user mobile edge computing. In: Proc. of the 2020 IEEE Global Communications Conf. (GLOBECOM). Taipei: IEEE, 2020. 1–6.
|
[5] |
Nath S, Li YZ, Wu JX, Fan PZ. Multi-user multi-channel computation offloading and resource allocation for mobile edge computing. In: Proc. of the 2020 IEEE Int’l Conf. on Communications (ICC). Dublin: IEEE, 2020. 1–6.
|
[6] |
Yi CY, Cai J, Su Z. A multi-user mobile computation offloading and transmission scheduling mechanism for delay-sensitive applications. IEEE Trans. on Mobile Computing, 2020, 19(1): 29-43.
[doi:10.1109/TMC.2019.2891736] |
[7] |
Guo K, Quek TQS. On the asynchrony of computation offloading in multi-user MEC systems. IEEE Trans. on Communications, 2020, 68(12): 7746-7761.
[doi:10.1109/TCOMM.2020.3024577] |
[8] |
Mnih V, Kavukcuoglu K, Silver D, Rusu AA, Veness J, Bellemare MG, Graves A, Riedmiller M, Fidjeland AK, Ostrovski G, Petersen S, Beattie C, Sadik A, Antonoglou I, King H, Kumaran D, Wierstra D, Legg S, Hassabis D. Human-level control through deep reinforcement learning. Nature, 2015, 518(7540): 529-533.
[doi:10.1038/nature14236] |
[9] |
Sun F, Hou F, Cheng N, Wang M, Zhou HB, Gui L, Shen XM. Cooperative task scheduling for computation offloading in vehicular cloud. IEEE Trans. on Vehicular Technology, 2018, 67(11): 11049-11061.
[doi:10.1109/TVT.2018.2868013] |
[10] |
Lin B, Lin XH, Zhang SL, Wang H, Bi SZ. Computation task scheduling and offloading optimization for collaborative mobile edge computing. In: Proc. of the 26th IEEE Int’l Conf. on Parallel and Distributed Systems (ICPADS). Hong Kong: IEEE, 2020. 728–734.
|
[11] |
Gao LF, Moh M. Joint computation offloading and prioritized scheduling in mobile edge computing. In: Proc. of the 2018 Int’l Conf. on High Performance Computing & Simulation. Orleans: IEEE, 2018. 1000–1007.
|
[12] |
Xiao KL, Gao ZP, Yao CC, Wang Q, Mo ZJ, Yang Y. Task offloading and resources allocation based on fairness in edge computing. In: Proc. of the 2019 IEEE Wireless Communications and Networking Conf. (WCNC). Marrakesh: IEEE, 2019. 1–6.
|
[13] |
Kim YJ, Lee HW, Chong S. Mobile computation offloading for application throughput fairness and energy efficiency. IEEE Trans. on Wireless Communications, 2019, 18(1): 3-19.
[doi:10.1109/TWC.2018.2868679] |
[14] |
Chen XH, Cai YL, Zhao MJ, Zhao MM. Joint computation offloading and resource allocation for min-max fairness in MEC systems. In: Proc. of the 2019 IEEE Wireless Communications and Networking Conf. (WCNC). Marrakesh: IEEE, 2019. 1–6.
|
[15] |
Liu W, Huang YC, Du W, Wang W. Resource-constrained serial task offload strategy in mobile edge computing. Ruan Jian Xue Bao/Journal of Software, 2020, 31(6): 1889–1908 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/5705.htm
|
[16] |
Li ZY, Wang Q, Chen YF, Xie GQ, Li RF. A survey on task offloading research in vehicular edge computing. Chinese Journal of Computers, 2021, 44(5): 963-982(in Chinese with English abstract).
[doi:10.11897/SP.J.1016.2021.00963] |
[17] |
Gao GJ, Xiao MJ, Wu J, Han K, Huang LS, Zhao ZH. Opportunistic mobile data offloading with deadline constraints. IEEE Trans. on Parallel and Distributed Systems, 2017, 28(12): 3584-3599.
[doi:10.1109/TPDS.2017.2720741] |
[18] |
Yuan HT, Jing B, Zhou MC. Temporal task scheduling of multiple delay-constrained applications in green hybrid cloud. IEEE Trans. on Services Computing, 2021, 14(5): 1558-1570.
[doi:10.1109/TSC.2018.2878561] |
[19] |
Cheng L, Kalapgar A, Jain A, Wang Y, Qin YT, Li YT, Liu C. Cost-aware real-time job scheduling for hybrid cloud using deep reinforcement learning. Neural Computing and Applications, 2022, 34(21): 18579-18593.
[doi:10.1007/s00521-022-07477-x] |
[20] |
Hu B, Cao ZC, Zhou MC. Scheduling real-time parallel applications in cloud to minimize energy consumption. IEEE Trans. on Cloud Computing, 2022, 10(1): 662-674.
[doi:10.1109/TCC.2019.2956498] |
[21] |
Zhou H, Jiang K, Liu XX, Li XH, Leung VCM. Deep reinforcement learning for energy-efficient computation offloading in mobile-edge computing. IEEE Internet of Things Journal, 2022, 9(2): 1517-1530.
[doi:10.1109/JIOT.2021.3091142] |
[22] |
Wen YG, Zhang WW, Luo HY. Energy-optimal mobile application execution: Taming resource-poor mobile devices with cloud clones. In: Proc. of the 2012 IEEE INFOCOM. Orlando: IEEE, 2012, 2716–2720.
|
[23] |
Du JB, Zhao LQ, Feng J, Chu XL. Computation offloading and resource allocation in mixed fog/cloud computing systems with min-max fairness guarantee. IEEE Trans. on Communication, 2018, 66(4): 1594-1608.
[doi:10.1109/TCOMM.2017.2787700] |
[24] |
Jiang K, Zhou H, Li DW, Liu XX, Xu SZ. A Q-learning based method for energy-efficient computation offloading in mobile edge computing. In: Proc. of the 29th Int’l Conf. on Computer Communications and Networks (ICCCN). Honolulu: IEEE, 2020. 1–7.
|
[25] |
Huang L, Bi SZ, Zhang YJA. Deep reinforcement learning for online computation offloading in wireless powered mobile-edge computing networks. IEEE Trans. on Mobile Computing, 2020, 19(11): 2581-2593.
[doi:10.1109/TMC.2019.2928811] |
[26] |
Chen W, Wang YJ, Yuan Y. Combinatorial multi-armed bandit: General framework, results and applications. In: Proc. of the 30th Int’l Conf. on Machine Learning (ICML). Atlanta: JMLR.org, 2013. I-151–I-159.
|
[27] |
Zhang YM, Liu T, Zhu YM, Yang YY. A deep reinforcement learning approach for online computation offloading in mobile edge computing. In: Proc. of the 28th IEEE/ACM Int’l Symp. on Quality of Service (IWQoS). Hangzhou: IEEE, 2020. 1–10.
|
[28] |
Neely MJ. Stochastic Network Optimization with Application to Communication and Queueing Systems. Cham: Springer, 2010. 1–211.
|
[29] |
Li LH, Chu W, Langford J, Schapire RE. A contextual-bandit approach to personalized news article recommendation. In: Proc. of the 19th Int’l Conf. on World Wide Web. Raleigh North: ACM, 2010. 661–670.
|
[30] |
Qin LJ, Chen SY, Chu XY. Contextual combinatorial bandit and its application on diversified online recommendation. In: Proc. of the 2014 SIAM Int’l Conf. on Data Mining. Philadelphia: SIAM, 2014. 461–469.
|
[31] |
Xiao MJ, An BY, Wang J, Gao GJ, Zhang S, Wu J. CMAB-based reverse auction for unknown worker recruitment in mobile crowdsensing. IEEE Trans. on Mobile Computing, 2022, 21(10): 3502-3518.
[doi:10.1109/TMC.2021.3059346] |
[32] |
Sun YX, Song JH, Zhou S, Guo XY, Niu ZS. Task replication for vehicular edge computing: A combinatorial multi-armed bandit based approach. In: Proc. of the 2018 IEEE Global Communications Conf. (GLOBECOM). Abu Dhabi: IEEE, 2018. 1–7.
|
[33] |
Bellman R. A Markovian decision process. Journal of Mathematics and Mechanics, 1957, 6(5): 679-684.
|
[34] |
Everitt T, Krakovna V, Orseau L, Legg S. Reinforcement learning with a corrupted reward channel. In: Proc. of the 26th Int’l Joint Conf. on Artificial Intelligence (IJCAI). Melbourne: AAAI Press, 2017. 4705–4713.
|
[35] |
Loftin R, Peng B, MacGlashan J, Littman ML, Taylor ME, Huang J, Roberts DL. Learning something from nothing: Leveraging implicit human feedback strategies. In: Proc. of the 23rd IEEE Int’l Symp. on Robot and Human Interactive Communication. Edinburgh: IEEE, 2014. 607–612.
|
[36] |
Wang JK, Liu Y, Li B. Reinforcement learning with perturbed rewards. In: Proc. of the 34th AAAI Conf. on Artificial Intelligence. New York: AAAI Press, 2020. 6202–6209.
|
[37] |
McDonald R, Hall K, Mann G. Distributed training strategies for the structured perceptron. In: Human Language Technologies: The 2010 Annual Conf. of the North American Chapter of the Association for Computational Linguistics. Los Angeles: Association for Computational Linguistics, 2010. 456–464.
|
[15] |
刘伟, 黄宇成, 杜薇, 王伟. 移动边缘计算中资源受限的串行任务卸载策略. 软件学报, 2020, 31(6): 1889–1908. http://www.jos.org.cn/1000-9825/5705.htm
|
[16] |
李智勇, 王琦, 陈一凡, 谢国琪, 李仁发. 车辆边缘计算环境下任务卸载研究综述. 计算机学报, 2021, 44(5): 963-982.
[doi:10.11897/SP.J.1016.2021.00963] |