System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 边缘计算中基于机器学习的列表调度方法技术_技高网

边缘计算中基于机器学习的列表调度方法技术

技术编号:40963204 阅读:2 留言:0更新日期:2024-04-18 20:42
本发明专利技术提供了一种边缘计算中基于机器学习的列表调度方法,包括步骤1:生成任务的有向无环图;步骤2:定义有向无环图;步骤3:计算预测成本矩阵;步骤4:计算任务优先值;步骤5:设计机器学习模型,定义状态,动作和奖励;步骤6:通过机器学习不断更新Q表,直到Q表收敛;步骤7:根据Q表,得到任务额优先级序列;步骤8:根据任务的优先级序列,计算时间,用贪心的原则分配处理器。本发明专利技术将强化学习与具有前瞻性的列表调度算法PPTS相结合,很好的解决了边缘环境下的任务调度问题,可以更快速,更高效地完成任务调度,提高处理器的效率,且在大型计算任务中有更好地效果。

【技术实现步骤摘要】

本专利技术涉及一种边缘计算中基于机器学习的列表调度方法,属于边缘计算和机器学习。


技术介绍

1、随着信息和移动通讯技术的发展,数百亿资源有限的智能设备可以通过网络连接到互联网,这给企业和移动运营商带来了商机,但同时也带来了挑战。目前大多数移动运营商都采用软件即服务(saas)模式,在云中部署应用程序来服务用户,随着智能设备的增多,云计算难以满足许多应用程序对于低延时的需求,例如在线游戏,虚拟现实等。为了解决这个问题,引入了多址边缘计算(mec)的概念,使得云计算和存储资源更接近用户。

2、与云计算不同,边缘服务器部署在网络边缘,同一片区域内不同边缘服务器的处理能力差异较大,但它们可以执行同一个任务。任务调度问题直接关系到边缘计算系统的稳定性,移动用户的满意度,资源的利用率等。因此,任务调度问题是边缘计算中的关键问题,具有重要的现实意义和理论价值。现在,机器学习在各个领域都有着广泛的应用,将机器学习应用于任务调度问题引起了极大关注,q_learning是机器学习中的经典算法之一,它通过引入期望延迟来解决没有完整信息的马尔可夫决策过程,是解决任务调度问题的有效算法之一。由于边缘环境的不确定性,边缘服务器之间计算能力的差异以及用户提交任务的多样性,任务到计算节点的映射是一个np-hard问题。有鉴于此,确有必要提出一种边缘计算中基于机器学习的列表调度方法,以解决上述问题。


技术实现思路

1、本专利技术的目的在于提供一种边缘计算中基于机器学习的列表调度方法,减少用户卸载到边缘节点任务的执行时间,增加边缘节点处理器的效率。

2、为实现上述目的,本专利技术提供了一种边缘计算中基于机器学习的列表调度方法,主要包括以下步骤:

3、步骤1:输入某个需要调度的任务,将任务拆成具有依赖性的多个子任务;根据子任务需要的计算时间,子任务在处理器上的通信时间以及处理器的启动时间,生成任务的有向无环图(directed acyclic graph,dag)模型;

4、步骤2:对于任务的dag模型,使用t={ti|i∈1,2,…,n}来表示任务的序列,使用e={eij=(ti,tj)|ti,tj∈t}表示任务ti,tj之间的依赖关系,使用p={pi|i∈1,2,…,m}来表示提供服务的边缘服务器节点,使用wij表示任务ti在处理器pj上的处理时间,使用cij表示将数据从ti所在处理器传输到tj所在处理器的通信成本;

5、步骤3:根据任务的dag模型,计算每个任务在不同边缘服务器上的预测成本矩阵,预测成本矩阵使用pcm表示;

6、步骤4:根据pcm矩阵,计算每个任务的优先级函数,使用rankpcm(ti)来表示任务ti的优先级;

7、步骤5:设计机器学习模型,把当前的任务看成是状态,把做完当前任务后可执行的任务看成是动作,把rankpcm看成是奖励,建立q表来获取最佳排序;

8、步骤6:初始化q表,使用α表示学习率,使用γ表示折扣因子,使用rankpcm表示奖励。通过机器学习不断更新q表,直至q表收敛;

9、步骤7:根据q表,计算得到任务调度的优先级序列;

10、步骤8:使用est(ti,pj)表示任务ti卸载到处理器pj的最早到达时间,使用eft(ti,pj)表示任务ti卸载到处理器pj上处理的最早完成时间,使用aft(ti,pj)表示任务ti的实际完成时间,使用texit表示子任务集的最后一个任务,根据贪心的原则,计算任务的调度情况,并得到任务的最终完成时间。

11、作为本专利技术的进一步改进,步骤1中,对于生成的有向无环图模型,将子任务之间的依赖关系使用边来表示,将子任务在不同边缘服务器间传输的平均通信成本和处理器的平均启动时间相加作为边的权值。

