任务卸载方法和装置、电子设备及存储介质

文档序号:25543108发布日期:2021-06-18 20:39阅读:126来源:国知局
任务卸载方法和装置、电子设备及存储介质

本申请涉及任务卸载技术领域,具体而言,涉及一种任务卸载方法和装置、电子设备及存储介质。



背景技术:

在移动边缘计算网络中需要解决的关键问题之一是计算卸载问题,即无线用户设备选择将计算任务卸载到附近的服务器上执行还是在本地执行,以及如何为卸载到服务器的任务分配资源(如计算资源和能源资源)。

但是,经发明人研究发现,在现有技术中,任务要么全部在无线用户设备本地执行,要么全部卸载在服务器上远程执行,从而存在着任务卸载的效率低的问题。



技术实现要素:

有鉴于此,本申请的目的在于提供一种任务卸载方法和装置、电子设备及存储介质,以改善现有技术中存在的问题。

为实现上述目的,本申请实施例采用如下技术方案:

第一方面,本发明提供一种任务卸载方法,所述任务卸载方法应用于电子设备,所述电子设备与任务卸载系统通信连接,所述任务卸载系统包括第二设备和至少一个第一设备,所述任务卸载方法包括:

获取所述至少一个第一设备的待处理任务,其中,所述待处理任务包括目标任务;

将所述待处理任务输入预设的任务卸载模型,得到任务卸载策略,其中,所述任务卸载模型基于建立的系统模型进行训练得到;

将所述任务卸载策略发送至所述至少一个第一设备,以使所述至少一个第一设备基于所述任务卸载策略将所述目标任务卸载至所述第二设备,所述第二设备对所述目标任务进行执行处理。

在可选的实施方式中,所述任务卸载方法还包括获取任务卸载模型的步骤,该步骤包括:

根据所述任务卸载系统的成本参数建立系统模型和优化成本函数;

根据所述优化成本函数对所述系统模型进行训练,得到任务卸载模型。

在可选的实施方式中,所述根据所述任务卸载系统的成本参数建立系统模型和优化成本函数的步骤,包括:

根据所述至少一个第一设备和第二设备的成本参数建立系统模型;

根据所述系统模型建立优化成本函数。

在可选的实施方式中,所述任务卸载模型包括第一任务卸载模型和第二任务卸载模型,所述根据所述优化成本函数对所述系统模型进行训练,得到任务卸载模型的步骤,包括:

对所述优化成本函数进行分割处理,得到第一优化成本函数和第二优化成本函数;

根据所述第一优化成本函数对所述系统模型进行训练,得到第一任务卸载模型;

根据所述第二优化成本函数对所述系统模型进行训练,得到第二任务卸载模型。

在可选的实施方式中,所述任务卸载策略包括第一任务卸载策略和第二任务卸载策略,所述将所述待处理任务输入预设的任务卸载模型,得到任务卸载策略的步骤,包括:

将所述待处理任务输入所述第一任务卸载模型,得到第一任务卸载策略;

将所述待处理任务输入所述第二任务卸载模型,得到第二任务卸载策略。

在可选的实施方式中,所述根据所述第一优化成本函数对所述系统模型进行训练,得到第一任务卸载模型的步骤,包括:

基于所述系统模型建立深度强化学习模型;

根据所述第一优化成本函数对所述深度强化学习模型进行训练,得到第一任务卸载模型。

在可选的实施方式中,所述根据所述第二优化成本函数对所述系统模型进行训练,得到第二任务卸载模型的步骤,包括:

基于所述系统模型建立交替方向乘子法模型;

根据所述第二优化成本函数对所述交替方向乘子法模型进行训练,得到第二任务卸载模型。

第二方面,本发明提供一种任务卸载装置,所述任务卸载装置应用于电子设备,所述电子设备与任务卸载系统通信连接,所述任务卸载系统包括第二设备和至少一个第一设备,所述任务卸载装置包括:

任务获取模块,用于获取所述至少一个第一设备的待处理任务,其中,所述待处理任务包括目标任务;

策略获取模块,用于将所述待处理任务输入预设的任务卸载模型,得到任务卸载策略,其中,所述任务卸载模型基于建立的系统模型进行训练得到;

策略发送模块,用于将所述任务卸载策略发送至所述至少一个第一设备,以使所述至少一个第一设备基于所述任务卸载策略将所述目标任务卸载至所述第二设备,所述第二设备对所述目标任务进行执行处理。

