欢迎来到知嘟嘟! 联系电话:13336804447 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13336804447
知嘟嘟经纪人
收藏
专利号: 2023116059536
申请人: 佛山科学技术学院
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2026-01-27
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于离群检测的数据传输异常识别方法,其特征在于,所述方法包括以下步骤:

S100,对数据流进行数据分割,得到N个数据段;

S200,依次计算N个数据段的线性离群度;

S300,根据N个数据段的线性离群度计算异常解离值;

S400,通过异常解离值识别出数据流中的异常数据段;

步骤S100中,所述数据流,具体为:在传感器节点采集到数据后,通过传感器节点向服务器发送数据,以dat(a)作为服务器在时刻p(a)时所接收到的来自于传感器节点的数据,以数组dat[]存储dat(a),将数组dat[]作为所述数据流;

其中,时刻p(a)为时段tN内的第a秒,a为序号,a的取值范围为a=1,2,…,tA,tA为时段tN的长度,tA的取值区间为[18000,28800],时段tN为传感器节点向服务器发送数据的过程中的任意一个时段;

dat(a)对应的取值为dat(a)=dat(1),dat(2),…,dat(tA),则数组dat[]的长度为tA;

步骤S100中,对数据流进行数据分割,得到N个数据段的方法具体为:创建N个空白的数组Psen(1),Psen(2),…,Psen(N),以这N个数组组成一个数组序列P_sen,以Psen(i)表示数组序列P_sen中的第i个数组,i为序号,i的取值范围为i=1,2,…,N,按照均匀填充法将数组dat[]中的tA个元素分配至数组序列P_sen中的每一个数组,以数组序列P_sen中的N个数组作为N个数据段;

其中,N=INT(tA/K0),K0为分割长度,K0的取值为区间[8,20]中的任意一个整数,INT()表示对()内的数进行向上取整;

按照均匀填充法将数组dat[]中的tA个元素分配至数组序列P_sen中的每一个数组的方法为:以dat(a)表示数组dat[]中的第a个元素,a为序号,a的取值范围为a=1,2,…,tA,将数组dat[]中的第P1(i)个元素至第P2(i)个元素加入Psen(i)中,P1(i)=(i-1)*K0+1,P2(i)=i*K0;

将P1(i)和P2(i)中的序号i从i=1遍历至i=N,从而完成数组序列P_sen中N个数组Psen(1),Psen(2),…,Psen(N)的数据写入;

步骤S200中,依次计算N个数据段的线性离群度的方法为:

S201,创建一个空白的数组ach[],计算解离初值R1,创建一个空白的数组RPIV[],将解离初值R1加入到数组RPIV[]中;

以Psen(i)表示数组序列P_sen的N个数组中的第i个数组,i为序号,i的取值范围为i=1,2,…,N,初始化变量k,k的取值范围与i的取值范围相同,从k=1开始遍历变量k,以Psen(k)表示变量k在数组序列P_sen的N个数组中所对应的第k个数组,转至S202;

S202,记数组Psen(k)中的第j个元素为Psen(k,j),j为序号,j的取值范围为j=1,2,…,M,M为数组Psen(k)的长度,以Psen(k,jm)表示数组Psen(k)中元素值最小的元素,以Psen(k,jg)表示数组Psen(k)中元素值最大的元素,jm、jg都为序号,jm,jg∈[1,M];

将数组Psen(k)中位于Psen(k,jm)与Psen(k,jg)之间的所有元素加入数组ach[]中,以Aach表示数组ach[]中所有元素的平均值,转至S203;

S203,如果Aach的值大于解离初值R1,则将解离初值R1的值更新为当前Aach的值,同时清空数组ach[]内的所有元素;

如果Aach的值小于或等于解离初值R1,则通过第一离群算法更新R1的值,同时清空数组ach[]内的所有元素;

将当前R1的值加入到数组RPIV[]中,转至S204;

S204,如果当前变量k的值小于N,则将变量k的值增加1,并转到S202;如果当前变量k的值大于或等于N,则转至S205;

S205,以OR_r(i)表示Psen(i)所对应的线性离群度,OR_r(i)的计算方法为:将数组Psen(i)内的M个元素依次减去RPIV(i)的值,从而得到M个第一数值,取这M个第一数值的绝对值作为离群度,则共有M个离群度;以数组Psen(i)内的最大值除以M个离群度,得到M个第二数值,依次将这M个第二数值进行累加,进而得到线性离群度;

将Psen(i)中的i从i=1遍历至i=N,从而得到N个数组Psen(1),Psen(2),…,Psen(N)所对应的N个线性离群度OR_r(1),OR_r(2),…,OR_r(N)。

2.根据权利要求1所述的一种基于离群检测的数据传输异常识别方法,其特征在于,所述在传感器节点采集到数据后,其中,所述数据为温度值、压力值、湿度值、光照值、噪音值、信号值、位移值、功率值中的其中一种,且传感器节点在每一秒至多采集一个数据。

3.根据权利要求1所述的一种基于离群检测的数据传输异常识别方法,其特征在于,通过第一离群算法更新R1的值的方法具体为:记Rs=round(M/2),round()表示对括号内的值进行向上取整,将序号jm的值与Rs的值进行比较;

如果jm的值小于或者等于Rs的值,则将数组Psen(k)中位于Psen(k,1)与Psen(k,jm)之间的所有元素组成离群数据段;如果jm的值大于Rs的值,则将数组Psen(k)中位于Psen(k,jm)与Psen(k,M)之间的所有元素组成离群数据段;

将离群数据段中元素值最小的元素记为Psen(k,jp),jp为序号,jp∈[1,M];

将R1的值更新为:数组Psen(k)中位于Psen(k,jp)与Psen(k,jg)之间的所有元素的平均值。

4.根据权利要求1所述的一种基于离群检测的数据传输异常识别方法,其特征在于,解离初值R1的计算方法为:在数组序列P_sen的N个数组中,依次计算每个数组内所有元素的平均值,以APsen(i)表示Psen(i)内所有元素的平均值,则N个数组Psen(1),Psen(2),…,Psen(N)对应着N个所述平均值APsen(1),APsen(2),…,APsen(N),在这N个数组Psen(1),Psen(2),…,Psen(N)中筛选出平均值最大的数组并记该数组为Psen(X),X为序号,X∈[1,N];

分别以Psen(X,jm)和Psen(X,jg)表示数组Psen(X)中元素值最小的元素和元素值最大的元素,将数组Psen(X)中位于Psen(X,jm)与Psen(X,jg)之间的所有元素的平均值记为解离初值R1。

5.根据权利要求1所述的一种基于离群检测的数据传输异常识别方法,其特征在于,步骤S300中,根据N个数据段的线性离群度计算异常解离值的方法具体为:以N个线性离群度OR_r(1),OR_r(2),…,OR_r(N)的平均值作为异常解离值。

6.根据权利要求1所述的一种基于离群检测的数据传输异常识别方法,其特征在于,步骤S400中,通过异常解离值识别出数据流中的异常数据段的方法具体为:在数据流中经过数据分割后的N个数据段中,以OR_r(i)表示所述N个数据段中的第i个数据段Psen(i)的线性离群度,则所述N个数据段Psen(1),Psen(2),…,Psen(N)对应着N个线性离群度OR_r(1),OR_r(2),…,OR_r(N),将线性离群度的值大于异常解离值的数据段标记为异常数据段。