云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法技术

技术编号:13248149 阅读:147 留言:0更新日期:2016-05-15 11:54
本发明专利技术公开了一种云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法,包括:接收远程提交的柔性作业车间调度问题,通过云计算弹性计算方式根据计算任务和任务需求分配计算资源,所述柔性作业车间调度问题包括:计算任务、及对所述计算任务的计算时间和计算精度的任务需求;根据第一步分配的计算资源,对用户提交的柔性作业车间调度问题建模并对计算任务进行编码,再使用MapReduce并行化基因算法求解,最终给出调度结果。本发明专利技术采取MapReduce模型可以满足用户的时间和精度上的需求,能有效降低算法求解时间和提高解质量。

【技术实现步骤摘要】

本专利技术涉及柔性工厂作业问题的求解方法,尤其涉及一种云计算环境下的基于 MapReduce并行化的柔性工厂作业调度方法。
技术介绍
生产调度优化是先进制造技术和现代管理技术的核心技术,国内外许多学者进行 了研究,但是大多数研究对的是经典作业调度问题JSP(Job-Shop Scheduling Problem)的 优化。在经典JSP中,每个工件的工序顺序是预先确定,并且每道工序在指定的机器上加工。 而在实际生产中,允许工序在多台机器中的任意一台上加工,这类问题就是柔性作业车间 调度问题FJSP(Flexible Job-Shop Scheduling Problem)减少了机器约束,扩大了可行解 的搜索范围,增加了问题的难度。FJSP是经典JSP的扩展,它不仅需要确定工序加工的顺序, 还要给每个工序分配机器,因此是比JSP更复杂的NP-hard问题。目前,解决的方法主要可归 为两类:精确方法和近似方法。精确方法包括分支定界法、整数规划法等,但只能求解较小 规模的FJSP问题。近似方法包括优先分配规则法、遗传算法、禁忌搜索算法和模拟退火算法 等,能较快地得到问题的较优解,满足实际问题的需要。目前求解FJSP的近似方法可以分为 两类:分级方法和集成方法。分级方法的原理主要基于每道工序的加工机器确定后,FJSP就 转化为经典的JSP;集成方法是将分配工序机器(路径柔性)和确定工序在机器上的加工顺 序同时考虑,该方法难度较大,但是一般能得到更好的结果。遗传算法借鉴了"物竞天择、适者生存"的进化准则,具有隐含并行性和全局解空 间搜索的特点,在生产调度领域得到广泛的应用。但是FJSP问题不仅要给给每个工序分配 加工机器,还需要确定每台机器上工序的加工顺序,比传统的调度问题更具复杂性。 尽管目前国内外已有许多学者对如何利用遗传算法高效求解FJSP做了研究,但大 部分研究仅仅停留在FJSP问题向遗传算法的转换问题上(即:问题编码和代价函数的确立 问题),并没有考虑利用算法的底层计算环境和实现方法来提高FJSP问题的求解效率和求 解精度。传统的算法实现是基于单节点计算环境下的考量,目前几乎没有相关方法去考虑 在云计算环境下的分布式计算模型下的算法实现。
技术实现思路
针对上述问题中存在的不足之处,本专利技术提供一种云计算环境下的基于 MapReduce并行化的柔性工厂作业调度方法。 为实现上述目的,本专利技术提供一种云计算环境下的基于MapReduce并行化的柔性 工厂作业调度方法,包括: 第一步、接收远程提交的柔性作业车间调度问题,通过云计算弹性计算方式根据 计算任务和任务需求分配计算资源,所述柔性作业车间调度问题包括:计算任务、及对所述 计算任务的计算时间和计算精度的任务需求; 第二步、根据第一步分配的计算资源,对用户提交的柔性作业车间调度问题建模 并对计算任务进行编码,再使用MapReduce并行化基因算法求解,最终给出调度结果。 作为本专利技术的进一步改进,所述第二步包括以下步骤: 步骤1、根据柔性作业车间调度问题随机产生初始解个体,并形成初始种群; 步骤2、根据柔性作业车间调度问题确定性能指标;采用所述性能指标作为适应度 计算的目标函数,计算个体的适应度,所述性能指标包括:最小化最大完工时间、最小化机 器上最大负荷、最小化工件总拖期; 步骤3、利用所述初始种群和所述个体的适应度,根据柔性作业车间调度问题生成 下代种群;步骤4、判断子代是否达到终止条件,若满足则输出适应度最高个体,算法结束;否 则重复步骤3; 步骤5、建立并行化基因算法的MapReduce结构,并建立步骤1-4与mapper和 reducer的映射关系。 作为本专利技术的进一步改进,所述步骤1包括:步骤11、设定每个mapper中的工作方式,通过分布式执行,生成工序串集OSet;所 述工作方式为:参照车间加工时间表和工件集JOBS,随机生成可行工序串0;初始时,工序串 〇为空串,即〇=[];步骤12、使用一个reducer对所述工序串集去重; 步骤13、将去重的工序串集转换为初始种群,用于完成对工序随机分配机器的工 作。 作为本专利技术的进一步改进,所述步骤11采用如下方式转换: 步骤111、若工件集JOBS为空,则输出工序串0,算法结束; 步骤112、随机从工件集JOBS中选择一个工件Ji,若Ji中剩余工序数Ji. #undo为0, 则将其从JOBS集合中移出,否则将Ji中剩余工序数减1; 步骤113、工序串0追加i。 作为本专利技术的进一步改进,所述步骤13的具体分配方法为:在可用机器集中随机 选择3台机器,分别以0.1、0.2和0.7的概率选择耗时低、中和高的机器;若可用机器为2台则 以0.2和0.8的概率选择耗时高和低的机器。 作为本专利技术的进一步改进,所述步骤2中个体适应度的计算具体包括:最小化最大完工时间:设Ci是工件Ji的完工时间,则最大完工时间Cmax最小的目标 函数为:min{maxCi,i = l,···,n}; 最小化机器上最大负荷:设^是机器Μ」上的负荷或机器Μ」上的工作量,则机器上最 大负荷Wmax最小的目标函数为:minlmaxWj,j = 1,…,m}; 最小化工件总拖期:SDi为工件心的交货期,则时间最小的目标函数为: 作为本专利技术的进一步改进,所述步骤3通过杂交或变异的方法生成下代种群,下代 种群包括3类个体: 第一类、优秀的父代个体集:选择1%适应度的父代个体直接作为复制到下一代种 群;第二类、交叉算子重组生成;选择2个优秀父代通过交叉生成,即:随机从种群中选 择2组子种群,每组子种群包含总数的10%,选择每个子种群适应度最高的个体进行杂交, 对两个体杂交η次,从2个父代和和2n个子代中选择适应度最高的2个个体放入下一代种群; 第三类、个体变异:对第一类和第二类中的个体,按变异概率Pm选择个体进行变异 操作。作为本专利技术的进一步改进,所述步骤4中判断子代是否达到终止条件的标准为:观 察两代子群中具有最佳适应度个体在性能指标下的收敛情况,若收敛小于预设阈值则认为 算法结束。作为本专利技术的进一步改进,所述步骤5的具体方法包括:对于步骤1-4建立mapper 和reducer的映射关系,其中每个步骤中mapper和reducer均按照5 :1的比例设置进行数据 处理。与现有技术相比,本专利技术的有益效果为:本专利技术公开的一种云计算环境下的基于MapReduce并行化的柔性工厂作业调度方 法,采取MapReduce模型,能很好的支持云计算环境。利用云计算环境的弹性计算方式,将柔 性作业车间调度问题FJSP实现为一种云端服务。用户可以远程提交计算任务并提出时间和 精度上的需求,云端接受任务后,根据任务的规模和需求分配计算资源,并利用MapReduce 来对柔性作业车间调度问题FJSP进行并行化计算,最后将结果甘特图反馈给用户;相比传 统的单节点计算方法,本专利技术可以满足用户的时间和精度上的需求;本专利技术使用分布式计算模型,分布式计算模型求解FJSP问题从能有效降低算法求 解时间和提高解质量,FJSP问题这类计算任务,属于计算密集型任务并且会产生海量的中 间数据集,因此仅仅依靠传统的单计算节点求解对单机要求太高,通过分布式计算模型可 本文档来自技高网
...

【技术保护点】
一种云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法,其特征在于,包括:第一步、接收远程提交的柔性作业车间调度问题,通过云计算弹性计算方式根据计算任务和任务需求分配计算资源,所述柔性作业车间调度问题包括:计算任务、及对所述计算任务的计算时间和计算精度的任务需求;第二步、根据第一步分配的计算资源,对用户提交的柔性作业车间调度问题建模并对计算任务进行编码,再使用MapReduce并行化基因算法求解,最终给出调度结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:王江晴帖军毛腾跃孙翀雷建云周斌
申请(专利权)人:中南民族大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1