资源简介
用matlab实现粒子群算法实现对PID参数的优化,实现对系统的控制
代码片段和文件信息
%% Tunning of PID controller using Particle Swarm Optimization
%
%
% Author: Wael Mansour (wael192@yahoo.com)
%
% MSc Student Electrical Enginering Dept
% Faculty of Engineering Cairo University Egypt
%
%% Initialization
clear
clc
n = 50; % Size of the swarm “ no of birds “
bird_setp =50; % Maximum number of “birds steps“
dim = 2; % Dimension of the problem
c2 =1.2; % PSO parameter C1
c1 = 0.12; % PSO parameter C2
w =0.9; % pso momentum or inertia
fitness=0*ones(nbird_setp);
%-----------------------------%
% initialize the parameter %
%-----------------------------%
R1 = rand(dim n);
R2 = rand(dim n);
current_fitness =0*ones(n1);
%------------------------------------------------%
% Initializing swarm and velocities and position %
%------------------------------------------------%
current_position = 10*(rand(dim n)-.5);
velocity = .3*randn(dim n) ;
local_best_position = current_position ;
%-------------------------------------------%
% Evaluate initial population %
%-------------------------------------------%
for i = 1:n
current_fitness(i) = tracklsq(current_position(:i));
end
local_best_fitness = current_fitness ;
[global_best_fitnessg] = min(local_best_fitness) ;
for i=1:n
globl_best_position(:i) = local_best_position(:g) ;
end
%-------------------%
% VELOCITY UPDATE %
%-------------------%
velocity = w *velocity + c1*(R1.*(local_best_position-current_position)) + c2*(R2.*(globl_best_position-current_position));
%------------------%
% SWARMUPDATE %
%------------------%
current_position = current_position + velocity ;
%------------------------%
% evaluate anew swarm %
%------------------------%
%% Main Loop
iter = 0 ; % Iterations抍ounter
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
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-20 10:18 PID by PSO\
文件 3930 2008-06-11 19:59 PID by PSO\PSO.asv
文件 3936 2008-06-11 19:59 PID by PSO\PSO.m
目录 0 2018-05-20 10:18 PID by PSO\html\
文件 14694 2008-06-11 20:03 PID by PSO\html\PSO.html
文件 2679 2008-06-11 20:03 PID by PSO\html\PSO.png
文件 4307 2008-06-11 19:59 PID by PSO\html\PSO_01.png
文件 4671 2008-06-11 20:03 PID by PSO\html\PSO_02.png
文件 9728 2008-06-11 20:36 PID by PSO\html\Thumbs.db
文件 29696 2008-01-18 21:25 PID by PSO\optsim1.mdl
文件 723 2008-06-11 19:38 PID by PSO\tracklsq.m
- 上一篇:中继选择协作算法
- 下一篇:matlab RGB 色彩空间模型
相关资源
- 永磁同步电机模糊PID控制-chap3_6.m
- matlab串级PID仿真模型-串级PID.rar
- Matlab模糊PID参数设定-work.rar
- 模糊PID控制器
- 2自由度机械臂PiD控制MATLAB仿真.zip
- 电机的PID控制
- pso工具箱 matlab
- S7-200称重程序
- 利用蚁群算法对PID参数自整定程序源
- RBF-PID整定
- 步进电机pid的matlab模型20个程序
- PID控制器-Smith预估补偿.rar
- 自编PID控制水箱液位
-
PID_Discrete_dcmotor离散PID仿真simuli
nk模 - matlab的M函数PID
- 模糊免疫PID
- 遗传算法优化pid控制器参数的matlab程
- pid控制的buck电路
- 智能优化算法及其MATLAB第2版-书中的
- 基于Matlab的模糊自适应PID控制器仿真
- MOPSO多目标优化程序MATLAB代码.zip
- 基于粒子群算法的优化模型matlab程序
- psot工具箱及使用说明.zip
- 基于Matlab2018b的SimMechanics工具箱建立的
- 基于神经网络的自整定PID程序MATLAB
- 串级PID仿真
- mcgs 嵌入版PID 脚本
- matlab 2D椭圆和3D椭球拟合
- 灰狼算法GWO和粒子群算法PSO的matlab源
- PSO_GD.m粒子群求解多目标优化
评论
共有 条评论