一种面向边缘网络的可分割任务卸载调度方法

文档序号:28418913发布日期:2022-01-11 20:52阅读:67来源:国知局
一种面向边缘网络的可分割任务卸载调度方法

1.本发明属于边缘计算领域,具体涉及一种面向边缘网络的可分割任务卸载调度方法。


背景技术:

2.物联网的快速发展,让越来越多的终端设备连接到互联网,终端设备可以借助互联网共享信息,但也因此面临计算和存储能力有限的问题。物联网终端设备将部分计算任务转移到计算和存储能力相对丰富的节点有助于缓解终端设备计算和存储能力有限的问题,我们把这样的方式称为计算卸载。
3.近年来,一些研究工作主张将任务卸载到云,但物联网终端设备和相对应的任务数量正在快速增长,这些任务数量的快速增长给云带来了巨大的负荷;另一方面,由于云的位置一般离终端较远,传输网络延迟较大,能耗高,以至于无法应用于时间敏感的场景,如工业物联网中的实时控制。另外也有一些研究工作主张将任务转移到具有一定计算和存储能力的边缘服务器上。边缘服务器根据自己的能力接收并完成多个物联网设备上卸载的任务,称这个过程为边缘计算。边缘计算突出了其在降低延迟和节省带宽方面的优势,有效地提高了边缘服务器提供的服务的可靠性和质量。
4.现有的方式考虑了卸载过程中网络传输速率和链路质量的动态变化,没有考虑网络传输过程中的无线干扰等因素,如果把这些问题都考虑进去,问题就会变得非常复杂。因此,在无线干扰、网络动态变化等多种因素的约束下,如何降低设备能耗的同时实现网络资源的最大化利用仍然是一个巨大的挑战。


技术实现要素:

5.本发明针对上述问题进行了针对性的探索,对复杂边缘网络环境下的多终端节点可分割任务卸载提出了一种面向边缘网络的可分割任务卸载调度方法。
6.本发明一种面向边缘网络的可分割任务卸载调度方法,其具体的步骤如下:
7.步骤一、构建边缘网络模型,边缘网络层共有三层,分别是云层、边缘层和终端层,云层由云服务器组成,边缘层由边缘服务器组成,终端层由多样化的终端设备组成,构建网络图g(v,e)来表示上述边缘网络,分别有云节点、边缘节点、终端节点。
8.步骤二、构建能量消耗模型,终端节点、边缘节点、云节点在发送任务、接收任务、执行任务过程均需要消耗相应的能量。
9.步骤三、构建时间消耗模型,边缘节点和云节点执行任务的过程需要消耗一定的时间。
10.步骤四、构建效用值模型,边缘节点和云节点成功执行由终端节点发送的任务后会获得一定的效用值。
11.步骤五、为了更好表征网络动态性,通过时序扩展图g(v
t
,e
t
)来表示g(v,e)。
12.步骤六、构建基于时序扩展图的单路径模型。
13.步骤七、构建基于时序扩展图的效用最大化模型。
14.步骤八、利用网络流的概念,可以将与吞吐量相关的路径视为网络流,将步骤七中的问题转换为线性规划的最大流问题并进一步转换为其对应的对偶问题。
15.步骤九、基于时序扩展图获取每个终端节点的卸载路径,主要步骤如下:
16.(1)通过迪杰斯特拉算法寻找任务集合f中每个源终端节点的最短路径。
17.(2)给当前这条最短路径分配能量以寻找可用的吞吐量,并在约束条件下,获得一个最大吞吐量。
18.(3)更新包含在最短路径中每条边的容量和长度以及每个节点的剩余能量,同时,被最短路径中边干扰的边也将被更新。
19.(4)以上三步交替迭代进行,直到所有的源终端节点达到设定需求值或长度目标函数达到设定值。
20.结合以上所述,当采用上述方案时,本发明的有益效果是:
21.本发明是一种基于边缘网络的多节点可分割任务的卸载方案,考虑了边缘网络复杂的网络环境,同时考虑了多设备之间传输过程中存在的无线干扰因素,解决了多节点可分割任务分配的效用值低的难题,与随机卸载到边缘服务器或云的方式相比,提高了效用值的同时降低了单位吞吐量的能量消耗。
附图说明
22.图1为本发明边缘网络的架构图。
23.图2为本发明将边缘网络转换成表征复杂网络环境的时序扩展图的架构图。
24.图3为本发明的卸载方案与随机卸载方案在单位吞吐量的能耗上的对比图。
25.图4为本发明的卸载方案与随机卸载方案在效用值上的对比图。
具体实施方式
26.为了使本发明的目的、技术方案和优点更加清晰,下面将结合实施方式和附图进一步详细阐述本发明。
27.步骤一、构建边缘网络模型,边缘网络层共有三层,分别是云层、边缘层和终端层,云层由云服务器组成,边缘层由边缘服务器组成,边缘服务器之间通过网络连接,它们均可以连接到云服务器;终端层由多样化的终端设备组成,它们可以连接到邻近的边缘服务器,并通过边缘服务器间接连接到云服务器。构建网络图g(v,e)来表示上述边缘网络,v={νi,i=1,

,n}表示顶点集合,包括终端节点、边缘节点、云节点,每个终端节点都有一组任务f∈fi需要完成,其中v又可以分为两个子集vm、vs,前者表示所有终端节点的集合,后者表示所有边缘节点、云节点的集合,表示边集合,每条边有一个容量c(e
ij
),如附图1所示,终端节点v1,v3可以分别连接到边缘节点v4,v5,节点v2既可以连接到v4也可以连接到v5,终端节点v1,v2,v3可以通过边缘节点v4,v5连接到云节点v0,需要满足的约束条件为:
[0028][0029]
步骤二、构建能量消耗模型,使用和分别表示节点vi在时刻t的传输和接
收功率,其中re(t)表示边e在时刻t的链路质量,综合考虑上述动态因素,对于边e上具有一定负载f的任务,发射节点和接收节点需要花费能量进行通信,其时变的关系为:
[0030][0031][0032]
其中分别表示任务卸载节点vi到任务接受节点vj的传输和接受任务所需能量消耗。
[0033]
还有一些边缘节点和云节点需要承担计算任务的功能,用表示节点vi在t时刻处理单位任务负载的所需能耗,即节点vi在时刻t
p
执行f单位任务所需的能量消耗:
[0034][0035]
总的能耗φi(t)为:
[0036][0037]bi
表示每个节点的剩余能量,则每个节点的能量消耗需要满足如下约束:
[0038][0039]
步骤三、构建时间消耗模型,vs中的每个节点vi都可以处理负载为f的任务,使用hi(t)表示其在时刻t的计算能力,δ1为常系数,则节点vi的处理任务所需的时间为:
[0040][0041]
步骤四、构建效用值模型,δ2是常系数,ui(f,t)表示节点vi在时刻t处理任务负载的效用值:
[0042][0043]
目标函数:
[0044][0045]
约束条件:
[0046][0047][0048]
步骤五、为了更好表征网络动态性,通过时序扩展图g(v
t
,e
t
)来表示g(v,e),v
t
,e
t
分别表示时序扩展图中的顶点集合和边集合,通过离散化的方式将时间周期t离散为m个相等的时间槽,每个时刻用tk来表示,其中k=0,

m,时刻t
k-1
到tk之间的段为时间槽τk,每个时间槽τ内,节点的处理能力、通信功率和链路质量都是固定常量。
[0049]
(1)每个在集合v中的顶点vi在集合v
t
中都有m+1个复制节点v(tk),k=0,

m,分别
表示不同时刻tk的状态,使用c_node表示。
[0050]
(2)节点vi(tk)到它的下一个节点vj(t
k+1
)有一条边,称为s1_edge,表示交付任务的成本,s2_edge是边缘节点特有的边,表示中继的作用,即可由终端节点经该边缘节点卸载任务到其它边缘节点或云节点。
[0051]
(3)构建vi(tk)到它的下一个节点vi(t
k+1
)的边,称为c_edge,表示该节点在时间槽间的状态转移。
[0052]
(4)构建一个虚拟节点vv,是所有任务卸载的终点,连接到虚拟节点的边的权重为零,并且虚拟节点的容量非常大。
[0053]
如附图1和附图2所示,网络g(v,e)由v={νi,i=0,

,5}和在时序扩展图中,横轴为时间坐标,纵轴为节点坐标,每个节点创建m+1份,即图中的各类型节点,例如,边缘节点v5有m+1个c_node节点,v5(tk),k=0,

