CN102411537A - 一种基于混合贝叶斯先验分布的可靠性验证测试方法 - Google Patents

一种基于混合贝叶斯先验分布的可靠性验证测试方法 Download PDF

Info

Publication number
CN102411537A
CN102411537A CN2011102579551A CN201110257955A CN102411537A CN 102411537 A CN102411537 A CN 102411537A CN 2011102579551 A CN2011102579551 A CN 2011102579551A CN 201110257955 A CN201110257955 A CN 201110257955A CN 102411537 A CN102411537 A CN 102411537A
Authority
CN
China
Prior art keywords
test
integral
formula
distribution
prior
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.)
Pending
Application number
CN2011102579551A
Other languages
English (en)
Inventor
高峰
郑晓云
李一晨
李刚
张振兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Engineering University
Original Assignee
Harbin Engineering University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Harbin Engineering University filed Critical Harbin Engineering University
Priority to CN2011102579551A priority Critical patent/CN102411537A/zh
Publication of CN102411537A publication Critical patent/CN102411537A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明公开了一种基于混合贝叶斯先验分布的可靠性验证测试方法,采用共轭先验分布法确定未知参数的先验分布,通过先验矩方法和最大熵方法分别求出两组不同参数,即得到不同的先验分布,再根据第二类极大似然方法确定以上两种先验分布的权重,按权重将先验矩方法和最大熵方法得出的参数融合,进而得到最终的先验分布比单纯使用其中一种方法得到的先验分布更加准确,与真实的分布拟合度更好。通过最终的贝叶斯先验分布及试验信息,计算出可靠性验证测试中所需的最小无失效用例数,这种方法相对于无先验知识的情况,可以有效的减少测试用例量。

Description

