一种基于联合强化学习策略的多目标云工作流调度方法技术

技术编号:28148077 阅读:69 留言:0更新日期:2021-04-21 19:35
本发明专利技术公开了一种基于联合强化学习策略的多目标云工作流调度方法,通过对工作流请求和云资源的属性和方法进行扩展建立了强化学习agent联合策略模型,使调度模型更加贴合实际的工作流应用场景,在行为选择时综合考虑调度进程、各决策子网络以及历史决策信息的影响,使得最终选择的行为更为合理,进一步提升了算法产生非支配解集的主导性和多样性,有效提高了方法的实用性。提高了方法的实用性。提高了方法的实用性。

【技术实现步骤摘要】
一种基于联合强化学习策略的多目标云工作流调度方法


[0001]本专利技术属于云计算
,具体涉及一种基于强化学习策略的多目标云工作流调度方法。

技术介绍

[0002]作为一种最新的分布式系统计算范例,云计算的按使用付费与弹性资源模式为大规模科学应用的快速部署与分布式高效执行提供了易于访问、可扩展的基础设施环境。越来越多的科学家使用工作流来构建他们的复杂应用并将这些应用部署在云平台上执行。但是,云的按需使用等优点也给云环境下的工作流调度带来了很多挑战。一方面,云的按使用付费模式使得工作流调度时,需要同时考虑应用的执行时间与成本等,增加了调度求解难度。另一方面,其弹性资源模式大大增加了调度求解空间,进一步使调度问题复杂化。
[0003]目前,多目标优化问题的求解主要采用启发式、元启发式或二者的混合算法。启发式算法一般基于特定问题求解场景,通过设计一定的规则计算任务调度的优先级,并根据优先级依次调度各个任务。启发式方法对简单的问题模型求解效果好,但当调度问题变得复杂时,很难找到最优解,且泛化能力不足。与启发式算法相比,元启发式算法的泛化能力有了很大改善,但通常需要多次迭代更新才能找到近似最优解,而且当问题规模变大时,算法寻优所需的时间开销较大,难以满足用户对调度的实时性要求。
[0004]随着强化学习的发展及其在序列决策方面的突出优势,越来越多的研究者开始尝试利用强化学习求解调度问题。例如,有学者提出利用基于模拟退火的Q学习算法解决协同工作中的任务调度问题以及利用基于DQN和策略梯度网络的多目标工作流调度算法解决云环境下的任务调度问题。然而,在面临大规模任务请求时,Q学习算法需要大量的数据存储,其固有的Q值矩阵维数爆炸问题将导致很高的算法存储复杂性。基于DQN的算法,采用值函数逼近解决了Q学习的高维数据存储问题,但是由于采用固定维数的环境状态向量与单一类型的工作流来训练强化学习模型,其泛化能力具有较大的局限性,很难适应不同大小、不同类型的应用调度需求。基于策略梯度网络并结合时序模型,可以在一定程度上克服DQN算法的不足,但其单策略模型在面对复杂多云场景下的多目标优化问题时,显示出求解能力的不足。

技术实现思路

[0005]有鉴于此,本专利技术提供了一种基于联合强化学习策略的多目标云工作流调度方法,在适应多种类型工作流调度问题的情况下,实现执行跨度时间和成本的同时最小化的工作流调度。
[0006]本专利技术提供的一种基于联合强化学习策略的多目标云工作流调度方法,包括以下步骤:
[0007]步骤1、构建基于强化学习代理的联合策略模型,所述基于强化学习代理的联合策略模型包含基于引导策略和进化策略强化学习算法的两个子代理,每个子代理模型又包含
时间优化子网和成本优化子网两个部分;
[0008]所述基于强化学习代理的联合策略模型的状态包括工作流执行时间状态和工作流执行成本状态;所述工作流执行时间状态和工作流执行成本状态均包含任务状态和虚拟机状态;
[0009]步骤2、所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,采用所述训练样本集训练所述基于强化学习代理的联合策略模型;
[0010]步骤3、调度应用时,将由所述步骤1计算得到的待调度工作流的工作流执行时间状态和工作流执行成本状态输入到所述基于强化学习代理的联合策略模型中分别得到时间优化工作流调度方案和成本优化工作流调度方案,从中确定工作流调度方案。
[0011]进一步地,所述步骤1中的所述工作流执行时间状态包括和
[0012]其中,为当前时间步t下任务的状态,n为当前时间步t下可调度的任务个数;下可调度的任务个数;表示当前可调度任务的计算量,ns
i
为当前可调度任务的所有子任务的个数,nc
i
表示从当前可调度任务到出口任务的最大路径长度;
[0013]为当前时间步t下虚拟机的状态,m为虚拟机个数,为当前时间步t下虚拟机r
f
的预期租用结束时间。
[0014]进一步地,所述当前时间步t下虚拟机r
f
的预期租用结束时间的计算过程包括:
[0015]步骤3.1、依据当前资源分配情况计算任务的执行时间E
T
(t
i
),其中,t
i
表示为任务i;
[0016]步骤3.2、计算任务之间的传输时间C
T
,计算公式如下:
[0017][0018]其中,Ξ为任务t
i
和t
j
之间传输的数据量,B为虚拟机的传输带宽,BW表示虚拟机所属数据中心的带宽,bl
g
表示虚拟机g所属的数据中心编号;
[0019]步骤3.3、根据所述传输时间C
T
,计算任务的开始时间S
T
及完成时间F
T

