基于深度学习的边缘计算任务卸载和资源分配方法

文档序号:30308562发布日期:2022-06-05 08:35阅读:308来源:国知局
基于深度学习的边缘计算任务卸载和资源分配方法

1.本发明涉及移动边缘计算技术领域,具体涉及一种基于深度学习的边缘计算任务卸载和资源分配方法。


背景技术:

2.近年来,由于大数据与无线通信技术的突破性进展,连接到无线网络上的移动用户和设备爆炸式增长,在网络的边缘产生了海量的数据;与此同时,诸如虚拟现实、自动驾驶和人脸识别等新兴应用通常都是计算密集型和延迟敏感性任务,导致人们对网络环境和任务处理能力提出了新的挑战。传统的云计算需要利用具有强大计算能力的云中心来集中的解决计算和存储问题,但这种单一的计算模式无法满足新兴应用和移动设备对实时性和低能耗等要求。移动边缘计算(mobile edge computing,mec)就是在此基础上提出的在网络边缘执行计算的一种新型计算模式。mec通过在边缘设备附近建立边缘服务器,移动用户可以将本地难以处理的任务卸载到附近的边缘服务器中执行,从而降低本地处理的能量消耗和任务延迟,在保证任务顺利完成的情况下给用户带来高质量的服务体验。然而,当同一区域的移动用户数量过多、任务处理过于密集时,大量的数据传输很有可以引起网内拥堵和响应时间增加,从而导致mec系统瘫痪。因此,设计一个合理的mec系统尤为重要。
3.为了最大限度地提高mec系统的有效性,提高系统内任务的完成率和服务质量,在设计mec系统时需要考虑两方面的问题:一是系统中哪些用户的任务需要被卸载到边缘服务器中执行,卸载时的最佳功率也需要被确定;二是需要考虑mec系统中任务执行的能量消耗、时间延迟和价格成本三者之间的平衡。现有的mec方法大多都聚焦于单一目标的研究,很少考虑对多个目标同时优化。此外,传统的卸载方案通常假设边缘服务器具有无限的计算能力,也很少将数据传输时的相互干扰对卸载决策的影响考虑在内。所以mec系统中任务卸载和资源分配问题仍然存在不足,缺少一个更加合理和准确的方法。
4.多目标进化优化(multi-objective evolutionary algorithm,moea)属于进化计算领域,如今被普遍应用于实际工程中优化问题的多个目标之间相互作用且冲突的情况。moea从一组随机产生的种群开始,对种群中的个体执行选择、交叉和变异操作,经过多次迭代来提高个体的适应度,从而不断逼近pareto前沿,得到最优解集的过程。对于基于支配关系的moea,其基本思路是利用基于pareto的适应度分配策略,从当前进化群体中找出所以的非支配个体,如nsga
‑ⅱ
,具有运行速度快,解集收敛性好的优点。
5.深度学习(deep learning,dl)属于机器学习领域,是指通过模拟人脑中的神经网络来学习样本数据的内在规律和表示层次,从而使机器能够像人一样具有分析学习的能力,可以做出准确的判断。近年来,由于相关技术的突破性进展,深度学习广泛的应用于解决复杂场景的问题,并表现出了优秀的效果。


技术实现要素:

