移动边缘计算环境下基于DRL的能耗感知任务卸载方法

文档序号:26003624发布日期:2021-07-23 21:21阅读:224来源:国知局
移动边缘计算环境下基于DRL的能耗感知任务卸载方法

本发明属于移动边缘计算技术领域,涉及移动边缘计算中的能耗感知任务卸载决策方法,特别是在截止时间约束下的基于drl的无模型任务卸载决策方法。



背景技术:

随着无线网络的发展,越来越多的移动应用开始出现,并受到了巨大的欢迎。这些移动应用涵盖了广泛的领域,如交通监控、智能家居、实时视觉处理、目标跟踪等,通常需要计算密集型资源来实现高质量的体验(qoe),尽管移动设备(mds)的性能不断提高,但在单个md上运行所有应用程序仍然会导致高能耗和延迟。移动边缘计算(mobileedgecomputing,mec)已经成为解决这个问题的有希望的技术,与使用远程公共云的传统云计算系统相比,它提供了无线接入网络内的计算能力。mec的出现允许md将其计算密集型任务卸载到近端enodebs(enbs)以增强计算能力。目前在mec环境下的任务或计算卸载已经得到广泛的研究。传统的卸载方案是基于模型的即通常假设md和enb之间的移动信号建模良好。然而,mec环境非常复杂,用户的移动能力高度动态,使得移动模型难以构建和预测。而随着深度强化学习(drl)产生,越来越多的研究人员将其应用在mec下的任务卸载,其好处有三个方面:1)drl是一种无模型优化方法,不需要任何基于模型的数学知识;2)它可以解决高动态时变系统中的优化问题;3)它可以处理大的状态和动作空间问题。上述特征表明drl是mec实现任务卸载的理想方法。但是,应用drl技术进行mec任务卸载应考虑和解决以下问题:首先,提出的高密度enbs的mec任务卸载问题是一个大的离散动作空间问题。例如,mec中有5个enbs用于md卸载20个任务,则存在5万多个卸载操作。在这种情况下,基于深度神经网络(dqn)的drl不能很好地工作,因为它只具有处理小动作空间问题的潜力。第二,任务卸载是一个离散的控制问题,因此例如深度确定性策略梯度(ddpg)的连续控制方法将无法正常工作。并且上述所有方法都以任务处理时间作为平均性能需求,并没有考虑到任务的截止运行时间,这是不合理的。因此,针对目前的任务卸载方案的奖励函数主要集中在基于平均的性能度量上,未能满足任务的截止时间约束。本发明提出一种移动边缘计算境下的基于drl的能耗感知任务卸载方法(drl-e2d),该方法是基于深度强化学习技术从未知环境中学习最优决策,从而使得md在满足任务截止时间约束下最大化任务卸载效用。



技术实现要素:

本发明针对目前的技术的不足,提出一种移动边缘计算环境下基于drl的能耗感知任务卸载方法。

本发明方法的大体思想是:

多enbmec环境的任务卸载架构,主要由一个md和多个enb所组成。其中,md在每个时间段内都可能产生一定数量的任务,并且每个任务都可以通过无线网络卸载到任意地一个enb上执行。因此,合理的卸载方案非常重要,这直接影响到任务的执行时间和md的能耗。针对目前绝大多数任务卸载方案的奖励函数未考虑任务的截止时间约束的情况,本发明将截止时间约束与md完成任务的效用结合在一起,并考虑md的能耗与任务丢弃惩罚,设计一种联合奖励函数用于处理该优化问题。

本发明采用drl-e2d算法解决上述问题,首先设计多enbmec环境下任务卸载问题的状态空间、行动空间和奖励函数。采用actor-critic框架作为整个drl-e2d算法的基础结构,即主要包含actor和critic两个神经网络。同时将md在环境下所观察到的状态作为actor输入,将actor输出的动作和状态作为critic网络输入。为了处理高维离散动作空间的维数灾难问题,在actor网络和critic网络中加入嵌入层,其作用是将空间下的连续动作转为离散动作,这里采用低复杂度的knn算法通过提取最近邻动作值来实现。

本发明方法的具体步骤是:

步骤(1)、构建出多enbmec环境下任务卸载场景;

