clear
clc
n = 50; % 粒子群规模
bird_setp =50; % 最大迭代次数
dim = 3; % 维数
c2 =2; % 加速常数1
c1 =2; % 加速常数2
w =0.9; % 惯性权重
fitness=0*ones(n,bird_setp);
% 初始化粒子群
R1 = rand(dim, n);
R2 = rand(dim, n);
current_fitness =0*ones(n,1);
% 初始化群体位置和速度
current_position = 10*(rand(dim, n)-.5);
velocity = .3*randn(dim, n) ;
local_best_position = current_position ;
% 个体评估
for i = 1:n
current_fitness(i) = tracklsq(current_position(:,i));
end
local_best_fitness = current_fitness ;
[global_best_fitness,g] = min(local_best_fitness) ;
for i=1:n
globl_best_position(:,i) = local_best_position(:,g) ;
end
% 速度更新
velocity = w *velocity + c1*(R1.*(local_best_position-current_position)) + c2*(R2.*(globl_best_position-current_position));
% 群体更新
current_position = current_position + velocity ;
% 群体跟新评估
%% 主体循环,迭代寻优
iter = 0 ;
while ( iter < bird_setp )
iter = iter + 1;
for i = 1:n,
current_fitness(i) = tracklsq(current_position(:,i)) ;
end
for i = 1 : n
if current_fitness(i) < local_best_fitness(i)
local_best_fitness(i) = current_fitness(i);
local_best_position(:,i) = current_position(:,i) ;
end
end
[current_global_best_fitness,g] = min(local_best_fitness);
if current_global_best_fitness < global_best_fitness
global_best_fitness = current_global_best_fitness;
for i=1:n
globl_best_position(:,i) = local_best_position(:,g);
end
end
velocity = w *velocity + c1*(R1.*(local_best_position-current_position)) + c2*(R2.*(globl_best_position-current_position));
current_position = current_position + velocity;
sprintf('The value of interation iter %3.0f ', iter );
end
% 结束
xx=fitness(:,50);
[Y,I] = min(xx);
current_position(:,I)
%
粒子群算法优化pid源码 matlab仿真.rar
需积分: 50 25 浏览量
2019-02-01
09:25:08
上传
评论 19
收藏 30KB RAR 举报
学长松
- 粉丝: 4
- 资源: 3
最新资源
- MQTT协议发温湿度到阿里云平台支持下发控制LED灯与继电器对接阿里云APP
- STM32F103ZET6+OV2640+TF卡存储
- 操作系统考试要点最新版本.doc
- 操作系统试题B卷.doc
- 移动机器人自主路径规划之RRT算法MATLAB实现代码
- Python使用 LSTM循环神经网络预测风力发电厂中风机产生的功率项目源码+数据集.zip
- 深入探究文件I/O-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板
- MQTT协议发温湿度电压数据到ONENET支持下发控制LED灯与继电器(新平台)
- 平抑风电波动的电-氢混合储能容量优化配置(注释完全,可直接运行)(文档加Matlab源码)
- Gigabyte.RX560.4g 1750mhz bios GAMING OC
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