粒子群优化算法实践

粒子群优化算法实践

ID:21763395

大小:193.87 KB

页数:7页

时间:2018-10-24

粒子群优化算法实践_第1页
粒子群优化算法实践_第2页
粒子群优化算法实践_第3页
粒子群优化算法实践_第4页
粒子群优化算法实践_第5页
资源描述:

《粒子群优化算法实践》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、粒子群优化算法实践04123157王斌、粒子群优化算法起源及介绍粒子群优化(PSO)算法是由Kennedy和Eberhart于1995年用计算机模拟鸟群觅食这一简单的社会行为时,受到启发,简化之后而提出的。在粒子群优化算法中,每个优化M题的潜在解都是搜索空间中的一只鸟,称之为“粒了”。所有的粒了都有一个由被优化的函数决定的适应值,每个粒了还有一个速度决定他们6翔的方向和距离。然后粒子们就追随当前的最优粒子在解空IX!屮搜索。优化开始吋先初始化为一群随机粒子(随机解)。然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个极值來更新自己。第一个极值就

2、是整个种群目前找到的最优解。这个极值是全局极值。第二个极值是粒子本身所找到的最优解,称为个体极值。这是因为粒了仅仅通过跟踪全局极值或者局部极值来更新位置,不可能总是获得较好的解。这样在优化过程中,粒子在追随全局极值或局部极值的同吋追随个体极值则闼满的解决了这个问题。这就是粒子群优化算法的原理。在算法开始吋,随机初始化粒子的位置和速度构成初始种群,初始种群在解空间中为均匀分布。其中第i个粒了在n维解空间的位置和速度可分別表示为Xi=(Xi

3、,Xi2,…,xid)和Vi=(Vii,Vi2,…,Vid),然后通过送代找到最优解。在每一次迭代屮,粒子通过跟踪

4、两个极值来更新自己的速度和位置。一个极值是粒子本身到目前为止所找到的最优解,这个极值称为个体极值Pbi=(Pbu,Pbi2,…,Pbid)。另一个极值是该粒子的邻域到S前为止找到的最优解,这个极值称为整个邻域的最优粒子Nbesti=(Nbestu,Nbesti2,…,Nbestid)。粒子根据如下的式(2-1)和式(2-2)来更新自已的速度和位置:Vi=Vi+ci.rand().(Pbesti-Xi)+C2.rand().(Nbesti-Xi)(2-1)Xi=Xi+Vi(2-2)式中cjUc2是学因子,也称加速凶子,其使粒子具有自我总结和向群体中优秀

5、个体学习的能力,从而向0己的W史最优点以及群体内W史最优点靠近。rand()是0到1之间的随机数。粒子在每一维飞行的速度不能超过算法设定的最大速度VTOX。设置较大的Vmax可以保证粒子种群的全局搜索能力,较小则粒子种群优化算法的局部搜索能力加强。粒子群优化算法是在模拟鸟群觅食时受到启发提出的。提出之后却发现用动物或人的认知来解释算法的原理更加完美。在速度更新公式(2-1)屮由3个部分构成。第1个部分是义,表示粒子在解空间宥按照原宥方向和速度进行搜索的趋势,这可以用人在认知事物时总是用固有的习惯來解释。第2个部分是c,•rand()•(Pbesti-

6、Xj,表示粒子在解空间有朝着过去曾碰到的最优解进行搜索的趋势,这可以用人在认知事物时总是用过去的经验来解释。第3部分是c2•rand()•(Nbestj-Xi),表示粒子在解空间冇朝着整个邻域过去曾礴到的最优解进行搜索的趋势,这可以用人在认知事物时总可以通过学习其他人的知识,也就是分享别人的经验來解释。因此,粒+群优化算法实际上是借用了人或动物认知事物吋的习惯,经验,及学习过程来进行寻优的。粒子在优化过程屮的运动轨迹见图1。在后来的算法改善过程屮,Shi和Eberhart引入了惯性权重w来调节粒子群算法速度的更新,其体公式如卜*。Vi=wVi+Ci.

7、rand().(Pbesti-Xi)+C2.rand().(NbestrXi)惯性权重起着权衡局部最优能力和全局最优能力的作用。二、算法实践过程针对一元二次函数Y=-X(X-2),用粒子群优化算法寻找函数的最大值,函数图像如卜*图所示。y=~x*(x-2)图像曲线X由图像可知,该函数的在X=1处,取到Y的最大值为1。1、参照资料,选取参数cl=2,c2=2,w=0.4。迭代次数X(i)V(i)gbest11.3750.010.8590.001-1.6420.718-0.6570.9601.1991.19730.9680.250.9991.5470.3

8、49980.999•0.00011.000-0.000991.0000.00010.999-0.0001000.999•0.00010.9990.000分析:可以看到,经过100次迭代后,选取的W个粒子成功的找到了函数的最大值gbest=l,并且两个粒子最终也收敛在x=l附近,计算结果符合耍求。2、选取参数cl=2,c2=2,尝试改变权重w的值,令w=l迭代次数X(i)V(i)gbest11.5090.1500.9841.7950.92120.807-0.7010.99890.968-0.82630.555-0.2530.99890.187-0.78

9、19816.60926.3370.9998-1362.335685.4769925.19341.8030.9

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。