[发明专利]基于双向智能搜索的制造企业车间调度优化方法有效
申请号: | 201511022692.0 | 申请日: | 2015-12-30 |
公开(公告)号: | CN105652833B | 公开(公告)日: | 2018-01-23 |
发明(设计)人: | 黄波;许志华;许多;张加浪;吕建勇 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G06Q10/06 | 分类号: | G06Q10/06 |
代理公司: | 南京理工大学专利中心32203 | 代理人: | 马鲁晋 |
地址: | 210094 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 双向 智能 搜索 制造 企业 车间 调度 优化 方法 | ||
1.一种基于双向智能搜索的制造企业车间调度优化方法,其特征在于,具体步骤如下:
步骤1、采用Petri网对制造企业车间各加工操作顺序、操作时间和所用资源进行建模,构建Petri网模型;
步骤2、将步骤1构建的Petri网模型转化为输入文件;
步骤3、根据步骤2的输入文件,构建用于Petri网模型演化的前置和后置关联矩阵;
步骤4、构建四个堆栈结构的表,分别是OPEN、CLOSED、ROPEN、RCLOSED,分别用于存放正向A*搜索过程中待扩展节点和已扩展节点,和逆向A*搜索过程中待扩展节点和已扩展节点;
步骤5、构建A*搜索算法的启发函数h,该启发函数h具有可采纳性,即针对系统某个节点,对其估计的从此节点到系统终止节点的代价值不能大于此节点到系统终止节点的最小代价值;
步骤6、从系统起始状态和终止状态双向运行A*搜索算法,搜索从系统起始状态到终止状态的变迁发射序列;
步骤7、输出变迁发射序列,由变迁发射序列所引发的加工操作得出所有工件调度的顺序,包括所有工件的每个工序的加工机器、加工耗时、加工开始时间、加工结束时间和系统总的加工时间。
2.根据权利要求1所述的基于双向智能搜索的制造企业车间调度优化方法,其特征在于,步骤2中输入文件的格式为:
总操作库所数,备选操作库所数,资源库所数,各作业的工作量;
<作业号,作业内操作号,总操作号,资源号,操作时间;>…
其中文件的第一行表达Petri网的全局信息,文件的剩下部分是对各个加工操作的描述,<>…表示此结构的重复,作业号表示作业的编号,作业内操作号表示操作在所在作业中的编号,总操作号表示操作在整个系统中的编号,资源号表示资源的编号,操作时间表示操作加工所用的时间。
3.根据权利要求1所述的基于双向智能搜索的制造企业车间调度优化方法,其特征在于,步骤3中Petri网模型演化的前置关联矩阵L+和后置关联矩阵L-的公式如下:
其中1≤i≤n,1≤j≤m,n为库所数,m为变迁数。
4.根据权利要求1所述的基于双向智能搜索的制造企业车间调度优化方法,其特征在于,步骤5所述的A*搜索算法的启发函数h具体为:
其中SM为含有托肯的库所集合,RWTk表示从含有托肯的库所k一直到完成所在作业中一系列操作所需的最少时间,Mrk表示含有托肯的库所k的剩余操作时间,此启发函数h(M)是所有从当前节点到目的节点路径所需操作时间的下界,是可采纳的启发函数。
5.根据权利要求1所述的基于双向智能搜索的制造企业车间调度优化方法,其特征在于,步骤6从系统起始状态和终止状态双向运行A*搜索算法,搜索从系统起始状态到终止状态的变迁发射序列具体为:
步骤6-1、定义正向和逆向搜索中的正向使能、逆向使能、正向发射和逆向发射,具体为:
变迁t∈T在标识M下正向使能,当且仅当:·t表示变迁t的所有输入库所的集合;
变迁t∈T在标识M下逆向使能,当且仅当:t·表示变迁t的所有输出库所的集合;
在标识M下正向使能的变迁t的正向发射将产生新标识M':
在标识M下逆向使能的变迁t的逆向发射将产生新标识M':
步骤6-2、将系统初始状态节点Ms放入OPEN表中,系统结束状态Mg节点放入ROPEN表中;
步骤6-3、判断OPEN与ROPEN表是否为空,如果均为空,则无调度结果,程序结束,否则执行下一步;
步骤6-4、从OPEN表中取出f值最小的状态节点M并将其放入CLOSED表中,所述f值为f(M)=g(M)+h(M),g(M)是系统从Ms到M所用的加工操作时间,h(M)是从M到Mg估计的剩余操作时间,
步骤6-5、判断f值最小的状态节点M是否是ROPEN表中的元素,若是则构造从起始状态节点Ms到f值最小的状态节点M再到终止状态节点Mg的变迁发射序列,程序结束;否则执行下一步;
步骤6-6、找出f值最小的状态节点M的正向使能变迁集合{tj}(j=1…et(M)),et(M)表示节点M中使能变迁的数目;
步骤6-7、正向发射每个正向使能变迁tj得到新子节点标识M’j,并计算g(M’j),h(M’j)和f(M’j),计算方法与步骤6-4相同;
步骤6-8、对每一个新产生的子节点M’j进行判断:
(a)如果M’j等于OPEN表中节点MO,则检验两节点的g值,如果是且g(M’j)小于g(MO),则用M’j替换OPEN中的MO,其它情况,则直接将M’j插入OPEN中;
(b)如果M’j等于CLOSED表中节点MC,则检验两节点的g值,如果是且g(M’j)小于g(MC),则从CLOSED中删掉MC同时插入M’j到OPEN中;其它情况,则直接将M’j插入OPEN中;
(c)如果M’j不等于OPEN表和CLOSED表中的任何节点,则把M’j插入到OPEN表中;
步骤6-9、从ROPEN表中取出f值最小的状态节点MR并将其放入RCLOSED表中;
步骤6-10、判断MR是否是OPEN中的元素,如果是则构造从系统起始状态节点Ms到MR再到系统终止状态节点Mg的变迁发射序列,程序结束;否则执行下一步;
步骤6-11、找出MR的逆向使能变迁集合{t’j}(j=1…ret(MR)),ret(MR)表示节点M中逆向使能变迁的数目;
步骤6-12、逆向发射每个t’j得到新的子节点标识M”j,并计算g(M”j),h(M”j)和f(M”j),计算方法与步骤6-4相同;
步骤6-13、对每一个新产生的子节点M”j进行判断:
(a)如果M”j等于ROPEN表中节点MO,则检验两节点的g值,如果是且g(M”j)小于g(MO),则用M”j替换ROPEN中的MO;其它情况,则直接将M”j插入ROPEN中;
(b)如果M”j等于RCLOSED表中节点MC,则检验两节点的g值,如果是且g(M”j)小于g(MC),则从RCLOSED中删掉MC同时插入M”j到ROPEN中;其它情况,则直接将M”j插入ROPEN中;
(c)如果M”j不等于ROPEN表和RCLOSED表中的任何节点,则把M”j插入到ROPEN表中;
步骤6-14、返回步骤6-3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511022692.0/1.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理