一种基于多分类和分布式强化学习的卸载决策优化方法

文档序号:28407267发布日期:2022-01-08 02:03阅读:66来源:国知局
一种基于多分类和分布式强化学习的卸载决策优化方法

1.本发明涉及智能巡检集群边缘计算的计算卸载领域,尤其涉及一种基于多分类和分布式强化学习的卸载决策优化方法。


背景技术:

2.人类的生产生活与天气预报、电网、通信网络密切相关。气象预报的准确性,电网和通信网络的安全稳定运行,始终依赖于各类气象观测设施、电力设施和网络设施的正常运行。但是由于各种设施所处环境的复杂性和动态性(害虫追踪)以及监测对象的多样性(设施监测和生物监测),简单的引入固定传感器和摄像机可能无法完全满足监测需求。因此,对设备进行长期有效的动态监测是保持其连续运行的重要手段。智能巡检集群是移动全方位监控的有效方案之一,其通过使用多种低成本移动设备(如轻型无人机、智能汽车)构建统一控制、高效协作的动态巡检群保障大型设施正常运行。集群内节点之间动态协作,相互配合完成监控任务,将监控数据传输到云端,处理后将结果返回到控制中心。最后,控制中心将根据数据处理的结果决定是否对设施采取维修措施。
3.但是智能巡检集群也存在一定的局限。检测设备(无人机、智能汽车等)由于机动性强、体积小、生产成本低等严格限制,在电池寿命和计算能力方面仍存在缺陷。同时,随着硬件和互联网技术的发展,检测设备(如无人机、智能汽车等)采集的数据类型多样化,数据处理和存储能力也有所增强。
4.以云计算为核心的传统数据处理模式在满足传输时延、能耗和数据安全等方面缺陷明显。移动边缘计算技术是平衡智能巡检集群用户体验质量和计算能力的一种有效措施,通过算法,将计算任务传输到边缘设备进行处理,节省设备能耗和任务处理时延,使集群计算能力得到充分利用的同时保障了集群的正常运转。
5.计算卸载主要包含以下两个问题:卸载决策问题和资源分配问题.卸载决策是指用户决定是否卸载、卸载多少以及卸载什么.卸载决策结果分为本地执行(不卸载)、部分卸载和全部卸载.卸载决策的具体结果由用户的能量消耗和完成计算的任务时延决定.卸载决策目标主要分为降低时延、降低能耗以及权衡时延和能耗三个方面.资源分配是指用户终端应该将决定卸载的计算任务分配到一个或多个边缘服务器执行。
6.目前,计算卸载作为移动边缘计算的关键技术,计算卸载已有很多相关的研究成果。例如具有代表性的方法有粒子群优化算法,模拟退火算法,深度强化学习方法等。以上方法为边缘计算在用户任务数量-用户数量-边缘服务器数量方面局限于一个或两个因素数量为一的系统模型中计算卸载的实现提供了坚实的理论基础,并且实验结果表明了方法的有效性。但是针对类似基于智能巡检集群的多任务-多用户-多边缘服务器的系统模型的计算卸载研究工作却很少。而对于智能巡检集群而言,集群内所有设备均通过簇头设备集中统一管控,较一般的使用的移动终端独立工作模式区别明显。因此,针对一定区域中,多个边缘服务器位置固定场景中,智能巡检集群位置不断的变化的同时影响设备与服务器之间网络连接的情况下,为了适应集群移动的网络参数随机变化,寻求如何用最小的时延和
能耗代价,在一定时间内,完成在该时间段内所有设备产生全部任务的卸载决策显得尤为重要。


技术实现要素:

