1.一种基于灰雁优化和变邻域的分布式维修任务调度方法,其特征在于,所述调度方法包括:S1:设定任务数量为 以及团队数量 ,设定算法的迭代次数 和邻域结构数量,邻域搜索次数 ,初始迭代次数 ,初始化灰雁优化算法GGO参数;
S2:采用正实数编码方式对所有的任务分配次序进行编码,并随机生成一组初始解为种群 ( ), 为种群规模;
S3:采用启发式算法得出每个团队的工件任务分配和任务次序;
S4:计算所有群体中个体的适应度,选出最优的个体 ,令 , ;
S5:若 ,则跳到S6,否则跳到S8;
S6:若 ,则对当前最优解 执行邻域 产生新解 , ,否则, 并跳到S5;
S7:对 和 进行比较,若 ,则 , ,,跳到S6;
S8:使用灰雁优化算法的动态分群更新规则,根据当前最优解 的表现动态调整探索组和开发组的数量,并将种群的随机分为开发组种群( )和探索组种群( );
所述灰雁优化算法的动态分群更新规则为:计算每个个体的最小完成概率 ,找出最小完成概率 记作 ,根据 的变化情况调整探索组与开发组的数量,每个个体将依次被选择到探索组和开发组,每次迭代后个体的顺序将会随机变化;
S9:探索组进行全局搜索,开发组进行局部优化,更新种群中的个体, ;
S10:若 则停止算法,输出最优解V,否则跳到S4;
所述启发式算法的具体步骤为:S31:将任务按照实际执行时间的均值与方差之和的非减序排列;
S32:将第 个任务分配给第 个团队, , ;
S33:设定分配任务集 ,并计算当前平均负载 ;
S34:计算每个团队的相对平均负载 ,其中 表示机器 当前完成时间的标准差;
S35:将第 个任务分配给相对平均负载最小的团队;
S36:若 ,则确定了所有团队的任务分配和执行次序;否则设定 并回到S32。
2.根据权利要求1所述的一种基于灰雁优化和变邻域的分布式维修任务调度方法,其特征在于:所述S2中编码的解向量为 ,其中为1至 中的任一整数, 的值表示第 个任务分配到的对应团队。
3.根据权利要求1所述的一种基于灰雁优化和变邻域的分布式维修任务调度方法,其特征在于,所述S1中邻域结构共有三个:邻域结构 :将完成概率最小的团队上随机选取一个任务转移到其他团队;
邻域结构 :交换来自不同团队的两个任务;
邻域结构 :逆转一部分的代码。
4.根据权利要求1所述的一种基于灰雁优化和变邻域的分布式维修任务调度方法,其特征在于,所述探索组与开发组的数量调整过程为:(1)初始化 ;
(2)若连续三次迭代的最佳个体适应度 存在且满足 ,则跳到步骤(3);否则跳到步骤(4);
(3)增加探索组个体数量 ,减少开发组个体数量 ,跳到步骤(4);
(4)令 ,若 ,则跳到步骤(2);否则结束。
5.根据权利要求4所述的一种基于灰雁优化和变邻域的分布式维修任务调度方法,其特征在于:所述探索组在每次迭代 的搜索更新过程为:(1) ;
(2)对探索组中的个体位置,若 ,跳到步骤(3);否则跳到步骤(8);
(3)若 ,跳到步骤(4);否则跳到步骤(7);
(4)若 ,跳到步骤(5);否则跳到步骤(6);
(5) ,跳到步骤(9);
(6) ,
跳到步骤(9);
(7) ,
跳到步骤(9);
(8) ,跳到步骤(9);
(9)令 ,若 ,则跳到步骤(8);否则结束本次迭代;
其中, 和 为动态探索向量, , , 参数从2线性变化到
0; 和 ( )的计算公式分别和 , 保持一致; , 和在 内随机取值, 和 在 内进行更新;权重参数在 内进行更新;指数衰减参数 ,用于调整步长;在 内随机取值; 为勘探距离系数, 和 为常数;
是当前迭代 中的个体位置, 是迭代 中的最优个体位置, 是下一次迭代的个体位置, , 和 是探索组中的3个随机个体,, 和 是开发组中选出的最靠近 的3个哨兵个体;
是探索组中多个个体的某种汇总结果,帮助个体朝着群体的整体最佳方向搜索。
6.根据权利要求5所述的一种基于灰雁优化和变邻域的分布式维修任务调度方法,其特征在于,所述开发组在每次迭代 的搜索更新过程为:(1) ;
(2)对探索组中的个体位置,若 ,跳到步骤(3),否则跳到步骤(4);
(3)计算
,
,跳到步骤(5);
(4)若 ,跳到步骤(5);
(5)令 ,若 ,则跳到步骤(2);否则结束本次迭代。