《Matlab粒子群算法工具箱使用方法及实例演示》由会员分享,可在线阅读,更多相关《Matlab粒子群算法工具箱使用方法及实例演示(22页珍藏版)》请在人人文库网上搜索。

1、粒子群算法工具箱应用简介,1。引言,粒子群算法(PSO算法) 定义:粒子群算法,又称粒子群优化算法(Partical Swarm Optimization),缩写为 PSO, 是近年来发展起来的一种新的进化算法(Evolutionary Algorithm - EA),由Eberhart 博士和kennedy 博士于1995年提出,其源于对鸟群捕食的行为研究,2。算法思想,PSO模拟鸟群的捕食行为。 设想这样一个场景:一群鸟在随机搜索食物,在这个区域里只有一块食物,所有的鸟都不知道食物在那里,但是它们知道当前的位置离食物还有多远,那么找到食物的最优策略是什么呢? 最简单有效的就是搜寻目前离食物。

2、最近的鸟的周围区域。都向这片区域靠拢,3。抽象,PSO中,将问题的搜索空间类比于鸟类的飞行空间,将每只鸟抽象为一个无质量无体积的微粒,用以表征优化问题的一个候选解,我们称之为“粒子”,优化所需要寻找的最优解则等同于要寻找的食物。 所有的粒子都有一个由被优化的函数决定的适应值(fitness value),每个粒子还有一个速度决定他们飞翔的方向和距离,然后粒子们就追随当前的最优粒子在解空间中搜索,3。抽象,PSO初始化为一群随机粒子(随机解、一群鸟),然后通过迭代找到最优解。在每一次迭代中,粒子(鸟)通过跟踪两个“极值”来更新自己的位置。一个就是粒子本身所找到的最优解,这个解叫做个体极值pBes。

3、t,另一个极值是整个种群目前找到的最优解,这个极值是全局极值gBest。(gBest是pBest中最好值,3。算法介绍,在找到这两个最优值时,粒子根据如下的公式来更新自己的速度和位置: 其中 ,V 是粒子的速度,Present 是粒子的当前位置 ,pBest 与 gBest见前面定义。rand ( )是(0 ,1)之间的随机数 ,c1和c2被称作学习因子。通常 ,c1 = c2 = 2。w 是加权系数(惯性权重),取值在 0. 1到0. 9之间。粒子通过不断学习更新 ,最终飞至解空间中最优解所在的位置 ,搜索过程结束。最后输出的 gBest 就是全局最优解。在更新过程中 ,粒子每一维的最大速率。

4、限被限制为 Vmax ,如果某一维更新后的速度超过设定的Vmax,那么这一维的速度就被限定为Vmax,3。算法介绍,将粒子延伸到N维空间,粒子i在N维空间里的位置表示为一个矢量,每个粒子的飞行速度也表示为一个矢量。 粒子数(鸟的个数): 一般取 140. 其实对于大部分的问题10个粒子已经足够可以取得好的结果; 粒子的长度(维度): 这是由优化问题决定, 就是问题解的长度(决策变量个数); 粒子的范围: 由优化问题决定,每一维可以设定不同的范围,Vmax: 最大速度,决定粒子在一个循环中最大的移动距离, 通常设定为粒子的范围宽度,例如,粒子 (x1, x2, x3) ,x1 属于 -10, 1。

5、0, 那么 Vmax 的大小就是 20。 学习因子: 使粒子具有自我总结和向群体中优秀个体学习的能力,从而向群体内或邻域内最优点靠近,c1 和 c2 通常等于2,并且范围在 0 和 4 之间。 中止条件: 最大循环数以及最小错误要求。 惯性权重w :决定了对粒子当前速度继承多少,合适的选择可以使粒子具有均衡的探索能力和开发能力,惯性权重的取法有常数法、线性递减法、自适应法等,3。算法介绍,例:对于问题 f(x) = x12 + x22+x32 求解,粒子可以直接编码为 (x1, x2, x3),而适应度函数就是f(x),接着我们就可以利用前面的过程去寻优,寻优过程是一个迭代过程, 中止条件一般。

6、为设置为达到最大循环数或者最小错误要求,3。算法介绍,PSO框架图,粒子群优化算法Matlab工具箱简介,Matlab粒子群工具箱(PSOt)提供了非常先进的粒子群优化算法 ,可指定惯性因子的起始值和中止值 ,可约定各维变量的取值范围 、粒子在遇到边界时是否反弹等各种参数 。除此以外 ,粒子群工具箱既可以在用户约定的范围内自动随机生成指定群体规模的初始粒子群 ,也可人工输入小于群体规模的任意数目的初始粒子 ,具备非常强的灵活性,粒子群优化算法Matlab工具箱简介,粒子群优化算法Matlab工具箱简介,PSOt具有非常强的灵活性,在实际计算中,用户只要根据需求编写好目标函数,并设置好函数自变量。

7、的取值范围和每步迭代允许的最大变化量,PSOt即可自动进行优化计算,该工具箱的使用方法主要分为一下几个步骤: (1)在MATLAB的命令窗口中点击“File”,“Set Path”,设置工具箱的路径。 (2)编写待优化的函数(test_func),保存为同名m文件,粒子群优化算法Matlab工具箱简介,3)调用粒子群算法的核心模块:pso_Trelea_vectorized.m,其调用格式为: pso_Trelea_vectorized(functname, D, mv, VarRange , minmax, PSOparams, plotfcn, PSOseedValue,pso_Trele。

8、a_vectorized(functname, D, mv, VarRange, minmax, PSOparams, plotfcn, PSOseedValue) Functname:目标函数名 D:待优化问题的维数; mv:粒子飞行的最大速度; VarRange:参数变化范围矩阵; Minmax:寻优类型,取0代表求目标函数最小值,取1代表求目 标函数最大值); PSOparams:参数矩阵,包括最大迭代次数、粒子群规模、惯性因子、学习因子、终止迭代条件等; Plotfcn:寻优过程中用于展示寻优过程的画图函数; PSOseedValue:可允许用户输入任意多组初始粒子,求非线性函数极大值。