7.针对现有技术之不足,一种基于多分类和分布式强化学习的卸载决策优化方法,所述方法包括:
8.步骤1:基于一个智能巡检集群的边缘系统模型,首先获取所述模型内智能巡检设备和边缘设备的参数信息和网络参数信息,然后采集若干不同时间段t内所述智能巡检设备产生的任务信息以及所述智能巡检设备与所述边缘设备之间的距离信息,并对采集到的信息进行预处理;
9.步骤2:计算所述边缘系统完成时间段t内的任务处理时延和能耗,分别包括本地计算和边缘计算,具体如下:
10.本地计算的时延计算方法是某个任务i的cpu工作负载除以计算任务i的所述智能巡检设备n的cpu频率;
11.本地计算的能耗计算的数学表达式是其中是智能巡检设备的有效开关电容。
12.边缘计算时延和能耗的计算方式分为两部分,一部分是智能巡检设备传输任务数据到边缘设备所产生的时延和能耗,另一部分是边缘设备处理任务所产生的时延和能耗;
13.对每个时间段t内,智能巡检集群的边缘系统内所有的智能巡检设备产生的任务并行执行,即t时间段内同时处理该时间段产生的所有任务,因此所述系统的时延取所有任务中处理时延最大的值,而能耗取处理所有任务能耗的总和;
14.步骤3:构建分布式强化学习神经网络结构,基于多分类和分布式思想,所述网络结构包括多个深度学习神经网络dnn,配置所述神经网络dnn的个数k,所述神经网络的输入层、输出层和隐藏层的神经元个数,确定神经网络的超参数。
15.步骤4:训练构建好的分布式强化学习神经网络,具体包括两个阶段,候选卸载决策动作生成阶段和资源分配阶段,具体包括:
16.步骤41:候选卸载决策动作生成阶段,具体为将步骤1获取的所述任务信息和距离信息分别作为k个dnn的输入进行前向传播获得输出结果,生成设定时间段t内所有任务的候选卸载决策动作,计算所有候选卸载决策动作的时延和能耗的加权和,选出两者加权和最小的候选动作;
17.步骤42:资源分配阶段,将任务信息、距离信息以及任务的卸载决策存入共享内存,具体包括:
18.步骤421:计算每个候选卸载决策动作是否满足目标问题的约束条件∑
i∈i
x
niw
(t)fn(t)≤f
n,max
和∑
ni∈ni
x
niw
(t)f
nw
(t)≤f
w,max
;如果不满足,则舍弃该候选动作,然后从剩余的候选卸载决策动作中选择奖励函数re(t)值最大的方案;
19.步骤422:在此之后,奖励函数re(t)最大对应的卸载决策以及输入信息组成元组((r
ni
(t),dis
ni
(t),∑
w∈w
x
niw
(t)))存储在一个共享内存中;
20.步骤423:对于k个dnn,每隔固定数量的时间段t之后,每个dnn分别从所述共享内
存中随机采样进行学习,获取部分任务信息、距离信息和候选卸载决策动作信息对dnn进行训练,通过采用优化器和最小化交叉熵损失函数进行神经网络的参数θk更新,使更新后的参数θk让目标函数不断逼近全局最小;
21.步骤5:每个神经网络经过一定episode的训练之后,损失函数趋于平稳,停止训练,固定此时的参数θk,此时输入选择时间段t+1内的任务信息和距离信息即可获得该选择时间段内所有任务最佳的卸载决策,实现最小化系统能耗和加权和的目的。
22.根据一种优选的实施方式,步骤41的候选卸载决策动作生成阶段包括:
23.步骤411:将任务i的计算节点视为w+1个类别,将任务i在本地计算视为类别0,将边缘设备按序号1,2

