CN109902954B - 一种基于工业大数据的柔性作业车间动态调度方法 - Google Patents
一种基于工业大数据的柔性作业车间动态调度方法 Download PDFInfo
- Publication number
- CN109902954B CN109902954B CN201910144370.5A CN201910144370A CN109902954B CN 109902954 B CN109902954 B CN 109902954B CN 201910144370 A CN201910144370 A CN 201910144370A CN 109902954 B CN109902954 B CN 109902954B
- Authority
- CN
- China
- Prior art keywords
- scheduling
- data
- machine
- rule
- workpiece
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000007637 random forest analysis Methods 0.000 claims abstract description 52
- 238000012549 training Methods 0.000 claims abstract description 39
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 25
- 238000005065 mining Methods 0.000 claims abstract description 24
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 238000012216 screening Methods 0.000 claims abstract description 20
- 238000003066 decision tree Methods 0.000 claims description 50
- 238000012545 processing Methods 0.000 claims description 21
- 230000007246 mechanism Effects 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 238000012360 testing method Methods 0.000 claims description 14
- 238000004519 manufacturing process Methods 0.000 claims description 12
- 230000010354 integration Effects 0.000 claims description 5
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000007418 data mining Methods 0.000 claims description 4
- 238000003754 machining Methods 0.000 claims description 4
- 238000013480 data collection Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 2
- 238000000926 separation method Methods 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000009412 basement excavation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种基于工业大数据的柔性作业车间动态调度方法,包括以下步骤如下:步骤一:使用数据采集工具Sqoop与Flume,从数据库或文件系统中获取调度数据,并存入HDFS文件系统中;步骤二:通过数据仓库工具Hive,对调度数据以调度方案为单元进行划分;步骤三:使用Spark计算框架将调度数据转化为训练实例,并以调度方案为单元的形式存储到Hbase中;步骤四:从多个指标进行筛选,得到表现良好的调度方案在执行中产生的调度数据集合;步骤五:对调度相关历史数据进行基于扰动属性的聚类;步骤六:采用改进的随机森林算法,挖掘随机森林调度规则;步骤七:使用所挖掘调度规则指导柔性作业车间动态调度。本发明实际可操作性、计算效率高,能快速对车间扰动做出实时响应。
Description
技术领域
本发明涉及一种基于工业大数据的柔性作业车间动态调度方法
背景技术
调度在制造系统中具有重要的作用,调度质量将会影响制造企业自身的竞争力。为车间制定科学合理的调度方案可以提高生产效率、降低过程成本、缩短产品生命周期,同时能够保证按时保质地交货。柔性作业车间由于其具有灵活的工艺路线与对市场需求的快速应变能力,可以很好的满足多品种、小批量的生产需求,因此成为了一种被广泛使用的生产模式。柔性作业车间动态调度是在静态调度的基础上考虑实际生产环境的扰动,更加符合实际生产环境,所以更加具有研究意义。
随着产品需求不断向个性化转变,制造工艺更加多样,实际调度问题也变得更加复杂,制造企业对车间调度问题的解决方法在实际可操作性、计算效率以及对车间扰动的实时响应能力等方面都提出了更高的要求。优先调度规则是一种简单的启发式规则,它的计算效率高、实际可操作性强且可用于实时调度,适用于复杂动态的调度环境。但优先调度规则的性能受到实际环境变化的影响,单一的调度规则不能在所有的扰动环境中都有较好的调度性能。为了满足实际作业车间调度的需求,一种可行的思路是从调度相关历史数据中挖掘关于调度规则的调度知识来指导实际车间调度活动。通过数据挖掘来解决调度问题的研究主要分为结合已有优先调度规则的方法与从调度相关历史数据中挖掘调度规则的方法。
在结合已有的优先调度规则方面,WANG Shuang-Xi等在(A hybridknowledgediscovery model using decision tree and neural network for selectingdispatching rules of a semiconductor final testing factory,2005)针对半导体行业,提出了一种结合决策树与神经网络从调度相关历史数据中挖掘优先调度规则选择机制的方法,该选择机制可以得到当前环境下最适合的优先调度规则。SHIUE Y.R.等在(Data-mining-based dynamic dispatching rule selection mechanism for shop floorcontrol systems using a support vector machine approach,2009)提出一种利用支持向量机(SupportVector Machine,SVM)从调度相关历史数据中挖掘优先调度规则选择机制的方法,并以此来做出实时调度决策。Mouelhi在(Training a neuralnetwork to selectdispatching rules in real time,2009)等提出了一种结合神经网络的调度规则选择方法,该方法通过神经网络从仿真产生的调度相关历史数据中挖掘调度规则实时选择方法。
优先调度规则仅通过少量信息来做出调度决策,这可能导致调度结果不尽如人意,因此从调度相关历史数据中提取新的调度规则是另一种思路。LI X等在(Discoveringdispatching rules using datamining,2005)提出一种利用决策树从调度相关历史数据中得到全新调度规则的方法,并通过实验证明了提取的调度规则能很好地拟合原调度方案。SIGURDUR OLAFSSON等在(Learning effective new single machine dispatchingrules from optimal scheduling data,2010)提出了一种两阶段的调度知识学习方法,首先学习如何从调度过程数据中得到适合挖掘的训练实例,再对这些训练实例进行调度规则的挖掘。王成龙等在(作业车间调度规则的挖掘方法研究,2015)提出了一种结合Petri网建模的分支定界算法与决策树算法的调度规则挖掘方法,提取的调度规则可用于指导静态作业车间调度。
综上所述,目前关于从调度相关历史数据中挖掘调度规则的方法主要针对的是车间静态调度问题上,将其运用于柔性作业车间动态调度问题的较少。此外,上述方法所使用的调度相关历史数据偏向于理论数据,然而随着智能感知设备在车间层的大量使用,车间开始向智能化发展,车间调度相关历史数据呈现出规模大、价值低、连续采样、高维等工业大数据的特点。
发明内容
为了克服已有柔性作业车间动态调度方法实际可操作性不高、计算效率满与对车间扰动的实时响应能力不足的问题,本发明提供一种实际可操作性强、计算效率高、可以对车间扰动做出实时响应的柔性作业车间动态调度方法。
本发明解决其技术问题所采用的技术方案是:
一种基于工业大数据的柔性作业车间动态调度方法,所述柔性作业车间动态调度方法包括以下步骤:
步骤一,数据采集:使用Hadoop生态体系下的数据采集工具从现有的信息系统中采集与调度相关的历史数据,并将其存于HDFS文件系统中。
步骤二,数据整合:通过数据仓库工具Hive使用SQL语句对HDFS文件系统中的调度数据集合Dh以调度方案为单元进行划分,即将一次调度方案在执行中产生的调度相关历史数据划分到一起。
步骤三,数据转化:使用Spark将整合的数据中转化为训练实例的形式,便于数据挖掘算法进行调度规则挖掘。
步骤四,数据筛选:从最大完工时间、总拖期时间、机器总负荷三个指标对历史调度方案进行考量,筛选得到表现良好的调度方案在执行中产生的调度相关历史数据集合。具体包括:
步骤4.1:在最大完工时间指标上,以同种情况下只使用SPT规则生成的的调度方案的最大完工时间作为筛选标准。
步骤4.2:在总拖期时间指标上,以同种情况下使用EDD规则结合SPT规则完成相同情况下的调度任务的总延期时间作为筛选标准。
步骤4.3:在机器总负荷指标上,以同种情况下结合LMWT与SPT规则完成调度任务的机器总负荷作为筛选标准,能同时满足这三个指标的调度方案在执行中产生的调度数据集合,将会作为调度规则挖掘算法的输入。
步骤五;基于扰动属性的聚类:采用DBSCAN聚类方法,对筛选后的调度相关历史数据,以调度方案为单元(即一个调度方案产生的数据作为一个对象),进行基于扰动属性的聚类。具体包括:
步骤5.1:对方案执行时的扰动数据进行数据标准化处理,如某扰动属性在各个方案中的数据为X1,X2,X3...,Xn,则它们需要经过如公式(1)变换。
步骤5.2:确定DBSCAN算法的参数领域半径Eps,与核心对象领域半径内至少包含的对象个数MinPts。
步骤5.3:随机找出一个核心对象p,创建一个p作为核心对象的新簇。复地寻找从p直接密度可达的对象,将其归入簇中。
步骤5.4:重复步骤5.3,直到没有新的点可以被添加到任何簇时,该过程结束。
步骤六,随机森林调度规则挖掘:采用改进的随机森林算法,从聚类后每个簇中分别挖掘得到解决工件选择机器问题的森林调度调度规则1与解决空闲机器选择加工工件问题的随机森林调度2。具体包括:
步骤6.1:对于每个聚类后的簇,从簇中的中有放回地抽取训练实例,形成k个新训练实例集合,用于构建决策树。
步骤6.2:随机选择m个特征属性,并计算最佳分裂方式,分别训练得到k棵决策树。
步骤6.3:使用簇中未被选择的训练实例,测试决策树的分类表现。
步骤6.4:判断是否存在相似的决策树,若存在相似决策树,则保留表在测试中现好的决策树,形成了随机森林。
步骤6.5:通根据贝叶斯投票机制,计算每棵决策树的权值w,h,得到森林调度调度规则1与随机森林调度2。
步骤七,调度规则使用:通过所挖掘随机森林调度规则指导柔性作业车间动态调度。具体包括:
步骤7.1根据解决的问题为工件机器选择问题,还是空闲机器选择加工工件问题,找到与当前柔性作业车间的扰动环境所属的簇所对应的随机森林调度规则1或随机森林调度规则2。
步骤7.2,根据所选随机森林调度规则,通过两两比较选出最优的方法,在候选机器集合M或候选工件集合J中选出最合适的工件或机器。
本发明的技术构思为:车间调度相关历史数据呈现出规模大、价值低、连续采样、高维等工业大数据的特点,故首先结合大数据据完成调度相关历史数据的预处理。图2给出了结合大数据技术的数据预处理模型。数据预处理柔性作业车间动态调度问题是在有扰动的环境下解决工件的机器选择问题和空闲机器的工件选择问题,因此采集的数据集合Dh分为三部分:d1为调度方案制定时与扰动相关的系统扰动信息;d2为工件的某道工序选择加工机器时,当前可以加工这道工序的机器集合中的每台机器的状态信息;d3为空闲机器需要在等待队列中选择工件进行加工时,当前队列中的每个工件的状态信息。调度数据集合Dh中的数据形式混乱,无法直接用于接下来的数据筛选、聚类以及调度规则挖掘工作,需要通过数据整合和转化来整理调度数据集合Dh中的数据。在调度数据集合Dh中隐含了反映实际调度环境特点及调度知识的大量有效信息,同时也伴随着许多无用的或是错误的规律或模式。故采用图3的多指标数据筛选机制,从最大完工时间、总拖期时间、机器总负荷三个角度对历史调度方案进行考量,保留满足三个指标的调度历史方案执行中所产生的数据。
以随机森林算法作为调度规则的挖掘算法,最终得到的调度规则为此算法构建的随机森林,本质上为多棵经过训练的C4.5决策树,调度规则的调度性能取决于决策树的分类性能,调度规则的计算效率与复杂程度取决于决策树的分支数量。通过DBSCAN聚类对较优调度数据Db进行合理的划分,区分出在不同扰动环境下做出的调度决策所产生的数据,再从划分的每个区域中分别得到针对不同扰动环境的调度规则,可以增强所得随机森林调度规则中决策树的分类性能并减少分支数量,从而使得调度规则复杂程度更低,计算效率更高,调度性能更好。
通过随机森林算法从调度历史相关数据中学习调度规则f,f其实是对真实调度规则y 的一种估计所以和y之间是存在一定的误差。误差包括三部分:噪声δ2、方差与偏差其中噪声δ2是不可避免的,但可以通过减少方差或偏差来减少算法的误差,从而提高随机森林算法的性能。同时减少决策树之间的相关性ρ可以减小方差,故如果两棵决策数之间的相似度过大,则保留测试表现好的决策数,从而减少决策树之间的相关性ρ。传统的随机森林算法采用少数服从多数的投票机制,在随机森林中决策树的分类性能无论好坏,都具有相同的权值。这样的机制导致了分类性能差的决策树与分类性能好的决策树对于最终结果具有相同的影响程度。故本文采用贝叶斯投票机制。该机制基于每棵决策树在测试中分类表现设定一个权值,然后按照这个权值进行投票。
本发明的有益效果主要表现在:从具有工业大数据特点的调度相关历史数据中挖掘调度规则来指导调度的方法作为主体框架,建立结合大数据技术的数据预处理模型,提高了数据预处理的速度与准确性,建立了基于扰动属性的聚类机制,减小了调度规则复杂程度,提高了调度规则的计算效率更高与调度性能,建立了基于改进随机森林算法的调度挖掘模型,提高了调度规则的泛化能力与调度性能。
附图说明
图1是本发明的调度规则挖掘整体架构。
图2是本发明的结合大数据技术的调度数据预处理模型。
图3是本发明的多指标数据筛选机制。
图4是本发明的改进的随机森林算法挖掘调度规则的流程图。
图5是本发明的使用基于工业大数据的柔性作业车间动态调度方法所得的调度方案。
具体实施方式
参照图1-图5,一种基于工业大数据的柔性作业车间动态调度方法,总体框架参照图1,具体分为三部分:第一部分,结合大数据技术的调度数据预处理模型,参照图2,其具体分为数据采集、数据整合、数据转化与数据筛选;第一部分,基于扰动属性聚类策略;第三部分,基于改进随机森林算法的调度规则挖掘模型。其总体上的技术步骤如下:步骤一,数据采集:使用Hadoop生态体系下的数据采集工具Sqoop与Flume,从MES、ERP、SCADA 等现有的信息系统中采集与调度相关的历史数据,并将其存于HDFS文件系统中。采集数据包括三部分Dh={d1,d2,d3}:d1为调度方案制定时与扰动相关的系统扰动信息;d2为工件的某道工序选择加工机器时,当前可以加工这道工序的机器集合中的每台机器的状态信息;d3为空闲机器需要在等待队列中选择工件进行加工时,当前队列中的每个工件的状态信息。
步骤二,数据整合:通过数据仓库工具Hive使用SQL语句对HDFS文件系统中的调度数据集合Dh以调度方案为单元进行划分,即将一次调度方案在执行中产生的调度相关历史数据划分到一起。
步骤三,数据转化:使用Spark将整合后数据中的d2与d3部分转化为训练实例的形式,便于数据挖掘算法进行调度规则挖掘。具体包括:
步骤3.1:对于采集的调度数据集合Dh的d2部分,将某历史调度方案中实际选择的机器m1视为最合适的机器,将其与其他可加工此工序的备选机器集合{m2,m3...}中的机器一一比较形成训练实例。
步骤3.2:对于采集的调度数据集合Dh的d3部分,将某历史调度方案中实际选择的工件j1视为最合适的机器,将其与其他等待加工的工件集合{j2,j3...}中的工件一一比较形成训练实例。
步骤四,数据筛选:从最大完工时间、总拖期时间、机器总负荷三个指标对历史调度方案进行考量,筛选得到表现良好的调度方案在执行中产生的调度相关历史数据集合Db。具体包括:
步骤4.1:在最大完工时间指标上,以同种情况下只使用SPT规则生成的的调度方案的最大完工时间作为筛选标准。只使用SPT规则是指工件选择加工最快的机器与空闲机器选择加工时间最短的工件。最大完工时间满足此指标的调度方案进入步骤4.2,不满足则淘汰。
步骤4.2:在总拖期时间指标上,以同种情况下使用EDD规则结合SPT规则完成相同情况下的调度任务的总延期时间作为筛选标准。SPT+EDD规则是指是指工件选择加工最快的机器与空闲机器选择交货期最早的工件。总拖期时间满足此指标的调度方案进入步骤4.3,不满足则淘汰。
步骤4.3:在机器总负荷指标上,以同种情况下结合LMWT与SPT规则完成调度任务的机器总负荷作为筛选标准,LMWT+SPT规则是指是指工件选择空闲时间最长的机器与空闲机器选择加工时间最短的工件。能同时满足这三个指标的调度方案在执行中产生的调度数据集合,将会作为调度规则挖掘算法的输入。
步骤五;基于扰动属性的聚类:采用DBSCAN对Db以调度方案为单元(即一个调度方案产生的数据作为一个对象),根据Db中的方案制定时的系统扰动属性(d1部分)进行基于扰动属性的聚类。具体包括:
步骤5.1:对d1部分数据标准化处理,如某扰动属性在各个方案中的数据为X1,X2,X3..., Xn,则它们需要经过如公式(1)变换。
步骤5.2:确定DBSCAN算法的参数领域半径Eps,与核心对象领域半径内至少包含的对象个数MinPts。
步骤5.3:随机找出一个未被处理(没有归为某个簇或者标记为噪声)的核心对象p(领域半径内包含的对象个数不小于MinPts),建立新簇C,将p邻域半径Eps内的所有对象加入候选集N。
步骤5.4:随机找出一个候选集N中尚未被处理的对象q。若q为核心对象,则将q邻域半径Eps内未被处理的且未加入到N的对象加入到N中。如果q未归入任何一个簇,则将q加入C。
步骤5.5:重复步骤5.4,直到N为空。
步骤5.6:重复步骤5.3、5.4、5.5,直到没有新的对象可以被添加到任何簇时,该过程结束
步骤六,随机森林调度规则挖掘:采用改进的随机森林算法,从聚类后每个簇中分别挖掘得到解决工件选择机器问题的森林调度规则1与解决空闲机器选择加工工件问题的随机森林调度2。具体包括:
步骤6.1:对于每个聚类后的簇,从簇中的d2(挖掘随机森林调度规则1)与d3(挖掘随机森林调度规则2)中有放回地抽取训练实例,分别形成k个新训练实例集合P1与P2,用于构建决策树。
步骤6.2:P1与P2分别从d2与d3中随机选择m个特征属性,并计算最佳分裂方式,分别训练得到k棵决策树T1与T2。
其中决策树构建过程为:
步骤6.2.1:创建根节点N。
步骤6.2.2:判断训练实例集合是否还有剩余训练实例,若没有则返回节点N,若有则下一步。
步骤6.2.3:判断训练实例集合剩余训练实例的调度决策是否都为C,若是则返回节点N,并标记为类C,若有则下一步。
步骤6.2.4:判断生产属性列表是否为空,空则标记为样本中出现最多的类,否则下一步。
步骤6.2.5:检查属性类表中的属性是否为连续性,连续属性将通过二分法,得到属性增益G(D,A)最大的属性分离方式。(通过二分法可以将属性的所有属性值分为两部分,这一共有N-1种划分方法,二分法的划分阈值为选择二分处相邻两点的平均值。信息增益计算方式如公式(2)、(3)、(4))。
G(D,A)=H(D)-H(D|A)(2)
式(2)中G(D,A)表示属性A的信息增益;式(3)中H(D,A)类别信息熵;式(4)中H(D|A) 表示条件熵;此外,D表示训练实例数据集,|D|表示D的训练实例数量,而D具有K个类别Ck,k=1,2;|Ck|表示在类别Ck中的训练实例个数。D可以通过属性A将其划分为n个子集D1,D2,…,Dn,|Di|为Di的训练实例个数。Di中属于类Ck的训练实例的集合为Dik,|Dik|为Dik的训练实例个数。
步骤6.2.6:选择信息增益率最大的属性标记节点N,信息增益率计算公式如式(5)、 (6),返回步骤6.2.2。
GR(D,A)=G(D,A)/H(A)(5)
式(5)中GR(D,A)表示信息增益率;H(A)表示分裂信息;其他符号含义同上。
步骤6.3:使用d2和d3中未被选择的训练实例,分别测试T1与T2中决策树的分类表现。
步骤6.4:计算T1或T2中决策树之间的相似度S,其计算公式如式(7),若决策树之间的相似度大于60%,则比较步骤6.3中的测试表现,保留表现好的决策树,形成了随机森林。
式(7)中DT1与DT2表示进行相似度计算的两棵决策树;k表示DT1与DT2对测试实例分类结果相同的次数;r1n与r2n表示第n次分类结果相同时,DT1与DT2用到的特征属性,c 表示分类结果;当r1n=r2n时,即DT1与DT2用相同的特征属性得到相同的分类结果时, I(r1n.c,r2n.c)=1,否则为0,Nt为测试实例的个数。
步骤6.5:通过贝叶斯投票机制,分别计算T1与T2中每棵决策树的权值w,h,计算公式如式(8)、(9),得到森林调度调度规则1与随机森林调度规则2。
式(8)、(9)中v代表此决策树对测试实例正确分类的次数;m表示对测试实例错误分类次数;
步骤七,调度规则使用:通过所挖掘随机森林调度规则指导柔性作业车间动态调度。具体包括:
步骤7.1根据解决的问题为工件机器选择问题,还是空闲机器选择加工工件问题,找到与当前柔性作业车间的扰动环境所属的簇所对应的随机森林调度规则1或随机森林调度规则2。
步骤7.2,根据所选随机森林调度规则,通过两两比较选出最优的方法,在候选机器集合M或候选工件集合J中选出最合适的工件或机器。
步骤7.2.1,对于工件机器选择问题,若m1,m2是M中两台机器,根据步骤7.1所选的随机森林调度规则1,计算得到随机森林调度规则中每棵决策树的选择结果,这些结果中包含了选择1和选择2(选择1代表前者m1合适,选择2代表后者m2合适)。对于空闲机器选择工件问题,若j1,j2是J中的两个工件,根据步骤7.1所选的随机森林调度规则2,计算得到随机森林调度规则中每棵决策树的选择结果,这些结果中包含了决策1和决策2(决策1代表前者j1合适,决策2代表后者j2合适)。
步骤7.2.2:通过贝叶斯投票机制得到每棵决策树加权后的选择结果WR,WR计算公式如式(10),并求得加权结果的平均值AWR,若AWR小于1.5表示前者m1或j1合适,若AWR大于1.5表示后者m2或j2合适。
WR=wC+hR(10)
式(10)中C代表此决策树给出的分类结果;R代表所有决策树给出的分类结果的均值,w, h计算公式见式(8)、(9)。
实例:在某次调度任务中,需要加工工件JT1,JT2,...,JT8各100件,即10批,它们的交货期分别为20.0、22.0、14.0、21.0、19.0、22.0、18.0、23.0加工单位时间,工件的每道工序在各机器上的加工时间如表一。并且在时间为4时发生了机器故障,在JT1的第一道工序完成后发现它的第二道工序发生缺料,在时间为10时,工件的加工时间全部增加 10%。
表一 各工件加工时间表
通过基于工业大数据的柔性作业车间动态调度方法得到的调度方案如图5所示,图中横坐标表示时间,纵坐标表示机器,甘特图中的百分位数字表示工件类型,个位数字表示工序号。最终方案的最大完工时间为21.8加工单位时间,总拖期5.3加工单位时间,机器总负荷 96.4加工单位时间。
采用专利方法可以顺利解决柔性作业车间动态调度问题,并且使用该方法挖掘的调度规则来指导柔性作业车间调度具有实际可作性强、计算效率高,无需对调度问题进行建模,能实时响应车间的扰动等特点。
Claims (1)
1.一种基于工业大数据的柔性作业车间动态调度方法,包括以下步骤:
步骤一,数据采集:使用Hadoop生态体系下的数据采集工具Sqoop与Flume,从现有的信息系统MES、ERP、SCADA中采集与调度相关的历史数据,并将其存于HDFS文件系统中;采集数据包括三部分Dh={d1,d2,d3}:d1为调度方案制定时与扰动相关的系统扰动信息;d2为工件的某道工序选择加工机器时,当前可以加工这道工序的机器集合中的每台机器的状态信息;d3为空闲机器需要在等待队列中选择工件进行加工时,当前队列中的每个工件的状态信息;
步骤二,数据整合:通过数据仓库工具Hive使用SQL语句对HDFS文件系统中的调度数据集合Dh以调度方案为单元进行划分,即将一次调度方案在执行中产生的调度相关历史数据划分到一起;
步骤三,数据转化:使用Spark将整合后数据中的d2与d3部分转化为训练实例的形式,便于数据挖掘算法进行调度规则挖掘;具体包括:
步骤3.1:对于采集的调度数据集合Dh的d2部分,将某历史调度方案中实际选择的机器m1视为最合适的机器,将其与其他可加工此工序的备选机器集合{m2,m3...}中的机器一一比较形成训练实例;
步骤3.2:对于采集的调度数据集合Dh的d3部分,将某历史调度方案中实际选择的工件j1视为最合适的机器,将其与其他等待加工的工件集合{j2,j3...}中的工件一一比较形成训练实例;
步骤四,数据筛选:从最大完工时间、总拖期时间、机器总负荷三个指标对历史调度方案进行考量,筛选得到表现良好的调度方案在执行中产生的调度相关历史数据集合Db;具体包括:
步骤4.1:在最大完工时间指标上,以同种情况下只使用SPT规则生成的的调度方案的最大完工时间作为筛选标准;只使用SPT规则是指工件选择加工最快的机器与空闲机器选择加工时间最短的工件;最大完工时间满足此指标的调度方案进入步骤4.2,不满足则淘汰;
步骤4.2:在总拖期时间指标上,以同种情况下使用EDD规则结合SPT规则完成相同情况下的调度任务的总延期时间作为筛选标准;SPT+EDD规则是指是指工件选择加工最快的机器与空闲机器选择交货期最早的工件;总拖期时间满足此指标的调度方案进入步骤4.3,不满足则淘汰;
步骤4.3:在机器总负荷指标上,以同种情况下结合LMWT与SPT规则完成调度任务的机器总负荷作为筛选标准,LMWT+SPT规则是指是指工件选择空闲时间最长的机器与空闲机器选择加工时间最短的工件;能同时满足这三个指标的调度方案在执行中产生的调度数据集合,将会作为调度规则挖掘算法的输入;
步骤五;基于扰动属性的聚类:采用DBSCAN对Db以调度方案为单元,即一个调度方案产生的数据作为一个对象,根据Db中的方案制定时的系统扰动属性,即d1部分,进行基于扰动属性的聚类;具体包括:
步骤5.1:对d1部分数据标准化处理,如某扰动属性在各个方案中的数据为X1,X2,X3...,Xn,则它们需要经过如公式(1)变换;
步骤5.2:确定DBSCAN算法的参数领域半径Eps,与核心对象领域半径内至少包含的对象个数MinPts;
步骤5.3:随机找出一个未被处理的核心对象p,即没有归为某个簇或者标记为噪声的核心对象p,核心对象p领域半径内包含的对象个数不小于MinPts,建立新簇C,将p邻域半径Eps内的所有对象加入候选集N;
步骤5.4:随机找出一个候选集N中尚未被处理的对象q;若q为核心对象,则将q邻域半径Eps内未被处理的且未加入到N的对象加入到N中;如果q未归入任何一个簇,则将q加入C;
步骤5.5:重复步骤5.4,直到N为空;
步骤5.6:重复步骤5.3、5.4、5.5,直到没有新的对象可以被添加到任何簇时,该过程结束
步骤六,随机森林调度规则挖掘:采用改进的随机森林算法,从聚类后每个簇中分别挖掘得到解决工件选择机器问题的随机森林调度规则1与解决空闲机器选择加工工件问题的随机森林调度规则2;具体包括:
步骤6.1:对于每个聚类后的簇,从簇中的d2与d3中有放回地抽取训练实例,分别形成k个新训练实例集合P1与P2,用于构建决策树;
步骤6.2:P1与P2分别从d2与d3中随机选择m个特征属性,并计算最佳分裂方式,分别训练得到k棵决策树T1与T2;
其中决策树构建过程为:
步骤6.2.1:创建根节点N;
步骤6.2.2:判断训练实例集合是否还有剩余训练实例,若没有则返回节点N,若有则下一步;
步骤6.2.3:判断训练实例集合剩余训练实例的调度决策是否都为C,若是则返回节点N,并标记为类C,若有则下一步;
步骤6.2.4:判断生产属性列表是否为空,空则标记为样本中出现最多的类,否则下一步;
步骤6.2.5:检查属性类表中的属性是否为连续性,连续属性将通过二分法,得到属性增益G(D,A)最大的属性分离方式;通过二分法可以将属性的所有属性值分为两部分,这一共有N-1种划分方法,二分法的划分阈值为选择二分处相邻两点的平均值;信息增益计算方式如下公式(2)、(3)、(4);
G(D,A)=H(D)-H(D|A) (2)
式(2)中G(D,A)表示属性A的信息增益;式(3)中H(D,A)类别信息熵;式(4)中H(D|A)表示条件熵;此外,D表示训练实例数据集,|D|表示D的训练实例数量,而D具有K个类别Ck,k=1,2;|Ck|表示在类别Ck中的训练实例个数;D可以通过属性A将其划分为n个子集D1,D2,…,Dn,|Di|为Di的训练实例个数;Di中属于类Ck的训练实例的集合为Dik,|Dik|为Dik的训练实例个数;
步骤6.2.6:选择信息增益率最大的属性标记节点N,信息增益率计算公式如式(5)、(6),返回步骤6.2.2;
GR(D,A)=G(D,A)/H(A) (5)
式(5)中GR(D,A)表示信息增益率;H(A)表示分裂信息;其他符号含义同上;
步骤6.3:使用d2和d3中未被选择的训练实例,分别测试T1与T2中决策树的分类表现;
步骤6.4:计算T1或T2中决策树之间的相似度S,其计算公式如式(7),若决策树之间的相似度大于60%,则比较步骤6.3中的测试表现,保留表现好的决策树,形成了随机森林;
式(7)中DT1与DT2表示进行相似度计算的两棵决策树;k表示DT1与DT2对测试实例分类结果相同的次数;r1n与r2n表示第n次分类结果相同时,DT1与DT2用到的特征属性,c表示分类结果;当r1n=r2n时,即DT1与DT2用相同的特征属性得到相同的分类结果时,I(r1n.c,r2n.c)=1,否则为0,Nt为测试实例的个数;
步骤6.5:通过贝叶斯投票机制,分别计算T1与T2中每棵决策树的权值w,h,计算公式如式(8)、(9),得到随机森林调度规则1与随机森林调度规则2;
式(8)、(9)中v代表此决策树对测试实例正确分类的次数;m表示对测试实例错误分类次数;
步骤七,调度规则使用:通过所挖掘随机森林调度规则指导柔性作业车间动态调度;具体包括:
步骤7.1根据解决的问题为工件机器选择问题,还是空闲机器选择加工工件问题,找到与当前柔性作业车间的扰动环境所属的簇所对应的随机森林调度规则1或随机森林调度规则2;
步骤7.2,根据所选随机森林调度规则,通过两两比较选出最优的方法,在候选机器集合M或候选工件集合J中选出最合适的工件或机器;
步骤7.2.1,对于工件机器选择问题,若m1,m2是M中两台机器,根据步骤7.1所选的随机森林调度规则1,计算得到随机森林调度规则中每棵决策树的选择结果,这些结果中包含了选择1和选择2,选择1代表前者m1合适,选择2代表后者m2合适;对于空闲机器选择工件问题,若j1,j2是J中的两个工件,根据步骤7.1所选的随机森林调度规则2,计算得到随机森林调度规则中每棵决策树的选择结果,这些结果中包含了决策1和决策2,决策1代表前者j1合适,决策2代表后者j2合适;
步骤7.2.2:通过贝叶斯投票机制得到每棵决策树加权后的选择结果WR,WR计算公式如式(10),并求得加权结果的平均值AWR,若AWR小于1.5表示前者m1或j1合适,若AWR大于1.5表示后者m2或j2合适;
WR=wC+hR (10)
式(10)中C代表此决策树给出的分类结果;R代表所有决策树给出的分类结果的均值,w,h计算公式见式(8)、(9)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910144370.5A CN109902954B (zh) | 2019-02-27 | 2019-02-27 | 一种基于工业大数据的柔性作业车间动态调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910144370.5A CN109902954B (zh) | 2019-02-27 | 2019-02-27 | 一种基于工业大数据的柔性作业车间动态调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109902954A CN109902954A (zh) | 2019-06-18 |
CN109902954B true CN109902954B (zh) | 2020-11-13 |
Family
ID=66945563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910144370.5A Active CN109902954B (zh) | 2019-02-27 | 2019-02-27 | 一种基于工业大数据的柔性作业车间动态调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109902954B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111047215B (zh) * | 2019-12-09 | 2023-06-23 | 中国兵器科学研究院 | 基于随机森林的现场可更换单元划分类别确定方法 |
CN111401427B (zh) * | 2020-03-12 | 2022-11-08 | 华中科技大学 | 一种基于工业大数据的产品成本评估方法及系统 |
CN111476466B (zh) * | 2020-03-25 | 2022-06-03 | 重庆邮电大学 | 基于情景感知的数字化车间电能管理研究方法 |
CN111766839B (zh) * | 2020-05-09 | 2023-08-29 | 同济大学 | 一种智能车间调度知识自适应更新的计算机实现系统 |
CN112712289B (zh) * | 2021-01-18 | 2022-11-22 | 上海交通大学 | 基于时间信息熵的自适应方法、系统及介质 |
CN112904818B (zh) * | 2021-01-19 | 2022-07-15 | 东华大学 | 一种复杂结构件加工车间预测-反应式调度方法 |
CN112883640B (zh) * | 2021-02-04 | 2023-06-09 | 西南交通大学 | 数字孪生车站系统、基于该系统的作业调度方法及应用 |
CN114936756B (zh) * | 2022-04-29 | 2024-09-13 | 北京航空航天大学 | 面向跨域协同车间迁移调度优化方法、装置及可存储介质 |
CN115357570A (zh) * | 2022-08-24 | 2022-11-18 | 安徽维德工业自动化有限公司 | 基于随机森林算法的车间优化调度管理方法 |
CN116402173B (zh) * | 2022-09-06 | 2024-08-23 | 大连理工大学 | 一种基于机器学习的卸船集装箱箱区、箱位分配智能算法 |
CN117010671B (zh) * | 2023-10-07 | 2023-12-05 | 中国信息通信研究院 | 基于区块链的分布式柔性车间调度方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106611232A (zh) * | 2016-02-04 | 2017-05-03 | 四川用联信息技术有限公司 | 一种求解多工艺路线作业车间调度的分层优化算法 |
CN107862411A (zh) * | 2017-11-09 | 2018-03-30 | 西南交通大学 | 一种大规模柔性作业车间调度优化方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104914835A (zh) * | 2015-05-22 | 2015-09-16 | 齐鲁工业大学 | 一种柔性作业车间调度多目标的方法 |
CN106094757B (zh) * | 2016-07-15 | 2018-12-21 | 郑州航空工业管理学院 | 一种基于数据驱动的动态柔性作业车间调度控制方法 |
CN108733003B (zh) * | 2017-04-20 | 2020-11-13 | 南京理工大学 | 基于kmeans聚类算法的回转类零件工序工时预测方法及系统 |
-
2019
- 2019-02-27 CN CN201910144370.5A patent/CN109902954B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106611232A (zh) * | 2016-02-04 | 2017-05-03 | 四川用联信息技术有限公司 | 一种求解多工艺路线作业车间调度的分层优化算法 |
CN107862411A (zh) * | 2017-11-09 | 2018-03-30 | 西南交通大学 | 一种大规模柔性作业车间调度优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109902954A (zh) | 2019-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109902954B (zh) | 一种基于工业大数据的柔性作业车间动态调度方法 | |
CN105045243B (zh) | 一种半导体生产线动态调度装置 | |
CN107451747B (zh) | 基于自适应非支配遗传算法的车间调度系统及其工作方法 | |
CN112446526B (zh) | 生产排程系统及方法 | |
CN101788819A (zh) | 大规模生产过程一种基于迭代式分解和流松驰的调度方法 | |
CN103310285A (zh) | 可用于半导体生产线动态调度的性能预测方法 | |
Shmeleva et al. | Industrial management decision support system: From design to software | |
CN110597796B (zh) | 基于全生命周期的大数据实时建模方法及系统 | |
Márquez et al. | Shop scheduling in manufacturing environments: a review | |
Zahmani et al. | Extraction of dispatching rules for single machine total weighted tardiness using a modified genetic algorithm and data mining | |
CN112308298B (zh) | 一种面向半导体生产线的多场景性能指标预测方法及系统 | |
Maquee et al. | Clustering and association rules in analyzing the efficiency of maintenance system of an urban bus network | |
CN113570118B (zh) | 一种基于调度规则的车间排产和分析方法 | |
CN115185247A (zh) | 一种基于产品加工质量的机床运行状态预测与车间调度方法 | |
Liu et al. | Integrated optimization of mixed-model assembly line balancing and buffer allocation based on operation time complexity | |
CN109615115A (zh) | 一种面向任务可靠性的集成生产任务调度方法 | |
Singh et al. | Harnessing Big Data Analytics for Optimal Car Choices | |
Li et al. | An efficient adaptive dispatching method for semiconductor wafer fabrication facility | |
Wenjing et al. | Data mining based dynamic scheduling approach for semiconductor manufacturing system | |
Yu et al. | Comparison of two typical scheduling rules of line-seru conversion problem | |
Wang | Flexible job shop scheduling rules mining based on random forest | |
Illgen et al. | Digital assistance system for target date planning in the initiation phase of large-scale projects | |
Tho et al. | Selecting a CNC machine tool using the intuitionistic fuzzy TOPSIS approach for FMC | |
Liu et al. | Manufacturing capability match and evaluation for outsourcing decision-making in one-of-a-kind production | |
Strasser et al. | Reducing variant diversity by clustering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |