基于智能制造的混合流水车间插单动态调度
2022-10-21程胜明,王雅君,张昕晨,王耐东
程 胜 明, 王 雅 君, 张 昕 晨, 王 耐 东
(大连工业大学 机械工程与自动化学院, 辽宁 大连 116034 )
0 引 言
在当今互联网、智能制造和人工智能迅速崛起的时代,信息技术在制造业中起到更加重要的作用。国内外对智能制造技术的研究成果丰硕,其中Zhuang等[1]提出数字孪生在复杂产品装配过程中质量管理与控制的方法;Liu等[2]提出一种数字孪生驱动的快速个性化设计的方法。但是,研究成果中关于智能制造具体应用在混合流水车间的研究较少。
混合流水车间调度问题(hybrid flow-shop scheduling problem,HFSP)广泛应用于机械、化工、纺织等行业,这种车间具有很高的生产效率,能够适应多品种的工件生产。对于混合流水车间,Ruizr等[3]对k阶段的混合流水车间调度问题做了研究,给出了求解算法的设计。带有缓冲时间的和模糊加工时间的研究也有很多,Tarif等[4]研究了带有准备时间的多目标混合流水车间调度问题;Shen等[5]对动态因素,建立调度模型。在算法方面,比如Alaykyran等[6]提出蚁群算法来解决混合流水车间调度问题;王凌等[7]使用人工蜂群算法解决混合流水车间调度问题;张凤超[8]研究了分布估计算法解决混合流水车间调度问题;苏志雄等[9]采用算法的正逆序的方法求解混合流水车间调度问题;崔建双等[10]使用混合算法求解混合流水车间调度问题;屈国强等[11]使用启发式算法求解混合流水车间调度问题。
本研究将智能制造和混合流水车间动态调度结合起来,建立动态调度模型,针对现实生产中出现紧急订单的问题,提出一种动态调度的方法,再结合智能制造环境下,通过信息之间的融合交互,实现在智能制造环境下的调度过程,使用遗传算法验证所提模型的有效性。
1 基于智能制造的车间动态调度框架
智能制造车间动态调度框架,如图1所示。物理车间主要组成为工作人员、物料和设备,其主要任务是生产产品,并提供当前的数据信息。孪生车间对物理车间进行仿真建模,并把仿真的结果和真实情况进行对比,进一步对物理模型进行优化,各个模型之间具有协同交互作用。信息层主要对孪生车间传递的数据、知识和规则进行分析并存储在相应的数据库中,信息层把物理车间和孪生车间结合起来,上传的信息会被处理,并作为上层系统决策的依据。系统层是核心,使每个模块都互相联系,通过信息层处理过的数据,系统层对车间进行调度,达到智能制造需求的目标。
图1 基于智能制造的车间调度框架Fig.1 Scheduling framework of the workshop based on intelligent manufacturing
2 建立模型
在混合流水车间中有S个加工阶段,每个阶段最少有一台可加工设备,有的加工阶段存在两个以上的加工设备。t=0时,订单上有N个工件开始加工,在收到紧急订单时,N1个紧急工件到来,安排所有未完成工件重调度生产。以最小完成时间为目标建立模型,数学模型和其他相关约束如式(1)~(5)所示。
C=max(c1,c2,c3,…,cn)
(1)
ci=STij+PTij
(2)
FTij+PTij+1=FTij+1
(3)
STij+PTij=FTij
(4)
(5)
式中:C为所有工件的最大完成时间;ci为第i个工件的完成时间,i=1,2,3,…,n;FTij为第i个工件的第j道工序的完成时间,j=1,2,3,…,S;PTij为第i个工件的第j道工序的加工时间;STij为第i个工件的第j道工序的开始加工时间;Xijk为0-1决策变量,若为1,表明工件i的第j道工序在机器k上加工,否则为0;mj为某一阶段设备总数,mj≥1。
3 算法模型求解
混合流水车间问题是复杂的非线性难题,元启发式算法能够很好地解决这种问题,如遗传算法、蚁群算法和粒子群算法等。因为遗传算法的操作简单,通用性强,鲁棒性好[12],因此,解混合流水车间的问题选择遗传算法。
3.1 编 码
染色体使用工件工序编码方法,一条染色体有两个子串,分别代表机器的选择和工件的加工工序,染色体编码如图2所示。
图2 染色体编码示意图Fig.2 The schematic diagram of chromosome coding
3.2 交叉算子
选择POX(precedence preserving order-based crossover)交叉算子,随机选择两个机器选择串染色体,并令A=(1,3),B=(2),并在两个父代中间生成一条空白染色体,把父代1属于A的基因复制到空白染色体中,同理把父代2属于B的基因复制到对应的空白处,如图3所示。
图3 机器串交叉示意图Fig.3 The schematic diagram of the crossover of machine strings
同理工件加工串选择也选择POX交叉算子,结果如图4所示。
3.3 变异算子
变异算子一般不用于工件选择串,因为变异时可能产生某个工件多一道不存在的工序,产生不可行调度方案,所以变异操作针对机器选择串进行。变异算子选择寻优变异法:假设某阶段有3台加工机器,其加工效率机器1小于机器2,机器2等于机器3,则把1号机器往2号、3号机器变异。变异后,计算适应度值(最小完成时间)和原来染色体的适应度值进行比较,适应度值大就进入下一代,否则原染色体不变。变异操作如图5所示。
图5 寻优变异示意图Fig.5 The schematic diagram of the optimization of mutation
4 插单动态调度流程设计
当有新的紧急订单出现时,生成新的调度方案,具体流程如图6所示。系统接收到订单生成初始调度方案,在执行当前方案过程中,系统没有接收到紧急订单就执行当前方案;如果有紧急订单,调用车间实时监控查看哪一个车间的空闲设备多,在空闲多的设备车间,查看当前未加工工件的序号,并把数据上传到系统,系统根据未加工的工件和紧急订单的工件数据重新安排生产,并生成新的调度方案,并把新生成的方案作为当前方案,直到工件加工完成。
5 案例分析
以某企业实际生产为例,初始订单为加工7种工件,每种工件的批量如表1所示。使用MATLAB R2019b在Windows10的64位操作系统上实现。
根据工件的加工信息,生成初始调度方案的甘特图,如图7所示。图中的数字代表一定的含义,例如5-1表示第5个工件的第1道工序在1号机器上加工。
插单情况下,对加工零件进行重调度。t=2 h 时接收到紧急订单8,系统对工件需要重新调度,接收到紧急订单每道工序的加工时间如表2所示,插单时正在加工的工件状态如表3所示。
表1 工件加工信息表Tab.1 Processing information of work pieces
图7 初始调度方案甘特图Fig.7 Gantt chart of the initial scheduling scheme
正在加工的工件接着在当前机器上加工,剩余待加工零件和紧急订单的工件重新安排生产,并把加工时间输入遗传算法中,经过种群的不断迭代,变异和交叉,寻找最优解,最后得到的结果如图8所示,最大完成时间为22 h。
表2 J8紧急订单信息表Tab.2 Emergency order information of J8
表3 初始订单工件加工状态Tab.3 Processing status of initial order of work pieces
图8 紧急插单时重调度方案甘特图Fig.8 Gantt chart of rescheduling scheme of emergent order inserting
在传统的混合流水车间,如果工厂出现了紧急订单的情况,基本上都是人工安排生产,而人工排产的结果也是因人而异,根据以往工人的排产结果,取加工时间最短的一次,结果如图9所示,最大完成时间为35 h。前后对比得出完成时间提前13 h,在小批量的生产中,使用遗传算法进行排产,效率提高约35%。
图9 人工排产方案Fig.9 Scheme of manual scheduling
6 结 论
把智能制造理念和混合流水车间相结合起来,充分利用车间信息和数据,使上层系统能够及时调用车间资源,提高机器的使用率,保证车间高效运行。通过遗传算法得出插单动态调度甘特图,通过和人工排产方案完成时间对比,在小批量生产的情况下,生产效率提高约35%,混合流水车间和智能制造相结合在插单调度方面发挥了一定的优势。