基于量子进化算法的复杂场景排产方法及系统技术方案

技术编号:16529773 阅读:64 留言:0更新日期:2017-11-09 21:45
本发明专利技术公开了基于量子进化算法的复杂场景排产方法及系统,量子种群初始化;量子排产适应度评估:设立量子目标函数,考虑大型机械设备的生产制造环境的约束条件下,对量子目标函数进行求解;量子种群生成目标函数的二进制控制变量,根据生成的二进制控制变量,对应到工单任务的顺序,进行排产,按照排产顺序计算整个大型机械设备工单的完成时间为量子的适应度值;比较适应度值,通过最小适应度值确定最优解;保存最优解;判断是否到达结束条件,若未达到,则利用量子旋转门对量子种群进行更新;返回量子排产适应度评估步骤重新计算量子的适应度值,继续寻优。满足局部寻优与全局寻优在较平衡的状态下寻找最优解,实现大型机械设备生产排产。

【技术实现步骤摘要】
基于量子进化算法的复杂场景排产方法及系统
本专利技术涉及具有库容约束的复杂场景下的大型机械设备生产制造排产领域,特别是涉及基于量子进化算法的复杂场景排产方法及系统。
技术介绍
大型机械设备生产制造相比普通机械设备制造具有诸多特殊性,大型机械设备如大型风叶的电机或大型客车的发动机生产所用制造设备价格昂贵、数量少且单一,对原材料的线边库容存储数量级一般为个数,由于特殊的生产制造环境极易产生线体阻塞现象,造成生产流程的不顺畅,从而导致生产效率下降,甚至造成产品质量的降低。由此可见,针对上述复杂场景的大型机械设备生产领域进行科学性生产排产的紧迫性和重要意义。当前出现的用于生产排产的遗传算法、模拟退火算法或粒子群算法等数学模型,其建立都是基于理想状态,未考虑原材料库容限制、线边库容及线体阻塞问题的复杂性,在解决简单生产排程问题时较为理想,但不能为大型机械设备的生产加工过程带来实际有效的指导意义。
技术实现思路
针对大型机械设备生产现有排产方法过于理想化,排产时间短,对库容原料利用率低等问题,本专利技术提供基于量子进化算法的复杂场景排产方法及系统,应用于具有库容约束、线体阻塞为代表的复杂场景的大型机械设备生产排产领域。为了实现上述目的,本专利技术采用如下技术方案:基于量子进化算法的复杂场景排产方法,包括如下步骤:步骤(1):量子种群初始化:包括初始化量子种群进化代数、初始化量子比特编码和初始化量子染色体数量;步骤(2):量子排产与适应度评估:设立量子目标函数,考虑大型机械设备的生产制造环境的约束条件下,对量子目标函数进行求解;量子种群生成目标函数的二进制控制变量,根据生成的二进制控制变量,对应到工单任务的顺序,进行排产,按照排产顺序计算整个大型机械设备工单的完成时间,即为量子的适应度值;步骤(3):比较适应度值,通过最小适应度值确定最优解;保存最优解;判断是否到达结束条件,若达到结束条件则输出最优解;若未达到结束条件则跳转至步骤(4);步骤(4):量子更新:利用量子旋转门对量子种群进行更新;返回步骤(2)重新计算量子的适应度值,继续寻优。所述大型机械设备,包括:大型风叶电机、大型客车发动机或起重机械等,所用加工设备因价格昂贵一般购置一台或两台,在生产过程中极易出现线体阻塞现象。所述复杂场景是指大型机械设备的生产制造环境:生产原材料库容有限且线边库容存储数量为个数级,原材料运输装置数量有限且为个数级;线体阻塞现象频发。所述步骤(1)中量子种群初始化,包括如下步骤:步骤(1-1):初始化进化代数t=0;步骤(1-2):初始化量子比特编码:通过确定大型机械设备工单任务所选择的机器以及上线加工的顺序,以获得更优量子目标函数。在初始化过程中需要定义两个变量:第一个变量表示工单i的第j个工序是否在第k个机器上加工,记为变量aijk,如果选择机器k则变量aijk取值为1,如果未选择机器k则变量aijk取值为0;第二个变量表示工单i的第j个工序的加工顺序为l,记为变量bijl,当工单i的第j个工序在第l个加工顺序处开始上线加工时,变量bijl记为1,否则变量bijl为0。令A=[a111,a112,…,aijk,…],用于存放工单i的第j个工序是否在第k个机器上加工的状态;令B=[b111,b112,…,bijl,…],用于存放工单i的第j个工序是否在第l个加工顺序处开始上线加工的状态;对A和B进行顺序拼接,得到多个大型机械设备工单的量子比特编码,记为X。X=A+B=[a111,a112,…,aijk,…,b111,b112,…,bijl,…](1)其中,公式(1)中的“+”表示顺序拼接,aijk、bijl分别取0或者取1,X为二进制序列。通过所述编码方式将工单任务、加工设备及加工工序信息包含于二进制序列X中。具体的,一个量子比特位表示为:量子比特的状态表示为:|ψ>=α|0〉+β|1>,其中|0〉和|1〉表示量子比特的两种基本状态;α和β为复数,表示量子位状态的概率幅,α2为量子比特处于状态0的概率、β2为量子比特处于状态1的概率,α和β的幅值和角度随机取值,但满足|α|2+|β|2=1;令q表示染色体个体,则m个量子比特位表示的量子染色体为其中,|αi|2+|βi|2=1,i=1,2,…,m;m表示单个染色体量子比特位长度,m的计算方法如下:m=工单任务总数×设备数+工单任务总数2(3)则公式(1)用量子比特位表示为:步骤(1-3):初始化种群:染色体种群与进化代数t关联,设第t代的量子染色体种群为:则公式(2)转化为:式中,j代表染色体个数,j=1,2,…n,n为染色体种群规模大小即染色体总数量。单次迭代中,染色体数量越多,越容易得到全局最优解,但计算速度慢。染色体数量越少,计算速度越快,但容易陷入局部最优解。一般来说,染色体数量设置在40-100之间,本专利技术取n=60。则公式(4)与进化代数t关联后转化为:所述步骤(2)中量子适应度即量子目标函数,在库容有限场景下采用的排产策略为正排策略,期望加工的订单尽早交货。量子目标函数:minf(X)=Min∑所有工单(大型机械设备工单计划结束时间-大型机械设备工单计划开始时间)(8)X称为目标函数的二进制控制变量,为一组二进制序列,所述量子目标函数值越小越好。量子适应度计算是将根据单个染色体值获得工单任务在每个机器的上线加工时间及下线时间,也可称之为根据染色体所给出的工单任务顺序进行排产的过程。染色体种群中的单个染色体中每一维度的数值对应一个工单任务,每个染色体包含了当前所有待排工单任务的顺序信息。加工时间由加工的机器型号或库位类型以及工单任务的工单产品属性确定,加工时间为排产的已知信息。所述步骤(2)中量子目标函数的计算需要考虑大型机械设备的生产制造环境的约束条件。所述约束条件具体为:在选择机器确定工单加工时间的过程中,要考虑大型机械设备工单任务在工单加工过程中的先后逻辑关系,工单任务一旦开始不能中断,即单个工单任务不可跨机器的不可用时间分两次加工,也不可在一个工序间隙分到两个库位暂存,单台机器同一时间仅可加工一个工单任务,机器仅在可用的时间段内加工工件。所述约束条件由公式表示如下:公式(9)中,aijk表示工单i的第j个工序是否在第k个机器进行加工的状态;bijl表示工单i的第j个工序是否在第l加工顺序进行加工的状态,加工状态取0或者取1;称为顺序算子,表示各元素在数组中的顺序号,bij用于存放第i个工单第j个工序的工单任务加工顺序的所有状态,为数组bij的转置,表示取bij中状态为1的元素所对应的顺序号,的维数与bij相同;bi(j+1)用于存放第i个工单第j+1个工序的工单任务加工顺序的所有状态,为数组bi(j+1)的转置,表示取bi(j+1)中状态为1的元素所对应的顺序号,的维数与bi(j+1)相同。第一个约束aijk,bijl=0或1,对所有的i、j、k和l成立,保证了染色体编码的可行性;第二个约束保证了工单任务顺序按照工单任务加工的逻辑顺序进行加工;第三个约束对所有的工单任务顺序成立,保证所有工单任务仅被加工一次;第四个约束对所有的i和j成立,保证单个工单任务仅在一台机器上进行加工。所述步骤(2)的适应度评估由量子染色体种群Q(t)生成目标函数的二进制控制本文档来自技高网...
基于量子进化算法的复杂场景排产方法及系统

