首页 / 专利库 / 环境工程 / 环境工程 / 废物处理 / 热处理 / 一种车间调度方法、装置及设备

一种车间调度方法、装置及设备

阅读:127发布:2020-05-08

专利汇可以提供一种车间调度方法、装置及设备专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种车间调度方法、装置及设备,所述车间调度方法包括:根据 工件 到达 热处理 环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;对所述第一种群内的种群个体进行交叉操作和变异操作,生成第二种群;基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;获取热处理设备的 瓶颈 程度;根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;根据所述适应度确定用于车间调度的调度解。本发明的 实施例 ,综合考虑柔性作业车间环节约束和热处理环节约束,合理地挑选、组合每次进入热处理炉的工件,使最小化工件的最大完工时间,最大化热处理炉的利用率。,下面是一种车间调度方法、装置及设备专利的具体信息内容。

1.一种车间调度方法,其特征在于,包括:
根据工件到达热处理环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;
对所述第一种群内的种群个体进行交叉操作和变异操作,生成第二种群;
基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;
获取热处理设备的瓶颈程度;
根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;
根据所述适应度确定用于车间调度的调度解。
2.根据权利要求1所述的车间调度方法,其特征在于,在所述根据工件到达热处理环节的顺序生成第一种群之前,所述方法还包括:
基于工件的编码初始化所有种群,获得所有工件到达热处理环节的顺序;
初始化禁忌表,所述禁忌表包括交叉禁忌表和变异算子禁忌表,每一个种群个体对应一个所述交叉禁忌表以及一个变异算子禁忌表。
3.根据权利要求1所述的车间调度方法,其特征在于,所述对所述第一种群内的种群个体进行交叉操作,包括:
选取所述第一种群内的种群个体作为交叉操作的第一父代染色体;
获取所述第一父代染色体对应的交叉禁忌表,所述交叉禁忌表包括至少一个禁忌项;
根据所述交叉禁忌表包含的禁忌项数量确定参考染色体;
生成所述交叉操作的位置固定项和顺序固定项;
根据所述位置固定项和顺序固定项,对所述第一父代染色体进行交叉操作,生成第一子代染色体;
判断所述位置固定项和所述顺序固定项中,是否存在至少一项与所述参考染色体的交叉禁忌表中的禁忌项相同;
在所述位置固定项和所述顺序固定项中存在至少一项与所述禁忌项相同时,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值;
在所述第一子代染色体的适应度值均大于所述第一父代染色体的适应度值中的最优值时,结束交叉操作;否则,继续执行所述生成所述交叉操作的位置固定项和顺序固定项的步骤;
在所述位置固定项和所述顺序固定项中不存在与所述禁忌项相同的基因时,分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度;
在所述相似度大于第一预设值的情况下,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值,在所述相似度小于或等于第一预设值的情况下,结束交叉操作;
根据所述第一父代染色体以及所述第一子代染色体,生成第一子群体。
4.根据权利要求3所述的车间调度方法,其特征在于,所述分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度,包括:
根据公式: 分别计算所述位置固定项和所述顺序固定项,
与所述参考染色体的交叉禁忌表的相似度;
其中,Ds表示相似度,CSi表示所述位置固定项与所述交叉禁忌表中的第i项中相同基因的数量;CPi表示所述顺序固定项与所述交叉禁忌表中的第i项中相同基因的数量;CTi表示所述交叉禁忌表中的第i项中基因的数量。
5.根据权利要求3所述的车间调度方法,其特征在于,对所述第一种群内的种群个体进行变异操作,包括:
选取所述第一子群体内的种群个体作为变异操作的第二父代染色体;
获取所述第二父代染色体的变异算子禁忌表,所述变异算子禁忌表包括至少一个禁忌项;
生成所述变异操作的基因对;
根据所述基因对对所述第二父代染色体进行变异操作,生成第二子代染色体;
判断所述基因对中是否存在至少一项与所述变异算子禁忌表中的禁忌项相同;
在所述基因对中存在至少一项与所述禁忌项相同时,继续执行所述生成所述变异操作的基因对的步骤;
在所述基因对中不存在与所述禁忌项相同的基因时,判断所述第二子代染色体的适应度值是否大于所述第二父代染色体的适应度值;
在所述第二子代染色体的适应度值大于所述第二父代染色体的适应度值时,结束变异操作,否则,继续执行所述生成所述变异操作的基因对的步骤;
根据所述第二父代染色体以及所述第二子代染色体,生成所述第二种群。
6.根据权利要求1所述的车间调度方法,其特征在于,所述基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序,包括:
初始化热处理炉的剩余容积C′=C,其中C′表示所述剩余容积,C为所述剩余容积的初始值;
获取所述第二种群中的染色体对应的工件信息,所述工件信息包括:所述第二种群中的染色体的第一个基因对应的工件、单件体积V、工件数量N、未完成组批的工件数量N′;
判断所述未完成组批的工件的体积与所述剩余容积的大小,在N′×V≤C′的情况下,将所述剩余容积更新为:C"=C′-N′×V,所述工件组批完成;
根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,并删除所述染色体中的第一个基因;
在所述C"为零的情况下,将所述剩余容积更新为所述初始值C;
在所述C"不为零的情况下,若所述染色体中不存在与所述第一个基因对应的工件组批的目标工件,则将所述剩余容积更新为所述初始值C,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤;
若存在所述目标工件,将所述目标工件中的第一个工件的单件体积记为V,工件数量为N,未进行组批的工件数量为N′,继续执行所述判断所述未完成组批的工件的体积与所述剩余容积的大小的步骤;
在所述染色体中的基因数量为零的情况下,结束编码。
7.根据权利要求6所述的车间调度方法,其特征在于,所述基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序,还包括:
在N′×V>C′的情况下,将C′/V个工件完成组批,并将所述剩余容积更新为所述初始值C,将所述未进行组批的工件数量更新为:N"=N′-C′/V;
根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤,并在所述染色体中的基因数量为零的情况下,结束编码。
8.根据权利要求1所述的车间调度方法,其特征在于,所述获取热处理设备的瓶颈程度,包括:
将所有未安排工序分为热处理前工序和热处理后工序,生成热处理前工序集合和热处理后工序集合;
根据所述热处理前工序集合获取第一目标工序集合,所述第一目标工序集合为所述热处理前工序集合中后一道工序已安排的工序的集合;
根据公式: 计
算所述第一目标工序集合中所有工序的可选设备的第一瓶颈程度;
其中, 表示第一瓶颈程度,Sij表示Oij的非热处理工序的加工开始时间;Oij表示Ji的第j道非热处理工序,j=1,2,…Gi,Gi表示Ji的工序数量;Ji表示工件,i=1,2,…n,n表示工件的数量;Vijp为常量,若Oij在设备Mp上加工则为1,否则为0;Mp表示设备p,p=1,2,…m,m表示设备的数量;Tij表示Oij的非热处理工序的理论单件加工工时;Xijp为常量,若Oij在设备Mp上加工则为1,否则为0;
根据所有可选设备的第一瓶颈程度,为所述第一目标工序集合中所有工序选择设备;
在所述热处理前工序集合中的所有工序完成设备安排的情况下,进行所述热处理后工序的设备安排。
9.根据权利要求8所述的车间调度方法,其特征在于,所述进行所述热处理后工序的设备安排,包括:
根据所述热处理后工序集合获取第二目标工序集合,所述第二目标工序集合为所述热处理后工序集合中前一道工序已安排的工序的集合;
根据公式:
计算所述第二目标工序集合中所有工序的可选设备的第二瓶颈程度,其中, 表示第二瓶颈程度,Eij表示Oij的非热处理工序的加工结束时间;
根据所有可选设备的第二瓶颈程度,为所述第二目标工序集合中所有工序选择设备;
在所述热处理后工序集合中的所有工序完成设备安排的情况下,解码结束。
10.根据权利要求1所述的车间调度方法,其特征在于,根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度,包括:
根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定工件的最大加工时间和热处理设备利用率;
根据公式:F=Cmax/ηm,计算所述适应度;
其中,F表示适应度,Cmax表示工件的最大加工时间,ηm表示热处理设备利用率。
11.一种车间调度装置,其特征在于,包括:
第一生成模,用于根据工件到达热处理环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;
第一处理模块,用于对所述第一种群内的种群个体进行交叉操作和变异操作,得到第二种群;
第一确定模块,用于基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;
第一获取模块,用于获取热处理设备的瓶颈程度;
第二确定模块,用于根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;
第三确定模块,用于根据所述适应度确定用于车间调度的调度解。
12.一种车间调度设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求
1~10中任一项所述的车间调度方法的步骤。

