网刊加载中。。。

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读

考虑群组预维修的多目标柔性作业车间调度  PDF

  • 李立威 1
  • 邓蕾 1
  • 廖雯竹 2
  • 汤宝平 1
  • 王义 1
1. 重庆大学,机械与运载工程学院,重庆 400044; 2. 重庆大学,管理科学与房地产学院,重庆 400044

中图分类号: TH165

最近更新:2024-09-30

DOI:10.11835/j.issn.1000-582X.2023.106

  • 全文
  • 图表
  • 参考文献
  • 作者
  • 出版信息
EN
目录contents

摘要

柔性作业车间系统能满足社会对个性化、小批量及定制化产品的需求,该车间系统具有设备众多、工艺路线复杂、故障频次多等特点,但目前只是采取单机预防性维修策略来避免设备故障,势必会增加维修次数和维修成本,影响生产活动。针对传统单机预防性维修带来的问题,提出将群组预防性维修策略应用于柔性作业车间系统,并建立了群组预防性维修和多目标柔性作业车间联合优化模型。为了克服传统算法局部搜索能力不足的问题,设计了一种新的多目标进化算法求解多目标柔性作业车间调度问题,并展示了如何在柔性作业车间系统应用群组预防性维修。实验结果表明:所设计多目标进化算法能求出更多的最优解,具有更快的收敛速度,且能收敛到更优目标值;群组预防性维修比单机预防性维修的维修次数更少,维修成本更低,对生产活动影响更小,算例结果显示群组预防性维修相比于单机预防性维修在维修次数和维修成本方面均降低了150%;对将群组预防性维修策略应用于半导体代工厂生产设备的维修进行了展望。

柔性作业车间系统能够满足社会对个性化、小批量、多品种生产方式的需求,柔性制造环境中设备众多,加工路线复杂,故障频次多,但维修活动多采取单机预防性维修策略,即每次只维修达到维修阈值的机器。若对所有机器单独执行维修必将导致设备维修次数增加,打乱生产计划,从而严重影响生产活动。群组预防性维修策略(group preventive maintenance)已经被证明能够有效降低维修次数和维修成本,降低维修对生产活动的影响。Nguyen[

1]将群组预防性维修应用到海上发电系统,验证了群组预维修方式比单机预维修更经济。Do Van[2]采用基于经济相关性的群组预维修策略,在线更新每组需要维修的部件集合,并用一个五部件系统展示了如何实现群组预防性维修策略。Shafiee[3]将基于役龄的群组预维修策略应用到风力发电机组轴承上,证明了群组预防性维修策略的有效性。从近年来的研究成果可以看出,群组预防性维修比单机预防性维修在各个方面都展现出了更好的性能,因此将群组预防性维修策略应用到柔性作业车间系统具有重要的研究与现实意义。加工机器的负载均衡也关系到能否应用群组预防性维修策略,因此,笔者研究考虑最大完工期与机器负载均衡性下的多目标柔性作业车间调度(multi-objective flexible job shop scheduling problem,MO-FJSP)与群组预防性维修结合的问题。

近年来,国内外学者对MO-FJSP与预防性维修的结合问题进行了研究,Wang[

4]研究了多目标柔性作业车间的单机预防性维修问题,设计了一种遗传与差分进化混合的算法求解MO-FJSP问题。Gupta[5]研究了单机预防性维修策略,并且考虑随机故障下的多目标柔性作业车间调度问题。Gong[6]研究了如何将单机预防性维修策略应用到多目标柔性作业车间系统,并设计了有效的启发式算法来求解该问题。目前针对维修与柔性作业车间调度的研究已经取得了不少成果,但大多集中在如何将单机预防性维修与柔性作业车间系统有机地结合,针对多目标柔性作业车间调度和群组预防性维修策略的研究相对较少,并且调度优化的目标选取较少体现对维修任务的优化,多目标求解算法也有继续提高的潜力。笔者围绕将群组预防性维修策略应用到柔性作业车间系统,研究考虑最大完工期和机器负载均衡性的多目标柔性作业车间调度问题,其中负载均衡性从机器总负载最小和最大机器负载最小两个方面体现。笔者采用改进的第三代非支配排序遗传算法(improved non-dominated sorting genetic algorithm III,I-NSGA-III)求解MO-FJSP问题。NSGA-III由Deb[7]于2014年提出,具有较强的全局搜索能力,但局部搜索能力有待提高。因此,笔者将变邻域搜索算子(variable neighborhood search,VNS)嵌入到NSGA-III以提高算法的局部搜索能力。

