技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种求解带运输和设置时间的航空结构件柔性车间调度的方法  >  正文

一种求解带运输和设置时间的航空结构件柔性车间调度的方法

  • 国知局
  • 2024-07-31 22:48:28

本发明涉及智能制造领域,尤其涉及一种求解带运输和设置时间的航空结构件柔性车间调度的方法。

背景技术:

1、在航空结构件实际生产中,一台机器在加工不同工序前,由于各结构件不同的加工工艺,预热、更换加工夹具等设置时间会消耗机器资源,如若频繁地更换机器上加工的结构件,势必造成资源和时间的浪费,因此,需要在生产调度中考虑工序加工前的设置时间。航空结构件因其生产规模大,车间机器之间也有一定的距离,在加工结构件相邻工序之间需要将结构件从上一个加工机器搬运到下一个加工机器上,搬运结构件的时间以及能耗对整个生产过程有着一定的影响,因此航空结构件生产需要考虑运输时间。同时,考虑生产成本将生产总能耗纳入调度目标,对考虑运输和设置时间的柔性作业车间调度(flexiblejob-shop scheduling problem with transportation and setup time,fjspts)展开研究,但已有研究中,存在算法收敛速度慢、局部搜索能力低等问题。

技术实现思路

1、发明目的:本发明的目的是提供一种求解带运输和设置时间的航空结构件柔性车间调度的方法,能有效减少结构件设置时间,优化完工时间。

2、技术方案:本发明求解带运输和设置时间的航空结构件柔性车间调度的方法,包括步骤如下:

3、s1,建立考虑运输和设置时间的航空结构件柔性车间调度的模型,确定工序加工顺序以及工序选择加工机器,将最大完成时间最小和总能耗最小作为模型的目标函数;

4、s2,选取工序约束、机器约束、结构件加工\设置时间约束和运输时间约束为约束条件;

5、s3,设计混合jaya算法,初始化种群,采用双层编码的方式表示染色体信息:第一层为工序编码串os,用来确定结构件的加工顺序;第二层为机器编码串ms,用来表示工序选择加工的机器;

6、s4,对种群采取非支配排序,并初始化外部档案;

7、s5,判断是否达到终止条件,如果达到则输出最优解;否则执行步骤s6;

8、s6,对所有非最优的个体进行jaya优化,通过远离最劣个体同时学习最优个体,更新个体;

9、s7,对所有个体进行排序,得到不同特征的个体,采用多种局部搜索策略优化种群优质个体与劣质个体,转至执行步骤s5。

10、进一步,步骤s1中,所述目标函数如下:

11、最小化结构件的完成时间f1:

12、

13、其中,ci表示结构件i的完工时间,表示所有结构件中完工时间最大的一个结构件的完工时间;n为结构件的总数;

14、最小总能耗f2:

15、f2=mintec=min(pe+ie+te+se)

16、其中,pe、ie、te、se分别为加工能耗、空闲能耗、运输能耗、设置能耗。

17、进一步,步骤s2中,约束条件如下:

18、任意结构件都从0时刻开始被处理;

19、同一时间同一台机器上只能处理一个结构件;

20、同一个结构件的同一道工序在同一时间只能被一台机器处理,直到该工序处理完成;

21、同一个结构件的工序之间有先后顺序约束,但是不同结构件的工序没有先后顺序约束;

22、不同的结构件之间没有先后顺序的约束;

23、所有结构件均考虑在0时刻开始运输,结构件间运输时间相互独立;

24、所有结构件均考虑设置时间,且结构件在设置完成之后才能加工,同机器同结构件紧邻工序无设置时间;

25、约束条件如下:

26、sptij+xijk×ptijk≤cptij和cpti(j-1)+ttijk≤sptij表示同一结构件的工序具有加工顺序约束;

27、cmk(l-1)+stijk×yijk≤smkl表示同一台机器上的相邻工序之间有设置时间约束;cptij≤cmax表示结构件的完工时间约束;

28、sstij+stijk×yijk+ptijk≤sstxy+l(1-zijxyk)和cpti(j-1)+ttijk≤sptij+l(1-yijxyk)表示任意时刻一台机器只能加工一道工序;

29、表示在某一时刻一道工序只能由一台机器加工;sstij≥0,cstij≥0,sttij≥0,cttij≥0,sptij≥0,cptij≥0,ci≥0表示所有开始时间和结束时间都非负;

30、其中,sptij表示工序oij加工开始时间;xijk表示0-1决策变量:当oij选择在mk上加工,则xijk=1;否则xijk=0;ptijk为工序oij于mk的加工时间;ttijk是oij在到达mk之前的运输时间;stijk表示oij于mk的设置时间;yijk是决策变量,若oi(j-1)不在mk上加工且oij在mk上加工时,则yijk=1,否则yijk=0;cmk(l-1)表示mk上第(l-1)个加工工序的加工结束时间;yijk是决策变量,若oi(j-1)不在mk上加工且oij在mk上加工时,则yijk=1,否则yijk=0;smkl表示mk上第l个加工工序的加工开始时间;cptij是oij加工结束时间,cpti(j-1)是oi(j-1)加工结束时间;smkl表示mk上第l个加工工序的加工开始时间;l表示一个很大的数;cstij表示oij设置结束时间,sttij表示oij运输开始时间,cttij表示oij运输结束时间;sstij是oij设置开始时间。

31、进一步,步骤s3中,以一个调度方案作为一个个体,每个调度方案包括工序编码串os和机器编码串ms,所有调度方案的集合作为种群;初始化种群时,设置参数包括种群大小population,迭代次数maxiter,初始化规则比例ρor;

32、对于工序编码串os,采用随机方法生成;

33、对于机器编码串ms,采用基于glr初始化方式的改进方法,其中包含全局选择gs、局部选择ls和随机选择rs;则初始化规则如下:

34、全局选择gs:每次安排一个工序机器选择后,需要累加计算每台机器的加工、设置时间以及能耗总和,在安排下一个工序的时候安排选择累计时间和能耗最小的机器;

35、局部选择ls:每次对一个结构件选择完毕时,机器时间、能耗数组需要重新设置为0;然后,安排同结构件的下一道工序时需要选择累计时间和能耗最小的机器;

36、随机选择rs:一部分种群的机器选择部分采用随机初始化方法。

37、进一步,步骤s6中,对所有非最优的个体进行jaya优化,包括机器编码串ms优化和工序编码串os优化,其中,非最优个体进行jaya优化时都进行趋优避劣的操作,最优个体best从非支配等级为1的个体集合中随机选择一个,最劣worst从非支配等级最大的集合中随机选择一个;

38、所述机器编码串ms优化的步骤如下:

39、sa1,遍历当前个体x的ms串基因位,找出与worst机器选择编码部分编码值相同的基因,将其他基因位上的编码复制到x1;

40、sa2,对于x1编码为空的基因位,将best相同基因位上的编码复制到x1的空基因位上得到x2,则x2为进化后的个体;

41、工序编码串os优化的步骤如下:

42、sb1,遍历当前个体x的工序排序编码串,标记与worst工序排序编码中编码值相同的基因位,并将x中其它基因位上的编码复制到x1中;

43、sb2,从best工序排序编码中从头开始找与x1中编码相同的基因位,进行标记,将其它基因位的编码复制到best1中;

44、sb3,将x1的编码复制到x2中,将best1中非空码位的编码依次填入x2中空基因位处,得到x2为进化后的个体。

45、进一步,步骤s7中,对所有个体进行基于目标值的排序,对完工时间目标值排序前10%的个体进行基于完工时间的负载平衡,对总能耗排序前10%的个体进行基于能耗的负载平衡;对所有个体进行非支配等级排序,对等级为1的个体进行基于关键路径的邻域搜索,对等级排序最后5%的个体进行强化搜索;

46、基于完工时间的负载平衡,具体实现步骤如下:

47、sc11,计算当前个体y1的每一台机器上的完工时间,找出完工时间最大的机器;

48、sc12,随机选择该机器上的一个工序操作,从该工序操作的可选机器集中重新找一个当前负载最小的机器加工;

49、sc13,将机器编码串ms更新,重新计算更新个体y1’的最大完工时间与总能耗并与更新前的个体y1的目标值比较,若不受之前的解支配,则替换之前解,否则不替换;

50、基于能耗的负载平衡,具体实现步骤如下:

51、sc21,计算当前个体y2的每一台机器上的能耗,找出能耗最大的机器;

52、sc22,随机选择该机器上的一个工序操作,从该工序操作的可选机器集中重新找一个当前能耗最小的机器加工;

53、sc23,将机器编码串ms更新,重新计算更新个体y2’的完工时间与总能耗并与更新前的个体y2的目标值比较,若不受之前的解支配,则替换之前解,否则不替换;

54、基于关键路径的邻域搜索,设计4种邻域结构如下:

55、邻域结构n1:随机选择该关键路径上的一道工序,将它更换到加工时间最小的机器;

56、邻域结构n2:随机选择该关键路径上的一道工序,将它更换到运输时间最小的机器;

57、邻域结构n3:随机选择该关键路径上的一道工序,将它更换到加工能耗最小的机器;

58、邻域结构n4:找出该关键路径上在每台机器上的关键块cbsk,若cbsk中有同结构件的但不为紧邻加工顺位的相邻工序,则将紧邻工序插入到前一个工序后;否则计算连续工序之间的设置时间,并找出cbsk上具有最大设置时间的工序,将其插入到关键块上其他工序的前面/后面;

59、对等级排序最后的5%的个体进行l1、l2两种强化搜索:

60、l1:随机选择当前个体z1的工序编码串os上的2个基因位,将第二个基因位上的基因插入到第一个基因位前,更新个体z1’;若更新后的个体不受旧解支配,则替换;否则,不替换;

61、l2:随机选择当前个体z2的机器编码串ms上的1个基因位,更换该工序到它的其他可选加工机器上,更新个体z2’;若更新后的个体不受旧解支配,则替换;否则,不替换。

62、本发明与现有技术相比,其显著效果如下:

63、1、本发明中,初始化生成的种群,同时考虑了时间和能耗,平衡了机器在两个目标值上的负载,与现有方法中随机初始化相比,能提高初始种群个体方案的质量;

64、2、为了加快算法的全局搜索能力,本发明提出了一种jaya优化算法,针对普通个体,以趋优避劣的思想引导,使种群快速进化,其中,优质个体和劣质个体是从非支配排序等级最高和最低梯队中随机选择的,保证个体进化的质量同时也保证了种群多样性;

65、3、考虑优质个体与劣质个体对种群的引导作用,本发明提出基于个体特征的局部搜索策略,充分挖掘优质个体的更优解,提高算法的寻优能力,同时对劣质个体进行优化,提高种群整体质量。设计了基于目标值的负载平衡,与现有的负载平衡策略不同于,本发明设计的负载平衡策略不局限于机器时间负载,而是计算各机器上各个目标值(完工时间、能耗)分散在各机器上,以各机器的目标值计算机器负载,然后通过设计更新算子来平衡各机器负载。设计了关键路径搜索,考虑结构件加工前需要设置时间,设计关键块上根据结构件设置时间大小的更新方式,有效减少结构件设置时间,优化完工时间。劣质个体进行随机强化搜索,提高劣质个体质量,以优化算法收敛速度。

本文地址:https://www.jishuxx.com/zhuanli/20240730/194723.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。