CN114546608A - 一种基于边缘计算的任务调度方法 - Google Patents
一种基于边缘计算的任务调度方法 Download PDFInfo
- Publication number
- CN114546608A CN114546608A CN202210007565.7A CN202210007565A CN114546608A CN 114546608 A CN114546608 A CN 114546608A CN 202210007565 A CN202210007565 A CN 202210007565A CN 114546608 A CN114546608 A CN 114546608A
- Authority
- CN
- China
- Prior art keywords
- task
- time
- network
- region
- base station
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004364 calculation method Methods 0.000 title abstract description 13
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 35
- 230000002787 reinforcement Effects 0.000 claims abstract description 27
- 238000012549 training Methods 0.000 claims abstract description 24
- 230000009471 action Effects 0.000 claims description 40
- 239000013598 vector Substances 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 14
- 238000005265 energy consumption Methods 0.000 claims description 12
- 230000005055 memory storage Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- BULVZWIRKLYCBC-UHFFFAOYSA-N phorate Chemical compound CCOP(=S)(OCC)SCSCC BULVZWIRKLYCBC-UHFFFAOYSA-N 0.000 description 4
- 230000000875 corresponding effect Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/502—Proximity
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种基于边缘计算的任务调度方法,该方法包括以下步骤:各区域维护有一策略网络,基于该策略网络和实时环境,各区域独立对本区域内实时接收到的任务进行调度;所述策略网络的网络参数采用基于联邦学习的深度强化学习算法进行在线更新,具体地:各区域保存历史数据形成本地数据集,基于本地数据集进行深度强化学习训练,更新网络参数,训练目标为最小化所有任务的奖励值;各区域将自身网络参数发送至中央基站,中央基站进行基于联邦学习的统一更新后,将更新后的网络参数反馈给各区域。与现有技术相比,本发明具有增强模型扩展性、保护数据隐私性、提高系统性能等优点。
Description
技术领域
本发明涉及边缘计算技术领域,尤其是涉及一种基于边缘计算的任务调度方法。
背景技术
大规模连接是物联网网络最具挑战性的要求之一,它要求高效、可扩展、低复杂度与隐私性等的网络资源管理。此外,由于物联网设备的计算以及存储资源有限,通常无法在预期时间内处理完成大量资源密集型任务,将任务上传到云端处理又可能会导致无法忍受的高延迟。于是,边缘计算由于可以将计算与缓存服务放置到距离用户较近的网络边缘进行处理,被认为是一种很有前途的技术。边缘计算灵活高效,在调度时候通常以最小化成本、最小化时延等作为调度目标,尽可能以最优或者接近最优的策略完成调度。
当前的边缘计算调度方法大多数是传统调度方法,将任务调度这个NP-hard问题通过贪婪算法等启发式算法转化为可以通过近似算法求解的问题。当任务来临时,统计所有节点的资源情况,然后根据节点资源的利用率或者均衡情况得到调度结果。得到的调度方案的方法主要是对资源需求进行预测的预分配方案,或者是基于历史信息,通过回归分析得到资源需求的一些启发式算法。现有的结合深度学习的任务调度算法主要考虑一个简单的全连接模型,简单的将任务和节点的状态输入全连接网络,然后得到输出的数值,并以此作为调度的依据,判断任务该调度到哪个节点。一些利用强化学习进行调度的方法,将环境所有信息建模为一个统一模型,之后通过大量数据训练后得到调度模型方法。
但是,现有的调度算法会带来一系列问题,主要包括调度的局部性与不准确性,由于忽视了历史信息经常会陷入局部最优解的状况。将传统深度学习技术直接应用于分布式系统中的任务调度会同样导致环境信息的丢失以及不准确性,以及训练过程中的过拟合问题导致对于训练数据过度依赖。直接使用强化学习进行任务调度的方法,不仅缺乏可扩展性,并且还给大量数据传输时的资源消耗以及数据隐私性带来了挑战。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种增强模型扩展性、保护数据隐私性、提高系统性能的基于边缘计算的任务调度方法。
本发明的目的可以通过以下技术方案来实现:
一种基于边缘计算的任务调度方法,该方法应用于一边缘计算场景,该边缘计算场景包括若干个区域,每个区域对应有若干个边缘节点和一个中央基站,各区域仅与所述中央基站通信,所述中央基站具有无限制资源,该方法包括以下步骤:各区域维护有一策略网络,基于该策略网络和实时环境,各区域独立对本区域内实时接收到的任务进行调度;
所述策略网络的网络参数采用基于联邦学习的深度强化学习算法进行在线更新,具体地:各区域保存历史数据形成本地数据集,基于本地数据集进行深度强化学习训练,更新网络参数,训练目标为最小化所有任务的奖励值;各区域将自身网络参数发送至中央基站,中央基站进行基于联邦学习的统一更新后,将更新后的网络参数反馈给各区域。
进一步地,各区域独立对本区域内实时接收到的任务进行调度具体为:
获取当前时刻的任务请求资源分布和节点剩余资源分布;
判断所述节点剩余资源分布是否大于任务请求资源分布,若是,则调用当前的所述策略网络得到每个任务分配的节点信息,更新区域环境信息,若否,则将接收到的任务转发至中央基站进行处理。
进一步地,调用当前的所述策略网络得到每个任务分配的节点信息具体为:
将当前时刻的任务请求资源分布和节点剩余资源分布分别进行向量嵌入,分别得到任务向量和节点向量,并得到环境状态向量;
基于所述环境状态向量和策略网络得到关于动作正态分布的平均值与方差,基于所述平均值与方差选择一个动作作为当前动作,所述动作即任务会被分配到哪个节点。
进一步地,所述环境状态向量的属性包括每个区域内节点剩余CPU资源量、下一个任务消耗CPU资源、下一个任务最长可执行时间、下一个任务经度、下一个任务纬度、下一个任务数据量。
进一步地,所述任务的奖励值表示为:
R=α*time+β*energy
其中,α和β分别表示时延与能耗的权重系数,time表示任务所花费的总时延,energy表示任务所花费的总能耗。
进一步地,当任务的传输时间与执行时间之和超过任务具备的最长可忍受等待时间时,采用以下公式更新奖励值:
Rnew=R+mw
其中,Rnew表示更新后的奖励值,mw表示任务的最长可忍受等待时间。
进一步地,所述本地数据集储存于记忆存储空间中,存储的数据包括每个时刻的状态、选择的动作、得到的奖励值以及正态分布的概率,在所述记忆存储空间的大小达到预先设定阈值后执行一次所述深度强化学习,并清空该深度强化学习。
其中,ST-1为T-1时刻的状态;AT-1为T-1时刻采取的动作;ST为T时刻的状态;AT为T时刻采取的动作;α为学习率;γ为折扣因子;RT-1为T-1的时刻的回报函数值;Q(ST-1,AT-1)为T-1时刻的Q值;Q(ST,AT)为T时刻的Q值。
进一步地,所述深度强化学习采用PPO算法实现。
进一步地,所述中央基站对接收到的网络参数进行更新的公式为:
其中,Lt+1为t+1时刻中央基站全局网络参数,Ns为区域数量,D为所有区域总数据集,Dj为单个区域数据集,lj t+1为t+1时刻第j个区域的网络参数。
与现有技术相比,本发明具有以下有益效果:
1)通过将边缘计算场景下的节点、任务与环境转换为向量表示,便于计算。
2)本发明通过将基于边缘计算的任务调度问题建模为深度强化学习模型,可以克服传统启发式方法中样本训练不足、容易陷入局部最优的问题,能够通过自学习的方式达到问题的接近最优解。
3)本发明基于深度强化学习算法对数据进行训练,能够解决传统机器学习算法中由于样本数量不足、向量间无法拉开足够距离导致的训练效果不佳的问题。
4)本发明通过采用联邦学习的思想来加强深度强化学习的能力,不仅可以提高模型整体性能,还能进一步提高数据隐私性,可以有效克服不同区域之间由于数据隐私性带来的不互通问题。
5)本发明通过对边缘计算环境进行具体的分析,设计出有助于选择最佳动作的奖励函数,可以有效减少整个系统的能耗以及时延,提升系统整体性能,以最大化满足用户体验。
6)本发明基于真实的数据集进行测试,具有很强的泛化能力,能够广泛应用于边缘计算各种任务调度场景当中。
附图说明
图1为本发明方法的流程示意图;
图2为本发明方法的原理示意图;
图3为实施例中不同算法的时延对比示意图;
图4为实施例中不同算法的能耗对比示意图;
图5为实施例中不同算法的总奖励值对比示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本实施例提供一种基于边缘计算的任务调度方法,该方法应用于一边缘计算场景,该边缘计算场景包括若干个区域,每个区域对应有若干个边缘节点和一个中央基站,各区域仅与所述中央基站通信,各个区域负责使用自身数据进行训练,不同区域之间数据不互通,所述中央基站具有无限制资源,负责聚合各个区域训练网络参数并分发给各个区域,每个区域根据当前任务选择的动作区间为该区域内所有节点与该区域中心基站的集合。
各区域维护有一策略网络,在接收到新任务时,基于该策略网络和实时环境,各区域独立对本区域内实时接收到的任务进行调度,具体地:获取当前时刻的任务请求资源分布和节点剩余资源分布;判断所述节点剩余资源分布是否大于任务请求资源分布,若是,则调用当前的所述策略网络得到每个任务分配的节点信息,更新区域环境信息,若否,则将接收到的任务转发至中央基站进行处理。
其中,调用当前的所述策略网络得到每个任务分配的节点信息具体为:将当前时刻的任务请求资源分布和节点剩余资源分布分别进行向量嵌入,分别得到任务向量和节点向量,并得到环境状态向量;基于环境状态向量和策略网络得到关于动作正态分布的平均值与方差,基于平均值与方差选择一个动作作为当前动作,该动作即任务会被分配到哪个节点。任务向量属性包括任务标号ID、所属CPU资源、开始时间、最长可执行时间、任务产生经度、任务产生纬度、任务数据量,节点向量属性包括节点ID、节点拥有CPU资源量、节点经度、节点纬度。获取的环境状态向量属性包括每个区域内节点剩余CPU资源量、下一个任务消耗CPU资源、下一个任务最长可执行时间、下一个任务经度、下一个任务纬度、下一个任务数据量。
具体的,任务由用户发出,最终会被分配到某个节点上被执行。任务不可分割,一个任务只能被分配到一个节点。任务到达时有先后顺序,按照任务的先后顺序依次进行分配。每个节点的资源量有限,当节点的剩余资源量无法满足任务需求时,该任务便无法在该节点被执行,将而被传递至该区域中心基站进行执行。一般来说,中心基站具有无限制资源,每个任务都将被分配固定量的可供使用资源。由于每个节点处理器内存资源较多,我们使用CPU资源作为任务处理的限制条件。
上述策略网络的网络参数采用基于联邦学习的深度强化学习算法进行在线更新,具体地:各区域保存历史数据形成本地数据集,基于本地数据集进行深度强化学习训练,更新网络参数,训练目标为最小化所有任务的奖励值;各区域将自身网络参数发送至中央基站,中央基站进行基于联邦学习的统一更新后,将更新后的网络参数反馈给各区域。
如图1所示,在线任务调度和参数更新过程具体包括以下步骤:
1)初始化边缘计算场景下的中央基站以及各个区域的环境、节点列表、任务列表等原始信息。
每个区域的环境信息不互通,各个区域的任务不需要直接交互,各个区域的节点信息也相互隔离,保护了数据的隐私性。每个区域对应的中心基站具有完全可以满足任务需求的资源。
2)每个区域获取当前时刻到达的任务和环境,包括任务请求资源情况以及节点资源情况,并将此刻的任务请求资源情况以及节点资源情况转换为任务请求资源分布与节点剩余资源分布。
本方法中,根据边缘计算场景下的能源消耗与时延构建用于训练的任务调度问题模型,采用公式表示如下:
s.t.,α+β=1
ai∈N
timet+timee≤mw
其中,α和β分别表示时延与能耗的权重系数,timei表示任务wi所花费的总时延,w为任务数,energyi表示任务wi所花费的总能耗,ai表示任务wi的调度结果,N表示边缘节点。mi表示任务wi的最长可忍受时间。CPUi表示任务wi所需要花费的CPU资源,CPUk表示边缘节点的最大CPU资源量。
每当一个任务被调度完成后,返回的奖励值由时间奖励值与资源消耗奖励值两部分构成,该奖励值可以表述如下:
R=a*time+b*energy
其中,a与b分别是权重系数,time表示该任务总共花费时间,energy表示该任务总共消耗能源。
时间time由两部分构成,分别是任务的数据传输时间timet以及任务执行时间timee。
time=timet+timee
timet=dis(work,node)/speed
timet=(dis(work,node)+dis(work,BS))/speed
timee=CPUw/CPUi,j
timee=CPUw/CPUBS
其中,dis(work,node)表示当前任务与节点之间的距离,speed表示数据传输速度。当该节点没有足够CPU资源为该任务提供服务时,该任务会转而传输至该区域中心基站进行处理,dis(work,BS)表示当前任务与中心基站之间的距离。当任务被传输至某一节点进行执行时,CPUw表示当前任务所需要的CPU资源量,CPUi,j表示节点i在j时刻剩余资源量。当该节点剩余资源量无法满足任务需求时,任务会被传输至该区域中心基站进行执行,CPUBS表示中心基站分配给该任务的CPU资源量。
考虑现实情况中,每个任务都会具备用户最长可忍受等待时间,因此当任务的传输时间与执行时间之和超过该最长等待时间时,会对该任务的调度结果做出一定惩罚。
Rnew=R+mw
其中,Rnew表示没有成功调度时的奖励值,mw表示该任务的最长可等待时间。
能源energy由两部分构成,分别是任务的传输消耗能源energyt与任务执行能源energye。
energyt=energyt+energye
energyt=dw*dis
energye=CPUw*timee
其中,dw表示任务所需的数据量大小,dis表示任务传输至指定节点或者中心服务器的距离。CPUw表示任务所需的CPU资源量,timee表示任务所需要的执行时间。
该任务调度训练的目标是需要最小化所有任务完成的总能源消耗与时延,因此优化目标被设置为R的负数,即使得优化目标最大。
3)每个区域将获取的当前时刻到达的任务和环境分别进行向量嵌入,并将二者拼接得到环境状态向量。将两部分信息进行合并后得到一个一维向量作为后续网络的输入部分。
4)每个区域将拼接后的环境向量通过全连接层得到关于动作正态分布的平均值与方差。
获取到的状态向量会通过actor网络得到关于动作分布的平均值与方差,该actor网络由三层全连接层构成,每一层全连接层后都经过tanh函数进行激活。
5)每个区域根据得到的关于动作正态分布的平均值与方差选择一个动作作为当前动作。
根据上述4)所得到的平均值与方差,通过构建概率密度函数得到相应的动作选择,该动作即任务会被分配到哪个节点。
6)每个区域执行该动作后,得到环境奖励值,并对环境进行更新进入下一个状态。
以每个区域当前所有节点状态与当前时刻当来的任务作为状态空间,以节点与中心基站集合作为动作空间,设立的更新函数如下:
其中,ST-1为T-1时刻的状态;AT-1为T-1时刻采取的动作;ST为T时刻的状态;AT为T时刻采取的动作;α为学习率;γ为折扣因子;RT-1为T-1的时刻的回报函数值;Q(ST-1,AT-1)为T-1时刻的Q值;Q(ST,AT)为T时刻的Q值。
7)反复执行2)~6),并将每个时刻的状态、选择的动作、得到的奖励值以及正态分布的概率储存在记忆空间中。
该记忆空间大小可以进行调整,当记忆空间大小达到预先设定阈值后,便对模型进行更新并清空该记忆空间,进行新一轮的存储。
8)每个区域对自身记忆空间进行强化学习训练,并将网络参数发送给中央基站。
其中强化学习的模型采用PPO(Proximal Policy Optimization)算法进行训练,每当一个区域的模型进行一次更新后,不直接将新模型用于新一轮训练,而是将更新后的网络梯度参数发送中央基站,等待中央基站进行汇总处理。
9)中央基站获得区域发送的网络参数后进行网络更新,并将更新后的网络参数发送给该区域。
中央基站收到来自各区域发送的网络参数后,根据该区域的参数进行网络更新,新的模型参数可以表述为:
其中,Lt+1为t+1时刻中央基站全局网络参数,Ns为区域数量,D为所有区域总数据集,Dj为单个区域数据集,lj t+1为t+1时刻第j个区域的网络参数。
对于整个联邦强化学习的训练,其过程如下的Algorithm1所示。
在上述的Algorithm 1中,输入权重为θ0的策略网络和权重为φ0的值网络,记忆存储空间M与网络参数存储空间L,输出是t时刻的动作At。对于每一次训练,首先观察到初始状态S0,通过策略网络对状态进行训练得到关于动作正态分布的参数值dist,根据关于动作的概率密度函数得到相应的动作A。然后将当前状态S,动作A,概率分布dist,执行该动作后获得的奖励值R以及是否完成所有任务done的信息存储到记忆存储空间M中。如果当前轮次恰好是训练轮次,通过Algorithm2对模型进行训练,将训练过程中的模型参数存储到网络参数存储空间L中。最后,根据Algorithm 3,发送网络参数存储空间L到中央基站进行全局更新,获得全局更新后的模型,并清楚记忆存储空间M和网络参数空间L,以及输出动作,以此循环。
对于联邦强化学习中,关于区域内强化学习的更新,如下Algorithm 2所示。
在Algorithm 2中,输入权重为θ0的策略网络和权重为φ0的值网络,记忆存储空间M。首先,通过M中存储的一系列信息计算出关于折扣奖励值Rt.接着根据当前值函数使用自适应估值的方法计算得到估计值At。通过Adam作为优化器使用随机梯度下降的方法,以最大化PPO-clip为目标对策略网络进行更新。通过平均平方差来对值函数进行调整以取得更新。最后清除记忆存储空间M并将新的模型参数存储进网络参数存储空间L中。上述Algorithm 2中,步骤3所示更新公式中,θk+1表示第k+1次更新后的策略函数。Dk表示经过k次更新的策略网络的探索轨迹,T表示总更新步骤,πθ表示基于θ策略函数的策略网络,πθ(at|st)表示基于状态st选择动作at的概率值,A表示优势估计值,g表示clip函数,∈表示clip操作系数。在步骤4所示更新公式中,φk+1表示第k+1次更新后的值函数,Vφ(st)表示基于状态st的评价值,表示基于缓存空间M计算得到的折扣奖励值。
中央基站进行全局更新的过程如Algorithm 3所示。
在Algorithm 3中,输入权重为θ的策略网络和权重为φ的值网络,区域参数存储空间L。当中央基站收到区域传送过来的区域模型参数L后,利用L中的参数直接在现有模型上进行网络更新,得到全局的策略网络与值网络,并将更新后的全局模型发送给区域。最后清除参数存储空间,等待区域的下一次发送。
参考图2所示为基于边缘计算的任务调度方法的原理示意图,图中主要包含三个部分:物联网设备、边缘节点和中央基站。物联网设备负责产生任务,提供数据,若干物联网设备构成一个区域。每个区域内的数据可以由边缘节点获得,不同区域之间数据不互通,互相保证隐私性。每个区域内都有一定数量的边缘节点,这些边缘节点相比于云节点更靠近用户端,但是存储空间以及处理能力相对较弱。不同区域的边缘节点不能直接通信。每个区域内的边缘节点负责处理本区域内物联网设备产生的任务,并进行内部训练更新模型。中央基站是位于网络最顶端的具有无限存储空间与处理能力的服务器,当区域将其模型梯度参数发送到中央基站时,中央基站会根据区域的模型梯度进行更新,得到最新的全局模型并发送给区域。
为了验证本发明的基于边缘计算的任务调度方法的有益效果,发明人使用了Python进行编程,模拟了边缘计算中任务、节点进行性能方面的对比分析。节点类包含了初始化模块、CPU资源消耗模块、剩余资源计算模块等。任务类模块包含了任务的坐标、所需资源、时间等信息。环境类包括了环境的初始化、环境的获取、环境的更新、状态的更新以及动作选择等模块。核心部分为PPO类,包括智能体Agent类,Actor-Critic网络类,记忆回放储存Memory类。智能体Agent类包括获取最佳动作模块、获取当前的状态、动作、回报函数值、下一个状态四元组的模块、记忆回放模块、预处理模块以及神经网络参数更新、梯度下降模块。Actor-Critic网络类包括了网络结构模块,主要包含了Linear层、softmax层以及tanh激活层。而Memory类包含了记忆的存储模块、提取模块、临时存放模块、存储表格模块等。
实验数据来自于澳门地区真实统计信息的数据集,数据一共统计了15天的任务信息,包含了任务的开始时间、结束时间、经度、纬度、负责处理的基站信息等。为了满足模拟实验需求,对于每一个任务的所需CPU资源以及数据量大小按照泊松分布随机分配。
实验共设置了三个区域,每个区域有8个边缘节点。
为了对比实验结果,选取了两个基准算法。将本发明采用的算法简称为FedRL。此外,将贪婪算法作为基准算法,分别计作Greedy_CPU算法和Greedy_Dis。在Greedy_CPU算法中,每个任务将会发送给剩余资源最多的节点,而Greedy_Dis算法则会将每一个任务发送到距离最近的节点进行执行;将中心化强化学习算法作为另一个基准算法,计作CenRL算法,不考虑分区域处理,所有边缘节点通过一个统一模型进行调度。本实施例分别就执行10000、20000、……、100000个任务进行记录,实验结果对比如图3-图5所示。
综上,本发明所提供的分布式系统中的任务调度方法存在如下有益效果:
(1)通过将边缘计算场景下的节点、任务与环境转换为向量表示,便于计算;
(2)基于深度强化学习算法对数据进行训练,能够解决传统机器学习算法中由于样本数量不足、向量间无法拉开足够距离导致的训练效果不佳的问题;
(3)采用联邦学习的思想对深度强化学习进行加强,可以有效克服不同区域之间由于数据隐私性带来的不互通问题;
(4)通过对边缘计算场景进行具体分析,设计出有助于选择最佳动作的奖励函数,可以有效减少整个系统的能源消耗以及时间消耗,以最大化满足用户体验;
(5)基于来自物理世界的真实数据集进行训练,具有很强的泛化能力,能够广泛运用于各种边缘计算场景。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种基于边缘计算的任务调度方法,其特征在于,该方法应用于一边缘计算场景,该边缘计算场景包括若干个区域,每个区域对应有若干个边缘节点和一个中央基站,各区域仅与所述中央基站通信,所述中央基站具有无限制资源,该方法包括以下步骤:各区域维护有一策略网络,基于该策略网络和实时环境,各区域独立对本区域内实时接收到的任务进行调度;
所述策略网络的网络参数采用基于联邦学习的深度强化学习算法进行在线更新,具体地:各区域保存历史数据形成本地数据集,基于本地数据集进行深度强化学习训练,更新网络参数,训练目标为最小化所有任务的奖励值;各区域将自身网络参数发送至中央基站,中央基站进行基于联邦学习的统一更新后,将更新后的网络参数反馈给各区域。
2.根据权利要求1所述的基于边缘计算的任务调度方法,其特征在于,各区域独立对本区域内实时接收到的任务进行调度具体为:
获取当前时刻的任务请求资源分布和节点剩余资源分布;
判断所述节点剩余资源分布是否大于任务请求资源分布,若是,则调用当前的所述策略网络得到每个任务分配的节点信息,更新区域环境信息,若否,则将接收到的任务转发至中央基站进行处理。
3.根据权利要求2所述的基于边缘计算的任务调度方法,其特征在于,调用当前的所述策略网络得到每个任务分配的节点信息具体为:
将当前时刻的任务请求资源分布和节点剩余资源分布分别进行向量嵌入,分别得到任务向量和节点向量,并得到环境状态向量;
基于所述环境状态向量和策略网络得到关于动作正态分布的平均值与方差,基于所述平均值与方差选择一个动作作为当前动作,所述动作即任务会被分配到哪个节点。
4.根据权利要求3所述的基于边缘计算的任务调度方法,其特征在于,所述环境状态向量的属性包括每个区域内节点剩余CPU资源量、下一个任务消耗CPU资源、下一个任务最长可执行时间、下一个任务经度、下一个任务纬度、下一个任务数据量。
5.根据权利要求1所述的基于边缘计算的任务调度方法,其特征在于,所述任务的奖励值表示为:
R=α*time+β*energy
其中,α和β分别表示时延与能耗的权重系数,time表示任务所花费的总时延,energy表示任务所花费的总能耗。
6.根据权利要求5所述的基于边缘计算的任务调度方法,其特征在于,当任务的传输时间与执行时间之和超过任务具备的最长可忍受等待时间时,采用以下公式更新奖励值:
Rnew=R+mw
其中,Rnew表示更新后的奖励值,mw表示任务的最长可忍受等待时间。
7.根据权利要求1所述的基于边缘计算的任务调度方法,其特征在于,所述本地数据集储存于记忆存储空间中,存储的数据包括每个时刻的状态、选择的动作、得到的奖励值以及正态分布的概率,在所述记忆存储空间的大小达到预先设定阈值后执行一次所述深度强化学习,并清空该深度强化学习。
9.根据权利要求1所述的基于边缘计算的任务调度方法,其特征在于,所述深度强化学习采用PPO算法实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210007565.7A CN114546608B (zh) | 2022-01-06 | 2022-01-06 | 一种基于边缘计算的任务调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210007565.7A CN114546608B (zh) | 2022-01-06 | 2022-01-06 | 一种基于边缘计算的任务调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114546608A true CN114546608A (zh) | 2022-05-27 |
CN114546608B CN114546608B (zh) | 2024-06-07 |
Family
ID=81669786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210007565.7A Active CN114546608B (zh) | 2022-01-06 | 2022-01-06 | 一种基于边缘计算的任务调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114546608B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115357402A (zh) * | 2022-10-20 | 2022-11-18 | 北京理工大学 | 一种边缘智能优化方法和装置 |
CN115551105A (zh) * | 2022-09-15 | 2022-12-30 | 公诚管理咨询有限公司 | 基于5g网络边缘计算的任务调度方法、装置和存储介质 |
CN117687762A (zh) * | 2024-01-29 | 2024-03-12 | 华北电力大学 | 一种考虑隐私约束的多数据中心协同调度方法及系统 |
CN117808172A (zh) * | 2024-02-29 | 2024-04-02 | 佛山慧谷科技股份有限公司 | 一种自动石材排料方法、装置、电子设备和可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200090000A1 (en) * | 2018-09-18 | 2020-03-19 | Microsoft Technology Licensing, Llc | Progress Portal for Synthetic Data Tasks |
CN111858009A (zh) * | 2020-07-30 | 2020-10-30 | 航天欧华信息技术有限公司 | 基于迁移和强化学习的移动边缘计算系统任务调度方法 |
CN112181666A (zh) * | 2020-10-26 | 2021-01-05 | 华侨大学 | 一种基于边缘智能的设备评估和联邦学习重要性聚合方法、系统、设备和可读存储介质 |
CN112668128A (zh) * | 2020-12-21 | 2021-04-16 | 国网辽宁省电力有限公司物资分公司 | 联邦学习系统中终端设备节点的选择方法及装置 |
CN112764927A (zh) * | 2021-01-21 | 2021-05-07 | 西安电子科技大学 | 一种车辆选择和资源联合优化方法、系统、介质及应用 |
CN113467952A (zh) * | 2021-07-15 | 2021-10-01 | 北京邮电大学 | 一种分布式联邦学习协同计算方法及系统 |
CN113504999A (zh) * | 2021-08-05 | 2021-10-15 | 重庆大学 | 一种面向高性能分层联邦边缘学习的调度与资源分配方法 |
-
2022
- 2022-01-06 CN CN202210007565.7A patent/CN114546608B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200090000A1 (en) * | 2018-09-18 | 2020-03-19 | Microsoft Technology Licensing, Llc | Progress Portal for Synthetic Data Tasks |
CN111858009A (zh) * | 2020-07-30 | 2020-10-30 | 航天欧华信息技术有限公司 | 基于迁移和强化学习的移动边缘计算系统任务调度方法 |
CN112181666A (zh) * | 2020-10-26 | 2021-01-05 | 华侨大学 | 一种基于边缘智能的设备评估和联邦学习重要性聚合方法、系统、设备和可读存储介质 |
CN112668128A (zh) * | 2020-12-21 | 2021-04-16 | 国网辽宁省电力有限公司物资分公司 | 联邦学习系统中终端设备节点的选择方法及装置 |
CN112764927A (zh) * | 2021-01-21 | 2021-05-07 | 西安电子科技大学 | 一种车辆选择和资源联合优化方法、系统、介质及应用 |
CN113467952A (zh) * | 2021-07-15 | 2021-10-01 | 北京邮电大学 | 一种分布式联邦学习协同计算方法及系统 |
CN113504999A (zh) * | 2021-08-05 | 2021-10-15 | 重庆大学 | 一种面向高性能分层联邦边缘学习的调度与资源分配方法 |
Non-Patent Citations (3)
Title |
---|
JIE ZHANG: ""Adaptive Federated Learning on Non-IID Data With Resource Constraint"", 《IEEE TRANSACTIONS ON COMPUTERS》, vol. 71, no. 7, 26 July 2021 (2021-07-26), pages 1655 - 1667 * |
吕洁娜: ""移动边缘计算卸载策略综述"", 《小型微型计算机系统》, vol. 41, no. 09, 4 September 2020 (2020-09-04), pages 1866 - 1877 * |
熊宇轩: ""当深度强化学习遇见联邦学习:5G超密集网络中的多接入边缘计算的智能多时间尺度资源管理"", Retrieved from the Internet <URL:《https://hub.baai.ac.cn/view/2459》> * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115551105A (zh) * | 2022-09-15 | 2022-12-30 | 公诚管理咨询有限公司 | 基于5g网络边缘计算的任务调度方法、装置和存储介质 |
CN115551105B (zh) * | 2022-09-15 | 2023-08-25 | 公诚管理咨询有限公司 | 基于5g网络边缘计算的任务调度方法、装置和存储介质 |
CN115357402A (zh) * | 2022-10-20 | 2022-11-18 | 北京理工大学 | 一种边缘智能优化方法和装置 |
CN115357402B (zh) * | 2022-10-20 | 2023-01-24 | 北京理工大学 | 一种边缘智能优化方法和装置 |
CN117687762A (zh) * | 2024-01-29 | 2024-03-12 | 华北电力大学 | 一种考虑隐私约束的多数据中心协同调度方法及系统 |
CN117687762B (zh) * | 2024-01-29 | 2024-04-26 | 华北电力大学 | 一种考虑隐私约束的多数据中心协同调度方法及系统 |
CN117808172A (zh) * | 2024-02-29 | 2024-04-02 | 佛山慧谷科技股份有限公司 | 一种自动石材排料方法、装置、电子设备和可读存储介质 |
CN117808172B (zh) * | 2024-02-29 | 2024-05-07 | 佛山慧谷科技股份有限公司 | 一种自动石材排料方法、装置、电子设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114546608B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111858009B (zh) | 基于迁移和强化学习的移动边缘计算系统任务调度方法 | |
CN109753751B (zh) | 一种基于机器学习的mec随机任务迁移方法 | |
CN114546608B (zh) | 一种基于边缘计算的任务调度方法 | |
CN108804227B (zh) | 基于移动云计算的计算密集型任务卸载和最佳资源配置的方法 | |
CN110400128B (zh) | 一种基于工人偏好感知的空间众包任务分配方法 | |
CN111694656A (zh) | 基于多智能体深度强化学习的集群资源调度方法及系统 | |
CN115237581A (zh) | 一种面向异构算力的多策略智能调度方法和装置 | |
CN106453608B (zh) | 一种基于云端的移动应用的后台请求自适应调度算法 | |
CN114638167B (zh) | 基于多智能体强化学习的高性能集群资源公平分配方法 | |
Tang et al. | Dependent task offloading for multiple jobs in edge computing | |
Dong et al. | Quantum particle swarm optimization for task offloading in mobile edge computing | |
CN113094181A (zh) | 面向边缘设备的多任务联邦学习方法及装置 | |
CN116932198A (zh) | 资源调度方法、装置、电子设备及可读存储介质 | |
CN116886703A (zh) | 一种基于优先级和强化学习的云边端协作计算卸载方法 | |
CN114090239B (zh) | 一种基于模型的强化学习的边缘资源调度方法和装置 | |
CN118093139A (zh) | 一种任务调度决策处理方法及装置 | |
CN118394520A (zh) | 一种基于云边端协同的任务负载均衡调度方法 | |
CN116501483A (zh) | 基于多智能体强化学习的车辆边缘计算任务调度方法 | |
Saemi et al. | Solving task scheduling problem in mobile cloud computing using the hybrid multi-objective Harris Hawks optimization algorithm | |
CN113535365A (zh) | 基于强化学习的深度学习训练作业资源放置系统及方法 | |
CN112698911A (zh) | 一种基于深度强化学习的云作业调度方法 | |
Zhang et al. | Online joint scheduling of delay-sensitive and computation-oriented tasks in edge computing | |
CN117687762B (zh) | 一种考虑隐私约束的多数据中心协同调度方法及系统 | |
Rathika et al. | Optimized Resource Sharing in Mobile Cloud Computing for Reducing Service Latency | |
CN116401012A (zh) | 一种云边协同下基于强化学习的分布式容器调度方法 |
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 |