一种基于预测的及时加权传感器网络数据融合方法与流程

文档序号:12500987阅读:242来源:国知局
一种基于预测的及时加权传感器网络数据融合方法与流程

本发明涉及检测技术领域,特别是一种基于预测的及时加权传感器网络数据融合方法。



背景技术:

本发明提出一种基于预测的及时加权传感器网络数据融合方法。由于单个传感器节点采集的数据可能存在误差,因此通常需要在广阔空间中的多个位置布置多个传感器节点,并通过网络进行相联以形成传感器网络。结合传感器网络中所有传感器节点所采集的信息,并进行综合判断以得出最终的结果,这一过程被称为传感器网络的数据融合,所采用的方法即为传感器网络的数据融合方法。由于传统传感器网络进行数据融合时,通常要等到所有传感器节点的数据都被汇聚节点所接收后,才能在汇聚节点上通过计算得出最终的融合结果,这事实上减慢了系统刷新的速率,降低了实时性。



技术实现要素:

有鉴于此,本发明的目的是提出一种基于预测的及时加权传感器网络数据融合方法,提高了数据融合方法的及时性以及准确性。

本发明采用以下方案实现:一种基于预测的及时加权传感器网络数据融合方法,具体包括以下步骤:

步骤S1:初始化处理:初始化融合决策值R0,采用全部节点的平均值作为初始融合决策值R0,具体采用下式:

其中,R0为初始化融合决策值,r0i为传感节点i在初始化阶段的检测汇报值,n为场景中传感节点总数;

步骤S2:初始化每个传感加权值ω0i

采用下式计算每个传感节点的加权值ω0i

ω0i=ωiP+Δω0i

其中,ωiP为比例加权因子,它在初始化后几乎不变,是整个权值的重要参与因素;Δω0i为初始化时的积分加权因子,也即时刻0时的积分加权因子,其在系统运行的过程中被动态调节,从而提高系统的自适应特性;所述初始化积分加权因子Δω0i的值为0;

步骤S3:进入实时检测:通过Kalman滤波器预测:在获得了t-1时刻的融合值Rt-1后,系统通过Kalman滤波器预测t时刻的数据融合值Et,从而为后续的及时时间控制做出准备;

步骤S4:计算数据融合结果:在t时刻,每收到一个传感节点i的汇报rti时都按下式计算粗略融合结果R’t

其中,k为当前获得的报告的传感节点的总数,k<n,n为场景中所有传感节点的个数,ωti为t时刻传感节点i的加权值,rti为t时刻传感节点i的报告数据;

步骤S5:设置一个阈值λ,当粗略结果R’t与Kalman滤波器预测的结果Et之间的差小于阈值λ时,即:

||Et-Rt′||<λ;

将粗略结果R’t作为t时刻的数据融合最终结果值Rt,并结束t时刻的数据融合计算,停止接收其他传感节点的后续报告;

S6:根据新获得的数据融合结果Rt,按下式修正加权值:

ωti=ωiP+Δωti

其中,ωiP为比例加权因子,它在初始化后几乎不变,是整个权值的重要参与因素;Δωti为t时刻的积分加权因子,其在系统运行的过程中被动态调节,从而提高系统的自适应特性;令t=t+1,并返回步骤S3,进入下一时刻的计算。

进一步地,步骤S2中,所述比例加权因子ωiP的计算在系统初始化确定了R0后进行,依据各节点采集值与R0之间的差确定,计算式如下:

di=||r0i-R0||;

di-norm=δ·(1-di/dmax);

其中,di表示传感节点i的汇报值与初始化融合值R0之间的差,di-norm为将di进行标准化操作得到的值,dmax为测试场景中最大的di值,δ为用户指定的数值调整系数,μ、σ为正态分布函数的参数,由用户指定。

进一步地,步骤S5中,t时刻的积分加权因子Δωti依赖于t时刻传感节点i的汇报值rti与融合值Rt之间的差值:

dti=||rti-Rt||;

其中,rti为时刻t传感节点i的汇报值,Rt为时刻t计算出的融合值,计算出的dti为两者之间的差值;将所有的dti从小到大进行排序,并设定调整参数ε,当与传感节点i对应的dti位于队列的前ε位时,对应的Δωti可获得增量γ的奖励,即:

Δωti=Δω(t-1)i+γ;

