CN112987664A - 一种基于深度强化学习的流水车间调度方法 - Google Patents

一种基于深度强化学习的流水车间调度方法 Download PDF

Info

Publication number
CN112987664A
CN112987664A CN202110177144.4A CN202110177144A CN112987664A CN 112987664 A CN112987664 A CN 112987664A CN 202110177144 A CN202110177144 A CN 202110177144A CN 112987664 A CN112987664 A CN 112987664A
Authority
CN
China
Prior art keywords
workpiece
network
vector
encoder
flow shop
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.)
Granted
Application number
CN202110177144.4A
Other languages
English (en)
Other versions
CN112987664B (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.)
Northeastern University China
Original Assignee
Northeastern University China
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 Northeastern University China filed Critical Northeastern University China
Priority to CN202110177144.4A priority Critical patent/CN112987664B/zh
Publication of CN112987664A publication Critical patent/CN112987664A/zh
Application granted granted Critical
Publication of CN112987664B publication Critical patent/CN112987664B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop

Abstract

本发明公开了一种基于深度强化学习的流水车间调度方法,将每个工件作为节点并将其工序的处理时间作为节点信息进行聚合得到其嵌入表示。使用指针网络拟合策略网络,将最大完工时间作为奖励,对策略网络进行训练并保存参数。实际问题中,将每个工件的嵌入表示作为策略网络的输入,并依次选择概率最高的工件,直到所有工件选择完毕得到完整的调度序列。本发明所述的流水车间调度方法在小规模问题上可以获得近优解,在大规模问题上可以获得优于启发式算法和遗传算法的较优解,扩展到不同机器数和作业数的问题上,打破了在不同的问题规模和问题数据上需要重新对模型进行训练的局限性,通用性更广。

Description

一种基于深度强化学习的流水车间调度方法
技术领域
本发明涉及流水车间调度技术领域,尤其涉及一种基于深度强化学习的流水车间调度方法。
背景技术
流水车间调度问题是经典的组合优化问题之一,该问题难以求得最优解且计算复杂度较高。为了提高系统的生产效率,必须使用有效和高效的制造和调度技术解决方案。许多研究者针对此问题提出了多种算法。精确算法能够得到最优解,然而求解时间往往过长,不适用于大规模问题;NEH启发式算法是目前应用较为普遍的一种流水车间调度算法,可用于求解目标为最小处理时间(makespan)的优化问题。启发式算法很难保证解的质量,针对不同类型的问题需要重新对算法进行设计,因此启发式算法在通用性上存在局限性。
近年来,人工智能(Artificial Intelligence,AI)在解决组合优化问题方面展现出巨大的潜力。Vinyals等人提出了基于Seq2Seq模型的Pointer Network,该网络可以解决输出目标的数量依赖于输入序列长度的问题,将一个序列映射到另一个序列。传统的Seq2Seq模型包含三个部分编码器、解码器以及连接的中间状态向量,编码器通过学习输入将其编码为一个定长的向量,解码器再通过中间向量输出内容。但是随着序列变长,RNN会出现梯度弥散,导致信息大量丢失。Pointer Network引入了注意力机制,让网络能够将注意力集中于最有价值的信息上,并为其分配更高的权重,有效地提升了模型效果,解决了信息丢失的问题。该网络的输出结果是对输入序列的一个排列,在旅行商问题和背包问题上取得了较好的结果。
由于流水车间调度问题中的数据标签难以获取,因此使用监督学习效果不佳。与监督学习不同,强化学习是一个通过不断与环境互动、更新策略的过程,不需要数据标签。流水车间调度问题可以视作一个序列决策问题并且有着明确的数值目标,即处理时间的值越小越好,因此使用强化学习进行训练更具可行性。使用多层感知器拟合强化学习中的策略网络需要人工设计状态特征与奖励函数,而将机器数和作业数等指标直接作为状态特征会导致网络的输入变化较大,难以扩展到不同机器数和作业数的问题上,在不同的问题规模和问题数据上可能需要重新对模型进行训练,在通用性上还是存在局限性。
发明内容
针对上述现有技术的不足,本发明提供一种基于深度强化学习的流水车间调度方法。
为解决上述技术问题,本发明所采取的技术方案是:一种基于深度强化学习的流水车间调度方法,将每个工件作为节点并将其工序的处理时间作为节点信息进行聚合得到其嵌入表示。使用指针网络拟合策略网络,将最大完工时间作为奖励,对策略网络进行训练并保存参数。实际问题中,将每个工件的嵌入表示作为策略网络的输入,并依次选择概率最高的工件,直到所有工件选择完毕得到完整的调度序列。包括如下步骤:
步骤1:生成用于训练的流水车间问题数据集,并按比例分割为训练集、验证集和测试集;
所述流水车间问题数据集为b*j*m大小的问题矩阵,其中b为训练或验证的样本数大小batchsize,j为工件数,m为机器数。
所述步骤1的过程如下:
步骤1.1:初始化问题规模指定工件数记为j和机器数记为m,子任务在机器上处理时间的上界a与下界b,指定生成数据的随机seed种子值;
步骤1.2:使用pytorch中的FloatTensor根据seed种子和上、下界值随机生成每个工件在每台机器上的处理时间;
步骤1.3:多次执行步骤1.2,产生的数据集记为流水车间问题数据集T。
步骤2:以指针网络的网络形式初始化策略网络的网络结构,包括嵌入层、图编码器和解码器;
所述嵌入层embedding使用Linear结构;所述图编码器和解码器均为LSTM网络,长度为j。
所述指针网络结合注意力Attention机制,如下式:
Figure BDA0002941030890000021
当编码器当前时间步的参考向量集合ro的其中之一和解码器隐藏状态q,相似度最高时,q对应该解码器将指向相似度最高的参考向量所对应的作业;所述参考向量集合ro由编码器编码输入序列后得到的隐藏向量集合构成,r0={enc1,...,encj};其中k为当前时间步之前的所有时间步,π(k)表示第k时间步选择的作业标号,
Figure BDA0002941030890000022
为当前时间步指针向量的第o个元素,o∈(0,...,j);vT、Wref和Wq都为需要学习的权重矩阵;使用tanh非线性激活函数将输出值限制在-1和1之间,使用softmax函数转换相似度为概率分布。
本发明中,所述“工件”与“作业”含义相同,都是“job”的中文描述,均表示流水车间调度问题中所有等待加工的工件。
步骤3:使用mini-batch的方式对网络进行训练,将作业的向量表示输入到步骤2的网络结构的嵌入层中进行嵌入处理,再输入到编码器中,对该问题的所有作业节点进行编码,利用Attention机制聚合编码后的信息;每个时间步选择概率最大的工件作为当前时间步选择的工件加入到调度序列中直到获得完整序列,并使用奖励值更新网络参数;
所述步骤3的过程如下:
步骤3.1:使用mini-batch的方式对网络进行训练,从训练集选取一个batch的问题矩阵按行转换为作业向量,每个行向量即作业向量对应一个工件中各工序在指定机器上的处理时间;
所述选取一个batch的问题矩阵按行转换为作业向量的过程如下:
每个行向量即作业向量对应一个工件中各工序在指定机器上的处理时间,工件的处理时间向量表示为Pi=(pi1,pi2,...,pim),i∈[0,j]向量的每一维度代表编号为i的工件在1-m台机器上的处理时间。
步骤3.2:输入的作业的向量表示输入到嵌入层中进行嵌入处理,对向量进行扩充;
步骤3.3:将经过嵌入的向量输入到编码器中,编码器对该问题的所有作业进行编码,对于LSTM网络,相当于在每个时间步输入一个工件信息,转换为编码器当前时刻的隐藏状态hi
步骤3.4:通过Attention机制聚合编码之后每一时刻的隐藏状态、编码器中上次的输出与解码器中当前时间步的隐藏状态q;在聚合后生成编码器每个时间步隐藏状态的权重(α1,...,αn);
步骤3.5:在结合了Attention机制的策略网络中,根据最终生成的权重(α1,...,αn)输入到softmax后的结果,选择该分布中概率最大的工件作为当前时间步选择的工件加入到调度序列中;同时,为了保证已被选择工件不再被选择,使用遮罩在生成概率分布时将已被选择工件的概率设置为极小值,避免重复选择;
步骤3.6:在得到完整的调度序列后,计算该序列的最大完工时间作为奖励值,将前5个batch的最大完工时间的平均值作为基准baseline来降低方差,使用近似梯度更新模型参数,每隔10个batch,将验证集输入网络进行验证判断最大完工时间是否有所下降;
步骤3.7:保存模型文件。
步骤4:加载模型文件,将新的问题矩阵或使用测试集数据输入模型,得到调度序列。
采用上述技术方案所产生的有益效果在于:
1、本发明提供的流水车间调度方法使用强化学习结合传统NLP领域的Sequenceto Sequence learning方式解决了经典的的流水车间调度问题,方法新颖,取得的优化效果优于大部分传统的启发式算法、遗传算法等,求解时间小于运筹优化求解器CPLEX等;
2、本发明使用的深度学习方法,在训练完成后保存模型。在相同问题规模下,即使处理时间矩阵发生变化,仍然可以使用先前的模型得到较优解,这点传统方法难以实现,因此本发明在通用性相比其他方法有极大提升;
3、本发明提供的流水车间调度方法推广性较强,根据上述的技术方案加以修改可以推广解决其他车间调度问题,例如作业车间、非置换流水车间等。
附图说明
图1为本发明实施例中策略网络的网络结构图;
图2为本发明实施例中提供的流水车间处理时间矩阵;
图3为本发明实施例中输出的流水车间工件调度序列甘特图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
如图1所示,本实施例中基于深度强化学习的流水车间调度方法如下所述:
步骤1:生成用于训练的流水车间问题数据集,并按比例分割为训练集、验证集和测试集;
本实施例中,流水车间问题数据集包括1,000,000条训练数据与10,000条测试数据,并按比例分割为训练集、验证集和测试集。
所述流水车间问题数据集为b*j*m大小的问题矩阵,其中b为训练或验证的样本数大小batchsize,j为工件数,m为机器数。
所述步骤1的过程如下:
步骤1.1:初始化问题规模指定工件数记为j和机器数记为m,子任务在机器上处理时间的上界a与下界b,指定生成数据的随机seed种子值;
步骤1.2:使用pytorch中的FloatTensor根据seed种子和上、下界值随机生成每个工件在每台机器上的处理时间;
步骤1.3:多次执行步骤1.2,产生的数据集记为流水车间问题数据集T。
本实施例中,步骤1.2循环1000000次,产生的数据集记为流水车间问题数据集T,与步骤1.2的问题规模相同,上界下界相同,随机seed种子可以不同,循环生成数据10,000次,产生的验证问题数据集合记为V。
步骤2:以指针网络的网络形式初始化策略网络的网络结构,包括嵌入层、图编码器和解码器;
所述嵌入层embedding使用Linear结构;所述图编码器和解码器均为LSTM网络,长度为j。
所述指针网络结合注意力Attention机制,如下式:
Figure BDA0002941030890000051
当编码器当前时间步的参考向量集合ro的其中之一和解码器隐藏状态q,相似度最高时,q对应该解码器将指向相似度最高的参考向量所对应的作业;所述参考向量集合ro由编码器编码输入序列后得到的隐藏向量集合构成,r0={enc1,...,encj};其中k为当前时间步之前的所有时间步,π(k)表示第k时间步选择的作业标号,
Figure BDA0002941030890000052
为当前时间步指针向量的第o个元素,o∈(0,...,j);vT、Wref和Wq都为需要学习的权重矩阵;使用tanh非线性激活函数将输出值限制在-1和1之间,使用softmax函数转换相似度为概率分布。
本发明中,所述“工件”与“作业”含义相同,都是“job”的中文描述,均表示流水车间调度问题中所有等待加工的工件。
步骤3:使用mini-batch的方式对网络进行训练,将作业的向量表示输入到步骤2的网络结构的嵌入层中进行嵌入处理,再输入到编码器中,对该问题的所有作业节点进行编码,利用Attention机制聚合编码后的信息;每个时间步选择概率最大的工件作为当前时间步选择的工件加入到调度序列中直到获得完整序列,并使用奖励值更新网络参数;
所述步骤3的过程如下:
步骤3.1:使用mini-batch的方式对网络进行训练,从训练集选取一个batch的问题矩阵按行转换为作业向量,每个行向量即作业向量对应一个工件中各工序在指定机器上的处理时间;
所述选取一个batch的问题矩阵按行转换为作业向量的过程如下:
每个行向量即作业向量对应一个工件中各工序在指定机器上的处理时间,工件的处理时间向量表示为Pi=(pi1,pi2,...,pim),i∈[0,j]向量的每一维度代表编号为i的工件在1-m台机器上的处理时间。
本实施例中,网络输入示例如下:
假如问题规模为3*3,处理时间矩阵如下:
Figure BDA0002941030890000061
该矩阵每行对应一个工件,每列对应一台机器,矩阵的每个元素代表工件在对应机器上所需处理时间。该例中每个工件都需要在3台机器上执行,在其前置子任务完成后才能在下一台机器上执行新的子任务,并严格按照机器1,机器2,机器3的顺序执行,可变的为工件的调度顺序。策略网络的输入向量如下工件1:(2,8,9),工件2:(3,1,7),工件3:(6,1,4),输出为关于工件1,工件2和工件3的一个排序序列。
步骤3.2:输入的作业的向量表示输入到嵌入层中进行嵌入处理,对向量进行扩充;
步骤3.3:将经过嵌入的向量输入到编码器中,编码器对该问题的所有作业进行编码,对于LSTM网络,相当于在每个时间步输入一个工件信息,转换为编码器当前时刻的隐藏状态enci
每个时间步输入一个工件的处理时间向量Pi=(pi1,pi2,...,pim),编码器将输入转化为隐藏状态
Figure BDA0002941030890000062
集合。
步骤3.4:通过Attention机制聚合编码之后每一时刻的隐藏状态、编码器中上次的输出与解码器中当前时间步的隐藏状态;再聚合后生成编码器每个时间步隐藏状态的权重(α1,...,αn);得到权重之后用tanh函数将其归一化限制在-1到1之间,之后使用softmax函数就可以转换为概率分布,所有job被选择的概率加和为1。
在指针网络中的解码器第一个单元的外部输入为<g>为编码器的最后一个隐藏状态,将其输入后,可得解码器的多个单元的隐藏状态
Figure BDA0002941030890000063
本发明在解码器的时间步为n时,选择下一个工件(π(n))进行调度的概率表示如下:
Figure BDA0002941030890000064
其中,s为输入序列{P1,...,Pj},π(<n)为已经被选择的工件向量,A()为关于编码器隐向量与解码器当前时间步输出隐向量的分布也是关于ref和q的分布。
将解码器的隐藏状态赋值给Attention机制的查询向量,将编码器的隐藏状态赋值给Attention机制的参考向量,根据一个查询向量q=deci和一组参考向量ref={enc1,...,encj},在j个参考向量集合上预测分布A=(ref,q),概率分布A表示了模型在观测了当前的查询向量q后指向参考refi也就是对应工件的可能性。
步骤3.5:在结合了Attention机制的策略网络中,根据最终生成的权重(α1,...,αn)输入到softmax后的结果,选择该分布中概率最大的工件作为当前时间步选择的工件加入到调度序列中;同时,为了保证已被选择工件不再被选择,使用遮罩在生成概率分布时将已被选择工件的概率设置为极小值,避免重复选择;
本实施例中对分布进行随机采样或贪婪选择概率最大的工件作为当前时间步的选择,加入到调度序列中。循环j次,得到一个完整的调度序列,作为最终的输出结果,记为result。
步骤3.6:在得到完整的调度序列后,计算该序列的最大完工时间作为奖励值,将前5个batch的最大完工时间的平均值作为基准baseline来降低方差,使用近似梯度更新模型参数,每隔10个batch,将验证集输入网络进行验证判断最大完工时间是否有所下降;
本实施例中,由于最优调度序列未知,不能使用序列损失函数,故本发明不使用传统Seq2Seq的训练方式,而是使用强化学习中的Policy Gradient方法来训练网络。
模型的输入s为{P1,...,Pj},由j个m维向量构成,假设输出序列为{o1,...,oj},是对模型输入的新排列。强化学习的奖励值设置为输出序列调度的处理时间,处理时间越小表示输出的结果序列越好,奖励值记为r(o|s)。使用参数θ表示神经网络的参数,actor网络定义为pθ(o|s),表示在输入序列为s时选择序列o作为输出的概率。网络优化的目标是使累计折扣奖励越小越好,网络训练优化的对象如式(3):
Figure BDA0002941030890000071
可以看到网络优化的目标就是在不同状态下,通过训练网络使处理时间的期望最小。
网络优化梯度如式(4):
Figure BDA0002941030890000072
其中,
Figure BDA0002941030890000073
表示baseline,一般使用critic网络预估的奖励值,由于在流水车间调度问题中reward可能均为较大的正值,产生的梯度方差较大,因此引入基线baseline来减少梯度方差。
实际中式(4)不能直接计算,故使用蒙特卡洛采样进行近似,近似的梯度计算如式(5):
Figure BDA0002941030890000074
本发明使用Pointer Network作为actor网络的近似表示,critic网络预估的基线baseline使用奖励平均值作为替代。
Figure BDA0002941030890000081
的估计如式(6):
Figure BDA0002941030890000082
其中R为当前batch的所有奖励值集合,beta为可变参数,表示之前batch预估值与当前bacth平均奖励值的占比权重,在第一个batch时,使用当前batch的平均奖励值作为baseline。
由上述强化学习训练方法,根据式(5)中的梯度和式(6)中baseline的计算方法,对网络进行随机梯度下降,不断降低makespan,直至模型收敛,保存模型参数。
本发明使用的模型超参数设置如下:
学习率:在工件数小于50时为0.0001,其余情况为0.00001
batch size:128;
优化器:adam优化器;
Beta:0.9;
隐藏层大小:128;
训练epoch数:工件数小于50为10轮,否则20轮;
训练集大小:1,000,000;
验证集大小:10,000;
最大梯度范数:2,防止梯度过小,进行梯度裁剪。
步骤3.7:保存模型文件。
步骤4:加载模型文件,将新的问题矩阵或使用测试集数据输入模型,得到调度序列。
如图2所示,本实施例还提供问题规模为5*2的问题矩阵,即5个工件和2台机器,每次有b个问题矩阵参与训练,batchsize大小为128,指定迭代次数为80,即在一个epoch中每次从训练集中抽取128个样本传递到网络中进行训练,共抽样80次。输入的作业的向量表示输入到Linear层中进行嵌入处理,扩充为128维的向量,128即为hiddenSize,以便于进行特征提取。将工件1输入编码器得到时间步1的隐藏状态h1,将工件2输入编码器得到时间步2的隐藏状态h2,依此类推。首次选择前,解码器中不包含前置工件信息,因此需要随机生成长度为128,且每个分量范围在
Figure BDA0002941030890000083
之间的向量,作为输入传入解码器,得到解码器的隐藏输出hd0。Attention层输入输出如下式,α12,...,α5为Attention计算出的对编码器两个时间步输出的关注程度(权重):
12,...,α5)=Attention(h1,h2,...,h5,hd0)
假设对α12,...,α5输入到softmax之后的结果为(0.2,0.1,0.2,0.1,0.4),则选择概率较大的工件5作为当前时间步的选择。对于一个batch中其他情况进行类似的操作,依次将工件加入到最终的调度序列中,直到将所有工件选择完毕,得到调度序列的甘特图如图3所示。

