A Modified Particle Swarm Optimizer

一种改进的粒子群优化算法
 
Yuhui Shi and Russell Eberhart
1998
 

摘要:

  本文在原有的粒子群算法中引入了一个新的参数--惯性权重。仿真结果表明,该新参数对粒子群优化算法具有显著而有效的影响。

1. INTRODUCTION

2. A MODIFIED PARTICLE SWARM OPTIMIZER (一种改进的粒子群优化算法)

  速度本身是无记忆的。假设在开始时,粒子i具有最好的全局位置,那么粒子z将在速度为0的情况下保持不动,直到另一个粒子接管全局最好位置。同时,每个其他粒子将向其自身最佳位置和全局最佳种群位置的加权质心“飞行”。如文献[6]所述,常数c1和c2的推荐选择是整数2,因为它平均使“社会”和“社会”部分的权重为1。在这一条件下,粒子从统计上收缩到当前全局最优位置,直到另一个粒子接管,从那时起所有粒子从统计上收缩到新的全局最优位置。因此,可以想象,没有第一部分的粒子群算法的搜索过程是一个搜索空间经过几代统计收缩的过程。它类似于本地搜索算法。通过在屏幕上显示“飞行”过程,可以更清楚地说明这一点。从屏幕上可以很容易地看出,如果没有方程式(La)的第一部分,所有的粒子都会倾向于向同一位置移动,即搜索区域在世代之间都在收缩。只有当全局最优解在初始搜索空间内时,PSO才有机会找到解。最终的解决方案在很大程度上依赖于初始种子(种群)。因此,在没有第一部分的情况下,它更有可能表现出局部搜索能力。另一方面,通过增加第一部分,部分有扩大搜索空间的趋势,即他们有能力探索新的领域。因此,通过添加第一部分,THQ更有可能具有全局搜索能力。局部搜索和全局搜索都有利于解决某些类型的问题。对于不同的问题,全局搜索和局部搜索是有权衡的,在局部搜索能力和全局搜索能力之间应该有不同的平衡。考虑到这一点,如公式(2)所示,在公式(1)中引入惯性权重w。这个w起到平衡全局搜索和局部搜索的作用,它可以是正常数,甚至是时间的正线性或非线性函数。

3. EXPERIMENTS AND DISCUSSION

4. CONCLUSION

  本文在原有的粒子Swann优化算法中引入了一个参数惯性权重。已经进行了仿真,以说明该参数的hpct对粒子群优化算法性能的影响。结果表明,惯性权重平均在[0.9,1.2]范围内的粒子群算法具有更好的性能,即在合理的迭代次数内有更大的机会找到全局最优解。此外,引入了随时间递减的惯性权重,使粒子群算法的性能有了很大的改善。已经做了仿真来支持它。
  虽然引入时变惯量已取得了较好的效果,但仍需做更多的研究。为了寻求更好的时间函数,需要测试不同的时间递减函数。例如,从图1可以很容易地看出,惯性权重不需要从1.4减小到0。从1.4降到0.5;也许效果会更好。时间的非线性递减函数也需要检验。本文只测试了一个Snoall基准问题:要充分证明惯性权重的好处,还需要检验更多的问题。在积累经验之后,可以期望更好地了解惯性权重对PSO性能的影响,可以建立一个模糊控制系统[101]来在线调整惯性权重。我们现在正在做这些事情。

其他:

进化规划
遗传算法
进化策略
遗传规划

