• 大小: 3KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-06
  • 语言: Matlab
  • 标签: GA-PSO  

资源简介

遗传算法改进粒子群优化算法,可用于SVM的参数优化等,

资源截图

代码片段和文件信息

%% GA 优化 PSO
%% 清空环境
clc;
clear
close all
%% 参数初始化
lenchrom=2;    %字符串长度(个体长度),染色体编码长度
pc=0.7;        %设置交叉概率,本例中交叉概率是定值,若想设置变化的交叉概率可用表达式表示,或从写一个交叉概率函数,例如用神经网络训练得到的值作为交叉概率
pm=0.3;        %设置变异概率,同理也可设置为变化的

%粒子群算法中的两个参数
c1 = 1.49445;
c2 = 1.49445;

maxgen=10;   % 进化次数  
popsize=10; %种群规模

%粒子更新速度
Vmax=1;
Vmin=-1;

%种群
popKmax=20;
  popKmin=2;
  popamax=10000;
  popamin=100;

% 变量取值范围
bound=[popKmin popKmax;popamin popamax];  %变量范围

% 优化粒子数目
par_num=2;

%% 产生初始粒子和速度
for i=1:popsize
    %随机产生一个种群
   pop(i1) = (popKmax-popKmin)*rand+popKmin;  
    pop(i2) = (popamax-popamin)*rand+popamin;
    V(i1)=Vcmax*rands(11);  
    V(i2)=Vgmax*rands(11);
    %初始化速度
    %计算适应度
    fitness(i)=fun(pop(i:));   %染色体的适应度
end

%找最好的染色体
[bestfitness bestindex]=min(fitness);
zbest=pop(bestindex:);   %全局最

评论

共有 条评论