基于双深度Q学习网络的面向设备负荷稳定的智能车间调度方法

时间:2023-09-30 10:00:11 来源:网友投稿

黎声益,马玉敏,刘 鹃

(同济大学 电子与信息工程学院,上海 201804)

在车间管理中,车间设备负荷直接影响了生产效率与生产成本,是十分关键的性能指标。如果设备持续处于满负荷下容易导致:①机械强度下降、故障率提高、寿命缩短,从而带来高昂的检修维护成本[1];
②设备维护调度、人员调度等多维度的调度工作无法开展,降低了制造过程整体的协同性[2-3]。如果设备负荷过低,又会直接降低车间的运行效率,导致产品的平均加工周期(Mean Cycle Time, MCT)增加[4]。因此,有必要控制车间设备负荷,尤其是小批量、多品种生产的柔性作业车间。目前,该领域的研究主要集中于运用工艺规划与调度集成的方法实现混合流水车间、柔性车间等背景下的设备负荷的均衡化[5]。如GJELDUM等[6]针对小批量、多品种齿轮箱装配线平衡问题,通过电子表格模拟最大候选规则方法重新分配任务,利用归零法(snap back method)提高装配线的设备利用率;
陆远等[7]为了解决智能制造车间生产过程设备负荷协同问题,通过分析设备动态能力,建立瓶颈设备负荷率模型,基于改进遗传算法,优化设备利用率,降低关键设备超负荷运行的可能,使设备负荷均衡。此类方法在一定程度上可实现对设备负荷的有效控制,但由于控制精度不足以及稳定性较差,设备负荷的浮动较大且具有较高的不确定性,无法很好地满足多维度调度任务的协同以及生产性能优化的需求[8]。

智能车间是智能制造的主要载体[9],智能车间具有丰富的生产数据,且支持实时交互,因此机器学习方法成为智能车间调度研究的一个重要手段。作为机器学习领域中的重点方向,深度学习(Deep Learning, DL)和强化学习(Reinforcement Learning, RL)技术发展日渐成熟,相比于决策树、支持向量机等传统的机器学习方法,DL与RL可以更有效地对数据进行挖掘。其中,DL能对大数据进行深度挖掘,构造非线性函数来逼近真实数学模型,以更低的计算成本、更高的计算效率解决生产调度问题[10];
而RL则能通过奖惩学习,模仿人类决策过程,提高调度问题的决策科学性[11]。针对作业车间调度问题,YAHYAOUI等[12]提出一种改进的Hopfield神经网络算法,加快了搜索局部最优解的速度,实验证明该方法在搜索速度、调度效果上比遗传算法、模拟退火等传统方法更优;
WANG等[13]利用深度置信网络构建了订单信息、车间实时状态信息与订单完成时间的映射模型,能在复杂多变的生产环境下,以较少的人工监督,准确预测订单完成时间等生产指标;
SHIUE等[14]提出一种基于Q学习的动态调度方法,该方法可在奖惩学习中逐步自主地建立并更新稳定的调度知识库,实现调度决策核心的自学习。由此可见,DL与RL为智能车间生产调度问题提供了有效的解决思路。同时,DL和RL也有不同的优势,DL具有RL不具备的函数逼近能力,而RL在学习与决策能力上又更为突出,因此,可将DL与RL的优势进行互补,通过日益成熟的深度强化学习技术,实现智能车间的自适应生产调度。LIN等[15]针对分布式生产调度问题,利用深度Q网络方法,在RL的基础上结合DL强大的感知与函数逼近能力,提出一种基于边缘计算的智能车间生产调度框架与方法,并通过实验证明了基于深度Q网络的智能体在大量离线训练的基础上,能对实时生产状态数据进行决策,并给出最佳调度方案。以上研究表明深度强化学习技术可与生产调度问题进行有效融合,提高调度方案决策的科学性,但所提方法仍存在需要人工监督、决策模型难以趋于稳定、无法进行在线学习等不足[16],难以满足智能车间调度问题中及时响应动态环境的需求。其中,双深度Q学习网络(Double Deep Q-learning Network, DDQN)方法可在一定程度上解决决策模型难以趋于稳定的问题[17]。

为此,本文将探索一种基于DDQN的智能车间调度框架与方法,实现完全免监督、自学习和自适应的智能车间生产调度,并将其应用于车间设备负荷的控制中,即以设备负荷处于期望区间内为目标,利用基于DDQN训练得到的深度神经网络调度模型,实现调度决策,从而稳定车间设备负荷。

