1、一种优化的贝叶斯估计多传感器数据融合方法 张品 董为浩 高大冬 杭州电子科技大学通信工程学院 摘 要: 由于来自多个传感器的测量数据总是有一定程度的不确定性和不一致性,采用多传感器数据融合算法将多个节点的测量数据进行数据融合,利用数据的冗余度来减小这种不确定性,得到高可靠性的数据信息。提出了一种优化的贝叶斯估计多传感器数据融合方法,将贝叶斯估计和卡尔曼滤波器结合起来,应用于无线传感网络数据融合中。根据滤波器应用到传感数据、融合数据或者两者的方式,提出3 种不同的技术,即:前向滤波法、后向滤波法和前后向滤波法。通过一个实例研究估计移动机器人的位置,验证算法的有效性。实验表明,在集中式和分布式两个
2、方面数据融合体系结构,结合卡尔曼滤波器的贝叶斯融合算法能够有效地解决数据的不确定性和不一致性。关键词: 无线传感器网络; 数据融合; 贝叶斯估计; 卡尔曼滤波器; 作者简介:张品(1971-),男,杭州电子科技大学通信工程学院副教授,1992 年 7月毕业于上海交通大学电子工程系,获工学学士学位,2000 年 7 月于西南交通大学应用数学系获理学硕士学位,2004 年 12 月电子科技大学通信工程学院获博士学位,主要研究方向为计算机网络、无线网络,;作者简介:高大冬(1989-),男,杭州电子科技大学通信工程学院,硕士研究生,主要研究方向为无线传感网络。作者简介:董为浩(1990-),男,杭州
3、电子科大学通信工程学院,硕士研究生,主要研究方向无线传感网网络,;收稿日期:2014-01-12基金:国家自然科学基金项目(61271214)An Optimal Method of Data Fusion for Multi-Sensors Based on Bayesian EstimationZHANG Pin DONG Weihao GAO Dadong Department of Communication Engineering,Hangzhou Dianzi University; Abstract: Data provided by sensors is always affe
4、cted by some level of uncertainty in the measurements.Combining data from several sources using multi-sensor data fusion algorithms exploits the data redundancy to reduce this uncertainty and to achieve improved accuracy.An optimal method of data fusion for multi-sensor based on Bayesian Estimation
5、is presented,which relies on combining a Bayesian fusion algorithm with Kalman filter in WSNs.Three different approaches namely: Pre-Filtering,Post-Filtering and Pre-Post-Filtering are described based on how filtering is applied to sensor data,to fused data or both.A case study of estimating the pos
6、ition of a mobile robot to verify if the proposed algorithm is valid is presented. Experimental study shows that combining Bayesian fusion algorithm with Kalman filter can help in handling the problem of uncertainty and inconsistency of the data in both centralized and decentralized data fusion arch
7、itectures.Keyword: wireless sensor network; data fusion; Bayesian estimation; Kalman filter; Received: 2014-01-12多传感器数据融合是 20 世纪 70 年代以来形成的一门新兴边缘学科,在军事、国防、航天等高科技领域有广泛的应用,目前已成为备受人们关注的热门领域1。多传感器系统首要的目标是将来自多个传感器的测量数据及相关数据库的有关信息进行联合、相关、组合以获得更全面、具有更高可靠的数据信息。然而会遇到许多问题,比如数据关联,传感器不确定性和数据管理等,而最根本的问题在于传感器测量系统
8、中固有的不确定性。这种不确定性的出现不仅来自测量的不精确和噪声,还来自各个传感器的不一致性。过去的策略2常常是模拟这种不确定性,融合不同类型的数据来得到一致的决策。早在二十世纪八十年代,Bar-Shalom3研究了两个传感子系统之间的相关性,并给出了互协方差阵的计算公式。九十年代,Carlson4提出了著名的联邦 Kalman 滤波器算法,采用方差上界消除相关和统一的信息分配原则,避免了互协方差阵的计算,但具有一定的保守性。在 1994 年,Kim5提出了极大似然融合估计算法,但是要求随机变量服从正态分布,以便构造似然函数。后来,邓自立、孙书立6-7在线性最小方差意义下提出了矩阵加权、对角加权
9、和标量加权 3 种加权融合算法。近年,R.Olfat-Saber 提出了一种基于一致性策略的分布式算法KalmanConsensus 滤波器,由于其简单的分布式结构以及算法可扩展性、稳健性而引起广泛关注8-9。近年来出现的大部分技术只是针对具体的故障模型,并不能广泛应用,缺乏完备性。基于熵的分析有助于确定来自某个特定的传感器的数据融合是否能够提高融合变量的信息。本文讨论了在传感网络数据融合中怎样处理各传感节点数据的不确定性和不一致性的问题,提出了一种优化的贝叶斯估计多传感器数据融合方法基于卡尔曼滤波器的贝叶斯融合算法10。根据滤波器应用到传感数据、融合数据或者两者的方式,提出 3 种不同的技术
10、,即:前向滤波法、后向滤波法和前后向滤波法。1 基于贝叶斯数据融合算法贝叶斯推理是基于贝叶斯定理的条件或后验概率的统计数据融合算法,能够通过已知向量 Z,估计未知的 n 维状态向量 X。1.1 简化的贝叶斯算法假设一个状态空间,贝叶斯估计器提供了一种计算后验(条件)概率分布的方法,假设 k 时刻的概率为 xk,已知 k 组测量 Zk=z1,zk和先验分布如下:其中:(1)p(z k|xk)为似然函数基于给定的传感器测量模型;(2)p(x k|Z)为先验分布函数给定的转换系统的模型;(3)分母 p(Z|Z)只是一种规格化术语,保证概率密度函数归一化。概率密度函数 p(Z|X)描述了 Z 关于 X
11、 的概率信息,它是一个基于观测的传感器依赖目标函数。如果状态变量 X 的可用信息独立于以前的观测值,则可以利用似然函数来改进以提供更准确的结果。若将变量 X 的先验信息封装成先验概率,并不是基于观测的数据,则这具有主观性。由于噪声引起的不确定性,由传感器提供的信息通常建模为一个近似于真实值的平均值,根据测量和传感器的操作参数的方差表示噪声的不确定性。概率传感器模型可使测定所获得数据的统计特征更容易。当已知状态的测定量 X 时,这个概率模型能够得到传感器 Z 的概率分布。这个分布是针对具体的某个传感器节点,而且能够通过实验来确定。高斯分布是一种最常用表示传感器不确定性的分布,公式如下:其中 j
12、代表第 j 个传感器节点。因此,如果有两个传感器节点建模都使用式(2),那么根据贝叶斯理论,这两个传感器的融合均值可由最大后验概率估计(MAP)可得到:其中 1和 2分布是传感器 1 和 2 的标准偏差。根据文献11得到了融合方差:1.2 改进的贝叶斯算法由于传感器的故障、本身的局限、复杂环境等因素,传感器经常会提供虚假的数据。然而,前面描述的简化的贝叶斯方法(SB)不能够有效地处理虚假数据。该方法由式(3)产生相同的加权平均值,并没有考虑来自各个传感器的数据是否真实。后验概率分布总是比任何单个分布有一个较小的方差。简化的贝叶斯方法没有一个机制来判断来自某些传感器的数据是否是虚假的,因此可能会
13、导致错误的估计。在文献11中提出了改进的贝叶斯方法(MB),考虑了测量的不一致性。在式(5)中可以看到,这一改进导致个体分布的方差与因子 f 成正比。因子 f 由下式(6)给出:参数 m 是传感器值最大的预期差值。传感器测量的差值越大,导致因子 f 越大,方差也就越大。状态量 x 的最大后验概率估计(MAP)保持不变,但是融合的后验概率分布的方差改变了。因此,根据两个传感器测量值的平方差,和单个的高斯分布相比,后验概率分布的方差可能会增加或减少。正如在文献11已给出的结论,改进的贝叶斯方法能够非常有效地识别传感器数据的不一致,从而可以反映测量值得真实状态。在图 1 和图 2 中可以看到简化贝叶
14、斯方法(SB)和改进的贝叶斯方法(MB)之间的差别。在这个例子中,传感器 1 有 80%的概率是服从均值为 20,方差为 9 的正态分布,也就是有 20%的概率会提供虚假的数据。同样,传感器 2 有 90%的概率是服从均值为 20,方差为 4 的正态分布,和有 10%的概率会提供虚假的数据。在第 1种情况下,两个传感器是一致的,如图 1 所示。从图 1 可以看出,根据改进的贝叶斯方法得到的融合的后验概率分布比单个分布的乘积有一个较小的方差,表明融合算法能够导致后验概率的不确定性降低和信息熵减小。在第 2 种情况下,两个传感器是不一致的,如图 2 所示。根据改进的贝叶斯方法得到的融合的后验概率分
15、布比单个分布都有一个更大的方差,表明融合算法能够导致后验概率的不确定性增加和熵增加。但是,据简化的贝叶斯方法得到的融合的后验概率分布的方差和图 1 中的相比没有变化。图 1 两个传感器一致时的数据融合 下载原图图 2 两个传感器不一致时的数据融合 下载原图2 提出的算法在本文中,提出的算法是将前一节中描述的改进的贝叶斯融合算法和卡尔曼滤波器结合起来,应用于无线传感网络。根据如何将滤波器应用到传感数据,融合数据或者两者,提出了 3 种不同的技术,即:前向滤波法、后向滤波法和前后向滤波法,并将会在接下来的部分进行描述。2.1 改进的前向滤波贝叶斯融合算法提出的第 1 个技术是在融合节点之前增加卡尔
16、曼滤波器。如算法 1 所示,将卡尔曼滤波器添加到每一个传感器之后,滤除来自传感器测量带来的噪声,然后将各个滤波后的测量值采用改进的贝叶斯融合算法融合到一起得到一个结果值。这个值就表示某一时刻的状态值。算法 1 前向滤波算法(F-MB)2.2 改进的后向滤波贝叶斯融合法提出的第 2 个技术是在融合节点之后增加卡尔曼滤波器。首先根据改进的贝叶斯融合算法将各个测量值融合在一起得到融合的状态值 xint,然后为了滤除噪声,将卡尔曼滤波器应用到融合的状态值 xint,如算法 2 所示。卡尔曼滤波器的输出值表示某一时刻的状态值 xf,以及方差 Pf。算法 2 后向滤波算法(MB-F)2.3 改进的前后向滤
17、波贝叶斯融合法在这种技术中,在融合节点的前后都应用卡尔曼滤波器。该算法是算法 1 和算法2 的集合,如算法 3 所示。算法 3 前后向滤波算法(F-MB-F)3 实例分析:移动机器人局部定位在这一部分,将研究移动机器人定位估计问题,以此来证明所提出的算法的有效性。定位技术大致分为相对位置测量和绝对位置测量。对于前者,可以通过之前已确定的位置和后来移动的距离来估计机器人的位置。对于后者,可以通过 3 个或者更多活跃的指向标的入射方向来计算机器人的绝对位置,也可以用人工或天然的标志,还可以用模型匹配,将基于传感器的地图特征和世界地图进行匹配来估计出机器人的绝对位置12-13。3.1 实验设置测距法
18、是一种相对定位法,利用编码器来测量机器人的轮子转数和转向。右轮安装一个霍尔传感器,左轮安装一个光学编码器。由微控制器 MCU 采集并处理数据做出统一指令,确保两个传感器得到相同的指令。根据数据的采样时间和机器人做匀速运动,能够计算出每一个轮子的移动距离。由于两个传感器采集的数据的不确定性和不一致性,需要微控制器 MCU 把这些数据发送给 MATLAB,执行提出的算法,以此来估计出机器人的位置。传感器内部的主要噪声源是 1/f 噪声和热噪声(也称白噪声),为了模拟每个传感器的内部噪声源,假定在加性高斯白噪声条件下,霍尔传感器和光学编码器的噪声标准差分别是 2.260 cm 和 2.378 cm。
19、另外,假定机器人以 7.8 cm/s 的速度做匀速直线运动,近似干扰误差为 0.493 cm/s。采样周期为 0.5 s,运动时间为20 s。3.2 评价标准算法的性能由以下 4 个指标来评估:(1)CPU 运行时间(TIME):它表示估计出机器人全部运动位置时算法所耗费的全部处理时间,当然运行时间越小越好。(2)残差平方和(RSS):它表示在每个采样点上机器人理论位置值和估计位置值之间差值平方的总和。残差平方和(RSS)越小,算法越精确。公式如下:(3)方差(P):它表示机器人估计值的方差。方差反映了每一种算法中滤波器的性能。(4)相关系数:它表示每一种算法下估计值和理论值之间的关系。相关系
20、数的范围为-11。(5)判别函数(CF):计算判别函数的一种决策方法是每一种技术的效用估计。根据每个指标的重要性,为 CPU 运行时间(TIME)、残差平方和(RSS)、方差(P)各分配一个权值 (01),而且 3 个权值之和为 1。每一种技术下的实验计算值用 ci来表示,那么每一种技术下的判别函数(CF)由以下公式得到:其中 1, 2和 3分别表示 TIME,RSS 和 P 的权值。这些权值可以根据不同的情况进行调节。在这里,假定 1=0.3, 2=0.3, 3=0.4。c 1,c2和 c3分别表示在每次实验中得到的 TIME,RSS 和 P 的计算值。c 1max,c2max和 c3max
21、分别表示在每次实验中得到的 TIME,RSS 和 P 的最大计算值。为了在最短时间内最小方差下算法能够产生准确的估计值,我们的目标就是使判别函数值最小化。3.3 结果与讨论由于各传感器的噪声源,可能会产生误差,测量性误差值如图 3 所示。另外,图 3也表示出了采用提出的算法进行估计而产生的误差,其估计性误差值表示了在某一采样时刻理论值和每一种算法的估计值的差值。可以看出,直接测量带来误差明显高于算法估计而导致误差,第 1 种解释是提出的算法能够比直接依赖测量机制做出更好的估计。图 3 测量和估计误差值 下载原图表 1 概括了前面描述的 3 种指标执行 500 次的平均结果,已经分别加粗了各项的
22、最小值。在表 1 中可以看到,MB 与其他算法相比虽然有最小的运行时间,但是它有最大的 RSS。图 4 表示了每一种算法下估计值的方差。从图 4 中可以看出,MB-F 和 F-MB-F 的估计值方差明显低于 MB 和 F-MB。这就能够证明在 MB-F 和 F-MB-F 中卡尔曼滤波器的有效性。更重要的是,提出的算法估计值几乎正比于理论值,相关系数为 0.99。图 4 估计值的方差 下载原图表 1 两个节点的融合算法决策表 下载原表 用 3 个传感器进行重复同样的实验14-15,根据集中式和分布式架构融合来自各个传感器的数据。在集中式架构下,所有传感器的数据同时进行融合,而在分布式架构下,数据
23、按照一定的顺序进行融合。就单个元器件失效而言,分布式融合有更强的健壮性,而且在通信资源方面与常规的方案相比,拥有更高的效率。正如表 2 所示,就运行时间、RSS、P 而言,分布式融合普遍胜过集中式。分布式系统下采用 MB 算法取得的运行时间最小,而集中式系统下采用 F-MB-F 算法取得的运行时间最大,这和使用两个传感器进行融合的情况一样,直接融合比 F-MB-F更快。就 RSS 而言,在集中式和分布式系统下 F-MB-F 算法都拥有最小的误差,最高的精度,然而 MB 算法却有最大的误差。这也是合理的,因为卡尔曼滤波器的存在,产生有更小噪声的估计值,更接近理论值。此外,MB-F 和 F-MB-
24、F 算法在估计值的方差方面显然比 MB 和 F-MB 小。这就证明了在前向和后向滤波中,滤波器发挥了有效作用。总的来说,F-MB-F 算法拥有最小的 CF,紧接着就是 MB-F 算法。可见,这两种算法都能够提供相对可靠的结果。不过,在实时性要求高的场合建议采用 MB-F 算法,而在精确度要求高的场合建议采用 F-MB-F 算法。表 2 3 个节点的融合算法决策表 下载原表 4 结论本文中讨论了多传感器数据融合的 3 种技术。为了解决传感数据的不确定性和不一致性问题,这些技术把改进的贝叶斯融合算法和卡尔曼滤波器结合了在一起。提出的技术已经应用在了基于测距的移动机器人位置估计,证明了卡尔曼滤波器能够改善残差平方和(RSS)和估计值的方差(P)。文中技术如粒子滤波器来取代卡尔曼滤波器,也需要去考虑越来越多的维数问题。