CN115933570B - 一种考虑产品工序差异的混流装配线平衡方法 - Google Patents
一种考虑产品工序差异的混流装配线平衡方法 Download PDFInfo
- Publication number
- CN115933570B CN115933570B CN202211698621.2A CN202211698621A CN115933570B CN 115933570 B CN115933570 B CN 115933570B CN 202211698621 A CN202211698621 A CN 202211698621A CN 115933570 B CN115933570 B CN 115933570B
- Authority
- CN
- China
- Prior art keywords
- workers
- group
- procedure
- flow
- products
- 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
- 238000000034 method Methods 0.000 title claims abstract description 440
- 238000004519 manufacturing process Methods 0.000 claims abstract description 53
- 238000005111 flow chemistry technique Methods 0.000 claims abstract description 18
- 210000000349 chromosome Anatomy 0.000 claims description 23
- 238000003754 machining Methods 0.000 claims description 13
- 238000009826 distribution Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000002068 genetic effect Effects 0.000 claims description 2
- VWDWKYIASSYTQR-UHFFFAOYSA-N sodium nitrate Chemical compound [Na+].[O-][N+]([O-])=O VWDWKYIASSYTQR-UHFFFAOYSA-N 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 244000025254 Cannabis sativa Species 0.000 description 1
- 235000012766 Cannabis sativa ssp. sativa var. sativa Nutrition 0.000 description 1
- 235000012765 Cannabis sativa ssp. sativa var. spontanea Nutrition 0.000 description 1
- 101100136092 Drosophila melanogaster peng gene Proteins 0.000 description 1
- 235000009120 camo Nutrition 0.000 description 1
- 235000005607 chanvre indien Nutrition 0.000 description 1
- 238000000407 epitaxy Methods 0.000 description 1
- 239000011487 hemp Substances 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- -1 li Maocheng Proteins 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- General Factory Administration (AREA)
Abstract
本发明公开了一种考虑产品工序差异的混流装配线平衡方法。所述方法包括:收集生产数据;从数据分析混流装配线的产品工序差异,并根据产品工序差异将工序划分为流动加工工序组和常规工序组;采用后续加工时间作为启发式信息初始化种群;采用考虑工序差异的解码方式对个体进行解码,根据解码信息获取工台数NS及工人数量WRtotal,并计算个体的适应度函数值,更新种群中的所有个体;判断是否达到终止条件,如果达到条件,将当前找到的最优解作为全局最优解输出。本发明的一种考虑产品工序差异的混流装配线平衡方法能够对混流装配线平衡问题实现有效的求解,能有效提高大型装配线的生产效率,降低生产成本。
Description
技术领域
本发明涉及制造业中装配线平衡领域,具体涉及一种考虑产品工序差异的混流装配线平衡方法
背景技术
在装配线平衡问题中,一条装配线上通常包含若干工台,待加工的产品需要依次通过所有工台,并在每个工台由指定的工人完成对应的工序加工任务,使产品完成装配过程。装配过程在工业生产制造中具有重要意义,在设计调度方案时需要综合考虑各方面因素,如果调度方案不合理,容易造成生产线上的台位忙闲不均,以及台位过多导致生产周期过长等问题。混流装配线相比简单装配线,具有更多约束条件,使得调度方案的设计更加复杂。复杂装配线的平衡问题属于NP-hard问题,当问题规模较大时,难以在可接受的时间内求得最优解。因此通常使用元启发式算法或进化计算方法对装配线平衡问题进行求解。
目前的混流装配线平衡方法,没有充分考虑到产品的混流特性,通常将多产品优先关系进行综合考虑。本发明考虑了产品间的工序差异性,并根据工序差异将任务分为流动加工工序和常规工序,从而提高的工人的工作效率,并且使得工人指派更加灵活。现有方法(刘峰,汪孝胜,麻茹雪,洪鹏,李茂盛,陶凌峰,高磊,刘哲,汪乐,金磊.一种混流装配线平衡优化调度方法[P].江苏省:CN112528524A,2021-03-19.)在求解过程中未考虑产品间的工序差异。
发明内容
本发明的目的是提供一种考虑产品工序差异的混流装配线平衡方法,通过分析产品间工序的差异,将工序划分为流动加工工序组和常规工序组,划分后可以使得工序的指派更加灵活,从而大大装配线的生产效率。
本发明的目的至少通过如下技术方案之一实现。
一种考虑产品工序差异的混流装配线平衡方法,包括以下步骤:
S1、收集生产数据;
S2、分析混流装配线的各产品间工序差异性,根据产品间工序差异性将工序划分为流动加工工序组和常规工序组;
S3、对算法参数进行初始化;
S4、将工序的后续加工时间并作为启发式信息初始化种群;
S5、采用考虑产品工序差异的方法进行解码,根据解码信息获取工台数NS及工人数量WRtotal,并计算个体的适应度函数值;
S6、更新种群中的所有个体;判断算法是否达到终止条件,如果未达到终止条件返回步骤S5进行迭代,否则输出结果。
进一步地,在步骤S1中,需要收集大量与混流装配线生产相关的生产数据;
在装配线生产过程中,待加工产品需要依次通过所有工台,并在每个工台上执行相应的工序加工任务,生产节拍则表示产品从一个工台移动到下一个工台的时间;
在混流装配线中,一条装配线需要加工多种类似产品,各类产品间工序的差异不大;
需要在生产过程中收集的生产数据包括:产品种类M,以及每种产品所包括的工序OSm、工序的优先关系约束和工序总数量N;
对于每一道工序oi,还需要收集完成工序oi所需工人数量pi,以及工序oi的加工时长ti。
进一步地,在步骤S2中,根据产品间工序差异性将工序划分为流动加工工序组和常规工序组,具体方式如下:
记所有产品均包括的工序集合为S0,定义为常规工序组;每类产品中属于OSm但不属于S0的工序集合为Sm,定义为各类产品的流动加工工序组,m=1,2,…,M;
通过划分流动加工工序组和常规工序组,将工序划分为M+1组,其中包括M个流动加工工序组Sm和一个常规工序组S0,对于每一道工序oi,都有其对应的所属工序组集合Si,并且若工序oi对应的所属工序组集合Si中包括有常规工序组S0,则Si仅包括S0;若Si中不包括常规工序组S0,则Si中可能包括多个流动加工工序组Sm,即一道工序oi可能属于多个流动加工工序组Sm。
进一步地,在步骤S2中,提出了流动加工工序的概念,流动加工工序定义为流动加工工序组Sm中的工序,其特点是对某一流动加工工序,只有部分产品包括该工序;
与流动加工工序组相对应的为常规工序组,其中的工序为常规工序,所有产品均包括常规工序;
流动工人专门负责流动加工工序,流动工人与常规工人的区别在于其在每个生产节拍的工作任务不同,每个生产节拍下流动工人的加工情况被称为工作模态u;
为便于说明工作模态及流动加工的概念,假设各产品需求量相同,不失一般性,可以认为不同种类的产品以固定的顺序投产,对于m个待加工的产品Mm,m个流动工人组在m个工台上的流动加工过程如下:
在工作模态1中,1号工台上加工的产品为M1,故在1号工台上加工的工序组包括常规工序组S0,以及产品M1对应的流动加工工序组S1;在1号工台上执行加工任务的工人组为常规工人组W0以及产品M1对应的流动工人组W1,其他工台上的安排以此类推;
在工作模态2中,由于经过了一个生产节拍,所有产品均流动到下一个工台,按投产顺序此时1号工台加工的产品为Mm,对应的工序组包括常规工序组S0,以及产品Mm对应的流动加工工序组Sm,对应的工人组为常规工人组W0以及产品Mm对应的流动工人组Wm;此时2号工台加工的产品为M1,故在工作模态1中产品M1对应的流动工人组W1跟随产品流动到2号工台,负责执行2号工台上产品M1对应的流动加工工序组S1中的流动加工工序,以此类推,从而实现了工人在工台上的流动加工;
当各产品需求量不同时,可能出现相同类型的产品连续投入生产线的情况,此时流动加工工人仍然以上述方式流动。
由于产品有各自的流动加工工序组,一道流动加工工序不需要在每个工作模态下都进行加工,如果不考虑流动加工,则负责流动加工工序的工人在不同工作模态下的工作负载差距较大,引入流动加工的概念后,通过分配少量工人负责流动加工工序,可以使得工人的工作效率更高。
进一步地,在步骤S3中,需要初始化的算法参数包括:种群数量PS、最大迭代次数Niter、单个工台所能容纳的最大工人数MW以及生产节拍CT。
进一步地,在步骤S4中,使用启发式方法对种群进行初始化,采用的编码方式为基于工序的编码,即将问题的解表示为N道工序的全排列,并且需要保证工序在解中的排列满足工序间的优先关系约束,即工序oi的紧后工序不会出现在工序oi之前,将优先关系约束的保证放在编码阶段,可以减少解码阶段的工作量和设计难度;种群的初始化即为生成PS个问题的解,这些解也被称为染色体X;
在进行种群初始化前,需要计算每道工序的后续加工时间,一个工序的后续加工时间的定义如下:
以该工序为起点,以一个没有紧后工序的工序为终点的路径上,所有工序的时间之和的最大值;
工序的后续加工时间可以体现工序加工的紧迫性,后续加工时间长的工序尽早完成加工,才能让其紧后工序得以加工,从而缩短的完工时间;
根据这种启发式规则,在产生初始种群时,采用通过单调递增的概率密度函数产生随机数的方法使得后续加工时间长的工序更可能出现在解中靠前的位置。
进一步地,种群初始化的具体过程如下:
S4.1、设当前种群数量s=0;
S4.2、若s<PS,则s=s+1,执行步骤S4.3,否则结束循环,输出初始种群;
S4.3、将所有紧前工序数量为0的工序集合记为集合A,记集合B为空集,初始化染色体Xs为空;
S4.4、如果集合A为空集,则将当前染色体Xs保存为初始种群中的一个染色体个体,返回步骤S4.2,否则执行步骤S4.5;
S4.6、记集合A中元素个数为SA,将集合A中所有工序按照后续加工时间从小到大排列,并且按照排列顺序编号为0,1,…,SA-2,SA-1;
S4.5、通过随机分布P产生随机数x,并要求P的概率密度函数必须是定义在[0,1]上的单调递增函数,计算i=[x*SA],并将A中编号为i的工序oi加入染色体X中,其中[]为向下取整符号;
S4.6、将集合A中编号为i的工序oi从集合A中删除并加入到集合B中,遍历工序oi的每一道紧后工序,若存在一道紧后工序的所有紧前工序都属于集合B,则将该紧后工序加入集合A,完成集合A和集合B的更新,返回执行步骤S4.4。
进一步地,在步骤S5中,采用考虑产品工序差异的方法进行解码,计算种群中每个个体X的适应度函数值f(X),具体如下:
f(X)=UB-(ω1NS+ω2WRtotal)
其中,ω1,ω2分别为总工台数NS与总工人数WRtotal对应的系数,UB为ω1NS+ω2WRtotal的上限值,
在计算适应度前需要通过解码策略,将染色体X解码为一个可行的混流装配线的调度方案,具体解码过程如下:
S5.1、获取初始参数,包括每个工台所能容纳的最大工人数MW,生产节拍CT,记总工台数NS=1,常规工人总数WRNtotal=0,当前工台总工人数CWR=0,各工台流动加工工序组人数WRFmk=0,其中下标k对应工台,下标m对应流动加工工序组编号,各工序允许开始时间Tim=0,其中下标i对应工序编号,下标m对应流动加工工序组编号;令工序队列Q等于当前解码的染色体个体X;
S5.2、若工序队列Q已为空,则解码完成,转至步骤S5.8;否则读取当前工序队列Q顶端的工序oi的信息,包括所属工序组集合Si、所需工人数量pi、允许开始时间Tim以及加工时间ti,并将工序oi对应的所属工序组集合Si中的元素编号为Sij,j=1,2,…,|Si|;
S5.3、判断Si中所有的工序组Sij是否已经分配完,如果是,转至步骤S5.2,否则对将Si中的下一个元素赋值给Sij,转至步骤S5.4;
S5.4、判断当前工台k上已分配的工人是否能满足加工要求,即寻找当前工台是否存在pi个属于Sij工序组的工人,且这些工人同时空闲的时间窗口[ta,tb]长度大于ti,且ta≥Tim,若存在满足条件的工人,则将工序oi分配到工台k,转至步骤S5.5;否则转至步骤S5.6;
S5.5、遍历工序oi的所有紧后工序,如果存在某紧后工序对应流动加工工序组的允许开工时间小于ta+ti,则修改为ta+ti,否则保持不变;若j=|Si|,则结束工序oi的指派,并将工序oi移出工序队列Q,转至步骤S5.2,否则,j=j+1转至步骤S5.4;
S5.6、判断当前工台k是否能够增加工人,根据当前工台总工人数CWR是否超过工台所能容纳的最大工人数MW进行判断,其中CWR=CWR0+CWRj,CWR0指工台k已分配的常规工人数,CWRj指工台k已分配的流动加工工序组Sij的工人数,若CWR<MW,则添加一个Sij工序组的工人,若Sij为常规工序组,CWR0=CWR0+1,若Sij为流动加工工序组,则CWRj=CWRj+1,转到步骤S5.4;若CWR≥MW,转至步骤S5.7;
S5.7、记录当前工台中的各流动加工工序组人数WRFmk=CWRm,m=1,2,…,M;其中下标m对应流动加工工序组编号,下标k对应工台编号;记录当前总常规工人数WRNtotal=WRNtotal+CWR0,开启新工台,NS=NS+1设CWR=0,tsi=0,转到步骤S5.3;
S5.8、输出调度方案,记录总工台数NS,常规工人数WRNtotal以及各工台中的流动加工工序组人数WRFmk,并根据WRFmk计算总工人数WRtotal。
进一步地,在步骤S5.8中,需要计算总工人数WRtotal来计算染色体X的适应度函数值;其中WRtotal=WRNtotal+WRFtotal,WRFtotal通过以下步骤计算得出:
S5.8.1、对于某一工作模态u,每个工台k均加工某一对应品种的产品Mh,并由对应的流动工人完成流动加工工序的加工;在工作模态u下,所需要的流动工人数WRFu,total=∑kWRFhk,其中Mh为工作模态u下在工台k下加工的产品类型;
S5.8.2、对每一个工作模态u计算流动工人数WRFu,total,取max(WRFu,total)为最终所需的总流动工人数WRFtotal。
进一步地,在步骤S6中,根据步骤S5中计算出种群中每个个体X的适应度值f(X),采用遗传算法更新种群中的每个个体X,并判断迭代次数是否达到上限值Niter;如果达到上限,则将当前种群中的最优解输出,并解码为一个完整的调度方案,以指导实际生产过程。
相比于现有技术,本发明的优点在于:
本发明从产品间的工序差异性出发,分析了不同工序的特点,通过提出流动加工工序的概念,以避免一般指派规则下可能出现工人只在某类产品来到工作站时才需要工作,从而提高的工人的工作效率,并且使得任务指派更加灵活。
附图说明
图1为本发明实施例中一种考虑产品工序差异的混流装配线平衡方法的流程图。
图2为本发明实施例中有关流动加工工序和工作模态的示意图。
图3为本发明实施例中工序综合优先关系的示意图。
图4为本发明实施例中种群初始化阶段的流程图。
图5为本发明实施例中考虑产品工序差异性的解码方法流程图。
具体实施方案
以下结合附图和案例对本发明的技术方案做进一步的说明。
实施例:
一种考虑产品工序差异的混流装配线平衡方法,如图1所示,包括以下步骤:
S1、收集生产数据;
在本实施例所考虑的混流装配线平衡问题中,一条装配线上有多个工台,工人们在工台上完成工序的加工,工序在工台上可以并行加工,工台可以同时容纳的工人数有限;装配线需要生产多种工序差异不大的产品,每种产品由一系列具有优先关系约束的工序组成,一个产品需要通过装配线上的所有工台,在不违反优先关系约束的情况下由工人完成其所包含的全部工序;一道工序需要pi个工人加工ti时间来完成。
需要在生产过程中收集的生产数据包括:产品种类M,以及每种产品所包括的工序OSm、工序的优先关系约束和工序总数量N;
对于每一道工序oi,还需要收集完成工序oi所需工人数量pi,以及工序oi的加工时长ti。
S2、分析混流装配线的各产品间工序差异性,根据产品间工序差异性将工序划分为流动加工工序和常规工序,具体方式如下:
记所有产品均包含的工序集合为S0,定义为常规工序组;每类产品中属于OSm但不属于S0的工序集合为Sm,定义为各类产品的流动加工工序组,m=1,2,…,M;
通过划分流动加工工序组和常规工序组,将工序划分为M+1组,其中包括M个流动加工工序组Sm和一个常规工序组S0,对于每一道工序oi,都有其对应的所属工序组集合Si,并且若工序oi对应的所属工序组集合Si中包括有常规工序组S0,则Si仅包括S0;若Si中不包括常规工序组S0,则Si中可能包括多个流动加工工序组Sm,即一道工序oi可能属于多个流动加工工序组Sm。
与流动加工工序组相对应的为常规工序组,其中的工序为常规工序,所有产品均包含常规工序;
流动工人专门负责流动加工工序,与常规工人的区别在于其在每个生产节拍的工作任务不同,每个生产节拍下流动工人的加工情况被称为工作模态u;
为便于说明工作模态及流动加工的概念,假设各产品需求量相同,不失一般性,可以认为不同种类的产品以固定的顺序投产,对于m个待加工的产品Mm,m个流动工人组在m个工台上的流动加工过程如下:
在工作模态1中,1号工台上加工的产品为M1,故在1号工台上加工的工序组包括常规工序组S0,以及产品M1对应的流动加工工序组S1;在1号工台上执行加工任务的工人组为常规工人组W0以及产品M1对应的流动工人组W1,其他工台上的安排以此类推;
在工作模态2中,由于经过了一个生产节拍,所有产品均流动到下一个工台,按投产顺序此时1号工台加工的产品为Mm,对应的工序组包括常规工序组S0,以及产品Mm对应的流动加工工序组Sm,对应的工人组为常规工人组W0以及产品Mm对应的流动工人组Wm;此时2号工台加工的产品为M1,故在工作模态1中产品M1对应的流动工人组W1跟随产品流动到2号工台,负责执行2号工台上产品M1对应的流动加工工序组S1中的流动加工工序,以此类推,从而实现了工人在工台上的流动加工;
当各产品需求量不同时,可能出现相同类型的产品连续投入生产线的情况,此时流动加工工人仍然以上述方式流动。
具体到本实施例中,产品种类M=3,分别为产品A,产品B,产品C。工序总数量N=10,工序的加工时长ti及各产品所包含的工序在表1中显示,其中加工时间为“-”的工序表示该产品不包含该工序。从表1中可以得出各流动加工工序组和常规工序组的划分情况,常规工序组S0={o2,o5,o7,o9,o10},产品A流动加工工序组S1={o1,o4},产品B流动加工工序组S2={o3,o6},产品C流动加工工序组S3={o1,o3,o6,o8}。工序优先关系约束如图3所示。
表1
在投产方式上采用最小生产循环模式,即整个生产过程是由一系列重复的最小循环单元组成的,设M种产品的需求量分别为D1,D2,…,DM;则一个最小循环单元中各产品的生产量m=1,2,…,M,其中q为D1,D2,…,DM的最大公约数,也是循环单元的循环次数。一个最小循环单元中的总生产量即为工作模态μ的数量,在实施例1中,考虑各产品需求量相同的情况,即d1=d2=d3=1,此时循环单元中包含3个产品,故装配线共包含3个工作模态μ
S3、对算法参数进行初始化;
在本实施例中,算法的初始化参数设置为,种群数量PS=10,最大迭代次数Niter=400,单个工台所能容纳的最大工人数MW=6,生产节拍CT=2.0。
S4、将工序的后续加工时间并作为启发式信息初始化种群;
使用启发式方法对种群进行初始化,采用的编码方式为基于工序的编码,即将问题的解表示为N道工序的全排列,并且需要保证工序在解中的排列满足工序间的优先关系约束,即工序oi的紧后工序不会出现在oi之前,将优先关系约束的保证放在编码阶段,可以减少解码阶段的工作量和设计难度。种群的初始化即为生成PS个问题的解,这些解也被称为染色体X;
在进行种群初始化前,需要计算每道工序的后续加工时间,一个工序的后续加工时间的定义如下:
以该工序为起点,以一个没有紧后工序的工序为终点的路径上,所有工序的时间之和的最大值;
工序的后续加工时间可以体现工序加工的紧迫性,后续加工时间长的工序尽早完成加工,才能让其紧后工序得以加工,从而缩短的完工时间;
根据这种启发式规则,在产生初始种群时,采用通过单调递增的概率密度函数产生随机数的方法使得后续加工时间长的工序更可能出现在解中靠前的位置。
种群初始化的具体过程如下,如图4所示:
S4.1、设当前种群数量s=0
S4.2、若s<PS,则s=s+1,执行步骤S4.3,否则结束循环,输出初始种群
S4.3、将所有紧前工序数量为0的工序集合记为集合A,记集合B为空集,初始化染色体Xs为空;
S4.4、如果集合A为空集,则将当前染色体Xs保存为初始种群中的一个染色体个体,返回步骤S4.2,否则执行步骤S4.5;
S4.6、记集合A中元素个数为SA,将集合A中所有工序按照后续加工时间从小到大排列,并且按照排列顺序编号为0,1,…,SA-2,SA-1;
S4.5、通过随机分布P产生随机数x,并要求P的概率密度函数必须是定义在[0,1]上的单调递增函数,计算i=[x*SA],并将A中编号为i的工序oi加入染色体X中,其中[]为向下取整符号;
S4.6、将集合A中编号为i的工序oi从集合A中删除并加入到集合B中,遍历工序oi的每一道紧后工序,若存在一道紧后工序的所有紧前工序都属于集合B,则将该紧后工序加入集合A,完成集合A和集合B的更新,返回执行步骤S4.4。
S5、采用考虑产品工序差异的方法进行解码,根据解码信息获取工台数NS及工人数量WRtotal,并计算个体的适应度函数值;
在本实施例中,采用考虑产品工序差异的方法进行解码,计算种群中每个染色体个体X的适应度函数值f(X)
f(X)=UB-(ω1NS+ω2WRtotal)
其中ω1,ω2分别为总工台数NS与总工人数WRtotal对应的系数,UB为ω1NS+ω2WRtotal的上限值,
在计算适应度前需要通过一定的解码策略,将染色体X解码为一个可行的混流装配线的调度方案,如图5所示,具体解码过程如下:
S5.1、获取初始参数,包括每个工台所能容纳的最大工人数MW,生产节拍CT,记总工台数NS=1,常规工人总数WRNtotal=0,当前工台总工人数CWR=0,各工台流动加工工序组人数WRFmk=0,其中下标k对应工台,下标m对应流动加工工序组编号,各工序允许开始时间Tim=0,其中下标i对应工序编号,下标m对应流动加工工序组编号。令工序队列Q等于当前解码的染色体个体X;
S5.2、若工序队列Q已为空,则解码完成,转至步骤S5.8;否则读取当前工序队列Q顶端的工序oi的信息,包括所属工序组集合Si、所需工人数量pi、允许开始时间Tim以及加工时间ti,并将工序oi对应的所属工序组集合Si中的元素编号为Sij,j=1,2,…,|Si|;
S5.3、判断Si中所有的工序组Sij是否已经分配完,如果是,转至步骤S5.2,否则对将Si中的下一个元素赋值给Sij,转至步骤S5.4;
S5.4、判断当前工台k上已分配的工人是否能满足加工要求,即寻找当前工台是否存在pi个属于Sij工序组的工人,且这些工人同时空闲的时间窗口[ta,tb]长度大于ti,且ta≥Tim,若存在满足条件的工人,则将工序oi分配到工台k,转至步骤S5.5;否则转至步骤S5.6;
S5.5、遍历工序oi的所有紧后工序,如果存在某紧后工序对应流动加工工序组的允许开工时间小于ta+ti,则修改为ta+ti,否则保持不变若j=|Si|,则结束工序oi的指派,并将工序oi移出工序队列Q,转至步骤S5.2,否则,j=j+1转至步骤S5.4;
S5.6、判断当前工台k是否能够增加工人,根据当前工台总工人数CWR是否超过工台所能容纳的最大工人数MW进行判断,其中CWR=CWR0+CWRj,CWR0指工台k已分配的常规工人数,CWRj指工台k已分配的流动加工工序组Sij的工人数,若CWR<MW,则添加一个Sij工序组的工人,若Sij为常规工序组,CWR0=CWR0+1,若Sij为流动加工工序组,则CWRj=CWRj+1,转到步骤S5.4。若CWR≥MW,转至步骤S5.7;
S5.7、记录当前工台中的各流动加工工序组人数WRFmk=CWRm,m=1,2,3。其中下标m对应流动加工工序组编号,下标k对应工台编号;记录当前总常规工人数WRNtotal=WRNtotal+CWR0,开启新工台,NS=NS+1设CWR=0,tsi=0,转到步骤S5.3;
S5.8、输出调度方案,记录总工台数NS,常规工人数WRNtotal以及各工台中的流动加工工序组人数WRFmk,并根据WRFmk计算总工人数WRtotal。
完成解码后,需要计算总工人数WRtotal来计算染色体X的适应度函数值;其中WRtotal=WRNtotal+WRFtotal,WRFtotal通过以下步骤计算得出:
S5.8.1、如图2所示,对于某一工作模态u,每个工台k均加工某一对应品种的产品Mh,并由对应的流动工人完成流动加工工序的加工;在工作模态u下,所需要的流动工人数WRFu,total=∑kWRFhk,其中Mh为工作模态u下在工台k下加工的产品类型;
S5.8.2、对每一个工作模态u计算流动工人数WRFu,total,取max(WRFu,total)为最终所需的总流动工人数WRFtotal,u=1,2,3;
S6、更新种群中的所有个体;判断算法是否达到终止条件,如果达到终止条件则输出解,否则返回步骤S5进行迭代。
根据步骤S5计算出的适应度函数值,适应度函数值越高的个体有更大的概率被保留,采用轮盘赌方法作为选择算子;更新种群时使用交叉和变异算子。算法的终止条件为判断迭代次数iter是否达到设定的最大值Niter。
若达到最大迭代次数,则输出当前种群中的最优染色体个体Xbest,输出方案包括工序在工台上的指派,以及各模态下工人负责加工的工序,使用该调度方案来调整实际装配线的生产调度安排,结束混流装配线平衡方法;若未达到最大迭代次数,则重复步骤S5,并再次更新种群,将当前迭代次数加1。
当算法达到最大迭代次数时,输出种群中适应度值最大的个体作为最终的调度方案,并以此计算目标函数。目标函数值由以下公式计算得出:
g(X)=ω1NS+ω2WRtotal
其中ω1,ω2分别表示工台数量和工人人数的系数,取值分别为ω1=0.8,ω2=0.2。
在实施例1中,考虑各产品需求量相等,即d1=d2=d3=1,在此情况下,将本发明中提出的方法与未考虑工序差异性的混流装配线平衡方法进行对比,为说明本发明方法的有效性,除实施例1外,在实施例2和实施例3上也将本发明方法与未考虑工序差异性的混流装配线平衡方法进行对比,其中实施例2和实施例3与实施例1的差异以及最终结果均在表2中表示
为说明本发明方法的有效性,采用3个不同的实施例将本发明中提出的方法与未考虑工序差异性的混流装配线平衡方法进行对比,3个实施例中涉及的工序加工时间与工序优先约束关系相同,均如表1和图3所示。实施例1中各产品需求相等,即d1=d2=d3=1;实施例2中各产品需求为d1=1,d2=3,d3=2;实施例3中各产品需求与实施例1相同,但各工序所需工人数均为1,即不考虑多人协同加工情况,针对实施例3进行测试时,单个工台所能容纳的最大工人数MW=2,以避免出现所有工序全部分配在一个工台上的情况。
表2
实施例1 | 实施例2 | 实施例3 | |
本发明 | 3.06 | 3.30 | 2.33 |
未考虑工序差异性 | 3.20 | 3.60 | 2.48 |
从表中数据可以看出,本发明所提出的考虑工序差异的混流装配线平衡方法能够在不同的产品需求和工人需求情况下,对装配线的工人数量和工台数量进行优化,相比未考虑工序差异性的方法,能够获得所需工人和工台数量更少的调度方案,从而优化装配线的生产效率,提高生产企业的收益。
Claims (4)
1.一种考虑产品工序差异的混流装配线平衡方法,其特征在于,包括以下步骤:
S1、收集生产数据;需要收集大量与混流装配线生产相关的生产数据;
在装配线生产过程中,待加工产品需要依次通过所有工台,并在每个工台上执行相应的工序加工任务,生产节拍则表示产品从一个工台移动到下一个工台的时间;
需要在生产过程中收集的生产数据包括:产品种类,以及每种产品所包括的工序、工序的优先关系约束和工序总数量/>;
对于每一道工序,还需要收集完成工序/>所需工人数量/>,以及工序/>的加工时长
S2、分析混流装配线的各产品间工序差异性,根据产品间工序差异性将工序划分为流动加工工序组和常规工序组;
S3、对算法参数进行初始化;需要初始化的算法参数包括:种群数量、最大迭代次数、单个工台所能容纳的最大工人数/>以及生产节拍/>
S4、采用基于工序的编码方式,对种群进行编码,将问题的解表示为道工序编号的全排列,并以保证工序间优先约束关系的方式,将工序的后续加工时间作为启发式信息初始化种群,其中工序的工序加工时间定义为:以该工序为起点,以一个没有紧后工序的工序为终点的路径上,所有工序的时间之和的最大值;
种群初始化的具体过程如下:
S4.1、设当前种群数量;
S4.2、若,则/>,执行步骤S4.3,否则结束循环,输出初始种群;
S4.3、将所有紧前工序数量为0的工序集合记为集合,记集合/>为空集,初始化染色体为空;
S4.4、如果集合为空集,则将当前染色体/>保存为初始种群中的一个染色体个体,返回步骤S4.2,否则执行步骤S4.5;
S4.6、记集合中元素个数为/>,将集合/>中所有工序按照后续加工时间从小到大排列,并且按照排列顺序编号为/>;
S4.5、通过随机分布产生随机数/>,并要求/>的概率密度函数必须是定义在[0,1]上的单调递增函数,计算/>,并将/>中编号为/>的工序/>加入染色体/>中,其中/>为向下取整符号;
S4.6、将集合中编号为/>的工序/>从集合/>中删除并加入到集合/>中,遍历工序/>的每一道紧后工序,若存在一道紧后工序的所有紧前工序都属于集合/>,则将该紧后工序加入集合/>,完成集合/>和集合/>的更新,返回执行步骤S4.4;
S5、采用考虑产品工序差异的方法进行解码,根据解码信息获取工台数及工人数量,并计算个体的适应度函数值;采用考虑产品工序差异的方法进行解码,计算种群中每个个体/>的适应度函数值/> ,具体如下:
其中,分别为总工台数/>与总工人数/>对应的系数,/>为/>的上限值,/>;
在计算适应度前需要通过解码策略,将染色体解码为一个可行的混流装配线的调度方案,具体解码过程如下:
S5.1、获取初始参数,包括每个工台所能容纳的最大工人数,生产节拍/>,记总工台数/>,常规工人总数/>,当前工台总工人数/>,各工台流动加工工序组人数/>,其中下标/>对应工台,下标/>对应流动加工工序组编号,各工序允许开始时间/>,其中下标/>对应工序编号,下标/>对应流动加工工序组编号;令工序队列/>等于当前解码的染色体个体/>;
S5.2、若工序队列已为空,则解码完成,转至步骤S5.8;否则读取当前工序队列/>顶端的工序/>的信息,包括所属工序组集合/>、所需工人数量/>、允许开始时间/>以及加工时间/>,并将工序/>对应的所属工序组集合/>中的元素编号为/>;
S5.3、判断中所有的工序组/>是否已经分配完,如果是,转至步骤S5.2,否则对将/>中的下一个元素赋值给/>,转至步骤S5.4;
S5.4、判断当前工台上已分配的工人是否能满足加工要求,即寻找当前工台是否存在个属于/>工序组的工人,且这些工人同时空闲的时间窗口/>长度大于/>,且/>,若存在满足条件的工人,则将工序/>分配到工台/>,转至步骤S5.5;否则转至步骤S5.6;
S5.5、遍历工序的所有紧后工序,如果存在某紧后工序对应流动加工工序组的允许开工时间小于/>,则修改为/>,否则保持不变;若/>,则结束工序/>的指派,并将工序/>移出工序队列/>,转至步骤S5.2,否则, />转至步骤S5.4;
S5.6、判断当前工台是否能够增加工人,根据当前工台总工人数/>是否超过工台所能容纳的最大工人数/>进行判断,其中/>,/>指工台/>已分配的常规工人数,/>指工台/>已分配的流动加工工序组/>的工人数,若/>,则添加一个/>工序组的工人,若/>为常规工序组,/>,若/>为流动加工工序组,则/>,转到步骤S5.4;若/>,转至步骤S5.7;
S5.7、记录当前工台中的各流动加工工序组人数,/>;其中下标/>对应流动加工工序组编号,下标/>对应工台编号;记录当前总常规工人数,开启新工台,/>设/>,/>,转到步骤S5.3;
S5.8、计算总工人数,其中/>为总流动工人数,由以下步骤计算:
S5.8.1、对于某一工作模态,每个工台/>均加工某一对应品种的产品/>,并由对应的流动工人完成流动加工工序的加工;在工作模态/>下,所需要的流动工人数/>,其中/>为工作模态/>下在工台/>下加工的产品类型;
S5.8.2、对每一个工作模态计算流动工人数/>,取/>为最终所需的总流动工人数/>;
S5.9、输出调度方案,记录总工台数和总工人数/>
S6、更新种群中的所有个体;判断算法是否达到终止条件,如果未达到终止条件返回步骤S5进行迭代,否则输出结果。
2.根据权利要求1所述的一种考虑产品工序差异的混流装配线平衡方法,其特征在于,在步骤S2中,根据产品间工序差异性将工序划分为流动加工工序组和常规工序组,具体方式如下:
记所有产品均包括的工序集合为,定义为常规工序组;每类产品中属于/>但不属于/>的工序集合为/>,定义为各类产品的流动加工工序组,/>;
通过划分流动加工工序组和常规工序组,将工序划分为组,其中包括/>个流动加工工序组/>和一个常规工序组/>,对于每一道工序/>,都有其对应的所属工序组集合/>,并且若工序/>对应的所属工序组集合/>中包括有常规工序组/>,则/>仅包括/>;若/>中不包括常规工序组/>,则/>中包括多个流动加工工序组/>,即一道工序/>属于多个流动加工工序组/>。
3.根据权利要求2中所述的一种考虑产品工序差异的混流装配线平衡方法,其特征在于,在步骤S2中,提出了流动加工工序的概念,流动加工工序定义为流动加工工序组中的工序,其特点是对某一流动加工工序,只有部分产品包括该工序;
与流动加工工序组相对应的为常规工序组,其中的工序为常规工序,所有产品均包括常规工序;
流动工人专门负责流动加工工序,流动工人与常规工人的区别在于其在每个生产节拍的工作任务不同,每个生产节拍下流动工人的加工情况被称为工作模态;
假设各产品需求量相同,不失一般性,认为不同种类的产品以固定的顺序投产,对于m个待加工的产品,m个流动工人组在m个工台上的流动加工过程如下:
在工作模态1中,1号工台上加工的产品为,故在1号工台上加工的工序组包括常规工序组/>,以及/>对应的流动加工工序组/>;在1号工台上执行加工任务的工人组为常规工人组/>以及/>对应的流动工人组/>,其他工台上的安排以此类推;
在工作模态2中,由于经过了一个生产节拍,所有产品均流动到下一个工台,按投产顺序此时1号工台加工的产品为,对应的工序组包括常规工序组/>,以及/>对应的流动加工工序组/>,对应的工人组为常规工人组/>以及/>对应的流动工人组/>;此时2号工台加工的产品为/>,故在工作模态1中/>对应的流动工人组/>跟随产品流动到2号工台,负责执行2号工台上/>对应的流动加工工序组/>中的流动加工工序,以此类推,从而实现工人在工台上的流动加工;
当各产品需求量不同时,可能出现相同类型的产品连续投入生产线的情况,此时流动加工工人仍然以上述方式流动。
4.根据权利要求1中所述的一种考虑产品工序差异的混流装配线平衡方法,其特征在于,在步骤S6中,根据步骤S5中计算出种群中每个个体的适应度值/>,采用遗传算法更新种群中的每个个体/>,并判断迭代次数是否达到上限值/>;如果达到上限,则将当前种群中的最优解输出,并解码为一个完整的调度方案,以指导实际生产过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211698621.2A CN115933570B (zh) | 2022-12-28 | 2022-12-28 | 一种考虑产品工序差异的混流装配线平衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211698621.2A CN115933570B (zh) | 2022-12-28 | 2022-12-28 | 一种考虑产品工序差异的混流装配线平衡方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115933570A CN115933570A (zh) | 2023-04-07 |
CN115933570B true CN115933570B (zh) | 2024-04-23 |
Family
ID=86697692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211698621.2A Active CN115933570B (zh) | 2022-12-28 | 2022-12-28 | 一种考虑产品工序差异的混流装配线平衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115933570B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102354311A (zh) * | 2011-09-09 | 2012-02-15 | 河海大学常州校区 | 面向大批量定制的可重构装配线平衡方法 |
CN106022474A (zh) * | 2016-06-01 | 2016-10-12 | 河海大学常州校区 | 一种可重构装配线平衡优化方法 |
WO2016169287A1 (zh) * | 2015-04-20 | 2016-10-27 | 海安县申菱电器制造有限公司 | 一种混流生产线产能分配方法 |
CN109615105A (zh) * | 2018-10-15 | 2019-04-12 | 南京航空航天大学 | 一种考虑柔性节拍和操作人员技能差异的装配线平衡方法 |
CN110286588A (zh) * | 2019-05-24 | 2019-09-27 | 同济大学 | 一种考虑能耗的装配线再平衡优化方法 |
CN112528524A (zh) * | 2020-12-30 | 2021-03-19 | 江苏金陵智造研究院有限公司 | 一种混流装配线平衡优化调度方法 |
CN112686474A (zh) * | 2021-01-22 | 2021-04-20 | 华南理工大学 | 一种基于改进的水波优化算法的可并行装配线平衡方法 |
CN113705812A (zh) * | 2021-07-19 | 2021-11-26 | 合肥工业大学 | 基于混合并行遗传和变邻域算法的生产调度方法和系统 |
-
2022
- 2022-12-28 CN CN202211698621.2A patent/CN115933570B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102354311A (zh) * | 2011-09-09 | 2012-02-15 | 河海大学常州校区 | 面向大批量定制的可重构装配线平衡方法 |
WO2016169287A1 (zh) * | 2015-04-20 | 2016-10-27 | 海安县申菱电器制造有限公司 | 一种混流生产线产能分配方法 |
CN106022474A (zh) * | 2016-06-01 | 2016-10-12 | 河海大学常州校区 | 一种可重构装配线平衡优化方法 |
CN109615105A (zh) * | 2018-10-15 | 2019-04-12 | 南京航空航天大学 | 一种考虑柔性节拍和操作人员技能差异的装配线平衡方法 |
CN110286588A (zh) * | 2019-05-24 | 2019-09-27 | 同济大学 | 一种考虑能耗的装配线再平衡优化方法 |
CN112528524A (zh) * | 2020-12-30 | 2021-03-19 | 江苏金陵智造研究院有限公司 | 一种混流装配线平衡优化调度方法 |
CN112686474A (zh) * | 2021-01-22 | 2021-04-20 | 华南理工大学 | 一种基于改进的水波优化算法的可并行装配线平衡方法 |
CN113705812A (zh) * | 2021-07-19 | 2021-11-26 | 合肥工业大学 | 基于混合并行遗传和变邻域算法的生产调度方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115933570A (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102393634B (zh) | 一种基于pso-ga混合优化算法的单目标多生产线调度控制方法 | |
CN102608916A (zh) | 一种基于元胞机的大型零件柔性作业车间的动态调度方法 | |
CN112686474B (zh) | 一种基于改进的水波优化算法的可并行装配线平衡方法 | |
CN108460463B (zh) | 基于改进遗传算法的高端装备流水线生产调度方法 | |
CN115600774B (zh) | 一种装配式建筑构件产线的多目标生产调度优化方法 | |
CN112882449A (zh) | 一种多品种小批量多目标柔性作业车间能耗优化调度方法 | |
CN113867295A (zh) | 一种基于数字孪生的制造车间agv动态调度方法、系统、设备及存储介质 | |
CN115471133A (zh) | 一种基于订单管理和滚动优化排产的车间综合调度系统 | |
CN110750079A (zh) | 一种允许工序跳跃的混合流水车间调度优化方法 | |
CN114881504B (zh) | 一种基于订单选择的电子精密件全自动柔性生产线调度方法 | |
WO2023087418A1 (zh) | 基于迁移遗传算法的电脑第二类装配线平衡优化方法 | |
CN115933570B (zh) | 一种考虑产品工序差异的混流装配线平衡方法 | |
CN113792989B (zh) | 一种需求驱动的共享观光车区域间并行优化调度方法 | |
Abu Qudeiri et al. | Genetic algorithm for buffer size and work station capacity in serial-parallel production lines | |
CN110928648A (zh) | 融合启发式和智能计算的云工作流分段在线调度优化方法 | |
CN113723695B (zh) | 一种基于场景的再制造调度优化方法 | |
CN115439101A (zh) | 基于人机协同作业平衡的智能制造系统重构方法 | |
CN115526484A (zh) | 考虑设备耗损的柔性综合调度方法 | |
CN110321208B (zh) | 一种求解云任务调度的进化计算方法 | |
Süer et al. | Cell loading, family and job scheduling to minimize TT | |
CN116795054B (zh) | 一种离散制造模式下的中间产品调度方法 | |
CN113406941B (zh) | 基于仿真的双目标并行机开放车间自适应动态调度方法 | |
CN116954163A (zh) | 一种考虑机器损坏的分布式下料车间调度方法及系统 | |
CN113064711B (zh) | 一种在线多工作流动态调度方法和系统 | |
Pang et al. | Modeling and optimizing of flexible mixed-flow assembly line scheduling problem with non-tight operations priority constraints |
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 |