步骤(2)、构建多enbmec环境下任务卸载场景在截止时间约束下的联合奖励函数:

max:r(τ)=u(τ)-p(τ)-e(τ)(a)

步骤(3)、多enbmec环境下任务卸载场景下,构建actor-critic深度强化学习网络框架;

步骤(4)、采用actor-critic深度强化学习网络框架对步骤(2)任务卸载的联合奖励函数进行优化求解,得到最佳任务卸载的解决方案;

本发明的另一个目的是提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述的方法。

本发明的又一个目的是提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述的方法。

本发明的有益效果:本发明用于移动边缘计算中具有高维离散动作空间的多enb下环境,比如交通监控,智慧家居,实时视觉处理及ai应用等多种应用场景,其目标是为了优化md的长期能耗(即节约md的电池容量)。本发明结合强化深度学习相关知识并将截止时间约束考虑到奖励函数中,使得md可以根据系统状态在限定任务期限的情况下做出能将其任务卸载给多个enb的最优决策。

n:表示mec中enbs的个数;

tslot:表示每个时间段的持续时间;

w:表示任务的工作负荷;

d:表示任务的数据大小;

λ:表示任务到达md的速率;

tdl:表示任务的截止约束;

z(τ):表示在τ时间段md上任务到达的数量;

ηi(τ):表示在τ时间段从md发往enb的数据传输速率;

li(τ):表示在τ时间段enb所处理的任务队列;

αi(τ):表示在τ时间段enb上卸载的任务数量;

βi(τ):表示在τ时间段所处理完成的任务;

ci(τ):表示md或enb的计算容量;

di(τ):表示在τ时间段每个enb和md删除的任务量;

表示在τ时间段从md发往enb的卸载任务的数据传输速率;

表示一个任务在md或enb上的执行时间;

表示在τ时间段上md的计算能力,由其自身硬件决定。

e(τ):表示在τ时间段md的能量消耗总量;

u(τ):表示在τ时间段的整个效用。

p(τ):表示在τ时间段所有丢弃任务而产生的惩罚;

r(τ):表示在τ时间段所有的奖励;

附图说明

图1为多enbmec环境下任务卸载的体系结构;

图2为drl-e2d的架构图;

图3(1)-(3)分别为nb数量k为1,3,5的情况下,本发明drl-e2d与传统dqn算法的收敛性对比实验;

图4(1)-(3)分别为lb,remote,drl-e2d、dqn、md算法在不同enb数量获得的奖励、能量消耗和损失代价;

图5(1)-(3)分别为lb,remote,drl-e2d、dqn、md算法在不同任务工作负荷w获得的奖励、能量消耗和损失代价;

图6(1)-(3)分别为lb,remote,drl-e2d、dqn、md算法在不同数据大小d获得的奖励、能量消耗和损失代价。

具体实施方式

下面结合附图对本发明作进一步的分析。

图2为drl-e2d的架构图。移动边缘计算环境下基于drl的能耗感知任务卸载方法,包括以下步骤:

步骤(1)、构建出多enbmec环境下任务卸载场景;图1为多enbmec环境下任务卸载的体系结构;

多enbmec环境下任务卸载场景的整体架构主要包括单个md和n个基站enbs;其中md用于将指定任务发送至各个基站上进行卸载,并同时可在本地执行任务;

(1.1)将系统时间划分为等间隔的各个时间段,假设在每个时间段开始时有z(τ)个任务到达md,将其认为是独立且同分布的序列,并且每个到达的任务都有恒定的数据d和执行工作负载w;

(1.2)定义第τ个时间段从md发往第i个基站enbi的数据传输速率ηi(τ):

ηi(τ)=bilog2[1+snri(τ)](1)

其中bi表示enbi分配到md的带宽,表示信噪比,表示md的传输功率,σ2表示高斯白噪声,gi(τ)表示信道增益,定义为和θ分别表示路径损耗常数和路径损耗指数,di(τ)表示enbi在τ时间段与md的路径距离;

(1.4)定义enbi的第τ+1个时间段任务处理队列li(τ+1):

li(τ+1)=max{li(τ)-βi(τ),0}+αi(τ)(2)

