第三篇:边缘计算环境下依赖任务调度研究思考1

本文探讨了物联网和5G背景下,移动边缘计算如何解决计算密集型应用的挑战,重点聚焦于依赖任务的DAG调度问题。通过比较启发式算法、元启发式算法和深度强化学习在任务分配中的优缺点,强调了深度强化学习在自适应任务调度中的潜力。文中还提出了处理DAG依赖关系和在线调度的难题作为未来研究方向。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.研究背景及意义

近年来,物联网(I0T)和5G 技术得到了快速的发展,人类正在处于一场数据革命中。新兴的应用程序越来越多,如在线3D游戏、人脸识别、基于位置的增强现实或虚拟现实 (AR/VR)、移动社交媒体、自动驾驶系统和智能服务门等。这些应用为我们的生活带来了极大的便利和舒适,然而,它们通常是计算密集型、时延敏感型的应用任务,对于尺寸较小、计算能力和电池容量均受限的 IOT 设备来说, 这无疑是一个巨大的挑战。为了应对这些问题,一些计算任务不得不卸载到具有足够计算能力的云服务器上进行计算,这就促使了移动云计算的发展。云计算的服务器是集中式的,由于计算数据的数据量爆炸性增长,同时云服务器一般离用户端位置比较远,导致传统的云计算虽然可以提供足够的计算资源,但是漫长的传播时延成为了它主要的缺点。该缺点容易导致对时延要求较短的任务无法有效处理,移动边缘计算(MEC)的提出可以有效地弥补这一缺点。欧洲电信标准协会在 2014 年提出了移动边缘计算,这种新的计算范式是在移动网络边缘、无线接入网内和靠近移动用户的地方,为用户提供丰富的计算资源和可靠的计算服务。MEC 所具有的低时延、节省用户设备能耗、基于用户的实时信息提供上下文感知服务、增强移动应用程序的隐私和安全等优势,使得它推动了移动网络和各类行业应用的发展。利用 MEC 技术,通过在接入网边缘部署 MEC 服务器,将用户端的应用任务卸载到 MEC 服务器上进行处理,可以降低应用任务的计算时延和用户设备的能量消耗,提高任务的执行可靠性。

在 MEC 系统中,用户端任务的计算卸载是一个重要的研究问题,对任务进行合理的分配和调度是充分利用 MEC 网络资源、提高任务执行效率以及降低用户设备能耗的关键。在计算卸载问题中,主要有二元卸载和部分卸载这两类任务模型。二元卸载主要针对高度集成或者相对简单的任务,将其全部在用户本地执行或者卸载到MEC服务器上执行。最简单的部分卸载是将逐位独立的任务进行一定比例的划分,部分在本地执行,其余卸载到边缘端执行。然而,复杂的实际应用通常由一系列存在依赖关系的子模块构成,例如,在车辆导航应用中,用户首先输入目的地,这会使得控制模块检测当前出发点的地理位置,然后数据流通过并行的地图和交通模块获得可选路线和交通状况,最后的路线模块根据前两个模块的输出结果,在导航面板上提供最优路线。这些复杂的应用任务流程都可以被抽象和简化为用有向无环图(DAG)表示的任务流程图。随着现实应用的日益完善,其结构也随之变得庞大而复杂,研究如何设计细粒度的任务或存在依赖关系的任务调度策略,将 DAG 应用中的子任务合理分配到系统中的处理器上,从而满足用户端的任务需求,具有重要的实际价值和意义。

二.方法

边缘计算系统中的任务调度问题是计算机系统领域研究中的经典问题。根据任务间是否存在依赖关系,任务调度可分为独立的任务调度和依赖的任务调度。独立的任务调度不考虑任务间的数据关联与优先约束关系。依赖的任务调度包括一组具有前后数据依赖约束与并行关系的多任务调度,一般采用有向无环图 DAG 任务图模型表示,DAG 图的顶点表示任务,图的边表示任务间的数据依赖关系。为了提高系统效率,如何有效地将 DAG 任务图中的各个任务调度到不同处理器上并行执行, 从而使总的执行时间最短,是 DAG 任务调度的目标。边缘计算系统中的任务大多对时延比较敏感,卸载决策时常可以看成一个在线问题,即任务到达之后需要马上进行是否卸载的决策。因此,研究边缘计算中的复杂任务即DAG任务在线问题是是一个热点。早前的研究指出异构计算系统下的 DAG 任务调度是一个 NP 完全问题,由于调度对系统性能的重要影响,国内外研究人员对此展开了深入广泛的研究。

