CN111814359B - 一种面向离散制造的集成车间调度与装配序列规划方法 - Google Patents
一种面向离散制造的集成车间调度与装配序列规划方法 Download PDFInfo
- Publication number
- CN111814359B CN111814359B CN202010856018.7A CN202010856018A CN111814359B CN 111814359 B CN111814359 B CN 111814359B CN 202010856018 A CN202010856018 A CN 202010856018A CN 111814359 B CN111814359 B CN 111814359B
- Authority
- CN
- China
- Prior art keywords
- assembly
- time
- sequence
- assembly sequence
- sei
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/06—Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/18—Manufacturability analysis or optimisation for manufacturability
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种面向离散制造的集成车间调度与装配序列规划方法,包括以下步骤:S1、针对面向离散制造的集成车间调度与装配序列规划问题,建立目标函数以及约束条件的数学模型;S2、针对离散制造车间调度与装配序列规划方案,提出一种混合染色体编码方法,并通过NSGA‑Ⅱ算法进行求解;S3、根据决策者对目标的偏好,对非支配解集进行决策选择。本发明提出一种集成车间调度与装配序列规划方法,使工件的加工序列和装配序列能够被同时优化,以缩短生产过程中的总生产完成时间和总库存时间,可以有效缩短离散制造产品的生产时间,降低生产成本。
Description
技术领域
本发明属于智能制造领域,具体涉及一种面向离散制造的集成车间调度与装配序列规划方法。
背景技术
由于市场需求的快速变化,按订单生产(MTO)已经成为企业重要的生产方式之一,特别是对于一些复杂的大型产品,如重型机床,一般都是小批量个性化生产方式定制的,而生产过程是典型的离散制造过程。
在离散制造中,零件加工和产品装配是两个重要的阶段。为了缩短生产周期,节约制造成本,一般可以采用车间调度的方法生成最优的零件加工计划,将制造资源分配给不同的加工工序,以达到良好的加工效率和缩短生产周期。通过装配序列规划,生成最佳的产品装配序列,通过该序列,使得零件可以花费较短的装配时间或较少的装配成本成功、高效地装配到产品中。
目前的研究都是考虑装配作业的车间调度问题,但是在调度过程中,装配作业是根据给定的产品装配顺序和装配约束在不同的机器上进行分配的,其影响是不同的产品装配顺序对总生产完成时间和生产过程中零件的库存时间没有影响。在大型复杂产品(如重型机床)的离散制造中,在并行零件加工和装配过程中,生产过程中各零件的库存时间,会受到装配顺序的影响;另一方面,在产品装配过程中,通过车间调度生成的零件加工顺序也会影响装配时间。
因此,考虑到离散制造中零件加工过程与装配过程的相互影响关系,有必要进一步研究车间调度与装配序列规划之间的相互影响,提出一种集成车间调度与装配序列规划方法,使加工序列和装配序列同时优化,以进一步提高生产效率,节约企业制造成本。
发明内容
本发明的目的在于克服现有技术的不足,提供一种使工件的加工序列和装配序列能够被同时优化,可以有效缩短离散制造产品的生产时间,降低生产成本的面向离散制造的集成车间调度与装配序列规划方法。
本发明的目的是通过以下技术方案来实现的:一种面向离散制造的集成车间调度与装配序列规划方法,包括以下步骤:
S1、针对面向离散制造的集成车间调度与装配序列规划问题,建立目标函数以及约束条件的数学模型;
S2、针对离散制造车间调度与装配序列规划方案,提出一种混合染色体编码方法,并通过NSGA-Ⅱ算法进行求解;
S3、根据决策者对目标的偏好,对非支配解集进行决策选择。
进一步地,所述步骤S1具体包括以下内容:
S11、判断给定的装配序列是否发生装配干涉,建立目标函数MinF1和MinF2;其中,F1表示产品的总生产完成时间,F2表示生产过程中零件的总库存时间;
A、若给定的装配序列没有发生装配干涉,那么该序列是可行的,F1、F2分别表示为:
F1 = max(Eai) (1)
其中,Eni是零件Pi的库存时间,Eai表示零件Pi的装配完成时间,i=1,2,…,n,n表示零件数量;
B、如果给定的装配序列发生装配干涉,F1、F2分别表示为:
F1=max(Eai)×5×z (3)
其中,z是给定装配序列中的装配干涉次数;
为了得到目标函数的值,需要对产品的总生产完工时间进行计算,如下所述:在零件加工中,根据零件Pi的第j道工序的开始时间和零件Pi在机器Mk上的第j道工序的处理时间,k=1,2,…,m,m表示零件加工的机器数量;用式(5)计算零件Pi的第j道工序的完成时间Epij:
加工过程中零件Pi的完工时间是零件Pi的最后一道工序完成的时间,因此,
Epi=Epij,当j=Qi (6)
其中,Epi表示零件Pi的完工时间,Qi表示零件Pi的工序数;
在装配过程中,由于装配方向的改变、操作的改变和工具的改变都会增加装配时间,因此装配过程中零件Pi的完成时间计算如下:
Eai=Sai+Tai+ndi×tdi+nopi×topi+nti×tti (7)
其中,Sai表示零件Pi的开始装配时间,Tai表示零件Pi的装配时间;tdi表示当装配零件Pi的方向发生改变时的时间增加;topi表示当装配零件Pi的操作类型发生变化时的时间增加;tti表示当装配零件Pi的装配工具发生变化时的时间增加;ndi、nopi、nti均为布尔变量:
考虑到目前正在进行的零件加工和装配过程,给定装配顺序S:{Se1,Se2,…,Sei,…,Sen},零件PSei的装配过程在零件PSe(i-1)装配完成和零件PSei的所有工序加工完成后才能开始,因此零件PSei在装配中的开始时间计算如下:
SaSei=max(EpSei,EaSe(i-1)) (8)
基于式(6)、式(7)和式(8)得出零件Pi在装配中的完成时间,进而用式(1)得出产品的总生产完成时间;
在并行零件加工和装配过程中,给定装配序列S:{Se1,Se2,…,Sei,…,Sen},如果零件PSei的所有处理操作都已完成,而零件PSe(i-1)的装配尚未完成,则零件PSei将会产生库存占用;零件Pi的库存占用时间由下式得出:
Eni=max(Sai-Epi,0) (9)
在式(9)的基础上,用式(2)求出生产过程中零件的总库存时间,然后求出目标函数F2的值;
S12、建立约束条件:
同一时间,只能加工一个零件的一道工序,得到:
同一时间,一台机器只能加工一道工序,得到:
同一时间,一道工序只能在一台机器上加工,得到:
零件Pi的第j道工序的完工时间应早于零件Pi的第(j+1)道工序的开始时间,得到:
零件Pi的装配操作必须在零件Pi的所有工序加工完成后才能开始,得到:
在给定装配序列S:{Se1,Se2,…,Sei,…,Sen}下,当零件PSe(i-1)装配完成后,零件PSei才能开始装配,得到:
S13、从干涉矩阵中分析得出装配干涉次数以及给定装配序列中装配方向、操作和工具的变化次数。
进一步地,所述步骤S2具体包括以下内容:
S21、设计一种混合染色体编码机制:混合染色体编码结构包括加工序列和装配序列两部分;在染色体的加工序列部分,每个处理操作都被编码为染色体的一个基因;对于包含n个零件的产品,并且零件Pi具有Oi道工序,零件Pi将根据加工序列在染色体中出现Oi次;在染色体的装配序列部分,每个零件都被编码为染色体的一个基因,染色体中的零件顺序代表产品的装配顺序;
S22、进行选择操作:根据个体的等级和拥挤距离进行选择操作;
S23、进行交叉操作:由于混合染色体中两个片段具有不同的特征,分别对这两个染色体片段进行交叉操作;
S24、进行变异操作。
进一步地,所述步骤S3具体包括以下内容:在求得一组满足IJSSASP问题的非支配解集之后,需要对这一组解集进行决策选择,选择出更加符合生产需要的一个解;根据隶属度和方差加权和的方式对所求得的非支配解进行选择的思想,得出一个较优解:
其中,Uk是决策计算后的第k个非支配解的值,μ是非支配解的个数,Nobj是目标的个数,是第k个非支配解的第i个目标的值,第j个非支配解的第i个目标的值,αi是目标的权重;Fi为非支配解第i个目标的值,Fi max和Fi min分别为非支配解第i个目标的最大值和最小值,Ui根据公式(16)计算得到;最后,通过比较Uk值,选择Uk值最大的解。
本发明的有益效果是:面对离散制造,为了让产品的制造总时间最小和占用库存最小,本发明提出一种集成车间调度与装配序列规划方法,使工件的加工序列和装配序列能够被同时优化,以缩短生产过程中的总生产完成时间和总库存时间。本发明研究了离散制造中车间调度与装配序列规划的相互影响关系,建立了IJSSASP的目标函数和约束条件等数学模型。在此基础上,提出了一种基于混合染色体编码的NSGA-II算法来求解IJSSASP问题,并根据隶属度和方差加权和的思想,使决策者可以根据偏好对求解出的非支配解集进行决策选择。本发明提出的方法可以有效缩短离散制造产品的生产时间,降低生产成本。
附图说明
图1为本发明的面向离散制造的集成车间调度与装配序列规划方法的流程图;
图2为本发明的混合染色体的编码结构图;
图3为本发明Pareto解的图示;
图4为本发明混合染色体的交叉操作示意图;
图5为本发明交叉操作后修复的子代;
图6为本实施例的模锻压机部件的装配爆炸图
图7为本实施例基于IJSSASP方法产生的较优解甘特图。
具体实施方式
下面结合附图进一步说明本发明的技术方案。
如图1所示,本发明的一种面向离散制造的集成车间调度与装配序列规划方法,包括以下步骤:
S1、针对面向离散制造的集成车间调度与装配序列规划(Integrated Job ShopScheduling and Assembly Sequence Planning,IJSSASP)问题,建立目标函数以及约束条件的数学模型;
具体包括以下内容:
S11、判断给定的装配序列是否发生装配干涉,建立目标函数MinF1和MinF2;其中,F1表示产品的总生产完成时间,F2表示生产过程中零件的总库存时间,它会导致产品制造成本的增加;
A、若给定的装配序列没有发生装配干涉,那么该序列是可行的,F1、F2分别表示为:
F1=max(Eai) (1)
其中,Eni是零件Pi的库存时间,Eai表示零件Pi的装配完成时间,i=1,2,,n,n表示零件数量;
B、如果给定的装配序列发生装配干涉,F1、F2分别表示为:
F1=max(Eai)×5×z (3)
其中,z是给定装配序列中的装配干涉次数;
为了得到目标函数的值,需要对产品的总生产完工时间进行计算,如下所述:在零件加工中,根据零件Pi的第j道工序的开始时间和零件Pi在机器Mk上的第j道工序的处理时间,k=1,2,…,m,m表示零件加工的机器数量;用式(5)计算零件Pi的第j道工序的完成时间Epij:
加工过程中零件Pi的完工时间是零件Pi的最后一道工序完成的时间,因此,
Epi=Epij,当j=Qi (6)
其中,Epi表示零件Pi的完工时间,Qi表示零件Pi的工序数;
在装配过程中,由于装配方向的改变、操作的改变和工具的改变都会增加装配时间,因此装配过程中零件Pi的完成时间计算如下:
Eai=Sai+Tai+ndi×tdi+nopi×topi+nti×tti (7)
其中,Sai表示零件Pi的开始装配时间,Tai表示零件Pi的装配时间;tdi表示当装配零件Pi的方向发生改变时的时间增加;topi表示当装配零件Pi的操作类型发生变化时的时间增加;tti表示当装配零件Pi的装配工具发生变化时的时间增加;ndi、nopi、nti均为布尔变量:
考虑到目前正在进行的零件加工和装配过程,给定装配顺序S:{Se1,Se2,…,Sei,…,Sen},零件PSei的装配过程在零件PSe(i-1)装配完成和零件PSei的所有工序加工完成后才能开始,因此零件PSei在装配中的开始时间计算如下:
SaSei=max(EpSei,EaSe(i-1)) (8)
基于式(6)、式(7)和式(8)得出零件Pi在装配中的完成时间,进而用式(1)得出产品的总生产完成时间;
在并行零件加工和装配过程中,给定装配序列S:{Se1,Se2,…,Sei,…,Sen},如果零件PSei的所有处理操作都已完成,而零件PSe(i-1)的装配尚未完成,则零件PSei将会产生库存占用;零件Pi的库存占用时间由下式得出:
Eni=max(Sai-Epi,0) (9)
在式(9)的基础上,用式(2)求出生产过程中零件的总库存时间,然后求出目标函数F2的值;
S12、为了求解IJSSASP问题,除了建立优化目标函数,在并行零件加工和装配过程中,还需要满足以下约束条件:同一时间,只能加工一个零件的一道工序,得到:
同一时间,一台机器只能加工一道工序,得到:
同一时间,一道工序只能在一台机器上加工,得到:
零件Pi的第j道工序的完工时间应早于零件Pi的第(j+1)道工序的开始时间,得到:
零件Pi的装配操作必须在零件Pi的所有工序加工完成后才能开始,得到:
在给定装配序列S:{Se1,Se2,…,Sei,…,Sen}下,当零件PSe(i-1)装配完成后,零件PSei才能开始装配,得到:
S13、除上述约束条件外,为了得到求解IJSSASP问题的目标函数值,还需要计算得到装配干涉次数以及给定装配序列中装配方向、操作和工具的变化次数。在给定的装配序列中,可以从干涉矩阵中分析得出以上数据。在装配过程中,每一个零件都需要沿着一个没有装配干涉的方向装配到产品上。在本发明中,考虑空间坐标系六个方向(±X,±Y,±Z)被认为是可用的装配方向。
对于包含n个零件的装配产品,干涉矩阵IMd(d表示装配方向,d∈{X±,Y±,Z±}如下所示。
其中,元素Iij(i∈[1,n],j∈[1,n])的取值如下所示
根据干涉矩阵,可以得出在给定的装配顺序中,沿方向d(d∈{X±,Y±,Z±})将零件Pi(i∈[1,n])装配到产品上是否可行的结论。如果零件Pi六个方向中的任何一个都不能进行装配,则给定的装配序列是不可行的。
对一组装配序列中零件Pi的装配方向是否发生改变的ndi计算步骤为:
(1)针对一个零部件装配序列S:{Se1,Se2,…,Sei,…,Sen},令D(Sei)表示零件PSe(i-1)装配的可行装配方向;
(2)令i=1,q=1,ndi=0;
(3)如果D(Se1)∩D(Se2)∩...∩D(Se(i-1))≠Φ,但是
D(Se1)∩D(Se2)∩...∩D(Se(i-1))∩D(Sei)=Φ,那么待装配体的零部件Pi需要改变一次装配方向,ndi=ndi+1;
(4)结束。
对一组装配序列中零件Pi的装配方式和装配工具是否发生改变的nopi和nti计算步骤如ndi的计算方法相似。
S2、针对离散制造车间调度与装配序列规划方案,提出一种混合染色体编码方法,并通过NSGA-Ⅱ算法进行求解;
具体包括以下内容:
S21、设计一种混合染色体编码机制:混合染色体编码结构包括加工序列和装配序列两部分,如图2所示;在染色体的加工序列部分,每个处理操作都被编码为染色体的一个基因;对于包含n个零件的产品,并且零件Pi具有Oi道工序(i∈[1,n]),零件Pi将根据加工序列在染色体中出现Oi次;例如,在给定染色体的加工序列为[3 1 2 4 1 3 2 5 4 5 1 2 34 5](图2中),则表示有五个零件P1、P2、P3、P4和P5,每个零件分别有三道工序。基于上述染色体片段的处理顺序是:首先处理零件P3的第一道工序,然后处理零件P1的第一道工序,第三次处理零件P2的第一道工序,第四次处理零件P4的第一道工序,然后处理零件P1的第二道工序,等等。
在染色体的装配序列部分,每个零件都被编码为染色体的一个基因,染色体中的零件顺序代表产品的装配顺序;例如,给定染色体的装配序列段为[4 1 2 3 5](图2中),则表示产品的装配顺序为P4-P1-P2-P3-P5。
在用NSGA-II求解IJSSASP问题的优化方法中,染色体的加工序列段和装配序列段之间存在相互影响关系。IJSSASP问题求解方案的目标函数值,如生产过程中零件的总生产完成时间和总库存时间,将受到零件加工顺序和装配顺序不同组合的影响。
S22:进行选择操作:利用选择操作从亲本和后代染色体中根据步骤S1得出的目标函数值,选择出下一代。为了保证解的多样性,将根据个体的等级和拥挤距离进行选择操作;基于非支配解等级和拥挤距离,采用传统锦标赛方法进行选择操作;在每次进行选择的过程中,选择非支配解等级低且拥挤距离大的解;
对于一个种群,如果一组个体都是非支配的,则将这组非支配个体的等级设为1,并将这组非支配个体从种群中剔除。同样,等级为2的非支配个体可以根据非支配关系由剩余个体生成,依此类推。利用上述方法,可以得到种群中所有个体的等级,如图3所示。根据目标函数,将同一等级的个体划分为一个集合。在一组个体中,设目标函数Fm的最大值为设为目标函数Fm的最小值为
为了得到个体的拥挤距离,将边界上两个个体的拥挤距离设为无穷大,则第i个个体的拥挤距离可由式17求得。其中Fm(i+1)和Fm(i-1)分别表示第(i+1)个和第(i-1)个个体的第m个目标函数值,Nobj是目标函数的个数。
基于上述方法,可以通过以下步骤选择具有N个个体的新一代:首先,将群体中的2N个个体进行排序并分布到不同的集合r1,r2,…,rn中,然后计算每个个体的拥挤距离。第二步,按从低到高的顺序选择集合,将集合r1,r2,…,ri中的个体依次加入到一个新的群体中,直到新的群体数大于N或等于N。第三,如果新的群体数等于N,则结束选择操作。否则,如果新种群数大于N,则根据集合ri中每个个体的拥挤距离,将拥挤距离较小的个体从新种群中剔除,直到新种群数为N。
S23:进行交叉操作:由于混合染色体中两个片段(加工序列片段和装配序列片段)具有不同的特征,分别对这两个染色体片段进行交叉操作,如图4所示。
从初始群体中随机选取一对混合染色体作为父代,在混合染色体的加工序列段和装配序列段内随机产生两个交叉点,在每个染色体段形成两个基因片段。然后,通过交换来自两个父代染色体片段的基因片段,分别产生两个后代。但是,由于每个零件的加工操作次数固定,以及产品中零件的数量固定,这些子代染色体片段很容易产生非法解,如零件的工序数的增加或减少,加工序列段和装配序列段的零件号的增加或减少。如图3所示,进行交叉操作之后,在子代C染色体的加工序列部分,零件P1有4道工序,零件P5仅有1道工序;在染色体的装配序列部分,零件P4出现两次,而零件P5消失。因此,子代染色体C明显是一个不合法的染色体。
为了解决上述问题,在交叉操作之后,需要对生成的子代进行修复,如图5所示;本发明提出了如下修复机制:
(1)将所选后代的交换基因片段与相应的父代染色体进行比较;
(2)在后代中分别找出n个增加的基因IG:{IG1,IG2,…,IGn},n个减少的基因DG:{DG1,DG2,…,DGn};
(3)设i=1,j=1;
(4)随机选择一个基因Ii(Ii∈IG)和一个基因Dj(Dj∈DG),分别从IG中去掉Ii和DG中去掉Dj;
(5)用第(4)步中选择的基因Dj替换基因Ii;然后,i=i+1,j=j+1;
(6)如果i>n,则转到步骤7;否则,则转到步骤(4);
(7)结束。
S24:进行变异操作;交叉操作后,由于杂交染色体中两个片段的特性不同,将对后代的两个染色体片段分别进行变异操作。在变异过程中,在后代的每个染色体区段随机选择两个基因位置,然后在后代的每个染色体区段分别交换这两个选择的基因。利用上述变异方法,可以保证后代染色体的合理性。
S3、根据决策者对目标的偏好,对非支配解集进行决策选择;具体包括以下内容:在求得一组满足IJSSASP问题的非支配解集之后,需要对这一组解集进行决策选择,选择出更加符合生产需要的一个解;根据隶属度和方差加权和的方式对所求得的非支配解进行选择的思想,得出一个较优解:
其中,Uk是决策计算后的第k个非支配解的值,μ是非支配解的个数,Nobj是目标的个数,是第k个非支配解的第i个目标的值,第j个非支配解的第i个目标的值,αi是目标的权重;Fi为非支配解第i个目标的值,和分别为非支配解第i个目标的最大值和最小值,Ui根据公式(18)计算得到;最后,通过比较Uk值,选择Uk值最大的解。
以下通过具体实施例对本发明优化方法的流程做进一步说明,以展示本发明的优点:在本实例中,以图6所示大型模锻压机的一个部件为例,基于Matlab编程,具体包括以下步骤:
S1:确定该部件的零件组成,确定每个零件的加工信息见表1,确定各零件的装配工艺信息见表2。
表1
表2
S2:如图6所示,对模锻压机的各零件编号,根据零件之间的装配关系建立零件的干涉矩阵,见表3-表8,根据表2中的装配工艺信息,确定零件的装配方式和装配工具。
表3X轴正方向的零件干涉矩阵
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
表4X轴负方向的零件干涉矩阵
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
0 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 00 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
表5Y轴正方向的零件干涉矩阵
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
表6Y轴负方向的零件干涉矩阵
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 |
0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
表7Z轴正方向的零件干涉矩阵
表8Z轴负方向的零件干涉矩阵
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
S3:根据装配干涉矩阵,对装配序列可行性判定。
S4:当装配方向改变、操作类型改变和装配零件的工具改变时,时间增加分别设置为tdi=5h、topi=3h、tti=2h。在所提出的NSGA-II优化方法中,将种群规模设为200,交叉概率设为0.8,变异概率设为0.6,最大生成数设为200,权重系数ω1和ω2设为0.5和0.5。由于在决策过程中,总生产时间和总库存时间两个优化目标并没有明显偏好,因此目标权重α1和α2分别设置为0.5和0.5。
程序运行结果如图7所示,甘特图中包含两个部分,加工序列和装配序列。加工序列表示不同机器中不同部件的加工顺序。例如,在机器M4中,加工顺序为:401-1301-902-1402-1201-1102-1002-503,它由零件的不同加工工序组成,例如1301表示加工零件P13的第一道工序,902表示加工零件P9的第二道工序。根据加工序列,可以从图6的甘特图中获得某台机器中不同零件的不同工序的开始加工时间和加工完成时间。在图6所示的装配序列中,可以得到装配过程中每个零件的开始装配时间和装配完成时间,也可以得到零件的装配等待时间。如图7所示,在零件P1和P7、P9和P4之间,由于零件P7和P4的加工操作分别在零件P1和P9装配完成时仍未完成,因此发生了两个零件的装配等待时间。
从图7可以看出,用本发明提出的IJSSASP方法得到的最优解代表了考虑两个优化目标(产品的总生产完成时间和生产过程中零件的总库存时间)的均衡解。基于此方案,装配过程将在零件加工开始后约150小时开始,然后零件加工过程和装配过程同时进行。在这个最优解中,两个优化目标的值分别为:产品的总生产完成时间为584h,生产过程中零件的总库存时间为424h,零件加工完成时间为538h,该最佳方案的装配顺序为:1-7-14-9-4-13-6-15-3-2-12-10-11-5-8,装配方向变化次数为4,装配工具变化次数为8,装配操作变化次数为8。
表9给出了用IJSSASP方法进行并行生产所得结果与用分离车间调度(JSS)和装配序列规划(ASP)方法进行传统生产,以及与考虑装配过程的JSS并行生产所得结果的比较。
表9
从表9可以看出,用IJSSASP方法得到的总生产完成时间和总库存时间明显短于用分离JSS和ASP的传统方法得到的总库存时间,特别是用IJSSASP方法可以大大缩短总库存时间。然而,用IJSSASP方法得到的零件加工完成时间、装配方向变化次数、刀具变化次数和操作类型变化次数分别大于用分离JSS和ASP的传统方法所得到的结果。与考虑装配过程的JSS并行生产相比,IJSSASP方法同样可以获得更短的总生产完成时间和更短的总库存时间。
本发明提出了一种面向离散制造的集成车间调度与装配序列规划方法(IJSSASP),使零件加工序列与装配序列同时进行优化,以缩短生产过程中的总生产完成时间和总库存时间。该发明研究了离散制造中车间调度与装配序列规划的相互影响关系,建立了IJSSASP的目标函数和约束条件等数学模型。在此基础上,提出了一种基于混合染色体编码的NSGA-II算法来求解IJSSASP问题,并根据隶属度和方差加权和的思想,使决策者可以根据偏好对求解出的非支配解集进行决策选择。该发明提出的方法,可以有效缩短离散制造产品的生产时间,降低生产成本。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (1)
1.一种面向离散制造的集成车间调度与装配序列规划方法,其特征在于,包括以下步骤:
S1、针对面向离散制造的集成车间调度与装配序列规划问题,建立目标函数以及约束条件的数学模型;具体包括以下内容:
S11、判断给定的装配序列是否发生装配干涉,建立目标函数MinF1和MinF2;其中,F1表示产品的总生产完成时间,F2表示生产过程中零件的总库存时间;
A、若给定的装配序列没有发生装配干涉,那么该序列是可行的,F1、F2分别表示为:
F1=max(Eai) (1)
其中,Eni是零件Pi的库存时间,Eai表示零件Pi的装配完成时间,i=1,2,…,n,n表示零件数量;
B、如果给定的装配序列发生装配干涉,F1、F2分别表示为:
F1=max(Eai)×5×z (3)
其中,z是给定装配序列中的装配干涉次数;
为了得到目标函数的值,需要对产品的总生产完工时间进行计算,如下所述:在零件加工中,根据零件Pi的第j道工序的开始时间和零件Pi在机器Mk上的第j道工序的处理时间,k=1,2,…,m,m表示零件加工的机器数量;用式(5)计算零件Pi的第j道工序的完成时间Epij:
加工过程中零件Pi的完工时间是零件Pi的最后一道工序完成的时间,因此,
Epi=Epij,当j=Qi (6)
其中,Epi表示零件Pi的完工时间,Qi表示零件Pi的工序数;
在装配过程中,由于装配方向的改变、操作的改变和工具的改变都会增加装配时间,因此装配过程中零件Pi的完成时间计算如下:
Eai=Sai+Tai+ndi×tdi+nopi×topi+nti×tti (7)
其中,Sai表示零件Pi的开始装配时间,Tai表示零件Pi的装配时间;tdi表示当装配零件Pi的方向发生改变时的时间增加;topi表示当装配零件Pi的操作类型发生变化时的时间增加;tti表示当装配零件Pi的装配工具发生变化时的时间增加;ndi、nopi、nti均为布尔变量:
考虑到目前正在进行的零件加工和装配过程,给定装配顺序S:{Se1,Se2,…,Sei,…,Sen},零件PSei的装配过程在零件PSe(i-1)装配完成和零件PSei的所有工序加工完成后才能开始,因此零件PSei在装配中的开始时间计算如下:
SaSei=max(EpSei,EaSe(i-1)) (8)
基于式(6)、式(7)和式(8)得出零件Pi在装配中的完成时间,进而用式(1)得出产品的总生产完成时间;
在并行零件加工和装配过程中,给定装配序列S:{Se1,Se2,…,Sei,…,Sen},如果零件PSei的所有处理操作都已完成,而零件PSe(i-1)的装配尚未完成,则零件PSei将会产生库存占用;零件Pi的库存占用时间由下式得出:
Eni=max(Sai-Epi,0) (9)
在式(9)的基础上,用式(2)求出生产过程中零件的总库存时间,然后求出目标函数F2的值;
S12、建立约束条件:
同一时间,只能加工一个零件的一道工序,得到:
同一时间,一台机器只能加工一道工序,得到:
同一时间,一道工序只能在一台机器上加工,得到:
零件Pi的第j道工序的完工时间应早于零件Pi的第(j+1)道工序的开始时间,得到:
零件Pi的装配操作必须在零件Pi的所有工序加工完成后才能开始,得到:
在给定装配序列S:{Se1,Se2,…,Sei,…,Sen}下,当零件PSe(i-1)装配完成后,零件PSei才能开始装配,得到:
S13、从干涉矩阵中分析得出装配干涉次数以及给定装配序列中装配方向、操作和工具的变化次数;
S2、针对离散制造车间调度与装配序列规划方案,提出一种混合染色体编码方法,并通过NSGA-Ⅱ算法进行求解;具体包括以下内容:
S21、设计一种混合染色体编码机制:混合染色体编码结构包括加工序列和装配序列两部分;在染色体的加工序列部分,每个处理操作都被编码为染色体的一个基因;对于包含n个零件的产品,并且零件Pi具有Oi道工序,零件Pi将根据加工序列在染色体中出现Oi次;在染色体的装配序列部分,每个零件都被编码为染色体的一个基因,染色体中的零件顺序代表产品的装配顺序;
S22、进行选择操作:根据个体的等级和拥挤距离进行选择操作;
S23、进行交叉操作:由于混合染色体中两个片段具有不同的特征,分别对这两个染色体片段进行交叉操作;
S24、进行变异操作;
S3、根据决策者对目标的偏好,对非支配解集进行决策选择;具体包括以下内容:在求得一组满足IJSSASP问题的非支配解集之后,需要对这一组解集进行决策选择,选择出更加符合生产需要的一个解;根据隶属度和方差加权和的方式对所求得的非支配解进行选择的思想,得出一个较优解:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010856018.7A CN111814359B (zh) | 2020-08-24 | 2020-08-24 | 一种面向离散制造的集成车间调度与装配序列规划方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010856018.7A CN111814359B (zh) | 2020-08-24 | 2020-08-24 | 一种面向离散制造的集成车间调度与装配序列规划方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111814359A CN111814359A (zh) | 2020-10-23 |
CN111814359B true CN111814359B (zh) | 2023-03-21 |
Family
ID=72860307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010856018.7A Active CN111814359B (zh) | 2020-08-24 | 2020-08-24 | 一种面向离散制造的集成车间调度与装配序列规划方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111814359B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113341896B (zh) * | 2021-06-07 | 2022-08-05 | 电子科技大学 | 面向离散制造的动态集成车间调度与装配序列规划方法 |
CN113902212B (zh) * | 2021-10-25 | 2022-04-12 | 上海新科乾物联技术有限公司 | 一种生产线生产序列调度方法、系统、存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107918805A (zh) * | 2017-11-13 | 2018-04-17 | 浙江大学 | 一种智能的航空发动机装配车间调度系统 |
CN110619437A (zh) * | 2019-09-20 | 2019-12-27 | 国网江苏省电力有限公司电力科学研究院 | 一种低能耗柔性作业车间调度方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005015404A2 (en) * | 2003-08-06 | 2005-02-17 | Moshe Halevy | Method and apparatus for unified performance modeling with monitoring and analysis of complex systems |
CN105974794B (zh) * | 2016-06-08 | 2018-07-17 | 江南大学 | 基于改进的猫群算法的离散制造车间调度方法 |
CN110598920B (zh) * | 2019-08-29 | 2023-03-17 | 华中科技大学 | 用于铸造并行车间主生产计划的多目标优化方法及系统 |
CN110866586B (zh) * | 2019-10-14 | 2021-03-16 | 西南交通大学 | 用于受资源约束多项目调度的改进遗传规划算法优化方法 |
CN110991056B (zh) * | 2019-12-09 | 2021-08-06 | 西南交通大学 | 一种基于遗传变邻域算法的飞机装配线作业调度方法 |
CN111027773A (zh) * | 2019-12-11 | 2020-04-17 | 河北工业大学 | 一种基于遗传算法的柔性车间调度的混合优化方法 |
CN113341896B (zh) * | 2021-06-07 | 2022-08-05 | 电子科技大学 | 面向离散制造的动态集成车间调度与装配序列规划方法 |
-
2020
- 2020-08-24 CN CN202010856018.7A patent/CN111814359B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107918805A (zh) * | 2017-11-13 | 2018-04-17 | 浙江大学 | 一种智能的航空发动机装配车间调度系统 |
CN110619437A (zh) * | 2019-09-20 | 2019-12-27 | 国网江苏省电力有限公司电力科学研究院 | 一种低能耗柔性作业车间调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111814359A (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109359884B (zh) | 航空复杂装备结构件车间作业计划及重调度方法 | |
CN111738578B (zh) | 一种动态环境下的离散型生产车间调度方法 | |
CN111814359B (zh) | 一种面向离散制造的集成车间调度与装配序列规划方法 | |
CN110619437A (zh) | 一种低能耗柔性作业车间调度方法 | |
CN113361860B (zh) | 考虑疲劳度的柔性流水车间调度控制方法、介质及设备 | |
CN111340345B (zh) | 一种基于改进粒子群算法的刀具调度方法 | |
CN117035364A (zh) | 基于改进混合模因算法的分布式异构流水车间调度方法 | |
CN115796510A (zh) | 一种基于改进的变邻域遗传算法的多目标柔性作业车间调度方法 | |
Li et al. | Optimization of machining datum selection and machining tolerance allocation with genetic algorithms | |
CN115049246A (zh) | 一种面向订单扰动下的离散制造生产线重调度方法 | |
CN110705844B (zh) | 基于非强制空闲时间的作业车间调度方案鲁棒优化方法 | |
CN116224946B (zh) | 机械件加工车间生产与物流集成的优化调度方法与系统 | |
CN112541694A (zh) | 一种考虑准备时间和工件分批的柔性作业车间调度方法 | |
CN117077975A (zh) | 基于混合初始化模因算法的分布式异构流水车间调度方法 | |
CN115936342A (zh) | 一种基于多目标算法的柔性作业车间批量调度方法 | |
CN114676987B (zh) | 一种基于超启发式算法的智能柔性作业车间主动调度方法 | |
CN116360355A (zh) | 基于nsga-iii算法求解车间调度问题的方法 | |
CN113792494B (zh) | 基于迁徙鸟群算法和交叉融合的多目标柔性作业车间调度方法 | |
CN113485278B (zh) | 优化两生产指标的柔性作业车间调度多目标分布估计方法 | |
CN115204619A (zh) | 基于改进遗传算法解码的柔性车间调度方法、设备及系统 | |
Saravanan et al. | Study on reduction of machining time in CNC turning centre by genetic algorithm | |
CN114237166A (zh) | 基于改进spea2算法求解多转速节能调度问题的方法 | |
CN114967615A (zh) | 一种基于离散花朵授粉算法的装配车间调度集成优化方法 | |
CN112631214B (zh) | 基于改进入侵杂草优化算法的柔性作业车间分批调度方法 | |
CN112882449B (zh) | 一种多品种小批量多目标柔性作业车间能耗优化调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |