基于非强制空闲时间的作业车间调度方案鲁棒优化方法与流程

文档序号:19740820发布日期:2020-01-18 05:11阅读:192来源:国知局
本发明涉及一种作业车间调度
技术领域
:,是一种基于非强制空闲时间的作业车间调度方案鲁棒优化方法。
背景技术
::作业车间的定义可描述为:作业车间调度问题可描述为:n个工件在m台机器上加工,每个工件ji(i=1,…,n)包含m道工序,工序间存在工艺约束,每个工件只经过每台机器mj(1,…,m)一次;oi,j表示工件ji在机器mj上加工工序,oi,j的加工时间pi,j为常数。工件在0时刻到达,所有机器在开工前均可用,每台机器同一时间只能加工一个工件,每个工件同一时间只能在一台机器上加工。在生产前调度计划已经制定,且在加工过程中工序在机器上的加工顺序不变。在当前jsp研究过程中,往往假设所有的参数都是已知常量,然而在实际的生产过程中,由于生产系统具有随机和动态性,存在各种随机和不可预见的扰动因素扰乱初始调度,影响调度目标实现,扰动因素如机器故障、设备加工能力变化、紧急插单和返工等。如何应对调度计划执行过程中出现的诸多扰动因素已成为企业界和学术界关注的重点。作业车间鲁棒性调度作为扰动环境下车间进度管理的一种重要手段,在考虑扰动因素情况下生成抗干扰能力强的车间调度方案,鲁棒性调度方案的生成方式可分为空闲时间插入和非空闲时间插入两类。但目前插入空闲时间的方式在车间调度领域应用较少。技术实现要素:本发明提供了一种基于非强制空闲时间的作业车间调度方案鲁棒优化方法,克服了上述现有技术之不足,其能有效解决现有作业车间调度方案鲁棒优化方法存在的不能结合插入非强制空闲时间进行作业车间鲁棒性调度方案优化的问题。本发明的技术方案是通过以下措施来实现的:一种基于非强制空闲时间的作业车间调度方案鲁棒优化方法,包括以下步骤:s1,根据调度基础数据生成初始种群,初始种群包括若干个原始调度方案;s2,基于鲁棒性及遗传算法对初始种群中的个体进行优化,构建初始调度方案集合,并将初始调度方案集合以工序关联网络图的方式输出;s3,在初始调度方案集合中插入非强制空闲时间,得到插入非强制空闲时间的调度方案集合;s4,评估插入非强制空闲时间的调度方案集合中各调度方案的的鲁棒性,输出最优调度方案。下面是对上述发明技术方案的进一步优化或/和改进:上述s2中构建初始调度方案集合的具体包括:s21,获取初始种群的性能鲁棒性和稳定鲁棒性,采用遗传算法优化二者,输出对应的优化种群;s22,将两个优化种群合并作为第二阶段初始种群;s23,根据第二阶段初始种群建立加权目标,采用遗传算法优化加权目标,选取优化后的前h个个体,构建初始调度方案集合;s24,将初始调度方案集合以工序关联网络图的方式输出。上述s21和s22中采用遗传算法优化初始种群的过程包括:a、个体编码,采用两层编码方式,第一层编码代表所有工件中工序的工艺顺序,第二层编码代表工序所对应的机器;b、个体解码,对种群中染色体进行解码,在计算适应性函数之前还原工件在机器上的加工顺序;c、种群初始化,种群数目设为n,分别对实例进行两层编码,构建n条染色体;d、适应度计算,根据初始种群目标对种群中的个体进行评价,即采用性能鲁棒性与稳定性两个指标,要求两个目标在ρ1、ρ2权重下函数值最小,并在求解之前计算在机器故障扰动下各工序的期望完工时间e[ci,j(σr)];e、选择操作,采用轮盘赌选择法对种群中个体进行选择,首先计算个体被选中的概率计算每个个体的累计概率生成0-1随机数,若随机数属于[qi-1,qi],则选择i-1个体;f、交叉操作,从种群中任意取出两个个体,随机选定交叉位置进行单点交叉,按交叉后的染色体进行重新复制;g、变异操作,按变异算子从种群中选定pm·n个个体进行编译,将染色体中的随机的两个基因位置进行交换,相应的机器编码位置随之改变,生成新的染色体。上述所述适应度计算中求解在机器故障扰动下各工序的期望完工时间的具体过程为:a、设定机器故障服从weibull分布,得到下式所示的工序oi,j加工时出现故障的概率和工序故障期望维修时间其中,sri,j为工序oi,j的开工时间;cri,j为oi,j完工时间;tr为故障维修时间;θ、β分别为机器故障服从weibull分布的尺寸参数与形状参数;b、在初始种群中按开始加工顺序将工序的加工时间增加搜索该工序的后向关联工序,并通过下式更新后向关联工序的开工时间和完工时间其中,为后向关联工序不受到工序oi,j影响的最大时间值;为后向关联工序的加工时间;c、当所有工序都分别添加后,将上一步所获得各工序的完工时间视作e[ci,j(σw)]的近似值,从而得到在机器故障扰动下各工序的期望完工时间。上述s24中将初始调度方案集合以工序关联网络图的方式输出的具体过程包括:s241,构建产品工艺集合pr{oij},i=1,2....,m,i=1,2....,n;其中,i为零件的编号,j为工件的第j道工序,n为工件i的工艺长度;s242,机器加工次序集合mr{mrks},k=1,2....,n,s=1,2....,z;其中,k为机器的编号,s为机器k的第s加工工序,z为机器k加工工序的数量;s243,构建工序影响网络g{v,e,w};其中,节点集合v={vi},表示工序构成的集合,有向边集合e={eij},i,j∈v且i≠j,表示工序之间存在机器维或工件维上的关联,权重集合w={eij},i,j∈v且i≠j,表示工序之间的空闲时间。上述s3得到插入非强制空闲时间的调度方案集合的具体过程包括:s31,计算初始调度方案集合第n个调度方案中各工序的影响力;s32,确定插入非强制空闲时间的工序比例;s33,根据入非强制空闲时间的工序比例,按各工序的影响力选取前ω个工序,形成非强制空闲时间的工序集合ipr;s34,遍历非强制空闲时间的工序集合ipr,对其中的工序插入非强制空闲时间,增加相应工序间的空闲时间,后续受影响的工序按右移方式重新计算其开工时间和完工时间;s35,循环上述过程,遍历初始调度方案集合中所有的调度方案,输出插入非强制空闲时间的调度方案集合。上述s31中计算初始调度方案集合第n个调度方案中各工序的影响力的过程包括:s311,确定随机机器故障下工序实际的完工时间,进而得到工序oi,j的延迟风险ri,j;s312,计算工序oi,j对后向关联工序的影响能力其中,si,j表示节点的oi,j后向关联工序集合;表示工序ok,s与oi,j间的最小空闲时间之和;s313,结合上述步骤得到工序影响力上述s34中插入非强制空闲时间的大小通过下式进行计算:其中,表示工序oi,j与紧后关联工序之间非强制空闲时间大小;ri,j表示工序延迟风险;表示工序oi,j与紧后关联工序之间原空闲时间。上述s4中通过基于调度方案的性能鲁棒性和稳定鲁棒性建立加权目标,根据加权目标对插入非强制空闲时间的鲁棒性调度方案集合中的各调度方案进行评估,最后输出加权目标最小的调度方案。本发明采用遗传算法优化加权目标,构建初始调度方案集合,结合工序的延迟风险和工序对后向关联工序影响两个方面评价工序对调度方案稳定性的影响能力,给出非强制缓冲时间的设置方法,针对不同影响力的工序添加合理非强制缓冲时间,并评估插入非强制空闲时间的调度方案集合中各调度方案的的鲁棒性,输出最优调度方案。从而实现以较小的性能损失换取系统较高的稳定性,即有效改善调度稳定性的同时又能保证调度性能劣化程度较小,为车间生产提供更加稳定的调度方案。附图说明附图1为本发明实施例1的流程图。附图2为本发明实施例1中构建初始调度方案集合的流程图。附图3为本发明实施例1中将初始调度方案集合以工序关联网络图的方式输出的流程图。附图4为本发明实施例1中得到插入非强制空闲时间的鲁棒性调度方案集合的流程图。附图5为本发明实施例1中计算调度方案中各工序的影响力的流程图。附图6为本发明实施例2中维修时间tr不同时本发明与传统方法所得最优解的各指标的曲线变化图。附图7为本发明实施例2中维修时间tr相同时本发明与传统方法所得最优解的各指标的曲线变化图。具体实施方式本发明不受下述实施例的限制,可根据本发明的技术方案与实际情况来确定具体的实施方式。下面结合实施例及附图对本发明作进一步描述:实施例1:如附图1所示,该基于非强制空闲时间的作业车间调度方案鲁棒优化方法,包括以下步骤:s1,根据调度基础数据生成初始种群,初始种群包括若干个原始调度方案;上述根据调度基础数据生成初始种群时,需对调度基础数据进行数据预处理,数据预处理的过程包括a、获取订单数据、交货期、各工件的工艺路线、工件中各工序的加工时间、机器故障概率分布及维修时间;b、将获得数据整理成调度所需的标准格式,整理生成初始种群;上述初始种群即为原始调度方案的集合。s2,基于鲁棒性及遗传算法对初始种群中的个体进行优化,构建初始调度方案集合,并将初始调度方案集合以工序关联网络图的方式输出;s3,在初始调度方案集合中插入非强制空闲时间,得到插入非强制空闲时间的调度方案集合;s4,评估插入非强制空闲时间的调度方案集合中各调度方案的的鲁棒性,输出最优调度方案。下面是对上述发明技术方案的进一步优化或/和改进:如附图1、2所示,s2中构建初始调度方案集合的具体包括:s21,获取初始种群的性能鲁棒性和稳定鲁棒性,采用遗传算法优化二者,输出对应的优化种群;上述获取初始种群的性能鲁棒性和稳定鲁棒性的过程包括:(1)建立机器随机故障环境下作业车间鲁棒调度模型,作业车间鲁棒调度模型包括假设条件、目标函数及约束条件;a、假设条件,根据随机故障环境下作业车间的现状,设定具体位置订单中工件的加工时间已知;工件在机器上加工时间已知;机器故障概率分布服从weibull分布且维修时间为定值;b、目标函数,具体如下:a、根据下式获取初始种群的性能鲁棒性,性能鲁棒性即为调度方案在不确定环境下保持原有性能的能力,通常用调度目标的偏差度量;pr(σp)=e[cmax(σw)]-cmax(σp)其中,σp表示原调度方案,σw表示为扰动发生后实际调度方案;e[cmax(σw)]表示σw的期望最大完工时间,cmax(σp)表示σp的最大完工时间。b、根据下式获取初始种群的稳定鲁棒性,稳定鲁棒性即为车间制造系统保持原有状态的能力,通常用各工序的开工或完工时间的偏差之和度量;其中,n表示工件数量,m表示机器数量;e[ci,j(σw)]表示受到扰动影响实际调度方案σw中工序oi,j的期望完工时间,ci,j(σp)表示原调度方案σp中工序oi,j的完工时间。c、目标函数:其中,ρ1、ρ2为两指标在目标函数中的权重。d、约束条件:工序的开工时间不小于0;其中,表示计划调度σp中工序oi,j的开始加工时间;同一工件工序间的工艺约束;其中,表示工件j的第h道工序的加工机器号,表示σp中工件j的第h道工序开始加工时间,表示σp中工件j的第h-1道工序开始加工时间,表示σp中工件j的第h-1道工序加工时间;同一机器上不同工件间的加工顺序约束;其中,v为足够大的常数;zi,k,j为0-1决策变量,若机器mj上工件ji在jk之前加工,则zi,k,j=1,否则zi,k,j=0;计划调度中工序的位置约束关系当机器发生故障时,采用右移重调度策略,得到工序的实际开工时间和完工时间;其中,分别表示在故障场景w下oi,j的开工和完工时间,表示w场景下oi,j发生故障的次数;表示的工件维紧前工序完工时间,表示在编号为机器上加工的其他工序的完工时间,为0-1决策变量,若工序是机器维紧前工序则为1,否则为0。(2)根据机器随机故障环境下作业车间鲁棒调度模型,获取初始种群的性能鲁棒性和稳定鲁棒性。s22,将两个优化种群合并作为第二阶段初始种群;s23,根据第二阶段初始种群建立加权目标,采用遗传算法优化加权目标,选取优化后的前h个个体,构建初始调度方案集合;这里选取优化后的前h个个体,即为将优化后的个体按加权权重由小至大排序,选取前h个个体。s24,将初始调度方案集合以工序关联网络图的方式输出。如附图1、2所示,s21和s23中采用遗传算法优化初始种群的过程包括:a、个体编码,采用两层编码方式,第一层编码代表所有工件中工序的工艺顺序,第二层编码代表工序所对应的机器;b、个体解码,对种群中染色体进行解码,在计算适应性函数之前还原工件在机器上的加工顺序;c、种群初始化,种群数目设为n,分别对实例进行两层编码,构建n条染色体;d、适应度计算,根据初始种群目标对种群中的个体进行评价,即采用性能鲁棒性与稳定性两个指标,要求两个目标在ρ1、ρ2权重下函数值最小,并在求解之前计算在机器故障扰动下各工序的期望完工时间e[ci,j(σr)];e、选择操作,采用轮盘赌选择法对种群中个体进行选择,首先计算个体被选中的概率计算每个个体的累计概率生成0-1随机数,若随机数属于[qi-1,qi],则选择i-1个体;f、交叉操作,从种群中任意取出两个个体,随机选定交叉位置进行单点交叉,按交叉后的染色体进行重新复制;g、变异操作,按变异算子从种群中选定pm·n个个体进行编译,将染色体中的随机的两个基因位置进行交换,相应的机器编码位置随之改变,生成新的染色体。这里使用上述遗传算法优化初始种群(原始调度方案的集合),即使用上述遗传算法对初始种群进行两个阶段的优化,首先对原始调度方案的性能鲁棒性和稳定鲁棒性进行优化,优化后的种群合并(形成加权目标),使用遗传算法对其加权目标进行优化,最终形成初始调度方案集合,在对加权目标进行优化时,其迭代次数可为1000次。如附图1、2所示,遗传算法优化初始种群时,适应度计算中求解在机器故障扰动下各工序的期望完工时间的具体过程为:a、设定机器故障服从weibull分布,得到下式所示的工序oi,j加工时出现故障的概率和工序故障期望维修时间其中,sri,j为工序oi,j的开工时间;cri,j为oi,j完工时间;tr为故障维修时间;θ、β分别为机器故障服从weibull分布的尺寸参数与形状参数;b、在初始种群中按开始加工顺序将工序的加工时间增加搜索该工序的后向关联工序,并通过下式更新后向关联工序的开工时间和完工时间其中,为后向关联工序不受到工序oi,j影响的最大时间值;为后向关联工序的加工时间;c、当所有工序都分别添加后,将上一步所获得各工序的完工时间视作e[ci,j(σw)]的近似值,从而得到在机器故障扰动下各工序的期望完工时间。如附图1、3所示,s24中将初始调度方案集合以工序关联网络图的方式输出的具体过程包括:s241,构建产品工艺集合pr{oij},i=1,2....,m,i=1,2....,n;其中,i为零件的编号,j为工件的第j道工序,n为工件i的工艺长度;s242,机器加工次序集合mr{mrks},k=1,2....,n,s=1,2....,z;其中,k为机器的编号,s为机器k的第s加工工序,z为机器k加工工序的数量;s243,构建工序影响网络g{v,e,w};其中,节点集合v={vi},表示工序构成的集合,有向边集合e={eij},i,j∈v且i≠j,表示工序之间存在机器维或工件维上的关联,权重集合w={eij},i,j∈v且i≠j,表示工序之间的空闲时间。这里构建工序影响网络g{v,e,w}时,由于工序间由于存在工艺及机器加工顺序的约束关系,故存在两类时差,分别为机器维时差和工件维时差;机器维时差:其中,表示工序oij工件维的时差,表示工序oij工件维的紧后工序开始加工时间,表示工序oij的完工时间。工件维时差:其中,表示工序oij工件维的时差,表示工序oij工件维的紧后工序开始加工时间,表示工序oij的完工时间。如附图1、4所示,s3得到插入非强制空闲时间的调度方案集合的具体过程包括:s31,计算初始调度方案集合第n个调度方案中各工序的影响力;s32,确定插入非强制空闲时间的工序比例;s33,根据入非强制空闲时间的工序比例,按各工序的影响力选取前ω个工序,形成非强制空闲时间的工序集合ipr;s34,遍历非强制空闲时间的工序集合ipr,对其中的工序插入非强制空闲时间,增加相应工序间的空闲时间,后续受影响的工序按右移方式重新计算其开工时间和完工时间;s35,循环上述过程,遍历初始调度方案集合中所有的调度方案,输出插入非强制空闲时间的调度方案集合。如附图1、5所示,s31中计算初始调度方案集合第n个调度方案中各工序的影响力的过程包括:s311,确定随机机器故障下工序实际的完工时间,进而可得工序oi,j的延迟风险ri,j;s312,计算工序oi,j对后向关联工序的影响能力其中,si,j表示节点的oi,j后向关联工序集合;表示工序ok,s与oi,j间的最小空闲时间之和;s313,结合上述步骤得到工序影响力如附图1、2所示,s34中插入非强制空闲时间的大小通过下式进行计算:其中,表示工序oi,j与紧后关联工序之间非强制空闲时间大小;ri,j表示工序延迟风险;表示工序oi,j与紧后关联工序之间原空闲时间。如附图1所示,s4中通过基于调度方案的性能鲁棒性和稳定鲁棒性建立加权目标,根据加权目标对插入非强制空闲时间的鲁棒性调度方案集合中的各调度方案进行评估,最后输出加权目标最小的调度方案。本发明采用遗传算法优化加权目标,构建初始调度方案集合,结合工序的延迟风险和工序对后向关联工序影响两个方面评价工序对调度方案稳定性的影响能力,给出非强制缓冲时间的设置方法,针对不同影响力的工序添加合理非强制缓冲时间,并评估插入非强制空闲时间的调度方案集合中各调度方案的的鲁棒性,输出最优调度方案。从而实现以较小的性能损失换取系统较高的稳定性,即有效改善调度稳定性的同时又能保证调度性能劣化程度较小,为车间生产提供更加稳定的调度方案。实施例2:如附图6、7、表1所示,本方法设计性能鲁棒性劣化率(performancerobustnessdegradationrate,prdr)稳定鲁棒性改善率(stablerobustnessimprovementrate,srir)、调度目标的改善率(comprehensiveimprovementrate,cir)三个指标,分别如下所示:1、性能鲁棒性劣化率prdr(s1,s2),表示机器故障环境下s1和s2性能鲁棒性的相对比值。其中,当prdr(s1,s2)>0时,说明s1相对于s2发生了劣化,prdr(s1,s2)越大劣化程度越严重。2、稳定鲁棒性改善率srir(s1,s2),表示机器故障环境下s1和s2稳定鲁棒性的相对比值。由于非强制空闲时间可以有效吸收机器故障带来的影响,提升调度方案的稳定性,即sr(s2)≥sr(s1),当srir(s1,s2)越大时说明s1相对于s2的改善程度越高。3、调度目标的改善率cir(s1,s2),表示s1和s2调度目标的相对比值。同理可知当cir(s1,s2)值越大时对调度目标的改善程度越大。上述s1与s2分别代表本发明方法与传统方法所得最优解。本实施例中当权重系数α1=0.5,α2=0.5,通过本发明方法和传统鲁棒优化算法得到的各指标的计算结果如表1、图6、图7所示,表1中η1=srir(s1,s2)/prdr(s1,s2),t1,t2为鲁棒性调度和传统调度cpu运行时间,η2=t1/t2,通过表1中数据可知,虽然i-rjsp的求解用时略长,但相比t-rjsp,车间的整体性能得到了大幅度的提高。对工序影响力前20%的工序后添加非强制空闲时间,在维修时间tr=10情况下,i-rjsp相比t-rjsp性能鲁棒性下降约4%,但调度稳定鲁棒性改善了1.76倍。且随着维修时间的增加,对调度的整体性能改善逐渐增加。当维修时间tr不同时,s1与s2的比较结果如图6所示。图6(a)中所有prdr(s1,s2)都大于0,表示s1获得性能鲁棒性相比s2获得性能鲁棒性的发生劣化,随着tr的增加,调度性能鲁棒性的劣化程度越严重,且当比例越大时,性能鲁棒性的下降越明显。从图6(b)中可以看出,当tr更大时,调度稳定鲁棒性的改善效果越好,且比例的提高,调度稳定鲁棒性改善率越高。通过观察图6(c)中在不同tr下cir(s1,s2)的变化趋势,可以得到:随着tr的增加,cir(s1,s2)逐渐增加,但在不同的tr的水平下cir(s1,s2)的变化率存在较大差异,在tr在较低水平时,随tr增加,cir(s1,s2)变化较快,但在tr在较高水平时,cir(s1,s2)的上升较慢。图6(d)表示在不同tr下η1的变化趋势。从图中观察可知,随着tr的增加,η1的值在不断的下降,阈值为0.2时,在各tr水平下表现的效果最好,说明对较少影响大的工序后添加空闲时间,可以实现牺牲较小的调度性能换取较高的调度稳定性。当维修时间tr相同时,s1与s2在不同的比例下的比较如图7所示。通过观察图7(a)和图7(b)中在不同的比例下所获得的数据,可以得到以下趋势:随着比例的增加,prdr(s1,s2)和srir(s1,s2)都逐渐增大,说明随着比例增加,s1相对于s2性能鲁棒性劣化的程度更严重,而s1相对于s2稳定鲁棒性却得到更好的改善。当tr=100时,prdr(s1,s2)和srir(s1,s2)在各比例下获得最大值,随着tr减小prdr(s1,s2)和srir(s1,s2)都有所下降。从图7(c)中可以看出,在各种tr水平下,cir(s1,s2)均在阈值为0.6时取得最大值,说明对调度目标的改善效果最好;同时当tr越大时,cir(s1,s2)的值越大。图7(d)表示6种tr在不同的比例下,srir(s1,s2)相对prdr(s1,s2)的的变化趋势。从图中可以看出,且随着比例增加,效用比η1不断的减小。当tr=10,效用比η1在各比例下均取得最大值,说明在维修时间较小时,添加非强制空闲时间能够通过损失较小的性能获得较高的稳定性。以上技术特征构成了本发明的最佳实施例,其具有较强的适应性和最佳实施效果,可根据实际需要增减非必要的技术特征,来满足不同情况的需求。表1本发明与传统方法所得最优解的各指标结果图当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1