资源简介
PSOt为PSO的工具箱,该工具箱将PSO算法的核心部分封装起来,提供给用户的为算法的可调参数,用户只需要定义好自己需要优化的函数(计算最小值或者最大值),并设置好函数自变量的取值范围、每步迭代允许的最大变化量(称为最大速度,Max_V)等,即可自行优化。
代码片段和文件信息
% demopsobehavior.m
% demo of the pso.m function
% the pso tries to find the minimum of the f6 function a standard
% benchmark
%
% on the plots blue is current position green is Pbest and red is Gbest
% Brian Birge
% Rev 3.0
% 2/27/06
clear all
close all
clc
help demopsobehavior
warning off
functnames = {‘ackley‘‘alpine‘‘DeJong_f2‘‘DeJong_f3‘‘DeJong_f4‘...
‘Foxhole‘‘Griewank‘‘NDparabola‘...
‘Rastrigin‘‘Rosenbrock‘‘f6‘‘f6mod‘‘tripod‘...
‘f6_bubbles_dyn‘‘f6_linear_dyn‘‘f6_spiral_dyn‘};
disp(‘Static test functions minima don‘‘t change w.r.t. time/iteration:‘);
disp(‘ 1) Ackley‘);
disp(‘ 2) Alpine‘);
disp(‘ 3) DeJong_f2‘);
disp(‘ 4) DeJong_f3‘);
disp(‘ 5) DeJong_f4‘);
disp(‘ 6) Foxhole‘);
disp(‘ 7) Griewank‘);
disp(‘ 8) NDparabola (for this demo N = 2)‘);
disp(‘ 9) Rastrigin‘);
disp(‘10) Rosenbrock‘);
disp(‘11) Schaffer f6‘);
disp(‘12) Schaffer f6 modified (5 f6 functions translated from each other)‘);
disp(‘13) Tripod‘);
disp(‘ ‘);
disp(‘Dynamic test functions minima/environment evolves over time/iteration:‘);
disp(‘14) f6_bubbles_dyn‘);
disp(‘15) f6_linear_dyn‘);
disp(‘16) f6_spiral_dyn‘);
functchc=input(‘Choose test function ? ‘);
functname = functnames{functchc};
disp(‘ ‘);
disp(‘1) Intense graphics shows error topology and surfing particles‘);
disp(‘2) Default PSO graphing shows error trend and particle dynamics‘);
disp(‘3) no plot only final output shown fastest‘);
plotfcn=input(‘Choose plotting function ? ‘);
if plotfcn == 1
plotfcn = ‘goplotpso4demo‘;
shw = 1; % how often to update display
elseif plotfcn == 2
plotfcn = ‘goplotpso‘;
shw = 1; % how often to update display
else
plotfcn = ‘goplotpso‘;
shw = 0; % how often to update display
end
% set flag for ‘dynamic function on‘ only used at very end for tracking plots
dyn_on = 0;
if functchc==15 | functchc == 16 | functchc == 17
dyn_on = 1;
end
%xrng=input(‘Input search range for X e.g. [-1010] ? ‘);
%yrng=input(‘Input search range for Y ? ‘);
xrng=[-3030];
yrng=[-4040];
disp(‘ ‘);
% if =0 then we look for minimum =1 then max
disp(‘0) Minimize‘)
disp(‘1) Maximize‘)
minmax=input(‘Choose search goal ?‘);
% minmax=0;
disp(‘ ‘);
mvden = input(‘Max velocity divisor (2 is a good choice) ? ‘);
disp(‘ ‘);
ps = input(‘How many particles (24 - 30 is common)? ‘);
disp(‘ ‘);
disp(‘0) Common PSO - with inertia‘);
disp(‘1) Trelea model 1‘);
disp(‘2) Trelea model 2‘);
disp(‘3) Clerc Type 1“ - with constriction‘);
modl = input(‘Choose PSO model ? ‘);
% note: if errgoal=NaN then unconstrained min or max is performed
if minmax==1
% errgoal=0.97643183; % max for f6 function (close enough for termination)
errgoal=NaN;
else
% errgoal=0; % min
errgoal=NaN;
end
minx = xrng(1);
maxx = xrng(2);
miny = yrng(1);
maxy = yrng(2);
%----
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-02-08 17:37 粒子群工具箱 - PSOt\
文件 4862 2006-03-06 10:54 粒子群工具箱 - PSOt\DemoPSOBehavior.m
文件 102400 2011-12-12 13:41 粒子群工具箱 - PSOt\PSO工具箱使用简介.doc
文件 4387 2006-03-17 11:44 粒子群工具箱 - PSOt\ReadME.txt
文件 5788 2006-03-14 10:42 粒子群工具箱 - PSOt\goplotpso.m
文件 4899 2006-03-06 08:46 粒子群工具箱 - PSOt\goplotpso4demo.m
目录 0 2012-05-26 21:16 粒子群工具箱 - PSOt\hiddenutils\
文件 172 2004-04-27 15:05 粒子群工具箱 - PSOt\hiddenutils\forcecol.m
文件 181 2004-04-27 15:05 粒子群工具箱 - PSOt\hiddenutils\forcerow.m
文件 749 2004-08-23 15:41 粒子群工具箱 - PSOt\hiddenutils\linear_dyn.m
文件 4588 2006-03-17 10:52 粒子群工具箱 - PSOt\hiddenutils\normmat.m
文件 841 2004-08-27 15:51 粒子群工具箱 - PSOt\hiddenutils\spiral_dyn.m
文件 1332 2009-06-25 16:08 粒子群工具箱 - PSOt\license.txt
目录 0 2012-05-26 21:16 粒子群工具箱 - PSOt\nnet\
文件 1857 2006-03-17 11:32 粒子群工具箱 - PSOt\nnet\demoPSOnet.m
文件 7808 2006-03-14 22:26 粒子群工具箱 - PSOt\nnet\goplotpso4net.m
文件 836 2006-03-10 22:24 粒子群工具箱 - PSOt\nnet\pso_neteval.m
文件 11664 2006-03-17 11:01 粒子群工具箱 - PSOt\nnet\trainpso.m
文件 22223 2006-03-17 10:42 粒子群工具箱 - PSOt\pso_Trelea_vectorized.m
目录 0 2012-05-26 21:16 粒子群工具箱 - PSOt\testfunctions\
文件 732 2004-08-13 13:06 粒子群工具箱 - PSOt\testfunctions\DeJong_f2.m
文件 506 2004-08-19 15:39 粒子群工具箱 - PSOt\testfunctions\DeJong_f3.m
文件 1004 2004-08-13 13:17 粒子群工具箱 - PSOt\testfunctions\DeJong_f4.m
文件 1278 2004-08-13 15:48 粒子群工具箱 - PSOt\testfunctions\Foxhole.m
文件 1214 2004-08-13 11:02 粒子群工具箱 - PSOt\testfunctions\Griewank.m
文件 663 2004-08-19 15:26 粒子群工具箱 - PSOt\testfunctions\NDparabola.m
文件 521 2004-08-19 15:26 粒子群工具箱 - PSOt\testfunctions\Rastrigin.m
文件 723 2004-08-19 15:24 粒子群工具箱 - PSOt\testfunctions\Rosenbrock.m
文件 871 2004-08-23 13:42 粒子群工具箱 - PSOt\testfunctions\ackley.m
文件 639 2004-08-19 15:40 粒子群工具箱 - PSOt\testfunctions\alpine.m
文件 314 2005-06-27 13:02 粒子群工具箱 - PSOt\testfunctions\f6.m
............此处省略6个文件信息
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论