一种大坝异常监测数据自动识别方法
技术领域
本发明涉及大坝监控领域,尤其涉及一种大坝异常监测数据自动识别方法。
背景技术
我国共建成100米以上大坝200余座,其中150米以上的高坝40余座。对这些大坝进行监测、监控是保证其安全运行的重要手段。2015年能源局颁布的《水电站大坝运行安全监督管理规定》进一步要求“对于坝高一百米以上的大坝,电力企业应当建立大坝安全在线监控系统”,“大坝中心应当对注册(备案)登记的大坝运行安全进行远程在线技术监督”。由于工作条件复杂,高坝布设的监测点通常远多于一般工程;而对群坝进行管理时,涉及到的测点数目更是巨大。
在线监控的重要任务是识别异常运行状况,其基础为识别异常监测数据。目前,在大坝监控领域可见的异常值识别方法按照其原理可以被分为基于包络域的识别法、基于条件相似性的识别法以及基于数学模型的识别法三类。其中,基于统计回归数学模型的异常值识别方法通常能够达到较高的敏感度,同时也不容易将正常值误判为异常,因此应用最为广泛。但是,回归模型的建立通常需要有丰富数据分析经验的人操作完成。当对监测点极多的高坝或群坝进行监控时,人力成本巨大;同时,不同的操作人员可能出现标准不一致、甚至不准确的情况。此外,统计模型中通常还包括水位、温度等环境量,而在实际工程中经常出现环境量与效应量不同时报送的情况,这时将无法采用统计模型得出效应量预测值,因而也就无法判断实测值是否异常。
发明内容
针对基于统计模型的大坝异常监测数据识别技术中对人工操作以及环境量依赖程度过高的问题,本发明提供一种自动识别异常监测数据的方法,旨在提升大坝安全监控工作中异常测值识别的精度、效率以及鲁棒性,并降低人力资源投入。
为了实现上述目的,本发明公开一种大坝异常监测数据自动识别方法,所述方法包括以下步骤:
1)由原始监测数据序列构建轨迹矩阵,然后对轨迹矩阵进行奇异值分解得到一系列特征组;
2)将特征组按照特征值从大到小排列,选择累积贡献率大于等于85%的前若干个特征组为主要特征组;
3)计算主要特征组对应的基本矩阵,然后对基本矩阵进行对角平均化得到数据序列的前若干个主要成分;
4)将得出的主要成分累加得到重构数据序列;
5)用重构序列和原数据序列相减得到残差序列,求出残差序列的标准差;
6)根据残差序列的标准差由拉依达准则判断测值是否为异常值。
进一步地,在本发明公开的上述步骤中,所述轨迹矩阵X由对监测数据序列f0,f1,f2,...,fN-1在时间上滞后排列得到,表示为:
其中,N为监测序列数据总数,L为窗口长度,1<L<N,K为轨迹矩阵X每行所包含的测值数量,K=N-L+1;i,j用来标示元素xij在轨迹矩阵X中所处的位置是在第i行第j列。
进一步地,所述对轨迹矩阵X进行奇异值分解是指:求S=XXT的非负特征值λ1,λ2,λ3,...,λl以及对应的标准正交化的特征向量U1,U2,U3,...,Ul以及所述特征组是指(λi,Ui,Vi),称为第i个特征组。
进一步地,所述第i个特征组的贡献率CRi由下式计算:
进一步地,所述主要特征组为累积贡献率大于等于85%的前m个特征组,即:
i,j用来标示是第几个特征值,m表示主要特征组的总数,l表示非负特征组的总数。
进一步地,所述基本矩阵Xi由特征组计算得到:
进一步地,所述对基本矩阵Xi进行对角平均化的过程为:对于L×K的矩阵Xi,令其元素为xij,L*=min(L,K),K*=max(L,K),N=L+K-1;若L<K,则xij *=xij,否则xij *=xji。所述第i个主要成分按下式计算:
所述重构数据序列由前m个主要成分累加得到,即:
所述残差序列Δk由重构序列和原数据序列相减得到,即:
所述拉依达准则为,取置信水平为99%、残差序列的标准差为σ时,当下式成立时测值为正常值,否则为异常值:
|Δk|≤2.58σ (14)
本发明的有益效果为:采用本发明公布的异常值识别方法能够自动提取监测数据序列的主要特征,避免人工建立数学模型,不但能保证判断的一致性和准确性,还大大降低了人力资源投入。同时,当水位、气温等环境量缺失时仍然能够对监测数据进行判别。
附图说明
图1为本发明的方法的一个实施例的流程图。
图2为一个实施例中待分析的实测数据,为一拱坝坝顶位移监测数据。
图3为一个实施例中前20个特征组的贡献率分布图。
图4为一个实施例中CR1=67.1%对应的主要成分曲线图。
图5是一个实施例中CR2=12%对应的主要成分曲线图。
图6是一个实施例中CR3=11.98%对应的主要成分曲线图。
图7为一个实施例中由前三个主要成分得到的重构数据序列。
图8为一个实施例中由重构数据序列和实测数据序列求得的残差序列及合理残差范围。
具体实施方式
以下结合附图和一个实施例对本发明所述的大坝监测数据异常值识别方法的实施方式和有益效果做进一步说明。图1为根据本发明公布的异常值识别方法的流程图,采用该方法对图2所示的拱坝坝顶位移监测数据进行分析识别。包括以下步骤:
步骤1:读取监测数据序列f0,f1,f2,...,fN-1,将数据序列在时间上滞后排列得到轨迹矩阵X:
其中,N为监测序列数据总数,L称为窗口长度,1<L<N;对于有周期性的监测数据序列,要求L的取值大于一个周期的长度。本实施例中L=400天,N=6800天。
步骤2:对轨迹矩阵X进行奇异值分解:求矩阵S=XXT,求S的非负特征值λ1,λ2,λ3,...,λl以及对应的标准正交化的特征向量U1,U2,U3,...,Ul以及得到l个特征组(λi,Ui,Vi),i=1,2,....l。
步骤3:求第i个特征组的贡献率CRi,其计算公式为:
其中,l为矩阵S的非负特征值总数。
步骤4:将特征组按照特征值从大到小排列,求前i个特征组的累积贡献率SCRi:
判断前i个特征组的累积贡献率SCRi是否大于等于85%,如果成立,则令主要特征组个数m=i,并选取这m个特征组为主要特征组;否则,继续通过累加求下一个特征组的贡献率。
图3为图2所示实施例的前20个特征组的贡献率分布图,可见前三个特征组的贡献率显著大于之后的特征组,其累积贡献率为91%;因此,选择前三个特征组为本实施例的主要特征组。
步骤5:计算主要特征组对应的基本矩阵:第i个主要特征组对应的基本矩阵Xi为:
其中,i=1,2,...,m。
步骤6:对主要特征组对应的基本矩阵进行对角平均化求主要成分:对于L×K的矩阵Xi,令其元素为xij,L*=min(L,K),K*=max(L,K),N=L+K-1;若L<K,则xij *=xij,否则xij *=xji。第i个主要成分按下式计算:
图4所示为图2所示实施例的前三个主要特征组对应的主要成分。
步骤7:将前m个主要成分累加得到重构数据序列,即:
其中,k=0,1,2,...,N-1。图5中粗实线所示为对应图2所示实施例的重构数据序列,由前三个主要特征组对应的主要成分累加得到。
步骤8:由重构序列和原数据序列相减得到残差序列Δk,即:
其中,k=0,1,2,...,N-1。图6所示为对应图2所示实施例的残差序列。
步骤9:求出残差序列的标准差σ:
图2所示实施例的残差的标准差为0.9090。
步骤10:对于每个测值,根据拉依达准则判断测值是否为异常值:
|Δk|≤2.58σ (9)
当上式成立时,残差所对应测值为正常值;否则该残差对应测值出现的概率小于1%,因而为异常值。
图6中灰色区域为根据上述准则确定的实施例中正常测值的残差范围±2.3452,该区域之外的残差所对应的测值即为异常测值。