参数的设置是否合理关系到基本粒子群算法的应用效果,在实际应用中,必须根据实际需求,具体问题具体分析,通过不断的修改来获得满意的参数搭配。国内外学者在对粒子群算法的研究中发现和积累了一些参数设置的规律,他们发现在某些特定的参数搭配范围内粒子群优化算法的应用效果更好。
根据众多学者的研究总结,粒子群优化算法中常用的参数设置规律如下:
1)种群粒子数N:种群越大,完成一次迭代所需要的时间越长,对应的迭代次数会减少。如果种群太小,算法很容易陷入局部极值,无论迭代多少次也无法跳出;种群太大会导致每次迭代的进化效果有限,且费时,在获得同样最优解的情况下需要更长的等待时间,并不划算。种群大小一般取为20~50。但对于较难求解的问题或者特定类别的寻优过程,种群规模可达到100或200。
2)粒子的飞行速度vmax和vmin:vmax决定粒子在一次循环中的最大移动距离,通常根据实际问题人为设定。如果vmax取值太大,则粒子容易越过最优区域,或是在最优解附近徘徊,导致出现振荡;若取值太小,则粒子可能在个体历史最优位置和全局最优位置的牵引作用下,快速飞向局部极值,不能充分地探测局部极值以外的区域,削弱了粒子的扩展探测能力。假设第D维搜索空间定义为区间[-xmax,+xmax],则一般取vmax=kxmax,0.1≤k≤0.2,搜索空间的每一维都采用类似的方法来设定。vmin决定一个粒子的最小移动距离,通常取0,因为随着迭代过程的进行,粒子的移动距离越来越小,且在即将到达最优位置时接近为0。(www.xing528.com)
3)学习因子c1、c2:学习因子c1、c2分别与r1、r2的乘积决定粒子受自身最优位置和历史最优位置牵引的大小,由于r1、r2取[0,1]之间的数,c1、c2此时起到基数的作用。c1、c2越大,牵引的效果越明显。如果牵引力过大,则粒子的探测能力变弱,容易陷入局部极值;如果牵引力过小,算法的收敛速度太慢,花费时间较长。自身因素参数c1和社会因素参数c2一般要由经验值来定。在常规优化问题中学习因子常设为定值2,也可以采用动态的非线性变化策略,但一般c1取值应与c2相同,且介于0和4之间。
4)迭代终止判断条件:一般将迭代终止条件设为最大迭代次数或期望的目标精度,当然也需根据具体的优化问题来确定。如果是对解的精度有要求,则将代与代之间解的差值精度达到某个特定值为终止条件,如10-6;如果对时间有所要求,可以设置为最大迭代次数,这样无论求解情况如何,解的精度是否达到要求,只要迭代达到了设定的最大次数则停止寻优过程。
粒子群优化算法的参数对优化结果的影响是相辅相成、共同的。如果调节其中一个参数,则其他参数也应做相应的改变。因此,没有单独的某参数合适某个优化问题,只能说某组参数的搭配对特定问题的处理效果相对较好。而且很多参数的大与小是相对而言的,必须在了解所有参数意义的情况下,结合其他参数的选取来确定其合适的取值。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。