简单易懂讲解:什么是粒子群优化算法(PSO) - 第一篇介绍
最编程
2024-07-22 09:13:22
...
粒子群算法(Particle Swarm Optimization)是一种优化算法,其主要思想受到自然界鸟群飞行的启发。
对一群鸟群来说,其群体觅食行为呈现一定规律:单只鸟并不知道食物地在哪里,但可以通过飞行中对食物的远离程度来纠正自己的飞行。体现在单只鸟上可能并不明显,但当鸟群数量多起来之后,就可以利用鸟群数量弥补单只鸟搜索能力的不足,逐渐逼近最优值。而在这个过程中,整个系统还需要满足一定的性能指标(称为代价函数)。
上一篇: 安装fbsimctl遇到的问题与记录
推荐阅读
-
简单易懂讲解:什么是粒子群优化算法(PSO) - 第一篇介绍
-
简单易懂版 - 什么是粒子群算法(PSO)?" - PSO 是这样工作的: 想象一群小鸟寻找食物,它们会互相学习、竞争并跟随最优秀的伙伴。这就是模仿群体智慧(Swarm Intelligence,SI)的粒子群优化算法,由 Eberhart 博士和 Kennedy 博士创造,属于多智能体优化系统(MAOS)的一员。 - 数学背后的逻辑: - 每只“鸟”(粒子)依据邻居过去的发现来飞得更好: 1. 受到激励的好位置(Pbest) 2. 与附近伙伴的成绩对比 3. 阿婆姨领先者的模仿 - 模型简化来说,每个粒子像 D 维空间的理想点,按特定速度飞行,速度随自身经验和同伴表现实时调整。我们用 Xi 表示 D 个粒子的集合,其中 Pi 存储过最佳位置,Pg 是群体中最优的位置,Vi 是粒子的速度。 - 更新规则: - **速度更新**:有点像梯度下降法中的导数概念,但因鸟群数量大,能有效跳出局部最优区域,引导群体朝全局最优方向前进。 - **位置更新**:在固定的时间内,新移动的距离就是 Vi(即速度向量在单位时间内的累积效果)。 - 参数简述:粒子群算法涉及多个参数,如粒子数量、学习因子(影响对过去经验的重视程度)、加速常数(控制探索与利用之间的平衡),这些参数的选择会影响算法的实际性能和收敛速度。