粒子群算法简介

粒子群算法是一种基于种群的智能算法,每个粒子代表潜在解,通过向自身最佳位置pbest和全局最佳位置gbest学习来寻找最优解。算法不依赖交叉和变异,而是利用粒子的记忆能力更新位置。速度更新公式包含三部分,平衡全局和局部搜索。探索和开发是算法中的关键概念,分别对应全局和局部搜索。
摘要由CSDN通过智能技术生成

粒子群算法简介

前言

本文内容借鉴于 刘衍民的博士论文:“粒子群算法的研究及应用”.

现有的大多数群智能算法,如:乌鸦算法、鸽子算法、蚁群算法、萤火虫算法和灰狼优化算法等,都可以归类为粒子群算法.(个人觉得,这些算法就是整个稀奇古怪的名字,颇有舞文弄墨,强造创新点之嫌,其算法本质仍为粒子群算法).

粒子群算法与遗传算法最大的不同之处在于,不使用交叉和变异等进化算法产生后代,而是根据种群中其他粒子的分布来更新粒子的位置.

粒子群算法及其基础理论

粒子群算法是一种基于种群的智能算法,种群中每个成员叫做粒子,代表着一个潜在的可行解,而食物的位置则被认为是全局最优解.在飞行过程中,群体中所有的粒子都具有记忆的能力,能对自身位置和自身经历过的最佳位置进行调整.为了实现接近食物位置这个目的,每个粒子通过不断地向自身经历过的最佳位置(pbest)和种群中最好的粒子位置(gbest)学习,最终接近食物位置.(p,表示personal,“自知部分”.g,表示global, “社会部分”).

下图给出了粒子速度和位置在第t代和第t+1代的调整示意图,其中五角星的位置为食物位置,v1表示第t代"社会部分"学习引起粒子向gbest方向飞行的速度;v2表示"自知部分"学习引起粒子向pbest方向飞行的速度;v3表示粒子自身具有的速度.在v1,v2v3的共同作用下,最终粒子以速度vt+1到达新的粒子位置.

在这里插入图片描述
在这里插入图片描述

粒子群算法的数学描述如下,假设种群规模为N,在迭代时刻t,每个粒子在D维空间中的坐标位置可以表示为:
x i ( t ) ‾ = ( x i 1 , x i 2 , . . . x i d , . . . x i D ) \overline{x_i\left( t \right) }=\left( x_{i}^{1},x_{i}^{2},...x_{i}^{d},...x_{i}^{D} \right) xi(t)=(xi1,xi2,...xid,...xiD)
粒子的速度表示为:
v i ( t ) ‾ = ( v i 1 , v i 2 , . . . v i d , . . . v i D ) \overline{v_i\left( t \right) }=\left( v_{i}^{1},v_{i}^{2},...v_{i}^{d},...v_{i}^{D} \right) vi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值