1.1 面向设备负荷稳定的智能车间调度框架

为了应对智能车间复杂、动态的生产环境,面向设备负荷稳定的智能车间调度方法应具备以下特点:

(1)根据当前车间调度需求以及生产状态,决策出合理的期望设备负荷区间。

(2)根据期望负荷区间与当前的生产状态,进行调度决策,并施加至车间。

(3)针对动态事件,可对当前的调度方案进行及时调整。

为满足上述需求,本文提出如图1所示的面向设备负荷稳定的智能车间调度实施框架。该框架包含车间状态感知模块、动态事件监测模块、设备负荷区间决策模块、调度决策模块4个模块。其目的是通过实时获取智能车间生产状态数据来判断当前是否有动态事件,若有,则对设备期望负荷区间进行重新评估,并针对期望负荷区间与当前生产状态实现有效调度决策。各模块的具体功能如下:

(1)车间状态感知模块 实时读取智能车间的生产状态数据,并对数据进行清理、分析与融合后,形成融合状态数据。相比于原始状态数据,融合状态数据能为不同的模块,针对性地提供特征更显著的状态数据,如图1中的融合状态数据S1为反映车间扰动特征的状态集合,S2为反映车间资源配置的状态集合,S3为反映车间当前加工状态的状态集合。

(2)动态事件监测模块 针对融合状态数据S1,判断当前是否有扰动事件发生,如设备故障、人员调动、紧急订单插入等。

(3)设备负荷区间决策模块 针对融合状态数据S2以及车间调度需求,输出合理的平均期望负荷区间。

(4)调度决策模块 针对融合状态数据S3以及期望负荷区间,输出调度策略,并施加至智能车间。

其流程具体如下:

步骤1车间状态感知模块实时采集当前的车间状态数据,经过数据清理、分析与融合后,形成融合状态数据集{S1,S2,S3}。

步骤2动态事件监测模块根据融合状态数据S1,判断当前是否有扰动事件发生,若有,则向设备负荷区间决策模块发送激活信号,并转步骤3,反之,则继续监测。

步骤3设备负荷区间决策模块根据融合状态数据S2以及调度需求,输出平均期望负荷区间。

步骤4调度决策模块根据期望负荷区间以及融合状态数据S3,输出调度策略,并施加至智能车间。

1.2 基于双深度Q学习网络的调度决策方法

如图1所示的调度决策模块是控制设备负荷稳定的核心模块。在复杂、动态的生产环境下,生产数据体量巨大且耦合性强,传统数据挖掘方法难以获得令人满意的效果,因此本文采用深度神经网络调度模型作为决策核心,以提高调度决策的科学性。同时,为了解决模型训练需要大量人工监督以及模型难以收敛的问题,本文采用双深度Q学习网络(DDQN)方法设计深度神经网络调度模型训练器,并引入调度智能体概念,利用其感知、分析、决策和执行能力实现图1中各模块的协同与交互。由此,提出了如图2所示的面向设备负荷稳定的调度智能体,可针对融合状态数据以及期望负载区间输出调度策略。具体地,调度智能体对加工过程中生成的融合状态数据进行分析与处理,结合期望负载区间,生成调度样本,为调度模型训练器提供样本支持,并对深度神经网络调度模型进行在线更新,从而实现科学的调度决策。具体流程如下:

调度智能体通过感知功能,接收融合状态数据,状态分析子模块将当前状态数据与历史状态集进行比对分析,判断是否为新状态:

(1)若是,则将当前状态数据存入调度经验池与历史状态集,并激活基于DDQN的深度网络模型训练器进行在线学习,而后输出更新后的深度神经网络调度模型,用于调度决策;
(2)否则,直接将状态数据输入至深度神经网络调度模型,输出得到调度策略,并施加至智能车间,同时将调度策略存至调度经验池。

由图2可知,提供可靠的调度模型是关键,因此,如何设计基于DDQN的深度网络模型训练器,是实现面向设备负荷稳定的调度决策的核心内容,也是本文的研究重点。

其中,调度经验池中的调度经验样本的形式为(s,d,s′,r),s表示智能车间生产状态,如在制品数、日投料量等状态,其数据维度即状态的数量,不同的生产状态可通过统计学方法进行统一编码,以便于模型输入。d表示调度方案,如启发式调度规则、组合式调度规则等,其数据维度与所选择的调度方案形式有关,本文所选用组合式调度规则作为调度方案,数据维度为组合式调度规则中启发式规则的个数,各个启发式规则对应的权重系数可直接作为模型输出,无需编码。s′表示向智能车间施加调度方案d后新的生产状态。r表示状态s下,施加调度方案d可获得的奖励值,这里,由于是面向设备负荷稳定的调度,r应为期望设备负荷与实际设备负荷的相关函数。为了使调度经验池中的调度经验样本更能反映当前的生产状态,本文采用队列机制对调度经验池进行更新,即当调度经验池中的经验样本数量超过经验池容量后,将淘汰经验池中最早存入的样本,为新样本的存入留出空间。同时,小批量调度样本将按照式(1)进行随机抽取,使抽取的调度经验样本更具有时效性,同时也能割裂样本之间的相关性。

Numsample=

(1)

其中:Numsample表示调度经验样本序号;PoolSize表示调度经验池的容量;random(a,b)表示在a与b之间取随机数;M与ε为可调整参数,两者的值越大,越容易抽取到较新的调度经验样本。

基于DDQN的深度神经网络调度模型训练器的搭建与训练具体流程如下:

步骤1搭建用于在线决策的评估深度神经网络和用于辅助计算损失函数的目标深度神经网络,两个网络结构和初始参数完全一致,并且每隔一定的训练次数,将评估网络的参数延时拷贝至目标网络。

步骤2将小批量调度样本输入至评估网络与目标网络,经过前向传播后,可分别得到评估网络的行为值向量Qeval与目标网络的行为值向量Qtarget,并将Qeval拷贝至中间向量Qeval2。

NBA球星中,林书豪有两个特殊标签:成绩全优的哈佛“学霸”和来自中国台湾的亚裔“黄皮”。高中时期,林书豪就以凶猛球风闻名,但他还是遭受了铺天盖地的嘲讽:“那个眯眯眼,赶紧滚回中国吧!”

步骤3以Qtarget作为目标行为值向量,将其输入到Q-learning算法的行为值函数中,并将输出覆盖至Qeval2的对应位置,完成向量Qeval2中的部分元素更新(依据batch_index、d_loct进行元素定位),所述行为值函数为:

Qeval2(batch_index,d_loct)=

r+γmaxQtarget(batch_index,∶)。

其中:batch_index表示训练样本的行索引向量且满足batch_index∈[1,BatchSize],BatchSize表示训练样本中的样本条数,d_loct表示训练样本中的规则位置向量。

步骤4以Qeval与Qeval2构建损失函数Loss:

Loss=Qeval2-Qeval。

步骤5利用损失函数Loss对评估网络进行反向传播,更新、优化网络参数。

步骤6重复步骤1~步骤5,若达到预设训练次数,则输出训练好的评估深度神经网络。

基于DDQN的深度神经网络调度模型训练器的实现见算法1。

算法1基于DDQN的深度神经网络调度模型训练器实现。

Require:折扣因子γ

搭建评估深度神经网络Neteval以及目标深度神经网络Nettarget

while 没有达到停止条件do

向Neteval、Nettarget输入小批量调度样本{s,d,s′,r},分别得到Qeval,Qtarget

Qeval2←Qeval

Qeval2(batch_index,d_loct)←r+γmaxQtarget(batch_index,:)

Loss←Qeval2-Qeval

if达到延时拷贝触发周期then

Nettarget←Neteval

end if

利用损失函数Loss对Neteval进行反向传播,更新参数

end while

输出Neteval

为验证本文所提出的基于DDQN的面向设备负荷稳定的智能车间调度方法有效性,本文选用经典的半导体生产车间MiniFab模型[18]加以验证,仿真平台选用Plant Simulation,实验平台采用Python语言实现,实验环境为Intel Core i3 CPU、内存为12 G、操作系统为Windows 7。

3.1 实验数据设置

3.1.1 智能车间调度样本数据

确定半导体智能车间状态集F、调度规则集D、平均期望设备负荷区间OEE以及奖励值r,本实验中4类数据的具体设置如下:

(1)车间状态集F本实验选取9个车间状态,如表1所示。为了防止在模型训练过程中出现状态维数灾难,需要对在制品状态进行压缩处理。在相同的初始加工状态下,分别采用不同的启发式规则,采集600条在制品状态数据。经过直方图统计,对在制品状态数据进行均等划分,得到如表1中的取值区间,并对其进行编码,以规范模型输入。

表1 车间状态集