6.针对现有技术的不足,本发明提供了一种基于深度学习的边缘计算任务卸载和资
源分配方法,将多目标进化优化应用于多用户多边缘服务器的网络环境中。具体是在构建系统模型的过程中,分别将系统内总能量消耗、总时间延迟和总价格成本作为三个独立的子目标,利用nsga
‑ⅱ
求解最优解集;然后根据不同用户对这三个目标的偏好情况从最优解集中确定最佳方案;最后通过上述方法构建用于训练的数据集,利用深度学习算法获得训练模型来替代详细决策和分配过程。
7.为实现上述技术效果,本发明提出的一种基于深度学习的边缘计算任务卸载和资源分配方法,包括:
8.步骤1:对移动边缘计算网络进行系统建模;
9.步骤2:构建移动边缘计算系统中任务卸载和资源分配问题的目标函数;
10.步骤3:根据移动边缘计算系统中任务卸载和资源分配问题的相关属性值生成初始种群,采用nsga
‑ⅱ
算法求解系统模型得到最优解决方案的决策变量;
11.步骤4:构建深度神经网络模型,利用步骤3生成的决策变量对深度神经网络模型进行训练;
12.步骤5:获取待检测的移动边缘计算系统中任务卸载和资源分配问题的相关属性值,利用训练后的深度神经网络模型预测最优决策变量,根据最优决策变量对移动边缘计算系统中的计算任务和资源进行分配。
13.所述步骤1中的系统模型包括网络模型、通信模型、计算模型和成本模型,首先需要构建出网络模型,然后在此基础上构建出相应的通信模型、计算模型和成本模型,具体建模过程包括:
14.构建网络模型,将n个移动用户表示为u={u1,u2,

,un},其中每个用户i都携带一个待处理的计算密集型或延迟敏感型任务,由ti={si,ci,ti}表示,si表示任务ti的数据量大小,ci表示任务ti的计算量,ti表示完成任务ti的最大可接受延迟,m个无线基站表示为b={1,2,

,m};
15.确定卸载时用于数据传输过程的通信模型,用表示从移动用户i到其任务卸载的目的基站ηi之间的传输速度,i=1,2,