第三方面,本发明提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述实施方式任一项所述的任务卸载方法。

第四方面,本发明提供一种存储介质,所述存储介质包括计算机程序,所述计算机程序运行时控制所述存储介质所在电子设备执行前述实施方式任一项所述的任务卸载方法。

本申请实施例提供的任务卸载方法和装置、电子设备及存储介质,通过将待处理任务输入任务卸载模型得到任务卸载策略,将任务卸载策略发送至第一设备,以使第一设备基于任务卸载策略将目标任务卸载至第二设备进行处理,实现了将目标任务卸载到服务器上进行处理,避免了现有技术中任务要么全部在无线用户设备本地执行,要么全部卸载在服务器上远程执行,所导致的任务卸载的效率低的问题。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例提供的数据处理系统的结构框图。

图2示出了本申请实施例提供的任务卸载系统的结构框图。

图3示出了本申请实施例提供的电子设备的结构框图。

图4为本申请实施例提供的任务卸载方法的流程示意图。

图5为本申请实施例提供的任务卸载模型的结构示意图。

图6为本申请实施例提供的深度强化学习模型的结构示意图。

图7为本申请实施例提供的ecra算法的流程示意图。

图8为本申请实施例提供的任务卸载方法的另一流程示意图。

图9为本申请实施例提供的任务卸载装置的结构框图。

图标:10-数据处理系统;100-电子设备;110-第一存储器;120-第一处理器;130-通信模块;200-任务卸载系统;210-第一设备;220-第二设备;900-任务卸载装置;910-任务获取模块;920-策略获取模块;930-策略发送模块。

具体实施方式

随着无线通信技术的飞速发展和智能移动设备的普及,近年来,各类移动应用的数量呈爆发增长的趋势。其中如人脸识别支付系统、在线云游戏、虚拟/增强现实(vr/ar)这些应用属于计算密集型与延时关键型应用,而运行这些应用的移动设备(如智能手机、可穿戴设备)通常只有有限的计算能力和电池电量,因此计算密集型应用和资源有限的设备之间的矛盾关系为提高用户的体验质量(thequalityofexperience,qoe)带来了挑战。

移动边缘计算(mobileedgecomputing,mec)是一种很有前途的技术,可以通过在边缘计算网络中设置边缘服务器为用户的移动设备提供强大的计算能力和能源资源,移动设备可以选择将计算密集型任务卸载到边缘服务器上,以减少任务的执行时延并节省本地设备消耗的电池能量。同时,随着无线电力传输技术(wirelesspowertransfer,wpt)的发展,无线用户设备的电池可以通过无线传输的方式持续进行充电,大大延长了电池供电时间,缓解了无线用户设备由于能量不足带来的限制。

在移动边缘计算网络中需要解决的关键问题之一是计算卸载问题,即无线用户设备选择将计算任务卸载到附近的mec服务器上执行还是在本地执行,以及如何为卸载到服务器的任务分配资源(如计算资源和能源资源)。一般情况下,无线网络由多个无线用户设备组成,无线用户设备的移动性导致的时变信道条件的动态变化使卸载调度过程变得复杂。一个好的计算卸载策略可以提高无线用户设备的整体计算能力,增强移动边缘计算系统的性能。因此,最近很多研究与发明都集中于设计高效的计算卸载和资源分配策略。

现有一些发明或研究提出了使用动态规划算法和分支定界法在移动边缘计算网络中进行计算任务卸载和资源分配,然而这些方法在求解优化变量时算法的计算复杂较大需要耗费大量的计算时间只适用于网络环境较简单的场景。基于启发式算法的卸载优化方法虽然可以减少计算复杂度,但这类方法通常需要大量的计算迭代才能达到满意的优化结果,这可能无法实际运用到动态的移动边缘计算网络中(即无线用户设备的移动引起的时变信道条件)进行在线计算卸载。

为了改善本申请所提出的上述至少一种技术问题,本申请实施例提供一种任务卸载方法和装置、电子设备及存储介质,下面通过可能的实现方式对本申请的技术方案进行说明。

针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本申请实施例针对上述问题所提出的解决方案,都应该是发明人在发明过程中做出的贡献。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。

图1为本申请实施例提供的数据处理系统10的结构框图,其提供了一种数据处理系统10可能的实现方式,参见图1,该数据处理系统10可以包括电子设备100、任务卸载系统200中的一种或多种。

其中,电子设备100与任务卸载系统200通信连接,电子设备100获取任务卸载系统200的待处理任务,根据待处理任务得到任务卸载策略,以使任务卸载系统200根据任务卸载策略进行任务卸载处理。

可选地,任务卸载系统200的具体组成不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,任务卸载系统200可以包括第二设备220和至少一个第一设备210。

需要说明的是,在一种可以替代的示例中,电子设备100和第一设备210可以为同一设备;在另一种可以替代的示例中,电子设备100和第二设备220可以为同一设备。

可选地,第一设备210和第二设备220的具体类型不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,第一设备210可以为无线用户设备,第二设备220可以为边缘计算服务器。

结合图2,在大规模移动边缘计算网络中包含一个带有无线访问接入点(accesspoint,ap)的边缘计算服务器和n个无线用户设备,其中,每一个无线用户设备都能在一定范围内移动,无线访问接入点的能量足够稳定,可以通过无线射频向无线用户设备传输电力。每个无线用户设备都配备有无线传输天线,可以与无线访问接入点进行数据传输,也可以从无线访问接入点接收能量。从无线访问接入点接收到的能量存储在无线用户设备的可充电电池中。

请参照图3,是本申请实施例提供的一种电子设备100的方框示意图,本实施例中的电子设备100可以为能够进行数据交互、处理的服务器、处理设备、处理平台等。电子设备100包括第一存储器110、第一处理器120及通信模块130。第一存储器110、第一处理器120以及通信模块130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

其中,第一存储器110用于存储程序或者数据。第一存储器110可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。

第一处理器120用于读/写第一存储器110中存储的数据或程序,并执行相应地功能。通信模块130用于通过网络建立电子设备100与其它通信终端之间的通信连接,并用于通过网络收发数据。

应当理解的是,图3所示的结构仅为电子设备100的结构示意图,电子设备100还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。

图4示出了本申请实施例所提供的任务卸载方法的流程图之一,该方法可应用于图3所示的电子设备100,由图3中的电子设备100执行。应当理解,在其他实施例中,本实施例的任务卸载方法中的部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。下面对图4所示的任务卸载方法的流程进行详细描述。

步骤s410,获取至少一个第一设备210的待处理任务。

其中,待处理任务包括目标任务。

步骤s420,将待处理任务输入预设的任务卸载模型,得到任务卸载策略。

其中,任务卸载模型基于建立的系统模型进行训练得到。

步骤s430,将任务卸载策略发送至至少一个第一设备210,以使至少一个第一设备210基于任务卸载策略将目标任务卸载至第二设备220,第二设备220对目标任务进行执行处理。

上述方法通过将待处理任务输入任务卸载模型得到任务卸载策略,将任务卸载策略发送至第一设备,以使第一设备基于任务卸载策略将目标任务卸载至第二设备进行处理,实现了将目标任务卸载到服务器上进行处理,避免了现有技术中任务要么全部在无线用户设备本地执行,要么全部卸载在服务器上远程执行,所导致的任务卸载的效率低的问题。

在步骤s410之前,本申请提供的任务卸载方法还可以包括获取任务卸载模型的步骤,该步骤可以包括:

根据任务卸载系统200的成本参数建立系统模型和优化成本函数;根据优化成本函数对系统模型进行训练,得到任务卸载模型。

可选地,根据任务卸载系统200的成本参数建立系统模型和优化成本函数的具体方式不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,可以包括以下子步骤:

根据至少一个第一设备210和第二设备220的成本参数建立系统模型;根据系统模型建立优化成本函数。

详细地,首先建立系统模型,整个系统时间可以被划分为多个恒定的时间片,表示为,每个时间片的长度都为t秒,且假设当每个无线用户设备在时间片t产生一个计算密集型任务时,这些任务的执行时间不会超过一个时间的长度。部署无线访问接入点的mec服务器的计算能力比无线用户设备强大得多,因此每个无线用户设备可以选择通过计算卸载的方式在服务器上远程执行任务,也可以选择在本地执行任务。

