专利名称:基于模拟疫苗的动态人工免疫故障诊断方法
技术领域:
本发明涉及工艺流程的生产技术领域,特别涉及一种基于模拟疫苗的动态人工免疫故障诊断方法。
背景技术:
随着现代科学技术的发展,如化工过程、炼油过程、生物制药过程等流程工业的复杂程度与日俱增。越来越多的辅助装置,如集散控制系统(DCS)、制造执行系统(MES)等,被广泛运用于监控在线生产操作,保障流程的稳定、安全运行。与此同时,随着生产自动化水平的提高,工厂中操作员的数量较过去大为精简,这使得往往一个操作员需要面对一个甚至多个生产单元或者装置。简单的变量报警不足以为操作员处理突发情况提供最直接的信号,需要操作员凭借大量的经验判断流程的可能状态,这使得经验不丰富的操作员可能会由于判断失误或者操作滞后,而引发更加严重的后果。 目前,通过建立独立的故障诊断系统,及时发现并诊断出故障原因,并将可能发生的故障类别通过界面展示给操作员。不但能保证生产运行的稳定性、预防重大安全事故的发生,还能辅助操作员对故障进行处理、修复,有效降低故障所造成的损失。一个完善的在线故障诊断系统,首先必须是基于有效快速的故障诊断方法,能够在扰动发生后快速的检测出故障,并准确诊断出可能的故障类别。其次,在线故障诊断系统必须能够具备完整的结构,能够从在线运行的装置上获取数据,在核心的诊断结束后还能够通过友好的界面将诊断结果展示给操作员。最后,故障诊断方法必须具备自适应能力和自学习能力,在线故障诊断系统能够根据操作员的反馈,利用在线数据实现系统的自学习,完善系统的在线故障诊断能力。人工免疫系统是一种综合智能系统,它将免疫学与工程学有机结合,利用数学、计算机等技术建立免疫机制模型,并将其应用于工程的设计、实施等方面。将人工免疫中对于自我与非我的判断引入到故障诊断领域。动态人工免疫系统是针对工艺流程的动态特性,以工艺流程的动态变量数据为驱动,以历史数据时间序列矩阵为抗体,在线数据时间序列矩阵为抗原,通过计算抗原与抗体的差异度对工艺流程进行在线故障诊断。然而对于很多新的工艺流程,没有经历长时间的运行,缺少可用的历史样本。在这种情况下,由于历史数据不足,导致动态人工免疫系统不能够有效地对故障进行诊断,因此有必要提出更新的机制产生可用于动态人工免疫故障诊断的抗体。
发明内容
本发明旨在至少解决上述技术问题之一。为此,本发明的一个目的在于提出一种基于模拟疫苗的动态人工免疫故障诊断方法,该方法能够克服工艺流程的历史数据不足、有效地对工艺流程的故障进行准确、快速的检测,且能够判断出故障的类型。为了实现上述目的,本发明的实施例提出了一种基于模拟疫苗的动态人工免疫故障诊断方法,包括以下步骤根据工艺流程的工艺信息、操作规程和历史数据建立用于模拟工艺流程开车和稳态运行的动态仿真模型;运行所述动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,其中,所述模拟样本集合中具有多种类型的模拟样本,所述模拟样本集合包括模拟正常样本集合和模拟故障样本集合,所述模拟正常样本集合包括正常开车阶段和稳态运行过程的模拟数据样本集合,所述模拟故障样本集合中包括开车阶段和稳态运行过程中发生的多种故障对应的故障数据样本集合;从所述模拟正常样本集合提取预定时间内的数据生成正常模拟疫苗,从所述模拟故障样本集合提取预定时间内的数据生成故障模拟疫苗;获取工艺流程运行的历史数据以生成历史样本集合,其中,所述历史样本集合包括历史正常样本集合和历史故障样本集合;根据所述正常样本集合中正常历史样本和对应的所述正常模拟疫苗获得正常模拟疫苗的免疫抗体系数,并根据所述正常模拟疫苗生成正常抗体库;根据所述历史故障样本集合中历史故障样本和对应的所述故障模拟疫苗获得故障模拟疫苗的免疫抗体系数,并根据所述故障模拟疫苗生成故障抗体库。另外,根据本发明上述实施例的基于模拟疫苗的动态人工免疫故障诊断方法还可以具有如下附加的技术特征
在本发明的一个实施例中,采用DTW算法计算故障开车历史样本与正常开车历史样本的最小差异度矩阵。在一些实例中,还包括运行实际的工艺流程以得到在线运行数据的样本;从所述在线运行数据的样本中提取当前时刻前预定范围的数据片段集合。在一些实例中,还包括计算当前时刻抗原与正常抗体库内所有抗体的差异度以得到差异度集合;判断所述差异度集合中的每个差异度是否均小于所述正常抗体库;如果是则判断所述工艺流程正常,否则判断所述工艺流程存在故障。在一些实例中,当判断所述工艺流程存在故障后,进一步判断所述工艺流程的故障类型。在一些实例中,进一步包括对于开车过程,获取与当前工况近似条件下正常开车
历史样本// 一段正常开车样本数据,并由DTW算法或者第一预定公式计算得到偏差矩阵
为诊断用抗原;对于稳态运行过程,获取所述在线数据片段每个采样点值减去检测出故障时刻的数据D得到诊断用抗原;利用DTW算法或第二预定公式计算当前时刻诊断用抗原与所述全部故障抗体库内所有抗体的差异度;如果存在一个故障抗体计算得到差异度小于该类型故障抗体库阈值,则判断工艺流程为相应故障类型的故障。在一些实例中,建立所述动态仿真模型包括如下方式通过流程模拟软件或者通过微分方程建立所述动态仿真模型。在一些实例中,所述工艺信息包括工艺流程图、物料状态、操作参数、控制器设置以及环境参数。在一些实例中,运行所述动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,进一步包括对所述模拟数据集合中的每个模拟数据进行归一化以得到所述模拟样本集合,其中,归一化过程通过如下公式进行Z= O、+ ~——,
Y— Y
maxmin其中,X为某个变量在模拟样本中的模拟数据,Z为变量X在实际正常工况下历史数据的平均值,Xfflax和Xmin分别为变量X在实际正常工况下历史数据的最大值和最小值。在一些实例中,所述运行实际的工艺流程以得到在线运行数据的样本,还包括对所述在线运行数据的样本进行归一化。在一些实例中,还包括获取所述工艺流程运行的历史数据;根据所述历史数据对所述动态仿真模型进行校准。在一些实例中,运行所述动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,进一步包括向所述动态仿真模型中添加正常操作范围内的扰动,以在所述动态仿真模型运行时生成所述模拟正常样本集合;以及向所述动态仿真模型中添加故障扰动,以在所述动态仿真模型运行时生成所述模拟故障样本集合,其中,所述扰动包括环境参数、噪声以及操作参数。在一些实例中,还包括根据在线抗原和正常抗体库和故障抗体库的比较结果,通 过在线数运行据对相应抗体库中的抗体进行更新。根据本发明实施例的基于模拟疫苗的动态人工免疫故障诊断方法,克服实际生产装置(工艺流程)历史数据缺乏的不足,利用动态模拟的方式生成正常和故障运行数据,并生成抗体,应用于基于人工免疫的流程工业故障判断,本发明实施例提出的新的抗原和抗体的生成方式及抗体库和抗原库的生成方法,使得工艺流程在故障诊断的过程中可以通过流程模拟及克隆、变异产生大量不同的抗体,在诊断的同时抗体自动更新,满足实际工业流程对于适应性的要求,从而能够有效地对工艺流程的故障进行准确、快速的检测,且能够判断出故障的类型。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中图I为本发明实施例的基于模拟疫苗的动态人工免疫故障诊断方法生成抗体库的流程图;图2为本发明一个实施例的基于模拟疫苗的动态人工免疫故障诊断方法的详细流程图;图3本发明一个实施例的基于模拟疫苗的动态人工免疫故障诊断方法的抗体/抗原的构成的示意图;图4为发明一个实施例的基于模拟疫苗的动态人工免疫故障诊断方法的精馏塔系统流程示意图;以及图5为图4所示的根据精馏塔系统流程建立的动态模型示意图。
具体实施例方式现在将详细描述本发明的实施例,所述实施例的示例在附图中示出。虽然示出了特定实施例,但是应理解不意味着将本发明限于这些特定实施例。相反地,本发明包括在所附的权利要求的精神和范围内的替代、修改和等同。阐明多个具体细节是为了提供对本文提出的主题的全面理解。但是本领域的普通技术人员应明白,可以不使用这些具体细节来实施该主题。在其他情况下,没有详细描述公知的方法、程序、部件和电路,从而避免不必要地使本实施例的方面模糊。尽管本文可能使用术语第一、第二等等来描述各种元件,但是这些元件不应受这些术语限制。这些术语仅仅用于将一个元件与另一个元件区别开。例如第一排序标准可以称为第二排序标准,类似地,第二排序标准可以称为第一排序标准,在不脱离本发明的范围的情况下。第一排序标准和第二排序标准都是排序标准,但是它们不是相同的排序标准。本文中本发明的描述中使用的术语仅仅是为了描述特定实施例的目的,并不意味着对本发明的限制。如本发明及所附权利要求的描述中所使用的,单数形式“一个”“一种”和“所述”意味着也包括复数形式,除非上下文另外清楚指出。还应理解,本文所使用的术语“和/或”表示并包含一个或多个的相关联的列出的项目的任何一个和所有可能组合。还应进一步理解,当在说明书中使用时,术语“包括”和/或“包含”指定陈述的特征、操作、元件和/部件的存在,但不排除一个或多个其他特征、操作、元件、部件和/或它们的组的存在或添加。 如本文所使用的,根据上下文,术语“如果”可理解为是指“当”或“在……时”或“响应于确定”或“根据……的确定”或“响应于检测”,陈述的先决条件是真实的。类似地,根据上下文,短语“如果确定[陈述的先决条件是真实的]”或“如果[陈述的先决条件是真实的]”或“当[陈述的先决条件是真实的]”可理解为是指“在确定……时”或“响应于确定”或“根据…….的确定”或“在检测……时”或“对应于检测”陈述的先决条件是真实的。以下结合附图描述根据本发明实施例的基于模拟疫苗的动态人工免疫故障诊断方法。其中,工艺流程包括但不限于化工过程、炼油过程、生物制药过程等。相应地对上述流程工业过程通过本发明实施例的方法可对工艺故障进行准确、快速的检测,且能够判断出故障的类型。具体地,参见图I,根据本发明实施例的基于模拟疫苗的动态人工免疫故障诊断方法,包括如下步骤步骤S101,根据工艺流程的工艺信息、操作规程和历史数据建立用于模拟工艺流程开车和稳态运行的动态仿真模型,其中,工艺信息包括但不限于工艺流程图、物料状态、操作参数、控制器设置以及环境参数。具体而言,结合图2所示,根据工艺流程中已知的工艺信息,如工艺流程图、物料状态、操作参数、控制器设置以及环境参数等,在步骤S202中,通过流程模拟软件或者通过微分方程建立所述动态仿真模型,例如通过UniSim,Aspen Dynamics,DynSim,ChemCad等流程模拟软件建立流程的动态模型,当然,在本发明的其它示例中,还可根据流程模拟的知识及相关资料、数据,以建立微分方程等数学方法,开发特定的动态数学模型(动态模型)。进一步地,结合图2,如步骤S201所示,可以获取工艺流程运行的历史数据,根据历史数据对动态模型进行校准,即获取工艺流程的历史数据帮助对建好的动态模型进行校正,直至运行动态模型产生的模拟数据与历史数据能够较好的吻合。步骤S102,运行动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,其中,模拟样本集合中包括多种类型的模拟样本,模拟样本集合包括模拟正常样本集合和模拟故障样本集合,所述模拟正常样本集合包括正常开车阶段和稳态运行过程的模拟数据样本集合,模拟故障样本集合中包括开车阶段和稳态运行过程中发生的多种故障对应的故障数据样本集合。具体而言,结合图2,在经过步骤S202建立了较为准确的动态仿真模型后,在步骤S203中运行该模型,即运行动态仿真模型以产生多个状态下的模拟运行数据的模拟样本集合,并保存运行产生的模拟数据(模拟样本集合)。更为具体地,生成模拟正常样本集合通过向动态仿真模型中添加正常操作范围内的扰动,以在动态仿真模型运行时生成模拟正常样本集合。即根据操作手册或实际情况,力口入正常范围内的扰动,包括环境参数的渐变,适当的噪音,以及一些允许范围内的操作参数调整等,以便得到模拟正常样本集合。向动态仿真模型中添加故障扰动,以在动态仿真模型运行时生成模拟故障样本集合。即同样根据操作手册或实际情况,加入正常范围之外的扰动,包括超出操作范围的操作参数变化,控制器的改动,部分阀门的关闭等,以便得到不同类型的故障所对应的模拟故障 样本集合。在该实例中,加入的正常操作范围内的扰动以及故障扰动包括但不限于环境参数、噪声以及操作参数。需要说明的是,在对模拟数据集合中每个模拟数据进行处理之前,还应对模拟数据集合中每个模拟数据进行归一化,具体而言,如图2所示,对上述步骤S203运行时产生的模拟数据集合中每个模拟数据进行归一化以得到模拟样本集合,其中,归一化过程通过如下公式进行
y- _ YX = 0.5 +-,
I靈-I誦其中,X为某个变量在模拟样本中的模拟数据,X为变量X在实际正常工况下历史数据的平均值,Xfflax和Xmin分别为变量X在实际正常工况下历史数据的最大值和最小值(对应图2中的步骤S204)。步骤S103,从模拟正常样本集合提取预定时间内的数据生成正常模拟疫苗,从模拟故障样本集合提取第预定时间内的数据生成故障模拟疫苗,作为一个具体的例子,对于经步骤S204归一化后得到的模拟正常样本集合进行如下操作,以得到正常模拟疫苗。具体地,结合图2,在步骤S205,将正常操作分稳态运行过程和开车过程,从模拟正常样本集合中提取预定时间内(稳态运行时固定时间长度的时间序列,以及开车过程内的时间序列)的数据片段生成不同时期的正常模拟疫苗,记作VN=[VN1,VN2, -,VJ,其中VNi为变量i的模拟数据时间序列,n为变量总数。同样地,对于经步骤S204归一化后得到的模拟故障样本集合进行如下操作,以得到故障模拟疫苗。具体地,结合图2,在步骤S206,对每一种类型的故障进行以下操作,取故障引入时间后固定时间长度的数据片段生成故障模拟疫苗,记作VS=[VS1,Vs2,…,Vsn],其中Vsi为变量i的在故障s引入后的模拟数据时间序列,n为变量总数。步骤S104,获取工艺流程运行的历史数据以生成历史样本集合,其中,历史样本集合包括历史正常样本集合和历史故障样本集合,即由实际装置的DCS系统等取得历史样本集合。结合图2,如步骤S201所示,可以获取工艺流程运行的历史数据生成历史样本集合。历史样本集合中包括多种类型的历史样本,在上述实例中,历史正常样本集合包括稳态运行和正常开车阶段的历史数据样本集合,历史故障样本集合中包括稳态运行和正常开车阶段的实际发生过的多种故障对应的故障数据样本集合。其中,归一化过程通过如下公式进行
权利要求
1.一种基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,包括以下步骤 根据工艺流程的工艺信息、操作规程和历史数据建立用于模拟工艺流程开车和稳态运行的动态仿真模型; 运行所述动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,其中,所述模拟样本集合中具有多种类型的模拟样本,所述模拟样本集合包括模拟正常样本集合和模拟故障样本集合,所述模拟正常样本集合包括正常开车阶段和稳态运行过程的模拟数据样本集合,所述模拟故障样本集合中包括开车阶段和稳态运行过程中发生的多种故障对应的故障数据样本集合; 从所述模拟正常样本集合提取预定时间内的数据生成正常模拟疫苗,从所述模拟故障样本集合提取预定时间内的数据生成故障模拟疫苗; 获取工艺流程运行的历史数据以生成历史样本集合,其中,所述历史样本集合包括历史正常样本集合和历史故障样本集合; 根据所述正常样本集合中正常历史样本和对应的所述正常模拟疫苗获得正常模拟疫苗的免疫抗体系数,并根据所述正常模拟疫苗生成正常抗体库; 根据所述历史故障样本集合中历史故障样本和对应的所述故障模拟疫苗获得故障模拟疫苗的免疫抗体系数,并根据所述故障模拟疫苗生成故障抗体库。
2.根据权利要求I所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,还包括 采用DTW算法计算故障开车历史样本与正常开车历史样本的最小差异度矩阵。
3.根据权利要求2所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,还包括 运行实际的工艺流程以得到在线运行数据的样本; 从所述在线运行数据的样本中提取当前时刻前预定范围的数据片段集合。
4.根据权利要求3所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,还包括 计算当前时刻抗原与正常抗体库内所有抗体的差异度以得到差异度集合; 判断所述差异度集合中的每个差异度是否均小于所述正常抗体库阈值; 如果是则判断所述工艺流程正常,否则判断所述工艺流程存在故障。
5.根据权利要求4所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,当判断所述工艺流程存在故障后,进一步判断所述工艺流程的故障类型。
6.根据权利要求5所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,进一步包括 对于开车过程,获取与当前工况近似条件下正常开车历史样本一段正常开车样本数据,并由DTW算法或者第一预定公式计算得到偏差矩阵为诊断用抗原; 对于稳态运行过程,获取所述在线数据片段每个采样点值减去检测出故障时刻的数据D得到诊断用抗原; 利用DTW算法或第二预定公式计算当前时刻诊断用抗原与所述全部故障抗体库内所有抗体的差异度;如果存在一个故障抗体计算得到差异度小于该类型故障抗体库阈值,则判断工艺流程为相应故障类型的故障。
7.根据权利要求I所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,建立所述动态仿真模型包括如下方式 通过流程模拟软件或者通过微分方程建立所述动态仿真模型。
8.根据权利要求I所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,所述工艺信息包括工艺流程图、物料状态、操作参数、控制器设置以及环境参数。
9.根据权利要求I所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,运行所述动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,进一步包括 对所述模拟数据集合中的每个模拟数据进行归一化以得到所述模拟样本集合,其中,归一化过程通过如下公式进行 V. — Y 1 = 0.5 + ---, Y -Ymaxmin 其中,X为某个变量在模拟样本中的模拟数据,I为变量X在实际正常工况下历史数据的平均值,Xfflax和Xmin分别为变量X在实际正常工况下历史数据的最大值和最小值。
10.根据权利要求3所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,所述运行实际的工艺流程以得到在线运行数据的样本,还包括对所述在线运行数据的样本进行归一化。
11.根据权利要求I所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,还包括 获取所述工艺流程运行的历史数据; 根据所述历史数据对所述动态仿真模型进行校准。
12.根据权利要求I所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,运行所述动态仿真模型以得到多个状态下的模拟运行数据的模拟样本集合,进一步包括 向所述动态仿真模型中添加正常操作范围内的扰动,以在所述动态仿真模型运行时生成所述模拟正常样本集合;以及 向所述动态仿真模型中添加故障扰动,以在所述动态仿真模型运行时生成所述模拟故障样本集合, 其中,所述扰动包括环境参数、噪声以及操作参数。
13.根据权利要求6所述的基于模拟疫苗的动态人工免疫故障诊断方法,其特征在于,还包括 根据在线抗原和正常抗体库和故障抗体库的比较结果,通过在线运行数据对相应抗体库中的抗体进行更新。
全文摘要
本发明提出一种基于模拟疫苗的动态人工免疫故障诊断方法,包括根据工艺流程建立动态仿真模型;运行动态仿真模型以得到模拟样本集合;从模拟正常样本集合提取预定时间内的数据生成正常模拟疫苗,从模拟故障样本集合提取预定时间内的数据生成故障模拟疫苗;获取工艺流程运行的历史数据以生成历史样本集合;根据正常样本集合和正常模拟疫苗生成正常抗体库;根据历史故障样本集合和故障模拟疫苗生成故障抗体库。该方法能够克服工艺流程的历史数据不足、有效地对工艺流程的故障进行准确、快速的检测,且能够判断出故障的类型。
文档编号G06F19/00GK102760208SQ20121022936
公开日2012年10月31日 申请日期2012年7月3日 优先权日2012年7月3日
发明者戴一阳, 朱剑锋, 舒逸聃, 赵劲松 申请人:清华大学