1 考虑群组预维修策略的多目标柔性作业车间调度问题描述

多目标优化问题的最优解一般不止一个,而是一个解集,叫作帕累托解集。帕累托支配理论认为:1)当且仅当对任意一个i{1,2,...,w},如果fi(x1)fi(x2),并且存在一个j{1,2,...,w}fj(x1)fj(x2),则解x1支配x2。2)x1x2之间互不支配,则x1无差别于x2。在多目标优化问题中,如果有一组解互不支配且不被其他解支配,则该组解就是最优解集,也称帕累托解集。在实际决策过程中,一般根据决策偏好在帕累托解集中随机选择一个解作为最优解。

FJSP(n×m)一般表示有n个工件在m台机器上加工,至少有一个工序可以在超过一台机器上加工,并且工序在不同机器上的加工时间一般不同。工件集合为J={J1,J2,...,Ji,...,Jn};机器集合为M=M1,M2,...,Mk, ...,Mm;工件Jihi道工序;Oij表示第i个工件的第j道工序,j{1,2,...,hi}pijk表示工序Oij在机器Mk上的加工时间。如果工序Oij在机器Mk上加工,则xijk=1;否则xijk=0。最大完工期最小为目标f1,如式(1)所示,其中Ck表示第k台机器的最大完工时间;机器总负载最小为目标f2,如式(2)所示;最大机器负载最小为目标f3,如式(3)所示。

f1=minmax1km(Ck) (1)
f2=mini=1nj=1hik=1m(pijk×xijk) (2)
f3=minmax1kmi=1nj=1hi(pijk×xijk) (3)

设每台机器预防性维修可靠性阈值为R0,柔性系数为r,用以表示维修活动允许的波动范围,维修区间为[R0×(1-r),R0×(1+r)]。在执行预防性维修时,将处于相同维修区间的机器一起维修,以实现群组预防性维修。柔性系数因工况、加工任务和设备类型差异而不同,可根据经验、历史数据或者专家系统等确定。

2 建立群组预维修和MO-FJSP数学模型

随着设备的使用,设备故障率逐渐增加,当达到阈值时,就执行预防性维修活动。杨兆军[

8]证明了设备退化规律符合威布尔分布,因此,笔者假设机器退化服从Weibull(λ,β)分布,其概率密度函数为

f(t;λ,β)=λβtβ-1exp(-λtβ)t>0λ>0β>0 (4)

式中:λ是尺寸参数;β是形状参数;t表示机器累计加工时间。在柔性作业车间中,相同工艺区的机器衰退过程独立同分布,即每台机器服从参数相同的威布尔分布。以故障率P为指标判断设备的衰退状态,设定机器预防性维修阈值为P0,机器故障率计算为

P(t)=0tf(s;λ,β)ds (5)

式中,s为积分变量。

假设同一工艺区有N台独立同分布的机器,到达故障率阈值P0的时间分别为t1,t2,t3,,tN。将N台机器划分到Q个维修区间,根据对应柔性系数,满足若干阈值区间对应不同维修时刻区间[tdown,1,tup,1], [tdown,2,tup,2],,[tdown,Q,tup,Q],维修区间根据具体维修时间计划表制定,每个维修区间的时间间隔相同,在每个区间的机器数量分别为N1,N2,N3,,NQ,且满足式(6)的条件。将同一维修时刻区间的若干机器一起执行维修活动,从而实现群组预防性维修。

N1+N2++NQ=NQN (6)

多目标柔性作业车间调度的数学模型如下:

minf=min{f1,f2,f3} (7)
s.t. sij+xijk×pijkcijiJ1jhikM (8)
cijsi(j+1) (9)
cijCmax (10)
sij+pijksj1k1+L(1-yiji1j1k)i1J1j1hi (11)
cijsi1(j1+1)+L(1-yiji1(j1+1)k) (12)
k=1mxijk=1 (13)
i1=1nj1=1hi1yiji1j1k=xijk (14)
yiji1j1k=1  如果Oijk先于Oi1j1k加工0 其他 (15)

