您好, 访客   登录/注册

基于岛屿模型的粒子群振荡算法

来源:用户上传      作者: 张成兴

  摘要:粒子群算法引入振荡因子提高了种群社会性,但是存在收敛速度慢,搜索精度低的缺点。文中提出了一种基于粒子群振荡算法的方法,根据适应度值分类的岛屿模型将不同粒子集合在一个小范围内进化学习,在不同范围内增强了粒子的多样性,从而使得粒子在整个进化过程中收敛速度加快,在原有基础上提高了精度,加快收敛速度。基于岛屿模型的新算法根据给定的搜索空间,生成初始粒子,通过计算所有粒子的适应度,建立不同的岛屿模型。在每个岛屿模型中,振荡搜索被用来更新岛屿内的粒子。新算法和粒子群振荡算法的对比实验在3个测试函数上进行,结果实验证明新算法具有较快的收敛速度和较好的搜索精度。
  关键词: 粒子群算法;岛屿模型; 振荡因子; 社会性;适应度
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)35-8070-03
  20年前,粒子群优化算法(Particle Swarm Optimization)提出以来,得到了广泛的应用[1]。文献[2]提出了一种基于正交变换的PSO,改善后期收敛。算法中参数根据随机过程进行变换,在线性定常系统中分析粒子和种群。基于概率意义下时变系统改进粒子群算法中的惯性权重和加速因子。基于相关参数呈非线性非对称变化增大了种群的多样性,算法收敛速度快,精度较高。算法应用于风机设计,取得了较好的效果[2]。2012年提出一种新的位置更新公式用来更新粒子的位置, 基于机器排序分配编码方式, 粒子在离散空间中更新。结合局部搜索能力强的算法,小范围内搜索能力得到增强,平衡了全局与搜索之间的矛盾[3]。文献[4],[5]于2013年也分别提出了自适应PSO。新算法初始化粒子位置根据混沌空间映射准则,奠定了后期全局搜索和粒子多样性的基础;同时引入自适应变化惯性权重和早熟机制判别器,如果发生早熟现象,陷入局部最优的粒子在跳出混沌扰动作用下跳出。
  上述算法都采取方法避免早熟,但是引入随机性较大的算法,增加种群多样性的同时会降低搜索精度;对于多变量复杂的函数自适应的惯性权重在进化后期容易陷入局部最优值。为了平衡随机性较大和种群多样性的问题,基于小生境粒子群算法,该文提出了岛屿模型和震荡因子混合的粒子群算法,保持种群多样性提高搜索精度的同时减小算法随机性。
  1 岛屿模型的振荡粒子群算法
  1.1震荡因子
  为了提高群体多样而引入震荡因子。这个随机环节可以改善算法的全局收敛 [5]。当进化代数小于给定进化代数的50%时,可以根据如下公式更新速度和位置:
  3 结束语
  本文提出了基于岛屿模型粒子群算法。岛屿模型有利于增强粒子多样性,在搜索过程中,根据不同岛屿所进化的结果选择最优粒子,加强了各个粒子的社会性和粒子的多样性,增强了粒子群的收敛速度和搜索精度。在后期进化的过程中,精度明显提高。
  参考文献:
  [1] 李树荣,雷阳,张强,等.一种求解最优控制问题的混合WNN-PSO算法[J]系统仿真学报,2013,25(3): 425-429.
  [2] 张静,王万良,徐新黎,等.基于改进粒子群算法求解柔性作业车间批量调度问题[J].控制与决策. 2012,27,(4):513-518.
  [3] 包广清,毛开富.改进粒子群算法及其在风电系统中的应用[J].控制工程, 2012,20,(2):262-271.
  [4] 刘文远,郭香军.多极小值粒子群优化算法[J].小型微型计算机系统,2013,34(2): 351-355.
  [5] 陈志敏, 薄煜明,吴盘龙,等.基于自适应粒子群优化的新型粒子滤波在目标跟踪中的应用. [J].控制与决策,2013,28(2): 193-200.
  [6] C. H. Li, S. X. Yang and T. T. Nguyen.A Self-Learning Particle Swarm Optimizer for Global Search[J]. IEEE Trans. System Man and Cybernetics. Part B,2012,42(3): 627-645.
  [7] 董方,谢磊,张建明.基于反馈学习粒子群算法的极值搜索控制[J].上海交通大学学报,2012,46,(12):1962-1966.
转载注明来源:https://www.xzbu.com/8/view-4815031.htm