第13章基于PSO的寻优计算ppt课件.ppt

上传人:牧羊曲112 文档编号:1353989 上传时间:2022-11-13 格式:PPT 页数:20 大小:791KB
返回 下载 相关 举报
第13章基于PSO的寻优计算ppt课件.ppt_第1页
第1页 / 共20页
第13章基于PSO的寻优计算ppt课件.ppt_第2页
第2页 / 共20页
第13章基于PSO的寻优计算ppt课件.ppt_第3页
第3页 / 共20页
第13章基于PSO的寻优计算ppt课件.ppt_第4页
第4页 / 共20页
第13章基于PSO的寻优计算ppt课件.ppt_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《第13章基于PSO的寻优计算ppt课件.ppt》由会员分享,可在线阅读,更多相关《第13章基于PSO的寻优计算ppt课件.ppt(20页珍藏版)》请在三一办公上搜索。

1、第十三章,MATLAB优化算法案例分析与应用,第13章 基于PSO的寻优计算,第十三章,MATLAB优化算法案例分析与应用,13.1 基本粒子群算法,粒子群算法(PSO)是一种基于群体的随机优化技术。与其它基于群体的进化算法相比,它们均初始化为一组随机解,通过迭代搜寻最优解。不同的是:进化计算遵循适者生存原则,而PSO模拟社会。将每个可能产生的解表述为群中的一个微粒,每个微粒都具有自己的位置向量和速度向量,以及一个由目标函数决定的适应度。所有微粒在搜索空间中以一定速度飞行,通过追随当前搜索到的最优值来寻找全局最优值。 PSO模拟社会采用了以下三条简单规则对粒子个体进行操作:飞离最近的个体,以避

2、免碰撞。飞向目标。飞向群体的中心。这是粒子群算法的基本概念之一。 粒子群算法其基本思想是受许多鸟类的群体行为进行建模与仿真研究结果的启发。,第十三章,MATLAB优化算法案例分析与应用,13.1 基本粒子群算法,Frank Heppner的鸟类模型在反映群体行为方面与其它类模型有许多相同之处。由于鸟类用简单的规则确定自己的飞行方向与飞行速度(实质上,每只鸟都试图停在鸟群中而又不相互碰撞),当一只鸟飞离鸟群而飞向栖息地时,将导致它周围的其他鸟也飞向栖息地。这些鸟一旦发现栖息地,将降落在此,驱使更多的鸟落在栖息地,直到整个鸟群都落在栖息地。 粒子群算法与其它的进化类算法类似,也采用“群体”和“进化

3、”的概念,同样也根据个体的适应值大小进行操作。不同的是,PSO中没有进化算子,而是将每个个体看作搜索空间中没有重量和体积的微粒,并在搜索空间中以一定的速度飞行,该飞行速度由个体飞行经验和群体的飞行经验进行动态调整。,第十三章,MATLAB优化算法案例分析与应用,13.1 基本粒子群算法,PSO算法步骤如下:,Step1:初始化一个规模为 m 的粒子群,设定初始位置和速度。,Step2:计算每个粒子的适应值。,初始化过程如下: (1)设定群体规模m; (2)对任意的 i,s ,在 内服从均匀分布产生 ; (3)对任意的 i,s ,在 内服从均匀分布产生 ; (4)对任意的 i ,设 。,Step

4、3:对每个粒子将其适应值和其经历过的最好位置 的适应值进行比较,若较好,则将其作为当前的最好位置。Step4:对每个粒子将其适应值和全局经历过的最好位置 的适应值进行比较,若较好,则将其作为当前的全局最好位置。Step5:分别对粒子的速度和位置进行更新。Step6:如果满足终止条件,则输出解;否则返回Step2。,第十三章,MATLAB优化算法案例分析与应用,13.3 粒子群算法函数极值求解,PSO算法流程如图13-1所示。,第十三章,MATLAB优化算法案例分析与应用,13.3.1 一维函数全局最优,采用fmincon进行有约束的非线性最小化求解,% fmincon:求多个变量的目标函数的最