式(7)表示目标函数;式(8)表示同一工序开始时间小于等于其完工时间,sij表示工序Oij的开始时间,cij表示其结束时间;式(9)表示同一台机器上一工序的完工时间小于等于下一道工序开始时间,si(j+1)表示工序Oi(j+1)的开始时间;式(10)表示所有工件完工时间均小于最大完工时间;式(11)式(12)表示同一时刻一台机器只能加工一个工序,L表示一个很大的数;式(13)表示同一时刻一道工序只能被一台机器加工;式(14)表示每一台机器可以存在循环操作;式(15)表示变量取值只能为0或者1,Oijk表示第i个工件上的第j道工序在第k台机器上进行加工。

3 多目标求解算法

3.1 算法总述

采用I-NSGA-III算法求解MO-FJSP问题,算法流程如图1所示。算法步骤如下:1)产生初始染色体种群;2)通过交叉、变异算子产生子代染色体;3)将子代和父代种群混合;4)对混合后的染色体进行快速非支配排序,将种群按照帕累托支配关系排序为{F1, F2,…, Ff}若干层级,f表示种群被分的层数,F1为帕累托最优解集;5)对F1层级染色体执行变邻域操作;6)将变邻域操作后产生的染色体再次与种群混合,然后再进行快速非支配排序;7)对排序后的种群采用基于参考点的选择策略选择出下一代个体;8)判断是否达到终止条件,如果达到则输出最优解集,否则继续进行运算。

图1  I-NSGA-III算法流程图

Fig. 1  The flowchart of the I-NSGA-III algorithm

3.2 初始化与编码解码

种群初始化方法采用张国[

9]提出的GLR(global, local, random)机器选择方法,GLR机器选择方法包括全局选择、局部选择和随机选择,染色体编码和解码策略也采用张国辉提出的策略。图2展示了染色体两段式编码方法,将染色体分为工序段与机器段染色体,解码策略为贪婪式解码策略。

图2  染色体编码

Fig. 2  Chromosome coding method

3.3 交叉与变异算子

交叉算子是遗传算法的主要算子,是体现遗传算法全局搜索能力的算子,交叉策略采用Li[

10]的方法,如图3(a)所示。变异算子是遗传算法跳出局部最优解的算子,变异策略也采用Li[10]的方法,如图3(b)所示。

图3  交叉算子与变异算子

Fig. 3  Crossover and mutation operations

3.4 快速非支配排序算子

快速非支配排序是实现多目标优化的重要算子,将染色体按照帕累托支配关系进行排序,分为{F1, F2, , Ff}若干层级,其中F1层级表示帕累托最优解集。

3.5 改进变邻域搜索算子

NSGA-III算法具有较强的全局搜索能力,但是局部搜索能力欠缺。因此,将变邻域算子嵌入到NSGA-III算法提高算法的局部搜索能力。变邻域算子以关键工序为调整对象,调整关键工序可以获得新的邻域解。笔者提出一种新的扩展关键工序提取方法,并设计了4种邻域结构对扩展关键工序进行移动。现有研究中,关键工序的提取均是基于FJSP析取图模型上的关键路径,关键路径上的工序为关键工序。但是对于规模较大的FJSP问题,可能存在几十甚至上百条关键路径,寻找关键路径非常困难。为降低算法的复杂性,设计了提取扩展关键工序的方法。扩展关键工序定义为:如果一个工序的实际加工时间等于该工序的最晚完工时间减去该工序的最早开工时间,那么这个工序就是扩展关键工序。新的提取方式提取出的扩展关键工序比现有通过关键路径提取的关键工序更多,并且省去了关键路径的寻找,降低了提取关键工序的复杂性。

同一机器上相连接的关键工序组成一个关键块,如果没有与之相连的关键工序,那么这个块就只由一个工序组成。邻域变换可以产生新的解,设计了4种邻域结构变换方式产生新的解,分别为工序同机器调整策略、工序变机器调整策略、关键块调整策略,以及关键工序交换策略。工序同机器调整策略和工序变机器调整策略如图4[

11]所示。关键块策略调整Python版伪代码如图5所示。关键工序交换策略如下:在总关键工序数这个范围内随机产生一个整数,如果这个数是2就交换这2个序号对应的关键工序,如果大于2就在所有的邻域解中随机选择一个。将新产生的邻域染色体再次与染色体种群混合,进行快速非支配排序,选择出下一代种群。

图4  工序同机器调整策略和工序变机器调整策[

11]

Fig. 4  Operation with machine strategy and operation against machine adjustment strategy [

11]

图5  关键块的移动

Fig. 5  The key block movement

3.6 基于参考点的选择算子

