particleswarmoptimization粒子群优化算法解析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最优解
v
? 初始化:将种群做初始化,以随机的方式求出每一 粒子之初始位置与速度。
? 评估:依据适应度函数计算每一个粒子适应度以判 断其好坏。
? 计算自身最优:找出每一个粒子到目前为止的搜寻 过程中最佳解,这个最佳解称之为 Pbest。
? 计算全局最优:找出种群中的最佳解,此最佳解称 之为Gbest。
群体智能(Swarm Intelligence )
生物学家研究表明:在这些群居生物中虽然每个个体的智能不 高,行为简单,也不存在集中的指挥,但由这些单个个体组成 的群体,似乎在某种内在规律的作用下,却表现出异常复杂而 有序的群体行为。
Swarm可被描述为一些相互作用相邻个体的集合体,蜂群、蚁群、鸟群都是Swarm的典 型例子。
粒子群初始位置和速度随机产生,然后按公式 (1)(2) 进行迭代,直至找到满意的解。 目前,常用
的粒子群算法将全体粒子群 (Global) 分成若干个有 部分粒子重叠的相邻子群,每个粒子根据子群
(Local) 内历史最优Pl调整位置,即公式 (2) 中Pgd 换 为Pld 。
? 每个寻优的问题解都被想像成一支鸟,也称为“Particle”。
Vi =?Vi1,Vi2 ,...,Vid ?
Xi =?Xi1,Xi2 ,...,Xid ?
x(t) Here I am!
Study Factor
My bes最t局优部解
position
pi
运动向量
xi (t ? 1) ? xi (t) ? vi (t)
惯性向量
pg The best position of
位置Pg为所有Pi ( i=1, …,n )中的最优g best ;第i个粒 子的位置变化率(速度)为向量 Vi= (vi1 , v i2 ,…, v iD )。
每个粒子的位置按如下公式进行变化(“飞行”):
xi ? (xi1, xi2 ,? , xin ) pi ? ( pi1, pi2 ,? , pin ) pg ? ( pg1, pg2 ,? , pgn )
Solution
Past Best Solution
Randomly searching
foods
? 先前经验
Max
6 1
2
2 1
Max 6
Randomly searching
foods
粒子群算法(particle swarm optimization ,PSO)由 Kennedy和Eberhart在1995年提出,该算法模拟鸟集群飞 行觅食的行为,鸟之间通过集体的协作使群体达到最优目 的,是一种基于Swarm Intelligence 的优化方法。
? 粒子的维数: 这是由优化问题决定, 就是问题解的长度
? 粒子的范围: 由优化问题决定,每一维可以设定不同的范围
? Vmax: 最大速度,决定粒子在一个循环中最大的移动距离,通 常设定为粒子的范围宽度
? 学习因子: c1 和 c2 通常等于 2. 不过在文献中也有其他的取值. 但是一般 c1 等于 c2 并且范围在0和4之间
? 中止条件: 最大循环数以及最小错误要求.
? 相同点 ? 都是基于种群的 ? 都需要适应度函数. ? 都是随机计算技术 ? 不能保证100%收敛
? 不同点 ? PSO没有交叉变异等进化操作 . ? PSO中通过粒子的竞争与协作实现种群进化 ? 粒子具有记忆能力
? 优点 ? PSO 容易实现具有较小的调整参数 ? 收敛速度快、解质量高、鲁棒性好
1. 算法分析; 2. 粒子群拓扑结构; 3. 参数选择与优化; 4. 与其他演化计算的融合; 5. 应用。
PSO 算法数学表示如下:
设搜索空间为 D 维,总粒子数为 n。第i个粒子位置表
示为向量Xi= ( x i1 , x i2 ,…, x iD );第i个粒子 “飞行”
历史中的过去最优位置p best (即该位置对应解最优)
为Pi= ( p i1 ,p i2,…,piD ) ,其中第g个粒子的过去最优
? 更新速度和位置:根据速度与位置公式更新每一粒 子的速度与位置。
? 算法终止. 返回步骤 2继续执行,直到获得一个令人 满意的结果或符合终止条件为止。
? 粒子数: 一般取 20 – 40. 其实对于大部分的问题10个粒子已经 足够可以取得好的结果, 不过对于比较难的问题或者特定类 别的问题, 粒子数可以取到100 或 200
? 所有的Particle 都有一个fitness function 以判断目前的位置 之好坏,
? 每一个Particle具有记忆性,能记得所搜寻到最佳位置。
? 每一个Particle 还有一个速度以决定飞行的距离与方向。
vid (t ? 1) ? vid (t) ? c1 ?rand () ?( pid ? xid (t)) ? c2 ?rand () ?( pgd ? xid (t))
ACO算法设计虚拟的“蚂蚁”,让它们摸索不同路线,并 留下会随时间逐渐消失的虚拟“信息素”。根据“信息素 较浓的路线更近”的原则,即可选择出最佳路线。
目前,ACO算法已被广泛应用于组合优化问题中,在图着 色问题、车间流问题、车辆调度问题、机器人路径规划问 题、路由算法设计等领域均取得了良好的效果。也有研究 者尝试将ACO算法应用于连续问题的优化中。由于ACO算法 具有广泛实用价值,成为了群智能领域第一个取得成功的 实例,曾一度成为群智能的代名词,相应理论研究及改进 算法近年来层出不穷。
鱼聚集成群可以有效地逃避捕食者,因为任何一只鱼发现异常都可带动整个鱼群逃避。
蚂蚁成群则有利于寻找食物,因为任一只蚂蚁发现食物都可带领蚁群来共同搬运和进 食。
一只蜜蜂或蚂蚁的行为能力非常有限,它几乎不可能独立存在于自然世界中,而多个 蜜蜂或蚂蚁形成的Swarm则具有非常强的生存能力,且这种能力不是通过多个个体 之间能力简单叠加所获得的。
(2)
其中,C1,C2为正常数,称为加速因子;rand( )为[0,1]之间 的随机数;w称惯性因子,w较大适于对解空间进行大范围探 查(exploration),w较小适于进行小范围开挖(exploitation)。第 d(1≤d≤D)维的位置变化范围为[-XMAXd , XMAXd],速度变化 范围为[-VMAXd , VMAXd],迭代中若位置和速度超过边界范围则 取边界值。
A C
A C
C
A
生物社会学家E.O.Wilson指出:“至少从理论上,在搜索食物过程中群 体中个体成员可以得益于所有其他成员的发现和先前的经历。当食物源 不可预测地零星分布时,这种协作带来的优势是决定性的,远大于对食 物的竞争带来的劣势。”
? 避免碰撞 ? 速度匹配 ? 中心聚集
Food Global Best
vid (t ? 1) ? w ? vid (t) ? c1 ? rand ( ) ? [ pid (t) ? xid (t)] ? c2 ? rand ( ) ? [ pgd (t) ? xid (t)]
(1)
x id ( t ? 1 ) ? x id ( t ) ? v id ( t ? 1 ) 1? i? n 1? d ? D
社会性动物群体所拥有的这种特性能帮助个体很好地适应环境,个体所能获得的信息 远比它通过自身感觉器官所取得的多,其根本原因在于个体之间存在着信息交互能 力。
蚁群算法(Ant Colony Optimization, ACO)由Colorni,
Dorigo和Maniezzo在1991年提出,它是通过模拟自然界蚂蚁社 会的寻找食物的方式而得出的一种仿生优化算法。自然界种蚁 群寻找食物时会派出一些蚂蚁分头在四周游荡,如果一只蚂蚁 找到食物,它就返回巢中通知同伴并沿途留下“信息素” (pheromone) 作为蚁群前往食物所在地的标记。 信息素会 逐渐挥发,如果两只蚂蚁同时找到同一食物,又采取不同路线 回到巢中,那么比较绕弯的一条路上信息素的气味会比较淡, 蚁群将倾向于沿另一条更近的路线前往食物所在地。
同遗传算法类似,也是一种基于 群体叠代的,但并没有遗 传算法用的交叉以及变异,而是 粒子在解空间追随最优的 粒子进行搜索 。PSO的优势在于简单容易实现同时又有深 刻的智能背景,既适合科学研究,又特别 适合工程应用, 并且没有许多参数需要调整。
整合群体行为、 人类决策 与鸟群行为 发展而成称为 粒子群算法 。
2018/10/31
31
IEEE TRANSACTION ON EVOLUTIONARY COMPUTION 于
2004年出版了第 3卷:SPECIAL ISSUE ON PSO 。 Russell C.Eberhart, Yuhui Shi 在卷首语中指出 了当前 PSO研究的几个主要方向及热点:
【Eberhart, Kennedy, 1995 】
Russ Eberhart
? 当其它鸟发现了更佳的觅食地点时,
? 鸟群间会有某种类似 广播的沟通行为,渐渐的将其它 鸟群引领至较佳的地点
? 这样的觅食行为是利用社会中所存在的互相影响的概 念,来引领所有个体朝向最佳解位置
? 粒子群的概念视为一个简单的社会系统 ? 每只个体被视为一个解答 ,称之为粒子(Particle) ? 每个粒子经由适应函数的衡量而具有一个 适应値
相关文档
最新文档