当与传感节点i对应的dti位于队列的后ε位时,对应的Δωti可获得减量γ的惩罚,即:

Δωti=Δω(t-1)i-γ。

进一步地,所述传感节点由任意一种微控制器作为中央处理器构成,包括模拟或数字转换器及相应的传感器器件,并通过有线或无线的方式组成传感器网络。

进一步地,有线组网方式采用:RS-485总线、CAN总线、工业以太网或常规以太网方式;无线组网方式采用:ZigBee蜂窝式网络协议、2.4G RF射频网络方式、无线以太网WiFi方式或移动通信3G/4G网络方式。

与现有技术相比,本发明有以下有益效果:本发明数据融合方法采用加权投票机制,给被怀疑准确性较低的传感节点赋予较低的权值,使其在最终结果中的参与度下降,以达到提高最终结果精确度的目的。但这种权值也不是一成不变的,权值通过比例和积分两种因子调节,比例因子在初始化时设定并在此后一段较长的时间内不改变,积分因子起调节作用,通过评估每次决策中传感节点的表现来动态调整每个节点的权值。本发明还通过预测机制来提高数据融合的及时性,传统方法在融合时需要收集完全部传感节点的上报数据后才能得出结果;本发明采用历史数据通过Kalman滤波器对下一时刻的数据进行预测,汇聚节点每收到一个传感数据就计算一个,当计算的结果与预测结果的差值小于预设阈值时,就可以不必再等待其余传感节点的后续报告而直接得出下一时刻最终融合结果,从而以牺牲少量精确度的代价换取更高的及时性,使本发明所提出的融合算法可被应用于实时性要求高的应用中。

附图说明

图1为本发明实施例的方法流程示意图。

图2为本发明实施例中室内传感器网络节点布置示意图。

图3为本发明实施例中一种传感器节点结构图。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

本实施例提供了一种基于预测的及时加权传感器网络数据融合方法。

如图2所示的传感器网络布置用于测量室内的温度,智能家居控制系统依此通过暖气片和空调来调节室内的温度以到设定值。从图2中可以看出,靠近暖气片的传感节点受到其热辐射的影响,其所测温度偏高,而这一温度显然是偏离屋内平均温度较多的,这一现象我们可以将其称作执行机构的干扰作用;而靠近窗口的传感节点,由于空气的流通作用,其所测温度偏低,这一现象我们可以将其称作环境的干扰作用。这些现象在人们日常生活及工农业生产中极为常见,例如距离空调近的位置空气较冷,距离抽湿机较近的位置空气较干燥。这些测量值的准确程度都较低,如果将其平等地纳入考虑范围,即将所有传感节点采样的平均值直接作为最终结果,则获得的最终结果的准确度将较低,因此需要使用专门的数据融合算法来得到最终的结果。

本实施例数据融合方法采用加权投票机制,给被怀疑准确性较低的传感节点赋予较低的权值,使其在最终结果中的参与度下降,以达到提高最终结果精确度的目的。但这种权值也不是一成不变的,权值通过比例和积分两种因子调节,比例因子在初始化时设定并在此后一段较长的时间内不改变,积分因子起调节作用,通过评估每次决策中传感节点的表现来动态调整每个节点的权值。本实施例还通过预测机制来提高数据融合的及时性,传统方法在融合时需要收集完全部传感节点的上报数据后才能得出结果;本实施例采用历史数据通过Kalman滤波器对下一时刻的数据进行预测,汇聚节点每收到一个传感数据就计算一个,当计算的结果与预测结果的差值小于预设阈值时,就可以不必再等待其余传感节点的后续报告而直接得出下一时刻最终融合结果,从而以牺牲少量精确度的代价换取更高的及时性,使本实施例所提出的融合算法可被应用于实时性要求高的应用中。

因此本实施例一种基于预测的及时加权传感器网络数据融合方法的计算流程有如下几个步骤(如图1所示):

1.初始化融合决策值R0

初始化时由于没有任何历史数据可供利用,且初始化的结果需要为第二步的预测提供依据,本实施例采用全部节点的平均值作为初始融合决策值R0。计算式如下式(1)所示:

其中R0为初始化融合决策值,r0i为传感节点i在初始化阶段的检测汇报值,n为场景中传感节点总数。在实际使用中,通常要反复测试求平均值,例如连续进行10次试验,求得对应的R0,并取这10次实验所得R0的平均值作为初始化值R0。由于初始化过程是在系统正式运行前完成的,所以多次实验并不会影响到系统运行时的实时性。

2.计算每个传感节点的初始加权值ω0i

本实施例每个传感节点的加权值由比例加权因子及积分加权因子两部分构成,如下式所示:

ω0i=ωiP+Δω0i

(2)

其中ωiP为比例加权因子,它在初始化后几乎不变,是整个权值的重要参与因素;Δω0i为初始化时的积分加权因子,也即时刻0时的积分加权因子,其在系统运行的过程中被动态调节,从而提高系统的自适应特性;所述初始化积分加权因子Δω0i的值为0。

本实施例中比例加权因子ωiP的计算在系统初始化确定了R0后进行,依据各节点采集值与R0之间的差确定,计算式如下:

di=||r0i-R0||

(3)

di-norm=δ·(1-di/dmax)

(4)

其中式(3)计算了传感节点i的汇报值与初始化融合值R0之间的差,通常r0i也需要多次采样取平均,而这多次采样的值直接利用计算R0时所采用的r0i值即可;接着式(4)用于将di进行标准化操作得到di-norm,式中dmax为测试场景中最大的di值,δ为用户指定的数值调整系数;随后,通过式(5)中正态分布函数的映射,得到比例加权因子ωiP,μ、σ为正态分布函数的参数,由用户指定。

而积分加权因子Δωi在系统运行后每个时刻t计算得出融合值Rt后都会被刷新,从而使得加权总值ωi在系统运行时具有自适应性。Δωti的计算依赖于t时刻传感节点i的汇报值rti与融合值Rt之间的差值:

dti=||rti-Rt||

(6)

其中rti为时刻t传感节点i的汇报值,Rt为时刻t计算出的融合值,计算出的dti为两者之间的差值。将所有的dti从小到大进行排序,并设定调整参数ε,当与传感节点i对应的dti位于队列的前ε位时,对应的Δωti可获得增量γ的奖励,即:

Δωti=Δω(t-1)i

(7)

当与传感节点i对应的dti位于队列的后ε位时,对应的Δωti可获得减量γ的惩罚,即:

Δωti=Δω(t-1)i

(8)

其中参数ε和γ都由工程师依据现场实际情况指定。系统在时刻t获得融合值Rt后刷新所有传感器节点的加权值ωi,这些新的ωi值将被用于下一时刻t+1时的数据融合。在式(2)中通常比例加权因子的值要大于积分加权因子,采用这一机制可使传感器节点的加权值在拥有一定事实基础的情况下随着环境情况变化不断微调,即便在初始化时候有误差,也能在运行的过程中通过比例加权因子的不断作用逐渐弥补。

3.通过Kalman滤波器预测:

在获得了t-1时刻的融合值Rt-1后,系统可以通过Kalman滤波器预测t时刻的数据融合值Et,从而为后续的及时时间控制做出准备。本实施例所采用的Kalman滤波器预测算法为最常使用的公知算法,主要通过预测和修正两个步骤进行向前预测,标准运行过程如下所述:

算法利用系统的过程模型,来预测下一状态的系统。假设现在的系统状态是k,根据系统的模型,可以基于系统的上一状态而预测出现在状态:

X(k|k-1)=A·X(k-1|k-1)+B·U(k)

(9)

式(9)中,X(k|k-1)是利用上一状态预测的结果,X(k-1|k-1)是上一状态最优的结果,U(k)为现在状态的控制量,如果没有控制量,它可以为0。使用式(9)后,本实施例的系统结果已经更新了,可是,对应于X(k|k-1)的协方差矩阵还没更新。本实施例用P表示协方差矩阵:

P(k|k-1)=A·P(k-1|k-1) ·A’+Q

(10)

式(10)中,P(k|k-1)是X(k|k-1)对应的协方差矩阵,P(k-1|k-1)是X(k-1|k-1)对应的协方差矩阵,A’表示A的转置矩阵,Q是系统过程的协方差矩阵。式子(9)、(10)就是卡尔曼滤波器5个公式当中的前两个,也就是对系统的预测。

获得现在状态的预测结果后,可再收集现在状态的测量值。结合预测值和测量值,本实施例可以得到现在状态(k)的最优化估算值X(k|k):

