传感器网络实验之基于COMPOW协议的网络连通性和覆盖率

Posted by 周宝航 on May 1, 2018

实验要求

针对生成的随机网络,根据COMPOW协议确定保证网络连通的能量等级。同时根据相应的能量等级,生成网络的覆盖拓扑图,并计算网络覆盖率。

方法描述

  • 在本实验中,我们假定能量等级与通信半径相同。预先设定五个能量等级,对应着五个不同的通信半径。然后根据网络连通判定算法,找到网络连通的最小能量等级。
  • 首先,随机生成无线网络,即生成一定数目的网络节点,其位置互不相同,保存为矩阵形式。然后,从最低的能量等级开始进行网络连通的判定。当网络连通时,我们记录下此时的能量等级,即为满足网络连通的最小能量等级。接着,我们在该能量等级下,得到网络覆盖的拓扑结构图。最后,根据二值模型,将区域划分为100x100的网格;计算被传感器覆盖的网格数目,统计覆盖数目/总网格数,即可得到网络覆盖率。

关键算法

  • 网络能量等级选择算法 真正的COMPOW协议是要计算网络的最大连通度,即网络的最大跳数。不过,老师给放宽了要求,只需要计算出网络全连通时的能量等级就可以。

  • 网络覆盖率算法 在本实验的第二部分中,我们已经选定了能量等级,得到了此刻的节点通信半径为R。然后,我们按照二值模型,将区域划分为100*100的网格,计算网络覆盖率。

实验结果

  • 第一部分中,我们最后得到一张网络的拓扑图。网络规模为20个节点,且最终选定的能量等级为3级。此时,网络既满足连通的要求,又保持能量等级最低。 Alt text

  • 根据二值模型,我们计算出整个网络在COMPOW协议下的网络覆盖率。由下图可以看出,网络几乎覆盖了整个区域。在图的上方为我们计算得到的网络覆盖率为:99.24%。 Alt text

实验结论:)

  • 在本次实验中,我们对基于COMPOW协议的随机网络进行了探究。通过网络能量等级的选择算法,我们可以控制整个网络在满足通信要求的前提下,使得网络的能量消耗最低。同时,我们在选定了能量等级后,画出了网络的拓扑结构,以及包括通信范围的部分。我们可以通过该拓扑图,观察出在当前能量等级的情况下,网络对整个单位区域的覆盖情况。为了更加精确的了解网络覆盖情况,我们使用二值模型,计算网络的覆盖率。最终,对于网络的覆盖情况有着定量认识。

  • 进行对COMPOW协议的实验研究,对于指导我们在实际进行传感器网络能量控制有着重要的意义。现实中,我们想要做到既保证网络的连通性能最好,同时还要考虑网络的能量消耗问题。对于此,COMPOW协议有着很好的诠释。基于该协议的传感器网络能够很好的做到满足通信要求的同时,控制整个网络的能量消耗最低。

Matlab代码下载