一种边缘计算的选择性卸载方法及系统与流程

文档序号:29075407发布日期:2022-03-01 22:36阅读:82来源:国知局
一种边缘计算的选择性卸载方法及系统与流程

1.本技术请求保护一种边缘计算技术,尤其涉及一种边缘计算的选择性卸载方法。本技术还涉及种边缘计算的选择性卸载系统。


背景技术:

2.随着科技的发展,智能移动设备的应用越发普及。然而,各种用户端由于自身资源及计算能力的局限性,在处理计算密集型与时延敏感的应用时常面临着计算能力不足的情况。边缘计算(mec)中的计算卸载技术就是将用户端的计算任务卸载至移动网络的边缘,从而有效地解决用户端计算能力不足的问题。同时,相比于移动云计算中的计算卸载,边缘计算解决了高时延、网络负载与资源的占用等问题。
3.边缘计算的核心思想是把传统数据中心里的云计算平台从核心网络内部迁至移动网络边缘,以实现各类系统资源的高效利用。边缘计算的目标是通过将计算放在靠近信息源的位置来减少延迟,提高用户服务体验。它通过构建一个由各式各样的计算设备组成的层次结构来实现。新范式下的移动边缘计算的体系结构是一个典型的三层结构,其由云中心、边缘节点服务器202(mobileedgeserver,mes)和用户端组成。在现有技术中,如何实现选择性的将计算任务转移到边缘计算,还没有成熟的实施方案。


技术实现要素:

