• 大小: 5KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-17
  • 语言: Matlab
  • 标签: 未分类  

资源简介

matlab开发-分步序达尔文粒子群优化。fdpso的matlab函数(分数阶达尔文粒子群优化)

资源截图

代码片段和文件信息

function [xbestfitnesstime] = FDPSO(funcxminxmaxtypepopulationiterations)

% fdpso - MatLab function for FDPSO
% Fractional Order Darwinian Particle Swarm Optimization
% Limited to optimization problems of nine variables but can easily be extended
% many more variables.
%
% xbest = fdpso(func)
% xbest - solution of the optimization problem. The number of columns
% depends on the input func. size(func2)=number of xi variables
% func - string containing a mathematic expression. Variables are defined
% as xi. For instance func=‘2*x1+3*x2‘ means that it is an optimization problem of
% two variables.
%
% [xbestfit] = fdpso(func)
% fit - returns the optimized value of func using the xbest solution.
%
% [xbestfit] = fdpso(funcxmin)
% xmin - minimum value of xi. size(xmin2)=number of xi variables. Default
% -100.
%
% [xbestfit] = fdpso(funcxminxmax)
% xmax - maximum value of xi. size(xmax2)=number of xi variables. Default
% 100.
%
% [xbestfit] = fdpso(funcxminxmaxtype)
% type - minimization ‘min‘ or maximization ‘max‘ of the problem. Default
% ‘min‘.
%
% [xbestfit] = fdpso(funcxminxmaxtypepopulation)
% population - number of the swarm population. Default 30.
%
% [xbestfit] = fdpso(funcxminxmaxtypepopulationiterations)
% iterations - number of iterations. Default 300.
%
% Example:  xbest = fdpso(‘10+5*x1^2-0.8*x2‘[-10 -20][20 40]‘min‘)
%
% Micael S. Couceiro
% v1.0
% 13/11/2011
%
% Original PSO developed by: 
% Kennedy J. and Eberhart R. C. (1995).
% “Particle swarm optimization“.
% Proceedings of the IEEE 1995 International Conference on Neural Networks pp. 1942-1948.
%
% Original DPSO developed by:
% Tillett J. Rao T. Sahin F. Rao R. (2005).
% “Darwinian particle swarm optimization“.
% Proceedings of the 2nd Indian International Conference on Artificial Intelligence (IICAI05).
%
% Extended Fractional-Order DPSO developed by:
% Couceiro M. S. Ferreira N. M. F. and Machado J. A. T. (2011).
% “Fractional Order Darwinian Particle Swarm Optimization“.
% Proceedings of the Symposium on Fractional Signals and Systems (FSS?1) .

tic;

fun=inline(func);

n_par=length(argnames(fun));

if (nargin<6)
    iterations=300;
    if (nargin<5)
        population=30;
        if (nargin<4)
            type=‘min‘;
            if (nargin<3)
                xmax=100*ones(1n_par);
                if (nargin<2)
                    xmin=-100*ones(1n_par);
                end
            end
        end
    end
end

alfa=0.632;

N = population;

n_ger = iterations;

vbef3=0;
vbef2=0;
vbef1=0;

min_swarms=4;
n_swarms=6;
max_swarms=8;

swarms=zeros(max_swarms1);

for i=1:max_swarms
    if (i<=n_swarms)
        swarms(i)=1;
    end
end

n_init=N;
n_max=2*n_init;
n_min=round(n_init/2);
 
n=n_init*ones(max_swarms1);

scmax = 15;      % n?de itera珲es m醲imo sem uma swarm melhorar
sc=zeros(max_swarms1);

X_MAX = xmax;
X_MIN = 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       18896  2011-11-13 15:44  FDPSO.m
     文件        1315  2014-02-12 13:42  license.txt

评论

共有 条评论