9、,工具箱应用实例,工具箱应用实例,1)编写待优化函数程序 function z = test_func(in) nn=size(in); %输入的是矩阵 ,即算法中随机产生一组x和y ,按x(nn, 1), y(nn, 1)排列 x=in(:,1); y=in(:,2); nx=nn(1); for i=1:nx temp=sin(sqrt(x(i)2+y(i)2)/sqrt(x(i)2+y(i)2)+exp(cos(2*pi*x(i)+cos(2*pi*y(i)/2)-2.71289; z(i,:)=temp; end,工具箱应用实例,2)编写调用函数 x_range=-2,2; y_range=-2,2; range=x_range; y_range; Max_V=0.2* (range(:,2) - range(:,1); %最大速度取范围的 10 20% n=2; %粒子维数 PSOparams=10 300 20 2 2 0.9 0.4 1500 1e-25 250 NaN 0 0 %个体数目 20 ,进化次数 300 PSO_Trelea_vectorized(test_func, n, Max_V, range, 1, PSOparams,工具箱应用实例。

粒子群matlab工具箱,Matlab粒子群算法工具箱使用方法及实例演示相关推荐

  1. 混合储能系统容量优化MATLAB程序基于粒子群算法

    混合储能系统容量优化MATLAB程序基于粒子群算法 (1)该程序为基于粒子群算法的混合储能系统容量优化程序,中文核心期刊论文源程序,配有该论文,再给一篇类似的参考论文. (2)该程序中混合储能系统为蓄 ...

  2. Matlab基于动态粒子群算法的动态环境寻优算法 基本粒子群算法首先是在解空间中随机初始化所有粒子

    Matlab基于动态粒子群算法的动态环境寻优算法 基本粒子群算法首先是在解空间中随机初始化所有粒子,每个粒子位置即代表问题的一个潜在解,在搜索过程中,采用适应度函数对每个粒子位置进行评价,适应度值好的 ...

  3. 含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法)

    含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法) 参考文献:抽水蓄能电站的最佳调度方案研究 调峰电源的优化调度是促进电力系统安全稳定运行,实现可靠供电的要措施.因为目前我国的调峰电源 ...

  4. 回归预测 | MATLAB实现PSO-LSSVM粒子群算法优化最小二乘支持向量机多输入单输出

    回归预测 | MATLAB实现PSO-LSSVM粒子群算法优化最小二乘支持向量机多输入单输出 目录 回归预测 | MATLAB实现PSO-LSSVM粒子群算法优化最小二乘支持向量机多输入单输出 预测效 ...

  5. 电力系统无功优化MATLAB程序基于粒子群算法IEEE30配电网

    电力系统无功优化MATLAB程序基于粒子群算法IEEE30配电网 (1)该程序为基于粒子群算法的配电网无功优化程序,可达到有效降低网损的目的. (2)程序以IEEE-30节点为算例.以网损最小为目标函 ...

  6. 回归预测 | MATLAB实现PSO-GCNN粒子群算法优化分组卷积神经网络的数据多输入单输出回归预测

    回归预测 | MATLAB实现PSO-GCNN粒子群算法优化分组卷积神经网络的数据多输入单输出回归预测 目录 回归预测 | MATLAB实现PSO-GCNN粒子群算法优化分组卷积神经网络的数据多输入单 ...

  7. 含分布式电源的配电网日前两阶段调度模型matlab程序(粒子群算法)

    含分布式电源的配电网日前两阶段调度模型matlab程序(粒子群算法) 参考文献:含分布式电源的配电网日前两阶段优化调度模型 摘要:在电力市场环境下,供电公司通过对接入配电网的分布式电源(distrib ...

  8. 【MATLAB】混合粒子群算法原理、代码及详解

    目录 1.算法 1.1.原理 1.2.性能比较 1.3.步骤 2.代码 2.1.源码及注释 2.2.执行与效果 1.算法 1.1.原理 \qquad建议没接触过粒子群算法的朋友先看较为基础的全局粒子群 ...

  9. 混合储能系统容量优化matlab,采用粒子群算法编制风光互补发电储能系统的容量优化程序,程序采用超级电容和蓄电池的方案

    混合储能系统容量优化matlab 采用粒子群算法编制风光互补发电储能系统的容量优化程序,程序采用超级电容和蓄电池的方案,得到最佳蓄电池和超级电容个数.

  10. 普通粒子群算法和优化方法

    粒子群优化(PSO, particle swarm optimization) 是由Kennedy和Eberhart在1995年提出的一 种群智能优化方法. 优点:好理解容易实现,适合解决极值问题 缺 ...

最新文章

  1. 强大的Charles的使用,强大的flutter1.9
  2. 嵌入式系统学习-面试要点总结
  3. python真的那么强大嘛-这些 Python 库真的很“冷”,但是却很强大
  4. C语言再学习 -- Linux 中常用基本命令
  5. oracle 重建em失败,11gr2 EM重建出现问题,求高人指点
  6. 框架下载_25. Scrapy 框架-下载中间件Middleware
  7. 【从0到1,搭建Spring Boot+RESTful API+Shiro+Mybatis+SQLServer权限系统】05、Shiro集成
  8. .net 中debug 微软内部代码
  9. short s=1;s=s+1有问题吗?short s=1;s+=1;有问题吗?
  10. Mac使用minicom串口工具
  11. 拓端tecdat|在R语言中显示美丽的数据摘要summary统计信息
  12. python如何读二进制文件_Python如何读写二进制文件
  13. 数据以及空值数据处理方法
  14. wordpress优化_WordPress性能优化的完整指南
  15. MySQL,从删库到跑路
  16. 苹果IOS企业开发者账号怎么申请——苹果账号申请记录(未完待续)
  17. 知识点:matplotlib绘图的线条设置以及颜色设置
  18. 【翻译辅助】开源CAT翻译辅助软件OmegaT协同翻译
  19. 使用 Vue SVG 快速绘制曲线图(带动画)
  20. STM32F429 笔记(一)- Keil 创建HAL工程

热门文章

  1. Python实现二维码扫码登录
  2. android代码 qq语音,仿QQ语音变声功能实现(二)---移植到android studio 并解决部分问题...
  3. linux 在 vi 中设定一下行号 怎么做啊 求图片,linux中vi/vim显示行号设置
  4. android 获取邮箱账号,android获取google邮箱
  5. 学弟学妹们,如果你想吃透 Java字节码的话,看这篇就好了!(超级硬核,建议收藏)
  6. AUTOCAD——设置颜色
  7. Python 玩转数据 19 - 数据操作 正则表达式 Regular Expressions 搜索模式匹配
  8. 2-10配置Linux网络
  9. 用matlab计算基金收益,CAPM模型计算的MATLAB实现
  10. shell美元符_Linux Shell中的美元符号$ | 学步园