论文部分内容阅读
流程工业在生产的过程中会积累大量的检测数据,对这些数据进行知识发现将对工业生产和控制过程产生有意义的指导。在分析了流程工业生产过程的几大特点之后,课题组提出了流程对象抽象模型,并基于此提出了名为Time series-Clustering-Association-Chain/Tree Flow(简称为T-C-A-C/T Flow)的知识发现模型,本文的研究正是基于该已有的原始算法模型。T-C-A-C/T Flow模型首先对生产过程的环节数据进行预处理并对各环节的时序进行发现和调整,接着对环节数据进行聚类以减少离散状态数,在聚类基础上对不同环节数据进行二项关联规则生成,二项关联规则通过关联度合并为关联链/关联树,并最终统计生成环节状态之间的关联链,以此作为知识发现的最终结果以用于辅助人们决策。时序发现在整个算法模型中的作用是至关重要的,原始算法模型中采用了基于统计极值的时序发现方法,该方法具有较高的计算效率,但由于极值易受噪音和采样影响,该方法的准确度并不理想。同时,由于实际生产中的数据量巨大并且该知识发现模型包含了比较耗时的迭代型数据挖掘算法,串行化计算方案将导致系统运行缓慢,从而大大降低系统的实用性。为此,本文在对原始算法流程进行了针对性改进之后,对整个算法流程进行了并行化设计与实现,以提升知识发现的准确性与实时性。针对原始算法流程的若干不足,本文对其进行了有针对性的改进。首先,针对环节数据之间度量单位以及数据波动范围的不同,本文对环节数据进行了基于Z-score的数据归一化处理,归一化之后的数据也方便了后续的可视化分析。其次,本文提出了基于Pearson相关系数曲线的环节时序发现方法,该方法针对每一个时间延迟计算两环节数据的Pearson相关系数,并将其中最大相关系数对应的时间延迟作为两环节的相对时间延迟,经实验分析该方法具有很高的准确度。这些有针对性的算法改进有效地提升了知识发现结果的准确性和有效性,这对流程工业知识发现理论和实际生产应用都将具有重大意义。接下来本文针对改进之后的算法模型,进行了基于Spark的并行化设计。针对并行计算中的瓶颈环节——数据通信,提出了边界数据处理方法,有效地减少了并行计算中不同计算节点之间的数据通信量,该方法在系统的多个并行化算法中被使用到。整个系统的并行化设计包含了数据预处理、时序发现与调整、环节聚类、关联分析以及状态关联这几大步骤。最终,本文基于Spark框架以编程的方式实现了该知识发现模型的并行化系统,经过测试对比和分析得出该并行化设计与实现较串行化有了较大的效率提升。并行化的设计与实现加速了知识发现过程,减少了人们等待时间,使计算结果可以更快的应用于指导实际生产,时效性的提升无疑大大增加了系统的实用性。