12、作为本专利技术的进一步改进,步骤3中,预测成本矩阵pcm的计算由以下等式递归确定:

13、

14、作为本专利技术的进一步改进,步骤4中,任务的优先级函数由以下公式计算:

15、

16、作为本专利技术的进一步改进,步骤5中,设计的机器学习模型为q-learning模型,它是一种免模型的强化学习算法,智能体可以根据马尔可夫环境中的历史经验选择最佳动作。

17、作为本专利技术的进一步改进,步骤6中,q表的更新策略具体为:

18、步骤9:随机挑选一个入口任务作为当前状态;

19、步骤10:随机挑选一个当前状态能够执行的任务,作为下一个状态,并且更新q表;

20、步骤11:如果还有任务没有执行,重复步骤10,如果任务已经全部执行,得到q表;

21、步骤12:如果q表未收敛,重复步骤9-11,如果q表收敛,输出结果。

22、作为本专利技术的进一步改进,步骤10中,能够执行的任务指该任务的每一个有依赖关系的前置任务已经执行完毕。

23、作为本专利技术的进一步改进,步骤10中,q表的更新策略为:

24、

25、其中,s代表状态,a代表动作,r(s,a)代表奖励。

26、作为本专利技术的进一步改进,步骤12中,判断q表的收敛过程为,根据当前q表和上一轮更新前的q表计算任务的调度序列,如果两个调度序列相同,则代表q表收敛。

27、作为本专利技术的进一步改进,步骤8中任务的最早完成时间为任务的最早到达时间加任务的执行时间,贪心原则不仅看任务的最早完成时间,还要考虑后续任务的完成情况。所以根据任务的最早完成时间和pcm矩阵的和来进行贪心选择。

28、本专利技术的有益效果是:将强化学习与具有前瞻性的列表调度方法ppts相结合,提出了一种新的基于机器学习的调度方法,可以更快速,更高效地完成任务调度,提高处理器的效率,且在大型计算任务中有更好地效果。

本文档来自技高网...

【技术保护点】

1.一种边缘计算中基于机器学习的列表调度方法,其特征在于:包括

2.根据权利要求1所述的列表调度方法,其特征在于:步骤1中,对于生成的有向无环图模型,将子任务之间的依赖关系使用边来表示,将子任务在不同边缘服务器间传输的平均通信成本和处理器的平均启动时间相加作为边的权值。

3.根据权利要求1所述的列表调度方法,其特征在于:步骤3中,预测成本矩阵PCM的计算由以下等式递归确定:

4.根据权利要求1所述的列表调度方法,其特征在于:步骤4中,任务的优先级函数由以下公式计算:

5.根据权利要求1所述的列表调度方法,其特征在于:步骤5中,设计的机器学习模型为Q-learning模型,它是一种免模型的强化学习算法,智能体根据马尔可夫环境中的历史经验选择最佳动作。

6.根据权利要求1所述的列表调度方法,其特征在于:步骤6中,Q表的更新策略具体为:

7.根据权利要求6所述的列表调度方法,其特征在于:步骤10中,能够执行的任务指该任务的每一个有依赖关系的前置任务已经执行完毕。

8.根据权利要求6所述的列表调度方法,其特征在于:步骤10中,Q表的更新策略为:

9.根据权利要求6所述的列表调度方法,其特征在于:步骤12中,判断Q表的收敛过程为,根据当前Q表和上一轮更新前的Q表计算任务的调度序列,如果两个调度序列相同,则代表Q表收敛。

10.根据权利要求1所述的列表调度方法,其特征在于:步骤8中任务的最早完成时间为任务的最早到达时间加任务的执行时间,贪心原则不仅看任务的最早完成时间,还要考虑后续任务的完成情况,所以根据任务的最早完成时间和PCM矩阵的和来进行贪心选择。

...

【技术特征摘要】

1.一种边缘计算中基于机器学习的列表调度方法,其特征在于:包括

2.根据权利要求1所述的列表调度方法,其特征在于:步骤1中,对于生成的有向无环图模型,将子任务之间的依赖关系使用边来表示,将子任务在不同边缘服务器间传输的平均通信成本和处理器的平均启动时间相加作为边的权值。

3.根据权利要求1所述的列表调度方法,其特征在于:步骤3中,预测成本矩阵pcm的计算由以下等式递归确定:

4.根据权利要求1所述的列表调度方法,其特征在于:步骤4中,任务的优先级函数由以下公式计算:

5.根据权利要求1所述的列表调度方法,其特征在于:步骤5中,设计的机器学习模型为q-learning模型,它是一种免模型的强化学习算法,智能体根据马尔可夫环境中的历史经验选择最佳动作。

6.根据权利要求1...

【专利技术属性】
技术研发人员:鲁蔚锋万家欢徐佳徐力杰蒋凌云
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1