[发明专利]基于量子候鸟优化算法求解无等待流水调度问题的方法有效
申请号: | 201811655018.X | 申请日: | 2018-12-30 |
公开(公告)号: | CN109829535B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 齐学梅;陈林烽;陈俊文;陈付龙;程桂花 | 申请(专利权)人: | 安徽师范大学 |
主分类号: | G06N3/006 | 分类号: | G06N3/006;G06Q10/0631;G06Q10/0633;G06Q50/04 |
代理公司: | 芜湖安汇知识产权代理有限公司 34107 | 代理人: | 马荣 |
地址: | 241000 安徽省*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 量子 候鸟 优化 算法 求解 等待 流水 调度 问题 方法 | ||
1.基于量子候鸟优化算法求解无等待流水调度问题的方法,其特征在于:包括如下步骤:
S1、分析无等待流水调度问题;
S2、运用量子候鸟协同优化算法在无等待流水调度的约束条件下求解;
S3、得出各规模工件的生产次序及对应的最大完工时间;
在步骤S1中分析无等待流水调度问题的方法为:
S11、n个工件在m台机器上加工,所有工件在各机器上的加工路线均相同;
S12、某一时刻一个工件只能在一台机器上加工,一台机器在某一时刻只能加工一个工件,同一工件在相邻两道工序之间没有等待时间,每个工件在每道工序的加工时间已知;
S13、安排各工件的生产次序,使得调度指标最小,所述调度指标是指最大完工时间;
步骤S13中调度指标计算方法为:
S131、设工件数为{1,2,…,n}和机器数为{1,2,…,m},Pu,v为工件u在机器v上的加工时间,u∈{1,2,…,n},v∈{1,2,…,m};
S132、Ck,i为机器i上第k个工件的完工时间,k∈{2,…,n};
S133、π为工件按照一定加工次序形成的序列,记为{π1,π2,…πk};由于受到工件加工过程无等待的约束,相邻的工件πk-1和πk之间存在一个开工时间差,记为Cmax(π)为序列π的最大完工时间;
S134、开工时间差的计算公式为:
最大完工时间计算公式为:
通过求得各工件之间的开工时间差并运用Cmax(π)公式即可求出目标值最大完工时间;
量子候鸟协同优化算法求解方法包括如下步骤:
S21、初始化参数:种群大小ps,最大迭代次数Umax,邻域解个数Cnum,候鸟群体左翼数组Lp[m1],候鸟群体右翼数组Rp[m2],巡回次数K,分享邻域解个数Snum;
S22、初始化种群,随机生成ps个个体{x1,x2,…,xps};
S23、对初始化的种群中的ps个个体执行量子双链编码种群,并引入量子旋转门,然后对量子候鸟编码采用LOV规则生成ps个序列π={π1,π2,…,πn},π为工件按照一定加工次序形成的序列;
S24、对调度序列π执行变异的FL算法进行优化并对优化后的ps个序列进行目标值排序,将目标值最小的序列作为初始解π′;
S25、令U=1,2,…,Umax开始进入迭代循环操作;
S26、令巡回次数V=1,2,…,K开始进入巡回循环操作;
S27、令π′为领飞鸟的解,用IG算法对初始解π′对应的序列进行处理生成:领飞鸟的邻域解集合LBc,LBc={N1,N2,…NCnum};领飞鸟的Cnum个邻域解中Nbest的目标值最小,记为Min{N1,N2,…NCnum},其中邻域解对应的是各个工件的序列;
S28、将领飞鸟的Cnum个邻域解中的最小目标值Nbest:Min{N1,N2,…NCnum}与初始解π′:{π1,π2,…,πn}比较目标值,若小于初始解的目标值则将初始解π′替换成Nbest;
S29、将集合LBc中未被使用的邻域解按照目标值由小到大排序,按由小到大顺序依次取2Snum个邻域解随机填入左集合Sn_L[]和右集合Sn_R[]中,使得两个集合都包含Snum个邻域解;
S30、令m1=1,2,…,(ps-1)/2,依次循环进入S31步骤循环,生成数组Lp;
S31、随机使用交换函数Swap和插入函数Insert的方法生成候鸟左翼数组Lp[m1]的Cnum–Snum个邻域解,然后和左集合Sn_L合并构成Lp[m1]的邻域解集合FBc[m1];将邻域解集合FBc[]里最大完工时间最小的序列赋值给Nbest,即Nbest=Min(Cmax(FBc[]));若加工序列Nbest对应的最大完工时间小于左翼数组Lp[m1]序列的最大完工时间,即Cmax(Nbest)Cmax(Lp[m1]),则使Nbest赋值给Lp[m1],并将FBc[m1]中未被使用邻域解按最大完工时间从小到大排序,将较小的Snum个邻域解填入Sn_L[]中;
S32、令m2=1,2,…,(ps-1)/2,依次循环进入S33步骤循环,生成数组Rp;
S33、随机使用交换函数Swap和插入函数Insert的方法生成候鸟右翼数组Rp[m2]的Cnum–Snum个邻域解,然后和Sn_R[]合并构成Rp[m2]的邻域解集合FBc[m2];将邻域解集合FBc[m2]里最大完工时间最小的序列赋值给Nbest,即Nbest=Min(Cmax(FBc[]));若加工序列Nbest对应的最大完工时间小于右翼数组Rp[m2]序列的最大完工时间,即Cmax(Nbest)Cmax(Rp[m2]),则使Nbest赋值给Rp[m2],并将FBc[m2]中未被使用邻域解按最大完工时间从小到大排序,将较小的Snum个邻域解填入Sn_R[]中;
S34、判断V是否循环至K,若是执行下一步,否则进入S26步骤进行迭代;
S35、分别求数组Lp和Rp的最大完工时间Cmax,将其对应最大完工时间Cmax最小的Lp[A],Rp[B]分别赋值给左右两翼数组的首个解Lp[1],Rp[1];比较左右两翼的首个解Lp[1]和Rp[1]的最大完工时间Cmax,将较小者作为领飞鸟,旧的领飞鸟自动回至所在翼的尾部;
S36、输出领飞鸟的解作为工件加工序列,求出加工序列对应的最大完工时间;
S37、判断U是否循环至Umax,若是,则量子候鸟协同优化算法结束,否则进入S25步骤进行迭代。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽师范大学,未经安徽师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811655018.X/1.html,转载请声明来源钻瓜专利网。