在CSDN上共享了7个经典定位算法的MATLAB代码

来源:互联网 发布:windows一直检查更新 编辑:程序博客网 时间:2024/05/29 19:05
CSDN没分了,共享以前写过的WSN节点定位算法的matlab代码(不是整理别人的,都是自己写的,下载需要10分:)


算法包括:  RSSI, Centroid, APIT, DV-hop, Amorphous, Bounding Box, Grid Scan, MDS-MAP

另外还包括:
A. 场景布置,可设置: 1. 节点分布区域: 正方形 C型; 2. 节点分布方式: 随机 规则(可设置规则分布的布置误差);
                            3. 锚节点比例; 4. GPS误差;
B. 可选择通信模型:  1.规则的通信模型(通信区域是一个标准的圆形); 2. DOI Model; 3. Logarithmic Attenuation Model;
                            可研究算法在不规则通信模型下的性能;
C. 附3个画图脚本:节点分布图,节点邻居关系图(拓扑图),节点定位误差图

运行脚本如下:
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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;    %如要运行DV-hop,就将前面的'%'去掉
%cd Amorphous;Amorphous;
%cd APIT;APIT(0.1*comm_r);
%dist_available=false;cd 'MDS-MAP';MDS_MAP(dist_available);   
cd ..
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%~~~~~~~~~~~~~~~~~~~~~~~~~~~计算定位误差,画定位误差图~~~~~~~~~~~~~~~~~~~~~~~
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cd 'Localization Error'
calculate_localization_error;
cd ..;
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~





目录结构说明:


CSDN下载地址:http://download.csdn.net/source/2798949
原创粉丝点击