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

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

Info

Publication number
CN112685165B
CN112685165B CN202110024639.3A CN202110024639A CN112685165B CN 112685165 B CN112685165 B CN 112685165B CN 202110024639 A CN202110024639 A CN 202110024639A CN 112685165 B CN112685165 B CN 112685165B
Authority
CN
China
Prior art keywords
time
state
task
strategy
workflow
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.)
Active
Application number
CN202110024639.3A
Other languages
English (en)
Other versions
CN112685165A (zh
Inventor
李慧芳
王彬阳
黄姜杭
王一竹
黄经纬
邹伟东
柴森春
夏元清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202110024639.3A priority Critical patent/CN112685165B/zh
Publication of CN112685165A publication Critical patent/CN112685165A/zh
Application granted granted Critical
Publication of CN112685165B publication Critical patent/CN112685165B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

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

Description

一种基于联合强化学习策略的多目标云工作流调度方法
技术领域
本发明属于云计算技术领域,具体涉及一种基于强化学习策略的多目标云工作流调度方法。
背景技术
作为一种最新的分布式系统计算范例,云计算的按使用付费与弹性资源模式为大规模科学应用的快速部署与分布式高效执行提供了易于访问、可扩展的基础设施环境。越来越多的科学家使用工作流来构建他们的复杂应用并将这些应用部署在云平台上执行。但是,云的按需使用等优点也给云环境下的工作流调度带来了很多挑战。一方面,云的按使用付费模式使得工作流调度时,需要同时考虑应用的执行时间与成本等,增加了调度求解难度。另一方面,其弹性资源模式大大增加了调度求解空间,进一步使调度问题复杂化。
目前,多目标优化问题的求解主要采用启发式、元启发式或二者的混合算法。启发式算法一般基于特定问题求解场景,通过设计一定的规则计算任务调度的优先级,并根据优先级依次调度各个任务。启发式方法对简单的问题模型求解效果好,但当调度问题变得复杂时,很难找到最优解,且泛化能力不足。与启发式算法相比,元启发式算法的泛化能力有了很大改善,但通常需要多次迭代更新才能找到近似最优解,而且当问题规模变大时,算法寻优所需的时间开销较大,难以满足用户对调度的实时性要求。
随着强化学习的发展及其在序列决策方面的突出优势,越来越多的研究者开始尝试利用强化学习求解调度问题。例如,有学者提出利用基于模拟退火的Q学习算法解决协同工作中的任务调度问题以及利用基于DQN和策略梯度网络的多目标工作流调度算法解决云环境下的任务调度问题。然而,在面临大规模任务请求时,Q学习算法需要大量的数据存储,其固有的Q值矩阵维数爆炸问题将导致很高的算法存储复杂性。基于DQN的算法,采用值函数逼近解决了Q学习的高维数据存储问题,但是由于采用固定维数的环境状态向量与单一类型的工作流来训练强化学习模型,其泛化能力具有较大的局限性,很难适应不同大小、不同类型的应用调度需求。基于策略梯度网络并结合时序模型,可以在一定程度上克服DQN算法的不足,但其单策略模型在面对复杂多云场景下的多目标优化问题时,显示出求解能力的不足。
发明内容
有鉴于此,本发明提供了一种基于联合强化学习策略的多目标云工作流调度方法,在适应多种类型工作流调度问题的情况下,实现执行跨度时间和成本的同时最小化的工作流调度。
本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法,包括以下步骤:
步骤1、构建基于强化学习代理的联合策略模型,所述基于强化学习代理的联合策略模型包含基于引导策略和进化策略强化学习算法的两个子代理,每个子代理模型又包含时间优化子网和成本优化子网两个部分;
所述基于强化学习代理的联合策略模型的状态包括工作流执行时间状态和工作流执行成本状态;所述工作流执行时间状态和工作流执行成本状态均包含任务状态和虚拟机状态;
步骤2、所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,采用所述训练样本集训练所述基于强化学习代理的联合策略模型;
步骤3、调度应用时,将由所述步骤1计算得到的待调度工作流的工作流执行时间状态和工作流执行成本状态输入到所述基于强化学习代理的联合策略模型中分别得到时间优化工作流调度方案和成本优化工作流调度方案,从中确定工作流调度方案。
进一步地,所述步骤1中的所述工作流执行时间状态包括
Figure BDA0002889774880000031
Figure BDA0002889774880000032
其中,
Figure BDA0002889774880000033
为当前时间步t下任务的状态,
Figure BDA0002889774880000034
n为当前时间步t下可调度的任务个数;
Figure BDA0002889774880000035
Figure BDA00028897748800000311
表示当前可调度任务的计算量,nsi为当前可调度任务的所有子任务的个数,nci表示从当前可调度任务到出口任务的最大路径长度;
Figure BDA0002889774880000036
为当前时间步t下虚拟机的状态,
Figure BDA0002889774880000037
m为虚拟机个数,
Figure BDA0002889774880000038
为当前时间步t下虚拟机rf的预期租用结束时间。
进一步地,所述当前时间步t下虚拟机rf的预期租用结束时间
Figure BDA0002889774880000039
的计算过程包括:
步骤3.1、依据当前资源分配情况计算任务的执行时间ET(ti),其中,ti表示为任务i;
步骤3.2、计算任务之间的传输时间CT,计算公式如下:
Figure BDA00028897748800000310
其中,Ξ为任务ti和tj之间传输的数据量,B为虚拟机的传输带宽,BW表示虚拟机所属数据中心的带宽,blg表示虚拟机g所属的数据中心编号;
步骤3.3、根据所述传输时间CT,计算任务的开始时间ST及完成时间FT
步骤3.4、确定虚拟机rf上最后一个任务的完成时间为rf的预期租用结束时间。
进一步地,所述步骤1中的所述工作流执行成本状态包含任务状态
Figure BDA0002889774880000041
和虚拟机状态
Figure BDA0002889774880000042
其中,所述任务状态
Figure BDA0002889774880000043
为当前时间步t下任务的状态,
Figure BDA0002889774880000044
n为当前时间步t下可调度的任务个数;
Figure BDA0002889774880000045
Figure BDA0002889774880000047
表示当前可调度任务的计算量,nsi为当前可调度任务的所有子任务的个数,nci表示从当前可调度任务到出口任务的最大路径长度;
所述虚拟机状态
Figure BDA0002889774880000046
的每个元素为当前时间步t下各虚拟机的预期花费。
进一步地,所述步骤2中所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,包括以下步骤:
步骤5.1、重置环境为初始状态,已调度任务列表及虚拟机运行状态记录列表均为空;
步骤5.2、将当前时间步t下两个优化目标下的所述工作流执行时间状态和工作流执行成本状态分别输入到所述时间优化子网和所述成本优化子网中,得到备选方案在两个优化目标下的最终选择概率;
步骤5.3、根据所述最终选择概率,依照Pareto准则分别选择所述时间优化子网和所述成本优化子网的最终行为并输出;
步骤5.4、根据公式1-e0.1×ep×nmax,其中,ep为训练的片段数,nmax为以回报为评价标准下各子代理交互过程中累计的优胜次数,分别计算所述时间优化子网和所述成本优化子网的行为概率,选择概率较大的子代理的最终行为作为模型最终行为;
步骤5.5、执行所述模型最终行为得到新环境状态,更新所述已调度任务列表及虚拟机运行状态记录列表;
步骤5.6、计算并存储两个目标在当前时间步t下的回报值,并将所述回报值和马尔科夫过程et、et+1添加到所述训练样本集中;
步骤5.6、判断工作流调度过程是否完成,如果已完成,则结束本流程;否则,执行步骤5.2。
有益效果:
1、本发明综合考虑多云环境下不同应用请求的SLA等级差异和调度过程中资源性能的波动对调度结果的影响,通过对工作流请求和云资源的属性和方法进行扩展建立了强化学习agent联合策略模型,使调度模型更加贴合实际的工作流应用场景,在行为选择时综合考虑调度进程、各决策子网络以及历史决策信息的影响,使得最终选择的行为更为合理,进一步提升了算法产生非支配解集的主导性和多样性,有效提高了方法的实用性。
2、本发明基于引导策略设计了强化学习agent决策子网络,并采用基于多种概率分布的联合采样方式改进策略引导模块,使得算法在训练时的交互速度和有效特征接收率大幅提高,进而提升了算法在解决复杂问题时的学习效率。
3、本发明针对单一引导策略的强化学习agent模型过于依赖策略引导并易于陷入局部最优的不足,采用进化策略设计agent决策子网络,实现联合动作选择决策;并通过进化策略下的多进程网络参数更新,提高了引导和进化联合策略(GPS+ES)模型的全局搜索能力,改善了所产生调度解的多样性。
附图说明
图1为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法的模型训练过程流程图。
图2为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法中基于进化策略子决策网络的交互展开图。
图3为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法中基于引导策略子决策网络的交互展开图。
图4为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法的工作流模型示例图。
图5为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法的处理结果收敛性对比图。
图6为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法的处理结果主导性对比图。
图7为本发明提供的一种基于联合强化学习策略的多目标云工作流调度方法的处理结果时效性对比图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
现有技术中,标准的进化强化学习算法(ESRL)包括智能体(agent)及环境,其中,学习系统agent由策略模型和价值模型构成。ESRL算法的训练过程为:首先,以随机种子初始化若干个具有不同参数值的平行网络,通过检测当前状态的输入产生各自回报,并进一步结合行为回报选择网络个体。其次,通过优秀网络的交叉、变异等操作产生新的个体,实现下一轮的交互选择。在系统行为控制、环境状态反馈以及个体选择的反复交互过程中,agent以学习的方式不断地修改状态到动作的映射策略参数,以达到优化系统性能目的。
现有技术中,标准的引导强化学习算法(GPS)包括控制相和监督相两部分。其中,控制相通过传统控制优化、轨迹优化或随机优化等方法产生好的环境交互数据;监督相利用控制相产生的好数据进行监督学习。GPS算法的训练过程为:初始构建监督引导模块,通过评定与环境的交互,优化引导模块产生高质量的引导样本,然后,在与引导模块及环境交互的实时反馈和策略优化的过程中,agent网络以梯度计算的方式不断提升网络性能。
本发明提出了一种基于联合强化学习策略的多目标云工作流调度方法,基本思想是:采用基于引导策略和进化策略的强化学习算法,设计agent联合策略模型,解决多云环境下考虑用户请求服务等级协议SLA(Service-Level Agreement)差异和资源性能波动的多目标工作流调度问题,实现应用执行跨度时间和成本的同时优化。
本发明提出的一种基于联合强化学习策略的多目标云工作流调度方法,包括基于强化学习的工作流调度模型的构建、模型的训练以及训练好的模型在工作流调度中的应用,如图1所示。具体包括如下步骤:
步骤1、采用基于引导策略和进化策略的强化学习算法,构建强化学习双agent联合策略模型,每个agent模型又包含时间优化子网络和成本优化子网络两个部分,以实现工作流执行跨度时间和成本的同时优化。
步骤1.1、构建进化策略决策子agent,其主体结构为由多个指针网络作为并行网络并联构成,随机选取任意并行网络的输出作为进化策略决策子agent的输出,本发明采用的指针网络是以循环神经网络(RNN)作为隐含层的指针网络。因此能够适用于不同大小、不同类型的云工作流调度问题,并在保证算法时效性的同时,提升模型的泛化能力,其交互过程如图2所示,具体描述如下:
首先,将状态
Figure BDA0002889774880000071
输入到指针网络,经计算得到nt个输出向量
Figure BDA0002889774880000072
其中,
Figure BDA0002889774880000073
Wfo、Wfr、bfo和bfr为相应的线性权值矩阵,
Figure BDA0002889774880000081
为RNN隐含层的状态向量,nt为时间步进t下状态向量的维度。其次,将输出向量
Figure BDA0002889774880000082
经指针网络softmax层依次计算,并输出条件概率
Figure BDA0002889774880000083
Figure BDA0002889774880000084
为第i个备选方案的初步选择概率。随后,依据
Figure BDA0002889774880000085
选择1~nx
Figure BDA0002889774880000086
值相应的
Figure BDA0002889774880000087
组成特征向量矩阵
Figure BDA0002889774880000088
本发明中选择nx=3,即Xt的每一维子向量值等于依据
Figure BDA0002889774880000089
选出的
Figure BDA00028897748800000810
Xt作为外层LSTM在时间步t的输入,进一步经外层网络计算后得到此时的LSTM层输出向量
Figure BDA00028897748800000811
输出向量Yt的计算过程类似于现有的LSTM算法,如下所示:
遗忘门更新:f(t)=σ(Wf[Ht-1,Xt]++bf);
输入门更新:η(t)=σ(Wη[Ht-1,Xt]++bη),
Figure BDA00028897748800000812
单元状态更新:
Figure BDA00028897748800000813
隐层状态输出:o(t)=σ(Wo[Ht-1,Xt]+bo),Ht=o(t)⊙tanh(ct);
最终输出:Yt=WeHt+be
其中,Ht为LSTM层在t时间步的隐含状态,σ为sigmoid激活函数,ct为LSTM层的单元状态,⊙为Hadamard积。上述各式中的W和b为相应于不同操作的线性权值矩阵,下标f,η,c,o,e分别表示遗忘门、输入门、单元状态、隐层状态与最终输出。最后,Yt经外层softmax结构计算,输出时间步t下各个备选方案的最终选择概率P(y'j|Y0,...,Yt-1,Xt),j∈[1,nx]。
步骤1.2、构建基于引导策略的强化学习agent模型。基于引导策略的强化学习agent模型包括混合时变线性高斯控制器的前置引导监督模块及策略网络。其中,策略网络采用与进化策略相同的网络结构,即由多个指针网络并联构成,随机选取任意指针网络的输出作为策略网络的输出。其结构如图3所示,其中前置引导监督模块的构建过程如下:
采用重要性采样(Importance Sample)方式重复利用off-policy样本,并通过微分动态规划算法(DDP算法)对off-policy样本集进行补充,以引导算法搜索指向高回报区域,并获得更高质量的解。一个有效的引导分布,不仅能覆盖高回报区域,还能保证大密度地分布更多的重要权重。可以断言,一个好的引导分布是高回报区域密度q(ζ)的信息映射(I-projection),ζ为假设数据分布。现有技术中,q(ζ)的I-projection表示为DKL(q||ρ),采用如下公式进行计算:
Figure BDA0002889774880000091
其中,κ表示熵,ρ为原始分布,Eq为期望函数,r为回报函数。上式中,第一项用于强制q位于回报更高的区域,第二项旨在鼓励q具有更大的不确定性,以达到更广的分布效果。因此,当给定轨迹s1,a1,...,st,at,...,sts,ats,且满足
Figure BDA0002889774880000092
时,其动态函数和回报函数可分别近似为典型的线性动态、二阶代价形式的动态系统,其中,
Figure BDA0002889774880000093
at为状态和行为的时间步t下的估计值,
Figure BDA0002889774880000094
Figure BDA0002889774880000095
为状态和行为的前t个时间步的估计均值,ts为轨迹总覆盖时间段。本发明定义的线性策略,如下式所示:
Figure BDA0002889774880000096
根据线性策略g(st)计算公式可知,控制引导项由两部分构成:第一部分是均值部分,第二部分是回馈部分,kt和Kt分别是当前与累计的回馈增益。因此通过策略的重复计算能够得到一条新轨迹,使算法收敛到局部最优。此外,本发明对回报函数进行改进,如果ρ为均匀分布,则最优策略可采用如下公式计算:
πg(at|st)=exp(Qt(st,at)-Vt(st))
其中,值函数:Vt(st)=log∫exp(Qt(st,at))dat,exp()为自然常数e为底的指数函数,Q为行为价值函数,at为t时刻选中行为。在线性动态、二次回报的环境下,策略符合线性高斯模型,因此可从形式为
Figure BDA0002889774880000097
的随机策略中进行采样,以获得高质量的引导样本。其中,g为待选函数,
Figure BDA0002889774880000101
为二阶行为价值函数矩阵的逆矩阵。
步骤2、针对步骤1建立的云工作流调度模型,构建时间相关和成本相关的状态。
步骤2.1、构建调度模型的工作流执行时间状态描述。其中,时间状态St
Figure BDA0002889774880000102
Figure BDA0002889774880000103
两部分构成,
Figure BDA0002889774880000104
表示当前时间步t下任务的状态描述,
Figure BDA0002889774880000105
表示当前时间步t下虚拟机的状态描述。具体过程如下:
步骤2.1.1、定义虚拟机的状态描述。
Figure BDA0002889774880000106
形式化表示为:
Figure BDA0002889774880000107
m为虚拟机个数。其中,
Figure BDA0002889774880000108
的每个元素
Figure BDA0002889774880000109
表示当前时间步t下虚拟机rf的预期租用结束时间,具体计算过程如下:
首先,依据当前资源分配情况,采用现有的计算方法计算任务的执行时间ET(ti),其中,ti表示为任务i。
然后,计算任务之间的传输时间CT,本发明采用多数据中心的方式进行计算,计算公式如下所示:
Figure BDA00028897748800001010
其中,Ξ表示任务ti和tj之间传输的数据量,B表示虚拟机的传输带宽,BW表示虚拟机所属数据中心的带宽,blg表示虚拟机g所属的数据中心编号。
再根据任务之间的传输时间CT,计算任务的开始时间ST及完成时间FT,可采用现有方式进行计算,计算公式如下所示:
Figure BDA0002889774880000111
FT(ti)=ST(ti)+ET(ti)
其中,avail[rf]为虚拟机rf的可用时间。
最后,根据完成时间和传输时间计算rf的预期租用结束时间LF。实际上,虚拟机rf上最后一个任务的完成时间
Figure BDA0002889774880000112
也就是rf的预期租用结束时间LF,可表示为:
Figure BDA0002889774880000113
其中,
Figure BDA0002889774880000114
表示任务ti的父任务集合,texit表示整个工作流的出口任务。
步骤2.1.2、构建调度模型的任务状态描述。具体而言,
Figure BDA0002889774880000115
可形式化表示为
Figure BDA0002889774880000116
n为当前时间步t下可调度的任务个数。
Figure BDA0002889774880000117
的每个元素
Figure BDA0002889774880000118
表示为
Figure BDA0002889774880000119
其中,
Figure BDA00028897748800001113
表示当前可调度任务的计算量,nsi为当前可调度任务的所有子任务个数,nci表示从该任务到出口任务的最大路径长度。结合图4所示的工作流图,举例说明:假设任务1为当前可调度任务,则其子任务数为6,因所有的子任务均需等待任务1结束后才能执行;同时任务1到出口任务的最大路径长度为4,即任务1、2、5、7(或任务1、3、5、7,或任务1、4、6、7),故其nsi=6,nci=7。
步骤2.2、构建调度模型的工作流执行成本状态描述。成本状态Sc由任务状态
Figure BDA00028897748800001110
和虚拟机状态
Figure BDA00028897748800001111
两部分构成,其中任务相关状态描述和上述时间状态的任务相关状态描述一致,而虚拟机状态
Figure BDA00028897748800001112
的每个元素则表示当前时间步t下各虚拟机的预期花费,可在上述预期租用结束时间的基础上计算得出。
步骤3、引导策略和进化策略agent模型的时间优化子网和成本优化子网,分别以时间相关和成本相关的状态作为输入,通过与环境的反复交互,实现对各个策略模型中时间优化子agent和成本优化子agent的训练。
需要说明,本发明中子agent的训练过程与常规引导策略或进化策略强化学习算法训练过程的区别在于:时间优化子网和成本优化子网所采用的输入不同,即时间相关的状态信息作为时间优化子网的输入,而成本相关的状态信息作为成本优化子网的输入。当接收到输入后,优化子网与深度强化学习策略网络相同,并产生动作和回报、进行状态转换。若是成本优化子网,则以成本相关的任务状态、动作、回报及状态转换来构建成本优化训练样本集。本发明中,该训练样本集包括时间优化子网训练样本集和成本优化子网训练样本集。之后,基于上述样本集,引导策略agent网络分别训练时间优化子网和成本优化子网,经过进化策略agent网络的进化选择迭代,最终得到训练好的基于强化学习的工作流调度模型。
本发明中,针对云环境下的工作流调度问题,联合agent模型的交互及训练过程为:将构建好的agent网络与环境进行交互,完成一次完整调度(从入口任务到出口任务的一次调度称为完整调度),并将此次调度过程涉及的所有状态转换、动作和回报存入训练样本池中;在交互过程中,最终的行为选择需要经历两个阶段:第一,在单agent模型中,综合时间子网和成本子网的输出,并依据Pareto准则选择行为。第二,综合两个模型的行为决策结果,采用本发明所设计的联合决策策略进行最终的行为选择。需要说明,根据本发明设计的拟演化策略,未被选择的行为将用于模型训练,并通过一定的引导作用,加速模型训练进程。本发明中,行为a被定义为备选方案的位置,通过对行为a进行反解码,即可得到工作流调度方案。联合模型与环境的交互训练过程,具体包括以下步骤:
步骤3.1、重置环境为初始状态,由于此时尚未进行任务调度,所以已调度任务列表list_task及虚拟机运行状态记录列表list_vmsta均为空;
步骤3.2、联合模型的各个子网分别检测当前时间步t下两个优化目标下的状态ST、SC,并输入到对应的时间、成本子网络中,得到动作选择备选方案在两个优化目标下的最终选择概率;
步骤3.3、在各个子agent模型中,将两个子网络输出的最终选择概率作为各个备选方案的属性值,依照Pareto准则选择单模型的最终行为at并输出。在图4所示的工作流中,以t=0为例进行具体说明。假设:t=0时的输出概率分别为Y0 m=(0.6,0.4)、Y0 c=(0.8,0.2),依照Pareto原则,方案1优于方案2(因为0.6>0.4,0.8>0.2)。所以,输出最终选择的行为是方案1,即a0=1。
步骤3.4、根据所设计的联合行为策略模型,选择最终行为At并输出。其中,未被选择的模型行为,将在平行模拟环境中通过拟演化模块对其进行状态转化,并输入到进化策略的部分平行个体中,以充分利用两部分策略在训练阶段的优势。联合策略可具体描述如下:
根据公式1-e0.1×ep×nmax,分别计算基于引导策略和进化策略agent模型的行为概率,并选择概率较大模型相应的单模型最终行为作为最终的行为决策。其中,ep为训练的片段数,nmax为以回报为评价标准下,各子agent模型交互过程中累计的优胜次数;
步骤3.5、对行为at进行反解码,得到相应的备选方案(即t时间步的任务调度方案)并执行;检测执行调度方案后的新环境状态,并相应地应更新list_task和list_vmsta列表。例如步骤3中,行为a0=1所对应的备选方案为:将任务1放到虚拟机1上执行。
步骤3.6、计算并存储两个目标在当前时间步t下的回报值rt m和rt c,并存储rt m、rt c和马尔科夫过程et、et+1到样本池中。
步骤3.6、判断工作流调度过程是否完成。若完成,则一次完整交互过程结束;否则,转步骤3.2。
步骤3.7、进行基于引导策略和进化策略的agent模型训练。其中,基于进化策略模型不需要进行梯度计算,只需根据交互后的最终回报进行平行子网个体的淘汰,同时通过随机交换剩余个体间参数和随机改变某个个体参数的方式产生新个体。基于引导策略的agent模型训练过程具体如下:
步骤3.7.1、按存入顺序从样本池中取出一个采样序列,并从最后一个采样时刻开始,依次向前更新各子网对应的回报:
R:R←rt m+γR,t∈{Nw-1,...,0}
其中,R为状态的长期回报,开始计算R前R=0,γ为折扣因子,Nw为所调度工作流的规模大小。同时,更新各子网对应的回报后,计算策略损失函数及行为价值函数的梯度,并将其累计到策略模型梯度中,即
Figure BDA0002889774880000141
其中
Figure BDA0002889774880000142
为参数
Figure BDA0002889774880000143
的微分,V(St;θ)为当前策略的价值函数。
步骤3.7.2、对模型的时间及成本子网参数θt和θc进行异步更新:θt←dθt,θc←dθc
步骤3.7.3、判断当前样本池中的样本是否参与了训练。若所有的样本都已经参与了训练,则模型训练结束;否则,转步骤3.7。
步骤3.7.4、判断累计的完整调度次数是否达到预先定义的上限。若达到最大完整调度次数,则模型训练完成;否则转步骤3。
需要说明的是,本发明结合两种行为选择策略(随机选择和依据网络输出概率的选择)进行工作流调度。在初始阶段,由于网络训练次数较小,主要使用随机选择策略与环境进行交互,以降低最初网络参数的不合理性影响。随着训练次数的增加,依据网络输出概率进行策略选择的方式将不断加强,并逐步在与环境的交互中发挥主要作用。
步骤4、将新的应用请求输入到已经训练好的基于强化学习的工作流调度模型中,求得对应的应用调度方案。
将由步骤2计算得到待调度工作流的任务状态输入到工作流调度模型中,分别得到时间优化工作流调度方案和成本优化工作流调度方案,再采用最终选择策略确定工作流调度方案。
实施例
为检验本发明方法的效果,使用Python语言对算法以及模拟的云数据中心调度环境进行编程实现,并从多角度进行实验验证,以检验算法不同方面的性能。其中,实验部分的对比算法采用目前典型的多目标优化算法:DQN-based MARL、MOACS和NSGA-II(结果图中分别用M1-M3表示,本发明算法用M0表示)。
首先,采用结构较为复杂的Montage、CyberShake大规模工作流任务,训练用于工作流调度的强化学习模型,其训练过程的优化目标值变化趋势如图5所示。由图5可知,算法模型随着训练次数的增加趋于收敛,说明了算法的可行性。
其次,构建基于普通指针网络的强化学习模型,采用同样的方式训练模型,并在同一调度环境中进行工作流调度,其结果对比如图6所示。由图6可知,与基于普通指针网络的模型相比,本发明设计的联合强化学习模型给出的解更靠近Pareto前沿,调度效果更好。
最后,在同一调度环境下,分别用本发明算法,DQN-based MARL、MOACS和NSGA-II对比算法进行调度,其时效性比较如图7所示。由图7可以看出,本发明的算法产生调度解的时效性明显提升。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种基于联合强化学习策略的多目标云工作流调度方法,其特征在于,包括以下步骤:
步骤1、构建基于强化学习代理的联合策略模型,所述基于强化学习代理的联合策略模型包含基于引导策略和进化策略强化学习算法的两个子代理,每个子代理模型又包含时间优化子网和成本优化子网两个部分;构建进化策略子代理,其主体结构为由多个指针网络作为并行网络并联构成,随机选取任意并行网络的输出作为进化策略决策子代理的输出;构建引导策略子代理,其主体结构为包括混合时变线性高斯控制器的前置引导监督模块及策略网络,其中,策略网络与进化策略子代理具有相同的网络结构,前置引导监督模块为采用重要性采样方式重复利用离线样本,并通过微分动态规划算法对离线样本集进行补充,引导算法搜索指向高回报区域获得更高质量的解;
所述基于强化学习代理的联合策略模型的状态包括工作流执行时间状态和工作流执行成本状态;所述工作流执行时间状态和工作流执行成本状态均包含任务状态和虚拟机状态;
步骤2、所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,采用所述训练样本集训练所述基于强化学习代理的联合策略模型;
步骤3、调度应用时,将由所述步骤1计算得到的待调度工作流的工作流执行时间状态和工作流执行成本状态输入到所述基于强化学习代理的联合策略模型中分别得到时间优化工作流调度方案和成本优化工作流调度方案,从中确定工作流调度方案;
所述步骤2中所述时间优化子网以所述工作流执行时间状态作为输入、所述成本优化子网以所述工作流执行成本状态作为输入与环境交互,完成一次完整调度,将调度过程涉及的所有状态转换、动作和回报作为训练样本构建训练样本集,包括以下步骤:
步骤5.1、重置环境为初始状态,已调度任务列表及虚拟机运行状态记录列表均为空;
步骤5.2、将当前时间步t下两个优化目标下的所述工作流执行时间状态和工作流执行成本状态分别输入到所述时间优化子网和所述成本优化子网中,得到备选方案在两个优化目标下的最终选择概率;
步骤5.3、根据所述最终选择概率,依照Pareto准则分别选择所述时间优化子网和所述成本优化子网的最终行为并输出;
步骤5.4、根据公式1-e0.1×ep×nmax,其中,ep为训练的片段数,nmax为以回报为评价标准下各子代理交互过程中累计的优胜次数,分别计算所述时间优化子网和所述成本优化子网的行为概率,选择概率较大的子代理的最终行为作为模型最终行为;
步骤5.5、执行所述模型最终行为得到新环境状态,更新所述已调度任务列表及虚拟机运行状态记录列表;
步骤5.6、计算并存储两个目标在当前时间步t下的回报值,并将所述回报值和马尔科夫过程et、et+1添加到所述训练样本集中;
步骤5.6、判断工作流调度过程是否完成,如果已完成,则结束本流程;否则,执行步骤5.2。
2.根据权利要求1所述的多目标云工作流调度方法,其特征在于,所述步骤1中的所述工作流执行时间状态包括
Figure FDA0003700012250000021
Figure FDA0003700012250000022
其中,
Figure FDA0003700012250000023
当前时间步t下任务的状态,
Figure FDA0003700012250000024
n为当前时间步t下可调度的任务个数;
Figure FDA0003700012250000025
θi表示当前可调度任务的计算量,nsi为当前可调度任务的所有子任务的个数,nci表示从当前可调度任务到出口任务的最大路径长度;
Figure FDA0003700012250000031
为当前时间步t下虚拟机的状态,
Figure FDA0003700012250000032
m为虚拟机个数,
Figure FDA0003700012250000033
为当前时间步t下虚拟机rf的预期租用结束时间。
3.根据权利要求2所述的多目标云工作流调度方法,其特征在于,所述当前时间步t下虚拟机rf的预期租用结束时间
Figure FDA0003700012250000034
的计算过程包括:
步骤3.1、依据当前资源分配情况计算任务的执行时间ET(ti),其中,ti表示为任务i;
步骤3.2、计算任务之间的传输时间CT,计算公式如下:
Figure FDA0003700012250000035
其中,Ξ为任务ti和tj之间传输的数据量,B为虚拟机的传输带宽,BW表示虚拟机所属数据中心的带宽,blg表示虚拟机g所属的数据中心编号;
步骤3.3、根据所述传输时间CT,计算任务的开始时间ST及完成时间FT
步骤3.4、确定虚拟机rf上最后一个任务的完成时间为rf的预期租用结束时间。
4.根据权利要求1所述的多目标云工作流调度方法,其特征在于,所述步骤1中的所述工作流执行成本状态包含任务状态
Figure FDA0003700012250000036
和虚拟机状态
Figure FDA0003700012250000037
其中,所述任务状态
Figure FDA0003700012250000038
为当前时间步t下任务的状态,
Figure FDA0003700012250000039
n为当前时间步t下可调度的任务个数;
Figure FDA00037000122500000310
θi表示当前可调度任务的计算量,nsi为当前可调度任务的所有子任务的个数,nci表示从当前可调度任务到出口任务的最大路径长度;
所述虚拟机状态
Figure FDA0003700012250000041
的每个元素为当前时间步t下各虚拟机的预期花费。
CN202110024639.3A 2021-01-08 2021-01-08 一种基于联合强化学习策略的多目标云工作流调度方法 Active CN112685165B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110024639.3A CN112685165B (zh) 2021-01-08 2021-01-08 一种基于联合强化学习策略的多目标云工作流调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110024639.3A CN112685165B (zh) 2021-01-08 2021-01-08 一种基于联合强化学习策略的多目标云工作流调度方法

Publications (2)

Publication Number Publication Date
CN112685165A CN112685165A (zh) 2021-04-20
CN112685165B true CN112685165B (zh) 2022-08-23

Family

ID=75456764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110024639.3A Active CN112685165B (zh) 2021-01-08 2021-01-08 一种基于联合强化学习策略的多目标云工作流调度方法

Country Status (1)

Country Link
CN (1) CN112685165B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113627871B (zh) * 2021-06-22 2023-08-18 南京邮电大学 一种基于多目标粒子群算法的工作流调度方法、系统及存储介质
CN113868115B (zh) * 2021-08-30 2024-04-16 天津大学 基于多目标优化与深度强化学习的游戏软件自动测试方法
CN114066232B (zh) * 2021-11-15 2022-07-22 内蒙古北方重工业集团有限公司 基于分布式强化学习和边缘计算的工厂调度方法及系统
CN113791889B (zh) * 2021-11-18 2022-03-11 中国科学院成都文献情报中心 一种基于多级轮询队列控制器部署学习模型的方法
CN114860385B (zh) * 2022-05-17 2024-06-07 北京理工大学 一种基于进化强化学习策略的并行云工作流调度方法
WO2023223453A1 (ja) * 2022-05-18 2023-11-23 日本電気株式会社 スケジューリング装置、スケジューリング方法、及びスケジューリングプログラム
CN115033343B (zh) * 2022-05-27 2024-03-01 河南大学 一种云环境下遥感数据流程调度模型的建立方法
CN116540658B (zh) * 2023-06-19 2024-04-12 贵州大学 基于监督控制理论和强化学习的自动制造系统调度方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106228314A (zh) * 2016-08-11 2016-12-14 电子科技大学 基于深度增强学习的工作流调度方法
CN111191934A (zh) * 2019-12-31 2020-05-22 北京理工大学 一种基于强化学习策略的多目标云工作流调度方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020152364A1 (en) * 2019-01-24 2020-07-30 Deepmind Technologies Limited Multi-agent reinforcement learning with matchmaking policies
US11461145B2 (en) * 2019-01-28 2022-10-04 EMC IP Holding Company LLC Building neural networks for resource allocation for iterative workloads using reinforcement learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106228314A (zh) * 2016-08-11 2016-12-14 电子科技大学 基于深度增强学习的工作流调度方法
CN111191934A (zh) * 2019-12-31 2020-05-22 北京理工大学 一种基于强化学习策略的多目标云工作流调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Aloïs Pourchot等.CEM-RL: Combining evolutionary and gradient-based methods for policy search.《https://arxiv.org/pdf/1810.01222.pdf》.2019,全文. *

Also Published As

Publication number Publication date
CN112685165A (zh) 2021-04-20

Similar Documents

Publication Publication Date Title
CN112685165B (zh) 一种基于联合强化学习策略的多目标云工作流调度方法
CN111191934B (zh) 一种基于强化学习策略的多目标云工作流调度方法
EP3805999A1 (en) Resource-aware automatic machine learning system
Zhang et al. DeepMAG: Deep reinforcement learning with multi-agent graphs for flexible job shop scheduling
Rupprecht et al. A survey for deep reinforcement learning in markovian cyber–physical systems: Common problems and solutions
CN112990485A (zh) 基于强化学习的知识策略选择方法与装置
Chen et al. Distributed structured actor-critic reinforcement learning for universal dialogue management
Qi et al. Vehicular edge computing via deep reinforcement learning
CN115033359A (zh) 一种基于时延控制的物联代理多任务调度方法和系统
Girard et al. Concurrent Markov decision processes for robot team learning
Qu et al. Dynamic scheduling in modern processing systems using expert-guided distributed reinforcement learning
CN116669068A (zh) 一种基于gcn的时延业务端到端切片部署方法及系统
CN111767991B (zh) 一种基于深度q学习的测控资源调度方法
WO2024066675A1 (zh) 基于时态均衡分析的多智能体多任务分层连续控制方法
CN116307331B (zh) 航空器轨迹的规划方法
Zhou et al. A novel mission planning method for UAVs’ course of action
CN115022231B (zh) 一种基于深度强化学习的最优路径规划的方法和系统
Yang et al. Continuous control for searching and planning with a learned model
CN115150335B (zh) 一种基于深度强化学习的最优流量分割的方法和系统
Guo et al. Multi-objective combinatorial generative adversarial optimization and its application in crowdsensing
CN116566891A (zh) 时延敏感的服务功能链并行路由优化方法、装置及介质
Shi et al. Efficient hierarchical policy network with fuzzy rules
CN113220437B (zh) 一种工作流多目标调度方法及装置
CN115453880A (zh) 基于对抗神经网络的用于状态预测的生成模型的训练方法
Bakhshi et al. Model-based reinforcement learning framework of online network resource allocation

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
GR01 Patent grant