说明书全文

一种车间调度方法、装置及设备

技术领域

[0001] 本发明涉及制造技术领域,尤其涉及一种车间调度方法、装置及设备。

背景技术

[0002] 柔性作业车间调度问题(Flexible Job-shop Scheduling Problem,FJSP)一直被认为是最接近生产实际的调度问题。该问题主要解决n个工件在m台加工设备上的排产。然而,根据实际情况,对于机械类零件而言,工件的生产过程不仅包括需要价格设备的金属材料去除工序(机加工序),还常常存在需要热处理炉的热处理工序。对于这种具有热处理环节的柔性作业车间调度问题,传统的作业计划排产只考虑机加工序,而将热处理工序作为外协,模拟成工件在两道机加工序之间的纯等待时间。这种处理方式不仅无法给出精细的热处理计划,更让工件在设备上的安排计划因为无法估计热处理工序的准确时间而变得不准确,从而使得作业计划丧失对实际生产的指导。

发明内容

[0003] 为了解决上述技术问题,本发明提供了一种车间调度方法、装置及设备,解决了现有技术中工件在设备上的安排计划不准确的问题。
[0004] 依据本发明的一个方面,提供了一种车间调度方法,包括:
[0005] 根据工件到达热处理环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;
[0006] 对所述第一种群内的种群个体进行交叉操作和变异操作,生成第二种群;
[0007] 基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;
[0008] 获取热处理设备的瓶颈程度;
[0009] 根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;
[0010] 根据所述适应度确定用于车间调度的调度解。
[0011] 可选地,在所述根据工件到达热处理环节的顺序生成第一种群之前,所述方法还包括:
[0012] 基于工件的编码初始化所有种群,获得所有工件到达热处理环节的顺序;
[0013] 初始化禁忌表,所述禁忌表包括交叉禁忌表和变异算子禁忌表,每一个种群个体对应一个所述交叉禁忌表以及一个变异算子禁忌表。
[0014] 可选地,所述对所述第一种群内的种群个体进行交叉操作,包括:
[0015] 选取所述第一种群内的种群个体作为交叉操作的第一父代染色体;
[0016] 获取所述第一父代染色体对应的交叉禁忌表,所述交叉禁忌表包括至少一个禁忌项;
[0017] 根据所述交叉禁忌表包含的禁忌项数量确定参考染色体;
[0018] 生成所述交叉操作的位置固定项和顺序固定项;
[0019] 根据所述位置固定项和顺序固定项,对所述第一父代染色体进行交叉操作,生成第一子代染色体;
[0020] 判断所述位置固定项和所述顺序固定项中,是否存在至少一项与所述参考染色体的交叉禁忌表中的禁忌项相同;
[0021] 在所述位置固定项和所述顺序固定项中存在至少一项与所述禁忌项相同时,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值;
[0022] 在所述第一子代染色体的适应度值均大于所述第一父代染色体的适应度值中的最优值时,结束交叉操作;否则,继续执行所述生成所述交叉操作的位置固定项和顺序固定项的步骤;
[0023] 在所述位置固定项和所述顺序固定项中不存在与所述禁忌项相同的基因时,分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度;
[0024] 在所述相似度大于第一预设值的情况下,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值,在所述相似度小于或等于第一预设值的情况下,结束交叉操作;
[0025] 根据所述第一父代染色体以及所述第一子代染色体,生成第一子群体。
[0026] 可选地,所述分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度,包括:
[0027] 根据公式: 分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度;
[0028] 其中,Ds表示相似度,CSi表示所述位置固定项与所述交叉禁忌表中的第i项中相同基因的数量;CPi表示所述顺序固定项与所述交叉禁忌表中的第i项中相同基因的数量;CTi表示所述交叉禁忌表中的第i项中基因的数量。
[0029] 可选地,对所述第一种群内的种群个体进行变异操作,包括:
[0030] 选取所述第一子群体内的种群个体作为变异操作的第二父代染色体;
[0031] 获取所述第二父代染色体的变异算子禁忌表,所述变异算子禁忌表包括至少一个禁忌项;
[0032] 生成所述变异操作的基因对;
[0033] 根据所述基因对对所述第二父代染色体进行变异操作,生成第二子代染色体;
[0034] 判断所述基因对中是否存在至少一项与所述变异算子禁忌表中的禁忌项相同;
[0035] 在所述基因对中存在至少一项与所述禁忌项相同时,继续执行所述生成所述变异操作的基因对的步骤;
[0036] 在所述基因对中不存在与所述禁忌项相同的基因时,判断所述第二子代染色体的适应度值是否大于所述第二父代染色体的适应度值;
[0037] 在所述第二子代染色体的适应度值大于所述第二父代染色体的适应度值时,结束变异操作,否则,继续执行所述生成所述变异操作的基因对的步骤;
[0038] 根据所述第二父代染色体以及所述第二子代染色体,生成所述第二种群。
[0039] 可选地,所述基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序,包括:
[0040] 初始化热处理炉的剩余容积C′=C,其中C′表示所述剩余容积,C为所述剩余容积的初始值;
[0041] 获取所述第二种群中的染色体对应的工件信息,所述工件信息包括:所述第二种群中的染色体的第一个基因对应的工件、单件体积V、工件数量N、未完成组批的工件数量N′;
[0042] 判断所述未完成组批的工件的体积与所述剩余容积的大小,在N′×V≤C′的情况下,将所述剩余容积更新为:C"=C′-N′×V,所述工件组批完成;
[0043] 根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,并删除所述染色体中的第一个基因;
[0044] 在所述C"为零的情况下,将所述剩余容积更新为所述初始值C;
[0045] 在所述C"不为零的情况下,若所述染色体中不存在与所述第一个基因对应的工件组批的目标工件,则将所述剩余容积更新为所述初始值C,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤;
[0046] 若存在所述目标工件,将所述目标工件中的第一个工件的单件体积记为V,工件数量为N,未进行组批的工件数量为N′,继续执行所述判断所述未完成组批的工件的体积与所述剩余容积的大小的步骤;
[0047] 在所述染色体中的基因数量为零的情况下,结束编码。
[0048] 可选地,所述基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序,还包括:
[0049] 在N′×V>C′的情况下,将C′/V个工件完成组批,并将所述剩余容积更新为所述初始值C,将所述未进行组批的工件数量更新为:N"=N′-C′/V;
[0050] 根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤,并在所述染色体中的基因数量为零的情况下,结束编码。
[0051] 可选地,所述获取热处理设备的瓶颈程度,包括:
[0052] 将所有未安排工序分为热处理前工序和热处理后工序,生成热处理前工序集合和热处理后工序集合;
[0053] 根据所述热处理前工序集合获取第一目标工序集合,所述第一目标工序集合为所述热处理前工序集合中后一道工序已安排的工序的集合;
[0054] 根据公式:计算所述第一目标工序集合中所有工序的可选设备的第一瓶颈程度;
[0055] 其中, 表示第一瓶颈程度,Sij表示Oij的非热处理工序的加工开始时间;Oij表示Ji的第j道非热处理工序,j=1,2,…Gi,Gi表示Ji的工序数量;Ji表示工件,i=1,2,…n,n表示工件的数量;Vijp为常量,若Oij在设备Mp上加工则为1,否则为0;Mp表示设备p,p=1,2,…m,m表示设备的数量;Tij表示Oij的非热处理工序的理论单件加工工时;Xijp为常量,若Oij在设备Mp上加工则为1,否则为0;
[0056] 根据所有可选设备的第一瓶颈程度,为所述第一目标工序集合中所有工序选择设备;
[0057] 在所述热处理前工序集合中的所有工序完成设备安排的情况下,进行所述热处理后工序的设备安排。
[0058] 可选地,所述进行所述热处理后工序的设备安排,包括:
[0059] 根据所述热处理后工序集合获取第二目标工序集合,所述第二目标工序集合为所述热处理后工序集合中前一道工序已安排的工序的集合;
[0060] 根据公式:计算所述第二目标工序集合中所有工序的可选设备的第二瓶颈程度,其中, 表示第二瓶颈程度,Eij表示Oij的非热处理工序的加工结束时间;
[0061] 根据所有可选设备的第二瓶颈程度,为所述第二目标工序集合中所有工序选择设备;
[0062] 在所述热处理后工序集合中的所有工序完成设备安排的情况下,解码结束。
[0063] 可选地,根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度,包括:
[0064] 根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定工件的最大加工时间和热处理设备利用率;
[0065] 根据公式:F=Cmax/ηm,计算所述适应度;
[0066] 其中,F表示适应度,Cmax表示工件的最大加工时间,ηm表示热处理设备利用率。
[0067] 依据本发明的另一个方面,提供了一种车间调度装置,包括:
[0068] 第一生成模,用于根据工件到达热处理环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;
[0069] 第一处理模块,用于对所述第一种群内的种群个体进行交叉操作和变异操作,得到第二种群;
[0070] 第一确定模块,用于基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;
[0071] 第一获取模块,用于获取热处理设备的瓶颈程度;
[0072] 第二确定模块,用于根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;
[0073] 第三确定模块,用于根据所述适应度确定用于车间调度的调度解。
[0074] 依据本发明的再一个方面,提供了一种车间调度设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的车间调度方法的步骤。
[0075] 本发明的实施例,针对具有热处理环节的柔性作业车间调度问题,综合考虑柔性作业车间环节约束和热处理环节约束,以最小化最大加工时间和最大化热处理炉利用率为目标,通过合理地安排工件的加工顺序以及加工设备选择,合理地挑选、组合每次进入热处理炉的工件,使最小化工件的最大完工时间,最大化热处理炉的利用率,从而为多品种、小批量下柔性作业车间的调度人员提供调度方案参考。附图说明
[0076] 图1表示本发明实施例的车间调度方法的流程示意图之一;
[0077] 图2表示本发明实施例的交叉操作示意图;
[0078] 图3a-图3b表示本发明实施例的无效交叉现象示意图;
[0079] 图4表示本发明实施例的变异操作示意图;
[0080] 图5表示本发明实施例的车间调度方法的流程示意图之二;
[0081] 图6表示本发明实施例的车间调度装置的模块结构示意图。

