机器故障下柔性作业车间的生产重调度方式决策模型
2023-12-04金鹏博唐秋华成丽新张利平
金鹏博,唐秋华+,成丽新,张利平
(1.武汉科技大学 冶金装备及其控制教育部重点实验室,湖北 武汉 430081;2.武汉科技大学 机械传动与制造工程湖北省重点实验室,湖北 武汉 430081)
0 引言
实际生产中会遇到各种突发性扰动,如紧急订单插入、原材料短缺或机器故障等[1]。其中,机器故障具有随机、离散分布的特点,无法准确预估其发生时刻点。机器故障造成了当前机器不可用,也导致了初始调度方案失效。如不及时采取措施解决,就会造成生产紊乱,导致整个生产中断,进而导致工件无法如期完成,对企业造成难以估量的损失。为避免此类情况的发生,决策者必须在有限的时间内给出合理的重调度方式,快速生成调整代价小、响应迅速的调度方案,保证生产系统稳定运行,在最大程度上挽回损失。重调度方式有多种:完全重调度、部分重调度、右移重调度等,在不同故障情形下采用何种重调度方式来生成新的调度方案,直接影响到车间生产稳定性和生产效率,故而亟需最优估计给定故障情形下的重调度方式,快速、经济、高效地生成重调度方案[2-3]。
在生产现场,由于生产环境复杂,现场调度时一般由调度员根据经验,主观判断给定故障情形的影响幅度,决策重调度方式,生成重调度方案。主观决策具有不稳定性,且调度员的经验水平不一致,难以保证重调度方式决策的最优性。另一方面,制造执行系统通过设备联网,收集车间生产运行信息,可实时呈现出生产现场的生产进度、目标达成度、人机料的使用状况等信息。故而,在已知故障情形和了解车间运行状态的前提下,可以通过重调度方式的智能决策,最大程度减少对初始调度方案的影响,提升车间作业稳定性。
围绕重调度方式决策,一些学者采用智能算法进行研究。他们可能事先预定一种重调度方式、或从多种重调度方式中随机选一种;更多的是依据每种重调度方式,分别生成重调度方案,再根据评价标准选择最优。WANG等[4]将隐性干扰量定义为时间累计误差(Time Accumulation Error,TAE),提出一种针对射频识别技术 (Radio Frequency IDentification,RFID)驱动的隐性干扰的重调度方式。乔非等[5]提出一种模糊Petri网模型,将该模型用做实际半导体生产线的重调度方式。SALADO等[6]使用文化基因算法(Memetic Algorithm,MA)找到一个减少重调度区域内的能耗调度表,同时又可以保证时间约束,目标是通过重新安排最少任务数来尽可能恢复原始调度方案。吉卫喜等[7]定义了多种重调度方式的判定方法、驱动机制和评价指标,使用智能算法求得多种重调度方案,再基于成本挑选出最优重调度方案。刘壮等[8]考虑了3个决策指标,基于改进逼近理想解排序(Technique for Order Preference by Similarity to an Ideal Solution,TOPSIS),以多个可选调度方案集中选择最优。吴正佳等[9]根据故障机器的状态,构建故障机器上剩余工件约束模型,提出插入重调度和完全重调度策略,使用遗传算法求解,寻找最优重调度方案。值得关注的是,直接指定重调度方式,与问题特征和个人经验的关联很大,很难保证决策正确性;制定多种重调度方案后,再从中选优,能保证正确性,但也意味着巨大的计算工作量。
也有学者采用机器学习对重调度问题进行研究。YU[10]提出一种采用神经网络和遗传算法的混合方法来解决扩展作业车间调度问题。其中遗传算法用于优化序列,神经网络用于优化固定序列下的操作开始时间。WALTER等[11]针对车辆重调度问题,使用机器学习设计可以自动改进的算法,将其获得的解与使用经典算法的解进行比较,获得最优重调度方案。ZHAO[12]等提出机器故障下基于随机森林的作业车间重调度方式决策模型。针对Job-Shop问题,使用随机森林在两种重调度方式中进行选择,选择出一个最优的重调度方式。上述文献主要针对重调度问题,关心的是重调度方案生成;只有少数文献进行重调度方式决策,但仅在两种重调度方式中进行了选择。
综上,重调度方式决策实质是重调度优化层次之上的一种模式决策,而现有研究集中在故障情形下的重调度方案生成,考虑重调度方式决策模型的研究相对较少。重调度方式决策研究主要有两个难点:①生产过程中机器故障不可能频频发生,通过现实获取全部学习样本是不现实的。而在仿真时,如何产生数据样本,以求覆盖尽可能多的故障情形就显得尤为重要。②机器故障与重调度方式之间存在某种内部关系,如何挖掘合理的机器故障特征值来表征故障情形,以及使用机器学习将特征值与重调度方式之间的内部关系对应起来,由此得到一个重调度方式决策模型,就显得十分有必要。因此,本文提出一种融合遗传算法与改进BP网络的重调度方式决策模型,为不同的机器故障情形估计最优重调度方式。
1 机器故障下重调度方式决策问题
机器故障是作业车间常见扰动之一。发生机器故障后,需要按照指定的重调度方式,在给定约束下对未完工或未开始工序进行重调度,以实现完工时间最小化、工序变动小、机器利用率大、准时交货率最大化等目标。机器故障下柔性作业车间的重调度方式决策问题描述如下:
假定有N种重调度方式{n=1,…N},故障发生后尚有I个剩余工件需要加工{i=1,…I},每个工件至少有一道待加工工序,工件i的每道工序j有Mij可选机器(1≤|Mij|≤M),各工序在每台可选机器上的加工时间不同。目标是决策合理的重调度方式,使其对加工过程产生的影响最小化。
在故障时刻点,故障机器存在3种情况:①故障机器正在加工,处于加工状态;②故障机器在空闲状态,后续有加工任务;③故障机器在空闲状态,后续无加工任务。因为第3种不需要生产重调度,故不予考虑。
对于该问题,提出以下假设:①故障每次只发生在一台机器上,且故障时刻点和预计修复时间已知。②故障发生后,对故障机器立即执行维修,无延迟,维修过程中该机器不可用。③故障发生后非故障机器上正在加工的任务继续加工;故障机器上正在执行的工序立即停止、已完成的部分工序报废,该工序将作为一个新的工序重新执行。
为便于对求解问题进行准确描述,引入下述符号和变量:
(1)参数
n为重调度方式(n∈N);
M为机器的集合{M={k|1,2…M};
I为工件的集合{I={i|1,2…I};
J为工序的集合{J={j|1,2…J};
L为一个极大的数;
oij为第i工件的第j道工序操作;
Mij为工序oij的可选机器集合,Mij∈M;
pijk为第i工件的第j道工序在机器k的加工时间;
mnk为机器k的维护时间长度;
t0为故障时刻点;
mso为原调度方案的最大完工时间。
(2)决策变量
Xijk,重调度方案中,若第i工件的第j道工序(oij)在机器k上加工,则为1;否则为0;
Yijabk,重调度方案中,若在机器k上第i工件第j道工序的紧后工序是第a工件第b道工序,则为1;否则为0;
ϑij,若操作oij在重调度方案和原调度方案选择的加工机器不同,则为1;否则为0。
(3)关联变量
ms为重调度方案的最大完工时间;
sij为重调度方案中第i工件第j道工序开始时间;
cij为重调度方案中第i工件第j道工序完成时间;
ci为第i工件的完成时间;
δ为最大完工时间之差;
γ为累计工序结束时间偏差值;
ϑ为为工序变动成本。
1.1 未开始工序判定
基于初始调度方案,式(1)表示在故障时刻点判定所有工件所有工序的加工状态:已完成、正加工、未开始。对于正在加工工序,若是在非故障机上加工,待其加工完成即可,无需干预,若在故障机上加工,考虑加工质量,已完成的部分工作直接报废,本道工序转变为未开始工序,重新进行加工。其中,从机器方面考虑,未开始工序集(W)可分为在故障机器上(WF)和非故障机器上(Wnon-F);从受影响的工件方面考虑,未开始工序集(W)可分为直接、间接受影响的工件集(Win)和不受影响的工件集(Wnon-in)。
(1)
1.2 机器可用时间判定
在故障时刻点,若非故障机正在加工,则其可用时刻μk后移到在其正加工工序的完成时刻;若非故障机空闲,则当前可用,即μk=t0;若是故障机,则可用时刻为机器修复时间,即μk=t0+mnk。
1.3 不同重调度方式下的可用机器集
1.4 重调度方式决策模型
在给定故障情形下,以最大完工时间之差小、累计工序结束时间偏差值小和工序变动成本小为目标,从可选择的重调度方式中,找出使上述3个目标综合最优的重调度方式。
重调度方式决策模型如下:
n*=argminn(α·δ+β·γ+τ·ϑ),
(2)
δ=|ms-mso|,
(3)
(4)
(5)
右移重调度约束条件:
(6)
(7)
(8)
完全重调度约束条件:
(9)
(10)
cij≤sab-(3-Yijabk-Xijk-Xabk)·L,
∀oij∈W,oab∈W,k∈Mij∩Mij。
(11)
部分重调度约束条件:
(12)
(13)
WF∪Wnon-F=W;
(14)
cij≤sab-(3-Yijabk-Xijk-Xabk)·L,
∀oij∈W,oab∈W,k∈Mij∩Mij。
(15)
共有约束条件:
(16)
cij≥μk-(1-Xijk)·L;
(17)
sij≥ci,j-1, ∀oi,j-1∈W;
(18)
ms≥cij,∀oi,j∈W;
(19)
ms=maximaxj|oi,j∈W(cij)。
(20)
其中:式(2)表示重调度方式决策的目标函数;式(3)~式(5)表示决策重调度方式的3个目标,分别为最大完工时间的差值、每道工序结束时间的差值和工序变动成本;式(6)表示在右移重调度中,受影响的工件的开始时间等于原始开始时间加上故障机修复时间;式(9)和式(12)表示一个工件的一道工序只能在一台机器上加工;式(7)、式(10)、式(13)和式(14)表示一道工序的开始时间与加工时间之和等于结束时间;式(8)、式(11)和式(15)表示不能在任意一台机器上同时进行oab和oij两项操作;式(16)表示操作oij在重调度方案和原调度方案选择的加工机器是否相同;式(17)表示需要重调度工序的完成时间至少等于机器可用时间;式(18)表示操作之间的优先级关系;式(19)表示加工时间约束;式(20)表示重调度的最大完工时间。
右移重调度(Right Shift Rescheduling,RSR)调整了工序的开始和结束时间,加工顺序不变,不考虑机器分配,故需用式(6)~式(8)和式(16)~式(20)描述;完全重调度(Total Rescheduling,TR)在故障时刻点针对未开始工序,生成新的加工机器表和时间表,加工时间和加工顺序均有变化,故需用式(9)~式(11)和式(16)~式(20)描述;部分重调度(Partial Rescheduling,PR)针对故障机器上未开始加工工序,重新安排其加工机器,而其余机器上的加工工序的加工机器不变,加工时间和加工顺序均有变化,故需用式 (12)~式(20)描述。
2 基于GA-BP神经网络的重调度方式决策
为实现不同故障情形下重调度方式的智能选择,可基于大量数据样本进行学习和测试,最终实现不同故障情形与重调度方式之间的智能估计。
然而,在现实的生产加工过程之中,围绕故障情形的数据采集比较困难,生产现场可以提供的故障样本数据量不足,所提供样本也不可能涵盖所有的故障情形,导致无法给每种故障情形提供预案。故而采用仿真手段,生成海量数据样本,全路径、全覆盖不同故障情形。
后续内容围绕4个部分展开:重调度方式决策模型的学习及应用过程、机器故障下样本集构建、基于GA的BP网络结构设计、基于遗传算法(Genetic Algorithm,GA)的BP (back propagation)神经权值阈值优化。
2.1 重调度方式决策模型的学习及应用过程
重调度方式决策模型的具体流程如图1所示,包括学习过程和应用过程。
(1)学习过程 在初始调度方案的基础上,随机发生机器故障,生成不同故障情形下的特征值数据。基于不同重调度方式,分别生成重调度方案,依据式(2)选取加权目标函数值最小的重调度方式,作为决策标签。然后将带有特征值-标签的数据对输入GA-BP重调度方式决策模型中,进行学习,直至分类准确率满足需求,且趋于稳定,结束训练并进行测试。
(2)应用过程 在实际应用时,若发生机器故障,立即采集该故障情形下的特征值数据,带入到训练好的GA-BP重调度方式决策模型中,估计到最优的重调度方式,生成重调度方案,更新初始调度方案。
2.2 机器故障下样本集构建
大规模样本生成是重调度方式学习的基础。样本数据应包括不同故障情形描述、不同重调度方式下的调度性能评价指标值及对应调度方案,并将所得到的数据进行特征和标签处理。
(1)初始调度方案生成 重调度方案是在初始调度方案的基础上调整得到的,传统求解方法难以解决此类复杂工程问题,故使用智能算法求解。本文的初始调度方案使用遗传算法优化得到[13]。
(2)故障情形的生成 发生机器故障后,故障机器号、故障时刻点和故障修复时间已知。故障机器号k根据生成样本数的规模,均匀分布在每一台机器上。故障时刻点t0和故障修复时间mnk遵循均匀分布且两者之和小于等于初始调度方案的完工时间,即t0+r≤mso。
(3)重调度方案生成 右移重调度在故障时刻点,将故障机器上受直接和间接影响的工序整体向右移动,移动过程中,各工件的加工顺序和加工机器保持不变。完全重调度和部分重调度的机器分配和工件顺序都需要调整,再次使用遗传算法优化[13],得到新的调度方案。
(4)样本标签的生成 根据重调度目标函数,得出故障情形下的最优重调度方式。根据权重系数,分别计算3种重调度方式的目标值,选取目标值最小的重调度方式作为决策标签。若为右移重调度则输出1;部分重调度则输出2;完全重调度则输出3。
(5)样本特征变量提取 确定了7个输入特征,分别为:故障机器号、故障时刻点、故障修复时间、工件影响维度、工序影响维度、总剩余加工时间和故障时刻点故障机器是否正在加工。
其中,工件影响维度D指受影响加工工件数量与总工件数的比值,如式(21):
(21)
式中:αd为受影响加工工件数量,αD为加工工件总数量。
工序影响维度E指剩余未加工工序数量与总工序数的比值,如式(22):
(22)
式中:βd为剩余未加工工序的总数量,βD为加工工件总的工序数。
总剩余加工时间Tsj指从t0到mso的间隔时间,
Tsj=mso-t0。
(23)
Yzj指在故障时刻点,故障机器如果正在加工则为1,否则为0。
(24)
2.3 基于GA的BP网络结构设计
作为一种人工神经网络模型,BP网络由输入层、隐含层和输出层组成,其训练过程包括信号前向传递和误差反向传播。其中前向传递负责计算实际值与重调度方式估计值之间的误差,反向传播表示根据输出层误差,利用梯度下降算法从后向前更新权值和阈值。式(25)~式(29)代表整个过程,f为隐含层激励函数,Yk和Ok为期望输出和重调度方式估计输出,ek,ωij,aj分别为误差、权值和阈值,Hj为隐含层输出,r为学习率。
(25)
(26)
ek=Yk-Ok,
(27)
(28)
(29)
BP网络隐含层结构的设计决定着网络的规模和性能。神经网络可以认为将原始输入数据在每一层隐含层上做多个二分类,而二分类的个数为该隐含层的节点数。神经网络的输入层和输出层通过隐含层连接,对于高维数据组,很难进行可视化处理。一方面,神经网络隐藏层的层数并不是越多越好。①隐藏层层数越多,需要学习的参数就越多,存在梯度爆炸与梯度消失问题,训练时间与训练难度就越大;②隐藏层层数越多,特征抽象程度会越高,更容易过拟合,导致对新数据集进行预测时效果较差,同时对数据量的要求也更大[14]。另一方面,在神经网络中,隐含层节点数的选择也非常重要,它不仅对建立的神经网络模型的性能影响很大,还是训练时出现“过拟合”的直接原因,会导致泛化能力差,预测精度降低[15]。
本文采用的最大隐含层层数为3层,但各层节点数范围为[4,23],故存在20×20×20=8 000种组合。显然,通过简单调参很难找到满意的隐含层结构。考虑到遗传算法具有良好的全局和局部搜索能力,可以在短时间内找到最优解或高质量的可行解。因此,使用遗传算法,在如上参数范围内确定最优的隐含层结构。其中,每一个染色体代表一个隐含层,例如,[10,7,3],数组的长度代表隐含层的层数,每一个数字依次表示该隐含层的节点数。具体步骤如下,其中,popsize和itermax分别代表种群数量、迭代次数,New_sp代表新的种群。
算法1隐含层结构优化流程。
输入:样本集Q1;
输出:最优的隐含层结构。
初始化种群
for i=1→itermax
for j=1→popsize
for k=1→ 5//训练5次
训练集Q11←Q1中随机选择70%
测试集Q12←Q1中剩余30%
whileek>θ//Q11进行训练
计算ek,更新wlj,aj
end while
for l=1 to Q12//Q12进行测试
Ol=H·ωlj
el=Yl-Ol
end for
ρ=z-/z
end for
fitness(j)=(∑kρk)/5
end for
New_sp←选择,交叉,变异
end for
(1)初始化 采用实数编码的方式描述节点数,其中节点数的范围由式(30)确定,其中:g为隐藏层的节点数,h为输入层的节点数,a为1到20的一个常数。故在范围[4,23]内随机取整。若某一条染色体含有基因0,则表示没有该隐含层。
(30)
(2)适应度 在测试样本中,使用准确率作为适应度值。如式(31),其中:z为测试样本的数量,z-为准确重调度方式估计的样本数量。
(31)
(3)交叉 由于所选择的两条染色体的长度可能不同,对染色体长度低于3的染色体,补0使其长度达到3,随机选择交叉点进行单点交叉。例如,有两条染色体,其中一条染色体为[9,6,0],其结构比较好,而另一条染色体为[14,7,6],其节点个数比较好。则通过交叉第3个基因可以得到[14,7,0],包含好的隐含层结构和对应节点个数。
(4)变异 对一条染色体有2种变异方法:①随机选择一个基因,在[4,23]内随机产生一个整数进行替换;②当染色体长度超过1,随机选择两个基因交换位置。
2.4 基于GA的BP权值及阈值优化
传统的BP网络由于权值和阈值具有随机性,往往会陷入局部最优,模型的有效性难以保证。为了获得更优的重调度方式估计结果,采用遗传算法优化得到的最优个体作为网络的权值和阈值,在保证客观性的同时,又可以避免陷入局部最优。每条染色体包含网络的所有权值和阈值。具体步骤如算法2所示,其中:bestfit代表每代最优个体适应度值,c代表种群中的最优个体。
算法2权值和阈值优化流程。
输入:网络结构(输入输出和隐含层结构);
输出:最优个体bestchorm。
计算染色体长度L
初始化种群
for j=1→popsize
fitness(j)=|Yk-Ok|
end for
for i=1→itermax
New_sp←选择,交叉,变异
for j=1→popsize
fitness(j)=|Yk-Ok|
c=fitness(j)min
ifbestfit>fitness(c) then
bestfit=fitness(c)
bestchorm=c
end if
end for
end for
(1)初始化 采用实数编码方式,由四部分组成,分别为输入层与隐含层权值、隐含层阈值、隐含层与输出层权值和输出层阈值。遗传算法求解得到的隐含层结构为[16,5],输入特征为7维,输出1维,则其染色体的长度L=16×7+16+5×16+5+1×5+1=219。
(2)适应度 根据初始种群得到的网络权值和阈值,使用训练样本进行训练重调度方式估计,把重调度方式估计值与真实值的误差绝对值作为适应度值。
(3)交叉 采用实数单点交叉法,随机选择两条染色体,第i条和第j条在位置k交叉,如式(32);其中b为范围[0,1]的随机数。
rik=rik(1-b)+rjk·b。
(32)
(4)变异 由于染色体由4部分组成,故不考虑基因交换等变异方式,仅考虑单点变异,如式(33),其中:r为范围[-1,1]的随机数。
rik=rik(1+r)。
(33)
3 实验
为检验决策器的分类效果,进行实验验证。首先选取单个案例,在给定的故障情形下生成特征值数据输入决策器,验证输出方式是否与实际计算结果一致。然后进行大规模实验,使用Mastrolilli M[16]文中的3组数据(mt06、abz5、la20),为每组案例生成大样本数据集。数据来自 http://www.idsia.ch/~monaldo/fjsp.html。3个案例分别产生指定规模下的故障数据样本集,验证分类准确率。所提出算法使用MATLAB语言编写,并在CPU为lntel(R) Core(TM) i5-4440 3.10 GHz的计算机上进行测试。
3.1 单案例重调度方式估计实验
选取一个6工件6工序的案例,在10台机器上加工,表1和表2为对应的机器表和加工时间表。
表1 机器表
表2 加工时间表
根据调度规则,使用遗传算法求得初始调度方案,图2a为初始调度方案甘特图。
按照机器故障下样本数据的生成方法,模拟实际加工车间故障情形,假定机器1在时刻点20发生故障,故障持续时间5,找出故障时刻点未加工工件的工序,如表3所示。
表3 工件未加工工序表
根据初始调度方案、未加工工序表和重调度时刻点,按照3种重调度方式的规则,得到如图2b、图2c和图2d所示的重调度方案。
(1)输入特征非常重要,直接影响重调度方式估计结果。为分析所选取特征值与标签之间的重要程度关系,进行皮尔逊相关性分析,结果如表4所示。标粗体的数据值表示这两个变量之间相关性显著。
表4 皮尔逊相关性分析
(2)在权重系数的确定中,为规避人为主观因素的影响,采用熵值法确定3个子目标的权重系数。使用熵值判断子目标的离散程度,离散程度越大,该子目标对总目标的影响程度就越大。最终确定3个参数分别为α=0.30,β=0.31,τ=0.39。
(3)根据问题的规模和性质,在综合考虑求解结果和计算时间的前提下,通过多次实验对比,在优化隐含层结构中,设置种群数量为200、迭代次数为200、交叉率为0.8、变异率为0.2;求得最优的隐含层结构为[16,5],隐含层数为2层,第一层节点数为16,第二层节点数为5。同时在优化权值阈值中,设置种群数量为100、迭代次数为100、交叉率为0.6、变异率为0.1。
通过3种重调度解决方案,得到的7个特征值数据如表5所示,在表中也给出3种重调度方式的目标函数值。同时,将这组样本数据的特征值输入训练好的GA-BP决策模型中,所获得的重调度方式估计输出值为1,与实际计算得到的结果一致。
表5 模拟机器故障情形下的输入和输出值
传统的重调度方法使用智能算法分别求解3种重调度方案,进而根据目标函数值选择最优重调度方案。而使用本文提出的GA-BP决策模型,快速选择一种重调度方式,据此生成一种重调度方案。实验结果表明,采用本文提出的先用决策模型得到最优重调度方式,据此再生成重调度方案,该方法反应速度更快、计算量更少,能显著提升机器故障下柔性作业车间的决策效率与反应能力。
3.2 大样本实验
为验证模型的有效性,进行大规模训练和测试。一般来说,数据集的规模会影响训练结果,因此,本节分别在数据集为1 000、5 000、10 000、15 000和20 000的规模下进行测试。其中70%用作训练样本,30%用作测试样本,训练样本和测试样本随机生成,每个样本集独立运行3次。同时,针对不同的数据规模,应用GA-BP与随机森林(Random Forest,RF)[12]、决策树 (Decision Tree,DT)、概率神经网络(Probabilistic Neural Network,PNN)作对比实验。
PNN是径向基网络的一个分支,属于前馈网络的一种。它具有学习过程简单、训练速度快、分类更准确、容错性好等优点。从本质上说,它属于一种有监督的网络分类器。平滑因子设为1.5;DT本质是一种分类方法,可以认为是if-then规则,能够对已知的含有特征属性和类别属性的数据进行处理,将相关度高的数据归纳到一个类别,形成拥有可读规则的树状决策树模型,具有速度快,准确性高等优势;RF是属于集成学习的一种组合分类算法,核心思想是将若干个分类器(没有强依赖关系、可并行生成)组合起来,投票得出最终的分类结果,得到一个分类性能显著优越的强分类器。分类器的规模为500个。
由表6可知,在3个案例集的测试中,与3种本质为分类算法的机器学习方法相比,本文提出的GA-BP决策模型准确率更高、效果更好。得益于数据集是自生成的,数据样本量足够大、样本特征在样本空间的覆盖程度足够广、各典型特征的覆盖细致程度足够细等优点,可以突破每种机器学习算法在数据规模与数据合理性上的性能瓶颈。由图3可知,随着学习样本数量的增加,不同算法的分类准确率都逐步上升。当样本规模达到10 000时,GA-BP决策模型的分类准确率在3个案例中均保持在82%以上,不过当样本数的规模扩大到20 000时,已学习到数据基本特征,尽管样本规模扩大,准确率的提升却较小,模型趋于稳定。在重调度方式估计准确率上相对接近于GA-BP决策模型的是决策树分类方法,树的结构随着数据规模的增长逐渐稳定且变得相对简单,其余两种机器学习方法重调度方式估计准确率相对较低。
表6 分类准确率 %
实验同时发现,当有很多种部分重调度方式时,如果各种重调度方式之间的差异不显著,采用GA-BP决策模型的分类准确率会有所下降。这是由于研究问题的背景是柔性作业车间,不论是完全重调度还是部分重调度,都只能由可选加工机器承担给定操作。该约束条件很大程度限制了机器分配,导致了调度方案的相似性,也致使分类准确率降低。表明当采用此类方法进行机器故障下柔性作业车间重调度方式决策时,所推荐的重调度方式数目不宜太多;各重调度方式间的差异越大,分类准确率越高。
4 结束语
本文针对机器故障下的柔性作业车间重调度方式决策问题,提出了融合遗传算法与BP神经网络(GA-BP)的重调度方式决策模型,从3种重调度方式中估计最优方式。
(1)通过随机仿真产生大量故障情形,基于数学模型和智能算法产生机器故障下带特征和标签的大样本数据集,提供一种成本低、在生产现场不能获取海量样本前提下的大规模数据生成方法。
(2)基于数据集,构建GA-BP重调度方式决策模型,方便决策者管理使用。
通过将仿真、智能算法和机器学习相结合,使重调度方式决策更加科学合理,所作预案也更合理。后续研究可以考虑挖掘特征值,以便最大化表征问题,以及把更加科学有效的数据处理技术(例如数据降维、特征编码等)和机器学习方法(例如关联规则学习、强化学习等)相结合,来解决动态柔性作业车间调度问题。