边端协同计算卸载方法及系统、电子设备和存储介质与流程

文档序号:25341561发布日期:2021-06-04 18:42阅读:123来源:国知局
边端协同计算卸载方法及系统、电子设备和存储介质与流程

1.本发明涉及通信技术领域,尤其涉及一种边端协同计算卸载方法及系统、电子设备和存储介质。


背景技术:

2.随着移动通信技术的发展和智能终端的普及,各种网络服务和应用不断涌现,用户对网络服务质量、请求时延等网络性能的要求越来越高。存在越来越多在短时间内处理计算密集型或时延敏感型计算任务的需求。
3.对于存在高速运动终端的移动网络,例如车联网中,车载终端会产生大量的实时任务,包括信息推送、自动驾驶、智慧交通等,这些任务需要消耗大量的计算资源和存储资源。
4.作为一种新型的分布式数据处理和存储架构,边缘计算将终端产生的任务,由云服务器,迁移到边缘节点来处理,若将边缘计算应用于车联网,能够极大缓解网络的压力,有效降低任务的时延。
5.但由于边缘节点本身的计算资源与存储资源相对有限,面对众多实时性需求很高的车联网任务,给边缘节点带来巨大的计算压力,时延难以保证。
6.因此,如何提供一种边端协同计算卸载方法及系统、电子设备和存储介质,利用网络中终端的资源,使边缘和终端节点共同完成海量的任务,有效地对实时任务进行合理分配,进而提升移动网络的安全性和可靠性,提高任务的完成效率,成为亟待解决的问题。


技术实现要素:

