一种边缘计算系统下的合作计算方法
技术领域
本发明涉及边缘计算,尤其是物联网下的一种边缘计算系统下的合作计算方法。
背景技术
在未来无线通信系统中,智能设备涌入到无线网络中的数量将会成指数倍增长。无论是智慧城市、智能家居、智能物流、远程医疗、工业4.0、智能电网、智能传输都将迎来万物互联的时代。随着物联网中各种低时延需求的应用场景大量出现,例如无人驾驶,虚拟现实,增强现实等,物联网系统出现了新的网络架构--基于边缘计算的物联网系统。该系统是在云计算服务器和终端设备网络层引入了边缘计算服务器,实现在就近数据源头,进行数据处理。在该系统下,边缘计算提供了实时数据处理,实时决策等一系列的低时延计算模式,解决了已有云计算物联网架构的缺点。然而该模式下,仍然存在着一些潜在的问题,比如,根据摩尔定律,物联网终端设备的计算能力越来越强,仅使用边缘计算服务器执行计算任务,浪费了终端设备的部分计算能力,会造成资源浪费,能源消耗,成本增加。
发明内容
本发明所要解决的技术问题是,利用边缘计算系统的特点,提供一种基于边缘计算系统下的计算形态,通过将计算资源在边缘侧服务器与有一定计算能力的终端设备之间进行合理分配从而实现边缘计算系统下的最优高速合作计算。
本发明为解决上述技术问题所采用的技术方案是,随着物联网终端设备的计算能力逐年提升,终端设备具有一定的计算能力,本发明使用终端设备对边缘计算服务器做一定的补充以实现快速计算。进一步为实现边缘计算系统下的最优高速合作计算,本发明提出根据算法复杂度,对算法的任务进行合理的调度分配,充分体现出边缘计算系统下的低时延。
一种边缘计算系统下的合作计算方法,包括以下步骤:
1)根据计算复杂度的等级将系统所需执行的总计算任务量进行分解:
W为系统需要执行的总计算任务量,n为总计算任务的计算复杂度等级总数,计算复杂度等级从1到n依次提高;i为计算复杂度等级序号,i=1,2,…,n,w i 为第i级计算复杂度的单次计算任务量,K i 代表第i级计算复杂度的单次计算任务量的执行次数,K i w i 为第i级计算复杂度的计算任务量;
2)产生边缘计算服务器与合作的终端设备;记录边缘计算服务器与终端设备的参量属性,参量属性包括到边缘计算服务器的物理距离、本地计算速度、本地计算容量以及传输带宽;
3)将边缘计算服务器与终端设备的参量属性以及分解后的各复杂度等级下的任务量输入矩阵形式的策略优化模型中得到最优合作计算任务量分配方案X,所述矩阵形式的策略优化模型为:
T t 表示合作计算总时间,表示求目标函数T t 最小时X的值,向量w=(w 1,w 2,…,w n ) T 表示总计算任务由n种计算复杂度下的单次计算任务量w i 构成,i=1,2,…,n;j表示终端
设备序号,j=1,2,…,m;向量c=(c 0,c 1,c 2,…,c m ) T 表示边缘计算服务器的计算容量c 0与m个
终端设备的计算容量c 1,c 2,…,c m ,m为合作的终端设备总数量;向量d=(d 0=0,d 1,d 2,…,d m ) T
表示边缘计算服务器以及m个终端设备离边缘计算服务器的物理距离;长度为m+1的向量V=
(1/s,1/s,1/s,…,1/s) T 表示边缘计算服务器和终端设备的数据传播速度,s为光的传播速
度;I=(1,1,1,…,1) T 表示长度为m+1的单位向量;向量=(K 1,K 2,…,K n ) T 表示n种不同计算
复杂度的计算任务量分别所需的执行次数;向量B=(0,1/B 1,1/B 2,…,1/B j ,…,1/B m ) T ,B j 为
边缘计算服务器与第j个终端设备的传输带宽,向量=(1/v 0,1/v 1,1/v 2,…,1/v j ,…,1/v m ) T 其
中,v 0 表示边缘计算服务器的计算速度,v j 表示第j个终端设备的计算速度;
求解得到的最优合作计算任务量分配方案为:
X中x i0表示边缘计算服务器分配到的第i级计算复杂度的单次计算任务量的执行次数,赋值k i0=x i0;x ij 表示第j个终端设备分配到的第i级计算复杂度的单次计算任务量的执行次数,赋值k ij =x ij ;
4)根据最优合作计算任务量分配方案产生边缘计算服务器的计算任务量W Edge 与第j个终端设备的计算任务量W jdevices 以完成边缘计算服务器和终端设备的合作计算;
,。
本发明的有益效果是:
(1)在边缘计算服务器和各终端协同计算,实现资源的最优调度,不浪费各种可利用的计算资源,节约了能源和计算成本。
(2)最大化满足了物联网场景下,对低时延业务应用的计算需求。
(3)适用于基于边缘计算的物联网系统,充分利用了该系统的网络拓扑结构,合理的分配了计算资源。
附图说明
图1为边缘计算服务器和终端设备的拓扑图。
具体实施方式
下面结合附图和一种边缘计算系统下的合作计算方法进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下描述。
如图1所示,一个边缘计算服务器E 0和m个终端设备分别为l 1,l 2,…,l m ,他们与边缘计算服务器的物理距离分别为d 1,d 2,…,d m ,传输带宽为B 1,B 2,…,B m ,其计算容量为c 1,c 2,…,c m ,计算速度为v 1,v 2,…,v m 。第m个终端设备的属性可表示为{l m :(d m ,B m ,c m ,v m )},边缘计算服务器E 0的属性为{E 0 :(d 0 =0,B 0 =0,c 0 ,v 0 )},这里采用j作为终端设备序号变量,j=1,2,…,m。
合作计算方法的实现具体包括以下步骤:
S1.评估总计算任务不同复杂度的计算量,将算法根据复杂度的等级进行分解;系统需要执行的总计算任务W,按照执行不同计算复杂度的计算任务量进行分解为:
按计算复杂度分为n个等级,第1级的计算复杂度为o(1),第2级计算复杂度为o(log2n),第n级计算杂度为o(n!)。K 1 w 1为执行复杂度为o(1)的计算任务量,w 1为执行第1种计算复杂度的单次任务量,K 1代表对应单次任务量的执行次数;K 2 w 2为执行复杂度为o(log2n)的计算任务量,w 2 为执行第2种计算复杂度的单次任务量,K 2代表对应单次任务量的执行次数,K n w n 为执行复杂度为o(n!)的计算任务量,w n 为执行第n种计算复杂度的单次任务量,K n 代表对应单次任务量的执行次数。在计算处理领域已有成熟的计算复杂度计算与划分的方法,本发明不在此赘述,在实现时,按照计算复杂度从低到高依次划分即可。这里采用i作为计算复杂度等级序号变量,i=1,2,…,n。
S2.产生边缘计算服务器与各种终端的相应的参量属性,例如物理距离,传输带宽,计算容量,计算速度。
(d,B,c,v)→(距离,传输带宽,计算容量,计算速度)
边缘计算服务器:
E 0 =(d 0 =0,B 0 =0,c 0 ,v 0 )
第j个终端设备:
l j =(d j,Bj,cj,vj )
S3.建立边缘计算系统下的合作计算总时间模型;
边缘计算系统下的合作计算总时间T t 主要包括四个部分,边缘计算服务器处理任务所需时间TE、各类终端处理任务所需时间TD、边缘计算服务器分发任务的发送时间TB以及边缘服务器将任务分别传输给各终端并将结果回传的时间TT。
其中边缘服务器执行n种复杂度的计算任务量所需的时间TE:
v 0为边缘计算服务器计算速度,k i0为边缘计算服务器执行第i种计算复杂度的单次任务量为w i 的次数。
m个终端设备执行n种复杂度的计算任务量所需的时间TD:
v j 为第j个终端的计算速度,k ij 为第j个终端执行第i种计算复杂度任务量为w i 的次数。
边缘计算服务器对m个终端在不同带宽下分发任务的发送时间TB:
B j 为第j个终端与边缘计算服务器的传输带宽。
边缘计算服务器将任务分别传输给各终端并将结果回传的时间TT:
其中s为光速,d j 为第j个终端设备与边缘计算服务器的物理距离。
为实现合作计算总时间T t 最小化,根据约束条件建立优化目标函数:
约束条件:
(1)总计算任务W中各种计算复杂度任务的总执行次数约束:
其中,w n 为执行第n种计算复杂度的任务量,K n 代表执行的次数;
K 1代表边缘计算服务器和m个终端设备总共需要执行第1种计算复杂度任务量的执行次数;
K 2代表边缘计算服务器和m个终端设备总共需要执行第2种计算复杂度任务量的执行次数;
…
K n 代表边缘计算服务器和m个终端设备总共需要执行第n种计算复杂度任务量的执行次数;
(2)各终端设备和边缘计算服务器的计算容量约束:
其中,c 0为边缘计算服务器的计算容量,k i0为边缘计算服务器执行第i种计算复杂度任务量为w i的次数,k i 为第1个终端设备执行第i种计算复杂度任务量为w i的次数,k m 为第m个终端设备执行第i种计算复杂度任务量为w i的次数,c m 为第m个终端设备的计算容量。
(3)各终端设备和边缘计算服务器的计算速度约束:
其中,v 0为边缘计算服务器的计算速度,v j 为第j个终端设备的计算速度。
(4)各终端设备和边缘计算服务器之间的传输通信带宽、物理距离约束:
其中,B j 为第j个终端设备与边缘计算服务器的传输带宽,B 0是为了构建等价矩阵运算模型,边缘计算服务器自身传输带宽的记号其值恒为零,d j 为第j个终端设备与边缘计算服务器的物理距离,d 0是为了构建等价矩阵运算模型,边缘计算服务器自身与自身的物理距离记号其值恒为零。
最终的策略优化模型为:
S4. 将最终策略优化模型等价为矩阵形式:
T t 表示合作计算总时间,表示求目标函数T t 最小时X的值,向量w=(w 1,w 2,…,w n ) T 表示总计算任务由n种计算复杂度下的单次计算任务量w i 构成,i=1,2,…,n;j表
示终端设备序号,j=1,2,…,m;向量c=(c 0,c 1,c 2,…,c m ) T 表示边缘计算服务器的计算容量c 0
与m个终端设备的计算容量c 1,c 2,…,c m ,m为合作的终端设备总数量;向量d=(d 0=0,d 1,d 2,…,d m ) T 表示边缘计算服务器以及m个终端设备离边缘计算服务器的物理距离;长度为m+
1的向量V=(1/s,1/s,1/s,…,1/s) T 表示边缘计算服务器和终端设备的数据传播速度,s为
光的传播速度; I=(1,1,1,…,1) T 表示长度为m+1的单位向量; 向量=(K 1, K 2,…, K n ) T
表示n种不同计算复杂度的计算任务量分别所需的执行次数;向量B=(0,1/B 1,1/B 2,…,1/B j ,…,1/B m ) T ,B j 为边缘计算服务器与第j个终端设备的传输带宽,向量 =(1/v 0,1/v 1,1/v 2,…,1/v j ,…,1/v m ) T 其中,v 0 表示边缘计算服务器的计算速度,v j 表示第j个终端设备的计
算速度;
X表示边缘计算系统下的最优合作计算方法的解,由X可构成边缘计算服务器和m个终端设备执行的计算任务量。
在一个计算复杂度等级下的单次任务量确定时,只需要确定执行次数即可得到该计算复杂度的计算任务量,X中各元素实际为某一计算复杂度的单次计算任务量的执行次数。
S51. 求解目标函数最优解:
X中x i0表示边缘计算服务器分配到的第i级计算复杂度的单次计算任务量的执行次数,赋值x i0= x i0;x ij 表示第j个终端设备分配到的第i级计算复杂度的单次计算任务量的执行次数,赋值k ij =x ij ;i=1,2,…,n ,j=1,2,…,m;
S52. 根据最优解,产生边缘计算服务器和m个终端分别执行的计算任务量:
边缘计算服务器计算任务量W Edge :
第j个终端设备计算任务量W jdevices :
S6. 按照最优解分配计算任务,实现边缘计算服务器和多终端的合作计算,实现最低时延和高速计算。
实施例
一个边缘服务器{E 0 :(d 0 =0,B 0 =0,c 0 ,v 0 )} ,三个本地终端设备,{l 1:(d 1,B 1,c 1,v 1)}、{l 2:(d 2,B 2,c 2,v 2)}、{l 3:(d 3,B 3,c 3,v 3)},需执行100层的神经网络算法,求边缘计算服务器和三个终端设备的合作计算方式,以实现快速计算。边缘计算服务器与终端设备的连接为无线连接或有线连接。3个终端设备的计算能力和计算容量均小于边缘计算服务器的计算能力和计算容量。系统执行总计算任务包括机器学习、数据分析和深度学习算法。
S1. 评估总计算任务不同复杂度的计算量,将算法根据复杂度的等级进行分解;
神经网络算法计算任务总量:
其中K 1=100,w 1为执行每层神经网络的计算任务量,n=1,只有一种计算复杂度的计算任务。
S2. 边缘计算服务器根据网络拓扑结构指定合作的终端设备,记录边缘计算服务器与各终端相应的参量属性,例如物理距离,计算速度,计算容量,传输带宽。
(d,B,c,v)→(距离,传输带宽,计算容量,计算速度)
边缘计算服务器:
E 0 =(d 0 =0, B 0 =0, c 0 , v 0 )
第一个终端设备:
l 1=(d 1,B 1, c 1, v 1)
第二个终端设备:
l 2=(d 2,B 2, c 2, v 2)
第三个终端设备:
l 3=(d 3,B 3, c 3, v 3)
有三个终端设备m=3。
S3.建立边缘计算系统下的合作计算总时间模型;
S4. 将最终策略优化模型等价为矩阵形式:
其中向量w=w 1表示总计算任务由1种不同复杂度的计算任务量;c=(c 0,c 1,c 2,c 3) T
表示边缘计算服务器与3个终端设备的计算容量;d=(d 0=0,d 1,d 2,d 3) T 表示3个终端设备离边
缘计算服务器的物理距离,其中,d 0是为了构建等价矩阵运算模型,边缘计算服务器自身与
自身的物理距离记号其值恒为零;V=(1/s,1/s,1/s,1/s) T ,其中s为光的传播速度;I=(1,1,
1,1) T 表示单位向量; = K 1表示总任务量仅由1种复杂度的计算任务量所需执行的次数;
矩阵 B=(0,1/B 1,1/B 2,1/B 3) T ,其中B 1, B 2, B 3为边缘计算服务器与第1,2,3个终端设
备的传输带宽, =(1/v 0,1/v 1,1/v 2,1/v 3) T 表示边缘计算服务器与3个终端设备的计算速
度;
S51. 求解目标函数最优解:
S52. 根据最优解,产生边缘服务器和M个终端分别执行的计算任务量
边缘计算服务器计算任务量W Edge :
第一个终端设备计算任务量W 1devices :
第二个终端设备计算任务量W 2devices :
第三个终端设备计算任务量W 3devices :
S6. 按照最优解分配计算任务,实现边缘计算服务器和本地多终端的合作计算,实现最低时延和高速计算。