[0020]步骤3.4、确定虚拟机r
f
上最后一个任务的完成时间为r
f
的预期租用结束时间。
[0021]进一步地,所述步骤1中的所述工作流执行成本状态包含任务状态和虚拟机状态
[0022]其中,所述任务状态为当前时间步t下任务的状态,n为当前时间步t下可调度的任务个数;当前时间步t下可调度的任务个数;表示当前可调度任务的计算量,ns
i

当前可调度任务的所有子任务的个数,nc
i
表示从当前可调度任务到出口任务的最大路径长度;
[0023]所述虚拟机状态的每个元素为当前时间步t下各虚拟机的预期花费。
[0024]进一步地,所述步骤2中所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,包括以下步骤:
[0025]步骤5.1、重置环境为初始状态,已调度任务列表及虚拟机运行状态记录列表均为空;
[0026]步骤5.2、将当前时间步t下两个优化目标下的所述工作流执行时间状态和工作流执行成本状态分别输入到所述时间优化子网和所述成本优化子网中,得到备选方案在两个优化目标下的最终选择概率;
[0027]步骤5.3、根据所述最终选择概率,依照Pareto准则分别选择所述时间优化子网和所述成本优化子网的最终行为并输出;
[0028]步骤5.4、根据公式1

e
0.1
×
ep
×
nmax
,其中,ep为训练的片段数,nmax为以回报为评价标准下各子代理交互过程中累计的优胜次数,分别计算所述时间优化子网和所述成本优化子网的行为概率,选择概率较大的子代理的最终行为作为模型最终行为;
...

【技术保护点】

【技术特征摘要】
1.一种基于联合强化学习策略的多目标云工作流调度方法,其特征在于,包括以下步骤:步骤1、构建基于强化学习代理的联合策略模型,所述基于强化学习代理的联合策略模型包含基于引导策略和进化策略强化学习算法的两个子代理,每个子代理模型又包含时间优化子网和成本优化子网两个部分;所述基于强化学习代理的联合策略模型的状态包括工作流执行时间状态和工作流执行成本状态;所述工作流执行时间状态和工作流执行成本状态均包含任务状态和虚拟机状态;步骤2、所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,采用所述训练样本集训练所述基于强化学习代理的联合策略模型;步骤3、调度应用时,将由所述步骤1计算得到的待调度工作流的工作流执行时间状态和工作流执行成本状态输入到所述基于强化学习代理的联合策略模型中分别得到时间优化工作流调度方案和成本优化工作流调度方案,从中确定工作流调度方案。2.根据权利要求1所述的多目标云工作流调度方法,其特征在于,所述步骤1中的所述工作流执行时间状态包括和其中,为当前时间步t下任务的状态,n为当前时间步t下可调度的任务个数;θ
i
表示当前可调度任务的计算量,ns
i
为当前可调度任务的所有子任务的个数,nc
i
表示从当前可调度任务到出口任务的最大路径长度;为当前时间步t下虚拟机的状态,m为虚拟机个数,为当前时间步t下虚拟机r
f
的预期租用结束时间。3.根据权利要求2所述的多目标云工作流调度方法,其特征在于,所述当前时间步t下虚拟机r
f
的预期租用结束时间的计算过程包括:步骤3.1、依据当前资源分配情况计算任务的执行时间E
T
(t
i
),其中,t
i
表示为任务i;步骤3.2、计算任务之间的传输时间C
T
,计算公式如下:其中,Ξ为任务t
i
和t
j
之间传输的数据量,B为虚拟机的传输带宽,BW表示虚拟机所属数据中心的带宽,bl
g
表示虚拟机g所属的数据中心编号;步骤3.3、根据所述传输时间C
T
,计...

【专利技术属性】
技术研发人员:李慧芳王彬阳黄姜杭王一竹黄经纬邹伟东柴森春夏元清
申请(专利权)人:北京理工大学
类型:发明
国别省市:

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

1