摘要粒子群算法是基于群体及自身发展的一种优化算法,具有简单易行,参数可调的优点。本文根据粒子群算法的算法实现流程,使用MATLAB语言分别实现了该算法的各个流程功能。以Cu建立结构模型,实现了模型初始化结构的产生、能量计算、赋予初始化速度,并根据粒子群算法编写了原子速度和坐标演化的程序模块,实现了粒子群算法的一代一代结构更新。59526

毕业论文关键词:粒子群算法(PSO),MATLAB,编程

Abstract With the advantages of simple to operate,adjustable parameters, particle swarm optimization algorithm(PSO) is a kind of an optimization algorithm based on swarm intelligence and its own development. In this paper, using MATLAB language, we rewrite the program of PSO. We build  the modules of building initialization structure, energy calculation, initial velocity, and the evolution of the atomic velocity and coordinate depending on the PSO.

Keywords: particle swarm optimization, MATLAB, programming

目录

第一章 绪论-1

1.1 粒子群算法(PSO)的介绍-1

1.1.1PSO算法的基本原理-1

1.1.2PSO算法的参数设置-2

1.2 MATLAB程序编程介绍-3

1.2.1语法格式3

1.2.2数据格式5

1.2.3常用函数命令7

1.2.4 程序编程-7

1.2.4.1   if语句-7

1.2.4.2   switch语句-7

1.2.4.3   while语句8

1.2.4.4   for语句8

1.2.4.5  break语句和continue语句9

1.2.4.6  try...catch...end语句-9

第二章 粒子群算法的MATLAB程序实现10

2.1程序编程的流程10

2.2算法的MATLAB程序实现-10

第三章 粒子群算法在模型结构优化中的应用13

3.1 建立模型-13

3.2 数据处理与结果讨论-14

第四章 总结与展望-18

致谢19

参考文献20

第一章.绪论

1.1PSO(粒子群优化)算法的介绍

PSO全称Particle Swarm Optimization,百度百科解释其是一种基于种群的随机优化技术[3],(以下简称PSO)PSO是1995年由Eberhart和Kennedy提出的,他是一种借鉴生物群体行为模型,结合生物进化思想实现的新型算法。PSO算法是一种模拟群集行为,主要模仿昆虫、兽群、鸟群和鱼群等的行为模式,这些群体按照合作的方式活动,每个成员都通过总结它自己的经验和团体的经验来不断改进自己的搜索模式。

PSO算法的形成,由早期的简单模型Boid(Bird-oid)模型演变而来的。Boid模型是主要设计模拟鸟群的行为的模型,它为PSO算法提供了基本框架和主题思想。其中最简单的模型是由直角坐标系上的点表示每一个鸟的个体本身,随机性束缚地为他们产生一个初始速度与初始位置,程序运行按照“最近邻速度匹配”规则,这会迅速地使得所有的点的速度变相同。但是因为这个模拟的模型太过简单并且脱离现实的情况,无法真实的反应结构。所以在速度变量中加入了一个随机变量,也可以说是在迭代的每一步过程中除了需要符合“最近邻速度匹配”规则外,我们还给每一次的点的速度加入了一个随机变量,这可以使得我们的整个模拟更加接近现实的情况,结果更加可信[7]。

1.1.1PSO算法的基本原理

基本上,PSO算法是一种基于种群的优化算法[1],和遗传算法具有相似点。在粒子群优化算法之中,粒子群中的一个粒子表示该问题的一个可能解,粒子是由速度v和位置x两个数据组成的,在N维结构搜索空间中飞行。该粒子具有自我性和社会性,自我性代表粒子可以根据自身的经验去判断飞行的速度和位置;社会性代表粒子可以依据自己在解空间中的飞行经验或者粒子群体的飞行状况动态地改变自己的速度和位置,寻找平衡[5],[6]。并且PSO使用进化型计算中“群体”和”进化”这两个概念,与遗传算法相似地依据粒子的个体适应值计算结构。 粒子群优化算法的MATLAB程序实现+源程序:http://www.lwfree.com/wuli/lunwen_64786.html

粒子群优化算法matlab实现,粒子群优化算法的MATLAB程序实现+源程序相关推荐

  1. 【优化调度】基于粒子群算法求解水火电调度优化问题含Matlab源码

    1 简介 粒子群算法因其原理简单,易于编程,适于并行计算等优点而得到了广泛的应用.本文探讨和分析了Matlab粒子群算法工具箱,并提出了基于该工具箱来实现水电站优化调度计算的方法.计算实例表明,Mat ...

  2. 【优化调度】基于粒子群算法求解梯级水电站调度问题matlab代码

    1 简介 粒子群算法( Particle Swarm Optimization, PSO)最早是由Eberhart和Kennedy于1995年提出,它的基本概念源于对鸟群觅食行为的研究.设想这样一个场 ...

  3. 【微电网优化】基于matlab粒子群算法求解综合能源系统优化问题【含Matlab源码 1969期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[微电网优化]基于matlab粒子群算法求解综合能源系统优化问题[含Matlab源码 1969期] 点击上面蓝色字体,直接付费下载,即可. ...

  4. matlab采用粒子群优化算法求解含压缩储能设备的综合能源系统运行优化

    matlab采用粒子群优化算法求解含压缩储能设备的综合能源系统运行优化. 结果包含储能设备24时出力,内燃机发电和发热出力,电制冷机出力等. 代码包含相关注释,方便对算法进行改进. 附相关参考文献. ...

  5. 【布局优化】基于改进粒子群算法实现充电桩选址优化问题附matlab代码

    1 简介 当前世界环境污染和能源危机问题凸显,电动汽车以零排放和低耗能的优势得到各国的大力关注和支持.以电动汽车为代表新能源汽车产业,成为国家七大战略性新兴产业之一.电动汽车具有良好的发展前景,市场规 ...

  6. 【优化算法】细菌粒子群优化算法【含Matlab源码 1195期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[优化算法]细菌粒子群优化算法[含Matlab源码 1195期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2: 付费专栏Mat ...

  7. 【优化算法】基于matlab量子粒子群算法求解单目标优化问题【含Matlab源码 2203期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[优化算法]基于matlab量子粒子群算法求解单目标优化问题[含Matlab源码 2203期] 点击上面蓝色字体,直接付费下载,即可. 获 ...

  8. 混合储能系统容量优化matlab 采用粒子群算法编制风光互补发电储能系统的容量优化程序

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

  9. 【优化求解】基于粒子群算法求解多目标优化问题matlab源码

    [优化求解]基于粒子群算法求解多目标优化问题matlab源码 1 算法介绍 1.1 关于速度和位置 粒子群算法通过设计一种无质量的粒子来模拟鸟群中的鸟,粒子仅具有两个属性:速度和位置,速度代表移动的快 ...

  10. 粒子群优化算法分布式电源选址定容 matlab源代码,分析了分布式电源接入配电网前后对网络损耗的影响,在此基础上提出采用混合模拟退火算法的改进粒子群优化算法进行分布式电源选址和定代码按照高水平文章复现

    (1)粒子群优化算法分布式电源选址定容 如图12 matlab源代码,代码按照高水平文章复现,保证正确 分析了分布式电源接入配电网前后对网络损耗的影响,在此基础上提出采用混合模拟退火算法的改进粒子群优 ...

最新文章

  1. POJ - 1986 Distance Queries 倍增求LCA
  2. 开发板与pc之间文件传输:kermit and lrzsz
  3. uart接口_UART串行总线舵机转接板规格、接线说明 amp; 驱动安装
  4. Day11多态部分-5
  5. 判决素数个数(信息学奥赛一本通-T1409)
  6. Android系统的手表adb抓取log日志
  7. 16. Shell scripts
  8. python开根号_python开根号_python 开根号_python开根号函数 - 云+社区 - 腾讯云
  9. 第七章 微分方程(一)
  10. a+++a和a+a++的区别
  11. web漏洞扫描器-Burpsuite 常规测试
  12. 十年牧码,我的平凡之路 | 程序员有话说
  13. python超市收银程序_用java编写超市收银小程序
  14. 129.精读《React Conf 2019 - Day2》
  15. 浅谈text段、data段和bss段
  16. SparkSQL之“Dataset和Dataframe
  17. linux录制声卡声音_在deepin上进行声音录制就是这么简单,娱乐工作两不误
  18. ubuntu 找不到libGL.so.1
  19. 在PowerPoint中插入Flash、网页
  20. 机器苍蝇即将入侵,成为出其不意的间谍

热门文章

  1. matlab pn码捕获,直扩系统PN码捕获和跟踪的FPGA实现
  2. 【Redis】Redis中使用Lua脚本
  3. plsql 破解|oracle plsql 破解
  4. P2525 Uim的情人节礼物·其之壱-全排列
  5. (QT学习笔记):QListWidget、QTreeWidget、 QTableWidget的基本使用
  6. plc用c语言编写程序,plc编程和c语言编程的联系
  7. 【百度之星程序设计大赛】2020年初赛第三场第四题Intersection
  8. python车流量检测车流统计车辆计数yolov5 deepsort车流检测
  9. 禁用Chrome Frame
  10. 数据挖掘实战—餐饮行业的数据挖掘之数据预处理