Fast Adaptive Task Offloading in Edge Computing Based on Meta Reinforcement Learning
基于元强化学习的边缘计算快速自适应任务卸载
一、摘要 Abstract
I、内容 Content
多接入边缘计算(multi -access edge computing, MEC)旨在将云服务扩展到网络边缘,以减少网络流量和服务延迟。MEC中的一个基本问题是如何有效地将移动应用程序的异构任务从用户设备(UE)卸载到MEC主机。最近,人们提出了许多基于深度强化学习(DRL)的方法,通过与由UE、无线信道和MEC主机组成的MEC环境交互来学习卸载策略。然而,这些方法对新环境的适应性较弱,因为它们的样本效率较低,并且需要充分的再训练来学习新环境的更新策略。为了克服这一缺点,我们提出了一种基于元强化学习的任务卸载方法,该方法可以在少量梯度更新和样本的情况下快速适应新环境。我们将移动应用程序建模为有向无环图(DAG),并通过自定义序列到序列(seq2seq)神经网络进行卸载策略。为了有效地训练seq2seq网络,我们提出了一种一阶近似和截断代理目标协同的方法。实验结果表明,与三个基线相比,这种新的卸载方法可以将延迟减少多达25%,同时能够快速适应新环境。
II、总结 Summarize
- MEC旨在将云服务延伸到网络边缘,以减少网络流量和服务延迟。
- 核心问题是如何将移动应用的任务从用户设备卸载到MEC主机。
- 最近提出了基于深度强化学习的方法来学习任务卸载策略。
- 这些方法对新环境的适应能力较弱,需要完全重新训练。
- 提出了一种基于元强化学习的方法,可以在少量梯度更新和样本的情况下快速适应新环境。
- 将移动应用建模为有向无环图(DAG),卸载策略建模为自定义的序列到序列(seq2seq)神经网络。
- 提出了一种有效训练seq2seq网络的方法,结合了一阶近似和修剪替代目标。
- 实验结果表明,新的卸载方法能够将延迟降低高达25%,同时能够快速适应新环境。
III、关键词 Keywords
Multi-access edge computing, task offloading, meta reinforcement learning, deep learning
多访问边缘计算,任务卸载,元强化学习,深度学习
二、介绍 Introduction
I、总结 Summarize
背景介绍
- 快速发展的计算和通信技术推动了创新移动应用和服务的不断涌现,例如增强现实、虚拟现实、人脸识别和移动医疗等,这些应用给计算和存储资源需求带来了显著增长。
- 多接入边缘计算(MEC)作为解决这一问题的关键技术,旨在将云计算能力延伸到靠近用户的网络边缘,从而显著减轻网络拥塞和降低服务延迟。
MEC中的任务卸载
- MEC的关键功能之一是任务卸载,即将移动应用的计算密集型任务从用户设备(UE)卸载到网络边缘的MEC主机。
- 许多移动应用由依赖任务组成,可建模为有向无环图(DAG),因此在DAG中以最小延迟进行任务卸载是MEC中的关键问题。
深度强化学习(DRL)与MEC
- DRL将强化学习与深度神经网络结合,可通过试错学习解决复杂问题,近年来,研究人员开始将DRL应用于各种MEC任务卸载问题。
- 然而,现有方法对于新环境的适应能力较弱,需要完全重新训练,耗时且样本效率低。
元强化学习(MRL)的应用
- MRL利用之前的经验加速学习新任务,在RL问题中,MRL通过两个学习“循环”来实现快速适应新任务。
提出的方法
- 本文提出了一种基于MRL的方法,结合一阶MRL算法和序列到序列(seq2seq)神经网络,用于动态场景下的任务卸载问题。
- 该方法将任务卸载决策过程转换为序列预测过程,设计了自定义的seq2seq神经网络来表示卸载策略,并提出了一种新的训练方法来稳定网络的训练过程。
实验结果
- 通过仿真实验验证了提出方法的性能,在不同的动态场景下,与三种基准算法相比,提出的方法能够在较少的训练步骤内实现最低延迟。
论文结构
- 文章的其余部分安排如下:介绍MEC、RL和MRL;任务卸载的问题描述;MRLCO的详细描述;评估结果;相关工作的回顾;讨论MRLCO及其未来工作;最后总结。
三、系统模型 System Model
I、模型示意图 Model Figure
II、问题公式化 Problem Fomulation
问题描述
- 移动边缘计算(MEC)中的计算卸载示例考虑了现实世界中的应用场景,如人脸识别,包括诸如tiler、检测或特征融合等依赖任务。
- 用户设备(UE)根据系统状态和任务特征做出任务卸载决策,一些任务在UE上本地运行,而其他任务通过无线信道卸载到MEC主机。
- 每个MEC主机运行多个虚拟机(VM)处理任务,每个UE与一个专用的VM关联,为其提供私有计算、通信和存储资源,计算能力由CPU核心数和每个核心的时钟速度确定。
- 移动应用被建模为有向无环图(DAG),其中顶点表示任务,有向边表示任务之间的依赖关系。
- 每个任务的计算卸载涉及发送数据、在MEC主机上执行任务和接收结果等步骤,每一步的延迟取决于任务特征和MEC系统状态。
- 任务卸载的调度计划表示为A1:n,其中ai表示任务ti的卸载决策,任务根据调度计划按顺序执行。
- 目标是找到DAG的有效卸载计划,使得总延迟最小化,但由于DAG拓扑结构和MEC系统状态的高度动态性,这是一个NP困难问题。
关键作用及效果
- 在计算卸载过程中,根据任务特征和MEC系统状态,动态选择任务是本方法的核心。
- 通过有效地安排任务的卸载顺序,以最小化总延迟为目标,提高了系统效率。
- 对于NP困难的问题,采用了一种复杂的调度方案,具有较高的实用性和适应性,可以应对不同的动态场景和任务需求。
四、 基于元强化学习MRL的计算卸载方案
I、MRLCO授权的MEC系统架构
MRLCO架构概述
- MRLCO旨在利用来自UE和MEC主机的计算资源进行训练,分为“内部循环”和“外部循环”两个训练过程。
- “内部循环”训练在UE上进行,用于任务特定策略的学习;而“外部循环”训练在MEC主机上进行,用于元策略的学习。
- MRLCO被集成到由用户级别、边缘级别和远程级别组成的MEC系统中,用户通过本地传输单元与MEC主机通信,MEC主机提供边缘计算服务,云服务器位于远程级别。
MRLCO系统架构
- 在用户级别,包括parser、local trainer和offloading scheduler模块,用于将移动应用转换为DAG、进行“内部循环”训练和制定卸载决策。
- 在边缘级别,包括global training service和remote execution service模块,用于管理“外部循环”训练和处理从UE卸载的任务。
MRLCO训练过程
- MRLCO的训练包括四个步骤:UE从MEC主机下载元策略参数,然后在UE上基于元策略和本地数据进行“内部循环”训练,将任务特定策略的参数上传到MEC主机,最后,MEC主机进行“外部循环”训练,生成新的元策略并启动新的训练轮次。
II、将计算卸载过程建模为多个MDP
MDP建模
- 将计算卸载过程建模为多个MDP,每个MDP代表一个学习任务,其目标是学习适用于各种MEC环境的有效卸载策略。
- MDP的状态由DAG的编码和部分卸载计划组合而成,卸载计划是前i个任务的决策序列。
- 每个任务根据其任务特征和DAG拓扑结构转换为一个嵌入向量序列,并利用递归神经网络(RNN)进行编码。
动作和奖励定义
- 每个任务的调度是二进制选择,动作空间为{0, 1},其中0表示在UE上执行,1表示卸载到MEC主机。
- 奖励函数被定义为做出卸载决策后延迟的负增量,目标是最小化总延迟。
Seq2seq神经网络
- 使用seq2seq神经网络来表示策略,该网络包含编码器和解码器两部分,采用LSTM作为编码器和解码器的基本单元。
- 编码器将任务嵌入向量序列编码为上下文向量,解码器根据上下文向量生成卸载决策序列。
- 训练过程中,通过采样生成动作,并利用seq2seq网络进行推断,生成卸载决策序列。
III、MRLCO的实施
基于PPO的目标函数
- MRLCO使用PPO作为“内循环”训练的策略梯度方法,与VPG相比,PPO具有更好的探索能力和训练稳定性。
- 对于每个学习任务Ti,PPO使用样本策略生成轨迹,并在多个时期更新目标策略,以避免对目标策略的大幅度更新。
算法概述
- 算法结构包括两个循环进行训练,首先对元策略参数进行随机初始化,然后循环迭代更新。
- 每次迭代中,随机选择n个学习任务,对每个任务进行“内循环”训练,然后通过Adam优化器更新元策略参数。
- “内循环”训练的目标函数由PPO的策略损失和值函数损失的加权和组成,其中权重由超参数c1控制。
目标函数定义
- “外循环”训练的目标是最大化元RL算法的目标函数JMRLCO(u),其中u0i是在“内循环”训练后的目标策略参数。
- 为了避免梯度的梯度,我们使用一阶近似代替二阶导数,并使用梯度上升法来优化目标函数。
算法设计
- 算法设计如Algorithm 1所示,首先对元策略参数进行初始化,然后循环迭代采样学习任务,进行“内循环”训练,并利用Adam优化器更新元策略参数。
- 在每次迭代中,使用采样学习任务的梯度均值来更新元策略参数,以最大化目标函数JMRLCO(u)。
五、绩效评估
I、算法超参数
TensorFlow实现
- MRLCO是通过TensorFlow实现的。
- seq2seq神经网络的编码器和解码器均设置为具有256个隐藏单元的两层动态长短期记忆(LSTM)网络。
- 在编码器和解码器中都添加了层归一化。
超参数设置
- “内循环”和“外循环”的学习率都设置为5e-4。
- 系数c1设置为0.5,剪切常数设置为0.2。
- 折扣因子g和分别设置为0.99和0.95。
- “内循环”训练的梯度步数m设置为3。
超参数总结
超参数 值 学习率 5e-4 系数c1 0.5 剪切常数 0.2 折扣因子g 0.99 折扣因子λ 0.95 梯度步数m 3
II、仿真环境
网络设置:
- 在考虑了基站网络的情况下,UE的位置决定了数据传输速率的变化。
- UE的CPU时钟速度(fUE)设置为1 GHz。
- 每个MEC主机的虚拟机(VM)拥有4个核心,每个核心的CPU时钟速度为2.5 GHz。
- 被卸载的任务可以在所有核心上并行运行,因此一个VM的CPU时钟速度(fvm)为10 GHz。
DAG模拟:
- 通过实现一个合成DAG生成器,模拟了各种拓扑结构和任务特征的异构DAG。
- 生成DAG的拓扑和任务特征由四个参数控制:任务数量(n)、宽度和高度(fat)、密度(density)、通信与计算成本比率(ccr)。
实验设计:
- 设计了三个实验来评估MRLCO在动态场景下的性能。
- 第一个实验和第二个实验模拟了UE具有不同应用偏好的情况,分别表示为不同的拓扑结构和任务数量。
- 第三个实验模拟了UE具有不同的动态传输速率。
- 所有实验中,每个任务的数据大小范围为5 KB到50 KB,每个任务所需的CPU周期范围为10^7到10^8个周期。子/父任务索引向量的长度p设置为12。
- 为每个生成的DAG随机选择ccr,范围从0.3到0.5。
基线算法:
- Fine-Tuning DRL:首先使用DRL算法预训练所有“训练数据集”的一个策略,然后将训练好的策略网络参数作为任务特定策略网络的初始值,在“测试数据集”上进行更新。
- HEFT-Based:该算法源自HEFT,首先根据HEFT对任务进行优先级排序,然后根据最早估计的完成时间调度每个任务。
- Greedy:基于任务的估计完成时间,将每个任务贪婪地分配给UE或MEC主机。
III、结果分析
A、实验一
第一个实验:
- 通过生成不同拓扑结构的DAG集合,模拟了用户对移动应用具有不同偏好的情景。
- 每个数据集包含100个拓扑相似的DAG,设置了不同的fat和density。
- MRLCO在测试数据集上表现最好,比Greedy算法的延迟最低,HEFT算法次之,而基于微调的DRL方法表现最差。
- MRLCO在相同迭代次数下快速适应新任务,表现优于基于微调的DRL方法。
B、实验二
第二个实验:
- 考察任务数量n对不同算法性能的影响。
- 结果显示,MRLCO和微调DRL方法在几次梯度更新后超越了HEFT算法,并且一直优于Greedy算法。
- MRLCO比微调DRL方法更快地适应新的学习任务,并且在20次梯度更新后,表现优于其他基线算法。
C、实验三
第三个实验:
- 评估MRLCO在不同传输速率下的性能,每个传输速率被视为一个独立的学习任务。
- MRLCO在所有测试集中都比微调DRL方法更快地适应新任务,并且在20次梯度更新后获得最低的延迟。
- 在一些情况下,MRLCO甚至在初始点就实现了最低的延迟。
六、结论 Conclusion
方法优势:
- MRLCO采用元强化学习(MRL)方法,能够快速适应不同的移动边缘计算(MEC)环境,具有很强的泛化能力。
- 通过将目标移动应用建模为有向无环图(DAG),MRLCO能够将计算卸载问题转化为序列预测任务,利用seq2seq神经网络有效地表示策略。
- 使用一阶近似的MRL目标和替代目标剪裁技术,MRLCO能够降低训练成本并稳定训练过程。
实验结果验证:
- 在不同的实验设置下,包括不同的DAG拓扑、任务数量和传输速率,MRLCO表现出了优异的性能。
- 在少量训练步骤内,MRLCO相对于三种基线算法(微调的DRL方法、贪心算法和基于HEFT的算法)都实现了最低的延迟,验证了其在解决MEC计算卸载问题上的有效性和效率。
未来展望:
- MRLCO方法为解决MEC中的计算卸载问题提供了一种新颖的思路和方法,但仍有一些改进空间。
- 未来的工作可以进一步探索如何进一步提高MRLCO的性能,例如通过结合其他高效的强化学习算法或改进网络结构来优化策略学习过程。