在每个时间片t,由于无线用户设备和无线访问接入点之间的无线信道增益对无线电力传输和任务数据传输的效率有很大影响,因此本申请使用表示时间片ti个无线用户设备于无线访问接入点的信道增益,时间片的长度足够小以保证在该时间片内信道增益的大小不变。根据瑞利衰落信道模型,无线信道增益可以表示为,其中表示是单位均值的独立指数随机变量,由下式表示:

其中,表示天线增益,表示载波频率,表示路劲衰落指数,表示第i个无线用户设备与无线访问接入点在二维平面的距离,从式中可以看出,随着距离的增大,无线信道增益越小。

其次建立无线用户设备能量获取模型,在每个时间片t的开始阶段,边缘计算服务器通过无线电力传输技术为每个用户设备充电秒,其中,第i个无线用户设备获得的能量为:

其中,表示无线能量获取的效率,表示无线访问连接点与用户设备的传输功率,表示无线充电所占时间比例。

本申请假设每一个无线用户设备的电池能量是有限的,在时间片t末(即时间片开始),用户设备剩余的电量为:

其中,为在时间片t消耗的能量,是在时间片t通过无线电力传输技术获得的能量,是无线用户设备所能容纳的最大电量。正常情况下,应为非负值,如果当前时间片没有充足的能量(),无线用户设备就会丢弃当前的任务,并将设置为0,在下一时间片重新执行该任务。

然后建立计算任务模型,本申请将在时间片ti个无线用户设备产生的任务可以表示为,其中表示任务的数据量(单位:比特),表示cpu处理1比特数据需要时间周期数。这样,在执行任务时需要的执行周期为。定义w为无线信道的带宽,信道之间的干扰可以忽略不计,如果k个无线用户设备在时间片t同时卸载当前的任务,无线带宽w将平均分配给各个决定卸载的用户设备。

在获得从无线访问接入点传输的能量后,每个无线用户设备需要决定是将计算任务卸载到边缘服务器端还是在本地执行,从而优化调度降低总体任务的延迟和能耗。本申请采用完全卸载的方式,即当前时间片到达的任务要么选择在无线用户设备本地执行,要么通过计算卸载在mec服务器上远程执行。使用表示在时间片ti个无线用户设备的卸载决策变量,其中,表示无线用户设备选择卸载到边缘计算服务器端(边缘计算),表示计算任务在无线用户设备本地执行。以下根据两种方式分别进行描述:

1)本地计算模型:

本申请移动边缘计算网络中的无线用户设备可以同时无线获取电能以及进行本地计算,表示第i个无线用户设备的计算能力(单位:cpu周期/秒),不同设备的计算能力不同,处理任务的本地计算时延表示为:

本地计算消耗的能量为:

其中,表示第i个无线用户设备在一个cpu周期消耗的能量,具体地,可以由下式计算:

2)边缘计算模型:

如果第i个无线用户设备选择将任务卸载到边缘计算服务器上进行远程执行,那么计算卸载过程可以分为三个部分:首先,无线用户设备通过无线传输方式将任务数据卸载到边缘计算服务器;然后,边缘计算服务器将计算资源分配给卸载的任务完成计算;最后,将任务的计算结果再通过无线传输的方式发送回相应的无线用户设备。由于任务计算结果的量远小于任务数据的量,本发明忽略了计算结果下载产生的传输延迟和能耗。因此,第i个无线用户设备到边缘计算服务器的计算卸载时延可以表示为:

边缘计算服务器运行任务的时间为:

其中,表示边缘服务器为任务分配的计算资源(单位:cpu周期/秒),用f表示整个边缘服务器的计算资源,需满足条件:

即表示从边缘服务器分配给所有卸载任务的计算资源总量应小于整个服务器的计算资源f

i个无线用户设备在边缘服务器上本地等待远程执行任务期间消耗的能量可以用下式表示:

其中,表示处于空闲状态下第i个无线用户设备的功耗。

基于上述建立的网络系统模型,本发明通过对任务卸载和资源分配的联合优化,提出使系统总成本最小化的优化成本函数,具体优化目标问题描述如下:

上式中整个系统的优化成本函数分为本地计算成本和计算卸载到边缘服务器的成本两部分,分别用表示,具体地表示为:

其中,ω1和ω3为任务处理延迟的权重,ω2和ω4为能耗的权重,并满足

