一种基于缺件管理的舰船管件排程的方法与装置与流程

文档序号:13332849阅读:348来源:国知局
一种基于缺件管理的舰船管件排程的方法与装置与流程

本发明涉及舰船管件加工技术领域,特别是涉及一种基于缺件管理的舰船管件排程的方法与装置。



背景技术:

排程是舰船管件加工车间的重要工作。该工作需要考虑的因素多,且受缺件影响,很难按照生产计划依次执行,目前动态排程主要依靠有经验的工长凭经验手工作业完成,效率低、费时费力且不科学。为摆脱这一局面,需要实现舰船管件加工车间的动态排程。

针对舰船管件加工车间的动态排程问题,国内外研究机构提出了一些排程的方法,已有的研究以交货期、生产移动量、瓶颈设备最大产能利用率为多目标加权集成优化;或以项目总工期和在制品库存为优化目标;还有以制造周期、资源利用率、制造成本等为目标;研究思想方法主要有准时制aps与mes集成和toc约束理论等。上述这些方法是一些通用的生产排程方法。

但是这些排程方法,在应用到船体管件加工时,不能适应管件加工车间随时缺件的生产模式,或者是考虑过多的生产中可忽视的因素,并不适用于舰船管件加工车间的实际生产情况,并且算法计算复杂度高,在舰船管件加工车间适应性不强。因此,目前仍缺乏一种推理速度快、泛化能力好、排程结果精确的舰船管件加工动态排程方案。

可见,如何实现对舰船管件加工的快速、准确的排程,是本领域技术人员亟待解决的问题。



技术实现要素:

本发明实施例的目的是提供一种基于缺件管理的舰船管件排程的方法与装置,可以实现对舰船管件加工的快速、准确的排程。

为解决上述技术问题,本发明实施例提供一种基于缺件管理的舰船管件排程的方法,包括:

依据获取的各个不同类型的管件材料的个数,构建缺件管理集;

接收用户输入的每个加工单元对应的物料链表;

依次计算所述缺件管理集与各个所述加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元;

依据获取的所述排程单元中包含的各个工序的时间参数,初始化适应值函数;

基于所述排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群;所述遗传染色体种群中包含有多个遗传染色体个体;

基于所述排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群;其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群;

利用所述适应值函数,对各个所述粒子群染色体种群进行迭代处理,得到各个所述遗传染色体个体对应的适应值;并将适应值最大的遗传染色体个体对应的排程方案作为目标排程方案。

可选的,所述适应值函数为

其中,k表示所述排程单元的个数,tc表示第c个排程单元的截止时间,tci表示第c个排程单元中第i个工序的加工时间,tijmin为第i个工序等待时间最小的工位j的等待时间,tnow表示当前时间,r为调整因子,tδij表示一个管件工序i要求的加工时间与工序i的第j个工位加工的实际时间的差值。

可选的,所述基于所述排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群包括:

s201:依据所述排程单元的个数,建立相应个数的遗传基因块;

s202:从第一排程单元包含的各个工序中随机选定各工序对应的工位,确定工序属性信息;并将所述工序属性信息填入到所述第一排程单元对应的遗传基因块中;其中,所述第一排程单元为所述排程单元中的任意一个排程单元;

s203:依次连接包含有工序属性信息的各个遗传基因块,生成一个遗传染色体个体;

s204:判断迭代次数是否达到预设的第一数值,若否,则返回所述s202;若是,则执行s205;

s205:输出由多个遗传染色体个体构成的遗传染色体种群。

可选的,所述基于所述排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群包括:

s301:依据所述排程单元中包含的所有工位的个数,建立相应个数的粒子基因块;

s302:遍历第一遗传染色体个体中包含的各个基因位,并将相应的基因信息填入到所述第一遗传染色体个体对应的粒子基因块的一个空位中;其中,所述第一遗传染色体个体为所述遗传染色体种群中的任意一个遗传染色体个体;

s303:依次连接包含有基因信息的各个粒子基因块,生成一个粒子群染色体个体;

