粒子群优化算法的性能分析和参数选择

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DOI
粒子群算法, 探索能力, 算法性能, 参数选取 王东风, 孟丽. 粒子群优化算法的性能分析和参数选择, 自动化学报, 2016, XX(X): X−X
10.16383/j.aas.2016.cห้องสมุดไป่ตู้50774
Performance Analysis and Parameter Selection of PSO Algorithm
网络出版时间:2016-04-12 13:05:16 网络出版地址:http://www.cnki.net/kcms/detail/11.2109.TP.20160708.1547.001.html 第 XX 卷 第 X 期
201X 年 X 月
自 动 化 学 报
ACTA AUTOMATICA SINICA
其中, vid 和 xid 分别为粒子的速度和位置, w 为惯 性权值, c1 和 c2 称为加速因子, 分别为认知参数和 社会参数, pid 和 pgd 分别为个体和群体的历史最优 位置.r1d 和 r2d 为两个相互独立的服从 [0, 1] 之间 均匀分布的随机数, 正是这两个随机数的引入, 使得 算法的进化过程具有一定的不确定性, 也因此赋予 了算法一定的空间探索能力, 从而有利于找到问题 的最优解.
1 引言
粒 子 群 优 化 算 法 (Particle swarm optimization, PSO) 是由 Kennedy 和 Eberhart 于 1995 年 提出的一种群智能优化算法[1] , 源于对鸟群捕食行 为的研究.1998 年, Shi 和 Eberhart 在原始 PSO 中引入了惯性权重[2] , 后来被称为标准 PSO. 由于 PSO 结构简单, 易于实现, 且不需要借助问题的特 征信息, 已受到众多学者的关注, 在算法的性能改进 和分析方面不断取得新的成果[3,4] , 在多个领域得到 广泛应用[5] . 在 PSO 中, 有一些需要调节的参数: 种群规
3 粒子群算法的性能分析
下面我们将通过实验来说明粒子的探索能力 和算法的性能与参数之间的关系. 我们感兴趣的 参数区域为是 w ∈ [−1, 1], c1 + c2 ∈ [0, 8], 这也 是绝大多数的文献所研究的区域. 所有的实验都基 于以下 12 个常用的基准函数, 由于这些基准函数 被普遍应用, 在此只给出函数的名称, 即: Fun1: Sphere; Fun2: Rosenbrock; Fun3: Schwefel’ s P2.21; Fun4: Schwefel’s P2.22; Fun5: Schwefel’s P1.2; Fun6: Rastrigin; Fun7: Griewank; Fun8: Ackley; Fun9: Schwefel; Fun10: Weierstrass; Fun11: Penalized1; Fun12: Penalized2.
2





