[发明专利]一种实现并行任务调度的多任务强化学习方法有效
申请号: | 201910864432.X | 申请日: | 2019-09-12 |
公开(公告)号: | CN110580196B | 公开(公告)日: | 2021-04-06 |
发明(设计)人: | 戚琦;孙海峰;王晶;张凌昕;王敬宇;廖建新 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06N3/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 并行 任务 调度 强化 学习方法 | ||
1.一种实现并行任务调度的多任务强化学习方法,基于异步优势表演者批评家Asynchronous Advantage Actor-Critic算法实现,其特征在于:所述方法包括下列操作步骤:
(1)对Asynchronous Advantage Actor-Critic算法模型进行如下设置操作以更好的解决并行多任务调度问题:
(1.1)设置状态空间S为一个集合,即:S={Ftask,L,T,Fnode},式中,
Ftask={f1,f2,f3,...,fM}表示一个作业的CPU指令编号,式中,M是自然数,表示一个作业的最大子任务数目;f1表示第1个子任务,f2表示第2个子任务,f3表示第3个子任务,fM表示第M个子任务;所述作业是指将并行任务分配给具有不同计算能力和资源的服务器节点;
L={L1,L2,L3,...,Li,...,LM}表示M个子任务的信息,Li={l1,l2,l3,...,lj...,lN}表示第i个子任务待处理数据的长度和存储位置,如果所述待处理数据存储在服务器节点j中,则将元素lj设置为该待处理数据的长度,并把其他元素设置为零;N为自然数,表示服务器节点的最大编号;
T表示所有服务器节点的每个子线程中已分配的待执行任务的预计剩余执行时间;Fnode表示所有服务器节点当前的CPU频率;
(1.2)设置动作空间:将一个作业的整体任务分为M个子决策,对应于M个子任务;对于每个子决策,动作空间由{1,2,3,...,N}给出,如果动作为i,则表示将子任务调度到第i个服务器节点;如果子任务的数量小于M,则将相应输出的动作直接丢弃;一个作业的完整动作at表示如下:at={at,1,at,2...,at,i...at,M},式中at,i表示t时刻第i个子任务被分配到的服务器节点编号;
(1.3)设置奖励定义:将奖励设置为最小化平均作业执行时间,即在每个决策点设置奖励rt为:rt=Tbase-Tjob(st,at),其中Tbase是作业执行时间的基线,Tjob(st,at)是t时刻决策中对应作业的实际执行时间;st表示t时刻所述作业调度问题的状态,at为在状态st情况下所采取的决策动作;
(2)对Asynchronous Advantage Actor-Critic算法网络进行如下改进:
(2.1)用深度神经网络来表示策略函数和值函数,即分别用表演者Actor网络来表示策略函数,用批评家Critic网络来表示值函数;设置多个表演者Actor网络来各自负责子任务的单独调度,因此,在所述神经网络中,包括M个softmax输出分支子网络用于策略πi(at,i|st;θi)和一个线性输出分支子网络用于值函数V(st,θv),πi(at,i|st;θi)表示第i个softmax输出分支子网络给出的与第i个子任务对应的策略,at,i表示t时刻第i个子任务对应的动作,st表示t时刻所述作业调度问题的状态,θi表示第i个softmax输出分支子网络的网络参数,θv表示所述线性输出分支子网络的网络参数;它们共享多个非输出层;每个softmax输出分支子网络包含N个输出节点,显示将子任务分配给服务器节点的概率分布;
(2.2)全局网络由输入层、共享子网络和输出子网络构成;其中所述的输入层的输入是所述作业调度问题的状态;其中所述的共享子网络由3层全连接层构成;所述的输出子网络由前述的M个softmax输出分支子网络和一个线性输出分支子网络构成;所述的softmax输出分支子网络由一个全连接层和一个softmax输出层构成;所述的线性输出分支子网络由一个全连接层和一个线性输出层构成;
(3)设置Asynchronous Advantage Actor-Critic算法的损失函数如下:
其中Lactor(θi)为第i个分支子网络的损失函数,计算公式如下:
Lactor(θi)=logπi(at,i|st;θi)(Rt-V(st;θv))+βH(πi(st;θi))
其中πi(at,i|st;θi)为第i个子网络输出动作at,i的概率,πi(st;θi)为子网络输出各个动作的概率分布,即选择N个节点中的某一个节点执行任务的概率分布,H(πi(st;θi))为该概率分布的熵,参数β用于控制熵正则化项的强度,H(πi(st;θi))计算公式为:
上式中,为在时刻t子网络i选择动作j的概率,即选择节点j执行子任务i的概率;
Lcritic(θv)为共享的批评家Critic网络的损失函数,计算公式如下:
Lcritic(θv)=(Rt-V(si;θv))2
上式中Rt代表累积奖励,计算公式为:
其中参数γ∈[0,1]为折扣因子;
(4)利用采集观测的并行任务调度数据,训练前述的Asynchronous Advantage Actor-Critic算法网络,算法收敛后,将所述算法网络用于并行任务调度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910864432.X/1.html,转载请声明来源钻瓜专利网。