移动边缘计算中面向低时延高可靠业务的资源分配方法
技术领域
本发明属于通信技术领域,涉及移动边缘计算中面向低时延高可靠业务的资源分配方法。
背景技术
随着物联网的蓬勃发展,移动智能终端设备(User Equipment,UE)的数量急剧增加,计算密集型和延迟敏感型的应用和业务不断涌现,例如,增强/虚拟现实(AR/VR)、人脸识别、自动驾驶等。这类新兴的业务不仅需要丰富的计算资源,而且还会产生高额的能耗,然而移动智能终端设备通常在计算能力和电池寿命方面存在一定的局限性,导致设备难以支持这些业务。另一方面,受软件定义网络(Software Defined Network,SDN)和网络功能虚拟化(Network Function Virtualization,NFV)的驱动,移动云计算(Mobile cloudcomputing,MCC)被提出。它允许UE将其计算密集型的任务卸载到资源丰富的远端云服务器执行。然而,云服务器一般距离用户较远,一些时延敏感的应用难以由云计算方案所满足。随着5G时代的到来,低时延高可靠通信(Ultra-reliable and low latencycommunication,URLLC)受到了学术界和工业界的广泛关注。因此,为了解决这一问题,移动边缘计算(Mobile edge computing,MEC)技术应运而生,它可以在靠近移动设备的网络边缘提供云资源,不仅可以满足延迟敏感型应用的QoS需求,而且还在一定程度上降低了计算密集型应用所带来的网络负载和设备终端的能耗。但是,相对于MCC来说,MEC的网络资源往往是有限的,因此如何合理高效的为用户分配网络资源并满足其QoS需求,成为当前亟待解决的问题。
另一方面,无线资源和计算资源的分配对MEC系统任务执行有相当大的影响,无线资源决定了用户任务传输的速率和能耗,计算资源决定了任务处理过程中的时间和计算能耗。对于移动服务提供商(Mobile service provider,MSP)来说,其能耗的急剧上升严重影响了MSP的利润,因此,如何在最大化服务用户数量的同时减小执行计算任务所产生的能耗,促进5G技术的发展,提高用户体验质量。
发明人在研究现有技术的过程中发现其存在如下缺点:
首先,忽略了移动边缘计算的实际环境—多MEC多用户,而集中于单MEC多用户的场景,而且相比于单MEC环境,实际边缘计算的环境各种网络资源在执行任务卸载和资源分配时相互影响,因此,单MEC并没有获得真正的资源分配方案;其次,在对MEC的资源分配研究中,考虑的是通用的业务场景,涉及5G低时延高可靠场景较少,而其场景对延迟和可靠性有较高的要求;最后,未考虑移动服务提供商的收益问题,单集中于能耗与时延的研究。此外,在对无线资源分配时,忽略了带宽资源的优化,而直接将带宽均等分配,降低了网络资源的利用率。因此,在多MEC多用户的环境下,在满足5G低时延高可靠业务的同时,如何合理有效的分配网络资源,从而最大化MSP的收益是非常值得研究的内容。
发明内容
有鉴于此,本发明的目的在于提供一种移动边缘计算中面向低时延高可靠业务的资源分配方法,在保证低时延高可靠业务的同时最大化移动服务运营商的收益,提高资源利用率和用户体验质量。
为达到上述目的,本发明提供如下技术方案:
移动边缘计算中面向低时延高可靠业务的资源分配方法,该方法在多MEC多用户环境下,分别刻画用户任务队列模型和MEC任务队列模型,并以任务队列上溢概率为约束,建立移动服务提供商网络效用最大化的理论模型,对功率资源、带宽资源和计算资源进行联合分配;其次,考虑到优化模型中约束条件包含任务队列溢出概率的极限约束,因此利用Markov不等式对其进行转化,进一步通过Lyapunov优化理论将时间平均的随机优化问题转化并分解成单时隙求解的三个子问题,包括用户的计算资源分配、带宽与功率分配以及MEC的计算资源分配问题;最后,分别对三个子问题求解,其中针对用户带宽与功率分配问题求解时,需要联合考虑两个资源变量,因此为了算法设计的简便性,采用迭代方法和拉格朗日方法相结合的方法求解。
进一步,多MEC多用户环境是考虑了实际的移动边缘计算环境,有多个MEC服务器,多个用户随机分布在网络中,根据当前位置、信道状态或者MEC服务器的负载情况选择将计算任务卸载到服务器中进行处理。
进一步,所述用户任务队列模型为:
Qi(t+1)=max{Qi(t)+Ai(t)-(Dl,i(t)+Do,i(t)),0}
其中,Qi(t+1)为用户i在t+1时刻的队列长度,Qi(t)为用户i在t时刻的队列长度,Ai(t)为用户在t时刻到达的任务量,Dl,i(t)=τfi(t)/Li表示用户i本地处理的任务量,fi(t)是用户i的处理计算任务所分配计算资源(也即CPU周期频率),Li表示执行用户i每比特计算任务所需要的CPU周期;Do,i(t)表示用户i卸载到MEC服务器的计算任务也即用户i在t时隙的传输速率。
进一步,所述MEC用户任务队列模型为:
其中,Xji(t+1)为MEC服务器j中用户i在t+1时刻的队列长度,Xji(t)为MEC服务器j中用户i在t时刻的队列长度,Aji(t)=min{Qi(t)+Ai(t)-Dl,i(t),Do,i(t)}表示t时隙用户i卸载和MEC服务器j的计算任务,fji(t)表示MEC服务器j分配给用户i的计算资源,Li表示执行用户i每比特计算任务所需要的CPU周期。
所述任务队列上溢概率是系统为了刻画业务请求与所分配的资源的匹配程度,给任务队列长度施加概率约束。若系统中处理任务、传输任务速率能力不足时,队列将溢出,导致业务的可靠性降低且根据Little定理队列长度与等待时延成正比,因此为了满足低时延高可靠业务的需求,定义任务队列上溢概率如下:
其中,
和
分别为用户i的队列阈值和MEC服务器j中用户i的队列阈值,ε
i和ε
ji表示队列的溢出容忍阈值(两者的取值都远远小于1)。
进一步,构建移动服务提供商的网络效用函数,具体步骤如下:
第一阶段:对用户i在t时刻系统处理的任务总量在时间取平均,从而得到Di即系统时间平均吞吐量;其次对用户i在时刻t用户本地处理任务所消耗的功率在时间上取平均,得到pi,comp即为用户时间平均计算功耗,对用户i的在时刻t的传输功率在时间上取平均得到用户卸载任务的时间平均传输功耗pi,tran;最后,用同样的方法定义MEC时间平均功耗pj,comp。
第二阶段:利用第一阶段所得到的四个值,对系统效用函数进行定义
所述T表示系统网络运行时间;
所述M表示用户的集合;
所述S表示MEC服务器的集合;
所述αi,β,γ均为非负系数,其中,αi表示用户i计算任务的单位收益,β和γ分别为用户和MEC所消耗功率的单位成本。
第三阶段:对构建网络效用过程中,对资源分配变量、资源总量、MEC服务器CPU核的限制以及队列上溢概率等,作为网络效用函数的约束条件,最终得到移动服务提供商的效用函数。
进一步,利用马尔可夫不等式将队列上溢概率进行转化,关联到数学期望,从而得到时间平均的约束条件。然而,在转化后优化问题中包含连续时隙上的平均约束和单时隙上的瞬时约束,导致求解有一定难度,因此,采用李雅普诺夫优化理论对优化问题进行转化。
进一步,由于马尔可夫转化后的约束条件是一个时间平均约束,因此为了满足该条件,分别对用户和MEC引入虚拟队列,并得到两者虚拟队列的更新方程。
进一步,定义李雅普诺夫函数和单时隙李雅普诺夫偏移,通过单时隙李雅普诺夫偏移与系统效用函数的加权差,得到李雅普诺夫偏移加罚:
所述ΔL(Θ(t))表示单时隙李雅普诺夫偏移;
所述Θ(t)表示时隙t系统的队列状态向量即Θ(t)=[Yi(t);Zji(t)],其中Yi(t)表示为满足转化后期望的约束条件,引入用户i的虚拟队列,Zji(t)表示为满足转化后期望的约束条件,引入MEC服务器j中用户i的虚拟队列;
所述Di表示系统统时间平均吞吐量;
所述pi,comp表示用户时间平均计算功耗;
所述pi,tran表示用户i的在时刻t的传输功率在时间上取平均得到用户卸载任务的时间平均传输功耗;
所述pj,comp MEC时间平均功耗;
所述αi表示用户i计算任务的单位收益,β和γ分别表示用户和MEC所消耗功率的单位成本。
所述V是权衡偏移与罚函数的控制参数。
进一步,经过推导证明得到偏移与加权罚函数加权差的上界,因此,优化问题转化最小化李雅普诺夫偏移加罚上界,其中利用分层解耦理论将其分解成三个子问题:
1)用户的本地计算资源分配问题:
所述fi表示用户计算资源分配变量;
所述κ表示与芯片结构相关的有效系数;
所述Yi(t)表示用户i的虚拟队列;
所述τ表示时隙的长度。
2)用户功率与带宽分配优化问题:
所述p和ξ分别表示用户功率资源分配变量和用户带宽资源分配变量;
所述pij(t)表示用户i到MEC服务器j传输功率;
所述Xji(t)为MEC服务器j中用户i在t时刻的队列长度;
所述Zji(t)为MEC服务器j中用户i的虚拟队列。
3)MEC计算资源分配问题:
所述fji(t)表示MEC服务器j分配给用户i的计算资源;
进一步,针对所述用户的本地计算资源分配问题进行求解,由于问题P1是一个凸优化问题,而且在目标函数和约束条件中可对每个用户的计算资源进行分解,因此可得到本地计算资源的最优解。
进一步,针对所述用户功率与带宽分配问题P2,根据每一时隙队列状态,利用迭代方式进行求解,即给定带宽分配方案,对功率进行求解;基于功率资源分配方案,对带宽进行求解。之后更新带宽分配方案,继续对功率求解,重复此过程,直到本次问题的函数值与上次迭代小于终止条件,则获得用户功率与带宽的分配方案。
进一步,针对所述问题MEC计算资源分配问题求解,由于问题P3是一个非凸优化问题,因此,设计MEC计算资源分配算法进行求解。
进一步,根据资源的分配方案,更新下一时隙的队列值。
进一步,判断当前时隙是否在系统设置的运行时间,若在运行时间内,则执行下一时隙的资源分配方案,否则,则结束系统的资源分配。从而,获得在所有时隙上的用户和MEC服务器的资源分配方案。
本发明的有益效果在于:本发明在多MEC多用户环境下对低时延高可靠业务进行任务卸载与资源调度时,考虑了任务队列的上溢概率、系统吞吐量以及功耗,对计算资源、功率资源和带宽资源联合分配,不仅满足了低时延高可靠的需求,而且还提高了移动服务提供商的总收益,提高了用户的体验质量和资源利用率。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为可应用本发明场景示意图;
图2为本发明移动边缘计算中资源分配示意图;
图3为本发明中子问题P2中用户带宽分配流程图;
图4为本发明中子问题P2用户功率与带宽分配流程图;
图5为本发明中全局算法流程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
图1是可应用本发明实施的场景示意图。整个系统由M个用户、S个基站和多个MEC服务器组成。假设每个基站配备一个MEC服务器,其中每个MEC服务器有多个CPU核,可以并行处理用户的计算任务,所有用户在网络中随机分布且不断移动,因此,用户根据当前所处的位置、信道状态或者MEC服务器负载状态将任务卸载到相应的服务器上。在这里假定用户大多数计算任务可在一个时隙内处理完成,而部分任务由于数据量较大,则将其划分成子任务进行处理。对于每个计算任务而言,都可以选择在本地或者卸载到MEC进行处理。特别地,考虑了两级队列模型对计算任务的状态进行刻画,即用户任务队列模型和MEC服务器任务队列模型。
图2是移动边缘计算中资源分配示意图。每个用户都拥有一个缓存队列用于存储新到达的业务,用户通过所分配的本地计算资源和无线资源,对计算任务进行处理,即本地处理和卸载到MEC服务器。根据用户任务队列和MEC任务队列定义队列上溢概率,根据本地处理和MEC处理产生的功耗,建立MSP网络效用函数,通过马尔可夫不等式和李雅普诺夫优化理论将问题转化为三个子问题即用户计算资源分配问题、用户功率和带宽资源分配问题和MEC计算资源分配问题。最后根据所获得的资源分配方案,更新队列信息。
图3是本发明中子问题P2中用户带宽分配流程图。步骤如下:
步骤301:给定功率分配方案,求解带宽资源的调度策略;
步骤302:由于子问题P2是一个凸优化问题,因此联合目标函数和约束条件,获得拉格朗日表达式;
步骤303:初始化最大化迭代次数K;
步骤304:判断当前的迭代次数是否小于K,若迭代次数小于K,则进入下一步继续执行,否则,获得当前最终的带宽分配方案;
步骤305:执行二分搜索法,获得拉格朗日乘子;
步骤306:通过得到的拉格朗日乘子,代入拉格朗日表达式,得到带宽分配方案;
步骤307:根据当前的用户所分配的带宽总和是否大于实际的总带宽,从而更新拉格朗日乘子;
步骤308:将迭代次数加1,转到步骤304判断迭代次数是否小于K,若迭代次数小于K,则重复步骤305到步骤308,直到迭代次数大于或等于K,进入下一步;
步骤309:获得本次迭代的带宽分配方案。
图4是本发明中子问题P2用户功率与带宽分配流程图。步骤如下:
步骤401:设置迭代次数M;
步骤402:判断迭代次数是否小于M,若次数小于M,则进入步骤403,否则转到步骤407获得用户功率与带宽分配方案;
步骤403:在求解用户功率分配方案时,给定带宽分配方案;
步骤404:求解,获得功率分配方案;
步骤405:基于所获得的的功率分配方案,执行带宽分配算法;
步骤406:将迭代次数加1,并转入步骤402判断当前的迭代次数是否小于M,若小于M则重复执行步骤403到步骤406,否则转入下一步骤;
步骤407:获得当前时隙的用户功率与带宽的分配方案。
图5是本发明中全局算法流程图,具体步骤如下:
步骤501:初始化用户队列值、MEC队列值以及虚拟队列值;初始化控制参数V、上溢概率以及最大迭代次数K、M;
步骤502:设置网络运行时间T;
步骤503:判断当前运行的时隙是否小于T,若小于T则进入步骤504,否则结束;
步骤504:求解子问题P1用户的计算资源调度方案;
步骤505:求解子问题P2用户的功率与带宽资源的调度方案;
步骤506:求解子问题P3移动边缘计算服务器的计算资源调度方案;
步骤507:当将三个子问题求解完成,则得到面向低时延高可靠业务的动态资源分配问方案;
步骤508:根据所分配的资源,更新队列方程;
步骤509:时隙加1,并转入步骤503判断当前时隙是否小于网络运行时间T,若小于则重读步骤504到步骤509,否则结束整个算法。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。