X(k|k)=X(k|k-1)+Kg(k)·(Z(k)-H·X(k|k-1))

(11)

其中Kg为卡尔曼增益(KalmanGain):

Kg(k)=P(k|k-1)·H’/(H·P(k|k-1)·H’+R)

(12)

目前为止,算法已经得到了k状态下最优的估算值X(k|k)。但是为了要令卡尔曼滤波器不断的运行下去直到系统过程结束,本实施例还要更新k状态下X(k|k)的协方差矩阵:

P(k|k)=(I-Kg(k)·H)·P(k|k-1)

(13)

其中I为1的矩阵,对于单模型单测量,I=1。当系统进入k+1状态时,P(k|k)就是式子(10)的P(k-1|k-1)。这样,算法就可以自回归的运算下去。以上就是卡尔曼滤波器算法的基本原理描述,式子(9)-(13)就是它的5个基本公式。根据这5个公式,可以很容易地实现计算机程序。

由于初始融合值R0已经在初始化时候获得,因此R1,R2,R3,…等后续值都可以通过上述卡尔曼滤波方法预测获得。本实施例在已知t-1时刻的融合结果Rt-1后,在融合获得t时刻的结果之前,先采用卡尔曼方法获得t时刻的预测值Et,接着可以使用下文所述时间及时控制策略来缩短获得最终结果所用的时间。

4.计算数据融合结果

本实施例在时刻t最终数据融合结果的计算采用节点加权投票的方式完成,而每个传感节点i所对应的权值ωti已按上述说明在t-1时刻取得,于是t时刻的融合结果可按下式计算:

其中k为当前获得的报告的传感节点的总数,因此k<n,n为场景中所有传感节点的个数。

5.时间及时控制策略

由于本实施例属于传感检测领域,该领域许多应用对采集数据的实时性有较严苛的要求,不但要求数据有一定的精确性,还要求获得数据刷新的时间要尽可能的短,为此本实施例提出一种基于预测的时间及时控制策略。通过上文第3点可以知道,使用Kalman滤波预测器可以利用历史数据Rt获得t时刻的结果预测值Et,但这只是预测并不能作为真实的结果。真实的结果需要通过式(14)进行数据加权融合获得。在传统情况下,式(14)获得最终的Rt结果需要等待场景中所有的传感节点汇报完其在t时刻采集的数值后才能得到,即k=n;而每个传感器节点i上报数据的时刻是不同的,本实施例要求系统在每收到一个传感节点i的汇报ri时都计算式(14),并获得粗略结果R’t,该结果只利用了部分传感器节点的值获得,因此精确度方面要稍逊于通过所有节点计算得到的结果Rt,但为了节约时间,本实施例设置了一个阈值λ,当粗略结果R’t与Kalman滤波器预测的结果Et直接的差小于阈值λ时,即:

Et-Rt′||<λ

(15)

可以认为粗略结果R’t与可能的真实决策值Rt之间的差异不大,可以近似替代使用。于是可将粗略结果R’t作为t时刻的数据融合最终结果值Rt,并结束t时刻的数据融合计算,进入下一时刻t+1时刻的计算。本实施例上述时间及时控制策略,通过Kalman滤波器预测参考并指定阈值λ的方式,在可控范围内部分降低了结果的精确度,但显著缩短了等待时间,提高了系统获得数据的及时性。精确度和及时性之间的平衡关系由阈值λ调节,该参数由工程师参照应用的具体情况设定。

进一步的,在本实施例中,传感器网络节点可由任意一种微控制器(Micro Control Unit,MCU)作为中央处理器构成,包括模拟/数字转换器及相应的传感器等器件,并通过有线或无线的方式组成传感器网络。有线组网方式可以采用:RS-485总线、CAN总线、工业以太网或常规以太网方式。无线组网方式可以采用:ZigBee蜂窝式网络协议、2.4G RF射频网络方式、无线以太网WiFi方式或移动通信3G/4G网络方式。

图3即为本实施例可用的一种传感器节点。该节点以美国德州仪器公司(TI)的无线传感器网络微控制器CC2530作为核心,并布置了温度传感器(Temperature sensor)和湿度传感器(Humidity sensor),并可通过CC2530内置的ZigBee无线协议模块组成无线传感器网络,信号发射通过50欧姆射频天线(Antenna)实现。

以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1