CN109102211B - 改进布谷鸟搜索的高端装备批处理机调度方法及系统 - Google Patents

改进布谷鸟搜索的高端装备批处理机调度方法及系统 Download PDF

Info

Publication number
CN109102211B
CN109102211B CN201811093211.9A CN201811093211A CN109102211B CN 109102211 B CN109102211 B CN 109102211B CN 201811093211 A CN201811093211 A CN 201811093211A CN 109102211 B CN109102211 B CN 109102211B
Authority
CN
China
Prior art keywords
individual
current
value
population
updating
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
Application number
CN201811093211.9A
Other languages
English (en)
Other versions
CN109102211A (zh
Inventor
刘心报
刘思文
裴军
廖宝玉
陆少军
孔敏
钱晓飞
周志平
胡朝明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN201811093211.9A priority Critical patent/CN109102211B/zh
Publication of CN109102211A publication Critical patent/CN109102211A/zh
Application granted granted Critical
Publication of CN109102211B publication Critical patent/CN109102211B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Educational Administration (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供了一种改进布谷鸟搜索的高端装备批处理机调度方法及系统。首先根据工件数量、机器的数量和第一预定数值为每台机器分配工件,并确定每台机器的每个加工批次需要加工的工件,之后生成初始种群,利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体,最后,输出全局最优解。上述技术方案确定了每个工件将分配至具体的机器,该机器上的工件的组批方式,批的加工顺序,能够最小化制造跨度,提高生产效率,解决了学习效应情形下的平行机批调度问题。

Description

改进布谷鸟搜索的高端装备批处理机调度方法及系统
技术领域
本发明涉及调度领域,具体涉及一种改进布谷鸟搜索的高端装备批处理机调度方法及系统。
背景技术
在一类特定的半导体生产环境中,多个半导体芯片(后简称工件)被放置在一个特制板中进行烧焊。同时进行加工的工件称为一批,具有这样批加工能力的机器称为平行批处理机。随着工厂生产越多的产品,工人积累经验,若工件越晚开始加工,工件的加工时间会越短。这类具有学习效应的工件调度问题最初由Ho(1993)提出,是一个典型的组合优化问题。不同于传统调度问题中每个工件具有固定的加工时间,在时间依赖学习效应情形下,越晚开始加工,工件的加工持续时间会越短。根据工件特定的加工形式,设计出合理有效的加工规则和调度算法,可以大幅提升企业生产运营效率,提高企业的总体竞争力。因此,对学习效应情形下考虑平行机批调度问题进行研究具有很强的现实意义。
虽然近年来也有很多文献开始研究具有学习效应的调度问题,但是同时考虑学习效应和平行批处理机的研究较少。通过文献的查找,也没有发现有研究者将学习效应,平行批加工和平行机同时考虑而构建复杂的调度模型。而在现实的生产环境中,这些因素同时存在。这一复杂问题的解决是破解企业生产难题的关键,而传统的调度模型并不能解决这一问题。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种基于改进布谷鸟搜索的高端装备批处理机调度方法及系统,解决了解决学习效应情形下的平行机批调度问题,能够最小化制造跨度,提高生产效率。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:
第一方面,本发明实施例提供了一种改进布谷鸟搜索的高端装备批处理机调度方法,所述方法包括如下步骤:
获取工件数量、机器数量;
设置迭代代数、种群规模、每代迭代次数、全局最优解;
根据工件数量和机器的数量,确定生成小数的数量,并根据生成小数的数量生成对应个数的小数;
根据机器的数量,确定需要获取的小数的数量,并根据需要获取的小数的数量,从生成的小数中获取最大的对应个数的小数;
根据获取的小数,为每台机器分配工件;
根据第一预定数值将每台机器需要加工的工件进行分批,得到每台机器的每个加工批次需要加工的工件;
根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群;
利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;
利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体;
更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解。
进一步地,所述方法在确定每台机器的每个加工批次需要加工的工件之后,还包括如下步骤:
在每台机器上将所有的加工批次,按照完工时间的非增序进行排列;
计算每台机器的制造时间跨度。
进一步地,所述利用布谷鸟算法中的莱维飞行操作,更新当前种群,包括:
对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure BDA0001804881480000031
令i=i+1,判断i≥Pop_num是否成立,若不成立,则利用莱维飞行公式,更新第i个体的第j个位置的值:
Figure BDA0001804881480000032
Lévy(λ)=t,(1<λ≤3)
令j=j+1,判断j≥n+m-1是否成立,若成立,执行返回计算第i个体第j个位置所对应的步长;否则,返回更新第i个体的第j个位置的值的步骤;
其中,
Figure BDA0001804881480000033
为点乘号,αmax表示步长最大值,αmin表示步长最小值。
进一步地,所述利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体,包括:
利用如下公式计算当前迭代次数t所对应的遗弃概率:
Figure BDA0001804881480000041
对于当前种群的个体i,生成一个随机数P,若
Figure BDA0001804881480000042
保留当前个体;否则,遗弃当前个体;
求解当前种群每个个体的适应度值并排序,以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure BDA0001804881480000043
从种群中选择除去个体i的另外两个个体记为
Figure BDA0001804881480000044
Figure BDA0001804881480000045
按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure BDA0001804881480000046
SF为当前种群已经变异的个体数量;
当前个体对应的Fi值按照如下公式进行计算:
Figure BDA0001804881480000047
其中I1/3代表在当前种群中适应度值排序前1/3的个体;如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值;
按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作;
根据得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值;
运用下式对当前个体
Figure BDA0001804881480000051
的值进行更新,得到新的个体记作
Figure BDA0001804881480000052
Figure BDA0001804881480000053
对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure BDA0001804881480000054
对应位置的值;否则,则保留变异前第j个位置的值;
令j=j+1,若j>n+m-1,返回生成一个随机数P的步骤;否则,返回对当前个体的第j个位置进行交叉操作的步骤。
第一方面,本发明实施例提供了一种改进布谷鸟搜索的高端装备批处理机调度系统,所述系统包括:
获取模块,用于获取工件数量、机器数量;
设置模块,用于设置迭代代数、种群规模、每代迭代次数、全局最优解;
小数生成模块,用于根据工件数量和机器的数量,确定生成小数的数量,根据生成小数的数量生成对应个数的小数;根据机器的数量,确定需要获取的小数的数量,根据需要获取的小数的数量,从生成的小数中获取最大的对应个数的小数;
工件分配模块,用于根据获取的小数,为每台机器分配工件;
批次确定模块,用于根据第一预定数值将每台机器需要加工的工件进行分批,得到每台机器的每个加工批次需要加工的工件;
初始化模块,用于根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群;
种群更新模块,用于利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;
个体更新模块,用于利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体;
最优输出模块,用于更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解。
进一步地,所述系统还包括:
排序计算模块,用于在每台机器上将所有的加工批次,按照完工时间的非增序进行排列,并计算每台机器的制造时间跨度。
进一步地,所述种群更新模块具体用于:
对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure BDA0001804881480000061
令i=i+1,判断i≥Pop_num是否成立,若不成立,则利用莱维飞行公式,更新第i个体的第j个位置的值:
Figure BDA0001804881480000071
Lévy(λ)=t,(1<λ≤3)
令j=j+1,判断j≥n+m-1是否成立,若成立,执行返回计算第i个体第j个位置所对应的步长;否则,返回更新第i个体的第j个位置的值的步骤;
其中,
Figure BDA0001804881480000072
为点乘号,αmax表示步长最大值,αmin表示步长最小值。
进一步地,所述个体更新模块具体用于:
利用如下公式计算当前迭代次数t所对应的遗弃概率:
Figure BDA0001804881480000073
对于当前种群的个体i,生成一个随机数P,若
Figure BDA0001804881480000074
保留当前个体;否则,遗弃当前个体;
求解当前种群每个个体的适应度值并排序,以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure BDA0001804881480000075
从种群中选择除去个体i的另外两个个体记为
Figure BDA0001804881480000076
Figure BDA0001804881480000077
按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure BDA0001804881480000078
SF为当前种群已经变异的个体数量;
当前个体对应的Fi值按照如下公式进行计算:
Figure BDA0001804881480000081
其中I1/3代表在当前种群中适应度值排序前1/3的个体;如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值;
按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作;
根据得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值;
运用下式对当前个体
Figure BDA0001804881480000082
的值进行更新,得到新的个体记作
Figure BDA0001804881480000083
Figure BDA0001804881480000084
对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure BDA0001804881480000085
对应位置的值;否则,则保留变异前第j个位置的值;
令j=j+1,若j>n+m-1,返回生成一个随机数P的步骤;否则,返回对当前个体的第j个位置进行交叉操作的步骤。
(三)有益效果
本发明实施例提供了一种改进布谷鸟搜索的高端装备批处理机调度方法及系统。具备以下有益效果:
本发明实施例首先根据工件数量、机器的数量和第一预定数值为每台机器分配工件,并确定每台机器的每个加工批次需要加工的工件,之后根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群,之后,利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体,最后,更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解。上述技术方案确定了每个工件将分配至具体的机器,该机器上的工件的组批方式,批的加工顺序,能够最小化制造跨度,解决了学习效应情形下的平行机批调度问题,为复杂环境下的企业生产进度管理提供新方法,从而提高生产效率,提升企业的竞争力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性的示出了本发明一实施例的改进布谷鸟搜索的高端装备批处理机调度方法的流程图。
图2示意性的示出了本发明另一实施例的改进布谷鸟搜索的高端装备批处理机调度方法的流程图。
图3示意性的示出了本发明一实施例的改进布谷鸟搜索的高端装备批处理机调度系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种改进布谷鸟搜索的高端装备批处理机调度方法,如图1所示,所述方法包括如下步骤:
100、获取工件数量、机器数量;
110、设置迭代代数、种群规模、每代迭代次数、全局最优解;
120、根据工件数量和机器的数量,确定生成小数的数量,并根据生成小数的数量生成对应个数的小数;根据机器的数量,确定需要获取的小数的数量,并根据需要获取的小数的数量,从生成的小数中获取最大的对应个数的小数;根据获取的小数,为每台机器分配工件;
130、根据第一预定数值将每台机器需要加工的工件进行分批,得到每台机器的每个加工批次需要加工的工件;
140、根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群;
150、利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;
具体地可以利用如下步骤实现步骤150:
1501、对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure BDA0001804881480000111
1502、令i=i+1,判断i≥Pop_num是否成立,若不成立,则利用莱维飞行公式,更新第i个体的第j个位置的值:
Figure BDA0001804881480000112
Lévy(λ)=t,(1<λ≤3)
1503、令j=j+1,判断j≥n+m-1是否成立,若成立,执行返回计算第i个体第j个位置所对应的步长;否则,返回更新第i个体的第j个位置的值的步骤;
其中,
Figure BDA0001804881480000113
为点乘号,αmax表示步长最大值,αmin表示步长最小值。
160、利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体;
具体地,可以利用如下步骤实现步骤160:
1601、利用如下公式计算当前迭代次数t所对应的遗弃概率:
Figure BDA0001804881480000114
对于当前种群的个体i,生成一个随机数P,若
Figure BDA0001804881480000115
保留当前个体;否则,遗弃当前个体;
1602、求解当前种群每个个体的适应度值并排序,以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure BDA0001804881480000116
1603、从种群中选择除去个体i的另外两个个体记为
Figure BDA0001804881480000121
Figure BDA0001804881480000122
按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure BDA0001804881480000123
SF为当前种群已经变异的个体数量;
1604、当前个体对应的Fi值按照如下公式进行计算:
Figure BDA0001804881480000124
其中I1/3代表在当前种群中适应度值排序前1/3的个体;如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值;
1605、按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作;
1606、根据得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值;
1607、运用下式对当前个体
Figure BDA0001804881480000125
的值进行更新,得到新的个体记作
Figure BDA0001804881480000126
Figure BDA0001804881480000127
1608、对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure BDA0001804881480000131
对应位置的值;否则,则保留变异前第j个位置的值;
1609、令j=j+1,若j>n+m-1,返回生成一个随机数P的步骤;否则,返回对当前个体的第j个位置进行交叉操作的步骤。
170、更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解。
进一步地,本实施例的方法,在步骤130之后,还可以包括如下步骤:
在每台机器上将所有的加工批次,按照完工时间的非增序进行排列;计算每台机器的制造时间跨度。
本实施例能针对基于以加工时间学习效应的平行批加工调度问题,求得近似最优解,从而使得企业能在最大限度上充分利用其生产资源,降低生产成本,并提高企业服务水平和顾客满意度水平。
下面再通过一个具体的实施例对本发明的改进布谷鸟搜索的高端装备批处理机调度方法进行详细的说明。如图2所示,本实施例的改进布谷鸟搜索的高端装备批处理机调度方法包括如下步骤:
210、设置参数,并生成初始种群。
这里,参数包括工件数量n,机器数量m,生产加工工件的集合为J={J1,J2,…,Jn},工件Jj的普通加工时间记为aj,实际加工时间为pj,学习因子b,机器的容量C,截断参数D。其中,加工机器为m台平行批处理机,该处理机的容量为C,工件在加工时可自由进行组批并在处理机上以平行批的形式加工,规定每个批中工件尺寸之和不能超过机器容量C。批的完工时间等于批中所有工件的最大完工时间,特定的批一旦形成,不能将该批中的工件移出,且不可在该批中添加新工件。
另外,本步骤中的参数还包括设定混合布谷鸟搜索差分进化算法的执行参数,CS-JADE算法包括最大迭代次数Itnum,种群规模Popnum,算法每代迭代次数Runnum,步长最大最小值αmax和αmin,遗弃概率最大最小值pmax和pmin,算法初始解
Figure BDA0001804881480000141
全局最优解Xbest=Xs,当前迭代次数t=1。
本步骤中,结合编码、解码方式,随机生成初始种群Pop,获得Popnum个初始解,计算当前迭代次数t的遗弃概率
Figure BDA0001804881480000142
第i个个体对应的交叉概率CRi,变异概率Fi
220、生成当前迭代算法的参数Pa,CRi,Fi
在执行步骤230之前,本需要执行如下生成初始种群的步骤:
步骤1:依据编码规则先依次将n个工件分配至m台平行批处理机上:给定一个有n+m-1个随机小数的序列,对应于n个工件和m-1个flag。取其中最大的m-1个小数作为flag,{flag0,flag1,…,flagm-1}。工件序列的第1个至第flag0的工件放至第1台机器,第flag0+1个工件至第flag1个工件放至第2台机器,…,直到所有的工件分配到机器上。在每台机器上,工件按照其普通加工时间的非增序进行排列。
步骤2:在每台机器上,将前c个工件组成第一批,并从工件列表中删除,再将剩余列表中前c个工件组成一批,并从工件列表中删除,以此类推,直到工件列表中所有工件安排完毕,最后剩余的
Figure BDA0001804881480000143
Figure BDA0001804881480000144
个工件组成一批。其中ni表示第i个机器上的工件个数,c表示机器同时能加工的工件个数,
Figure BDA0001804881480000151
表示不小于
Figure BDA0001804881480000152
的最小整数。
步骤3:在每台机器上将所有的批次按照批次完工时间的非增序进行排列,并计算其制造时间跨度。
步骤4:根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群。
230、利用改进的莱维飞行跟新种群中的个体。
具体地,步骤230可以包括如下步骤:
步骤1:对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure BDA0001804881480000153
令i=i+1,判断i≥Pop_num是否成立,若成立,执行步骤3;否则,执行步骤2。
步骤2:利用莱维飞行公式:
Figure BDA0001804881480000154
Lévy(λ)=t,(1<λ≤3)
更新第i个体的第j个位置的值。其中,
Figure BDA0001804881480000155
为点乘号,λ为(1,3]之间的常数。令j=j+1,判断j≥n+m-1是否成立,若成立,执行步骤1;否则,执行步骤240。
240、计算改进后个体的适应度值,保留适应度较好的个体。
本步骤计算改进前和改进后第i个体的适应度值。若适应度值较好,则保留改进后的适应度值,否则保留改进前的个体。
250、生成随机概率p,判断p<Pa,是否成立,如果成立,则保留当前个体,并执行步骤280,否则,遗弃当前个体,并执行步骤260。
260、运用JADE中的交叉变异操作跟新个体。
具体地,步骤260可以包括如下步骤:
步骤1:计算当前迭代次数t所对应的遗弃概率,具体如下:
Figure BDA0001804881480000161
步骤2:对于当前种群的个体i,运用下式生成一个随机数P,若
Figure BDA0001804881480000162
Figure BDA0001804881480000163
保留当前个体;否则,遗弃当前个体,转步骤3。
步骤3:求解当前种群每个个体的适应度值并排序。以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure BDA0001804881480000164
步骤4:从种群中选择除去个体i的另外两个个体记为
Figure BDA0001804881480000165
Figure BDA0001804881480000166
步骤5:按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure BDA0001804881480000167
SF为当前种群已经变异的个体数量。
步骤6:当前个体对应的Fi值按照如下公式进行计算:
Figure BDA0001804881480000168
其中I1/3代表在当前种群中适应度值排序前1/3的个体。如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值。
步骤7:按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作。
步骤8:根据步骤7得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值。
并运用下式对当前个体
Figure BDA0001804881480000171
的值进行更新,得到新的个体记作
Figure BDA0001804881480000172
Figure BDA0001804881480000173
步骤9:对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure BDA0001804881480000174
对应位置的值;否则,则保留变异前第j个位置的值。令j=j+1,若j>n+m-1,执行步骤2;否则,执行步骤9。
270、对当前种群适应度值大小进行排序,记录当前最优解。
280、判断终止条件是否满足,如果满足,输出当前的最优解,否则返回步骤220。
由于企业和客户对于精准化生产和零库存管理的要求越来越高,本实施例将需要优化的目标设定为最小化工件的制造时间跨度。
本实施例针对带有基于工件开始加工时间学习效应的平行机生产调度问题进行研究,这里工件在机器上以平行批的方式进行加工。本实施例通过混合布谷鸟搜索算法和差分进化算法,首先将需要处理的工件进行编码,将工件分配到各个平行机上,并根据分批策略把工件分配到相应的批中,即调度方案,并得出相应个体的适应度值。通过执行混合算法中的变异、交叉操作,对种群进行局部搜索,不断提高种群的质量。通过迭代以上步骤,在解空间内不断搜索,最终求得近似最优解。改进的布谷鸟搜索算法在收敛速度和搜索的解质量方面表现出了良好的性能。通过本实施的方法,解决了考虑学习效应的平行批平行机生产调度问题,提升企业在生产的管理水平,降低了企业的生产成本。本发明在差分进化算法中设计了基于迭代次数的多个自适应参数,并与问题特性相结合,使得求解的邻域解质量较高。
对应于上述实施例的改进布谷鸟搜索的高端装备批处理机调度方法,本发明实施例还提供了一种改进布谷鸟搜索的高端装备批处理机调度系统,如图3所示,所述系统包括:
获取模块,用于获取工件数量、机器数量;
设置模块,用于设置迭代代数、种群规模、每代迭代次数、全局最优解;
小数生成模块,用于根据工件数量和机器的数量,确定生成小数的数量,根据生成小数的数量生成对应个数的小数;根据机器的数量,确定需要获取的小数的数量,根据需要获取的小数的数量,从生成的小数中获取最大的对应个数的小数;
工件分配模块,用于根据获取的小数,为每台机器分配工件;
批次确定模块,用于根据第一预定数值将每台机器需要加工的工件进行分批,得到每台机器的每个加工批次需要加工的工件;
初始化模块,用于根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群;
种群更新模块,用于利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;
个体更新模块,用于利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体;
最优输出模块,用于更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解。
进一步地,本实施例的系统还包括:
排序计算模块,用于在每台机器上将所有的加工批次,按照完工时间的非增序进行排列,并计算每台机器的制造时间跨度。
上述种群更新模块具体用于:
对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure BDA0001804881480000191
令i=i+1,判断i≥Pop_num是否成立,若不成立,则利用莱维飞行公式,更新第i个体的第j个位置的值:
Figure BDA0001804881480000192
Lévy(λ)=t,(1<λ≤3)
令j=j+1,判断j≥n+m-1是否成立,若成立,执行返回计算第i个体第j个位置所对应的步长;否则,返回更新第i个体的第j个位置的值的步骤;
其中,
Figure BDA0001804881480000193
为点乘号,αmax表示步长最大值,αmin表示步长最小值。
上述个体更新模块具体用于:
利用如下公式计算当前迭代次数t所对应的遗弃概率:
Figure BDA0001804881480000201
对于当前种群的个体i,生成一个随机数P,若
Figure BDA0001804881480000202
保留当前个体;否则,遗弃当前个体;
求解当前种群每个个体的适应度值并排序,以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure BDA0001804881480000203
从种群中选择除去个体i的另外两个个体记为
Figure BDA0001804881480000204
Figure BDA0001804881480000205
按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure BDA0001804881480000206
SF为当前种群已经变异的个体数量;
当前个体对应的Fi值按照如下公式进行计算:
Figure BDA0001804881480000207
其中I1/3代表在当前种群中适应度值排序前1/3的个体;如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值;
按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作;
根据得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值;
运用下式对当前个体
Figure BDA0001804881480000211
的值进行更新,得到新的个体记作
Figure BDA0001804881480000212
Figure BDA0001804881480000213
对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure BDA0001804881480000214
对应位置的值;否则,则保留变异前第j个位置的值;
令j=j+1,若j>n+m-1,返回生成一个随机数P的步骤;否则,返回对当前个体的第j个位置进行交叉操作的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (6)

1.一种改进布谷鸟搜索的高端装备批处理机调度方法,其特征在于,所述方法包括如下步骤:
获取工件数量、机器数量;
设置迭代代数、种群规模、每代迭代次数、全局最优解;
根据工件数量和机器的数量,确定生成小数的数量,并根据生成小数的数量生成对应个数的小数;
根据机器的数量,确定需要获取的小数的数量,并根据需要获取的小数的数量,从生成的小数中获取最大的对应个数的小数;
根据获取的小数,为每台机器分配工件;
根据第一预定数值将每台机器需要加工的工件进行分批,得到每台机器的每个加工批次需要加工的工件;
根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群;
利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;
利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体;
更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解;
所述利用布谷鸟算法中的莱维飞行操作,更新当前种群,包括:
对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure FDA0003132632490000021
令i=i+1,判断i≥Pop_num是否成立,若不成立,则利用莱维飞行公式,更新第i个体的第j个位置的值:
Figure FDA0003132632490000022
Lévy(λ)=t,(1<λ≤3)
令j=j+1,判断j≥n+m-1是否成立,若成立,执行返回计算第i个体第j个位置所对应的步长;否则,返回更新第i个体的第j个位置的值的步骤;
其中,
Figure FDA0003132632490000023
为点乘号,αmax表示步长最大值,αmin表示步长最小值;
其中,Itnum表示最大迭代次数;Popnum表示种群规模。
2.根据权利要求1所述的方法,其特征在于,所述方法在确定每台机器的每个加工批次需要加工的工件之后,还包括如下步骤:
在每台机器上将所有的加工批次,按照完工时间的非增序进行排列;
计算每台机器的制造时间跨度。
3.根据权利要求1所述的方法,其特征在于,所述利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体,包括:
利用如下公式计算当前迭代次数t所对应的遗弃概率:
Figure FDA0003132632490000031
对于当前种群的个体i,生成一个随机数P,若
Figure FDA0003132632490000032
保留当前个体;否则,遗弃当前个体;
求解当前种群每个个体的适应度值并排序,以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure FDA0003132632490000033
从种群中选择除去个体i的另外两个个体记为
Figure FDA0003132632490000034
Figure FDA0003132632490000035
按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure FDA0003132632490000036
SF为当前种群已经变异的个体数量;
当前个体对应的Fi值按照如下公式进行计算:
Figure FDA0003132632490000037
其中I1/3代表在当前种群中适应度值排序前1/3的个体;如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值;
按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作;
根据得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值;
运用下式对当前个体
Figure FDA0003132632490000041
的值进行更新,得到新的个体记作
Figure FDA0003132632490000042
Figure FDA0003132632490000043
对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure FDA0003132632490000044
对应位置的值;否则,则保留变异前第j个位置的值;
令j=j+1,若j>n+m-1,返回生成一个随机数P的步骤;否则,返回对当前个体的第j个位置进行交叉操作的步骤;
其中,Itnum表示最大迭代次数;pmax和pmin分别表示遗弃概率最大和最小值。
4.一种改进布谷鸟搜索的高端装备批处理机调度系统,其特征在于,所述系统包括:
获取模块,用于获取工件数量、机器数量;
设置模块,用于设置迭代代数、种群规模、每代迭代次数、全局最优解;
小数生成模块,用于根据工件数量和机器的数量,确定生成小数的数量,根据生成小数的数量生成对应个数的小数;根据机器的数量,确定需要获取的小数的数量,根据需要获取的小数的数量,从生成的小数中获取最大的对应个数的小数;
工件分配模块,用于根据获取的小数,为每台机器分配工件;
批次确定模块,用于根据第一预定数值将每台机器需要加工的工件进行分批,得到每台机器的每个加工批次需要加工的工件;
初始化模块,用于根据每台机器的每个加工批次需要加工的工件和种群规模,生成初始种群;
种群更新模块,用于利用布谷鸟算法中的莱维飞行操作,更新当前种群,计算改进后的个体适应度值,并与改进前的个体的适应度值进行比较,保留适应度值大的个体;
个体更新模块,用于利用随机概率和交叉变异操作,遗弃更新得到的种群中的个体;
最优输出模块,用于更新当前种群的全局最优解,并根据置迭代代数和每代迭代次数,判断迭代终止条件是否满足,若是则返回生成初始种群的步骤,否则输出当前的全局最优解;
所述种群更新模块具体用于:
对当前种群的第i个体,根据当前迭代次数t,得到在当前迭代次数下第i个体第j个位置所对应的步长:
Figure FDA0003132632490000051
令i=i+1,判断i≥Pop_num是否成立,若不成立,则利用莱维飞行公式,更新第i个体的第j个位置的值:
Figure FDA0003132632490000061
Lévy(λ)=t,(1<λ≤3)
令j=j+1,判断j≥n+m-1是否成立,若成立,执行返回计算第i个体第j个位置所对应的步长;否则,返回更新第i个体的第j个位置的值的步骤;
其中,
Figure FDA0003132632490000062
为点乘号,αmax表示步长最大值,αmin表示步长最小值。
5.根据权利要求4所述的系统,其特征在于,所述系统还包括:
排序计算模块,用于在每台机器上将所有的加工批次,按照完工时间的非增序进行排列,并计算每台机器的制造时间跨度。
6.根据权利要求4所述的系统,其特征在于,所述个体更新模块具体用于:
利用如下公式计算当前迭代次数t所对应的遗弃概率:
Figure FDA0003132632490000063
对于当前种群的个体i,生成一个随机数P,若
Figure FDA0003132632490000064
保留当前个体;否则,遗弃当前个体;
求解当前种群每个个体的适应度值并排序,以概率p从当前种群较优的前100p%个个体中选取一个个体
Figure FDA0003132632490000065
从种群中选择除去个体i的另外两个个体记为
Figure FDA0003132632490000066
Figure FDA0003132632490000067
按照以下公式更新当前迭代次数的μF值:
μF=(1-c)μF+c·L(SF)
其中L(SF)为Lehmer平均值,按照以下公式计算:
Figure FDA0003132632490000071
SF为当前种群已经变异的个体数量;
当前个体对应的Fi值按照如下公式进行计算:
Figure FDA0003132632490000072
其中I1/3代表在当前种群中适应度值排序前1/3的个体;如果当前个体在前1/3个体中,则按照(0,1.2)之间的均匀分布得到Fi的值;否则,按照(μF,0.1)之间的正态分布求得Fi的值;
按照以下公式更新当前迭代次数的μCR值:
μCR=(1-c)μCR+c·mean(SCR)
SCR为当前种群已经交叉成功的个体数量,mean(SCR)即为普通的求均值操作;
根据得到的μCR值更新当前个体i的交叉概率CRi
CRi=randniCR,0.1)
按照(μCR,0.1)之间的正态分布求得CRi的值;
运用下式对当前个体
Figure FDA0003132632490000073
的值进行更新,得到新的个体记作
Figure FDA0003132632490000074
Figure FDA0003132632490000075
对当前个体的第j个位置进行交叉操作:生成一个随机数randb(j),如果其大于CRi,则将变异后第j个位置上的值赋给当前个体
Figure FDA0003132632490000081
对应位置的值;否则,则保留变异前第j个位置的值;
令j=j+1,若j>n+m-1,返回生成一个随机数P的步骤;否则,返回对当前个体的第j个位置进行交叉操作的步骤。
CN201811093211.9A 2018-09-18 2018-09-18 改进布谷鸟搜索的高端装备批处理机调度方法及系统 Active CN109102211B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811093211.9A CN109102211B (zh) 2018-09-18 2018-09-18 改进布谷鸟搜索的高端装备批处理机调度方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811093211.9A CN109102211B (zh) 2018-09-18 2018-09-18 改进布谷鸟搜索的高端装备批处理机调度方法及系统

Publications (2)

Publication Number Publication Date
CN109102211A CN109102211A (zh) 2018-12-28
CN109102211B true CN109102211B (zh) 2021-10-08

Family

ID=64866722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811093211.9A Active CN109102211B (zh) 2018-09-18 2018-09-18 改进布谷鸟搜索的高端装备批处理机调度方法及系统

Country Status (1)

Country Link
CN (1) CN109102211B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417761B (zh) * 2020-11-20 2023-01-03 哈尔滨工程大学 一种基于多目标布谷鸟优化算法的系泊截断设计方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105976029A (zh) * 2016-05-27 2016-09-28 浙江大学 一种布谷鸟行为rna-ga的桥式吊车神经网络建模方法
CN106610656A (zh) * 2016-04-14 2017-05-03 四川用联信息技术有限公司 一种改进的布谷鸟搜索算法求解作业车间调度问题
CN106611236A (zh) * 2016-04-27 2017-05-03 四川用联信息技术有限公司 一种解决作业车间调度问题的排产算法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106610656A (zh) * 2016-04-14 2017-05-03 四川用联信息技术有限公司 一种改进的布谷鸟搜索算法求解作业车间调度问题
CN106611236A (zh) * 2016-04-27 2017-05-03 四川用联信息技术有限公司 一种解决作业车间调度问题的排产算法
CN105976029A (zh) * 2016-05-27 2016-09-28 浙江大学 一种布谷鸟行为rna-ga的桥式吊车神经网络建模方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Economical Smart Home Scheduling by Cuckoo Search Optimization via Levy Flight;Rujie Lai;《2018 IEEE 61st International Midwest Symposium on Circuits and Systems (MWSCAS)》;20180808;第1030-1033页 *
作业车间调度问题的布谷鸟搜索算法求解;姚远远等;《计算机工程与应用》;20150331(第5期);第255-265页 *

Also Published As

Publication number Publication date
CN109102211A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
Chaudhry et al. Minimizing total tardiness for the machine scheduling and worker assignment problems in identical parallel machines using genetic algorithms
US20180356803A1 (en) Method and system for batch scheduling uniform parallel machines with different capacities based on improved genetic algorithm
CN107679750B (zh) 一种基于自适应系数遗传算法的云制造服务资源匹配方法
CN104636871B (zh) 一种基于数据的单阶段多产品批处理的控制方法
CN112580922B (zh) 一种基于多级邻域结构和混合遗传算法的柔性作业车间调度方法
CN111783254B (zh) 一种基于多目标混合整数规划的钢材切割控制方法及装置
CN109214695B (zh) 基于改进eda的高端装备研发制造协同调度方法及系统
CN115018197B (zh) 考虑余料利用的二次套料优化方法及系统
Süer et al. A genetic algorithm approach for minimizing total tardiness in single machine scheduling
CN109102211B (zh) 改进布谷鸟搜索的高端装备批处理机调度方法及系统
CN105550825B (zh) 云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法
CN114862090A (zh) 基于改进多目标遗传算法的车间调度方法和系统
CN114489942B (zh) 一种面向应用集群的队列任务调度方法及系统
Amjad et al. A layered genetic algorithm with iterative diversification for optimization of flexible job shop scheduling problems
Ma et al. A hybrid particle swarm optimization and simulated annealing algorithm for job-shop scheduling
CN111007823A (zh) 柔性作业车间动态调度方法及装置
CN115619200B (zh) 一种分割式Seru的排产与多能工调度组合优化方法和装置
CN108805463B (zh) 一种支持削峰型电力需求响应的生产调度方法
CN113283819B (zh) 基于规则解码的Job Shop调度问题求解方法及系统
Li et al. Research on dynamic multi-objective fjsp based on genetic algorithm
JP2778915B2 (ja) 生産スケジュール作成装置
CN114707808A (zh) 一种基于动态根节点工序集的逆序设备网络综合调度方法
Ahmed et al. Application of an Efficient Genetic Algorithm for Solving n× 𝒎𝒎 Flow Shop Scheduling Problem Comparing it with Branch and Bound Algorithm and Tabu Search Algorithm
JPH086630A (ja) 生産スケジュール作成装置
CN113741369B (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