• 大小: 183KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-06
  • 语言: Matlab
  • 标签: MATLAB  鸡群算法  

资源简介

MATLAB源程序,鸡群算法,鸡群算法(ChickenSwarmOptimization,CSO)是由MENGXianbing等于2014年提出的一种基于鸡群搜索行为的随机优化方法,它模拟了鸡群等级制度和鸡群行为。

资源截图

代码片段和文件信息

% -----------------------------------------------------------------------------------------------------------
% Chicken Swarm Optimization (CSO) (demo)
% Programmed by Xian-bing Meng    
% Updated 25 Aug 2014.                     
%
% This is a simple demo version only implemented the basic         
% idea of the CSO for solving the unconstrained problem namely Sphere function.    
% The details about CSO are illustratred in the following paper.    
% (Citation details):                                                
% Xian-bing Meng Xiao-zhi Gao. A new bio-inspired algorithm: Chicken Swarm Optimization
%    in: ICSI 2014 Part I LNCS 8794 pp. 86-94 
% Email: x.b.meng12@gmail.com;  xiao-zhi.gao@aalto.fi
%
% The parameters in CSO are presented as follows.
% fitness    % The fitness function
% M          % Maxmimal generations (iterations)
% pop        % Population size
% dim        % Number of dimensions 
% G          % How often the chicken swamr can be updated.
% rPercent   % The population size of roosters accounts for “rPercent“ percent of the total population size
% hPercent   % The population size of hens accounts for “hPercent“ percent of the total population size
% mPercent   % The population size of mother hens accounts for “mPercent“ percent of the population size of hens
%
% Using the default value you can execute this algorithm using the following code.
% [ bestX fMin ] = CSO
% -----------------------------------------------------------------------------------------------------------
 
% Main programs starts here

function [ bestX fMin ] = CSO( fitness M pop dim G rPercent hPercent mPercent )
% Display help
help CSO.m
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% set the parameter values
if nargin < 1
    Func = @Sphere;
    M = 1000;   % Maxmimal generations (iterations)
    pop = 100;  % Population size
    dim = 20;  % Number of dimensions 
    G = 10;                            % How often the chicken swamr can be updated. The details of its meaning are illustrated at the following codes.         
    rPercent = 0.2;    % The population size of roosters accounts for “rPercent“ percent of the total population size
    hPercent = 0.6;   % The population size of hens accounts for “hPercent“ percent of the total population size
    mPercent = 0.1;  % The population size of mother hens accounts for “mPercent“ percent of the population size of hens                  
end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
rNum = round( pop * rPercent );    % The population size of roosters
hNum = round( pop * hPercent );    % The population size of hens
cNum = pop - rNum - hNum;          % The population size of chicks
mNum = round( hNum * mPercent );   % The population size of mother hens

lb= -100*ones( 1dim );    % Lower limit/bounds/     a vector
ub= 100*ones( 1dim );    % Upper limit/bounds/     a vector

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

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

     文件     219489  2014-10-21 01:00  鸡群算法\A new bio-inspired algorithm Chicken swarm optimization.pdf

     文件      10530  2014-10-21 01:00  鸡群算法\新建文件夹\CSO.m

     目录          0  2016-11-22 21:10  鸡群算法\新建文件夹

     目录          0  2016-05-30 10:33  鸡群算法

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

               230019                    4


评论

共有 条评论