A Modified Particle Swarm Optimizer的更多相关文章

  1. 【智能算法】粒子群算法(Particle Swarm Optimization)超详细解析+入门代码实例讲解

    喜欢的话可以扫码关注我们的公众号哦,更多精彩尽在微信公众号[程序猿声] 01 算法起源 粒子群优化算法(PSO)是一种进化计算技术(evolutionary computation),1995 年由E ...

  2. 粒子群优化算法(Particle Swarm Optimization)

    粒子群算法的思想源于对鸟/鱼群捕食行为的研究,模拟鸟集群飞行觅食的行为,鸟之间通过集体的协作使群体达到最优目的,是一种基于Swarm Intelligence的优化方法.它没有遗传算法的"交 ...

  3. A novel multi-swarm particle swarm optimization with dynamic learning strategy(一种新颖的具有动态学习策略的多种群粒子群优化算法)

    1.核心 在每个子种群的粒子被划分为普通粒子(ordinary particles)和交流粒子(communication particles),在每次迭代过程中,不同的粒子执行不同的进化操作.普通粒 ...

  4. 粒子群算法 Particle Swarm Optimization, PSO(转贴收藏)

    粒子群算法(1)----粒子群算法简介 http://blog.csdn.net/niuyongjie/article/details/1569671 粒子群算法(2)----标准的粒子群算法 htt ...

  5. A New Discrete Particle Swarm Optimization Algorithm

    题目:一种新的离散粒子群优化算法 中文摘要 粒子群优化算法在许多优化问题上表现得非常好.粒子群优化算法的缺点之一是假设算法中的变量为连续变量.本文提出一个新的粒子群优化算法,能够优化离散变量.这个新算 ...

  6. 算法(三)粒子群算法PSO的介绍

    一.引言 在讲算法之前,先看两个例子: 例子一:背包问题,一个书包,一堆物品,每个物品都有自己的价值和体积,装满书包,使得装的物品价值最大. 例子二:投资问题,n个项目,第i个项目投资为ci 收益为p ...

  7. 粒子群优化算法及其java实现

    憋了两周终于把开题报告憋出来了,再一次证明自己不适合搞学术,哎--,花了点时间把报告中提到的粒子群算法看了看,看了些资料,用java跑起来. 算法简介 粒子群算法最先由Barnhart博士和Kenne ...

  8. [Algorithm] 群体智能优化算法之粒子群优化算法

    同进化算法(见博客<[Evolutionary Algorithm] 进化算法简介>,进化算法是受生物进化机制启发而产生的一系列算法)和人工神经网络算法(Neural Networks,简 ...

  9. GO语言的开源库

    Indexes and search engines These sites provide indexes and search engines for Go packages: godoc.org ...

随机推荐

  1. Java实现爬取京东手机数据

    Java实现爬取京东手机数据 最近看了某马的Java爬虫视频,看完后自己上手操作了下,基本达到了爬数据的要求,HTML页面源码也刚好复习了下,之前发布两篇关于简单爬虫的文章,也刚好用得上.项目没什么太 ...

  2. Unity——基于UGUI的UI框架

    基于UGUI的UI框架 一.Demo展示 二.关键类 MonoSingle 继承MonoBehaviour的单例基类:做了一些特殊处理: 保证场景中必须有GameInit名称的物体,所有单例管理器脚本 ...

  3. NOIP模拟69

    T1 石子游戏 大坑未补 T2 大鱼吃小鱼 解题思路 set+桶可以得到 60pts (code) 线段树上二分每一次优先递归右区间从右区间贪心选择,并且记录下更改过的值,在处理完答案之后再复原回去. ...

  4. 题解 2020.10.24 考试 T4 模板

    题目传送门 题目大意 有一个 \(n\) 个点组成的树,有 \(m\) 次操作,每次将 \(1\to x\) 的路径上每个点都加入一个颜色为 \(c\) 的小球.但是每个点都有大小限制,即小球个数超过 ...

  5. 题解 CF1172E Nauuo and ODT

    题目传送门 题目大意 给出一个 \(n\) 个点的树,每个点有颜色,定义 \(\text{dis}(u,v)\) 为两个点之间不同颜色个数,有 \(m\) 次修改,每次将某个点的颜色进行更改,在每次操 ...

  6. Servlet和Servlet容器

    Java Servlet(Java服务器小程序)是一个基于Java技术的Web组件,运行在服务器端,它由Servlet容器所管理,用于生成动态的内容, Servlet是平台独立的Java类,编写一个S ...

  7. SudokuSolver 1.0:用C++实现的数独解题程序 【一】

    SudokuSolver 1.0 用法与实现效果 SudokuSolver 是一个提供命令交互的命令行程序,提供的命令清单有: H:\Read\num\Release>sudoku.exe Or ...

  8. verilog specify

    specify block用来描述从源点(source:input/inout port)到终点(destination:output/inout port)的路径延时(path delay),由sp ...

  9. Java:重载和重写

    Java:重载和重写 对 Java 中的 重载和重写 这个概念,做一个微不足道的小小小小结 重载 重载:编译时多态,同一个类中的同名的方法,参数列表不同,与返回值无关. 有以下几点: 方法名必须相同: ...

  10. 【二食堂】Alpha - Scrum Meeting 8

    Scrum Meeting 8 例会时间:4.18 11:40 - 12:10 进度情况 组员 昨日进度 今日任务 李健 1. 实体的添加和关系的添加实现的有bug,柴博和刘阳进行了帮助issue 1 ...