1前言
可靠性数据是系统可靠性设计、研究、分析、评估和改进的基本依据,其分析是所有可靠性工作的基础。通过有计划、有目的地收集和分析系统各组成单元的可靠性数据,可以定量评价系统的可靠性水平,找出其可靠性的薄弱环节和原因。经过改进,系统的性能和可靠性水平可以不断提高。因此,可靠性数据分析在系统可靠性研究中起着非常重要的作用。
采集到的系统可靠性原始数据往往是混沌的,不能直接用来分析和判断系统的可靠性。只有用概率论和数理统计的知识进行一系列的整理和分析,才能通过大量的现象掌握其本质,使其数据呈现规律性。可靠性数据整理和分析的步骤如图1所示。
图1系统可靠性数据整理分析逻辑图
对系统可靠性数据进行整理和分析,需要处理大量的数据。手动完成这些任务需要很长时间,容易出错。然而,MATLAB的统计工具箱是基于MATLAB数值计算环境的工具集,其统计功能已经可以与SPSS、SAS等软件相媲美。它可以实现数据处理的自动化,保证数据分析的及时准确完成。
用MATLAB绘制可靠性数据分布频率直方图
通过将系统可靠性数据读入MATLAB的工作空间,可以绘制可靠性数据分布频率的直方图。Matlab统计工具箱提供的hist函数是一个用于直方图的MATLAB命令,其命令格式如下:
HIST(数据,k);
其中包括:
Data——原始数据;
单元格数除以K——。
此命令将间隔[min(数据),max(数据)]分成k个相等的部分,并绘制频率直方图,默认值k为10。如果有必要提前给出单元格,将单元格的中点存储在向量nb中,然后使用命令hist(data,nb)。
有时候,你不需要直方图,只想知道单元格之间的位置和数据落在单元格之间的频率。您可以使用以下命令:
[n,x]=HIST(数据);
[n,x]=HIST(数据,k);
[n,x]=HIST(数据,nb);
返回k个单元格的频率,x返回单元格的中点。
3参数估计
根据直方图的形状,假设可靠性数据服从一定的分布,一般可靠性数据服从负指数分布。
指数分布可以用命令expfit来估计,它用极大似然法给出了概率分布常用参数的点估计值和面积估计值。命令格式如下:
[muhat,muci]=expfit(数据)
其中:muhat——的参数的估计值;
muci ——参数估计的置信区间。
正态分布可以用normfit命令来估计,它用极大似然法给出常用概率分布参数的点估计值和面积估计值。命令格式如下:
[muhat,sigmahat,muci,sigmaci]=normfit(数据)
其中:muhat ——的参数的估计值;
muci ——参数估计的置信区间:
Sigma——参数的估计值;
sigmaci3354参数的置信区间。
4假设检验
K-S检验方法的基本思想是将样本观测值的累积百分比(Fn(x))与假设的理论频率分布(
Fx(x))来建立统计。它可以直接处理原始数据,一般认为其功效高于卡方检验,在样本较少时也可以使用。命令格式如下:
[H,P,KSSTAT,CV]=kstest(X,cdf,)
类型:
P ——原始假设的概率;
KSSTAT——检验统计量的值;
CV ——是否接受假设临界值。
说明:如果H=0,不能拒绝原假设;如果H=1,原始假设可以被拒绝。
示例应用
以下示例说明了如何使用HIST命令以及如何估计参数和测试假设。综放工作面采煤机无故障运行时间和故障时间统计见表1。
表1采煤机无故障运行时间和故障时间统计表
根据表1,可以得出采煤机无故障工作时间数据1和维护时间数据2为:
data1=[110,
270, 90, 1500, 1923,715, 1523, 427, 730, 1120,390, 240, 0, 40, 220,673, 2397, 1032, 315]data2=[30, 165, 30, 60, 60,10, 50, 50, 130, 15,20, 45, 35, 45, 30,120, 30, 105, 15, 147,15, 78, 25, 90, 30,170, 210, 30, 80, 60,79, 50,125]
这里我们自己划分小区间,把采煤机无故障工作时间data1的区间的中点存放在向量nb1中,把采煤机维修时间data1的区间的中点存放在向量nb2中,二者分别为:
nb1=[200 600 1000 1400 1800 2200 ];
nb2=[15 45 75 105 135 165 195];
然后分别使用命令hist(data1,nb1)和hist(data2,nb2),得出采煤机无故障工作时间直方图如图2所示,采煤机维修时间直方图如图3所示。
据描出的频数直方图的形状,假设采煤机无故障工作时间和采煤机维修时间两者均服从负指数分布。
分别使用命令[muhat1,muci1]=expfit(data1)和命令[muhat2,muci2]=expfit(data2)进行参数估计可得:
1/λ=muhat1=601.029(min)
1/μ=muhat2=67.697(min)
式中:λ——故障率;
μ——修复率。
从而,
λ=0.0017(1/min);
μ=0.0148(1/min)。
令x=data1',下面的命令可对采煤机无故障工作时间的分布进行假设检验:
[H,p,ksstat,cv]=kstest(x,[x expcdf(x,601)],0.05)
计算结果如下:
H =
0
p =
0.9965
ksstat =
0.0680
cv =
0.2275
对计算结果的说明:
H=0表示接受原假设,统计量ksstat小于临界值cv表示接受原假设。
再令x=data2',下面的命令可对采煤机维修时间的分布进行假设检验:
[H,p,ksstat,cv]=kstest(x,[x expcdf(x,67)],0.05)
计算结果如下:
H =
0
p =
0.2166
ksstat =
0.1791
cv =
0.2308
对计算结果的说明:
H=0表示接受原假设,统计量ksstat小于临界值cv表示接受原假设。
6 用MATLAB进行可靠性数据分析的意义
(1)充分利用计算机这一快速、有效的现代工具,减轻科研、管理人员的劳动强度,将信息处理、存储、综合分析等大量的繁重工作自动化;
(2)缩短资料处理周期,及时为生产、管理服务;
(3)综合利用系统信息,提管理工作的科学性和定量程度。