,n;ηi∈b,表示为:
[0016][0017]
其中,b表示信道带宽,σ2表示移动设备i的噪声功率,表示第i个移动用户与目的基站之间的信道增益,为通过同一无线信道传输的数据之间的相互干扰功率,pi表示第i个移动用户用于数据传输的上行传输功率;
[0018]
计算移动用户到服务器之间通信的时间延迟和能量消耗
[0019][0020]
构建计算模型,计算任务ti在本地的执行时间延迟表示为:
[0021][0022]
式中,xi表示任务卸载决策变量,xi=0代表任务不进行卸载操作,f
il
表示移动设
备i本地的计算能力;ci表示待处理任务ti的计算量;
[0023]
本地执行的能量消耗
[0024][0025]
式中,κ表示移动用户i的硬件架构系数;
[0026]
边缘云的执行延迟
[0027][0028]
其中,代表卸载目的边缘云ηi分配给移动设备i的计算资源的比例;表示目的边缘云ηi的计算能力;ηi∈b,b={1,2,

,m};m表示本mec系统中含有的边缘云服务器个数;
[0029]
成本模型是指移动用户i将计算任务卸载到边缘云服务器中执行时需要支付给边缘云运营商的报酬,成本模型的表达式ri为:
[0030][0031]
式中,代表卸载目的边缘云ηi的计算资源单位成本。
[0032]
所述步骤2中的目标函数包括最小化移动设备本地总能量消耗、最小化待处理任务总时间延迟和最小化处理任务所花费的总成本;具体构建过程包括:
[0033]
所述最小化移动设备本地总能量消耗,是指最小化所有移动用户在完成待处理任务过程中的总能量消耗e,包括本地执行能耗和传输能耗;
[0034][0035]
式中,
[0036]
所述最小化待处理任务总时间延迟,是指最小化所有移动用户在完成待处理任务过程中所需的时间延迟t,包括本地执行时延、传输时延和边缘云服务器端执行时延;
[0037][0038]
式中,
[0039]
所述最小化处理任务所花费的总成本,是指最小化所有移动用户在边缘云服务器端执行计算任务时所需要给边缘云提供商支付的总报酬c,表示为:
[0040][0041]
所述步骤3中的相关属性值包括:各个移动用户的位置信息、本地计算能力和剩余电池储量,各个待处理任务的数据量大小,所需计算量和最大可接受延迟,以及各个基站的
网络条件、所搭载边缘云服务器的计算能力和执行计算任务的单位成本。
[0042]
所述步骤3中采用nsga
‑ⅱ
算法求解系统模型得到最优解决方案的决策变量,包括:
[0043]
步骤3.1:构建移动边缘计算系统中任务卸载和资源分配问题的混合编码染色体模型,即个体,每个个体包括:确定移动用户i是否卸载的二元变量xi∈{0,1};确定用户要将任务卸载到哪个边缘服务器中的整数变量ηi∈b,若不进行卸载操作,则决策变量ηi值为0;边缘服务器给该移动用户分配的计算能力的比例λi∈[0,1],介于0到1之间;移动用户i进行卸载操作时上行传输功率属于实数变量,若该用户无需卸载,则决策变量pi值为0,意味着不需要传输功率;染色体个体大小取决于系统内移动用户的数量;
[0044]
步骤3.2:根据混合编码染色体模型随机生成初始种群,种群大小设定为gen,并带入步骤2所构建的三个目标函数中,求出目标函数值,并逐个保存到该条染色体的末尾;
[0045]
步骤3.3:对种群进行快速非支配排序,计算出每个个体的被支配个数和该个体支配的解的集合,将支配排序记录在该条染色体末尾,直到种群等级被完全划分,最后按照求出的种群等级对整个种群从小到大排序;
[0046]
步骤3.4:计算个体间的拥挤距离p[f]
distance
,将求解出的拥挤距离记录在染色体末尾;
[0047][0048]
其中,e[f+1]、t[f+1]和c[f+1]分别代表步骤2中三个目标函数e、t、c在第f+1个个体中的函数值;f表示种群中的个体,f={1,2,3,

,f};
[0049]
步骤3.5:采用二元竞标赛选择、交叉和变异操作生成下一代种群,迭代执行步骤3.3和步骤3.4,直到满足给定的迭代次数,迭代计算结束后输出pareto前沿作为最优解集;
[0050]
步骤3.6:设置不同目标函数的权重系数,从最优解集中选择出最优解决方案对应的决策变量。
[0051]
所述步骤3.6包括:
[0052]
步骤3.6.1:根据三个目标间不同需求所设置的权重系数分别计算最优解集中各个解的综合影响因素值φ,并对计算结果进行排序,选出综合结果最小的个体作为联合优化的最优解;
[0053]
φ=δ1e+δ2t+δ3c
[0054]
式中,δ1、δ2、δ3分别表示三个目标函数的权重系数,δ1+δ2+δ3=1;
[0055]
步骤3.6.2:重复步骤3.6.1,计算出最优解集中每个解决方案的综合因素值,将最大综合因素值对应的解决方案作为最优的解决方案;
[0056]
步骤3.6.3:将最优解决方案对应的决策变量作为最优的一组决策变量。
[0057]
所述步骤4包括:
[0058]
步骤4.1:利用深度神经网络模型对决策框架进行训练制作样本集;
[0059]
步骤4.2:构建深度神经网络模型,所述深度神经网络模型包括一个输入层、一个输出层、2个隐藏层,每个隐藏层各有64个神经元;
[0060]
步骤4.3:将步骤4.1.3生成的样本集作为深度神经网络模型的输入,对模型参数进行训练。
[0061]
所述步骤4.1具体表述为:
[0062]
步骤4.1.1:构建深度学习的状态空间、动作空间:
[0063]
状态空间s:将时间间隔t作为一个决策周期,每个决策周期的状态包括移动边缘计算网络中用户信息、边缘服务器信息和当前用户的任务请求,所述每个决策变量表示为:{s=(u,b,t)∈s|u∈u,b∈b,t∈t};
[0064]
动作空间a:动作具体是指移动边缘计算网络中任务卸载决策和资源分配方案,决策周期内对应的动作空间包含移动边缘计算网络中任务卸载决策,任务卸载目的基站,目的基站所提供计算资源分配比例以及传输功率控制,可用如下公式表示:
[0065][0066]
将状态空间作为深度监督学习算法的输入,将动作空间作为深度监督学习算法的输出;
[0067]
步骤4.1.2:随机生成ξ个状态空间向量,根据步骤3.7.3生成的最优决策变量得到相应的动作空间向量;
[0068]
步骤4.1.3:根据步骤4.1.2中生成的状态变量、动作空间向量以及相应的决策变量作为样本集。
[0069]
本发明的有益效果是:
[0070]
本发明提出了一种基于深度学习的边缘计算任务卸载和资源分配方法,与现有技术相比,本发明所提技术方案同时对移动边缘计算中的能耗、时延和成本三个关键问题进行优化,选择出综合表现最优的解决方案;并且通过训练神经网络的方式,训练决策框架来替代详细的决策和分配过程,有效提高了移动边缘计算系统中任务卸载问题的决策速度和可靠性,为系统内的移动用户带来了更优的服务质量。
附图说明
[0071]
图1为本发明中基于深度学习的多目标mec系统中任务卸载和资源分配方法流程图;
[0072]
图2为本发明中多用户多边缘服务器的移动边缘计算网络系统结构图;
[0073]
图3为本发明中混合编码染色体的示意图;
[0074]
图4为本发明中深度神经网络架构的示意图。
具体实施方式
[0075]
下面结合附图和具体实施实例对发明做进一步说明。
[0076]
如图1所示,一种基于深度学习的边缘计算任务卸载和资源分配方法,包括:
[0077]
步骤1:对移动边缘计算网络进行系统建模;包括网络模型、通信模型、计算模型和成本模型,首先需要构建出网络模型,然后在此基础上构建出相应的通信模型、计算模型和成本模型,具体建模过程包括:
[0078]
构建网络模型,在网络模型中,将n个移动用户表示为u={u1,u2,

,un},其中每个用户i都携带一个待处理的计算密集型或延迟敏感型任务,由ti={si,ci,ti}表示,si表示任务ti的数据量大小,即输入数据,ci表示任务ti的计算量,也就是指完成任务所需的cpu周期
数,ti表示完成任务ti的最大可接受延迟,实际完成时间不应超过这个值;m个无线基站表示为b={1,2,

,m},每个基站上都搭载着边缘云服务器,相对于移动设备来说这个服务器具有更优的计算能力和存储容量,可以用来处理移动用户的待处理任务;基站还提供用于通信的无线子信道,移动用户可以在需要的时候将任务通过无线子信道卸载到边缘云服务器;网络模型如图2所示;
[0079]
本实施例中,将获取的信息通过数字记录相关的属性值:设定该移动边缘计算场景下移动用户的数量n为50个,无线基站的数量m为5个,每个基站含有5条无线子信道,本场景中所提供无线子信道的总数为25条。用户i的待处理任务用二元组{5,1}表示,前者代表si,单位为mb,后者代表ci,单位为gigacycles。
[0080]
在网络模型构建的基础上,确定卸载时用于数据传输过程的通信模型,用表示从移动用户i到其任务卸载的目的基站ηi之间的传输速度,i=1,2,

