一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

分布式流水车间调度方法及装置

2022-12-20 20:38:36 来源:中国专利 TAG:


1.本发明涉及分布式流水车间调度技术领域,具体涉及一种分布式流水车间调度方法及装置。


背景技术:

2.随着全球气候变暖和极端天气的频繁出现,越来越多的国家开始将“碳中和”上升为国家战略。
3.生产调度作为制造系统的重要环节,直接影响企业效益和竞争力。为实现节能减排、降低生产成本、提高生产系统的最优性,研究和应用高效的优化技术与调度方法成为了生产调度的核心环节。我国碳权交易市场的建立使得碳排放权成为排碳企业新的生产要素,碳排放权的消耗最终要落实到具体的生产调度方案中。针对不同的加工工件和加工工艺,生产调度过程中的碳排放来源也有所不同。因此,不同的生产调度方案对碳排放的影响较大。
4.随着经济全球化得快速发展,制造企业面临着日益激烈的市场竞争,越来越多的企业将生产模式扩展到分布式环境中来,并在不同的地理位置建立多个工厂。分布式车间调度问题(distributed shop scheduling problem,dssp)是在多个分散的公司和工厂场景下,以实现调度指标的最优化为目标,通过公司之间的合作生产或不同工厂之间的协作生产,研究工件在工厂之间的分配和各工厂内的加工顺序。分布式异构流水车间调度问题是经典流水车间调度题的扩展,该问题属于 np-hard问题,该问题的求解难度大,具有重要的学术意义;其次,分布式异构流水车间调度问题更符合实际生产情况,实现dssp的最优化可大幅度减少企业和工厂的碳排放量或降低生产成本,因此其研究还具有重要的应用价值。
5.中国专利“cn113344383一种用于分布式异构工厂的节能车间调度系统”设计了用于初始化的调度序列模块,提出了针对七种序列操作算子和四种速度操作算子的自学习选择策略,并将节能零空闲流水车间调度问题转化为节能置换流水车间调度问题,通过搜索机器的空闲时间,对特定的工件进行减速来实现节约能源的目的,还设计了一种负载均衡的调整策略来平衡各个工厂的负载指标。
6.中国专利“cn110928261分布式式异构流水车间的分布估计调度方法及系统”提出了一种有效的分布估计调度方法来解决分布式异构流水车间调度问题,设计了针对种群与概率模型的初始化策略,采用pbil方法对概率模型再进化的每一代进行更新,并根据不同邻域结构的搜索操作产生新解以进行贪婪搜索,最后对概率模型采样,以重新生成满足预设条件的个体,从而确定分布估计调度方案。
7.目前,针对分布式车间调度难题的研究还很少,生产调度问题大部分都是以单工厂为研究对象,对于分布式生产调度大多都是以最大完成时间、总能耗和总延误时间等作为优化目标。根据现有研究,解决分布式调度问题的方法包括精确求解法、启发式算法和智能优化算法。其中,智能优化算法中的群智能(swarmintelligence,si)和进化算法
(evolutionary algorithms,ess)更适合求解多目标多约束的静态优化问题。在求解多目标调度问题时,结合了遗传算子和局部搜索的多目标memetic算法显示出了比单一算法更强大的性能。但不同的调度问题具有不同的问题属性和约束条件,在设计局部搜索算子方面,鲜少有研究利用特定问题的知识来设计搜索算子。


技术实现要素:

8.本发明的目的是解决上述背景技术存在的不足,本发明以分布式流水车间调度为研究对象,围绕生产调度过程中的碳排放问题,构建了最小化最大完工时间和总碳排放量的混合整数线性规划模型,并提出了一种知识驱动的多目标 memetic调度方法(knowledge-driven memetic algorithm,kdma)来求解分布式异构流水车间调度问题,以最小化最大完成时间和总碳排放量。
9.根据本发明的一个方面,一种分布式流水车间调度方法,包括以下步骤:
10.s1:获取分布式流水车间的参数,所述参数包括工件总数、工厂总数、各工厂中的机器总数、每个工件的工序数、每台机器的加工速度及速度等级数、每台机器各速度等级对应的功耗和每个工件每道工序的标准处理时间;
11.s2:设置约束条件,根据所述分布式流水车间的参数和约束条件构建分布式流水车间调度问题模型,所述分布式流水车间调度问题模型以最小化最大完工时间和总碳排放量为目标;
12.s3:采用知识驱动的多目标memetic调度方法对所述分布式流水车间调度问题模型进行求解,输出最优分布式流水车间调度方案。
13.优选地,所述总碳排放量包括:工件加工时产生的碳排放、机器待机时产生的碳排放以及工件在加工过程中辅助物料消耗产生的碳排放;
14.各环节的碳排放量采用机器消耗的实际功率或能源乘以相关碳排放系数的方式计算得到。
15.优选地,所述约束条件包括:
16.所有工件都可以在任意的工厂中加工,一旦工件被分配到某个工厂中,该工件的所有工序必须在指定的工厂中进行,不能转移到其他工厂;
17.每个工厂相当于一个具有不同机器的置换流水车间,即每个工厂中机器的加工能力不同,各工厂中的每个工件在机器上的加工次序相同,且每台机器加工各工件的顺序也相同;
18.各工厂中的所有机器都有不同的加工速度等级,机器的运行速度在工件加工前确定,一旦机器开始加工工件,其加工速度不能改变;
19.每台机器一次最多只能处理一个工件的一道工序,机器上的前一个工件加工完后才能开始加工后一个工件,且工序加工过程中不能被打断;
20.各工件在机器上加工时,除第一道工序外,其余每道工序只能在前一道工序加工完成后才能开始加工。
21.优选地,所述分布式流水车间调度问题模型的数学表达式如下:
22.min{c
max
,ce}
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0023][0024][0025][0026][0027][0028][0029][0030][0031][0032][0033][0034][0035]
ce
total
=ce
run
ce
idle
ce
au
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)
[0036][0037][0038][0039]
式中,n为工件总数,m为各工厂中的机器总数,f为工厂总数,s为加工速度等级数量,i为工件索引,i∈{1,...,n},l为序列中工件的位置索引,l∈{1,...,n}, j为机器索引,j∈{1,...,m},f为工厂索引,f∈{1,...,f},k为速度索引,vk为第k个加工速度,o
i,j
为工件i的第j道工序,p
i,j
为o
i,j
的标准处理时间,为 o
i,j
以速度vk加工时的实际处理时间,为在工厂f中机器j以速度vk加工时的单位时间功耗,sp
f,j
为在工厂f中机器j待机时的单位时间功耗,c
max
为整个调度过程的最大完成时间,c
l,j,f
为工厂f中机器j上l位置的完成时间,c
l,0,f
=0,c(f)为工厂f的最大完成时间,ce
run
为工件加工时产生的碳排放, ce
idle
为机器待机时产生的碳排放量,ce
au
为机器消耗辅助物料产生的碳排放量, ce
total
为整个调度过程产生的碳排放量,x
i,l,f
为0-1决策变量,当作业i在工厂f 中位于l位置时,该变量值为1,否则为0,为0-1决策变量,当作业i在机器j上以速度vk处理时,该变量值为
1,否则为0,ε

为电能碳排放系数,为 o
i,j
加工时辅助物料碳排放系数。
[0040]
优选地,步骤s3包括:
[0041]
s31:针对所述分布式流水车间调度问题模型,对调度方法中的个体进行编码;
[0042]
s32:采用混合初始化策略生成初始解;
[0043]
s33:采用锦标赛选择算子、pmx算子和交换变异算子对解空间进行更新;
[0044]
s34:通过知识驱动的局部搜索策略获取最优解,最优解即为分布式流水车间调度方案。
[0045]
优选地,步骤s31中,编码由两个序列组成,分别是每个工厂的工件分配序列和分配到各工厂中工件在各机器上加工的速度等级序列;解码用于解决工厂的工件分配和各工厂的工件顺序,采用了ecf规则的译码机制。
[0046]
优选地,步骤s32具体包括:
[0047]
s321:采用mneh算法在求解问题时生成一个具有最小最大完成时间的初始解,mneh算法步骤如下:
[0048]
步骤1:生成一个随机的初始工件分配序列和工件加工速度等级序列;
[0049]
步骤2:将所有工件的加工速度提高到最高等级,即将所有机器的加工速度设置为最大;
[0050]
步骤3:将每个工件一次插入到所有工厂的所有可能位置,并选择具有最小 makespan值的调度序列;
[0051]
步骤4:插入工件后的调度序列将用于下一个工件的插入,直到所有工件都被分配到工厂;
[0052]
s322:采用降碳策略来生成一个具有最小总碳排放量的初始解,步骤如下:
[0053]
首先,对所有工件按照加工额定功率进行非升序排序;其次,将所有工件的加工速度设置为最低;然后,按照排序顺序,将各个工件尝试插入到所有可能的位置,并计算各个位置的碳排放量;最后,选择其中碳排放量最小的位置作为工件最终分配位置,直到所有工件分配完毕;
[0054]
s323:随机生成其余的初始解,以保持种群的多样性。
[0055]
优选地,步骤s33中包括:
[0056]
采用二进制锦标赛选择算子从种群中选择进行更新操作的双亲;
[0057]
采用pmx算子和交换变异算子进行更新操作:
[0058]
其中,pmx算子的操作步骤如下:
[0059]
步骤1:在选中的双亲染色体上随机选择两个位置,并将这两个位置之间的元素定义为匹配的子字符串;
[0060]
步骤2:交换双亲染色体的两个匹配子字符串来获得两个临时子代染色体;
[0061]
步骤3:根据交换的两组基因确定并映射冲突工件的关系;
[0062]
步骤4:根据映射关系,确保工件序列可行,无需对子字符串进行任何更改。
[0063]
交换变异算子是在选择的双亲染色体上,分别随机选择两个基因的位置并交换这两个位置上的工件。
[0064]
优选地,步骤s34中,所述知识驱动局部搜索策略包括三种操作算子,分别为:关键工厂中的工件移动、关键工厂中的降速以及非关键工厂中的降速;三种操作算子的说明如
下:
[0065]
关键工厂中的工件移动:在关键工厂中,选择关键路径上的一个工件,将该工件插入到该关键工厂的其他所有可能位置中;
[0066]
关键工厂中的降速:在不影响最大完成时间的前提下,降低关键工厂中非关键路径上某一工件的加工速度;
[0067]
非关键工厂中的降速:在不影响最大完成时间的前提下,降低非关键工厂中非关键路径上某一工件的加工速度;
[0068]
对于一个试验解,通过对执行上述三种局部搜索策略,得到一个新解,若得到的新解支配原始解,则用新解替换原始解,否则使用原始解,最终得到分布式流水车间调度问题模型的最优解。
[0069]
根据本发明的另一方面,一种分布式流水车间调度装置,包括以下模块:
[0070]
获取模块,用于获取分布式流水车间的参数,所述参数包括工件总数、工厂总数、各工厂中的机器总数、每个工件的工序数、每台机器的加工速度及速度等级数、每台机器各速度等级对应的功耗和每个工件每道工序的标准处理时间;
[0071]
构建模块,用于设置约束条件,根据所述于分布式流水车间的参数和约束条件构建分布式流水车间调度问题模型,所述分布式流水车间调度问题模型以最小化最大完工时间和总碳排放量为目标;
[0072]
求解模块,用于采用知识驱动的多目标memetic调度方法对所述分布式流水车间调度问题模型进行求解,输出最优分布式流水车间调度方案。
[0073]
本发明提供的技术方案具有以下有益效果:
[0074]
(1)构建了一种分布式异构流水车间调度问题模型:
[0075]
首先,通过分析分布式异构流水车间调度生产过程的特性,总结了生产过程中产生碳排放的三个环节,并采用机器消耗的实际功率或能源乘以相关碳排放系数的方式计算出各环节的碳排放量。其次,本发明以最小化最大完成时间和总碳排放量为优化目标,构建了分布式异构流水车间调度问题的多目标优化模型,在实现经济效益最优的同时,兼顾生产调度过程中的环境效益。
[0076]
(2)针对构建的分布式异构流水车间调度问题模型,提出了一种知识驱动的多目标memetic调度方法:
[0077]
首先,考虑到异构工厂的机器特性和两个优化目标之间的冲突性,设计了基于工件加工序列和加工速度序列的双序列编码方式和解码方式。其次,提出了一种混合初始化策略,运用改进的neh算法生成一个具有最小最大完成时间的初始解,再运用本发明设计的降碳策略生成一个具有最小总碳排放的初始解,其余的初始解随机生成,用以生成具有良好多样性和收敛性的初始解。再次,针对分布式异构流水车间调度问题的特性,设计了知识驱动的局部搜索策略,通过移动关键工厂内关键路径上的工件,进一步降低最大完成时间;此外,在不影响最大完成时间的前提下,通过降低关键工厂和非关键工厂中非关键路径上工件的加工速度,进一步降低碳排放。实验结果证明,本发明提供的调度方法在解决分布式异构流水车间调度问题上是优于其他算法。
附图说明
[0078]
下面将结合附图及实施例对本发明的具体效果作进一步说明,附图中:
[0079]
图1是本发明实施例提供的分布式流水车间调度图;
[0080]
图2是本发明实施例提供的一种分布式流水车间调度方法的流程图;
[0081]
图3是本发明实施例提供的一种知识驱动的多目标memetic调度方法 (kdma)的流程图;
[0082]
图4是本发明实施例提供的工件分配序列示例图;
[0083]
图5是本发明实施例提供的工件加工速度等级序列示例图;
[0084]
图6是本发明实施例提供的pmx算子操作步骤1;
[0085]
图7是本发明实施例提供的pmx算子操作步骤2;
[0086]
图8是本发明实施例提供的pmx算子操作步骤3;
[0087]
图9是本发明实施例提供的pmx算子操作步骤4;
[0088]
图10是本发明实施例提供的策略有效性对比实验结果图;
[0089]
图11是本发明实施例提供的算法对比实验结果图。
具体实施方式
[0090]
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
[0091]
分布式流水车间调度问题是经典流水车间调度题的扩展,如图1所示,该问题不仅要考虑工件在各工厂之间的分配,还要考虑各工厂内工件的加工顺序。且在异构的分布式流水车间调度问题中,每个工厂都具有不同的加工能力,即不同工厂的机器具有不同的加工速度和功耗。
[0092]
本发明实施例以分布式流水车间调度为研究对象,围绕生产调度过程中的碳排放问题,构建了最小化最大完工时间和总碳排放量的混合整数线性规划模型。其中,分布式流水车间生产过程中碳指标的定义和计算是构建模型的关键。不同工厂的生产环境和生产工序有异,复杂多样,碳指标的确定要有针对性、现实性与可操作性。此外,碳指标的计算通常涉及资源消耗和所消耗能源的二氧化碳排放因子,与生产过程、环境和时间相关,并且具有不确定性,所以难以建立准确的数学模型和进行快速评价计算。针对该问题难点,本发明通过分析分布式流水车间调度生产过程的特性,总结了生产过程中产生碳排放的三个环节,采用机器消耗的实际功率或能源乘以相关碳排放系数的方式计算出各环节的碳排放量。
[0093]
分布式异构流水车间调度问题可描述如下:有n(i=1,2,...,n)个工件需要分配给f(f=1,2,...,f)个加工能力不同的工厂进行加工,每个工件oi可选择在任意工厂进行加工,且每个工件都有m(j=1,2,...,m)道工序。所有工件都可以在任意的工厂中加工,一旦工件被分配到某个工厂中,该工件的所有工序必须在指定的工厂中进行,不能转移到其他工厂。每个工厂相当于一个有m台不同机器的置换流水车间,即每个工件中各工序的加工次序相同,且各工厂的所有机器上,工件的加工顺序也相同。各工厂中的所有机器都有s(v=1,2,...,s)个不同的速度等级,一旦机器开始加工工件,其加工速度不能改变。工件i在机器j上的标准处理时间为p
i,j
(p
i,j
》0)。当工序o
i,j
以速度vk被加工时,工序o
i,j
的实际加工时间为假设机器的加工速度越高,其加工时间越短,机器消耗的功率也越
大。也就是说,如果v1《v2,则且当机器j处于待机状态时,机器j单位时间的待机功耗为spj。
[0094]
分布式流水车间调度过程中的碳排放有四种来源,分别为工件加工时产生的碳排放、机器待机时产生的碳排放、工件在各机器之间运输时产生的碳排放以及工件在加工过程中辅助物料消耗产生的碳排放(如机器冷却剂的消耗和传送带润滑油的消耗等)。在分布式置换流水车间调度问题中,不同的调度序列对工件在各机器之间运输时产生的碳排放影响不大。因此,本发明在研究同构和异构的分布式置换流水车间调度问题时,只考虑工件加工时产生的碳排放、机器待机时产生的碳排放以及工件在加工过程中辅助物料消耗产生的碳排放。
[0095]
基于以上分析和研究,本实施例提供了一种分布式流水车间调度方法,参考图2,该方法包括以下步骤:
[0096]
s1:获取分布式流水车间的参数,所述参数包括工件总数、工厂总数、各工厂中的机器总数、每个工件的工序数、每台机器的加工速度及速度等级数、每台机器各速度等级对应的功耗和每个工件每道工序的标准处理时间;
[0097]
s2:设置约束条件,根据所述分布式流水车间的参数和约束条件构建分布式流水车间调度问题模型,所述分布式流水车间调度问题模型以最小化最大完工时间和总碳排放量为目标;
[0098]
可选地,步骤s2中的约束条件包括:
[0099]
所有工件都可以在任意的工厂中加工,一旦工件被分配到某个工厂中,该工件的所有工序必须在指定的工厂中进行,不能转移到其他工厂;
[0100]
每个工厂相当于一个具有不同机器的置换流水车间,即每个工厂中机器的加工能力不同,各工厂中的每个工件在机器上的加工次序相同,且每台机器加工各工件的顺序也相同;
[0101]
各工厂中的所有机器都有不同的加工速度等级,机器的运行速度在工件加工前确定,一旦机器开始加工工件,其加工速度不能改变;
[0102]
每台机器一次最多只能处理一个工件的一道工序,机器上的前一个工件加工完后才能开始加工后一个工件,且工序加工过程中不能被打断;
[0103]
各工件在机器上加工时,除第一道工序外,其余每道工序只能在前一道工序加工完成后才能开始加工。
[0104]
步骤s2中的总碳排放量包括:工件加工时产生的碳排放、机器待机时产生的碳排放以及工件在加工过程中辅助物料消耗产生的碳排放;
[0105]
各环节的碳排放量采用机器消耗的实际功率或能源乘以相关碳排放系数的方式计算得到。
[0106]
分布式异构流水车间调度问题建模所用到的符号说明如表1:
[0107]
表1问题建模符号含义
[0108]
[0109][0110]
分布式异构流水车间调度问题的数学模型如下:
[0111]
min{c
max
,ce}
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(18)
[0112][0113][0114][0115][0116]
[0117][0118][0119][0120][0121][0122][0123][0124]
ce
total
=ce
run
ce
idle
ce
au
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(31)
[0125][0126][0127][0128]
其中,c
l,0,f
=0。式(1)表示目标函数,即最小化最大完成时间和总碳排放;式(2) 保证每个工件只能分配给一个工厂,并且只能分配到该工厂的一个位置;式(3) 表示在n
×
f个可能的位置中,必须有n个位置被占据;式(4)保证每道工序o
i,j
可以以一个速度进行加工;式(5)表示工序o
i,j
的实际加工时间;式(6)确保工厂f中第一台机器上第一个工件的开始加工时间为0;式(7)确保工厂f中每台机器上位置l的工件只能在前一台机器上的相同工件处理完成后开始加工;式(8)确保每个工件只能在同一工厂分配给同一台机器的上一个工件完成后才能开始加工;式(9) 表示工厂f的完成时间;式(10)表示整个调度方案的最大完成时间;式(11)表示机器加工时产生的碳排放量;式(12)表示机器待机时产生的碳排放量;式(13)表示工件加工时消耗辅助物料产生的碳排放量;式(13)表示整个调度方案产生的总碳排放量;所有的变量定义为式(14)-(16),其中决策变量x
i,l,f
给出了每个工件的工厂分配和在工厂内的加工顺序,决策变量给出了每道工序加工时的速度选择。
[0129]
s3:采用知识驱动的多目标memetic调度方法对所述分布式流水车间调度问题模型进行求解,输出最优分布式流水车间调度方案。
[0130]
具体地,本发明提出了一种知识驱动的多目标memetic调度方法 (knowledge-driven memetic algorithm,kdma)来求解分布式异构流水车间调度问题(distributed heterogeneous flow shop scheduling problem with dual carbon targets,dc-dhfsp),以最小化最大完成时间和总碳排放量。kdma方法的流程图如图3所示,其中主要步骤如下:
[0131]
s31:针对所述分布式流水车间调度问题模型,对调度方法中的个体进行编码;
[0132]
有效的编码和解码方法可以减少搜索空间,提高调度质量,特别是对于大规模复杂问题。对于分布式异构流水车间调度问题,所有工件应先分配给各个工厂,然后在每个工
厂中确定工件的加工顺序以及加工工件时机器的加工速度。因此,本发明设计了一种双序列的编码和解码策略来解决该问题。
[0133]
该问题的编码由两个序列组成,分别是每个工厂的工件分配序列(记为o)和分配到各工厂中工件在各机器上加工的速度等级序列(记为v)。例如,针对两个工厂、五个工件和三台机器的dc-dhfsp问题的工件分配序列为o=[1,3,5;2,4],则该序列表示工件o1、工件o3和工件o5被分配到工厂f1,且按照此先后顺序在工厂f1中进行加工,工件o2和工件o4被分配到工厂f2进行加工;加工速度序列v=[2,1,3;1,2,3;3,2,1;1,2,1;3,1,2],表示工件o1的三道工序的加工速度等级为[2,1,3],表示工件o3的三道工序的加工速度等级为[1,2,3],表示工件o5的三道工序的加工速度等级为[3,2,1],表示工件o2的三道工序的加工速度等级为[1,2,1],表示工件o1的三道工序的加工速度等级为[2,1,3],表示工件o4的三道工序的加工速度等级为[3,1,2],编码方式如图4和图5所示。
[0134]
该问题的解码需要解决两个问题:(1)工厂的工件分配;(2)各工厂的工件顺序。根据问题特点,本发明采用了最早完成工厂(ecf)规则的译码机制。更准确地说,每一项任务都被分配给了能完成任务时间最早的工厂。ecf规则可以在一定程度上有效地平衡各工厂之间的工作量。
[0135]
s32:采用混合初始化策略生成初始解;
[0136]
组合优化问题初始解的质量对求解算法的性能影响较大,具有良好多样性和收敛性的初始解能有效提升算法性能。一般来说,很难找到满足双目标(即makespan和总碳排放量)的最优解。为了使部分初始解尽量向双目标的最优方向靠近,根据分布式异构流水车间调度问题编码的特点,本发明提出了一种混合初始化策略。
[0137]
nawaz-enscore-ham(neh)启发式算法已被证明是处理流水作业调度问题最有效的启发式算法之一。本发明提出了一种改进的neh(modifiednawaz-enscore-ham,mneh)算法,用于在求解问题时生成一个具有最小最大完成时间的初始解。mneh算法步骤如下:
[0138]
步骤1:生成一个随机的初始工件分配序列o=[o1,...;...,on]和工件加工速度等级序列v=[v1,...;...,vk];
[0139]
步骤2:将所有工件的加工速度提高到最高等级,即将所有机器的加工速度设置为最大;
[0140]
步骤3:将每个工件oi(i=1,2,...,n)一次插入到所有工厂的所有可能位置,并选择具有最小makespan值的调度序列;
[0141]
步骤4:插入工件oi后的调度序列将用于下一个工件的插入,直到所有工件都被分配到工厂。
[0142]
此外,针对最小化总碳排放量的目标,本发明设计了以下策略来生成一个具有最小总碳排放量的初始解:首先,对所有工件按照加工额定功率进行非升序排序;其次,将所有工件的加工速度设置为最低;然后,按照排序顺序,将各个工件尝试插入到所有可能的位置,并计算各个位置的碳排放量;最后,选择其中碳排放量最小的位置作为工件最终分配位置,直到所有工件分配完毕。其余的初始解随机生成,以保持种群的多样性。
[0143]
s33:采用锦标赛选择算子、pmx算子和交换变异算子对解空间进行更新;
[0144]
在算法的搜索过程中,通常采用交叉和变异算子来更新解空间。在执行交叉和变异操作之前,本发明采用二进制锦标赛选择算子从种群中选择进行更新操作的双亲。根据
分布式异构流水车间调度问题编码的特点,本发明采用在调度领域广泛应用的pmx(partially mapped crossover)算子和交换变异算子来进行更新操作。
[0145]
pmx算子的操作步骤如下:
[0146]
步骤1:在选中的双亲染色体上随机选择两个位置,并将这两个位置之间的元素定义为匹配的子字符串,如图6所示;
[0147]
步骤2:交换双亲染色体的两个匹配子字符串来获得两个临时子代染色体,如图7所示;
[0148]
步骤3:根据交换的两组基因确定并映射冲突工件的关系,如图8所示;
[0149]
步骤4:根据映射关系,确保工件序列可行,无需对子字符串进行任何更改,如图9所示。
[0150]
交换变异操作是在选择的双亲染色体上,分别随机选择两个基因的位置并交换这两个位置上的工件。
[0151]
s34:通过知识驱动的局部搜索策略获取最优解,最优解即为分布式流水车间调度方案。
[0152]
根据现有研究,局部搜索启发式算法是解决单目标优化问题(single-objectiveoptimization problems,sop)的有效方法之一。然而,在多目标调度问题中,多个目标之间存在冲突,一个目标的优化可能导致另一个目标的劣化。因此,之前对单目标优化问题有效的局部搜索启发式算法不能直接应用于dc-dhfsp。本发明分析总结了dc-dhfsp的问题特性,设计了一种知识驱动的局部搜素策略,以此来提升算法性能。在介绍知识驱动的局部搜索策略之前,先介绍一下关于 dc-dhfsp的三种性质。
[0153]
性质1:dc-dhfsp的多目标函数可以简单定义为minf(π)=[f1(π),f2(π)],其中f1和f2分别表示makespan和总碳排放量。当且仅当且时,则称解π1支配解π2(记为ap b)。
[0154]
性质2:在dc-dhfsp中,关键路径是指从整个调度过程开始到最后一个工件加工完成的连续作业路径,关键路径上的任意两个工件之间不存在等待时间,且关键路径的长度等于一个调度方案的完成时间;关键工厂是指在分布式调度过程中具有最大完成时间的工厂。
[0155]
性质3:dc-dhfsp中所有机器都有不同的速度等级,机器不同的加工速度对应不同的功率,因此,当机器的加工速度越大,机器的加工时间越短,但机器的加工功率越高。
[0156]
根据上述特性,可以在不影响最大完成时间的前提下,通过降低关键工厂和非关键工厂中非关键路径上工件的加工速度,可以降低碳排放量。同时,通过移动关键工厂内关键路径上的工件,可以进一步降低最大完成时间。因此,本发明提出的知识驱动局部搜索策略由三种操作算子组成:关键工厂中的工件移动、关键工厂中的降速以及非关键工厂中的降速。三种操作算子的说明如下:
[0157]
(1)关键工厂中的工件移动:在关键工厂中,选择关键路径上的一个工件,将该工件插入到该关键工厂的其他所有可能位置中;
[0158]
(2)关键工厂中的降速:在不影响最大完成时间的前提下,降低关键工厂中非关键路径上某一工件的加工速度;
[0159]
(3)非关键工厂中的降速:在不影响最大完成时间的前提下,降低非关键工厂中非
关键路径上某一工件的加工速度。
[0160]
对于一个试验解π,通过对π执行上述三种局部搜索策略,得到一个新解π

,若得到的新解π

支配原始解π,则用新解π

替换原始解π,否则使用原始解π。这种知识驱动的局部搜索策略在解决dc-dhfsp时,可以在不影响一个目标值的情况下,优化另一目标值,从而提高解的质量。
[0161]
为了验证本发明提出的初始化策略、局部搜索策略以及知识驱动的多目标 memetic调度方法(kdma)的有效性,本发明设计了仿真对比实验。
[0162]
首先,构造了用于实验的实例数据集,实例包含的工件数量n={20,50,100},机器数量m={2,5,8},工厂数量f={2,3,4,5,6},每个组合{n,m,f}包含10个不同的实例,共450个实例。工件的标准处理时间p
i,j
服从[10,50]上的离散均匀分布,工件的实际处理时间p
i,j,f
=p
i,j
/vi,每台机器有不同等级的运行速度,vi表示机器的第i个运行速度,机器的运行速度服从[1.0,1.5]上离散均匀分布。
[0163]
其次,为了衡量所提出初始化策略和局部搜索策略的有效性,将运用了初始化策略和局部搜索策略的调度方法(知识驱动的多目标memetic调度方法,记为 kdma)与未使用初始化策略的kdma调度方法(记为non initialized kdma) 和未使用局部搜索策略的kdma(记为non loc-searched kdma)进行比较。每个算法在每个实例中独立运行10次,都采用相同的终止标准。运行后三种算法分别得出的pareto前沿如图10所示。
[0164]
再次,为了验证kdma在求解分布式异构流水车间调度问题时的有效性,本发明将kdma与目前主流的多目标优化算法进行比较,包括nsgaii、 moea/d和piceag。同时,所有算法都采用本发明的编码解码机制、交叉操作、变异操作、种群初始化策略和局部搜索策略,且都采用相同的终止标准,每个算法在每个实例上独立运行10次。kdma、nsgaii、moea/d和piceag运行后的结果如图11所示。
[0165]
从图10和图11中可以明显看出,kmda得出的pareto解集的最大完成时间值和碳排放量值都低于non initialized kdma、non loc-searched kdma、 nsgaii、moea/d和piceag等算法。并且从解的多样性、算法的收敛性和pareto 解集分布的均匀性等方面进行评估,发现kdma的性能要优于其他算法。因此,本发明提出的混合初始化策略和知识驱动的局部搜索策略在改进解的质量和提高算法性能方面是有效的,本发明提出的kdma算法在解决分布式异构流水车间调度问题上是优于其他算法的。
[0166]
作为可选地实施方式,本实施例提供了一种分布式流水车间调度装置,包括以下模块:
[0167]
获取模块,用于获取分布式流水车间的参数,所述参数包括工件总数、工厂总数、各工厂中的机器总数、每个工件的工序数、每台机器的加工速度及速度等级数、每台机器各速度等级对应的功耗和每个工件每道工序的标准处理时间;
[0168]
构建模块,用于设置约束条件,根据所述于分布式流水车间的参数和约束条件构建分布式流水车间调度问题模型,所述分布式流水车间调度问题模型以最小化最大完工时间和总碳排放量为目标;
[0169]
求解模块,用于采用知识驱动的多目标memetic调度方法对所述分布式流水车间调度问题模型进行求解,输出最优分布式流水车间调度方案。
[0170]
需要说明的是,在本发明中,术语“包括”、“包含”或者其任何其他变体意在涵盖非
排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0171]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为标识。
[0172]
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献