s304:判断迭代次数是否达到预设的第二数值,若否,则返回所述s302;若是,则执行s305;

s305:输出由多个粒子群染色体个体构成的粒子群染色体种群。

可选的,所述利用所述适应值函数,对各个所述粒子群染色体种群进行迭代处理,得到各个所述遗传染色体个体对应的适应值包括:

s401:利用所述适应值函数,更新第一粒子群染色体种群中各粒子的个体极值和全局极值;其中,所述第一粒子群染色体种群为所述粒子群染色体种群中的任意一个粒子群染色体种群;

s402:判断所述全局极值是否满足第一预设条件;若否,则执行s403;若是,则执行s404;

s403:利用预先设置的更新公式,更新所述第一粒子群染色体种群中各粒子的速度和位置,并返回所述s401;

所述更新公式为:

vi(t+1)=wvi(t)+c1r1(pbesti)-xi(t)+c2r2(gbesti-xi(t));

xi(t+1)=xi(t)+vi(t+1);

其中,vi表示粒子的速度,xi表示粒子的位置,c1和c2为加速因子,r1和r2为[0,1]之间的随机数,w为惯性因子,pbesti表示个体极值,gbesti表示局部极值;

s404:将所述全局极值作为所述第一粒子群染色体种群所对应的遗传染色体个体的适应值。

本发明实施例还提供了一种基于缺件管理的舰船管件排程的装置,包括构建单元、接收单元、计算单元、初始化单元、主编码单元、从编码单元和得到单元,所述构建单元,用于依据获取的各个不同类型的管件材料的个数,构建缺件管理集;

所述接收单元,用于接收用户输入的每个加工单元对应的物料链表;

所述计算单元,用于依次计算所述缺件管理集与各个所述加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元;

所述初始化单元,用于依据获取的所述排程单元中包含的各个工序的时间参数,初始化适应值函数;

所述主编码单元,用于基于所述排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群;所述遗传染色体种群中包含有多个遗传染色体个体;

所述从编码单元,用于基于所述排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群;其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群;

所述得到单元,用于利用所述适应值函数,对各个所述粒子群染色体种群进行迭代处理,得到各个所述遗传染色体个体对应的适应值;并将适应值最大的遗传染色体个体对应的排程方案作为目标排程方案。

可选的,所述适应值函数为

其中,k表示所述排程单元的个数,tc表示第c个排程单元的截止时间,tci表示第c个排程单元中第i个工序的加工时间,tijmin为第i个工序等待时间最小的工位j的等待时间,tnow表示当前时间,r为调整因子,tδij表示一个管件工序i要求的加工时间与工序i的第j个工位加工的实际时间的差值。

可选的,所述主编码单元包括建立子单元、填入子单元、连接子单元、判断子单元和输出子单元,

所述建立子单元,用于依据所述排程单元的个数,建立相应个数的遗传基因块;

所述填入子单元,用于从第一排程单元包含的各个工序中随机选定各工序对应的工位,确定工序属性信息;并将所述工序属性信息填入到所述第一排程单元对应的遗传基因块中;其中,所述第一排程单元为所述排程单元中的任意一个排程单元;

所述连接子单元,用于依次连接包含有工序属性信息的各个遗传基因块,生成一个遗传染色体个体;

所述判断子单元,用于判断迭代次数是否达到预设的第一数值,若否,则触发所述填入子单元;若是,则触发所述输出子单元,所述输出子单元,用于输出由多个遗传染色体个体构成的遗传染色体种群。

可选的,所述从编码单元包括建立子单元、填入子单元、连接子单元、判断子单元和输出子单元,

所述建立子单元,用于依据所述排程单元中包含的所有工位的个数,建立相应个数的粒子基因块;

所述填入子单元,用于遍历第一遗传染色体个体中包含的各个基因位,并将相应的基因信息填入到所述第一遗传染色体个体对应的粒子基因块的一个空位中;其中,所述第一遗传染色体个体为所述遗传染色体种群中的任意一个遗传染色体个体;

所述连接子单元,用于依次连接包含有基因信息的各个粒子基因块,生成一个粒子群染色体个体;

所述判断子单元,用于判断迭代次数是否达到预设的第二数值,若否,则触发所述填入子单元;若是,则触发所述输出子单元,所述输出子单元,用于输出由多个粒子群染色体个体构成的粒子群染色体种群。

可选的,所述得到单元包括第一更新子单元、判断子单元、第二更新子单元和作为子单元,所述第一更新子单元,用于利用所述适应值函数,更新第一粒子群染色体种群中各粒子的个体极值和全局极值;其中,所述第一粒子群染色体种群为所述粒子群染色体种群中的任意一个粒子群染色体种群;

所述判断子单元,用于判断所述全局极值是否满足第一预设条件;若否,则触发所述第二更新子单元;若是,则触发所述作为子单元;

所述第二更新子单元,用于利用预先设置的更新公式,更新所述第一粒子群染色体种群中各粒子的速度和位置,并触发所述第一更新子单元;

所述更新公式为:

vi(t+1)=wvi(t)+c1r1(pbesti)-xi(t)+c2r2(gbesti-xi(t));

xi(t+1)=xi(t)+vi(t+1);

其中,vi表示粒子的速度,xi表示粒子的位置,c1和c2为加速因子,r1和r2为[0,1]之间的随机数,w为惯性因子,pbesti表示个体极值,gbesti表示局部极值;

所述作为子单元,用于将所述全局极值作为所述第一粒子群染色体种群所对应的遗传染色体个体的适应值。

由上述技术方案可以看出,依据获取的各个不同类型的管件材料的个数,构建缺件管理集;接收用户输入的每个加工单元对应的物料链表;依次计算缺件管理集与各个加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元,可以针对缺件情况,合理选择排程单元;依据排程单元中包含的各个工序的时间参数,初始化适应值函数;基于排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群;该遗传染色体种群中包含有多个遗传染色体个体;基于排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群;其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群;利用适应值函数,对各个粒子群染色体种群进行迭代处理,可以得到各个遗传染色体个体对应的适应值;适应值最大的遗传染色体个体对应的排程方案即为目标排程方案。该技术方案基于缺件管理的管件加工车间进行动态排程,可以有效的缩短管件在车间内流转时间,提高管件加工效率,减少管件的堆积时间,提高车间加工的效率,从而实现对舰船管件加工的快速、准确的排程。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种基于缺件管理的舰船管件排程的方法的流程图;

图2为本发明实施例提供的一种建立遗传染色体种群的方法的流程图;

图3为本发明实施例提供的一种建立粒子群染色体种群的方法的流程图;

图4为本发明实施例提供的一种计算遗传染色体个体适应值的方法的流程图;

图5为本发明实施例提供的一种基于缺件管理的舰船管件排程的装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

接下来,详细介绍本发明实施例所提供的一种基于缺件管理的舰船管件排程的方法。图1为本发明实施例提供的一种基于缺件管理的舰船管件排程的方法的流程图,该方法包括:

s101:依据获取的各个不同类型的管件材料的个数,构建缺件管理集。

在本发明实施例中,可以依据当前车间缓存区中各个不同类型的管件材料的个数,建立并且维护一张动态的缺件管理集p={pe,e=1,2…n},其中,e表示管件材料的各个不同的类型;当pe值为0时即为缺件状态,表明该种类型的管件材料个数为0。

对管件材料进行加工时需要经过一些工序,每个工序中包含有至少一个工位,在本发明实施例中,可以用m表示所有工位的集合m={mij,其中i=1,2,…m;j=1,2,…s},m为工序总数,s为工位数。

s102:接收用户输入的每个加工单元对应的物料链表。

加工单元可以用于表示生产计划所要求的加工任务,可以用符号l={lc,c=1,2…k}表示,其中,k为加工单元的个数。lc可以看做是加工单元的加工编号。

