System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及移动边缘计算领域,具体涉及一种针对差异化设备的任务卸载方法。
技术介绍
1、近年来,随着通信技术和移动设备的快速发展,出现了大量移动应用程序,例如人脸识别、虚拟/增强现实(vr/ar)和自动驾驶等。上述应用程序背后海量的数据支撑和巨大的计算量,导致对计算和存储资源的需求激增。然而,移动设备在被设计时,通常会考虑尺寸和重量等方面,因此可能在计算能力、存储容量等方面受到限制,单纯依靠移动设备难以在时延约束下完成计算密集型应用程序。移动边缘计算(mobile edge computing,mec)是一个有前景的解决方案,其在移动云计算(mobile cloud computing,mcc)的基础上,将计算和存储从移动设备转移至网络边缘来克服障碍。
2、具体来说,现实场景中的移动应用程序通常由多个任务组成,因此mec可以对其进行细粒度的任务卸载,即将部分计算密集型应用程序从资源受限的移动设备迁移到资源丰富的边缘服务器上。这个过程不仅缓解了移动设备的计算压力,还能为用户提供高性能和低延迟的服务。任务卸载需要考虑两个方面。首先是任务之间的依赖关系。某些任务的执行结果可能是其子任务执行的先决条件,该任务未执行完成之前无法执行其子任务。其次是卸载方案问题。若所有的任务均卸载到边缘服务器,则边缘服务器可能出现过载问题,同时会产生较高的传输时延;若所有的任务均在移动设备上执行,则回到了最初的问题。
3、因此,任务的计算卸载问题是一个np难(np-hard)的优化问题,现有的大多数关于依赖任务计算卸载的工作都是基
4、现实场景中,需进行任务计算卸载的移动设备不止一台,且不同移动设备的计算能力存在差异,无法为所有的移动设备制定统一的卸载方案。若面对差异化设备,均需单独训练其模型进而得到任务卸载方案,显然无法满足时延需求。
技术实现思路
1、本专利技术的目的在于提供一种针对差异化设备的任务卸载方法,该方法有利于在保证模型质量的同时,降低获得个人模型的时延。
2、为了实现上述目的,本专利技术采用的技术方案是:一种针对差异化设备的任务卸载方法,首先基于环境内已有移动设备的卸载经验,结合深度q网络和联邦学习框架,构建并训练一个全局模型;然后每有一台新移动设备要获得其个人模型,就将全局模型推送至该新移动设备上,新移动设备在全局模型的基础上结合自身少量的卸载经验进行训练,得到个人模型。
3、进一步地,按如下方法建立问题模型:
4、建立任务模型:将应用程序建模为有向无环图;应用程序由一个有向无环图g=(n,e)表示,其中n={1,2,...,n}是图g的顶点集,表示子任务集合,n为应用程序划分的子任务个数;每个子任务的计算量记为ci(i∈n);对于依赖型任务,引入图g的边集e,记为e={ej,i|i,j∈n,i<j},表示子任务之间的依赖关系;对任意ej,i,即顶点j指向顶点i的有向边,表示任务j是任务i的直接前驱任务,任务i是任务j的直接后继任务,任务需等其所有直接前驱任务完成后才开始执行;用prei和suci表示任务i的直接前驱任务集合和直接后继任务集合;在g中,把没有后继任务的任务称为结束任务,记为end(g);
5、考虑由一台移动设备md和一个边缘服务器es组成的网络模型;用c={1,2}表示计算节点的集合,其中1表示计算节点为移动设备,2表示计算节点为边缘服务器;每个计算节点有自己的计算能力fk(k∈c);移动设备的计算能力f1劣于边缘服务器的计算能力f2;若任务i和其前驱任务j在不同计算节点执行,则之间存在数据需要传输,传输数据的大小记为di,j(i,j∈n),传输速率记为v1,2;
6、对于单个移动设备md上的应用程序g,将其划分为多个细粒度任务,在计算节点处于空闲状态时,分发至计算节点上执行;引入tfk(k∈c)、md(md∈n)、es(es∈n)分别表示计算节点开始空闲的时间、最近在移动设备上执行的任务、最近在边缘服务器上执行的任务,tfk即为最近在该计算节点上执行任务的完成时延;将任务i的完成时延定义为则tfk定义如下:
7、
8、若选择在移动设备上执行任务,会节省传输时延,但增加执行时延;若选择在边缘服务器上执行任务,则会增加传输时延,但减少执行时延;任务j和任务i之间的传输时延ttj,i定义如下:
9、
10、执行时延tei定义如下:
11、
12、每个任务i的完成时延tci包括任务i的等待时延twi和任务i的执行时延tei两部分,定义如下:
13、
14、等待时延定义如下:
15、
16、g中的任务存在并行执行的情况;因此,欲定义应用完成时延t(g),首先需定义应用程序在第t个时间步的累计执行时延t1∶t,设定1个时间步完成1个任务的处理操作,其等于完成任务依赖链中的任务所花费的最长时间,所述任务依赖链是指g中任务的执行顺序;为了定义t1:t,引入d1∶t表示在第t个时间步时所有执行完成的任务集合,t1∶t定义如下:
17、
18、应用完成时延定义如下:
19、t(g)=t1:end(g)
20、本方法的优化目标旨在得到最优的应用程序完成时延,定义如下:
21、
22、每个任务受到如下约束:
23、s.t.
24、
25、
26、
27、约束c1是对任务执行位置的约束,xi为0则表示任务i在移动设备上执行,为1则表示任务i在边缘服务器上执行;约束c2和c3是对任务i开始执行时间的约束,c2是针对依赖型任务的约束,即任务i需等其所有直接前驱任务均完成后才可开始执行,c3则表示任务i需等为其分配的计算节点空闲后才可开始执行。
28、进一步地,按如下方法进行问题定义:考虑由多台移动设备md、多台边缘服务器es和一个中央服务器cs组成的系统模型;每台移动设备都具有计算能力,对于单台移动设备上应用程序的任务卸载,可在移动设备上处理,也可卸载到为其安排的边缘服务器本文档来自技高网...
【技术保护点】
1.一种针对差异化设备的任务卸载方法,其特征在于,首先基于环境内已有移动设备的卸载经验,结合深度Q网络和联邦学习框架,构建并训练一个全局模型;然后每有一台新移动设备要获得其个人模型,就将全局模型推送至该新移动设备上,新移动设备在全局模型的基础上结合自身少量的卸载经验进行训练,得到个人模型。
2.根据权利要求1所述的一种针对差异化设备的任务卸载方法,其特征在于,按如下方法建立问题模型:
3.根据权利要求2所述的一种针对差异化设备的任务卸载方法,其特征在于,按如下方法进行问题定义:考虑由多台移动设备MD、多台边缘服务器ES和一个中央服务器CS组成的系统模型;每台移动设备都具有计算能力,对于单台移动设备上应用程序的任务卸载,可在移动设备上处理,也可卸载到为其安排的边缘服务器上处理,其中移动设备和边缘服务器是多对一的关系;系统的运转模式为,系统内已有的移动设备结合自身计算能力训练任务卸载模型,训练一定次数后将自身模型上传至中央服务器,服务器将上传的模型聚合成全局模型,并下发至各移动设备,重复该过程;若有新加入的移动设备,其直接获取全局模型,再结合自身计算能力进行少
4.根据权利要求3所述的一种针对差异化设备的任务卸载方法,其特征在于,基于系统模型和问题定义,结合马尔可夫决策过程,对单个移动设备上应用程序的任务卸载过程进行构建,在此基础上,通过基于联邦深度强化学习的任务卸载方法TFDRLD对问题进行求解;TFDRLD方法首先使用深度Q网络和联邦学习框架,结合系统内已知移动设备的卸载经验训练,得到全局模型;然后基于全局模型,并结合新移动设备的少量卸载经验,训练得到个人模型,进而解决差异化设备上的任务卸载问题。
5.根据权利要求4所述的一种针对差异化设备的任务卸载方法,其特征在于,所述马尔可夫决策过程的实现方法为:
6.根据权利要求5所述的一种针对差异化设备的任务卸载方法,其特征在于,将马尔可夫决策过程4元组应用于TFDRLD方法中全局模型的训练,具体方法为:
7.根据权利要求5所述的一种针对差异化设备的任务卸载方法,其特征在于,将马尔可夫决策过程4元组应用于TFDRLD方法中个人模型的训练,具体方法为:
...【技术特征摘要】
1.一种针对差异化设备的任务卸载方法,其特征在于,首先基于环境内已有移动设备的卸载经验,结合深度q网络和联邦学习框架,构建并训练一个全局模型;然后每有一台新移动设备要获得其个人模型,就将全局模型推送至该新移动设备上,新移动设备在全局模型的基础上结合自身少量的卸载经验进行训练,得到个人模型。
2.根据权利要求1所述的一种针对差异化设备的任务卸载方法,其特征在于,按如下方法建立问题模型:
3.根据权利要求2所述的一种针对差异化设备的任务卸载方法,其特征在于,按如下方法进行问题定义:考虑由多台移动设备md、多台边缘服务器es和一个中央服务器cs组成的系统模型;每台移动设备都具有计算能力,对于单台移动设备上应用程序的任务卸载,可在移动设备上处理,也可卸载到为其安排的边缘服务器上处理,其中移动设备和边缘服务器是多对一的关系;系统的运转模式为,系统内已有的移动设备结合自身计算能力训练任务卸载模型,训练一定次数后将自身模型上传至中央服务器,服务器将上传的模型聚合成全局模型,并下发至各移动设备,重复该过程;若有新加入的移动设备,其直接获取全局...
【专利技术属性】
技术研发人员:陈星,余楚佳,胡晟熙,林欣郁,陈哲毅,
申请(专利权)人:福州大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。