目录
💥1 概述
📚2 运行结果
🎉3 参考文献
👨💻4 Matlab代码
💥1 概述
知道通信网络中节点的地理位置通常是有用的,但在每个节点上添加GPS接收器或其他复杂的传感器可能会很昂贵。
本文提出了一种算法,该算法使用连接信息——谁在谁的通信范围内——来推导网络中节点的位置。该方法可以利用附加信息,例如邻居之间的估计距离或某些锚节点的已知位置,如果可用的话。该算法基于多维缩放,这是一种数据分析技术,对于n个节点的网络需要n3时间。通过仿真研究,本文证明了该算法比以前的方案对测量误差更具鲁棒性,尤其是当节点在整个平面上相对均匀地定位时。此外,与以前的方法相比,它可以使用更少的锚节点来实现可比较的结果,甚至在没有锚节点可用时产生相对坐标。
📚2 运行结果
主函数部分代码:
clear; clc; close all; %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~布置节点,画节点分布图~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cd 'Deploy Nodes' square_random(1000,300,0.2);%布置节点 GPS误差为0 %square_random(1000,300,0.2,30) %GPS误差为30m %C_random([1000,300,300,700],240,0.2); %square_regular(1000,100,0.1,0.2); %C_regular([1000,300,300,700],100,0.1,0.2); Distribution_Of_WSN;%画节点分布图 cd ..; %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ % ~~~~~~~~~~~~ 给定通信半径,选择通信模型,计算邻居关系,画邻居关系图~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cd 'Topology Of WSN'; comm_r=200;%给定通信半径 %~~~~~~~~~~~~~~~~~~选择通信模型~~~~~~~~~~~~~~~~~ model='Regular Model'; %model='Logarithmic Attenuation Model'; %disp('时间可能较长...');model='DOI Model';DOI=0.015; %disp('时间可能较长...');model='RIM Model';DOI=0.01; %~~~~~~~~~~~~~~~~~~计算邻居关系~~~~~~~~~~~~~~~~~ anchor_comm_r=1; %anchor_comm_r参数只在APIT中更改,其他的算法统一设置为1。 %它表示锚节点通信半径是未知节点通信半斤的倍数。 %APIT针对的WSN是异构的,锚节点通信半径比未知节点的大。 try calculate_neighbor(comm_r,anchor_comm_r,model,DOI); catch calculate_neighbor(comm_r,anchor_comm_r,model); end %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Topology_Of_WSN;%画邻居关系图 cd ..; %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~选择定位算法~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %cd Centroid;Centroid(20,0.9);%Centroid_second(20,0.9);%Centroid_third(... %cd 'Bounding Box';Bounding_Box;%Bounding_Box_second;%Bounding_Box_third; %cd 'Grid Scan';Grid_Scan(0.1*comm_r);%Grid_scan_second(... %cd RSSI;RSSI;%RSSI_second;%RSSI_third; %~~~~~~~~~~~~~~~~~~~~~~~~ %cd 'DV-hop';DV_hop; %cd Amorphous;Amorphous; %cd APIT;APIT(0.1*comm_r); dist_available=true;cd 'MDS-MAP';MDS_MAP(dist_available); cd .. %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~~~~~计算定位误差,画定位误差图~~~~~~~~~~~~~~~~~~~~~~~ %~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cd 'Localization Error' calculate_localization_error; cd ..;
🎉3 参考文献
[1]刘湘雯,石云平,于宏毅,胡捍英.一种本地化WSN寿命最大化路由算法[J].华中科技大学学报(自然科学版),2009,37(12):25-28.
部分理论引用网络文献,若有侵权联系博主删除。