7.针对现有技术中的缺陷,本发明提供一种边端协同计算卸载方法及系统、电子设备和存储介质。
8.本发明提供一种边端协同计算卸载方法,包括:
9.任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,所述任务分配节点为边缘节点;所述候选执行者为与所述任务分配节点关联的边缘节点和终端节点;
10.基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,所述卸载决策满足所述候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;
11.基于所述卸载决策,进行边端协同计算任务卸载;其中,所述状态信息包括:节点类型信息、位置信息和资源分配信息。
12.根据本发明提供的边端协同计算卸载方法,所述基于所述卸载决策,进行边端协同计算任务卸载,具体包括:
13.基于所述卸载决策,确定执行所述待卸载任务的目标执行者位置信息和目标卸载方式;
14.根据所述待卸载任务信息、目标执行者位置信息以及目标卸载方式,进行边端协同计算任务卸载。
15.根据本发明提供的边端协同计算卸载方法,所述根据所述待卸载任务信息、目标执行者位置信息以及目标卸载方式,进行边端协同计算任务卸载,具体包括:
16.确定所述目标执行者为目标终端节点,根据所述目标终端节点位置信息,确定与所述目标终端节点最近的目标边缘节点;
17.将所述待卸载任务通过所述目标边缘节点卸载至所述目标终端节点。
18.根据本发明提供的边端协同计算卸载方法,所述基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策,具体包括:
19.基于所述待卸载任务信息和所述候选执行者的状态信息,确定任务卸载总时延;
20.基于所述任务卸载总时延和任务类型,确定任务完成的任务分配效用;
21.利用进化算法,确定在满足所述候选执行者执行卸载任务的任务数据量小于候选执行者可用存储资源条件下,任务分配效用最大的卸载决策。
22.根据本发明提供的边端协同计算卸载方法,所述基于所述待卸载任务信息和所述候选者的状态信息,确定任务卸载总时延,具体包括:
23.确定卸载至候选执行者,基于所述待卸载任务信息和所述候选执行者的状态信息确定任务传输时间、任务排队时间、任务运行时间和任务回传时间;
24.基于所述任务传输时间、任务排队时间、任务运行时间和任务回传时间确定任务卸载总时延。
25.根据本发明提供的边端协同计算卸载方法,所述基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策,具体包括:
26.基于待卸载任务信息和所述所有候选执行者的状态信息,利用粒子群算法,确定卸载决策。
27.根据本发明提供的边端协同计算卸载方法,所述基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策,具体包括:
28.基于待卸载任务信息和所述所有候选执行者的状态信息,利用改进的量子粒子群算法,确定卸载决策;
29.其中,所述改进的量子粒子群算法中,粒子位置与所述候选执行者位置信息映射关联。
30.本发明还提供一种边端协同计算卸载系统,包括:
31.信息获取单元,用于任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,所述任务分配节点为边缘节点;所述候选执行者为与所述任务分配节点关联的边缘节点和终端节点;
32.卸载决策单元,用于基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,所述卸载决策满足所述候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;
33.任务卸载单元,用于基于所述卸载决策,进行边端协同计算任务卸载;其中,所述状态信息包括:节点类型信息、位置信息和资源分配信息。
34.本发明还提供一种电子设备,包括存储器和处理器,所述处理器和所述存储器通
过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如上述边端协同计算卸载方法的各个步骤。
35.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述边端协同计算卸载方法的各个步骤。
36.本发明提供的边端协同计算卸载方法及系统、电子设备和存储介质,充分考虑移动网络中终端节点和边缘节点的特性,通过利用网络中终端的资源,使边缘和终端节点共同完成海量的任务,实现终端节点与边缘节点、终端节点与终端节点以及边缘节点与边缘节点之间协作式应用,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
附图说明
37.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1为本发明提供的边端协同计算卸载方法流程图;
39.图2为本发明提供的基于边端协同的车联网任务分配架构示意图;
40.图3为本发明提供的基于边端协同的车联网实时任务分配场景图;
41.图4为本发明提供的任务数变化条件下任务完成效用对比柱状图;
42.图5为本发明提供的车辆数变化条件下任务完成效用对比柱状图;
43.图6为本发明提供的边端协同计算卸载系统结构示意图;
44.图7为本发明提供的电子设备的实体结构示意图。
具体实施方式
45.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
46.根据现有技术中存在的缺陷,本发明提供一种边端协同任务分配方法及系统、电子设备和存储介质,为了便于后续分析,以该方案应用于车联网为例,对发明中设计的相关观念进行说明:
47.图2为本发明提供的基于边端协同的车联网任务分配架构示意图,如图2所示,基于边端协同的车联网任务分配架构共有三层,包括云端、边缘层、终端层,车载终端设备接入距离其较近的边缘节点,并可以将任务卸载到边缘节点上,由边缘节点(任务分配节点)将任务分配给其余边缘节点或车载终端,这实现了车与车之间的协同运算,降低了边缘节点的压力,提高了资源的利用率。
48.图3为本发明提供的基于边端协同的车联网实时任务分配场景图,如图3所示,车载终端作为任务发布者,将这些任务卸载到边缘节点,然后边缘节点根据周围的边缘节点和空闲车载终端的数据将任务分配给不同设备,设备完成后将任务传回边缘节点然后由边
缘节点将完成的任务传回任务发布终端。
49.在这个场景模型中,边缘节点附近的每个车辆都会周期性地把信息上载到边缘节点,包括资源情况,速度等。任务可以在边缘节点上执行,也可以在车载终端上执行,一个边缘节点可以获取与其连接的车载终端的信息,也可以与周围的边缘节点共享信息。
50.边缘节点进行评估时,每个设备或边缘节点都处于同等地位,边缘节点对它们进行综合评估取得合理的任务分配方案。由于在模型中车载终端不固定,网络拓扑结构会发生变化,需要考虑数据传输问题。
51.为了便于后续对本发明进行详细说明,对车辆网模型中一些细节进行说明:
52.场景:以城市道路为例,网络基本上做到了完全覆盖,车辆以不同的速度在道路上有序行驶,认为边缘节点在道路上以较为均匀的方式分布,车辆在道路的任何地方都可以接入距离其最近的边缘节点。
53.边缘节点:边缘节点作为基站,位于道路两侧,均匀分布,车辆接入距离其最近的边缘节点。除本地执行以外,所有的任务分配都经过边缘节点,与此同时,边缘节点也可以执行任务。
54.终端:道路上所有接入网络的车载终端。车载终端可以作为任务发布者,生成多个任务,也可以作为任务执行者,执行若干个任务,车载终端的能量被认为是十分充足的,因此车辆不会在执行任务中中断。我们认为车载终端的计算资源和存储资源均小于边缘节点。
55.任务:由车辆产生,用于实现某些应用,本发明考虑的是能够独立部署的任务,每个任务都包含运行开销、数据量、时延需求等数据。
56.图1为本发明提供的边端协同计算卸载方法流程图,如图1所示,本发明提供一种边端协同计算卸载方法,包括:
57.步骤s1,任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,所述任务分配节点为边缘节点;所述候选执行者为与所述任务分配节点关联的边缘节点和终端节点;
58.步骤s2,基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,所述卸载决策满足所述候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;
59.步骤s3,基于所述卸载决策,进行边端协同计算任务卸载;其中,所述状态信息包括:节点类型信息、位置信息和资源分配信息。
60.具体的,以车联网为例对本发明提供的边端协同计算卸载方法进行说明,对于任务在车联网中完整的分配过程可以按照顺序理解为:车载终端设备将任务首先卸载到距离其最近的边缘节点,边缘节点以一定时间间隔,将所有待分配的任务分配给可以选择的设备。目标节点可以为边缘节点也可以为车载终端。任务完成后,以同样的方式将完成后的任务传输到车载终端设备处。
61.在车联网中任何一个边缘节点均可以作为任务分配节点,候选执行者为与任务分配节点关联的边缘节点和终端节点,在步骤s1中,任意任务分配节点获取当前移动网络中所有候选执行者的状态信息。
62.其中,状态信息包括:节点类型信息、位置信息和资源分配信息。节点类型信息用
于表示候选执行者是边缘节点还是终端节点。位置信息用于表示候选执行者的当前位置、目标移动方向以及移动速度。资源分配信息用于表示候选执行者能够分配给执行待卸载任务的当前可用资源,可包括:候选执行者的计算资源、存储资源、当前任务队列、信道带宽以及接收频率等信息。
63.需要说明的是,由于在任务传播过程中终端节点(如车辆)处于移动状态,网络拓扑会发生改变,候选执行者可以为在任务分配节点周围一定范围内(如在任务分配节点作为圆心,半径为50m范围内)的所有边缘节点和终端节点。或者,还可以设置一定的接入筛选规则,满足接入条件的节点才可以作为候选执行者。具体的候选执行者确定方法可根据实际情况进行调整,本发明对此不做限定。
64.其次,终端节点在卸载任务时,将计算任务卸载至离终端最近的边缘节点,可能会在瞬时出现终端节点与多个边缘节点之间的距离相同的情况,此时基于终端节点的运动方向及速度确定与该终端节点距离越来越近的边缘节点作为计算卸载的目标节点。除此之外,还可以采取距离限制,在确定终端节点与边缘节点之间的距离小于预设值时才将计算任务卸载至边缘节点,若不满足要求,将计算任务在终端本地执行。具体的终端节点向边缘节点卸载任务的规则可根据实际情况进行调整,本发明对此不做限定。
65.除此之外,任务分配节点获取候选执行者相关信息,进行待卸载任务的卸载的方法可以是在移动网络中,边缘节点与终端节点均周期性的相关联的节点发送的状态信息。或者是边缘节点(任务分配节点)主动向与其相关联的候选执行者发送卸载请求,候选执行者接收到卸载请求后返回的状态信息。具体的信息获取方法可根据实际情况进行调整,本发明对此不做限定。
66.进一步,在获取当前移动网络中所有候选执行者的状态信息之后,还可以基于候选执行者的资源分配信息进行候选执行者的筛选,剔除掉计算资源和存储资源等不足以满足任务卸载需求的候选执行者。或基于候选执行者的位置信息,根据候选执行者的当前位置,运动方向以及运动速度,剔除候选执行者(终端)是否短时间内会解除与当前任务分配节点的关联关系的候选执行者。在本发明具体实施时,筛选规则可根据实际情况进行设定,本发明对此不做限定。
67.在步骤s2中,对于任一任务分配节点的待卸载任务信息和对应的所有候选执行者的状态信息,可以利用进化算法,确定卸载决策。待卸载任务信息用于表示需要卸载任务的相关信息,可包括:任务的类型,任务的时延要求(如任务开始时间、任务截止时间)、任务的计算资源需求(如任务执行开销、任务数据量)以及任务来源节点。
68.其中,卸载决策满足候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件。需要说明的是,在发明中进化算法可以为粒子群算法、蚁群算法、差分进化算法或麻雀搜索算法等,其目的在于将候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源作为约束调整,能够有效保证任务卸载到目标节点之后能够有效的被执行,在此基础上,保证任务分配效用达到最大的条件,确保卸载决策为可行条件下的最优解。使用的具体算法和实现的手段,本发明对此不做限定。
69.例如:在实际应用时,车联网中所有的车载终端设备(终端节点)与边缘节点的集合抽象成一个矩阵:
[0070][0071]
在矩阵中,n个节点均为能够分配任务的终端设备或边端节点。
[0072]
假设在选取边缘节点s1作为任务分配节点,设有该任务分配节点存在n个待分配任务,即将任务用向量表示为
[0073]
基于与该任务分配节点相关联的候选执行者的状态信息,在候选执行者中选取目标执行者执行待分配任务,任务分配向量(卸载决策)表示为:
[0074]
其中,节点o1至o
n
,对应执行上述任务s1至s
n

[0075]
在步骤s3中,基于在步骤s2中确定的卸载决策,进行边端协同计算任务卸载,将待分配任务卸载给目标执行者。
[0076]
需要说明的是,上述对本发明提供的边端协同计算卸载方法的说明是以车联网的理想构架状态为例,在实际应用过程中,边缘节点的排布方式可根据实际情况进行调整,无需一定以固定间隔设置。除此之外,该方法还可以广泛的适用于其他类型的移动网络中。尤其是能提高终端节点处于高速运动状态下的任务处理的实时性。具体的使用背景可根据实际情况进行调整,本发明对此不做限定。
[0077]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的特性,通过利用网络中终端的资源,使边缘和终端节点共同完成海量的任务,实现终端节点与边缘节点、终端节点与终端节点以及边缘节点与边缘节点之间协作式应用,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
[0078]
可选的,根据本发明提供的边端协同计算卸载方法,基于所述卸载决策,进行边端协同计算任务卸载,具体包括:基于所述卸载决策,确定执行所述待卸载任务的目标执行者位置信息和目标卸载方式;
[0079]
根据所述待卸载任务信息、目标执行者位置信息以及目标卸载方式,进行边端协同计算任务卸载。
[0080]
具体的,在进行计算任务卸载时,目标卸载方式可以是将任务卸载至本地(任务分配节点执行任务)、卸载至候选执行者中的边缘节点或者是终端节点。
[0081]
在确定了卸载决策之后,基于卸载决策,确定执行待卸载任务的目标执行者位置信息和目标卸载方式,根据确定的待卸载任务信息、目标执行者位置信息以及目标卸载方式,进行边端协同计算任务卸载,将待卸载任务依照目标卸载模式卸载给目标执行者。
[0082]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的特性,通过利用网络中终端的资源,使边缘和终端节点共同完成海量的任务,基于确定的卸载决策中目标执行者的位置信息以及目标卸载方式进行任务卸载,基于不同卸载方式之间的特点实现对计算任务的卸载,实现边缘节点与终端节点的协作应用,提高任务的完成效率。
[0083]
可选的,根据本发明提供的边端协同计算卸载方法,所述根据所述待卸载任务信息、目标执行者位置信息以及目标卸载方式,进行边端协同计算任务卸载,具体包括:
[0084]
确定所述目标执行者为目标终端节点,根据所述目标终端节点位置信息,确定与所述目标终端节点最近的目标边缘节点;
[0085]
将所述待卸载任务通过所述目标边缘节点卸载至所述目标终端节点。
[0086]
具体的,目标执行者可以是任务分配节点(本地卸载),目标终端节点和目标边缘节点。在移动网络中,边缘节点的位置固定不变,而终端节点的位置可能会随时间发生变化,导致网络拓扑的变化。
[0087]
例如,在车联网中,由于车辆在不断地运动,在任务分配的过程中,涉及到任务的发送、执行和回传,车联网中的网络拓扑有可能改变。因此,如果传输时车载终端超出原本边缘节点的通信范围,则会先转发到距离目标车辆较近的边缘节点,之后转发到目标车辆。
[0088]
在确定目标执行者为目标终端节点时,根据目标终端节点位置信息,确定与目标终端节点最近的目标边缘节点,将待卸载任务先转发到目标边缘节点,目标边缘节点再将卸载任务卸载至目标终端节点。
[0089]
需要说明的是,如果确定与目标终端节点最近的目标边缘节点即为任务分配节点时,无需进行转发,直接将任务从任务分配节点卸载到目标终端节点。
[0090]
除此之外,本发明中与目标终端节点最近的目标边缘节点指的是与在距离上最近的概念,可能会在瞬时出现终端节点与多个边缘节点之间的距离相同的情况,此时综合考虑终端节点的运动方向及速度,以与终端节点距离缩短的边缘节点作为计算卸载的目标边缘节点。
[0091]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的特性,通过利用网络中终端的资源,使边缘和终端节点共同完成海量的任务,基于确定的卸载决策中目标执行者的位置信息以及目标卸载方式进行任务卸载,基于不同卸载方式之间的特点实现对计算任务的卸载。相比于单纯的边缘计算架构,引入终端节点作为候选执行者,通过边缘节点,实现终端节点与终端节点之间的协作,能够利用更充足的计算资源和存储资源,更高效地处理各种任务,提高任务分配的目的性和任务的完成效率。
[0092]
可选的,根据本发明提供的边端协同计算卸载方法,所述基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策,具体包括:
[0093]
基于所述待卸载任务信息和所述候选执行者的状态信息,确定任务卸载总时延;
[0094]
基于所述任务卸载总时延和任务类型,确定任务完成的任务分配效用;
[0095]
利用进化算法,确定在满足所述候选执行者执行卸载任务的任务数据量小于候选执行者可用存储资源条件下,任务分配效用最大的卸载决策。
[0096]
具体的,考虑任务分配过程不同的阶段,可以将任务分配过程分为3部分,分别为任务的传输(任务卸载到目标节点和从目标节点返回结果)过程,任务的排队(任务在目标节点等待被处理)过程和任务的执行(目标节点处理任务)过程。基于上述过程分别对应建立任务传输模型,任务排队模型和任务执行模型。
[0097]
在计算时每一个候选执行者(任意一节点i)的资源分配信息包括:计算资源v
i
,储存资源m
i
,当前任务队列和运算能力sp
i

[0098]
位置信息包括:当前位置坐标(l
xi
,l
yi
),移动速度v
i
,目标移动方向d。其中,目标移
动方向d当候选执行者为终端节点时用于辅助确定与该终端节点最近的边缘节点。
[0099]
节点类型信息x
i
(x
i
=0表示是终端节点,如车辆,x
i
=1表示是边缘节点)。
[0100]
对于任务s
ij
(边缘节点i的第j个任务),参数包括:任务类型θ
ij
,任务开始时间t
sj
,任务截止时间t
ej
,任务执行开销w
j
,任务数据量m
j
,任务来源节点u
j
。基于本发明提供的方法确定的任务目标节点记为o
j

[0101]
考虑车辆与边缘节点的通信,认为在无线传输时为瑞利衰落信道,任务由节点i到k的无线传输速率为r
i,k

[0102]
其中,接收功率为p
ri,k
,w为信道带宽;n0为高斯白噪声功率;p
i
为发送功率;h为常数;d
i,k
为节点i到k的距离。
[0103]
d
i,k
为节点i到节点k的位置坐标之差:
[0104][0105]
若确定任务分配节点为i,任务目标节点o
j
,任务j的无线传输时延为t
rw
(i,o
j
),
[0106]
任务传输过程若为边缘节点有线传输,满足:r
i,k
=r
l

[0107]
任务j的有线传输时延,用于两个边缘节点:
[0108]
上式中,为节点为i至节点o
j
的有线传输网络跳数。
[0109]
若o
j
为边缘节点,任务传播时间为t
rj
,t
rj
=t
rl
(i,o
j
);
[0110]
若o
j
为车载终端,任务传播时间为t
rj

[0111]
上式中,为离i节点最近的边缘节点。
[0112]
当任务分配到目标节点上,如果目标节点上存在尚未完成的任务,那么任务需要进入任务队列进行排队,这将产生排队时延。任务的排队规则将综合考虑任务的截止时间和类型。记任务排队时间为t
qj

[0113]
需要说明的是,任务排队可以根据实际情况进行设置,如设置于任务类型和任务数据量有关,具体可根据实际情况进行调整,本发明对此不做限定。
[0114]
在完成排队之后,任务将被执行,任务执行时间为t
cj

[0115]
式中,w
j
为任务的执行开销,sp
oj
为任务目标节点o
j
的运算能力。
[0116]
在任务分配节点获取候选执行者的状态信息之后,基于待卸载任务信息和候选执行者的状态信息,基于上述任务传播时间、任务排队时间和任务执行时间的计算规则,确定任务卸载总时延t
j

[0117]
由于边缘节点处于任务分配的核心位置,负责分配、传输任务,也可以执行任务。且终端节点具有较强的移动性,在此不考虑边缘节点的能耗问题,而是专注于任务的完成情况和完成效果。
[0118]
定义任务是否完成条件c
j
,c
j
由任务分配向量决定:
[0119][0120]
存储空间约束条件为:
[0121]
实际情况下,任务有可能会超过截止时间,且完成不同的任务有着不同的价值,定义任务综合完成任务分配效用:
[0122][0123]
其中,θ
ij
用于判断任务j是否为第i类(设定共γ类),d
j
为权值:
[0124]
综上所述,需要求解的最优化模型为:
[0125]
目标函数:
[0126]
约束条件:
[0127]
利用进化算法,确定满足候选执行者执行卸载任务的任务数据量小于候选执行者可用存储资源条件下,任务分配效用最大的卸载决策。
[0128]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的计算资源、实时状态、移动性,以及任务的传输时间、排队时间、执行时间等,合理、准确地描述了任务分配的过程,并提出任务分配效用来评估任务分配效果。基于任务卸载总时延,以及任务卸载方案对应的任务分配效用和存储资源使用情况,利用进化算法确定任务分配效用最大的卸载决策,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
[0129]
可选的,根据本发明提供的边端协同计算卸载方法,所述基于所述待卸载任务信息和所述候选者的状态信息,确定任务卸载总时延,具体包括:
[0130]
确定卸载至候选执行者,基于所述待卸载任务信息和所述候选执行者的状态信息确定任务传输时间、任务排队时间、任务运行时间和任务回传时间;
[0131]
基于所述任务传输时间、任务排队时间、任务运行时间和任务回传时间确定任务卸载总时延。
[0132]
具体的,考虑任务的卸载方式,分为本地卸载(任务分配节点执行任务),边缘节点卸载,终端节点卸载。
[0133]
任务本地卸载时,任务卸载总时延t
j
包括任务排队时间t
qj
,任务运行时间t
cj

[0134]
t
j
=t
qj
+t
cj
[0135]
边缘节点卸载或终端节点卸载时(任务卸载至候选执行者),任务卸载总时延t
j
包括:任务传输时间t
rj
,任务排队时间t
qj
,任务运行时间t
cj
和任务回传时间t
rj
'。
[0136]
t
j
=t
rj
+t
qj
+t
cj
+t
rj
'
[0137]
由于终端位置在移动网络中并不固定,任务回传时间t
rj
'与任务传输时间t
rj
的计算方法相同,但终端节点的位置可能发生改变,回传时仍旧是将任务发送给最近的目标边缘节点,边缘节点再转发任务给任务分配节点,回传时间需重新计算。具体的计算方法在此不再赘述。
[0138]
在确定卸载至候选执行者之后,基于所述待卸载任务信息和所述候选执行者的状态信息确定任务传输时间t
rj
,任务排队时间t
qj
,任务运行时间t
cj
和任务回传时间t
rj
',进一步求和确定任务卸载总时延t
j

[0139]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的计算资源、实时状态、移动性,以及任务的传输时间、排队时间、执行时间等,合理、准确地描述了任务分配的过程,并提出任务分配效用来评估任务分配效果。基于任务传输时间,任务排队时间,任务运行时间和任务回传时间之和确定任务卸载总时延,以及任务卸载方案对应的任务分配效用和存储资源使用情况,利用进化算法确定任务分配效用最大的卸载决策,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
[0140]
可选的,根据本发明提供的边端协同计算卸载方法,所述基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策,具体包括:
[0141]
基于待卸载任务信息和所述所有候选执行者的状态信息,利用粒子群算法,确定卸载决策。
[0142]
具体的,粒子群优化算法源于对鸟群捕食的行为研究,是通过群体中个体之间的协作和信息共享来寻找最优解。
[0143]
在本发明中,基于待卸载任务信息和所述所有候选执行者的状态信息,利用粒子群算法,确定卸载决策。
[0144]
其中,粒子群算法的适应度函数为:
[0145]
在本发明中,基于待卸载任务信息和所述所有候选执行者的状态信息,利用粒子群算法,确定卸载决策。
[0146]
需要说明的是,粒子群算法的具体流程及程序可根据实际情况进行调整,本发明对此不做限定。
[0147]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的计算资源、实时状态、移动性,以及任务的相关参数,合理、准确地描述了任务分配的过程,并定义任务完成效用对任务完成情况进行评估,得到目标函数。基于任务传输时间,任务排队时间,任务运行时间和任务回传时间之和确定任务卸载总时延,以及任务卸载方案对应的任务分配效用和存储资源使用情况,利用粒子群算法确定任务分配效用最大的卸载决策,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有
目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
[0148]
可选的,根据本发明提供的边端协同计算卸载方法,所述基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策,具体包括:
[0149]
基于待卸载任务信息和所述所有候选执行者的状态信息,利用改进的量子粒子群算法,确定卸载决策;
[0150]
其中,所述改进的量子粒子群算法中,粒子位置与所述候选执行者位置信息映射关联。
[0151]
具体的,针对任务分配问题,基于待卸载任务信息和所述所有候选执行者的状态信息,利用改进的量子粒子群算法,确定卸载决策。
[0152]
本发明提出一种基于改进的量子粒子群算法的任务分配求解策略,该改进的量子粒子群算法相比经典粒子群算法,全局搜索能力更强,且适合处理离散问题。
[0153]
在改进的量子粒子群算法中,假设粒子数为m,那么目标是需要求解一个m维的向量使适应度函数的取值尽可能大。粒子的位置更新公式满足:
[0154][0155]
其中:p
i
(t)=φpbest(t)+(1

φ)gbest(t);l
i
(t)=2β|mbest(t)

x
i
(t)|;
[0156]
以上几式中,φ,u为[0,1]上均匀分布的随机数,β为收缩

扩张因子,用来控制粒子的收敛速度,一般选取由1线性递减至0.5。
[0157]
式中的正负号取正与负的概率均为50%。gbest(t)为第t次迭代的全局最优位置,mbest(t)为第t次迭代的平均最优位置。mbest(t)的计算如下:
[0158][0159]
综合以上几式得到位置更新公式:
[0160][0161][0162]
在量子粒子群算法中,粒子的位置变化不取决于粒子本身的速度,而是根据平均位置和最优位置进行演化,这样可以增强粒子的全局搜索能力,并且通过控制β因子,算法仍可以有较快的收敛速度。
[0163]
如果任务排队方案是唯一的,那么任务分配向量将确定目标函数:
[0164][0165]
为了处理求解的离散问题,考虑每个设备的位置坐标,将量子粒子群算法中的粒子位置设为连续的实数,含义为位置坐标,距离此位置最近的设备执行该任务(粒子位置与所述候选执行者位置信息映射关联)。适应度函数为:
[0166][0167]
以具体的任务分配流程应用于车联网为例对本发明的详细方案进行说明:
[0168]
(1)任务分配在边缘节点上执行,当一个任务到达一个边缘节点后,如果该任务属于非常紧急的任务,如实时告警任务,则该任务将被抢占式调度,即直接在该节点上执行,否则,该任务将加入任务分配队列之中,等待统一分配。在某一时刻t,边缘节点获取一系列任务分配队列,输入场景中的车辆与边缘节点信息,初始化粒子群算法相关参数,准备对队列中的所有任务执行任务分配。
[0169]
需要说明的是,在任务调度的过程中,可以定义任务的类型,基于任务的类型确定任务的紧急程度,确定是否需要插队优先处理,以及是否需要保证在本地卸载,具体的任务分配规则可根据实际情况进行调整,本发明对此不做限定。
[0170]
(2)根据待分配任务队列生成改进的量子粒子群算法中粒子的初始位置矩阵与初始速度矩阵。
[0171]
(3)使用改进的量子粒子群算法进行循环迭代求解。在每次循环中,更新粒子、种群的最大适应度与最大适应度位置。在适应度函数的计算中,需要遵循任务排队规则。然后,根据迭代公式对粒子位置进行更新。
[0172]
(4)改进的量子粒子群算法循环结束,得出最大适应度函数、最优任务分配向量,边缘节点根据该任务分配向量执行任务分配。
[0173]
本发明提供的边端协同计算卸载方法,充分考虑移动网络中终端节点和边缘节点的计算资源、实时状态、移动性,以及任务的相关参数,合理、准确地描述了任务分配的过程,并定义任务完成效用对任务完成情况进行评估,得到目标函数。基于任务传输时间,任务排队时间,任务运行时间和任务回传时间之和确定任务卸载总时延,以及任务卸载方案对应的任务分配效用和存储资源使用情况,针对粒子群算法解决离散问题的不足及易局部收敛的问题,提出一种改进的量子粒子群算法确定任务分配效用最大的卸载决策,能够有效对边端协同车联网任务分配策略进行求解,相对经典粒子群算法和贪心算法有着更好的综合性能,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
[0174]
进一步,结合仿真实例对本发明进行说明:
[0175]
仿真实验模拟场景为双向四车道直行马路,在马路两侧分布着边缘节点,车辆将接入距离其最近的边缘节点,马路上车辆的分布服从随机分布,因此附近车辆的计算能力也是随机值。边缘节点通信范围覆盖半径是300m,马路的宽度为15m。边缘节点的计算能力设为1

4ghz,车辆的计算能力设为0.2

1ghz,车辆的行驶速度设定为40

60km/h,仿真时均随机取值。边缘节点和车辆的发射功率为24dbm,环境噪声设为

110dbm,带宽为300m。有线传输带宽设为300m。待分配的任务的属性包括任务类型、开始时间、截止时间、数据量、运行开销、权值等参数。权值主要用衡量不同任务的重要性,以便我们完成对任务综合完成质量的计算。使用运行周期数cycles来衡量任务的运行开销,这对应cpu的时钟频率和运行周期,cpu的频率越高,任务的完成时间越短。
[0176]
在仿真场景中,存在1个云服务器,10个边缘节点以及若干个车辆,和若干个待分配的任务。仿真实验使用的相关车联网实时任务数据如表1所示:
[0177]
表1仿真使用车联网实时任务数据
[0178][0179][0180]
仿真的对比方法为:基于粒子群算法的边端协同任务分配方法,基于贪心算法的边端协同任务分配方法,粒子群算法的迭代次数为200,取每种算法运行50次的平均值进行对比。
[0181]
图4为本发明提供的任务数变化条件下任务完成效用对比柱状图,如图4所示,随任务数变化使用不同的算法求解任务分配策略时,图中greedy为基于贪心算法的边端协同任务分配方法,pso为基于粒子群算法的边端协同任务分配方法,qpso为本发明提出的基于改进量子粒子群算法的边端协同任务分配方法,可以看出随着任务数的增加,任务完成率呈现下降趋势,这是由于任务越多,整个网络的压力越大导致。基于qpso的边端协同任务分配算法相比对比算法,包括基于pso的边端协同任务分配算法以及基于贪心的边端协同任务分配算法,均有着明显的优势。这意味着关键任务的完成率更高、时延更低,能够更可靠地完成任务。
[0182]
图5为本发明提供的车辆数变化条件下任务完成效用对比柱状图,如图5所示,随着车辆数变化使用不同的算法求解边端协同任务分配模型时,随着车辆数的增加,更多的车辆加入到任务分配协同之中,综合任务完成率呈现上升趋势。基于qpso的边端协同任务分配算法相比对比算法,基于pso的边端协同任务分配算法以及基于贪心的边端协同任务分配算法,在任务分配效用方面有着明显的优势。
[0183]
综上所述,本发明提出的基于边端协同的车联网实时任务分配方法,能够有效地完成任务分配,适合应用于车联网场景下的任务分配问题。
[0184]
图6为本发明提供的边端协同计算卸载系统结构示意图,如图6所示,本发明还提供一种边端协同计算卸载系统,包括:
[0185]
信息获取单元610,用于任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,所述任务分配节点为边缘节点;所述候选执行者为与所述任务分配节点关联的边缘节点和终端节点;
[0186]
卸载决策单元620,用于基于待卸载任务信息和所述所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,所述卸载决策满足所述候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;
[0187]
任务卸载单元630,用于基于所述卸载决策,进行边端协同计算任务卸载;其中,所述状态信息包括:节点类型信息、位置信息和资源分配信息。
[0188]
具体的,以车联网为例对本发明提供的边端协同计算卸载方法进行说明,对于任务在车联网中完整的分配过程可以按照顺序理解为:车载终端设备将任务首先卸载到距离其最近的边缘节点,边缘节点以一定时间间隔,将所有待分配的任务分配给可以选择的设备。目标节点可以为边缘节点也可以为车载终端。任务完成后,以同样的方式将完成后的任务传输到车载终端设备处。
[0189]
在车联网中任一边缘节点均可以作为任务分配节点,候选执行者为与任务分配节点关联的边缘节点和终端节点,信息获取单元610,用于任务分配节点获取当前移动网络中所有候选执行者的状态信息。
[0190]
其中,状态信息包括:节点类型信息、位置信息和资源分配信息。节点类型信息用于表示候选执行者是边缘节点还是终端节点。位置信息用于表示候选执行者的当前位置、目标移动方向以及移动速度。资源分配信息用于表示候选执行者能够分配给执行待卸载任务的当前可用资源,可包括:候选执行者的计算资源、存储资源、当前任务队列、信道带宽以及接收频率等信息。
[0191]
需要说明的是,由于在任务传播过程中终端节点(如车辆)处于移动状态,网络拓扑会发生改变,候选执行者可以为在任务分配节点周围一定范围内(如在任务分配节点作为圆心,半径为50m范围内)的所有边缘节点和终端节点。或者,还可以设置一定的接入筛选规则,满足接入条件的节点才可以作为候选执行者。具体的候选执行者确定方法可根据实际情况进行调整,本发明对此不做限定。
[0192]
其次,终端节点在卸载任务时,将计算任务卸载至离终端最近的边缘节点,可能会在瞬时出现终端节点与多个边缘节点之间的距离相同的情况,此时基于终端节点的运动方向及速度确定与该终端节点距离越来越近的边缘节点作为计算卸载的目标节点。除此之外,还可以采取距离限制,在确定终端节点与边缘节点之间的距离小于预设值时才将计算任务卸载至边缘节点,若不满足要求,将计算任务在终端本地执行。具体的终端节点向边缘节点卸载任务的规则可根据实际情况进行调整,本发明对此不做限定。
[0193]
除此之外,任务分配节点获取候选执行者相关信息,进行待卸载任务的卸载的方法可以是在移动网络中,边缘节点与终端节点均周期性的相关联的节点发送的状态信息。或者是边缘节点(任务分配节点)主动向与其相关联的候选执行者发送卸载请求,候选执行者接收到卸载请求后返回的状态信息。具体的信息获取方法可根据实际情况进行调整,本发明对此不做限定。
[0194]
进一步,可以理解的是,获取当前移动网络中所有候选执行者的状态信息之后,还可以基于候选执行者的资源分配信息进行候选执行者的筛选,剔除掉计算资源和存储资源等不足以满足任务卸载需求的候选执行者。或基于候选执行者的位置信息,根据候选执行者的当前位置,运动方向以及运动速度,剔除候选执行者(终端)短时间内会解除与当前任务分配节点的关联关系的候选执行者。在本发明具体实施时,筛选规则可根据实际情况进行设定,本发明对此不做限定。
[0195]
卸载决策单元620,用于对于每一个任务分配节点的待卸载任务信息和对应该任务分配节点的所有候选执行者的状态信息,可以利用进化算法,确定卸载决策。待卸载任务
信息用于表示需要卸载任务的相关信息,可包括:任务的类型,任务的时延要求(如任务开始时间、任务截止时间)、任务的计算资源需求(如任务执行开销、任务数据量)以及任务来源节点。
[0196]
其中,卸载决策满足候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件。
[0197]
需要说明的是,在发明中进化算法可以为粒子群算法、蚁群算法、差分进化算法或麻雀搜索算法等,其目的在于将候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源作为约束调整,能够有效保证任务卸载到目标节点之后能够有效的被执行,在此基础上,保证任务分配效用达到最大的条件,确保卸载决策为可行条件下的最优解。使用的具体算法和实现的手段,本发明对此不做限定。
[0198]
例如:在实际应用时,车联网中所有的车载终端设备(终端节点)与边缘节点的集合抽象成一个矩阵:
[0199][0200]
在矩阵中,n个节点均为能够分配任务的终端设备或边端节点。
[0201]
假设在选取边缘节点s1作为任务分配节点,设有该任务分配节点存在n个待分配任务,即将任务用向量表示为
[0202]
基于与该任务分配节点相关联的候选执行者的状态信息,在候选执行者中选取目标执行者执行待分配任务,任务分配向量(卸载决策)表示为:
[0203]
其中,节点o1至o
n
,对应执行上述任务s1至s
n

[0204]
任务卸载单元630,用于基于卸载决策单元620确定的卸载决策,进行边端协同计算任务卸载,将待分配任务卸载给目标执行者。
[0205]
需要说明的是,上述对本发明提供的边端协同计算卸载方法的说明是以车联网的理想构架状态为例,在实际应用过程中,边缘节点的排布方式可根据实际情况进行调整,无需一定以固定间隔设置。除此之外,该方法还可以广泛的适用于其他类型的移动网络中。尤其是能提高终端节点处于高速运动状态下的任务处理的实时性。具体的使用背景可根据实际情况进行调整,本发明对此不做限定。
[0206]
本发明提供的边端协同计算卸载系统,充分考虑移动网络中终端节点和边缘节点的特性,通过利用网络中终端的资源,使边缘和终端节点共同完成海量的任务,实现终端节点与边缘节点、终端节点与终端节点以及边缘节点与边缘节点之间协作式应用,有效地对实时任务进行合理分配,能够更加高效地处理各种任务,且任务的分配具有目的性,进而提升移动网络的安全性和可靠性,提高任务的完成效率。
[0207]
需要说明的是,本发明提供的边端协同计算卸载系统用于执行上述边端协同计算卸载方法,其具体的实施方式与方法实施方式一致,在此不再赘述。
[0208]
图7为本发明实施例提供的电子设备的实体结构示意图,如图7所示,所述电子设
备可以包括:处理器(processor)710、通信接口(communication interface)720、存储器(memory)730和通信总线(bus)740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行上述边端协同任务分配方法,包括:任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,任务分配节点为边缘节点;候选执行者为与任务分配节点关联的边缘节点和终端节点;基于待卸载任务信息和所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,卸载决策满足候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;基于卸载决策,进行边端协同计算任务卸载;其中,状态信息包括:节点类型信息、位置信息和资源分配信息。
[0209]
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0210]
另一方面,本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的边端协同任务分配方法,包括:任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,任务分配节点为边缘节点;候选执行者为与任务分配节点关联的边缘节点和终端节点;基于待卸载任务信息和所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,卸载决策满足候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;基于卸载决策,进行边端协同计算任务卸载;其中,状态信息包括:节点类型信息、位置信息和资源分配信息。
[0211]
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的以执行边端协同任务分配方法,包括:任务分配节点获取当前移动网络中所有候选执行者的状态信息;其中,任务分配节点为边缘节点;候选执行者为与任务分配节点关联的边缘节点和终端节点;基于待卸载任务信息和所有候选执行者的状态信息,利用进化算法,确定卸载决策;其中,卸载决策满足候选执行者执行卸载任务的任务数据量小于候选执行者的可用存储资源时,任务分配效用达到最大的条件;基于卸载决策,进行边端协同计算任务卸载;其中,状态信息包括:节点类型信息、位置信息和资源分配信息。
[0212]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0213]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0214]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1