第14卷第2期 智能系统学报 Vol.14 No.2 2019年3月 CAAI Transactions on Intelligent Systems Mar.2019 D0:10.11992/tis.201712003 网络出版地址:http:/kns.cnki.net/kcms/detail/23.1538.TP.20180515.1116.004html 基于GABP-KF的WSN数据漂移盲校准算法 武加文,李光辉23 (1.江南大学物联网工程学院,江苏无锡214122;2.物联网技术应用教育部工程技术研究中心,江苏无锡 214122:3.江苏省模式识别与计算智能工程实脸室,江苏无锡214122) 摘要:针对无线传感器网络节点容易产生数据漂移的问题,提出了一种新型的跟踪和校准节点数据流漂移的 算法。首先使用基于遗传算法优化的BP神经网络对目标节点和其邻居节点间的时空相关性进行建模,以获得 目标节点的预测值,再使用卡尔曼滤波器跟踪和校准该节点的数据漂移。针对不同的真实数据集进行仿真实 验显示,该方法相较于其他对比方法模型预测精度更高,漂移校准性能更好。实验结果表明,该算法可以精确 地校准传感器节点的数据漂移,提高节点数据的可靠性。 关键词:无线传感器网络:数据漂移:盲校准:BP神经网络:遗传算法:卡尔曼滤波器:去噪:模型构建 中图分类号:TP274.2文献标志码:A文章编号:1673-4785(2019)02-0254-09 中文引用格式:武加文,李光辉.基于GABP-KF的WSN数据漂移盲校准算法J智能系统学报,2019,14(2):254-262. 英文引用格式:WU Jiawen,LI Guanghui..GABP-KF-based blind calibration algorithm of data drift in wireless sensor networks, CAAI transactions on intelligent systems,2019,14(2):254-262. GABP-KF-based blind calibration algorithm of data drift in wireless sensor networks WU Jiawen,LI Guanghui'23 (1.School of Internet of Things Engineering,Jiangnan University,Wuxi 214122,China;2.Research Center of IoT Technology Ap- plication Engineering (MOE),Wuxi 214122,China;3.Jiangsu Provincial Engineering Laboratory of Pattern Recognition and Com- putational Intelligence,Wuxi 214122,China) Abstract:Data drifts easily occur in wireless sensor network.To solve this problem,we propose a novel algorithm for tracking and calibrating the drifts of sensor data stream.First,backpropagation(BP)neural network optimized by genet- ic algorithm is applied to model the spatio-temporal correlations between the target node and its neighbor nodes to pre- dict the value of the node.and then.the data drift of the node is tracked and calibrated by a Kalman filter.The simula- tion results using different datasets demonstrate that this method has superior prediction accuracy and calibration per- formance,compared with other methods.The experimental results show that this method can accurately calibrate the sensor drift and improve the reliability of node data Keywords:wireless sensor network;data drift;blind correction;BP neural network;genetic algorithm;Kalman filter, denoising;model building 近年来,随着无线通信,计算机网络和传感器 networks,.WSN)已成为重要的研究对象并被广泛 技术的巨大进步,无线传感器网络(wireless sensor 应用于医疗、军事、环境监测等众多领域川。在环 收稿日期:2017-12-02.网络出版日期:2018-05-17. 境监测领域,大规模的无线传感器网络通常被部 基金项目:国家自然科学基金项目(61472368)、江苏省重点研 署于无人监管、气候复杂的野外环境中。若长期 发计划项目(BE2016627)、中央高校基本科研业务费 项目(JUSRP51635B)、无锡市国际科技研发合作项 使用,节点读数容易产生数据漂移。这对于终端 目(CZE02H1706)、江苏省普通高校专业学位研究生 实践创新计划项目(SJLX160499) 用户来说是一个严重的问题,因为在无线传感器 通信作者:李光辉.E-mail:ghli@jiangnan.edu.cn. 网络的大规模应用场景中必须使用精确数据,才
DOI: 10.11992/tis.201712003 网络出版地址: http://kns.cnki.net/kcms/detail/23.1538.TP.20180515.1116.004.html 基于 GABP-KF 的 WSN 数据漂移盲校准算法 武加文1,2,李光辉1,2,3 (1. 江南大学 物联网工程学院,江苏 无锡 214122; 2. 物联网技术应用教育部工程技术研究中心,江苏 无锡 214122; 3. 江苏省模式识别与计算智能工程实验室,江苏 无锡 214122) 摘 要:针对无线传感器网络节点容易产生数据漂移的问题,提出了一种新型的跟踪和校准节点数据流漂移的 算法。首先使用基于遗传算法优化的 BP 神经网络对目标节点和其邻居节点间的时空相关性进行建模,以获得 目标节点的预测值,再使用卡尔曼滤波器跟踪和校准该节点的数据漂移。针对不同的真实数据集进行仿真实 验显示,该方法相较于其他对比方法模型预测精度更高,漂移校准性能更好。实验结果表明,该算法可以精确 地校准传感器节点的数据漂移,提高节点数据的可靠性。 关键词:无线传感器网络;数据漂移;盲校准;BP 神经网络;遗传算法;卡尔曼滤波器;去噪;模型构建 中图分类号:TP274.2 文献标志码:A 文章编号:1673−4785(2019)02−0254−09 中文引用格式:武加文, 李光辉. 基于 GABP-KF 的 WSN 数据漂移盲校准算法[J]. 智能系统学报, 2019, 14(2): 254–262. 英文引用格式:WU Jiawen, LI Guanghui. GABP-KF-based blind calibration algorithm of data drift in wireless sensor networks[J]. CAAI transactions on intelligent systems, 2019, 14(2): 254–262. GABP-KF-based blind calibration algorithm of data drift in wireless sensor networks WU Jiawen1,2 ,LI Guanghui1,2,3 (1. School of Internet of Things Engineering, Jiangnan University, Wuxi 214122, China; 2. Research Center of IoT Technology Application Engineering (MOE), Wuxi 214122, China; 3. Jiangsu Provincial Engineering Laboratory of Pattern Recognition and Computational Intelligence, Wuxi 214122, China) Abstract: Data drifts easily occur in wireless sensor network. To solve this problem, we propose a novel algorithm for tracking and calibrating the drifts of sensor data stream. First, backpropagation (BP) neural network optimized by genetic algorithm is applied to model the spatio–temporal correlations between the target node and its neighbor nodes to predict the value of the node, and then, the data drift of the node is tracked and calibrated by a Kalman filter. The simulation results using different datasets demonstrate that this method has superior prediction accuracy and calibration performance, compared with other methods. The experimental results show that this method can accurately calibrate the sensor drift and improve the reliability of node data. Keywords: wireless sensor network; data drift; blind correction; BP neural network; genetic algorithm; Kalman filter; denoising; model building 近年来,随着无线通信,计算机网络和传感器 技术的巨大进步,无线传感器网络 (wireless sensor networks,WSN) 已成为重要的研究对象并被广泛 应用于医疗、军事、环境监测等众多领域[1]。在环 境监测领域,大规模的无线传感器网络通常被部 署于无人监管、气候复杂的野外环境中。若长期 使用,节点读数容易产生数据漂移。这对于终端 用户来说是一个严重的问题,因为在无线传感器 网络的大规模应用场景中必须使用精确数据,才 收稿日期:2017−12−02. 网络出版日期:2018−05−17. 基金项目:国家自然科学基金项目 (61472368)、江苏省重点研 发计划项目 (BE2016627)、中央高校基本科研业务费 项目 (JUSRP51635B)、无锡市国际科技研发合作项 目 (CZE02H1706)、江苏省普通高校专业学位研究生 实践创新计划项目 (SJLX16_0499). 通信作者:李光辉. E-mail:ghli@jiangnan.edu.cn. 第 14 卷第 2 期 智 能 系 统 学 报 Vol.14 No.2 2019 年 3 月 CAAI Transactions on Intelligent Systems Mar. 2019
第2期 武加文,等:基于GABP-KF的WSN数据漂移盲校准算法 ·255· 能制定科学决策。因此,对节点数据进行漂移校 的精度受累积误差的限制。 准至关重要。然而,在许多大规模无线传感器网 针对上述问题,本文提出了一种基于遗传算 络的应用中,数百到数千个节点被分散部署到气 法(genetic algorithm,GA)优化的BP神经网络(BP 候复杂的野外环境中,手动校准这些节点是非常 neural network optimized by GA,GABP)与卡尔曼 困难的。因此,需要自动跟踪和校准节点数据 滤波器相结合的无线传感器网络数据漂移盲校准 漂移的方法,现有的方法可以分为两类:盲校准 算法(GABP-KF)。该算法首先对节点读数进行二 和非盲校准。 次采集和降噪处理。然后使用基于遗传算法优化 非盲校准方法是基于传感器节点读数和已知 的神经网络对目标节点和其邻居节点间的时空相 的参考信息作为输入来调整参数)。一种简单的 关性进行数学建模,从而得到目标节点的预测 非盲校准方法是将已知的激励作用于传感器网络 值。最后将目标节点的预测值和测量值反馈入卡 中并测量其响应,将网络响应与参考信息(网络 尔曼滤波器中以跟踪并校准其数据漂移。仿真结 预期值)进行比较,然后相应地调整参数。参考 果表明,GABP-KF具有良好的漂移校准性能。 信息一般为出厂标准值或用户手动校准的结果。 例如,Ramanathan等采用额外的高精度节点读 1预备知识 数作为参考信息。另一种类型的方法是手动校准 1.1遗传算法 一组节点,然后未校准节点组基于该组来调整参 遗传算法是模拟自然界遗传机制的生物进化 数。非盲校准方法适用于特定空间(例如室 模型,是一种启发式随机搜索最优化方法。它将 内)小规模网络的场景下向,然而在大规模无线传 “物竞天择,适者生存”的进化原理和遗传变异理 感器网络中,使用上述方法需要在每个阶段进行 论引入编码串联群体中,即在每一次的进化过程 大量的工作,这是不切实际的且成本高昂。 中,按照所构造的适应度函数,通过选择操作、交 鉴于非盲校准方法存在的局限性,盲校准方 法得到了广泛的关注。许多盲校准方法是基于节 叉操作和变异操作来对个体进行筛选,把适应度 点被密集部署的假设,因此当网络中未产生数据 值好的个体传给下一代,反复循环,直到最终个 漂移时,节点间应具有相关的读数。然而,在许 体满足特定的条件表示进化结束。遗传算法具 多现有的大型网络中,由于环境因素和成本因 备良好的全局搜索能力,不受求导和函数连续性 素,可能无法实现节点的密集部署。Balzano等 的限定,能自动获取待优化的搜索空间,从而自 首先提出了一种无需密集部署的校准方法,假定 适应地控制搜索过程。 节点的测量位于测量空间的较低维信号子空间 1.2卡尔曼滤波器 中,然后通过信号子空间投影将校准过程转换为 卡尔曼滤波器是由R.E.Kalman提出的线性最 求解线性方程。来自清华大学的杨华中等9,1对 小方差递推估算的方法,是一种离散数据线性滤 这种方法进行了利用和扩充,取得了非常良好的 波问题的递归解决方案。它是利用当前时刻的 实用价值。 观测值和前一时刻的估计值来更新当前时刻的最 基于相邻节点间具有相关测量值的假设, 佳估计,其所需数据存储量较小,便于实时处理叼 Takruri等提出了一种分布式递归贝叶斯(dis- 2基于GABP-KF的WSN数据漂移 tributed recursive Bayesian,DRB)盲校准算法,其 使用邻居节点读数的平均值作为漂移节点的预测 校准方法 值。为了更好地拟合传感器节点间的时空相关 2.1定义测量环境 性,Takruri等又提出了一种基于支持向量回归 假设在某一区域内的传感器网络中,随机分 (support vector regression,SVR)来预测真实值的方 布多个节点。其中每个节点采集该区域内的环境 法。针对SVR可能存在的训练精度较低的情况, 参数(温度、湿度或其他类型参数)。随着时间的 Kumar等采用克里金插值作为预测方法,以避 推移,一些节点产生数据漂移,降低了数据质量, 免SVR的训练阶段。这些方法基于节点间的时 从而影响了传感器网络的可靠性。为了更好地模 空相关性以预测节点数据的漂移,并都使用了卡 拟实际场景,本文对传感器网络的测量环境做了 尔曼滤波器(Kalman filter,KF)以跟踪漂移。然 如下定义。 而,一旦预测值不精确,偏差较大的预测值也会 定义1传感器节点的数据漂移指的是节点 被用来进一步校准漂移值,从而导致最终校准值 测量值受其内部固有偏差或外界环境影响所产生
能制定科学决策。因此,对节点数据进行漂移校 准至关重要。然而,在许多大规模无线传感器网 络的应用中,数百到数千个节点被分散部署到气 候复杂的野外环境中,手动校准这些节点是非常 困难的[2]。因此,需要自动跟踪和校准节点数据 漂移的方法,现有的方法可以分为两类:盲校准 和非盲校准。 非盲校准方法是基于传感器节点读数和已知 的参考信息作为输入来调整参数[3]。一种简单的 非盲校准方法是将已知的激励作用于传感器网络 中并测量其响应,将网络响应与参考信息 (网络 预期值) 进行比较,然后相应地调整参数。参考 信息一般为出厂标准值或用户手动校准的结果。 例如,Ramanathan 等 [4]采用额外的高精度节点读 数作为参考信息。另一种类型的方法是手动校准 一组节点,然后未校准节点组基于该组来调整参 数 [ 5 ]。非盲校准方法适用于特定空间 (例如室 内) 小规模网络的场景下[6] ,然而在大规模无线传 感器网络中,使用上述方法需要在每个阶段进行 大量的工作,这是不切实际的且成本高昂。 鉴于非盲校准方法存在的局限性,盲校准方 法得到了广泛的关注。许多盲校准方法是基于节 点被密集部署的假设,因此当网络中未产生数据 漂移时,节点间应具有相关的读数[7]。然而,在许 多现有的大型网络中,由于环境因素和成本因 素,可能无法实现节点的密集部署。Balzano 等 [8] 首先提出了一种无需密集部署的校准方法,假定 节点的测量位于测量空间的较低维信号子空间 中,然后通过信号子空间投影将校准过程转换为 求解线性方程。来自清华大学的杨华中等[9, 10]对 这种方法进行了利用和扩充,取得了非常良好的 实用价值。 基于相邻节点间具有相关测量值的假设, Takruri 等 [11]提出了一种分布式递归贝叶斯 (distributed recursive Bayesian,DRB) 盲校准算法,其 使用邻居节点读数的平均值作为漂移节点的预测 值。为了更好地拟合传感器节点间的时空相关 性,Takruri 等 [12]又提出了一种基于支持向量回归 (support vector regression,SVR) 来预测真实值的方 法。针对 SVR 可能存在的训练精度较低的情况, Kumar 等 [13]采用克里金插值作为预测方法,以避 免 SVR 的训练阶段。这些方法基于节点间的时 空相关性以预测节点数据的漂移,并都使用了卡 尔曼滤波器 (Kalman filter,KF) 以跟踪漂移。然 而,一旦预测值不精确,偏差较大的预测值也会 被用来进一步校准漂移值,从而导致最终校准值 的精度受累积误差的限制。 针对上述问题,本文提出了一种基于遗传算 法 (genetic algorithm,GA) 优化的 BP 神经网络 (BP neural network optimized by GA,GABP) 与卡尔曼 滤波器相结合的无线传感器网络数据漂移盲校准 算法 (GABP-KF)。该算法首先对节点读数进行二 次采集和降噪处理。然后使用基于遗传算法优化 的神经网络对目标节点和其邻居节点间的时空相 关性进行数学建模,从而得到目标节点的预测 值。最后将目标节点的预测值和测量值反馈入卡 尔曼滤波器中以跟踪并校准其数据漂移。仿真结 果表明,GABP-KF 具有良好的漂移校准性能。 1 预备知识 1.1 遗传算法 遗传算法是模拟自然界遗传机制的生物进化 模型,是一种启发式随机搜索最优化方法。它将 “物竞天择,适者生存”的进化原理和遗传变异理 论引入编码串联群体中,即在每一次的进化过程 中,按照所构造的适应度函数,通过选择操作、交 叉操作和变异操作来对个体进行筛选,把适应度 值好的个体传给下一代,反复循环,直到最终个 体满足特定的条件表示进化结束[14]。遗传算法具 备良好的全局搜索能力,不受求导和函数连续性 的限定,能自动获取待优化的搜索空间,从而自 适应地控制搜索过程[15]。 1.2 卡尔曼滤波器 卡尔曼滤波器是由 R.E.Kalman 提出的线性最 小方差递推估算的方法,是一种离散数据线性滤 波问题的递归解决方案[16]。它是利用当前时刻的 观测值和前一时刻的估计值来更新当前时刻的最 佳估计,其所需数据存储量较小,便于实时处理[17]。 2 基于 GABP-KF 的 WSN 数据漂移 校准方法 2.1 定义测量环境 假设在某一区域内的传感器网络中,随机分 布多个节点。其中每个节点采集该区域内的环境 参数 (温度、湿度或其他类型参数)。随着时间的 推移,一些节点产生数据漂移,降低了数据质量, 从而影响了传感器网络的可靠性。为了更好地模 拟实际场景,本文对传感器网络的测量环境做了 如下定义。 定义 1 传感器节点的数据漂移指的是节点 测量值受其内部固有偏差或外界环境影响所产生 第 2 期 武加文,等:基于 GABP-KF 的 WSN 数据漂移盲校准算法 ·255·
·256· 智能系统学报 第14卷 的缓慢、单向、长期的变化。在本文中,节点的数 定义3目标节点i与其邻居节点的时空相 据漂移表示如下: 关性指的是同一时段内的节点测量数据的变化趋 X=T+d+W (1) 势是一致的。在本文中,假设目标节点i与其邻 式中:X表示节点的测量值;T表示所测环境的真 居节点间具有时空相关性,因此,可以用来预测 实值;d表示漂移值;W表示测量高斯白噪声。其 目标节点的测量值,即: 中,漂移d是平滑的,因为漂移通常是一个缓慢的 =f(neighbours data) (2) 线性或指数的变化过程,没有突变,激增或尖峰 式中:x:表示目标节点i的测量数据的预测值, 现象。同时,漂移的产生是随机的,与其内部构 f(neighbours data)表示相邻节点之间的时空相关 造以及环境因素密切相关。因此,不同节点是否 性函数。 产生漂移以及漂移值的大小不具有相关性。由于 节点在部署前都经过预先校准,以确保它们处于 2.2算法框架 工作状态。因此,节点部署后的短时间内,漂移 GABP-KF算法的设计目标是在随机误差(噪 值应为零。在本文中,设定节点不会同时产生数 声)和系统误差(漂移)的干扰下精确地校准目标 据漂移,且产生的漂移值不同。 节点i的测量值:。该算法有两个运行阶段:训 定义2在以目标节点为圆心的测量区域 练阶段和测试阶段。在训练阶段,首先对所有节 内,该节点向其周围节点传输信号,该信号的强 点数据进行去噪处理。然后使用来自邻居节点的 度会随距离的增加而减弱,当信号强度小于阈值 去噪后测量值{Xm-1作为GABP神经网络的输入 时,接收节点无法接收到数据。因此,通信半径 值,并输出节点i的预测值x。在测试阶段,将预 指的是信号衰减至阈值的距离,而邻居节点指目 测值x,和节点i的去噪后测量值y输入到卡尔曼 标节点通信半径内的其他节点。在本文中,假设 滤波器中以跟踪其数据漂移山,。最后通过测量值 目标节点i共有m1个邻居节点,分别标号为1,2, ”:减去估计漂移值d:以得到最终校准后的读数 m,i-1,i+1,…m。 无。图1描述了本文算法的具体框架。 去噪处理 {X3m GABP 卡尔曼 神经网络 滤波 去噪处理 图1 GABP-KF算法的数据漂移校准框架 Fig.1 Data drift calibration framework of GABP-KF algorithm 2.3基于GABP神经网络的建模过程 收敛速度差等问题。为了克服这些缺点,本文使 2.3.1数据预处理 用遗传算法来优化BP神经网络,将遗传算法的 在传感器网络的实际部署中,由于受到传感 全局搜索能力与BP神经网络的局部搜索能力有 器节点内部固有偏差或其他环境因素,节点在测 效地结合起来,从而提高了网络的预测精度和泛 量过程中会受到噪声的干扰。在节点校准之前, 化能力。具体方法如下:首先,BP神经网络根据 必须考虑消除噪声的影响。本文采用小波去噪四 数据集的划分情况确定网络结构,从而确定遗传 方法来降低噪声的影响,首先使用阈值去噪法对 算法的个体长度。其次,算法通过选择操作、交 含噪数据进行小波分解,再对小波系数进行阈值 叉操作和变异操作来优化BP神经网络的参数。 处理,最后利用处理后结果重构原信号。实验证 最后,BP神经网络使用最优参数来预测目标节点 明该方法在信号保护和噪声抑制之间达到了良好 的测量值。GABP神经网络的模型建立方法如 的平衡。 图2所示。 2.3.2GABP神经网络的建模 本文使用在传感器网络部署初期(一般为前 传统的BP神经网络具有良好的自学习、自 五天)所采集到的节点数据作为训练数据集,训 适应能力,但同时也存在容易陷入局部最优解、 练数据集划分为:Train=TY;TX。TY表示数据
的缓慢、单向、长期的变化。在本文中,节点的数 据漂移表示如下: X = T +d +W (1) 式中:X 表示节点的测量值;T 表示所测环境的真 实值;d 表示漂移值;W 表示测量高斯白噪声。其 中,漂移 d 是平滑的,因为漂移通常是一个缓慢的 线性或指数的变化过程,没有突变,激增或尖峰 现象[18]。同时,漂移的产生是随机的,与其内部构 造以及环境因素密切相关。因此,不同节点是否 产生漂移以及漂移值的大小不具有相关性。由于 节点在部署前都经过预先校准,以确保它们处于 工作状态。因此,节点部署后的短时间内,漂移 值应为零。在本文中,设定节点不会同时产生数 据漂移,且产生的漂移值不同。 ··· ··· 定义 2 在以目标节点为圆心的测量区域 内,该节点向其周围节点传输信号,该信号的强 度会随距离的增加而减弱,当信号强度小于阈值 时,接收节点无法接收到数据。因此,通信半径 指的是信号衰减至阈值的距离,而邻居节点指目 标节点通信半径内的其他节点。在本文中,假设 目标节点 i 共有 m−1 个邻居节点,分别标号为 1,2, , m,i−1, i+1, ,m。 定义 3 目标节点 i 与其邻居节点的时空相 关性指的是同一时段内的节点测量数据的变化趋 势是一致的。在本文中,假设目标节点 i 与其邻 居节点间具有时空相关性,因此,可以用来预测 目标节点的测量值,即: ⌢ xi = f(neighbours_data) (2) ⌢ xi f(neighbours_data) 式中: 表示目标节点 i 的测量数据的预测值, 表示相邻节点之间的时空相关 性函数。 2.2 算法框架 xi {X}m−1 ⌢ xi ⌢ xi yi di yi di x¯i GABP-KF 算法的设计目标是在随机误差 (噪 声) 和系统误差 (漂移) 的干扰下精确地校准目标 节点 i 的测量值 。该算法有两个运行阶段:训 练阶段和测试阶段。在训练阶段,首先对所有节 点数据进行去噪处理。然后使用来自邻居节点的 去噪后测量值 作为 GABP 神经网络的输入 值,并输出节点 i 的预测值 。在测试阶段,将预 测值 和节点 i 的去噪后测量值 输入到卡尔曼 滤波器中以跟踪其数据漂移 。最后通过测量值 减去估计漂移值 以得到最终校准后的读数 。图 1 描述了本文算法的具体框架。 x1 xi−1 xi+1 xm xi 去噪处理 去噪处理 {X}m−1 GABP 神经网络 卡尔曼 滤波 di yi−di xi … … yi xi ) 图 1 GABP-KF 算法的数据漂移校准框架 Fig. 1 Data drift calibration framework of GABP-KF algorithm 2.3 基于 GABP 神经网络的建模过程 2.3.1 数据预处理 在传感器网络的实际部署中,由于受到传感 器节点内部固有偏差或其他环境因素,节点在测 量过程中会受到噪声的干扰。在节点校准之前, 必须考虑消除噪声的影响。本文采用小波去噪[19] 方法来降低噪声的影响,首先使用阈值去噪法对 含噪数据进行小波分解,再对小波系数进行阈值 处理,最后利用处理后结果重构原信号。实验证 明该方法在信号保护和噪声抑制之间达到了良好 的平衡。 2.3.2 GABP 神经网络的建模 传统的 BP 神经网络具有良好的自学习、自 适应能力,但同时也存在容易陷入局部最优解、 收敛速度差等问题。为了克服这些缺点,本文使 用遗传算法来优化 BP 神经网络,将遗传算法的 全局搜索能力与 BP 神经网络的局部搜索能力有 效地结合起来,从而提高了网络的预测精度和泛 化能力。具体方法如下:首先,BP 神经网络根据 数据集的划分情况确定网络结构,从而确定遗传 算法的个体长度。其次,算法通过选择操作、交 叉操作和变异操作来优化 BP 神经网络的参数。 最后,BP 神经网络使用最优参数来预测目标节点 的测量值。GABP 神经网络的模型建立方法如 图 2 所示。 Train = {TY;TX} 本文使用在传感器网络部署初期 (一般为前 五天) 所采集到的节点数据作为训练数据集,训 练数据集划分为: 。TY 表示数据 ·256· 智 能 系 统 学 报 第 14 卷
第2期 武加文,等:基于GABP-KF的WSN数据漂移盲校准算法 ·257· 测试集,TX表示训练集。TY={x:t=1,2,…,n, 于测量值减去实际值,见式(⑤): TX={x:j=1,2,,i-1,i+1,…,m,t=l,2,…,n小,其 di ri-Ti (5) 中,j表示节点序号,1表示时序。 然而在实际场景中,实际值是无法得知的,只 能使用其预测值x。因此: 开始 di=ru-u (6) 编码 读入数据 综上所述,式(3)和式(4)建立了一个传感器 得到初始种群 节点的状态-观测模型,使用卡尔曼滤波器以分散 迭代的方式进行跟踪漂移,具体算法参见图3。 数据预处理 训练BP神经网络 得到适应度值 开始 划分数据集 训练集和测试集 设定初值 选择操作 初始协方差P。 初始漂移值d 初始化BP神经网络 交叉操作 的权值阀值长度 获取-1时刻的漂移值dpr 与均方误差ppre 变异操作 [解码 d pre=d p_pre=P-+Q, 计算适应度 获取最优权值阀值 计算卡尔曼增益K K-p_pre(p_pre+R) 训练网络 满足 结束条件 仿真预测 获取时刻的漂移值P,和均方误差d d=d_pre+K(Z-d pre) P=(1-K)P pre 算法结束 图2GABP神经网络的建模算法 Fig.2 Modeling algorithm of GABP neural network 满足 2.4基于卡尔曼滤波的漂移跟踪算法 结束条件 本文设定1时刻节点i的平滑漂移值为d, 1时刻节点i所测量的真实温度值为T,t时刻节 算法结束 点i的测量值为r。其中i表示节点序号,1表示 时间序列。为了预测漂移值d,首先需要对节点 图3针对目标节点的漂移跟踪算法 的数据漂移进行数学建模,见式(3): Fig.3 Drift tracking algorithm for target node di=du-i+wir,wi ~N(O,Qir) (3) 如图3所示,其中乙、2、R分别表示1时刻 式中:w表示高斯噪声,而Q表示状态噪声协 目标节点的漂移测量值、过程噪声和测量噪声。 方差。 由于目标节点i共测量了n个数据,因此算法需 式(3)表示节点数据漂移的状态跟踪方程,用 要迭代n次,即,算法结束条件为:1>n。在进行 来跟踪漂移值随时间的变化情况。除了状态方 第1次迭代时,首先基于1-1时刻的漂移估计值 程,还需要建立一个观测方程来模拟节点的观测 d-1和均方误差p,-1预测1时刻的漂移估计值d 结果。假设现实中存在一种测量仪器,可以测量 pre和均方误差ppre,然后计算t时刻的卡尔曼 出节点的数据漂移值,同时一定存在与节点测量 滤波增益K,最后更新1时刻的漂移值d,和均方 时相关联的误差,见式(4): 误差P,。算法迭代完成后,基于滤波后漂移值d, u=du+vin vi ~N(O,R) (4) 来校准节点数据,见式(⑦): 式中:表示高斯噪声,而R表示观测噪声协 u ru dir (7) 方差。 3实验结果及分析 实际上并不存在可以直接测量节点数据漂移 的仪器。在这种情况下,理想的数据漂移值d等 为了验证GABP-KF的算法性能,本文在mat-
TY = {xi,t : t = 1,2,··· ,n} TX = {xj,t : j = 1,2,··· ,i−1,i+1,··· ,m, t =1,2,··· ,n} 测试集,TX 表示训练集。 , ,其 中,j 表示节点序号,t 表示时序。 计算适应度 满足 结束条件 N 开始 选择操作 交叉操作 变异操作 读入数据 数据预处理 划分数据集 训练集和测试集 解码 获取最优权值阈值 训练网络 仿真预测 算法结束 Y 初始化BP神经网络 的权值阈值长度 训练BP神经网络 得到适应度值 编码 得到初始种群 图 2 GABP 神经网络的建模算法 Fig. 2 Modeling algorithm of GABP neural network 2.4 基于卡尔曼滤波的漂移跟踪算法 di,t Ti,t ri,t di,t 本文设定 t 时刻节点 i 的平滑漂移值为 , t 时刻节点 i 所测量的真实温度值为 ,t 时刻节 点 i 的测量值为 。其中 i 表示节点序号,t 表示 时间序列。为了预测漂移值 ,首先需要对节点 的数据漂移进行数学建模,见式 (3): di,t = di,t−1 +wi,t ,wi,t ∼ N(0,Qi,t) (3) 式中: wi,t 表示高斯噪声,而 Qi,t 表示状态噪声协 方差。 式 (3) 表示节点数据漂移的状态跟踪方程,用 来跟踪漂移值随时间的变化情况。除了状态方 程,还需要建立一个观测方程来模拟节点的观测 结果。假设现实中存在一种测量仪器,可以测量 出节点的数据漂移值,同时一定存在与节点测量 时相关联的误差,见式 (4): zi,t = di,t +vi,t , vi,t ∼ N(0,Ri,t) (4) 式中: vi,t 表示高斯噪声,而 Ri,t 表示观测噪声协 方差。 di,t 实际上并不存在可以直接测量节点数据漂移 的仪器。在这种情况下,理想的数据漂移值 等 于测量值减去实际值,见式 (5): di,t = ri,t −Ti,t (5) ⌢ xi,t 然而在实际场景中,实际值是无法得知的,只 能使用其预测值 。因此: di,t = ri,t − ⌢ xi,t (6) 综上所述,式 (3) 和式 (4) 建立了一个传感器 节点的状态-观测模型,使用卡尔曼滤波器以分散 迭代的方式进行跟踪漂移,具体算法参见图 3。 N Y 设定初值 初始协方差 P0 初始漂移值 d0 获取t−1时刻的漂移值d_pre 与均方误差p_pre d_pre=dt−1 p_pre=Pt−1+Qt 计算卡尔曼增益 K K=p_pre(p_pre+Rt ) −1 获取t时刻的漂移值Pt和均方误差dt dt=d_pre+K(Zt−d_pre) Pt= (1−K)P_pre 满足 结束条件 算法结束 开始 图 3 针对目标节点的漂移跟踪算法 Fig. 3 Drift tracking algorithm for target node Zt Qt Rt dt−1 pt−1 dt Pt dt 如图 3 所示,其中 、 、 分别表示 t 时刻 目标节点的漂移测量值、过程噪声和测量噪声。 由于目标节点 i 共测量了 n 个数据,因此算法需 要迭代 n 次,即,算法结束条件为:t > n。在进行 第 t 次迭代时,首先基于 t-1 时刻的漂移估计值 和均方误差 预测 t 时刻的漂移估计值 d_ pre 和均方误差 p_ pre,然后计算 t 时刻的卡尔曼 滤波增益 K,最后更新 t 时刻的漂移值 和均方 误差 。算法迭代完成后,基于滤波后漂移值 来校准节点数据,见式 (7): x¯i,t = ri,t −di,t (7) 3 实验结果及分析 为了验证 GABP-KF 的算法性能,本文在 mat- 第 2 期 武加文,等:基于 GABP-KF 的 WSN 数据漂移盲校准算法 ·257·
·258· 智能系统学报 第14卷 lab2013b的实验环境下针对国际通用的Intel 数据集。 Berkeley(LBRL)无线传感器网络数据集和LUCE 表1 实验所用数据集 无线传感器网络数据集分别实现了GABP-KF算 Table 1 Experimental data sets 法、未优化的BP-KF算法、Takruri提出的SVR- 序号 数据集 训练样本数 测试样本数 KF算法四以及DRB-KF算法,并进行了实验结 I IBRL_1 1200 1200 果的比较。 I IBRL_2 1000 1000 3.1数据集 W LUCE 1 1100 1100 3.1.1IBRL数据集 IV LUCE 2 1100 1100 V DR d 1100 1100 IBRL数据集来自于部署在Intel Berkeley实 验室内的无线传感器网络,包含54个节点,用于 3.2 去噪处理 监控实验室环境(参见图4)。 针对上述数据集中的所有节点数据,采用硬 阈值去噪的方法进行处理,以减少噪声对GABP KF算法评估所造成的影响。由于本文所采用的 数据集中噪声干扰较小,为进行去噪算法的评 估,故选择在数据集Ⅲ中10号节点处对节点数据 手动添加高斯白噪声,去噪结果参见图5。如图5 0 所示,原始数据与去噪后数据几近重合,这表明 。59二0 本方法对噪声有很好的抑制作用。 图4IBRL的节点分布 Fig.4 Deployment scheme of IBRL sensor network 选取由IBRL部署中的两组传感器节点的数 据子集进行实验。第1组数据子集(IBRL1)包 含的节点ID分别是1、2、3、4、6、7、10、33。第 2组数据子集(IBRL2)包含的节点ID分别是 17、18、19、20、21、22、23。两组数据集都对应于 500 1000 2004-02-28~2004-03-079天内所收集的数据。 1500 2000 样本数 3.1.2LUCE数据集 图5小波去噪实验结果 LUCE数据集(洛桑城市冠层实验)来自于 Fig.5 Experimental results of wavelet denoising 2006年7月以来部署在洛桑联邦理工学院内的无 33模型对比实验 线传感器网络。该网络共包含97个节点,根据节 为比较GABP-KF算法与其他同类算法的模 点之间的时空相关性分为10组传感器节点集。 型拟合程度,基于表1中的5个数据集分别随机 选取LUCE数据集中的两组传感器节点的数 选择其中一个节点的数据针对4种算法进行了 据子集作为实验对象,第1组数据子集(LUCE1) 5次对比实验,并选取平均值作为最终数据,表2 包含的节点ID分别是10、14、15、17、18、19。 给出了4种算法的模型拟合程度对比结果。本文 第2组数据子集(LUCE2)包含的节点ID分别 选用均方误差(式(8))与决定系数(式(9))作为判 是21、23、24、25、26、27、28。两组数据子集都 断依据。 对应于2016-10-10~2016-10-134天内所收集的 数据。 (8) 由于上述数据集中节点的测量数据量庞大, 其中存在缺漏值,且采样周期均为31s。因此,对 R2 =1 (9) 每个节点分别以5min的时间间隔进行重新采 样,并均使用温度作为评估数据。为了精确评估 炫对-刘-医 GABP-KF算法的性能,排除实验数据由于缺漏现 式中:n表示训练样本数目,x与分别为第i个 象造成的影响,人工建立了一组具有时空相关性 样本的真实值与预测值。一般情况下,决定系数 的测试数据集(DRd)。表1列出了所使用的所有 越高,均方误差越小,表明模型的拟合程度越好
lab 2013b 的实验环境下针对国际通用的 Intel Berkeley(LBRL) 无线传感器网络数据集和 LUCE 无线传感器网络数据集分别实现了 GABP-KF 算 法、未优化的 BP-KF 算法、Takruri 提出的 SVRKF 算法[12]以及 DRB-KF 算法[11] ,并进行了实验结 果的比较。 3.1 数据集 3.1.1 IBRL 数据集 IBRL 数据集来自于部署在 Intel Berkeley 实 验室内的无线传感器网络,包含 54 个节点,用于 监控实验室环境 (参见图 4)。 33 31 32 34 35 37 36 39 38 40 43 44 45 46 47 48 49 50 51 52 53 54 8 9 10 11 12 13 14 15 16 17 19 20 22 23 25 30 28 26 29 27 24 21 18 7 5 6 4 3 2 1 42 41 SERVER KITCHEN ELEC COPY LAB QUIET PHONE STORAGE OFFICE OFFICE CO ENCE 图 4 IBRL 的节点分布 Fig. 4 Deployment scheme of IBRL sensor network 选取由 IBRL 部署中的两组传感器节点的数 据子集进行实验。第 1 组数据子集 (IBRL_1) 包 含的节点 ID 分别是 1、2、3、4、6、7、10、33。第 2 组数据子集 (IBRL_2) 包含的节点 ID 分别是 17、18、19、20、21、22、23。两组数据集都对应于 2004-02-28~2004-03-07 9 天内所收集的数据。 3.1.2 LUCE 数据集 LUCE 数据集 (洛桑城市冠层实验) 来自于 2006 年 7 月以来部署在洛桑联邦理工学院内的无 线传感器网络。该网络共包含 97 个节点,根据节 点之间的时空相关性分为 10 组传感器节点集。 选取 LUCE 数据集中的两组传感器节点的数 据子集作为实验对象,第 1 组数据子集 (LUCE_1) 包含的节点 ID 分别是 10、14、15、17、18、19。 第 2 组数据子集 (LUCE_2) 包含的节点 ID 分别 是 21、23、24、25、26、27、28。两组数据子集都 对应于 2016-10-10~2016-10-13 4 天内所收集的 数据。 由于上述数据集中节点的测量数据量庞大, 其中存在缺漏值,且采样周期均为 31 s。因此,对 每个节点分别以 5 min 的时间间隔进行重新采 样,并均使用温度作为评估数据。为了精确评估 GABP-KF 算法的性能,排除实验数据由于缺漏现 象造成的影响,人工建立了一组具有时空相关性 的测试数据集 (DR_d)。表 1 列出了所使用的所有 数据集。 表 1 实验所用数据集 Table 1 Experimental data sets 序号 数据集 训练样本数 测试样本数 Ⅰ IBRL_1 1 200 1 200 Ⅱ IBRL_2 1 000 1 000 Ⅲ LUCE_1 1 100 1 100 IV LUCE_2 1 100 1 100 V DR_d 1 100 1 100 3.2 去噪处理 针对上述数据集中的所有节点数据,采用硬 阈值去噪的方法进行处理,以减少噪声对 GABPKF 算法评估所造成的影响。由于本文所采用的 数据集中噪声干扰较小,为进行去噪算法的评 估,故选择在数据集Ⅲ中 10 号节点处对节点数据 手动添加高斯白噪声,去噪结果参见图 5。如图 5 所示,原始数据与去噪后数据几近重合,这表明 本方法对噪声有很好的抑制作用。 0 500 1 000 1 500 2 000 5 10 15 样本数 温度/℃ 图 5 小波去噪实验结果 Fig. 5 Experimental results of wavelet denoising 3.3 模型对比实验 为比较 GABP-KF 算法与其他同类算法的模 型拟合程度,基于表 1 中的 5 个数据集分别随机 选择其中一个节点的数据针对 4 种算法进行了 5 次对比实验,并选取平均值作为最终数据,表 2 给出了 4 种算法的模型拟合程度对比结果。本文 选用均方误差 (式 (8)) 与决定系数 (式 (9)) 作为判 断依据。 MSE = 1 n ∑n i=1 (xi − xˆi) 2 (8) R 2 = ( n ∑n i=1 xˆixi − ∑n i=1 xˆi ∑n i=1 xi )2 n ∑n i=1 xˆ 2 i − ( ∑n i=1 xˆi )2 n ∑n i=1 x 2 i − ( ∑n i=1 xi )2 (9) 式中:n 表示训练样本数目,xi 与 xˆi 分别为第 i 个 样本的真实值与预测值。一般情况下,决定系数 越高,均方误差越小,表明模型的拟合程度越好。 ·258· 智 能 系 统 学 报 第 14 卷