其中αi(τ)表示所有卸载到enbi的任务,βi(τ)表示enbi第τ个时间段内所处理完成的任务;

定义md的第τ+1个时间段任务处理队列l0(τ+1):

l0(τ+1)=max{l0(τ)-β0(τ),0}+α0(τ)(3)

其中,α0(τ)为md的本地任务,β0(τ)为md第τ个时间段内所处理完成的任务;

(1.5)由于任务可分别在md或enb上执行,分别定义其执行时间和能力消耗

(1.5.1)对于任务在md本地执行的情况,定义其执行时间以及能量消耗为:

其中表示具备m核cpu的md的计算能力,定义为其中表示与芯片架构有关的常数;f(τ)表示m核cpu的工作频率;m表示m核;c0(τ)表示md的计算容量,表示为c0(τ)=mf(τ);w表示任务的工作负荷;

(1.5.2)对于md将任务卸载到enbi执行的情况,需分别考虑其数据传输时间和执行时间;定义数据传输时间为:

同时,可定义其数据传输所消耗的能量为:

其中d表示任务的数据大小;表示md的传输功率;

当enbi接受到任务后,会将任务按照先到先得的规则放入其自身任务处理队列qi(τ)中;定义任务执行时间为:

其中w表示任务的工作负荷;ci(τ)表示enbi的计算容量;

步骤(2)、构建多enbmec环境下任务卸载场景在截止时间约束下的联合奖励函数,具体如下:

(2.1)定义在每个时间段md本地执行任务和卸载任务至enb的能量总消耗e(τ)为:

其中表示md本地执行β0(τ)个任务消耗的能量,表示αi(τ)个任务卸载给enbi的总传输能量消耗;

(2.2)考虑任务截止时间约束,定义md和所有基站的总效用u(τ)为:

其中n表示mec中enb的个数;t(tj)表示第j个任务tj的等待时间或者执行时间,tdl表示任务的截止时间;β0(τ)表示md在τ时间段所处理完成的任务数量,αi(τ)表示第i个基站enbi在τ时间段所处理完成的任务数量,u表示md成功完成任务能获得的效用;

(2.3)如果一个任务错过了截止期限,则认为此任务超时,将会被系统丢弃,因此会产生损失,定义损失函数:

其中d0(τ)表示md所丢弃的任务数量,di(τ)表示enbi所丢弃的任务数量;

(2.4)根据步骤(2.1)-(2.3),定义本场景下的任务卸载的优化问题模型:

max:r(τ)=u(τ)-p(τ)-e(τ)(a)

其中公式(a)表示优化的目标奖励函数r(τ),即最大化获得任务总效用u(τ),同时最大程度减小损失函数p(τ)和能量消耗e(τ);

公式(b)表示任务卸载的数量约束,z(τ)表示在τ时间段md上任务到达的数量;

公式(c)表示md和每个enb之间链路传输容量约束,ηi(τ)表示在τ时间段从md发往enb的数据传输速率;

公式(d)表示任务卸载的时间约束,tslot表示每个时间段的持续时间;

公式(e)表示每个基站以及md的计算能力约束,βi(τ)表示在τ时间段所处理完成的任务,ci(τ)表示enbi的计算容量;

步骤(3)、多enbmec环境下任务卸载场景下,构建actor-critic深度强化学习网络框架;

所述actor-critic深度强化学习网络框架以所有enbi和md的τ时间段任务处理队列、md发往所有enbi的数据传输速率、md所到达的任务总数为输入状态sτ,以任务卸载的解决方案、md的计算容量为动作空间,以任务卸载的解决方案为输出,以公式(a)目标奖励函数作为奖励;

所述τ时间段的状态sτ=[l0(π),l1(τ),...,li(τ),...,ln(τ),η1(τ),...,ηi(τ),...,ηn(τ),z(τ)]

其中l0(π)表示md上任务处理队列,li(τ)表示enbi上任务处理队列,i=1,2,……,n;ηi(τ)表示md与enbi之间的数据传输速率,z(τ)表示md所到达的任务总数;

