基于无线传感器网络流量统计的节点动态节能方法
技术领域
本发明涉及无线传感器网络领域,尤其涉及一种基于无线传感器网络流量统计的节点动态节能方法。
背景技术
随着通信技术、传感器技术和嵌入式计算技术的快速发展和日益成熟,具有通信、传感和计算能力的微型传感器节点开始出现,并且被逐渐的应用到生产和生活之中。这种无线传感器网络能够协调地感知、采集和处理网络覆盖区域内的各种环境或监测对象信息,并发布给需要这些信息的用户。无线传感器网络将逻辑上的信息世界与真实的物理世界融合在一起,深刻地改变了人与自然的交互方式,可广泛地应用于环境监测、工农业控制、生物医疗、国防军事等诸多领域。通常无线传感器网络由电池驱动,并且往往部署在人迹罕至的地方,使得电池替换变得异常麻烦。为了解决有限的电池容量和长时间部署需求之间的矛盾,周期工作(Duty-cycling)的工作模式已经成为业界的广泛应用的方案。无线传感器网络中的节点主要完成两类工作:数据采集和数据传输。数据采集包括周期性的数据采集,如环境中的温湿度,二氧化碳浓度;以及突发事件的数据采集,如森林火灾,车辆检测。数据传输工作由无线传感器网络本身的特点决定,大量传感器节点以自组织(ad-hoc)的方式组成无线网络,并且以多跳的方式帮助其他节点将数据发回基站。大量研究表明,在环境监测等周期性采集数据的无线传感器网络应用中,能量开销基本由无线收发器(radio)开启的时间决定。因此,如何减少无线收发器开启时间成了延长无线传感器网络寿命的关键所在。
周期工作技术已经成为广为采用的节点节能方案。在周期工作的无线传感器网络中,无线收发器周期性的开启,从而在大部分时间中,无线收发器都处于关闭状态,从而节约了大量的能量。无线收发器分为两种工作状态:开启状态和空闲状态。当无线收发器处于开启状态时,传感器节点发送或者接受数据包。当处于空闲状态,无线收发器关闭,从而节约了大量能量。
基于周期工作技术,已经创建了大量媒体接入方法。这些方法主要分为两类:同步接入方法和异步接入方法。同步接入方法需要传感器节点的无线收发器同步醒睡,但这样会导致大量的能量消耗在同步的维护上。在异步接入方法中,传感器节点不需要同步它们之间的醒睡计划,但这样带来的问题是,发送方醒来时,接收方可能处于空闲状态,将会错过正在发送的数据包。为了确保数据包能被接收方收到,低功耗监听技术(LPL)广泛应用于异步的周期工作技术中。具体来说,发送方在传输数据包之前,会发送一个长度足以覆盖接收方空闲时间间隔的前同步码(preamble),这样能确保接收方在醒来时能至少收到一次数据包。
采用低功耗监听技术的无线传感器网络的网络流量给很多无线传感器应用带来帮助,尤其在节能方面。在低功耗监听技术中,大部分能量消耗在前同步码上。有研究表明,在常用的环境监测无线传感器应用中,平均前同步码的长度是平均实际传输数据包长度的六十五倍,这说明大部分能量消耗在前同步码上。如果已知无线传感器网络数据流的模式,接收方能够预测下个数据包的到来时间,这样接收方就能在发送方开始发送之前醒来,从而大大减少了前同步码发送的长度,与此同时,网络数据传输的能耗也将大大减少。但是,网络数据流模型很难被简单的数据模型刻画,因此如何根据实际数据流训练得到的相对准确和实用的网络数据流模型从而实现节点的动态节能,成为目前无线传感器网络技术中亟待解决的问题。
发明内容
针对上述技术问题,本发明的目的在于提供一种基于无线传感器网络流量统计的节点动态节能方法,其基于无线传感器网络流量的实际统计结果,利用机器学习的方法,准确判断出无线传感器网络数据流的实际到达时间序列,不仅实现了节点的动态节能,而且更贴合实际,效率高。
为达此目的,本发明采用以下技术方案:
一种基于无线传感器网络流量统计的节点动态节能方法,其包括如下步骤:
A、统计每个节点在时间间隔T内的所有历史属性;
B、对所述历史属性进行排序,选取出具有一定相关性的历史属性;
C、利用所述具有一定相关性的历史属性,通过机器学习方法获得数据包到达节点的时间序列;
D、节点的无线收发器根据所述数据包到达节点的时间序列进行开启操作,完成数据包的接收。
特别地,所述历史属性具体包括时间维度信息和空间维度信息。
特别地,所述时间维度信息包括:平均时间间隔、无线收发器开启时间占空比、收到数据包的数量、时间间隔方差、最大的时间间隔及最小的时间间隔;所述空间维度信息包括:平均信号强度信息、信号强度方差、最大的信号强度及最小的信号强度。
特别地,所述步骤A具体包括:
A1、记录无线传感器网络运行过程中每个节点在时间间隔T内接收到数据包的时间,其中,所述无线传感器网络中节点个数为n;
A2、根据所述在时间间隔T内接收到数据包的时间,计算接收相邻数据包之间的时间间隔;
A3、选取历史信息窗口τ,并对于每个节点统计历史信息窗口τ内的所有历史属性。
特别地,所述步骤B具体包括:
对步骤A获得的所有历史属性进行排序,将其整理为向量格式<f1,f2,…,fn>,并采用基于相关性的属性选择技术(Correlation-BasedFeature Selection,CFS),依据相关性大小选取相关性最大的五个历史属性<f1′,f2′,f3′,f4′,f5′>。
特别地,所述步骤C具体包括:
C1、根据步骤B选取的五个历史属性<f1′,f2′,f3′,f4′,f5′>,通过集成学习算法(Bagging)获得集成学习模型F,
C2、根据每个节点相应的五个历史属性<f1′,f2′,f3′,f4′,f5′>,利用所述集成学习模型F获得数据包到达节点的时间序列。
本发明挖掘周期性数据采集无线传感器数据包的特性,基于无线传感器网络流量的实际统计结果,利用机器学习的方法,准确判断出无线传感器网络数据流的实际到达时间序列。与传统节点的动态节能方法相比,本发明具有以下优点:一、更加精确。根据无线传感器网络流量的实际统计结果进行数据包达到时间的预测,更具有动态性。二、更加高效。在实际运行过程中,不需要重复计算,可利用已经训练好的模型预测下个数据包的到达时间。三、更加节能。节点的无线收发器根据所述数据包到达节点的时间序列进行开启和关闭操作,完成数据包的接收,节能效果得到很大提升。
附图说明
图1为本发明实施例提供的基于无线传感器网络流量统计的节点动态节能方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明作进一步说明。
请参照图1所示,图1为本发明实施例提供的基于无线传感器网络流量统计的节点动态节能方法流程图。
本实施例中基于无线传感器网络流量统计的节点动态节能方法包括如下步骤:
步骤S101、统计每个节点在时间间隔T内的所有历史属性。
所述历史属性具体包括时间维度信息和空间维度信息。所述时间维度信息包括:平均时间间隔、无线收发器开启时间占空比、收到数据包的数量、时间间隔方差、最大的时间间隔及最小的时间间隔;所述空间维度信息包括:平均信号强度(Received Signal Strength Indication,RSSI)信息、信号强度(Received Signal Strength Indication,RSSI)方差、最大的信号强度及最小的信号强度。
本实施例中统计每个节点在时间间隔T内的所有历史属性的具体过程如下:
步骤S1011、记录无线传感器网络运行过程中每个节点在时间间隔T内接收到数据包的时间,其中,所述无线传感器网络中节点个数为n。
步骤S1012、根据所述在时间间隔T内接收到数据包的时间,计算接收相邻数据包之间的时间间隔。
步骤S1013、选取历史信息窗口τ,并对于每个节点统计历史信息窗口τ内的所有历史属性。其中,平均时间间隔=相邻数据包之间的时间间隔/所有数据包的数量。无线收发器开启时间占空比=无线收发器开启时间/时间间隔T。平均信号强度信息=所有数据包的信号强度总和/收到数据包的数量。
步骤S102、对所述历史属性进行排序,选取出具有一定相关性的历史属性。
考虑到传感器的处理能力一般较弱,无法记录长时间的历史数据,也很难进行复杂的统计信息提取,所以需要对历史属性进行精简。具体过程如下:
对所有历史属性进行排序,将其整理为向量格式<f1,f2,…,fn>,并采用基于相关性的属性选择技术(Correlation-Based Feature Selection,CFS),依据相关性大小选取相关性最大的五个历史属性<f1′,f2′,f3′,f4′,f5′>。
步骤S103、利用所述具有一定相关性的历史属性,通过机器学习方法获得数据包到达节点的时间序列。
首先,根据步骤S102中选取的五个历史属性<f1′,f2′,f3′,f4′,f5′>,通过集成学习算法(Bagging)获得集成学习模型F。其次,根据每个节点相应的五个历史属性<f1′,f2′,f3′,f4′,f5′>,利用所述集成学习模型F获得数据包到达节点的时间序列。
因为数据包之间的数据间隔很难估计是服从泊松分布或者其他多种分布的混合,而应用一些线性的函数例如逻辑回归或者支持向量机(Support VectorMachine,SVM)去估计,都很难和实际数据吻合,所以本实施例采用集成学习算法(Bagging)作为机器学习方法。集成学习算法通过对测试数据集采样,训练出多个弱分类器,再通过投票的方式,将弱分类的结果整合在一起,不仅可以满足线性关系的数据求解,对非线性关系也可以达到满意的精度。
步骤S104、节点的无线收发器根据所述数据包到达节点的时间序列进行开启操作,完成数据包的接收。
本发明对数据包的到达时间拥有很好的预测精度,极大降低了节点的能耗,现已成功应用于位于浙江农林大学的GreenOrbs(绿野千传)传感网***。该传感网***拥有五百个节点,可以采集温度、湿度、光亮、等信息,为科学监测森林环境提供了重要信息。
本发明的技术方案基于无线传感器网络流量的实际统计结果,利用机器学习的方法,准确判断出无线传感器网络数据流到达的时间序列,不仅实现了节点的动态节能,而且更贴合实际,效率高,能够为其它应用提供细粒度的服务。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。