首页 / 专利库 / 物理 / 淘析器 / 基于遗传算法的半导体车间生产调度方法

基于遗传算法半导体车间生产调度方法

阅读:305发布:2020-10-31

专利汇可以提供基于遗传算法半导体车间生产调度方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于遗传 算法 的 半导体 车间生产调度方法;(1)剖析半导体流 水 线车间调度问题;(2)根据车间的各 工件 工序加工时间表,结合本文编码方式确定每个个体矩阵的大小;(3)初始化在最优值不改进情况下的中间变量;(4)对种群中任意两个个体进行本文上面的交叉操作;(5)新旧种群合并,计算每个个体的适应度值;(6)判断Q′和Q是否相同;(7)对合并种群执行选择操作;(8)判断r或n是否满足终止准则;(9)判断个体是否满足变异操作;(10)另n=n+1,将变异后的种群返回步骤4操作;(11)输出种群的最优个体。本发明解决半导体行业复杂柔性流水生产车间调度问题;避免因为最大 迭代 次数设置过大,进行多次不必要的计算过程,能缩短算法计算时间,提高效率。,下面是基于遗传算法半导体车间生产调度方法专利的具体信息内容。

1.一种基于遗传算法半导体车间生产调度方法,其特征在于:该方法的运行过程如下:
步骤1:剖析半导体流线车间调度问题,获取整个车间不同工件所需要的加工工序和对应工序的加工时间表;运用编码方法、确定目标函数值、适应度函数值和相关参数;
步骤2:根据车间的各工件工序加工时间表,结合本文编码方式确定每个个体矩阵的大小;在n=0时刻,随机生成规模为N的初始种群;
步骤3:初始化在最优值不改进情况下的中间变量,设置计数器r=0,最优个体Q为空;
步骤4:对种群中任意两个个体进行交叉操作,产生规模为N的新种群;
步骤5:新旧种群合并,计算每个个体的适应度值,对最优个体进行标记,并表示为Q′;
步骤6:判断Q′和Q是否相同;若相同,则r=r+1;若不同,则将Q′赋值于Q,并将计数器清零;
步骤7:对合并种群执行选择操作,保留适应度高的N个个体,构成优秀种群;
步骤8:判断r或n是否满足终止准则,若其中任何一个满足,跳转步骤11,若同时不满足,则继续执行以下操作;
步骤9:判断个体是否满足变异操作,若满足,则进行单点或者多点位基因变异操作;若不满足,则保持个体不变;
步骤10:另n=n+1,将变异后的种群返回步骤4操作;
步骤11:输出种群的最优个体,对最优个体矩阵进行解码操作;根据解码结果结合每道工序的时间就可以绘制生产车间对应的调度甘特图和算法收敛曲线,结束整个算法;
算法结束后,就可以获取整个车间所有工件的最优调度方案甘特图。
2.根据权利要求1所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:编码解码的实现如下;
在此引入矩阵编码的概念,并设计是用于生产车间调度问题的矩阵元素编码方式;
对于有n个待加工工件,每个产品均需要一次流经m道工序,且每道工序上存在Mj(j=1,
2,3,..,m)台并行机的柔性流水车间调度问题(Flexible Flow-shop Scheduling Problem,FFSP),构造的n×m维编码矩阵:
式中,初始化种群Xn×m中的元素xij用随机生成的实数表示;xij的取值范围时:
式中,i=1,2,…,n,j=1,2,…,m;
对于初始化种群Xn×m中的元素xij,整数部分表示工件选择的机台号,小数部分表示对应机台上待加工工件的加工顺序;因此,产品i的第j道工序在第Int(xij)号机台上加工;当i≠j时,易存在Int(xij)=Int(xkj)的现象;这说明在工序j上工件i、k选择同一机台加工;对于选择同一机台加工的工件,在第一道工序按照xij的升序一次加工;在非第一道工序,则根据各个工件在上一道工序的完工时间确定加工顺序,基本规则是:本道工序在同一机台上加工的工件,按在上一道工序完工时间的先后顺序一次进行加工;若完工时间相同,则按照xij的升序一次加工;
解码是对编码结果的逆向处理过程,是根据求解问题获得的可行解给出对应的、合理的调度方案。
3.根据权利要求1所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:步骤4中,交叉操作实现如下;
改进算法首先随机生成规模为N的初始种群,在对初始种群中的个体执行基于矩阵行/列的交叉操作;交叉操作的具体步骤如下:
步骤1:个体选择,在个体不可重复选择的前提下,随机选择两个个体;
步骤2:交叉方式选择,随机分配个体交叉方式,该操作有行交叉和列交叉两种交叉方式;
步骤3:交叉位置,选择行交叉,交叉位置可在[1,n-1]范围任意位置,选择列交叉,交叉位置可在[1,m-1]范围任意位置;
步骤4:交叉操作,对两个个体在交叉位置后面的行/列进行互换,组合生成两个新的个体;
步骤5:生成新种群,将个体交叉后生成的新个体存储到新种群中。
4.根据权利要求1所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:步骤7中,选择操作实现如下;
将初始种群与交叉产生的新种群进行合并,生成规模数为2N的新种群;种群合并的目的不仅能增大种群规模,保持种群多样性,还能对父代精英个体进行保留;本文提出的选择操作是对种群中每两个领域个体的适应度值进行比较,适应度低的个体直接被淘汰,适应度高的个体被选择并成为下一次迭代的父代个体;对于2N规模种群依次进行选择操作,每次操作包括了N次数据比较过程;将选择得到的优秀个体存储到下一次迭代的父代种群中,并标注种群的最优个体。
5.根据权利要求1所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:步骤9中,变异操作实现如下;
具体操作步骤如下:
步骤1:对种群每个个体的变异概率进行随机赋值,取值范围[0,1];
步骤2:对于某个个体,若随机生成的变异概率小于变异参数Pm,则对该个体一次执行步骤3,步骤4操作,反之结束该变异过程;
步骤3:随机生成个体变异点的数量及每个变异点的位置i×j;i×j表示矩阵的第i行,第j列;变异个体变异点数量较小,通常为1或2;
步骤4:对个体变异点进行随机赋值,新值是该工序可选择的并行机号范围内任意实数,但不可与变异前的值相同。