w排列,任务在序号为w的边缘设备计算视为类别w,使用了一个基于dnn的多分类模型,并以softmax函数作为输出层激活函数,输出层神经元的值表示每个任务的卸载到不同节点的概率;
24.步骤412:在每个时间段t,集群簇头设备收集s(t),s(t)表示智能巡检设备的任务信息r和智能巡检设备与边缘设备之间的距离信息,距离信息与数据传输速率和能源消耗相关,将上述信息按到达的先后顺序存储在簇头设备的内存中,将上述信息依次作为k个dnn的输入,然后并行计算k个dnn;
25.步骤413:然后输出每个任务i属于每个类别的概率,并按照概率从高到低的顺序排列类别索引,直到用dnn计算出每个时间段t内的所有任务卸载到各个节点的概率,每个dnn的输出根据所有任务的输入顺序取列号相同的节点,形成t时段内所有任务的卸载决策,最后共生成k(w+1)个候选卸载决策动作。
26.根据一种优选的实施方式,步骤3构建分布式强化学习神经网络结构后,需构建目标函数,在移动边缘计算系统中,要使系统的用户服务质量提升,系统的能耗和时延应该越小越好,因此,以所述卸载决策系统时延和能耗的加权和为其中的目标函数,即:
[0027][0028]
上述表达式中,α和β分别表示所有任务所需时间和能量消耗的加权参数α,β∈[0,1]andα+β=1。
[0029]
本发明的有益效果在于:
[0030]
1.在步骤1中,采集不同时间段t智能巡检设备与固定边缘设备距离信息,在步骤2提到距离信息与智能巡检设备与边缘设备之间的数据传输速率相关,因此不同的时间段t,所述系统的信道状态都会发生变化。通常时间段t的划分间隔很小,因此提出的卸载决策优化方法可以应对高频率的巡检设备移动之间的信道状态变化和固定位置的边缘服务器场景。
[0031]
2.在步骤2中,对时间段t内所述系统的所有智能巡检集群设备产生的任务并行执行,包括本地计算和边缘计算,在计算时延和能耗时,单个设备包括智能巡检设备和边缘设备执行多个任务时,会对c
p
u资源进行分配。上述计算方式跟真实设备的资源分配方式更加接近,所述卸载决策方法针对同类型的边缘计算模型通用性更佳。
[0032]
3.在步骤3和4中,通过多分类思想构建k个dnn网络确定任务的卸载决策,可以有效解决上述系统中的集中管控的多移动设备-多任务-多边缘服务器边缘计算系统模型最佳卸载决策问题。
[0033]
4.在步骤4中,本发明提出的卸载决策方法在t时间段产生的候选动作方案个数为
k(w+1),事实上,全部的卸载方案有2
ni(w+1)
种,因此,上述方法具有更大概率更快速度获得最佳卸载决策的优势,降低系统卸载所需的时延和能耗的加权和,达到保证智能巡检集群有效运行时间和保障监控功能的目的。
[0034]
5.在步骤3中,构建的dnn网络输入层神经元分别表示设备n产生的任务i和设备n到各个边缘设备的距离,输出层神经元表示任务卸载到可计算节点的概率。因此,在边缘设备运行稳定无故障的情况下,智能巡检集群设备增加或减少,只需将输入信息修改之后进行计算,无需修改网络结构重新对网络进行训练,大大提高了所述卸载决策方法的普适性。
附图说明
[0035]
图1是本发明卸载决策方法的流程图;和
[0036]
图2是本发明卸载决策方法的结构图。
具体实施方式
[0037]
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
[0038]
下面结合附图进行详细说明。
[0039]
本发明提出了一种基于多分类和分布式强化学习的卸载决策优化方法。本方法基于边缘计算的关键技术计算卸载基础上,首先分析用于用户任务数量-用户数量-边缘服务器数量方面局限于一个或两个因素数量为一的系统模型的多数计算卸载算法对于解决多任务-多用户-多边缘服务器的系统模型的计算卸载问题并不适用,给出了基于多分类和深度分布式强化学习的卸载决策优化方法作为该系统模型计算卸载的方案,通过神经网络一定次数的迭代训练和学习,在每个时隙内,得到了系统时延和能耗加权和较低的任务卸载方案。
[0040]
智能巡检集群的工作模式如下,多个可移动智能终端设备(智能小车、无人机等)在拥有多个边缘设备的场景中通过无线网络连接组成一个集群,集群内设备分为簇头设备和从设备,控制中心向集群簇头发送指令,然后簇头转发消息至从设备,实现集群内设备协同工作,完成实时动态监控职能。集群内的簇头不可用的情况下可以重新自主选择新的簇头。对于智能巡检集群的所有设备,每个时隙t,每个设备就会产生n个待处理任务,簇头设备收集来自从设备的待处理任务信息和边缘服务器信息,并基于边缘服务器的数量确定卸载决策,然后将卸载消息分发至各设备然后各设备按照指令执行任务卸载和计算,最后返回结果至各设备集中到簇头,发送至控制中心。
[0041]
现结合图1和图2,对本发明的一种基于多分类和分布式强化学习的卸载决策优化方法进行详细阐述,具体包括:
[0042]
步骤1:基于一个智能巡检集群的边缘系统模型,首先获取模型内智能巡检设备和边缘设备的参数信息和网络参数信息,然后采集若干不同时间段t内智能巡检设备产生的任务信息以及智能巡检设备与边缘设备之间的距离信息。
[0043]
距离信息是指智能巡检设备和场景中固定边缘设备的实际距离。
[0044]
参数信息指智能巡检设备和边缘设备的参数信息,如巡检设备的c
p
u频率,以及网络参数信息,如系统的网络带宽。
[0045]
智能巡检设备是指:可移动的,具有数据(图片,视频等)采集功能和一定计算能力的移动设备,例如智能小车,无人机等。
[0046]
边缘设备是是由基站和服务器共同组成,基站用于接收任务数据,服务器用于处理任务。
[0047]
智能巡检设备和边缘设备这类具有一定计算能力的设备统称为可计算节点。
[0048]
一种具体的实施方式,设每个时间段t内智能巡检设备数量n={1,2,3,4

n}、每个巡检设备产生的任务数量i={1,2,3,4

,i}、边缘服务器的数量w={1,2,3,4

w}。智能巡检设备n在每个时间段t内所产生的第i个任务表示为r
ni
(t)=(c
ni
(t),s
ni
(t)),其中,c
ni
(t)表示执行任务r
ni
(t)所需的cpu工作负载,s
ni
(t)表示计算任务r
ni
(t)所需的数据。边缘设备位于直径为200米的圆形区域边界上,智能巡检设备位于圆形区域内,即系统内每一个智能巡检设备n到边缘设备w的距离信息表示为dis
nw
=randint(0,200]。
[0049]
本发明方法还包括预处理信息包括对采集的任务信息和距离信息的归一化,使得神经网络训练效果更好。
[0050]
步骤2:计算边缘系统完成时间段t内的任务处理时延和能耗,分别包括本地计算和边缘计算,具体如下:
[0051]
本地计算的时延计算方法是某个任务i的cpu工作负载除以计算任务i的智能巡检设备n的cpu频率,数学表示:其中c
ni
(t)表示某个时间段智能巡检设备n产生的任务i的cpu的工作负载,fn(t)表示智能巡检设备n的cpu频率,本地计算的能耗计算的数学表达式是其中是智能巡检设备的有效开关电容。
[0052]
边缘计算时延和能耗的计算方式分为两部分,一部分是智能巡检设备传输任务数据到边缘设备所产生的时延和能耗,另一部分是边缘设备处理任务所产生的时延和能耗。
[0053]
智能巡检设备传输任务时所产生的时延表示为计算任务所需的数据除以设备n将数据传输到边缘服务器w的数据传输速率其中,s
ni
(t)表示计算智能巡检设备n产生的任务i所需的数据,r
nw
(t)表示为智能巡检设备n与边缘设备w之间的数据传输速率,与智能巡检设备到边缘服务器的距离dis
nw
相关。传输任务的能耗表示为移动设备传输功耗乘以传输时间
[0054]
边缘设备处理任务所需的时延与本地计算的时延计算方式一致:能耗的计算方式为:其中,s
ni
(t)表示计算巡检设备n产生的任务i所需的数据,qw边缘设备每消耗1bit所需的能量。
[0055]
t时间段内,智能巡检设备n产生的任务i在可计算节点w的卸载决策表示为x
niw
(t)∈{0,1},其中x
niw
(t)=0表示任务不在w节点处理,反之,x
niw
(t)=1表示任务在w节点处理。此外,w=0代表该可计算节点是产生任务的智能巡检设备n。
[0056]
因此,智能巡检设备n产生的任务i的处理时延可以表示为:
能耗表示为
[0057]
对每个时间段t内,智能巡检集群的边缘系统内所有的智能巡检设备产生的任务并行执行,即t时间段内同时处理该时间段产生的所有任务(包括本地计算和边缘计算),因此系统的时延应该取所有任务中处理时延最大的值d
total
(t)=max
n∈n,i∈idni
(t),而能耗应该取处理所有任务能耗的总和e
total
(t)=∑
n∈n

