CN116562436B - 跨企业分布式服装协同生产调度优化方法、设备及介质 - Google Patents
跨企业分布式服装协同生产调度优化方法、设备及介质 Download PDFInfo
- Publication number
- CN116562436B CN116562436B CN202310490732.2A CN202310490732A CN116562436B CN 116562436 B CN116562436 B CN 116562436B CN 202310490732 A CN202310490732 A CN 202310490732A CN 116562436 B CN116562436 B CN 116562436B
- Authority
- CN
- China
- Prior art keywords
- subtask
- population
- task
- elite
- current
- 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 122
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 74
- 238000005457 optimization Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 174
- 238000011156 evaluation Methods 0.000 claims abstract description 18
- 108091026890 Coding region Proteins 0.000 claims abstract description 13
- 238000003754 machining Methods 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 25
- 238000012546 transfer Methods 0.000 claims description 23
- 230000035772 mutation Effects 0.000 claims description 22
- 108090000623 proteins and genes Proteins 0.000 claims description 17
- 238000003860 storage Methods 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 15
- 238000003780 insertion Methods 0.000 claims description 11
- 230000037431 insertion Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 9
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 7
- 230000014759 maintenance of location Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 238000005520 cutting process Methods 0.000 claims description 4
- 238000009958 sewing Methods 0.000 claims description 4
- 238000010409 ironing Methods 0.000 claims description 3
- 238000007639 printing Methods 0.000 claims description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 2
- 230000007704 transition Effects 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 description 26
- 238000002474 experimental method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 108700028369 Alleles Proteins 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012418 validation experiment Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000012966 insertion method Methods 0.000 description 1
- 238000010295 mobile communication 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
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004753 textile Substances 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/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- 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/06311—Scheduling, planning or task assignment for a person or group
-
- 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/06315—Needs-based resource requirements planning or analysis
-
- 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/0633—Workflow analysis
-
- 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/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- 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—Information and communication technology [ICT] specially adapted for implementation of business processes of 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
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- Manufacturing & Machinery (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种跨企业分布式服装协同生产调度优化方法、设备及介质。其中,方法包括:获取初始种群作为当前种群,种群中的每个个体为多个服装生产任务在多个工厂间的调度方案的编码序列,所述编码序列包括每个任务的排序,以及每个任务选择的工厂和加工单元;根据最大完成时间,对所述当前种群中的每个个体进行适应度评价;根据适应度值对所述当前种群进行分级,并执行全局搜索;对全局搜索后的种群执行局部搜索,得到新的当前种群;返回所述对当前种群进行适应度评价的操作,循环迭代,直到迭代次数达到最大迭代次数;将最终的当前种群中的最优解作为所述多个服装生产任务在多个工厂间的最优调度方案。本实施例对多地、多工厂下的服装生产调度方案进行优化。
Description
技术领域
本发明实施例涉及服装生产领域,尤其涉及一种跨企业分布式服装协同生产调度优化方法、设备及介质。
背景技术
近年来服装行业个性化定制的需求日益旺盛,仅靠单个企业难以满足大规模的用户个性化需求,产业互联网平台可以通过汇聚用户的个性化需求和企业的制造服务信息,进行生产任务的分析归类和企业生产任务的统一下发,并通过分布式智能调度方法进行优化调度,从而达到敏捷响应用户需求的目的。
传统的生产调度理论更加关注于企业内的任务调度,有关跨企业的分布式协同生产调度理论有待进一步研究与探索。专利CN113657647A公开了一种用于纺织服装工业互联网中的订单分配方法,专利CN113807708A公开了一种基于分布式的服装柔性生产制造平台系统,均实现了生产任务的自动分配,但并不适用于多个生产工厂分布于多个地点的情况。
发明内容
本发明实施例提供一种跨企业分布式服装协同生产调度优化方法、设备及介质,对多地、多工厂下的服装生产调度方案进行优化。
第一方面,本发明实施例提供了一种跨企业分布式服装协同生产调度优化方法,包括:
获取初始种群作为当前种群,种群中的每个个体为多个服装生产任务在多个工厂间的调度方案的编码序列,所述编码序列包括每个任务的排序,以及每个任务选择的工厂和加工单元;
根据最大完成时间,对所述当前种群中的每个个体进行适应度评价;
根据适应度值对所述当前种群进行分级,并执行全局搜索;
对全局搜索后的种群执行局部搜索,得到新的当前种群;
返回所述对当前种群进行适应度评价的操作,循环迭代,直到迭代次数达到最大迭代次数;将最终的当前种群中的最优解作为所述多个服装生产任务在多个工厂间的最优调度方案;
其中,所述当前种群的规模为P;所述根据适应度值对所述当前种群进行分级,并执行全局搜索,包括:
选取所述当前种群中适应度值最优的多个个体构成非劣解库,其余个体构成普通解库;
采用二元锦标赛选择策略从所述普通解库中选择K个普通个体,组成普通群体,利用全局搜索算子对所述普通群体进行更新,由更新后的普通群体中适应度最好的前K/2个个体组成普通种群;同时,
采用二元锦标赛选择策略从所述非劣解库中选择K个第一精英个体,组成精英群体,利用全局搜索算子对所述精英群体进行更新,由更新后的精英群体中适应度最好的前K/2个个体组成精英种群;同时,
采用二元锦标赛选择策略分别从所述普通解库和非劣解库中选择普通个体和第一精英个体,组成规模为P-K的混合交流群体,利用全局搜索算子对所述混合交流群体进行更新;
合并所述普通种群、精英种群和更新后的混合交流群体,得到规模为P的新种群;
其中,P、K、K/2均为自然数。
第二方面,本发明实施例提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的跨企业分布式服装协同生产调度优化方法。
第三方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的跨企业分布式服装协同生产调度优化方法。
本发明实施例针对服装产业跨企业生产协同中的调度问题,建立考虑工厂间转移时间的最小化最大完成时间为优化目标的调度优化模型,提出一种带分级协同进化策略的改进模因方法对模型进行求解,适用于多个服装工厂分布于多个地点的情况,并提高了调度优化的收敛速度和调度方案的优异性。具体的,本实施例在全局搜索环节采用分级协同的方式进行进化,首先将种群分为两个等级,建立非劣解库对精英解进行保留,然后生成三个不同群体,最后对三个群体进行并行的协同进化,生成新的子代种群。这一方式通过精英群体和普通群体的划分保留每一代种群中的精英个体,并提出混合交流群体作为辅助分类构成完备的解空间,实现了对解空间的充分探索,共同促进得到优异的服装生产调度方案;此外,进化过程三个分支采用并行方式,大大缩减了进化操作所需的时间,提高了调度优化的收敛速度。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种跨企业分布式服装协同生产调度优化问题的模型示意图。
图2是本发明实施例提供的一种跨企业分布式服装协同生产调度优化方法的流程图。
图3是本发明实施例提供的分段式编码规则的示意图。
图4是本发明实施例提供的判断是否满足空闲插入条件的示意图,其中图4中的(a)对应满足空闲插入条件的情况,图4中的(b)对应不满足空闲插入条件的情况。
图5是本发明实施例提供的均匀交叉操作的示意图。
图6是本发明实施例提供的基于任务优先顺序的交叉操作的示意图。
图7是本发明实施例提供的工厂选择序列的变异算子示意图。
图8是本发明实施例提供的加工单元选择序列的变异算子示意图。
图9是本发明实施例提供的交换变异算子的示意图。
图10是本发明实施例提供的邻域变异算子的示意图。
图11是本发明实施例提供的另一种跨企业分布式服装协同生产调度优化方法的流程图。
图12是本发明实施例提供的验证实验中迭代次数的水平趋势图。
图13是本发明实施例提供的验证实验中种群规模的水平趋势图。
图14是本发明实施例提供的验证实验中交叉率的水平趋势图。
图15是本发明实施例提供的验证实验中变异率的水平趋势图。
图16是本发明实施例提供的验证实验中精英保留率的水平趋势图。
图17是本发明实施例提供的执行有分级协同进化策略的方法和无分级协同进化策略的方法时迭代曲线的对比图。
图18是本发明实施例提供的在数据集DMk04上执行有局部搜索策略的方法和无局部搜索策略的方法时迭代曲线的对比图。
图19是本发明实施例提供的在数据集DMk07上执行有局部搜索策略的方法和无局部搜索策略的方法时迭代曲线的对比图。
图20是本发明实施例提供的执行改进的模因方法与经典的模因方法时迭代曲线的对比图;
图21为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行清楚、完整的描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施例,都属于本发明所保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
生产调度是在一定约束条件下,寻找满足目标函数的最优解的多目标优化问题。在分布式协同制造领域,跨企业协同的生产调度可以进一步抽象为分布式柔性作业车间调度问题(distributed flexible job shop scheduling problem,DFJSP),在加工单元选择和任务排序的基础上,还要进一步考虑工厂选择的问题。
本实施例针对服装产业互联网平台中的生产任务调度提出一种分布式柔性作业车间调度方法(以下称为跨企业分布式服装协同生产调度优化方法),并尽可能提高生产调度优化方法的快速性和准确性,特别适用于服装产业互联网大规模定制化业务场景,能够满足大规模、多样化和不确定性的生产任务需求。为了说明该方法,优先描述该方法的问题模型。
首先,问题模型中使用的变量符号和含义如表1所示:
表1
基于以上变量,本实施例的跨企业分布式服装协同生产调度优化问题可以如下表述:给定NT个待加工任务,每个待加工任务又分别包含NTS个待加工子任务,不同的待加工任务包含的待加工子任务数量不一定相等;共有NF个分布在不同区域的加工工厂,每个工厂设有NFM个加工单元,不同的工厂设有的加工单元数量不一定相等。现将NT个待加工任务交由NF个加工工厂进行生产加工,在满足每个项约束的条件下,以最小化最大完成时间(加工时间+转移时间)为优化目标,使每个加工子任务被分配到每个工厂的加工单元,如图1所示。
具体到服装产业互联网大规模定制化业务的场景,产业互联网平台是指分布在不同地域的生产企业之间进行信息共享和生产协作的协同平台,用户订购的个性化定制服装可视为一个生产任务,平台通过整合大规模的订单信息,得到一个生产任务集合,而每件服装的生产又可以拆分为不同的子任务,如布料的裁剪、印花、缝制、整烫等等,每道工序都可以抽象为一个生产子任务,且每个子任务之间具有先后顺序约束。每个任务包含的子任务数量不一定相等,因为服装的品类不同,其生产工艺也不尽相同。
平台中驻有许多生产企业,每个服装生产企业可抽象为一个加工工厂,且具有不同的加工能力,每个工厂均具有多个加工单元,可抽象为柔性加工单元(FlexibleManufacturing Unit,FMU),FMU可以完成一种或多种加工子任务,如某个FMU可以完成服装的裁剪和缝制的加工,而另一个FMU可以完成服装的裁剪、印花、缝制和整烫的加工。
进一步的,本实施例的调度对象是具有不同数量子任务的服装定制任务集合,其中不同服装定制任务之间无先后加工顺序约束,同一服装定制任务下的不同子任务要求按先后顺序依次进行加工;调度评价指标除了考虑加工时间外,还考虑子任务跨工厂的转移时间,同一工厂内不同加工单元的转移时间忽略不计,表2和表3分别给出了每个子任务在每个加工单元的加工时间矩阵和不同工厂间的转移时间矩阵的示例。实际应用中,加工时间矩阵和转移时间矩阵都是预先获取的,为已知量。
表2各子任务在各加工单元的加工时间矩阵示例
备注:“0”代表当前子任务不可在当前加工单元进行加工
表3跨工厂转移时间矩阵示例
F1 | F2 | F3 | |
F1 | 0 | 10 | 4 |
F2 | 10 | 0 | 6 |
F3 | 4 | 6 | 0 |
基于以上问题描述,本实施例的分布式服装协同生产调度问题还满足如下假设:
初始状态约束:所有加工单元在0时刻均可用,所有待加工子任务在0时刻均可被加工;
加工单元占用约束:每个加工单元在同一时刻最多只能加工一个子任务;
子任务加工约束:任一个子任务在任一个时刻只能在一个加工单元上加工,同一任务的不同子任务按照给定的先后顺序进行加工,不同任务之间是独立的,没有加工先后约束;
连续加工约束:任一个子任务一旦开始加工不允许中断,即为非抢占式加工;
时间约束:假设加工时间和转移时间是确定不变的值,且同一工厂内不同加工单元之间的转移时间忽略不计,不同工厂之间的转移时间与任务无关,仅与工厂间的距离有关。
基于以上问题描述和假设,本实施例的分布式服装协同生产调度优化问题的目标函数如下:
Cmax=max(CFk) (1)
CFk=max(CMkm) (2)
其中,式(1)中的Cmax表示求解所有工厂加工完所有任务的最大完成时间,式(2)中的CFk表示求解某一工厂加工完分配到的所有子任务的最大完成时间。
优化模型可以表示为:
min Cmax (3)
受限制于:
其中,TSpq表示待加工任务p的第q个子任务,表示子任务TSpq在FMkm的加工结束时间,/>式(3)表示优化目标为最小化最大完成时间;式(4)确保每个子任务只能在一个加工单元上加工;式(5)表示同一任务的子任务之间的优先约束关系;式(6)表示一个加工单元只能同时加工一个子任务;式(7)和式(8)分别给出子任务在加工单元的加工结束时间和加工开始时间的计算公式;式(9)确保变量是非负的。
基于以上问题模型,图2是本发明实施例提供的一种跨企业分布式服装协同生产调度优化方法的流程图。该方法基于模因方法改进而来,模因方法是一种基于种群的全局搜索和基于个体的局部启发式搜索的结合体,本实施例结合特定问题下的数据特征对全局搜索环节和局部搜索环节进行改进,得到一种新的服装生产调度优化方法。该方法由电子设备执行,如图2所示,具体包括如下步骤:
S110、获取初始种群作为当前种群,种群中的每个个体为多个服装生产任务在多个工厂间的调度方案的编码序列,所述编码序列包括每个任务的排序,以及每个任务选择的工厂和加工单元。
这里的种群是遗传方法中的概念,初始种群为遗传算法进化的开始。种群中的每个个体对应一种调度方案,调度方案包括每个子任务分配的工厂、加工单元,以及各子任务的排序,实际应用中将按照调度方案安排生产。为了构建初始种群,首先获取方法模型的超参数和编码策略。可选的,超参数包括种群规模P、迭代次数G、交叉概率Pc0、变异概率Pm和精英保留率Re。编码策略为:将多个服装生产任务在多个工厂间的调度方案编码为包括任务排序部分、工厂选择部分和加工单元选择部分的编码序列。
进一步的,所述编码策略也可以描述为分段式编码规则。本实施例将生产调度优化问题分解为三个子问题——工厂选择、加工单元选择和任务排序,因此采用分段式编码规则对三个子问题分别进行编码。其中,第一部分为基于任务排序的编码层(Task ordersequence,TS),即任务排序部分;第二部分为基于工厂选择的编码层(factory sequence,FS),即工厂选择部分;第三部分为基于加工单元选择的编码层(Processing unitsequence,PS),即加工单元选择部分。TS部分的数字表示任务号,出现的次数为当前任务的子任务号;FS部分按照任务顺序排列,数字表示该任务选择的工厂号;PS部分按照子任务顺序排列,数字表示可选加工单元集合中加工单元号。TS部分、FS部分和PS部分的长度相等,均等于总的子任务数。这种编码方式一方面可以保证后续的交叉、变异和局部搜索等策略产生的解仍然是可行解,并对任务的子任务长度和任务数量无任何要求,简单灵活;另一方面,对一部分的单独操作不会影响到另一部分,具有很强的并行性能。以图3所示为例,共有5个任务、3个工厂,工厂内最多有3个加工单元,TS11被分配到了2号工厂的2号加工单元,TS22被分配到了3号工厂的3号加工单元。
获取上述超参数和编码策略后,利用随机初始化方法构建初始种群,记为Pold。为保证初始种群的多样性,本实施例采用随机初始化策略进行种群初始化,具体过程包括:根据任务数和子任务数随机生成任务序列;按顺序选择任务序列中的子任务;从当前子任务的可选工厂集合中随机选择一个工厂,并将工厂编号填入工厂选择序列;从当前子任务选定的工厂中可选加工单元集合中随机选择一个加工单元,并将加工单元编号填入加工单元选择序列;返回所述按顺序选择子任务的操作,直到任务序列中的所有子任务均选取完毕。
S120、根据最大完成时间,对所述当前种群中的每个个体进行适应度评价。
适应度评价可为种群的选择提供参考,首先,对种群Pold中每个个体(编码序列)进行插入式解码,将编码序列还原为生产参数。这里的解码策略与编码策略对应,且按照不同的解码规则,序列可以解码成活动调度、半活动调度和非延迟调度等类型,且经证明最优调度必在活动调度集合中,因此为了生成活动调度,本实施例采用任务插入式的方式进行解码,即当加工单元存在空闲时间段时,将待加工任务插入到相应的可插入空闲时间段。可选的,当前种群中每个个体的插入式解码包括如下步骤:
步骤一、对工厂选择部分进行解码,得到每个子任务分配的工厂和加工前所需的转移时间。具体的,对工厂选择序列进行解码,从左到右依次读取并转换成工厂选择矩阵Fs和转移时间矩阵Tt。矩阵Fs中的每个元素Fs(i,j)表示任务i的第j个子任务的加工工厂编号,矩阵Tt中的每个元素Tt(i,j)表示任务i的第j个子任务加工前所需的转移时间。
步骤二、对加工单元选择部分进行解码,得到每个子任务在工厂内分配的加工单元和在所述加工单元处的加工时间。具体的,对加工单元选择序列进行解码,从左到右依次读取并转换成加工单元选择矩阵Ps和加工时间矩阵Tm。矩阵Ps中的每个元素Ps(i,j)表示任务i的第j个子任务在相应工厂的加工单元编号,矩阵Tm中的每个元素Tm(i,j)表示任务i的第j个子任务在加工单元处的加工时间。
步骤三、根据所述编码策略将所述任务排序部分的每个基因转换为每个子任务,根据每个子任务是否存在前置子任务、是否为加工单元上的第一个子任务,以及加工单元上的空闲间隔,确定每个子任务的加工开始时间和结束时间。具体的,该步骤对任务排序序列进行解码,并按照步骤一和步骤二所得的结果,得到每个子任务对应的工厂选择矩阵、转移时间矩阵、加工单元选择矩阵和加工时间矩阵,完成子任务分配后再对子任务进行排序可得到调度结果。为确保解码后产生活动调度,采用子任务插入式方法对任务排序序列进行解码,包括如下操作:
步骤1、初始化每个加工单元上的加工开始时间矩阵和加工结束时间矩阵。
步骤2、读取任务排序序列的第一个基因,转换成相应子任务TSij。
步骤3、通过工厂选择矩阵Fs、转移时间矩阵Tt、加工单元选择矩阵P和加工时间矩阵Tm得到子任务TSij所对应的加工工厂、加工单元、转移时间和加工时间。
步骤4、根据每个子任务是否存在前置子任务、是否为加工单元上的第一个子任务,确定每个子任务的加工开始时间。具体来说,包括以下几种情况:
情况一、子任务TSij不存在相同任务下的前置子任务,并且是加工单元上的第一个加工子任务。这时直接在加工单元的零时刻开始加工。
情况二、子任务TSij存在相同任务下的前置子任务,并且是加工单元上的第一个加工子任务。这时按公式(13)从ta处开始加工,ta表示相同任务下的前置子任务的送达时间,即相同任务下的前置子任务的结束时间与转移时间之和。
情况三、子任务TSij不存在相同任务下的前置子任务,并且不是加工单元上的第一个加工子任务。这时,在加工单元FMkm上寻找所有的间隔空闲时间段[STi,ETi],STi表示空闲间隔开始时间,ETi表示空闲间隔结束时间;按照公式(10)确定子任务TSij可插入的空闲处开始时间tb;再按公式(11)判断是否满足空闲插入条件,若满足则确定子任务TSij在加工单元FMkm上的加工开始时间为tb,否则按公式(12)计算子任务TSij的加工开始时间td。其中,在公式(11)中,tc表示子任务TSij在加工单元FMkm上的加工开始时间,是判断空闲插入条件时的中间变量。
情况四、子任务TSij存在相同任务下的前置子任务,并且不是加工单元上的第一个加工子任务。这时,在加工单元FMkm上寻找所有的间隔空闲时间段[STi,ETi],按照公式(14)确定子任务TSij可插入的空闲处开始时间t′b;再将t′b代入公式(11)中的tb判断是否满足空闲插入条件,若满足则确定子任务TSij在加工单元FMkm上的加工开始时间为t′b,否则按公式(15)计算子任务TSij的加工开始时间t′d;tb+procijkm≤ETi代表满足空闲插入条件,tb+procijkm>ETi代表不满足空闲插入条件,如图4所示。图4中,P11表示工厂F1的加工单元,P21和P22表示工厂F2的加工单元,TSp(q+1)表示待加工任务p的第q+1个子任务,TSmn表示待加工任务m的第n个子任务,TSm(n+1)表示待加工任务m的第n+1个子任务,TSkh表示待加工任务k的第h个子任务,TSk(h+1)表示待加工任务k的第h+1个子任务。
其中,结合表1中的释义,TSi(j-1)表示待加工任务i的第j-1个子任务,FMk′m′表示第k′个工厂的第m′个加工单元,表示子任务TSi(j-1)在FMk′m′的加工结束时间。
步骤5、根据子任务TSij最终确定的加工开始时间计算加工结束时间。
步骤6、更新每个加工单元上的加工开始时间矩阵和加工结束时间矩阵。判断序列是否读取完毕,如读取完毕,则解码结束;否则,继续读取任务排序序列的下一个基因,并转去执行步骤3。
完成解码后,根据解码结果(包括每个子任务的工厂、加工单元、加工开始时间和结束时间)评价种群Pold中每个个体的适应度值。考虑到本实施例的优化目标为最小化最大完成时间,且最大完成时间受最大加工结束时间的影响,只有保证最大加工结束时间最小,才可以得到最优的调度结果,本步骤中将目标函数(1)作为适应度函数,具体的评价过程包括如下步骤:
步骤一、初始化种群适应度表和个体适应度表。
步骤二、按顺序读取种群中的第一个个体。
步骤三、读取当前个体的编码序列,包括任务排序序列、工厂选择序列和加工单元选择序列,对其进行插入式解码操作,得到每个加工单元的加工开始时间表和加工完成时间表。
步骤四、分别计算每个加工单元上的最大完成时间,并取每个加工单元完成时间的最大值作为当前个体的适应度值,将当前适应度值填入个体适应度表;
步骤五、判断种群中个体是否读取完毕,若完毕则输出更新后的个体适应度表,并将个体适应度表中的最小值填入种群适应度表;若未完毕则按顺序读取下一个个体,并转到步骤三继续执行。
S130、根据适应度值对所述当前种群进行分级,并执行全局搜索。
为了保留每一代种群中的精英个体,防止优秀基因在进化中的丢失,本实施例在精英保留策略的基础上,提出一种种群分级协同进化机制,将种群划分为精英群体、普通群体和混合群体,分别执行全局搜索,既保留精英群体的优秀基因,又保证对解空间的充分探索。在一具体实施方式中,该过程包括如下步骤:
步骤一、选取所述当前种群中适应度值最优的多个个体构成非劣解库,其余个体构成普通解库。本步骤根据种群个体的适应度值区分精英个体和普通个体,并将精英个体存储于非劣解库中,将普通个体存储于普通解库中。
可选的,首先根据精英保留率和种群规模P,确定非劣解库的规模K:
K=Re ×P (16)
然后对种群Pold中个体进行适应度排序,并找出当前种群中适应度值较优的前K个个体,将K个个体对应的序列加入到非劣解库,非劣解库中的种群记为Pelite;将其余的P-K个个体加入到普通解库,普通解库中的种群记为Pord。
步骤二、采用二元锦标赛选择策略从所述普通解库中选择K个普通个体组成普通群体,利用全局搜索算子对所述普通群体进行更新,由更新后的普通群体中适应度最好的前K/2个个体组成普通种群;同时,采用二元锦标赛选择策略从所述非劣解库中选择K个第一精英个体组成精英群体,利用全局搜索算子对所述精英群体进行更新,由更新后的精英群体中适应度最好的前K/2个个体组成精英种群;同时,采用二元锦标赛选择策略分别从所述普通解库和非劣解库中选择普通个体和第一精英个体,组成规模为P-K的混合交流群体,利用全局搜索算子对所述混合交流群体进行更新。
该步骤基于锦标赛策略从普通解库和非劣解库中执行有放回选取,分别得到代表普通基因的普通种群,代表优秀基因的精英种群,以及用于加强解空间探索性的混合交流群体。由三类群体构成并行分支,同时执行种群内的全局搜索操作,实现种群进化。
第一分支:使用锦标赛策略从非劣解库中取出K个个体组成精英群体Pelite,对精英群体执行全局搜索算子得到进化后的种群Pelitenew;对种群Pelitenew进行适应度评价,对适应度评价结果进行排序,取最优的前K/2个个体组成种群Pe′litenew。其中,适应度评价的详细过程与S120相同,在此不再赘述。
第二分支:使用锦标赛策略从普通解库中取出K个个体组成普通群体Pord,对普通群体执行全局搜索算子得到进化后的种群Pordnew;对种群Pordnew进行适应度评价,对适应度评价结果进行排序,取最优的前K/2个个体组成种群Po′rdnew。
第三分支:使用锦标赛策略从普通解库选取普通个体,从非劣解库选取精英个体,共取出P-K个个体组成混合交流群体Phyb;对混合交流群体执行全局搜索算子得到进化后的种群Phyb_new。
步骤三、合并所述普通群体、精英群体和更新后的混合交流群体,得到规模为P的新种群。即合并种群Pe′lite_new、Po′rd_new和Phyb_new,得到种群规模仍为P的新种群Pnew。
下面对锦标赛策略进行说明。锦标赛策略是一种常用的种群选择方法,能够使具有较佳适应度的个体能以更高的概率存活并进入到下一代,有效的保护优秀基因,并保持种群的规模恒定和加快全局收敛。锦标赛选择主要分为选择、比较和更新三个步骤,在每一次的选择中,每个个体被选择到的概率相等,然后对选取的个体进行适应度值比较,具有最优适应度值的个体才能被选择进入下一代种群。本实施例中选取二元锦标赛选择方法,每次从种群中选择两个个体进行比较,具体执行步骤如下:
步骤1、获取当前种群规模P’,要生成的种群规模Q’,P’≤Q’。具体的,在第一分支和第二分支中,P’=Q’=K;在第三分支中,P’=Q’=P-K。
步骤2、随机生成两个位于[1,P’]之间的随机数R1和R2,分别对应两个个体在种群P’中的索引值。
步骤3、对种群P’中位于R1和R2索引处的两个个体进行适应度值比较,选择适应度值较大的个体进入新的种群Q’。
步骤4、判断当前新种群规模是否达到Q’,若达到,则结束并输出新种群;否则转到步骤2。
以上是对锦标赛策略的说明,下面说明全局搜索算子。全局搜索由交叉和变异两部分组成,本实施例根据任务排序部分、工厂选择部分和加工单元选择部分的特点,分别设计了不同的交叉算子和变异算子。
首先说明交叉算子。为了对解空间进行高效搜索,提高方法的全局搜索能力,本文采用混合交叉策略对种群进行更新。交叉操作必须满足可行性、合法性、信息非冗余性和特征有效继承性等指标,考虑到工厂选择序列和加工单元序列的非等位基因之间进行交叉会导致非法解的产生,且本文的调度问题研究范畴属于部分柔性作业车间调度问题,即至少存在一个子任务只能在某一工厂内所有加工单元的部分加工单元进行加工,因此只能对工厂选择序列和加工单元选择序列的等位基因进行交叉,即在工厂选择部分和加工单元选择部分可采用均匀交叉(Uniform crossover,UX)操作的方式进行交叉操作。对于任务排序序列,需满足交叉前后同一任务不同子任务间的顺序约束不变,因此在任务排序部分可以采用基于任务优先顺序的交叉(precedence preserving order-based crossover,POX)操作。此外,本实施例采用线性递减的动态交叉概率Pc,交叉概率Pc的值随着种群迭代次数的增加而降低,使得迭代前期可以保证种群的探索能力,而在迭代后期Pc的减小可以保证种群的开发能力,防止过高的种群多样性影响收敛精度。交叉概率Pc按公式(17)进行更新:
其中,Pc0为初始交叉概率,G为最大迭代次数,g为当前迭代次数。
对于工厂选择部分和加工单元选择部分:工厂选择和加工单元选择需要保证在交叉后个体的每位等位基因先后顺序仍保持不变,因此本实施例选用均匀交叉对加工单元序列进行操作,示例如图5所示,具体操作步骤如下:
步骤1、在区间(0,NS)内随机生成一个整数h,其中NS为子任务总数,即序列长度。
步骤2、在区间(0,NS)内随机再生成h个互不相等的整数,组成集合H。
步骤3、按照步骤2生成的整数集合H,集合中的每个整数代表个体基因索引,将父代个体P1和P2中对应位置的基因进行交换,并生成子代个体。
对于任务排序部分:在任务排序序列中,POX交叉是使用最多且效果最好的交叉操作之一,该交叉算子能够保证所有任务在父代和子代中出现的次数一致,并保持任意任务的子任务之间的顺序约束关系,可以保证得到的子代总是可行的,示例如图6所示,具体操作步骤如下:
步骤1、随机划分任务集为两个非空子集S1和S2;
步骤2、复制父代个体1中属于任务集S1中任务的子任务到子代个体1,复制父代个体2中属于任务集S1中任务的子任务到子代个体2,保留它们的顺序;
步骤3、复制父代个体1中属于任务集S2中任务的子任务到子代个体2,复制父代个体2中属于任务集S2中任务的子任务到子代个体1,保留它们的顺序。
以上是对交叉算子的说明,下面说明变异算子。变异算子对于保持种群的多样性起到十分关键的作用,其作用机理是对个体中某一基因序列产生随机扰动,针对本文设计的分段式编码规则,且考虑到研究范畴为部分柔性作业车间调度问题,设计出适用于不同序列的变异算子。
针对工厂选择部分,变异算子的操作包括如下步骤:
步骤1:获取每个子任务的可选加工工厂表、可选加工工厂的转移时间表,可选加工工厂的可选加工单元表、可选加工单元的制造时间表。
步骤2:遍历种群中的每一个个体,选择当前个体的加工单元选择序列和工厂选择序列,若遍历未完毕,则继续执行步骤3;否则结束。
步骤3:遍历当前加工单元选择序列和工厂选择序列的每个基因,若遍历未完毕,则执行步骤4;否则执行步骤2。
步骤4:随机生成一个[0,1]之间的随机数R,若R小于变异概率Pm,则执行步骤5;否则执行步骤3。
步骤5:根据当前基因的索引值确定子任务编号,根据子任务编号确定可选加工工厂集合List_F,随机从集合List_F中选择一个工厂,获取当前选择的工厂中可选的加工单元集合List_M,随机从集合List_M中选择一个加工单元,替换当前工厂选择序列和加工单元选择序列中的工厂和加工单元,替换完毕后继续执行步骤3,示例如图7所示。
针对加工单元选择部分,变异算子的操作包括如下步骤:
步骤1:获取每个子任务的可选加工工厂表和可选加工工厂的转移时间表。
步骤2:遍历种群中的每一个个体,选择当前个体的工厂选择序列,若遍历未完毕,则继续执行步骤3;否则结束。
步骤3:遍历当前工厂选择序列的每个基因,若遍历未完毕,则执行步骤4;否则执行步骤2。
步骤4:随机生成一个[0,1]之间的随机数R,若R小于变异概率Pm,则执行步骤5;否则执行步骤3。
步骤5:根据当前基因的索引值确定子任务编号,根据子任务编号确定可选加工工厂集合List_F,随机从集合List_F中选择一个工厂,替换当前序列中的工厂选择,替换完毕后继续执行步骤3。示例如图8所示。
针对任务排序部分:在任务排序序列上采用两种搜索策略结合的方式进行搜索操作,两种搜索策略作用区域每个占序列总长度的一半,一种搜索策略是交换变异(swapmutation,SM),选择序列TSa的两个位置并交换其元素从而获得序列TSa0,示例如图9所示;另一种采用邻域变异(neighborhood mutations,NM),如图10所示,该方法的基本工作过程描述如下(一个父代表示为Px;一个子代表示为O):
步骤1:选择Px中的3个元素(这些元素的值不同),并生成所有邻域TS字符串;
步骤2:随机选择附近TS字符串中的一个,并将其设置为当前TS字符串,即O。
S140、对全局搜索后的种群执行局部搜索,得到新的当前种群。
由于全局搜索算子为保持种群的多样性往往采取随机搜索的方式,得到的结果往往不是最优解,而局部搜索算子可以在全局搜索得到的结果基础上进一步进行确定性探索,通过执行每种局部搜索算子,可以大大提高方法的寻优能力。本实施例对影响调度结果中最大完成时间的关键因素进行了识别,确定关键工厂、关键单元和关键任务,并根据这三项关键因素开展局部搜索,具体包括如下步骤:
步骤一、对全局搜索后的种群进行适应度评价。
步骤二、选取适应度值最优的K个精英个体,为了便于区分和描述,本实施例中将S130中的精英个体称为第一精英个体,将此处的精英个体称为第二精英个体。
步骤三、对每个第二精英个体分别执行如下操作:
步骤1、根据当前第二精英个体对应的最大完成时间,确定所述最大完成时间对应的加工单元和所述加工单元中最后完成的子任务,将所述加工单元确定为关键单元,将所述加工单元所在的工厂确定为关键工厂,将所述子任务所在的任务确定为关键任务。
步骤2、分别针对关键任务、关键单元和关键工厂执行局部搜索。
针对关键任务,对所述关键任务下的每个子任务执行如下操作:替换当前子任务的工厂和加工单元,若替换后最大完成时间更小,则保留当前替换,否则保持原有序列不变。
针对关键单元,对所述关键单元下的每个子任务执行如下操作:将当前子任务从所述关键单元中删除,并加入到同一工厂内的其他加工单元;若变更完毕后最大完成时间更小,则保留当前变更,否则保持原有序列不变。
针对关键工厂,对所述关键单元下的每个子任务执行如下操作:将当前子任务从所述关键单元中删除,并加入到其他可用工厂内的加工单元;若变更完毕后最大完成时间更小,则保留当前变更,否则保持原有序列不变。
S150、返回所述适应度评价的操作,循环迭代,直到迭代次数达到最大迭代次数;将最终的当前种群中的最优解作为所述多个服装生产任务在多个工厂间的最优调度方案。
循环结束后得到最终的种群,采用S120中插入式解码操作,对最终种群中每个个体进行解码,还原调度参数;将各调度参数代入S120中的适应度评价方法,选出适应度最优的解,作为所述多个服装生产任务在多个工厂间的最优调度方案。图11是本发明实施例提供的另一种跨企业分布式服装协同生产调度优化方法的流程图,以另一种形式展示了本实施例的全过程,具体内容可参照S110-S150中描述的技术细节。
本实施例针对服装产业跨企业生产协同中的调度问题,建立考虑工厂间转移时间的最小化最大完成时间为优化目标的调度优化模型,提出一种带分级协同进化策略的改进模因方法对模型进行求解,适用于多个服装工厂分布于多个地点的情况,并提高了调度优化的收敛速度和调度方案的优异性。一方面,本实施例在全局搜索环节采用分级协同的方式进行进化,首先将种群分为两个等级,建立非劣解库对精英解进行保留,然后生成三个不同群体,最后对三个群体进行并行的协同进化,生成新的子代种群。分级协同进化策略通过精英群体和普通群体的划分保留每一代种群中的精英个体,并提出混合交流群体作为辅助分类构成完备的解空间,实现了对解空间的充分探索,共同促进得到优异的服装生产调度方案;此外,进化过程三个分支采用并行方式,大大缩减了进化操作所需的时间,提高了调度优化的收敛速度。另一方面,本实施例在局部搜索环节结合分布式服装车间调度的问题特点,识别出影响最大完成时间的关键工厂、关键单元和关键任务,针对关键任务的进行更短加工时间加工单元的替换,针对关键工厂和关键单元进行子任务的转移,更有针对性地提高方法的寻优能力,避免陷入局部最优解,加快收敛。
可选的,在上述实施例的基础上,本实施例为验证方法的有效性,对现有数据集进行了拓展,给出了相应的实验结果评估指标,并设计了三组实验对方法性能进行验证,包括方法模型参数的选定实验、方法改进的有效性实验和与其它方法的对比实验。其中,方法选用matlab语言实现,实验环境为Matlab R2021a,且运行在win10 Intel(R)Core(TM)i7-7500U CPU@2.90GHz 8.00GB RAM(内存)的PC机上。
首先介绍数据集设计。本实施例在FJSP基准实例的基础上,对其进行数据扩充,扩充方法为保留原有的每个子任务在每个加工单元的加工时间数据,另外随机生成相应的转移时间数据。具体的,选取Brandimarte给出的10组FJSP实例(mk01—mk10)作为测试问题,并在此基础上,分别考虑在2、3和4个分布式工厂的情况,每个子任务在每个工厂的转移时间在[4,10]之间随机生成,最终得到10组分布式柔性作业车间调度实例(Dmk01--Dmk10),有关每个实例内数据的详细描述如下表4所示。
表4数据集描述
基准实例 | 任务总数NT | 子任务总数NS | 工厂总数NF | 加工单元总数NM |
Dmk01 | 10 | 55 | 3 | 6 |
Dmk02 | 10 | 58 | 3 | 6 |
Dmk03 | 15 | 150 | 3 | 8 |
Dmk04 | 15 | 90 | 3 | 8 |
Dmk05 | 15 | 106 | 2 | 4 |
Dmk06 | 10 | 150 | 3 | 10 |
Dmk07 | 20 | 100 | 2 | 5 |
Dmk08 | 20 | 225 | 3 | 10 |
Dmk09 | 20 | 240 | 3 | 10 |
Dmk10 | 20 | 240 | 4 | 14 |
下面说明评价指标。为了衡量优化方法的性能,本研究采用最小的最大完成时间(Min)、平均最大完成时间(Av),标准差(S),相对标准偏差(RSD)和算法运行时间(T,单位/s)作为评价指标。
Min=min(makespan) (18)
其中,n为实验次数,Av为平均最大完成时间,makespan表示最大完成时间,makespani表示第i次实验得到的最大完成时间;算法运行时间即CPU计算时间,等于方法执行结束时间减去方法开始执行时间,可利用matlab中的方法计时器模块得到。
超参数设置如下:本实施例的方法中共有5个待定超参数,分别是方法迭代次数Niter、种群规模Np、交叉率Pc、变异率Pm和精英保留率Re,每个参数均对应有4种不同的取值水平,如表5所示。为了保证方法参数取值设置的合理性与有效性,本文采用正交实验法确定最佳的参数取值水平组合,正交实验法Ln(kp)计算公式如下:
n=p×(k-1)+1 (22)
其中,n代表实验次数,k代表参数的水平数,p代表参数个数。
表5参数水平表
根据公式计算可知,共需设置16组实验,为了兼顾数据集规模影响,本实施例选取了中等规模实例DMk04作为测试数据集,每组实验独立运行15次并取均值以减小实验误差,最后以最小的最大完成时间(Min)、最优解平均值(Av)、相对标准偏差(RSD)和算法运行时间(T)作为评价指标检验模型的性能,且当最小的最大完成时间越小,最优解平均值越小,相对标准偏差越小,算法运行时间越小时,模型的性能越好,实验结果如表6所示。
表6正交实验表
对实验数据作进一步处理,分别对每个参数的每个水平所对应的评价指标值取均值,得到每个参数的水平趋势变化图如图12-图16所示。根据图12、图13、图14、图15和图16每个参数的水平趋势图可知,当迭代次数取第二水平,种群规模取第三水平,交叉率取第二水平,变异率取第一水平,精英保留率取第二水平时,各个指标的综合评价结果最佳。因此,最终可以确定的参数组合为:迭代次数=100,种群规模=150,交叉率=0.8,变异率=0.01,精英保留率=0.2。
以上整定了本实施例整个方法中的超参数设置,下面针对该方法对传统模因方法的改进之处进行有效性验证。具体的,改进之处包括种群分级协同进化策略和本文设计的局部搜索算子,本实施例在不同规模的数据集上进行了多次测试实验,实验结果与分析如下所述:
为验证分级协同进化策略有效性,本实施例将带分级协同进化策略的改进模因方法与无分级协同进化策略的模因方法在DMk09数据集上进行测试,且两个方法中超参数设置相同,实验结果如图17所示,结果显示,带分级协同进化策略的改进模因方法的收敛速度更快,方法的稳定性更高,且同样能得到较优的解,可见分级进化策略可以有效的改进方法的收敛速度,使方法以更快的速度收敛到最优解。
为验证局部搜索算子设计的有效性,本实施例在方法超参数设置相同的条件下,将带有本方法局部搜索算子的改进模因方法和无本方法局部搜索算子的模因方法分别在数据集DMk04和DMk07上进行了测试,实验结果如图18、图19所示,实验结果显示,局部搜索算子可以防止方法陷入局部最优解,经过对局部的进一步探索,可以搜索到更优的解。
此外,本实施例将改进的模因方法与经典的模因方法进行了比较,且在模型参数设置相同、数据集相同的条件下进行对比实验,实验结果如图20所示,结果显示改进模因方法相比经典模因方法具有更强的全局收敛性和局部探索性。
根据以上实验结果可知,本实施例提出的跨企业分布式服装协同生产调度优化方法可以加快收敛速度,并且本实施例设计的局部搜索策略可以使方法更容易找到最优解,有效的解决了传统调度优化中容易陷入局部最优而无法得到优异调度方案的问题。同时,本实施例的调度优化方法具有良好的全局收敛性和局部探索性,能够高效地解决服装产业互联网大规模定制化业务场景下的生产调度问题,提高对客户多样化和个性化需求的响应能力。
图21为本发明实施例提供的一种电子设备的结构示意图,如图21所示,该设备包括处理器50、存储器51、输入装置52和输出装置53;设备中处理器50的数量可以是一个或多个,图21中以一个处理器50为例;设备中的处理器50、存储器51、输入装置52和输出装置53可以通过总线或其他方式连接,图21中以通过总线连接为例。
存储器51作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的跨企业分布式服装协同生产调度优化方法对应的程序指令/模块。处理器50通过运行存储在存储器51中的软件程序、指令以及模块,从而执行设备的每个种功能应用以及数据处理,即实现上述的跨企业分布式服装协同生产调度优化方法。
存储器51可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器51可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器51可进一步包括相对于处理器50远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置52可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置53可包括显示屏等显示设备。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任一实施例的跨企业分布式服装协同生产调度优化方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
最后应说明的是:以上每个实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述每个实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述每个实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明每个实施例技术方案。
Claims (8)
1.一种跨企业分布式服装协同生产调度优化方法,其特征在于,包括:
获取初始种群作为当前种群,种群中的每个个体为多个服装生产任务在多个工厂间的调度方案的编码序列,所述编码序列包括每个任务的排序,以及每个任务选择的工厂和加工单元;每个服装生产任务包括至少一个子任务,子任务类型包括裁剪、印花、缝制、整烫;每个工厂设有至少一个加工单元,每个加工单元能够完成至少一类子任务;所述调度方案的编码序列包括任务排序部分、工厂选择部分和加工单元选择部分;其中,所述任务排序部分的数字表示任务号,出现的次数表示当前任务的子任务号;所述工厂选择部分按照任务顺序排列,数字表示当前任务选择的工厂号;所述加工单元选择部分按照子任务顺序排列,数字表示可选加工单元集合中加工单元号;
根据最大完成时间,对所述当前种群中的每个个体进行适应度评价;具体的:对所述当前种群中的任一个体执行如下操作:对工厂选择部分进行解码,得到每个子任务分配的工厂和加工前所需的转移时间;对加工单元选择部分进行解码,得到每个子任务在工厂内分配的加工单元和在所述加工单元处的加工时间;根据编码策略将所述任务排序部分的每个基因转换为子任务,并根据每个子任务是否存在前置子任务、是否为加工单元上的第一个子任务,以及加工单元上的空闲间隔,确定每个子任务的加工开始时间和结束时间;根据每个子任务的工厂、加工单元、加工开始时间和结束时间,计算当前个体的适应度值,适应度函数如下:
Cmax=max(CFk)
其中,Cmax表示所有工厂加工完所有任务的最大完成时间,CFk表示第k个工厂加工完分配到的所有子任务的最大完成时间,CFk=max(CMkm),CMkm表示第k个工厂的第m个加工单元加工完最后一个子任务的结束时间;
根据适应度值对所述当前种群进行分级,并执行全局搜索;
对全局搜索后的种群执行局部搜索,得到新的当前种群;
返回所述对当前种群进行适应度评价的操作,循环迭代,直到迭代次数达到最大迭代次数;将最终的当前种群中的最优解作为所述多个服装生产任务在多个工厂间的最优调度方案;
其中,所述当前种群的规模为P;所述根据适应度值对所述当前种群进行分级,并执行全局搜索,包括:
选取所述当前种群中适应度值最优的前K个个体构成非劣解库,其余个体构成普通解库;
采用二元锦标赛选择策略从所述普通解库中选择K个普通个体,组成普通群体,利用全局搜索算子对所述普通群体进行更新,由更新后的普通群体中适应度最好的前K/2个个体组成普通种群;同时,
采用二元锦标赛选择策略从所述非劣解库中选择K个第一精英个体,组成精英群体,利用全局搜索算子对所述精英群体进行更新,由更新后的精英群体中适应度最好的前K/2个个体组成精英种群;同时,
采用二元锦标赛选择策略分别从所述普通解库和非劣解库中选择普通个体和第一精英个体,组成规模为P-K的混合交流群体,利用全局搜索算子对所述混合交流群体进行更新;
合并所述普通种群、精英种群和更新后的混合交流群体,得到规模为P的新种群;
其中,P、K、K/2均为自然数。
2.根据权利要求1所述的方法,其特征在于,所述对全局搜索后的种群执行局部搜索,得到新的当前种群,包括:
对全局搜索后的种群进行适应度评价;
选取适应度值最优的K个第二精英个体,并分别对每个第二精英个体执行如下操作,得到新的当前种群:
根据当前第二精英个体对应的最大完成时间,确定对应的加工单元和所述加工单元中最后完成的子任务,将所述加工单元确定为关键单元,将所述加工单元所在的工厂确定为关键工厂,将所述子任务所在的任务确定为关键任务;
针对关键任务执行局部搜索;具体的,对所述关键任务下的每个子任务执行如下操作:替换当前子任务的工厂和加工单元,若替换后最大完成时间更小,则保留当前替换,否则保持原有序列不变;
针对关键单元执行局部搜索;具体的,对所述关键单元下的每个子任务执行如下操作:将当前子任务从所述关键单元中删除,并加入到同一工厂内的其他加工单元;若变更完毕后最大完成时间更小,则保留当前变更,否则保持原有序列不变;
针对关键工厂执行局部搜索;具体的,对所述关键单元下的每个子任务执行如下操作:将当前子任务从所述关键单元中删除,并加入到其他可用工厂内的加工单元;若变更完毕后最大完成时间更小,则保留当前变更,否则保持原有序列不变。
3.根据权利要求1所述的方法,其特征在于,所述根据每个子任务是否存在前置子任务、是否为加工单元上的第一个子任务,以及加工单元上的空闲间隔,确定每个子任务的加工开始时间,包括:
如果子任务TSij不存在相同任务下的前置子任务,并且是加工单元上的第一个加工子任务,则将加工单元的零时刻作为开始加工时间;
如果子任务TSij存在相同任务下的前置子任务,并且是加工单元上的第一个加工子任务,则按公式(13)计算开始加工时间ta;
如果子任务TSij不存在相同任务下的前置子任务,并且不是加工单元上的第一个加工子任务,则在加工单元FMkm上寻找空闲时段[STi,ETi];按照公式(10)确定子任务TSij可插入的空闲时段开始时间tb;然后判断是否满足空闲插入条件,若tb+procijkm≤ETi,则满足空闲插入条件,将tb作为子任务TSij在加工单元FMkm上的加工开始时间;若tb+procijkm>ETi,则不满足空闲插入条件,按公式(12)计算td作为子任务TSij的加工开始时间;
如果子任务TSij存在相同任务下的前置子任务,并且不是加工单元上的第一个加工子任务,则在加工单元FMkm上寻找所有的间隔空闲时间段[STi,ETi],按照公式(14)确定子任务TSij可插入的空闲处开始时间t′b;然后判断是否满足空闲插入条件,若tb+procijkm≤ETi,则满足空闲插入条件,将t′b作为子任务TSij在加工单元FMkm上的加工开始时间;若tb+procijkm>ETi,则不满足空闲插入条件,按公式(15)计算td作为子任务TSij的加工开始时间:
其中,TSij表示待加工任务i第j个子任务,STi和ETi分别表示空闲间时段的开始时间和结束时间,表示待加工任务i第j-1个子任务TSi(j-1)在第k′个工厂的第m′个加工单元FMk′m′的加工结束时间,procijkm表示子任务TSij在FMkm的加工时间,transkk′表示子任务从第k个工厂Fk到第k′个工厂Fk′的转移时间,Yijkm=1表示子任务TSij在FMk′m′加工后需要转移,Yijkm=0表示子任务TSij在FMk′m′加工后不需要转移。
4.根据权利要求1所述的方法,其特征在于,所述选取所述当前种群中适应度值最优的多个个体构成非劣解库,其余个体构成普通解库,包括:
根据精英保留率和种群规模P,确定非劣解库的规模K;
选取所述当前种群中适应度值最优的K个个体构成非劣解库,其余个体构成普通解库。
5.根据权利要求1所述的方法,其特征在于,所述采用二元锦标赛选择策略从所述非劣解库中选择K个第一精英个体组成精英群体,利用全局搜索算子对所述精英群体进行更新,由更新后的精英群体中适应度最好的前K/2个个体组成精英种群,包括:
采用二元锦标赛选择策略从所述非劣解库中选择K个第一精英个体组成精英群体;
对所述精英群体中的工厂选择部分和加工单元选择部分执行均匀交叉和变异,任务排序部分执行POX交叉和变异,由所述交叉和变异操作构成全局搜索算子,由最终的个体构成更新后的精英群体。
6.根据权利要求1所述的方法,其特征在于,所述对所述精英群体中的工厂选择部分和加工单元选择部分执行均匀交叉和变异,任务排序部分执行POX交叉和变异,包括:
将交换变异和邻域变异结合,执行任务排序部分的变异。
7.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的跨企业分布式服装协同生产调度优化方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的跨企业分布式服装协同生产调度优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310490732.2A CN116562436B (zh) | 2023-05-04 | 2023-05-04 | 跨企业分布式服装协同生产调度优化方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310490732.2A CN116562436B (zh) | 2023-05-04 | 2023-05-04 | 跨企业分布式服装协同生产调度优化方法、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116562436A CN116562436A (zh) | 2023-08-08 |
CN116562436B true CN116562436B (zh) | 2024-05-14 |
Family
ID=87487292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310490732.2A Active CN116562436B (zh) | 2023-05-04 | 2023-05-04 | 跨企业分布式服装协同生产调度优化方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116562436B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488568A (zh) * | 2015-11-30 | 2016-04-13 | 清华大学 | 一种基于目标重要性分解的模因演化多目标优化调度方法 |
GB201717125D0 (en) * | 2016-11-28 | 2017-11-29 | National Univ Of Defense Technology | Differential evolution method oriented to agile satellite multi-target task planning |
CN110458326A (zh) * | 2019-07-05 | 2019-11-15 | 清华大学 | 一种分布式阻塞型流水线调度的混合群智能优化方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301473B (zh) * | 2017-06-12 | 2018-06-15 | 合肥工业大学 | 基于改进遗传算法的同类平行机批调度方法及系统 |
-
2023
- 2023-05-04 CN CN202310490732.2A patent/CN116562436B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488568A (zh) * | 2015-11-30 | 2016-04-13 | 清华大学 | 一种基于目标重要性分解的模因演化多目标优化调度方法 |
GB201717125D0 (en) * | 2016-11-28 | 2017-11-29 | National Univ Of Defense Technology | Differential evolution method oriented to agile satellite multi-target task planning |
CN110458326A (zh) * | 2019-07-05 | 2019-11-15 | 清华大学 | 一种分布式阻塞型流水线调度的混合群智能优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116562436A (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mattfeld | Evolutionary search and the job shop: investigations on genetic algorithms for production scheduling | |
Chang et al. | Solving the flexible job shop scheduling problem with makespan optimization by using a hybrid Taguchi-genetic algorithm | |
Vaessens et al. | Job shop scheduling by local search | |
Knowles et al. | A new evolutionary approach to the degree-constrained minimum spanning tree problem | |
CN110287111A (zh) | 一种用户界面的测试用例生成方法及装置 | |
CN101901425A (zh) | 一种基于多种群协同进化的柔性作业车间调度方法 | |
Xu et al. | A multiple priority queueing genetic algorithm for task scheduling on heterogeneous computing systems | |
Tran et al. | Solving resource-constrained project scheduling problems using hybrid artificial bee colony with differential evolution | |
Vázquez et al. | Learning process on priority rules to solve the RCMPSP | |
CN113139710B (zh) | 一种基于遗传算法的多资源并行任务高级计划排程方法 | |
Huang et al. | An improved genetic algorithm for job-shop scheduling problem with process sequence flexibility | |
Costa et al. | A dual encoding-based meta-heuristic algorithm for solving a constrained hybrid flow shop scheduling problem | |
CN115578023A (zh) | 一种装配车间调度方法、装置、设备和存储介质 | |
Sharma et al. | Development of multi-objective scheduling model for construction projects using opposition-based NSGA III | |
Basiri et al. | A hybrid intelligent algorithm for a fuzzy multi-objective job shop scheduling problem with reentrant workflows and parallel machines | |
Kazemi et al. | Integrated resource leveling and material procurement with variable execution intensities | |
Zandieh | Scheduling of virtual cellular manufacturing systems: a biogeography-based optimization algorithm | |
Ławrynowicz | Genetic algorithms for solving scheduling problems in manufacturing systems | |
CN108846480B (zh) | 一种基于遗传算法的多规格一维套料方法及装置 | |
CN116562436B (zh) | 跨企业分布式服装协同生产调度优化方法、设备及介质 | |
CN116450366B (zh) | 卫星测运控资源多目标优化调度方法、设备及介质 | |
Khorramizadeh et al. | A bee colony optimization approach for mixed blocking constraints flow shop scheduling problems | |
Čorić et al. | Complexity comparison of integer programming and genetic algorithms for resource constrained scheduling problems | |
Zaman et al. | Evolutionary algorithm for project scheduling under irregular resource changes | |
CN116957219A (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 |