Claims (7)

1.一种基于深度强化学习的流水车间调度方法,其特征在于,包括如下步骤:
步骤1:生成用于训练的流水车间问题数据集,并按比例分割为训练集、验证集和测试集;
步骤2:以指针网络的网络形式初始化策略网络的网络结构,包括嵌入层、图编码器和解码器;
步骤3:使用mini-batch的方式对网络进行训练,将作业的向量表示输入到步骤2的网络结构的嵌入层中进行嵌入处理,再输入到编码器中,对该问题的所有作业节点进行编码,利用Attention机制聚合编码后的信息;每个时间步选择概率最大的工件作为当前时间步选择的工件加入到调度序列中直到获得完整序列,并使用奖励值更新网络参数;
步骤4:加载模型文件,将新的问题矩阵或使用测试集数据输入模型,得到调度序列。
2.根据权利要求1所述的基于深度强化学习的流水车间调度方法,其特征在于:所述流水车间问题数据集为b*j*m大小的问题矩阵,其中b为训练或验证的样本数大小batchsize,j为工件数,m为机器数。
3.根据权利要求12所述的基于深度强化学习的流水车间调度方法,其特征在于,所述步骤1的过程如下:
步骤1.1:初始化问题规模指定工件数记为j和机器数记为m,子任务在机器上处理时间的上界a与下界b,指定生成数据的随机seed种子值;
步骤1.2:使用pytorch中的FloatTensor根据seed种子和上、下界值随机生成每个工件在每台机器上的处理时间;
步骤1.3:多次执行步骤1.2,产生的数据集记为流水车间问题数据集T。
4.根据权利要求1所述的基于深度强化学习的流水车间调度方法,其特征在于:所述嵌入层embedding使用Linear结构;所述图编码器和解码器均为LSTM网络,长度为j。
5.根据权利要求1所述的基于深度强化学习的流水车间调度方法,其特征在于:所述指针网络结合注意力Attention机制,如下式:
Figure FDA0002941030880000011
Figure FDA0002941030880000012
当编码器当前时间步的参考向量集合ro的其中之一和解码器隐藏状态,相似度最高时,q对应该解码器将指向相似度最高的参考向量所对应的作业;所述参考向量集合ro由编码器编码输入序列后得到的隐藏向量集合构成,r0={enc1,...,encj};其中k为当前时间步之前的所有时间步,π(k)表示第k时间步选择的作业标号,
Figure FDA0002941030880000021
为当前时间步指针向量的第o个元素,o∈(0,...,j);vT、Wref和Wq都为需要学习的权重矩阵;使用tanh非线性激活函数将输出值限制在-1和1之间,使用softmax函数转换相似度为概率分布。
6.根据权利要求1所述的基于深度强化学习的流水车间调度方法,其特征在于:所述步骤3的过程如下:
步骤3.1:使用mini-batch的方式对网络进行训练,从训练集选取一个batch的问题矩阵按行转换为作业向量,每个行向量即作业向量对应一个工件中各工序在指定机器上的处理时间;
步骤3.2:输入的作业的向量表示输入到嵌入层中进行嵌入处理,对向量进行扩充;
步骤3.3:将经过嵌入的向量输入到编码器中,编码器对该问题的所有作业进行编码,对于LSTM网络,相当于在每个时间步输入一个工件信息,转换为编码器当前时刻的隐藏状态hi
步骤3.4:通过Attention机制聚合编码之后每一时刻的隐藏状态、编码器中上次的输出与解码器中当前时间步的隐藏状态;在聚合后生成编码器每个时间步隐藏状态的权重(α1,...,αn);
步骤3.5:在结合了Attention机制的策略网络中,根据最终生成的权重(α1,...,αn)输入到softmax后的结果,选择该分布中概率最大的工件作为当前时间步选择的工件加入到调度序列中;同时,为了保证已被选择工件不再被选择,使用遮罩在生成概率分布时将已被选择工件的概率设置为极小值,避免重复选择;
步骤3.6:在得到完整的调度序列后,计算该序列的最大完工时间作为奖励值,将前5个batch的最大完工时间的平均值作为基准baseline来降低方差,使用近似梯度更新模型参数,每隔10个batch,将验证集输入网络进行验证判断最大完工时间是否有所下降;
步骤3.7:保存模型文件。
7.根据权利要求6所述的基于深度强化学习的流水车间调度方法,其特征在于:所述选取一个batch的问题矩阵按行转换为作业向量的过程如下:
每个行向量即作业向量对应一个工件中各工序在指定机器上的处理时间,工件的处理时间向量表示为Pi=(pi1,pi2,...,pim),i∈[0,j]向量的每一维度代表编号为i的工件在1-m台机器上的处理时间。
CN202110177144.4A 2021-02-09 2021-02-09 一种基于深度强化学习的流水车间调度方法 Active CN112987664B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110177144.4A CN112987664B (zh) 2021-02-09 2021-02-09 一种基于深度强化学习的流水车间调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110177144.4A CN112987664B (zh) 2021-02-09 2021-02-09 一种基于深度强化学习的流水车间调度方法

Publications (2)

Publication Number Publication Date
CN112987664A true CN112987664A (zh) 2021-06-18
CN112987664B CN112987664B (zh) 2022-03-01

Family

ID=76393842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110177144.4A Active CN112987664B (zh) 2021-02-09 2021-02-09 一种基于深度强化学习的流水车间调度方法

Country Status (1)

Country Link
CN (1) CN112987664B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448687A (zh) * 2021-06-24 2021-09-28 山东大学 云环境下基于强化学习的超启发式任务调度方法及系统
CN113515097A (zh) * 2021-07-23 2021-10-19 合肥工业大学 一种基于深度强化学习的两目标单机批调度方法
CN113780839A (zh) * 2021-09-15 2021-12-10 湖南视比特机器人有限公司 基于深度强化学习的演化式分拣作业调度方法及系统
CN114186749A (zh) * 2021-12-16 2022-03-15 暨南大学 基于强化学习及遗传算法的柔性车间调度方法及模型
CN115857451A (zh) * 2022-12-02 2023-03-28 武汉纺织大学 一种基于强化学习的流水车间加工调度方法
WO2023217396A1 (en) 2022-05-13 2023-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Test channel scheduling using artificial intelligence
CN117422206A (zh) * 2023-12-18 2024-01-19 中国科学技术大学 提升工程问题决策和调度效率的方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170736A (zh) * 2017-12-15 2018-06-15 南瑞集团有限公司 一种基于循环注意力机制的文档快速扫描定性方法
CN109241536A (zh) * 2018-09-21 2019-01-18 浙江大学 一种基于深度学习自注意力机制的句子排序方法
US20190043379A1 (en) * 2017-08-03 2019-02-07 Microsoft Technology Licensing, Llc Neural models for key phrase detection and question generation
CN111199272A (zh) * 2019-12-30 2020-05-26 同济大学 一种面向智能车间的自适应调度方法
CN111931517A (zh) * 2020-08-26 2020-11-13 腾讯科技(深圳)有限公司 文本翻译方法、装置、电子设备以及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190043379A1 (en) * 2017-08-03 2019-02-07 Microsoft Technology Licensing, Llc Neural models for key phrase detection and question generation
CN108170736A (zh) * 2017-12-15 2018-06-15 南瑞集团有限公司 一种基于循环注意力机制的文档快速扫描定性方法
CN109241536A (zh) * 2018-09-21 2019-01-18 浙江大学 一种基于深度学习自注意力机制的句子排序方法
CN111199272A (zh) * 2019-12-30 2020-05-26 同济大学 一种面向智能车间的自适应调度方法
CN111931517A (zh) * 2020-08-26 2020-11-13 腾讯科技(深圳)有限公司 文本翻译方法、装置、电子设备以及存储介质

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448687A (zh) * 2021-06-24 2021-09-28 山东大学 云环境下基于强化学习的超启发式任务调度方法及系统
CN113515097A (zh) * 2021-07-23 2021-10-19 合肥工业大学 一种基于深度强化学习的两目标单机批调度方法
CN113780839A (zh) * 2021-09-15 2021-12-10 湖南视比特机器人有限公司 基于深度强化学习的演化式分拣作业调度方法及系统
CN113780839B (zh) * 2021-09-15 2023-08-22 湖南视比特机器人有限公司 基于深度强化学习的演化式分拣作业调度方法及系统
CN114186749A (zh) * 2021-12-16 2022-03-15 暨南大学 基于强化学习及遗传算法的柔性车间调度方法及模型
CN114186749B (zh) * 2021-12-16 2022-06-28 暨南大学 基于强化学习及遗传算法的柔性车间调度方法及模型
WO2023217396A1 (en) 2022-05-13 2023-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Test channel scheduling using artificial intelligence
CN115857451A (zh) * 2022-12-02 2023-03-28 武汉纺织大学 一种基于强化学习的流水车间加工调度方法
CN115857451B (zh) * 2022-12-02 2023-08-25 武汉纺织大学 一种基于强化学习的流水车间加工调度方法
CN117422206A (zh) * 2023-12-18 2024-01-19 中国科学技术大学 提升工程问题决策和调度效率的方法、设备及存储介质
CN117422206B (zh) * 2023-12-18 2024-03-29 中国科学技术大学 提升工程问题决策和调度效率的方法、设备及存储介质

Also Published As

Publication number Publication date
CN112987664B (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
CN112987664B (zh) 一种基于深度强化学习的流水车间调度方法
Liu et al. Progressive neural architecture search
CN110033021B (zh) 一种基于一维多路卷积神经网络的故障分类方法
Sun et al. Automatically evolving cnn architectures based on blocks
CN110175386B (zh) 变电站电气设备温度预测方法
CN113988449B (zh) 基于Transformer模型的风电功率预测方法
Navgaran et al. Evolutionary based matrix factorization method for collaborative filtering systems
CN113094822A (zh) 一种机械设备剩余寿命预测方法和系统
Ma et al. A hybrid particle swarm optimization and simulated annealing algorithm for job-shop scheduling
CN112308298A (zh) 一种面向半导体生产线的多场景性能指标预测方法及系统
CN115640898A (zh) 一种基于ddqn算法的大规模柔性作业车间调度方法
CN114037139A (zh) 一种基于注意力机制的货运车辆仓库逗留时长预测方法
CN113987343A (zh) 基于强化学习的多样化推荐方法、系统及存储介质
CN113449815A (zh) 一种基于深度包分析的异常包检测方法及系统
CN113203953A (zh) 基于改进型极限学习机的锂电池剩余使用寿命预测方法
CN115826530A (zh) 一种基于d3qn和遗传算法的作业车间分批调度方法
CN111753995A (zh) 一种基于梯度提升树的局部可解释方法
CN114372181A (zh) 一种基于多模态数据的设备生产智能规划方法
CN114742289A (zh) 一种面向生产工艺参数的高斯过程稳健优化方法
Bi et al. Sparse deep neural network optimization for embedded intelligence
CN117010459B (zh) 基于模块化和序列化自动生成神经网络的方法
CN110737773B (zh) 一种基于神经网络的信息分类方法和系统
CN113988181B (zh) 一种基于自适应前馈神经网络的目标分类方法
Wang et al. Adaptive integer quantisation for convolutional neural networks through evolutionary algorithms
CN114399152B (zh) 产业园区综合能源调度优化方法及装置

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