自适应樽海鞘群算法求解考虑运输时间的柔性作业车间调度
Adaptive salp swarm algorithm for solving flexible job shop scheduling problem with transportation time
通讯作者:
收稿日期: 2022-07-26
Received: 2022-07-26
作者简介 About authors
牛昊一(1995—),男,博士生,从事智能优化算法的研究.orcid.org/0000-0001-7116-1440.E-mail:
针对考虑运输时间的柔性作业车间调度问题,以最小化最大完工时间为优化目标,提出自适应樽海鞘群算法. 设计基于随机密钥方法的3层编码方案,将编码的离散解空间连续化. 引入惯性权重评价跟随者之间的相互影响程度,增强算法的全局探索与局部搜索能力. 提出自适应更新领导者-跟随者种群数量策略,根据种群迭代状态对领导者和跟随者的数量进行自适应调整. 在邻域搜索中引入禁忌搜索策略,防止算法陷入局部最优. 通过基准算例测试,验证了算法的有效性和优越性,发现AGV数量对完工时间的影响符合边际效应递减的规律.
关键词:
An adaptive salp swarm algorithm was proposed by minimizing the makespan in order to solve the flexible job shop scheduling problem with transportation time. A three-layer coding scheme was designed based on random key in order to make the discrete solution space continuous. The inertia weight was introduced to evaluate the influence among followers in order to enhance the global exploration and local search performance of the algorithm. An adaptive leader-follower population update strategy was proposed, and the number of leaders and followers was adjusted by the population status. The tabu search strategy was combined with the neighborhood search in order to prevent the algorithm from falling into local optimum. The benchmark instances verified the effectiveness and superiority of the proposed algorithm. The influence of the number of AGVs on the makespan conforms to the law of diminishing marginal effect.
Keywords:
本文引用格式
牛昊一, 吴维敏, 章庭棋, 沈微, 张涛.
NIU Hao-yi, WU Wei-min, ZHANG Ting-qi, SHEN Wei, ZHANG Tao.
樽海鞘群算法(salp swarm algorithm, SSA)是由Mirjalili等[11]提出的新型智能群体算法,具有控制参数少、计算量小且求解性能优秀的特点,已被成功应用于如目标分类问题[12]和无源时差定位问题[13]领域. 该算法在生产调度领域的研究尚不多见,现有成果仅有针对普通柔性作业车间调度的研究[14]. 基础樽海鞘群算法存在迭代后期容易陷入局部最优、搜索精度下降、求解结果不稳定等问题. 为此,许多学者针对基础樽海鞘群算法作出相应的改进,采用混沌映射[15]、融合时变惯性权重因子[16]和虚拟种群[17]等方式提高SSA算法在搜索最优解时的性能,但在应用于柔性作业车间调度问题时仍有进一步改进的空间.
针对考虑运输时间的柔性作业车间调度问题,本文提出自适应樽海鞘群算法(adaptive salp swarm algorithm,ASSA). 通过基于随机密钥的3层编码方式实现离散调度解的连续编码,设计惯性权重策略和自适应更新领导者-跟随者数量策略,使得领导者更好地引导跟随者进行搜索,引入禁忌搜索策略增强算法的局部搜索能力.通过基准算例进行仿真测试,验证所提算法的性能,采用边际效应理论研究AGV数量对完工时间的影响.
1. 问题描述与数学模型
1.1. 问题描述
考虑运输时间的柔性作业车间调度问题可以描述如下. 有N个工件在M台机器上加工,每个工件至少有一道加工工序,每道工序至少有一台可选择的加工机器. 有S辆AGV负责搬运工件,每个工件在完成当前工序后由AGV运输到下一台机器进行后续工序的加工. AGV在机器间搬运工件时存在一定的运输时间. 每个工件由作业车间的物料传送装置,即装载站台,传送进作业车间,再由AGV按照工序将工件运输至加工机器. 除此之外,本文遵循以下假设.
1)柔性作业车间内的生产设备由装载站台和加工机器组成.
2)各加工机器的缓存区容量无限.
3)零时刻所有待加工工件和AGV的起始位置都在装载站台.
4)同一个工件的相邻工序在同一台机器上进行加工,不需要AGV进行运输.
5)AGV在完成运输任务后停靠在当前加工机器站台,等待被安排下一个运输任务.
6)不考虑AGV在运输过程中产生的死锁和碰撞.
7)生产过程具有稳定性,不考虑加工机器故障、工件疲劳和恶化等效应.
1.2. 数学模型
以最小化最大完工时间为优化目标,建立数学模型. 目标函数及相关约束的描述如下.
式中:Cmax为所有工件的最大完工时间;
约束条件为
式中:j表示工序编号,对于工件i,取值为
式中:
式中:
式中:STs为AGV s运输工件的开始时间;
式中:
目标函数(1)表示最小化所有工件的最大完工时间,即Makespan. 约束(2)限制了每个工件的最大完工时间不早于任意一道工序的完工时间. 约束(3)表示每个工件在机器上的开始加工时间取决于AGV运输工件到达的时间和该机器上一道工序结束加工时间的较大值. 约束(4)表示每个工件在机器上的加工完成时间等于开始加工时间和所需加工时间之和. 约束(5)表示每个工件的任意一道工序的加工开始时刻不小于上一道工序的结束加工时间. 约束(6)表示各工件的开始运输时间至少大于其结束加工时间. 约束(7)表示每个工件开始运输的时间取决于AGV到达机器的时间和加工完成时间的较大值. 约束(8)表示每个工件的结束运输时间等于开始运输时间和AGV在机器间的移动时间之和. 约束(9)表示同一时刻任意一道工序只能在一台机器上加工. 约束(10)表示同一时刻任意一辆AGV只能运输一个工件. 约束(11)表示同一时刻任意一辆空闲AGV的位置只能是一个站台. 约束(12)限制了决策变量的取值范围.
2. 自适应樽海鞘群算法
2.1. 基础樽海鞘群算法
在组成樽海鞘链的所有个体中,根据每个个体在樽海鞘链中的位置可以将其分为2类:领导者和跟随者. 领导者是位于链条前部的樽海鞘个体,其余的樽海鞘个体是跟随者. 领导者负责带领其他个体在搜索空间内寻找食物源,跟随者在领导者的带领下进行局部搜索. 2类樽海鞘个体间通过互相协作运动,达到寻找食物源(即全局最优解)的目的. 基础樽海鞘群算法(SSA)的算法步骤如下.
1)种群初始化. 随机初始化i个樽海鞘个体的位置
2)根据目标函数计算每个樽海鞘个体的适应度,根据适应度对种群中的个体进行排序,拥有最优适应度的个体为食物源的初始位置.
3)对种群中樽海鞘个体的位置进行更新.领导者的位置更新按照下式:
式中:t为当前迭代次数;
式中:t为当前迭代次数,
式中:
4)对计算得到的所有樽海鞘个体的每一维位置进行上、下边界处理,更新每个个体的适应度,用全局最优适应度对应的个体替换食物源的位置.
5)判断是否满足停止迭代的条件. 若满足,则输出结果;否则,转步骤3)继续下一轮迭代.
2.2. 自适应樽海鞘群算法
2.2.1. 编码与解码策略
由于考虑运输时间的柔性作业车间调度问题涉及工序、机器和AGV 3个维度,基于3层编码方式构建调度解,分别为工序排列编码(operation code,OC)、机器选择编码(machine selection code,MSC)和AGV选择编码(AGV selection code,ASC). 工序排列编码中的各元素表示工件的编号,工件号在编码中从左到右的出现次数对应工件的工序数;机器选择编码和AGV选择编码中的各元素分别表示工件工序对应选择的加工机器编号和AGV编号. 如图1所示为由3个工件、2台加工机器和2辆AGV组成的柔性作业车间的一个可行的调度编码方案.
图 1
图 2
在确定了工序排列编码后,需要确认机器选择编码和AGV选择编码. 若采用排序编码的随机选择方式,则会产生一定数量的无效解,无法满足AGV设备的移动与加工工序之间的耦合约束,导致种群质量下降. 基于启发式的解码方式,根据初始化个体的每道工序安排最早运输的AGV和最早加工完成的机器,具体步骤如下.
1)遍历初始化的工序排列编码的每道工序,判断该工件的上一道工序的加工机器位置是否有空闲AGV. 若有,则选择该AGV进行搬运;否则选择到达该加工机器移动时间最少的AGV进行运输,直到安排完所有工序,可以确定AGV选择编码.
2)在确定AGV选择编码后,遍历工序排列编码的每道工序. 在满足AGV资源约束和加工机器约束的条件下选择最早完成加工的机器,直到安排完所有工序,可以确定机器选择编码.
2.2.2. 惯性权重策略
从式(15)可知,在基础SSA算法中,跟随者的位置每次迭代只由上一次迭代的第i−1只个体和第i只个体的位置确定. 这虽然是樽海鞘群体行为的数学模型体现,但式(15)体现的是盲目跟随的行为. 基础SSA算法没有考虑前一个跟随者对后一个跟随者的影响,在迭代过程中只是单向地接受历史信息来更新后者的当前位置,这会限制算法在迭代后期的搜索效率.
引入与迭代次数相关的非线性递减惯性权重来,评估第i−1只跟随者对第i只跟随者的影响程度. 自适应地调整迭代前期和后期搜索侧重方向,使得领导者个体更好地引导跟随者个体进行搜索. 在迭代前期,后一个跟随者受前一个跟随者的影响较大,能够快速地搜索到全局最优解的附近区域.在迭代后期,由于大部分樽海鞘个体已搜索到较优值,降低前者对后者的影响,可以使得跟随者在较优解的附近深度搜索,提升算法的收敛精度. 惯性权重的计算方式如下:
结合式(15)、(16)可知,新的樽海鞘跟随者的位置更新公式为
式中:
2.2.3. 自适应更新领导者-跟随者种群数量策略
在基础SSA算法中,樽海鞘群体的领导者数量和跟随者数量通常设置为固定值,这使得在迭代前期,领导者数量过低导致算法全局寻优能力下降,容易早熟收敛. 在迭代后期,跟随者数量过低导致算法局部搜索能力下降,寻优精度不高. 固定种群数量的方法未充分考虑每轮迭代的个体位置、适应度和种群所处实际环境等因素,无法体现群体行为的自适应搜索过程.
针对该问题,提出基于种群更新成功率的自适应更新领导者-跟随者种群数量策略,使得樽海鞘领导者和跟随者的数量可以根据种群每次迭代的状态自适应地进行调整. 种群更新成功率的定义如下.
式中:
为了减少迭代初期和后期种群更新成功率可能存在的不稳定取值对搜索造成的影响,定义与迭代次数相关的非线性递减系数:
结合式(18)、(20),可得自适应更新领导者-跟随者种群数量的计算公式:
式中:
通过式(21)、(22)可知,在迭代前期,较多个体分散于搜索空间内,适应度降低的个体较多,导致
2.2.4. 禁忌搜索策略
为了增强算法的邻域搜索能力,避免早熟收敛,引入禁忌搜索策略,在每轮迭代后对每个个体的工序排列编码、机器选择编码和AGV选择编码的邻域分别进行探索. 算法只在符合加工工序约束的解中进行搜索,步骤如下.
1)工序排列编码邻域搜索. 随机选择加工机器k和生成操作子r
图 3
2)机器选择编码邻域搜索. 随机选择工件i,在工件i的所有工序中随机选择一道工序j,在所有可加工机器中随机选择机器l替换原工序位置的机器k,将
3)AGV选择编码邻域搜索. 随机选择工件i,在工件i的所有工序中随机选择一道工序j,在所有可选择运输AGV中随机选择AGV p替换原工序位置的AGV s,将
4)对搜索得到的工序排序编码、机器选择编码和AGV选择编码计算得到适应度,判断是否优于原编码方案的适应度. 若是,则替换原编码方案,更新个体历史全局最优解,并清空该个体的禁忌表. 否则,对下个个体进行搜索,直至所有个体遍历完毕.
如图4所示为采用禁忌搜索策略的邻域搜索方法的流程图.
图 4
2.2.5. 自适应樽海鞘群算法的流程
基于设计的算法策略,对基础樽海鞘群算法改进后得到的自适应樽海鞘群算法的算法流程如图5所示.
图 5
1)初始化算法参数,包括种群规模I、初始迭代次数、tmax、扰动系数q、初始种群更新成功率
2)结合2.2.1节的3层编码策略,生成初始种群.
3)采用式(17)、(21),更新樽海鞘链中的个体位置和种群领导者数量.
4)计算个体适应度,使用2.2.4节的禁忌搜索策略对当前种群个体进行深度搜索,计算当前迭代种群的更新成功率
5)判断算法是否达到最大迭代次数限制. 若未达到,转至步骤3);否则,输出最优解及目标值.
2.2.6. 时间复杂度分析
对于需要求解的优化问题,假设目标函数的计算量为Cof,解空间维度为D,樽海鞘种群大小为I. 根据基础SSA算法的求解步骤及时间复杂度的计算方法可知,基础SSA算法的时间复杂度为
根据2.2.5节的算法步骤可以看出,
3. 实验结果与分析
3.1. 实验设计
为了验证提出算法的性能,在硬件为i7-10710U、内存为16 GB、操作系统为WIN10的PC机上采用Python语言实现了算法. 仿真算例采用Bilge等[18]提出的部分案例,使用加工机器与装载站台组成4种布局. 所有案例分为2类:1)第1类案例命名如“EX12”,表示工件组为jobset1,布局为layout2;第2类案例命名如“EX120”,表示工件组为jobset1,布局为layout2,0表示案例设置的运输时间和加工时间比值
式中:
3.2. 改进策略有效性的分析
为了说明提出的改进策略的有效性,将采用惯性权重策略的樽海鞘群算法记作WSSA,采用自适应领导者-跟随者种群数量更新策略的樽海鞘群算法记作LSSA,采用禁忌搜索策略的樽海鞘群算法记作TSSA,综合改进后的樽海鞘群算法记作ASSA,选取EX11-EX51及EX64-EX104共10个案例进行测试. 算法在每个案例上运行10次,得到的解质量对比结果如表1所示.
表 1 不同改进策略的加工完成时间对比结果
Tab.1
案例 | SSA | WSSA | LSSA | TSSA | ASSA | ||||||||||||||
| | | | | | | | | | | | | | | |||||
EX11 | 96 | 98 | 0 | 96 | 97.4 | 0 | 96 | 97.8 | 0 | 96 | 96.8 | 0 | 96 | 96 | 0 | ||||
EX21 | 106 | 108.8 | 3.92 | 105 | 108.3 | 2.94 | 106 | 108.9 | 3.92 | 104 | 106.9 | 1.96 | 102 | 103.4 | 0 | ||||
EX31 | 107 | 111.7 | 8.08 | 108 | 111.8 | 9.09 | 110 | 113.7 | 11.11 | 113 | 108.5 | 14.14 | 99 | 103.7 | 0 | ||||
EX41 | 122 | 125.4 | 8.93 | 119 | 125.4 | 6.25 | 121 | 124.1 | 8.04 | 120 | 122.5 | 7.14 | 112 | 114.8 | 0 | ||||
EX51 | 88 | 89.2 | 1.15 | 88 | 89.6 | 1.49 | 88 | 90.2 | 1.15 | 88 | 88.5 | 1.15 | 87 | 87.1 | 0 | ||||
EX64 | 136 | 140 | 13.33 | 134 | 138.9 | 11.67 | 128 | 137.9 | 6.67 | 130 | 137.2 | 8.33 | 120 | 126 | 0 | ||||
EX74 | 142 | 145 | 10.94 | 136 | 142.8 | 6.25 | 142 | 145.3 | 10.94 | 136 | 142.8 | 6.25 | 128 | 133 | 0 | ||||
EX84 | 165 | 171.1 | 1.23 | 165 | 171.3 | 1.23 | 165 | 170.6 | 1.23 | 166 | 170.4 | 1.84 | 163 | 163 | 0 | ||||
EX94 | 128 | 133.5 | 6.67 | 131 | 133.8 | 9.17 | 128 | 131.3 | 6.67 | 123 | 128.7 | 2.50 | 120 | 122.6 | 0 | ||||
EX104 | 175 | 182.8 | 10.06 | 179 | 183.2 | 12.58 | 174 | 180.5 | 9.43 | 171 | 179.1 | 7.55 | 159 | 166.5 | 0 | ||||
平均值 | — | — | 6.43 | — | — | 6.07 | — | — | 5.92 | — | — | 5.09 | — | — | 0.0 |
从表1可以看出,本文提出的ASSA算法在全部案例中取得的最优解均较好.比较WSSA算法与SSA算法可知,WSSA有4个案例的最优解好于SSA算法,3个案例的最优解与SSA算法相同,这说明惯性权重策略能够在SSA算法的基础上明显改善算法的全局和局部探索能力,但在迭代后期有陷于过早收敛的可能性,导致结果变差. 比较LSSA算法与SSA算法可知,LSSA算法有3个案例的最优解好于SSA算法,6个案例的最优解与SSA算法相同,LSSA所有案例PRD结果的平均值优于SSA算法,这说明LSSA算法在迭代后期可以在最优解附近深度搜索,从而保持较强的局部探索能力. 比较TSSA算法与SSA算法可以看出,TSSA算法有6个案例的最优解好于SSA算法,2个案例的最优解与SSA算法相同,这说明引入禁忌搜索策略能够有效避免算法在后期计算中陷入局部最优,改善解的质量.
如图6所示为采用不同改进策略的樽海鞘群算法求解EX104的收敛曲线.可以看出,在相同参数设置的情况下,ASSA算法综合体现了改进策略的优势,有效地平衡了算法的全局探索和局部搜索能力,能够不断地在较短的迭代周期内搜索到更优的解,提升了算法的收敛速度和收敛精度,证明本文提出的改进策略对于求解该类调度问题是有效的.
图 6
图 6 采用不同改进策略求解EX104的收敛曲线
Fig.6 Convergence curves of solving EX104 with different improved strategies
3.3. 自适应樽海鞘群算法性能的对比
为了进一步验证ASSA算法的有效性,选择AGA算法(adaptive genetic algorithm)[6]、IDSSA算法(improved discretized salp swarm algorithm)[14]、AAADE算法(artificial algae algorithm with differential evolution)[19]和MOGWO算法(multi-objective grey wolf optimization)[20]进行对比. 4种算法均使用原文推荐参数进行测试,结果如表2、3所示.为了验证提出的模型和算法求解最优解的性能,使用GUROBI求解器(Gurobi solver)与ASSA算法获得的结果进行对比,GUROBI的运行上限时间设置为600 s,结果如表4所示.
表 2
不同优化算法的实验测试结果(
Tab.2
案例 | AGA | IDSSA | AAADE | MOGWO | ASSA | ||||||||||||||
| | | | | | | | | | | | | | | |||||
EX11 | 6.37 | 96 | 0 | 7.78 | 97 | 1.04 | 5.46 | 96 | 0 | 8.83 | 96 | 0 | 5.04 | 96 | 0 | ||||
EX21 | 19.97 | 102 | 0 | 15.21 | 104 | 1.96 | 13.63 | 102 | 0 | 21.00 | 103 | 0.98 | 13.27 | 102 | 0 | ||||
EX32 | 6.91 | 85 | 0 | 7.25 | 85 | 0 | 5.15 | 86 | 1.77 | 4.78 | 86 | 1.77 | 4.71 | 85 | 0 | ||||
EX42 | 28.85 | 88 | 0 | 31.78 | 88 | 0 | 26.55 | 88 | 0 | 35.19 | 88 | 0 | 26.03 | 88 | 0 | ||||
EX53 | 8.71 | 74 | 0 | 11.61 | 74 | 0 | 6.02 | 76 | 2.70 | 8.00 | 76 | 2.70 | 5.68 | 74 | 0 | ||||
EX63 | 17.16 | 104 | 0.97 | 23.01 | 107 | 3.89 | 15.63 | 103 | 0 | 23.67 | 104 | 0.97 | 15.11 | 103 | 0 | ||||
EX74 | 23.90 | 127 | 0 | 26.29 | 130 | 2.36 | 18.68 | 128 | 0.79 | 18.42 | 130 | 2.36 | 18.18 | 128 | 0.79 | ||||
EX84 | 18.75 | 163 | 0 | 23.15 | 165 | 1.23 | 15.79 | 163 | 0 | 17.46 | 170 | 4.29 | 15.23 | 163 | 0 | ||||
EX94 | 6.81 | 122 | 1.67 | 8.76 | 125 | 4.17 | 6.33 | 120 | 0 | 7.58 | 122 | 1.67 | 5.87 | 120 | 0 | ||||
EX104 | 14.74 | 159 | 0 | 18.13 | 165 | 3.77 | 12.04 | 159 | 0 | 19.79 | 160 | 0.63 | 11.50 | 159 | 0 | ||||
平均值 | 15.22 | — | 0.26 | 17.30 | — | 1.84 | 12.53 | — | 0.53 | 16.47 | — | 1.54 | 12.06 | — | 0.08 |
表 3
不同优化算法的实验测试结果(
Tab.3
案例 | AGA | IDSSA | AAADE | MOGWO | ASSA | ||||||||||||||
| | | | | | | | | | | | | | | |||||
EX110 | 1.33 | 126 | 0 | 1.76 | 126 | 0 | 0.70 | 126 | 0 | 0.91 | 126 | 0 | 0.36 | 126 | 0 | ||||
EX210 | 1.68 | 148 | 0 | 1.90 | 148 | 0 | 0.82 | 148 | 0 | 1.06 | 148 | 0 | 0.44 | 148 | 0 | ||||
EX320 | 1.38 | 145 | 0 | 1.78 | 148 | 2.07 | 0.84 | 145 | 0 | 1.57 | 145 | 0 | 0.46 | 145 | 0 | ||||
EX420 | 9.50 | 114 | 0 | 10.31 | 114 | 0 | 6.85 | 114 | 0 | 7.79 | 114 | 0 | 6.40 | 114 | 0 | ||||
EX530 | 1.32 | 99 | 0 | 1.12 | 99 | 0 | 0.53 | 99 | 0 | 1.09 | 99 | 0 | 0.19 | 99 | 0 | ||||
EX630 | 5.82 | 182 | 0 | 7.22 | 182 | 0 | 5.12 | 182 | 0 | 8.34 | 182 | 0 | 4.65 | 182 | 0 | ||||
EX740 | 4.99 | 137 | 0 | 5.24 | 137 | 0 | 3.12 | 137 | 0 | 3.85 | 137 | 0 | 2.65 | 137 | 0 | ||||
EX840 | 1.49 | 293 | 0 | 2.29 | 294 | 0.34 | 0.78 | 293 | 0 | 1.06 | 293 | 0 | 0.28 | 293 | 0 | ||||
EX940 | 8.27 | 175 | 0 | 11.50 | 175 | 0 | 6.51 | 175 | 0 | 12.24 | 175 | 0 | 6.12 | 175 | 0 | ||||
EX1040 | 33.25 | 240 | 0 | 37.28 | 240 | 0 | 24.98 | 240 | 0 | 43.53 | 240 | 0 | 24.49 | 240 | 0 | ||||
平均值 | 6.9 | — | 0.0 | 8.04 | — | 0.24 | 5.03 | — | 0.0 | 8.14 | — | 0.0 | 4.6 | — | 0.0 |
表 4 ASSA算法与GUROBI求解器的实验测试结果
Tab.4
案例 | ASSA | GUROBI | 案例 | ASSA | GUROBI | |||||||||||
| | | | | | | | | | | | |||||
EX11 | 5.04 | 96 | 0 | 59.29 | 96 | 0 | EX110 | 0.36 | 126 | 0 | 15.61 | 126 | 0 | |||
EX21 | 13.27 | 102 | 0 | 146.46 | 102 | 0 | EX210 | 0.44 | 148 | 0 | 14.56 | 148 | 0 | |||
EX32 | 4.71 | 85 | 0 | 60.41 | 85 | 0 | EX320 | 0.46 | 145 | 0 | 16.22 | 145 | 0 | |||
EX42 | 26.03 | 88 | 0 | 323.05 | 88 | 0 | EX420 | 6.40 | 114 | 0 | 53.12 | 114 | 0 | |||
EX53 | 5.68 | 74 | 0 | 83.67 | 74 | 0 | EX530 | 0.19 | 99 | 0 | 13.64 | 99 | 0 | |||
EX63 | 15.11 | 103 | 0 | 196.18 | 103 | 0 | EX630 | 4.65 | 182 | 0 | 41.32 | 182 | 0 | |||
EX74 | 18.18 | 128 | 0 | 231.56 | 128 | 0 | EX640 | 5.41 | 184 | 0 | 45.48 | 184 | 0 | |||
EX84 | 15.23 | 163 | 0 | 171.99 | 163 | 0 | EX740 | 2.65 | 137 | 0 | 32.03 | 137 | 0 | |||
EX94 | 5.87 | 120 | 0 | 71.66 | 120 | 0 | EX741 | 1.78 | 203 | 0 | 19.70 | 203 | 0 | |||
EX104 | 11.50 | 159 | 0 | 134.67 | 159 | 0 | EX840 | 0.28 | 293 | 0 | 12.07 | 293 | 0 | |||
平均值 | 12.06 | — | 0.0 | 147.89 | — | 0.0 | 平均值 | 2.26 | — | 0.0 | 26.38 | — | 0.0 |
从表4的统计结果可以看出,ASSA算法能够在更短时间内找到与GUROBI一致的最优解. GUROBI分别需要平均运行147.89和26.38 s进行迭代求解,ASSA算法的平均运行时间只需要12.06和2.26 s,显示了调度模型和ASSA算法搜索精确解的可靠性和高效性.
综合来看,在所有的测试案例中,利用ASSA算法能够较好地在更短时间内求解可行解,这说明ASSA在面对不同的调度场景时,有更大的概率可以搜索到最优解,具有良好的搜索性能,能够更加高效地获得更好的调度结果.实验测试结果表明,本文提出的ASSA算法与AGA算法、IDSSA算法、AAADE算法和MOGWO算法相比,具有更高的计算效率和寻优性能,在求解考虑运输时间的柔性作业车间调度问题方面具有较明显的优势,是鲁棒、高效的求解算法.
3.4. AGV数量对完工时间的影响
在含有AGV的柔性作业车间中,AGV的数量对于调度效率的提升有着至关重要的影响. 为了研究该问题,引入经济学中的边际效应理论[21],分析AGV数量对实验案例完工时间的影响程度.
边际效应(marginal utility, MU)是指每新增或减少一个单位的商品或服务,它对商品或服务的收益增加或减少的效用. 在本文所涉及到的研究中,商品指AGV,收益是指完工时间(makespan). 评估AGV边际效应的计算公式如下:
式中:
表 5 不同数量AGV的实验测试结果
Tab.5
案例 | Cmax | ||||
S = 2 | S = 3 | S = 4 | S = 5 | S = 6 | |
EX11 | 96 | 86 | 76 | 76 | 76 |
EX21 | 102 | 86 | 86 | 86 | 86 |
EX31 | 99 | 88 | 88 | 88 | 88 |
EX41 | 112 | 89 | 83 | 78 | 78 |
EX51 | 87 | 70 | 65 | 65 | 65 |
EX61 | 118 | 108 | 108 | 108 | 108 |
EX71 | 113 | 89 | 78 | 77 | 77 |
EX81 | 161 | 161 | 161 | 161 | 161 |
EX91 | 116 | 107 | 105 | 105 | 105 |
EX101 | 147 | 136 | 133 | 133 | 133 |
图 7
4. 结 语
针对考虑运输时间的柔性作业车间调度问题,本文提出自适应樽海鞘群算法ASSA. 设计基于随机密钥的3层编码方式,将编码的离散解空间连续化,引入惯性权重评价跟随者之间的相互影响程度. 提出自适应更新领导者-跟随者种群数量策略调整种群数量,引入禁忌搜索策略,使得算法具有较强的局部搜索能力. 通过与其他智能优化算法和求解器的对比,证明了ASSA在求解此类问题方面具有明显优势. 此外,发现完工时间的提升效率随着AGV数量的增加呈现递减规律.下一步工作将针对各类生产调度问题开展进一步研究,如多目标优化问题、考虑充电这些实际约束下的车辆调度问题.
参考文献
混合灰狼优化算法求解柔性作业车间调度问题
[J].DOI:10.13195/j.kzyjc.2017.0124 [本文引用: 2]
Flexible job shop scheduling problem with hybrid grey wolf optimization algorithm
[J].DOI:10.13195/j.kzyjc.2017.0124 [本文引用: 2]
AGV scheduling for automated material distribution: a case study
[J].DOI:10.1007/s10845-009-0283-9 [本文引用: 1]
Scheduling of no Buffer job shop cells with blocking constraints and automated guided vehicles
[J].
A Tabu search algorithm for simultaneous machine/AGV scheduling problem
[J].DOI:10.1080/00207543.2014.910628 [本文引用: 1]
Multi-objective AGV scheduling in an FMS using a hybrid of genetic algorithm and particle swarm optimization
[J].
Scheduling of machines and automated guided vehicles in FMS using differential evolution
[J].DOI:10.1080/00207540903049407 [本文引用: 2]
A multi-agent based approach to dynamic scheduling of machines and automated guided vehicles in manufacturing systems
[J].DOI:10.1016/j.asoc.2012.02.001 [本文引用: 1]
含有AGV的柔性车间调度优化研究
[J].DOI:10.3969/j.issn.1001-3695.2018.11.017 [本文引用: 1]
Research on flexible job-shop scheduling problem with AGV constraints
[J].DOI:10.3969/j.issn.1001-3695.2018.11.017 [本文引用: 1]
A hybrid GA/heuristic approach to the simultaneous scheduling of machines and automated guided vehicles
[J].DOI:10.1080/0020754032000123579 [本文引用: 1]
Simultaneous scheduling of machines and transport robots in flexible job shop environment using hybrid metaheuristics based on clustered holonic multiagent model
[J].
Salp swarm algorithm: a bio-inspired optimizer for engineering design problems
[J].
Passive sonar target classification using multi-layer perceptron trained by salp swarm algorithm
[J].DOI:10.1016/j.oceaneng.2019.04.013 [本文引用: 1]
基于樽海鞘群算法的无源时差定位
[J].DOI:10.11999/JEIT170979 [本文引用: 1]
Time difference of arrival passive location based on salp swarm algorithm
[J].DOI:10.11999/JEIT170979 [本文引用: 1]
A novel chaotic salp swarm algorithm for global optimization and feature selection
[J].DOI:10.1007/s10489-018-1158-6 [本文引用: 1]
Improved salp swarm algorithm based on weight factor and adaptive mutation
[J].DOI:10.1080/0952813X.2019.1572659 [本文引用: 1]
Novel bio-inspired memetic salp swarm algorithm and application to MPPT for PV systems considering partial shading condition
[J].DOI:10.1016/j.jclepro.2019.01.150 [本文引用: 1]
A time window approach to simultaneous scheduling of machines and material handling system in FMS
[J].DOI:10.1287/opre.43.6.1058 [本文引用: 1]
Energy-efficient scheduling for multi-objective flexible job shops with variable processing speeds by grey wolf optimization
[J].DOI:10.1016/j.jclepro.2019.06.151 [本文引用: 1]
An improved artificial algae algorithm integrated with differential evolution for job-shop scheduling problem
[J].DOI:10.1007/s10845-021-01888-8 [本文引用: 1]
企业知识型员工激励边际递减效用的优化策略探究
[J].DOI:10.3969/j.issn.1004-292X.2018.01.004 [本文引用: 1]
Study on optimization strategy of enterprise knowledge workers’ incentive marginal utility
[J].DOI:10.3969/j.issn.1004-292X.2018.01.004 [本文引用: 1]
/
〈 |
|
〉 |