所述动作空间的各动作的向量形式为aτ=[a0(τ),...,ai(τ),...,an(τ),c0(τ)],即每个动作都包含md本地保留任务数a0(τ),卸载到各个enbi上的任务ai(τ)以及md的计算容量c0(τ);

所述的actor-critic深度强化学习网络框架采用actor网络与critic网络;

所述actor网络采用[100,100,n+1]的三层全连接层,激活函数为relu,最后一层为动作层,输出n+1个不同动作的概率值;其中actor网络策略函数为表示为状态sτ下所能获得动作值;θμ为actor网络权重参数;

所述critic网络结构与actor网络相同;其中critic网络评价函数为表示在状态sτ下采取动作aτ后所能获得的动作期望值;θq为critic网络权重参数;

步骤(4)、采用actor-critic深度强化学习网络框架对步骤(2)任务卸载的联合奖励函数进行优化求解,得到最佳任务卸载的解决方案;

2、根据权利要求1所述的移动边缘计算环境下基于drl的能耗感知任务卸载方法,其特征在于步骤(1)具体如下:

3、根据权利要求2所述的移动边缘计算环境下基于drl的能耗感知任务卸载方法,其特征在于步骤(1.5)具体如下:

4、根据权利要求1所述的移动边缘计算环境下基于drl的能耗感知任务卸载方法,其特征在于步骤四具体如下:

(4.1)随机初始化actor网络和critic网络的权重θμ和θq,将权重分别复制到目标actor网络和目标critic网络,并设置经验回放池容量为d,d>0,同时清空经验回放池;

θμ′←θμ,θq′←θq

其中θμ′、θq′分别表示目标actor网络和目标critic网络的权重;

(4.2)当前回合下,初始化md系统环境并向md分配任务获取初始状态值;具体如下:

4.2.1初始化md系统环境,并初始化生成一个随机噪声发生器n;

4.2.2为md分配z(τ)任务,此时τ=0表示初始时间段;

4.2.3获得md从系统环境中观察到的最初状态值,即任务未运行时的md本地状态并且由于此时md并未卸载任务到enb,所以当τ=0时,md本地状态为:

sτ=[l0(π),η0(τ),z(τ)](5)

(4.3)运行actor-critic深度强化学习网络框架对每一时间段下状态获取最优值动作;具体如下:

4.3.1actor网络根据当前时间段状态sτ输出原型动作,并进入嵌入层进行映射,并利用knn算法提取k个最近邻值动作;具体如下:

4.3.1.1状态sτ输入actor网络,actor网络根据输入策略π得到输出并且为了增加学习的随机性,添加探索噪点nτ得到原型动作ap,即

4.3.1.2为了将连续空间下的动作值ap映射到离散空间下的动作值ap',在actor和critic之间设置嵌入层,将上述得到的ap输入嵌入层,输出d个映射后的ap';将映射后的d个动作值ap'利用knn算法提取k个邻值集合ak,其度量方式为动作之间的欧氏距离,即ak=knn(ap'),k可以选择为10;

4.3.2critic网获取步骤(3.2.2.1)所获得的所有最近邻值动作,筛选获得最优值动作;md执行该最优值动作后保存当前状态至经验回放池;具体如下:

4.3.2.1将ak个动作分别输入到critic当前网络中,critic根据策略函数输出当前状态下不同行为动作ak所对应的价值,从中选取具有最大价值的ax作为md的预测输入动作,即

4.3.2.2md根据动作aτ执行任务卸载决策,根据动作执行结果得到回报rτ,并观察到新的状态sτ+1,形成新的向量样本[sτ,aτ,rτ,sτ+1],并存入经验回放池;

4.3.3更新网络参数;具体如下:

1)从经验回放池里面随机采样m个样本[sτ,aτ,rτ,sτ+1],发送给当前actor网络,当前critic网络,目标actor网络和目标critic网络;

2)目标actor网络根据下一时间段状态sτ+1输出动作a'τ+1,目标critic网络根据状态sτ+1和目标actor网络输出的动作a'τ+1,得到当前目标期望值yτ;并把当前目标期望值yτ传递给均方差损失函数

其中表示目标网络,γ代表折合因子;

3)当前critic网络根据状态sτ,动作aτ和奖励rτ,输出评估函数给抽样策略梯度和均方差损失函数

4)通过神经网络的反向传播更新actor网络、critic网络的所有权重θq,θu

均方差损失函数为

抽样策略梯度函数为

5)更新目标actor网络和目标critic网络的网络参数,即:

θq′←σθq+(1-σ)θq′

θμ′←σθμ+(1-σ)θμ′

其中σ为网络更新权重,设置为0.1;

6)actor网络从经验回收池中获得下一时间段的状态sτ+1,重复步骤1)到6)直到最大时间段;

4.3.4重复步骤4.3.1-4.3.3直到达到最大回合次数,以得到稳定的模型参数。

为了验证本发明方法的可行性,将本方法与现有的传统三种算法lb,remote,local以及强化学习网络dqn进行实验对比。

本次实验中每个enb的计算容量ci(τ)=10ghz,与md的传输功率总工作时长为1000s,每个时间段大小tslot为1s,在每个时间段τ内,每个任务具有相同的工作负荷w=25ghz·s,数据大小d=10mb,并且截止时间tdl设为3s,当任务在截止时间完成时,md可获得效用u=1,无线网路的带宽b=100mhz,高斯白噪声σ2=-174dbm/hz,路径损耗常数路径损耗指数θ=4,每个enb距离md的距离长度d为1000。

md的cpu核数m=4,每个cpu的工作频率为f=2.0ghz,所以md的计算能力为其中

将从md的奖励,能量消耗以及任务丢弃产生的损失代价三个指标来进行各个算法在不同情况下的性能比较。

1.收敛性对比

由于本发明应用了knn算法将动作特征从连续空间提取到离散空间,因此在实验中考虑knn算法里不同的k大小对收敛性的影响,其中k=1表示只从原型动作中提取一种,k=1%表示从原型动作中提取1%。图3(1)-(3)分别为enb数量为1,3,5的情况下,将本发明提出的drl-e2d与传统dqn算法进行收敛性对比实验,循环次数上限为250。

由图3(2)-(3)可以看出当k=1%时,drl-e2d的表现好于k=1,这是因为k越大就越有利于神经网络基于自身的策略去推断更好的下一步动作,并且可以看出无论enb的数量为多少,在相同的循环次数内,dqn收敛表现要始终差于drl-e2d。

2.enb数量的影响

图4(1)显示随着enb数量的增多,lb,remote,drl-e2d和dqn所获得奖励也增多,这是因为这些算法能受益与将任务卸载到enb上,此外,随着enb的增加,md通过完成更多任务和消耗更少的能量而获得更高的奖励。图4(2)显示无论enb的数量如何,drl-e2d的能力消耗始终保持稳定,这是因为为了获得最大的奖励,md倾向于放弃任务而不是执行任务。图4(3)显示随着enb的增加,除了local算法以外,其余算法的损失代价都相应减小。

3.任务工作负荷w的影响

图5(1)可以看出随着w的增加,所有算法所获得奖励都逐渐减小,这是因为对于固定的任务到达率λ,较大的w需要更多的计算资源,从而导致更高的能耗,更少的完成任务和更低的奖励,但是drl-e2d的表现始终好于其他算法,表明其更能适应w的变化。图5(2)可以看出remote的能耗最低,并且与w无关。lb,drl-e2d和dqn的能耗随w的增加而增加,因为更大的w需要更多的计算资源和时间,从而导致更高的能耗。图5(3)显示随着w的增加,所有算法的损失代价都增大,其中local的损失变化最剧烈,这是由于其比其他算法丢弃了更多任务。

4.数据大小d的影响

图6(1)可以看出除了local以外,随着d的增大其余算法所获得奖励也同样增加,这是因为drl-e2d,lb,remote和dqn应用了任务卸载策略。因此,在较大的d情况下,md将花费更多的能量来将任务卸载到enb。而local并不采用任务卸载,所以其奖励与d无关。

同样,图6(1)-(2)中md的能力损耗与损失代价也随着d的增大而逐渐增大。其中,由于remote算法会将所有的任务都卸载给enb,因此其任务丢弃的数量更多,其损失代价变化也更快。

综上所述,本发明提出的drl-e2d算法在各种情况下表现都较为优异。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1