XX 卷
荐了一组固定和时变的参数值. 本文其余部分安排如下: 第 2 节先给出了标准 粒子群算法的形式; 第 3 节通过仿真实验研究了不 同参数对粒子探索能力、算法成功率和算法性能的 影响, 推荐了一组固定参数值; 第 4 节研究了算法中 的认知参数 c1 和社会参数 c2 的变化策略对算法性 能的影响, 并推荐了一组变参数的组合设定方式; 第 5 节基于 CEC2015 发布的 15 个基准函数进一步验 证了本文推荐的参数选取方法的有效性; 第 6 节讨 论了 PSO 算法在连续优化和离散优化方面的应用 问题; 第 7 节对全文进行了总结.
3.1 参数对粒子探索能力的影响
粒 子 群算法 参数 w 和 c1 、c2 的 选 取 对算 法 的优化性能有很大的影响. 不同的参数组合下, 粒
子的轨迹形式是不同的, 决定了粒子探索能力的 大小. 在种群进化过程中的第 t 代, 若粒子能够 找到比 t − 1 代的全局最优解更好的解, 那么则 认为粒子具有一定的探索能力. 我们通过以下的 实 验 来 观 察 不 同 的 参 数 对 粒 子 探 索 能 力 的 影 响, 设 种 群 规 模 为 N , 为 每 个 粒 子 设 置 不 同 的 参 数, 设置变量 P numi 记录具有不同参数的粒子 i 在 进 化 的 过 程 中 超 越 上 一 代 的 全 局 最 优 解 的 次 数: P numi (t − 1) + 1, if f (p (t)) < f (p (t − 1)); i g 其 P numi (t) = P num ( t − 1) , i if f (p (t)) ≥ f (p (t − 1)). i g 中, t = 2, 3, ..., tmax . 我们将上面定义的 P numi 称为粒子 i 的第 t 代最优解超越次数, 它表征了粒子探索能力的大小. 显然, 探索能力大的粒子更有可能找到全局最优解. 对于所有的粒子设置相同参数的粒子群算法, 则所有的粒子在统计意义上具有相同的探索能力; 随着算法进化进程的推进, 拥有不同的状态的粒子 在当前迭代步则具有不同的探索能力; 被设置不同 参数的粒子, 一般则具有不同的探索能力. 这已得到 了作者们进行的大量仿真优化计算实例的证实. 图 1 为 4 组不同的 PSO 种群在优化函数 Sphere 时每 个粒子的 P num 值: 种群大小均为 50, 函数设置为 10 维, 最大迭代次数为 500, 每组种群运行 50 次, 记 录每个粒子 P num 值的平均值. 图 1(a) 为种群中粒 子设置为相同的参数时 (w = 0.6, c1 = c2 = 1.7) 每 个粒子的 P num 值; 图 1(b)、图 1(c) 和图 1(d) 为 种群中粒子设置不同参数时每个粒子的 P num 值, 其中图 1(b) 中, 第 1 个到第 50 个粒子的 w 值均为 0.6, c1 = c2 为 0.04:0.04:2; 图 1(c) 中, 第 1 个到第 50 个粒子的 c1 = c2 值均为 1.7, w = 0.6 分别为 0.02:0.02:1, 图 1(d) 中, 第 1 到第 10 个粒子的 w 均 为 0.2, c1 = c2 分别为 0.2:0.2:2, 第 11 到第 20 个粒 子的 w 均为 0.4, c1 = c2 分别为 0.2:0.2:2, 依此类 推, 第 41 到第 50 个粒子的 w 均为 1.0, c1 = c2 分 别为 0.2:0.2:2. 在 w ∈ [−1, 1], c1 + c2 ∈ [0, 8] 的参数区域上 对所用的 12 个基准函数进行蒙特卡罗实验. 每个 函数进行两组实验:(I): 种群中的个体取相同的 w, c1 = c2 则取不同的数值: 本组实验中, 根据种群参 数 w 的值分为 51 组子实验, w 的取值按 0.04 的 间隔从 -1 到 1, 每个子实验中, 种群大小均为 81, c1 = c2 按 0.05 的间隔从 0 到 4 取 81 个值分配给 不同的粒子, 函数运行 50 次, 记录不同粒子在 50 次 运行中的 P num 的平均值;(II): 种群中的个体取不 同的 w, 而 c1 = c2 取相同的固定值: 本组实验中, 根
2 标准粒子群算法 (SPSO)
在粒子群算法中, 每个粒子代表寻优空间中一 个潜在的解, 有一个由被优化的函数决定的适应值. 在每一次迭代进化中, 粒子通过自身和群体的历史 最优位置更新当前的速度和位置. 在任意 t + 1 时 刻, 粒子群算法中第 i 个粒子第 d 维的速度和位置 更新公式为:
vid (t + 1) = wvid (t) + c1 r1d (t)(pid (t)− xid (t)) + c2 r2d (t)(pg d (t) − xid (t)) xid (t + 1) = xid (t) + vid (t + 1) (1) (2)
模 (种群的个体数目)N , 速度限值 Vmax , 位置限值 Xmax , 惯性权重 w, 加速因子 c1 和 c2 . 其中, w 、c1 和 c2 对算法性能的影响较大, 目前有很多学者对其 设定和调节方式进行了研究. 在参数选取方面, 文献 [6 − 9] 通过实验或理论分析, 推荐了一组固定参数 值. 在时变参数的调节方面, 对于惯性权重的调整, [2, 10] 提出了随迭代次数减小惯性权重, [11, 12] 给 出了随机惯性权重策略, [13 − 15] 根据种群的信息 自适应地调节惯性权重; 对于加速因子的调整, [16] 提出在迭代的过程中, c1 和 c2 线性递减, [17] 则提出 c1 线性递减、c2 线性递增, 18] 基于个体的更新信息 给出了一种 c1 和 c2 的自适应调整策略. 以上这些 参数的调整方法, 都在一定程度上提高了算法的性 能, 但是, 当涉及到时变参数时, 并没有考虑到惯性 权重和加速因子之间的配合作用. 单独依靠调整惯 性权重或加速因子, 并不能在种群的局部开发能力 (exploitation ability) 和全局探索能力 (exploration ability) 之间进行平衡. 事实上, 各个参数之间需要 相互配合, 才能够达到预定的效果. 本文考虑了各个 参数之间的配合, 基于在感兴趣的参数范围内进行 的优化测试实验数据, 通过定义最优解超越次数, 推
收稿日期 2015-11-18 录用日期 2016-03-26 Manuscript received November 18, 2015; accepted March 26, 2016 国家自然科学基金 (61203041), 教育部高等学校博士学科点专项科研 基金 (20120036120013), 中央高校基本科研基金 (20140139) 资助 Supported by National Natural Science Foundation of China (61304223, 61473144) and Specialized Research Fund for the Doctoral Program of Higher Education (20123218120015) 本文责任编委 XXX Recommended by Associate Editor BIAN Wei 1. 华北电力大学自动化系 保定 071003 1. Department of Automation, North China Electric Power University, Baoding 071003
Vol. XX, No. X Month, 201X
粒子群优化算法的性能分析和参数选择
王东风 1 孟丽 1
摘 要 惯性权重和加速因子是影响粒子群算法优化性能的重要参数. 基于常用的 12 个测试函数, 本文通过实验研究了不同 参数组合下粒子的探索能力和算法的优化性能, 在此基础上推荐了一组固定的参数组合. 通过惯性权重和加速因子的不同变 化策略组合对算法性能影响的实验分析, 推荐了一种变化的参数设置方法. 基于 CEC2015 发布的 15 个基准函数进一步验证 了本文推荐的参数选取方法的有效性. 最后讨论了 PSO 算法在连续优化和离散优化方面的应用问题. 关键词 引用格式
WANG Dong-feng1 MENG Li1 Abstract Inertia weight and acceleration factors have significant impact on performance of particle swarm optimization (PSO) algorithm. Through simulation experiments on twelve classical benchmark functions, this paper studies the exploitation ability and optimization performance with different parameters. Based on the experimental results, we recommend a setting for fixed parameters. Furthermore, we study the situation when inertia weight remains unchanged and acceleration factors change with iterations. Then a setting for varying parameter is recommended. The recommended parameters setting methods are verified through 15 benchmark functions that were published in CEC2015. At the end of the paper, the discussion of the PSO appilcation issue on continuous optimization problems and discrete optimization problems. Key words Particle swarm optimization, exploitation ability, optimization performance, parameter selection Citation Wang Dongfeng, Meng Li. Performance analysis and parameter selection of PSO algorithm. Acta Automatica Sinica, 2016, XX(X): X−X
相关文档
最新文档