m,在顶部行水平列出,从每个c_node节点到下一个c_node节点有c_edge边,例如虚线箭头从v5(t0)到v5(t1),e中的每条边都由一系列的s1_edge边组成,例如,边e
40
在附图1中连接v4和v0,其对应的s1_edge边是附图2中从v4(tk)到v0(t
k+1
)的边,其中k=0,

,m-1,第二步为边缘服务器创建s2_edge,例如,我们在图中的环形箭头v5(tk),其中k=0,

m。
[0054]
步骤六、构建时序扩展图中单路径模型,时序扩展图中的单条路径用pi表示,是从源节点vi(t0)到目标vv的一系列有向边的组合,包括c_edge、s1_edge或s2_edge,用pi表示源节点vi(t0)到vv的所有可行路径,p表示所有源节点路径的集合,所以有边e

(τ)和边集合ie′
(τ)
分别表示在时间槽τ受到干扰的边和受到干扰的边的集合,其中需要满足约束:
[0055][0056]
步骤七、构建时序扩展图下的效用最大化数学方程:
[0057][0058]
其中约束条件为:
[0059][0060][0061][0062]
步骤八、利用网络流的概念,可以将与吞吐量相关的路径视为网络流,将上述问题转换为线性规划的最大流问题并进一步转换为其对应的对偶问题,其中λ为对偶问题的变量:
[0063]
maxλ
[0064]
约束条件为:
[0065][0066][0067][0068]
步骤九、基于时序扩展图获取每个终端节点的卸载路径,主要步骤如下:
[0069]
(1)为每个源终端节点vi(t0)∈v
t
设置初始吞吐量fi为0,并设定一个需求值qi,且qi>0。
[0070]
(2)设定目标长度函数q=0,辅助变量其中是一个预先设定常量值,
[0071]
(3)为e
t
中的每条边e设置一个长度函数l(e),其中c(e)是边e的容量,q=q+l(e)
×
c(e)。
[0072]
(4)接下来分阶段运行,每个节点包含多次迭代,每轮迭代中源终端节点vi(t0)会卸载qi单位的任务,当目标函数值q≥1或所有终端节点都完成设定的需求值qi。
[0073][0074]
(5)通过当前边的长度函数l(e)寻找vi(t0)到vv的最短路径pi,分配能量获取每条边的可用吞吐量。
[0075]
(6)确定路径pi的瓶颈负载为f
′i(e),e∈pi,q
′i表示终端节点vi(t0)剩余需求值,fi表示pi上的实际吞吐量,即fi=min{f
′i(e),q
′i}。
[0076]
(7)当fi>0,pi上的每条边e的长度函数l(e)更新为长度函数更新为剩余需求值更新为q
′i=q

i-fi。
[0077]
(8)最后,当所有的源终端节点达到设定需求值或长度目标函数达到设定值时,需要对得出的吞吐量做相应比例缩放,即
[0078]
为了评估本发明公开的一种面向边缘网络的可分割任务卸载调度方法在提升效用值和降低单位吞吐量所消耗能量方面的性能,本实施例采用本发明可分割任务卸载调度方法,对比方案采用随机卸载方法(任务随机卸载到边缘服务器或云服务器)。两种方法处理任务的效用值和单位吞吐量所消耗能量如图3和图4所示。
[0079]
图3显示了在终端节点数量不同的情况下,本发明的卸载方法和随机卸载方法完成单位吞吐量任务所消耗的能量。其中,两者的单位吞吐量所消耗的能量随着终端节点数量的增加没有出现剧烈的变化,说明比较稳定。本发明的卸载方法在单位吞吐量所消耗的能量上要明显低于随机卸载方法,说明本发明的卸载方法能显著减少终端节点的能量使用。
[0080]
图4显示了在终端节点数量不同的情况下,本发明的卸载方法和随机卸载方法的效用值。其中,本发明的卸载方法随着终端节点数的增加,效用值持续增长后趋于稳定,这是因为多个终端节点同时卸载可以降低平均时间成本。随机卸载方法的效用值则趋于稳定,但显著低于本发明卸载方法的效用值。综合所述,本发明的卸载方法具有优越的性能。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1