选择操作直接关系到能否从每代染色体中选择出优秀的下一代,采用文献[

6]中基于参考点的选择算子(见图6),该选择方式的重点在于产生参考点并进行归一化。

图6  基于参考点的选择算[

6]

Fig. 6  Selection operator based on reference-point[

6]

4 算例分析

4.1 参数设置及实验用例

算法代码均用Python编程实现,处理器为Intel(R) Pentium(R) CPU G4400 @3.30GHz,内存为8.0 GB,操作系统为64位Windows10台式机。使用2个实验来验证算法的有效性,实验1使用Kacem[

13]提出的Kacem01算例 (8个工件8台机器)、Kacem02算例 (10个工件10台机器)和Kacem03算例(15个工件10台机器),实验2使用Brandimarte[12]提出的10组算例。算法参数设置如下:最大迭代次数100,种群个数100,交叉概率0.5,变异概率0.8。

4.2 实验1结果与分析

将所设计的I-NSGA-III算法与文献[

13]中PSO+SA算法、文献[14]中GA+VND算法、文献[15]中PSO+TS算法、文献[16]中NBHA(50)和NBHA(100)算法,以及标准NSGA-III算法进行对比,实验结果如表1所示。

表1  实验1运行结果
Table 1  The results of experiment 1
算例PSO+SAGA+VNDPSO+TSNBHA(50)NBHA(100)NSGA-IIII-NSGA-III
f1f2f3f1f2f3f1f2f3f1f2f3f1f2f3f1f2f3f1f2f3
Kacem01 15 75 12 14 77 12 14 77 12 15 75 12 14 77 12 14 72 13 14 74 12
16 73 13 15 75 12 16 77 11 15 75 12 16 70 13 15 72 12
16 73 13 16 77 11 16 74 12 16 70 13
16 73 13 17 80 11
Kacem02 7 44 5 7 43 5 7 43 6 7 42 6 7 42 6 8 41 7 7 44 5
8 42 5 8 42 5 8 42 6 8 41 7
8 41 7 8 41 7 8 43 5 8 42 6
8 43 5
Kacem03 12 91 11 11 91 11 11 93 11 13 93 11 12 92 12 15 91 14 13 93 13
13 92 12 13 92 11 14 92 12 13 94 12
14 92 11 13 91 12 16 91 13 14 92 13
14 95 11

在Kacem01算例中,I-NSGA-III和NBHA(100)算法求得的最优解的数量为4,而其他算法所求得的最优解的数量均小于4。NBHA(100)算法求得的第一个最优解为fNBHA(100),1={f1=14,f2=77,f3=12},I-NSGA-III算法求得的第一个最优解为f(I-NSGA-III),1={f1=14,f2=74,f3=12},很明显f(I-NSGA-III),1支配fNBHA(100),1。在该算例中,I-NSGA-III算法所求得的最优解均支配NBHA(100)算法所求得的最优解,并且I-NSGA-III算法相较于其他几个算法还能求得更多的最优解集,因此I-NSGA-III算法更优越。

在Kacem02和Kacem03算例中,I-NSGA-III算法求得的最优解的数量均为4,比其他算法所求得的最优解数量多,因此,I-NSGA-III算法在Kacem02和Kacem03算例中均显示了良好的搜索能力。通过这3个经典算例可以看出,I-NSGA-III算法在所有算法中能求得的帕累托最优解最多,并且I-NSGA-III算法求得的最优解集支配其他算法求得的最优解集,因此,I-NSGA-III算法更优。

4.3 实验2结果与分析

将I-NSGA-III算法与标准NSGA-III算法在实验2中用10个算例进行对比,实验结果如表2所示。f1,bestf2,bestf3,best分别表示算法在第1、第2、第3个目标上求得的最优值。

表2  实验2运行结果
Table 2  The results of Experiment 2
算例NSGA-IIII-NSGA-III
最优解数量f1,bestf2,bestf3,best最优解数量f1,bestf2,bestf3,best
MK01 4 42 158 36 8 40 156 36
MK02 4 31 143 27 7 31 144 27
MK03 5 204 861 204 10 205 888 204
MK04 8 61 345 61 15 69 344 60
MK05 6 178 684 175 7 177 679 174
MK06 12 71 381 54 15 77 386 55
MK07 7 150 678 149 11 147 678 145
MK08 3 524 2 530 523 2 523 2 523 523
MK09 7 326 2 364 299 7 320 2 343 299
MK10 7 263 1 994 204 14 254 1 970 206

表2可知,在MK01至MK10这10个算例中,I-NSGA-III算法求得的最优解比NSGA-III多,并且3个目标值均比NSGA-III算法求得的更优。在MK01算例中,I-NSGA-III求得8个最优解,而NSGA-III求得的最优解数量为4,表明I-NSGA-III具有更强搜索能力,能够求出更多的最优解。在MK01算例的最优目标值中,I-NSGA-III的最优目标值为f(I-NSGA-III),best={f1=40,f2=156,f3=36},而NSGA-III的最优目标值为f(NSGA-III),best= {f1=42,f2=158,f3=36},很明显f(I-NSGA-III),best支配f(NSGA-III),best。在MK01算例中,I-NSGA-III算法无论从最优解的数量还是支配关系上,均展示了良好的性能,在其他算例中亦然。

MK10算例的帕累托最优解的空间分布如图7所示,明显可以看出I-NSGA-III算法求出的最优解比NSGA-III算法求出的最优解多,并且I-NSGA-III算法求出的最优解基本分布于坐标轴内侧,而NSGA-III算法求出的最优解基本分布于坐标轴外侧,表明I-NSGA-III算法求出的最优解支配NSGA-III算法求出的最优解。图7可以直观地看出帕累托最优解集的空间分布,算例结果表明I-NSGA-III算法的解空间分布更均匀。

图7  MK10算例的最优解集

Fig. 7  Optimal solutions of MK10

MK07算例中3个目标值最大完工时间、机器总负载和最大机器负载的迭代过程分别如图8~10所示。发现I-NSGA-III算法收敛更快,最大完工时间大约在第70代收敛,机器总负载和最大机器负载均在大约第60代收敛,并且收敛达到的最优目标值均比NSGA-III算法更优。在最大机器负载的迭代过程中NSGA-III算法在100代时依旧没有收敛。实验结果表明I-NSGA-III算法在3个目标值上均能收敛到最优目标值,并具有更快的收敛速度,因此,I-NSGA-III算法具有良好的收敛能力。

图8  MK07算例的最大完工时间

Fig. 8  Maximum completion time of MK07

图9  MK07算例的机器总负载

Fig. 9  Total machine loading of MK07

图10  MK07算例的最大机器负载

Fig. 10  Maximum machine load of MK07

4.4 负载均衡性分析

柔性作业车间中各设备负载均衡是顺利实施群组预防性维修策略的重要保证,负载均衡的调度方案使设备退化一致,群组预维修方式能发挥更好的效果。通过对比同一调度方案下机器的极差系数和标准差系数来判断机器负载均衡性,极差系数是同一个算例中机器最大加工时间减去机器最小加工时间除以机器平均加工时间,标准差系数是同一个算例中每台机器加工时间标准差除以机器平均加工时间。表3为仅优化最大完工期1个目标和同时优化3个目标机器的负载对比,“*”表示相对优秀的结果。

表3  机器加工时间均衡性对比
Table 3  Comparison of machine workload balance
算例极差系数标准差系数
单目标优化多目标优化单目标优化多目标优化
Kacem01 0.76 0.27* 0.25 0.09*
Kacem02 0.65 0.41* 0.20 0.12*
Kacem03 0.39 0.14* 0.11 0.04*
MK01 1.04 0.76* 0.31 0.25*
MK02 0.27 0.25* 0.11 0.07*
MK03 1.25 0.78* 0.35 0.25*
MK04 1.04 0.90* 0.31 0.28*
MK05 0.03 0.02* 0.01 0.00*
MK06 2.48 2.22* 0.83 0.82*
MK07 0.17 0.06* 0.06 0.02*
MK08 2.00 2.00* 0.65 0.65*
MK09 0.29 0.23* 0.08 0.07*
MK10 1.75 1.74* 0.64 0.63*

结果表明多目标优化的极差系数和标准差系数均小于单目标优化的极差系数和标准差系数。因此,考虑最大完工时间和负载均衡性的柔性作业车间调度问题使求解的调度方案负载更均衡,使群组预防性维修策略应用到柔性作业车间系统有更好的效果。

4.5 群组预防性维修与单机预防性维修对比研究

