目录
作业题目
1、Topology selection
Figure 1 中所示的拓扑结构是单跳星型拓扑结构,Figure 2 中显示的一种更加适合的拓扑结构。其中显示了各节点之间数据包的成功传送的概率,且都是由源节点传送到网关节点。
在单跳星型拓扑结构网络中:A节点将数据包成功传送到D的概率为0.95;B节点将数据包成功传送到D的概率为0.99;而C节点将数据包成功传送到D的概率则只有0.3。
相比较之下,更加适合的拓扑结构中,其为一种网状多跳拓扑结构,可发现:A节点将数据包成功传送到D的概率为0.95;B节点将数据包成功传送到D的概率为0.99;而C节点通过先将数据包成功传送到A,再由A成功传送给D,其概率可以达到0.9025,从而大大地增加了成功传送的概率。
2、单跳能耗不一定大于多跳能耗,看具体的参数而定。
由题中给出的通信能耗公式,可以分别得出单跳与多跳相对应的能耗,体现如下:
单跳
多跳
单跳能耗大于多跳能耗
多跳能耗大于单跳能耗
单跳和多跳的能耗一样大
3、BECA
Sleep:010s,1619s,22+12k~22+12k+10s(k=0,1,…,n)
Listen:1011s,22+12k+1022+12k+12s(k=0,1,…,n)
Active:1116s,1922s
其中n为正整数。
具体情况如下图所示:
4、SPAN
其中能成为Coordinators的节点为A、B、E、F、I或者A、B、E、F、G,结果显示如下图所示。
5、Transitional region coefficient
根据
已知
In this case, the transitional region is 58.797 and the TR coefficient is 13.677.
实验一
实验目的
通过Matlab的仿真实验,探究无线传感器网络连通率与通信节点的半径以及个数的关系。
(1)在不同节点数目n的情况下,用Matlab拟合出连通率与通信半径r的关系曲线图。
(2)在不同的通信半径r情况下,用Matlab拟合出连通率与节点数量n的关系曲线图。
实验方法
在一块单位矩形区域内,随机布置n个通信节点,其通信半径为r,通过编写图的连通性判断算法来判断节点之间是否连通以及整个网络是否连通,进行1000次重复随机实验,从而得到传感器网络连通率与通信节点以及通信半径的关系,对于判断节点是否连通,这里采用Warshall算法,其中p矩阵是一个邻接矩阵,若p[i,j] = 0,则意味i和j两节点是不连通的,p[i,i] = 1则表示两节点是联通的。具体实验步骤如下流程图所示:
实验内容
1、判断无线传感器网络是否连通关键代码
(1)两两节点的判断
%判断两两节点是否连通
for i = 1:1:row
for j = 1:1:col
%使用sqrt计算出两节点之间的距离,与节点的通信半径进行比较
if(sqrt((X(i)-X(j))^2 + (Y(i)-Y(j))^2) < r)
p(i,j) = 1;
else
p(i,j) = 0;
end
end
end
(2)判断整个网络是否连通
%Warshall算法求运用邻接矩阵求图中所有可能的通路(即可达矩阵)
for i = 1:1:col
for j = 1:1:row
if p(j,i)
for k = 1:1:col
%若此位置是1,此位置对应的列序号的行(即i)加到当前位置的行(即j)上
p(j,k) = p(j,k) + p(i,k);
end
end
end
end
%判断此次生成的随机网络是否连通
for i=1:1:row
for j=1:1:col
if ~p(i,j)
flag = false;
break;
end
end
end
2、 绘制在不同节点数目n的情况下,连通率与通信半径关系的曲线图关键代码
%不同的n值
for index=1:4
n= nodes(index);
%不同的r值
for r=0:0.01:1
%做1000次随机实验
count = 0;
for i=1:times
%X,Y在单位1的区间里分别产生n个随机数,对应
%着节点的横纵坐标
X = rand(n,1);
Y = rand(n,1);
if i == 3 && n==50 && r==0.35
graph = true;
else
graph = false;
end
if Connect(X,Y,r,graph)
count = count + 1;
end
end
rate = count/times;