下载此文档

微粒群算法matlab实现代码.docx


文档分类:IT计算机 | 页数:约25页 举报非法文档有奖
1/25
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/25 下载此文档
文档列表 文档介绍
function out=pso(lb,ub,d,f,symb,m)
w=;%w_end=;w_varyfor=;
c1=2;c2=2;
k=;
t=(ub-lb)/m;
Vmax=abs(t/4);
X=zeros(m,d);
X=abs((ub-lb)*rand(m,d)+lb);
p1=zeros(1,m);
x=zeros(1:d);
for j=1:m
       x(1:d)=X(j,1:d);
      % disp(x);
       p1(j)=eval(f);% history
       
end
if symb=='<'
               p2=min(p1);
               p2=min(p1);
       end
       if symb=='>'
               p2=max(p1);
               p2=max(p1);
       end
v=zeros(m,d);
v(:)=t/m;
for s=1:100
for i=1:m
    v(i,:)=k*((w-1/k)*v(i,:)+c1*rand(1).*(p1(i)-X(i,:))+c2*rand(1).*(p2-X(i,:)));
    X(i,:)=X(i,:)+v(i,:);
   for j=1:d
       x(1:d)=X(i,j);
       p=eval(f);
       if symb=='<'
           if p<=p1(j)               
               p1(j)=p;
           end
       end
       if symb=='>'
           if p>=p1(j)
               p1(j)=p;
           end
       end
       if abs(v(i,j))>Vmax
           if v(i,j)>0
           v(i,j)=Vmax;
           else
               v(i,j)=-1*Vmax;
           end
       end
   end
   if symb=='<'
           if p2>min(p1)
               p2=min(p1);
           end
       end
       if symb=='>'
            if p2<max(p1)
               p2=max(p1);
           end
       end
end
end
out=p2;
% 微粒群算法的主要代码,这是小弟的努力结果:L有点次,输入时:
pso(下限,上限,未知数个数,函数表达式,最值,微粒数)
最值  > 最大,<  最小
微粒数:表示精度,可能函数有多个峰值或峰谷,所以要从函数的不同个点一起开始计算!
微粒群算法 java代码
package Arithmetic;
import .*;
public class Swarm_Itelligent {
int POPSIZE =20;
int DIMENSION = 2;
float W =;
float C1 = ;
float C2 = ;
float VMAX = 2f;
float XMIN = -;
float XMAX = ;
float P[];
float PBEST;
Indi[] individual;
Random r;
public static void main(String []args){
Swarm_Itelligent si = new Swarm_Itelligent();
//();
}
public Swarm_Itelligent(){
P = new float[DIMENSION];
individual = new Indi[POPSIZE];
for (int i = 0; i<POPSIZE;i++)
individual[i] = new Indi();
r = new Random();
();

微粒群算法matlab实现代码 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数25
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zxwziyou8
  • 文件大小48 KB
  • 时间2018-07-16
最近更新