每个加工单元lc有其固定的物料链表wc={wce,e=1,2,…n},其中,wc的值表示加工单元lc所需管型(不同类型的管件材料)的数量,工艺要求每个工序的加工时间tc={tcij,i=1,2…m;j=1,2…s};i表示工序号,j表示工位号;t={tc,c=1,2…k}是每个待加工单元的截止时间。

s103:依次计算所述缺件管理集与各个所述加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元。

为了制定出合理的排程方案,避免由于缺件导致长时间等待,当缺件管理集中包含的各管型的数量不能满足某一个加工单元所需管型的数量时,此时可以先不对该加工单元进行排程。

计算缺件管理集p和各个加工单元对应的物料链表wc的差值。以一个加工单元lc为例,在计算时,一种类型的管件材料即可当做是一个元素,将缺件管理集p该元素的个数与物料链表wc中该元素对应的数量相减,每种类型的管件材料有其对应的一个差值,所有类型的管件材料对应的差值构成一个差集合,如果在该差集合中有小于零的元素,则该加工单元作为缺件单元,移入到缺件集合,即该加工单元不参加此次排程;相应的,将差值大于或等于零的物料链表所对应的加工单元作为待加工单元也即排程单元,进行后续的排程处理。

s104:依据获取的所述排程单元中包含的各个工序的时间参数,初始化适应值函数。

时间参数可以包括截止时间、加工时间、等待时间等。在本发明实施例中,可以以所有排程单元进行管件加工所花费的最短时间,建立适应值函数,其公式如下:

其中,k表示所述排程单元的个数,tc表示第c个排程单元的截止时间,tci表示第c个排程单元中第i个工序的加工时间,tijmin为第i个工序等待时间最小的工位j的等待时间,tnow表示当前时间,r为调整因子,tδij表示一个管件工序i要求的加工时间与工序i的第j个工位加工的实际时间的差值。

需要说明的是,对于s103缺件集合中的缺件单元可以在下一次排程时通过调解r的取值,赋予该缺件单元更高的优先级。在本发明实施例中,r值越小其对应的优先级越高,r的取值可以为负值。

s105:基于所述排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群。

其中,所述遗传染色体种群中可以包含有多个遗传染色体个体。

在本发明实施例中,可以根据排程单元的个数,例如为n个,从而将所有基因分为n块,也即每个基因块有一个对应的排程单元。基因块中包含的基因可以由低到高分别与这批管件的工序先后相对应。基因块中的基因数目是该排程单元的加工工序数,相应的,该遗传染色体长度为其中sj为工序数,如果在动态排程的时刻,排程单元只加工了部分工序,则基因块中的基因数目为该排程单元中管件未加工的工序数目,每个基因块中包括有排程单元的工序号,以及加工时间等信息。

遗传规则可以是生成遗传染色体种群时依据的规则信息,得到遗传染色体种群的具体过程如图2所示,在此不再赘述。

s106:基于所述排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群。

其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群。

在本发明实施例中,可以将排程单元对应的加工编号和工序号i作为每个基因的标志。对于从染色的构建,可以根据所有排程单元中包含的所有工位的个数,例如为m个,从而将所有基因分为m块,每个基因块对应一个工位,基因块m的基因数目由主染色体决定,与已经确定的加工路径有关,例如,先焊后弯管和先弯后焊管等。

粒子规则可以是根据遗传染色体个体生成粒子群染色体种群时依据的规则信息,得到粒子群染色体种群的具体过程如图3所示,在此不再赘述。

s107:利用所述适应值函数,对各个所述粒子群染色体种群进行迭代处理,得到各个所述遗传染色体个体对应的适应值;并将适应值最大的遗传染色体个体对应的排程方案作为目标排程方案。

以一个粒子群染色体种群为例,该粒子群染色体种群有其对应的一个遗传染色体个体,可以利用适应值函数通过迭代的方式,确定出该粒子群染色体种群的一个最优的全局极值,该全局极值即为遗传染色体个体的适应值。计算染色体个体的适应值的具体过程如图4所示,在此不再赘述。

上述s105中涉及遗传染色体种群的建立过程,下面将对建立遗传染色体种群的过程展开介绍,如图2所示,该过程包括:

s201:依据排程单元的个数,建立相应个数的遗传基因块。

s202:从第一排程单元包含的各个工序中随机选定各工序对应的工位,确定工序属性信息;并将所述工序属性信息填入到所述第一排程单元对应的遗传基因块中。

其中,所述第一排程单元为所述排程单元中的任意一个排程单元。

一个排程单元中包含有至少一个工序,每个工序中包含有至少一个工位,以一个工序为例,任意选取一个工位便可以完成该工序的工作。

通过s202的操作,可以选取出每个排程单元对应的工位,以一个排程单元为例,该排程单元有其对应的一个遗传基因块,在具体实现中,可以从该排程单元包含的各个加工工序中随机选定各工序的加工工位。

例如,第一个排程单元中包含有两个工序,分别为工序1和工序2,其中,工序1中包含有3个工位,分别为工位11、工位12和工位13;工序2中包含有2个工位,分别为工位21和工位22。可以从工序1中随机选取一个工位,如工位11,从工序2中随机选取一个工位,如工位22,则该排程单元对应的工位包括工位11和工位22。

确定出排程单元的工位后,便可以依据该工位,确定出工序属性,例如加工时间等。通过将工序属性填入到遗传基因块中,完成对遗传基因块的处理。

s203:依次连接包含有工序属性信息的各个遗传基因块,生成一个遗传染色体个体。

一个遗传染色体个体可以用于表示一种排程方案。

s204:判断迭代次数是否达到预设的第一数值,若否,则返回所述s202;若是,则执行s205。

每重复执行一次s202和s203即为一次迭代过程。在本发明实施例中,可以根据遗传染色体种群的规模,设置第一数值。

例如,遗传染色体种群的种群规模为qg,用q表示每个遗传染色体个体的编号,则遗传染色体个体q=1,2,…,qg

s205:输出由多个遗传染色体个体构成的遗传染色体种群。

一次迭代过程,可以生成一个遗传染色体个体,重复上述s202和s203的操作,可以生成多个遗传染色体个体,从而构成一个遗传染色体种群。

上述s106中涉及粒子群染色体种群的建立过程,下面将对建立粒子群染色体种群的过程展开介绍,如图3所示,该过程包括:

s301:依据排程单元中包含的所有工位的个数,建立相应个数的粒子基因块。

s302:遍历第一遗传染色体个体中包含的各个基因位,并将相应的基因信息填入到所述第一遗传染色体个体对应的粒子基因块的一个空位中。

其中,所述第一遗传染色体个体为所述遗传染色体种群中的任意一个遗传染色体个体。

以一个遗传染色体个体q为例,生成其对应的粒子群染色体种群,首先确定遗传染色体个体q中的各加工工位mij及相应工位加工的工序数i,然后生成长度为i的粒子基因块ga,再依次遍历遗传染色体个体q的各基因位,根据工位编号mij将基因信息随机填入粒子群染色体工位基因块的某一空位。

s303:依次连接包含有基因信息的各个粒子基因块,生成一个粒子群染色体个体。

s304:判断迭代次数是否达到预设的第二数值,若否,则返回所述s302;若是,则执行s305。

每重复执行一次s302和s303即为一次迭代过程。在本发明实施例中,可以根据粒子群染色体种群的规模,设置第二数值。

例如,粒子群染色体种群的种群规模为qo,用p表示每个粒子群染色体个体的编号,则粒子群染色体个体p=1,2,…,qo

s305:输出由多个粒子群染色体个体构成的粒子群染色体种群。

一次迭代过程,可以生成一个粒子群染色体个体,重复上述s302和s303的操作,可以生成多个粒子群染色体个体,从而构成一个粒子群染色体种群。

上述s107中涉及遗传染色体个体适应值的计算,下面将对遗传染色体个体适应值的计算过程展开介绍,如图4所示,该过程包括:

s401:利用适应值函数,更新第一粒子群染色体种群中各粒子的个体极值和全局极值。

其中,所述第一粒子群染色体种群为所述粒子群染色体种群中的任意一个粒子群染色体种群。

