[发明专利]一种基于蚁群算法的生产配送调度方法有效
申请号: | 201510897042.4 | 申请日: | 2015-12-04 |
公开(公告)号: | CN105528675B | 公开(公告)日: | 2016-11-16 |
发明(设计)人: | 程八一;黄小曼;王刚;胡笑旋;李凯;刘渤海 | 申请(专利权)人: | 合肥工业大学 |
主分类号: | G06Q10/04 | 分类号: | G06Q10/04;G06Q50/28 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
地址: | 230009 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 算法 生产 配送 调度 方法 | ||
1.一种基于蚁群优化的生产配送调度方法,其特征是按如下步骤进行:
步骤1、假设存在n个批需要进行生产和配送,生产各个批的设备容积记为B;配送各个批的车辆容积记为V;由所述n个批构成一个批集合,记为U={b1,b2,…,bk,…,bn},bk表示第k个批;且将第k个批bk的尺寸记为Sk;将第k个批bk的生产时间记为Tk;将加入同一辆车中进行配送的所有批记为一个组;1≤k≤n;
步骤2、将所述批集合U中的尺寸相同的批分为一类,从而获得a个分类;记为W={w1,w2,…,wz,…,wa},wz表示第z个分类;所述第z个分类wz中的批总数记为fz;
步骤3、初始化蚁群算法的各个参数,包括:m表示第m只蚂蚁,并初始化m=1;M表示蚂蚁总数、L表示迭代次数,并初始化L=1;Lmax表示最大迭代次数;
步骤4、定义变量为l,并初始化l=1;定义第k个批bk的标识符为flagk,并初始化flagk=0;
步骤5、创建第L次迭代的第m只蚂蚁的第l个组和与其对应的第l个候选表并使得第L次迭代的第m只蚂蚁能将所述n个批分配到不同个组中进行配送;并第L次迭代的第m只蚂蚁对所有批次完成分组所使用的车辆总数
步骤6、将m+1赋值给m,并返回步骤5执行,直到m=M为止,从而获得第L次迭代的所有M只蚂蚁对所有批次完成分组所使用的车辆总数集合
步骤7、从所述车辆总数集合中选取最小值作为第L次迭代的局部最优解,记为πL;
步骤8、利用式(1)更新第L次迭代的第i个候选批bi′和第j个已加入到第l个组中的候选批bj′之间的信息素τij(L),从而获得第L+1次迭代的信息素τij(L+1):
式(1)中,ρ表示信息素的蒸发速率;mij(L)表示第L次迭代中第i个候选批bi′和第j个已加入到第l个组中的候选批bj′被分到同一组的次数;并有:
步骤9、利用式(3)和式(4)判断τij(L+1)是否满足信息素浓度限定区间[τmin,τmax],若满足,则保留第L+1次迭代的信息素τij(L+1),并执行步骤11;否则,执行步骤10:
式(3)和式(4)中,π*表示当前已获得的所有局部最优解中的最小值;
步骤10、若τij(L+1)≥τmax,则将τmax赋值给τij(L+1);若τij(L+1)≤τmin,则将τmin赋值给τij(L+1);
步骤11;将L+1赋值给L,判断L<Lmax是否成立,若成立,返回步骤4执行,否则完成Lmax次迭代,并获得全局最优解πbest,即为Lmax次迭代中的所有局部最优解的最小值;以全局最优解πbest所对应的配送方案作为最优配送方案;
步骤12、将最优配送方案中每一组中的批按照生产时间进行降序排序,获得的排序结果作为批生产的次序,从而获得最优生产和配送联合调度方案。
2.根据权利要求1所述的基于蚁群优化的生产配送调度方法,其特征是,所述步骤5中,第L次迭代的第m只蚂蚁是按如下步骤将所述n个批分配到不同组中进行配送:
步骤5.1、定义变量f;
步骤5.2、初始化z=1;
步骤5.3、初始化f=1;
步骤5.4、判断所述第z个分类wz中选出第f个批的标识符flagf是否为1;若为1,则表示第f个批已经完成分组,并执行步骤5.5;否则,将第z个分类wz中选出第f个批加入到所述第l个候选表中,并执行步骤5.6;
步骤5.5、将f+1赋值给f,并返回步骤5.4执行,直到f=fz为止后,执行步骤5.6;
步骤5.6、将z+1赋值给z,并返回步骤5.3执行;直到z=a为止后,从而获得待更新的第l个候选表记所述待更新的第l个候选表中的候选批为{b1,b2,…,bi,…,ba};1≤i≤a;
步骤5.7、从所述待更新的候选表中选择尺寸最大的批bkey′作为关键批加入到所述第l个组并将关键批bkey′的标识符flag′key置为1;然后从候选表中删除关键批bkey′;
步骤5.8、利用式(5)获得第m只蚂蚁将所述待更新的第l个候选表中第i个候选批bi′加入到第l个组的候选概率从而获得第m只蚂蚁将所有候选批加入到第l个组的候选概率集合
式(5)中,α为信息素的权重,β为启发式信息的权重;θil表示第i个候选批bi′能加入到第l个组中配送的期望度;ηil表示将第i个候选批bi′能加入到第l个组配送的启发式信息;并有:
式(6)中,τij表示第L次迭代的第i个候选批bi′和第j个已加入到第l个组中的候选批bj′之间的信息素,1<i≠j≤a;Si表示第i个候选批bi′的尺寸;
步骤5.9、从所述候选概率集合中选出最大候选概率所对应的最大候选批,记为b′max;则所述最大候选批b′max的尺寸记为smax;
步骤5.10、将所述最大候选批b′max加入到所述第l个组并将最大候选批b′max的标识符flag′max置为1;
步骤5.11、将所述车辆容积V减去所述最大候选批b′max的尺寸smax,获得剩余车辆容积,记为
步骤5.12、根据所述剩余车辆容积从所述待更新的第l个候选表中删除尺寸大于所述剩余车辆容积的候选批;从而获得更新的第l个候选表Xl(L)(m);
步骤5.13、获得所述最大候选批b′max所对应的分类,记为wmax;
步骤5.14、判断所述最大候选批b′max在所对应的分类wmax中是否为第fz个批;若是,则从更新的第l个候选表Xl(L)(m)中删除所述最大候选批b′max;否则,从更新的第l个候选表Xl(L)(m)中删除所述最大候选批b′max,并将所述最大候选批b′max所对应的分类wmax中第fmax+1个批加入到所述更新的第l个候选表Xl(L)(m)中,从而获得再次更新的第l个候选表Xl(L)(m);
步骤5.15、以所述再次更新的第l个候选表Xl(L)(m)作为待更新的第l个候选表并返回步骤5.8顺序执行,直到待更新的第l个候选表为空为止,即将第L次迭代的第m只蚂蚁的第l个组加满;从而获得第L次迭代的第m只蚂蚁的第l个组的配送方案;
步骤5.16、判断n个批的标识符是否都为1,若都为1,则表示完成第L次迭代的第m只蚂蚁对所述n个批的分配;并将l赋值给否则,将l+1赋值给l,并返回步骤5顺序执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510897042.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:道路巡检方法、手持终端及云服务器
- 下一篇:用于电力系统的负荷预测系统
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理