,n;ηi∈b,表示为:
[0081][0082]
其中,b表示信道带宽,σ2表示移动设备i的噪声功率,表示第i个移动用户与目的基站之间的信道增益,为通过同一无线信道传输的数据之间的相互干扰功率,pi表示第i个移动用户用于数据传输的上行传输功率;每个移动用户都有最大发射功率,用表示,pi不能超过该移动用户本身最大的发射功率;
[0083]
其中,移动用户和基站之间的信道增益取决于两者之间的物理距离,如所示,β为路径损耗系数;
[0084]
由此可以获得通信过程所花费的时间延迟和能量消耗,如下公式所示,计算移动用户到服务器之间通信的时间延迟和能量消耗
[0085][0086]
由于用户任务的计算结果远远小于卸载时的数据量,故忽略处理结果的传输延迟;
[0087]
本实施例中设定信道带宽为10mhz,移动设备的噪声功率为-106dbm,移动用户和基站之间的物理距离用矩阵表示,其中横轴代表移动用户,纵轴代表基站,如下所示,单位为m;
[0088][0089]
在移动边缘计算mec系统中,移动用户可以根据自身硬件情况(如本地计算能力以及电池储量)和当前网络条件,决定其计算任务ti应该在本地还是在卸载到附近的边缘云服务器中执行。针对计算模型,我们用xi作为任务的卸载决策变量,xi=0代表任务不进行卸载操作,在本地执行,用f
il
表示移动设备i本地的计算能力,那么任务ti在本地的执行时间
延迟表示为:
[0090][0091]
式中,xi表示任务卸载决策变量,xi=0代表任务不进行卸载操作,f
il
表示移动设备i本地的计算能力;ci表示待处理任务ti的计算量;
[0092]
本地执行的能量消耗
[0093][0094]
式中,κ表示移动用户i的硬件架构系数;
[0095]
同理,xi=1代表将计算任务卸载到边缘云上执行。考虑到各个边缘云服务器处理能力的差异性,用来表示边缘云分配给移动用户用来处理任务的计算能力。那么边缘云的执行延迟
[0096][0097]
其中,代表卸载目的边缘云ηi分配给移动设备i的计算资源的比例;表示目的边缘云ηi的计算能力;ηi∈b,b={1,2,

,m};m表示本mec系统中含有的边缘云服务器个数;
[0098]
本实施例设定移动设备本地计算能力f
il
的范围为[0.5,1.0]ghz,设定边缘服务器处理能力的范围为[5,10]ghz。
[0099]
成本模型是指移动用户i将计算任务卸载到边缘云服务器中执行时需要支付给边缘云运营商的报酬,成本模型的表达式ri为:
[0100][0101]
式中,代表卸载目的边缘云ηi的计算资源单位成本。
[0102]
本实例设定边缘云中计算资源的单位成本用一个数组表示,记录为[2,1,1,3,2],其中第一个数字2表示编号为1的边缘云的单位计算成本,以此类推。
[0103]
步骤2:构建移动边缘计算系统中任务卸载和资源分配问题的目标函数;所述目标函数包括最小化移动设备本地总能量消耗、最小化待处理任务总时间延迟和最小化处理任务所花费的总成本;具体构建过程包括:
[0104]
所述最小化移动设备本地总能量消耗,是指最小化所有移动用户在完成待处理任务过程中的总能量消耗e,包括本地执行能耗和传输能耗;
[0105][0106]
式中,
[0107]
所述最小化待处理任务总时间延迟,是指最小化所有移动用户在完成待处理任务
过程中所需的时间延迟t,包括本地执行时延、传输时延和边缘云服务器端执行时延;
[0108][0109]
式中,
[0110]
所述最小化处理任务所花费的总成本,是指最小化所有移动用户在边缘云服务器端执行计算任务时所需要给边缘云提供商支付的总报酬c,表示为:
[0111][0112]
步骤3:根据移动边缘计算系统中任务卸载和资源分配问题的相关属性值生成初始种群,采用nsga
‑ⅱ
算法求解系统模型得到最优解决方案的决策变量;所述相关属性值包括:各个移动用户的位置信息、本地计算能力和剩余电池储量,各个待处理任务的数据量大小,所需计算量和最大可接受延迟,以及各个基站的网络条件、所搭载边缘云服务器的计算能力和执行计算任务的单位成本;这些属性值将作为上述系统模型的基础数据用来求解最优的卸载决策和资源分配方案。
[0113]
根据获得的基础数据生成种群,采用nsga
‑ⅱ
算法求解上述数学模型,直到达到规定的迭代次数后终止,最后确定pareto前沿为最优解集,得到最优解决方案的决策变量,包括:
[0114]
步骤3.1:构建移动边缘计算系统中任务卸载和资源分配问题的混合编码染色体模型,也称为个体,每个个体包括四个部分,如图3所示:确定移动用户i是否卸载的二元变量xi∈{0,1};确定用户要将任务卸载到哪个边缘服务器中的整数变量ηi∈b,若不进行卸载操作,则决策变量ηi值为0;边缘服务器给该移动用户分配的计算能力的比例λi∈[0,1],介于0到1之间;移动用户i进行卸载操作时上行传输功率属于实数变量,若该用户无需卸载,则决策变量pi值为0,意味着不需要传输功率;染色体个体大小取决于系统内移动用户的数量;
[0115]
步骤3.2:根据混合编码染色体模型随机生成初始种群,种群大小设定为gen,并带入步骤2所构建的三个目标函数中,求出目标函数值,并逐个保存到该条染色体的末尾;
[0116]
步骤3.3:对种群进行快速非支配排序,计算出每个个体的被支配个数和该个体支配的解的集合,将支配排序记录在该条染色体末尾,直到种群等级被完全划分,最后按照求出的种群等级对整个种群从小到大排序;
[0117]
步骤3.4:为了保持解集的分布性和多样性,计算个体间的拥挤距离p[f]
distance
,该值可以通过计算当前个体与其相邻的两个个体在每个子目标上的距离差之和来确定;
[0118][0119]
其中,e[f+1]、t[f+1]和c[f+1]分别代表步骤2中三个目标函数e、t、c在第f+1个个体中的函数值,将求解出的拥挤距离记录在染色体末尾;f表示种群中的个体,f={1,2,3,

,f};
[0120]
步骤3.5:采用二元竞标赛选择、交叉和变异操作生成下一代种群,迭代执行步骤
3.3和步骤3.4,选择优秀的个体组成新父代,重复此操作,直到满足给定的迭代次数,优化结束,求解mec系统中任务卸载和资源分配问题完成,迭代计算结束后输出pareto前沿作为最优解集;
[0121]
步骤3.6:设置不同目标函数的权重系数,从最优解集中选择出最优解决方案对应的决策变量;包括:
[0122]
步骤3.6.1:根据不同用户对系统模型中三个目标的不同需求,如某些用户对实时性有更高的要求,就会对时延更加敏感,而有的用户本地剩余电量有限,则对能耗更加敏感,某些用户解决任务的预算有限,会期望花费最少,从最优解集中选出最优方案作为mec系统中任务卸载和资源分配问题的解决方案;
[0123]
根据三个目标间不同需求所设置的权重系数分别计算最优解集中各个解的综合影响因素值φ,并对计算结果进行排序,选出综合结果最小的个体作为联合优化的最优解;
[0124]
φ=δ1e+δ2t+δ3c
[0125]
式中,δ1、δ2、δ3分别表示三个目标函数的权重系数,gen表示种群大小,δ1+δ2+δ3=1;
[0126]
步骤3.6.2:重复步骤3.6.1,计算出最优解集中每个解决方案的综合因素值,将最大综合因素值对应的解决方案作为最优的解决方案;
[0127]
步骤3.6.3:将最优解决方案对应的决策变量作为最优的一组决策变量。
[0128]
为了使mec系统中任务卸载和资源分配问题更加具有普遍适用性,减轻决策过程的求解延迟和计算压力,利用深度监督学习算法训练出一个决策框架来替代详细决策和分配过程。
[0129]
步骤4:构建深度神经网络模型,利用步骤3生成的决策变量对深度神经网络模型进行训练;包括:
[0130]
步骤4.1:利用深度神经网络模型对决策框架进行训练制作样本集;具体表述为:
[0131]
步骤4.1.1:构建深度学习的状态空间、动作空间:
[0132]
状态空间s:将时间间隔t作为一个决策周期,每个决策周期的状态包括移动边缘计算网络中用户信息、边缘服务器信息和当前用户的任务请求,所述每个决策变量表示为:{s=(u,b,t)∈s|u∈u,b∈b,t∈t};
[0133]
动作空间a:动作具体是指移动边缘计算网络中任务卸载决策和资源分配方案,决策周期内对应的动作空间包含移动边缘计算网络中任务卸载决策,任务卸载目的基站,目的基站所提供计算资源分配比例以及传输功率控制,可用如下公式表示:
[0134][0135]
将状态空间作为深度监督学习算法的输入,将动作空间作为深度监督学习算法的输出;
[0136]
步骤4.1.2:随机生成ξ=10000个状态空间向量,根据步骤3.7.3生成的最优决策变量得到相应的动作空间向量;将输入和输出以及相应的最优决策储存在一个矩阵中,作为训练集,这组数据分为训练、验证和测试三组,比率为75%、15%和15%;
[0137]
步骤4.1.3:根据步骤4.1.2中生成的状态变量、动作空间向量以及相应的决策变量作为样本集。
[0138]
步骤4.2:构建深度神经网络模型,如图4所示,所述深度神经网络模型包括一个输入层(intput layer)、一个输出层(output layer)、2个隐藏层(hidden layer 1、hidden layer 2),每个隐藏层各有64个神经元;
[0139]
步骤4.3:将步骤4.1.3生成的样本集作为深度神经网络模型的输入,对模型参数进行训练。
[0140]
步骤5:获取待检测的移动边缘计算系统中任务卸载和资源分配问题的相关属性值,利用训练后的深度神经网络模型预测最优决策变量,根据最优决策变量对移动边缘计算系统中的计算任务和资源进行分配。
[0141]
通过上述步骤获得了一个针对移动边缘计算中任务卸载和资源分配决策的被充分训练后的深度神经网络,在应对实际情况中复杂问题时,可以迅速获得并准确的获得最优的决策方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1