s402:判断所述全局极值是否满足第一预设条件;若否,则执行s403;若是,则执行s404。

若第一粒子群染色体种群的全局极值经过连续多次的更新处理后,全局极值未发生改变,则可以说明该全局极值已经几乎达到最优,则可以结束更新操作。

第一预设条件可以是全局极值是否达到要求的限定条件,例如,可以将第一预设条件设置为全局极值连续10次无变化。

s403:利用预先设置的更新公式,更新所述第一粒子群染色体种群中各粒子的速度和位置,并返回所述s401。

当全局极值不满足第一预设条件时,则可以对每一个粒子的向量优先权值,利用下式计算速度向量和位置向量,即只更新粒子向量优先权值,再重新上述s401和s402的操作步骤。

所述更新公式为:

vi(t+1)=wvi(t)+c1r1(pbesti)-xi(t)+c2r2(gbesti-xi(t));

xi(t+1)=xi(t)+vi(t+1);

其中,vi表示粒子的速度,xi表示粒子的位置,c1和c2为加速因子,r1和r2为[0,1]之间的随机数,w为惯性因子,pbesti表示个体极值,gbesti表示局部极值。

在具体实现中,可以令c1=c2=2。

s404:将所述全局极值作为所述第一粒子群染色体种群所对应的遗传染色体个体的适应值。

参照上述s401至s404,可以确定出遗传染色体种群中每个遗传染色体个体的适应值。

由上述技术方案可以看出,依据获取的各个不同类型的管件材料的个数,构建缺件管理集;接收用户输入的每个加工单元对应的物料链表;依次计算缺件管理集与各个加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元,可以针对缺件情况,合理选择排程单元;依据排程单元中包含的各个工序的时间参数,初始化适应值函数;基于排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群;该遗传染色体种群中包含有多个遗传染色体个体;基于排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群;其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群;利用适应值函数,对各个粒子群染色体种群进行迭代处理,可以得到各个遗传染色体个体对应的适应值;适应值最大的遗传染色体个体对应的排程方案即为目标排程方案。该技术方案基于缺件管理的管件加工车间进行动态排程,可以有效的缩短管件在车间内流转时间,提高管件加工效率,减少管件的堆积时间,提高车间加工的效率,从而实现对舰船管件加工的快速、准确的排程。

图5为本发明实施例提供的一种基于缺件管理的舰船管件排程的装置的结构示意图,包括构建单元51、接收单元52、计算单元53、初始化单元54、主编码单元55、从编码单元56和得到单元57,所述构建单元51,用于依据获取的各个不同类型的管件材料的个数,构建缺件管理集;

所述接收单元52,用于接收用户输入的每个加工单元对应的物料链表;

所述计算单元53,用于依次计算所述缺件管理集与各个所述加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元;

所述初始化单元54,用于依据获取的所述排程单元中包含的各个工序的时间参数,初始化适应值函数;

所述主编码单元55,用于基于所述排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群;所述遗传染色体种群中包含有多个遗传染色体个体;

所述从编码单元56,用于基于所述排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群;其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群;

所述得到单元57,用于利用所述适应值函数,对各个所述粒子群染色体种群进行迭代处理,得到各个所述遗传染色体个体对应的适应值;并将适应值最大的遗传染色体个体对应的排程方案作为目标排程方案。

可选的,所述适应值函数为

其中,k表示所述排程单元的个数,tc表示第c个排程单元的截止时间,tci表示第c个排程单元中第i个工序的加工时间,tijmin为第i个工序等待时间最小的工位j的等待时间,tnow表示当前时间,r为调整因子,tδij表示一个管件工序i要求的加工时间与工序i的第j个工位加工的实际时间的差值。

可选的,所述主编码单元包括建立子单元、填入子单元、连接子单元、判断子单元和输出子单元,

所述建立子单元,用于依据所述排程单元的个数,建立相应个数的遗传基因块;

所述填入子单元,用于从第一排程单元包含的各个工序中随机选定各工序对应的工位,确定工序属性信息;并将所述工序属性信息填入到所述第一排程单元对应的遗传基因块中;其中,所述第一排程单元为所述排程单元中的任意一个排程单元;

所述连接子单元,用于依次连接包含有工序属性信息的各个遗传基因块,生成一个遗传染色体个体;

所述判断子单元,用于判断迭代次数是否达到预设的第一数值,若否,则触发所述填入子单元;若是,则触发所述输出子单元,所述输出子单元,用于输出由多个遗传染色体个体构成的遗传染色体种群。

可选的,所述从编码单元包括建立子单元、填入子单元、连接子单元、判断子单元和输出子单元,

所述建立子单元,用于依据所述排程单元中包含的所有工位的个数,建立相应个数的粒子基因块;

所述填入子单元,用于遍历第一遗传染色体个体中包含的各个基因位,并将相应的基因信息填入到所述第一遗传染色体个体对应的粒子基因块的一个空位中;其中,所述第一遗传染色体个体为所述遗传染色体种群中的任意一个遗传染色体个体;

所述连接子单元,用于依次连接包含有基因信息的各个粒子基因块,生成一个粒子群染色体个体;

所述判断子单元,用于判断迭代次数是否达到预设的第二数值,若否,则触发所述填入子单元;若是,则触发所述输出子单元,所述输出子单元,用于输出由多个粒子群染色体个体构成的粒子群染色体种群。

可选的,所述得到单元包括第一更新子单元、判断子单元、第二更新子单元和作为子单元,所述第一更新子单元,用于利用所述适应值函数,更新第一粒子群染色体种群中各粒子的个体极值和全局极值;其中,所述第一粒子群染色体种群为所述粒子群染色体种群中的任意一个粒子群染色体种群;

所述判断子单元,用于判断所述全局极值是否满足第一预设条件;若否,则触发所述第二更新子单元;若是,则触发所述作为子单元;

所述第二更新子单元,用于利用预先设置的更新公式,更新所述第一粒子群染色体种群中各粒子的速度和位置,并触发所述第一更新子单元;

所述更新公式为:

vi(t+1)=wvi(t)+c1r1(pbesti)-xi(t)+c2r2(gbesti-xi(t));

xi(t+1)=xi(t)+vi(t+1);

其中,vi表示粒子的速度,xi表示粒子的位置,c1和c2为加速因子,r1和r2为[0,1]之间的随机数,w为惯性因子,pbesti表示个体极值,gbesti表示局部极值;

所述作为子单元,用于将所述全局极值作为所述第一粒子群染色体种群所对应的遗传染色体个体的适应值。

图5所对应实施例中特征的说明可以参见图1、图2、图3和图4所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,依据获取的各个不同类型的管件材料的个数,构建缺件管理集;接收用户输入的每个加工单元对应的物料链表;依次计算缺件管理集与各个加工单元对应的物料链表的差值,将差值大于或等于零的物料链表所对应的加工单元作为排程单元,可以针对缺件情况,合理选择排程单元;依据排程单元中包含的各个工序的时间参数,初始化适应值函数;基于排程单元进行编码,得到主染色体;并依据预先设置的遗传规则,初始化得到遗传染色体种群;该遗传染色体种群中包含有多个遗传染色体个体;基于排程单元中包含的所有工位进行编码,得到从染色体;并依据预先设置的粒子规则,初始化得到粒子群染色体种群;其中,一个所述遗传染色体个体有其对应的一个粒子群染色体种群;利用适应值函数,对各个粒子群染色体种群进行迭代处理,可以得到各个遗传染色体个体对应的适应值;适应值最大的遗传染色体个体对应的排程方案即为目标排程方案。该技术方案基于缺件管理的管件加工车间进行动态排程,可以有效的缩短管件在车间内流转时间,提高管件加工效率,减少管件的堆积时间,提高车间加工的效率,从而实现对舰船管件加工的快速、准确的排程。

以上对本发明实施例所提供的一种基于缺件管理的舰船管件排程的方法与装置进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1