本周复现了这篇文章,分享一下阅读收获~
文章名称
摘要
本文提出了一种基于元强化学习的任务卸载方法,该方法可以在少量梯度更新和样本的情况下快速适应新环境。该方法将移动应用程序建模为有向无环图(DAG),将计算迁移过程转换为序列预测过程,并通过自定义序列到序列(seq2seq)神经网络进行卸载策略。为了有效地训练seq2seq网络,提出了一种一阶近似来降低训练成本和裁剪替代目标协同的方法。评估在以下场景:1)异构用户对移动应用的个人偏好,将其表示为具有不同高度、宽度和任务数量的DAG。2)根据用户设备(UE)与多址边缘计算(MEC)主机之间的距离变化传输速率。针对不同的DAG拓扑结构、任务数量和传输速率进行了仿真实验。实验结果表明,与微调DRL方法、贪婪算法和基于heft的3种基线算法相比,MRLCO可以将延迟降低25%,同时能够快速适应新环境。
文章贡献
•首次提出了一种基于MRL的计算卸载方法,实现了对动态卸载场景的快速适应。MRLCO对于新的学习任务具有较高的样本效率,因此即使在计算资源有限的情况下,UE也可以使用自己的数据来运行训练过程。
•本文提出了一种新的思想,将动态计算卸载过程建模为多个马尔科夫决策过程(MDP),其中卸载策略的学习被分解为两个部分:在不同MDP之间有效地学习一个元策略,以及基于元策略快速学习每个MDP的特定策略。
•将卸载决策过程转换为序列预测过程,并设计了自定义seq2seq神经网络来表示卸载策略。同时考虑DAG的任务剖面和依赖关系,提出了一种对DAG顶点进行嵌入的方法。提出了一种新的训练方法,结合一阶逼近和裁剪代理目标来稳定seq2seq神经网络的训练。
•使用根据真实世界应用生成的合成DAG进行了仿真实验,涵盖了广泛的拓扑、任务数量和传输速率。实验结果表明,与微调DRL方法、贪婪算法和基于异构最早完成时间(HEFT)的启发式算法三种基线算法相比,MRLCO在少量训练步骤内实现了最低的延迟。
概念介绍
多接入边缘计算(Multi-access edge computing,MEC)旨在将云服务扩展到网络边缘,以减少网络流量和服务延迟。MEC中的一个基本问题是如何有效地将移动应用程序的异构任务从用户设备(UE)卸载到MEC主机。
任务卸载的目标是找到将应用程序划分为两组计算任务的最佳策略,其中一组在UE上执行,另一组卸载到MEC主机,从而使总运行成本最小化。
研究人员研究了DRL在各种MEC任务卸载问题上的应用,这些方法对意外干扰或未见过的情况(如应用程序、任务数量或数据速率变化的新环境)的适应性较弱且耗时。
在强化学习问题的背景下,元强化学习(MRL)旨在通过建立在先前经验的基础上,在与环境的少量交互中学习新任务的策略。通常,MRL进行两个循环的学习,“外循环”使用其在任务上下文中的经验,逐步调整支配内层循环操作的元策略的参数;“内循环”可以通过少量的梯度更新快速适应新任务。
模型框架
MRLCO旨在将来自UE和MEC主机的计算资源同时用于训练过程。训练有两个循环——“内循环“训练特定任务策略”和“外循环“训练元策略”。在UE上进行‘内循环’训练,在MEC主机上进行‘外循环’训练。
(1)用户层:异构UE
(2)边缘层:提供边缘服务的MEC主机,主机包含MEC平台和虚拟化基础设施,提供计算存储和网络资源。MEC平台提供流量管理(即流量规则控制和域名处理)和边缘服务。
(3)远程层:云服务器
Fig. 2. MRLCO的体系结构。
该架构中的数据流包括: 1.移动应用程序,2.解析的DAG,3.策略网络的参数,4.训练好的策略网络,5.调度到本地执行器的任务,6.卸载到MEC主机的任务,7.卸载任务的结果。
MRLCO的五个关键模块(解析器、本地训练器、卸载调度器、全局训练服务和远程执行服务)可以分别部署在MEC系统的用户级和边缘级,如下所示:
•在用户层,解析器旨在将移动应用程序转换为DAG。本地训练器负责“内循环”训练,它从解析器接收解析后的DAG作为训练数据,并通过本地传输单元将策略网络的参数上传/下载到MEC主机。一旦训练过程完成,训练好的策略网络将被部署到卸载调度器中,通过策略网络推理做出卸载决策。对DAG中的所有任务进行决策后,本地调度的任务将运行在本地执行器上,卸载的任务将发送到MEC主机执行。
•在边缘层,将全局训练服务和远程执行服务模块部署到MEC平台。全局训练服务用于管理“外循环”训练,它向UE发送/接收策略网络的参数,并将全局训练过程部署在MEC主机中的虚拟化基础设施上。远程执行服务负责管理从终端卸载的任务,将这些任务分配给相关的虚拟机,并将结果发送回终端。
MRLCO的训练过程包括4个步骤。
- 终端从MEC主机下载元策略参数;
- 基于元策略和本地数据在每个UE上运行一个“内层循环”训练,以获得特定任务的策略。
- 终端将任务策略参数上传到MEC主机。
- MEC宿主根据收集到的特定任务策略参数进行”外循环”训练,生成新的元策略,并开始新一轮训练。
一旦获得稳定的元策略,我们可以利用它通过“内层循环”训练快速学习新UE的特定于任务的策略。
三个比较算法
•微调DRL:首先使用[12]中提出的基于深度强化学习的卸载算法对所有“训练数据集”预训练一个策略。接下来,将训练好策略的网络参数作为特定任务策略网络的初始值,然后在“测试数据集”上进行更新。
•基于异构最早完成时间(HEFT)的调度算法:该算法基于[4],首先根据HEFT对任务进行优先级排序,然后对每个任务进行调度。
•贪心算法(Greedy):根据每个任务的估计完成时间,贪心地将其分配给UE或MEC主机。
结果分析
实验1:不同DAG拓扑下的比较
图6 不同DAG拓扑的评估结果
贪心算法具有最高的延迟,而MRLCO获得最低的延迟;这些启发式算法使用固定的策略来获取卸载计划,不能很好地适应不同的DAG拓扑结构。
实验2:不同任务数量的比较
图7 不同任务数量的评估结果
用n∈ {10,15,25,35,45,50}随机生成了6个训练数据集,用n∈ {20,30,40}随机生成了3个测试数据集。
MRLCO和微调DRL方法在少量梯度更新后都优于基于heft的算法,并且始终优于梯度更新的第0步贪婪算法。
实验3:在不同传输速率下的性能
图8 不同传输速率下的评估结果
通过穷尽搜索解空间来实现最优算法,以找到最优的卸载方案。基于随机选择的传输速率,从4 Mbps到22 Mbps,步长为3 Mbps,进行元训练过程。然后,评估了在训练过程中未见过的{5.5 Mbps,8.5 Mbps,11.5 Mbps}传输速率之间的训练元策略。
MRLCO再次比微调DRL方法更快地适应新的学习任务,并在20次梯度更新后达到最低延迟。
实验4:不同测试数据集上的平均延迟
经过20步梯度更新后,MRLCO的性能优于所有启发式基线算法。MRLTO和微调DRL方法更新步数越多,效果越好。
未来工作方向:
(1)由于MRLCO的结果与最优值之间仍存在差距。一个可能的解决方案是将seq2seq神经网络与另一个样本高效的off-policy MRL方法集成。
(2)在大规模运行时,一些掉队的UE可能会因为网络断开或电量不足而退出。考虑到“外循环”训练是在收集所有UE的参数后更新元策略的同步过程,掉线者可能会影响MRLCO的训练性能。解决这个问题的一种方法是应用自适应的客户端选择算法,该算法可以自动过滤掉队的客户端,并根据其运行状态选择可靠的客户端加入训练过程。