近年来,越来越多的研究者开始探索在各种应用场景下的基于 DAG 的任务调度问题并提出了众多有效的调度算法。目前的任务调度算法可分为启发式任务调度算法、元启发式任务调度算法以及基于深度强化学习的任务调度算法。

2.1启发式任务调度算法

启发式任务调度算法的核心是启发式规则,启发式规则的好坏决定了算法性能的优劣。早在2003年,Topcuoglu 等人就提出了异构最早完成时间(Heterogeneous Earliest Finish Time,HEFT)算法,通过区间插入技术优化了DAG任务的完成时间。

2.1.1基于列表的任务调度算法

基本思想是为DAG图中的每个任务指定优先级并以列表的方式按优先级降序排列,具有较高优先级的任务先于较低优先级任务调度。

例:

2.1.2基于任务复制的调度算法

主要思想是将在一个处理器上执行的任务同时 复制到其他处理器上,这样能够充分利用其他处理器的空闲时间并减少子任务之间的 通信开销,但是通常也会给处理器系统带来很大的工作负载。

2.1.3基于任务聚簇的调度算法

将整个 DAG 分成多个簇,在同一个簇中的任务 被分配到相同的处理器上。由于处于同一处理器上的任务之间的通信开销可以忽略, 因此通过任务聚簇可以减少通信开销,进而降低任务的执行时延。根据簇中子任务之 间的关系,任务聚簇可分为线性聚簇和非线性聚簇。

2.2 元启发式任务调度算法

元启发式调度算法分为基于种群的调度算法和基于个体的调度算法。基于种群的算法有:遗传算法、粒子算法、蚁群算法、鲸鱼算法、布谷鸟搜索算法等;基于个体的算法有:遗传算法、蚁群算法、粒子群算法、免疫算法等。

元启发式任务调度算法通常是基于种群的调度算法,通过多次种群迭代取得最终的调度方案,其性能可能优于启发式调度算法,但是迭代时间较长并且需要精心调整算法中包含的若干控制参数。

例:

2.3深度强化学习任务调度算法

启发式任务调度算法需要根据特定的任务调度场景和应用任务,针对性地设计任务调度规则,如果采用元启发式调度算法,对于不同的任务和场景,也需要合理调节其中的控制参数,因此这两类任务调度算法在不同任务和网络场景下都不具备通用性,无法自适应地调整任务调度方案,并且在很多情况下所获得的调度方案的性能也有待提升。为此,近两年来,通过结合深度学习与强化学习的方法,研究人员提出了基于深度强化学习的智能任务调度。

强化学习结构图

常用的基于强化学习的DAG调度算法有:近端策略优化算法(PPO)、蒙特卡洛策略梯度算法(REINFORCE)

深度强化学习结构图

常用的基于深度强化学习的DAG调度算法有:深度Q网络(DQN)、深度确定性策略梯度算法(DDPG)

由于我的研究课题是基于深度强化学习算法来实现任务调度,这里我给小伙伴们分享几篇可参考的文献,希望对各位小伙伴有帮助!

[1]梁斯硕.基于深度强化学习的移动边缘计算中在线任务卸载研究[D].电子科技大学,2021.

[2] WU Q, WU Z, ZHUANG Y, et al. Adaptive DAG Tasks Scheduling with Deep Reinforcement Learning[C]//VAIDYA J, LI J. International Conference on Algorithms and Architectures for Parallel Processing. Guangzhou, China: Springer, 2018: 477-490.

[3] WANG J, HU J, MIN G, et al. Computation Offloading in Multi-Access Edge Computing Using a Deep Sequential Model Based on Reinforcement Learning[J]. IEEE Communications Magazine,2019, 57(5): 64-69.

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

[5] 吕文凯, 杨鹏飞, 丁韵青, 等. JEDERL: 一种异构计算平台任务调度优化算法 [J]. 西安电子科

三.问题

以上是我针对边缘计算中依赖任务调度问题做的一个简单的研究总结,下面是我研究过程中遇到的几个难题,欢迎各位小伙伴一起探讨!

1.如何处理DAG任务图中的依赖关系?

通过阅读文献发现,有研究人员将DGA图转化成序列,使用序列到序列神经网络(Seq2Seq)来编码\解码DAG信息,最终输出一个任务序列作为调度策略网络的输入;有研究人员使用图神经网络(GNN)、图卷积神经网络(GCN)、图注意力机制(GAT)、或它们的改进来自动提取DAG特征信息。但这个过程如何实现?我还没有实现,希望大家一起思考探讨一下!

2.如何实现任务的在线调度?

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值