4.为了解决当前技术方案中计算任务无法选择性的转移到边缘计算的问题,本技术提出一种边缘计算的选择性卸载方法以及一种边缘计算的选择性卸载系统。
5.本技术提供一种边缘计算的选择性卸载方法,包括:
6.根据用户端的应用程序,确定所述应用程序要执行的子任务;
7.根据所述子任务的关键参数确定所述子任务对应的状态空间,并根据所述状态空间确定每个所述子任务的成本函数;
8.将所述成本函数输入到智能成本模型中计算卸载方案。
9.可选的,所述状态空间公式如下:
10.s=(c,d,n,m,ec)
11.其中,所述c是子任务的序号,所述d是子任务的数据传输值,所述n是通讯资源值,所述m是计算负荷值,所述ec是子任务的能源消耗值。
12.可选的,所述成本函数公式如下:
[0013][0014]fl
(s)=γ1t
l
(c)+γ2ec[0015]fr
(s)=γ3[(1-p
c-1
)t
t
(d
c-1,c
)+te(d
c-1,c
)+tr(d
c,c+1
)+td]+γ4[e(d
c,c+1
)+e(d
c-1,c
)(1-p
c-1
)]+ε5k(m)+ε6k(n)
[0016]
其中,所述f
l
(s)是所述用户端的执行成本,fr(s)是边缘节点服务器202的执行成
本,pc是成本结果,γ1、γ2、γ3、γ4、ε5、ε6是加权系数,t
l
(c)是执行时间,ec是能量损耗,t
t
(d
c-1,c
)是前一个子任务数据传输当前子任务的时间,te(d
c-1,c
)表示当前子任务执行时间,te(d
c-1,c
)+tr(d
c,c+1
)是当前子任务数据传输到下一个子任务的时间,e(d
c,c+1
)e和(d
c-1,c
)分别是子任务输入到边缘节点服务器202和输出到边缘节点服务器202的能量损耗,k(m)是cpu核心数量和子任务数量比值,k(n)是cpu核心数量和通讯资源数量比值。
[0017]
可选的,所述智能成本模型包括:
[0018]
输入层,接收输入数据;
[0019]
隐藏层,计算并迭代输入数据,生产输出数据;
[0020]
输出层,输出输出数据。
[0021]
可选的,所述智能成本模型是深度神经网络模型。
[0022]
本技术还提供一种边缘计算的选择性卸载系统,包括:
[0023]
划分模块,用于根据用户端的应用程序,确定所述应用程序要执行的子任务;
[0024]
计算模块,用于根据所述子任务的关键参数确定所述子任务对应的状态空间,并根据所述状态空间确定每个所述子任务的成本函数;
[0025]
判断模块,用于将所述成本函数输入到智能成本模型中计算卸载方案。
[0026]
可选的,所述状态空间公式如下:
[0027]
s=(c,d,n,m,ec)
[0028]
其中,所述c是子任务的序号,所述d是子任务的数据传输值,所述n是通讯资源值,所述m是计算负荷值,所述ec是子任务的能源消耗值。
[0029]
可选的,所述成本函数公式如下:
[0030][0031]fl
(s)=γ1t
l
(c)+γ2ec[0032]fr
(s)=γ3[(1-p
c-1
)t
t
(d
c-1,c
)+te(d
c-1,c
)+tr(d
c,c+1
)+td]+γ4[e(d
c,c+1
)+e(d
c-1,c
)(1-p
c-1
)]+ε5k(m)+ε6k(n)
[0033]
其中,所述f
l
(s)是所述用户端的执行成本,fr(s)是边缘节点服务器202的执行成本,pc是成本结果,γ1、γ2、γ3、γ4、ε5、ε6是加权系数,t
l
(c)是执行时间,ec是能量损耗,t
t
(d
c-1,c
)是前一个子任务数据传输当前子任务的时间,te(d
c-1,c
)表示当前子任务执行时间,te(d
c-1,c
)+tr(d
c,c+1
)是当前子任务数据传输到下一个子任务的时间,e(d
c,c+1
)e和(d
c-1,c
)分别是子任务输入到边缘节点服务器202和输出到边缘节点服务器202的能量损耗,k(m)是cpu核心数量和子任务数量比值,k(n)是cpu核心数量和通讯资源数量比值。
[0034]
可选的,所述智能成本模型包括:
[0035]
输入层,接收输入数据;
[0036]
隐藏层,计算并迭代输入数据,生产输出数据;
[0037]
输出层,输出输出数据。
[0038]
可选的,所述智能成本模型是深度神经网络模型。
[0039]
本技术相较于现有技术的优点是:
[0040]
本技术提供一种边缘计算的选择性卸载方法,包括:根据用户端的应用程序,确定
所述应用程序要执行的子任务;根据所述子任务的关键参数确定所述子任务对应的状态空间,并根据所述状态空间确定每个所述子任务的成本函数;将所述成本函数输入到智能成本模型中计算卸载方案。通过子任务的关键参数计算得到的卸载成本,选择性的经子任务卸载都边缘计算,最大程度的降低系统的运行成本。
附图说明
[0041]
图1是本技术中边缘计算的选择性卸载流程图。
[0042]
图2是本技术中边缘卸载体系的结构图。
[0043]
图3是本技术中子任务的数据传递示意图。
[0044]
图4是本技术中子任务卸载示意图。
[0045]
图5是本技术中边缘计算的选择性卸载系统示意图。
具体实施方式
[0046]
以下内容均是为了详细说明本技术要保护的技术方案所提供的具体实施过程的示例,但是本技术还可以采用不同于此的描述的其他方式实施,本领域技术人员可以在本技术构思的指引下,采用不同的技术手段实现本技术,因此本技术不受下面具体实施例的限制。
[0047]
本技术提供一种边缘计算的选择性卸载方法,包括:根据用户端的应用程序,确定所述应用程序要执行的子任务;根据所述子任务的关键参数确定所述子任务对应的状态空间,并根据所述状态空间确定每个所述子任务的成本函数;将所述成本函数输入到智能成本模型中计算卸载方案。通过子任务的关键参数计算得到的卸载成本,选择性的经子任务卸载都边缘计算,最大程度的降低系统的运行成本。
[0048]
图1是本技术中边缘计算的选择性卸载流程图。
[0049]
请参照图1所示,s101根据用户端201的应用程序,确定所述应用程序要执行的子任务。
[0050]
通常来说,一个用户端201的应用程序在工作的过程中,会同时或者异时的进行多个子任务的进程。本技术所述子任务是指应用程序在工作进程中的每一个单独的子任务,这些子任务共同组成了所述应用程序的工作过程。
[0051]
本技术中提到的子任务,可以在用户端201进行处理,也可以在服务端进行处理。当所述边缘节点服务器202或者用户端201对所述用户端201应用程序的子任务进行处理时,需要一个选择过程,所述选择过程的选择条件包括,卸载成本,即所述子任务卸载到服务端进行处理时产生的时间和能源成本。
[0052]
优选的,本技术所述选择性卸载,是在边缘节点服务器202中进行边缘计算时进行的。边缘计算是优化的服务端计算体系,具体是将需要用户端201计算的任务卸载到边缘节点服务器202进行任务处理。
[0053]
图2是本技术中边缘卸载体系的结构图。
[0054]
请参照图2所示,所述边缘计算体系包括有云服务器203,边缘节点服务器202和用户端201三个主要模块,其中边缘节点服务器202和云服务器203之间通过互联网连接,所示边缘节点服务器202和用户端201通过互联网、区域网或者专用私有网线连接。
[0055]
所述用户端201上设置有应用程序,该应用程序通过边缘节点服务器202与云服务器203进行通讯,而实际上,所述边缘节点服务器202和云服务器203共同组成了与用户端201对应的服务端,为简洁起见,在下面的描述中不再提及云服务器203,统一视为边缘节点服务器202。
[0056]
图3是本技术中子任务的数据传递示意图。
[0057]
请参照图3所示,所述用户端201的应用程序在执行一次任务时,首先对所述任务进行分割,并形成多个子任务。所述子任务的命名,可以采用用户端201名称加上子任务序号,例如用户设备分为application,则多个所述子任务的名称可以称为application_1、application_2
···
application_c等,所述c表示子任务的数量。在执行一项任务时,所示子任务处理的数据是按照子任务的序号,依次向后传递。
[0058]
进一步的,所述应用程序根据所述子任务的数量和数据,表示为线性向图a=(c,d),其中d表示为子任务间传递的数据。
[0059]
请参照图1所示,s102根据所述子任务的关键参数确定所述子任务对应的状态空间,并根据所述状态空间确定每个所述子任务的成本函数。
[0060]
当一个任务被分割为多个子任务的时候,每个子任务都可以单独的执行,但是这些子任务需要按照子任务的序号依次执行。
[0061]
在这些子任务执行之前,获取每个子任务的关键参数,包括:子任务序号,传输数据量、通讯资源、计算负荷和能量消耗等。
[0062]
具体的,根据所述关键参数,可以先确定每个子任务的状态空间,所述状态空间是将所述子任务的每一个关键参数视为一个维度,这些维度的集合就是所述状态空间,优选的,根据这些维度所述状态空间表示公式如下:
[0063]
s=(c,d,n,m,ec),c∈c
[0064]
其中,所述c是子任务的序号,所述d是子任务的数据传输值,所述n是通讯资源值,所述m是计算负荷值,所述ec是子任务的能源消耗值。
[0065]
每个子任务的所述状态空间包含了子任务的关键参数,因此在构建一个成本函数后,将所述状态空间输入到成本函数中,即可根据所述成本函数得出每个子任务的卸载成本。
[0066]
本技术的成本函数公式如下:
[0067][0068]
其中,所述f
l
(s)是所述用户端201的执行成本,fr(s)是边缘节点服务器202的执行成本,pc是成本空间。将上述的状态空间s输入到所述成本函数后,即可得出pc,所述pc=0则在用户端201执行所述子任务,所述pc=1则将所述子任务卸载在边缘节点服务器202执行。
[0069]
在上述成本公式中,所述f
l
(s)是所述用户端201的执行成本,其公式如下:
[0070]fl
(s)=γ1t
l
(c)+γ2ec[0071]
其中γ1、γ2是加权系数,t
l
(c)是执行时间,ec是能量损耗。所述γ1、γ2是根据所述应用程序的全部子任务中最大的执行时间t
max
和最大的能源消耗e
max
确定的,公式如下:
[0072][0073]
其中ε1、ε2是本技术中子任务的执行时间和能量损耗的线性比值。
[0074]
在上述成本公式中,所述f
l
(s)是所述服务端的执行成本,其公式如下:
[0075]fr
(s)=γ3[(1-p
c-1
)t
t
(d
c-1,c
)+te(d
c-1,c
)+tr(d
c,c+1
)+td]+γ4[e(d
c,c+1
)+e(d
c-1,c
)(1-p
c-1
)]+ε5k(m)+ε6k(n)
[0076]
其中,所述t
t
(d
c-1,c
)是前一个子任务数据传输当前子任务的时间,te(d
c-1,c
)表示当前子任务执行时间,tr(d
c,c+1
)是当前子任务数据传输到下一个子任务的时间,td为所述子任务在服务端的译码时间。
[0077]
另外,e(d
c,c+1
)e和(d
c-1,c
)分别是子任务输入到边缘节点服务器202和输出到边缘节点服务器202的能量损耗,k(m)是cpu核心数量和子任务数量比值,k(n)是cpu核心数量和通讯资源数量比值。
[0078]
上述服务端的成本公式中,γ3,γ4是加权系数,其公式如下:
[0079][0080]
其中,所述td为子任务的最大执行时间,所述e
max
是子任务的最大能源损耗。所述ε3、ε4、ε5、ε6是预设的加权系数。
[0081]
请参照图1所示,s103将所述成本函数输入到智能成本模型中计算卸载方案。
[0082]
在得出所述成本函数后,将所述成本函数带入到智能成本模型中,求出最优的卸载方案。
[0083]
具体的,在确定要执行任务的状态空间s和卸载成本函数f(s,pc)的基础上,寻找最优的卸载方案,使执行任务的成本花费的最小,得出最合理的资源分配分案,即得到移动边缘计算的最优解。
[0084]
本技术采用深度神经网络(dnn),将执行任务的成本函数输入到dnn中,经过隐含层的相应矩阵运算和鉴别,在输出层得到卸载方案,卸载方案经过神经网络的反向传播和迭代,找出最接近的实际值的优化方案。其数学表达式如下:
[0085][0086]
其中,所述po表示卸载方案,所述p={pc∈{0,1}。
[0087]
所述深度神经网络按不同层的位置划分,内部的神经网络层可以分为三类,输入层,隐藏层和输出层,第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层。本技术设置的隐含层数量为两层,借助多层神经网络解决大数据量、模型复杂的数据结构。
[0088]
图4是本技术中子任务卸载示意图。
[0089]
请参照图4所示,经过深度神经网络的处理,本技术将一部分子任务卸载到边缘节点服务器202进行处理,另外一部分留在用户端201进行处理,达到综合的任务处理时间和能量消耗的最小。
[0090]
本技术还提供一种边缘计算的选择性卸载系统,包括:划分模块501,计算模块502,判断模块503。
[0091]
图5是本技术中边缘计算的选择性卸载系统示意图。
[0092]
请参照图5所示,划分模块501,用于根据用户端201的应用程序,确定所述应用程序要执行的子任务.
[0093]
通常来说,一个用户端201的应用程序在工作的过程中,会同时或者异时的进行多个子任务的进程。本技术所述子任务是指应用程序在工作进程中的每一个单独的子任务,这些子任务共同组成了所述应用程序的工作过程。
[0094]
本技术中提到的子任务,可以在用户端201进行处理,也可以在服务端进行处理。当所述服务端或者用户端201对所述用户端201应用程序的子任务进行处理时,需要一个选择过程,所述选择过程的选择条件包括,卸载成本,即所述子任务卸载到服务端进行处理时产生的时间和能源成本。
[0095]
优选的,本技术所述选择性卸载,是在边缘节点服务器202中进行边缘计算时进行的。边缘计算是优化的服务端计算体系,具体是将需要用户端201计算的任务卸载到边缘节点服务器202进行任务处理。
[0096]
请参照图2所示,所述边缘计算体系包括有云服务器203,边缘节点服务器202和用户端201三个主要模块,其中边缘节点服务器202和云服务器203之间通过互联网连接,所示边缘节点服务器202和用户端201通过互联网、区域网或者专用私有网线连接。
[0097]
所述用户端201上设置有应用程序,该应用程序通过边缘节点服务器202与云服务器203进行通讯,而实际上,所述边缘节点服务器202和云服务器203共同组成了与用户端201对应的服务端,为简洁起见,在下面的描述中不再提及云服务器203,统一视为边缘节点服务器202。
[0098]
请参照图3所示,所述用户端201的应用程序在执行一次任务时,首先对所述任务进行分割,并形成多个子任务。所述子任务的命名,可以采用用户端201名称加上子任务序号,例如用户设备分为application,则多个所述子任务的名称可以称为application_1、application_2
···
application_c等,所述c表示子任务的数量。在执行一项任务时,所示子任务处理的数据是按照子任务的序号,依次向后传递。
[0099]
进一步的,所述应用程序根据所述子任务的数量和数据,表示为线性向图a=(c,d),其中d表示为子任务间传递的数据。
[0100]
请参照图5所示,计算模块502,用于根据所述子任务的关键参数确定所述子任务对应的状态空间,并根据所述状态空间确定每个所述子任务的成本函数。
[0101]
当一个任务被分割为多个子任务的时候,每个子任务都可以单独的执行,但是这些子任务需要按照子任务的序号依次执行。
[0102]
在这些子任务执行之前,获取每个子任务的关键参数,包括:子任务序号,传输数据量、通讯资源、计算负荷和能量消耗等。
[0103]
具体的,根据所述关键参数,可以先确定每个子任务的状态空间,所述状态空间是将所述子任务的每一个关键参数视为一个维度,这些维度的集合就是所述状态空间,优选的,根据这些维度所述状态空间表示公式如下:
[0104]
s=(c,d,n,m,ec),c∈c
[0105]
其中,所述c是子任务的序号,所述d是子任务的数据传输值,所述n是通讯资源值,所述m是计算负荷值,所述ec是子任务的能源消耗值。
[0106]
每个子任务的所述状态空间包含了子任务的关键参数,因此在构建一个成本函数后,将所述状态空间输入到成本函数中,即可根据所述成本函数得出每个子任务的卸载成本。
[0107]
本技术的成本函数公式如下:
[0108][0109]
其中,所述f
l
(s)是所述用户端201的执行成本,fr(s)是边缘节点服务器202的执行成本,pc是成本空间。将上述的状态空间s输入到所述成本函数后,即可得出pc,所述pc=0则在用户端201执行所述子任务,所述pc=1则将所述子任务卸载在边缘节点服务器202执行。
[0110]
在上述成本公式中,所述f
l
(s)是所述用户端201的执行成本,其公式如下:
[0111]fl
(s)=γ1t
l
(c)+γ2ec[0112]
其中γ1、γ2是加权系数,t
l
(c)是执行时间,ec是能量损耗。所述γ1、γ2是根据所述应用程序的全部子任务中最大的执行时间t
max
和最大的能源消耗e
max
确定的,公式如下:
[0113][0114]
其中ε1、ε2是本技术中子任务的执行时间和能量损耗的线性比值。
[0115]
在上述成本公式中,所述f
l
(s)是所述服务端的执行成本,其公式如下:
[0116]fr
(s)=γ3[(1-p
c-1
)t
t
(d
c-1,c
)+te(d
c-1,c
)+tr(d
c,c+1
)+td]+γ4[e(d
c,c+1
)+e(d
c-1,c
)(1-p
c-1
)]+ε5k(m)+ε6k(n)
[0117]
其中,所述t
t
(d
c-1,c
)是前一个子任务数据传输当前子任务的时间,te(d
c-1,c
)表示当前子任务执行时间,tr(d
c,c+1
)是当前子任务数据传输到下一个子任务的时间,td为所述子任务在服务端的译码时间。
[0118]
另外,e(d
c,c+1
)e和(d
c-1,c
)分别是子任务输入到边缘节点服务器202和输出到边缘节点服务器202的能量损耗,k(m)是cpu核心数量和子任务数量比值,k(n)是cpu核心数量和通讯资源数量比值。
[0119]
上述服务端的成本公式中,γ3,γ4是加权系数,其公式如下:
[0120][0121]
其中,所述td为子任务的最大执行时间,所述e
max
是子任务的最大能源损耗。所述ε3、ε4、ε5、ε6是预设的加权系数。
[0122]
请参照图5所示,判断模块503,用于将所述成本函数输入到智能成本模型中计算卸载方案。
[0123]
在得出所述成本函数后,将所述成本函数带入到智能成本模型中,求出最优的卸载方案。
[0124]
具体的,在确定要执行任务的状态空间s和卸载成本函数f(s,pc)的基础上,寻找最优的卸载方案,使执行任务的成本花费的最小,得出最合理的资源分配分案,即得到移动边缘计算的最优解。
[0125]
本技术采用深度神经网络(dnn),将执行任务的成本函数输入到dnn中,经过隐含
层的相应矩阵运算和鉴别,在输出层得到卸载方案,卸载方案经过神经网络的反向传播和迭代,找出最接近的实际值的优化方案。其数学表达式如下:
[0126][0127]
其中,所述po表示卸载方案,所述p={pc∈{0,1}。
[0128]
所述深度神经网络按不同层的位置划分,内部的神经网络层可以分为三类,输入层,隐藏层和输出层,第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层。本技术设置的隐含层数量为两层,借助多层神经网络解决大数据量、模型复杂的数据结构。
[0129]
请参照图4所示,经过深度神经网络的处理,本技术将一部分子任务卸载到边缘节点服务器202进行处理,另外一部分留在用户端201进行处理,达到综合的任务处理时间和能量消耗的最小。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1