i∈ieni
(t)。
[0058]
步骤3:构建分布式强化学习神经网络结构,基于多分类和分布式思想,网络结构包括多个深度学习神经网络dnn,配置dnn的个数k,神经网络的输入层、输出层和隐藏层的神经元个数。确定神经网络的超参数,具体如下:
[0059]
步骤31:随机初始化k个dnn的参数θk。
[0060]
步骤32:初始化共享内存
[0061]
步骤33:设置时间段t的数量t。
[0062]
步骤3构建分布式强化学习神经网络结构后,需构建目标函数,在移动边缘计算系统中,要使系统的用户服务质量提升,系统的能耗和时延应该越小越好。因此,以卸载决策系统时延和能耗的加权和为其中的目标函数,即:
[0063][0064]
上述表达式中,α和β分别表示所有任务所需时间和能量消耗的加权参数α,β∈[0,1]andα+β=1。在计算过程中,加入约束条件如下:
[0065]
x
niw
(t)∈{0,1}
[0066][0067][0068][0069]
针对上述目标函数和约束条件,本发明的基于多分类和分布式强化学习的之智能巡检集群卸载决策优化方法包括如下阶段:
[0070]
将深度强化学习应用于移动边缘计算的计算卸载,首先需要确定系统状态空间、动作空间和奖励函数。
[0071]
强化学习是机器学习的一种范式和方法,用来描述和解决agent在与环境交互的过程中学习策略以实现收益最大化或特定目标的问题。典型的强化学习模型是马尔科夫决策过程模型(markov decision process,mdp),该模型一般包括状态空间(s)、行动空间(a)和奖励函数(r)。
[0072]
深度强化学习将深度学习的感知能力和强化学习的决策能力相结合,可以直接根据输入的信息进行控制,是一种更接近人类思维方式的人工智能方法。深度学习不仅能够为强化学习带来端到端优化的便利,而且使得强化学习不再受限于低维的空间中,极大地
拓展了强化学习的使用范围。
[0073]
智能巡检集群的移动边缘计算系统中,巡检测设备的任务和位置是时随时间变化的,因此目标问题可以转化为mdp问题。
[0074]
步骤3还包括确定卸载决策系统的状态空间、动作空间和奖励函数。
[0075]
在某个时间段t,卸载决策系统的状态空间表示为:
[0076]
s(t)={r(t),d(t)}
[0077]
上述式中,r(t)表示时间t所有设备产生的任务信息,d(t)表示时间t设备与边缘服务器之间的距离信息;
[0078]
在某个时间段t,卸载决策系统的动作空间表示为:
[0079]
a(t)={x
niw
(t)|x
niw
(t)∈{0,1}}
[0080]
上述式中,a(t)表示设备产生的任务之只能在本地执行或者全部卸载到某一个边缘服务器中执行;
[0081]
在某个时间段t,卸载决策系统的奖励函数表示为:
[0082][0083]
上述式中,re(t)表示时间t所有执行所有任务所需时延和能耗的加权和的负值,奖励函数的值越大,表示选择的动作越好。
[0084]
步骤4:基于分布式强化学习神经网络的训练具体包括两个阶段,候选卸载决策动作生成阶段和资源分配阶段,具体包括:
[0085]
步骤41:候选卸载决策动作生成阶段,具体为将步骤1获取的任务信息和距离信息分别作为k个dnn的输入进行前向传播获得输出结果,生成设定时间段t内所有任务的候选卸载决策动作,计算所有候选卸载决策动作的时延和能耗的加权和,选出两者加权和最小的候选动作。
[0086]
步骤411:将任务i的可计算节点视为w+1个类别,将任务i在本地计算视为类别0,将边缘设备按序号1,2

