基于深度Q学习的工业多任务资源分配方案

2022-07-14 09:46王松烨
企业科技与发展 2022年4期
关键词:边缘计算资源分配智能制造

王松烨

【摘 要】工业生产活动中的多任务并发卸载过程会利用大量计算资源,但是多源异构的任务需要执行的时间存在差异,系统的计算资源和网络负载等情况也会极大地影响任务资源分配的方案。文章针对上述问题进行研究,首先设计模型模拟实际工业场景并分析资源分配过程;然后使用DQN算法以最大化任务完成数量为目标,对每个任务进行资源分配;最后通过分析算法性能为工业智能制造应用提供理论依据。实验仿真结果表明,文章提出的资源分配方案比平均分配方案性能更高,更适用于多任务卸载的时变的工业环境中。

【关键词】边缘计算;资源分配;智能制造;深度Q学习

【中图分类号】TP391.9 【文献标识码】A 【文章编号】1674-0688(2022)04-0050-04

1 概述

工业生产活动中产生的计算任务大部分属于无关联、多结构、高并发的,同时工业环境下无线网络资源有限,大规模的并发卸载任务会造成任务阻塞[1]。边缘计算服务器相较于云计算服务器计算和存储能力小。在这些条件下,多终端任务的并行处理不仅要考虑处理任务的总时延,还要考虑边缘计算服务器的计算资源能否满足计算需求。当发生计算卸载的情况时,主要影响计算服务质量的因素有两点:一是网络传输环境的条件,二是计算资源的分配情况。

工业生产过程中产生的任务,一般情况下需要服务器提供计算和存储两种资源,并且由于工业网络环境不稳定的因素,因此边缘服务器需要根据具体的任务计算信息为其分配合理的计算资源和网络资源。在并发卸载的过程中,服務器的处理压力将会增加[2]。如果在任务卸载发生时未对边缘服务器计算资源进行合理分配,导致服务器资源的浪费和计算阻塞,会造成后续任务的长时间等待,最终影响工业服务质量。同时,由于任务存在约束时间,所以任务对时间十分敏感,在进行任务卸载时会以时间作为限制因素,资源分配时也会将其作为重要参考。

为了解决上述问题,本文提出了基于深度Q学习的多任务资源分配方案。基于DQN的多任务资源分配方案考虑了实际工业场景中的网络、计算时隙及服务器性能等影响因素,实现了计算资源对照任务需求的合理分配,有效缓解了工业终端并发卸载过程中服务器资源抢占热度高的问题。本文提出的方案将任务的时延需求作为约束条件,以任务完成数量作为服务质量的描述,从而对计算资源分配方案进行优化,降低产生任务阻塞的可能性。

2 基于DQN的多任务资源分配方案

生产活动中任务集合可以表示为M={1,2,L,M},任务对时间的敏感度不同。假设将时间分成等长的时隙,在时隙t时终端都会产生计算密集型的任务,由任务属性将该任务定义为Rm(Dm,Cm,φm)。其中,Dm代表计算任务所需要处理的数据量;Cm是指任务计算复杂度,一般为任务计算过程中的步骤,表示完成计算密集型任务Rm所需要的CPU周期;Dm和Cm成正比线性关系;φm是指计算任务需求时限,即完成计算任务m所花费的时间不超过φm;φm越小代表任务对时延越敏感[3]。

资源分配过程要充分考虑外部通信环境、自身设备信息(包含网络状况和CPU当前负载占用率)等因素及计算任务的相关信息,根据指定的算法进行计算资源分配。

2.1 网络模型

在进行工业生产活动时,发生计算卸载的任务将卸载至服务器。任务i在卸载时通过网络传输的数据传输速率vi计算如下:

其中,K表示分配的带宽资源,Pi表示终端设备的传输功率;hi表示服务器基站和终端之间的信道增益幅值,并在时隙t内保持稳定;σ表示信道传输噪声功率。

2.2 问题模型

在时隙t内,卸载任务会传输数据,产生传输的延迟表示如下:

当计算任务卸载到边缘服务器处理时,任务处理的时间取决于在服务器中实际分配得到的资源。在时隙t内,任务i在服务器中的处理时延表示如下:

