考虑系统时变效应与预防性维护的平行机调度
A parallel-machine scheduling problem with time-changing effect and preventive maintenance
通讯作者:
收稿日期: 2021-03-24
Received: 2021-03-24
作者简介 About authors
张昕莹(1997—),女,硕士生,从事生产调度方向研究.orcid.org/0000-0002-5685-0368.E-mail:
实施预防性维护(PM)能改善晶圆制造厂离子注入工序中设备状态从而改善晶圆卡(lot)加工时间延长的问题,基于此,研究考虑系统时变效应与预防性维护的平行机调度问题. 以最小化最大完工时间为优化目标,建立包括设备可靠性以及工件实际加工时间约束的数学非线性规划模型. 设计求解该模型的学习型遗传算法(LGA),针对问题特性引入最优支配规则改进变异操作,构建预防性维护知识库指导进化后期预防性维护决策,以提升算法质量. 算例实验结果表明,改进的学习型遗传算法能有效应对系统时变效应对生产调度的影响,减少最大完工时间,具有实用价值. 通过灵敏度分析实验研究晶圆卡对设备状态衰退的敏感程度和预防性维护对调度决策的影响,为实际车间调度提供决策支持.
关键词:
A parallel-machine scheduling problem with time-changing effect and preventive maintenance was studied based on the fact that preventive maintenance (PM) could restore machine condition in the ion implantation process in a wafer fab thus reducing the prolongation of the wafer processing time. A mathematical nonlinear programming model including the machine reliability constraints and the actual job processing time constraints was developed with the objective to minimize the makespan. The learnable genetic algorithm (LGA) was designed to solve the problem. According to the characteristics of the problem, dominance properties were embedded into the LGA to improve the mutation operation and the PM knowledge base was constructed to guide the later stage of evolution to improve the search performance. Computational analyses demonstrate that LGA can effectively deal with the impact of time-changing effect on scheduling, and reduce the makespan. Sensitivity analyses provide valuable information about the impact of job’s dependency on machine deterioration and types of PM on scheduling, which provides decision supports for the real workshop.
Keywords:
本文引用格式
张昕莹, 陈璐, 杨雯惠.
ZHANG Xin-ying, CHEN Lu, YANG Wen-hui.
半导体的制造过程包含4个阶段:晶圆处理、晶圆针测、构装和测试. 其中,晶圆处理过程因其复杂性和高成本成为半导体制造过程中最为重要的阶段. 在晶圆处理过程中,离子注入工序的任务是晶圆掺杂,即将杂质引入到晶圆中,改变晶圆的电学性能. 离子注入机中的真空部件、控制单元以及元器件等会随着加工过程而发生老化,造成设备加工性能变化,导致晶圆卡的加工时间延长[1]. 这种系统时变效应造成该道工序的加工效率降低,成为晶圆处理过程中的瓶颈环节. 实施预防性维护能改善设备状态,减少晶圆卡加工时间的延长,但是会带来额外的维护时间[2-3]. 本研究关注离子注入工序的平行机调度问题,同时考虑系统时变效应和预防性维护.
在现有文献中,已有许多学者结合设备状态考虑生产调度问题,并通过引入各种维护手段提升设备性能. Pacheco等[4]在研究单机调度问题时,考虑设备的状态并引入周期性维护来保证设备的正常运行. Najat等[5]在研究平行机调度问题中,利用周期性维护来改善设备状态,以达到最小化延迟工件数量的目的. Xu等[6]在平行机调度问题中考虑概周期维护,并把最小化最大完工时间作为优化目标. Li等[7]则在模型中考虑周期性维护的时长与设备相关的问题. 在生产调度问题中考虑柔性维护的文献也有许多,预防性维护必须在规定的时间窗内完成[8-11]. 但是,上述文献并未明确定义设备的状态. 此外,一些文献明确给定了设备状态的表达式. 其中,有文献以设备役龄定义设备状态[12]. 另外,有文献指出以设备可靠性来描述设备状态相较于以设备役龄来描述设备状态更加符合实际生产. Lu等[13]考虑设备失效模型,认为设备的可靠性服从威布尔分布. Duffuaa等[14]同时将生产调度、维护和质量这3方面结合考虑,以达到最小化总成本的目标,其中设备的可靠性服从指数分布.
现有的大多数文献都假设设备具有相同的衰退效应. 但是,在晶圆制造这种复杂的加工环境中,时变效应更加复杂. 设备状态差异会造成不同设备具有不同的时变效应,此外,在利用同一设备加工不同晶圆卡时,晶圆卡的时变效应也会由于其敏感程度不同而存在显著差异. 因此,考虑设备状态衰退导致晶圆卡加工时间延长的系统时变效应对解决晶圆制造厂的调度问题具有现实意义.
研究考虑系统时变效应与预防性维护的平行机调度问题,建立以最小化最大完工时间为目标的数学规划模型. 设计开发求解大规模问题的学习型遗传算法. 利用算例实验证明该算法的有效性及效率.
1. 系统时变效应的量化定义
采用指数型可靠度函数来描述设备的状态:
式中:
对从离子注入区获得的300个数据样点进行处理,得到晶圆卡的实际加工时间与设备可靠性的变化关系如图1所示. 图中,p为晶圆卡实际加工时间,r为设备可靠性.
图 1
图 1 晶圆卡的实际加工时间与设备可靠性的关系
Fig.1 Relationship between actual processing time of a lot and machine reliability
如图1所示的曲线可以定义为
式中:
2. 模型建立
在离子注入工序中,有m台并行加工的设备组(设备集合
模型假设:1)所有工件在零时刻即可开始加工;2)设备的初始役龄可以在零时刻确定;3)每台设备在同一时刻只能加工一个工件且不允许抢占;4)每台设备加工的第1个工件不需要准备时间;5)在单个工件的加工过程中,设备的可靠性不会发生变化.
决策变量如下:
辅助决策变量如下:
最大完工时间的数学模型如下所示:
所须满足的条件如下:
式中:
目标函数即式(3)为最小化最大完工时间. 式(4)、(5)保证每个工件只能在某台设备上的某个位置被加工一次. 式(6)确保如果某个工件在某台设备的某个位置上加工(除了每台设备的第1个位置),其前一个位置必然有工件被加工. 式(7)描述工件和其相邻前序工件的完工时间的关系. 式(8)、(9)描述工件的开始时间和完工时间的关系,即每台设备加工第1个工件的开始时间为0. 式(10)定义最大完工时间. 式(11)、(12)计算设备的役龄. 式(13)定义设备的可靠性. 式(14)保证设备的可靠性必须高于阈值
由于非线性约束式(13)的存在,利用Lingo18求解模型. 考虑2台设备加工6个工件的调度问题,参数设置如下:
如图2所示为利用Lingo求解得到的最优调度序列,在设备1上依次进行加工工件6、执行PM、加工工件1和加工工件2,在设备2上依次进行加工工件4、加工工件5和加工工件3. 最大完工时间Cmax=1254.77 min. 然而,当设备数量为4,工件数量为8时,Lingo就无法在1 h内求得最优解. 因此,须设计开发学习型遗传算法来解决大规模生产调度问题.
图 2
3. 学习型遗传算法设计
遗传算法为解决复杂大规模生产调度问题提供了一种通用框架,并得到了有效的应用. 然而遗传算法容易出现收敛速度慢或者早熟收敛的问题,这是由于在算法中缺乏明确的导向因子. 考虑到实施PM能改善设备状态从而减弱系统的时变效应,PM策略对调度决策至关重要,提出一种学习型遗传算法(learnable genetic algorithm, LGA),通过学习精英个体中的PM策略,并将学习到的PM知识对PM决策进行引导优化,使算法能快速收敛到质量更高的满意解.
3.1. 学习型遗传算法框架
学习型遗传算法采用遗传算法优化模型和PM知识模型相结合的集成建模思路,构建个体微观进化和PM知识宏观进化的双层进化模型. 挖掘在种群进化过程中与PM决策信息有关的设备可靠性信息,以PM知识的形式存储,并随着算法的演化而不断更新,以指导在进化后期个体PM决策,加快算法收敛. 同时,基于问题特性的分析,引入2种最优支配规则用于变异操作,以确定工件的优先关系,提升解的质量. 学习型遗传算法框架如图3所示. 图中,
图 3
3.2. 最优支配规则
如图4所示,定义2种工件交换操作:设备内交换操作和设备间交换操作. 设备内交换操作IS(
图 4
定义
最优支配规则1 当满足下列条件之一时,进行操作IS(
1)若
2)若
条件(a)确保交换的工件和其后一个位置上的工件的总加工时间减少. 条件(b)确保从交换的工件其后第2个位置上的工件开始,其实际加工时间减少.
最优支配规则2 当满足下列条件时,进行操作ID(
条件(c)确保进行工件交换操作后,设备
上述2个最优支配规则可以用于学习型遗传算法的变异过程中,以提高算法的搜索性能.
3.3. 编码和解码
每条染色体由m×n个基因组成. 染色体的m行代表m台设备,每行中的n个基因代表这台设备上可加工工件的n个位置. 每个基因中的数字代表这个位置上所加工工件的序号. 数字0表示此位置不加工任何工件. 如图5所示为在2台设备上加工6个工件的染色体示例. 在设备1上依次加工6、1、2号工件,在设备2上依次加工4、5、3号工件.
为了保证设备可靠性不低于阈值
图 5
3.4. 种群初始化
80%的初始种群依照如下的启发式规则产生:按工件种类将n个待加工工件进行排序,其中属于同类的工件随机排序;按工件的排序顺序,将
3.5. 评价、选择与交叉
个体
3.6. 基于最优支配规则的变异
将3.2节提出的2种最优支配规则应用于学习型遗传算法的变异步骤中,如算法1所示. 为了不丢失染色体的多样性,对不满足最优支配规则的2个工件,仍以变异概率
算法1. 变异
1. 随机挑选2个工件h和j
2. If (工件h和j在同一台设备上且满足最优支配规则1)
3. 交换工件h和j
4. Elseif (工件h和j在不同设备上且满足最优支配规则2)
5. 交换工件h和j
6. Else
7. If (产生0~1.0的随机数
8. 交换工件h和j
9. Else
10. Return
11. End if
12. End if
3.7. 学习型PM策略
3.7.1. 进化前期PM随机变换策略
考虑到实施PM可以提高设备可靠性,从而降低系统产生的时变效应对生产调度的影响,提出PM变换操作,用于前期的PM优化. 包括在加工序列中随机插入一个PM或者去除一个PM或者对PM进行随机位置移动.
为了提高算法对PM最佳决策的搜索效率,设计PM知识学习过程. 不同于进化前期PM的随机变换,在进化后期由PM知识库指导PM决策,加快算法收敛.
3.7.2. 进化后期PM学习型变换策略
将每代精英个体中的PM序列以及实施PM前的设备可靠性信息存储到PM知识库中,并用统计方式对PM知识模型进行挖掘,利用学习得到的PM进化知识,指导优化进化后期每代个体的PM变换操作. 在种群进化的过程中,不断更新PM知识库.
设备可靠性区间[
由于在进化初始阶段挖掘出的知识可信度不高,学习型优化算法一般在迭代至10%~15%
在进化后期利用PM知识库指导PM决策过程如下. 定义
1)随机挑选一台设备
在步骤3)中,对设备i第k1个位置上实施的PM(
以下将详细说明如何选择PM并进行位置移动. 假设如图6所示为当前PM知识库中储存的信息(取d=10,将设备可靠性区间分为14份).
假设挑选的设备i分别在k1和k2位置实施PM,在实施PM前其设备可靠性分别在区间q和区间13内. 则
当代PM知识库更新过程如下. 1)提取当代种群中前10%的个体,将其PM序列以及其对应的设备可靠性信息存储到PM知识库中;2)对每个个体中的每台设备,根据此台设备上执行PM前的设备可靠性,更新(d+4)份设备可靠性区间中执行PM的次数,直至更新完毕;3)统计设备可靠性区间中的PM的次数,结束.
图 6
4. 算例验证与分析
为了评价学习型遗传算法的性能,进行若干实验. 采用Matlab R2020a对算法进行实现,所有的算例均在配置为Intel(R) Core(TM) i7-9750H(2.60 GHz)处理器、8 GB内存的个人电脑上运行.
4.1. 参数设置
表 1 不同种类工件对应的敏感性因子
Tab.1
工作种类 | | 工作种类 | | |
1 | 1.0 | 6 | 0.5 | |
2 | 0.9 | 7 | 0.2 | |
3 | 0.9 | 8 | 0.1 | |
4 | 0.6 | 9 | 0.1 | |
5 | 0.6 | − | − |
表 2 调度和算法参数设置
Tab.2
参数 | 取值 | 参数 | 取值 | |
| N(20, 0.32) | | 0.58 | |
| U(38, 78) | | 50 | |
| 0.7 | | 0.8 | |
| 0.4 | | 0.1 | |
| 0.00035 | | 400 | |
| 2 | | 0.2 | |
| {0, 1000, 1500, 2000} | | 0.3 | |
T/min | 30 | d | 12 |
4.2. 小规模算例验证
利用Lingo18对小规模问题进行求解. 待加工工件的数量为5~12. 求解时间上限设置为3600 s,如果Lingo不能在3600 s内获得全局最优解,则以当前局部最优解作为Lingo的最大完工时间的最终解. 将学习型遗传算法求得的解与Lingo求得的解进行比较,来评价算法的性能. 对每种规模的问题,随机生成10个算例,并取均值作为最终的目标函数值. 如表3所示为2种方法所获得的平均目标函数值和平均计算时间. 表中,
小规模算例结果表明,当工件数量少于8时,Lingo可以在3600 s内获得全局最优解,而学习型遗传算法可以用更少的计算时间获得完全一致的最优解,学习型遗传算法的有效性得以验证. 随着工件数量的增加,Lingo无法在有限时间内获得全局最优解,学习型遗传算法却能在短时间内获得比Lingo更好的解.
表 3 Lingo与LGA性能比较
Tab.3
|N| | Lingo | LGA | Dev/% | |||
| tCPU/s | | tCPU/s | |||
5 | 78.76 | 25.4 | 78.76 | 1.12 | 0.00 | |
6 | 88.54 | 80.6 | 88.54 | 1.02 | 0.00 | |
7 | 88.55 | 1884.4 | 88.55 | 1.20 | 0.00 | |
8 | 96.54 | 3600.0 | 94.62 | 1.27 | 1.95 | |
9 | 116.62 | 3600.0 | 112.83 | 1.27 | 3.25 | |
10 | 126.85 | 3600.0 | 120.10 | 1.30 | 5.33 | |
11 | 128.00 | 3600.0 | 117.38 | 1.27 | 8.32 | |
12 | 153.87 | 3600.0 | 136.60 | 1.21 | 11.21 |
4.3. 中、大规模算例验证
为了验证学习型遗传算法在求解中大型规模问题中的性能,对以下不同算法进行比较:1)学习型遗传算法(learnable genetic algorithm,LGA);2)标准遗传算法(standard genetic algorithm,SGA);3)改进的人工蜂群算法(artificial bee colony with division,DABC). 其中,SGA为仅仅不包含学习过程的LGA,其参数设置与LGA相同. DABC算法是Lei等[10]提出的用于解决考虑预防性维护的并行机调度问题的算法. Lei等[10]的研究表明,DABC算法的性能优于遗传算法(genetic algorithm,GA)和混合粒子群算法与遗传算法(hybrid particle swarm optimization and genetic algorithm,HPSOGA). DABC算法中初始种群生成按3.4节中的方式生成,参数设置与文献[10]中相同,迭代次数设为400.
表 4 3种算法获得的最优解比较
Tab.4
|N| | LGA | SGA | DABC | |||||
Cmax/min | tCPU/s | Cmax/min | tCPU/s | Cmax/min | tCPU/s | |||
50 | 373.59 | 1.70 | 381.14 | 1.44 | 385.01 | 1.49 | ||
100 | 648.25 | 2.25 | 658.17 | 1.97 | 671.10 | 2.14 | ||
150 | 909.69 | 2.83 | 923.31 | 2.46 | 937.58 | 2.76 | ||
200 | 1171.71 | 3.64 | 1192.94 | 3.03 | 1212.75 | 3.38 | ||
250 | 1429.64 | 4.36 | 1454.86 | 3.65 | 1493.26 | 4.15 | ||
300 | 1696.91 | 5.44 | 1743.19 | 4.80 | 1789.49 | 5.38 |
图 7
中、大规模算例结果表明,在3种算法中,学习型遗传算法性能最好. 在加工300个工件时,LGA比SGA目标函数值降低了46.28,比DABC目标函数值降低了92.58. 相较于SGA,拥有PM学习机制的LGA所获得的目标函数值降低了1.48%~2.66%. 此外,LGA的收敛速度快于其他2种算法. 这说明学习型遗传算法能有效引导PM决策朝着PM最佳插入位置方向进化,使算法能快速收敛于质量更高的满意解.
4.4. 灵敏度分析实验
4.4.1. 工件敏感性因子对调度决策的影响
待加工工件集合根据具有各种敏感性因子的工件的数量占比被分为3类:高敏感性工件集合、中敏感性工件集合和低敏感性工件集合,如表5所示. 其中,
表 5 待加工工件集合特性
Tab.5
待加工 工件集合 | | ||
| | | |
高敏感性 | 80 | 10 | 10 |
中敏感性 | 10 | 80 | 10 |
低敏感性 | 10 | 10 | 80 |
每种规模实验取10组不同算例,并取均值作为实验结果. 4台设备的初始役龄分别为0、1000、1500、2000 min. 如图8所示为不同特性的待加工工件集合所需的PM次数以及得到的最大完工时间. 图中,
图 8
图 8 待加工工件集合特性对调度决策的影响
Fig.8 Impact of characteristic of job sets on scheduling
4.4.2. PM类型对调度决策的影响
在之前的分析中,只考虑了能在一定程度上降低设备役龄的不完全PM. 但是,在实际生产中可以实施不同类型的PM(包括完全PM),它们具有不同的维护时长和维护效果. 依据离子注入区的实际维护情况,考虑短期PM(T=30 min,
每种规模实验取10组不同算例,并取均值作为实验结果. 以考虑短期PM获得的最大完工时间(用
由图9可以看出,1)对于50个工件的加工实例,随着维护时长的增长和维护效果的增强,所需的维护次数减少(只有“新设备组”所需的插入PM的次数为0). 此外,最大完工时间的偏差急剧增大. 这是因为,PM维护时长的增加对完工时间的影响大于维护效果增强所导致的后续工件加工时间的缩短. 而且,这种现象在实施长期PM时更加明显,长期PM将大幅增加完工时间. 并且,随着设备的老化,这种趋势更加明显. 2)对于300个工件的加工实例,PM次数的变化规律大致相同. 但是,最大完工时间的偏差规律不同. 若在新设备组上进行加工,则变化规律一致,选择短期PM更加合适. 若在混合设备组上进行加工,选择中期PM获得的效果最好. 若在老化设备组上进行加工,中期或者长期PM都优于短期PM. 进行长期PM所获得的最大完工时间比短期PM降低了1.08%.
图 9
不同类型的PM适用于不同加工场景. 对于小规模的问题,短期PM是最好的选择. 完全PM更适用于老旧设备的大型加工问题.
5. 结 语
研究考虑系统时变效应和预防性维护的平行机调度问题. 建立最小化最大完工时间的数学规划模型,并设计求解该模型的学习型遗传算法,为解决实际车间调度问题提供了新思路.
本研究所提出的PM学习型机制不仅适用于遗传算法,也可以拓展到其他算法之中. 实验结果表明,所提出的算法对所研究的问题有效且求解质量较高. 此外,灵敏度分析实验表明,高敏感性的工件集合对设备状态的要求更高,PM的插入虽然会占据设备的加工时间,但是能在一定程度上改善设备状态,使得占据的加工时间得到一定补偿. 不同类型的PM适用于不同的加工场景. 对于小规模问题,短期PM是最好的选择. 长期PM更适用于老旧设备的大型加工问题. 这些结论为基于设备可靠性的实际车间调度提供了决策支持.
在后续的研究中,将考虑加工工件的质量,实现调度和质量的联合优化.
参考文献
浅谈离子注入机的维护
[J].DOI:10.3969/j.issn.1001-8972.2013.18.082 [本文引用: 1]
Maintenance of ion implanter
[J].DOI:10.3969/j.issn.1001-8972.2013.18.082 [本文引用: 1]
考虑质量损失的退化系统维护建模
[J].
Maintenance modeling for deteriorating system considering quality loss
[J].
离子注入技术与设备常见故障分析
[J].DOI:10.3969/j.issn.1004-4507.2015.05.006 [本文引用: 1]
Ion implantation technology and equipment of common fault analysis
[J].DOI:10.3969/j.issn.1004-4507.2015.05.006 [本文引用: 1]
Variable neighborhood search with memory for a single-machine scheduling problem with periodic maintenance and sequence-dependent set-up times
[J].DOI:10.1016/j.knosys.2018.01.018 [本文引用: 1]
Minimizing the number of tardy jobs on identical parallel machines subject to periodic maintenance
[J].DOI:10.1016/j.promfg.2020.01.147 [本文引用: 1]
Parallel machine scheduling with almost periodic maintenance and non-preemptive jobs to minimize makespan
[J].DOI:10.1016/j.cor.2006.08.015 [本文引用: 1]
Parallel-machine scheduling with machine-dependent maintenance periodic recycles
[J].DOI:10.1016/j.ijpe.2017.01.014 [本文引用: 1]
Robust single machine scheduling with a flexible maintenance activity
[J].DOI:10.1016/j.cor.2019.03.001 [本文引用: 1]
Parallel machine scheduling with maintenance activities
[J].
An artificial bee colony with division for distributed unrelated parallel machine scheduling with preventive maintenance
[J].DOI:10.1016/j.cie.2020.106320 [本文引用: 3]
不确定环境下复杂产品维护、维修和大修服务资源调度优化
[J].
Maintenance, repair and overhaul/operations service resource scheduling optimization for complex products in uncertain enviroment
[J].
Single-machine-based joint optimization of predictive maintenance planning and production scheduling
[J].DOI:10.1016/j.rcim.2018.09.007 [本文引用: 1]
Integrated production and preventive maintenance scheduling for a single machine with failure uncertainty
[J].DOI:10.1016/j.cie.2014.12.017 [本文引用: 1]
An integrated model of production scheduling, maintenance and quality for a single machine
[J].DOI:10.1016/j.cie.2019.106239 [本文引用: 1]
Single-machine due-window assignment and scheduling with job-dependent aging effects and deteriorating maintenance
[J].DOI:10.1016/j.cor.2009.11.007 [本文引用: 1]
Two-agent scheduling problems with the general position-dependent processing time
[J].
Parallel machine scheduling to minimize the makespan with sequence dependent deteriorating effects
[J].DOI:10.1016/j.cor.2013.02.018 [本文引用: 1]
A branch-and-price algorithm for scheduling of deteriorating jobs and flexible periodic maintenance on a single machine
[J].DOI:10.1016/j.ejor.2018.05.050 [本文引用: 1]
A further study on two-agent parallel-batch scheduling with release dates and deteriorating jobs to minimize the makespan
[J].DOI:10.1016/j.ejor.2018.07.040
Competitive two-agent scheduling with deteriorating jobs on a single parallel-batching machine
[J].DOI:10.1016/j.ejor.2017.05.019
A hybrid ABC-TS algorithm for the unrelated parallel-batching machines scheduling problem with deteriorating jobs and maintenance activity
[J].DOI:10.1016/j.asoc.2018.02.018 [本文引用: 1]
Single machine scheduling with past-sequence-dependent setup times and deteriorating jobs
[J].DOI:10.1016/j.cie.2010.07.015 [本文引用: 1]
Machine scheduling problems with a position-dependent deterioration
[J].
/
〈 |
|
〉 |