w排列,任务在序号为w的边缘设备计算视为类别w,使用了一个基于dnn的多分类模型,并以softmax函数作为输出层激活函数,输出层神经元的值表示每个任务的卸载到不同节点的概率。类别即产生任务i的智能巡检设备以及系统内w个可用的边缘设备。
[0087]
步骤412:在每个时间段t,集群簇头设备收集s(t),s(t)表示智能巡检设备的任务信息r和智能巡检设备与边缘设备之间的距离信息,距离信息与数据传输速率和能源消耗相关,将上述信息按到达的先后顺序存储在簇头设备的内存中,将上述信息依次作为k个dnn的输入,然后并行计算k个dnn。任务信息和距离信息的重组,即排列后所有任务按单个任务,任务设备到所有边缘设备的距离格式排列在簇头设备内存中。
[0088]
簇头设备是指:n个智能巡检设备通过无线网络构成一个集群,控制中心对集群内的所有设备的操作信息由集群内的一个设备接收并转发到集群内的其他设备,该设备称为簇头。
[0089]
步骤413:然后输出每个任务i属于每个类别的概率,并按照概率从高到低的顺序排列类别索引,直到用dnn计算出每个时间段t内的所有任务卸载到各个节点的概率,每个dnn的输出根据所有任务的输入顺序取列号相同的节点,形成t时段内所有任务的卸载决策,最后共生成k(w+1)个候选卸载决策动作。任务i的全部可计算节点,包括产生任务i的智
能巡检设备n,以及智能巡检集群的边缘计算系统中的所有可用边缘计算节点。
[0090]
步骤42:资源分配阶段,将任务信息、距离信息以及任务的卸载决策存入共享内存资源分配,是指用户终端应该将决定卸载的计算任务分配到一个或多个边缘服务器执行,具体包括:
[0091]
步骤421:计算每个候选卸载决策动作是否满足目标问题的约束条件∑
i∈i
x
niw
(t)fn(t)≤f
n,max
和∑
ni∈ni
x
niw
(t)f
nw
(t)≤f
w,max
;如果不满足,则舍弃该候选动作,然后从剩余的候选卸载决策动作中选择奖励函数re(t)值最大的方案;
[0092]
步骤422:在此之后,奖励函数re(t)最大对应的卸载决策以及输入信息组成元组((r
ni
(t),dis
ni
(t),∑
w∈w
x
niw
(t)))存储在一个共享内存中。
[0093]
步骤423:对于k个dnn,每隔固定数量的时间段t之后,每个i)nn分别从共享内存中随机采样进行学习,获取部分任务信息、距离信息和候选卸载决策动作信息对dnn进行训练,通过采用优化器和最小化交叉熵损失函数进行神经网络的参数θk更新。
[0094]
通过随机采样,可以减少样本之间的相关性;损失函数能够衡量当前网络训练任务是否完成。优化器指在深度学习反向传播过程中,指引损失函数(目标函数)的各个参数往正确的方向更新合适的大小,使得更新后的各个参数让损失函数(目标函数)值不断逼近全局最小。
[0095]
步骤5:每个神经网络经过一定episode的训练之后,损失函数趋于平稳,停止训练,此时输入选择时间段t+1内的任务信息和距离信息即可获得该选择时间段内所有任务最佳的卸载决策,实现最小化系统能耗和加权和的目的,从而提升智能巡检系统的用户满意度。在系统中,单个episode指每个固定数量的时间段t。
[0096]
需要注意的是,上述具体实施例是示例性的,本领域技术人员可以在本发明公开内容的启发下想出各种解决方案,而这些解决方案也都属于本发明的公开范围并落入本发明的保护范围之内。本领域技术人员应该明白,本发明说明书及其附图均为说明性而并非构成对权利要求的限制。本发明的保护范围由权利要求及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1