其中,θi表示任务i在服务器中分配得到的计算资源占比,满足条件■(θi)≤1,θi≥0;F代表服务器的计算资源。根据公式(2)和公式(3)可得出任务i的处理总时延如下:

2.3 目标模型

假设所有任务的最大容忍时限都小于时隙t,综合考虑网络情况、终端任务和计算资源,任务在时隙t内完成则记为成功,否则任务被记为失败。为了得到最多的任务成功数量,目标模型表达式如下:

其中,Gi代表任务执行成功。当Gi=0时,代表任务执行失败;当Gi=1时,代表任务执行成功。φi的约束条件为容忍时限小于时隙t。

2.4 资源分配方案

多任务场景下,以最大化任务完成数量为目标可以动态调整资源的分配情况。使用DQN算法能够在时间约束的情况下寻找最优的分配方案。

首先将任务执行情况及服务器资源情况作为状态信息S,表示为S=(G,F  '),其中G表示任务处理成功数量,F  '表示处理任务剩余计算资源。定义任务的分配资源占比情况为动作,表示为A=[θ1,θ2,L,θM];将单个时隙内任务执行成功数量作为奖励,表示为R=■Gi;然后根据DQN两个神经网络进行参数选取;最后设计DQN资源分配算法[4]。如图1所示,DQN使用双神经网络技术,利用两个网络结构相同、参数不同的特性,使神经网络快速收敛;同时,DQN具备经验回放技术,通过设立一块固定的内存空间用于存放以往训练记录,利用这一技术能够打破样本间的相关性,也可以重复使用过去的经验,发挥算法统筹优势,提升训练效果。

3 仿真结果及分析

为了充分体现实验的合理性,实验会从任务成功执行、任务执行超时和任务被丢弃的数量3个角度进行评估,其中任务被丢弃表示服务器的计算资源无法满足当前任务的需求,放弃执行该任务;任务执行超时意味着当前分配的计算资源不足;任务成功执行意味着分配资源足够。实验中将折扣率γ调整为0.9,因为下一阶段的资源剩余是最能够体现资源分配策略性能优劣的指标,所以调高折扣率会使系统更加关注即时奖励。设置迭代次数设置为1 000次,单次迭代步长为20,以保障训练次数。设置批量采样大小为64,参数更新步长为100。此外,任务数量为50条,因为实验主要突出资源分配方案的影响,所以将信道带宽、环境噪声等设置为固定值,将任务属性转化为变量,并选取Q-learning资源平均分配算法进行对比[5]。

3.1 时隙大小对算法性能的影响

在时间约束的环境下,最大容忍时隙决定了大部分任务的执行效果。图2展示了在服务器算力为100 GHz/s时,不同时隙下DQN和Q-learning[6]两种算法的任务执行成功率。从图2中可以观察到,随着时隙的增加,两种算法获得的任务执行成功的概率也会增加,时隙长度增加会让任务最大容忍时限变得宽松;反之,时隙长度越小,需求时间越受约束,处理较复杂的任务越难以完成。

由图2可知,随着时隙增加,DQN算法和Q-learning算法获得的任务执行成功概率不断提升,但在时隙增加至0.95 s之后,Q-learning算法得到的任务执行成功概率趋于稳定。Q-learning算法和DQN算法相比较,DQN算法的性能是最优的,比Q-learning平均提升25%。

此外,在Q-learning算法中只存在两种选择,并且对于每个任务的资源都是平均分配的,所以任务执行成功率和资源利用率并不是很高;而DQN算法对于每个任务的资源分配都是按照筛选比例进行的,未能在约束时间内完成的任务所分配的资源会在下次迭代中提升分配占比,对于可以在约束时间内完成的任务保持现有占比或随机下调以增加空闲计算资源,这种方式将空闲计算资源作为中介在任务之间进行流动,有利于动态探索资源的最优分配方案。

3.2 服务器性能对算法性能的影响

针对DQN算法对计算资源的分配情况,可以将任务的执行情况分为3种:执行成功、执行超时和丢弃任务。执行成功说明任务可以在规定的时隙内完成任务;执行超时意味着分配的资源不能够满足任务的需求;丢弃任务意味着系统没有更多的计算资源能够分配给任务,或者任务所需的分配占比过高导致系统放弃执行该任务。经分析可得出,任务的执行情况和边缘服务器的算力息息相关,当服务器算力充足时,可分配的空闲资源会更多地增加至未能执行成功的任务中。为了测试服务器性能对资源分配方案的影响,设计服务器算力在70~100 GHz/s的任务执行情况。

图3、图4展示了在时隙为1.1 s时,使用DQN算法及使用Q-learning算法,服务器算力变化对任务执行的影响。随着服务器算力的增加,任务成功执行的数量不断增加,超时的任务和被丢弃的任务数量不断减少。这是因为服务器算力的增加意味着更多的计算资源会分配给超时或被丢弃的任务,当任务的计算需求被满足时,被丢弃的任务会进行计算;当计算资源给超时任务分配得更多时,任务计算的时间也因此降低,最终会在约束时间内完成计算任务。因此,提升边缘服务器的算力能够改善系统的服务质量,但是同样会造成经济压力和资源利用不充分等问题。对比DQN和Q-learning两种方案的性能可知,DQN方案任务执行成功率比Q-learning方案高22%,任务被丢弃,低于41.5%,说明DQN方案可以在各种服务器资源场景下获得良好的分配方案。

3.3 任务计算复杂度对算法性能的影响

图5表示在时隙为1.1 s、服务器算力为100 GHz/s时,本文提出的DQN算法和对比算法Q-learning随着任务单位数据所需CPU计算周期的变化性能的变化情况。从图5中可以看出,随着计算复杂度的提升,两种算法的性能都下降。由此可以得出,单位数据所需CPU周期越多,占用服务器计算资源越多,任务的处理时延越长,进而导致任务执行成功率下降。

3.4 算法收敛效果

收敛效果决定了DQN算法能否快速达到最优效果[7]。图6展示了在时隙为1.1s、服務器算力为100 GHz/s时,DQN算法对任务执行成功率的优化效果,可以看出,从开始训练到训练迭代次数到6 000次时,成功概率迅速增加到0.86%左右,之后迅速收敛并在0.92%上下浮动,代表着神经网络已经训练达到比较高的精度,可以对任何环境状态做出最优方案。

4 结束语

本文针对工业场景中受时间约束的多任务卸载至边缘服务器后的资源规划问题,设计了一种基于深度Q学习的资源分配方案。所提出的方法通过DQN算法将空闲计算资源作为中间介质流动于任务之间,有利于动态探索最优的资源分配策略,使任务成功率在各种情况下都是最高的,提高了计算资源的利用率;同时,算法收敛速度也很快,可以提升系统计算效率。实验证明,DQN资源分配方案可以在各种复杂的工业生产环境中取得良好的效果。

参 考 文 献

[1]刘晓宇,许驰,曾鹏,等.面向异构工业任务高并发计算卸载的深度强化学习算法[J].计算机学报,2021,44(12):2367-2381.

[2]卢海峰,顾春华,罗飞,等.基于深度强化学习的移动边缘计算任务卸载研究[J].计算机研究与发展,2020,

57(7):1539-1554.

[3]尚立,蔡硕,崔俊彬,等.基于软件定义网络的电网边缘计算资源分配[J].电力系统保护与控制,2021,49(20):136-143.

[4]邓世权,叶绪国.基于深度Q网络的多目标任务卸载算法[J/OL].计算机应用,[2022-04-19].http://kns.cnki.net/kcms/detail/51.1307.TP.20220223.1728.004.html.

[5]高云,郭艳艳,卫霞.移动边缘计算网络中基于DQN的能效性卸载决策及无线资源分配[J].测试技术学报,2022,36(1):54-59.

[6]张延华,杨乐,李萌,等.基于Q-learning的工业互联网资源优化调度[J].北京工业大学学报,2020,46(11):1213-1221.

[7]赵海涛,张唐伟,陈跃,等.基于DQN的车载边缘网络任务分发卸载算法[J].通信学报,2020,41(10):172-178.

猜你喜欢
边缘计算资源分配智能制造
边缘计算下移动智能终端隐私数据的保护方法
基于动态规划理论的特种设备检验资源分配研究
基于动态规划理论的特种设备检验资源分配研究
边缘计算在农业物联网中的应用
云环境下公平性优化的资源分配方法
从“边缘计算”看未来企业办公场景
TDMA无线网络中视频动态传输方法