CN112860337B - 在多接入边缘计算中卸载依赖任务的方法及系统 - Google Patents

在多接入边缘计算中卸载依赖任务的方法及系统 Download PDF

Info

Publication number
CN112860337B
CN112860337B CN202110119569.XA CN202110119569A CN112860337B CN 112860337 B CN112860337 B CN 112860337B CN 202110119569 A CN202110119569 A CN 202110119569A CN 112860337 B CN112860337 B CN 112860337B
Authority
CN
China
Prior art keywords
task
execution
optimal solution
local
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110119569.XA
Other languages
English (en)
Other versions
CN112860337A (zh
Inventor
翟临博
马淑月
宋书典
杨峰
赵景梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Normal University
Original Assignee
Shandong Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Normal University filed Critical Shandong Normal University
Priority to CN202110119569.XA priority Critical patent/CN112860337B/zh
Publication of CN112860337A publication Critical patent/CN112860337A/zh
Application granted granted Critical
Publication of CN112860337B publication Critical patent/CN112860337B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了在多接入边缘计算中卸载依赖任务的方法及系统,系统初始化,获取当前用户及其任务的实时信息;根据各个任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定任务执行的优先级;生成各个任务的初始接入点和执行点;寻找IMOPSOQ方法的帕累托最优解、局部最优解和全局最优解;优化卸载过程,当迭代次数达到给定的最大值,或者一段时间内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点。本发明研究了在具有多依赖任务的多用户的边缘计算系统中,同时考虑任务卸载的总完成时间和执行成本,该方法更能满足现实场景中任务卸载的挑战,且复杂度低,适用性好。

Description

在多接入边缘计算中卸载依赖任务的方法及系统
技术领域
本申请涉及移动通信技术领域,特别是涉及在多接入边缘计算中卸载依赖任务的方法及系统。
背景技术
本部分的陈述仅仅是提到了与本申请相关的背景技术,并不必然构成现有技术。
近年来,随着物联网和移动通信技术的快速发展,电子健康、增强/虚拟现实和人脸识别等计算密集型应用也得到广泛使用。这类应用的统一特性是计算量大且对延迟敏感。与远程云服务器相比,本地设备的硬件条件相对有限,很难满足新兴应用的需求。远程云有大量的计算和存储资源,可以运行计算密集型应用。但在远程云执行,不可避免的需要在远程云和本地设备之间进行大量的数据传输,造成难以预测的通信延迟。因此,本地计算和云计算都无法满足新兴应用的需求。
多接入边缘计算(MEC)在用户附近部署大量的计算和存储资源(路由器,基站等),使得一部分数据无需上传至云服务器,在边缘服务器进行数据过滤和处理即可。MEC缩短了设备的响应时间,减少了设备到远程云服务器的数据流量,节省了大量的能源消耗。因此,多接入边缘计算是一种应对海量数据分析、低延迟应用等的很有前途的技术。
现有的关于多接入边缘计算的研究大多是针对独立任务的研究,实际上,子任务在哪执行和子任务执行的优先级都会影响子任务执行的性能。如果我们在执行这些应用时不考虑子任务执行点和子任务依赖关系可能导致应用程序无法成功执行。
发明内容
为了解决现有技术的不足,本申请提供了在多接入边缘计算中卸载依赖任务的方法及系统;研究了在多接入边缘计算系统中多用户多依赖任务的卸载,优化目标是最小化任务的完成时间和执行成本,进而在满足用户的QoS需求的同时提高任务卸载率。
第一方面,本申请提供了在多接入边缘计算中卸载依赖任务的方法;
在多接入边缘计算中卸载依赖任务的方法,包括:
S101:系统初始化,获取所有待执行任务的实时信息;所述所有待执行任务彼此之间存在依赖关系;
S102:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;
S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;
S104:生成各个任务的初始接入点和执行点;
S105:寻找帕累托最优解、局部最优解和全局最优解;
S106:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;
S107:判断是否达到终止条件,当迭代次数达到给定的最大值,或者设定时间范围内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点;按照最优解中各个任务的接入点和执行点,完成本地设备的若干个相互依赖的待执行任务的卸载过程;否则,重复步骤S105~S107。
第二方面,本申请提供了在多接入边缘计算中卸载依赖任务的系统;
在多接入边缘计算中卸载依赖任务的系统,包括:
初始化模块,其被配置为:系统初始化,获取所有待执行任务的实时信息;所述所有待执行任务彼此之间存在依赖关系;
适应度函数确定模块,其被配置为:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;
任务优先级确定模块,其被配置为:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;
任务接入点和执行点生成模块,其被配置为:生成各个任务的初始接入点和执行点;
最优解计算模块,其被配置为:寻找帕累托最优解、局部最优解和全局最优解;
优化模块,其被配置为:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;
判断模块,其被配置为:判断是否达到终止条件,当迭代次数达到给定的最大值,或者设定时间范围内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点;按照最优解中各个任务的接入点和执行点,完成本地设备的若干个相互依赖的待执行任务的卸载过程,否则,返回任务接入点和执行点生成模块。
第三方面,本申请还提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述第一方面所述的方法。
第四方面,本申请还提供了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成第一方面所述的方法。
第五方面,本申请还提供了一种计算机程序(产品),包括计算机程序,所述计算机程序当在一个或多个处理器上运行的时候用于实现前述第一方面任意一项的方法。
与现有技术相比,本申请的有益效果是:
研究了具有多依赖任务的多用户的边缘计算系统。优化目标是在给定约束条件下,用户如何进行卸载决策及卸载调整,将该用户的多个相互依赖的子任务分别放到本地设备、候选边缘服务器、远程云服务器执行,以同时降低移动边缘计算任务卸载的总完成时间和执行成本。
以往对于多接入边缘计算场景下的任务卸载大多只考虑独立任务单目标的研究,很难符合实际的任务卸载情况且得到的效果并不明显。本发明研究了在多接入边缘计算中多应用多任务的卸载,同时最小化任务的总完成时间和完成成本两个属性,设计了一个关于时间和成本的效果函数,并最小化这个函数。通过基于队列的改进多目标粒子群算法(IMOPSOQ)进行多次迭代优化,最终得到任务卸载的最佳的接入点和执行点,提高任务卸载的准确率。该发明很好的权衡了任务完成时间和执行成本之间的关系,满足了用户的QoS需求,且复杂度低,适用性好。
本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1为本发明的移动边缘计算场景示意图;
图2(a)和图2(b)为本发明的两个应用程序的任务图示例;
图3为本发明所述方法的流程图。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
本实施例提供了在多接入边缘计算中卸载依赖任务的方法;
在多接入边缘计算中卸载依赖任务的方法,包括:
S101:系统初始化,获取所有待执行任务的实时信息;所述所有待执行任务彼此之间存在依赖关系;
S102:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;
S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;
S104:生成各个任务的初始接入点和执行点;
S105:寻找帕累托最优解、局部最优解和全局最优解;
S106:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;
S107:判断是否达到终止条件,当迭代次数达到给定的最大值,或者设定时间范围内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点;按照最优解中各个任务的接入点和执行点,完成本地设备的若干个相互依赖的待执行任务的卸载过程;否则,重复步骤S104~S107。
作为一个或多个实施例,所述S101:系统初始化,获取所有待执行任务的实时信息;其中,系统初始化包括:
本地设备、边缘服务器和远程服务器的资源限制;具体包括:本地设备一次只能运行一个任务;边缘服务器服务器具有多个处理器,一次能够运行多个任务;远程云服务器具有无限的计算能力,且能够服务用户所选的整个区域,所以任何任务都能够被卸载到远程云服务器执行,且远程云服务器能够同时执行无限多个任务。
进一步地,任务卸载决策变量Ok,q,z,其中k表示应用程序,q表示任务,z表示决策方式。z={1,2,3,4},z=1表示任务在本地设备上执行,z=2表示任务卸载到边缘服务器上执行,z=3表示任务由边缘服务器卸载到另一个边缘服务器执行,z=4表示任务由边缘服务器卸载到远程服务器执行。
示例性的,O1,1,1=1表示应用程序1的第1个任务在本地设备上执行,由于任务是原子的,每个任务只能在一个设备上执行。即当O1,1,1=1时O1,1,z=0(z=2,3,4)。
进一步地,所述获取本地设备的所有待执行任务的实时信息,具体包括:
用户的地理位置信息,任务需要传输的数据长度及任务执行所需的CPU周期,以及执行任务所需的成本等。
作为一个或多个实施例,所述S102:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;具体包括:
决策方式1:当本地资源充足时,任务在本地设备上执行;
决策方式2:当本地设备被占用时,且本地设备最近的边缘服务器可用时,将任务卸载到距离本地设备最近的边缘服务器上执行;
决策方式3:当本地设备被占用,且距离本地设备最近的边缘服务器也被占用时,距离本地设备最近的边缘服务器将任务卸载到另外一个边缘服务器上执行;
决策方式4:当本地设备和边缘服务器都不可用时,将任务卸载到远程服务器上执行;
结合四种决策方式,计算任务卸载的总完成时间和总执行成本;最小化任务卸载的总完成时间和总执行成本。
示例性的,适应度函数如下:
T={T1,T2} (1)
S.t.
Figure BDA0002921487760000081
Figure BDA0002921487760000082
其中,T1表示最小化移动边缘计算任务卸载的总完成时间,由于结果可视化等原因应用程序的最后一个任务的执行结果需返回本地后才表示该应用已完成即最小化k个应用程序的最后一个任务的完成时间;T2表示最小化任务的执行成本。FTk,Q local表示任务Xk,Q在本地的最早完成时间;Tk,Q,res edge表示任务Xk,Q在决策方式2下执行,执行结果最早返回到本地设备d的时间;Tk,Q,res ed-ed表示任务Xk,Q在决策方式3下执行,执行结果最早返回到本地设备d的时间;Tk,Q,res cloud表示任务Xk,Q在决策方式4下执行,执行结果最早返回到本地设备d的时间;Ok,Q,1,Ok,Q,2,Ok,Q,3,Ok,Q,4分别表示4种决策变量。Ck,q local,Ck,q edge,Ck,q ed-ed,Ck,q cloud分别表示任务Xk,q在决策1,2,3,4下的执行成本。
应理解的,本系统不只考虑任务在本地设备执行,或将任务全部卸载,而且研究了任务在本地设备、边缘服务器和远程服务器之间的调度,同时考虑了最小化任务的完成时间和执行成本两个目标,定义了最小化任务完成时间和执行成本卸载多依赖任务的问题(OMDT-TC),并设计了一个基于队列的改进多目标粒子群算法(IMOPSOQ)来解决这个问题。
应理解的,本系统考虑了在多接入边缘计算中依赖任务的卸载。现有的关于多接入边缘计算中的研究大多针对独立任务的研究,而现实生活中一个任务大多有几个独立的子任务组成,所以很难得到应用。同一应用程序的不同的任务之间的依赖关系可用有向无环图(DAG)表示,如图2(a)和图2(b)所示。图2(a)和图2(b)描述了两个不同应用程序的任务图,其中应用程序1由7个任务组成,且只有在任务X1,1完成之后才能执行任务X1,2和任务X1,3。在任务X1,2和任务X1,3完成之前不能执行任务X1,4,X1,5,X1,6。类似的,在任务X1,4,X1,5,X1,6完成之后才能执行任务X1,7,任务X1,7执行完成后即应用程序1完成。应用程序2由11个任务组成,任务之间的依赖关系不同于应用程序1,类似应用程序1我们可以得到应用程序2的执行过程。由于不同应用程序之间的任务是相互独立的,所以不同应用程序可以并行执行。
本系统考虑了任务在4种决策方式下的任务卸载模型。决策1当本地设备资源充足时任务在本地设备上执行;决策2当本地设备被占用,而附近边缘服务器可用时任务可卸载到边缘服务器上执行;决策2下接入边缘服务器不可提供服务时选用决策3,任务由接入边缘服务器卸载到另一个边缘服务器执行;当本地设备、边缘服务器都不可用时执行决策4,任务由边缘服务器卸载到远程服务器执行。具体如下:
(1)任务本地执行
如果第k个应用程序的第q个任务在本地执行,则任务q只有执行时间Tk,q local。且任务的执行时间Tk,q local=cycle1,k,q*t。由于任务q只有在它的所有前序任务完成之后才可以执行它,定义任务q的前序任务集合为preXk,q,则任务Xk,q在本地设备d上的就绪时间为:
Figure BDA0002921487760000091
其中FTk,j local表示任务Xk,j在本地设备上的完成时间。Tk,j,res edge,Tk,j,res ed-ed,Tk,j,res cloud分别表示任务在决策方式2,3,4下任务执行结果由边缘服务器服务器传输到本地设备的时间。因为若任务q的前序任务在本地设备执行,则结果无需回传;若任务q的前序任务由其他3种决策方式执行,则需等执行结果回传到本地设备后任务q才可执行。
因此任务Xk,q的最早完成时间为:
Figure BDA0002921487760000101
任务Xk,q在本地执行的成本为:
Figure BDA0002921487760000102
其中cex d(Xk,q)任务Xk,q在本地设备d上的执行开销。由于任务在本地执行只有执行开销,所以任务在本地执行的成本即为cex d(Xk,q)。
(2)任务卸载到边缘服务器执行
若任务Xk,q由本地设备卸载到边缘服务器服务器执行,则需要考虑数据由本地设备发送到边缘服务器服务器的时间Tk,q,send edge,任务在边缘服务器服务器的执行时间Tk,q edge,任务执行结果由边缘服务器服务器传回本地设备的时间Tk,q,rec edge。定义任务Xk,q的长度为Sk,q,执行后的结果的长度为Sk,q’,本地设备和边缘服务器的无线传输速率为Vd,e。则任务Xk,q发送任务时间,执行任务时间和结果回传时间分别为Tk,q,send edge=Sk,q/Vd,e,Tk,q edge=cycle2,k,q*t,Tk,q,res edge=Sk,q’/Vd,e
任务Xk,q只有在其它三种决策方式下的所有前序任务已经完成且结果已经传回本地设备时才可以将其发送至边缘服务器服务器,因此任务Xk,q在本地设备的最早就绪时间为
Figure BDA0002921487760000103
任务Xk,q的最早可发送时间为:
Figure BDA0002921487760000111
其中AVk,q,a’表示本地设备到边缘服务器a信道的可用时间。
用户上传任务Xk,q的数据到边缘服务j的传输速率可以表示为:
Figure BDA0002921487760000112
其中Wk,q(HZ)为任务Xk,q所需的带宽,pk表示用户k的传输速功率,用户可根据其最大传输功率进行配置。hk,j为移动用户k到边缘服务器j的信道增益,N0为噪声功率。若B(HZ)为系统带宽,则最多允许同时传输任务数为Num=B/(minWk,q)。
任务Xk,q的最早到达时间为:
Figure BDA0002921487760000113
则任务Xk,q在边缘服务器a的最早完成时间为:
Figure BDA0002921487760000114
任务Xk,q的执行结果最早返回本地设备的时间为:
Figure BDA0002921487760000115
且任务Xk,q由本地设备卸载到边缘服务器服务器执行的成本为:
Figure BDA0002921487760000116
其中ctx de(Xk,q)表示将任务Xk,q的输入数据包括系统参数、输入数据和任务代码等从本地设备d上传至边缘服务器的e的传输开销,cex e(Xk,q)表示任务Xk,q在边缘服务器e执行的开销,ctx de(Xk,q)’表示任务Xk,q的执行结果由边缘服务器e回传至本地设备d的开销。
(3)任务由边缘服务器服务器卸载到边缘服务器服务器
若任务Xk,q卸载到边缘服务器a后发现边缘服务器a过载,可以继续将任务Xk,q卸载到另一个可选的边缘服务器b,则任务完成时间包括任务由本地设备卸载到边缘服务器a的传输时间Tk,q,send ed-ed,由边缘服务器a传输到边缘服务器b的时间Tk,q,send2 ed-ed,在边缘服务器b的执行时间Tk,q ed-ed,执行结果由边缘服务器b传回边缘服务器a的时间Tk,q,res1 ed-ed,由边缘服务器a送回本地设备d的时间Tk,q,res2 ed-ed。定义边缘服务器间的传输速率为Ve,e。则各个时间分别为:Tk,q,send1 ed-ed=Sk,q/Vd,e,Tk,q,send2 ed-ed=Sk,q/Ve,e,Tk,q ed-ed=cycle3,k,q*t,Tk,q,res1 ed-ed=Sk,q’/Ve,e,Tk,q,res2 ed-ed=Sk,q’/Vd,e
任务Xk,q在本地设备的最早就绪时间、任务Xk,q的最早可发送时间及任务Xk,q最早到达边缘服务器a的时间与决策方式2相同,即RTk,q,local ed-ed=RTk,q,local edge;STk,q,send1 ed-ed=STk,q,send edge;STk,q,arr1 ed-ed=STk,q,arr edge
任务Xk,q由边缘服务器a发送到边缘服务器b的最早可发送时间为:
Figure BDA0002921487760000121
其中AVk,q,b’表示由边缘服务器a到边缘服务器b的信道最早可用时间。
任务Xk,q由边缘服务器a发送到边缘服务器b的最早到达时间为:
Figure BDA0002921487760000122
则任务Xk,q在边缘服务器b的最早完成时间为:
Figure BDA0002921487760000123
任务Xk,q的执行结果最早返回本地设备的时间为:
Figure BDA0002921487760000124
且任务Xk,q在决策方式3下的执行成本为:
Figure BDA0002921487760000125
其中前两项分别表示任务Xk,q的输入数据包括系统参数、输入数据和任务代码等从本地设备传输至边缘服务器a,再由边缘服务器a传至边缘服务器b的传输开销。第三项是任务Xk,q在边缘服务器b的执行开销,最后两项分别是任务Xk,q的执行结果由边缘服务器b回传至边缘服务器a和由边缘服务器a送回本地设备d的传输开销。
(4)任务由边缘服务器服务器卸载到远程云服务器
当任务Xk,q可选择的边缘服务器服务器都过载时,则任务Xk,q先由本地设备d卸载到一个邻近的边缘服务器服务器a,在由该边缘服务器服务器a卸载到远程云服务器C。该过程包括任务Xk,q由本地设备d卸载到边缘服务器服务器a的时间Tk,q,send1 cloud,由边缘服务器a经电缆传输到远程云服务器C的时间Tk,q,send2 cloud,任务Xk,q在远程云服务器C上的执行时间Tk,q cloud,任务Xk,q的执行结果由远程云服务器C传回边缘服务器服务器a的时间Tk,q,res1 cloud,再由边缘服务器服务器a传回本地设备的时间Tk,q,res2 cloud。定义从边缘服务器服务器到远程云服务器的传输速率为Ve,c。则各个时间分别为:Tk,q,send1 cloud=Sk,q/Vd,e,Tk,q,send2 cloud=Sk,q/Ve,c,Tk,q cloud=cycle4,k,q*t,Tk,q,res1 cloud=Sk,q’/Ve,c,Tk,q,res2 cloud=Sk,q’/Ve,d.
其中,任务Xk,q在本地设备的最早就绪时间、任务Xk,q的最早可发送时间及任务Xk,q最早到达边缘服务器a的时间与决策方式2相同,即RTk,q,local cloud=RTk,q,local edge;STk,q,send1 cloud=STk,q,send edge;STk,q,arr1 cloud=STk,q,arr edge
任务Xk,q由边缘服务器a发送到远程云服务器C的最早可发送时间为:
Figure BDA0002921487760000131
其中AVk,q,C’表示由边缘服务器服务器a到远程云服务器C的信道最早可用时间。
任务Xk,q由边缘服务器服务器a发送到远程云服务器C的最早到达时间为:
Figure BDA0002921487760000141
任务Xk,q的最早完成时间为:
Figure BDA0002921487760000142
且任务Xk,q的执行结果最早返回到本地设备d的时间为:
Figure BDA0002921487760000143
且任务Xk,q在决策4下的执行成本为:
Figure BDA0002921487760000144
其中
Figure BDA0002921487760000145
Figure BDA0002921487760000146
分别是任务Xk,q的输入数据包括系统参数、输入数据和任务代码等从本地设备传输至边缘服务器a,再由边缘服务器a传至远程云服务器C的传输开销。
Figure BDA0002921487760000147
表示任务Xk,q在远程云服务器C的执行开销,
Figure BDA0002921487760000148
Figure BDA0002921487760000149
分别表示任务Xk,q的执行结果由远程云服务器C传至边缘服务器a和由边缘服务器a送回本地设备d的传输开销。
作为一个或多个实施例,所述S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;具体包括:
计算每个任务允许的新的最晚完成时间;
根据每个任务允许的新的最晚完成时间,计算每个任务最晚执行时间;
按照最晚执行时间从小到大的顺序对任务进行排队,得到每个任务执行的优先级;
按照最晚执行时间从小到大的顺序,将任务放置到第一队列中;第二队列为备用队列,初始为空。
示例性的,所述S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;具体包括:
对于用户K,定义覆盖用户的边缘服务器集合为M(K)。对于每个任务,在执行过程中由于执行点和执行时间不同都会产生一个新的最晚完成时间CMk,q,则任务q允许的最晚完成时间是CMk,q和Tk,q max的最小值。CMk,q通过以下式子计算得出:
Figure BDA0002921487760000151
其中,P是任务q在应用k的后续任务集合,任务Xk,q的接入点只能从本地设备和M(K)中选择,但任务Xk,q的执行点从本地设备、边缘服务器和远程云服务器中任意选择。定义x是任务任务Xk,q的执行点,Tex x(Xk,j)为任务Xk,q在设备x执行所需的时间。当任务q为应用k的最后一个任务,即q=Q时,CMk,q即为应用k的最晚完成时间。
则任务Xk,q的最晚执行时间表示为:
Figure BDA0002921487760000152
BMk,q越小,则该任务需要越早执行。根据各个任务的最晚执行时间对任务进行排序,并将其按顺序放置到第一队列中;第二队列为备用队列,初始为空。
作为一个或多个实施例,所述S104:生成各个任务的初始接入点和执行点;具体包括:
比较第一队列和第二队列中开始任务的优先级,挑选优先级高的任务优先执行;判断任务j是否是用户k的第一个任务,若是,则任务j没有前序任务,任务j允许被直接执行;否则,判断任务j的前序任务是否完成,如果任务j的前序任务都已经完成,则执行任务j,否则,将任务j放置到第二队列中。
若任务j可执行,判断本地设备是否有正在执行的任务,由于本地设备一次只能执行一个任务,若本地设备上没有任务执行,则任务j在本地设备上执行,接入点和执行点都为本地设备;
若本地设备不可执行,则判断M(K)集合中是否有可执行的边缘服务器,若只有一个,则该边缘服务器即为任务j的接入点和执行点,若同时有多个可执行的边缘服务器,则在可选的边缘服务器中选择完成时间最早的边缘服务器作为任务j的接入点和执行点,并按决策方式2执行;
若本地设备和M(K)中都没有可执行的设备,用户k在M(K)中随机选择一个边缘服务器卸载任务,然后判断其他边缘服务器中是否有可执行的设备,如果只有一个可执行的设备,则该设备即为任务j的执行点,如果同时有多个边缘服务器可执行,则计算各个边缘服务器的完成时间,选择完成时间最早的边缘服务器作为执行点,按决策方式3执行;否则,由该接入边缘服务器作为中继,根据决策方式4将任务上传至远程服务器执行。
当第一队列和第二队列都为空时,所有应用执行完成,即一个粒子初始化结束,记录目标函数T1和T2的值。
选用目标函数(1)作为适应度函数,则T1、T2即为适应度值。且每个粒子中包含K个用户的Q个任务的执行过程,即包含各个任务的接入点和执行点。
作为一个或多个实施例,所述S105:寻找帕累托最优解、局部最优解和全局最优解;其中,寻找帕累托最优解,具体包括:
假设粒子i和j的双目标函数值分别是T1i,T2i,T1j,T2j。当且仅当T1i<T2i,且T1j<T2j时,称粒子i优于粒子j,记作i<j。若不存在粒子j<i,则称粒子i是帕累托最优的。把粒子i存到存档集(Archive)中。
作为一个或多个实施例,所述S105:寻找帕累托最优解、局部最优解和全局最优解;其中,寻找局部最优解,具体包括:
用户对任务卸载的总完成时间T1和执行成本T2的喜好程度由用户任务的完成时间约束和对成本的承受能力来决定;
对于一个时间紧急度高于设定阈值的任务来说,用户通过牺牲一部分的执行成本T2以换取更早的完成时间T1
因此,根据实际场景中的情况为目标函数T1和目标函数T2设计权重系数,可将(1)转化为:
T=η1T12T2 (26)
其中η12=1。η1和η2属于[0,1],表示任务在决策时的完成时间和执行成本的加权系数。根据(26)得到唯一的PBi t
选取个体最优粒子PBj t。多目标优化不同于单目标优化。可能目标函数T1i优于目标函数T2i,但目标函数T1j劣于T2j,所以在大多数情况下很难严格的定义哪个粒子更好一些。
作为一个或多个实施例,所述S105:寻找帕累托最优解、局部最优解和全局最优解;其中,寻找全局最优解,具体包括:
选取全局最优粒子GBj t。使用网格法从档案集中的选取GBj t。具体步骤如下:
S1051:计算档案集中的密度信息。
S10511:计算第t次迭代时目标空间的边界(minT1 t,maxT1 t)和(minT2 t,maxT2 t)。
S10512:根据以下式子计算网格的模:
Figure BDA0002921487760000171
其中M*M是要划分的网格数。
S10513:档案集中粒子j所在的网格编号可由以下式子得出:
Figure BDA0002921487760000181
其中,Int(·)是求整函数。T1 j和T2 j分别为粒子j在目标函数1和目标函数2的值。
S1052:为粒子选取全局最优粒子GBj t。为了有效的保证IMOPSOQ算法的收敛性能和帕累托解集的多样性,对于档案集中的粒子,其密度值越低,选择的概率就越大,反之,则越小。以粒子j为例。
S10521:计算Archive集中优于粒子j的子集Arj t
S10522:找出Arj t集中密度最小的粒子集合Gj t
S10523:若集合Gj t中只有一个粒子即为全局最优粒子GBj t,反之则按PBi t选取方法选出全局最优粒子GBj t
作为一个或多个实施例,所述S106:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;具体包括:
根据粒子j、个体最优粒子PBj t和全局最优粒子GBj t更新粒子j。为防止算法陷入局部最优,我们设计了一个转移概率对粒子的更新过程进行了优化。转移概率如下:
Figure BDA0002921487760000191
其中,Proj
Figure BDA0002921487760000192
分别表示粒子维持自己先前的执行方式、向自身历史最佳执行方式逼近和向群体最佳执行方式逼近的概率;适应度值T1和T2的值越好,该任务向该解转移的概率越大,反之越小。
更新Archive集:进化得到新一代的粒子后,将新一代粒子中的帕累托解放到Archive集中。具体的,若Archive集为空,将新一代粒子中的帕累托解直接放到Archive集中;若Archive集不为空,将新一代中优于或者独立于Archive集中的粒子放到Archive集中。当Archive集的粒子数超过规定大小时,对于粒子数超过1的网格GR,按(30)计算需删除的粒子数DQ。
在按(26)计算各个网格中粒子的适应度值,将其降序排序后,删除后DQ个粒子。
Figure BDA0002921487760000193
其中|Art+1|表示第t代时Archive集中的粒子数。
Figure BDA0002921487760000194
是Archive集中允许的最大粒子数。表Grid[GR]示网格GR中包含的粒子数。
如图1所示:本发明考虑的多接入边缘计算系统包括若干个本地设备、若干个边缘服务器和一个远程云服务器。用户可以选择任务在本地执行或将任务上传至可为该任务所在区域服务的边缘服务器,从而接入网络;在任意选择一个边缘服务器或远程云来执行任务。任务的接入点和执行点可以相同也可以不同,但需注意,任务只能选择服务范围包括该任务的基站作为网络接入点。由于结果可视化等原因应用程序的最后一个任务在边缘服务器或远程云执行完成后,执行结果需传回本地设备。
像车联网、智慧城市及智能家居等都是移动边缘计算场景中的典型应用。在这些典型应用中,智能手机、iPad等都可以作为本地设备,其中的任务既可以在本地设备执行,也可以将其卸载到边缘服务器或执行。本发明为任务选择最佳的接入点和执行点,即可以弥补本地设备计算和存储能力的不足,又可以有效的降低任务的完成时间和执行成本,满足用户的QoS需求。图3为本发明所述方法的流程图。
实施例二
本实施例提供了在多接入边缘计算中卸载依赖任务的系统;
在多接入边缘计算中卸载依赖任务的系统,包括:
初始化模块,其被配置为:系统初始化,获取所有待执行任务的实时信息;所述所有待执行任务彼此之间存在依赖关系;
适应度函数确定模块,其被配置为:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;
任务优先级确定模块,其被配置为:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;
任务接入点和执行点生成模块,其被配置为:生成各个任务的初始接入点和执行点;
最优解计算模块,其被配置为:寻找帕累托最优解、局部最优解和全局最优解;
优化模块,其被配置为:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;
判断模块,其被配置为:判断是否达到终止条件,当迭代次数达到给定的最大值,或者设定时间范围内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点;按照最优解中各个任务的接入点和执行点,完成本地设备的若干个相互依赖的待执行任务的卸载过程,否则,返回任务接入点和执行点生成模块。
此处需要说明的是,上述初始化模块、适应度函数确定模块、任务优先级确定模块、任务优先级确定模块、任务接入点和执行点生成模块、最优解计算模块、优化模块和判断模块对应于实施例一中的步骤S101至S107,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
上述实施例中对各个实施例的描述各有侧重,某个实施例中没有详述的部分可以参见其他实施例的相关描述。
所提出的系统,可以通过其他的方式实现。例如以上所描述的系统实施例仅仅是示意性的,例如上述模块的划分,仅仅为一种逻辑功能划分,实际实现时,可以有另外的划分方式,例如多个模块可以结合或者可以集成到另外一个系统,或一些特征可以忽略,或不执行。
实施例三
本实施例还提供了一种电子设备,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述实施例一所述的方法。
应理解,本实施例中,处理器可以是中央处理单元CPU,处理器还可以是其他通用处理器、数字信号处理器DSP、专用集成电路ASIC,现成可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
实施例一中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元及算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
实施例四
本实施例还提供了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例一所述的方法。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (5)

1.在多接入边缘计算中卸载依赖任务的方法,其特征是,包括:
S101:系统初始化,获取所有待执行任务的实时信息;所述所有待执行任务彼此之间存在依赖关系;
S102:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;
所述S102:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数,具体包括:
决策方式1:当本地资源充足时,任务在本地设备上执行;
决策方式2:当本地设备被占用时,且本地设备最近的边缘服务器可用时,将任务卸载到距离本地设备最近的边缘服务器上执行;
决策方式3:当本地设备被占用,且距离本地设备最近的边缘服务器也被占用时,距离本地设备最近的边缘服务器将任务卸载到另外一个边缘服务器上执行;
决策方式4:当本地设备和边缘服务器都不可用时,将任务卸载到远程服务器上执行;
结合四种决策方式,计算任务卸载的总完成时间和总执行成本;最小化任务卸载的总完成时间和总执行成本;
适应度函数如下:
T={T1,T2} (1)
Figure FDA0003874062520000011
Figure FDA0003874062520000021
其中,T1表示最小化移动边缘计算任务卸载的总完成时间,由于结果可视化原因应用程序的最后一个任务的执行结果需返回本地后才表示该应用已完成即最小化k个应用程序的最后一个任务的完成时间;T2表示最小化任务的执行成本;FTk,Q local表示任务Xk,Q在本地的最早完成时间;Tk,Q,res edge表示任务Xk,Q在决策方式2下执行,执行结果最早返回到本地设备d的时间;Tk,Q,res ed-ed表示任务Xk,Q在决策方式3下执行,执行结果最早返回到本地设备d的时间;Tk,Q,res cloud表示任务Xk,Q在决策方式4下执行,执行结果最早返回到本地设备d的时间;Ok,Q,1,Ok,Q,2,Ok,Q,3,Ok,Q,4分别表示4种决策变量;Ck,q local,Ck,q edge,Ck,q ed-ed,Ck,q cloud分别表示任务Xk,q在决策1,2,3,4下的执行成本;
S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;
所述S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级,具体包括:
初始化每个任务允许的最晚完成时间Tk,q max;计算每个任务实际执行过程中最新的最晚允许完成时间CMk,q
从每个任务初始化的最晚完成时间Tk,q max和最新的最晚允许完成时间CMk,q二者中取最小值;
将最小值作为每个任务允许的新的最晚完成时间;
根据每个任务允许的新的最晚完成时间,计算每个任务最晚执行时间;
按照最晚执行时间从小到大的顺序对任务进行排队,得到每个任务执行的优先级;
按照最晚执行时间从小到大的顺序,将任务放置到第一队列中;第二队列为备用队列,初始为空;
所述S103:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级,具体包括:
对于用户K,定义覆盖用户的边缘服务器集合为M(K);对于每个任务,在执行过程中由于执行点和执行时间不同都会产生一个新的最晚完成时间CMk,q,则任务q允许的最晚完成时间是CMk,q和Tk,q max的最小值;CMk,q通过以下公式计算得出:
Figure FDA0003874062520000031
其中,P是任务q在应用k的后续任务集合,任务Xk,q的接入点只能从本地设备和M(K)中选择,但任务Xk,q的执行点从本地设备、边缘服务器和远程云服务器中任意选择;定义x是任务任务Xk,q的执行点,Tex x(Xk,j)为任务Xk,q在设备x执行所需的时间;当任务q为应用k的最后一个任务,即q=Q时,CMk,q即为应用k的最晚完成时间;
则任务Xk,q的最晚执行时间表示为:
Figure FDA0003874062520000032
BMk,q越小,则该任务需要越早执行;根据各个任务的最晚执行时间对任务进行排序,并将其按顺序放置到第一队列中;第二队列为备用队列,初始为空;
S104:生成各个任务的初始接入点和执行点;
所述S104:生成各个任务的初始接入点和执行点,具体包括:
比较第一队列和第二队列中第一个任务的优先级,挑选优先级高的任务优先执行;判断任务l是否是用户k的第一个任务,若是,则任务l没有前序任务,任务l允许被直接执行;否则,判断任务l的前序任务是否完成,如果任务l的前序任务都已经完成,则执行任务l,否则,将任务l放置到第二队列中;
若任务l可执行,判断本地设备是否有正在执行的任务,由于本地设备一次只能执行一个任务,若本地设备上没有任务执行,则任务l在本地设备上执行,接入点和执行点都为本地设备;
若本地设备不可执行,则判断M(K)集合中是否有可执行的边缘服务器,若只有一个,则该边缘服务器即为任务l的接入点和执行点,若同时有多个可执行的边缘服务器,则在可选的边缘服务器中选择完成时间最早的边缘服务器作为任务l的接入点和执行点,并按决策方式2执行;
若本地设备和M(K)中都没有可执行的设备,用户k在M(K)中随机选择一个边缘服务器卸载任务,然后判断其他边缘服务器中是否有可执行的设备,如果只有一个可执行的设备,则该设备即为任务l的执行点,如果同时有多个边缘服务器可执行,则计算各个边缘服务器的完成时间,选择完成时间最早的边缘服务器作为执行点,按决策方式3执行;否则,由该接入边缘服务器作为中继,根据决策方式4将任务上传至远程服务器执行;
当第一队列和第二队列都为空时,所有应用执行完成,即一个粒子初始化结束,记录任务卸载的总完成时间T1和任务卸载的执行成本T2的值;
S105:寻找帕累托最优解、局部最优解和全局最优解;
所述S105:寻找帕累托最优解、局部最优解和全局最优解,其中,寻找局部最优解,具体包括:
用户对任务卸载的总完成时间T1和任务卸载的执行成本T2的喜好程度由用户任务的完成时间约束和对成本的承受能力来决定;
对于一个时间紧急度高于设定阈值的任务来说,用户通过牺牲一部分的任务卸载的执行成本T2以换取更早的任务卸载的总完成时间T1
根据实际场景中的情况为任务卸载的总完成时间T1和任务卸载的执行成本T2设计权重系数,得到:
T=η1T12T2 (26)
其中η12=1;η1和η2的取值范围是[0,1],η1和η2表示任务在决策时的完成时间和执行成本的加权系数;根据公式(26)得到唯一的PBi t
所述S105:寻找帕累托最优解、局部最优解和全局最优解,其中,寻找全局最优解,具体包括:
选取全局最优粒子GBj t;使用网格法从档案集中的选取GBj t,具体步骤如下:
S1051:计算档案集中的密度信息;
S10511:计算第t次迭代时目标空间的边界(minT1 t,maxT1 t)和(minT2 t,maxT2 t);
S10512:根据以下公式计算网格的模:
Figure FDA0003874062520000061
其中M*M是要划分的网格数;
S10513:档案集中粒子j所在的网格编号可由以下公式得出:
Figure FDA0003874062520000062
其中,Int(·)是求整函数;T1 j和T2 j分别为粒子j在目标函数1和目标函数2的值;
S1052:为粒子选取全局最优粒子GBj t;为了有效的保证IMOPSOQ算法的收敛性能和帕累托解集的多样性,对于档案集中的粒子,其密度值越低,选择的概率就越大,反之,则越小;以粒子j为例;
S10521:计算档案集中优于粒子j的子集Arj t
S10522:找出Arj t集中密度最小的粒子集合Gj t
S10523:若集合Gj t中只有一个粒子即为全局最优粒子GBj t,反之则按PBi t选取方法选出全局最优粒子GBj t
S106:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;所述S106:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程,具体包括:
根据粒子j、个体最优粒子PBj t和全局最优粒子GBj t更新粒子j;为防止算法陷入局部最优,设计一个转移概率对粒子的更新过程进行了优化,转移概率如下:
Figure FDA0003874062520000071
其中,Proj
Figure FDA0003874062520000072
分别表示粒子维持自己先前的执行方式、向自身历史最佳执行方式逼近和向群体最佳执行方式逼近的概率;任务卸载的总完成时间T1和任务卸载的执行成本T2的值越好,该任务向T1和T2取最小值时选择的卸载服务器转移的概率越大,反之越小;
更新档案集:进化得到新一代的粒子后,将新一代粒子中的帕累托解放到档案集中,具体的,若档案集为空,将新一代粒子中的帕累托解直接放到档案集中;若档案集不为空,将新一代中优于或者独立于档案集中的粒子放到档案集中;当档案集的粒子数超过规定大小时,对于粒子数超过1的网格GR,按公式(30)计算需删除的粒子数DQ;
按公式(1)-(3)计算各个网格中粒子的适应度值,将其降序排序后,删除后DQ个粒子;
Figure FDA0003874062520000081
其中,|Art+1|表示第t代时档案集中的粒子数;
Figure FDA0003874062520000082
是档案集中允许的最大粒子数;Grid[GR]表示网格GR中包含的粒子数;
S107:判断是否达到终止条件,当迭代次数达到给定的最大值,或者设定时间范围内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点;按照最优解中各个任务的接入点和执行点,完成本地设备的若干个相互依赖的待执行任务的卸载过程;否则,重复步骤S104~S107。
2.如权利要求1所述的在多接入边缘计算中卸载依赖任务的方法,其特征是,所述S101:系统初始化,获取所有待执行任务的实时信息;其中,系统初始化包括:
本地设备、边缘服务器和远程服务器的资源限制,具体包括:本地设备一次只能运行一个任务;边缘服务器服务器具有多个处理器,一次能够运行多个任务;远程云服务器具有无限的计算能力,且能够服务用户所选的整个区域,任何任务都能够被卸载到远程云服务器执行,且远程云服务器能够同时执行无限多个任务。
3.采用如权利要求1所述的在多接入边缘计算中卸载依赖任务的方法的在多接入边缘计算中卸载依赖任务的系统,其特征是,包括:
初始化模块,其被配置为:系统初始化,获取所有待执行任务的实时信息;所述所有待执行任务彼此之间存在依赖关系;
适应度函数确定模块,其被配置为:根据所有待执行任务的实时信息、本地设备的计算能力、候选边缘服务器的计算能力和远程云服务器的计算能力,确定适应度函数;
任务优先级确定模块,其被配置为:根据适应度函数的所有待执行任务允许的最晚完成时间和实际执行过程中的最晚完成时间,确定每个任务执行的优先级;
任务接入点和执行点生成模块,其被配置为:生成各个任务的初始接入点和执行点;
最优解计算模块,其被配置为:寻找帕累托最优解、局部最优解和全局最优解;
优化模块,其被配置为:基于帕累托最优解、局部最优解和全局最优解,优化每个任务的卸载过程;
判断模块,其被配置为:判断是否达到终止条件,当迭代次数达到给定的最大值,或者设定时间范围内最优解不发生变化,则迭代终止,输出最优解中各个任务的接入点和执行点;按照最优解中各个任务的接入点和执行点,完成本地设备的若干个相互依赖的待执行任务的卸载过程,否则,返回任务接入点和执行点生成模块。
4.一种电子设备,其特征是,包括:一个或多个处理器、一个或多个存储器、以及一个或多个计算机程序;其中,处理器与存储器连接,上述一个或多个计算机程序被存储在存储器中,当电子设备运行时,该处理器执行该存储器存储的一个或多个计算机程序,以使电子设备执行上述权利要求1-2任一项所述的方法。
5.一种计算机可读存储介质,其特征是,用于存储计算机指令,所述计算机指令被处理器执行时,完成上述权利要求1-2任一项所述的方法。
CN202110119569.XA 2021-01-28 2021-01-28 在多接入边缘计算中卸载依赖任务的方法及系统 Active CN112860337B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110119569.XA CN112860337B (zh) 2021-01-28 2021-01-28 在多接入边缘计算中卸载依赖任务的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110119569.XA CN112860337B (zh) 2021-01-28 2021-01-28 在多接入边缘计算中卸载依赖任务的方法及系统

Publications (2)

Publication Number Publication Date
CN112860337A CN112860337A (zh) 2021-05-28
CN112860337B true CN112860337B (zh) 2022-11-29

Family

ID=75987746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110119569.XA Active CN112860337B (zh) 2021-01-28 2021-01-28 在多接入边缘计算中卸载依赖任务的方法及系统

Country Status (1)

Country Link
CN (1) CN112860337B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113747504A (zh) * 2021-07-29 2021-12-03 山东师范大学 多接入边缘计算联合任务卸载和资源分配的方法及系统
CN114374694B (zh) * 2022-01-10 2024-02-06 杭州电子科技大学 一种基于优先级的任务卸载方法及系统
CN115225671B (zh) * 2022-07-15 2024-03-15 湖南大学 AIoT智慧医疗多址边缘卸载方法、系统、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111104211A (zh) * 2019-12-05 2020-05-05 山东师范大学 基于任务依赖的计算卸载方法、系统、设备及介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8776074B1 (en) * 2010-01-22 2014-07-08 Lockheed Martin Corporation Methods, devices and systems for coordinating and optimizing resources
CN108920280B (zh) * 2018-07-13 2021-06-11 哈尔滨工业大学 一种单用户场景下的移动边缘计算任务卸载方法
CN110099384B (zh) * 2019-04-25 2022-07-29 南京邮电大学 基于边-端协同的多用户多mec任务卸载资源调度方法
CN111182582B (zh) * 2019-12-30 2023-04-07 东南大学 面向移动边缘计算的多任务分布式卸载方法
CN111756812B (zh) * 2020-05-29 2021-09-21 华南理工大学 一种能耗感知的边云协同动态卸载调度方法
CN111711962B (zh) * 2020-06-15 2022-04-12 重庆邮电大学 一种移动边缘计算系统子任务协同调度方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111104211A (zh) * 2019-12-05 2020-05-05 山东师范大学 基于任务依赖的计算卸载方法、系统、设备及介质

Also Published As

Publication number Publication date
CN112860337A (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
CN112860337B (zh) 在多接入边缘计算中卸载依赖任务的方法及系统
CN113242568B (zh) 一种不确定网络环境中的任务卸载和资源分配方法
CN111240701B (zh) 一种端-边-云协同计算的任务卸载优化方法
Zhang et al. MASM: A multiple-algorithm service model for energy-delay optimization in edge artificial intelligence
CN113950066B (zh) 移动边缘环境下单服务器部分计算卸载方法、系统、设备
CN110928654B (zh) 一种边缘计算系统中分布式的在线任务卸载调度方法
CN110069341B (zh) 边缘计算中结合功能按需配置的有依赖关系任务的调度方法
CN111427679A (zh) 面向边缘计算的计算任务调度方法、系统、装置
He et al. Edge-aided computing and transmission scheduling for LTE-U-enabled IoT
CN111988787B (zh) 一种任务的网络接入和服务放置位置选择方法及系统
CN112512070B (zh) 一种基于图注意力机制强化学习的多基站协同无线网络资源分配方法
CN113867843B (zh) 一种基于深度强化学习的移动边缘计算任务卸载方法
CN112114648A (zh) 可穿戴设备电源管理方法、系统及计算机设备
CN111158893B (zh) 应用于雾计算网络的任务卸载方法、系统、设备及介质
Liu et al. An adaptive resource allocation algorithm for partitioned services in mobile cloud computing
CN115809148B (zh) 一种面向边缘计算的负载均衡任务调度方法及装置
CN114615705B (zh) 一种基于5g网络下单用户资源分配策略方法
CN116634401A (zh) 边缘计算下最大化车载用户满意度的任务卸载方法
CN114978913B (zh) 一种基于切链的服务功能链跨域部署方法及系统
Mahmoodi et al. Spectrum-Aware Mobile Computing
CN110768827A (zh) 一种基于群智能算法的任务卸载方法
Li et al. Profit driven service provisioning in edge computing via deep reinforcement learning
CN115955479A (zh) 一种云边端协作系统中的任务快速调度与资源管理方法
CN115499875A (zh) 一种卫星互联网任务卸载方法、系统以及可读存储介质
Bensalem et al. Scaling Serverless Functions in Edge Networks: A Reinforcement Learning Approach

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant