【WSN】基于杂草算法结合花授粉算法实现无线传感器网络wsn节点部署优化matlab源码

208 阅读2分钟

1 算法介绍

针对花朵授粉算法易陷入局部极值,收敛速度慢的不足,提出一种具有入侵杂草策略的花朵授粉算法.该算法通过入侵杂草的繁殖,空间扩散和竞争策略,动态生成种群,增加种群的多样性和有效性,使算法能有效地避免陷入局部最优,增强全局寻优能力,提高收敛速度.通过8个CEC2005benchmark测试函数进行测试比较,仿真结果表明,改进算法的全局寻优能力明显优于基本的花朵授粉算法,差分进化算法和蝙蝠算法,其收敛精度,收敛速度,鲁棒性均较对比算法有较大提高.

img

img

img

img

2 部分代码

% IWO
% CPSO
% IIWO
%% 清空环境变量
clear
clc
​
%% 网络参数
L = 20;                         % 区域边长
V = 24;                         % 节点个数
Rs = 2.5;                           % 感知半径
Rc = 5;                        % 通信半径
Re = 0.05;                     % 感知误差
data = 1;                      % 离散粒度
%% 基本参数
N = 30;                    % 种群规模
dim = 2*V;               % 维数
maxgen = 300;         % 最大迭代次数
ub = L;
lb = 0;
​
%% 初始化种群位置
X = rand(N, dim).*(ub-lb)+lb;
for i = 1:N
    fitness(i) = fun(X(i, :), L, Rs, Re, data);
end
​
%% 传入函数变量
[bestvalue_IWO, gbest_IWO, Curve_IWO] = IWO(N, maxgen, Rs, Re, L, data, X, fitness, lb, ub, dim);
[bestvalue_CPSO, gbest_CPSO, Curve_CPSO] = CPSO(N, maxgen, Rs, Re, L, data, X, fitness, lb, ub, dim);
[bestvalue_IIWO, gbest_IIWO, Curve_IIWO] = IIWO(N, maxgen, Rs, Re, L, data, X, fitness, lb, ub, dim);
​
%% 绘图比较
figure;
t = 1:maxgen;
plot(t, Curve_IWO, 'ro-', t, Curve_CPSO, 'kx-', t, Curve_IIWO, 'bp-',...
    'linewidth', 2, 'linewidth', 1.5, 'MarkerSize',7, 'MarkerIndices', 1:20:maxgen);
legend('IWO', 'CPSO', 'IIWO');
xlabel '迭代次数';
ylabel '覆盖率';

3 仿真结果

img

img

img

img

img

无线传感器网络节点分布优化问题是 WSN 研究的关键性问题之一,也是通信领域研究的热点。 针对 WSN 节点分布优化问题,提出一种基于改进杂 草算法的节点分布优化方案。IIWO 算法利用立方映 射混沌算子改进了杂草初始位置的更新策略; 采用高斯变异算子增加了种群的多样性。

4 参考文献

[1]肖辉辉, 段艳明. 具有入侵杂草策略的花朵授粉算法[J]. 系统仿真学报, 2017, 029(002):264-272.

### 博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

**部分理论引用网络文献,若有侵权联系博主删除。**