CN112783172B - 基于离散鲸鱼优化算法的agv与机器集成调度方法 - Google Patents
基于离散鲸鱼优化算法的agv与机器集成调度方法 Download PDFInfo
- Publication number
- CN112783172B CN112783172B CN202011632120.5A CN202011632120A CN112783172B CN 112783172 B CN112783172 B CN 112783172B CN 202011632120 A CN202011632120 A CN 202011632120A CN 112783172 B CN112783172 B CN 112783172B
- Authority
- CN
- China
- Prior art keywords
- whale
- agv
- individual
- machine
- population
- 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
- 241000283153 Cetacea Species 0.000 title claims abstract description 330
- 238000000034 method Methods 0.000 title claims abstract description 249
- 238000005457 optimization Methods 0.000 title claims abstract description 68
- 230000008569 process Effects 0.000 claims abstract description 155
- 108090000623 proteins and genes Proteins 0.000 claims description 50
- 238000012545 processing Methods 0.000 claims description 35
- 238000013507 mapping Methods 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 238000007514 turning Methods 0.000 claims description 14
- 238000012546 transfer Methods 0.000 claims description 11
- 238000009826 distribution Methods 0.000 claims description 10
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 238000003754 machining Methods 0.000 claims description 7
- 108091026890 Coding region Proteins 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 6
- 230000001965 increasing effect Effects 0.000 claims description 6
- 238000012804 iterative process Methods 0.000 claims description 6
- 108091081062 Repeated sequence (DNA) Proteins 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000009827 uniform distribution Methods 0.000 claims description 3
- 230000003094 perturbing effect Effects 0.000 claims description 2
- 241000251468 Actinopterygii Species 0.000 claims 1
- 230000009191 jumping Effects 0.000 abstract description 5
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000000739 chaotic effect Effects 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Multi-Process Working Machines And Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于离散鲸鱼优化算法的AGV与机器集成调度方法,其利用鲸鱼优化算法结构简单、参数少、搜索能力强且易于实现等优点,且在鲸鱼优化算法迭代更新过程中结合AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,使得AGV和机器集成调度问题得以有效求解,并且通过迭代循环对鲸鱼个体寻优实现对调度方案的优化,能够帮助提升对AGV与机器集成作业流程的调度效率,并可进一步借助引入levy飞行策略的鲸鱼种群迭代更新处理、以及采用多个较优鲸鱼个体的局部搜索策略等操作,增强算法的全局搜索能力以及跳出局部最优的能力,增强算法的收敛精度,同时兼顾保持良好的求解运算效率。
Description
技术领域
本发明涉及车间调度技术领域,具体涉及一种基于离散鲸鱼优化算法的AGV与机器集成调度方法。
背景技术
随着云计算、互联网和大数据等信息技术的发展,大规模定制化和多品种小批量的生产模式逐渐成为主流。在这种以个性化为主的生产模式下,产品种类繁多,且工艺流程各不相同,合理的车间调度方案对于提高生产效率至关重要。在传统的柔性作业车间调度问题研究中通常不考虑工件的转移时间,导致这种调度结果并不是理论最优调度结果,对于实际生产的指导存在不足。AGV(Automated Guided Vehicles,自动导引运输车)是一种高柔性、高可靠性、高效率的先进物流装备,在很多生产车间中由AGV实现工件的转移。在这种情况下,机器的调度和AGV的调度之间会相互影响,所以AGV和机器集成调度问题的研究具有重要的理论价值与工程意义。
近年来,国内外学者针对AGV和机器集成调度开展了大量研究,大多着力于解决AGV和机器的任务指派、任务执行时序问题,将AGV的行驶道路设定为单道单向,并且不考虑潜在的路径冲突。但是当AGV的行驶道路为单道双向时,***的运行效率将会得到提高,但路径冲突也会随之增加。路径冲突如果不解决,就会出现AGV碰撞以及路径被死锁等问题,打乱调度计划甚至造成生产***瘫痪。
AGV和机器集成调度问题已经被证明是NP难问题的叠加,这类问题的解空间庞大且复杂,精确算法难以在可接受的时间内求得最优解,启发式算法更适合这种大规模NP难问题。因此如何寻求AGV和机器集成调度问题的解决方案,成为了领域内的一项新兴研究课题。
发明内容
针对现有技术存在的上述不足,本发明要解决的技术问题是如何提供一种基于离散鲸鱼优化算法的AGV与机器集成调度方法的解决新方案,以有效实现针对AGV和机器集成调度问题的求解,帮助提升对AGV与机器集成作业流程的调度效率。
为解决上述技术问题,本发明采用了如下的技术方案:
基于离散鲸鱼优化算法的AGV与机器集成调度方法,包括如下步骤:
获取AGV与机器集成作业流程的调度任务参数;根据所述调度任务参数进行鲸鱼优化算法的鲸鱼个体编码处理,生成具有预设定种群规模的鲸鱼种群,其中的每个鲸鱼个体对应一种AGV与机器集成作业流程调度方案;采用鲸鱼优化算法对鲸鱼种群进行迭代更新,在迭代过程中结合AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,选择出最优鲸鱼个体;根据所述最优鲸鱼个体对应的AGV与机器集成作业流程调度方案,执行AGV小车与机器的作业流程调度。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述调度任务参数包括工件的加工参数、AGV小车的运输运行参数、以及作业流程中转移运输区域的地图信息。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,该方法的具体流程包括如下步骤:
1)获取调度任务参数,设置鲸鱼优化算法的初始化参数;所述初始化参数包括种群规模NIND和最大迭代次数;
2)根据所述调度任务参数进行鲸鱼优化算法的鲸鱼个体编码处理,生成具有NIND个鲸鱼个体规模的鲸鱼种群;
3)判断迭代循环次数是否达到最大迭代次数,若达到,跳转执行该步骤9);否则,对鲸鱼种群中各鲸鱼个体所对应AGV与机器集成作业流程调度方案中的全部AGV小车进行运行路径规划,确定各AGV小车在其规划路径的运输运行时间,并结合各AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,分别计算鲸鱼种群中每个鲸鱼个体所对应AGV与机器集成作业流程调度方案的最大完工时间,将当前的全局最大完工时间最短的鲸鱼个体记录为全局最优鲸鱼个体,执行步骤4);
4)判断当前记录的全局最优鲸鱼个体保持不变的迭代次数是否达到预设的代数阈值;如达到,执行步骤5),否则,执行步骤6);
5)以最大完工时间更长判定鲸鱼个体更劣,随机生成种群规模50%的新鲸鱼个体以替代鲸鱼种群中50%较劣的鲸鱼个体,执行步骤6);
6)对鲸鱼种群进行鲸鱼优化算法迭代更新;
7)对当前鲸鱼种群中的nx个较优鲸鱼个体进行局部搜索;nx为预设的局部搜索数量参数;
8)保持鲸鱼种群规模,选择较优鲸鱼个体进入下一次迭代,返回步骤3);
9)将当前记录的全局最优鲸鱼个体作为选择出的最优鲸鱼个体,根据最优鲸鱼个体对应的AGV与机器集成作业流程调度方案,执行AGV小车与机器的作业流程调度。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述鲸鱼个体中包含有多个基因,每个基因对应AGV与机器集成作业流程调度方案中的一个作业工序,从而由AGV与机器集成作业流程调度方案中各作业工序各自对应的基因的集合构成一个鲸鱼个体;
所述鲸鱼个体中每个基因的鲸鱼个体编码包括工序码段、机器码段、以及AGV码段,所述工序码段用于指示该作业工序对应的工件编号,所述机器码段用于指示该作业工序中与所述工序码段中所指示工件编号相对应的机器编号,所述AGV码段用于指示该作业工序中与所述工序码段中所指示工件编号相对应的AGV编号;且在一个鲸鱼个体中,具有相同工序码段的基因出现的重复次序,用以指示针对相应工序码段中工件编号所对应工件的加工工序。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述鲸鱼个体中基因的每个码段均为取值区间在[-δ,δ]的连续编码,需要经过离散编码转换后得到离散编码,才能用以指示基因对应的工件编号、机器编号及AGV编号;
对鲸鱼个体进行离散编码转换的方式为:
针对鲸鱼个体中各个基因的工序码段采用最大头寸价值规则进行离散编码转换;
针对鲸鱼个体中各个基因的机器码段和AGV码段,分别采用如下方式进行离散编码转换:
mequ(i)表示连续编码的机器码段值,zequ(i)表示对应工序可选的加工机器数量,uequ(i)表示得到的离散编码的机器码段值;mAGV(i)表示连续编码的AGV码段值,zAGV(i)表示对应工序可选的AGV小车数量,uAGV(i)表示得到的离散编码的AGV码段值;δ为连续编码的取值区间[-δ,δ]的上限端值;round[]为四舍五入取整运算符。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述步骤3)中,对鲸鱼种群中各鲸鱼个体进行贪婪解码的约束条件包括:
约束条件(1):任意一道工序都只能由一台机器负责加工;
约束条件(2):任意一个工序的最多只由一台AGV负责运输;
约束条件(3):AGV空载出发时间不早于AGV上一次运输任务结束时间和工件开工时间;
约束条件(4):AGV空载结束时间为空载出发时间与空载运行时间之和;
约束条件(5):AGV负载出发时间不早于AGV空载结束时间和工件完工时间;
约束条件(6):AGV负载结束时间为负载出发时间与负载运行时间之和;
约束条件(7):工序的开工时间不早于负载结束时间和机器前序工序的完工时间;
约束条件(8):工序的完工时间为开工时间和加工时间之和;
约束条件(9):工件的完工时间为AGV将其运送到仓库的时间;
约束条件(10):当某个时刻某个路段有AGV进入之后,在该AGV驶出该路段之前,不允许AGV从其出口驶入该路段;
约束条件(11):同一时刻任意一个位置节点只能容得下一台AGV。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述步骤3)中,当前的全局最大完工时间最短的鲸鱼个体,是指到当前迭代次数为止的各次迭代中最大完工时间的值最短的鲸鱼个体。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述步骤7)中,局部搜索采用的邻域结构包括:
邻域结构1:在鲸鱼个体中各个基因的工序码段中,随机选择两个,该两个工序码段必须对应的是不同工件的工序,互换该两个工序码段的位置;
邻域结构2:在鲸鱼个体中各个基因的工序码段中,随机选择两个,将后一个工序码段***到前一个工序码段的前面;
邻域结构3:在鲸鱼个体中各个基因的工序码段中,随机选择一个,该工序码段所对应工序的可加工机器数量大于1,从该工序码段所对应工序的可加工机器中随机选择一个替换该工序码段对应工序的加工机器。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述步骤7)中,对每个鲸鱼个体进行局部搜索的具体方式为:
先按如下步骤进行基于工序和机器的变邻域搜索:
步骤a1:先将Xa更新为当前进行局部搜索的鲸鱼个体;令当前迭代次数na=1,令最大迭代次数na,max=5,令pa=1,令pa,max=3;
步骤a2:判断是否达到循环终止条件na≥na,max;如达到,输出Xa对应的鲸鱼个体;否则,转步骤a3;
步骤a3:在Xa对应的鲸鱼个体的基础上随机选择一个邻域结构,得到一个扰动个体X′a;
步骤a4:在扰动个体X′a的基础上进行变邻域搜索,其具体步骤为:
a4.1)判断是否达到终止条件pa≥pa,max,如达到,输出当前解扰动个体X′a,转步骤a5;否则转步骤a4.2);
a4.2)在扰动个体X′a的基础上选择编号和当前pa的取值对应的邻域结构,得到新个体X″a,如果f(X″a)<f(X′a),则更新X′a←X″a,pa←1;如果f(X″a)=f(X′a),则以0.5的概率更新X′a←X″a,pa←1;否则X′a不更新,pa←pa+1;然后返回a4.1);
步骤a5:更新Xa←X′a,na←na+1,转步骤a2;
其中,f(X′a)、f(X″a)分别表示个体X′a、X″a各自对应的机器加工最大完工时间;
然后,按如下步骤进行基于约束AGV的邻域搜索:
步骤b1:将Xb更新为前述基于工序和机器的变邻域搜索输出的Xa对应的鲸鱼个体;令当前操作的AGV任务编号nb为1,令nb,max为当前操作的AGV小车的总任务数;
步骤b2:判断是否满足终止条件nb≥nb,max,如满足,输出Xb对应的鲸鱼个体作为步骤8)中鲸鱼种群的择优对象;否则,转步骤b3;
步骤b3:将当前操作的AGV任务分配给当前运输运行时间最小的AGV小车得到新个体X′b;如果f(X′b)<f(Xb),更新Xb←X′b;如果f(X′b)=f(Xb),则以0.5的概率更新Xb←X′b;否则,不更新Xb;然后更新nb←nb+1,转步骤b2;
其中,f(X′b)、f(X″b″)分别表示个体X′b、X″b各自对应的AGV运输最大完工时间。
上述基于离散鲸鱼优化算法的AGV与机器集成调度方法中,作为优选,所述步骤6)中,对鲸鱼种群进行鲸鱼优化算法迭代更新的具体方式为:
其中,t为当前迭代次数,tmax为最大迭代次数,r1、r2均为[0,1]之间取值的随机数;在[0,1]之间随机取值生成一个概率参数p;
其中,表示更新后的鲸鱼个***置;D表示更新步长;/>表示当前鲸鱼个***置,/>表示随机选取的鲸鱼个体的位置向量,/>表示目标猎物位置;b为定义的对数螺旋形状常数;l为[-1,1]之间取值的随机数;rand是服从范围在[0,1]的均匀分布函数;当/>时,[rand-1/2]取-1;当/>时,[rand-1/2]取0;当/>时,[rand-1/2]取1;/>表示矩阵的内积运算,Levy表示Levy飞行因子,且:
Levy(s)~|s|-1-β,0<β≤2;
相比于现有技术,本发明的有益效果在于:
1、本发明基于离散鲸鱼优化算法的AGV与机器集成调度方法,利用鲸鱼优化算法结构简单、参数少、搜索能力强且易于实现等优点,且在鲸鱼优化算法迭代更新过程中结合AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,使得AGV和机器集成调度问题得以有效求解,并且通过迭代循环对鲸鱼个体寻优实现对调度方案的优化,能够帮助提升对AGV与机器集成作业流程的调度效率。
2、本发明的AGV与机器集成调度方法中,借助引入levy飞行策略的鲸鱼种群迭代更新处理,以及基于全局最优鲸鱼个体保持代数的循环处理操作,能够增强算法的全局搜索能力以及跳出局部最优的能力,优化提升对AGV与机器集成作业流程的调度效率。
3、本发明的AGV与机器集成调度方法中,借助多个较优鲸鱼个体的局部搜索策略,能够增强算法的收敛精度。
4、本发明的AGV与机器集成调度方法,在实现对AGV和机器集成调度问题的有效求解并提升调度效率的同时,也并没有以牺牲运算复杂度作为代价,依然保持了良好的求解运算效率。
附图说明
图1为基于离散鲸鱼优化算法的AGV与机器集成调度方法的一种实施方案的流程图。
图2为本发明方法中鲸鱼个体编码的连续编码实例图。
图3为本发明方法中鲸鱼个体的工序码段离散编码转化的示意图。
图4为本发明方法中鲸鱼个体的机器码段离散编码转化的示意图。
图5为本发明方法中鲸鱼个体的AGV码段离散编码转化的示意图。
图6为本发明柔性算例实验中的最优调度结果甘特图。
图7为本发明柔性算例实验中的各路段时间窗。
图8为本发明柔性算例实验中的算法收敛曲线。
具体实施方式
下面结合附图与实例对本发明作进一步说明。
本发明提出了一种基于离散鲸鱼优化算法的AGV与机器集成调度方法,包括如下步骤:
获取AGV与机器集成作业流程的调度任务参数;
根据所述调度任务参数进行鲸鱼优化算法的鲸鱼个体编码处理,生成具有预设定种群规模的鲸鱼种群,其中的每个鲸鱼个体对应一种AGV与机器集成作业流程调度方案;
采用鲸鱼优化算法对鲸鱼种群进行迭代更新,在迭代过程中结合AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,选择出最优鲸鱼个体;
根据所述最优鲸鱼个体对应的AGV与机器集成作业流程调度方案,执行AGV小车与机器的作业流程调度。
本发明基于离散鲸鱼优化算法的AGV与机器集成调度方法中,利用鲸鱼优化算法结构简单、参数少、搜索能力强且易于实现等优点,且在鲸鱼优化算法迭代更新过程中结合AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,使得AGV和机器集成调度问题得以有效求解,并且通过迭代循环对鲸鱼个体寻优实现对调度方案的优化,能够帮助提升对AGV与机器集成作业流程的调度效率。
具体而言,本发明基于离散鲸鱼优化算法的AGV与机器集成调度方法的具体流程如图1所示,包括如下步骤:
1)获取调度任务参数,设置鲸鱼优化算法的初始化参数;所述初始化参数包括种群规模NIND和最大迭代次数itmax。
这里的调度任务参数,可以包括工件的加工参数、AGV小车的运输运行参数、以及作业流程中转移运输区域的地图信息等。工件的加工参数可以包括AGV与机器集成作业流程中针对工件加工涉及的机器总数、工件总数,以及每种工件的加工工序总数、批次总数、及加工批量总数等信息,用于作为工件加工工序和机器调度方案求解的基础参数;AGV小车的运输运行参数可以包括AGV与机器集成作业流程中针对AGV小车运输运行的AGV小车总数量、AGV小车的行驶速度等信息,作业流程中转移运输区域的地图信息可以包括转移运输区域的出入口位置、各机器在转移运输区域的放置位置、转移运输区域中可供AGV小车行驶的各节点位置等信息,AGV小车的运输运行参数和转移运输区域的地图信息用于作为AGV小车运输运行调度方案求解的基础参数。
2)根据所述调度任务参数进行鲸鱼优化算法的鲸鱼个体编码处理,生成具有NIND个鲸鱼个体规模的鲸鱼种群。
3)判断迭代循环次数it是否达到最大迭代次数itmax,若达到,跳转执行该步骤9);否则,对鲸鱼种群中各鲸鱼个体所对应AGV与机器集成作业流程调度方案中的全部AGV小车进行运行路径规划,确定各AGV小车在其规划路径的运输运行时间,并结合各AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,分别计算鲸鱼种群中每个鲸鱼个体所对应AGV与机器集成作业流程调度方案的最大完工时间,将当前的全局最大完工时间最短的鲸鱼个体记录为全局最优鲸鱼个体,执行步骤4)。其中,当前的全局最大完工时间最短的鲸鱼个体,是指到当前迭代次数为止的各次迭代中最大完工时间的值最短的鲸鱼个体。
4)判断当前记录的全局最优鲸鱼个体保持不变的迭代次数是否达到预设的代数阈值;如达到,执行步骤5),否则,执行步骤6)。
5)以最大完工时间更长判定鲸鱼个体更劣,随机生成种群规模50%的新鲸鱼个体以替代鲸鱼种群中50%较劣的鲸鱼个体,执行步骤6)。
6)对鲸鱼种群进行鲸鱼优化算法迭代更新。
7)对当前鲸鱼种群中的nx个较优鲸鱼个体进行局部搜索;nx为预设的局部搜索数量参数。
8)保持鲸鱼种群规模,选择较优鲸鱼个体进入下一次迭代,返回步骤3)。
9)将当前记录的全局最优鲸鱼个体作为选择出的最优鲸鱼个体,根据最优鲸鱼个体对应的AGV与机器集成作业流程调度方案,执行AGV小车与机器的作业流程调度。
下面分别针对本发明AGV与机器集成调度方法的各个环节分别进行说明。
针对于鲸鱼个体编码,在本发明方法中,鲸鱼个体中包含有多个基因,每个基因对应AGV与机器集成作业流程调度方案中的一个作业工序,从而由AGV与机器集成作业流程调度方案中各作业工序各自对应的基因的集合构成一个鲸鱼个体。编码时,鲸鱼个体中每个基因的鲸鱼个体编码包括工序码段、机器码段、以及AGV码段,工序码段用于指示该作业工序对应的工件编号,机器码段用于指示该作业工序中与所述工序码段中所指示工件编号相对应的机器编号,AGV码段用于指示该作业工序中与所述工序码段中所指示工件编号相对应的AGV编号;且在一个鲸鱼个体中,具有相同工序码段的基因出现的重复次序,用以指示针对相应工序码段中工件编号所对应工件的加工工序,也就是说,具有相同工序码段的基因在鲸鱼个体中出现的第n次,即指示针对相应工序码段中工件编号所对应的工件执行其第n个加工工序。
由于鲸鱼优化算法的编码是连续编码方式,其解空间也是连续取值空间,因此鲸鱼个体中的初始化编码、已经经过迭代更新后的鲸鱼个体中的编码,都是连续编码,编码取值区间在[-δ,δ]。在本发明中,考虑到鲸鱼种群的迭代更新,如果δ的值取得过小,更新后的鲸鱼个体工序序列基因值相对大小变化较大,导致鲸鱼个体被破坏;如果δ的值取得过大,则会导致更新效果不明显;因此,δ的取值一般设为2~5之间的数。图2所示为一个较适宜的编码示例。
但是,对于AGV与机器集成调度问题而言,工序、机器、AGV小车的调度参数都是离散参数,需要对连续编码经过离散编码转换后得到离散编码,才能用以指示基因对应的工件编号、机器编号、AGV编号等离散的调度参数。因此,在本发明中,当需要对鲸鱼种群中的基因个体进行解码处理时,就需要经过离散编码转换的处理环节。
在本发明中,对鲸鱼个体进行离散编码转换的方式为:
针对鲸鱼个体中各个基因的工序码段采用LPV(Largest Position Value,最大头寸价值)规则进行离散编码转换。LPV规则的离散编码转换处理过程为:首先给鲸鱼个体中各个基因按照排列顺序从1开始依次递增的设置一个固定ID与之对应,然后将鲸鱼个体中各个基因按工序码段的值从大到小的顺序排序重新排列,使得各个基因的固定ID排序被乱序,形成映射ID排序,即得到一组新的基因排列顺序;然后,按照各映射ID的值由小到大的顺序,在对应顺序的基因位置依次***工件1的各道工序,再***工件2的各道工序,……,以此类推,直至各工件的全部工序***完毕,***的值为工序对应的工件编号值,由此,得到鲸鱼个体中工序码段的离散编码序列。该具体的过程如图3所示,在图3所示示例中,工件1有3道工序、工件2有2道工序、工件3有4道工序,映射ID排序为(8,5,4,1,9,3,2,7,6);因此,在***工序对应的工件编号值时,工件1有3道工序,应该在映射ID为1、2、3的三个位置先分别***工件编号1,此时工序码段的离散编码序列状态呈现为(X,X,X,1,X,1,1,X,X),“X”表示尚未***工件编号值的位置;然后,工件2有2道工序,应该在映射ID为4、5的两个位置分别***工件编号2,此时工序码段的离散编码序列状态呈现为(X,2,2,1,X,1,1,X,X);最后,工件3有4道工序,应该在映射ID为6、7、8、9的四个位置分别***工件编号3,此时工序码段的离散编码序列状态呈现为(3,2,2,1,3,1,1,3,3),至此,得到鲸鱼个体中个基因的工序码段的离散编码序列。所得到的鲸鱼个体中基因工序码段从左至右出现的重复次序,表示的是调度方案中的工加工序,例如,从左至右第一个3表示的是工件3的第1道工序O31,从左至右第二个3表示的是工件3的第2道工序O32,一次类推。
针对鲸鱼个体中各个基因的机器码段和AGV码段,分别采用如下方式进行离散编码转换:
mequ(i)表示连续编码的机器码段值,zequ(i)表示对应工序可选的加工机器数量,uequ(i)表示得到的离散编码的机器码段值;mAGV(i)表示连续编码的AGV码段值,zAGV(i)表示对应工序可选的AGV小车数量,uAGV(i)表示得到的离散编码的AGV码段值;δ为连续编码的取值区间[-δ,δ]的上限端值;round[]为四舍五入取整运算符。同时,通过逆运算也可以实现从离散空间映射到连续空间。AGV和机器基因串中,从左至右为从工件1到最后一个工件每一道工序对应的机器和AGV。具体见图4和图5。针对机器和AGV共同调度问题,上述编码及其转换方式不会产生非法解。
算法迭代过程中,可能会导致鲸鱼个体的某些维度越界。在原始鲸鱼优化算法中,在一轮迭代结束以后再对越界鲸鱼个体进行调整。这种处理方式可能会导致一些问题,因为在鲸鱼个体迭代过程中可能会选到越界的鲸鱼个体为位置更新的基准,从而造成更多鲸鱼个体越界,不仅会增加算法的运行时间还会导致一些鲸鱼个体被破坏,且将越界的维度设置为最大值或者最小值,当越界情况较多时,导致鲸鱼个体之间相似度越来越大。因此,本发明在一个鲸鱼个体进行位置更新以后就进行鲸鱼个体越界的调整,并将越界的维度设置为接近边界的一个值。调整规则如下式所示:
r1表示[0,1]之间取值的随机数,X(i)表示鲸鱼个体X的第i个维度的编码值。
关于鲸鱼种群的初始化,在生成初始鲸鱼种群的时候,考虑各机器和AGV的工作时间与负载均衡可以大大提高种群的质量。在FJSP问题(Flexible Job-shop SchedulingProblem,柔性作业车间调度问题)上,通常采用在随机生成种群规模50%鲸鱼个体的基础上,考虑工作时间与负载均衡,使用全局选择方法生成种群规模20%的鲸鱼个体,局部选择方法生成种群规模30%的鲸鱼个体。本发明将该方法也应用在AGV的选择上,在AGV序列初始化时,为了减少计算量,在计算AGV的运行时间时不考虑冲突。
由于对于优化问题的全局最优解没有任何先验知识,所以初始种群应该尽可能的均匀分布在解空间中。所以增强初始种群的多样性以奠定算法全局搜索的基础一直是算法优化的一个方向。目前,大多数研究主要采用混沌映射策略和对立学习策略来增强智能优化算法初始种群的多样性。混沌映射和对立学习在改进算法上取得了许多成功,但是由于有很多混沌映射和对立学习方法可以用以改进算法,所以选择什么方法可以最大程度上改进算法是一个值得研究的问题。
考虑上述因素,本发明在采用在随机生成种群规模50%鲸鱼个体的基础上,使用高斯映射和标准对立学习且各自生成种群规模比例为25%的策略生成初始化种群。
高斯映射表达式为:
标准对立学习表达式为:
在对鲸鱼种群中各鲸鱼个体进行贪婪解码的过程中,为了保证各机器加工工序之间、个AGV小车运输运行路径之间、以及机器加工工序与AGV小车运输运行调度之间均满足工序约束,最好设置如下的约束条件:
约束条件(1):任意一道工序都只能由一台机器负责加工;
约束条件(2):任意一个工序的最多只由一台AGV负责运输;
约束条件(3):AGV空载出发时间不早于AGV上一次运输任务结束时间和工件开工时间;
约束条件(4):AGV空载结束时间为空载出发时间与空载运行时间之和;
约束条件(5):AGV负载出发时间不早于AGV空载结束时间和工件完工时间;
约束条件(6):AGV负载结束时间为负载出发时间与负载运行时间之和;
约束条件(7):工序的开工时间不早于负载结束时间和机器前序工序的完工时间;
约束条件(8):工序的完工时间为开工时间和加工时间之和;
约束条件(9):工件的完工时间为AGV将其运送到仓库的时间;
约束条件(10):当某个时刻某个路段有AGV进入之后,在该AGV驶出该路段之前,不允许AGV从其出口驶入该路段;
约束条件(11):同一时刻任意一个位置节点只能容得下一台AGV。
贪婪解码处理中,在以最大完工时间最小为优化目标时,最优解必然在主动调度集中。故采用主动式的贪婪解码,在不推迟已经被安排的工序开工时间的前提下,根据工件的最早可开工时间查找机器能够完成本道工序的空闲时间段进行***式解码。现有的作业车间调度中,贪婪解码处理工件的最早可开工时间为前序工序的完工时间;而本发明基于上述约束条件对贪婪解码处理过程进行更多约束,例如工件的最早可开工时间应当为AGV负载结束时间等。借助这些约束条件,使得结合各AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体的贪婪解码能够更加顺利、快速的进行,并且解码结果能够满足实际加工作业的工序约束要求。
在步骤6)对鲸鱼种群进行鲸鱼优化算法迭代更新的处理中,可以按照现有的鲸鱼优化算法迭代更新操作进行处理。但是,作为本发明方法的优选方案,在鲸鱼优化算法迭代更新的基础上,可以加你一补的引入Levy飞行算子更新,帮助增强算法的全局搜索能力的同时,也有助于增强算法跳出局部最优的能力。因为鲸鱼优化算法在迭代后期其收敛因子a会逐渐减小,存在使得算法陷入局部最优的风险。Levy飞行是一种服从Levy分布的随机搜索路径。因此,将Levy飞行策略引入到算法迭代中,能够增强其后期跳出局部最优的能力;同时,在算法的前期阶段引入Levy飞行策略也能够可以增强算法的全局搜索能力。
引入Levy飞行算子对鲸鱼种群进行鲸鱼优化算法迭代更新的具体方式为:
其中,t为当前迭代次数,tmax为最大迭代次数,r1、r2均为[0,1]之间取值的随机数;在[0,1]之间随机取值生成一个概率参数p;
其中,表示更新后的鲸鱼个***置;D表示更新步长;/>表示当前鲸鱼个***置,/>表示随机选取的鲸鱼个体的位置向量,/>表示目标猎物位置;b为定义的对数螺旋形状常数;l为[-1,1]之间取值的随机数;rand是服从范围在[0,1]的均匀分布函数;当/>时,[rand-1/2]取-1;当/>时,[rand-1/2]取0;当/>时,[rand-1/2]取1;/>表示矩阵的内积运算,Levy表示Levy飞行因子,且:
Levy(s)~|s|-1-β,0<β≤2;
其中,u、v、β为Levy飞行参数;0<β≤2,一般β取1.5;u、v为正态分布随机数;u服从正态分布σu如式(9)所示,Γ是标准伽马函数;v服从正态分布/>σv=1,即,v服从正态分布v~N(0,1)。
阈值操作也是目前防止算法陷入局部最优常见做法之一。具体的做法为:在算法开始时设置一个全局最优鲸鱼个体保持不变的迭代次数gic,并令其初始值等于零,然后在算法迭代过程中,记录全局最优鲸鱼个体保持不变的迭代次数值,当gic达到预设的代数阈值lim时,将鲸鱼种群中50%较劣的鲸鱼个体用生成的新鲸鱼个体代替。本发明中,是以最大完工时间的长短来判定鲸鱼个体的优劣,即,最大完工时间更长判定鲸鱼个体更劣,相反,最大完工时间更短判定鲸鱼个体更优。在这里,代数阈值的取值对算法有较大的影响;如果阈值设置过小,则鲸鱼个体还没有完全收敛就造成算法复杂度快速增加;而如果当阈值设置过大,会使得算法收敛速度变慢。代数阈值的取值一般设为最大迭代次数的10%~15%,是较优的取值选择。
对于局部搜索处理而言,在开发阶段,种群个体以当前最优个体为基准来更新自己的位置,对较优个体进行局部搜索以提高其质量对算法求解精度和收敛速度可以有较大提升。由于AGV设备比较昂贵,在车间中AGV数量往往较少。对于机器和AGV共同调度的问题,经常出现工件等待AGV运输的现象,合理的分配AGV对于减小最大完工时间至关重要。把最迟完成搬运任务的AGV定义为约束AGV。在本发明中,作为改进优化的局部搜索处理方案分为两部分处理环节:基于工序和机器的变邻域搜索、以及基于约束AGV的邻域搜索。
变邻域搜索算法通过对不同的邻域递进式排查使得搜索空间更加广阔深入,具有较强局部搜索能力。针对于机器和AGV共同调度问题中经常出现工件等待AGV运输的情况,为了更好的优化求解,本发明中,对当前鲸鱼种群中的nx个较优鲸鱼个体进行局部搜索,nx为预设的局部搜索数量参数,且nx的取值为大于1且小于等于5的整数,相对于对仅对1个最优个体进行变邻域搜索可以增大优化当前解可能性;通常可以取局部搜索数量参数nx的值为3。
设计变邻域搜索算法,则首先要设计邻域结构。本发明优选采用以下三种邻域结构:
邻域结构1:在鲸鱼个体中各个基因的工序码段中,随机选择两个,该两个工序码段必须对应的是不同工件的工序,互换该两个工序码段的位置;
邻域结构2:在鲸鱼个体中各个基因的工序码段中,随机选择两个,将后一个工序码段***到前一个工序码段的前面;
邻域结构3:在鲸鱼个体中各个基因的工序码段中,随机选择一个,该工序码段所对应工序的可加工机器数量大于1,从该工序码段所对应工序的可加工机器中随机选择一个替换该工序码段对应工序的加工机器。
以上述三种邻域结构作为基础,针对每个鲸鱼个体进行局部搜索的处理流程,都需要经历基于工序和机器的变邻域搜索、以及基于约束AGV的邻域搜索两个环节。
基于工序和机器的变邻域搜索步骤如下:
步骤a1:先将Xa更新为当前进行局部搜索的鲸鱼个体;令当前迭代次数na=1,令最大迭代次数na,max=5,令pa=1,令pa,max=3;
步骤a2:判断是否达到循环终止条件na≥na,max;如达到,输出Xa对应的鲸鱼个体;否则,转步骤a3;
步骤a3:在Xa对应的鲸鱼个体的基础上随机选择一个邻域结构,得到一个扰动个体X′a;
步骤a4:在扰动个体X′a的基础上进行变邻域搜索,其具体步骤为:
a4.1)判断是否达到终止条件pa≥pa,max,如达到,输出当前解扰动个体X′a,转步骤a5;否则转步骤a4.2);
a4.2)在扰动个体X′a的基础上选择编号和当前pa的取值对应的邻域结构,得到新个体X″a,如果f(X″a)<f(X′a),则更新X′a←X″a,pa←1;如果f(X″a)=f(X′a′),则以0.5的概率更新X′a←X″a,pa←1;否则X′a不更新,pa←pa+1;然后返回a4.1);
步骤a5:更新Xa←X′a,na←na+1,转步骤a2。
其中,f(X′a)、f(X″a)分别表示个体X′a、X″a各自对应的机器加工最大完工时间。
然后,基于约束AGV的邻域搜索以基于工序和机器的变邻域搜索输出的个体为初始个体值,其步骤如下:
步骤b1:将Xb更新为前述基于工序和机器的变邻域搜索输出的Xa对应的鲸鱼个体;令当前操作的AGV任务编号nb为1,令nb,max为当前操作的AGV小车的总任务数;
步骤b2:判断是否满足终止条件nb≥nb,max,如满足,输出Xb对应的鲸鱼个体作为步骤8)中鲸鱼种群的择优对象;否则,转步骤b3;
步骤b3:将当前操作的AGV任务分配给当前运输运行时间最小的AGV小车得到新个体X′b;如果f(X′b)<f(Xb),更新Xb←X′b;如果f(X′b)=f(Xb),则以0.5的概率更新Xb←X′b;否则,不更新Xb;然后更新nb←nb+1,转步骤b2。
其中,f(X′b)、f(X″b)分别表示个体X′b、X″b各自对应的AGV运输最大完工时间。
针对AGV路径规划问题,在算法对个体进行解码的过程中,工序确定加工机器以后,还需要根据工件的最早可开工时间以及机器的加工时间确定工序的实际开完工时间。在传统的车间调度方案中,工序的最早可开工时间为上道工序的完工时间,而本发明针对的AGV与机器集成调度问题,需要考虑工件的转移时间以及路途中可能遇到的路径冲突,因此要想确定工序的最早可开工时间,需要先给AGV规划出一条无冲突路径。为了实现对AGV的无冲突路径规划,可以采用基于时间窗的Dijkstra算法等已有的无冲突路径规划方法,实现对各AGV小车的路径有序规划、并减少或防止出现路径冲突问题,例如我国专利CN106251016A、CN107167154A、CN107179773A等AGV路径规划专利技术方案等。
柔性算例实验
为验证本发明提出的离散鲸鱼优化算法的可行性与有效性,选取参考文献“LyuX,Song Y,He C,et al.Approach to Integrated Scheduling Problems ConsideringOptimal Number of Automated Guided Vehicles and Conflict-Free Routing inFlexible Manufacturing Systems[J].IEEE Access,2019:74909-74924”中算例进行试验,该算例中包含4个工件、6台机器,AGV数量从1增加到6。该参考文献中PGA运行参数为:种群规模设为80,最大迭代次数设为80,交叉率设为0.9、变异率设为0.1,算法独立运行10次取最好结果。为了更好的对比,本发明方法(本算例中标记为IWOA)和现有技术中原始鲸鱼优化算法(本算例中标记为WOA)的种群规模、最大迭代次数、独立运行次数和该参考文献设为相同的值。WOA的鲸鱼个体边界设为1,IWOA的鲸鱼个体边界设为3,最优鲸鱼个体保持代数阈值设为10。
表1中v表示AGV数量,Cmax表示最大完工时间,单位为分钟,CPU表示运行时间,单位为秒。
表1柔性算例结果
从表1中可以看出,和PGA相比,IWOA的运行结果除了AGV数量为1时,最大完工时间更大外,其他结果在运行时间稍劣于PGA的情况下,最大完工时间均优于PGA。IWOA最大完工时间的全部运行结果均优于WOA。
图6为AGV数量为3时的甘特图,ET表示的AGV的空载行程。可以看出,所有工序开工时间在AGV负载结束时间、工件前序工序完工时间、机器前序工序完工时间之后。满足约束条件。
图7为AGV数量为3时各路段的时间窗图,用不同颜色区分AGV,可以看出,在任意时刻的纵坐标上不会出现同一辆AGV,说明AGV分配方案是可行的;在任意路段,不会出现不同AGV时间窗的重叠,说明AGV之间不会发生碰撞。说明本发明算法可以为AGV规划无冲突的路径。
图8是WOA和IWOA在AGV数量为3时的收敛曲线。WOA在迭代中后期最大完工时间有一个较大的减小幅度,可以看出WOA在后期局部开发的能力,但在后期,最大完工时间不再改变,可以看出WOA容易陷入局部最优解的特点;相对WOA来说,本发明IWOA方法的初始种群的质量较高,验证了本发明方法的有效性;本发明IWOA方法在25代就开始收敛到了89min,说明了算法有较好的收敛速度和收敛精度。
时间复杂度分析
时间复杂度是算法的一个重要性能,可以体现算法的运行效率。假设原始鲸鱼优化算法的种群规模为N,鲸鱼个体的维度为n,则初始化阶段的时间复杂度T1=O(n)。假设进入迭代以后,个体最大完工时间的计算时间为f(n),处理鲸鱼个体维度越界的时间为t1,这两部分时间复杂度T2=O(N(f(n)+t1·n)),假设三种更新方式的数量分别为m1、m2、m3,每一维度更新时间分别为t2、t3、t4,则迭代过程中时间复杂度T3=O(m1(n·t2)+m2(n·t3)+m3·(n·t4))。现有技术原始鲸鱼优化算法的时间复杂度为这三部分相加,具体见下式:
TWOA=2O(n)+O(n+f(n))=O(n+f(n))
在本发明所提算法中,假设机器数为m,计算每个机器负载的时间为t5,GLR选择策略的时间复杂度T1=O(0.5N·n+0.5N·n·(m·t5))=O(n),假设混沌映射和对立学习的计算时间为t6和t7,该过程时间复杂度T2=O(N·n·t6+N·t7)。进入迭代以后,设Levy步长的计算时间为t8,位置更新复杂度T3=O(m1(n(t2+t8))+m2(n·t3)+m3(n(t4+t8)))。最大完工时间和处理越界的时间和原始鲸鱼优化算法一样。阈值重启操作的时间复杂度T4=O(0.5N·n)=O(n)。假设构造邻域的时间为t9,计算AGV运行时间的时间为t10,局部搜索的时间复杂度为T5=O(nmax·qmax·f(n)·(t9+t10))。由此,本发明方法的时间复杂度如下式:
TIWOA=3O(n)+O(n+f(n))+O(f(n))=O(n+f(n))
可见,本发明所述算法与现有的原始鲸鱼优化算法相比,二者的运算处理时间复杂度是一样的,在同样的运行环境下的运行时间在同一数量级。因此,这也说明了,本发明方法在实现了针对AGV和机器集成调度问题的有效求解的同时,相比于已有的原始鲸鱼优化算法而言,不仅能够增强算法的全局搜索能力以及跳出局部最优的能力,优化提升对AGV与机器集成作业流程的调度效率,并且也并没有以牺牲运算复杂度作为代价,依然保持了良好的求解运算效率,具备较好的收敛速度和收敛精度。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管通过参照本发明的优选实施例已经对本发明进行了描述,但本领域的普通技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
Claims (3)
1.基于离散鲸鱼优化算法的AGV与机器集成调度方法,其特征在于,包括如下步骤:
获取AGV与机器集成作业流程的调度任务参数;
根据所述调度任务参数进行鲸鱼优化算法的鲸鱼个体编码处理,生成具有预设定种群规模的鲸鱼种群,其中的每个鲸鱼个体对应一种AGV与机器集成作业流程调度方案;其中,在随机生成种群规模50%鲸鱼个体的基础上,使用高斯映射和标准对立学习且各自生成种群规模比例为25%的策略生成初始化种群,得到具有预设定种群规模的鲸鱼种群;
高斯映射表达式为:
标准对立学习表达式为:
其中,表示经过高斯映射后的鲸鱼个体中第i个维度的编码值,[]表示取整,/>表示经过对立学习后的鲸鱼个体中第i个维度的编码值,/>和/>分别为随机生成的鲸鱼个体中第i个维度的编码值/>取值的上、下限值;
采用鲸鱼优化算法对鲸鱼种群进行迭代更新,在迭代过程中结合AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,选择出最优鲸鱼个体;
根据所述最优鲸鱼个体对应的AGV与机器集成作业流程调度方案,执行AGV小车与机器的作业流程调度;
所述鲸鱼个体中包含有多个基因,每个基因对应AGV与机器集成作业流程调度方案中的一个作业工序,从而由AGV与机器集成作业流程调度方案中各作业工序各自对应的基因的集合构成一个鲸鱼个体;所述鲸鱼个体中每个基因的鲸鱼个体编码包括工序码段、机器码段、以及AGV码段,所述工序码段用于指示该作业工序对应的工件编号,所述机器码段用于指示该作业工序中与所述工序码段中所指示工件编号相对应的机器编号,所述AGV码段用于指示该作业工序中与所述工序码段中所指示工件编号相对应的AGV编号;且在一个鲸鱼个体中,具有相同工序码段的基因出现的重复次序,用以指示针对相应工序码段中工件编号所对应工件的加工工序;
所述鲸鱼个体中基因的每个码段均为取值区间在[-δ,δ]的连续编码,需要经过离散编码转换后得到离散编码,才能用以指示基因对应的工件编号、机器编号及AGV编号;
对鲸鱼个体进行离散编码转换的方式为:
针对鲸鱼个体中各个基因的工序码段采用最大头寸价值规则进行离散编码转换;其离散编码转换处理过程为:首先给鲸鱼个体中各个基因按照排列顺序从1开始依次递增的设置一个固定ID与之对应,然后将鲸鱼个体中各个基因按工序码段的值从大到小的顺序排序重新排列,使得各个基因的固定ID排序被乱序,形成映射ID排序,即得到一组新的基因排列顺序;然后,按照各映射ID的值由小到大的顺序,在对应顺序的基因位置依次***工件1的各道工序,再***工件2的各道工序;以此类推,直至各工件的全部工序***完毕,***的值为工序对应的工件编号值,由此,得到鲸鱼个体中工序码段的离散编码序列;
针对鲸鱼个体中各个基因的机器码段和AGV码段,分别采用如下方式进行离散编码转换:
mequ(i)表示连续编码的机器码段值,zequ(i)表示对应工序可选的加工机器数量,uequ(i)表示得到的离散编码的机器码段值;mAGV(i)表示连续编码的AGV码段值,zAGV(i)表示对应工序可选的AGV小车数量,uAGV(i)表示得到的离散编码的AGV码段值;δ为连续编码的取值区间[-δ,δ]的上限端值;round[]为四舍五入取整运算符;
对鲸鱼种群进行迭代过程中,在一个鲸鱼个体进行位置更新以后就进行鲸鱼个体越界的调整,调整规则如下式所示:
r1表示[0,1]之间取值的随机数,X(i)表示鲸鱼个体X的第i个维度的编码值;
该方法的具体流程包括如下步骤:
1)获取调度任务参数,设置鲸鱼优化算法的初始化参数;所述初始化参数包括种群规模NIND和最大迭代次数;
2)根据所述调度任务参数进行鲸鱼优化算法的鲸鱼个体编码处理,生成具有NIND个鲸鱼个体规模的鲸鱼种群;
3)判断迭代循环次数是否达到最大迭代次数,若达到,跳转执行步骤9);否则,对鲸鱼种群中各鲸鱼个体所对应AGV与机器集成作业流程调度方案中的全部AGV小车进行运行路径规划,确定各AGV小车在其规划路径的运输运行时间,并结合各AGV小车的运行路径及相应的运输运行时间对鲸鱼种群中各鲸鱼个体进行贪婪解码,分别计算鲸鱼种群中每个鲸鱼个体所对应AGV与机器集成作业流程调度方案的最大完工时间,将当前的全局最大完工时间最短的鲸鱼个体记录为全局最优鲸鱼个体,执行步骤4);步骤3)中,对鲸鱼种群中各鲸鱼个体进行贪婪解码的约束条件包括:
约束条件(1):任意一道工序都只能由一台机器负责加工;
约束条件(2):任意一个工序的最多只由一台AGV负责运输;
约束条件(3):AGV空载出发时间不早于AGV上一次运输任务结束时间和工件开工时间;
约束条件(4):AGV空载结束时间为空载出发时间与空载运行时间之和;
约束条件(5):AGV负载出发时间不早于AGV空载结束时间和工件完工时间;
约束条件(6):AGV负载结束时间为负载出发时间与负载运行时间之和;
约束条件(7):工序的开工时间不早于负载结束时间和机器前序工序的完工时间;
约束条件(8):工序的完工时间为开工时间和加工时间之和;
约束条件(9):工件的完工时间为AGV将其运送到仓库的时间;
约束条件(10):当某个时刻某个路段有AGV进入之后,在该AGV驶出该路段之前,不允许AGV从其出口驶入该路段;
约束条件(11):同一时刻任意一个位置节点只能容得下一台AGV;
4)判断当前记录的全局最优鲸鱼个体保持不变的迭代次数是否达到预设的代数阈值;如达到,执行步骤5),否则,执行步骤6);
5)以最大完工时间更长判定鲸鱼个体更劣,随机生成种群规模50%的新鲸鱼个体以替代鲸鱼种群中50%较劣的鲸鱼个体,执行步骤6);
6)对鲸鱼种群进行鲸鱼优化算法迭代更新;步骤6)中,对鲸鱼种群进行鲸鱼优化算法迭代更新的具体方式为:
其中,t为当前迭代次数,tmax为最大迭代次数,r1、r2均为[0,1]之间取值的随机数;在[0,1]之间随机取值生成一个概率参数p;
其中,表示更新后的鲸鱼个***置;D表示更新步长;/>表示当前鲸鱼个***置,/>表示随机选取的鲸鱼个体的位置向量,/>表示目标猎物位置;b为定义的对数螺旋形状常数;l为[-1,1]之间取值的随机数;rand是服从范围在[0,1]的均匀分布函数;当/>时,[rand-1/2]取-1;当/>时,[rand-1/2]取0;当/>时,[rand-1/2]取1;/>表示矩阵的内积运算,Levy表示Levy飞行因子,且:
Levy(s)~|s|-1-β,0<β≤2;
7)对当前鲸鱼种群中的nx个较优鲸鱼个体进行局部搜索;nx为预设的局部搜索数量参数;步骤7)中,局部搜索采用的邻域结构包括:
邻域结构1:在鲸鱼个体中各个基因的工序码段中,随机选择两个,该两个工序码段必须对应的是不同工件的工序,互换该两个工序码段的位置;
邻域结构2:在鲸鱼个体中各个基因的工序码段中,随机选择两个,将后一个工序码段***到前一个工序码段的前面;
邻域结构3:在鲸鱼个体中各个基因的工序码段中,随机选择一个,该工序码段所对应工序的可加工机器数量大于1,从该工序码段所对应工序的可加工机器中随机选择一个替换该工序码段对应工序的加工机器;
对每个鲸鱼个体进行局部搜索的具体方式为:
先按如下步骤进行基于工序和机器的变邻域搜索:
步骤a1:先将Xa更新为当前进行局部搜索的鲸鱼个体;令当前迭代次数na=1,令最大迭代次数na,max=5,令pa=1,令pa,max=3;
步骤a2:判断是否达到循环终止条件na≥na,max;如达到,输出Xa对应的鲸鱼个体;否则,转步骤a3;
步骤a3:在Xa对应的鲸鱼个体的基础上随机选择一个邻域结构,得到一个扰动个体X′a;
步骤a4:在扰动个体X′a的基础上进行变邻域搜索,其具体步骤为:
a4.1)判断是否达到终止条件pa≥pa,max,如达到,输出当前解扰动个体X′a,转步骤a5;否则转步骤a4.2);
a4.2)在扰动个体X′a的基础上选择编号和当前pa的取值对应的邻域结构,得到新个体X″a,如果f(X″a)<f(X′a),则更新X′a←X″a,pa←1;如果f(X″a)=f(X′a),则以0.5的概率更新X′a←X″a,pa←1;否则X′a不更新,pa←pa+1;然后返回a4.1);
步骤a5:更新Xa←X′a,na←na+1,转步骤a2;
其中,f(X′a)、f(X″a)分别表示个体X′a、X″a各自对应的机器加工最大完工时间;
然后,按如下步骤进行基于约束AGV的邻域搜索:
步骤b1:将Xb更新为前述基于工序和机器的变邻域搜索输出的Xa对应的鲸鱼个体;令当前操作的AGV任务编号nb为1,令nb,max为当前操作的AGV小车的总任务数;
步骤b2:判断是否满足终止条件nb≥nb,max,如满足,输出Xb对应的鲸鱼个体作为步骤8)中鲸鱼种群的择优对象;否则,转步骤b3;
步骤b3:将当前操作的AGV任务分配给当前运输运行时间最小的AGV小车得到新个体X′b;如果f(X′b)<f(Xb),更新Xb←X′b;如果f(X′b)=f(Xb),则以0.5的概率更新Xb←X′b;否则,不更新Xb;然后更新nb←nb+1,转步骤b2;
其中,f(X′b)、f(X″b)分别表示个体X′b、X″b各自对应的AGV运输最大完工时间;
8)保持鲸鱼种群规模,选择较优鲸鱼个体进入下一次迭代,返回步骤3);
9)将当前记录的全局最优鲸鱼个体作为选择出的最优鲸鱼个体,根据最优鲸鱼个体对应的AGV与机器集成作业流程调度方案,执行AGV小车与机器的作业流程调度。
2.根据权利要求1所述基于离散鲸鱼优化算法的AGV与机器集成调度方法,其特征在于,所述调度任务参数包括工件的加工参数、AGV小车的运输运行参数、以及作业流程中转移运输区域的地图信息。
3.根据权利要求1所述基于离散鲸鱼优化算法的AGV与机器集成调度方法,其特征在于,所述步骤3)中,当前的全局最大完工时间最短的鲸鱼个体,是指到当前迭代次数为止的各次迭代中最大完工时间的值最短的鲸鱼个体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011632120.5A CN112783172B (zh) | 2020-12-31 | 2020-12-31 | 基于离散鲸鱼优化算法的agv与机器集成调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011632120.5A CN112783172B (zh) | 2020-12-31 | 2020-12-31 | 基于离散鲸鱼优化算法的agv与机器集成调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112783172A CN112783172A (zh) | 2021-05-11 |
CN112783172B true CN112783172B (zh) | 2023-03-31 |
Family
ID=75754791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011632120.5A Active CN112783172B (zh) | 2020-12-31 | 2020-12-31 | 基于离散鲸鱼优化算法的agv与机器集成调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112783172B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113671910B (zh) * | 2021-07-21 | 2022-09-27 | 华南理工大学 | 一种集成多agv柔性作业车间调度方法、装置及介质 |
CN113807604B (zh) * | 2021-10-08 | 2023-08-29 | 华南农业大学 | 基于改进鲸鱼算法的制造云服务优化选择方法及其应用 |
CN114003011B (zh) * | 2021-11-03 | 2023-08-15 | 盐城工学院 | 一种多载量agvs防死锁任务调度方法 |
CN114493181B (zh) * | 2022-01-04 | 2024-05-03 | 西安电子科技大学 | 一种智能仓储环境下的多负载agv任务调度方法 |
CN114841611A (zh) * | 2022-05-27 | 2022-08-02 | 盐城工学院 | 一种基于改进海洋捕食者算法求解作业车间调度的方法 |
CN114692345A (zh) * | 2022-06-02 | 2022-07-01 | 河南科技学院 | 一种起重机臂架生产智能调度方法 |
CN117371638B (zh) * | 2023-12-06 | 2024-02-20 | 合肥工业大学 | 基于浣熊优化算法的多鱼雷罐多轨道行走路径优化方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106409288A (zh) * | 2016-06-27 | 2017-02-15 | 太原理工大学 | 一种利用变异鱼群算法优化的svm进行语音识别的方法 |
CN109765893A (zh) * | 2019-01-17 | 2019-05-17 | 重庆邮电大学 | 基于鲸鱼优化算法的移动机器人路径规划方法 |
CN109784603A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于混合鲸鱼群算法求解柔性作业车间调度的方法 |
CN109886588A (zh) * | 2019-02-28 | 2019-06-14 | 长安大学 | 一种基于改进鲸鱼算法求解柔性作业车间调度的方法 |
CN110737951A (zh) * | 2019-09-04 | 2020-01-31 | 太原理工大学 | 一种基于高斯随机游走鲸鱼算法的旋风分离器结构参数整定方法 |
CN111597651A (zh) * | 2020-04-30 | 2020-08-28 | 上海工程技术大学 | 一种基于hwpso-svdd模型的滚动轴承性能退化评估方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636813B (zh) * | 2013-11-12 | 2018-02-06 | 中国科学院沈阳计算技术研究所有限公司 | 一种求解车间作业调度问题的混合遗传模拟退火算法 |
CN105512753A (zh) * | 2015-11-30 | 2016-04-20 | 清华大学 | 一种基于混合和声搜索的柔性作业车间调度方法 |
CN105512954A (zh) * | 2015-11-30 | 2016-04-20 | 清华大学 | 一种针对大规模柔性作业车间调度的集成搜索方法 |
CN107506956B (zh) * | 2017-06-12 | 2018-06-15 | 合肥工业大学 | 基于改进粒子群算法供应链生产运输协同调度方法及*** |
CN107301473B (zh) * | 2017-06-12 | 2018-06-15 | 合肥工业大学 | 基于改进遗传算法的同类平行机批调度方法及*** |
CN109784604A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于鲸鱼算法的柔性作业车间制造资源分配方法 |
CN110738365B (zh) * | 2019-10-09 | 2022-07-19 | 湖北工业大学 | 一种基于粒子群算法的柔性作业车间生产调度方法 |
CN111062533A (zh) * | 2019-12-16 | 2020-04-24 | 国家能源集团谏壁发电厂 | 一种基于鲸鱼优化算法优化加权最小二乘支持向量机的风机故障预测方法 |
CN111596658A (zh) * | 2020-05-11 | 2020-08-28 | 东莞理工学院 | 一种多agv无碰撞运行的路径规划方法及调度*** |
-
2020
- 2020-12-31 CN CN202011632120.5A patent/CN112783172B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106409288A (zh) * | 2016-06-27 | 2017-02-15 | 太原理工大学 | 一种利用变异鱼群算法优化的svm进行语音识别的方法 |
CN109784603A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于混合鲸鱼群算法求解柔性作业车间调度的方法 |
CN109765893A (zh) * | 2019-01-17 | 2019-05-17 | 重庆邮电大学 | 基于鲸鱼优化算法的移动机器人路径规划方法 |
CN109886588A (zh) * | 2019-02-28 | 2019-06-14 | 长安大学 | 一种基于改进鲸鱼算法求解柔性作业车间调度的方法 |
CN110737951A (zh) * | 2019-09-04 | 2020-01-31 | 太原理工大学 | 一种基于高斯随机游走鲸鱼算法的旋风分离器结构参数整定方法 |
CN111597651A (zh) * | 2020-04-30 | 2020-08-28 | 上海工程技术大学 | 一种基于hwpso-svdd模型的滚动轴承性能退化评估方法 |
Non-Patent Citations (4)
Title |
---|
Hybrid whale optimization algorithm enhanced with Lévy flight and differential evolution for job shop scheduling problems;Min Liu等;《Applied Soft Computing》;20191203;全文 * |
XIANGFEI LYU等.Approach to Integrated Scheduling Problems Considering Optimal Number of Automated Guided Vehicles and Conflict-Free Routing in Flexible Manufacturing Systems.《IEEE access》.2019,第74909-74924页. * |
基于鲸鱼群算法的柔性作业车间调度方法研究;付坤;《中国优秀博硕士学位论文全文数据库(硕士) 工程科技Ⅱ辑》;20200315;全文 * |
张斯琪 ; 倪静.混合鲸鱼算法在柔性作业车间***中的应用.***科学学报.2020,第28卷(第01期),第134-139页. * |
Also Published As
Publication number | Publication date |
---|---|
CN112783172A (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112783172B (zh) | 基于离散鲸鱼优化算法的agv与机器集成调度方法 | |
CN111985672B (zh) | 一种多Agent深度强化学习的单件作业车间调度方法 | |
Yamazaki et al. | Design method of material handling systems for lean automation—Integrating equipment for reducing wasted waiting time | |
Elmi et al. | Cyclic job shop robotic cell scheduling problem: Ant colony optimization | |
Liu et al. | An improved genetic algorithm with modified critical path-based searching for integrated process planning and scheduling problem considering automated guided vehicle transportation task | |
CN114237222B (zh) | 一种基于强化学习的取送货车辆路径规划方法 | |
CN113822525B (zh) | 基于改进遗传算法的柔性作业车间多目标调度方法及*** | |
CN109472362A (zh) | 一种基于可变任务窗的agv动态调度方法及装置 | |
CN112147960A (zh) | 一种柔性制造***优化调度方法及装置 | |
CN113240215B (zh) | 一种仓储agv的调度方法、***、存储介质及电子设备 | |
CN109581987B (zh) | 一种基于粒子群算法的agv调度路径规划方法及*** | |
CN110472765B (zh) | 一种车间布局调度的低熵协同优化方法 | |
CN107831740A (zh) | 一种应用于笔记本零件的分布式生产制造过程中的优化调度方法 | |
CN112465192B (zh) | 任务调度的方法、装置、设备及介质 | |
CN113516429B (zh) | 一种基于网络拥堵模型的多agv全局规划方法 | |
Sun et al. | An autonomous vehicle interference-free scheduling approach on bidirectional paths in a robotic mobile fulfillment system | |
Gu et al. | A discrete particle swarm optimization algorithm with adaptive inertia weight for solving multiobjective flexible job-shop scheduling problem | |
Jong et al. | The multi-layered job-shop automatic scheduling system of mould manufacturing for Industry 3.5 | |
CN112699544A (zh) | 一种多目标柔性作业车间调度方法 | |
CN114971317A (zh) | 一种基于改进遗传算法的设备排产和场内物流调度优化方法 | |
CN116957177A (zh) | 一种柔性车间产线规划方法、***、设备及介质 | |
Liu et al. | Research on flexible job shop scheduling optimization based on segmented AGV | |
CN116820058B (zh) | 考虑agv约束的液压缸工艺规划与调度集成优化方法 | |
Chiu et al. | Sequencing parallel machining operations by genetic algorithms | |
CN117314055A (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 |