【技术保护点】
基于量子进化算法的复杂场景排产方法,其特征是,包括如下步骤:步骤(1):量子种群初始化:包括初始化量子种群进化代数、初始化量子比特编码和初始化量子染色体数量;步骤(2):量子排产与适应度评估:设立量子目标函数,考虑大型机械设备的生产制造环境的约束条件下,对量子目标函数进行求解;量子种群生成目标函数的二进制控制变量,根据生成的二进制控制变量,对应到工单任务的顺序,进行排产,按照排产顺序计算整个大型机械设备工单的完成时间,即为量子的适应度值;步骤(3):比较适应度值,通过最小适应度值确定最优解;保存最优解;判断是否到达结束条件,若达到结束条件则输出最优解;若未达到结束条件则跳转至步骤(4);步骤(4):量子更新:利用量子旋转门对量子种群进行更新;返回步骤(2)重新计算量子的适应度值,继续寻优。

【技术特征摘要】
1.基于量子进化算法的复杂场景排产方法,其特征是,包括如下步骤:步骤(1):量子种群初始化:包括初始化量子种群进化代数、初始化量子比特编码和初始化量子染色体数量;步骤(2):量子排产与适应度评估:设立量子目标函数,考虑大型机械设备的生产制造环境的约束条件下,对量子目标函数进行求解;量子种群生成目标函数的二进制控制变量,根据生成的二进制控制变量,对应到工单任务的顺序,进行排产,按照排产顺序计算整个大型机械设备工单的完成时间,即为量子的适应度值;步骤(3):比较适应度值,通过最小适应度值确定最优解;保存最优解;判断是否到达结束条件,若达到结束条件则输出最优解;若未达到结束条件则跳转至步骤(4);步骤(4):量子更新:利用量子旋转门对量子种群进行更新;返回步骤(2)重新计算量子的适应度值,继续寻优。2.如权利要求1所述的基于量子进化算法的复杂场景排产方法,其特征是,所述步骤(1)中量子种群初始化,包括如下步骤:步骤(1-1):初始化进化代数t=0;步骤(1-2):初始化量子比特编码:通过确定大型机械设备工单任务所选择的机器以及上线加工的顺序,以获得更优量子目标函数;在初始化过程中需要定义两个变量:第一个变量表示工单i的第j个工序是否在第k个机器上加工,记为变量aijk,如果选择机器k则变量aijk取值为1,如果未选择机器k则变量aijk取值为0;第二个变量表示工单i的第j个工序的加工顺序为l,记为变量bijl,当工单i的第j个工序在第l个加工顺序处开始上线加工时,变量bijl记为1,否则变量bijl为0;令A=[a111,a112,…,aijk,…],用于存放工单i的第j个工序是否在第k个机器上加工的状态;令B=[b111,b112,…,bijl,…],用于存放工单i的第j个工序是否在第l个加工顺序处开始上线加工的状态;对A和B进行顺序拼接,得到多个大型机械设备工单的量子比特编码,记为X;X=A+B=[a111,a112,…,aijk,…,b111,b112,…,bijl,…](1)其中,公式(1)中的“+”表示顺序拼接,aijk、bijl分别取0或者取1,X为二进制序列;通过所述编码方式将工单任务、加工设备及加工工序信息包含于二进制序列X中;具体的,一个量子比特位表示为:量子比特的状态表示为:|ψ>=α|0〉+β|1>,其中|0〉和|1〉表示量子比特的两种基本状态;α和β为复数,表示量子位状态的概率幅,α2为量子比特处于状态0的概率、β2为量子比特处于状态1的概率,α和β的幅值和角度随机取值,但满足|α|2+|β|2=1;令q表示染色体个体,则m个量子比特位表示的量子染色体为其中,αi2+βi2=1,i=1,2,…,m;m表示单个染色体量子比特位长度,m的计算公式如下:m=工单任务总数×设备数+工单任务总数2(3)则公式(1)用量子比特位表示为:步骤(1-3):初始化种群:染色体种群与进化代数t关联,设第t代的量子染色体种群为:则公式(2)转化为:式中,j代表染色体个数,j=1,2,…n,n为染色体种群规模大小即染色体总数量;则公式(4)与进化代数t关联后转化为:3.如权利要求2所述的基于量子进化算法的复杂场景排产方法,其特征是,所述步骤(2)中量子适应度即量子目标函数,在库容有限场景下采用的排产策略为正排策略,期望加工的订单尽早交货;量子目标函数:minf(X)=Min∑所有工单(大型机械设备工单计划结束时间-大型机械设备工单计划开始时间)(8)X称为目标函数的二进制控制变量,为一组二进制序列,所述量子目标函数值越小越好;量子适应度计算是将根据单个染色体值获得工单任务在每个机器的上线加工时间及下线时间,也可称之为根据染色体所给出的工单任务顺序进行排产的过程;染色体种群中的单个染色体中每一维度的数值对应一个工单任务,每个染色体包含了当前所有待排工单任务的顺序信息;加工时间由加工的机器型号或库位类型以及工单任务的工单产品属性确定,加工时间为排产的已知信息。4.如权利要求3所述的基于量子进化算法的复杂场景排产方法,其特征是,所述步骤(2)中量子目标函数的计算需要考虑大型机械设备的生产制造环境的约束条件;所述约束条件具体为:在选择机器确定工单加工时间的过程中,要考虑大型机械设备工单任务在工单加工过程中的先后逻辑关系,工单任务一旦开始不能中断,即单个工单任务不可跨机器的不可用时间分两次加工,也不可在一个工序间隙分到两个库位暂存,单台机器同一时间仅可加工一个工单任务,机器仅在可用的时间段内加工工件;所述约束条件由公式表示如下:公式(9)中,aijk表示工单i的第j个工序是否在第k个机器进行加工的状态;bijl表示工单i的第j个工序是否在第l加工顺序进行加工的状态,加工状态取0或者取1;称为顺序算子,表示各元素在数组中的顺序号,bij用于存放第i个工单第j个工序的工单任务加工顺序的所有状态,为数组bij的转置,表示取bij中状态为1的元素所对应的顺序号,的维数与bij相同;bi(j+1)用于存放第i个工单第(j+1)个工序的工单任务加工顺序的所有状态,为数组bi(j+1)的转置,表示取bi(j+1)中状态为1的元素所对应的顺序号,的维数与bi(j+1)相同;第一个约束aijk,bijl=0或1,对所有的i、j、k和l...

【专利技术属性】
技术研发人员:张嗣昌卢毅刘宇
申请(专利权)人:山东万腾电子科技有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1