一种基于混合贝叶斯先验分布的可靠性验证测试方法
技术领域
本发明涉及软件测试领域,特别涉及一种基于混合贝叶斯先验分布的可靠性验证测试方法。
背景技术
随着计算机在民用和军用产品上应用的日益增多,软件缺陷引发的产品故障以及灾难性事故也越来越严重。软件可靠性是整个系统可靠性的重要保证,甚至是决定性的因素。软件可靠性测试是软件可靠性保证过程中非常重要的一步。经过可靠性测试的软件并不能确保该软件中剩余的错误数量最小,但是可以确保该软件达到较高的可靠性要求。从工程上来看,软件的可靠性高即意味着该软件的失效率低,又意味着一旦该软件发生失效,由此造成的危害也较小。软件可靠性测试的目的就是要保证软件中没有对可靠性影响较大的错误。
学术界和工业界一直努力在试图解决,如何准确、客观、高可信地验证软件是否达到了可靠性要求的问题,经过几十年的发展,形成了多种软件可靠性验证测试方法。利用基于经典统计理论的可靠性验证测试方法进行可靠性测评,从理论上讲,其评价结果的可信度是很高的,但是,随着软件规模、软件复杂度的日益增大,以及对可靠性要求的不断提高,由于经典统计理论的可靠性验证测试方法没有考虑已经存在的先验信息,因此所需要的测试用例数量非常大,即造成测试用例开销大,又导致测试的持续期长,从而使得基于传统方法的软件验证测试工作效率极低。然而在实际的工程实践中,为了保证高可信软件的可靠性,开发方既要进行可靠性设计,又要在开发过程中对软件进行严格的可靠性增长测试。因此,当对软件进行可靠性验证测试时,软件已经具备了较高的可靠性,可靠性增长测试过程是可以当成先验知识加以利用的。因此利用先验贝叶斯统计原理,从统计学的角度推断如何减少验证测试用例数,缩短测试时间,降低测试开销,是解决高可靠性软件验证测试的有效途径。
利用贝叶斯方法进行统计推断的最基本问题便是如何确定统计量的先验分布,经过多年的研究,已出现多种先验分布求解方法,包括共轭先验分布法、最大熵原则、林德莱原则、Jeffreys原则、最大数据信息原则、不变测度等方法,这些方法中,各有理论优点,需要结合具体应用选取相应的方法。其中,共轭先验分布具有良好的数学表达和很广泛的应用基础。
贝叶斯统计学中先验分布中所含的未知参数称为超参数。关于超参数的计算经对现有文献检索发现,文献:覃志东等《安全关键软件可靠性验证测试方法研究》,介绍了先验矩方法求解软件失效概率的概率密度函数的先验分布。文献:杜小翔,钱红兵《基于先验贝叶斯推断验证法的高可靠性评估》也采用了先验矩方法求解超参数。文献:Savchuk Vladimir P.Bayes Reliability Estimation Using Multiple Sources of Prior Information:BinmialSampling,介绍了求解超参数的新方法,提出了如何运用最大熵的方法来确定二项式分布的情况下的先验分布。文献:Yoon Won Hyo.Systematic Bayes Prior-Assignment byCoupling the Mini-Max Entropy and Moment-Matching Methods,研究了用正态分布最大熵方法来确定先验分布的超参数值。文献:詹吴可,姜礼平《共轭最大熵先验下的贝叶斯估计》,进一步扩充了最大熵方法,研究了指数的情况下,最大熵先验下的贝叶斯估计方法。但是这些方法只是提供了求先验分布的手段缺少对先验分布的合理性和准确性的研究,即使在相同的共轭先验分布簇中,不同的计算方法得到的参数值也可能不同。在文献《软件可靠性验证测试中降低测试用例量方法研究》中,对比了两种不同方法求解先验分布参数,在特定的实验条件下得出基于共轭最大熵方法的先验分布比基于先验矩方法的先验分布的可信度更高的结论。但对于其他的先验数据,基于共轭最大熵方法的超参数计算并不一定优于基于先验矩的计算方法。
发明内容
本发明的目的是为了解决上述问题,提供一种基于混合贝叶斯先验分布的可靠性验证测试方法。本发明采用共轭先验分布法确定未知参数的先验分布,通过先验矩方法和最大熵方法分别求出两组不同参数,即得到不同的先验分布,再根据第二类极大似然方法确定以上两种先验分布的置信因子,将置信因子看成对应方法的权重,按权重将先验矩方法和最大熵方法得出的参数融合,进而得到最终的先验分布比单纯使用其中一种方法得到的先验分布更加准确,与真实的分布拟合度更好。通过最终的先验分布和试验信息得到一个后验分布,利用此后验分布,得到可靠性验证测试中的最小用例数。
本发明的一种基于混合贝叶斯先验分布的可靠性验证测试方法,包含以下几个步骤:
步骤一、采用共轭分布确定未知参数的先验分布。
步骤二、根据可靠性先验信息,利用先验矩方法确定先验分布中的超参数。
步骤三、根据可靠性先验信息,利用最大熵方法确定先验分布中的超参数。
步骤四、采用第二类极大似然方法确定步骤二和步骤三中得出的两种的先验分布的权重。
步骤五、按不同的权重将两种方法估计出的超参数值进行融合,确定最终先验分布的超参数。
步骤六、根据贝叶斯公式考虑先验分布信息和试验信息,得到一个后验分布,根据要求的置信度和失效概率,利用后验分布,计算出可靠性验证测试中的最小用例数。
本发明的优点在于:
本发明充分利用了贝叶斯先验特性,采用共轭先验分布法确定未知参数的先验分布,通过先验矩方法和最大熵方法分别求出两组不同参数,根据第二类极大似然方法确定以上两种先验分布的置信因子,将置信因子看成对应方法的权重,按权重将先验矩方法和最大熵方法得出的参数融合,进而得到最终的先验分布更合理,比单纯使用其中一种方法得到的先验分布更加准确,与真实的分布拟合度更好。通过最终的先验分布和试验信息得到一个后验分布,利用后验分布,得到可靠性验证测试中的最小用例数,最终达到不影响可靠度的前提下降低测试量的作用。
附图说明
图1为本发明的方法流程图;
图2为本发明实施例中先验分布对比图。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
本发明的一种基于混合贝叶斯先验分布的可靠性验证测试方法,流程如图1所示,具体包括以下几个步骤:
步骤一、采用共轭先验分布的方法,确定未知失效概率p的先验分布;
共轭先验分布具有良好的数学表达和很广泛的应用基础,因此,本发明采用共轭分布方法确定先验分布的形式。
假定某软件在任一运行时刻、任意选择输入的失效概率为p,且每次输入操作执行是均满足贝努利实验的独立统计性,则在n次执行中失效r次的概率为:
p ( r ) = C n r p r ( 1 - p ) n - r
因为二项式分布的共轭先验分布服从beta分布,所以失效概率p的概率密度函数的先验分布为:
f(p)=pa-1(1-p)b-1/B(a,b)    (1.0)
其中:a>0,b>0,为beta函数的超参数,且 B ( a , b ) = ∫ 0 1 p a - 1 ( 1 - p ) b - 1 dp .
步骤二、利用先验矩方法确定先验分布中的超参数;
首先收集测试增长阶段的测试信息,假设选取最后的m组测试信息作为先验信息,每组测试中含有n个测试用例,其中m组测试信息中导致失效的测试用例数的个数分别为k1,k2,...,km,k1,k2,...,km组成样本x,则样本x的边缘分布为:
h ( x ) = ∫ 0 1 f ( p ) π ( x | p ) dp - - - ( 2.0 )
其中:π(x|p)为样本x对p条件分布,
Figure BDA0000088580660000034
将公式(1.0)带入公式(2.0)得出公式(2.1):
h ( x ) = ∫ 0 1 1 B ( a , b ) p a - 1 ( 1 - p ) b - 1 C n x p x ( 1 - p ) n - x dp = ∫ 0 1 1 B ( a , b ) C n x p a + x - 1 ( 1 - p ) b + n - x - 1 dp
= C n x B ( a , b ) ∫ 0 1 p a + x - 1 ( 1 - p ) b + n - x - 1 dp
因为 B ( a , b ) = ∫ 0 1 p a - 1 ( 1 - p ) b - 1 dp , 所以 ∫ 0 1 p a + x - 1 ( 1 - p ) b + n - x - 1 dp = B ( a + x , n + b - x ) , 所以得到:
h ( x ) = C n x B ( a + x , n + b - x ) / B ( a , b ) - - - ( 2.1 )
则h(x)的一阶矩,二阶矩具体为:
E ( x ) = ∫ xh ( x ) dx = Σ x = 0 n xh ( x ) = ∫ 0 1 f ( p ) Σ x = 0 n C n x xp x ( 1 - p ) n - x dp = na / ( a + b ) - - - ( 2.2 )
E [ ( x - 1 ) x ] = ∫ x ( x - 1 ) h ( x ) dx = Σ x = 0 n x ( x - 1 ) h ( x )
= ∫ 0 1 f ( p ) Σ x = 0 n C n x x ( x - 1 ) p x ( 1 - p ) n - x dp = n ( n - 1 ) a ( a + 1 ) ( a + b ) ( a + b + 1 ) - - - ( 2.3 )
通过公式(2.2)(2.3)获取a,b的值如下:
a=Ex(Ex2-nEx)/[(n-1)(Ex)2+n(Ex-Ex2)]        (2.4)
b=(n-Ex)(Ex2-nEx)/[(n-1)(Ex)2+n(Ex-Ex2)]    (2.5)
其中:Ex为h(x)的一阶矩,用样本均值
Figure BDA0000088580660000049
来估计超参数a和b,Ex2为h(x)的二阶矩,用来估计超参数a和b,最后,通过先验矩方法得到的超参数a和b的值分别记为a1和b1
步骤三、利用最大熵方法确定先验分布中的超参数;
一个分布的熵越大,就表示该分布的不确定性越大。因此要在先验信息的约束之下,尽可能少的引入主观成分,可以将先验信息看成约束条件,通过最大化熵,以确定约束条件下的先验分布。
将失效概率p的先验信息用f(p)如式(3.0)所述的约束方式表示:
E [ g k ( p ) ] = ∫ 0 1 f ( p ) g k ( p ) dp = μ k - - - ( 3.0 )
其中:E[gk(p)]为f(p)的k阶原点矩,即gk(p)=pk,将E[gk(p)]记为μk。本发明中E[pk]采用f(p)的二阶原点矩,因此得到共轭最大熵求解公式如公式(3.1)所示。
max H ( p ) = - ∫ 0 1 f ( p ) ln ( f ( p ) f 0 ( p ) dp ) s . t . E [ g k ( p ) ] = ∫ 0 1 f ( p ) g k ( p ) dp = μ k - - - ( 3.1 )
其中:H(p)表示p的熵,f0(p)为问题自然的不变的无信息先验分布,取值为1。则将公式(1.0)代入公式(3.1),得到公式(3.2):
H ( p ) = - 1 B ( a , b ) ∫ 0 1 p a - 1 ( 1 - p ) b - 1 [ ln p a - 1 ( 1 - p ) b - 1 - ln B ( a , b ) ] dp
= ln B ( a , b ) B ( a , b ) - 1 B ( a , b ) ∫ 0 1 p a - 1 ( 1 - p ) b - 1 ln p a - 1 ( 1 - p ) b - 1 dp - - - ( 3.2 )
取k=2,则:
E [ g k ( p ) ] = 1 B ( a , b ) ∫ 0 1 p 2 p a - 1 ( 1 - p ) b - 1 dp
= B ( a + 2 , b ) B ( a , b ) = a ( a + 1 ) ( a + b ) ( a + b + 1 ) = μ 2 - - - ( 3.3 )
公式(3.1)为条件极值问题,利用拉格朗日乘数法将条件极值转换为无条件极值。具体为:
令:
Figure BDA0000088580660000054
获取
Figure BDA0000088580660000056
的无条件极值,则。
Figure BDA0000088580660000057
Figure BDA0000088580660000058
式中:λ是拉格朗日求极值过程的一个参数,Fa(a,b,λ)表示F(a,b,λ)对a求偏导,Fb(a,b,λ)表示F(a,b,λ)对b求偏导,Fλ(a,b,λ)表示F(a,b,λ)对λ求偏导,ha表示对a求偏导、hb表示对b求偏导。根据方程组(3.5)获取得到a和b的值,分别记为a2和b2
步骤四、采用第二类极大似然方法确定步骤二和步骤三中得出的两种的先验分布的权重;
第二类似然估计方法是把样本信息看成是由边缘分布产生的,依据在不同的先验分布中样本的似然值的大小,判定不同先验分布的可信度。似然值越大,可信度越高,置信因子也就越大,对应的先验分布就越真实。因此可以依据置信因子的大小确定参数的权重。具体步骤如下:
步骤4.1:将先验矩方法得出的分布函数记为π1(p), π 1 ( p ) = p a 1 - 1 ( 1 - p ) b 1 - 1 / B ( a 1 , b 1 ) , 最大熵方法得出的先验分布函数记为π2(p), π 2 ( p ) = p a 2 - 1 ( 1 - p ) b 2 - 1 / B ( a 2 , b 2 ) , 根据公式(4.0)和(4.1)分别取出确定这两种不同方法得出的先验分布的似然函数值。
m ( x | π k ) = ∫ 0 1 f ( X | p ) π k ( p ) dp , k = 1,2 - - - ( 4.0 )
L ( X | π k ) = Π i = 1 n m ( x i | π k ) , k = 1,2 - - - ( 4.1 )
其中:m(x|πk)为先验分布的边缘分布,L(X |πk)为似然函数。
步骤4.2:根据公式(4.2)获取两种分布的置信因子,并将置信因子作为超参数的权重。
ϵ k = L ( X | π k ) Σ k = 1 2 L ( X | π k ) , k = 1,2 - - - ( 4.2 )
其中:ε1为先验矩方法取得的分布的置信因子,ε2为最大熵方法取得的分布的置信因子。
步骤五、按不同的权重将两种方法估计出的超参数值进行融合,确定最终先验分布的超参数。
a=ε1a12a2
                                    (5.0)