问题p中表示所有无线用户设备的卸载决策变量,是指无线用户设备卸载数据所消耗的能量占总能量的百分比,是资源分配向量,每个分量表示边缘服务器分配给每个上传任务的计算资源。本发明规定如果无线用户设备i选择本地执行任务,那么边缘服务器将不会为其分配计算资源,即当时,。约束条件(a)表示无线用户设备要么选择将任务卸载到服务器执行要么再本地执行。约束条件(b)表示边缘服务器分配给执行卸载任务的任意无线用户设备的计算资源不能超过资源最大值。约束条件(c)保证分配的计算资源之和不超过边缘服务器的资源最大值。(f)规定在时间片t,每个无线用户设备的当前的电量既不能大于设备所能提供的最大能量,也不能为负值,否则需要加上惩罚项。

可选地,根据优化成本函数对系统模型进行训练,得到任务卸载模型的具体方式不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,任务卸载模型包括第一任务卸载模型和第二任务卸载模型,根据优化成本函数对系统模型进行训练,得到任务卸载模型的步骤可以包括以下子步骤:

对优化成本函数进行分割处理,得到第一优化成本函数和第二优化成本函数;根据第一优化成本函数对系统模型进行训练,得到第一任务卸载模型;根据第二优化成本函数对系统模型进行训练,得到第二任务卸载模型。

详细地,可以将原优化问题分解为1)无线用户设备的任务计算卸载与能量传输和2)边缘计算服务器计算资源与能量分配两个子问题,结合图5,可以分别设计基于深度强化学习方法和交替方向乘子法的系统优化框架。

显然,优化函数的求解p属于混合整数非线性规划(mixed-integernonlinearprogramming,minlp)问题,即它是一个非凸问题。当用户数n增加时,该问题的计算复杂度急剧增加,难以直接求解。因此,考虑到四个待求变量()的依赖性(例如,如果的某个分量为0,那么对应的分量的值也为0。本申请将问题分解为以下两个子问题,每个子问题的待求变量之间不存在依赖性:1)无线用户设备的任务计算卸载与能量传输(p1),即如何确定的值;2)边缘计算服务器计算资源与能量分配(p2)。一旦确定了的值,求解就会变得容易。

可选地,根据第一优化成本函数对系统模型进行训练,得到第一任务卸载模型的具体方式不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,可以包括以下子步骤:

基于系统模型建立深度强化学习模型;根据第一优化成本函数对深度强化学习模型进行训练,得到第一任务卸载模型。

详细地,对于子问题p1,每个无线用户设备产生的任务的计算卸载决策优化问题仍然是非凸的问题。传统的数值优化方法往往需要大量的迭代计算才能得到满意的结果,这使得其不适合在信道增益变化的动态环境中进行实时mec。因此,本发明采用强化学习来实现计算卸载的实时调度。

在信道条件和无线用户设备位置动态变化的计算卸载环境中,根据子问题p1,由于高维的状态空间和动作空间,移动边缘计算网络的系统状态转换概率通常无法获得,本申请基于深度强化学习的方法让每个无线用户设备根据当前系统状态选择是否将时间片到达的任务卸载到边缘服务器。

具体的p1问题可以表示为:

首先,基于强化学习的方法需要定义求解问题的状态、动作和奖励函数,具体如下:

状态:在每个时间片t,移动边缘计算网络的状态包括:每个无线用户设备与无线访问接入点距离以及信道增益,当前处理的每个计算任务的数据量大小,在时间片的开始阶段可用的能量,即

动作:根据问题p1的定义,需要确定每个无线用户设备的计算卸载向量与能量传输变量,即。基于观测到的状态,基于强化学习的方法通过学习系统的状态转移策略,获得状态到动作的近似最优映射。

奖励函数:当动作的值确定之后,的值可以根据ecra算法求解,优化问题的目标是使系统成本和由于电量不足丢弃任务引入的惩罚项之和最小化,而强化学习的目标是获得最大的奖励,因此,我们可以将强化学习算法的即时奖励函数定义为:

其中,表示当无线用户设备的能量不足以执行当前时间片到达的任务时(也就是),此时应该丢弃该任务,因此需要引入惩罚项尽可能防止发生这样的情况。本申请采用指示函数表示满足条件时引入任务失败的惩罚,因此惩罚代价成本函数表示为:

其中,为惩罚的权重,表示绝对值。

