pso算法matlab程序,基本PSO算法的matlab源程序

《基本PSO算法的matlab源程序》由会员分享,可在线阅读,更多相关《基本PSO算法的matlab源程序(2页珍藏版)》请在人人文库网上搜索。

1、主函数源程序( main.m )% 基本粒子群优化算法( Particle SwarmOptimization ) % 名称:基本粒子群优化算法( PSO )% 作用:求解优化问题% 说明:全局性,并行性,高效的群体智能算法% 初始格式化 clear all;clc;format long;% 给定初始化条件c1=1.4962;% 学习因子 1c2=1.4962;% 学习因子 2w=0.7298;% 惯性权重MaxDT=1000;% 最大迭代次数D=10;% 搜索空间维数(未知数个数)N=40;% 初始化群体个体数目eps=10A(-6);% 设置精度 ( 在已知最小值时候用 )% 初始化种群。

2、的个体 ( 可以在这里限定位置和速度的范围 )for i=1:Nfor j=1:Dx(i,j)=randn; % 随机初始化位置v(i,j)=randn; % 随机初始化速度end end% 先计算各个粒子的适应度,并初始化 Pi 和 Pgfor i=1:Np(i)=fitness(x(i,:),D);y(i,:)=x(i,:);endpg=x(1,:); %Pg 为全局最优for i=2:Nif fitness(x(i,:),D) pg=x(i,:);endend% 进入主要循环,按照公式依次迭代,直到满足精度要求 for t=1:MaxDT for i=1:Nv(i,:)=w*v(i,:)。

3、+c1*rand*(y(i,:)-x(i,:)+c2*rand*(pg-x(i,:);x(i,:)=x(i,:)+v(i,:);if fitness(x(i,:),D)p(i)=fitness(x(i,:),D);y(i,:)=x(i,:);endif p(i) pg=y(i,:);endendPbest(t)=fitness(pg,D);end% 最后给出计算结果disp(*disp( 函数的全局最优位置为: )Solution=pgdisp( 最后得到的优化极值为: )Result=fitness(pg,D)disp(*)% 算法结束 -DreamSunGL & HF适应度函数源程序( fitness.m ) function result=fitness(x,D) sum=0;for i=1:Dsum=sum+x(i)A2;endresult=sum。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值