粒子群算法基本原理(2)

2019-03-15 18:51

n?1nnnnnvid???vid?c1?r1?(pid?xid)?c2?r2?(pgd?xid) (4-1)

Sig(vid)?1 (4-3)

1?exp(?vid)?1if?rand()?Sig(vid) (4-4) xid??otherwise?0其中Sig(vid)为Sigmoid函数,通常为防止速度过大,令vid?[vidmin,vidmax],以使概率值不会过于接近0或1,保证算法能以一定的概率从一种状态跃迁到另一种状态,防止算法早熟。

虽然Kenndedy和Eberhart将KBPSO应用于函数优化问题,并验证了KBPSO的有效性,但基于KBPSO的应用研究有限。 4.2.2 SBPSO算法

基于连续基本 PSO 算法的信息机制,Shen 等人提出一种改进的离散二进制粒子群算法(SBPSO)用于 QSAR(Quantitative Structure-activity relationship)建模的特征选择中。SBPSO 算法中舍弃了基本 PSO 算法中速度、位置更新公式,重新定义速度vi为一个在0到1之间的随机数,粒子元素的位置xid则根据下列规则由随机产生的vid确定:

n?1nxid?xidn?1nxid?Pidif(0?vid??) (4-5)

if(??vid?ngd1(1??)) (4-6) 2xn?1id?P1if((1??)?vid?1)2

(4-7)

其中α∈(0,1)称为静态概率(static probability),是 SBPSO 算法中唯一可调参数,它可以是一个常数、一个变量或是一个随机数。

虽然SBPSO的更新公式在形式上与KBPSO以及基本的PSO算法都有很大的

改变但其基本的思想不变,即:每个粒子都只与自身历史最优值和全局最优值进行信息交流BPSO 位置更新公式(4-5)类似于基本连续 PSO 速度更新公式(4-1)中的第一项,都是一种“惯性”的表现,只不过SBPSO 是停留在原来的位置,而PSO 中是根据速度惯性继续搜索。同样,SBPSO 位置更新公式(4-6)、(4-7) 则分别对应了基本 PSO 速度更新中的第二、三项,分别代表了粒子的“认知”部分和“社会”部分,表示粒子自身和社会群体对粒子下一步行为的影响。式(4-5)增强了 SBPSO 算法的全局搜索能力,使得粒子能够有效地对目标区域进行搜索,找出全局最优解。没有式(4-5),粒子将完全跟随自己的两个最优解“飞行”,从而容易陷入局部最优值。式(4-6)、(4-7) 则根据先前的搜索经验对粒子搜索进行指导,没有这两项,SBPSO 算法则变成了完全的随机搜索。因此,在SBPSO 算法中,静态概率α 替代了基本 PSO 算法中的ω,c1,c2 等参数,对算法的性能至关重要。较大的α 值能使得算法更好地搜索解空间,从而能够更好地跳出局部最优搜索到全局最优;但过大的α 值则会导致算法无法充分利用已有的寻优信息,致使算法收敛速度过慢。较小的α 值可以使得粒子快速集中于最优邻域,提高收敛速度,但容易导致算法陷入局部最优。

4.3离散二进制PSO算法参数性能分析

为了全面地比较、衡量离散二进制PSO算法中关键参数对算法优化性能的影响程度,本文中以标准优化测试函数为对象进行算法优化性能的仿真实验,并按照以下统计指标进行评价。

(1)最优率

群智能优化算法是一种全局随机性启发式算法,由于算法的随机性,在对复杂优化问题求解时,并不能保证算法以 1的概率收敛到全局最优解。但对于优化算法来说,在一定的运算规模内找到全局最优解最为重要。因此,采用最优率——即优化算法搜索到全局最优解的概率,作为算法性能评价的第一指标。在本文中,每个算法对标准函数均优化求解100 次,其中成功搜索到全局最优解的比例即为最优率。

(2)最优适应值、平均最优适应值

