CN113822525B - 基于改进遗传算法的柔性作业车间多目标调度方法及系统 - Google Patents
基于改进遗传算法的柔性作业车间多目标调度方法及系统 Download PDFInfo
- Publication number
- CN113822525B CN113822525B CN202110833167.6A CN202110833167A CN113822525B CN 113822525 B CN113822525 B CN 113822525B CN 202110833167 A CN202110833167 A CN 202110833167A CN 113822525 B CN113822525 B CN 113822525B
- Authority
- CN
- China
- Prior art keywords
- time
- procedure
- processing equipment
- processing
- indicating
- 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 460
- 230000002068 genetic effect Effects 0.000 title claims abstract description 43
- 230000008569 process Effects 0.000 claims abstract description 117
- 210000000349 chromosome Anatomy 0.000 claims abstract description 112
- 238000002360 preparation method Methods 0.000 claims abstract description 62
- 230000035772 mutation Effects 0.000 claims abstract description 45
- 238000012545 processing Methods 0.000 claims description 316
- 108090000623 proteins and genes Proteins 0.000 claims description 28
- 238000003754 machining Methods 0.000 claims description 12
- 230000002759 chromosomal effect Effects 0.000 claims description 11
- 241000208340 Araliaceae Species 0.000 claims 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims 1
- 235000003140 Panax quinquefolius Nutrition 0.000 claims 1
- 235000008434 ginseng Nutrition 0.000 claims 1
- 238000005457 optimization Methods 0.000 abstract description 35
- 238000004519 manufacturing process Methods 0.000 abstract description 23
- 238000013461 design Methods 0.000 abstract description 5
- 238000003780 insertion Methods 0.000 description 7
- 230000037431 insertion Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 101710165590 Mitochondrial pyruvate carrier 1 Proteins 0.000 description 2
- 102100024828 Mitochondrial pyruvate carrier 1 Human genes 0.000 description 2
- 101710165595 Mitochondrial pyruvate carrier 2 Proteins 0.000 description 2
- 102100025031 Mitochondrial pyruvate carrier 2 Human genes 0.000 description 2
- 101710101695 Probable mitochondrial pyruvate carrier 1 Proteins 0.000 description 2
- 101710101698 Probable mitochondrial pyruvate carrier 2 Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 101150116855 CH1 gene Proteins 0.000 description 1
- 101150020211 MPC1 gene Proteins 0.000 description 1
- 101150080551 MPC2 gene Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000004073 vulcanization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- 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
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Economics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Entrepreneurship & Innovation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Primary Health Care (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Genetics & Genomics (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Physiology (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- General Factory Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供的一种基于改进遗传算法的柔性作业车间多目标调度方法及系统,涉及柔性作业车间调度技术领域。本发明针对柔性作业车间的调度优化问题,以最小化最大完工时间和降低线边库存时间为目标,建立了考虑工序准备时间和带资源约束的运输时间的多目标调度优化模型,在求解调度优化的结果时,采用改进的遗传算法对模型进行求解,采用三层编码方式,使得染色体能携带更多的信息,并对交叉和变异算子进行设计,保证新产生的后代依然是可行解,并最终求得调度优化问题的最优解。本发明所提出的问题和求解问题时使用的方法更符合企业生产实际,求解结果更加精准,对于企业生产具有一定的参考价值。
Description
技术领域
本发明涉及柔性作业车间调度技术领域,具体涉及一种基于改进遗传算法的柔性作业车间多目标调度方法及系统。
背景技术
柔性作业车间调度是企业生产实现高效率、高质量、高柔性、低成本的关键,但工件在柔性作业车间内进行加工时,其生产加工流程繁琐复杂(例如,轮胎的柔性作业车间包含了成型、硫化、人工检测、试验机检测等生产流程)。如何科学合理地安排不同型号的工件加工顺序和加工设备,加强设备之间的协同调度,提高工件的生产效率,降低生产线线边库存,是企业关注的重点也是该领域亟需解决的问题。
目前,柔性作业车间的调度优化问题(Flexible Job-shop Scheduling Problem,FJSP)存在以下缺陷:一方面,不论是在多目标优化方面还是考虑特殊约束条件的研究中,都忽略了加工过程中线边库存时间的优化问题,以及加工的辅助时间 (工序切换产生的准备时间等)对线边库存时间的影响;另一方面,现有技术多假设运输机器的使用不受限制,即未考虑资源约束情况下运输时间对线边库存的影响。
然而,在实际生产中,工序切换产生的准备时间对降低线边库存时间有直接影响,是必不可少的;同时,由于企业的实际资源限制,运输机器往往是有限的,且某些种类的零部件只能由部分专用机器(吊机等)进行运输,所以考虑资源约束也是必不可少的。所以如果在不考虑加工的辅助时间和资源约束的情况下,直接求解柔性作业车间的调度优化问题,最终求解结果必然是不精准,不贴合真实情况的,这样的求解结果无法为企业的生产提供准确的参考。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种基于改进遗传算法的柔性作业车间多目标调度方法及系统,解决了现有技术由于未考虑加工辅助时间和资源约束而导致柔性作业车间调度优化求解结果不精准的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:
第一方面,本发明首先提出了一种基于改进遗传算法的柔性作业车间多目标调度方法,所述方法包括:
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体;所述工序部分包括工件总数n,工件i的工序总数Ji;所述加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>所述运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
S3、初始化遗传算法的初始种群;
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值;
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6;
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4;
S7、算法执行结束,输出最优解以及最优解对应的甘特图。
优选的,所述S4中对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值包括:
Step1基于第一子串的第x1位基因,获取当前工件i的第j道工序Oi,j;
Step2获取工序Oi,j在第二子串中对应的索引x2,并基于x2确定工序Oi,j的加工设备和加工时间/>
Step3确定工序Oi,j的最早可开始加工时间
其中,表示工序Oi,j-1在运输机器/>上的送达时间;/>表示工序Oi‘,j‘在加工设备/>上的完工时间;/>表示工序Oi,j在加工设备/>上的准备时间;
Step4依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工;
Step5根据公式1≤j≤Ji获取工序Oi,j在第三子串中对应的索引x3,并基于x3确定工序Oi,j的运输机器/>和运输时间/>
Step6依次读取运输机器空闲时间段,并根据以下公式判断工序Oi,j能否在该空闲时间段运输,并计算工序Oi,j在运输机器/>上的送达时间/>
其中,表示工序Oi,j在运输机器/>上的最早起送时间;/>表示工序Oi,j在加工设备/>上的完工时间;/>表示工序Oi',j'在运输机器/>上的送达时间;/>表示工序Oi,j可用加工设备集;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量, yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;
Step7判断是否成立,若成立则所有工序解码完成,迭代结束,转到Step8;否则令x1=x1+1,转到Step1;
Step8计算染色体个体的适应度。
优选的,所述Step4中依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工包括:
Step4.1读取加工设备第l段空闲时间的起、止时间T1、T2和后一道工序 Oi",j";
Step4.2判断是否小于T2,是则执行Step4.3,否则令l=l+1,返回Step4.1;其中/>表示工序Oi,j在加工设备/>上的最早加工时间;
Step4.3获取当前工序准备时间
Step4.4获取当前空闲时间段后一道工序的准备时间
Step4.5判断以下公式是否成立,若成立则工序Oi,j可插入该空闲时间段加工,不成立则令l=l+1回到Step4.1;
其中,表示工序Oi,j在加工设备/>上的最早加工时间;T1、T2分别表示加工设备/>第l段空闲时间的开始、结束时间;/>表示工序Oi,j在加工设备/>上的准备时间;/>表示工序Oi,j在加工设备/>上的加工时间;/>表示工序Oi",j"在加工设备/>上的更新后的准备时间,/>表示工序Oi',j'在加工设备/>上的原准备时间。
优选的,所述Step8中计算染色体个体的适应度值包括,按照以下目标函数计算染色体个体的适应度值:
min Z=αCmax+(1-α)Cedge
其中,minZ表示最小化最大完工时间和线边库存时间;α表示优化权重系数, Cmax表示最大完工时间;Cedge表示线边库存时间;Ci表示工件i的完工时间;表示工序Oi,j在运输机器/>上的送达时间;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;xi,j,k为决策变量,xi,j,k=1表示工序Oi,j在设备/>上加工; xi,j,k=0表示该工序未在设备/>上加工;/>表示工序Oi,j在加工设备/>上的加工时间;
所述目标函数的约束条件包括:
工件加工时间约束条件:
表示任一工件的首道工序最早可加工时间为0;
表示工件i在加工设备/>上的开工时间/>受上道工序Oi,j-1的运输完成时间约束,也受加工设备资源和准备时间约束;
表示工序Oi,j的完工时间;
表示在工序Oi,j可用的加工设备集/>中仅选择一台设备进行加工;
工件运输时间约束条件:
表示任一工件的首道工序开始运输时间即为首道工序完工时间;
表示工件i在运输机器/>上的开始运输时间/>受工序Oi,j完工时间约束,也受运输机器资源约束;
表示工件i的送达时间,为工件i 的起始运输时间加上工件i的运输时间;
表示在工序Oi,j可用的运输机器集/>中选择一台机器进行运输;
表示工件i每道工序加工结束后运输完成时间的最大值。
优选的,所述S6中对进入下一代的染色体个体分别进行交叉和变异操作包括:
对染色体个体的第一子串进行POX交叉操作,对染色体个体的第二子串和第三子串均采用均匀交叉操作;
对染色体个体的第一子串采用交换变异操作,对染色体个体的第二子串和第三子串均采用智能变异操作。
第二方面,本发明还提出了一种基于改进遗传算法的柔性作业车间多目标调度系统,所述系统包括:
处理单元,所述处理单元用于执行以下步骤:
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体;所述工序部分包括工件总数n,工件i的工序总数Ji;所述加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>所述运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
S3、初始化遗传算法的初始种群;
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值;
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6;
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4;
S7、算法执行结束;
输出单元,所述输出单元用于输出最优解以及最优解对应的甘特图。
优选的,所述处理单元执行S4时,对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值包括:
Step1基于第一子串的第x1位基因,获取当前工件i的第j道工序Oi,j;
Step2获取工序Oi,j在第二子串中对应的索引x2,并基于x2确定工序Oi,j的加工设备和加工时间/>
Step3确定工序Oi,j的最早可开始加工时间
其中,表示工序Oi,j-1在运输机器/>上的送达时间;/>表示工序Oi‘,j‘在加工设备/>上的完工时间;/>表示工序Oi,j在加工设备/>上的准备时间;
Step4依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工;
Step5根据公式1≤j≤Ji获取工序Oi,j在第三子串中对应的索引x3,并基于x3确定工序Oi,j的运输机器/>和运输时间/>
Step6依次读取运输机器空闲时间段,并根据以下公式判断工序Oi,j能否在该空闲时间段运输,并计算工序Oi,j在运输机器/>上的送达时间/>
其中,表示工序Oi,j在运输机器/>上的最早起送时间;/>表示工序Oi,j在加工设备/>上的完工时间;/>表示工序Oi',j'在运输机器/>上的送达时间;/>表示工序Oi,j可用加工设备集;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量, yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;
Step7判断是否成立,若成立则所有工序解码完成,迭代结束,转到Step8;否则令x1=x1+1,转到Step1;
Step8计算染色体个体的适应度。
优选的,所述处理单元执行Step4时,依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工包括:
Step4.1读取加工设备第l段空闲时间的起、止时间T1、T2和后一道工序 Oi",j";
Step4.2判断是否小于T2,是则执行Step4.3,否则令l=l+1,返回Step4.1;其中/>表示工序Oi,j在加工设备/>上的最早加工时间;
Step4.3获取当前工序准备时间
Step4.4获取当前空闲时间段后一道工序的准备时间
Step4.5判断以下公式是否成立,若成立则工序Oi,j可插入该空闲时间段加工,不成立则令l=l+1回到Step4.1;
其中,表示工序Oi,j在加工设备/>上的最早加工时间;T1、T2分别表示加工设备/>第l段空闲时间的开始、结束时间;/>表示工序Oi,j在加工设备/>上的准备时间;/>表示工序Oi,j在加工设备/>上的加工时间;/>表示工序Oi",j"在加工设备/>上的更新后的准备时间,/>表示工序Oi',j'在加工设备/>上的原准备时间。
优选的,所述处理单元执行Step8时,计算染色体个体的适应度值包括,按照以下目标函数计算染色体个体的适应度值:
min Z=αCmax+(1-α)Cedge
其中,minZ表示最小化最大完工时间和线边库存时间;α表示优化权重系数, Cmax表示最大完工时间;Cedge表示线边库存时间;Ci表示工件i的完工时间;表示工序Oi,j在运输机器/>上的送达时间;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;xi,j,k为决策变量,xi,j,k=1表示工序Oi,j在设备/>上加工; xi,j,k=0表示该工序未在设备/>上加工;/>表示工序Oi,j在加工设备/>上的加工时间;
所述目标函数的约束条件包括:
工件加工时间约束条件:
表示任一工件的首道工序最早可加工时间为0;
表示工件i在加工设备/>上的开工时间/>受上道工序Oi,j-1的运输完成时间约束,也受加工设备资源和准备时间约束;
表示工序Oi,j的完工时间;
表示在工序Oi,j可用的加工设备集/>中仅选择一台设备进行加工;
工件运输时间约束条件:
表示任一工件的首道工序开始运输时间即为首道工序完工时间;
表示工件i在运输机器/>上的开始运输时间/>受工序Oi,j完工时间约束,也受运输机器资源约束;
表示工件i的送达时间,为工件i 的起始运输时间加上工件i的运输时间;
表示在工序Oi,j可用的运输机器集/>中选择一台机器进行运输;
表示工件i每道工序加工结束后运输完成时间的最大值。
优选的,所述处理单元执行S6时,对进入下一代的染色体个体分别进行交叉和变异操作包括:
对染色体个体的第一子串进行POX交叉操作,对染色体个体的第二子串和第三子串均采用均匀交叉操作;
对染色体个体的第一子串采用交换变异操作,对染色体个体的第二子串和第三子串均采用智能变异操作。
(三)有益效果
本发明提供了一种基于改进遗传算法的柔性作业车间多目标调度方法及系统。与现有技术相比,具备以下有益效果:
1、本发明的技术方案针对柔性作业车间的调度优化问题,以最小化最大完工时间和降低线边库存时间为目标,建立了考虑工序准备时间和带资源约束的运输时间的多目标调度优化模型,在求解调度优化的结果时,采用改进的遗传算法对模型进行求解,采用三层编码方式,使得染色体能携带更多的信息,并对交叉和变异算子进行设计,保证新产生的后代依然是可行解,并最终求得调度优化问题的最优解。本发明在考虑多辅助时间的情况下研究柔性作业车间的调度优化问题时,所提出的问题和求解问题时使用的方法更符合企业生产实际,求解结果更加精准,对于企业生产具有一定的参考价值。
2、本发明构建的柔性作业车间多目标调度的优化模型考虑了准备时间和带资源约束的运输时间对最大完工时间和线边库存时间的影响,更贴合柔性作业车间生产的真实情况,使得最终的求解结果更加真实和准确;
3、本发明采用改进的遗传算法对模型进行求解,解决了由于约束中综合考虑了准备时间和运输时间,导致问题更加复杂、解码排序难度较大的问题;
4、本发明在改进遗传算法时,采用了三层编码方式,可携带工序、加工设备、运输机器等更多的信息,并采用工序插入式的解码方法,解决了因前插工序导致的后道工序准备时间随之变化的问题;对子代染色体个体进行交叉和变异操作时,保证新产生的后代依然是可行解。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一种基于改进遗传算法的柔性作业车间多目标调度方法流程图;
图2为本发明实施例中染色体三层编码示意图;
图3为本发明实施例中工序插入前后对下一道工序准备时间影响的对比示意图;
图4为本发明实施例中POX交叉操作示意图;
图5为本发明实施例中JC子串交叉变异操作。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例通过提供一种基于改进遗传算法的柔性作业车间多目标调度方法及系统,解决了现有技术由于未考虑加工辅助时间和资源约束而导致柔性作业车间调度优化求解结果不精准的问题,实现科学合理指导企业生产的目的。
本申请实施例中的技术方案为解决上述技术问题,总体思路如下:
为了让柔性作业车间的调度优化问题更加贴合实际生产的真实情况,本发明建立考虑工序准备时间和带资源约束的运输时间的多目标调度优化模型,该模型以最小化最大完工时间和降低线边库存时间为总体目标,然后利用改进的遗传算法对模型进行求解,采用三层编码方式获取染色体个体,并对子代染色体个体进行交叉和变异操作,保证新产生的后代依然是可行解,最终求得考虑多辅助时间情况下的柔性作业车间的调度优化问题的最优解,且求解结果更加精准,对于企业生产具有一定指导意义。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
柔性作业车间的调度问题(Tire Flexible Job-shop Scheduling Problem,TFJSP) 可以描述为n个待加工的工件在m台加工设备上加工,由于工件加工的工艺路线不同,工件的某道工序可以选择在不同的设备上进行加工,对应的加工时间也未必相同。在切换加工工序时,加工设备需要重新设置参数或者更换模具,因此工序切换需要一定的准备时间,该时间与前后工序相关。工件在加工设备上完成一道工序后,需要由运输机器运输至下一加工设备,若该工件的下一工序仍为该加工设备,则运输时间为0,最后一道工序完成后则运输至暂存区。车间内运输机器数量有限,需要对运输机器合理分配任务。当待加工的工件等待模具更换时或者运输机器和加工设备忙碌时,工件会进入加工设备旁的待料区等待运输或加工,成为线边库存。
本文研究问题符合以下基本假设条件:
(1)所有加工设备和运输机器在0时刻都是空闲的;
(2)工序加工前具有准备时间,且和当前加工设备及该设备上一道工序相关;
任一加工设备上第一道工序的准备时间为0;
(4)运输只考虑单向运输时间,工件送达运输机器即空闲;
(5)每道工序加工完成后工件运输至下一工位,最后一道工序结束工件运至暂存区;
(6)工序加工和运输过程连续,不会被打断;
(7)工件的工序是固定的,顺序不可颠倒;
(8)任一加工设备不能并行加工多道工序,任一运输机器同时只能运送一个工件;
(9)工件的工序只能在可用的设备集中选择一台加工设备或运输机器;
(10)加工设备性能不同,加工同一工序的用时不一定相同。
实施例1:
第一方面,本发明首先提出了一种基于改进遗传算法的柔性作业车间多目标调度方法,该方法包括:
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体;所述工序部分包括工件总数n,工件i的工序总数Ji;所述加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>所述运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
S3、初始化遗传算法的初始种群;
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值;
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6;
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4;
S7、算法执行结束,输出最优解以及最优解对应的甘特图。
可见,本发明的技术方案针对柔性作业车间的调度优化问题,以最小化最大完工时间和降低线边库存时间为目标,建立了考虑工序准备时间和带资源约束的运输时间的多目标调度优化模型,在求解调度优化的结果时,采用改进的遗传算法对模型进行求解,采用三层编码方式,使得染色体能携带更多的信息,并对交叉和变异算子进行设计,保证新产生的后代依然是可行解,并最终求得调度优化问题的最优解。本发明在考虑多辅助时间的情况下研究柔性作业车间的调度优化问题时,所提出的问题和求解问题时使用的方法更符合企业生产实际,求解结果更加精准,对于企业生产具有一定的参考价值。
下面以轮胎柔性作业车间的调度优化问题(Tire Flexible Job-shopScheduling Problem,TFJSP)为例,结合对具体步骤的解释,来详细说明本发明一个实施例的实现过程。
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
柔性作业车间调度优化问题的参数集可以根据实际情况进行设置。具体的,在轮胎柔性作业车间的调度问题上,可设置迭代代数I=400,种群规模P=20,变异率Pm=0.5,交叉率Pc=0.8,目标函数权重α=0.6。
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体,工序部分包括工件总数n,工件i的工序总数Ji;加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
本技术方案结合实际问题设计了三层编码,将染色体分成三个子串,然后采用MSOS(Machine SelectionAnd Operation Sequence Representation)编码方法获取染色体个体。染色体的三个子串分别为第一子串、第二子串、第三子串。参见图2,具体的,
第一子串为工序顺序串,定义为JC子串,其长度为全部工件的工序总和,工序顺序串的基因为工件的编号i,其中工件编号出现的次数j表示该工件的第j道工序Oi,j,该子串的位置索引即为加工的先后顺序。在图2中,JC子串的第一个方格表示第一道加工工序为O2,1,第六个方格表示第六道加工工序为O2,2,以此类推。
第二子串为加工设备选择串,定义为MPC子串,其长度和工序顺序串相同,其中基因为工序的可用加工设备号k,该子串基因按照工序的标号依次排列,其位置索引x2(x2中右下标2代表第二条染色体子串MPC)和工序Oi,j具备如下映射关系:
其中,β∈{1,2,...,i-1},工件i的工序数为Ji,1≤i≤n。在图2中,MPC子串的第一个方格表示工序O1,1的加工设备为第二个方格表示工序O1,2的加工设备为/>
第三条子串为运输机器选择串,定义为MTC子串,其长度和前两条子串相同,其中基因为该工序的可用运输机器号b,其索引x3(x3右下标的3代表第二条染色体子串MTC)和工序Oi,j映射关系与第二条子串相同。在图2中,MTC子串的第一个方格表示工序O1,1的运输机器为第二个方格表示工序O1,2的运输机器为/>/>
S3、初始化遗传算法的初始种群。
为保证种群的多样性,初始化染色体个体的第一条子串时,通过随机排序产生工序的加工顺序;初始化第二条和第三条子串时,从当前工序的可用加工设备集(运输机器集)中随机挑选两个设备(机器),对比选择加工时间(运输时间) 较短的加工设备(运输机器)给当前工序,可保证个体的可行性和提高搜索效率,根据以上规则初始化20个染色体个体(种群规模P=20),作为第一代种群。
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值。
对染色体个体进行解码时,每个染色体个体(对应问题的解)包含三条染色体子串,在解码的过程中对每个染色体个体的子串分别进行解码。
首先,从JC子串中依次获取基因,并确定基因对应的工序含义;每次解码出工序后,再从MPC子串中通过索引x2和工序Oi,j的映射关系,找到该工序对应的加工设备;最后从MTC子串中通过索引x3和工序Oi,j的映射关系,找到该工序加工结束后对应的运输机器,最终生成整个染色体的活动调度。具体解码步骤如下:
Step1获取JC子串第x1(初始x1=1)位基因,计算当前工件i出现的次数j,则该工序为第i件工件的第j道工序,记为Oi,j。
Step2根据公式1≤j≤Ji获取工序Oi,j在MPC子串中对应的索引x2,读取x2的基因即为该工序的加工设备/>并从参数集中获取加工时间/>
Step3根据以下公式计算工序Oi,j的最早可开始加工时间
其中,表示工序Oi,j-1在运输机器/>上的送达时间;/>表示工序Oi‘,j‘在加工设备/>上的完工时间;/>表示工序Oi,j在加工设备/>上的准备时间。
Step4依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工。判断当前工序能否插入该空闲时间段加工的具体步骤如下:
Step4.1读取加工设备第l(初始l=0)段空闲时间的起、止时间T1、T2和后一道工序Oi",j";
Step4.2判断是否小于T2,是则执行Step4.3,否则令l=l+1,返回到Step4.1;
Step4.3根据式从参数集中获取当前工序准备时间/>
Step4.4当前工序插入会改变该空闲时间段后一道工序的原准备时间需根据式/>重新获取当前空闲时间段后一道工序的准备时间/>参见图3,工件插入过程如图,所示:在图3(a)中可见工序O1,3的原准备时间/>在工序O2,1插入到加工设备/>后如图3(b)所示,工序O1,3的准备时间更新为/>
Step4.5判断以下公式是否成立,成立则Oi,j可插入该空闲时间段加工并计算工序Oi,j在加工设备上的完工时间/>不成立则令l=l+1回到Step4.1。/>
其中,表示工序Oi,j在加工设备/>上的最早加工时间;T1、T2分别表示加工设备/>第l(初始l=0)段空闲时间的开始、结束时间;/>表示工序Oi,j在加工设备/>上的准备时间;/>表示工序Oi,j在加工设备/>上的加工时间;/>表示工序Oi",j"在加工设备/>上的更新后的准备时间,/>表示工序Oi',j'在加工设备/>上的原准备时间。
Step5根据公式1≤j≤Ji获取工序Oi,j在MTC子串中对应的索引x3,读取x3的基因即为该工序的运输机器/>并从参数集中获取运输时间/>
由于,索引x3和工序Oi,j映射关系与第二条子串相同,所以在计算时,
Step6依次读取运输机器空闲时间段,并根据以下公式判断工序Oi,j能否在该空闲时间段运输,并计算工序Oi,j在运输机器/>上的送达时间/>
其中,表示工序Oi,j在运输机器/>上的最早起送时间;/>表示工序Oi,j在加工设备/>上的完工时间;/>表示工序Oi',j'在运输机器/>上的送达时间;/>表示工序Oi,j可用加工设备集;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量, yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输。
Step7判断是否成立,若成立则所有工序解码完成,迭代结束;否则令x1=x1+1,转到Step1。
Step8计算染色体个体的适应度。
在计算适应度值时,按照以下公式计算:
minZ=αCmax+(1-α)Cedge
其中,minZ表示以最小化最大完工时间和线边库存时间的组合函数;α表示优化权重系数,Cmax表示最大完工时间;Cedge表示线边库存时间;Ci表示工件i的完工时间;表示;/>表示;xi,j,k为决策变量,xi,j,k=1表示工序Oi,j在设备/>上加工;xi,j,k=0表示该工序未在设备/>上加工;/>表示工序Oi,j在加工设备/>上的加工时间。/>
以最大完工时间和线边库存时间的组合加权函数为目标函数,以最小化最大完工时间和线边库存时间的组合函数为目标,并将目标函数作为算法中的适应度函数,并根据该适应度函数计算染色体个体的适应度值。α表示最大完工时间的优化权重,1-α为线边库存时间的优化权重,系数α可以根据企业实际运营情况中最大完工时间和线边库存时间的相对重要程度来确定。
目标函数的约束条件:根据柔性作业车间生产流程,设置上述目标函数的约束条件。约束条件主要考虑了两种辅助时间和工件各道工序依次加工顺序,以及工件加工、运输的可用设备约束。具体的,
1)工件加工时间约束条件。
表示任一工件的首道工序最早可加工时间为0,对应假设1、3;
表示工件i在加工设备/>上的开工时间/>受上道工序Oi,j-1的运输完成时间约束,对应假设7,也受加工设备资源和准备时间约束,必须在加工设备/>刚空闲时间加上工序Oi,j的准备时间之后,对应假设8。
表示工序Oi,j的完工时间,其中,xi,j,k为决策变量,对应假设6;
表示在工序Oi,j可用的加工设备集/>中仅选择一台设备进行加工,对应假设9。
2)工件运输时间约束条件。每个工件在完成一道工序后需运送至下一设备处等待加工,最后一道工序完成后运送到缓存区暂存。
表示任一工件的首道工序开始运输时间即为首道工序完工时间;
表示工件i在运输机器/>上的开始运输时间/>受工序Oi,j完工时间约束,对应假设5,也受运输机器资源约束必须在运输机器/>运输上道工序结束之后,对应假设8;
表示工件i的送达时间,为工件i 的起始运输时间加上工件i的运输时间,其中yi,j,b为决策变量,对应假设;
表示在工序Oi,j可用的运输机器集/>中选择一台机器进行运输,对应假设9;
表示工件i每道工序加工结束后运输完成时间的最大值,即为工件生产周期结束时间。
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6。
具体的,设置迭代次数为I=400。当达到迭代次数后,算法终止,并输出最优解。
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4。
1)选取下一代染色体个体。基于选择策略选取适应度较好的染色体个体进入下一代,直到种群数量达到和上一代相同(如,上一代种群数量为20,下一代的种群数量也为20)。选择策略可以为精英保留策略或者二元锦标赛法策略。另外,采用保优策略选取父代中适应度值最优的个体进入下一代。
2)对进入下一代的染色体个体进行交叉和变异操作。具体的,
2.1)对染色体个体进行交叉操作。参见图4,交叉操作主要分为两部分,第一部分是JC子串采用POX交叉方法。随机选择两条父染色体JC1、JC2,将工件集随机分为两个非空的真子集R1、R2,初始化两条空子串CH1、CH2。将JC1中属于R1的工件复制到CH1的对应基因位,将JC2中属于R2的工件复制到CH2 的对应基因位;再将JC2中属于R2的工件,依次放到CH1的空基因位上,将JC1 中属于R1的工件依次放到CH2的空基因位上,POX交叉操作如图4所示。第二部分是MPC、MTC子串均采用均匀交叉(Uniform Crossover),MPC、MTC子串的编码方式决定了两条父子串任意一条x位置的基因遗传到后代子串的x位置,从而保证后代子串依然是可行解。随机选择两条父染色体MPC1、MPC2,初始化两条空子串CH1、CH2。依次遍历基因位(初始索引x2=1),每次随机产生一个[0,1] 的参数δ,当δ>0.5时,则MPC1基因位索引为x2的基因遗传给CH1,MPC2基因位索引为x2位基因遗传给CH2;否则MPC1的x2位基因遗传给CH2,MPC2的x2位基因遗传给CH1,令x2=x2+1,继续下一个基因位的遗传。MTC交叉操作同理可得。
2.2)对染色体个体进行变异操作。参见图5,变异操作主要分为两部分,第一部分是JC子串采用交换变异方法(Swapping Mutation),这种方法是通过交换 JC子串中两个不同基因位上的基因来产生新的后代。随机选择一条JC子串,随机选择该子串上的两个基因位,并交换两个基因位的基因,产生新的后代子串CH。第二部分是MPC、MTC子串均采用智能变异(IntelligentMutation),智能变异这种方法主要用于工序加工和运输路径变异操作。随机选择一条MPC子串,并随机选择一个基因位x2,利用公式1≤j≤Ji的映射关系求解出对应的工序 Oij,并从该工序可用加工设备集Mpij中,随机选择一台加工设备k替换原MPC子串中基因位x2的设备。MTC变异操作同理可得。
基于上述的选择策略选取染色体个体进入下一代、并对进入下一代的染色体个体分别进行交叉和变异操作,以产生种群数量为20的子代种群。
S7、算法执行结束,输出最优解以及最优解对应的甘特图。
算法执行结束时,输出最优解,最优解对应考虑工序准备时间和带资源约束的运输时间下n个待加工的工件在m台加工设备上加工的最佳顺序和加工设备选择的方案,然后根据这个方案绘制甘特图,企业可以按照该甘特图执行生产。
实施例2:
第二方面,本发明还提供了一种基于改进遗传算法的柔性作业车间多目标调度系统,该系统包括:
处理单元,所述处理单元用于执行以下步骤:
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体;所述工序部分包括工件总数n,工件i的工序总数Ji;所述加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>所述运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
S3、初始化遗传算法的初始种群;
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值;
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6;
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4;
S7、算法执行结束;
输出单元,所述输出单元用于输出最优解以及最优解对应的甘特图。
可选的,所述处理单元执行S4时,对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值包括:
Step1基于第一子串的第x1位基因,获取当前工件i的第j道工序Oi,j;
Step2获取工序Oi,j在第二子串中对应的索引x2,并基于x2确定工序Oi,j的加工设备和加工时间/>
Step3确定工序Oi,j的最早可开始加工时间
其中,表示工序Oi,j-1在运输机器/>上的送达时间;/>表示工序Oi‘,j‘在加工设备/>上的完工时间;/>表示工序Oi,j在加工设备/>上的准备时间;
Step4依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工;
Step5根据公式获取工序Oi,j在第三子串中对应的索引x3,并基于x3确定工序Oi,j的运输机器/>和运输时间/>
Step6依次读取运输机器空闲时间段,并根据以下公式判断工序Oi,j能否在该空闲时间段运输,并计算工序Oi,j在运输机器/>上的送达时间/>/>
其中,表示工序Oi,j在运输机器/>上的最早起送时间;/>表示工序Oi,j在加工设备/>上的完工时间;/>表示工序Oi',j'在运输机器Mbt上的送达时间;/>表示工序Oi,j可用加工设备集;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量, yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;
Step7判断是否成立,若成立则所有工序解码完成,迭代结束,转到Step8;否则令x1=x1+1,转到Step1;
Step8计算染色体个体的适应度。
可选的,所述处理单元执行Step4时,依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工包括:
Step4.1读取加工设备第l段空闲时间的起、止时间T1、T2和后一道工序 Oi",j";
Step4.2判断是否小于T2,是则执行Step4.3,否则令l=l+1,返回Step4.1;其中/>表示工序Oi,j在加工设备/>上的最早加工时间;
Step4.3获取当前工序准备时间
Step4.4获取当前空闲时间段后一道工序的准备时间
Step4.5判断以下公式是否成立,若成立则工序Oi,j可插入该空闲时间段加工,不成立则令l=l+1回到Step4.1;
其中,表示工序Oi,j在加工设备/>上的最早加工时间;T1、T2分别表示加工设备/>第l段空闲时间的开始、结束时间;/>表示工序Oi,j在加工设备/>上的准备时间;/>表示工序Oi,j在加工设备/>上的加工时间;/>表示工序Oi",j"在加工设备/>上的更新后的准备时间,/>表示工序Oi',j'在加工设备/>上的原准备时间。
可选的,所述处理单元执行Step8时,计算染色体个体的适应度值包括,按照以下目标函数计算染色体个体的适应度值:
min Z=αCmax+(1-α)Cedge
其中,minZ表示最小化最大完工时间和线边库存时间;α表示优化权重系数, Cmax表示最大完工时间;Cedge表示线边库存时间;Ci表示工件i的完工时间;表示工序Oi,j在运输机器/>上的送达时间;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;xi,j,k为决策变量,xi,j,k=1表示工序Oi,j在设备/>上加工; xi,j,k=0表示该工序未在设备/>上加工;/>表示工序Oi,j在加工设备/>上的加工时间;
所述目标函数的约束条件包括:
工件加工时间约束条件:
表示任一工件的首道工序最早可加工时间为0;
表示工件i在加工设备/>上的开工时间/>受上道工序Oi,j-1的运输完成时间约束,也受加工设备资源和准备时间约束;
表示工序Oi,j的完工时间;
表示在工序Oi,j可用的加工设备集/>中仅选择一台设备进行加工;
工件运输时间约束条件:
表示任一工件的首道工序开始运输时间即为首道工序完工时间;
表示工件i在运输机器/>上的开始运输时间/>受工序Oi,j完工时间约束,也受运输机器资源约束;
表示工件i的送达时间,为工件i 的起始运输时间加上工件i的运输时间;
表示在工序Oi,j可用的运输机器集/>中选择一台机器进行运输;
表示工件i每道工序加工结束后运输完成时间的最大值。
可选的,所述处理单元执行S6时,对进入下一代的染色体个体分别进行交叉和变异操作包括:
对染色体个体的第一子串进行POX交叉操作,对染色体个体的第二子串和第三子串均采用均匀交叉操作;
对染色体个体的第一子串采用交换变异操作,对染色体个体的第二子串和第三子串均采用智能变异操作。
可理解的是,本发明实施例提供的基于改进遗传算法的柔性作业车间多目标调度系统与上述基于改进遗传算法的柔性作业车间多目标调度方法相对应,其有关内容的解释、举例、有益效果等部分可以参照基于改进遗传算法的柔性作业车间多目标调度方法中的相应内容,此处不再赘述。
综上所述,与现有技术相比,具备以下有益效果:
1、本发明的技术方案针对柔性作业车间的调度优化问题,以最小化最大完工时间和降低线边库存时间为目标,建立了考虑工序准备时间和带资源约束的运输时间的多目标调度优化模型,在求解调度优化的结果时,采用改进的遗传算法对模型进行求解,采用三层编码方式,使得染色体能携带更多的信息,并对交叉和变异算子进行设计,保证新产生的后代依然是可行解,并最终求得调度优化问题的最优解。本发明在考虑多辅助时间的情况下研究柔性作业车间的调度优化问题时,所提出的问题和求解问题时使用的方法更符合企业生产实际,求解结果更加精准,对于企业生产具有一定的参考价值。
2、本发明构建的柔性作业车间多目标调度的优化模型考虑了准备时间和带资源约束的运输时间对最大完工时间和线边库存时间的影响,更贴合柔性作业车间生产的真实情况,使得最终的求解结果更加真实和准确;
3、本发明采用改进的遗传算法对模型进行求解,解决了由于约束中综合考虑了准备时间和运输时间,导致问题更加复杂、解码排序难度较大的问题;
4、本发明在改进遗传算法时,采用了三层编码方式,可携带工序、加工设备、运输机器等更多的信息,并采用工序插入式的解码方法,解决了因前插工序导致的后道工序准备时间随之变化的问题;对子代染色体个体进行交叉和变异操作时,保证新产生的后代依然是可行解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种基于改进遗传算法的柔性作业车间多目标调度方法,其特征在于,所述方法包括:
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体;所述工序部分包括工件总数n,工件i的工序总数Ji;所述加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>所述运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
S3、初始化遗传算法的初始种群;
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值;
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6;
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4;
S7、算法执行结束,输出最优解以及最优解对应的甘特图;
所述S4中对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值包括:
Step1基于第一子串的第x1位基因,获取当前工件i的第j道工序Oi,j;
Step2获取工序Oi,j在第二子串中对应的索引x2,并基于x2确定工序Oi,j的加工设备和加工时间/>
Step3确定工序Oi,j的最早可开始加工时间
其中,表示工序Oi,j-1在运输机器/>上的送达时间;/>表示工序Oi‘,j‘在加工设备/>上的完工时间;/>表示工序Oi,j在加工设备/>上的准备时间;
Step4依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工;
Step5根据公式获取工序Oi,j在第三子串中对应的索引x3,并基于x3确定工序Oi,j的运输机器/>和运输时间/>
Step6依次读取运输机器空闲时间段,并根据以下公式判断工序Oi,j能否在该空闲时间段运输,并计算工序Oi,j在运输机器/>上的送达时间/>
其中,表示工序Oi,j在运输机器/>上的最早起送时间;/>表示工序Oi,j在加工设备/>上的完工时间;/>表示工序Oi',j'在运输机器/>上的送达时间;/>表示工序Oi,j可用加工设备集;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;
Step7判断是否成立,若成立则所有工序解码完成,迭代结束,转到Step8;否则令x1=x1+1,转到Step1;
Step8计算染色体个体的适应度。
2.如权利要求1所述的方法,其特征在于,所述Step4中依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工包括:
Step4.1读取加工设备第l段空闲时间的起、止时间T1、T2和后一道工序工序Oi",j";
Step4.2判断是否小于T2,是则执行Step4.3,否则令l=l+1,返回Step4.1;其中表示工序Oi,j在加工设备/>上的最早加工时间;
Step4.3获取当前工序准备时间
Step4.4获取当前空闲时间段后一道工序的准备时间
Step4.5判断以下公式是否成立,若成立则工序Oi,j可插入该空闲时间段加工,不成立则令l=l+1回到Step4.1;
其中,表示工序Oi,j在加工设备/>上的最早加工时间;T1、T2分别表示加工设备/>第l段空闲时间的开始、结束时间;/>表示工序Oi,j在加工设备/>上的准备时间;/>表示工序Oi,j在加工设备/>上的加工时间;/>表示工序Oi",j"在加工设备/>上的更新后的准备时间,/>表示工序Oi',j'在加工设备/>上的原准备时间。
3.如权利要求1所述的方法,其特征在于,所述Step8中计算染色体个体的适应度值包括,按照以下目标函数计算染色体个体的适应度值:
min Z=αCmax+(1-α)Cedge
其中,minZ表示最小化最大完工时间和线边库存时间;α表示优化权重系数,Cmax表示最大完工时间;Cedge表示线边库存时间;Ci表示工件i的完工时间;表示工序Oi,j在运输机器/>上的送达时间;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;xi,j,k为决策变量,xi,j,k=1表示工序Oi,j在设备/>上加工;xi,j,k=0表示该工序未在设备/>上加工;/>表示工序Oi,j在加工设备/>上的加工时间;
所述目标函数的约束条件包括:
工件加工时间约束条件:
表示任一工件的首道工序最早可加工时间为0;
表示工件i在加工设备上的开工时间/>受上道工序Oi,j-1的运输完成时间约束,也受加工设备资源和准备时间约束;
表示工序Oi,j的完工时间;
表示在工序Oi,j可用的加工设备集/>中仅选择一台设备进行加工;
工件运输时间约束条件:
表示任一工件的首道工序开始运输时间即为首道工序完工时间;
表示工件i在运输机器/>上的开始运输时间/>受工序Oi,j完工时间约束,也受运输机器资源约束;
表示工件i的送达时间,为工件i的起始运输时间加上工件i的运输时间;
表示在工序Oi,j可用的运输机器集/>中选择一台机器进行运输;
表示工件i每道工序加工结束后运输完成时间的最大值。
4.如权利要求1所述的方法,其特征在于,所述S6中对进入下一代的染色体个体分别进行交叉和变异操作包括:
对染色体个体的第一子串进行POX交叉操作,对染色体个体的第二子串和第三子串均采用均匀交叉操作;
对染色体个体的第一子串采用交换变异操作,对染色体个体的的第二子串和第三子串均采用智能变异操作。
5.一种基于改进遗传算法的柔性作业车间多目标调度系统,其特征在于,所述系统包括:
处理单元,所述处理单元用于执行以下步骤:
S1、设置遗传算法的参数集;所述参数集包括:预设迭代代数I,种群规模P,子代变异率Pm,子代交叉率Pc,目标函数权重α;工件总数n;加工设备总数m,加工设备编号k,加工设备运输机器总数a,运输机器编号b,运输机器/>工件i的工序总数Ji;工序Oi,j可用加工设备集/>工序Oi,j可用运输机器集/>
S2、将所述参数集的工序部分、加工设备部分、运输机器部分分别设定为染色体的第一子串、第二子串、第三子串,并基于MSOS编码方法对所述参数集进行三层编码获取染色体个体;所述工序部分包括工件总数n,工件i的工序总数Ji;所述加工设备部分包括加工设备总数m,加工设备编号k,加工设备工序Oi,j可用加工设备集/>所述运输机器部分包括运输机器总数a,运输机器编号b,运输机器/>以及工序Oi,j可用运输机器集/>
S3、初始化遗传算法的初始种群;
S4、对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值;
S5、判断当前迭代代数是否大于等于预设迭代代数I,若是,转步骤S7;否则,转步骤S6;
S6、基于选择策略选取适应度值最优的染色体个体进入下一代,并对进入下一代的染色体个体分别进行交叉和变异操作,以产生子代种群,再转到步骤S4;
S7、算法执行结束;
输出单元,所述输出单元用于输出最优解以及最优解对应的甘特图;
所述处理单元执行S4时,对所述初始种群中的染色体个体进行解码,并计算每个染色体个体所对应的适应度值包括:
Step1基于第一子串的第x1位基因,获取当前工件i的第j道工序Oi,j;
Step2获取工序Oi,j在第二子串中对应的索引x2,并基于x2确定工序Oi,j的加工设备和加工时间/>Step3确定工序Oi,j的最早可开始加工时间/>
其中,表示工序Oi,j-1在运输机器/>上的送达时间;/>表示工序Oi‘,j‘在加工设备/>上的完工时间;/>表示工序Oi,j在加工设备/>上的准备时间;
Step4依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工;
Step5根据公式获取工序Oi,j在第三子串中对应的索引x3,并基于x3确定工序Oi,j的运输机器/>和运输时间/>
Step6依次读取运输机器空闲时间段,并根据以下公式判断工序Oi,j能否在该空闲时间段运输,并计算工序Oi,j在运输机器/>上的送达时间/>
其中,表示工序Oi,j在运输机器/>上的最早起送时间;/>表示工序Oi,j在加工设备/>上的完工时间;/>表示工序Oi',j'在运输机器/>上的送达时间;/>表示工序Oi,j可用加工设备集;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;
Step7判断是否成立,若成立则所有工序解码完成,迭代结束,转到Step8;否则令x1=x1+1,转到Step1;
Step8计算染色体个体的适应度。
6.如权利要求5所述的系统,其特征在于,所述处理单元执行Step4时,依次读取机器的空闲时间段,判断当前工序能否插入该空闲时间段加工包括:
Step4.1读取加工设备第l段空闲时间的起、止时间T1、T2和后一道工序Oi",j";
Step4.2判断是否小于T2,是则执行Step4.3,否则令l=l+1,返回Step4.1;其中表示工序Oi,j在加工设备/>上的最早加工时间;
Step4.3获取当前工序准备时间
Step4.4获取当前空闲时间段后一道工序的准备时间
Step4.5判断以下公式是否成立,若成立则工序Oi,j可插入该空闲时间段加工,不成立则令l=l+1回到Step4.1;
其中,表示工序Oi,j在加工设备/>上的最早加工时间;T1、T2分别表示加工设备/>第l段空闲时间的开始、结束时间;/>表示工序Oi,j在加工设备/>上的准备时间;/>表示工序Oi,j在加工设备/>上的加工时间;/>表示工序Oi",j"在加工设备/>上的更新后的准备时间,/>表示工序Oi',j'在加工设备/>上的原准备时间。
7.如权利要求5所述的系统,其特征在于,所述处理单元执行Step8时,计算染色体个体的适应度值包括,按照以下目标函数计算染色体个体的适应度值:
min Z=αCmax+(1-α)Cedge
其中,min Z表示最小化最大完工时间和线边库存时间;α表示优化权重系数,Cmax表示最大完工时间;Cedge表示线边库存时间;Ci表示工件i的完工时间;表示工序Oi,j在运输机器/>上的送达时间;/>表示工序Oi,j可用运输机器集;yi,j,b为决策变量,yi,j,b=1表示工序Oi,j加工后使用运输机器/>运输;yi,j,b=0表示该工序未使用机器/>运输;xi,j,k为决策变量,xi,j,k=1表示工序Oi,j在设备/>上加工;xi,j,k=0表示该工序未在设备/>上加工;表示工序Oi,j在加工设备/>上的加工时间;
所述目标函数的约束条件包括:
工件加工时间约束条件:
表示任一工件的首道工序最早可加工时间为0;
表示工件i在加工设备上的开工时间/>受上道工序Oi,j-1的运输完成时间约束,也受加工设备资源和准备时间约束;
表示工序Oi,j的完工时间;
表示在工序Oi,j可用的加工设备集/>中仅选择一台设备进行加工;
工件运输时间约束条件:
表示任一工件的首道工序开始运输时间即为首道工序完工时间;
表示工件i在运输机器/>上的开始运输时间/>受工序Oi,j完工时间约束,也受运输机器资源约束;
表示工件i的送达时间为工件i的起始运输时间加上工件i的运输时间;
表示在工序Oi,j可用的运输机器集/>中选择一台机器进行运输;
表示工件i每道工序加工结束后运输完成时间的最大值。
8.如权利要求5所述的系统,其特征在于,所述处理单元执行S6时,对进入下一代的染色体个体分别进行交叉和变异操作包括:
对染色体个体的第一子串进行POX交叉操作,对染色体个体的第二子串和第三子串均采用均匀交叉操作;
对染色体个体的第一子串采用交换变异操作,对染色体个体的的第二子串和第三子串均采用智能变异操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110833167.6A CN113822525B (zh) | 2021-07-22 | 2021-07-22 | 基于改进遗传算法的柔性作业车间多目标调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110833167.6A CN113822525B (zh) | 2021-07-22 | 2021-07-22 | 基于改进遗传算法的柔性作业车间多目标调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113822525A CN113822525A (zh) | 2021-12-21 |
CN113822525B true CN113822525B (zh) | 2023-09-19 |
Family
ID=78912765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110833167.6A Active CN113822525B (zh) | 2021-07-22 | 2021-07-22 | 基于改进遗传算法的柔性作业车间多目标调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113822525B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114707294B (zh) * | 2022-01-28 | 2023-02-07 | 湘南学院 | 有限运输能力约束的作业车间多目标调度方法 |
CN115034444B (zh) * | 2022-05-24 | 2024-02-02 | 合肥工业大学智能制造技术研究院 | 基于学习效应的多目标双柔性作业车间调度方法及系统 |
CN116224946B (zh) * | 2023-03-24 | 2023-11-14 | 华中科技大学 | 机械件加工车间生产与物流集成的优化调度方法与系统 |
CN117555305B (zh) * | 2024-01-11 | 2024-03-29 | 吉林大学 | 一种基于nsgaii的多目标可变子批柔性车间作业调度方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106610654A (zh) * | 2015-12-29 | 2017-05-03 | 四川用联信息技术有限公司 | 针对柔性作业车间调度的改进遗传算法 |
WO2019153429A1 (zh) * | 2018-02-07 | 2019-08-15 | 江南大学 | 一种基于有限制稳定配对策略的柔性作业车间调度方法 |
CN112668789A (zh) * | 2020-12-30 | 2021-04-16 | 重庆大学 | 一种柔性作业车间带准备工序的自适应分批调度方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301473B (zh) * | 2017-06-12 | 2018-06-15 | 合肥工业大学 | 基于改进遗传算法的同类平行机批调度方法及系统 |
-
2021
- 2021-07-22 CN CN202110833167.6A patent/CN113822525B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106610654A (zh) * | 2015-12-29 | 2017-05-03 | 四川用联信息技术有限公司 | 针对柔性作业车间调度的改进遗传算法 |
WO2019153429A1 (zh) * | 2018-02-07 | 2019-08-15 | 江南大学 | 一种基于有限制稳定配对策略的柔性作业车间调度方法 |
CN112668789A (zh) * | 2020-12-30 | 2021-04-16 | 重庆大学 | 一种柔性作业车间带准备工序的自适应分批调度方法 |
Non-Patent Citations (3)
Title |
---|
"Research of an Improved Genetic Algorithm for Job Shop Scheduling";Jinghua Wu等;《2010 International Conference on Measuring Technology and Mechatronics Automation》;第1076-1078页 * |
"面向车间层的绿色生产多目标调度及改进算法研究";孔琳;《中国优秀硕士学位论文全文数据库 工程科技II辑》(第第1期期);第4章 * |
任务分解控制及人员柔性的车间集成调度;林仁等;计算机工程与应用(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113822525A (zh) | 2021-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113822525B (zh) | 基于改进遗传算法的柔性作业车间多目标调度方法及系统 | |
CN112561194B (zh) | 一种混合流水车间生产与物流集成调度方法及系统 | |
CN103530702B (zh) | 一种基于瓶颈设备分解的大规模作业车间调度方法 | |
CN111507641A (zh) | 一种批处理设备调度方法及其装置 | |
CN112783172B (zh) | 基于离散鲸鱼优化算法的agv与机器集成调度方法 | |
CN101901425A (zh) | 一种基于多种群协同进化的柔性作业车间调度方法 | |
CN114707294B (zh) | 有限运输能力约束的作业车间多目标调度方法 | |
CN112668789B (zh) | 一种柔性作业车间带准备工序的自适应分批调度方法 | |
CN106611275A (zh) | 针对作业车间生产问题的排产算法 | |
CN114971317A (zh) | 一种基于改进遗传算法的设备排产和场内物流调度优化方法 | |
CN113569483A (zh) | 基于人工蜂群算法求解多目标柔性作业车间调度的方法 | |
CN113762811B (zh) | 一种考虑加班的无拖期Job Shop调度问题求解方法及系统 | |
CN110263970B (zh) | 一种求解自动轨道小车上料调度问题的混合离散人工蜂群算法 | |
CN113139720B (zh) | 一种具有学习效应的铸造车间生产调度优化方法 | |
CN113689066A (zh) | 一种基于nsga-ii算法的物联网车间调度方法 | |
CN113361813A (zh) | 一种圆晶设备排产系统优化调度方法 | |
CN117075545A (zh) | 一种多目标柔性作业车间调度方法、电子设备、介质 | |
CN110598943A (zh) | 改良文化基因算法求解带运输时间柔性作业车间调度方法 | |
CN116307214A (zh) | 一种基于nsga-ii算法的自动配棉方法及相关装置 | |
CN113283819B (zh) | 基于规则解码的Job Shop调度问题求解方法及系统 | |
CN115826530A (zh) | 一种基于d3qn和遗传算法的作业车间分批调度方法 | |
CN115392616A (zh) | 一种知识挖掘结合遗传算法的多目标离散车间调度方法 | |
CN111105164B (zh) | 一种车间调度方法、装置及设备 | |
CN116468137A (zh) | 一种分布式工艺规划与车间调度集成优化方法 | |
CN115700647A (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 |