买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:中南林业科技大学
摘要:本发明公开一种基于深度强化学习的协作边缘计算任务卸载方法。主要包括如下步骤:1、构建协作移动边缘计算系统的数学模型p1;2、将问题p1转化为为双层问题p2;3、上层基于深度强化学习求解卸载决策,功率分配和信道分配,提供给下层;4、根据上层提供的卸载决策,功率分配和信道分配,下层求解计算资源的最优分配,计算得出能耗后反馈给上层;5、上层收到下层反馈,存入经验池,更新网络参数;6、训练评估网络与目标网络;7、判断算法迭代次数iteration是否大于最大迭代代数I,如果iterationI,则迭代结束,否则跳转至步骤3继续迭代;应用本发明,解决了协作移动边缘计算系统在时延约束下的最小能耗问题,可以实现协作边缘计算系统的能耗最小化。
主权项:1.一种基于深度强化学习的协作边缘计算任务卸载方法,其特征在于,包括以下步骤:步骤1:构建协作移动边缘计算系统的数学模型p1,目标是最小化能耗;步骤2:对问题p1进行分析,将问题p1转化为双层问题p2进行求解;步骤3:求解上层优化问题,基于深度强化学习求解卸载决策Ok,功率分配Pk和信道分配Wk,提供给下层;步骤4:根据上层提供的卸载决策,功率分配和信道分配后,下层求解计算资源的最优分配rk,计算得出能耗后反馈给上层;步骤5:上层收到下层反馈,存入经验池,更新网络参数;步骤6:训练评估网络与目标网络;步骤7:判断算法迭代次数iteration是否大于最大迭代代数I,如果iterationI,则迭代结束,否则跳转至步骤3在新的网络参数下继续迭代;步骤1中构建协作边缘计算系统的数学模型p1的步骤如下:1传输模型对于所有的卸载计算,移动用户必须首先将数据上传到MEC服务器,鉴于OFDMA机制,由于子载波分配,每个用户独占子载波,用户传输之间的干扰被忽略;并且,由于计算结果非常小,我们忽略了计算结果传回的过程;用户n将任务Un传输到MEC服务器m时的数据传输速率如公式1所示: 其中M表示具有MEC服务器的基站集合,N表示移动用户集合,B是信道带宽,wn,s,m表示将子载波s分配给用户n,将任务卸载计算到服务器m传输时使用,pn,s,m表示用户n和服务器m之间分配子载波s,将任务进行卸载上传的传输功率,gn,s,m表示用户n在和服务器m的信道增益;任务Un传输到MEC服务器m的传输时间如公式2所示: 其中Dn表示用户n的任务数据的大小,单位为bit;任务Un传输到MEC服务器m的传输能耗如公式3所示: 在MEC服务器m接收到任务Un后,如果当MEC服务器m没有足够的资源来满足用户需求时,MEC服务器会尽自己能力在时延约束之内计算一部分数据MEC服务器m通过X2链路将剩下的数据转发给另一个拥有足够资源的MEC服务器k,两个MEC服务器协作计算,所以对于MEC服务器m传输剩余数据到MEC服务器k的传输时间如公式4所示: 其中为MEC服务器m与k之间的X2链路容量,MEC服务器m将剩余需要转发的数据的计算公式如公式5所示: 其中Tnmax表示任务Un的时延约束,任务Mi必须在[0,Timax]内完成,Cn为完成任务Un所需的计算工作量,单位为CPU周期数bit,表示服务器m分配给任务Un的计算资源,当没有MEC服务器有足够的计算资源来完成用户n的剩余任务时,MEC服务器m通过有线光纤链路将任务请求转发给云服务器;MEC服务器m与云服务器协作计算,所以对于MEC服务器m传输剩余数据到云服务器的传输时间如公式6所示: 其中为MEC服务器m与云服务器之间的链路容量;2计算模型MEC服务器接收已卸载的任务,然后并行执行这些任务;由于我们考虑了MEC服务器的处理能力的上限和在延迟约束下可以处理的任务的上限,因此我们不考虑任务串行处理和任务等待队列;Aαn=1,任务Un在本地执行的计算模式,Un在本地执行的计算时间如公式7所示: 其中为Un本地执行分配的计算资源;任务Un在本地执行的计算能耗如公式8所示: 其中k0>0是一个与用户设备CPU相关的常数;B任务Un卸载到MEC服务器m执行的计算模式,并且MEC服务器m有充足的计算资源保证任务在时延约束之内完成时,Un在执行MEC服务器m执行的计算时间如公式9所示: 其中服务器m分配的计算资源为任务Un在执行MEC服务器m执行的计算能耗如公式10所示: 其中k1>0是一个与MEC服务器的CPU有关的常数;C其中k≠0,表示任务Un卸载到MEC服务器m,MEC服务器m没有足够的资源来满足用户需求时,卸载一部分任务到MEC服务器k执行的计算模式;当MEC服务器m没有足够的计算资源保证任务在时延约束之内完成时,MEC服务器会尽自己能力在时延约束之内计算一部分数据剩下的数据Dnr转发给MEC服务器k,由于MEC服务器m计算的同时不影响剩余数据的处理,剩余数据转发传输给其他服务器计算可以同时进行,所以此时可以不考虑MEC服务器m的计算时间;此时MEC服务器m分配给n的计算资源为m剩下的所有计算资源;Un的剩余数据在MEC服务器k执行的计算时间如公式11所示: 其中表示服务器k分配的计算资源;Un的剩余数据在MEC服务器k执行的计算能耗如公式12所示: D,当没有协作MEC服务器有足够的计算资源来完成用户n的剩余任务时,MEC服务器会尽自己能力在时延约束之内计算一部分数据剩下的数据转发给云端服务器Cloud;此时MEC服务器m分配给n的计算资源为m剩下的所有计算资源;Un的剩余数据在云端服务器执行的计算时间如公式13所示: 其中表示云端服务器分配的计算资源;Un的剩余数据在云端服务器执行的计算能耗如公式14所示: 其中k2>0是一个与云服务器CPU有关的常数;3时延模型对于四种决策下的任务Un的时延如公式15-18所示:Aαn=1,任务Un在本地执行的计算模式的总时延如下式, 其中表示任务Un在本地执行的计算模式的总时延;B任务Un卸载到MEC服务器m执行的计算模式的总时延如下式, 其中表示任务Un卸载到MEC服务器m执行的计算模式的总时延;C任务Un卸载到MEC服务器m,MEC服务器m没有足够的资源来满足用户需求时,卸载一部分任务到MEC服务器k执行的计算模式的总时延如下式, 其中表示任务Un卸载到MEC服务器m,MEC服务器m没有足够的资源来满足用户需求时,卸载一部分任务到MEC服务器k执行的计算模式的总时延;D任务Un卸载到MEC服务器m,没有协作MEC服务器有足够的计算资源来完成用户n的剩余任务时,MEC服务器会尽自己能力在时延约束之内计算一部分数据剩下的数据转发给云端服务器Cloud执行的计算模式的总时延,计算公式如下, 其中表示任务Un卸载到MEC服务器m,没有协作MEC服务器有足够的计算资源来完成用户n的剩余任务时,MEC服务器m把剩下的数据转发给云端服务器Cloud执行的计算模式的总时延;任务Un的总时延如公式19所示: 4能耗模型对于四种决策下的任务Un的能耗如公式20-23所示:Aαn=1,任务Un在本地执行的计算模式的总能耗如下式, 其中表示任务Un在本地执行的计算模式的总能耗;B任务Un卸载到MEC服务器m执行的计算模式的总能耗如下式, 其中表示任务Un卸载到MEC服务器m执行的计算模式的总能耗;C任务Un卸载到MEC服务器m,MEC服务器m没有足够的资源来满足用户需求时,卸载一部分任务到MEC服务器k执行的计算模式的总能耗如下式, 其中表示任务Un卸载到MEC服务器m,MEC服务器m没有足够的资源来满足用户需求时,卸载一部分任务到MEC服务器k执行的计算模式的总能耗;D任务Un卸载到MEC服务器m,没有协作MEC服务器有足够的计算资源来完成用户n的剩余任务时,MEC服务器会尽自己能力在时延约束之内计算一部分数据剩下的数据转发给云端服务器Cloud执行的计算模式的总能耗,计算公式如下, 其中表示任务Un卸载到MEC服务器m,没有协作MEC服务器有足够的计算资源来完成用户n的剩余任务时,MEC服务器m把剩下的数据转发给云端服务器Cloud执行的计算模式的总能耗;任务Un的总能耗如公式24所示: 5能耗最小化问题以最小化整个系统的总能耗为目标,包括总计算和传输能耗,优化卸载决策、计算资源、信道和功率分配,数学模型p1表示如下: 其中O={o1,o2,...,on}表示n个用户的卸载决策矩阵,表示计算资源分配矩阵,表示服务器m分配给任务Un的计算资源,W={wn,s,m|wn,s,m∈{0,1},n∈N,s∈S,m∈M}表示子载波分配矩阵,wn,s,m=1表示子载波s将分配给用户n,将任务卸载计算到服务器m传输时使用,P={pn,s,m|pn,s,m∈0,Pmax],n∈N,s∈S,m∈M}表示子载波功率分配矩阵,其中pn,s,m表示用户n和服务器m之间分配子载波s,将任务进行卸载上传的传输功率;25b表示任务的卸载决策取值范围;25c声明任务最多卸载到一个MEC服务器m上,并且最多可以与其他服务器进行一次剩余任务的协作计算;25d表示MEC服务器m可分配的最大计算资源移,表示服务器m分配给任务Un的计算资源,表示服务器m的最大计算资源;25e是用户n的最大传输功率约束,小于等于Pmax,Pmax表示最大传输功率;25f和25g表示每个子载波最多被分配给一个用户;25h确保每个任务必须在延迟约束下完成;步骤2对问题p1进行分析,将问题p1转化为双层问题分别进行求解,步骤如下:通过对问题p1的进一步分析,我们可以发现以下两个特征,首先,不同的卸载决策结果,分配的计算资源和无线信道资源也不同,其次,分配不同的计算资源和无线信道资源,求得的最优卸载决策也不同;由于优化变量既相互影响,又可以分为两个独立的集合,因此问题p1满足双层优化问题的特点,可以将问题p1转化为双层优化问题p2;双层优化是在保证下层优化问题最优性的前提下解决上层优化问题;本发明将卸载决策问题和无线信道资源分配问题视为上层优化问题,将计算资源视为下层优化问题,其目的是最小化所有移动用户的总能耗;具体来说,通过对模型分析,当卸载决策,信道和功率分配后,基于任务完成时间约束25h,所有任务必须在时间约束之内完成,同时,根据公式19关于的定义,可推导出计算任务Un在不同决策下的计算资源最小下界如公式26所示: 通过分析计算模型能耗计算公式10、公式12与公式14可知,计算能耗与计算资源成正比,计算资源下界公式26即为能耗最优值,即为计算资源分配;因此,通过可以将问题p1转化为双层优化问题p2,公式27包括27a、27b、27c,公式27如下所示: 25b-25h27b 然后,我们提出了一个基于深度强化学习的双层优化算法求解问题p2,上层优化和下层优化二者相互循环迭代,后者嵌套在前者中;首先上层求解卸载决策Ok,功率分配Pk和信道分配Wk,提供给下层;在下层优化中,采用单调优化方法,根据给定的卸载决策和通信资源分配获得相应的计算资源的最优分配rk,计算得出最优能耗后反馈给上层;步骤3求解上层优化问题,基于深度强化学习求解卸载决策Ok,功率分配Pk和信道分配Wk,提供给下层,步骤如下:深度强化学习方法中有三个关键要素,即状态、动作、奖励,具体定义如下:·状态:用st表示状态,S{st1,st2,...,stn,...,st|N|}表示环境的状态空间,n∈N为当前用户,stnn∈N表示当前执行到第n个任务;·动作:用a表示动作,由三部分组成,分别是卸载决策,信道选择,功率分配;卸载决策为向量O=[o1,...,on,...,o|N|],表示用户n的卸载决策选择;信道选择为向量Π=[ω1,...,ωn,...,ω|N|],ωn={ωn,1,...,ωn,s,...,ωn,|S|}表示用户n的信道选择,其中ωn,s=1表示用户n分配信道s;功率选择为向量Λ=[p1,...,pn,...,p|N|],其中pn={pn,1,...,pn,k,...,pn,max-1}表示用户n的功率选择,pn,k=1表示根据最大传输功率Pmax离散化后的第k个等级的功率分配给用户n;结合向量O,Π,ΛUp,系统动作为所示:a=[o1,...,on,...,o|N|,ω1,...,ωn,...,ω|N|,p1,...,pn,...,p|N|];·奖励:一般来说,奖励函数应该与目标函数相关,在一定的状态st下,执行每个可能的动作a后得到一个奖励R,优化问题的目标为最小化总能耗Esum,因为奖励与总能耗的大小成负相关,因此将-Esum作为回报,使得最小的能耗对应最大的回报;我们提出了一个基于深度强化学习的双层优化方法,结合了DuelingDQN和DoubleDQN技术,并且在神经网络内部参数中添加了自适应噪声来提高学习效率;在上层通过动作选择,得到卸载决策Ok,功率分配Pk和信道分配Wk后;下层根据提供的卸载决策,功率分配和信道分配,得到计算资源分配rk,计算得出系统总能耗作为奖励反馈给上层;上层得到反馈能耗后存入经验池,更新网络权重参数;初始化iteration=0,最大迭代代数Ι,将当前状态st,即用户n及对应的任务Un作为环境信息输入到评估网络,输出为动作对应的Q值,其中动作为卸载决策,功率分配和信道分配,根据∈-greedy策略选择最大Q值对应的动作,或者随机选择一个动作,将动作输入下层;步骤4根据上层提供的卸载决策Ok,功率分配Pk和信道分配Wk,下层通过单调优化求解计算资源的最优分配rk,计算得出奖励R后反馈给上层,步骤如下:通过分析计算模型能耗计算公式10、公式12与公式14可知,计算资源与总计算能耗之间存在严格单调递增的关系;为了尽量减少所有移动用户的总计算能耗,分配给每个任务的计算资源应尽可能少;计算资源下界公式26即为能耗最优值,即为计算资源分配;在得到卸载决策Ok,功率分配Pk和信道分配Wk后,根据公式26可以计算得出计算资源下界作为计算资源分配,再代入公式27即可计算得到的系统总能耗下层计算得到计算资源分配后,得到能耗奖励R和下一个状态st',即下一个要执行的任务,反馈给上层;步骤5中上层收到下层反馈,存入经验池,更新网络参数,步骤如下:上层收到反馈存储4元组进经验池,4元组包括当前状态st,选择的动作a,下一个状态st',和得到的奖励R这4个信息;然后再将st'输入到评估网络,跳转到步骤3,直到经验池中存储φ个4元组st,a,R,st'跳转到步骤6;步骤6训练评估网络与目标网络,步骤如下:i从经验池中存储的4元组st,a,R,st'抽样出一部分,将抽样出来的多个st做为batch输入到评估网络,然后根据抽样出来的动作a选出其在评估网络中对应的Q值Qevalst,a,ω,其中ω为评估网络在添加噪声之后的权重参数,计算公式如28所示:ω=θ+N0,σ228其中,θ为评估网络的权重参数,其中σ为添加高斯噪声的噪声尺度;N表示高斯分布函数;ii将抽样出来的多个st'做为batch输入到目标网络,得到动作a'的Q值Q'st',a',取Q'st',a'中最大的Q值并乘以一个系数γ,然后再加上抽样出来的奖励R,得到Qtarst',a',ω',基于DDQN的计算公式如29所示: 其中,ω'为目标网络在添加噪声之后的权重参数,计算公式如30所示:ω'=θ'+N0,σ230其中,θ'为目标网络的权重参数;iii计算损失函数反向传播更新神经网络权重参数:根据两个神经网络得到的两个Q值,来计算损失值,即第2步的结果Qevalst,a,ω与第3步的结果Qtarst',a',ω'的均方误差,然后迭代次数iteration+1,计算公式如31所示:Lω=E[Qtarst',a',ω'-Qevalst,a,ω]231利用梯度下降法来反向传播对网络权重参数ω进行更新,计算公式如32所示: 每经过步数后,将评估网络的权重ω更新到目标网络ω'上;步骤7判断算法迭代次数iteration是否大于最大迭代代数I,如果iterationI,则迭代结束,否则跳转至步骤3在新的网络参数下继续迭代。
全文数据:
权利要求:
百度查询: 中南林业科技大学 一种基于深度强化学习的协作边缘计算任务卸载方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。