【优化布局】基于麻雀算法求解无线传感器网络覆盖优化研究matlab源码

1 简介

为了有效提高无线传感器网络的节点覆盖率,。

2 部分代码

%_________________________________________________________________________%
% 基于麻雀优化的WNS覆盖优化算法,3D版             %
%_________________________________________________________________________%
clear all 
clc
rng('default');
%% 设定WNS覆盖参数,
%% 默认输入参数都是整数,如果想定义小数,请自行乘以系数变为整数再做转换。
%% 比如范围1*1,R=0.03可以转换为100*100,R=3;
%区域范围为AreaX*AreaY*AreaZ
AreaX = 100;
AreaY = 100;
AreaZ = 100;
N = 20 ;%覆盖节点数
R = 15;%通信半径

%% 设定麻雀优化参数
pop=30; % 种群数量
Max_iteration=30; %设定最大迭代次数
lb = ones(1,3*N);
ub = [AreaX.*ones(1,N),AreaY.*ones(1,N),AreaZ.*ones(1,N)];
dim = 3*N;%维度为3N,N个坐标点
fobj = @(X)fun(X,N,R,AreaX,AreaY,AreaZ);%适应度函数
[Best_pos,Best_score,SSA_curve]=SSA(pop,Max_iteration,lb,ub,dim,fobj); %开始优化

figure
SSA_curve = 1 - SSA_curve;%将未覆盖率转换未覆盖率。
plot(SSA_curve,'Color','r')
title('Objective space')
xlabel('迭代次数');
ylabel('覆盖率');
axis tight
grid on
box on
legend('SSA')
img =gcf;  %获取当前画图的句柄
print(img, '-dpng', '-r600', './img.png')         %即可得到对应格式和期望dpi的图像
display(['最终得到的最优覆盖率 : ', num2str(1 - Best_score)]);

%Coordinate代表覆盖的坐标点的存放
%CoordinateNumber 代表覆盖的坐标点的个数
[score,Coordinate,Best_pos,CoordinateNumber] = fun(Best_pos,N,R,AreaX,AreaY,AreaZ);

figure
plot3(Best_pos(1:N),Best_pos(N+1:2*N),Best_pos(2*N+1:3*N),'r.','MarkerSize',40);%绘制节点
hold on;
plot3(Coordinate(1:CoordinateNumber,1),Coordinate(1:CoordinateNumber,2),Coordinate(1:CoordinateNumber,3),'b.','MarkerSize',0.1);%绘制覆盖区域
hold off;
title('SSA-WSN最终结果')
grid on;
legend('WSN节点','覆盖区域')
img =gcf;  %获取当前画图的句柄
print(img, '-dpng', '-r600', './img1.png')         %即可得到对应格式和期望dpi的图像
       

3 仿真结果

4 参考文献

[1]王振东, 汪嘉宝, 李大海. 一种增强型麻雀搜索算法的无线传感器网络覆盖优化研究[J]. 传感技术学报, 34(6):11.

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab科研辅导帮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值