资源简介

Tunning of PID controller using Particle Swarm Optimization(基于粒子群优化的PID控制器整定)包括完整的matlab程序以及simulink仿真。

资源截图

代码片段和文件信息

%% 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

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      14694  2008-06-11 20:03  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\html\PSO.html

     文件       2679  2008-06-11 20:03  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\html\PSO.png

     文件       4307  2008-06-11 19:59  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\html\PSO_01.png

     文件       4671  2008-06-11 20:03  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\html\PSO_02.png

    ..A.SH.      9728  2008-06-11 20:36  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\html\Thumbs.db

     文件      29696  2008-01-18 21:25  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\optsim1.mdl

     文件       3930  2008-06-11 19:59  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\PSO.asv

     文件       3936  2008-06-11 19:59  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\PSO.m

     文件        723  2008-06-11 19:38  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\tracklsq.m

     目录          0  2008-06-11 20:03  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO\html

     目录          0  2008-06-11 19:47  使用PSO算法进行PID控制器的整定(matlab仿真)\tunning PID by PSO

     目录          0  2020-05-28 16:26  使用PSO算法进行PID控制器的整定(matlab仿真)

----------- ---------  ---------- -----  ----

                74364                    12


评论

共有 条评论