本发明属于物联网、人工智能领域,特别是指一种移动边缘计算中的多用户在进行任务卸载时按比例卸载的策略。
背景技术:
互联网和物联网的飞速发展促进了各种新型业务的不断涌现,使得移动通信流量在过去的几年间经历了爆炸式增长,智能手机或笔记本电脑等移动用户设备的发展与新移动应用的发展齐头并进,与此同时,计算密集型和延迟敏感的应用,如交互式游戏、图像/视频处理、增强/虚拟现实和人脸识别,正在移动设备上变得越来越流行。然而,在用户设备上运行计算要求高的应用程序受到用户设备有限的电池容量和能耗的限制,延长用户设备电池寿命的合适解决方案是将需要大量处理的应用程序卸载到传统的集中式云上。然而,这引入了显著的执行延迟,包括将卸载的应用交付到云中,以及在云中计算的返回时间。这种延迟是不方便的,并且使得卸载不适合实时应用。为了解决延迟问题,引入了一个新的概念,称为移动边缘计算(mobileedgecomputing、mec)。mec将计算和存储资源带到移动网络的边缘,使用户设备能够运行高要求的应用,同时满足严格的延迟要求。
mec通过部署高性能边缘服务器来增强移动网络边缘的计算能力。虽然计算卸载已经得到了广泛的研究,但仍然没有统一的方法来解决这个问题,这主要是由于边缘设备的异构性和网络的时变性,计算卸载需要考虑到不同的服务器终端与移动设备的网络连接性能、卸载任务的能耗等,只有考虑这些因素才能实现最优卸载,提高应用服务质量与用户体验。现有的计算卸载研究只考虑了成本之间的权衡和性能来确定应用程序应该在本地执行还是卸载到边缘服务器。还有很多卸载研究要么单方面考虑时延问题,要么单方面考虑能耗。计算卸载的优化通常应用相关算法,有很多卸载策略是基于已有的算法进行改进优化的,这类方法也可以确保策略的可行性。
为了充分利用移动设备和边缘服务器的资源,而不是只选择本地或远程执行应用程序,需要考虑特定百分比的部分卸载以及传输过程中的功率选择。
技术实现要素:
针对用户执行大型的应用程序,应用程序可以化为不同的比例进行卸载,即可以选择在本地卸载或者在mec服务器进行卸载,为了实现这种方式,本发明提出了一种面向多用户多mec服务器场景的权衡时延与能耗的部分卸载管理策略,以解决现有技术所存在的终端设备电池容量较小、计算能力有限,而云计算时延较高的问题。
为解决上述技术问题,本发明实施提供一种移动边缘计算网络中的计算卸载方法,研究了在有限资源(即有限计算能力)下,针对多用户设备和多移动边缘计算服务器的计算卸载策略,旨在开发一种卸载策略,以确定用户的卸载比例和传输功率,同时最小化用户应用程序的执行开销(即能耗和计算时间的加权总和),具体来说不仅要确定应用程序是否需要卸载,还需要确定卸载的比例,以及用户与mec服务器传输数据的传输功率。为了实现这一目标,首先,确定移动边缘计算的网络架构,然后根据网络架构进行建模,模型包括系统模型、应用程序模型、通信模型、计算模型,然后根据建立好的模型求解目标函数,将此问题表示为一个混合非线性规划问题,这是一个np-hard问题。利用遗传算法和粒子群算法的优点,设计了一种次优算法(gpso),即基于粒子群算法和遗传算法的分层计算算法来解决该问题。
为了实现以上目的,本发明采用以下技术方案:
一种基于移动边缘计算的计算卸载方法,包括步骤:
s1.建立移动边缘计算系统的网络架构。
所述步骤s1的移动边缘计算系统的网络架构如图1所示。在该移动边缘计算网络架构中,最上端是云服务器通过交换机与基站进行通信,在整个网络中有多个基站,且每个基站附近都部署一个mec服务器,每个基站所覆盖的区域内都存在多个用户进行计算,在本发明中考虑到云时延较高的问题,当用户选择卸载的时候则只会将对应比例的用户程序卸载到该区域内的mec服务器上进行计算。
s2.根据网络架构进行建模,包括系统模型,应用程序模型,通信模型以及计算模型;
整个移动边缘计算系统网络架构,由若干个小区域组成,整体卸载工作包括两部分,首先考虑一个小区域中的计算卸载情况,然后对各个区域进行求和。
假设先考虑区域1,即考虑多个用户与一个mec服务器的场景。
系统模型如下:在该区域中,一、总共有u个用户,即{1,2,…,u},有一个mec服务器,二、无线链路为正交信道,链路不受其他信道的干扰。
应用程序模型如下:用户i产生的任务ti用
通信模型如下:对于每一个用户i,其传输速率ri为
其中,b表示的是链路带宽,pi表示的是用户i的传输功率,h表示的是用户i与mec服务器通信道路上的信道增益,d表示的是用户与mec服务器传输道路的距离,θ表示的是路径损耗指数,n代表的是加性高斯白噪声;
计算模型主要考虑用户在本地的计算模型与卸载在mec服务器端的计算模型。用户计算模型主要考虑时延与能耗两部分。
用户i在本地的计算时延
其中fi为用户i的cpu频率。用户i在本地的计算所消耗的能耗
其中ki为用户i芯片结构的系数因子。
用户卸载到mec服务器中时,总时延由计算时延与传输时延以及结果回传的时延组成,因此用户i的总的卸载时延
其中
用户的计算卸载能耗主要产生于传输过程中,因此计算卸载能耗
s3.建立面向时延和能耗的联合优化模型;
该模型基于卸载比例决策与功率,用户i进行任务处理时所消耗的总代价ci为:
其中,β指的是时延加权因子,υ指的是能耗的加权因子。两者之和为1。
因此,在该区域内,产生的总代价为:
假设该移动边缘计算网络架构总共由m个小区域组成,则在整个网络架构中,产生的总代价ctotal为:
进一步的,所述步骤s3中的联合优化模型为:
s4.采用gpso优化算法来求解原模型中的优化问题。
所述步骤s4的优化算法主要是根据生物界中的种群行为衍生出来的启发式算法,通过一定的优化规则更新种群并搜索最优解。在算法中,主要是通过不断更新种群进行最优解的求解。
执行过程具体包括:
步骤一:设置总的迭代次数为t,收敛标准为ε,令迭代次数t=1,初始化s组用户,每一组用户的用户个数为u,用户维数为2,每一组用户表示为向量组x′(t)={x′1(t),x′2(t),…,x′u(t)},s=1,2,…s,其中x′i(t)=[x′i,1(t),x′i,2(t)]表示第s组第i个用户选择的策略,即选择的卸载比例以及功率,i=1,2,…u,x′i,1(t)表示第s组第i个用户的卸载比例,x′i,2(t)表示第s组第i个用户的功率。设置用户选择策略的取值范围,卸载比例的值为0-1之间,功率的值处于0与设置的最大功率之间。
步骤二:设置迭代次数t1。令迭代次数t1=1。
步骤三:计算s组用户中每组用户的适应度值。适应度函数即为上面所述的公式7,即在区域内用户产生的总代价。保留s组中最优的用户适应度值,所述的最优的用户选择策略是指s组中适应度值最小的一组用户对应的值。
步骤四:将上一步保留的最优选择策略的一组用户复制s/2份,组成一个“种马种群”。
步骤五:从这s组用户中去除步骤三所求出来的最优个体,并在剩下的个体中运用轮盘赌的方法选择s/2个个体,并与步骤四中的种马种群共同组成新的s组用户。
步骤六:开始进行进化操作。设置交叉算子pc,变异算子pm,首先采用部分匹配交叉算法对步骤五得到的新的s组用户进行交叉重组操作,再将得到的结果进行变异操作,得到新的s组用户。
步骤七:令t1=t1+1,判断是否满足t1>t1,如果不满足,将新一代的s组用户返回步骤三进行迭代;如果满足,则进入下一步。
步骤八:设置迭代次数t2,惯性权重ω,加速度常数c1,c2。令迭代次数t2=1。初始化s组用户,此时s组用户的值则为步骤七所得到的新一代的s组用户。并初始化每一组用户的更新速度v′(t)={v′1(t),v′2(t)…v′u(t)},其中vi′(t)=[v′i,1(t),v′i,2(t)]表示每一组用户中每个用户卸载比例决策与功率选择的更新速度。
步骤十:计算这s组用户每组用户的适应度值,同理,每一组用户的适应度函数为上面所述的公式7,即在区域内用户产生的总代价。并初始化每组用户的最佳适应度值pbest,为求出来的适应度值,更新最佳适应值gbest,gbest为所有的s组用户中的最小适应度值。
步骤十一:更新速度、s组用户的策略选择值。更新公式如下所示。
v′i(t+1)=ω*v′i(t)+c1*random(0,1)*(pbesti-x′(t))+c2*random(0,1)*gbesti-x′(t))(10)
x′(t+1)=x′(t)+v′i(t+1)(11)
步骤十二:计算更新后的s组用户的适应度值,对于每一组用户,如果它的新的适应度值比历史的最小的适应度值还要小,则更新该组用户的最佳适应度值pbest。
步骤十三:根据每一组用户的最佳适应度值更新历史中出现过的所有用户中的最佳适应值gbest,即最小的适应度值,并记录其对应的那一组用户的决策值。
步骤十四:t2=t2+1,判断是否满足t2>t2,如果不满足,将更新后的s组用户返回步骤十一进行迭代;如果满足,则进入下一步。
步骤十五:t=t+1,判断是否满足t>t,是否达到收敛标准,如果不满足,将更新后的s组用户返回步骤二进行迭代;如果满足,结束。输出最终的所有用户的最佳适应值gbest,以及其对应的那一组用户的决策值,得到最优解。
有益效果
与现有技术相比,本发明具有以下优点:
1.本发明为了充分利用移动终端设备和边缘服务器的资源,通过考虑用户按比例卸载,避免用户只选择本地或远程执行应用程序,从而提高用户性能。
2.本发明考虑了mec服务器计算资源的有限性以及不同用户任务之间的差异性,通过模型中排队时延的设定,以最小化时延与能耗为目标,建立基于任务卸载、功率的联合优化模型。
3.在本发明中,由于优化问题为多变量强耦合的非凸非线性规划问题,所以采取智能的启发式算法进行求解,提出了一种基于遗传算法与粒子群算法相结合的分层优化算法gpso,该算法能快速收敛,并得到较优的结果。
附图说明
为使本发明的目的、方案更加通俗易懂,下面将结合附图对本发明进一步说明。
图1为移动边缘计算网络架构示意图;
图2为计算卸载方法步骤;
图3为提供的算法与传统的算法对比图;
图4为提供的算法的收敛性示意图。
具体实施方式
为使本发明的目的,技术方案和优点更加清楚明白,下文中将结合附图和实例对本发明的实施例进行详细说明。
本发明所涉及的是一种基于移动边缘计算的按比例计算卸载的方法。在移动边缘计算架构中,mec服务器被部署在基站的边缘。用户终端设备可以将部分计算任务卸载到边缘服务器执行,用户需要提供计算所需要的各项参数,选择卸载到边缘服务器的部分任务的计算过程则由边缘服务器执行,得到结果之后再由边缘服务器反馈给用户。
具体步骤如下:
步骤一:根据网络架构图,首先建立系统模型,通信模型,并设置初始化参数,获得各个设备的信息;
本实施例中,在基站侧部署有一个边缘服务器,为用户提供计算服务。在基站的覆盖范围内有u个用户,用户集合表示为{1,2,…,u},假设每一个用户都有一个任务需要执行计算,每个用户的任务用ti表示,即
步骤二:创建计算模型,包括时延和能耗两部分;
时延包括本地时延与在mec端卸载产生的时延,同理,能耗包括本地计算产生的能耗与在mec端卸载产生的能耗。
在本实施例中,设在本地卸载的任务比例为a,则本地时延为
用户i在本地产生的能耗为
步骤三:建立面向时延和能耗的联合优化模型;
在本实施例中,需要优化的是整个网络中的时延与能耗加权值达到最小,即
步骤四:采用gpso优化算法来求解原模型中的优化问题。
在本实施例中,因考虑的是卸载比例决策与功率选择,所以设置种群的值时主要设置这两个变量,然后带入优化算法中进行迭代求值,直到结果收敛求到最优解为止。具体的步骤参照上述的详细说明。
通过仿真图可以看出,相较于遗传算法与粒子群算法产生的卸载决策,本发明能得到更优的结果,且随着用户数量的不断增加,效果越明显。其次也能达到快速收敛。