为探究群组预防性维修策略应用于柔性作业车间系统的效果,在MK02算例的最优解集中随机选择一个最优解来阐明如何将群组预防性维修方法应用到柔性作业车间系统,不考虑维修活动时的调度计划(见图11)。假设每台机器的衰退过程服从独立同分布,衰退参数为Weibull(0.05,0.85),故障率阈值设为P0=0.4,假设每次维修费用为100个单位成本。

图11  MK02的初始调度方案

Fig. 11  The initial schedule of MK02

采用单机预防性维修策略和群组预防性维修策略维修机器时的作业调度甘特图分别如图12图13所示,横轴代表加工时间,纵轴代表加工机器,不同颜色代表不同工件,黑色代表维修活动,小括号里面的数字代表加工时间。图12中机器1、机器2、机器4和机器6的维修活动开始时间不同,因此只能单独维修,机器3和机器5的维修开始时间相同,因此可以一起维修。图13表示通过柔性调整方式,将衰退状况在相同区间的机器维修活动开始时间调整到一起,机器1和机器4开始时间相同,机器2、机器3、机器5和机器6开始时间相同,因此,将所有机器分为2个维修群组。2种维修方式结果对比如表4所示。

图12  单机预防性维修

Fig. 12  The single preventive maintenance

图13  群组预防性维修

Fig. 13  The group preventive maintenance

表4  2种维修方式效果对比
Table 4  Comparison between two maintenance methods
维修方式最大完工时间维修费用维修次数
单机预防性维修 33 500 5
群组预防性维修 33 200 2

在最大完工时间相同的情况下,群组预防性维修只有2次维修活动,维修费用为200个单位成本,而单机预防性维修有5次维修活动,维修费用为500个单位成本。群组预防性维修将维修次数降低了150%,维修费用也降低了150%。由此可见,群组预防性维修比单机预防性维修的维修次数更少,维修成本更低。在生产实际中,每次维修都需要抽调维修人员、安排维修工具、前期技术准备和维修人员在车间内的流动,显然群组预防性维修可以共用这些维修资源,群组预防性维修能够极大地降低维修次数与维修费用,并减少维修人员在车间内流动对生产的影响。

4.6 群组预防性维修对半导体制造的启示

很多产品的生产方式都可以抽象为FJSP,比如半导体代工企业的生产方式。芯片生产一般包括8大工艺,如图14所示。芯片设计企业将芯片生产任务交给半导体代工厂,半导体代工厂一般会承接多家芯片设计企业的多个产品订单。由于产品不同,每个产品有自己特定的工艺流程,芯片制造按照工艺布置,相同工艺的设备放在同一工艺区,一般每个芯片在各个不同的工艺区流转几百次,每个工艺区都有数台功能相同的机器。因此,半导体代工企业的生产方式可以抽象为柔性作业车间调度问题,有多个产品订单,每个订单产品有特定的工艺流程,每道工序又需要在相应的工艺区选择加工机器。半导体加工设备昂贵,例如最先进的光刻机的价格高达数亿元,并且每个工艺区设备众多,比如薄膜工艺区机器数量高达数百台,但是目前依旧采用单机预防性维修策略,很容易对生产任务造成较大影响。因此,将群组预维修策略应用到半导体代工企业具有重要现实意义。

图14  半导体加工工艺

Fig. 14  The semiconductor process

半导体代工厂可以抽象为柔性作业车间制造系统,并且半导体代工厂具有设备众多、设备昂贵、车间状况复杂,以及同一工艺设备相同等特点,具备群组预防性维修的执行前提。因为芯片的生产制造主要依赖于设备,对于半导体代工企业来说,将群组预防性维修的方式应用到作业车间,可以极大降低设备维护成本,降低设备维修次数,提高设备的可用性,保证生产任务顺利完成。

5 结 论

提出了群组预防性维修方式应用到柔性作业车间系统,并建立了基于最大完工时间和设备负载均衡性的多目标优化模型,采用I-NSGA-III算法求解多目标柔性作业车间调度问题。对比了该算法在不同算例上的求解性能,展示了群组预防性维修方式的效果,并且还对群组预防性维修方式的工业应用进行了展望,得出以下结论。

1)将I-NSGA-III算法与多个经典算法在多个算例中进行对比研究,实验结果表明,笔者设计的I-NSGA-III算法能求得更多的帕累托最优解,并且解的质量更好,该算法在3个目标值上均有更快的收敛速度且能收敛到更优值。