完成上述问题定义之后,本申请基于双延迟深度确定性策略梯度算法(twindelayeddeepdeterministicpolicygradient,td3)对复杂高维动作空间的探索策略进行改进,提出了基于强化学习的计算卸载和能量传输方法(rl-basedapproachforcomputationoffloadingandenergytransmission,rlcoet),从而避免了因难以充分探索动作空间而导致收敛缓慢或陷入局部最优解的问题。

td3算法包含两个评论家网络和一个动作网络,两个评论家网络分别估计两个q值(价值预测值),即,动作网络以当前状态为输入,输出相应的动作。为了加快动作空间维度较高时模型的学习进程,我们改进了原算法的探索或利用策略,经过该策略生成的动作结合ecra优化方法计算出当前时间片剩余的优化变量并进一步得到当前奖励和下一阶段状态,将作为一次与环境交互得到的经验存储到经验池中,并在神经网络训练阶段选取一批损失值较大的经验,通过优先经验重放技术来训练神经网络。以下是rlcoet算法用到的相关技术:

1)动作候选解集的生成与选择:

由于rlcoet算法的动作网络输出的动作属于高维空间,共维。直接引入高斯噪声的方式对动作空间进行探索只使用只有少量动作变量的情况,在高维空间中则很难通过有效的探索来使神经学习到最优策略,所以我们改进了动作空间中的探索策略。参见图6,动作网络有两个分支:一部分用于预测能量传输比例,它是0和1之间的一维连续变量,所以这一项在进行动作探索时引入高斯噪声并对结果进行剪裁,使其也保持在0和1之间;另一部分n维离散向量,求解的搜索空间为。动作网络的输出为连续的松弛决策变量,使用保序量化法生成个离散的决策动作。保序量化法具有平衡模型计算复杂度和模型性能的优点,可以在k较小的情况下实现对动作空间的广泛搜索。对于生成的每一个卸载决策向量,联合ecra算法求出的即时奖励函数计算得到当前的k个候选的奖励值,其中选择最高的值对应的动作变量作为当前最优卸载决策行为,记为,即:

2)优先经验回放

rlcoet算法每次与系统环境交互获得的经验存放到经验池中,其中,是在动作生成与选择的最佳行动和奖励。在模型训练过程中,我们从经验池中抽取一批经验样本来更新动作网络和评论家网络。与常见的强化学习中随机采样训练神经网络不同,本发明采用优先经验回放技术,以sumtree结构设置经验池,将样本按照优先级进行排序,如果样本的损失值较高,则优先级较高,更有可能被选取来更新网络参数,这种方式可以更有效地训练网络,加速模型的收敛。为了防止部分样本频繁地被选取训练造成的过拟合,以及网络在早期训练过程中容易出现离群值的问题,在样本的选取中加入了随机性,这样优先级较低的样本也有可能被选到,样本i被选取的概率是:

其中,是样本i的优先级,是优先级被使用的数量。

3)策略更新:

设演员网络和对应的目标演员网络的参数分别表示为,评论家网络和对应的评论家目标网络的参数分别表示为,由于两个评论家网络的输出q值不同,选择两个q值中小的一个作为网络的更新目标,即:

其中,一个与相关的评论家网络用于更新,的更新目标。

由于网络参数的初始值不同,在网络训练之初选择两个评论家网络预测的较小的数值来估计q值,以防止过高估计q值造成的偏差,因为在每一次更新时都会出现一个小的误差,当网络更新很多次时,误差就会累积起来,导致性能不佳。除了使用延迟策略更新来避免偏差的过度积累外,本发明还对目标动作空间周围邻域进行数值平滑化以减少误差,即在目标动作网络中加入一定量的噪声

其中,噪声可以看作是一种正则化,它使值函数的更新更加平稳,让目标q值的预测值更精确、更鲁棒。

评论家网络的估计值对目标网络进行近似,它们的损失函数l计算如下

由于动作包含离散向量和连续变量,所以网络损失函数也包含两部分。对于变量,推导出损失函数的梯度,以更新动作网络的参数,如下所示:

其中,是从优先经验回放经验池中选择的样本数,对于卸载向量,使用平均交叉熵损失来更新动作网络的参数

其中,的卸载向量部分。综上,更新动作网络的总损失函数为:

其中,为变量损失项的权重。