具体实施方式

[0082] 下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
[0083] 如图1所示,本发明的实施例提供了一种车间调度方法,包括:
[0084] 步骤11、根据工件到达热处理环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;
[0085] 与普通机加设备不同的是,热处理炉属于批处理设备,材料、工艺类似的工件可同批进入热处理炉。当工件到达热处理工序时,若热处理炉处于非空闲状态,则该工件需要暂存于热处理炉前的缓存区等待。为最小化工件的最大加工时间,应最小化工件在缓存区的等待时间。
[0086] 该实施例中,为了更加简单直观的表示每一个调度解,采用基于工件的编码方式,该编码方式表示的是所有工件到达热处理环节的顺序。基于工件的编码初始化种群,获取所有工件到达热处理环节的顺序,所述顺序可以有多种,每一个工件作为一个基因,则每一种顺序形成一条包括至少一个基因的种群个体,即染色体,多个种群个体形成所述第一种群。
[0087] 步骤12、对所述第一种群内的种群个体进行交叉操作和变异操作,生成第二种群;
[0088] 参与所述交叉操作的种群个体可以随机选择,对于交叉操作后生成的新的种群进行变异操作,能够增加种群的多样性,提高算法的全局搜索性能。所述第二种群为包括所述第一种群以及交叉变异后得到的染色体的新的种群。
[0089] 步骤13、基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;
[0090] 该实施例中,为最小化工件的最大加工时间,应最小化工件在缓存区的等待时间。若热护理炉空闲,则需要考虑其容积约束,从缓存区中选择可同批进入热处理炉的工件,组批进入。若同批进入热处理炉的工件过少,则会降低该批工件对热处理炉容积的利用率,增大热处理炉的加工批次数目,增大最大加工工时。当工件完成热处理工序,同批工件中不同类型的工件将重新分开,继续后续机加工序的加工。因此,对于在后续机加环节任务繁重的工件,需要它具有较高的优先级被安排进入热处理炉,以避免该工件的完工时间较其他工件出现较多的延迟,从而导致最大加工工时的增加。
[0091] 该实施例在热处理环节的排产阶段,利用基于热处理炉的容积解码规则,在最大化热处理炉利用率的同时,尽量减小同一批工件被分散处理的批次数。
[0092] 步骤14、获取热处理设备的瓶颈程度;
[0093] 利用基于瓶颈程度的机加设备选择规则,在工件的热处理工序的加工时间和顺序确定后,考虑随着工序的安排而变化的设备的瓶颈程度,将工序尽量均匀地安排在各个设备上,避免瓶颈设备上的工序堵塞。
[0094] 步骤15、根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;
[0095] 可选地,根据所述热处理加工时间和顺序,以及所述瓶颈程度,能够确定工件的最大加工时间以及热处理炉利用率。为了综合考虑柔性作业车间环节约束和热处理环节约束,以最小化所述最大加工时间,以及最大化热处理炉利用率为目标,为了平衡两个目标,需要计算所述第二种群的种群个体的适应度,所述适应度的值用于判断是否达到最优解。
[0096] 步骤16、根据所述适应度确定用于车间调度的调度解。
[0097] 所述调度解可以为适应度值最大的解,也可以为达到根据用户需求设置的预设值时的解,还可以为达到用户设置的迭代次数时获得的解。所述调度解包含的基因对应的顺序即为车间调度中各个工件的调度顺序。
[0098] 本发明的实施例,针对具有热处理环节的柔性作业车间调度问题,综合考虑柔性作业车间环节约束和热处理环节约束,以最小化最大加工时间和最大化热处理炉利用率为目标,通过合理地安排工件的加工顺序以及加工设备选择,合理地挑选、组合每次进入热处理炉的工件,使最小化工件的最大完工时间,最大化热处理炉的利用率,从而为多品种、小批量下柔性作业车间的调度人员提供调度方案参考。
[0099] 可选地,在所述根据工件到达热处理环节的顺序生成第一种群之前,所述方法还包括:
[0100] 基于工件的编码初始化所有种群,获得所有工件到达热处理环节的顺序。为了更加简单、直观地表示每一个调度解,采用基于工件的编码方式。该编码方式表示的是所有工件(job)到达热处理环节的顺序。即对于所有n个jobs,其编码方式为这n个jobs一种排序。例如,编码表示,在热处理环节jobs到达的顺序为:job 2→job 1→job 5→job 3→job 4。
[0101] 初始化禁忌表,所述禁忌表包括交叉禁忌表和变异算子禁忌表,每一个种群个体对应一个所述交叉禁忌表以及一个变异算子禁忌表。
[0102] 所述交叉禁忌表即为固定项禁忌表,所述交叉禁忌表内包括至少一项禁止参与交叉操作的基因项;所述变异算子禁忌表内包括至少一个禁止参与变异操作的基因项。每一个种群个体即每一条染色体,均对应一个交叉禁忌表以及一个变异算子禁忌表,用于约束交叉操作的固定项以及变异操作的变异算子。对种群内的每个个体在交叉环节和变异环节中添加一个交叉禁忌表和变异算子禁忌表,避免种群在交叉和变异过程中产生已有个体或与已有个体类似的个体,造成种群进化倒退或进化停滞,从而提高算法的全局搜索性能。
[0103] 具体地,所述对所述第一种群内的种群个体进行交叉操作,可以包括:
[0104] 步骤21、选取所述第一种群内的种群个体作为交叉操作的第一父代染色体。针对基于工件的编码方式,本发明实施例提出了基于工件编码的交叉算子。所述第一父代染色体的选组可以是随机的,也可以根据用户需求的条件设定。
[0105] 步骤22、获取所述第一父代染色体对应的交叉禁忌表,所述交叉禁忌表包括至少一个禁忌项。
[0106] 为防止种群的无效交叉,本发明实施例针对基于工件的交叉方式设计交叉禁忌表。该禁忌表附着于种群中的每一个个体上。当个体进行交叉操作产生位置固定项和顺序固定项时,首先需要判断所述位置固定项或顺序固定项序列是否与所述交叉禁忌表中任何一项相同或相似。若不相同也不相似,则可以继续交叉操作产生子代;否则,需要根据特赦条件判断是否继续交叉操作。
[0107] 所述交叉禁忌表中的禁忌项可以为用户设置的不允许参与交叉操作的基因,也可以为在此次迭代的之前迭代过程中使用过的固定项。为了避免在交叉过程中产生已有个体或者与已有个体类似的个体,造成种群进化倒退或进化停滞,在交叉过程中需要将生成的固定项与交叉禁忌表中的禁忌项进行比对,进而决定是否继续交叉操作。
[0108] 步骤23、根据所述交叉禁忌表包含的禁忌项数量确定参考染色体。可选地,选择参与交叉操作的第一父代染色体中交叉禁忌表中禁忌项较多的染色体作为参考染色体。
[0109] 步骤24、生成所述交叉操作的位置固定项和顺序固定项。所述位置固定项和所述顺序固定项可以是随机生成的。
[0110] 步骤25、根据所述位置固定项和顺序固定项,对所述第一父代染色体进行交叉操作,生成第一子代染色体。
[0111] 如图2所示,以所述第一父代染色体包括P1和P2,交叉操作产生的第一子代染色体为S1和S2为例,在执行交叉操作时,首先将染色体中的基因随机分为两部分(成为顺序固定项和位置固定项),然后分别将所述第一父代染色体P1和P2中位置固定项的基因不变地传递给第一子代染色体S1和S2。再将所述第一父代染色体P2和P1的顺序固定项的基因分别按顺序插入到S1和S2的空位中。图2所示为交叉算子的示意图,其中基因2、7、8为位置固定项,其余基因为顺序固定项。
[0112] 步骤26、判断所述位置固定项和所述顺序固定项中,是否存在至少一项与所述参考染色体的交叉禁忌表中的禁忌项相同。
[0113] 图3a和图3b为无效交叉现象图,其中图3a为相同的位置固定项和顺序固定项;图3b为类似的位置固定项和顺序固定项。
[0114] 步骤27、在所述位置固定项和所述顺序固定项中存在至少一项与所述禁忌项相同时,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值。
[0115] 该实施例中,若生成的所述位置固定项或所述顺序固定项与所述参考染色体的交叉禁忌表中的某项相同,表示存在产生已有个体的可能性,为了提高算法的全局搜索性能,需要比较生成的所述第一子代染色体是否优于所述第一父代染色体,所述优于是指所述第一子代染色体的适应度值大于所述一父代染色体中的最优者。
[0116] 步骤28、在所述第一子代染色体的适应度值均大于所述第一父代染色体的适应度值中的最优值时,结束交叉操作;否则,继续执行所述生成所述交叉操作的位置固定项和顺序固定项的步骤。
[0117] 若所述第一子代染色体均不优于所述第一父代染色体中的最优者,则转为执行所述步骤24;否则,结束所述第一父代染色体的交叉操作。
[0118] 步骤29、在所述位置固定项和所述顺序固定项中不存在与所述禁忌项相同的基因时,分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度。
[0119] 具体地,所述分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度,可以包括:
[0120] 根据公式: 分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度。需要说明的是,需要根据上述公式依次计算当前的位置固定项与顺序固定项与参考染色体的交叉禁忌表中各项的相似度。
[0121] 其中,Ds表示相似度,CSi表示所述位置固定项与所述交叉禁忌表中的第i项中相同基因的数量;CPi表示所述顺序固定项与所述交叉禁忌表中的第i项中相同基因的数量;CTi表示所述交叉禁忌表中的第i项中基因的数量。
[0122] 步骤210、在所述相似度大于第一预设值的情况下,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值,在所述相似度小于或等于第一预设值的情况下,结束交叉操作。
[0123] 所述第一预设值可以根据需求设置,优选地,所述第一预设值为0.8,即若所述位置固定项和所述顺序固定项中存在某个相似度大于0.8,则执行所述步骤27的步骤;否则,结束所述第一父代染色体的交叉操作。
[0124] 步骤220、根据所述第一父代染色体以及所述第一子代染色体,生成第一子群体。
[0125] 在所述交叉操作中生成所述第一子代染色体后,在所述第一种群的基础上增加所述第一子代染色体,形成所述第一子群体。
[0126] 可选地,对所述第一种群内的种群个体进行变异操作,包括:
[0127] 步骤31、选取所述第一子群体内的种群个体作为变异操作的第二父代染色体。变异算子的加入是为了增加种群的多样性,提高算法的全局搜索性能。参与所述变异操作的所述第二父代染色体可以为所述第一子群体内的所有种群个体,即对所述第一子群体内的所有种群个体进行变异操作。
[0128] 步骤32、获取所述第二父代染色体的变异算子禁忌表,所述变异算子禁忌表包括至少一个禁忌项。
[0129] 当个体进行变异操作时,首先需要判断所述变异操作的基因对是否与所述变异算子禁忌表中任何一项相同或相似。所述变异算子禁忌表中的禁忌项可以为用户设置的不允许参与变异操作的基因,也可以为在此次迭代的之前迭代过程中使用过的变异算子。
[0130] 步骤33、生成所述变异操作的基因对;所述基因对可以是随机生成的。
[0131] 步骤34、根据所述基因对对所述第二父代染色体进行变异操作,生成第二子代染色体。
[0132] 本发明实施例通过交换染色体中的基因实现个体的变异,同时利用变异算子禁忌表防止个体的重复变异。图4为基于基因交换的变异算子示意图,参与变异的基因对为2和7。
[0133] 步骤35、判断所述基因对中是否存在至少一项与所述变异算子禁忌表中的禁忌项相同;
[0134] 步骤36、在所述基因对中存在至少一项与所述禁忌项相同时,继续执行所述生成所述变异操作的基因对的步骤;
[0135] 步骤37、在所述基因对中不存在与所述禁忌项相同的基因时,判断所述第二子代染色体的适应度值是否大于所述第二父代染色体的适应度值。
[0136] 该实施例中,若参与变异的基因对与所述变异算子禁忌表中的某项相同,表示存在产生已有个体的可能性,为了提高算法的全局搜索性能,则执行所述步骤33;否则,判断所述第二子代染色体的适应度值是否大于所述第二父代染色体的适应度值。
[0137] 步骤38、在所述第二子代染色体的适应度值大于所述第二父代染色体的适应度值时,结束变异操作,否则,继续执行所述生成所述变异操作的基因对的步骤。
[0138] 若所述第二子代染色体不优于所述第二父代染色体时,则转为执行所述步骤33;否则,结束所述第二父代染色体的变异操作。
[0139] 步骤39、根据所述第二父代染色体以及所述第二子代染色体,生成所述第二种群。
[0140] 在所述变异操作中生成所述第二子代染色体后,在所述第一子群体的基础上增加所述第二子代染色体,形成所述第二种群。
[0141] 可选地,所述步骤13包括:
[0142] 步骤41、初始化热处理炉的剩余容积C′=C,其中C′表示所述剩余容积,C为所述剩余容积的初始值。
[0143] 步骤42、获取所述第二种群中的染色体对应的工件信息,所述工件信息包括:所述第二种群中的染色体的第一个基因对应的工件、单件体积V、工件数量N、未完成组批的工件数量N′。
[0144] 在热处理环节的排产阶段,利用基于热处理炉容积解码规则,在最大化热处理炉利用率的同时,尽量减小同一job的工件被分散的批次数。
[0145] 步骤43、判断所述未完成组批的工件的体积与所述剩余容积的大小,在N′×V≤C′的情况下,将所述剩余容积更新为:C"=C′-N′×V,所述工件组批完成;
[0146] 其中,所述未完成组批的工件的体积为:N′×V,所述剩余容积为C′,若N′×V≤C′,则所述热处理炉的剩余容积能够满足所述未完成组批的工件的热处理,所述未完成组批的工件能够完成组批,则组批完成后的所述剩余容积更新为:C′-N′×V,C"为所述未完成组批的工件在组批完成后所述热处理炉的剩余容积。
[0147] 步骤44、根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,并删除所述染色体中的第一个基因。
[0148] 对于组批完成后的批次,赋予了该批次的热处理开始时间和结束时间,则能够获得该批次的工件的加工时间。
[0149] 步骤45、在所述C"为零的情况下,将所述剩余容积更新为所述初始值C。
[0150] 在更新后的所述C"为零时,表示所述未完成组批的工件在组批完成后所述热处理炉没有剩余容积,则将所述剩余容积重新置为初始值C,并执行步骤48,即当前编码中的基因数量为0,结束编码。
[0151] 步骤46、在所述C"不为零的情况下,若所述染色体中不存在与所述第一个基因对应的工件组批的目标工件,则将所述剩余容积更新为所述初始值C,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤。
[0152] 该实施例中,所述目标工件是指可与所述第一个基因对应的工件组批的工件。若更新后的所述C"不为零,表示所述未完成组批的工件在组批完成后所述热处理炉仍有剩余容积,若在第一个基因之后,所述染色体中不存在可与所述第一个基因组批的目标工件,则将所述剩余容积重新置为所述初始值C,并继续执行所述步骤42。
[0153] 步骤47、若存在所述目标工件,将所述目标工件中的第一个工件的单件体积记为V,工件数量为N,未进行组批的工件数量为N′,继续执行所述判断所述未完成组批的工件的体积与所述剩余容积的大小的步骤。
[0154] 该实施例中,若更新后的所述C"不为零,且在第一个基因之后,所述染色体中还有可与所述第一个基因组批的目标工件,则记所述目标工件中的第一个工件的单件体积记为V,工件数量为N,未进行组批的工件数量为N′,继续执行所述步骤43。
[0155] 步骤48、在所述染色体中的基因数量为零的情况下,结束编码。经过多次迭代解码后,在所述染色体中的基因数量为零时,结束编码。
[0156] 可选地,所述基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序,还包括:
[0157] 步骤49、在N′×V>C′的情况下,将C′/V个工件完成组批,并将所述剩余容积更新为所述初始值C,将所述未进行组批的工件数量更新为:N"=N′-C′/V;根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤,并在所述染色体中的基因数量为零的情况下,结束编码。
[0158] 该实施例中,在N′×V>C′时,表示所述热处理炉的剩余容积不足够支持所述未进行组批的工件的热处理,此时仅能将与所述剩余容积对应的部分工件进行热处理,则能够支持热处理的工件数量为:C′/V,则C′/V数量的工件完成组批,剩余未组批工件的数量为:N′-C′/V。
[0159] 根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,则可以得到该批次的工件的加工时间。对于剩余未组批的工件,继续执行所述步骤42,经过多次迭代解码后,直至所述染色体中的基因数量为零时,结束编码。
[0160] 可选地,所述步骤14包括:
[0161] 步骤51、将所有未安排工序分为热处理前工序和热处理后工序,生成热处理前工序集合和热处理后工序集合。
[0162] 该实施例将所有未安排工序分为热处理前工序和热处理后工序两部分。以热处理环节为时间锚点,分别考虑最大化热处理炉利用率和最小化最大加工时间两个目标,将解码分为热处理环节解码和柔性作业车间环节解码两部分,避免劣质解的产生。基于瓶颈程度的机加设备选择规则,在工件的热处理工序的加工时间和顺序确定后,考虑随着工序的安排而变化的设备的瓶颈程度,将工序尽量均匀地安排在各个设备上,避免瓶颈设备上的工序堵塞。
[0163] 步骤52、根据所述热处理前工序集合获取第一目标工序集合,所述第一目标工序集合为所述热处理前工序集合中后一道工序已安排的工序的集合。
[0164] 步骤53、根据公式:计算所述第一目标工序集合中所有工序的可选设备的第一瓶颈程度;
[0165] 其中, 表示第一瓶颈程度,Sij表示Oij的非热处理工序的加工开始时间;Oij表示Ji的第j道非热处理工序,j=1,2,…Gi,Gi表示Ji的工序数量;Ji表示工件,i=1,2,…n,n表示工件的数量;Vijp为常量,若Oij在设备Mp上加工则为1,否则为0;Mp表示设备p,p=1,2,…m,m表示设备的数量;Tij表示Oij的非热处理工序的理论单件加工工时;Xijp为常量,若Oij在设备Mp上加工则为1,否则为0;
[0166] 该实施例中,上述公式表示将当前未安排的、且可以在设备Mp上安排的所有热处理前工序,全都安排在设备Mp上第一个工件的开始时间之前。其中,瓶颈程度的值越小,表示该设备越瓶颈。
[0167] 步骤54、根据所有可选设备的第一瓶颈程度,为所述第一目标工序集合中所有工序选择设备。在所有可加工设备中,依次选择瓶颈程度值最大的设备,逆向安排当前集合中的所有工序。
[0168] 步骤55、在所述热处理前工序集合中的所有工序完成设备安排的情况下,进行所述热处理后工序的设备安排。
[0169] 若热处理前工序集合中所有工件均完成安排,则继续进行所述热处理后工序的设备安排;否则,执行所述步骤52。
[0170] 可选地,所述进行所述热处理后工序的设备安排,包括:
[0171] 步骤56、根据所述热处理后工序集合获取第二目标工序集合,所述第二目标工序集合为所述热处理后工序集合中前一道工序已安排的工序的集合;
[0172] 步骤57、根据公式:计算所述第二目标工序集合中所有工序的可选设备的第二瓶颈程度,
其中, 表示第二瓶颈程度,Eij表示Oij的非热处理工序的加工结束时间;
[0173] 该实施例中,上述公式表示:将当前未安排的、且可以在设备Mp上安排的所有热处理后工序,全都安排在设备Mp上最后一个工件的结束时间之后。其中,瓶颈程度的值越大,表示该设备越瓶颈。
[0174] 步骤58、根据所有可选设备的第二瓶颈程度,为所述第二目标工序集合中所有工序选择设备。在所有可加工设备中,依次选择瓶颈程度值最小的设备,正向安排当前集合中的所有工序。
[0175] 步骤59、在所述热处理后工序集合中的所有工序完成设备安排的情况下,解码结束。若热处理后工序集合中所有工件均完成安排,解码结束;否则,执行所述步骤56。
[0176] 该实施例中,综合考虑柔性作业车间环节约束和热处理环节约束、以最小化最大加工时间和最大化热处理炉利用率为目标,以热处理环节为时间锚点,将解码分为热处理环节解码和柔性作业车间环节解码两部分,通过合理地安排工件的加工顺序以及加工设备选择,合理地挑选、组合每次进入热处理炉的工件,实现最小化最大加工时间和最大化热处理炉利用率,避免劣质解的产生。
[0177] 可选地,所述步骤15包括:
[0178] 根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定工件的最大加工时间和热处理设备利用率;
[0179] 根据公式:F=Cmax/ηm,计算所述适应度;其中,F表示适应度,Cmax表示工件的最大加工时间,ηm表示热处理设备利用率。
[0180] 为最小化工件的最大加工时间,应最小化工件在缓存区的等待时间。若热护理炉空闲,则需要考虑其容积约束,从缓存区中选择可同批进入热处理炉的工件,组批进入。若同批进入热处理炉的工件过少,则会降低该批工件对热处理炉容积的利用率,增大热处理炉的加工批次数目,增大最大加工时间。
[0181] 本发明的实施例,根据所述热处理加工时间和顺序,能够确定工件的加工时间,根据设备的瓶颈程度选择设备,最小化工件在缓存区的等待时间,对于在后续机加环节任务繁重的工件,能够具有较高的优先级被安排进入热处理炉,避免了该工件的完工时间较其他工件出现较多的延迟,从而导致加工时间的增加。
[0182] 根据所述第二种群中的种群个体的适应度,能够确定继续迭代或者终止算法,并在所述适应度满足用户需求的条件时,终止算法,得到最终的调度解。其中,用户可以设定迭代次数,在达到预设的迭代次数时,认为得到的解为最终的调度解;可选地,还可以在所述适应度到达预设值时,认为此时得到的解为最优解。
[0183] 下面具体说明所述车间调度方法的实现过程。可选地,如图5所示,首先,初始化种群,其中,所述初始化种群包括:基于工件的编码初始化种群和算法参数;初始化禁忌表,其中,所述禁忌表包括:交叉禁忌表和变异算子禁忌表;结合所述交叉禁忌表进行交叉操作,能够避免算法陷入早熟;结合变异算子禁忌表进行变异操作,能够提高全局搜索能,通过所述交叉操作和所述变异操作全局寻优;基于推拉结合的解码规则,计算种群适应度;在所述适应度达到终止条件时,结束算法;否则继续执行交叉、变异操作。需要说明的是,在交叉操作之前,若种群的适应度达到终止条件,则结束算法;所述终止条件根据用户需求设置,例如:设置为达到迭代次数时结束算法,也可以为适应度达到用户设定的预设值时结束算法。
[0184] 本发明的实施例,针对具有热处理环节的柔性作业车间调度问题,综合考虑柔性作业车间环节约束和热处理环节约束,以最小化最大加工时间和最大化热处理炉利用率为目标,通过合理地安排工件的加工顺序以及加工设备选择,合理地挑选、组合每次进入热处理炉的工件,使最小化工件的最大完工时间,最大化热处理炉的利用率,从而为多品种、小批量下柔性作业车间的调度人员提供调度方案参考。
[0185] 如图6所示,本发明实施例还提供一种车间调度装置,包括:
[0186] 第一生成模块610,用于根据工件到达热处理环节的顺序生成第一种群,所述第一种群包括至少一个与所述顺序对应的种群个体;
[0187] 第一处理模块620,用于对所述第一种群内的种群个体进行交叉操作和变异操作,得到第二种群;
[0188] 第一确定模块630,用于基于热处理炉容积解码规则,确定所述第二种群的热处理加工时间和顺序;
[0189] 第一获取模块640,用于获取热处理设备的瓶颈程度;
[0190] 第二确定模块650,用于根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定所述第二种群中的种群个体的适应度;
[0191] 第三确定模块660,用于根据所述适应度确定用于车间调度的调度解。
[0192] 可选地,所述装置还包括:
[0193] 第二获取模块,用于基于工件的编码初始化所有种群,获得所有工件到达热处理环节的顺序;
[0194] 初始化模块,用于初始化禁忌表,所述禁忌表包括交叉禁忌表和变异算子禁忌表,每一个种群个体对应一个所述交叉禁忌表以及一个变异算子禁忌表。
[0195] 可选地,所述第一处理模块620包括:
[0196] 第一选取单元,用于选取所述第一种群内的种群个体作为交叉操作的第一父代染色体;
[0197] 第一获取单元,用于获取所述第一父代染色体对应的交叉禁忌表,所述交叉禁忌表包括至少一个禁忌项;
[0198] 第一确定单元,用于据所述交叉禁忌表包含的禁忌项数量确定参考染色体;
[0199] 第一生成单元,用于生成所述交叉操作的位置固定项和顺序固定项;
[0200] 交叉操作单元,用于根据所述位置固定项和顺序固定项,对所述第一父代染色体进行交叉操作,生成第一子代染色体;
[0201] 第一判断单元,用于判断所述位置固定项和所述顺序固定项中,是否存在至少一项与所述参考染色体的交叉禁忌表中的禁忌项相同;
[0202] 第二判断单元,用于在所述位置固定项和所述顺序固定项中存在至少一项与所述禁忌项相同时,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值;
[0203] 第一处理单元,用于在所述第一子代染色体的适应度值均大于所述第一父代染色体的适应度值中的最优值时,结束交叉操作;否则,继续执行所述生成所述交叉操作的位置固定项和顺序固定项的步骤;
[0204] 第二处理单元,用于在所述位置固定项和所述顺序固定项中不存在与所述禁忌项相同的基因时,分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度;
[0205] 第三处理单元,用于在所述相似度大于第一预设值的情况下,判断所述第一子代染色体的适应度值是否大于所述第一父代染色体的适应度值中的最优值,在所述相似度小于或等于第一预设值的情况下,结束交叉操作;
[0206] 第二生成单元,用于根据所述第一父代染色体以及所述第一子代染色体,生成第一子群体。
[0207] 可选地,所述第二处理单元具体用于:
[0208] 根据公式: 分别计算所述位置固定项和所述顺序固定项,与所述参考染色体的交叉禁忌表的相似度;
[0209] 其中,Ds表示相似度,CSi表示所述位置固定项与所述交叉禁忌表中的第i项中相同基因的数量;CPi表示所述顺序固定项与所述交叉禁忌表中的第i项中相同基因的数量;CTi表示所述交叉禁忌表中的第i项中基因的数量。
[0210] 可选地,所述第一处理模块620包括:
[0211] 第二选取单元,用于选取所述第一子群体内的种群个体作为变异操作的第二父代染色体;
[0212] 第二获取单元,用于获取所述第二父代染色体的变异算子禁忌表,所述变异算子禁忌表包括至少一个禁忌项;
[0213] 第三生成单元,用于生成所述变异操作的基因对;
[0214] 变异操作单元,用于根据所述基因对对所述第二父代染色体进行变异操作,生成第二子代染色体;
[0215] 第三判断单元,用于判断所述基因对中是否存在至少一项与所述变异算子禁忌表中的禁忌项相同;
[0216] 第四处理单元,用于在所述基因对中存在至少一项与所述禁忌项相同时,继续执行所述生成所述变异操作的基因对的步骤;
[0217] 第四判断单元,用于在所述基因对中不存在与所述禁忌项相同的基因时,判断所述第二子代染色体的适应度值是否大于所述第二父代染色体的适应度值;
[0218] 第五处理单元,用于在所述第二子代染色体的适应度值大于所述第二父代染色体的适应度值时,结束变异操作,否则,继续执行所述生成所述变异操作的基因对的步骤;
[0219] 第四生成单元,用于根据所述第二父代染色体以及所述第二子代染色体,生成所述第二种群。
[0220] 可选地,所述第一确定模块630包括:
[0221] 初始化单元,用于初始化热处理炉的剩余容积C′=C,其中C′表示所述剩余容积,C为所述剩余容积的初始值;
[0222] 第三获取单元,用于获取所述第二种群中的染色体对应的工件信息,所述工件信息包括:所述第二种群中的染色体的第一个基因对应的工件、单件体积V、工件数量N、未完成组批的工件数量N′;
[0223] 第六处理单元,用于判断所述未完成组批的工件的体积与所述剩余容积的大小,在N′×V≤C′的情况下,将所述剩余容积更新为:C"=C′-N′×V,所述工件组批完成;
[0224] 第七处理单元,用于根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,并删除所述染色体中的第一个基因;
[0225] 第一更新单元,用于在所述C"为零的情况下,将所述剩余容积更新为所述初始值C;
[0226] 第二更新单元,用于在所述C"不为零的情况下,若所述染色体中不存在与所述第一个基因对应的工件组批的目标工件,则将所述剩余容积更新为所述初始值C,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤;
[0227] 第八处理单元,用于若存在所述目标工件,将所述目标工件中的第一个工件的单件体积记为V,工件数量为N,未进行组批的工件数量为N′,继续执行所述判断所述未完成组批的工件的体积与所述剩余容积的大小的步骤;
[0228] 结束单元,用于在所述染色体中的基因数量为零的情况下,结束编码。
[0229] 可选地,所述第一确定模块630还包括:
[0230] 第三更新单元,用于在N′×V>C′的情况下,将C′/V个工件完成组批,并将所述剩余容积更新为所述初始值C,将所述未进行组批的工件数量更新为:N"=N′-C′/V;
[0231] 第九处理单元,用于根据热处理炉的时间节点和批次的热处理工时,赋予组批完成的批次的热处理开始时间和结束时间,继续执行所述获取所述第二种群中的染色体对应的工件信息的步骤,并在所述染色体中的基因数量为零的情况下,结束编码。
[0232] 可选地,所述第一获取模块640包括:
[0233] 第五生成单元,用于将所有未安排工序分为热处理前工序和热处理后工序,生成热处理前工序集合和热处理后工序集合;
[0234] 第四获取单元,用于根据所述热处理前工序集合获取第一目标工序集合,所述第一目标工序集合为所述热处理前工序集合中后一道工序已安排的工序的集合;
[0235] 根据公式:计算所述第一目标工序集合中所有工序的可选设备的第一瓶颈程度;
[0236] 其中, 表示第一瓶颈程度,Sij表示Oij的非热处理工序的加工开始时间;Oij表示Ji的第j道非热处理工序,j=1,2,…Gi,Gi表示Ji的工序数量;Ji表示工件,i=1,2,…n,n表示工件的数量;Vijp为常量,若Oij在设备Mp上加工则为1,否则为0;Mp表示设备p,p=1,2,…m,m表示设备的数量;Tij表示Oij的非热处理工序的理论单件加工工时;Xijp为常量,若Oij在设备Mp上加工则为1,否则为0;
[0237] 第三选取单元,用于根据所有可选设备的第一瓶颈程度,为所述第一目标工序集合中所有工序选择设备;
[0238] 设备安排单元,用于在所述热处理前工序集合中的所有工序完成设备安排的情况下,进行所述热处理后工序的设备安排。
[0239] 可选地,所述设备安排单元具体用于:
[0240] 根据所述热处理后工序集合获取第二目标工序集合,所述第二目标工序集合为所述热处理后工序集合中前一道工序已安排的工序的集合;
[0241] 根据公式:计算所述第二目标工序集合中所有工序的可选设备的第二瓶颈程度,其中, 表示第二瓶颈程度,Eij表示Oij的非热处理工序的加工结束时间;
[0242] 根据所有可选设备的第二瓶颈程度,为所述第二目标工序集合中所有工序选择设备;
[0243] 在所述热处理后工序集合中的所有工序完成设备安排的情况下,解码结束。
[0244] 可选地,第二确定模块650包括:
[0245] 根据所述热处理加工时间和顺序,以及所述瓶颈程度,确定工件的最大加工时间和热处理设备利用率;
[0246] 根据公式:F=Cmax/ηm,计算所述适应度;
[0247] 其中,F表示适应度,Cmax表示工件的最大加工时间,ηm表示热处理设备利用率。
[0248] 本发明的实施例,针对具有热处理环节的柔性作业车间调度问题,综合考虑柔性作业车间环节约束和热处理环节约束,以最小化最大加工时间和最大化热处理炉利用率为目标,通过合理地安排工件的加工顺序以及加工设备选择,合理地挑选、组合每次进入热处理炉的工件,使最小化工件的最大完工时间,最大化热处理炉的利用率,从而为多品种、小批量下柔性作业车间的调度人员提供调度方案参考。
[0249] 需要说明的是,该装置是与上述个体推荐方法对应的装置,上述方法实施例中所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
[0250] 本发明实施例还提供一种车间调度设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的车间调度方法的步骤。
[0251] 需要说明的是,该设备是与上述个体推荐方法对应的设备,上述方法实施例中所有实现方式均适用于该设备的实施例中,也能达到相同的技术效果。
[0252] 以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