b=ε1b12b2
步骤六、确定可靠性验证测试无失效最小测试用例数;
步骤6.1:通过上述步骤,得到了未知失效概率p的先验分布,确定第一轮可靠性验证测试的无失效最小测试用例数n1,将公式(5.0)求出的a,b值代入公式(6.0),得到n1
p ( p < p 0 ) = &Integral; 0 p 0 f ( p | 0 , n 1 , a , b ) = dp = &Integral; 0 p 0 p a - 1 ( 1 - p ) b + n 1 - 1 dp B ( a , b + n 1 ) &GreaterEqual; c - - - ( 6.0 )
其中:(p0,c)为要求的可靠性指标已知,p0为失效率指标,c为置信度指标,f(p|0,n,a,b)为执行了n个测试用例发生0个失效的概率分布。
步骤6.2:若根据步骤6.1第一轮得到的n1个测试用例全部无失效通过测试,则说明该软件符合给定的可靠性要求,验证结束;否则,若第一轮执行到第t1(t1≤n1)个测试用例发生失效,说明不符合验收指标,排除故障后需进行第二轮可靠性验证测试,转入步骤6.3。
步骤6.3:把第一轮可靠性验证测试执行通过的测试用例数(t1-1)和失效的用例数1,作为先验信息融入到先验分布(式(1.0))中,得到新的概率分布f(p|1,t1,a,b),见公式(6.1)所示。再根据公式(6.2)确定第二轮测试所需最小的无失效用例数n2
f ( p | 1 , t 1 , a , b ) = p a ( 1 - p ) b + t 1 - 2 B ( a + 1 , b + t 1 - 1 ) - - - ( 6.1 )
p ( p < p 0 ) = &Integral; 0 p 0 f ( p | 1 , t 1 + n 2 , a , b ) dp = &Integral; 0 p 0 p a ( 1 - p ) b + t 1 + n 2 - 2 dp B ( a + 1 , b + t 1 + n 2 - 1 ) &GreaterEqual; c - - - ( 6.2 )
其中:f(p|1,t1+n2,a,b)为在第1轮的基础上,无失效执行n2个测试用例的概率分布,公式(6.2)求解较复杂,本发明通过MATLAB仿真计算出n2的值。
若n2个无失效用例全部无失效通过测试,则说明该软件符合给定的可靠性要求,验证结束;否则,若第二轮测试执行到第t2个测试用例发生失效,说明不符合验收指标,排除故障后需进行第下一轮可靠性验证测试,转入步骤6.4。
步骤6.4:以此类推,若可靠性验证测试进行了i轮,各轮失效分别发生在第t1,t1+t2,,...t,1+t2+t3+...+i个测试用例上,则由公式(6.3)获取下一轮测试需要的无失效的最少用例数ni+1
&Integral; 0 p 0 p a + i - 1 ( 1 - p ) b + &Sigma; 1 i t i - i + n i + 1 - 1 dp B ( a + i , b + &Sigma; 1 i t i - i + n i + 1 ) &GreaterEqual; c - - - ( 6.3 )
其中:
Figure BDA0000088580660000072
为i轮测试共执行的测试用例数,为i轮测试共通过的测试用例数,令
Figure BDA0000088580660000074
则公式(6.3)变为:
&Integral; 0 p 0 p a + i - 1 ( 1 - p ) b + N i + 1 - i - 1 dp B ( a + i , b + N i + 1 - i ) &GreaterEqual; c - - - ( 6.4 )
利用公式(6.4),获取累积的总测试用例量Ni+1,然后再根据
Figure BDA0000088580660000076
得到具体的第i+1轮可靠性验证测试所需要的无失效测试用例量ni+1。根据第i+1轮可靠性验证测试所需要的无失效测试用例量ni+1进行软件可靠性测试。
实施例:
下面本发明实施例中,结合MATLAB程序仿真实现本发明方法的验证。
通过MATLAB仿真程序由beta(1,22)产生20个随机数,分别为:
x1=0.0587,x2=0.0027,x3=0.0774,x4=0.0958,x5=0.0134,x6=0.0635,x7=0.0921,x8=0.0016,x9=0.0036,x10=0.0552,x11=0.0221,x12=0.0539,x13=0.0614,x14=0.0448,x15=0.0882,x16=0.0681,x17=0.0852,x18=0.0051,x19=0.0293,x20=0.0249。
设某软件在某次可靠性测试中得到的20组失效概率值为X=(x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19,x20)。
基于以上先验信息,利用先验矩方法根据公式(2.4)和(2.5)计算出a1=0.8,b1=24.1利用最大熵方法求解方程组(3.4)得出a2=1.2,b2=23.3,再根据本发明中给出的权重的确定方法,得到混合后的参数a=1.0,b=23.6。
图2中,Line1为beta(1,22),产生数据的真实分布,Line2为本发明所述的先验矩和最大熵混合方法得出的先验分布beta(1.0,23.6),Line3为最大熵方法得出的先验分布beta(1.2,23.3),Line4为先验矩方法得出的先验分布beta(0.8,24.1)。从图2的对比中可以看出混合方法比任一种方法更接近真实分布。
在不同的可靠性指标约束下,使用无先验知识的贝叶斯方法时,a=1,b=1,根据公式(6.0)计算出容忍失效数r为0时所需的最少用例数,结果见表1。
表1不同可靠性指标下无先验知识所需要的最小无失效用例量
  p=0.1   p=0.08   p=0.06   p=0.04   p=0.02   p=0.001
  c=0.90   22   27   37   56   113   2301
  c=0.92   24   30   40   61   125   2524
  c=0.94   27   33   45   68   139   2812
  c=0.96   31   38   52   78   159   3217
  c=0.98   38   46   63   95   193   3910
  c=0.99   44   55   74   112   227   4602
  c=0.999   66   82   111   169   341   6904
同理,使用先验知识,依据本发明提出的混合方法得到的a=1.0,b=23.6,计算出容忍失效数为零时所需的最小用例数,结果见表2。
表2不同可靠性指标下利用先验知识所需要的最小无失效用例量
  p=0.1   p=0.08   p=0.06   p=0.04   p=0.02   p=0.001
  c=0.90   4   14   33   90   2278
  c=0.92   1   7   17   38   102   2501
  c=0.94   4   10   22   45   117   2789
  c=0.96   7   15   28   55   136   3194
  c=0.98   15   23   40   72   170   3887
  c=0.99   21   32   51   89   204   4579
  c=0.999   43   59   88   146   317   6881
通过表1和表2的结果可以看出,基于本发明所采用的参数融合方法,得到的贝叶斯先验分布,利用先验知识的可靠性验证测试所需的最少无失效用例数相对于无先验知识的最小无失效用例数要少。
上述实施例说明了本发明采用基于先验矩和最大熵混合方法确定先验分布的超参数,得到的先验分布更接近真实的分布,并且相对于无先验知识的情况,可以有效的减少测试用例量。

Claims (1)

1.一种基于混合贝叶斯先验分布的可靠性验证测试方法,其特征在于,具体包括以下几个步骤:
步骤一、采用共轭先验分布的方法,确定未知失效概率p的先验分布;
假定某软件在任一运行时刻、任意选择输入的失效概率为p,且每次输入操作执行是均满足贝努利实验的独立统计性,则在n次执行中失效r次的概率为:
p ( r ) = C n r p r ( 1 - p ) n - r
因为二项式分布的共轭先验分布服从beta分布,所以失效概率p的概率密度函数的先验分布为:
f(p)=pa-1(1-p)b-1/B(a,b)        (1.0)
其中:a>0,b>0,为beta函数的超参数,且 B ( a , b ) = &Integral; 0 1 p a - 1 ( 1 - p ) b - 1 dp ;
步骤二、利用先验矩方法确定共轭先验分布中的超参数;
首先收集测试增长阶段的测试信息,假设选取最后的m组测试信息作为先验信息,每组测试中含有n个测试用例,其中m组测试信息中导致失效的测试用例数的个数分别为k1,k2,…,km,k1,k2,…,km组成样本x,则样本x的边缘分布为:
h ( x ) = &Integral; 0 1 f ( p ) &pi; ( x | p ) dp - - - ( 2.0 )
其中:π(x|p)为样本x对p条件分布,
Figure FDA0000088580650000014
将公式(1.0)带入公式(2.0)得出公式(2.1):
h ( x ) = &Integral; 0 1 1 B ( a , b ) p a - 1 ( 1 - p ) b - 1 C n x p x ( 1 - p ) n - x dp = &Integral; 0 1 1 B ( a , b ) C n x p a + x - 1 ( 1 - p ) b + n - x - 1 dp
= C n x B ( a , b ) &Integral; 0 1 p a + x - 1 ( 1 - p ) b + n - x - 1 dp
因为 B ( a , b ) = &Integral; 0 1 p a - 1 ( 1 - p ) b - 1 dp , 所以 &Integral; 0 1 p a + x - 1 ( 1 - p ) b + n - x - 1 dp = B ( a + x , n + b - x ) , 所以得到:
h ( x ) = C n x B ( a + x , n + b - x ) / B ( a , b ) - - - ( 2.1 )
则h(x)的一阶矩,二阶矩具体为:
E ( x ) = &Integral; xh ( x ) dx = &Sigma; x = 0 n xh ( x ) = &Integral; 0 1 f ( p ) &Sigma; x = 0 n C n x xp x ( 1 - p ) n - x dp = na / ( a + b ) - - - ( 2.2 )
E [ ( x - 1 ) x ] = &Integral; x ( x - 1 ) h ( x ) dx = &Sigma; x = 0 n x ( x - 1 ) h ( x )
= &Integral; 0 1 f ( p ) &Sigma; x = 0 n C n x x ( x - 1 ) p x ( 1 - p ) n - x dp = n ( n - 1 ) a ( a + 1 ) ( a + b ) ( a + b + 1 ) - - - ( 2.3 )
通过公式(2.2)(2.3)获取a,b的值如下:
a=Ex(Ex2-nEx)/[(n-1)(Ex)2+n(Ex-Ex2)]    (2.4)
b=(n-Ex)(Ex2-nEx)/[(n-1)(Ex)2+n(Ex-Ex2)]    (2.5)
其中:Ex为h(x)的一阶矩,用样本均值
Figure FDA0000088580650000021
来估计超参数a和b,Ex2为h(x)的二阶矩,用
Figure FDA0000088580650000022
来估计超参数a和b,最后,通过先验矩方法得到的超参数a和b的值分别记为a1和b1
步骤三、利用最大熵方法确定共轭先验分布中的超参数;
将失效概率p的先验信息用f(p)如式(3.0)所述的约束方式表示:
E [ g k ( p ) ] = &Integral; 0 1 f ( p ) g k ( p ) dp = &mu; k - - - ( 3.0 )
其中:E[gk(p)]为f(p)的k阶原点矩,即gk(p)=pk,将E[gk(p)]记为μk;本发明中E[pk]采用f(p)的二阶原点矩,因此得到共轭最大熵求解公式如公式(3.1)所示;
max H ( p ) = - &Integral; 0 1 f ( p ) ln ( f ( p ) f 0 ( p ) dp ) s . t . E [ g k ( p ) ] = &Integral; 0 1 f ( p ) g k ( p ) dp = &mu; k - - - ( 3.1 )
其中:H(p)表示p的熵,f0(p)为问题自然的不变的无信息先验分布,取值为1;则将公式(1.0)代入公式(3.1),得到公式(3.2):
H ( p ) = - 1 B ( a , b ) &Integral; 0 1 p a - 1 ( 1 - p ) b - 1 [ ln p a - 1 ( 1 - p ) b - 1 - ln B ( a , b ) ] dp
= ln B ( a , b ) B ( a , b ) - 1 B ( a , b ) &Integral; 0 1 p a - 1 ( 1 - p ) b - 1 ln p a - 1 ( 1 - p ) b - 1 dp - - - ( 3.2 )
取k=2,则:
E [ g k ( p ) ] = 1 B ( a , b ) &Integral; 0 1 p 2 p a - 1 ( 1 - p ) b - 1 dp
= B ( a + 2 , b ) B ( a , b ) = a ( a + 1 ) ( a + b ) ( a + b + 1 ) = &mu; 2 - - - ( 3.3 )
公式(3.1)为条件极值问题,利用拉格朗日乘数法将条件极值转换为无条件极值;具体为:
令:
Figure FDA0000088580650000029
Figure FDA00000885806500000210
获取
Figure FDA00000885806500000211
的无条件极值,则;
Figure FDA00000885806500000212
Figure FDA00000885806500000213
Figure FDA00000885806500000214
式中:λ是拉格朗日求极值过程的一个参数,Fa(a,b,λ)表示F(a,b,λ)对a求偏导,Fb(a,b,λ)表示F(a,b,λ)对b求偏导,Fλ(a,b,λ)表示F(a,b,λ)对λ求偏导,ha表示对a求偏导、hb表示对b求偏导;根据方程组(3.5)获取得到a和b的值,分别记为a2和b2
步骤四、采用第二类极大似然方法确定步骤二和步骤三中得出的两种先验分布的权重;
具体步骤如下:
步骤4.1:将先验矩方法得出的分布函数记为π1(p), &pi; 1 ( p ) = p a 1 - 1 ( 1 - p ) b 1 - 1 / B ( a 1 , b 1 ) , 最大熵方法得出的先验分布函数记为π2(p), &pi; 2 ( p ) = p a 2 - 1 ( 1 - p ) b 2 - 1 / B ( a 2 , b 2 ) , 根据公式(4.0)和(4.1)分别取出确定这两种不同方法得出的先验分布的似然函数值;
m ( x | &pi; k ) = &Integral; 0 1 f ( X | p ) &pi; k ( p ) dp , k = 1,2 - - - ( 4.0 )
L ( X | &pi; k ) = &Pi; i = 1 n m ( x i | &pi; k ) , k = 1,2 - - - ( 4.1 )
其中:m(x|πk)为先验分布的边缘分布,L(X|πk)为似然函数;
步骤4.2:根据公式(4.2)获取两种分布的置信因子,并将置信因子作为超参数的权重;
&epsiv; k = L ( X | &pi; k ) &Sigma; k = 1 2 L ( X | &pi; k ) , k = 1,2 - - - ( 4.2 )
其中:ε1为先验矩方法取得的分布的置信因子,ε2为最大熵方法取得的分布的置信因子;
步骤五、按不同的权重将两种方法估计出的超参数值进行融合,确定最终先验分布的超参数;
a=ε1a12a2
                                   (5.0)
b=ε1b12b2
步骤六、确定可靠性验证测试无失效最小测试用例数;
步骤6.1:通过上述步骤,得到了未知失效概率p的先验分布,确定第一轮可靠性验证测试的无失效最小测试用例数n1,将公式(5.0)求出的a,b值代入公式(6.0),得到n1
p ( p < p 0 ) = &Integral; 0 p 0 f ( p | 0 , n 1 , a , b ) = dp = &Integral; 0 p 0 p a - 1 ( 1 - p ) b + n 1 - 1 dp B ( a , b + n 1 ) &GreaterEqual; c - - - ( 6.0 )
其中:(p0,c)为要求的可靠性指标已知,p0为失效率指标,c为置信度指标,f(p|0,n,a,b)为执行了n个测试用例发生0个失效的概率分布;
步骤6.2:若根据步骤6.1第一轮得到的n1个测试用例全部无失效通过测试,则说明该软件符合给定的可靠性要求,验证结束;否则,若第一轮执行到第t1个测试用例发生失效,说明不符合验收指标,排除故障后需进行第二轮可靠性验证测试,转入步骤6.3;
步骤6.3:把第一轮可靠性验证测试执行通过的测试用例数(t1-1)和失效的用例数1,作为先验信息融入到先验分布中,得到新的概率分布f(p|1,t1,a,b),见公式(6.1)所示;再根据公式(6.2)确定第二轮测试所需最小的无失效用例数n2
f ( p | 1 , t 1 , a , b ) = p a ( 1 - p ) b + t 1 - 2 B ( a + 1 , b + t 1 - 1 ) - - - ( 6.1 )
p ( p < p 0 ) = &Integral; 0 p 0 f ( p | 1 , t 1 + n 2 , a , b ) dp = &Integral; 0 p 0 p a ( 1 - p ) b + t 1 + n 2 - 2 dp B ( a + 1 , b + t 1 + n 2 - 1 ) &GreaterEqual; c - - - ( 6.2 )
其中:f(p|1,t1+n2,a,b)为在第1轮的基础上,无失效执行n2个测试用例的概率分布,仿真计算出n2的值;
若n2个无失效用例全部无失效通过测试,则说明该软件符合给定的可靠性要求,验证结束;否则,若第二轮测试执行到第t2个测试用例发生失效,说明不符合验收指标,排除故障后需进行第下一轮可靠性验证测试,转入步骤6.4;
步骤6.4:以此类推,若可靠性验证测试进行了i轮,各轮失效分别发生在第t1,t1+t2,,...t,1+t2+t3+...+i个测试用例上,则由公式(6.3)获取下一轮测试需要的无失效的最少用例数ni+1
&Integral; 0 p 0 p a + i - 1 ( 1 - p ) b + &Sigma; 1 i t i - i + n i + 1 - 1 dp B ( a + i , b + &Sigma; 1 i t i - i + n i + 1 ) &GreaterEqual; c - - - ( 6.3 )
其中:
Figure FDA0000088580650000044
为i轮测试共执行的测试用例数,
Figure FDA0000088580650000045
为i轮测试共通过的测试用例数,令
Figure FDA0000088580650000046
则公式(6.3)变为:
&Integral; 0 p 0 p a + i - 1 ( 1 - p ) b + N i + 1 - i - 1 dp B ( a + i , b + N i + 1 - i ) &GreaterEqual; c - - - ( 6.4 )
利用公式(6.4),获取累积的总测试用例量Ni+1,然后再根据
Figure FDA0000088580650000048
得到具体的第i+1轮可靠性验证测试所需要的无失效测试用例量ni+1;根据第i+1轮可靠性验证测试所需要的无失效测试用例量ni+1进行软件可靠性测试。
CN2011102579551A 2011-09-02 2011-09-02 一种基于混合贝叶斯先验分布的可靠性验证测试方法 Pending CN102411537A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011102579551A CN102411537A (zh) 2011-09-02 2011-09-02 一种基于混合贝叶斯先验分布的可靠性验证测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102579551A CN102411537A (zh) 2011-09-02 2011-09-02 一种基于混合贝叶斯先验分布的可靠性验证测试方法

Publications (1)

Publication Number Publication Date
CN102411537A true CN102411537A (zh) 2012-04-11

Family

ID=45913619

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102579551A Pending CN102411537A (zh) 2011-09-02 2011-09-02 一种基于混合贝叶斯先验分布的可靠性验证测试方法

Country Status (1)

Country Link
CN (1) CN102411537A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297956A (zh) * 2013-05-06 2013-09-11 北京航空航天大学 一种基于贝叶斯理论与熵理论的动态轻量级信任评估方法
CN105044307A (zh) * 2015-07-14 2015-11-11 中国科学院沈阳应用生态研究所 一种基于贝叶斯理论的土壤重金属二维风险概率评估方法
CN105452972A (zh) * 2013-08-05 2016-03-30 Abb技术有限公司 用于分布式传动系的状况监测的方法
CN106202929A (zh) * 2016-07-11 2016-12-07 中国人民解放军国防科学技术大学 一种基于Bayes混合模型的命中精度评估方法
CN106932708A (zh) * 2017-02-10 2017-07-07 电子科技大学 电子封装焊点疲劳寿命分析方法
CN109871323A (zh) * 2019-01-29 2019-06-11 山西大学 一种基于信息熵的二维软件可靠性增长模型
CN110362879A (zh) * 2019-06-25 2019-10-22 中国人民解放军军事科学院国防科技创新研究院 二层及多层结构的先验融合与更新方法及先验补充方法
CN110414552A (zh) * 2019-06-14 2019-11-05 中国人民解放军海军工程大学 一种基于多源融合的备件可靠性贝叶斯评估方法及系统
CN117851266A (zh) * 2024-03-05 2024-04-09 中国人民解放军海军工程大学 安全关键软件可靠性贝叶斯验证方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0994423A2 (en) * 1998-10-16 2000-04-19 Mitsubishi Denki Kabushiki Kaisha Smoothing algorithm for bayesian classifier
CN1667587A (zh) * 2005-04-11 2005-09-14 北京航空航天大学 基于扩展的马尔克夫贝叶斯网的软件可靠性评估方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0994423A2 (en) * 1998-10-16 2000-04-19 Mitsubishi Denki Kabushiki Kaisha Smoothing algorithm for bayesian classifier
CN1667587A (zh) * 2005-04-11 2005-09-14 北京航空航天大学 基于扩展的马尔克夫贝叶斯网的软件可靠性评估方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
闵庆欢: "软件可靠性验证测试中降低测试用例量方法研究", 《中国优秀硕士学位论文全文数据库》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297956A (zh) * 2013-05-06 2013-09-11 北京航空航天大学 一种基于贝叶斯理论与熵理论的动态轻量级信任评估方法
CN103297956B (zh) * 2013-05-06 2015-08-26 北京航空航天大学 一种基于贝叶斯理论与熵理论的动态轻量级信任评估方法
CN105452972A (zh) * 2013-08-05 2016-03-30 Abb技术有限公司 用于分布式传动系的状况监测的方法
CN105452972B (zh) * 2013-08-05 2018-01-02 Abb瑞士股份有限公司 用于分布式传动系的状况监测的方法
CN105044307A (zh) * 2015-07-14 2015-11-11 中国科学院沈阳应用生态研究所 一种基于贝叶斯理论的土壤重金属二维风险概率评估方法
CN106202929A (zh) * 2016-07-11 2016-12-07 中国人民解放军国防科学技术大学 一种基于Bayes混合模型的命中精度评估方法
CN106202929B (zh) * 2016-07-11 2019-02-26 中国人民解放军国防科学技术大学 一种基于Bayes混合模型的命中精度评估方法
CN106932708A (zh) * 2017-02-10 2017-07-07 电子科技大学 电子封装焊点疲劳寿命分析方法
CN109871323A (zh) * 2019-01-29 2019-06-11 山西大学 一种基于信息熵的二维软件可靠性增长模型
CN109871323B (zh) * 2019-01-29 2021-07-02 山西大学 一种基于信息熵的二维软件可靠性增长模型的建立方法
CN110414552A (zh) * 2019-06-14 2019-11-05 中国人民解放军海军工程大学 一种基于多源融合的备件可靠性贝叶斯评估方法及系统
CN110414552B (zh) * 2019-06-14 2021-07-16 中国人民解放军海军工程大学 一种基于多源融合的备件可靠性贝叶斯评估方法及系统
CN110362879A (zh) * 2019-06-25 2019-10-22 中国人民解放军军事科学院国防科技创新研究院 二层及多层结构的先验融合与更新方法及先验补充方法
CN110362879B (zh) * 2019-06-25 2020-09-04 中国人民解放军军事科学院国防科技创新研究院 二层及多层结构的先验融合与更新方法及先验补充方法
CN117851266A (zh) * 2024-03-05 2024-04-09 中国人民解放军海军工程大学 安全关键软件可靠性贝叶斯验证方法及装置
CN117851266B (zh) * 2024-03-05 2024-05-28 中国人民解放军海军工程大学 安全关键软件可靠性贝叶斯验证方法及装置

Similar Documents

Publication Publication Date Title
CN102411537A (zh) 一种基于混合贝叶斯先验分布的可靠性验证测试方法
McLaughlin et al. Shaping the globular cluster mass function by stellar-dynamical evaporation
CN105069532B (zh) 一种多应力多退化量步进加速退化试验方案优化设计方法
CN104133994A (zh) 融合多源成败型数据的可靠度评估方法
CN103246821B (zh) 一种基于仿真的多应力小样本加速寿命试验方案设计优化方法
CN104899380A (zh) 一种基于蒙特卡洛模拟的边坡稳定可靠度敏感性分析方法
Ullrich et al. Treatment of errors in efficiency calculations
CN107145721A (zh) 一种获取快中子反应堆少群截面参数的混合计算方法
CN103279657A (zh) 一种基于工程经验的产品加速退化试验方案设计方法
CN102722603B (zh) 一种机电类产品的可靠性度量方法
Xing et al. Dynamic Bayesian evaluation method for system reliability growth based on in-time correction
Chen et al. Efficient method for variance-based sensitivity analysis
CN103310122A (zh) 一种并行随机采样一致方法及其装置
CN102662848B (zh) 一种贝叶斯软件可靠性验证测试方法及其计算机辅助工具
Chirkin Likelihood description for comparing data with simulation of limited statistics
Tahir et al. On the finite mixture of exponential, Rayleigh and Burr Type-XII distributions: Estimation of parameters in Bayesian framework
Espinosa-Garcia et al. Theoretical Study of the Pair-Correlated F+ CHD3 (v= 0, ν1= 1) Reaction: Effect of CH Stretching Vibrational Excitation
CN106169085A (zh) 基于信息度量的特征选择方法
CN111400859A (zh) 一种考虑扰动不确定性的纳米芯片多参数成品率估算方法
CN103713997A (zh) 一种蜕变关系形式化描述与分解方法
Caselle et al. On the behaviour of spatial Wilson loops in the high-temperature phase of LGT
Conway Calculation of cross section upper limits combining channels incorporating correlated and uncorrelated systematic uncertainties
Kulchytskyy et al. Universal divergence of the Rényi entropy of a thinly sliced torus at the Ising fixed point
Budi et al. The impact of a deterministic reliability index on deregulated multi-objective generation expansion planning
Schaefer Simulations with the hybrid Monte Carlo algorithm: Implementation and data analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120411