可选地,根据第二优化成本函数对系统模型进行训练,得到第二任务卸载模型的具体方式不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,可以包括以下子步骤:

基于系统模型建立交替方向乘子法模型;根据第二优化成本函数对交替方向乘子法模型进行训练,得到第二任务卸载模型。

详细地,对于子问题p2,由于p2的待求变量存在大量的约束条件,强化学习很难在有限的时间内获得理想的策略,在求解问题p1后,原问题p变成了一个凸优化问题,这时就可以使用传统的凸优化算法来解决。本申请基于交替方向乘子法(alternatingdirectionmethodofmultipliers,admm)提出能量与计算资源分配算法(energyandcomputation-resourceallocation,ecra)求解p2,其时间复杂度仅为o(n)。

也就是说,可以使用交替方向乘子法获得每个上传至边缘服务器的任务分配的计算资源大小与能量分配比例。根据rlcoet强化学习算法,可以得到问题p1的优化变量。本步骤中采用基于admm的方法来解决问题p2。admm方法是一种求解优化问题的计算框架,适用于解决大规模分布式凸优化问题。admm通过“分解-协调”的处理将一个大的全局问题分解成多个较小且容易解决的子问题,并协调各子问题的解,从而得到总的全局问题的解。这种方法弥补了最优解附近的惩罚项的系数趋于无穷大的缺点。为了将原优化目标问题p转换为admm方法容易求解的形式,引入两个额外的变量,并由此提出ecra算法,转换后的问题p2可表示为:

时,的值与参与本地执行的设备无关。p2被转化为包含两类变量的带约束优化问题。这种结构可以很容易地处理优化目标中的正则化项。p2采用admm算法与增广拉格朗日方法求解,如下所示:

其中,。惩罚项系数为一个固定值。通过逐渐迭代更新的值来解决上式优化问题。假设第j轮的变量为,那么在第j+1轮中更新各变量的步骤如下:

1)给定第j轮的变量,通过最小化上式的值更新,即:

其中,在中存在对n的求和运算,因此可以将其分解为n个并行计算的子问题。每一个子问题可以表示为:

通过这样的方式,可以将上式可以转化为满足限制条件的凸优化问题,其解可以通过传统的优化算法得到。因此,根据n个子问题的解,我们可以得到的值。上式的计算复杂度为o(1),n问题的总复杂度为o(n)。

2)上一步得到的值后,就可以在给定的情况下,更新的值,使最小化,可以将此步骤的优化问题表示为:

此问题的计算复杂度为o(n)。

3)当求出的值后,通过最小化更新的值,如下式所示:

具体地,本问题的计算复杂度为o(n)。

不断迭代执行上述三个步骤,直到满足以下两个条件:绝对误差和相对误差均小于给定的阈值。基于admm的方法,问题p2可由图7所示的ecra算法求解并且可以保证算法的收敛性,其收敛性与有关,根据以上对各步计算复杂度的分析,总算法的复杂度为o(n)。值得注意的是,由于原问题是非凸问题,虽然不能保证用该算法能找到原问题的最优解,但得出的近似解与最优解的误差在可控范围内。

最后,可以根据深度强化学习模型与交替方向乘子法模型的计算结果提出有效的优化算法训练模型直到满足要求,得到任务卸载模型。

需要说明的是,整个基于强化学习的调度优化方法可以由图8表示,与训练深度强化学习模型和交替方向乘子法模型的步骤对应。首先,初始化评论家网络的参数和动作网络参数,初始化强化学习评论家目标网络和动作目标网络的参数以及经验池的经验数据,初始化大规模无人机辅助移动边缘计算网络模型的参数与神经网络训练轮数t=1。其次,判断当前随机概率是否小于预设值,若是,则直接输出当前动作,若否,则量化k组候选解集,对动作加入高斯噪声,选择最优的动作。然后,根据ecra算法计算资源与能量分配优化变量,获得下一阶段状态与立即奖励,并将经验存入经验池,根据优先经验回放策略从经验池中抽取一批经验,更新神经网络参数,t=t+1,判断t是否小于t,若是,则重新判断随机概率,若否,则结束。

对于步骤s420,需要说明的是,得到任务卸载策略的具体方式不受限制,可以根据实际应用需求进行设置。例如,在一种可以替代的示例中,任务卸载策略包括第一任务卸载策略和第二任务卸载策略,将待处理任务输入预设的任务卸载模型,得到任务卸载策略的步骤可以包括以下子步骤:

将待处理任务输入第一任务卸载模型,得到第一任务卸载策略;将待处理任务输入第二任务卸载模型,得到第二任务卸载策略。

其中,第一任务卸载策略可以包括每个无线用户设备的计算卸载决策变量与设备无线充电所占时间比例,第二任务卸载策略可以包括每个上传至边缘服务器的任务分配的计算资源大小与能量分配比例。

也就是说,本申请实施例提供了一种大规模移动边缘计算网络中的高效在线卸载方法,包括以下子步骤:

步骤1、构建针对大规模移动计算网络的系统模型并给出基于无线充电设备卸载任务执行时延与消耗能量的优化目标函数。

步骤2、将原优化问题分解为1)无线用户设备的任务计算卸载与能量传输和2)边缘计算服务器计算资源与能量分配两个子问题,分别设计基于深度强化学习方法和交替方向乘子法的系统优化框架。

步骤3、针对步骤2中子问题1),提出基于深度强化学习的方法求出每个无线用户设备的计算卸载决策变量与设备无线充电所占时间比例。

步骤4、针对步骤2中子问题2),使用交替方向乘子法获得每个上传至边缘服务器的任务分配的计算资源大小与能量分配比例。

步骤5、根据步骤3与步骤4的计算结果提出有效的优化算法训练模型直到满足要求。

本申请使用一种全新的针对移动边缘计算网络的计算卸载方法,提出的rlcoet算法可以通过学习与动态边缘计算网络环境下因无线用户设备移动产生的交互经验,获得高效的卸载策略。与传统的优化方法相比,本申请的方法减轻了通过反复迭代计算解决调度优化的要求,并使所有任务获得满意的计算延迟和较低的能耗。相对于现有的大多数基于学习的方法,将所有的调度变量一起优化,在求解变量较多的情况下可能面临收敛麻烦,本算法将整个优化问题分解为两个子问题(计算卸载和能量传输、计算资源和能量分配)并分别进行求解,有效降低了算法复杂度。通过改进深度学习算法的优化动作变量生成策略和经验采样策略,使所提出的算法易收敛性,并在具有大规模调度变量的mec网络中获得接近最优的计算卸载策略。

结合图9,本申请实施例还提供了一种任务卸载装置900,该任务卸载装置900实现的功能对应上述方法执行的步骤。该任务卸载装置900可以理解为上述电子设备100的处理器,也可以理解为独立于上述电子设备100或处理器之外的在电子设备100控制下实现本申请功能的组件。其中,任务卸载装置900可以包括任务获取模块910、策略获取模块920和策略发送模块930。

任务获取模块910,用于获取至少一个第一设备210的待处理任务,其中,待处理任务包括目标任务。在本申请实施例中,任务获取模块910可以用于执行图4所示的步骤s410,关于任务获取模块910的相关内容可以参照前文对步骤s410的描述。

策略获取模块920,用于将待处理任务输入预设的任务卸载模型,得到任务卸载策略,其中,任务卸载模型基于建立的系统模型进行训练得到。在本申请实施例中,策略获取模块920可以用于执行图4所示的步骤s420,关于策略获取模块920的相关内容可以参照前文对步骤s420的描述。

策略发送模块930,用于将任务卸载策略发送至至少一个第一设备210,以使至少一个第一设备210基于任务卸载策略将目标任务卸载至第二设备220,第二设备220对目标任务进行执行处理。在本申请实施例中,策略发送模块930可以用于执行图4所示的步骤s430,关于策略发送模块930的相关内容可以参照前文对步骤s430的描述。

此外,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任务卸载方法的步骤。

本申请实施例所提供的任务卸载方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行上述方法实施例中的任务卸载方法的步骤,具体可参见上述方法实施例,在此不再赘述。

综上所述,本申请实施例提供的任务卸载方法和装置、电子设备及存储介质,通过将待处理任务输入任务卸载模型得到任务卸载策略,将任务卸载策略发送至第一设备,以使第一设备基于任务卸载策略将目标任务卸载至第二设备进行处理,实现了将目标任务卸载到服务器上进行处理,避免了现有技术中任务要么全部在无线用户设备本地执行,要么全部卸载在服务器上远程执行,所导致的任务卸载的效率低的问题。

以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1