(3)设备负荷期望区间OEEexpect为了保证平均设备负荷OEE既不过高也不过低,使之处于合理的区间内,本文设置OEEexpect=[0.8,0.9],OEE∈OEEexpect。平均设备负荷OEE计算如下:

(2)

其中:OEEi表示第i台设备的负荷数值,Ne表示设备数量,依据MiniFab配置情况,本文设置Ne=5。

(4)奖励值r奖励值r的设定如式(3)所示,

r=

(3)

其中:OEEbest=0.85,OEEactual为实际设备负荷。在这样的奖励值设置下,能使训练后的模型决策效果更趋近于设备期望负荷区间的中间值,减少期望区间内的大幅度波动。

3.1.2 实验参数

借助Python语言以及tensorflow等神经网络算法库,搭建维度为17的输入层、3层隐含层、维度为2的输出层、每层隐含层神经元个数为30的全连接层深度神经网络,用作评估深度神经网络与目标深度神经网络,并随机初始化各个权重与偏置参数。

实验中所涉及的参数参如表2所示。

表2 各模块所涉及的参数表

此外,为了模拟真实车间的加工情况,实验还设置了投料机制,车间内3种产品日投料量(Lot/d)均在[8,12]内均匀分布。

3.2 学习率标定实验

DDQN算法在不同的问题背景下,其训练器的最优超参数也不同,需要通过实验来标定,如学习率(LR)、折扣因子γ等超参数[20-21]。其中,学习率直接影响模型收敛速度与收敛稳定性,因此本文着重进行学习率的标定实验。

由于LR过高容易导致模型过拟合,而过低容易导致模型无法在有限时间内收敛,本实验中选取了LR∈{0.01,0.005,0.001}作为标定值,并从中选取最佳值。设定训练周期为600个Episode,并记录训练过程中每10个Episode的奖励值平均值,得到如图4所示的不同学习率下的奖励值对比图。

由图4可知,当LR=0.01时,奖励值在训练次数为180左右开始收敛,在训练次数为250、360、470左右时,发生了较大的波动;
当LR=0.005时,奖励值在训练次数为220左右开始收敛,其收敛速度慢于LR=0.01,在训练次数为330左右时发生了较大波动,波动次数与幅度均小于LR=0.01;
当LR=0.001时,奖励值在训练次数为280左右开始收敛,收敛速度慢于LR=0.01与LR=0.005,在后续训练中未发生较大波动。

由此,综合考虑奖励值的收敛速度与收敛后的稳定性,本文选用LR=0.005作为后续方法有效性验证实验的学习率。

3.3 方法有效性验证

在所构建的实验环境的基础上,取LR=0.005,γ=0.95下训练了600 Episodes的深度神经网络调度模型作为图2所示的调度智能体的决策核心,调度智能体每天针对当前车间状态更新一次调度策略,并选取调度规则d1=(1,0,0)、d2=(0,1,0)、d3=(0,0,1)、d4=(1/3,1/3,1/3)作为对照组,对所提出的基于DDQN的面向负荷稳定的智能车间调度方法进行有效性验证。为了保证对比的有效性,避免调度规则以外的因素对设备负荷产生影响,所有实验均在同一实验环境下进行。运行仿真模型,连续采集10天的平均设备负荷指标OEEactual与日产量指标dailyPROD,并对此进行分析。

基于DDQN的面向负荷稳定的智能车间调度方法与其他调度方法对平均设备负荷的影响如图5所示,基于DDQN的面向负荷稳定的智能车间调度方法与其他调度方法下的平均设备负荷表如表3所示。由图5与表3可得,在基于DDQN的面向负荷稳定的智能车间调度方法下,第1~10 d内,车间平均设备负荷均稳定在期望平均设备负荷OEEexpect=[0.8,0.9]之间,而其他调度方法并未稳定在期望平均设备负荷OEEexpect内,且实际设备负荷波动较大,不具有规律性。

注:表示实际设备负荷处于期望设备负荷区间OEE内;
其他表示不在调度区间内。DIS表示实际设备负荷与期望设备负荷区间OEE中心值的差值的绝对值。

具体地,可划分为两个阶段作详细分析:

(1)第一阶段(1~3 d) 基于DDQN的面向负荷稳定的智能车间调度方法与其他调度方法下的平均设备负荷均处于较高水平。这是由于当前为加工的初期,车间生产负荷合理,车间设备整体负荷均较高。在调度方法d1、d2、d3、d4作用下,3 d内平均设备负载处于期望平均设备负载内的天数分别为2、2、2、0。而在基于DDQN的面向负荷稳定的智能车间调度方法作用下,3 d的平均设备负荷均处于期望区间内,并且平均设备负荷稳定在0.87左右。分析可得,此时基于DDQN的面向负荷稳定的智能车间调度方法输出的调度策略在车间设备整体负荷较高时,具有抑制车间设备负荷的作用。

(2)第二阶段(4~10 d) 相较于前一阶段,基于DDQN的面向负荷稳定的智能车间调度方法与其他调度方法下的平均设备负荷均处于较低水平。这是由于当前的车间生产负荷与资源配置不平衡,出现瓶颈设备时间满负荷、非瓶颈设备长时间空闲等极端情况,导致车间整体负荷较低。此阶段中,在调度方法d1、d2、d3、d4作用下,平均设备负载处于期望平均设备负载内的天数仅分别为4、1、1、1。而在基于DDQN的面向负荷稳定的智能车间调度方法作用下,7 d的平均设备负荷均处于期望区间内,平均设备负荷数值仍稳定在0.81左右。分析可得,该阶段基于DDQN的面向负荷稳定的智能车间调度方法输出的调度策略能够平衡车间资源配置,进而提高车间设备负荷,使得设备负荷处于期望区间内。

由此可见,基于DDQN的面向设备负荷稳定的智能车间调度方法可针对不同的车间状态,及时更新当前调度策略,以达到抑制或提高设备负荷的目的,从而稳定车间整体设备负荷。

基于DDQN的面向负荷稳定的智能车间调度方法与其他调度方法对日产量的影响如图6所示。由图可得,在基于DDQN的面向负荷稳定的智能车间调度方法下,日产量数值与组合式规则d4基本持平,且整体上优于其他单一启发式规则d1、d2、d3。由此可说明,基于DDQN的面向负荷稳定的智能车间调度方法在实现对设备负荷的稳定控制时,并不牺牲日产量这类关键性能指标。

由上述分析可以看出,本文所提出的基于DDQN的面向设备负荷稳定的智能车间调度方法能针对期望负荷区间与当前的生产状态,对调度策略进行动态调整,在不牺牲如日产量这类关键性能指标的前提下,对设备负荷进行抑制或提高,从而实现对设备平均负荷的稳定控制。

本文提出一种基于DDQN的面向设备负荷稳定的智能车间调度方法,该方法首先设计了基于DDQN的深度神经网络调度模型训练器,借此对深度神经网络调度模型进行网络参数更新,提高了模型收敛的效率与稳定性,从而实现了模型自学习。在此基础上,该方法以深度神经网络调度模型为决策核心,配合动态事件监测、设备负荷区间决策等辅助性模块,挖掘生产状态数据与设备负荷间的函数关系,输出满足期望目标的调度方法,从而使智能车间设备负荷达到可控的稳定状态。该框架与方法在MiniFab半导体车间模型中进行验证,结果表明,在生产环境复杂、动态的智能车间中,所提方法能稳定控制设备负荷,使之处于期望区间内,并且不牺牲如日产量这类关键性能指标。

但是由于MiniFab模拟的生产环境比较简易,该方法在移植至更复杂智能车间的过程中,仍存在许多本文以外的考量因素,如:如何应对外来扰动的影响、如何实现快速的模型在线学习与更新、如何优化模型结构以应对更复杂的车间情况等。未来将以实现快速的调度模型在线学习与更新为主要目标,并通过更为复杂、真实的智能车间生产环境来完善该方法。

猜你喜欢车间调度神经网络100MW光伏车间自动化改造方案设计智能制造(2021年4期)2021-11-04《调度集中系统(CTC)/列车调度指挥系统(TDCS)维护手册》正式出版铁道通信信号(2020年10期)2020-02-07神经网络抑制无线通信干扰探究电子制作(2019年19期)2019-11-23基于强化学习的时间触发通信调度方法北京航空航天大学学报(2019年9期)2019-10-26一种基于负载均衡的Kubernetes调度改进算法成都信息工程大学学报(2019年3期)2019-09-25虚拟机实时迁移调度算法三门峡职业技术学院学报(2019年1期)2019-06-27招工啦小学生学习指导(中年级)(2018年11期)2018-11-29“扶贫车间”拔穷根农村农业农民·B版(2018年11期)2018-01-28把农业搬进车间中国老区建设(2016年12期)2017-01-15基于神经网络的拉矫机控制模型建立重型机械(2016年1期)2016-03-01

推荐访问:调度 车间 负荷