求解TSP的变异算子的设计及优化应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
p bm S) cvyHwv , in t gbl suo tTP g ia a dfu, c l o e T f te . e b i h o e li o s A l s t s il r l ( P eeil oe rotn g labs o tn S un G s y icle eay a e t i w f i p whu s e d uh ti oe tsA t prracs A TP n tdi am ti oe ts iot go eog m ao pro . h eomn o G f S u g i nl ao pro t o o n m u tn a r s f e f o e r s r t i a o u tn a r a nt fn, ppr o s ds y g r ud g ti oet aea li v os ao t os si ts ep p et er i a e ii m ao pro fr yn a u mti e a y g h a r s h t n n b ln u tn a r n zg i t i o e o d t a i r utn oe t s S. nw roiip mn d t epr et r us os tt eetee ot a pro f TPTe oet s l et ad xem n l l dm nre fcvns f l a ro r h e pa r e e n h m e i a e t e t h f i s h - s a e e
文 通 实 分 多 变 算 在 解S时 寿 ,T 一 改 的 坏 建 异 ,利 该 法 算 章 过 验 析 种 异 子 隶 T 的 现提i 个 进 破 重 交 法并 用 方 对 法 P l 了
Srt y D s n g Muai O ea r T P d t e o e gi te t o prt fr a i a g f i n h t n o o S n t s A p ct n p lai i o
图1遗传算法的流程图
计算, 其中a - 间的随 是01 机数. 是大于 6 1 等于1 若l 增大, 的可能达到的 则r 最大值减 为了更好地证明各种变异算子对算法的影响, 的定值参数, e 本文特意选用了三种为TP S 设计的交配算子作为 小, 对路径的 破坏比 较小, 若0为1 , 则很可能 对整
在 TY适用的基本变异算子通常可以从它操 S 作的方式分成以下几种:
() 1 基于换位的变异h这是SA中常用的变 7 , G
异方式。 () 2 基于倒序的变异, 该变异方式是按某种方 式( 本文采用了随机) 产生两个变异位, 然后把两个
变异位之间的所有城市进行倒序排列, 倒序的过程 类似前文中描述郭涛算子的交配方法, 不同之处在
和随机产生一个新染色体一样, 选取序列较短, 则 影响力有限, 局部乱序一定程度上失去了求得全局 最优解的能力。无论对于哪种交配方案, 插人变异 和改进破坏重建法效果明显 好于其它变异方式, 它 们的共同点在于都利用了 启发性信息进人插人, 区
别在 于改进破坏重建法选取待插人城市的时候还
利用了 城市间的地理空间信息,因此效果更加明 显。可见, 启发性变异对于 遗传算法求解TP S 具有 很大的意义。 如果缺少启发性且问 题规模达到一定 时, 变异更多 地呈现出破坏性。 图3 是 k b0 和图4 r 10的解的右上角路径截 o 3 实验方法 图, 是除了 图3 插入变异和破坏重建变异以外的变 即当 域聚集了 基本测试中 设定各参数如下: 交配概率 0 ; . 变 异算子经常出现的情况, 某一小块区 7 异概率0 ; . 种群大小 1 ; 1 0 迭代次数 10 实验分4 较多城市时, 0 00 很难求得局部最优路径, 正是由于这 部分进行:1 在屏蔽变异函数的 () 情况下进行实验, 类区 域会随着问 题规模的加大和大量增加, 缺少启 分析缺少变异时 算法的表现; ) ( 是给算法加人2 2 . 发性的变异方式效果会越来差。 插人变异和改进 5 而 尤其 节中 描述的几种基本变异方式, 观察各种变异方式 破坏重建变异均能一定程度上消除这种情况, 对算法的影响; ) ( 用改进的破坏重建法作变异算 是改进的破坏重建变异, 3 它是以半径来圈定要抽取 子的实验, 部分在文中同 前三 称基本测试。 ) ( 最后 4 的 城市的, 因此, 城市越密集的地方, 越容易得到重 一部分是加人了优化方案后的测试, 称优化测试。 新构建的机会, 这样求得小范围最优的可 能性就大 以上仿真实验均进行3 次, 0 然后取平均值, 以 大增加了。 减少随机因素的影响。
14 8
微电子学与计算机
20 年第 2 卷・ 06 3 增刊
() 4 基于插人的变异, 按某种方式选出 若干个 基因 ( 本文采用随机方式) 把它们从染色体中删 , 去, 然后按某种方式, 如最佳插人( 即每次把城市插 人到代价最小的位置) 逐个插人到已 , 经删去变异 基因 后的 染色体中 。
gt . oh i rm K y rs T P G nt a ot sM t o oe t e w d: , ec r m, a n ro o S e i li g h u t p ar i
环( 同时具有一定概率产生变异)直到求得满意解 , 旅行商问 S ( a lg sa P bm 题TP v nSe n l ) 或满足其他终止条件为止。 T e am re ri l o 算法的运行过程具有很 是著名组合优化同题。问题的描述非常简单: 假设 强的指向 适合众多复杂问题的求解。 性, 一个旅行商要选择一条路径拜访n 个城市, 限制是 旅行商问 题规定了 每个城市只能出现一次, 因 每个城市只能且必须拜访一次, 而且最后要回 到原 此编码有其特殊性。简单遗传算法( A 求解TP ( ) S G ' 9 来出发的城市。 路径的选择目 标是求得的 路径路程 的效果并不好, 要原因就是传统的交配和变异方 主 为所有路径之中的最小值。穷举解决该问 题的算法 式通常很容易产生非法的解序列, 很多学者专门为 复杂 度是n , 比 ! 当n 较大的时 现 计算机根 该问题设计了多种交配算子、变异算子和选择算 候, 有的 本无法短时间完成运算。 因此一个高效的 算法对于 子, 并且取得了显著的效果。 本文通过实验, 较了 比 求解TP S 至关重要。 近年比 较流行的 算法有模拟退 5 种变异算子的设计思想在TP S 中的表现, 并总结 火、 遗传算法和蚁群算法等。 出一种变异算子的设计策略, 仿真证明, 利用该变 遗传算法模拟自 然选择和生物进化的过程, 以 异算子设计策略改进后变异效果明显变好, 求得最 优胜劣汰的方式求解问 算法需选择一种合适的 优解的概率明显增大口 题。 编码方式表示解, 并选择一种评价函数用来每个解 的 适应值, 适应值高的解更容易 被选中并进行交 2 求解T P的遗传算法描述 S 配, 然后产生新的子代。选择和交配的过程一直循 21 算法流程图 .
微 电子学与计算机
15 8
重建。在重建的过程中, 一旦发现某次重建后的结 果比原来更优, 即停止破坏重建的过程, 如果重建 后结果比原来更差, 则放弃此次的破坏重建, 然后 接着以下一个城市为中心, 继续破坏重建的 循环。 () 2 随机抽取若干染色体进行优化, 优化方式 同() 1, 优化的 原因在I V中会有分析; () 3 当连续若干代进化停滞的时候, 增大变异 概率, 并进行随机性最大的变异即2 中的()然 . 5 1, 后立 刻调回原来的变异概率和变异算子, 的在 其目 于突然引进若干全新的群体. 增加多样性。
2 交配操作 . 4
实验对象。 这些交配算子的 共同 特征是能在较少的 迭代次数内找到一组或多组解的架构, 但当问题规 模比较大的时候, 容易陷人早熟。
条路径进行最优插人, 算法此时带有很明显的贪心
特 容 陷 局 最优解。 献5 的 坏 建 征, 易 人 部 文 [中 破 重 ]
法是结合门 槛接收法的求解算法, 因此需要经常大
() 1 第一种是文献 1 [所采用的3 ] 交叉交配算
子;
范围 破坏 地 路径, s 故无I 参数, 本文中 重建 而 破坏
只是作为遗传算法的一个变异算子, 并不需要经常
() 献2 描述改 2 第二种是文 (中 ] 进郭涛算法中的
交配方法:
毁坏整 路径, 加多了 条 故 一个9 控制参 实 证 数, 践
Z O G nln H N We-ag i
(eam noCm u r n , Yt e U i rt G ag o 507, a Dpr et opt Si c Sn - n v s , nz u 25Ci ) t f e c e u a s n e i u h 1 e y h n A sat B cosg r rtoe ts pr er gnt a ot s ) sv t tvlg sa bt c y on ap pa pro ad a ts eec rh (A cn e r en semn r : h i p o ie a r n a m e , i l im G a o h a i a g l e l
( 根据前面几 种实验 5 ) 结果, 本文改进了 破坏 重建法r 进后方 I改 , 法说明如 在坐标地图上 下: 选出 一个中 心城市, 该城市为中心, 为半径作圆, 以 以; 在圆内的所有城市都将被抽出来, 然后以随机次序
对它们进行最佳插人。 的 r 大小理论上可以 任意, 但 显然大于地图上任意两个城市间最大距离R 二的r 2 选择操作 . 3 因为当r ,的时候, - R 已经是把整条 选择方式应配合交配算子, 对于3 交叉交配1 是没有意义的, 1 1 , 小于地图上任意两个城 本文采用带门槛亲代竞争法, 即子代适应值)父代 解路径破坏再进行插人了。 二将导致被选择的只有中 心城市, 适应值 P P 参数) 交配, 放弃 一 时(为 , 接受 否则 本次 市间最小半径R 此时相当于抽取单城市进行最佳插人, 插人后路径 交配; 对于收敛速度较慢但多样性更好的郭涛算子 至少和原来一样好, 但对路径的改变通常很小, 很 (T G 尸,则在算法前期采用带门槛亲代竞争法和轮 难获得变异的效果。因此,比 ; 较合理的取值于R . 盘赌1后期仅采用wenku.baidu.com门 1 3 , 槛亲代竞争法进行选择。 改 和R .之间, 用; R + (- , 来进行 可以 = aR R./ p ; ) l f 进的E - oi T X md与G 同。
明, 这个参数的 加人对于遗传算法而言是有用的, 且加快了 算法的 运行速度。 () 3 最后一种是本文对E - o4 X md 进行改进后 i 例子: 所示, 如图2 选取了城市 1 为中心, 为 ; 的交配算子, 称为贪心E - oi E - oi md X md G X md , i ( ) o 城市23 ,在圆内, 则城市 1 ,被抽取出来. ,3 2 表 示的是2 t IGX o 操作n E 加入了 p , 贪心策略. 对引 半径, 随机乱序后, 逐个进行最佳插人到被抽取后的路径 进的新边作门 槛判断, 小于门 槛值才接受。 气 2 变异方案 . 5
于变异位的产生不用依赖与另一个父代。 () 3 基于乱序的变异, 指随机选中某一段基因 片, 把这段基因片打乱, 然后插人回原来的位置。
图2 抽取城市示意图
2.6
优化方案
() 1 当前最优解优化: 该策略是对当前 种群中 的最优解进分别以城市01…,为中心进行破坏 , , n
20 0 6年第 2 3卷. 增刊
20 0 6年第 2 3卷 . 增刊
微电子学与计算机
13 8
求解 TP的变异算子的设计及优化应用 S
钟文亮
( 中山大学 计算1科学系。 f 6 广东 广州 507 125
摘 要:通过选择合适的算子 和参数. 遗传算法(A 可以有效求解旅行商问 7po以 通常可以获得清意解, G) 题( ) s 但容易陷入早热, 因而较难求 得全局最优解。传统的变异算子在求解该问 题时性能并不理想, 甚至会引起反作用口 进行优化。经仿真实验测试. 该方法效 果明显。 关键词:TP遗传算法, S, 变异算子 中图分类号:P 8 T1 文狱标识码: A 文章编号:0078( 0) -13 4 10-102 6S 08- 0 O 0
收稿 日 20-42 期:060-8
1 引言
基金项目 国家自 : 然科学基金项目( 536) 6 706 0 广东省自然科学基金项目( 34 ) ( 036 5 0
算法流程图如图 1 所示。 2 适应度函数 . 2
适应度函 fx=/,是路径总长度。 数:()1 S S