一种无线传感器网络中基于功率需求的分簇方法与流程

文档序号:19322526发布日期:2019-12-04 00:42阅读:336来源:国知局
一种无线传感器网络中基于功率需求的分簇方法与流程

本发明属于通信技术领域,具体涉及一种无线传感器网络中基于功率需求的分簇方法。



背景技术:

无线传感器网络(wsns)是由大量空间分布的具有计算和无线通信能力的传感器节点自组织构成的多跳网络。由于传感器节点自身能量和计算能力是有限的,因此,在wsns中的任何协议中,能量效率与实时性都是首要考虑因素。将传感器节点划分为簇,可以有效的提高网络的整体性能。因此,簇的划分是wsns中的关键问题。

分簇算法的基本思想根据不同的需求将整个网络划分成不同规模的簇,每个簇通过协作的方式融合数据处理任务。目前的分簇算法包括leach算法、hausdorff分簇算法、pegasis算法、gaf算法等。其中,leach算法是典型的分布式分簇算法,包括周期性的簇的构建与数据通信两个阶段。每一轮都需要进行簇重构,这将增加计算复杂度。pegasis算法更侧重于网络的能耗,但是数据延迟相当大且实时性也较差。hausdorff分簇算法和gaf算法是基于节点位置信息的分簇算法,由于分簇前需要计算节点的位置,会增加网络的计算开销。因此,设计一种计算复杂度低、实时性高的分簇方法是非常重要的。



技术实现要素:

为了解决现有技术中的不足,提出了一种无线传感器网络中基于功率需求的分簇方法,本发明通过设计一种用于通用实时无线传感器网络应用的根据节点间通信的功率需求的分簇方法,简化网络的计算复杂度,减少计算开销和时间,并均衡网络中每个簇的功率需求。

本发明所采用的技术方案如下:

s1,主传感器节点根据每个节点的路径复杂度形成相应的节点对;

s2,设置功率需求最大阈值和最小的阈值,将节点对中的节点对应的功率需求与所设置的阈值进行对比,根据比较的结果得到每组节点对相应的逻辑值;

s3,对每组节点对中节点的逻辑值进行二元假设,通过“或”门生成节点对的逻辑值,并将具有相同逻辑值的节点对形成簇;

进一步,所述s1中形成节点对的方法为:

s1.1,在特定的区域内随机分配n个节点s={s1,s2,...,sn},主传感器节点根据每个节点的能量以及区域内每个节点与主传感器节点之间的通信距离得到每个节点的路径复杂度c={c1,c2,...,cn},根据路径复杂度c得到每个节点相应的功率需求p={p1,p2,...,pn};复杂度的值与功率需求成正相关,复杂度的值越大,功率需求则越大;复杂度的值越小,功率需求则越小

s1.2,将每个节点的路径复杂度c={c1,c2,...,cn}按照递减的顺序排列,将路径复杂度的最大值与最小值对应的节点形成节点对,依次获得若干组节点对。

进一步,若节点个数n为奇数时,则将排在位的节点加入所形成的第个节点对中;

进一步,所述s2的过程为:

s2.1,设定功率需求的阈值分别为功率需求的最大值pmax和最小值pmin;

s2.2,将每组节点对中最大的功率需求与设定的最大阈值pmax比较,若高于最大阈值pmax,则其逻辑值为0,若低于最大阈值pmax,则其逻辑值为1;将每组节点对中最小的功率需求与设定的最小阈值pmin比较,若高于最小阈值pmin,则其逻辑值为1,若低于最小阈值pmin,则其逻辑值为0;

s2.3,最终获得的每个节点的逻辑值;以此类推获得所有组节点对中节点所对应的逻辑值。

进一步,所述s3利用“或”门生成节点对逻辑值的过程为:

s3.1,每一组节点对中的节点逻辑值有一个或者2个为1时,节点对的逻辑值为1;节点对中的逻辑值都为0时,节点对的逻辑值为0;进而获得所有节点对的逻辑值;

s3.2,将逻辑值相同的节点对划分到同一个簇中,实现对节点的分簇。

本发明的有益效果:

与现有技术相比,本发明的技术方案具有以下有益效果:

本发明所提出的分簇方法在对无线传感器网络进行分簇的过程中,无需计算节点的位置信息,进而简化了计算的复杂度,减少了计算时间和计算开销。

