基于容忍覆盖区域的无线传感器网络节点调度算法密集部署,节点全部工作,导致采集冗余,通信冲突等问题;所以采用节点调度,使满足覆盖冗余节点轮流进入休眠状态。问题:1.依赖于节点精确位置判定是否为完全覆盖冗余节点的调度算法,节点定位会浪费能量;2.不依赖于节点位置信息的方法:A.随机调度:导致出现覆盖盲点;B.借助于节点间距离,邻居节点个数等信息,判定覆盖冗余的程度,会出现“不均等休眠”的问题;不均等休眠问题:监测区域中所有节点采用相同的覆盖冗余判别方法,造成处于边界区域的节点很难达到休眠条件(中央角之和达到360度),一直处于活跃状态,最后能量耗尽而死亡,进而引起死亡节点向监测区域中心扩散。由于是基于节点位置信息无关的节点调度算法,存在问题:如何判断哪些节点是处于监测区域边界上的节点。网络模型监测区域是半径为R的圆形区域;节点的通信半径是感知半径的2倍;节点的感知半径为r,感知范围为半径为r的圆。L为节点在监测区域内坐标范围:当0≤L≤R-r时,节点不在监测区域的边界区域范围;当R-r≤L≤R时,节点在监测区域的边界范围。节点的容忍覆盖区域定义:22'222RrRrrECRrClldlRR证明如下:当R-r≤L≤R时节点i对监测区域的覆盖面积为:2Clr当0≤L≤R-r时节点i对监测区域的覆盖面积为:'ClCl其中:222222'22arccosarccos2212lrRlrRClrRlrlRlrRlrRlrRlrR两会期间微博成为代表委员、政协委员“新宠”'2220022'222222RRrRrRrRRrlllECCldlCldlCldlRRRrRrClldlRR基于冗余覆盖区域的节点调度算法采用分轮的方法进行调度:每一轮分为三个阶段:1.邻居发现阶段2.覆盖冗余判别阶段3.节点调度阶段邻居发现阶段各节点在其通信范围之内通过广播邻居发现消息获得其邻居节点信息(包括距离和邻居节点个数)。对于任意一个节点i,其邻居节点N(i)定义如下:,2,,NijSdijriSji覆盖冗余判别阶段节点i通过邻居节点个数和距离等信息,得到节点i的感知区域被邻居节点所覆盖的面积iB为解决“非均等休眠问题”,采用容忍覆盖区域对节点进行覆盖冗余判别,即:/irBECThreshold其中,其中,Threshold表示满足网络应用的节点覆盖冗余的门限值;节点调度阶段节点的状态有三种:活动状态,预休眠状态和休眠状态假设网络起始运行时,所有节点都处于活动状态,算法如下:步骤1:若当前节点是活动节点,如果有数据,则进行数据包处理;如果没数据,进入步骤2;步骤2:用覆盖冗余判别阶段的判别方法,判别该节点是否是覆盖冗余节点;步骤3:若当前节点不是覆盖冗余节点,返回步骤1;步骤4:若当前节点是覆盖冗余节点,发送预休眠消息给邻居节点,进入预休眠状态,并启动延迟计时器backoffT步骤5:侦听消息。如果在backoffT时间内收到相邻节点的预休眠包,返回步骤1;如果未收到预休眠包,节点进入休眠状态。步骤6:休眠时间sT结束,开始新一轮调度,返回步骤1.谢谢!