CN108664400B - 一种基于相依贝叶斯网络的故障诊断技术的构建方法 - Google Patents
一种基于相依贝叶斯网络的故障诊断技术的构建方法 Download PDFInfo
- Publication number
- CN108664400B CN108664400B CN201810446523.7A CN201810446523A CN108664400B CN 108664400 B CN108664400 B CN 108664400B CN 201810446523 A CN201810446523 A CN 201810446523A CN 108664400 B CN108664400 B CN 108664400B
- Authority
- CN
- China
- Prior art keywords
- bayesian network
- model
- dependent
- function
- statement
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/366—Software debugging using diagnostics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2257—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Data Mining & Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Computational Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种基于相依贝叶斯网络的故障诊断技术的构建方法,步骤如下:1、确定待推理未知对象的域;2、使用一阶逻辑语言定义模型结构;3、生成Blog模型;4、将Blog模型转化为贝叶斯网络;5、定义相依贝叶斯网络;6、进行相依贝叶斯网络的参数学习;7、使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络故障推理。通过上述步骤,可以完成对基于相依贝叶斯网络的故障诊断技术的构建。本发明可以充分利用相依贝叶斯网络的有环且可以包含无限多个变量的特性,满足嵌入式软件随机故障的实际诊断需求,提高故障诊断的质量。
Description
技术领域
本发明提供一种基于相依贝叶斯网络的故障诊断技术的构建方法,它涉及一种基于相依贝叶斯网络的故障诊断技术的实现,属于软件可靠性、软件故障诊断领域。
背景技术
嵌入式软件已经在包括航空航天在内的许多重大工程和日常生活中得到广泛应用并起到核心作用,而且在未来的工业化进程中将会越来越重要。但是随着软件的规模和复杂度的增大,软件发生故障的概率也越来越大,历史上出现过的许多重大***事故,是由嵌入式软件错误导致的。可以预见的是,在未来很长一段时间内,与软件故障做斗争仍然是一个难以规避的主题,其中,对软件进行故障诊断是很重要的一个环节。对于规模庞大、行为复杂的大型软件***而言,对故障进行诊断定位是非常耗时耗力的。尤其是对于资源受限的复杂嵌入式软件***,由于其通常具有实时性、并发性、接口众多、交互频繁等特性,容易发生一些随机故障,即故障现象具有不确定性,更加难以复现和准确诊断定位。对发现的随机故障及其故障机理进行有效的不确定性量化推理诊断,是需要重点研究的问题。
贝叶斯网络是以贝叶斯理论为基础的基于概率推理的图形化网络,适用于表达和分析不确定性和概率性的事件。但是传统贝叶斯网络通常适用于对有限数量的随机变量建立固定的依赖结构,不支持未知对象的动态加入,而且受制于无环约束和祖先数量有限假设的约束。而嵌入式软件偶发的和难以复现的随机故障造成模型中对象的有环相依和数量未知,因而传统的贝叶斯网络并不是不确定性随机故障量化推理的理想手段。相依贝叶斯网络(Contingent Bayesian Networks,CBNs),是对贝叶斯网络的一种泛化处理,通过为网络模型的每条边标记一个表示激活状态的条件来表示依赖关系的不确定性,其优点是有环且可以包含无限多个变量。CBNs采用一种形式化的语言Blog定义含有未知对象的概率模型并进行不确定性量化识别。Blog模型定义了一种特定类型的一阶逻辑语言的模型结构的概率分布,是用来描述未知对象的概率模型,被设计用于推理未知对象,它可以包含可变化的、数量不限定的对象及它们之间的不确定关系。一个未知对象的概率模型即Blog模型描述了一个产生式的过程,其中一些步骤是用来添加对象,而另外一些步骤则是用来决定这些对象的属性及对象之间的关系。相依贝叶斯网络可以包含环以及无限变量的特性使得其更加适用于推理现实世界未知数量物体间的未知关系,拓展了传统贝叶斯网络的应用范围。
嵌入式软件由于其规模庞大、功能复杂,因而容易发生一些具有不确定性、更加难以复现和准确定位的随机故障,而且一旦发生,往往非常难以定位和排除,是亟待解决的问题。这样的随机故障具有对象未知、数量不确定以及随机故障之间可能还存在着依赖关系等特性,因而传统的贝叶斯网络不再适用于随机故障的诊断推理。而相依贝叶斯网络有环且可以包含无限多个变量的特性则非常适用于随机故障的诊断推理。同时,软件运行时面临的环境干扰也可能造成软件的故障,在进行故障诊断时,也必须考虑环境干扰的影响。针对这一状况,我们将提出一种基于相依贝叶斯网络的故障诊断技术的构建方法,在这项技术中,我们使用相依贝叶斯网络理论,将数量未知的故障现象、故障环境干扰作为未知对象,建立Blog模型,然后将其转化为相依贝叶斯网络,而后使用马尔科夫蒙特卡洛方法进行相依贝叶斯网络的故障推理。使用这一技术可以充分利用相依贝叶斯网络的有环且可以包含无限多个变量的特性,满足嵌入式软件随机故障的实际诊断需求,提高故障诊断的质量。
该软件故障诊断技术基于相依贝叶斯网络进行构建,形成基于相依贝叶斯网络的故障诊断技术,在提高软件故障诊断质量的同时,达到提高软件可信性的目的。
发明内容
(一)本发明目的:贝叶斯网络是以贝叶斯理论为基础的基于概率推理的图形化网络,用于表达和分析不确定性和概率性的事件,常用于故障推理。但贝叶斯网络受制于无环约束和祖先数量有限假设的约束,只适用于对有限数量的随机变量建立固定的依赖结构,不支持未知对象的动态加入。因此本发明将结合相依贝叶斯网络理论,提供一种基于相依贝叶斯网络的故障诊断技术的构建方法。相依贝叶斯网络通过为网络模型的每条边标记一个表示激活状态的条件来表示依赖关系的不确定性,因而可以有环且可以包含无限多个变量。在本发明中,我们借鉴相依贝叶斯网络理论,使用数量未知的故障现象、故障环境干扰建立Blog模型,然后将其转化为相依贝叶斯网络,最后使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络的故障推理。使用这一技术可以充分利用相依贝叶斯网络的有环且可以包含无限多个变量的特性,满足嵌入式软件随机故障的实际诊断需求,提高故障诊断的质量。
可以看出该技术的构建对现有的贝叶斯网络理论和故障诊断推理技术进行了整合与创新,形成了基于相依贝叶斯网络的故障诊断技术。
(二)技术方案
本发明技术方案:基于相依贝叶斯网络的故障诊断技术的构建方法过程如下:
本发明所述方法中,引用CBNFD来表述基于相依贝叶斯网络(即“ContingentBayesian Networks”)的故障诊断(即“Fault Diagnosis”)技术。
本发明提供一种基于相依贝叶斯网络的故障诊断技术的构建方法,其步骤如下:
步骤1、确定待推理未知对象的域;
步骤2、使用一阶逻辑语言定义模型结构;
步骤3、生成Blog模型;
步骤4、将Blog模型转化为贝叶斯网络;
步骤5、定义相依贝叶斯网络;
步骤6、进行相依贝叶斯网络的参数学习;
步骤7、使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络故障推理;
其中,在步骤1中所述的“确定待推理未知对象的域”,其做法如下:通过软件测试确定待测软件数量未知的软件故障类型及软件运行时面临的可能造成故障的环境干扰的类型,并使用Fault表示软件故障,使用Constrain表示可能造成故障的环境干扰,Fault和Constrain的数量均未知。
其中,在步骤2中所述的“使用一阶逻辑语言定义模型结构”,其做法如下:
类型化的一阶逻辑语言包含一组类型符号和一组仿函数符号f;每个仿函数符号f都有一个类型标签ts(t1,…,ti,…,tor),其中,i=1,2,…,or,每一个ti都是一个类型符号,or为仿函数符号阶数,若or=0,则该仿函数符号为常量符号;同时,每个仿函数符号f还有一个返回值R,该返回值R可以是空值null;
使用w表示定义的模型结构,w定义了每个类型的扩展以及每个函数语句的解释,还指定了每个类型存在的对象集合以及每个函数符号的值;w包含每一个类型的扩展[R]w,[R]w是w中该类型的对象的集合,以及类型符号ti的扩展[ti]w;对于每个仿函数f,都包含一个解释[f]w,[f]w是[ti]w到[R]w的函数。
其中,在步骤3中所述的“生成Blog模型”,其做法如下:Blog模型是描述未知对象的概率模型,它描述了一个对模型结构w进行抽样以确定w的概率分布的产生式过程;Blog模型包含两种类型的抽样操作,第一种则是创建新的对象,该操作由数值语句完成,第二种是抽样应用于某些对象的仿函数的值,该操作由依赖语句完成,依赖语句和数值语句构成了Blog模型的主体部分;
依赖语句描述了如何确定应用于每个对象的仿函数的值,依赖语句的左边是仿函数符号和仿函数的参数变量,右边是包含if-then-else结构的语句;进行抽样时,检查if-then-else语句的每一句,直至找到为真的句子,为真的句子对应的仿函数的值即为条件概率分布的参数;若if-then-else语句的所有句子均为假,则仿函数返回值为空值null,对应的条件概率分布的参数也为空值null;
数值语句创建模型新的对象,数值语句的左边包含一组条件,这些条件构成了一个潜在的对象,数值语句的右边则与依赖语句具有相同的形式;
除依赖语句和数值语句外,Blog模型还包含:类型声明语句,其作用是引入一个类型;随机函数声明语句,指定仿函数符号的类型标签,其值将在生成过程中随机选择;保证对象语句,保证并命名了w中所有的不同对象;
在模型结构w的基础上,使用依赖语句和数值语句等建立Blog模型,描述一个生成过程;Blog模型可以在已有的对象基础上,不断往模型加入新的对象,因而Blog模型可以包含可变化的、数量不限定的对象及它们之间的不确定关系。
其中,在步骤4中所述的“将Blog模型转化为贝叶斯网络”,其做法如下:以Blog模型中的类型和仿函数符号f作为贝叶斯网络的节点,以仿函数符号f的依赖语句右侧的函数符号,或者类型ti的数值语句右侧的函数符号作为父节点,根据Blog模型描述的生成过程,编译出整个贝叶斯网络,记为BNs;对于本发明而言,软件故障Fault和故障的环境干扰Constrain即为BNs的节点;由于Blog模型的对象数量不确定,对象间的依赖关系也不确定,所以依据Blog模型编译出的BNs可能包含无限多个节点,并可能含有环。
其中,在步骤5中所述的“定义相依贝叶斯网络”,其做法如下:贝叶斯网络的拓扑结构是一个有向无环图,依据Blog模型编译出的BNs,可能含有无限个节点,并且可能有环,并不符合经典贝叶斯网络的定义,因而本发明将BNs转化为相依贝叶斯网络(ContingentBayesian Networks),记为CBNs;
根据实际情况,为BNs的指向同一个节点或者出自同一个节点的边指定相互排斥的条件,在特定的条件下,只有数量有限的边满足该特定条件而处于活跃状态,这些有限数量的边连接的节点具有逻辑上的因果关系,处于非活跃状态的节点在分析时可以忽略,也就是说即使CBNs存在无限数量祖先的节点,在分析时,也只会受到有限数量的祖先的影响;同时,为CBNs的每一个环的边也指定互斥的条件,只有满足特定条件的边才处于活跃状态,分析时暂时移除不满足特定条件的边;通过为BNs的边指定条件生成CBNs,即可解决无限数量节点以及环的问题。
其中,在步骤6中所述的“进行相依贝叶斯网络的参数学习”,其做法如下:本发明由Blog模型生成贝叶斯网络,因而网络结构已经确定,只需进行网络的参数学习,即确定网络各节点的条件概率;参数学习是指在给定网络拓扑结构G和训练样本集D的情况下,利用先验知识,确定相依贝叶斯网络模型各节点的条件概率分布;
本发明使用极大似然估计进行CBNs的参数学习,假定在特定条件下CBNs处于活跃状态的节点有n个,表示为{X1,…,Xi,…Xn},同时假定第i个节点Xi有ri个可能的取值,Xi的父代节点表示为pa(Xi),其可能的取值有qi个;需要求解的参数θ={θijk|i=1,…,n;j=1,…,qi;k=1,…,ri},其中,j、k分别指的是父节点pa(Xi)和节点Xi的取值,θijk=P(Xi=k|pa(Xi)=j);对似然函数L(θ|D)取对数可得:
式中,mijk是样本集D中满足Xi=k和pa(Xi)=j的样本的容量,l(θ|D)是似然函数L(θ|D)的对数,对上式使用拉格朗日乘子法,即可获得参数θ的极大似然估计,由此确定CBNs的参数。
其中,在步骤7中所述的“使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络故障推理”,其做法如下:马尔科夫链蒙特卡洛方法,记为MCMC,MCMC已经广泛应用于贝叶斯推理,本发明使用MCMC中应用最为广泛的吉布斯采样方法进行相依贝叶斯网络上的故障推理;
吉布斯抽样方法是MCMC的一个特例,它交替的固定某一维度,然后通过其他维度的值来抽样该维度的值;假定我们要推理事件A={X1,X2,…Xs}的发生概率,其中,X1、X2、…、Xs为CBNs的节点,即软件故障Fault和故障的环境干扰Constrain,且s≤n,记事件A的联合概率分布为Φ(A),吉布斯抽样过程可以描述如下:
(1)初始化:随机给X1、X2、…、Xs赋初值,A0={X1 0,X2 0,…Xs 0};
(2)利用p(X1|X2 0,…Xs 0)产生X1 1;
(3)同步骤2,固定其他变量,依次产生X2 1、…、Xs 1,则可得到新的事件A1={X1 1,X2 1,…Xs 1};
(4)重复步骤2-3,得到一个马尔科夫链{A1,A2,…At},t为采样次数;
通过上述步骤,即可通过条件分布模拟联合分布,然后通过模拟的联合分布直接推导出条件分布,实现相依贝叶斯网络推理,完成故障诊断。
通过上述步骤,可以完成对基于相依贝叶斯网络的故障诊断技术的构建,我们借鉴相依贝叶斯网络理论,利用数量未知的故障现象、故障环境干扰建立Blog模型,然后将其转化为相依贝叶斯网络,最后使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络的故障推理;本发明适用于解决实际的软件故障诊断问题,使用这一技术可以充分利用相依贝叶斯网络的有环且可以包含无限多个变量的特性,满足嵌入式软件随机故障的实际诊断需求,提高故障诊断的质量,具有较高的实际应用价值。
(三)优点
本发明与现有技术相比的优点在于:现有的基于贝叶斯网络的故障诊断技术,由于受制于贝叶斯网络的无环约束和祖先数量有限假设的约束,只适用于对有限数量的随机变量建立固定的依赖结构,不支持未知对象的动态加入,而大型嵌入式软件的故障往往具有对象未知、数量不确定以及随机故障之间可能还存在着依赖关系等特性,因而传统贝叶斯网络不适用于对复杂的嵌入式软件进行故障诊断。因此本发明将借鉴相依贝叶斯网络,为贝叶斯网络模型的每条边标记一个表示激活状态的条件来表示依赖关系的不确定性,因而可以有环且可以包含无限多个变量。本发明对现有的相依贝叶斯网络和软件故障诊断方法进行了整合与创新,提供一种基于相依贝叶斯网络的故障诊断技术。
附图说明
图1为本发明所述方法的总体步骤流程图。
图2为一个简单的相依贝叶斯网络示例图。
图中序号、符号、代号说明如下:
图1中的“步骤1~7”即技术方案中对应的步骤;
图1中的Fault、Constrain即为软件故障和环境干扰;
图1中的w、f、ts、R即为模型结构、仿函数符号、类型标签、返回值;
图1中的BNs、CBNs即为贝叶斯网络、相依贝叶斯网络;
图1中的MCMC即为马尔科夫链蒙特卡洛方法;
图2中的U、V、W、X为事件。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图进行详细描述。
本发明提供了一种基于相依贝叶斯网络的故障诊断技术的构建方法。利用该方法构建的技术可以提高软件故障诊断的质量。在这项技术中,借鉴相依贝叶斯网络理论,针对复杂嵌入式软件故障具有的对象未知、数量不确定以及随机故障之间可能还存在着依赖关系等特性,以软件故障和环境干扰为节点,建立具有无限节点和环的相依贝叶斯网络,再使用马尔科夫链蒙特卡洛方法对其进行推理诊断。该技术进行故障诊断的时候,建立的相依贝叶斯网络更加符合大型嵌入式软件的故障特性,诊断的准确率更高。
本发明一种基于相依贝叶斯网络的故障诊断技术的构建方法,如图1所示,其具体构建步骤如下:
步骤一:确定待推理未知对象的域。其构建方法是:
通过软件测试确定待测软件数量未知的软件故障类型及软件运行时面临的可能造成故障的环境干扰的类型,并使用表示Fault软件故障,使用Constrain表示可能造成故障的环境干扰,Fault和Constrain的数量均未知。
步骤二:使用一阶逻辑语言定义模型结构。其构建方法是:
类型化的一阶逻辑语言包含一组类型符号和一组仿函数符号f。每个仿函数符号f都有一个类型标签ts(t1,…,ti,…,tor),其中,i=1,2,…,or,每一个ti都是一个类型符号,or为仿函数符号阶数,若or=0,则该仿函数符号为常量符号。同时,每个仿函数符号还有一个返回值R,返回值可以是空值null。
当一个仿函数不适用于某个参数时,则返回特殊值空值null,任何接收空值null作为参数的函数也返回null。
使用w表示定义的模型结构,w定义了每个类型的扩展以及每个函数语句的解释,还指定了每个类型存在的对象集合以及每个函数符号的值。w包含每一个类型的扩展[R]w,[R]w是w中该类型的对象的集合,以及类型符号ti的扩展[ti]w。对于每个仿函数f,都包含一个解释[f]w,[f]w是[ti]w到[R]w的函数。
步骤三:生成Blog模型。其构建方法是:
Blog模型是描述未知对象的概率模型,它描述了一个对模型结构w进行抽样以确定w的概率分布的产生式过程。Blog模型包含两种类型的抽样操作,第一种则是创建新的对象,该操作则由数值语句完成,第二种是抽样应用于某些对象的仿函数的值,该操作由依赖语句完成,依赖语句和数值语句构成了Blog模型的主体部分。
依赖语句描述了如何确定应用于每个对象的仿函数的值,依赖语句的左边是仿函数符号和仿函数的参数变量,右边是包含if-then-else结构的语句。进行抽样时,检查if-then-else语句的每一句,直至找到为真的句子,为真的句子对应的仿函数的值即为条件概率分布的参数。若if-then-else语句的所有句子均为假,则仿函数返回值为null,对应的条件概率分布的参数也为null。
数值语句创建模型新的对象,数值语句的左边包含一组条件,这些条件构成了一个潜在的对象,数值语句的右边则与依赖语句具有相同的形式。
除依赖语句和数值语句外,Blog模型还包含:类型声明语句,其作用是引入一个类型;随机函数声明语句,指定仿函数符号的类型标签,其值将在生成过程中随机选择;保证对象语句,保证并命名了w中所有的不同对象。
建立一个Blog模型首先使用类型声明语句,引入对象的类型,包括步骤1的Fault和Constrain。然后使用随机函数语句指定仿函数符号的类型标签,并指定其参数和返回值类型。其次使用保证对象语句,命名所有可能的对象,假定有i种故障,j种环境干扰,则可以表示为Fault1,Fault2,…Faulti,Constrain1,Constrain2,…Constrainj,而后使用依赖语句和数值语句构建Blog模型的主体部分。
在模型结构w的基础上,使用依赖语句和数值语句等建立Blog模型,描述一个生成过程。Blog模型可以在已有的对象基础上,不断往模型加入新的对象,因而Blog模型可以包含可变化的、数量不限定的对象及它们之间的不确定关系。
步骤四:将Blog模型转化为贝叶斯网络。其构建方法是:
以Blog模型中的类型和仿函数符号作为贝叶斯网络的节点,以仿函数f的依赖语句右侧的函数符号,或者类型ti的数值语句右侧的函数符号作为父节点,根据Blog模型描述的生成过程,编译出整个贝叶斯网络,记为BNs。对于本发明而言,故障Fault和环境干扰Constrain即为BNs的节点。由于Blog模型的对象数量不确定,对象间的依赖关系也不确定,所以依据Blog模型编译出的BNs可能包含无限多个节点,并可能含有环。
步骤五:定义相依贝叶斯网络。其构建方法是:
贝叶斯网络的拓扑结构是一个有向无环图,依据Blog模型编译出的BNs,可能含有无限个节点,并且可能有环,并不符合经典贝叶斯网络的定义,本因而发明将BNs转化为相依贝叶斯网络(Contingent Bayesian Networks),记为CBNs。
根据实际情况,为BNs的指向同一个节点或者出自同一个节点的边指定相互排斥的条件,在特定的条件下,只有数量有限的边满足该特定条件而处于活跃状态,这些有限数量的边连接的节点具有逻辑上的因果关系,如图2所示。也就是说即使CBNs存在无限数量祖先的节点,在分析时,也只会受到有限数量的祖先的影响。同时,为CBNs的每一个环的边也指定互斥的条件,只有满足特定条件的边才处于活跃状态,分析时暂时移除不满足特定条件的边。通过为BNs的边指定条件生成CBNs,即可解决无限数量节点以及环的问题。
步骤六:进行相依贝叶斯网络的参数学习。其构建方法是:
本发明由Blog模型生成贝叶斯网络,因而网络结构已经确定,只需进行网络的参数学习,即确定网络各节点的条件概率。参数学习即在给定网络拓扑结构G和训练样本集D的情况下,利用先验知识,确定相依贝叶斯网络模型各节点的条件概率分布。先验分布一般服从一定的概率分布族,如果变量具有两个状态,那么它服从β分布,如果变量具有两个以上的状态,那么它服从多项狄利克雷分布,然后利用一定的策略估计这些分布的参数。
本发明使用极大似然估计进行CBNs的参数学习,假定在特定条件下CBNs处于活跃状态的节点有n个,表示为{X1,…,Xi,…Xn},同时假定第i个节点Xi有ri个可能的取值,Xi的父代节点表示为pa(Xi),其可能的取值有qi个。需要求解的参数θ={θijk|i=1,…,n;j=1,…,qi;k=1,…,ri},其中,j、k分别指的是父节点pa(Xi)和节点Xi的取值,θijk=P(Xi=k|pa(Xi)=j)。对似然函数L(θ|D)取对数可得:
其中,mijk是样本集D中满足Xi=k和pa(Xi)=j的样本的容量,对上式使用拉格朗日乘子法,即可获得参数θ的极大似然估计,由此确定CBNs的参数。
步骤七:使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络故障推理。其构建方法如下:
马尔科夫链蒙特卡洛算法,记为MCMC,以马尔可夫过程为理论基础,为了在一个指定的分布上采样,根据马尔可夫过程,首先从任一状态出发,模拟马尔可夫过程,不断进行状态转移,最终收敛到平稳分布。MCMC已经广泛应用于贝叶斯推理,本发明使用MCMC中应用最为广泛的吉布斯采样算法进行相依贝叶斯网络上的故障推理。
吉布斯抽样算法是MCMC的一个特例,它交替的固定某一维度,然后通过其他维度的值来抽样该维度的值。假定我们要推理事件A={X1,X2,…Xs}的发生概率,其中,X1、X2、…、Xs为CBNs的节点,即软件故障Fault和环境干扰Constrain,且s≤n,记事件A的联合概率分布为Φ(A),吉布斯抽样过程可以描述如下:
(1)随机初始化:给X1、X2、…、Xs赋初值,A0={X1 0,X2 0,…Xs 0};
(2)利用p(X1|X2 0,…Xs 0)产生X1 1;
(3)同步骤2,固定其他变量,依次产生X2 1、…、Xs 1,则可得到新的事件A1={X1 1,X2 1,…Xs 1};
(4)重复步骤2-3,得到一个马尔科夫链{A1,A2,…At},t为采样次数。
通过上述步骤,即可通过条件分布模拟联合分布,然后通过模拟的联合分布直接推导出条件分布,实现相依贝叶斯网络推理,完成故障诊断。
通过上述步骤,可以完成对基于相依贝叶斯网络的故障诊断技术的构建。在这项技术中,我们借鉴相依贝叶斯网络理论可以包含无限节点以及环的特性,将具有对象未知、数量不确定以及随机故障之间可能还存在着依赖关系等特性的嵌入式软件故障和环境干扰作为相依贝叶斯网络的节点,并为网络的每条边指定一个表示激活状态的条件来表示依赖关系的不确定性,然后使用马尔科夫链蒙特卡洛方法对其进行推理诊断。该技术进行故障诊断的时候,建立的相依贝叶斯网络更加符合大型嵌入式软件的故障特性,诊断的准确率更高。
该故障预测技术基于相依贝叶斯网络理论进行构建,形成较为实用的基于相依贝叶斯网络的故障诊断技术。
本发明未详细阐述部分属于本领域公知技术。
以上所述,仅为本发明部分具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本领域的人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (1)
1.一种基于相依贝叶斯网络的故障诊断技术的构建方法,其特征在于:其步骤如下:
步骤1、确定待推理未知对象的域;
步骤2、使用一阶逻辑语言定义模型结构;
步骤3、生成Blog模型;
步骤4、将Blog模型转化为贝叶斯网络;
步骤5、定义相依贝叶斯网络;
步骤6、进行相依贝叶斯网络的参数学习;
步骤7、使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络故障推理;
在步骤1中所述的确定待推理未知对象的域,其做法如下:通过软件测试确定待测软件数量未知的软件故障类型及软件运行时面临的造成故障的环境干扰的类型,并使用Fault表示软件故障,使用Constrain表示造成故障的环境干扰,Fault和Constrain的数量均未知;
在步骤2中所述的使用一阶逻辑语言定义模型结构,其做法如下:
类型化的一阶逻辑语言包含一组类型符号和一组仿函数符号f;每个仿函数符号f都有一个类型标签ts(t1,…,ti,…,tor),其中,i=1,2,…,or,每一个ti都是一个类型符号,or为仿函数符号阶数,若or=0,则该仿函数符号为常量符号;同时,每个仿函数符号f还有一个返回值R,该返回值R是空值null;
使用w表示定义的模型结构,w定义了每个类型的扩展以及每个函数语句的解释,还指定了每个类型存在的对象集合以及每个函数符号的值;w包含每一个类型的扩展[R]w,[R]w是w中该类型的对象的集合,以及类型符号ti的扩展[ti]w;对于每个仿函数f,都包含一个解释[f]w,[f]w是[ti]w到[R]w的函数;
在步骤3中所述的生成Blog模型,其做法如下:Blog模型是描述未知对象的概率模型,它描述了一个对模型结构w进行抽样以确定w的概率分布的产生式过程;Blog模型包含两种类型的抽样操作,第一种则是创建新的对象,该操作由数值语句完成,第二种是抽样应用于某些对象的仿函数的值,该操作由依赖语句完成,依赖语句和数值语句构成了Blog模型的主体部分;
依赖语句描述了如何确定应用于每个对象的仿函数的值,依赖语句的左边是仿函数符号和仿函数的参数变量,右边是包含if-then-else结构的语句;进行抽样时,检查if-then-else语句的每一句,直至找到为真的句子,为真的句子对应的仿函数的值即为条件概率分布的参数;若if-then-else语句的所有句子均为假,则仿函数返回值为空值null,对应的条件概率分布的参数也为空值null;
数值语句创建模型新的对象,数值语句的左边包含一组条件,这些条件构成了一个潜在的对象,数值语句的右边则与依赖语句具有相同的形式;
除依赖语句和数值语句外,Blog模型还包含:类型声明语句,其作用是引入一个类型;随机函数声明语句,指定仿函数符号的类型标签,其值将在生成过程中随机选择;保证对象语句,保证并命名了w中所有的不同对象;
在模型结构w的基础上,使用依赖语句和数值语句建立Blog模型,描述一个生成过程;Blog模型能在已有的对象基础上,不断往模型加入新的对象,因而Blog模型能包含变化的、数量不限定的对象及它们之间的不确定关系;
在步骤4中所述的将Blog模型转化为贝叶斯网络,其做法如下:以Blog模型中的类型和仿函数符号f作为贝叶斯网络的节点,以仿函数符号f的依赖语句右侧的函数符号,及类型ti的数值语句右侧的函数符号作为父节点,根据Blog模型描述的生成过程,编译出整个贝叶斯网络,记为BNs;软件故障Fault和故障的环境干扰Constrain即为BNs的节点;由于Blog模型的对象数量不确定,对象间的依赖关系也不确定,所以依据Blog模型编译出的BNs包含无限多个节点,并含有环;
在步骤5中所述的定义相依贝叶斯网络,其做法如下:贝叶斯网络的拓扑结构是一个有向无环图,依据Blog模型编译出的BNs,含有无限个节点,并且有环,并不符合经典贝叶斯网络的定义,因而将BNs转化为相依贝叶斯网络(Contingent Bayesian Networks),记为CBNs;
根据实际情况,为BNs的指向同一个节点及出自同一个节点的边指定相互排斥的条件,在特定的条件下,只有数量有限的边满足该特定条件而处于活跃状态,这些有限数量的边连接的节点具有逻辑上的因果关系,处于非活跃状态的节点在分析时忽略,也就是说即使CBNs存在无限数量祖先的节点,在分析时,也只会受到有限数量的祖先的影响;同时,为CBNs的每一个环的边也指定互斥的条件,只有满足特定条件的边才处于活跃状态,分析时暂时移除不满足特定条件的边;通过为BNs的边指定条件生成CBNs,即能解决无限数量节点以及环的问题;
在步骤6中所述的进行相依贝叶斯网络的参数学习,其做法如下:由Blog模型生成贝叶斯网络,因而网络结构已经确定,只需进行网络的参数学习,即确定网络各节点的条件概率;参数学习是指在给定网络拓扑结构G和训练样本集D的情况下,利用先验知识,确定相依贝叶斯网络模型各节点的条件概率分布;
使用极大似然估计进行CBNs的参数学习,假定在特定条件下CBNs处于活跃状态的节点有n个,表示为{X1,…,Xi,…Xn},同时假定第i个节点Xi有ri个取值,Xi的父代节点表示为pa(Xi),其取值有qi个;需要求解的参数θ={θijk|i=1,…,n;j=1,…,qi;k=1,…,ri},其中,j、k分别指的是父节点pa(Xi)和节点Xi的取值,θijk=P(Xi=k|pa(Xi)=j);对似然函数L(θ|D)取对数即得:
式中,mijk是样本集D中满足Xi=k和pa(Xi)=j的样本的容量,l(θ|D)是似然函数L(θ|D)的对数,对上式使用拉格朗日乘子法,即获得参数θ的极大似然估计,由此确定CBNs的参数;
在步骤7中所述的使用马尔科夫链蒙特卡洛方法进行相依贝叶斯网络故障推理,其做法如下:马尔科夫链蒙特卡洛方法,记为MCMC,MCMC已经广泛应用于贝叶斯推理,使用MCMC中应用最为广泛的吉布斯采样方法进行相依贝叶斯网络上的故障推理;
吉布斯抽样方法是MCMC的一个特例,它交替的固定一维度,然后通过其他维度的值来抽样该维度的值;假定我们要推理事件A={X1,X2,…Xs}的发生概率,其中,X1、X2、…、Xs为CBNs的节点,即软件故障Fault和故障的环境干扰Constrain,且s≤n,记事件A的联合概率分布为Φ(A),吉布斯抽样过程能描述如下:
(1)初始化:随机给X1、X2、…、Xs赋初值,A0={X1 0,X2 0,…Xs 0};
(2)利用p(X1|X2 0,…Xs 0)产生X1 1;
(3)同步骤2,固定其他变量,依次产生X2 1、...、Xs 1,则得到新的事件A1={X1 1,X2 1,…Xs 1};
(4)重复步骤2-3,得到一个马尔科夫链{A1,A2,…At},t为采样次数;
通过上述步骤,即通过条件分布模拟联合分布,然后通过模拟的联合分布直接推导出条件分布,实现相依贝叶斯网络推理,完成故障诊断。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810446523.7A CN108664400B (zh) | 2018-05-11 | 2018-05-11 | 一种基于相依贝叶斯网络的故障诊断技术的构建方法 |
US16/198,574 US10776230B2 (en) | 2018-05-11 | 2018-11-21 | Method for establishing fault diagnosis technique based on contingent Bayesian networks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810446523.7A CN108664400B (zh) | 2018-05-11 | 2018-05-11 | 一种基于相依贝叶斯网络的故障诊断技术的构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108664400A CN108664400A (zh) | 2018-10-16 |
CN108664400B true CN108664400B (zh) | 2020-08-04 |
Family
ID=63779051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810446523.7A Active CN108664400B (zh) | 2018-05-11 | 2018-05-11 | 一种基于相依贝叶斯网络的故障诊断技术的构建方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10776230B2 (zh) |
CN (1) | CN108664400B (zh) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109376790B (zh) * | 2018-11-01 | 2021-02-23 | 北京航空航天大学 | 一种基于渗流分析的二元分类方法 |
CN109766626B (zh) * | 2019-01-08 | 2020-10-09 | 北京航空航天大学 | 一种间断应力下考虑有效冲击的退化建模与寿命预测方法 |
CN110046662B (zh) * | 2019-04-10 | 2022-09-16 | 河南科技大学 | 基于模型与数据融合的冷水机组复合故障诊断方法及*** |
CN111400856B (zh) * | 2019-05-30 | 2022-05-27 | 中国科学院电子学研究所 | 基于多源数据融合的空间行波管可靠性评估方法 |
CN110362939B (zh) * | 2019-07-19 | 2023-05-02 | 北京计算机技术及应用研究所 | 基于Monte carlo的网络靶场装备体系可靠性建模***及方法 |
CN110490437A (zh) * | 2019-08-01 | 2019-11-22 | 北京交通大学 | 一种轨道交通***运营风险链构建方法 |
CN110555530B (zh) * | 2019-09-02 | 2022-11-08 | 东北大学 | 一种基于分布式的大规模基因调控网络构建方法 |
CN110688152B (zh) * | 2019-09-27 | 2021-01-01 | 厦门大学 | 一种结合软件开发质量信息的软件可靠性定量评估方法 |
CN110930024B (zh) * | 2019-11-20 | 2024-04-26 | 大连海事大学 | 一种基于贝叶斯网络的深海应急态势智能分析***及方法 |
CN111178404B (zh) * | 2019-12-17 | 2023-06-30 | 中国航天标准化研究所 | 考虑路径依赖效应的人机交互***任务可靠性建模方法 |
CN113627451B (zh) * | 2020-05-08 | 2024-04-19 | 许继集团有限公司 | 基于贝叶斯网络的非侵入式家庭用电行为动态监测方法 |
CN111652375B (zh) * | 2020-06-02 | 2023-06-06 | 中南大学 | 基于贝叶斯推理及虚拟传感的冷却盘管故障智能检测诊断方法及装置 |
CN111709187B (zh) * | 2020-06-17 | 2023-06-16 | 西安工业大学 | 雷达复杂电磁环境效应机理的建模方法 |
CN112116200B (zh) * | 2020-08-10 | 2023-07-21 | 郑州大学 | 基于动态比例代换和层次贝叶斯的缺灾情资料城市洪灾损失函数的构建方法 |
US20220067550A1 (en) * | 2020-09-03 | 2022-03-03 | Aptiv Technologies Limited | Bayesian Network Analysis of Safety of Intended Functionality of System Designs |
CN112434896A (zh) * | 2020-09-14 | 2021-03-02 | 中铁工程服务有限公司 | 一种地铁盾构施工风险及其发展趋势的预测方法 |
CN112163680B (zh) * | 2020-09-28 | 2024-03-08 | 湘潭大学 | 一种基于认知计算的风电故障运维管理方法 |
CN112330161A (zh) * | 2020-11-09 | 2021-02-05 | 中国民航大学 | 一种基于贝叶斯网络的物流无人机失效风险评估方法 |
CN112380159B (zh) * | 2020-11-17 | 2024-06-07 | 南京航空航天大学 | 一种ima核心处理***结构配置方法 |
CN112487592B (zh) * | 2020-12-16 | 2022-01-18 | 北京航空航天大学 | 基于贝叶斯网络的任务可靠性建模分析方法 |
CN112799862B (zh) * | 2020-12-31 | 2022-09-06 | 南京航空航天大学 | 面向辐射环境的cpu抗seu效应的可靠性建模与评估方法 |
CN112800669B (zh) * | 2021-01-25 | 2024-03-15 | 上海海事大学 | 专用加速器中基于概率图模型的多种近似技术误差评估方法 |
CN113064966B (zh) * | 2021-03-23 | 2023-06-13 | 青岛海尔科技有限公司 | 用于故障定位的方法、***及装置 |
CN113779872B (zh) * | 2021-08-26 | 2024-05-10 | 西安交通大学 | 基于贝叶斯因果图法的设备故障分析贝叶斯网络构建方法 |
CN113807453B (zh) * | 2021-09-24 | 2024-01-30 | 沈阳理工大学 | 基于加权概率融合并行贝叶斯网络的异常行为检测方法 |
CN114547796B (zh) * | 2022-02-22 | 2023-04-18 | 兰州理工大学 | 一种基于优化bn网络的球磨机特征融合故障诊断方法 |
CN114647992A (zh) * | 2022-03-10 | 2022-06-21 | 北京航空航天大学 | 一种基于改进贝叶斯算法的固液火箭发动机故障诊断方法 |
CN114779739B (zh) * | 2022-04-13 | 2024-07-16 | 北京大学 | 基于概率图模型的云边端协同下工业过程的故障监测方法 |
CN115225540B (zh) * | 2022-05-02 | 2023-07-18 | 东北大学 | 一种面向软件定义网络的数据平面故障检测与恢复方法 |
CN115082456A (zh) * | 2022-07-27 | 2022-09-20 | 煤炭科学研究总院有限公司 | 一种煤矿带式输送机故障诊断方法及装置 |
CN115780530B (zh) * | 2023-01-19 | 2023-05-09 | 北京科技大学 | 基于专家知识与数据联合驱动的轧钢故障溯源方法及装置 |
CN117807527B (zh) * | 2023-12-29 | 2024-07-12 | 兰州理工大学 | 基于贝叶斯网络的机械部件故障诊断方法及*** |
CN117789133B (zh) * | 2024-02-28 | 2024-06-04 | 希格玛电气(珠海)有限公司 | 一种智能环网柜监控*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2377513A (en) * | 2001-07-05 | 2003-01-15 | Motorola Inc | Using a Bayesian Belief Network to model system reliability |
CN101814114A (zh) * | 2010-01-07 | 2010-08-25 | 北京航空航天大学 | 一种利用模型转换进行故障诊断的方法 |
CN104778370A (zh) * | 2015-04-20 | 2015-07-15 | 北京交通大学 | 基于蒙特卡洛仿真求解动态故障树模型的风险分析方法 |
CN106124175A (zh) * | 2016-06-14 | 2016-11-16 | 电子科技大学 | 一种基于贝叶斯网络的压缩机气阀故障诊断方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8370241B1 (en) * | 2004-11-22 | 2013-02-05 | Morgan Stanley | Systems and methods for analyzing financial models with probabilistic networks |
WO2008036386A2 (en) * | 2006-09-21 | 2008-03-27 | Rutgers, The State University Of New Jersey | Method and apparatus for using bayesian networks for localization |
EP2342683A2 (en) * | 2008-10-03 | 2011-07-13 | BAE Systems PLC | Assisting with updating a model for diagnosing failures in a system |
JP5297272B2 (ja) * | 2009-06-11 | 2013-09-25 | 株式会社日立製作所 | 装置異常監視方法及びシステム |
US20110276514A1 (en) * | 2010-05-04 | 2011-11-10 | International Business Machines Corporation | Evaluating the quality and risk-robustness of an energy generation capacity resource plan under inherent uncertainties in energy markets and carbon regulatory regime |
US10206587B2 (en) * | 2014-05-16 | 2019-02-19 | Toshiba Medical Systems Corporation | Image processing apparatus, image processing method, and storage medium |
US20150327780A1 (en) * | 2014-05-16 | 2015-11-19 | Kabushiki Kaisha Toshiba | Image processing apparatus, image processing method, and storage medium |
GB201710674D0 (en) * | 2017-07-03 | 2017-08-16 | Centrica Connected Home Ltd | Method of utility usage analysis |
-
2018
- 2018-05-11 CN CN201810446523.7A patent/CN108664400B/zh active Active
- 2018-11-21 US US16/198,574 patent/US10776230B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2377513A (en) * | 2001-07-05 | 2003-01-15 | Motorola Inc | Using a Bayesian Belief Network to model system reliability |
CN101814114A (zh) * | 2010-01-07 | 2010-08-25 | 北京航空航天大学 | 一种利用模型转换进行故障诊断的方法 |
CN104778370A (zh) * | 2015-04-20 | 2015-07-15 | 北京交通大学 | 基于蒙特卡洛仿真求解动态故障树模型的风险分析方法 |
CN106124175A (zh) * | 2016-06-14 | 2016-11-16 | 电子科技大学 | 一种基于贝叶斯网络的压缩机气阀故障诊断方法 |
Non-Patent Citations (1)
Title |
---|
基于概率模型的故障诊断及在航天器中的应用;张筱磊;《中国博士学位论文全文数据库 信息科技辑》;20140115;第I140-19页 * |
Also Published As
Publication number | Publication date |
---|---|
US20190087294A1 (en) | 2019-03-21 |
US10776230B2 (en) | 2020-09-15 |
CN108664400A (zh) | 2018-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108664400B (zh) | 一种基于相依贝叶斯网络的故障诊断技术的构建方法 | |
Huang et al. | Gamepad: A learning environment for theorem proving | |
Gilbert et al. | Simulating societies: the computer simulation of social phenomena | |
Findler | Contributions to a computer-based theory of strategies | |
Liu et al. | Open-ended knowledge tracing for computer science education | |
Deslandres et al. | An expert system prototype assisting the statistical validation of simulation models | |
Günther et al. | Causal discovery for time series from multiple datasets with latent contexts | |
Parri et al. | FaultFlow: A tool supporting an MDE approach for Timed Failure Logic Analysis | |
Posse et al. | Processing causal block diagrams with graphgrammars in atom3 | |
Belford et al. | Specifications a key to effective software development | |
Strickland | Simulation conceptual modeling | |
Popoola et al. | Evolution of Bad Smells in LabVIEW Graphical Models. | |
Göbler et al. | $\textttcausalAssembly $: Generating Realistic Production Data for Benchmarking Causal Discovery | |
Cao et al. | A simulation framework for knowledge acquisition evaluation | |
Aguilar et al. | An Approach for the Structural Learning of Chronicles | |
Thaller | Probabilistic software modeling | |
Reitenbach et al. | Enhanced Workflow Management using an Artificial Intelligence ChatBot | |
Ruhela | Z formal specification language-an overview | |
Doud et al. | A framework for formal automated analysis of simulation experiments using probabilistic model checking | |
Davis et al. | Geoexpression: A Petri network framework for representing geographic process concurrency | |
Azzolini | A Brief Discussion about the Credal Semantics for Probabilistic Answer Set Programs. | |
Kluza et al. | Proposal of a hierarchical approach to formal verification of BPMN models using Alvis and XTT2 methods | |
Yu et al. | [Retracted] Advanced Intelligent Big Data Analytic‐Based Automated Layout for Environmental Design Intelligent Sensor Networks | |
Ionita et al. | Trends in methodological approaches in Smart Tools for Intelligent Community: TOGA Framework | |
Liu et al. | Verification and validation of ai simulation systems |
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 |