2)对比研究表明,I-NSGA-III算法求得的最优解能够提高设备之间的负载均衡性,并且证明了在维修活动对生产任务影响相同的情况下,群组预防性维修方式比单机预防性维修的维修次数更少,维修成本更低,并降低了维修人员在车间内的流动。

3)分析说明了半导体代工厂的芯片生产模式可以抽象为柔性作业车间调度问题,并且半导体代工厂的特点具有群组预防性维修执行的条件,因此,未来可以将群组预防性维修策略应用到半导体代工厂的设备维修与维护中。

参考文献

1

Nguyen T A T, Chou S Y. Maintenance strategy selection for improving cost-effectiveness of offshore wind systems[J]. Energy conversion and management, 2018, 157: 86-95. [百度学术] 

2

Do Van P, Barros A, Bérenguer C, et al. Dynamic grouping maintenance with time limited opportunities[J]. Reliability Engineering & System Safety, 2013, 120: 51-59. [百度学术] 

3

Shafiee M, Finkelstein M. An optimal age-based group maintenance policy for multi-unit degrading systems[J]. Reliability Engineering & System Safety, 2015, 134: 230-238. [百度学术] 

4

Wang H, Sheng B Y, Lu Q B, et al. A novel multi-objective optimization algorithm for the integrated scheduling of flexible job shops considering preventive maintenance activities and transportation processes[J]. Soft Computing, 2021, 25(4): 2863-2889. [百度学术] 

5

Gupta S, Jain A. Analysis of integrated preventive maintenance and machine failure in stochastic flexible job shop scheduling with sequence-dependent setup time[J]. Smart Science, 2022, 10(3): 175-197. [百度学术] 

6

Gong G L, Chiong R, Deng Q W, et al. Energy-efficient production scheduling through machine on/off control during preventive maintenance[J]. Engineering Applications of Artificial Intelligence, 2021, 104: 104359. [百度学术] 

7

Deb K, Jain H. An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part I: solving problems with box constraints[J]. IEEE Transactions on Evolutionary Computation, 2014, 18(4): 577-601. [百度学术] 

8

杨兆军, 陈传海, 陈菲, . 数控机床可靠性技术的研究进展[J]. 机械工程学报, 2013, 49(20): 130-139 [百度学术] 

Yang Z J, Chen C H, Chen F, et al. Progress in the research of reliability technology of machine tools[J]. Journal of Mechanical Engineering, 2013, 49(20): 130-139. (in Chinese) [百度学术] 

9

张国辉. 柔性作业车间调度方法研究[D]. 武汉: 华中科技大学, 2009. [百度学术] 

Zhang G H. Research on flexible job shop scheduling method[D]. Wuhan: Huazhong University of Science and Technology, 2009. (in Chinese) [百度学术] 

10

Li X Y, Gao L. An effective hybrid genetic algorithm and tabu search for flexible job shop scheduling problem[J]. International Journal of Production Economics, 2016, 174: 93-110. [百度学术] 

11

吴树景, 游有鹏, 罗福源. 变邻域保优遗传算法求解柔性车间调度问题[J]. 计算机工程与应用, 2020, 56(22): 236-243 [百度学术] 

Wu S J, You Y P, Luo F Y. Genetic-variable neighborhood search algorithm with elite protection strategy for flexible job shop scheduling problem[J]. Computer Engineering and Applications, 2020, 56(22): 236-243. (in Chinese) [百度学术] 

12

Xia W J, Wu Z M. An effective hybrid optimization approach for multi-objective flexible job-shop scheduling problems[J]. Computers & Industrial Engineering, 2005, 48(2): 409-425. [百度学术] 

13

Brandimarte P. Routing and scheduling in a flexible job shop by tabu search[J]. Annals of Operations Research, 1993, 41(3): 157-183. [百度学术] 

14

Gao J, Sun L Y, Gen M. A hybrid genetic and variable neighborhood descent algorithm for flexible job shop scheduling problems[J]. Computers & Operations Research, 2008, 35(9): 2892-2907. [百度学术] 

15

Zhang G H, Shao X Y, Li P G, et al. An effective hybrid particle swarm optimization algorithm for multi-objective flexible job-shop scheduling problem[J]. Computers & Industrial Engineering, 2009, 56(4): 1309-1318. [百度学术] 

16

Fernández Pérez M A, Raupp F M P. A Newton-based heuristic algorithm for multi-objective flexible job-shop scheduling problem[J]. Journal of Intelligent Manufacturing, 2016, 27(2): 409-416. [百度学术]