1、池 元 成 , 方 杰 , 蔡 国 飙 : 基 于 差 分 进 化 和 粒 子 群 优 化 算 法 的 混 合 优 化 算 法 2009,30 (12) 29630 引 言差 分 进 化 (differential evolution, DE) 1 和 粒 子 群 优 化 算 法(particle swarm optimization, PSO)2作 为 目 前 应 用 较 为 广 泛 的 全局 优 化 算 法 , 受 到 了 很 多 学 者 的 关 注 。 这 两 个 算 法 都 是 基 于群 体 智 能 和 随 机 策 略 、 并 且 依 据 各 自 的 搜 索 机 制 进 行 寻 优 ,
2、 已经 成 功 应 用 很 多 领 域 的 优 化 问 题 中 3-6。DE 最 初 是 由 Storn 和 Price 提 出 的 一 种 进 化 类 算 法 。 它使 用 与 遗 传 算 法 相 类 似 的 算 术 操 作 (包 括 变 异 、 交 叉 和 选 择 算子 )来 更 新 随 机 产 生 的 初 始 群 体 或 父 代 群 体 , 通 过 多 代 进 化 来实 现 对 求 解 空 间 的 全 局 搜 索 , 以 便 找 到 待 求 解 问 题 的 最 优 解 。DE 操 作 简 单 , 性 能 强 大 , 可 以 并 行 求 解 。 然 而 , 对 于 不 同 的 问题 , D
3、E 都 需 要 相 应 地 调 节 自 身 参 数 ; 并 且 当 群 体 迭 代 收 敛 到某 一 区 域 时 , 由 于 差 异 性 的 减 少 , 容 易 陷 入 局 部 最 优 。PSO 是 由 Kennedy 和 Eberhart 提 出 的 一 种 群 智 能 算 法 。作 为 非 线 性 优 化 技 术 , PSO基 于 群 体 搜 索 策 略 , 将 粒 子 随 机 分布 于 搜 索 空 间 , 一 个 粒 子 即 代 表 一 个 空 间 点 。 在 搜 索 过 程 中 ,每 个 粒 子 的 运 动 轨 迹 取 决 于 整 个 种 群 的 历 史 最 好 位 置 及 其 个体
4、所 经 历 的 最 好 位 置 。 该 算 法 早 期 收 敛 速 度 较 快 , 然 而 当 不再 有 更 好 的 个 体 更 新 历 史 最 好 位 置 时 , 所 有 的 粒 子 会 快 速 聚集 到 当 前 历 史 最 好 位 置 的 区 域 , 出 现 早 熟 停 滞 现 象 。 此 外 , 该算 法 对 自 身 参 数 也 较 为 敏 感 , 不 同 的 参 数 设 置 对 算 法 性 能 的影 响 较 大 。为 了 改 进 算 法 的 性 能 , 已 经 发 展 了 若 干 混 合 DE 和 PSO的 算 法 。 例 如 , 文 献 7 利 用 DE 对 PSO 的 个 体 历
5、史 最 好 值 进行 变 异 操 作 , 将 新 产 生 的 个 体 历 史 最 好 值 用 于 指 导 粒 子 的 飞行 ; 文 献 8将 种 群 分 为 并 行 的 DE 群 和 PSO 群 , 比 较 两 个 子 群得 到 的 种 群 最 优 值 作 为 下 一 代 的 进 化 依 据 ; 文 献 9依 据 随 机概 率 大 小 选 择 DE 或 PSO 作 为 产 生 临 时 群 体 的 方 式 , 然 后 通过 对 父 代 群 体 和 临 时 群 体 使 用 选 择 算 子 来 产 生 子 代 群 体 。本 文 结 合 DE和 PSO 提 出 了 一 种 新 的 混 合 优 化 算
6、法 (简 称DPA)。 该 算 法 可 以 分 为 两 个 阶 段 : 第 一 阶 段 为 “ 变 异 选 择 ”操 作 , 即 通 过 比 较 由 DE变 异 算 子 生 成 的 群 体 和 父 代 群 体 来 选择 更 新 进 入 下 一 阶 段 的 父 代 群 体 ; 第 二 阶 段 为 “ PSO 交 叉 收 稿 日 期 : 2008-07-10; 修 订 日 期 : 2009-02-24。作 者 简 介 : 池 元 成 (1981 ), 男 , 黑 龙 江 宁 安 人 , 博 士 研 究 生 , 研 究 方 向 为 优 化 算 法 ; 方 杰 , 男 , 博 士 研 究 生 , 研
7、究 方 向 为 多 学 科 设 计 优 化 ;蔡 国 飙 , 男 , 教 授 , 研 究 方 向 为 多 学 科 设 计 优 化 。 E-mail: 基 于 差 分 进 化 和 粒 子 群 优 化 算 法 的 混 合 优 化 算 法池 元 成 , 方 杰 , 蔡 国 飙(北 京 航 空 航 天 大 学 宇 航 学 院 , 北 京 100191)摘 要 : 为 了 发 挥 差 分 进 化 和 粒 子 群 优 化 算 法 各 自 拥 有 的 特 点 , 并 克 服 自 身 存 在 的 问 题 , 提 出 了 一 种 混 合 优 化 算 法 (简 称DPA)。 该 算 法 首 先 利 用 差 分 进
8、 化 的 变 异 和 选 择 算 子 产 生 新 的 群 体 , 然 后 通 过 使 用 粒 子 群 优 化 算 法 和 交 叉 、 选 择 算 子 进 行 局部 搜 索 。 在 整 个 算 法 过 程 中 , 群 体 寻 优 范 围 先 扩 散 再 收 缩 , 反 复 迭 代 渐 进 收 敛 。 通 过 3 个 标 准 算 例 的 测 试 表 明 , 新 的 混 合 优化 算 法 与 差 分 进 化 和 粒 子 群 优 化 算 法 相 比 , 具 有 收 敛 速 度 快 、 搜 索 能 力 强 、 鲁 棒 性 好 的 特 点 。关 键 词 : 差 分 进 化 ; 粒 子 群 优 化 算 法
9、; 混 合 算 法 ; 优 化 ; 基 准 测 试 函 数中 图 法 分 类 号 : TP18 文 献 标 识 码 : A 文 章 编 号 : 1000-7024 (2009) 12-2963-03Hybrid optimization algorithm based on differential evolution and particleswarm optimizationCHI Yuan-cheng, FANG Jie, CAI Guo-biao(School of Astronautics, Beijing University of Aeronautics and Astronau
10、tics, Beijing 100191, China)Abstract: To take advantage of different algorithms and overcome their limitations, a hybrid optimization algorithm (DPA) is proposed,based on the combination of differential evolution (DE) and particle swarm optimization (PSO). In the first step of DPA, differentialmutat
11、ion and selection operators are employed to produce a new population for effective variation. Next, PSO is carried out for localexploration with high efficiency, followed by crossover and selection operations. Thus, the extent of search region for the populationis increased and decreased sequently a
12、t each iteration of the DPA progress, and eventually resulted in convergence to an optimal solution.Numerical tests on four benchmark functions are conducted for the algrithom evaluation. The results show the improvement in the con-vergence speed, searching ability, and computation stability by comp
13、arison with the DE and PSO.Key words: differential evolution; particle swarm optimization; hybrid algorithm; optimization; benchmark function计 算 机 工 程 与 设 计 Computer Engineering and Design人 工 智 能2964 2009,30 (12) 计 算 机 工 程 与 设 计 Computer Engineering and Design选 择 ” 操 作 , 即 通 过 比 较 由 PSO、 及 交 叉 算 子 生
14、 成 的 群 体 和 由第 一 阶 段 更 新 的 父 代 群 体 来 选 择 生 成 子 代 群 体 。 经 过 这 两 个阶 段 , 群 体 的 寻 优 范 围 先 扩 散 再 收 缩 ; 如 此 反 复 迭 代 , 实 现 渐进 收 敛 。 算 例 验 证 表 明 , DPA 在 算 法 性 能 上 有 了 明 显 地 提 高 ,同 时 也 较 好 地 克 服 了 DE 和 PSO 各 自 存 在 的 问 题 。1 差 分 进 化 和 粒 子 群 优 化 算 法1.1 差 分 进 化DE 首 先 利 用 在 搜 索 空 间 内 随 机 选 取 的 两 个 向 量 的 差 值与 第 3 个
15、 随 机 选 取 向 量 的 加 权 求 和 来 实 现 群 体 变 异 , 然 后 通过 比 较 由 交 叉 算 子 生 成 的 个 体 和 相 应 父 代 个 体 的 适 应 值 优 劣来 保 存 优 秀 个 体 , 如 此 反 复 迭 代 , 不 断 进 化 。定 义 维 搜 索 空 间 内 个 体 = 1, 2, , , = 1, 2, , ;那 么 , 变 异 个 体 = 1, 2, , 通 过 下 式 产 生+1 =1 + 2 3 (1)式 中 : 1, 2和 3是 属 于 1, 的 互 不 相 同 的 整 数 , 且 不 同 于 ;为 缩 放 比 例 因 子 , 用 于 控 制
16、差 向 量 的 大 小 ; t为 当 前 迭 代 步 数 。父 代 个 体 和 变 异 个 体 依 据 交 叉 概 率 生 成 新 的 个 体 =1, 2, ,+1 =+1, (2)式 中 : 0, 1之 间 的 均 匀 随 机 分 布 数 ; 交 叉 概率 , 且 0, 1。对 于 最 小 化 问 题 , 交 叉 后 的 个 体 +1和 父 代 个 体 依 据 下式 进 行 选 择 操 作 , 生 成 子 代 个 体 +1+1 =+1, +1, (3)式 中 : 求 解 问 题 的 目 标 函 数 值 。1.2 粒 子 群 优 化 算 法PSO 将 对 优 化 问 题 的 求 解 比 作 鸟
17、 群 在 空 间 觅 食 的 过 程 :在 解 空 间 中 进 行 搜 索 的 设 计 向 量 就 是 一 群 觅 食 的 “ 鸟 ” (也 称为 “ 粒 子 ” ); 而 优 化 问 题 的 最 优 解 则 是 鸟 群 寻 找 的 “ 食 物 ” 。假 设 在 维 空 间 中 投 放 个 粒 子 , 第 个 粒 子 的 位 置 和 速度 分 别 为 = 1, 2, , 和 = 1, 2, , 。 该 粒 子 所 经 历的 历 史 最 好 位 置 为 = 1, 2, , ; 整 个 种 群 所 经 历 的 最 优位 置 表 示 为 = 1, 2, , 。粒 子 根 据 如 下 的 公 式 更
18、新 其 速 度 和 位 置+1 = +1 1 + 2 2 (4)+1 = + +1 (5)式 中 : 1和 2是 0, 1之 间 的 随 机 数 ; 1和 2是 加 速 常 数 ; 是 惯 性权 重 ; 为 迭 代 次 数 。由 式 (4)可 知 , 粒 子 速 度 的 更 新 受 到 3 个 部 分 的 影 响 : 第 1部 分 为 惯 性 部 分 , 表 示 当 前 的 速 度 状 态 ; 第 2 部 分 为 认 知 部 分 ,表 示 个 体 粒 子 经 验 发 挥 的 作 用 ; 第 3 部 分 为 社 会 部 分 , 表 示 个体 粒 子 与 种 群 的 协 同 影 响 。 此 外 ,
19、 为 使 粒 子 速 度 不 致 过 大 , 通常 都 会 设 定 速 度 上 限 max: 当 max时 , = max; 当 UserLoginusertest. UserLoginsessioncontractsService #ContractsService(4) 在 受 管 ContractBean 中 创 建 添 加 合 同 的 方 法 Insert-CrContractsAction。 在 这 个 方 法 中 可 以 直 接 调 用 应 用 服 务 接 口创 建 添 加 合 同 的 对 象 , 把 界 面 中 的 “ 添 加 合 同 ” 按 钮 组 件 的 事件 绑 定 到 受
20、 管 ContractBean中 定 义 的 InsertCrContractsAction方法 上 :添 加 合 同 的 运 行 界 面 如 图 6 所 示 。通 过 实 例 看 出 , Web 表 示 层 利 用 JSF 提 供 的 UI 组 件 , 不 仅可 以 快 捷 、 方 便 地 创 建 界 面 , 而 且 通 过 界 面 组 件 与 受 管 Bean的 绑 定 , 将 Web表 示 层 与 应 用 服 务 层 相 分 离 ; 应 用 服 务 层 利 用Spring 的 ORM 框 架 技 术 和 IoC 机 制 , 不 仅 可 以 方 便 地 实 现 与Hibernate的 无
21、缝 集 成 , 而 且 将 业 务 逻 辑 组 件 、 DAO组 件 等 注 入到 IoC 容 器 来 管 理 , 有 效 地 降 低 了 层 间 耦 合 度 。3 结 束 语针 对 企 业 级 应 用 开 发 中 面 对 各 种 J2EE 开 发 框 架 技 术 , 如何 合 理 、 有 效 地 部 署 和 集 成 以 构 建 高 效 的 Web 应 用 系 统 的 问题 , 提 出 了 一 种 基 于 JSH 集 成 架 构 的 Web 应 用 服 务 系 统 。 此方 案 已 在 服 装 企 业 生 产 管 理 项 目 中 得 到 应 用 。 与 已 有 的 集 成架 构 相 比 , 其
22、 突 出 的 特 点 是 层 次 划 分 清 晰 、 各 层 分 工 明 确 、 层间 耦 合 度 降 低 。 既 利 于 开 发 人 员 的 分 工 、 系 统 开 发 周 期 的 缩短 , 又 便 于 系 统 后 期 的 维 护 和 扩 展 。参 考 文 献 :1 杨 俊 .基 于 J2EE 轻 量 级 架 构 的 Web 开 发 与 应 用 M.武 汉 :武汉 理 工 大 学 ,2008.2 吴 艳 . 基 于 MVC 模 式 B/S 体 系 结 构 的 课 程 管 理 系 统 的 设 计J.浙 江 工 业 大 学 学 报 ,2008(1):86-89.3 王 雪 ,杨 进 .J2EE
23、轻 量 级 框 架 的 研 究 与 应 用 J.计 算 机 工 程 与设 计 ,2008,29(14):3628-3630.4 赖 晓 风 .基 于 J2EE 构 架 的 大 学 生 就 业 一 体 化 解 决 方 案 J.计算 机 科 学 ,2008,35:334-335.5 吴 波 ,张 生 文 .基 于 WebWork_Spring_Hiberante 架 构 的 Web应用 的 研 究 与 实 现 D.大 连 海 事 大 学 ,2007.6 李 平 勇 ,赵 定 远 .Web层 和 EJB层 接 口 框 架 的 研 究 与 设 计 J.成都 大 学 学 报 ,2007(1):26-29
24、.7 贾 菁 ,刘 晓 霞 .基 于 JSF 和 Hibernate 的 Web 应 用 J.计 算 机 应用 与 软 件 ,2008(7):152-153.8 Kito Mann.JavaServer faces in actionM.铁 手 ,程 晓 东 ,何 勇 ,译 .北 京 :人 民 邮 电 出 版 社 ,2007.9 罗 时 飞 .精 通 SpringM.北 京 :电 子 工 业 出 版 社 ,2005.10 刘 洋 .精 通 HibenateM.北 京 :电 子 工 业 出 版 社 ,2005.图 5 合 同 应 用 服 务producemanager. Service.Impl
25、. ContractsServiceproducemanager. Service.Impl. ContractsServiceImplproducemanager. Dao.Impl. ContractsDao图 6 添 加 合 同 的 运 行 界 面5 Ge H W,Liang Y C,Zhou Y,et al.A particle swarm optimiza-tion-based algorithm for job-shop scheduling problemJ.In-ternational Journal of Computational Methods, 2005,2 (3):4
26、19-430.6 莫 愿 斌 ,陈 德 钊 ,胡 上 序 .高 维 化 工 数 据 共 轭 粒 子 群 算 法 处 理 J.计 算 机 工 程 与 设 计 ,2007,28(6):1241-1243.7 Zhang W J,Xie X F.DEPSO:hybrid particle swarm with differen-tial evolution operatorC.Proc of the IEEE Int Conf on Systems,Man and Cybernetics,2003:3816-3821.8 栾 丽 君 ,谭 立 静 ,牛 奔 .一 种 基 于 粒 子 群 优 化 算 法 和 差 分 进 化 算法 的 新 型 混 合 全 局 优 化 算 法 J. 信 息 与 控 制 , 2007,36 (6):708-714.9 Hao Z F,Guo G H,Huang H.A particle swarm optimization algo-rithm with differential evolutionC. HongKong:Proc of the Si-xth Int Conf on Machine Learning and Cybernetics,2007:1030-1035.(上 接 第 2965 页 )