最优适应值是优化算法寻优时所找到的最好解,平均最优适应值(简称平均

最优值是对优化问题多次求解后搜索到的最优解适应度值的平均值。最优适应值可以衡量算法的优化性能,看其能否找到全局最优解,而平均最优适应值则衡量算法性能对随机初值和操作的依赖程度。平均最优适应值越接近全局最优解适应度值,说明该优化算法对随机初值和操作的依赖程度越低、算法的鲁棒性越高。

(3)收敛时间

收敛时间是优化算法寻优时所要考虑的另一项重要指标。收敛时间越短,则算法的收敛速度越快,消耗的计算资源就越少;反之,收敛时间越长,则算法的收敛速度越慢,所需的计算资源就越多。在本文中分别以最快收敛步数——即算法搜索到全局最优解的最少迭代次数,和平均收敛时间——即算法多次寻优找到全局最优解迭代步数的平均值,作为考察指标。最优收敛步数能够表明算法搜索能力,但考虑到群智能算法的随机性,因此平均收敛步数能更好地表征算法的搜索能力。

4.4改进的离散二进制PSO算法

离散二进制 PSO 算法具有基本 PSO 算法的简单、易实现等优点,特别是 SBPSO算法,其算法中调节参数只有静态概率;但同时也继承了基本 PSO 算法易陷入局部最优的缺陷。针对这一问题,对于连续空间PSO 算法目前已经有大量文献报道对 PSO 算法的改进研究[50-52];但对于离散二进制 PSO 算法的改进工作目前相关的研究报道还很少。本章在基本离散二进制 PSO 算法的基础上,引入变异操作用以改进离散二进制 PSO 算法,提高其性能。

在遗传算法(Genetic Algorithm,GA)中,如果种群收敛到早熟集(premature set)GA 算法将基本失去对解空间的搜索能力。对于如何避免过早收敛,GA 算法中在遗传算子、种群规模、遗传漂浮(genetic drift)方面均有相关的研究。其中,在遗传算子方面,献 中指出 GA 的三种基本遗传算子中交叉与选择算子只具有局部搜索能力,它们的搜索范围只由当前种群决定,而变异算子是唯一具有全局搜索能力的遗传算子。根据模式定理,变异算子在遗传算法中的作用主要是使种群保持一定的多样性,避免群体陷入局部最优无法跳出。变异算子虽然具有全局搜索能力,但在实际应用中变异率不能取值过大,否则将破坏算法固有的搜索机制,无法有效利用已有信息,使得算法退化为随机搜索算法。但变异率也并

不是越小越好,在 GA 中变异算子对于遗传算法不仅是必需的,而且在变异算子的作用不至于使算法退化为随机搜索的前提下应尽量加大变异率,否则算法易陷入局部最优 。由于变异算法能有效地保持群体的多样性,一定程, 度地提高了算法跳出局部最优的概率,且操作简单,因此得到了广泛的研究与应用,并被成功引入至粒子群算法基本的离散二进制PSO算法,特别是SBPSO算法,易于陷入局部最优。虽然KBPSO算法中最大速度的设定使得粒子每个比特至少具有一定概率变异,但当算法迭代一定次数后,由于速度较大,变异的概率过小,此时难以有效引入新的模式帮助群体跳出局部最优;而 SBPSO 算法则完全缺乏跳出局部最优的手段。因此为了提高二进制 PSO算法的搜索能力,在基本的离散二进制 PSO 算法中引入变异操作,但为了能有效利用群智能保证算法搜索性能,变异概率不能设置过大,以防止破坏 PSO 算法的迭代机制影响算法优化性能。

与二进制编码的 GA 一样,在 DBPSO 算法中变异操作的实施也可采用多种措施,如单点变异、多点变异,其变异概率也可以采用确定值或复杂的自适应参数等等。由于在 DBPSO 算法中,新的粒子主要是通过 DBPSO 的位置更新公式实现,变异操作的引入只是为了保持群体的多样性,防止早熟,因此本文采用简单的变异策略,即设定变异概率 pm,新一代粒子群中每一位比特都以概率pm实施变异操作。

通过上面的介绍我们来分析一下对循环流化床床温的PSO算法改进的一般过程为如下所示:

参数 编码 种群1 计算适配值 满足要求 是

否 PSO算法 种群2 解码 寻优结束

(1)确定每个参数的大致范围和编码长度,进行编码。上述床温温控问题最主要是对P,I,D三个参数进行调节,我们去每个参数的为10位长度,即取10位二进制长度为其编码长度,而总共有三个参数,那么总的编码长度为30位二进制长度。

(2)随机产生n个个体构成初始种群。这个个体是根据实际情况来选择的,这里我们把这个个体选成30,即每30个个体构成一个种群。

(3)将种群中各个体解码成对应的参数值,,用此参数求代价函数值J及其适应函数值f,取f=1/J。

(4)应用PSO算法,即分别运用KBPSO和SBPSO对种群P(t)进行操作,分别运用个体最优和群体最优对种群进行如上面所示的优化,产生下一代种群P(t+1),同时运用变异的原理对新产生的种群进行变异,使其保证PSO的收索性能;这里我们选取100代种群。

(5)重复步骤(3)和(4)直至参数收敛,达到预期的目标。

在这里我们取权值w为0.7,c1和c2的值都为2,变异概率Pm为0.1. 参数的取值范围分别为Kp:[0,20],Ki和Kd分别取[0,1];

变异操作的引入进一步提高了 KBPSO 和 SBPSO 算法的最优率,这主要是变异操作使得算法能更好地保持个体之间的差异,从而能够有效地搜索解空间,提高算法搜索到全局最优解的概率。但同时由于变异操作的随机性,因此在提高种群多样性的同时,也破坏了部分粒子的寻优过程,降低了算法的收敛速度。需要注意的是,过大的变异操作概率将严重影响DBPSO 算法自有的更新机制,导致算法退化,引起优化性能的急剧下降。适当的变异概率可以提高 PSO 算法的性能,同时也可以发现,对于 KBPSO 和 SBPSO,以及对于不同的优化问题,最优的变异概率显然并不相同。因此,在离散二进制 PSO 算法中,在保证算法自有更新机制不被破坏的前提下,尽量提高变异概率对算法性能是有益的。


粒子群算法基本原理(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:转载点工程施工组织设计方案 (1)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: