一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

算力任务执行方法、装置、电子设备及存储介质与流程

2022-02-25 23:30:07 来源:中国专利 TAG:


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.图1是本发明提供的算力任务执行方法的流程示意图;
37.图2是本发明提供的算力任务执行装置的结构示意图;
38.图3示例了一种电子设备的实体结构示意图。
具体实施方式
39.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发 明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然, 所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提 下所获得的所有其他实施例,都属于本发明保护的范围。
40.下面结合图1-图3描述本发明的算力任务执行方法、装置及电子 设备。
41.图1是本发明提供的算力任务执行方法的流程示意图,如图1所 示,该方法包括如下步骤:
42.步骤100,将当前任务卸载情况和当前环境状态信息,输入任务 卸载模型,确定至少一个任务分别一一对应的至少一个任务执行策略;
43.步骤110,基于奖励函数,确定所述至少一个任务执行策略中每 一个任务执行策略的奖励值;
44.步骤120,基于所述每一个任务执行策略的奖励值,确定本地执 行的第一任务和卸载至边缘服务器执行的第二任务;
45.其中,所述当前环境状态信息包括终端的计算资源和/或传输功 率,所述奖励函数和所述终端的任务执行总开支相关联,所述任务总 开支包括所述终端本地执行任务所产生的总开支和所述终端将所述 任务卸载至边缘服务器上执行所产生的总开支。
46.具体来说,与智能终端相比,云端具有更多的计算资源与存储资 源,因此可以将计算任务卸载至云上。但是由于有限的通信带宽、不 稳定的网络连接以及严格的时延要求等,仅靠云计算已无法支持无处 不在且日渐强大的物联网部署和应用,为解决上述挑战,算力网络应 运而生。
47.具体地,算力网络涉及云计算、雾计算、边缘计算技术间的相互 协作,这些技术的特点和可调度的算力资源不同,可分别针对区域级 别,设备级别的物联网应用和服务。基于算力网络,按需调度网络中 的算力资源可显著提升应用程序的服务质量和用户体验,提高响应速 度并节省能耗。
48.尽管算力网络相较传统网络具有上述优势,但多层次算力资源管 理较为复杂,为
解决上述挑战,算力网络通过云网融合技术及 sdn/nfv等新型网络技术,将边缘计算节点、云计算节点及广域网 在内的各类网络资源融合在一起,减小边缘计算节点的管控复杂度, 并通过集中控制或分布式调度方法与云计算节点的计算和存储资源、 广域网的网络资源进行协同,组成新一代信息基础设施,为客户提供 包含计算、存储和连接的整体算力服务,并根据业务特性提供灵活、 可调度的按需服务。
49.本发明可以重点考虑边缘服务器与终端设备的算力调度,与云计 算相比,边缘计算减小了数据传输时延,提高了计算卸载过程中的计 算敏捷性。
50.但是,边缘服务器的计算能力也是受限的,在一些特定的计算卸 载场景(超密集网络)下,可能存在干扰并导致期望外的传输延迟。 因此不能将所有任务卸载至边缘服务器上执行,部分任务应该由智能 终端设备(smart terminal device,smd)执行。尽管本地执行消耗 了更多的能量,但无需考虑数据传输时间,因此大大提高了任务的响 应速度。
51.因此,为实现上述目的,本发明提出一个具有终端能耗感知的任 务卸载方案,并对边缘服务器和终端设备的算力进行调度。
52.具体地,本发明可以首先引入一个边端混合的多层次算力网络及 计算卸载系统,该系统由多个智能终端设备(smart terminal device, smd)和一个边缘服务器共同组成,二者可以共同向终端任务提供计 算服务,在程序运行过程中用户出于时延或能耗的考虑,可以将对应 计算任务卸载到边缘服务上或在本地进行处理。上述两种处理方式相 较而言,边缘服务器拥有更多的计算资源,但远离数据源,通信时延 较大;直接在终端设备上执行可避免网络中的通信时延,提高应用程 序的响应速度,但smd的终端计算能力有限,用户如何根据自身不 同时延、能耗的考虑决定任务的处理位置并对算力资源进行调度是本 发明考虑的重点。
53.因此,本发明提出一个具有n个无线接入点和一个边缘服务器的 边缘计算网络。边缘服务器配备足够的计算和存储资源,能够满足计 算密集任务的时延需求,每个无线接入点连接一定数量的智能终端设 备(smd),接入节点(access point,ap)与smd之间可以通过无 线链路连接,ap与边缘服务器可以通过有线链路连接,无线接入点 物理位置位于终端与边缘服务器之间,可以负责终端与边缘服务器的 接入。
54.本发明可以分别使用集合n={1,2,...,n}和d={1,2,...,d}表示ap集 合和smd集合。为方便建模,本发明可以假设每个时刻smd只执 行一个任务,并且每个任务被建模为三元组其中in表 示任务tn的输入数据规模大小,cn表示完成任务tn所需的cpu全部 cpu周期数目,表示完成任务tn的最长执行时间。
55.具体地,在任务卸载期间,smd集合可以保持不变。每个终端 上的计算任务均存在两种执行策略:
56.1、计算任务在smd本地执行;
57.2、将任务卸载至边缘服务器上,由边缘服务器协助smd完成计 算任务。
58.因此,本发明可以确定本地执行的第一任务和卸载至边缘服务器 执行的第二任务,比如有10个待执行任务,可以确定其中4件任务 由终端本地执行,6件任务由终端卸载至边缘服务器上执行。
59.可选地,至少一件任务可以是一个终端上的至少一件任务,也可 以是多个终端的
多件任务,其中每一个终端可以有一件或多件任务。
60.可选地,在对某一件任务确定其任务执行策略时,其对应的当前 环境状态信息可以是该任务所在终端目前实时的环境状态信息,比如 cpu频率、存储资源、电池剩余容量和电池寿命。
61.因此,本发明可以将当前任务卸载情况和当前环境状态信息,输 入任务卸载模型,确定适应于终端当前算力资源情况的至少一个任务 分别一一对应的至少一个任务执行策略;
62.可选地,任务卸载模型可以是提前预先训练好的神经网络模型。
63.可选地,由于获得了多个可执行的任务,因此可以基于奖励函数, 确定所述至少一个任务执行策略中每一个任务执行策略的奖励值,进 而可以确定在终端当前算力资源情况下更加适合执行的任务执行策 略;
64.可选地,在确定每一个任务执行策略的奖励值后,可以基于这些 奖励值,确定本地执行的第一任务和卸载至边缘服务器执行的第二任 务;比如可以将其中奖励值较大的任务执行策略首先执行,然后更新 终端在执行完这些任务后的环境状态信息(算力资源情况),进而可 以再次获得一批适合执行的任务,实时适应终端的算力资源情况。
65.本发明在考虑环境状态信息(算力资源情况比如smd可用电量) 和时延敏感任务的需求的情况下,可以实现结合资源分配的具有终端 能耗感知的计算任务卸载方案。
66.本发明提供的算力任务执行方法,通过采用针对任务卸载和任务 执行阶段对能耗和时延进行优化的任务卸载模型,基于当前任务卸载 情况和当前环境状态信息,确定至少一个任务执行策略,并基于每一 个任务执行策略的奖励值确定本地执行的第一任务和卸载至边缘服 务器执行的第二任务,可以实现具有终端能耗感知和任务时延感知的 计算任务卸载。
67.可选地,所述基于所述每一个任务执行策略的奖励值,确定本地 执行的第一任务和卸载至边缘服务器执行的第二任务,包括:
68.对所述至少一个任务执行策略中每一个任务执行策略的奖励值 进行从大到小排序;
69.针对其中奖励值最大的任务,基于所述任务的任务执行策略执行 所述任务,并更新所述当前任务卸载情况和当前环境状态信息。
70.可选地,在基于所述每一个任务执行策略的奖励值,确定本地执 行的第一任务和卸载至边缘服务器执行的第二任务时,为了更好地适 应终端的环境状态信息,因此可以每执行n件任务后更新当前任务 卸载情况和当前环境状态信息,然后获得新的任务执行策略,重新基 于新的任务执行策略的奖励值,确定执行n件任务,依次类推,直 至任务被执行完毕。
71.可选地,n最优可以为1,每执行一次任务就更新一次当前任务 卸载情况和当前环境状态信息,并获得新的任务执行策略,使得每次 执行的任务执行策略都是最适应该任务执行策略被执行时刻的环境 状态信息的任务,即每次执行的任务执行策略都是当时所有待执行任 务的任务执行策略中奖励值最大的任务的任务执行策略。
72.可选地,n也可以为2,也可以为任意比“至少一个任务”的任 务数量少的数,也可以和“至少一个任务”的任务数量相等。
73.可选地,在基于算法实现本发明时可以如以下边缘任务卸载算法 的步骤所示:
74.输入:经预先训练得到的神经网络(任务卸载模型),该网络权重 参数为θ;待卸载的边缘任务集合et,边缘服务器集合es;
75.输出:边缘任务卸载动作(即任务执行策略指示是否卸载至边缘 服务器执行)
[0076][0077][0078]
本发明通过每执行一次任务就更新一次当前任务卸载情况和当 前环境状态信息,并重新确定在新的任务卸载情况和环境状态信息下 最适合执行的任务策略,有效保证了及时的终端能耗感知和任务时延 感知
[0079]
可选地,所述终端本地执行任务所产生的总开支,包括:
[0080]
所述终端本地执行第一任务所产生的能耗和所述终端本地执行 第一任务所产生的时延;
[0081]
其中,所述终端本地执行第一任务所产生的能耗和所述终端的计 算资源相关联。
[0082]
具体地,本发明可以使用二进制变量d
i,j
表示与编号为j的ap的 相连的编号为i的smd上的计算卸载策略。
[0083]
具体地,对于任务ti,若d
i,j
=1,则可以认为其表示将对应设备 上的任务卸载至边缘服务器上执行,反之d
i,j
=0则可以表示对应的计 算任务在本地执行。
[0084]
具体地,对于任务ti,当d
i,j
=0时,smd将在本地执行计算任务 ti,在这种场景下,任务的执行时间可以被表示为:
[0085][0086]
上式(1)中,f
il
为smd的计算能力(比如cpu计算频率), 该值取决于对应的任务类型。
[0087]
smd在执行任务过程中的终端能耗可以由smd的cpu频率决 定,如下式(2)所示:
[0088][0089]
上式(2)中,γi为smd上cpu运行1个周期时消耗的全部能 量,且γi=κ
·
(f
il
)2,其中κ是一个依赖于cpu架构的因子。
[0090]
为实现边缘任务卸载过程中的能耗与时延的联合优化,本发明首 先引入一个权重参数该参数代表smd对执行时延的需求, 该值越大,表明此时需优先满足任务卸载过程中的时延优化。除时延 外,smd的剩余电量同样影响卸载决策。
[0091]
因此,本发明引入一个变量r
ip
,该变量可以表示smd中剩余电 量比率的大小,如下式(3)所示:
[0092][0093]
上式中,p
iremain
表示smd当前剩余电量,p
itotal
表示smd的全部 电量。
[0094]
此外,变量r
ip
的值同样可以代表smd针对时延优化和能耗优化 的不同要求。例如,r
ip
的值越小,表明smd的剩余电量越少,此时 可以保证计算任务在执行过程中消耗更少的能量以延长终端的电池 使用时间,因此本发明对归一化参数可以重新定义如下:
[0095][0096]
同时,能耗的权重因子可计算为因此本地执行计 算任务时的全部开支可表示为:
[0097][0098]
可选地,所述终端将所述任务卸载至边缘服务器上执行所产生的 总开支,包括:
[0099]
所述终端将第二任务卸载至边缘服务器时传输所产生的能耗、所 述终端将第二任务卸载至边缘服务器时传输所产生的时延、和所述第 二任务在所述边缘服务器被执行所产生的时延;
[0100]
其中,所述终端将第二任务卸载至边缘服务器时传输所产生的时 延和所述终端的传输功率相关联。
[0101]
具体地,对于任务ti,若d
i,j
=1,可以表示smd上的任务不在本 地执行,而是卸载至边缘服务器上,由边缘服务器协助执行。
[0102]
具体地,在计算任务的处理过程中,任务的响应时延包括:
[0103]
1、将任务数据传输至边缘服务器上的传输时间;
[0104]
2、边缘服务器执行计算任务的处理时间。
[0105]
与计算密集任务(如模式识别)的输入数据规模相比,输出数据 的规模可忽略不计,本发明在建模过程中忽略了任务结果的传输时延。
[0106]
具体地,将任务数据传输至边缘服务器上包含两个传输时间: smd与ap之间的传输时间、ap与边缘服务器间的传输时间。smd 与ap之间通过无线链路连接,本发明可以使用r
iap
表示smd与ap 间的数据传输速率,计算结果如下式(6)所示:
[0107][0108]
上式(6)中,ωi表示smdi与ap之间的无线传输带宽,和 σ分别表示smd与ap之间的信道增益和噪声功率谱密度,pi表示 smdi的传输功率。此外,本发明可以使用c表示ap与边缘服务器间 的数据传输速率,因此将数据传输由smd传输至边缘服务器的全部 时延可表示为:
[0109][0110]
与本地执行类似,本发明可以使用f
ec
表示边缘服务器的计算能 力,因此任务的处理时延计算结果如下式所示:
[0111][0112]
综上,将任务卸载至边缘服务器上执行时的全部时延可表示为:
[0113][0114]
在这种计算模式下,smd的全部能耗可表示为:
[0115][0116]
与任务在本地执行类似,将任务卸载至边缘服务器上执行时的 smd的全部开支可表示为:
[0117][0118]
基于对本地计算模型和边缘计算模型的分析可知,smd的不同 卸载决策将产生不同计算开销,本发明可以使用
○i(di)表示smd在 某种卸载决策下的全部计算开销,如下式(12)所示:
[0119][0120]
考虑到实际应用场景,由于网络中可用带宽的限制,随着卸载至 边缘服务器的任务数目的增加,数据的传输速率将下降。本发明的目 标是设计有效的计算卸载方案,该方案同时对smd的cpu计算频率 和任务卸载决策进行优化,以期在满足边缘任务最大执行时间的条件 下,使得系统架构中所有smd的计算开销(包含任务执行时间和能 耗)最小化。本发明的优化目标如下式(13)所示:
[0121][0122]
为便于具体描述每个smd的卸载策略,本发明可以引入一个函 数f(#),括号内为判断条件,若判断条件判定为真返回1,否则返回 0,如下式(14)所示:
[0123][0124]
本发明首先对任务的执行时间进行限制,即任务的执行时间不能 大于最大执行时间如下式(15)所示:
[0125][0126]
无论smd采用哪种计算任务执行方式,其消耗的能量均不能超 过smd的剩余电量,如下式(16)所示:
[0127][0128]
本发明同样对本地计算的cpu频率和传输功率的最大值进行限 制分别如下式(17)和(18)所示:
[0129][0130]
c4:0≤pi≤p
max
ꢀꢀ
(18)
[0131]
由于每个终端任务的卸载决策均存在两种方式,因此:
[0132]
c5:di∈{0,1}
ꢀꢀ
(19)
[0133]
因此,本发明建立的最优化问题模型为:
[0134][0135]
s.t.c1,c2,c3,c4,c5
ꢀꢀ
(20)
[0136]
可选地,由于cpu的周期频率等环境状态信息是影响本地开销 的重要因素,因此本发明考虑设计有效的环境状态调度策略比如cpu 周期频率调度策略以减小本地开销,终端i上的本地计算的全部开销 表示为f
il
的函数如下式所示:
[0137][0138]
对上式函数进行分析可知式(21)为凸函数,对其进行求导,并 令其导数值为0,求得此时的周期频率,如下式(22)所示:
[0139][0140]
对上式(22)分析可知,当f
il
<f
il

时,的值单调递减, 当f
il
>f
il

时,的值单调递增。
[0141]
根据式(15)、(16)、(17),可以对(17)中f
il
的范围重新定义如 下式(23)所示:
[0142][0143]
综上所述,终端i上开销可按照下式(24)进行计算:
[0144][0145]
具体地,可以对最优化问题模型求解,获得本地执行的第一任务 和卸载至边缘服务器执行的第二任务。
[0146]
具体地,本发明的目的在于研究多层次算力网络中具有能耗感知 的计算卸载方案及算力资源的调度方案,本发明可以首先引入一个边 端混合的多层次算力网络,然后引入深度强化学习开发基于drl的 计算卸载算法,实现不同层次算力资源的调度。其次,本发明可以建 立多目标优化问题模型来最小化任务卸载过程中的终端能耗与服务 延迟。为提高计算效率并避免过度估计,本发明基于dqn设计了任 务卸载算法以获得最优解。
[0147]
可选地,可以引入深度强化学习开发基于drl的计算卸载算法, 实现对该最优化问题模型的求解。
[0148]
可选地,所述方法还包括:
[0149]
确定训练样本组;
[0150]
基于至少一个所述训练样本组,训练所述任务卸载模型。
[0151]
具体地,由于边缘网络的复杂多变性,终端上的任务卸载策略需 要随环境状态信息的变化而改变,基于深度强化学习(deepreinforcement learning,drl)的卸载策略模块可与环境进行交互, 学习任务卸载策略以获得最大回报。在面向边缘任务的卸载过程中, 系统中的终端可作为智能体与外部环境交互,在执行任务卸载策略后, 环境对当前状态更新得到下一状态与即时奖励。在某一时刻,执行动 作后的环境状态信息只与当前状态有关,与当前时刻前的历史状态无 关,具有无后效性,因此可将边缘任务卸载问题表述为一个mdp模 型,并基于该模型求解任务策略。
[0152]
具体地,mdp模型可以指马尔科夫决策过程,马尔可夫链是一 种具有无后效性的概率模型,即未来的状态只与当前有关,与之前的 状态无关。一个mdp过程可使用一个五元组(o,a,p,r,γ)表示。o其 中代表智能体观测到的状态空间;a表示智能体可执行的动作空间; p代表转移概率的集合,即在某一状态下执行动作a
t
∈a后进入特定 状态的概率构成的有限集;r表示执行动作后即时奖励构成的有限集; γ表示折扣系数,用于衡量即时奖励与未来奖励。mdp模型通过不断 探索位置环境下的动作,并记录动作执行后的奖励,使长期累计获得 的正向激励越来越大,负向激励越来越小,进而可以获得最优策略。
[0153]
本发明接下来给出基于mdp的任务卸载问题模型:
[0154]
状态空间:对于o
l
∈o有o
l
=《d,u
cpu
(l),p
trans
(l)》,表示已经卸载了 个终端任务时,任务与对应设备的卸载策略以及各设备的资源使用情 况。其中d表示前l个任务的卸载情况,u
cpu
(l)表示各设备可用cpu 的状态,p
trans
(l)表示各设备可用的传输功率。
[0155]
动作空间:对于a
l
∈a,有a
l
=f(o
l
),表示智能体根据特定的策 略,并对当前的环境状态信息进行观测,选择是否将对应任务卸载至 边缘服务器,由边缘服务器协助其完成终端任务的完成。
[0156]
动作执行函数step(o
l
,a):step(o
l
,a)=《r
l'
,o
l'
,υ,l'》,该函数表示智能 体在
状态o
l
下执行任务卸载动作后a,智能体获得的即时奖励r
l'
,执 行对应动作后的状态后序o
l'
、部署结果参量υ以及已完成任务卸载后 的终端数量l'。奖励函数表示在状态下执行部署动作获得的及时奖励, 本发明的优化目标使对应终端任务的处理时延以及终端能耗,由于式 (12)同时对二者进行表述,因此奖励函数可表示为式(12)的函数。 此外,奖励结果需指定为一正值,能耗与时延两方面因素均为负面指 标,因此奖励函数的制定为下式(25)所示:
[0157][0158]
上式(25)中,a可以为一足够大的常数,该值可以保证奖励值 不为负数,为部署l个终端任务时,由任务卸载操作产生的全部开 销。在采取某个策略中的动作后,若对应产生的开销(任务时延和终 端能耗)越大,环境反馈给智能体的奖励值就越小,反之亦然。
[0159]
状态行为值函数q
π
(o,a)可以定义在策略π下执行动作a的奖励 的期望。对于学习率为α的mdp,由状态o开始获得的累计奖励期望 可使用动态规划迭代计算得到对应的值:
[0160]qπ
(o,a)=q
π
(o,a) α[reward γmax
a'qπ
(o',a')-q
π
(o,a)]
ꢀꢀ
(26)
[0161]
上式中,γ表示奖励折扣因子。
[0162]
具体地,可以基于建立的mdp过程,任务卸载策略可以对每个 终端上的任务是否进行计算卸载进行决策,即是否将对应任务卸载至 边缘服务器上。但终端任务的数目直接影响状态空间的大小,随着终 端设备的增多,会使得状态空间随之同步增长。若基于q-learning 算法设计任务决策策略,在实际应用中,由于状态空间太大, q-learning算法的q表会出现维度爆炸的现象,导致智能体在训练阶 段很难实现收敛。
[0163]
为解决实际应用中状态空间爆炸的问题,dqn算法可以对 q-learning进行修改,该算法可以构建一个权重为θ的神经网络对q 值进行近似代替,使得q(o,a,θ)≈q(o,a)。该网络可以将状态s作为输 入,然后经过激活函数为relu的两个卷积层和两个全连接层,最后 输出包含每个动作q值的向量。该网络可以使用实际累计奖励作为 目标值,预计获得的累计奖励作为预测值,训练该网络的目的可以使 预测值尽量逼近目标值,因此定义损失函数可以如下所示:
[0164]
l(θ)=e[(r γmax
a'
q(s',a';θ')-q(s,a;θ))2]
ꢀꢀ
(27)
[0165]
具体地,dqn可以通过反向传播机制于随机梯度下降法对神经 网络的参数进行更新,对式(27)进行求导,得到损失函数的梯度可 以如下式(28)所示:
[0166][0167]
具体地,dqn算法可以由两个同结构的神经网络构成,一个是 估计网络,一个是目标网络,为使dqn支持基于经验的学习并避免 错误的陷阱,dqn在初始化时,可以构建经验回放库(包括至少一 个训练样本组),并给定目标网络参数的更新频率。然后可以基于至 少一个所述训练样本组,训练所述任务卸载模型。
[0168]
具体地,任务卸载模型的训练算法可以如下所示:
[0169]
输入:最大训练步数ne,学习率α,折扣系数γ,待卸载的边缘 任务集合et,边缘服务器集合es
[0170]
输出:权重为θ的神经网络
[0171][0172]
可选地,所述确定训练样本组,包括:
[0173]
确定所述终端的环境状态信息的初始值;
[0174]
基于任一个任务,以所述初始值为输入,根据贪婪法确定所述任 务的目标任务执行策略,确定执行所述目标任务执行策略后的环境状 态信息,和执行所述目标任务执行策略获得的奖励值;
[0175]
将所述初始值,所述目标任务执行策略,执行所述目标任务执行 策略后的环境状态信息,和执行所述目标任务执行策略获得的奖励值, 作为一个所述训练样本组。
[0176]
具体地,可以在每个回合开始时,确定所述终端的环境状态信息 的初始值s
l
,基于任一个任务,以所述初始值为输入,dqn在状态s
l
下使用探索方法,确定所述任务的目标任务执行策略(动作a
l
),执 行任务卸载动作a
l
后,智能体获得的即时奖励r
l
,并更新执行动作a
l
后 的环境状态信息s
l'
;其探索方法是以的β概率选择神经网络输出的动 作,以1-β的概率选择随机产生的动作。在神经网络训练的开始阶段, 为更多地探索潜在的动作,应将β的值设置为较低,待神经网络训练 一定步数后,再将β的值增大。此外,在训练过程中将每步训练后的 训练样本组(s
l
,a
l
,r
l
,s
l'
)存入经验回放库中。
[0177]
本发明提出了基于能耗感知的任务卸载及算力调度方法。引入了 drl,并提出了基于drl的智能化算法,实现了不同层次算力资源 的调度;且开发了一种多目标优化问题模型,以最小化网络能耗和服 务延迟。并且设计了dqn算法以获得最优解。
[0178]
本发明提供的算力任务执行方法,通过采用针对任务卸载和任务 执行阶段对能耗和时延进行优化的任务卸载模型,基于当前任务卸载 情况和当前环境状态信息,确定至
少一个任务执行策略,并基于每一个任务执行策略的奖励值确定本地执行的第一任务和卸载至边缘服务器执行的第二任务,可以实现具有终端能耗感知和任务时延感知的计算任务卸载。
[0179]
下面对本发明提供的算力任务执行装置进行描述,下文描述的算力任务执行装置与上文描述的算力任务执行方法可相互对应参照。
[0180]
图2是本发明提供的算力任务执行装置的结构示意图,如图2所示,该执行装置包括:第一确定模块210,第二确定模块220和第三确定模块230,其中:
[0181]
第一确定模块210用于将当前任务卸载情况和当前环境状态信息,输入任务卸载模型,确定至少一个任务分别一一对应的至少一个任务执行策略;
[0182]
第二确定模块220用于基于奖励函数,获得所述至少一个任务执行策略中每一个任务执行策略的奖励值;
[0183]
第三确定模块230用于基于所述每一个任务执行策略的奖励值,确定本地执行的第一任务和卸载至边缘服务器执行的第二任务;
[0184]
其中,所述当前环境状态信息包括终端的计算资源和/或传输功率,所述奖励函数和所述终端的任务执行总开支相关联,所述任务总开支包括所述终端本地执行任务所产生的总开支和所述终端将所述任务卸载至边缘服务器上执行所产生的总开支。
[0185]
本发明提供的算力任务执行装置,通过采用针对任务卸载和任务执行阶段对能耗和时延进行优化的任务卸载模型,基于当前任务卸载情况和当前环境状态信息,确定至少一个任务执行策略,并基于每一个任务执行策略的奖励值确定本地执行的第一任务和卸载至边缘服务器执行的第二任务,可以实现具有终端能耗感知和任务时延感知的计算任务卸载。
[0186]
图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(communicationsinterface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行算力任务执行方法,该方法包括:将当前任务卸载情况和当前环境状态信息,输入任务卸载模型,确定至少一个任务分别一一对应的至少一个任务执行策略;
[0187]
基于奖励函数,确定所述至少一个任务执行策略中每一个任务执行策略的奖励值;
[0188]
基于所述每一个任务执行策略的奖励值,确定本地执行的第一任务和卸载至边缘服务器执行的第二任务;
[0189]
其中,所述当前环境状态信息包括终端的计算资源和/或传输功率,所述奖励函数和所述终端的任务执行总开支相关联,所述任务总开支包括所述终端本地执行任务所产生的总开支和所述终端将所述任务卸载至边缘服务器上执行所产生的总开支。
[0190]
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个
实施例所述方法的全部或部分步骤。而 前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,random access memory)、磁碟 或者光盘等各种可以存储程序代码的介质。
[0191]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序 产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介 质上,所述计算机程序被处理器执行时,计算机能够执行算力任务执 行方法,该方法包括:将当前任务卸载情况和当前环境状态信息,输 入任务卸载模型,确定至少一个任务分别一一对应的至少一个任务执 行策略;
[0192]
基于奖励函数,确定所述至少一个任务执行策略中每一个任务执 行策略的奖励值;
[0193]
基于所述每一个任务执行策略的奖励值,确定本地执行的第一任 务和卸载至边缘服务器执行的第二任务;
[0194]
其中,所述当前环境状态信息包括终端的计算资源和/或传输功 率,所述奖励函数和所述终端的任务执行总开支相关联,所述任务总 开支包括所述终端本地执行任务所产生的总开支和所述终端将所述 任务卸载至边缘服务器上执行所产生的总开支。
[0195]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上 存储有计算机程序,该计算机程序被处理器执行时实现以执行算力任 务执行方法,该方法包括:将当前任务卸载情况和当前环境状态信息, 输入任务卸载模型,确定至少一个任务分别一一对应的至少一个任务 执行策略;
[0196]
基于奖励函数,确定所述至少一个任务执行策略中每一个任务执 行策略的奖励值;
[0197]
基于所述每一个任务执行策略的奖励值,确定本地执行的第一任 务和卸载至边缘服务器执行的第二任务;
[0198]
其中,所述当前环境状态信息包括终端的计算资源和/或传输功 率,所述奖励函数和所述终端的任务执行总开支相关联,所述任务总 开支包括所述终端本地执行任务所产生的总开支和所述终端将所述 任务卸载至边缘服务器上执行所产生的总开支。
[0199]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部 件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的 部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也 可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或 者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付 出创造性的劳动的情况下,即可以理解并实施。
[0200]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解 到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然 也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现 有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软 件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光 盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所 述的方法。
[0201]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而 非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领 域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技 术方案进行修改,或者对其中部分技术特征进行等同替
换;而这些修 改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方 案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献