发明内容
技术问题:本发明的目的主要是针对无线多媒体传感器网络能量有限的问题,提出一种基于粗糙集的无线多媒体传感器网络数据融合方法(RSDF:Rough Setbased Data Fusion in Wireless Multimedia SensorNetworks),以减少传感器节点消耗的能量,从而延长整个网络的生命周期。
技术方案:首先给出几个定义:
粗糙集:建立在分类机制的基础上,将分类理解为在特定空间上的等价关系,而等价关系构成了对该空间的划分。主要思想是利用已知的知识库,将不精确或不确定的知识用已知的知识库中的知识来近似刻画。
不可分辨关系:若两个对象具有相同的信息,即它们是等价的,则认为它们是一种不可分辨关系。假设集合P为一族等价关系,且x∈P,如果ind(P)=ind(P-{x}),其中ind(P)为P的所有等价关系的交,则称x为P中不必要的;否则称x为P中必要的。如果每个x∈P都为P中必要的,则称P为独立的;否则称P为依赖的。
约简:假设集合
如果Q是独立的,且ind(Q)=ind(P),则称集合Q是集合P的一个约简。P的最小约简记作red(P)。且有
则ind(red(P)-{x})≠ind(P)。
核:P中所有必要关系组成的集合成为关系P的核,记作CORE(P)。
可辨识矩阵:令决策表系统S=<U,A,V,f>,其中U={x
1,x
2,…,x
n}是论域,A=C∪D是属性集合,子集C={a
i|i=1,…,m}和D={d}分别称为条件属性和决策属性集,
V
a是属性a的值域,f:U×A→V是一个信息函数,它为每个节点采集的信息的每个属性赋予一个信息值。a
i(x
j)是节点x
j采集的信息在属性a
i上的取值。C
D(i,j)表示可辨识矩阵中第i行和第j列的元素,则可辨识矩阵C
D定义为:
本发明设计的无线多媒体传感器网络应具有以下几个特征:
1)该无线多媒体传感器网络为高密度静态网络,即多媒体节点部署后就不再移动;
2)汇聚节点Sink部署在多媒体传感器网络的区域外部的一个固定位置,且Sink的能量与处理能力无限;
2)每个多媒体传感器节点的初始能量相同,且不能补充;
3)每个节点都具备感知探测外界信息和信息交互的无线通信功能,且具备数据融合能力;
4)节点的无线发射功率可控,即节点可以根据到信号接收方距离的远近调节发射功率以节省节点能量;
5)系统能通过GPS、有向天线或定位算法等定位技术得到各节点的具体位置信息。
本发明将优化的网络拓扑结构和基于粗糙集理论的数据融合算法相结合,有效节省网络资源,延长了网络的生存周期,该方案的具体过程如下:
第一步,网络的初始化
步骤1)将N个多媒体传感器节点随机均匀地分布在区域A内部,每个节点有唯一的编号1,2,…,N;在节点的具体地理位置已知的情况下,根据节点的具体位置信息,将区域A划分成m个相同大小的正方形区域Aij,各区域Aij成为一个簇;
步骤2)每个多媒体节点首先以通信半径r广播普通节点消息CM(Ci,IDi,Ei,Li(x,y))(i=1,2,...,N),该消息包含节点所在簇的编号Ci,节点标识IDi、节点剩余能量Ei和节点的位置坐标Li(x,y);
步骤3)节点所属簇的其它所有节点都是该节点的邻居,每个节点只接收同一簇的邻居节点发送的普通节点消息并根据该消息更新其邻居信息表
邻居信息表记录着该节点的所有邻居节点的标识ID
i、剩余能量E
i和位置坐标L
i(x,y);
步骤4)只有当节点的剩余能量大于预先设定的能量阈值E
thres时才有机会参与簇内簇头节点的竞争,成为候选簇头节点;候选簇头节点根据各自更新后的邻居信息表,得到自己到所有邻居节点距离的平方和,即
根据公式
计算出竞争权值CW
i,然后以通信半径r广播竞争簇头消息CCL(C
i,ID
i,CW
i),该消息包含节点所在簇的编号C
i,节点标识ID
i和竞争权值CW
i;其中E
0表示节点的初始能量,E
i表示节点的剩余能量,α、β的取值根据簇 内节点位置的分布及能量均衡的程度,具体的值将通过多次实验最优选择;
步骤5)当节点接收到簇内其他节点发送的竞争簇头消息时,将竞争簇头消息中的节点标识ID
i放入到候选簇头表
中,若节点本身也发送了竞争簇头消息则将自己ID
i放入候选簇头表中;(j=1,2,...N,j≠i)
步骤6)等待时间T,T的时间应该足够长以便能收到簇内其他候选簇头节点发送的竞争簇头消息,T的计算如式
所示,其中,k表示一个消息数据包的比特数,B表示信道带宽,m
max表示一个簇内最多的节点数;
步骤7)T时间后,若候选簇头表
中只包含自身ID
i,表明该节点所在簇内没有其他节点竞争簇头,则该节点以通信半径r广播竞争成功消息CL(C
i,ID
i),该消息中包含节点所在簇的编号C
i以及节点标识ID
i,并向Sink发送簇头消息CS(C
i,ID
i,L
i(x,y)),该消息包含节点所在簇的编号C
i、节点标识ID
i和节点的位置坐标L
i(x,y),然后转步骤9),否则,转步骤8);
步骤8)在候选簇头表
中选出竞争权值CW
i最高的候选簇头节点成为簇头,竞争权值相同时,比较节点的剩余能量,剩余能量较多的节点优先成为簇头,以通信半径r广播竞争成功消息CL(C
i,ID
i),同时发送簇头消息CS(C
i,ID
i,L
i(x,y))给Sink;
步骤9)其他候选簇头节点收到当选簇头发出的竞争成功消息后,放弃竞争,并向簇头节点发送加入簇消息JC(Ci,IDi),该消息包含节点所在簇的编号Ci和节点标识IDi,从而成为该簇的成员节点;
步骤10)Sink在收到m个簇头节点发送的簇头消息后,向它们发送构建簇间融合树的消息;
步骤11)根据已知的节点位置信息,Sink选择距离它最近的簇头节点成为它的子节点,并发送父节点消息Father(0)给子节点,其中0是Sink的编号,这样就构建了簇间融合树的第一条主干;若有超过一个簇头节点到Sink的距离一样,则选择节点剩余能量多的节点;
步骤12)再从剩余的簇头节点中选择距离该融合树最近的簇头节点连接到融合树上,并向其发送父节点消息Father(Ci,IDi),建立下一条枝干;若距离相同则选择剩余能量多的节点;
步骤13)重复步骤12)直到所有的簇头节点都连接到簇间融合树上,则数据融合树建立完成;
第二步,数据融合的过程
步骤14)Sink向网内所有节点广播信息采集的消息;
步骤15)网内成员节点收到信息采集消息后,开始采集音频、视频等多媒体信息并一跳传输给所在簇的簇头节点;
步骤16)簇头节点将成员节点发送来的音频、视频等多媒体信息依据的不同属性分别进行记录,根据该记录可以定义出一张属性表,其中属性A1,A2,...,An表示属性名称,ai1,ai2,...,ain表示属性值,把在相同属性下具有相同属性值的节点称为具有不可分辨关系的节点;
步骤17)将属性中对观察结果起决策作用的属性记作决策属性,其余属性记作条件属性,假设有m个节点,n个属性,根据可辨识矩阵的定义建立出一个m×n的可辨识矩阵
步骤18)化简可辨识矩阵,将可辨识矩阵中包含单属性元素的集合取出放入核属性集合中,并将这些元素的值修改为0;当C
D(i,j)≠0,且C
D(i,j)≠φ时,建立相应的析取逻辑表达式T
ij,
将所有析取逻辑表达式进行合取运算,得到一个合取范式T,
对T进行转换,最终得到析取范式T′,
再将核属性加到各合取项中,则析取范式中每个合取项对应一个属性约简的结果;
步骤19)各个簇头节点将约简后的信息传输给上一层簇头父节点;
步骤20)上一层簇头父节点重复步骤16)-20)的方法对信息进行约简,直至最终将数据传输给Sink;
步骤21)Sink将收到的信息存储起来以供观察者对观察的事件作出相应的判断。
有益效果:本发明方法提出了基于粗糙集的无线多媒体传感器网络数据融合方案,旨在综合利用现有融合算法的优点,解决其不足。该方案相比于现有的方案具有如下优势:
1、有效节省网络能量:整个无线多媒体传感器网络被划分为若干个大小相同的簇并建立簇间融合树,使数据沿着优化的融合路径转发,同时利用粗糙集达到消除冗余数据,最小化传输数据量,减少传输开销的目的,从而有效地节省整个网络的能量。
2、获得更准确的信息:由于数据感知错误或传输过程中出错等其他原因,有一些数据在一定程度上未知,但却对观察结果有影响。粗糙集适用于从未知数据的可能值中推导得出最恰当的丢失值,能够消除数据的不确定性并提高数据信息系统的准确性。
3、数据收集的效率高:通过优化的簇树式网络拓扑结构以及基于粗糙集的数据融合算法,使得数据在传输过程中得到一定的处理,仅发送有用信息,可以减轻网络的传输拥塞,降低数据的传输延迟,从而提高数据收集的效率。
具体实施方式
图1所示为100个编号为Ni(i∈(1,100))的多媒体节点随机均匀地分布在100m×100m的平面区域内,Sink节点记为N0,位于平面区域外的一个固定位置。图2所示是所有节点根据一定的规则选出簇头后的情况,具体簇头选举方法见下文。图3所示是构建簇树式的网络拓扑结构后的情况。
本发明方法采用的能耗模型如图4所示。能耗模型中发送端能耗由发送电子元件耗能和发射放大器耗能两部分组成,接收端能耗接收电子元件产生。在无线电传输中信号能量的衰减与发送端和接收端的距离d有关。当d≤d0时,能量的消耗与d2成正比,反之d≥d0时,与d4成正比。上述的两种能量衰减模型分别称为自由空间模型(Free Space)和多径衰减模型(Multi-path Fading),d0代表二者的分界点。
根据能耗模型,随着距离的变化传输1bit的信息,发送节点的能耗可表示为:
其中E
elec为节点电路的能量消耗系数,ε
fs和ε
mp分别代表近、远距离功率衰减系数,
不失一般性,ε
fs=10pJ·bit
-1·m
-2、ε
mp=0.0013pJ·bit
-1·m
-2。所以,根据上式可得d
0=87.71。为保证簇内节点连通,减小节点之间通信能耗,本发明将成员节点的通信半径r设置为
即以每比特E
Tx(35.36)能耗传输数据。
具体初始化过程如下:
第一步,网络的初始化。
步骤1)将100个多媒体节点随机均匀地分布在100m×100m的区域A内部,每个节点有唯一的编号(1,2,…,100)。根据节点的位置信息,将网络划分为16个相同大小的正方形区域Aij(i=1,2,3,4;j=1,2,3,4),各个区域Aij成为一个簇。
步骤2)每个多媒体节点首先以通信半径r广播普通节点消息CM(Ci,IDi,Ei,Li(x,y)(i=1,2,...,N),该消息包含节点所在簇的编号Ci,节点标识IDi、节点剩余能量Ei和节点的位置坐标Li(x,y);
步骤3)节点所属簇的其它所有节点都是该节点的邻居,每个节点只接收同一 簇的邻居节点发送的普通节点消息并根据该消息更新其邻居信息表
邻居信息表记录着该节点的所有邻居节点的标识ID
i、剩余能量E
i和位置坐标L
i(x,y);
步骤4)只有当节点的剩余能量大于预先设定的能量阈值E
thres时才有机会参与簇内簇头节点的竞争,成为候选簇头节点。候选簇头节点根据各自更新后的邻居信息表,得到自己到所有邻居节点距离的平方和,即
根据公式
(其中E
0表示节点的初始能量,E
i表示节点的剩余能量,α、β的取值根据簇内节点位置的分布及能量均衡的程度,具体的值将通过多次实验最优选择)计算出竞争权值CW
i,然后以通信半径r广播竞争簇头消息CCL(C
i,ID
i,CW
i),该消息包含节点所在簇的编号C
i,节点标识ID
i和竞争权值CW
i;
步骤5)当节点接收到簇内其他节点发送的竞争簇头消息时,将竞争簇头消息中的节点标识ID
j(j=1,2,...N,j≠i)放入到候选簇头表
中,若节点本身也发送了竞争簇头消息则将自己ID
i放入候选簇头表中;
步骤6)等待时间T,T的时间应该足够长以便能收到簇内其他候选簇头节点发送的竞争簇头消息。T的计算如式
所示,其中,k表示一个消息数据包的比特数,B表示信道带宽,m
max表示一个簇内最多的节点数;
步骤7)T时间后,若候选簇头表
中只包含自身ID
i,表明该节点所在簇内没有其他节点竞争簇头,则该节点以通信半径r广播竞争成功消息CL(C
i,ID
i),该消息中包含节点所在簇的编号C
i以及节点标识ID
i,并向Sink发送簇头消息CS(C
i,ID
i,L
i(x,y)),该消息包含节点所在簇的编号C
i、节点标识ID
i和节点的位置坐标L
i(x,y),然后转步骤9)。否则,转步骤8);
步骤8)在候选簇头表中选出竞争权值CWi最高的候选簇头节点成为簇头(竞争权值相同时,比较节点的剩余能量,剩余能量较多的节点优先成为簇头),以通信半径r广播竞争成功消息CL(Ci,IDi),同时发送簇头消息CS(Ci,IDi,Li(x,y))给Sink;
步骤9)其他候选簇头节点收到当选簇头发出的竞争成功消息后,放弃竞争,并向簇头节点发送加入簇消息JC(Ci,IDi),该消息包含节点所在簇的编号Ci和节点标识IDi,从而成为该簇的成员节点;
步骤10)Sink在收到m个簇头节点发送的簇头消息后,向它们发送构建簇间融合树的消息;
步骤11)根据已知的节点位置信息,Sink选择距离它最近的簇头节点(若有超过一个簇头节点到Sink的距离一样,则选择节点剩余能量多的节点)成为它的子节 点,并发送父节点消息Father(0)给子节点,其中0是Sink的编号,这样就构建了簇间融合树的第一条主干;
步骤12)再从剩余的簇头节点中选择距离该融合树最近的簇头节点(若距离相同则选择剩余能量多的节点)连接到融合树上,并向其发送父节点消息Father(Ci,IDi),建立下一条枝干;
步骤13)重复步骤12)直到所有的簇头节点都连接到簇间融合树上,则数据融合树建立完成。
第二步,数据融合的过程。
步骤14)Sink向网内所有节点广播信息采集的消息;
步骤15)网内成员节点收到信息采集消息后,开始采集音频、视频等多媒体信息并一跳传输给所在簇的簇头节点;
步骤16)簇头节点将成员节点发送来的音频、视频等多媒体信息依据的不同属性分别进行记录,根据该记录可以定义出一张节点属性表:
节点ID |
属性A1 |
属性A2 |
属性A3 |
... |
属性An |
i |
ai1 |
ai2 |
ai3 |
... |
ain |
j |
aj1 |
aj2 |
aj3 |
... |
ajn |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
其中属性A1,A2,...,An表示属性名称,ai1,ai2,...,ain表示属性值。把在相同属性下具有相同属性值的节点称为具有不可分辨关系的节点;
步骤17)将属性中对观察结果起决策作用的属性记作决策属性(假设Ak),其余属性记作条件属性(假设有m个节点,n个属性)。根据可辨识矩阵的定义建立出一个m×n的可辨识矩阵
步骤18)化简可辨识矩阵。将可辨识矩阵中包含单属性元素的集合取出放入核属性集合中,并将这些元素的值修改为0。当C
D(i,j)≠0,且C
D(i,j)≠φ时,建立相应的析取逻辑表达式T
ij,
将所有析取逻辑表达式进行合取运算,得到一个合取范式T,
对T进行转换,最终得到析取范式T′,
再将核属性加到各合取项中,则析取范式中每个合取项对应一个属性约简的结果;
步骤19)各个簇头节点将约简后的信息传输给上一层簇头父节点;
步骤20)上一层簇头父节点重复步骤16)-20)的方法对信息进行约简,直至最终将数据传输给Sink;
步骤21)Sink将收到的信息存储起来以供观察者对观察的事件作出相应的判断。