5、小值 % fmincon(FUN,X,A,B,Aeq,Beq,LB,UB,NONLCON,options,varargin) x(i) = fmincon(f,x0(i),lb,ub,. optimset(Algorithm,SQP,Disp,none);,搜索起始点位置,全局搜索最小值结果,第十三章,MATLAB优化算法案例分析与应用,13.3.2 经典测试函数,Griewank函数图形,Rastrigin函数图形,第十三章,MATLAB优化算法案例分析与应用,13.3.2 经典测试函数,Schaffer函数,Ackley函数图形,第十三章,MATLAB优化算法案例分析与应用,13.3.2

6、经典测试函数,Rosenbrock函数,第十三章,MATLAB优化算法案例分析与应用,13.3.3 无约束函数极值寻优,待求解极值函数图形,第十三章,MATLAB优化算法案例分析与应用,13.3.3 无约束函数极值寻优,%速度更新 V(j,:) = V(j,:) + c1*rand*(gbest(j,:) - pop(j,:) + c2*rand*(zbest - pop(j,:); V(j,find(V(j,:)Vmax)=Vmax; V(j,find(V(j,:)popmax)=popmax; pop(j,find(pop(j,:)0.8 k=ceil(2*rand); pop(j,k)=

7、rand; end%适应度值 fitness(j)=fun(pop(j,:);,第十三章,MATLAB优化算法案例分析与应用,13.3.3 无约束函数极值寻优,%个体最优更新 if fitness(j) fitnessgbest(j) gbest(j,:) = pop(j,:); fitnessgbest(j) = fitness(j); end %群体最优更新 if fitness(j) fitnesszbest zbest = pop(j,:); fitnesszbest = fitness(j); end,待寻优的目标函数如下:,function y = fun(x)y=-20*exp(

8、-0.2*sqrt(x(1)2+x(2)2)/2)-exp(cos(2*pi*x(1)+cos(2*pi*x(2)/2)+20+2.71289; %Ackley函数,第十三章,MATLAB优化算法案例分析与应用,13.3.3 无约束函数极值寻优,适应度曲线,第十三章,MATLAB优化算法案例分析与应用,13.3.4 有约束函数极值寻优,选取如下所示的目标函数(最小值):,对于该目标函数,相应的约束为:,待寻优的目标函数为:,function y = fun2(x) y=-5*x(1)-4*x(2)-6*x(3);end,第十三章,MATLAB优化算法案例分析与应用,13.3.4 有约束函数极值

9、寻优,适应度曲线,第十三章,MATLAB优化算法案例分析与应用,13.3.5 有约束函数极值APSO寻优,目标函数:,约束条件:,第十三章,MATLAB优化算法案例分析与应用,13.3.5 有约束函数极值APSO寻优,目标函数:,约束条件:,第十三章,MATLAB优化算法案例分析与应用,13.3.5 有约束函数极值APSO寻优,Lb=0.1 0.1 0.1 0.1;%下边界Ub=2.0 10.0 10.0 2.0; %上边界% 默认参数para=25 150 0.95; %粒子数,迭代次数,gama参数% APSO 优化求解函数gbest,fmin=pso_mincon(cost,constr

10、aint,Lb,Ub,para);% 输出结果Bestsolution=gbest % 全局最优个体fmin% 目标函数function f=cost(x)f=1.10471*x(1)2*x(2)+0.04811*x(3)*x(4)*(14.0+x(2);,第十三章,MATLAB优化算法案例分析与应用,13.3.5 有约束函数极值APSO寻优,% 非线性约束function g,geq=constraint(x)% 不等式限制条件Q=6000*(14+x(2)/2);D=sqrt(x(2)2/4+(x(1)+x(3)2/4);J=2*(x(1)*x(2)*sqrt(2)*(x(2)2/12+(

11、x(1)+x(3)2/4);alpha=6000/(sqrt(2)*x(1)*x(2); %beta=Q*D/J; %tau=sqrt(alpha2+2*alpha*beta*x(2)/(2*D)+beta2); %sigma=504000/(x(4)*x(3)2); %delta=65856000/(30*106*x(4)*x(3)3); %F=4.013*(30*106)/196*sqrt(x(3)2*x(4)6/36)*(1-x(3)*sqrt(30/48)/28);g(1)=tau-13600;g(2)=sigma-30000; g(3)=x(1)-x(4);g(4)=0.10471*x(1)2+0.04811*x(3)*x(4)*(14+x(2)-5.0;g(5)=0.125-x(1); g(6)=delta-0.25; g(7)=6000-F;% 如果没有等式约束,则置geq=;geq=;,第十三章,MATLAB优化算法案例分析与应用,13.3.5 有约束函数极值APSO寻优,适应度曲线,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号