matlab粒子群优化算法举例分析.doc

上传人:sk****8 文档编号:3137984 上传时间:2019-05-22 格式:DOC 页数:33 大小:194KB
下载 相关 举报
matlab粒子群优化算法举例分析.doc_第1页
第1页 / 共33页
matlab粒子群优化算法举例分析.doc_第2页
第2页 / 共33页
matlab粒子群优化算法举例分析.doc_第3页
第3页 / 共33页
matlab粒子群优化算法举例分析.doc_第4页
第4页 / 共33页
matlab粒子群优化算法举例分析.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、例 函数 对于适应度函数fitness对其参数 , , 做出不同102)(ixf w1c3方式的比较以测试其对函数结果影响。当 , , 。21c5.121c2.w(适应函数 )01)(ixf程序 1当 , , 。2c5.21c2.1wa)%主函数源程序( main.m)%-基本粒子群算法 (particle swarm optimization)%-名称: 基本粒子群算法%-初始格式化clear all; %清除所有变量clc; %清屏format long; %将数据显示为长整形科学计数%-给定初始条条件-N=40; %初始化群体个数D=10; %初始化群体维数T=100; %初始化群体最迭

2、代次数c11=2; %学习因子 1c21=2; %学习因子 2c12=1.5;c22=1.5;w=1.2; %惯性权重eps=10(-6); %设置精度(在已知最小值的时候用)%-初始化种群个体(限定位置和速度)-x=zeros(N,D); %x 是位置,初始化位置空间(矩阵)v=zeros(N,D); %v 是速度,初始化速度空间(矩阵)for i=1:Nfor j=1:Dx(i,j)=randn; %随机初始化位置,randn 返回一个随机变化的符合正态分布的数v(i,j)=randn; %随机初始化速度endend%-显示群位置-figure(1)for j=1:D if(rem(D,2

3、)0)subplot(D+1)/2,2,j)elsesubplot(D/2,2,j)end plot(x(:,j),b*);grid on %b*表示颜色是绿的,用*显示在图上xlabel(粒子)ylabel(初始位置)tInfo=strcat(第,char(j+48), 维); %strcat 使括号里的东西连成字符串if(j9)tInfo=strcat(第,char(floor(j/10)+48); %floor 向负无穷方向取整char(rem(j,10)+48,维); %rem 取余end title(tInfo)end%-显示种群速度figure(2)for j=1:Dif(rem(

4、D,2)0)subplot(D+1)/2,2,j)elsesubplot(D/2,2,j)endplot(v(:,j),b*);grid on %是不是应该是 v(:,j)xlabel(粒子)ylabel(初始速度)tInfo=strcat(第,char(j+48), 维);if(j9)tInfo=strcat(第,char(floor(j/10)+48),维);char(rem(j,10)+48,维);end title(tInfo)endfigure(3)%第一个图subplot(1,2,1)%-初始化种群个体(在此限定速度和位置)-x1=x;v1=v;%-初始化个体最优位置和最优值-p1

5、=x1;pbest1=ones(N,1);for i=1:Npbest1(i)=fitness(x1(i,:),D); %适应度函数end%-初始化全局最优位置和最优值-g1=1000*ones(1,D);gbest1=1000;for i=1:Nif(pbest1(i)0)subplot(D+1)/2,2,j)elsesubplot(D/2,2,j)endplot(x(:,j),b*);grid onxlabel(粒子)ylabel(初始位置)tInfo=strcat(第,char(j+48),维);if(j9)tInfo=strcat(第,char(floor(j/10)+48),char

6、(rem(j,10)+48),维 );end title(tInfo)end%-显示种群速度figure(2)for j=1:D if(rem(D,2)0)subplot(D+1)/2,2,j)elsesubplot(D/2,2,j)endplot(x(:,j),b*);grid onxlabel(粒子)ylabel(初始速度)tInfo=strcat(第,char(j+48),维);if(j9)tInfo=strcat(第,char(floor(j/10)+48),char(rem(j,10)+48),维);end title(tInfo)endfigure(3)%第一个图subplot(1

7、,2,1)%-初始化种群个体(在此限定速度和位置) -x1=x;v1=v;%-初始化个体最优位置和最优值 -p1=x1;pbest1=ones(N,1);for i=1:Npbest1(i)=fitness(x1(i,:),D);end%-初始化全局最优位置和最优值 -g1=1000*ones(1,D);gbest1=1000;for i=1:Nif(pbest1(i)0)subplot(D+1)/2,2,j)elsesubplot(D/2,2,j)endplot(x(:,j),b*);grid onxlabel(粒子)ylabel(初始位置)tInfo=strcat(第,char(j+48),维);if(j9)tInfo=strcat(第,char(floor(j/10)+48),char(rem(j,10)+48),维 );end title(tInfo)end%-显示种群速度figure(2)for j=1:Dif(rem(D,2)0)subplot(D+1)/2,2,j)elsesubplot(D/2,2,j)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。