粒子群算法读书笔记精读
2020《电子信息学 》基于非线性降维的自然计算方法 孙小晴(2020-04-28)
1针对问题
高维大规模优化问题,陷入局部最优与收敛速度和时间复杂度的矛盾。
2创新点
- 非线性降维思想 – NDR
- 将初始化的N个D维个体,视为N行D列的矩阵;
- 求该矩阵的阶梯矩阵,得到列的最大线性无关向量组。(其他列可由最大线性无关向量组表示)
- 引入随机系数,解决降维个体属性参数减少问题
3算法流程
4实验分析
- 实验分析HMC策略优势,比较MC、PMC、HMC三种均值中心对实验结果的影响
- 实验分析反向学习后收敛情况、聚集程度,得出混合均值中心的反向学习性能提升更大
- 与最新改进的粒子群算法、人工蜂群算法、差分算法对比
- CEC2015测试集
5写作技巧
- 实验验证混合均值中心具有更好的求解结果
2019《软件学 》引入多级扰动的混合型粒子群优化算法 徐利锋(2020-04-30)
*粒子群算法(PSO)、标准粒子群算法(SPSO)、带收缩因子的粒子群算法(PSOCF)
1解决问题
粒子群算法易于陷入局部最优问题
2创新点
-
根据迭代深度切换SPSO与PSOCF,中前期:SPSO对解空间的探索好,中后期:PSOCF收敛速度快
-
多级扰动机制:
-
一级扰动:更新粒子位置时,结合SPSO
- 目的是增强粒子对解空间的遍历能力(类似混沌扰动)
- 引入一级扰动取决于概率:概率与最大迭代深度Tm和当前迭代次数Tc有关
T为中前 后期的切换点,r0=[-2,2],r123=[0,1],ga=标准高斯随机数,reset重置粒子位置
-
-
二级扰动:陷入局部最优时,结合PSOCF
-
判定标准:粒子10次未发生变化
-
怎么扰动/strong>
基于最优位置附近的随机位置分布,跳出局部最优(避免太随机了)
4实验分析
- 对子问题进行实验分析
- 对算法中设置的随机参数进行实验分析
- 四种维度下的对比实验
5写作技巧
- 算法在何时切换SPSO与PSOCF作为一个子问题,进行分析和实验
- 算法分析充分全面,都有实验支撑,到底是《软件学 》的文章
6个人想法
- 创新点需要分析透彻,不一定是多么好的idea,但是分析和实验要充分全面
2017《系统仿真学 》基于logistic映射的自适应变尺度混沌粒子群算法 曾艳阳(2020-05-06)
1解决问题
2创新点
-
利用logistic映射对粒子群混沌初始化
-
自适应调整参数
-
惯性权重调整策略
所有粒子avg(fitness),pavg为比avg(fitness)好的粒子适应度值的平均值
粒子i适应度值若比pavg好,则赋值小权重
粒子i适应度值若比avg差,则赋值大权重
粒子i位于avg和pavg之间,采用w非线性增长策略
-
学习因子调整策略
-
基于logistic映射的变尺度混沌局部搜索(重点!!!)
在适应度较好的粒子周围局部搜索
-
缩小混沌变量搜索范围
-
3算法流程
4写作技巧
- 虽然实验分析少,但是创新点多,并且特别多的复杂公式。
2019《智能系统学 》基于目标空间分解和连续变异的多目标粒子群算法 钱小宇(2020-05-07)
1解决问题
多目标PSO收敛行和多样性不佳问题
2创新点
- 目标空间分解法
- 粒子的分类和更新
- 差分变异、高斯变异、柯西变异三种变异的连续变异
目前还没看明白!!!(需要静下心来再研究)
2017《IEEE》A Modified Multi-Swarm Optimization with Interchange GBEST and Particle Redistribution-具备互换性Gbest和粒子重新分配的改进多群PSO算法(2020-05-08)
1解决问题
粒子群算法易于陷入局部最优。
- 粒子群算法会捕获一个局部最优点,多种群会捕获多个局部最优点
- 变异
2创新点
-
陷入局部最优时,多个种群内每个粒子都重置Pbest,根据PR(重新定位概率)给粒子位置加扰动,如下式:
4 个人想法
一些实验参数的设置:PR=0.7,TR=100,也并没有对着两个重要参数进行分析说明或者仿真实验!
创新加变异,然后对于陷入局部最优的多个种群互换Gbest来达到种群间通信。
2017《通信学 》无惯性自适应精英变异反向粒子群优化算法 康岚兰(2020-05-09)
1 解决问题
反向粒子群优化算法计算开销大,易于陷入局部最优的不足
- 虽然粒子更新公式中的惯性项保持了粒子多样性,但同时降低了种群收敛速度
2 创新点
-
NIV,一种新的粒子运动方程(目的是相比PSO利用个体经验更多,NIV更多利用种群信息)
-
type1:NIV-D
随机选择种群中2个个体,利用个体间的差异,指导粒子运动
NIV-U与NIV-D相比,通过种群前两个时刻中所有粒子经验来指导当前粒子飞行,收敛速度更快(下文实验证明)。
但以上两种都无法探知所有环境信息,因此粒子仍可能陷入局部最优,所以提出下面的NIV-R
-
type3:NIV-R
将差分项用一个随机值来代替
4 实验分析
- 收敛趋势比较
-
基于分解策略,使粒子向指定数量的邻居均值学习,实现粒子第二次学习。
每个粒子都有三重属性向量:粒子当前位置向量、种群最优向量、指定数量邻居均值向量
-
档案维护策略
外部档案用来存放迭代产生的非劣解集
3算法步骤
- r较小,需要较大变异值F,提高算法搜索能力;r增大时,群体较为分散,变异值F减小,加速算法收敛。
- 迭代初期(t较小),先验认知不足,变异值F增大;随着迭代(t增大),变异值F减小,平滑收敛。
- 算法初期扩大搜素偶空间,迭代后期,变异率逐渐减小,避免震荡同时加速算法收敛。
- 非线性自适应惯性权重更新策略(NIV)
4实验分析
-
算法的时间复杂度分析
分析算法的各个主要的策略和步骤。之后写文章来看看这里怎么写的!!!
-
策略有效性分析
加策略的结果,和不加策略的结果对比
-
参数敏感性分析
策略中重要参数取不同值进行对比
2005《计算机学 》广义粒子群优化模型 高海兵
1解决问题
粒子群未能有效解决的离散及组合优化问题(粒子群算法所不擅长的)
2创新点
-
广义粒子群优化模型(GPSO)
通过分析粒子群优化机理,忽略粒子的具体更新策略。
-
利用该模型提出基于遗传操作的粒子群优化模型
GPSO模型中以遗传操作作为粒子更新算子
- 确定算法参数和适应度函数
- 解的编码
- 初始化
- 更新个体极值
- 更新邻域极值
- 粒子与其个体极值交叉
- 粒子与其邻域极值交叉
- 粒子的自身动态变异
- 算法停止条件判断
-
Inver over是针对TSP问题的遗传操作,提出基于Inver over操作的粒子群优化算法
3个人想法
很适合初学入门,对于PSO讲解非常详细,但是粒子群算法不适用于离散问题,所以不建议深究和继续探索。
也是我研究生阶段阅读的第一篇期刊文献,不适用于我们所研究的连续优化问题。
2010《计算机学 》智能单粒子优化算法 纪震
1解决问题
大部分随机优化算法的性能都是随维度的增加而变差
传统的PSO算法往往同时改变整个粒子各个维度上的数值,并根据更新后的解矢量得到一个适应度值。适应度值仅能判断解矢量的整体质量,但不能判断各部分维度是否向最优方向移动
全局最优:[0, 0, 0]
初始解:[1, 1, 1]
随机扰动:[0.2, -0.5, 0.3]
下一代解:[1.2, 0.5, 1.3]2创新点
-
提出采用一个粒子在解空间搜索
-
粒子的位置矢量被分解成一定数量的子矢量,并基于子矢量对粒子进行更新
-
-
新的学习策略
4个人想法
一个粒子进行迭代寻优很新颖,同时时间复杂度将大大降低,但是其求解精度一定不会特别好。同时对于维度相关性的确定,不就是降维的思想吗维思想可以继续想想!!!
2018《电子学 》基于多种群的自适应迁移PSO算法 邓先礼
1解决问题
标准PSO单一 会学习模式造成的易陷入局部最优和后期收敛速度慢
2创新点
-
扩展 会学习:Pbest、Gbest和Lbest(环形拓扑下邻居最优)
-
周期评估性能,指导粒子迁移
何时粒子迁移呢/strong>
每隔cycle代就进行种群性能评估,执行粒子迁移
如何评估种群性能
4实验分析
- 实验测试函数选取CEC2013,28个函数
- 显著性检验
- t-检验
- Friedman-检验
5个人想法
- 多种群小生境,寻找种群间的***信息交流机制!!***
2016《计算机学 》基于自适应搜索中心的骨干粒子群算法 王东风
骨干粒子群算法BBPSO,取消速度项,粒子位置由服从高斯分布的随机采样获得。
1 解决问题
BBPSO在单峰函数具有很好的效果,但是在多峰函数上表现不好
2 创新点
- 搜索中心自适应调整:基于粒子适应度值,提出对粒子位置高斯采样均值的自适应调整策略。增大
- “镜像墙”越界粒子处理方法:
- 采用不同拓扑结构:算法前期随机结构,增强群体多样性;算法后期全局结构,增强搜索准确性
2006《IEEE》Comprehensive Learning Particle Swarm Optimizer for Global Optimization of Multimodal Functions-用于多峰函数全局优化的综合学习粒子群算法 J.J. Liang
CLPSO
1解决问题
保留种群多样性,防止早熟收敛。
2创新点
-
综合学习策略
- (a)图二维粒子,如果gbest和pbest位于当前粒子的两侧,可能引起粒子震荡,更可能为gbest提供更大的能量,(gbest-X)>(pbest-X),向gbest移动。
- (b)图二维粒子中,如果gbest和pbest位于当前粒子的同一侧,并且gbest在中间,那么会落到gbest,搜索空间减少。
-
学习概率Pc
为种群中粒子设置不同的学习概率(0~0.5),使粒子在种群中具有不同水平的勘探和开发能力。
-
刷新间隙
若粒子m代都没有得到改进提升,则分配学习对象。
3 算法流程
如果最优个体连续2K代都更新,并且当前种群规模psg>PSmin(种群规模下限),那么触发删除算子1
如果最优个体连续K代都不更新,并且当前种群规模psg>PSmax(种群规模上限),那么触发删除算子2
如果最优个体连续K代都不更新,并且当前种群规模psg>PSmax,那么触发增加算子
-
-
基于logistic模型的增加/删除数目自适应变化的方法
增加/删除个体的数目决定了种群规模psg的变化幅度,psg较大时,应增加数目减少,删除数目增大,反之相反。
此处改进了logistic人口模型,设计增加/删除多少个粒子/p>
-
删除算子
- 最优个体连续2K代都更新,为减少时间复杂度,采用分组最差删除方法,即除最优个体外的psg-1个个体按适应度值排序,随机分成ndec个组,删除每组最差的个体。
- 种群最优连续K代都不更新,陷入局部最优,相似个体增多,多样性变差,本来应该增加个体来跳出局部最优,但是种群规模超过上界,删除种群中适应度较差的ndec个个体。
3 算法流程
*4 写作技巧
算法时间复杂度的分析
很多好文章都有时间复杂度的分析,即每次迭代所需时间的有哪些部分。
5 实验分析
- 对于删除多少个粒子中的参数,进行了实验分析:
r为[-1,1]之间的随机数,用来控制局部搜索的方向,dt为线性递减的局部缩放因子d=d*(1-t/T)
-
-
反向学习
陷入局部最优,n个粒子进行S代反向学习,其他N-n个粒子学习方式不变,反向学习对象是该粒子的历史最差位置,以及初始选择规模m的初始最差种群中的任一个体,为了保证反向学习广泛的分布在搜索区域,这m个个体应该具有较大的欧氏距离,两两距离大于排异半径R。
4实验分析
时间复杂度分析
反向学习机制分析
*2013《电子学 》一种基于动态边界的粒子群优化算法 李迎秋
1解决问题
根据停滞期粒子运动特点,动态调整搜索边界,引导粒子到更有效的区域搜索,减轻早熟收敛
2创新点
-
边界的动态调整
D维搜索空间相当于一个D维盒子,所有粒子在[Bl,Br]D内飞行时,就收缩边界;否则就扩展边界。
上述操作是必须边界与全局极值距离大于阈值时才进行。
如果过度收缩,即边界与全局极值距离小于等于阈值,需要对搜索空间的边界进行重置,以扩大搜索范围。
- *停滞粒子的处理
- 停滞粒子飞行速度为0,加入正态分布的随机数来激活粒子;
- 清除粒子的个体经验,即粒子个体极值设置为当前位置
- 并不是对所有粒子都施加变异操作,根据大于阈值0.9的随机数选择少部分粒子施加变异操作。
*2004《电子学 》自适应变异的粒子群优化算法 吕振肃
1解决问题
增加跳出局部最优的能力
-
前提分析
粒子群算法不管是全局收敛还是早熟收敛,种群中粒子都会聚集,根据函数特点要么收敛于一点,要么收敛于多点。
-
群体适应度方差
k取[0.1-0.3]内的任意数
如何变异呢/p>
2004《计算机科学》混沌粒子群优化算法 高鹰
1创新点
- 混沌寻优思想引入粒子群优化算法
logistic混沌系统
Zn+1 = uZn(1-Zn)n=0,1,2…
u为控制参数,一般取u=4,系统处于混沌状态。
2算法步骤
-
基于位置、速度二维扰动更新粒子信息
对周期性震荡的正弦函数因子进行改进,原来的方法有两个缺点:
1如果全局最优已经在最优解的附近,扰动会偏离最优解;2震荡后的位置与原位置更远
对于第一个问题,限定为只有陷入局部最优的粒子才进行震荡;第二个问题,将震荡幅度限制为20%之内。
4个人想法
这篇文章前面的理论叙述和分析十分全面,后面的实验结果分析就比较简单。
2020《小型微型计算机系统》一种最优粒子逐维变异的粒子群优化算法
1解决问题
针对粒子群算法容易陷入局部最优/收敛速度过慢/精度低等问题
2创新点
提出一种新的逐维变异策略,对全局最优粒子进行逐维的重心反向学习变异
逐维变异降低了维度间干扰,通过更新最优位置引导粒子向更好的位置飞行,加强了种群多样性。
3算法流程
2015《Swarm and Evolutionary Computation》Heterogeneous comprehensive learning particle swarm optimization with enhanced exploration and exploitation-改进探索与开发的异构综合学习粒子群算法
2005《Journal of Information Science and Engineering》A Parallel Particle Swarm Optimization Algorithm with Communication Strategies-具有通信策略的并行粒子群优化算法
1解决问题
种群间粒子之间的通信问题
2创新点
提出了粒子群优化(PPSO)算法的并行版本以及可以根据数据的独立性使用的三种通信策略。
- 第一个策略是为独立的或仅松散相关的解决方案参数设计的,例如 Rosenbrock 和 Rastrigrin函数
- 第二种通信策略可以应用于更紧密相关的参数,例如 Griewank 函数。
- 在参数的属性未知的情况下,可以使用第三种混合通信策略。
3算法流程
2004《IEEE》Particle Swarm (Optimization Algorithms with Novel ]Learning Strategies- 新型学习策略的粒子群优化算法
1解决问题
粒子群算法在多峰函数上的不足
2创新点
提出了三种具有新颖学习策略的
- 精英学习
在 PSO 中,最佳位置gbest 可能具有有用的信息。在 ELPSO 中,群中的精英,最优秀的人才和最优秀的粒子被用作典范。为了充分利用精英,对于每个粒子,随机选择 m 个维(或变量)以从 gbest 学习,而其他维从 pbest 学 习。m 是整数。如果 m 过大,则当 gbest 落入局部最优值时,它将使其他粒子更快地吸引到局部最优值, 并且会由于实验结果而过早收敛。相反,当 m 较小时,粒子在初始代中保持较大的多样性,并且更有可能脱离局部最优。
- 自身学习
认为群体中的每个粒子都有其良好的特性,其他粒子可以学习这些特性。因此,在此版本中,粒子自身的最佳和其他粒子的最佳用作示例。因此,每个粒子都可能从群中的所有粒子中学习。在搜索过程中,我们不知道每个粒子的尺寸是好是坏。因此,粒子的每个维度都有被其他粒子学习的平等机会。对于每个粒子,其他粒子的最佳尺寸是随机的根据概率选择。
- 他人学习
基于对其他两个版本的分 析,我们提出了 CLPSO,该 CLPSO 从群体的最佳,粒子的最佳和其他粒子的最佳学习中学习,以便粒子从精英,自身和其他粒子。在此版本中,将随机 选择 m 个维度以从 gbest 中学习。随机选择一些剩 余的 Dm 维以从一些随机选择的粒子的最佳学习中 学习,而其余的维则从其最佳学习中学习。当 m = -0 时,尽管 gbest 似乎毫无用处,但实际上它是一个粒子的 pbest,并且被其他粒子学习的机会均等。
2016《Swarm and Evolutionary Computation》Directionally Driven Self-Regulating Particle Swarm Optimization algorithm-定向驱动自调节粒子群算法
1解决问题
改进基本 SRPSO 算法
2创新点
定向驱动自调节粒子群优化(DD-SRPSO)算法。在 DD-SRPSO 中,我们合并了两个新策略,即定向更新策略和旋转不变策略。与 SRPSO 中一样,DD-SRPSO 中的最佳粒子使用相同的自调节惯性权重更新策略。性能不佳的粒子被分组在一起,以从精英粒子组中获得方向更新。随机选择所有剩余的粒子,以进行全局搜索方向自我感知的 SRPSO 策略或旋转不变策略,以探索搜索空间的旋转方差性质。
3个人想法
写的很不错,还没有十分读懂,之后还要继续多读几遍!!!
2020《计算机应用研究》一种新的自适应动态文化粒子群优化算法
1解决问题
克服粒子群优化算法在解决复杂问题时候的难题
2创新点
引入评价粒子群早熟收敛程度判断粒子群状态,算法陷入局部最优,自适应的利用影响函数对种群空间进行变异更新,从而有效发挥文化粒子的双演化双促进机制,并且根据收敛成都自适应调整惯性权重。
3算法流程
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
-