说明书全文

基于遗传算法半导体车间生产调度方法

技术领域

[0001] 本发明涉及柔性流车间调度领域,具体来讲是一种基于遗传算法的半导体车间生产调度方法。

背景技术

[0002] 虽然国内关于半导体复杂柔性流水车间生产调度问题的算法的研究成果丰硕,但是这些调度算法只针对单一类型的车间问题,缺少对车间的多重柔性,不确定,实时性,模糊性等问题的综合考虑;并且很多这类算法没有在实际工程中应用,验证方法可行性。加上目前大多数算法解决的是作业型生产车间,流水型车间的应用很少。并且多内针对半导体生产车间调度问题研究不多。

发明内容

[0003] 因此,为了解决上述不足,本发明在此提供一种基于遗传算法的半导体车间生产调度方法;解决半导体行业复杂柔性流水生产车间调度问题。
[0004] 本发明是这样实现的,构造一种基于遗传算法的半导体车间生产调度方法,其特征在于:该方法的运行过程如下:
[0005] 步骤1:剖析半导体流水线车间调度问题,获取整个车间不同工件所需要的加工工序和对应工序的加工时间表;运用编码方法、确定目标函数值、适应度函数值和相关参数;
[0006] 步骤2:根据车间的各工件工序加工时间表,结合本文编码方式确定每个个体矩阵的大小;在n=0时刻,随机生成规模为N的初始种群;
[0007] 步骤3:初始化在最优值不改进情况下的中间变量,设置计数器r=0,最优个体Q为空;
[0008] 步骤4:对种群中任意两个个体进行交叉操作,产生规模为N的新种群;
[0009] 步骤5:新旧种群合并,计算每个个体的适应度值,对最优个体进行标记,并表示为Q′;
[0010] 步骤6:判断Q′和Q是否相同;若相同,则r=r+1;若不同,则将Q′赋值于Q,并将计数器清零;
[0011] 步骤7:对合并种群执行选择操作,保留适应度高的N个个体,构成优秀种群;
[0012] 步骤8:判断r或n是否满足终止准则,若其中任何一个满足,跳转步骤 11,若同时不满足,则继续执行以下操作;
[0013] 步骤9:判断个体是否满足变异操作,若满足,则进行单点或者多点位基因变异操作;若不满足,则保持个体不变;
[0014] 步骤10:另n=n+1,将变异后的种群返回步骤4操作;
[0015] 步骤11:输出种群的最优个体,对最优个体矩阵进行解码操作;根据解码结果结合每道工序的时间就可以绘制生产车间对应的调度甘特图和算法收敛曲线,结束整个算法;
[0016] 算法结束后,就可以获取整个车间所有工件的最优调度方案甘特图。
[0017] 根据本发明所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:编码解码的实现如下;
[0018] 在此引入矩阵编码的概念,并设计是用于生产车间调度问题的矩阵元素编码方式;
[0019] 对于有n个待加工工件,每个产品均需要一次流经m道工序,且每道工序上存在Mj(j=1,2,3,..,m)台并行机的柔性流水车间调度问题(Flexible Flow-shop Scheduling Problem,FFSP),构造的n×m维编码矩阵:
[0020]
[0021] 式中,初始化种群Xn×m中的元素xij用随机生成的实数表示;xij的取值范围时:
[0022]
[0023] 式中,i=1,2,…,n,j=1,2,…,m;
[0024] 对于初始化种群Xn×m中的元素xij,整数部分表示工件选择的机台号,小数部分表示对应机台上待加工工件的加工顺序;因此,产品i的第j道工序在第 Int(xij)号机台上加工;当i≠j时,易存在Int(xij)=Int(xkj)的现象;这说明在工序j上工件i、k选择同一机台加工;对于选择同一机台加工的工件,在第一道工序按照xij的升序一次加工;在非第一道工序,则根据各个工件在上一道工序的完工时间确定加工顺序,基本规则是:本道工序在同一机台上加工的工件,按在上一道工序完工时间的先后顺序一次进行加工;若完工时间相同,则按照xij的升序一次加工;
[0025] 解码是对编码结果的逆向处理过程,是根据求解问题获得的可行解给出对应的、合理的调度方案。
[0026] 根据本发明所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:步骤4中,交叉操作实现如下;
[0027] 改进算法首先随机生成规模为N的初始种群,在对初始种群中的个体执行基于矩阵行/列的交叉操作;交叉操作的具体步骤如下:
[0028] 步骤1:个体选择,在个体不可重复选择的前提下,随机选择两个个体;
[0029] 步骤2:交叉方式选择,随机分配个体交叉方式,该操作有行交叉和列交叉两种交叉方式;
[0030] 步骤3:交叉位置,选择行交叉,交叉位置可在[1,n-1]范围任意位置,选择列交叉,交叉位置可在[1,m-1]范围任意位置;
[0031] 步骤4:交叉操作,对两个个体在交叉位置后面的行/列进行互换,组合生成两个新的个体;
[0032] 步骤5:生成新种群,将个体交叉后生成的新个体存储到新种群中。
[0033] 根据本发明所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:步骤7中,选择操作实现如下;
[0034] 将初始种群与交叉产生的新种群进行合并,生成规模数为2N的新种群;种群合并的目的不仅能增大种群规模,保持种群多样性,还能对父代精英个体进行保留;本文提出的选择操作是对种群中每两个领域个体的适应度值进行比较,适应度低的个体直接被淘汰,适应度高的个体被选择并成为下一次迭代的父代个体;对于2N规模种群依次进行选择操作,每次操作包括了N次数据比较过程;将选择得到的优秀个体存储到下一次迭代的父代种群中,并标注种群的最优个体。
[0035] 根据本发明所述一种基于遗传算法的半导体车间生产调度方法,其特征在于:步骤9中,变异操作实现如下;
[0036] 具体操作步骤如下:
[0037] 步骤1:对种群每个个体的变异概率进行随机赋值,取值范围[0,1];
[0038] 步骤2:对于某个个体,若随机生成的变异概率小于变异参数Pm,则对该个体一次执行步骤3,步骤4操作,反之结束该变异过程;
[0039] 步骤3:随机生成个体变异点的数量及每个变异点的位置i×j。i×j表示矩阵的第i行,第j列;变异个体变异点数量较小,通常为1或2;
[0040] 步骤4:对个体变异点进行随机赋值,新值是该工序可选择的并行机号范围内任意实数,但不可与变异前的值相同。
[0041] 本发明具有如下优点:避免因为最大迭代次数设置过大,进行多次不必要的计算过程,能缩短算法计算时间,提高效率。附图说明
[0042] 图1是本发明具体算法流程图
[0043] 图2是改进的选择操作示意图。

具体实施方式

[0044] 下面将结合附图1-图2对本发明进行详细说明,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045] 本发明通过改进在此提供一种基于遗传算法的半导体车间生产调度方法,算法的运行过程如下:
[0046] 步骤1:剖析半导体流水线车间调度问题,获取整个车间不同工件所需要的加工工序和对应工序的加工时间表。运用上面提出的编码方法、确定目标函数值、适应度函数值和相关参数。
[0047] 步骤2:根据车间的各工件工序加工时间表,结合本文编码方式确定每个个体矩阵的大小。在n=0时刻,随机生成规模为N的初始种群。
[0048] 步骤3:初始化在最优值不改进情况下的中间变量,设置计数器r=0,最优个体Q为空。
[0049] 步骤4:对种群中任意两个个体进行本文上面的交叉操作,产生规模为N的新种群。
[0050] 步骤5:新旧种群合并,计算每个个体的适应度值,对最优个体进行标记,并表示为Q′。
[0051] 步骤6:判断Q′和Q是否相同。若相同,则r=r+1;若不同,则将Q′赋值于Q,并将计数器清零。
[0052] 步骤7:对合并种群执行选择操作,保留适应度高的N个个体,构成优秀种群。
[0053] 步骤8:判断r或n是否满足终止准则,若其中任何一个满足,跳转步骤 11,若同时不满足,则继续执行以下操作。
[0054] 步骤9:判断个体是否满足变异操作,若满足,则进行单点或者多点位基因变异操作;若不满足,则保持个体不变。
[0055] 步骤10:另n=n+1,将变异后的种群返回步骤4操作。
[0056] 步骤11:输出种群的最优个体,对最优个体矩阵进行解码操作。根据解码结果结合每道工序的时间就可以绘制生产车间对应的调度甘特图和算法收敛曲线,结束整个算法;
[0057] 算法结束后,就可以获取整个车间所有工件的最优调度方案甘特图。
[0058] 本发明还具有如下方面的改进;
[0059] 第一,编码解码的改进;
[0060] 由于生产调度问题存在多种约束,这就要求算法求解过程中的所有个体均要满足约束条件,单传统的GA算法经过多次交叉,变异后,种群中部分个体不在是可行解,因此传统GA的编码方式对于生产车间调度问题不适用,在此本文引入矩阵编码的概念,并设计是用于生产车间调度问题的矩阵元素编码方式。
[0061] 对于有n个待加工工件,每个产品均需要一次流经m道工序,且每道工序上存在Mj(j=1,2,3,..,m)台并行机的柔性流水车间调度问题(Flexible Flow-shop Scheduling Problem,FFSP)。构造的n×m维编码矩阵:
[0062]
[0063] 式中,初始化种群Xn×m中的元素xij用随机生成的实数表示。xij的取值范围时:
[0064]
[0065] 式中,i=1,2,…,n,j=1,2,…,m。
[0066] 对于初始化种群Xn×m中的元素xij,整数部分表示工件选择的机台号,小数部分表示对应机台上待加工工件的加工顺序。因此,产品i的第j道工序在第 Int(xij)号机台上加工。当i≠j时,易存在Int(xij)=Int(xkj)的现象。这说明在工序 j上工件i、k选择同一机台加工。对于选择同一机台加工的工件,在第一道工序按照xij的升序一次加工。在非第一道工序,则根据各个工件在上一道工序的完工时间确定加工顺序,基本规则是:本道工序在同一机台上加工的工件,按在上一道工序完工时间的先后顺序一次进行加工;若完工时间相同,则按照xij的升序一次加工。
[0067] 本文不再将编码矩阵展开成一串元素生成对应的染色体,而是将每个编码矩阵看作一个染色体,也是调度问题的一个可行解。采用该方法不仅能减少计算工作量,而且能确保子代个体基因在交叉、变异过程中的完整性。
[0068] 解码是对编码结果的逆向处理过程,是根据求解问题获得的可行解给出对应的、合理的调度方案。
[0069] 第二,交叉操作的改进;
[0070] 根据对应的编码解码改进措施,现在将传统的遗传算法的交叉操作改进如下。改进算法首先随机生成规模为N的初始种群,在对初始种群中的个体执行基于矩阵行/列的交叉操作。交叉操作的具体步骤如下:
[0071] 步骤1:个体选择。在个体不可重复选择的前提下,随机选择两个个体。
[0072] 步骤2:交叉方式选择。随机分配个体交叉方式,该操作有行交叉和列交叉两种交叉方式。
[0073] 步骤3:交叉位置。选择行交叉,交叉位置可在[1,n-1]范围任意位置,选择列交叉,交叉位置可在[1,m-1]范围任意位置。
[0074] 步骤4:交叉操作;对两个个体在交叉位置后面的行/列进行互换,组合生成两个新的个体。
[0075] 步骤5:生成新种群;将个体交叉后生成的新个体存储到新种群中。
[0076] 第三,选择操作的改进;
[0077] 根据传统遗传算法,本文的算法的选择操作,将初始种群与交叉产生的新种群进行合并,生成规模数为2N的新种群。种群合并的目的不仅能增大种群规模,保持种群多样性,还能对父代精英个体进行保留。本文提出的选择操作是对种群中每两个领域个体的适应度值进行比较,适应度低的个体直接被淘汰,适应度高的个体被选择并成为下一次迭代的父代个体。对于2N规模种群依次进行选择操作,每次操作包括了N次数据比较过程。将选择得到的优秀个体存储到下一次迭代的父代种群中,并标注种群的最优个体。改进的选择操作如图2。
[0078] 第四,变异操作的改进;
[0079] 本文提出以一定概率对染色体随机指定某一位或某几位基因进行变异的方法,具体操作步骤如下:
[0080] 步骤1:对种群每个个体的变异概率进行随机赋值,取值范围[0,1]。
[0081] 步骤2:对于某个个体,若随机生成的变异概率小于变异参数Pm,则对该个体一次执行步骤3,步骤4操作,反之结束该变异过程。
[0082] 步骤3:随机生成个体变异点的数量及每个变异点的位置i×j。i×j表示矩阵的第i行,第j列。变异个体变异点数量较小,通常为1或2。
[0083] 步骤4:对个体变异点进行随机赋值,新值是该工序可选择的并行机号范围内任意实数,但不可与变异前的值相同。
[0084] 第五,适应度评价规则;
[0085] 本文柔性流水车间调度问题的目标是最大完工时间最小。虽然在GA算法的适应度函数是非负、最大化问题,但由于生产车间调度问题的目标函数值能直观反映出染色体的优劣,在此直接选用目标函数作为评价适应度高低的标准。也就是说直接把目标函数看做适应度函数。个体的目标函数f,适应度函数fit 的表达式分别为:
[0086]
[0087] fit=f=Cmax
[0088] 对于该方法适应度的评价规则是:个体的目标函数值越大,说明其适应度函数越低;反之,个体的目标函数值越小,说明其适应度越高。
[0089] 第六,算法终止准则;
[0090] 通常车间调度问题是目标函数的最大、最小值问题,所以不适合采用集集区间的方法来判定算法是否收敛。本文提出的改进方法需要设定两个参数:最大迭代次数MF,目标函数值不改进情况下最大迭代次数S。若算法满足以下任何一个条件:
[0091] (1)算法迭代次数大于MF。
[0092] (2)在最大迭代次数范围内,最优个体的目标值在S次连续迭代过程中没有得到任何改进。
[0093] 该方法的有点在于:避免因为最大迭代次数设置过大,进行多次不必要的计算过程,能缩短算法计算时间,提高效率。
[0094] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