此外,本发明所提出的分簇方法是根据通信过程中节点的功率需求进行分簇,均衡了簇的功率需求。同时本发明的分簇方法可用于实时无线传感器网络,提高了实时性。

附图说明

图1为本发明分簇方法的实现流程图;

图2为本发明实施例中的拓扑结构模型图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。

结合如图1所示的本发明一种无线传感器网络中基于功率需求的分簇方法的流程图,本发明的方法如下所示:

s1,主传感器节点根据每个节点的路径复杂度形成相应的节点对。

s1.1,在特定的区域内随机分配固定数量的节点,如图2在本实施例中,设置节点数量为100,即有节点s={s1,s2,...,s100},那么从每个节点到主接收器的路径数为100。在t=0时刻,主传感器节点(ms)根据每个节点的能量以及区域内每个节点和主传感器节点之间的通信距离得到每个节点的路径复杂度c={c1,c2,...,c100},根据节点的路径复杂度得到出每个节点相应的功率需求p={p1,p2,...,p100},复杂度的值与功率需求成正相关,复杂度的值越大,功率需求则越大;复杂度的值越小,功率需求则越小。

s1.2,将每个节点的路径复杂度c={c1,c2,...,c100}按照递减的顺序排列,即c={cn,ca,...,cb,cm},1<a,b,m,n<100,依次将路径复杂度最大值与最小值形成节点对,也就是cn和cm对应的节点sn、sm将成为一组节点对,即{sn,sm};ca和cb对应的节点sa、sb为另一组节点对,即{sa,sb},以此类推,这里将形成50组节点对。同理,如果选取了101个节点,则将排位在第51个节点与其左右两个节点,构成一个具有3个节点的节点对。

s2,设置2个功率需求最大和最小的阈值,通过将节点对中的节点对应的路径复杂度与所设置的阈值进行对比,进而得到每组节点对相应的逻辑值;

s2.1,设定两个阀值来确定每一组节点对中节点的逻辑值,分别为功率需求的最大值pmax和最小值pmin。

s2.2,将上述50组节点对中路径复杂度最大值的功率需求与设定的最大阈值pmax比较,若高于最大阈值pmax,则其逻辑值为0,若低于最大阈值pmax,则其逻辑值为1;将将节点对中路径复杂度最小值的功率需求与设定的最小阈值pmin比较,若高于最小阈值pmin,则其逻辑值为1,若低于最小阈值pmin,则其逻辑值为0。

若以s1.2中的{sn,sm}这组节点对为例,其中在这组节点对中cn为路径复杂度最大值,cm为路径复杂度最小值,它们对应的功率需求分别为:{pn,pm}。下面将功率需求与阈值进行比较,得到节点对中的节点对应的逻辑值,写为:

在节点数n=101的情况下,最后一个节点对中的3个节点中,依旧是将功率需求最大的与最大阈值pmax比较,将功率需求最小的与最小阈值pmin比较,而第51个节点则因为功率需求位于3个节点的中间故不需要拿出来比较。

s2.3,最终获得的节点对{sn,sm}中节点sn、sm对应的逻辑值;以此类推获得50组节点对中节点对应的逻辑值;

s3,基于每对节点对中节点相应的逻辑值,进行二元假设,通过“或”门(or门)生成节点对的逻辑值,并将具有相同逻辑值的节点对形成簇,具体过程如下:

s3.1,对每一组节点对的逻辑值执行“或”门操作,即当节点对中的节点逻辑值有一个或者2个为1时,节点对的逻辑值为1;节点对中的逻辑值都为0时,节点对的逻辑值为0。

在这里仍以上述s1.2中的{sn,sm}这组节点对为例,其中在这组节点对中cn为路径复杂度最大值,cm为路径复杂度最小值,它们对应的功率需求分别为:{pn,pm}。

表1.基于“或”门的节点对逻辑值

根据表格中的规则,生成50组节点对的逻辑值。

s3.2,将逻辑值相同的节点对划分到同一个簇中。从而将网络划分为逻辑值为“0”和“1”的两个簇。

如图2所示,为本实施例的拓扑结构模型图,在特定的区域随机分配固定数量的节点,在某时刻瞬间,从每个节点到主传感器节点进行通信的路径数与网络中的节点数相同。主传感器节点决定了每条路径的复杂度。复杂度代表着节点与主传感器节点通信的功率需求。

以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。

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