⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 integerpso.m

📁 该程序是一整数版的PSO程序。该程序对于整数版PSO的各种应用可作为模板程序。
💻 M
字号:
% 整数PSO====2005.7.5
clear;
clc;
% 参数给定
xmax=100;
xmin=-100;
vmax=2;
vmin=-2;
popsize=20;
dimsize=5;   
% w=0.8;
wmax=1.2;
wmin=0.2;
c1=2;
c2=2;
itermax=2000;
% 初始化群体x
x=round((0.5-rand(popsize,dimsize))*(xmax-xmin));
vid=(vmax-vmin)*rand(popsize,dimsize);
% [y]=intefun(x);                            %计算popsize个初始微粒的fitness
[y]=intefun1(x,popsize); 
pbestx=x;                                  % 初始个体经历过的最优点位置
pbesty=y;                                  % 初始个体经历过的最优位置的fitness
for i=1:popsize
    if y(i)==min(y)
        gbestx=x(i,:);
        gbesty=min(y);
    end
end
%主循环
for iter=1:itermax
    w=wmax-iter*(wmax-wmin)/itermax;
    [x]=adaptintx(w,c1,c2,popsize,dimsize,x,vid,vmax,vmin,xmax,xmin,pbestx,gbestx);
%     [y]=intefun(x);
    [y]=intefun1(x,popsize);
    [pbestx,pbesty,gbestx,gbesty]=adaptbest3(popsize,x,y,pbestx,pbesty,gbestx,gbesty); % 更新当前个体最优和群体最优
end
x
gbestx
gbesty

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -