1、 2003 年 7 月 系统工程理论与实践 第 7 期 文章编号 : 100026788 (2003) 0720100206基于 Hopfield 网络学习的多城市旅行商问题的解法金海和 1, 陈 剑 2, 唐 政 3, 郑国旗 4(1. 内蒙古大学 公共管理学院 , 内蒙古 呼和浩特 010021; 2. 清华大学 经济管理学院 , 北京 100084; 3. 富山大学工学部 ,富山市 930- 8555, 日本 ; 4. 内蒙古大学电子工程系 , 内蒙古 呼和浩特 010021)摘要 : 针对 Hopfield 神经网络 (HNN ) 学习算法难以求解大规模组合优化问题的不足 , 提出了基
2、于HNN 学习的多城市旅行商问题的求解算法 L它是把 HNN 学习算法作基本算子 , 对城市群体按一定的规则进行有效的分割、计算和连接 , 来寻找巡回路径的最优解或满意解 L 并以 100 城市的旅行商问题为例进行了仿真实验 , 验证了算法的有效性 L 该算法不受求解问题的规模限制 ; 还可通过并列运算实现高速化 ; 同时因算法简明 , 易于硬件实现 L关键词 : Hopfield 神经网络学习 ; 学习算子 ; 组合优化问题 ; 极小值问题 ; 多城市旅行商问题中图分类号 : T P183 文献标识码 : A A n A lgo rithm fo r So lving a M u lti2c
3、ity T raveling Salesm anP rob lem Based on L earn ing of Hopfield N etw o rkJ IN H aihe1, CH EN J ian2, TAN G Zheng3, ZH EN G Guoqi4( 1. Schoo l of Public A ffairs, Inner M ongo lia U niversity, H uhho t 010021, Ch ina; 2. Schoo l of Econom ics andM anagem ent, T singhua U niversity, Beijing 100084,
4、 Ch ina; 3. Faculty of Engineering, Toyam a U nversity; Toyam a2sh i930- 8555, Japan; 4. D epartm ent of E lectronic Engineering, Innter M ongo lia U niversity, H uhho t 010021, Ch ina)Abstract: T h is paper p ropo ses an algo rithm of so lving the m ulti2city traveling salesm an p roblem basedon Ho
5、pfield netw o rk learning. T he algo rithm uses the Hopfield netw o rk learning as basal arithm eticoperato rs, to look fo r the op tim al o r better so lution by dividing up , calculation and link ing the group ofcities w ith the given rules. T he algo rithm is app lied to a 1002city traveling sale
6、sm an p roblem , and itseffectiveness is confirm ed by sim ulation. T h is algo rithm is free from lim itation of the city num ber; andspeedup can be imp lem ented by parallel operation; and hardw are can be ach ieved easily because ofsimp licity and clarity in algo rithm.Key words: Hopfield neural
7、netw o rk learning; learning arithm etic operato rs; com binato rialop tim ization p roblem; local m inim um p roblem ; m ulti2city traveling salesm an p roblem收稿日期 : 2002201216资助项目 : 留学回国人员科研启动基金 (2001 第一批 )作者简介 : 金海和 (1964- ) , 男 , 汉族 , 内蒙古 , 博士后 , 教授 , 研究方向是情报系统工学、管理科学、系统工程、公共政策1 引言旅行商问题 (简称 : T
8、SP)是一个典型的 N P 完全问题 , 常被用作研究组合优化问题的范例 1 LHopfield等用连续值 Hopfield 神经网络 (简称 : HNN )求解 T SP, 在适当的时间内找到一个次优解 , 开辟了运用神经网络求解组合优化问题的新途径 2 L但它存在着 (1)不能学习、 (2)产生大量极小值等问题 L作为解决极小值问题的方法之一 , H in ton 和 A ck ley 等将概率统计法则引入到神经单元的输出取值中 , 提出了Bo ltzm ann 机模型及其学习算法 3 , 但因速度太慢 , 难以为现实所接受 4 L 对于问题 (2) , 笔者进行过深入的理论分析 , 并在
9、数学上进行了证明 5 L针对问题 (1)、 (2) , 笔者提出了登山学习算法 6 , 但该算法中 , 为了避免因学习使最小值发生位移 , 以学习后的解为初始解 , 使网络回到未学习的 HNN 状态空间里进行状态更新至平衡状态 , 显然增加了计算量 L针对诸如 T SP 这类组合优化问题 , 笔者提出了一种解决极小值问题的 HNN 学习算法 7 , 思想是 , 将决定约束条件权值大小的系数作为学习参数 , 在参数空间里使学习参数 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.向着 HNN 能量上升最
10、快的方向学习 , 使得 HNN 能从可能陷入的极小值状态中逃脱出来 , 直至找到最优解或满意解 L 但实际应用中 , 该学习算法在求解规模上受到了限制 L本文将提出一种基于 HNN 学习的多城市 T SP 的解法 , 其基本思想是以 HNN 学习算法为基本算子 ,把城市群体按一定的规则进行有效的分割、计算和连接 , 以寻找巡回路径的最优解或满意解 L 为了验证求解算法的有效性 , 以 100 城市的 T SP 为例进行了仿真实验 L2 HNN 模型HNN 是由大量简单的神经处理单元相互结合而成 , 并有以下约束条件 : 1) 各单元之间相互结合的强弱 (权值 )是对称的 ; 2) 每个单元不存
11、在直接的自反馈 ; 3) 各个单元的状态按照时间的发展规则非同期地更新 L由 n 个单元构成的 HNN , 其能量函数可表达为e = - 12 6ni= 1 6nj= 1w ijy iy j - 6ni= 1y ih i + 1S6ni= 1y i0f - 1i (y ) d y (1)式中 , e 是能量 , 其自身是时间的函数 ; w ij是单元 i 和 j 的权值 ; y i 是第 i 个单元的输出 ; h i 是第 i 个单元的阀值 ; S是正的常数 Z 式中的第三项是各个单元输出函数的逆函数从 0 到现在的输出状态的积分和 Z 各个单元内部电压随时间的变化可以用如下的微分方程式记述
12、:dx id t = -x iS6nj= 1w ij y j + h i (2)式中 , x i 是第 i 个单元的输入总和 Z 神经单元的输入输出可采用 sigm o id 形的逻辑非线性单调增加函数 ,如 :y i = f (x i) = 11 + e(- x iT )(3)这里 , T 是一个对神经单元输入输出函数的形状有影响的参数 Z对于 HNN , 给出适当的初始条件 , 在状态空间里反复使其更新状态 , 网络的能量随时间推移单调地减小 , 状态向着平衡状态的方向更新 Z最后 , 网络的能量减至全局最小或局部最小 , 其状态稳定在某个平衡状态 Z 这一性质被称为 HNN 在状态空间里
13、的收敛特性或能量最小 (极小 )化特性 (证明参见文 8 ) Z3 基于 HNN 的 TSP 解法设有 N 个城市的集合 C 1, C 2, , CN , 其中任意两个城市 C i 和 C k 之间的距离是 d ik (d ik = d k i) , 试找出一条最短的经过每个城市各一次 (仅一次 )并回到出发地的路径 , 这就是 T SPZ N 个城市的 T SP, 用 HNN求解时 , 需要用 N 2 个神经单元 Z可以由一个行代表城市号码 , 列代表访问次序号码的矩阵来表示 Z其能量函数可以写成 :e= eA + eB + eD= A2 6Ni6Njy ij - 1 2 + B2 6Nj6
14、Niy ij - 1 2+ D2 6Ni6Nk6Njd iky ij (y k, j+ 1 + y k, j- 1) (4)式中 : y ij是神经单元的状态变量 , 表示第 i 个城市第 j 回是否访问 , 且 y ij 0, 1 Z 当 y ij 0. 5 时 , y ij发火 ,意义是第 i 个城市在第 j 回被访问 ; 当 y ij 0. 5 时 , y ij不发火 , 意义是第 i 个城市在第 j 回不被访问 Z d ik是城市 i 与城市 k 之间的距离 ZA ,B 是控制项系数 ,D 是距离项系数 , 其取值 , 一般算法是凭经验给出的 Z式中的第一项是行控制项 , 各行中只有一
15、个“ 1”时该项取最小值 (一个城市只访问一次 ) , 第二项是列控制项 ,各列中只有一个“ 1”时该项取最小值 (一次只访问一个城市 ) , 第三项是距离项 , 是路径的全长 Z式 (1)中 , 如果使 S的值取足够大时 , HNN 的能量函数一般用101第 7 期 基于 Hopfield 网络学习的多城市旅行商问题的解法 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.e = - 12 6Ni= 1 6Nj = 1 6Nm = 16Nn= 1w ij,m ny ijy m n - 6Ni= 1 6
16、Nj= 1h ijy ij (5)表示 Z 将式 (4)和式 (5)的各项对应 , 可导出其权值是w ij ,m n = - A Dim (1 - Djn) - B Djn (1 - Dim ) - D d im (Dn, j+ 1 + Dn, j- 1) (6)阀值是h ij = A + B (7)同时定义符号Dij = 1, 如果 i = j0, 其它 (8)T SP 能量函数的曲面非常复杂 , 存在许多极小值 ; 用 HNN 求解 T SP, 当规模超过 10 个城市时 , 求解困难 , 收敛于最优解的比率十分小 9 Z4 HNN 学习算法图 1 学习算法的流程图图 1 是学习算法的流程
17、图 L 框 是用学习后的新参数 (第一次用初始给出的参数值 ) , 使 HNN 在状态空间里进行状态更新至平衡状态 , t 是状态更新次数 , 被定义为时间 L 框 是网络到达平衡状态后 , 在参数空间里进行学习 , s (离散值 )是学习次数 L为了简明起见 , 举一个只含二个极小值的 HNN 为例 , 说明其学习过程 L 图 2 是能量和状态的关系 , 属概念性图示 , 横坐标表示状态 , 纵坐标表示与之对应的能量 (为了便于理解 , 用一维表示 ) L网络的初始状态和所对应的能量可以被定义为“山岳地形”上的某一点 ,这个点在特定“山谷”的斜面上 L在状态空间里 , 由 HNN 的收敛特性
18、可知 , 随着 HNN 状态的更新 , 这个点将滑向谷底 L 如初始状态是图2 (a) 上的点 A , 随着 HNN 状态的更新 , 将向谷底滑去 , 最终陷入谷底 B 点 (极小值 ) LHNN 能量函数的形状是由各种参数值决定的 L因此 , 对于一旦陷入极小值的点 , 在参数空间里 , 让参数向着使能量函数最速上升图 2 对于含二个极小值 HNN 的学习过程 , 能量和状态推移的关系201 系统工程理论与实践 2003 年 7 月 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.的方向学习 L为此
19、 , 用参数对能量函数进行微分 , 在它的最速上升方向 (能量函数的微分系数更大的方向 ) ,即正的梯度方向上对参数进行修正 , 这里我们称之为最速上升法 L 下面就此作进一步阐述 L首先 , 考虑一个含有许多参数的系统 , 把这些参数归纳起来用向量表示 , 在参数空间里 , V 将按照下式进行学习 :V s+ 1 = V s + $V s (9)这里设 E是正的常数 ,V 的修正量 $V s 可以由下式求得$V s = Ecurrency1 e (V s) (10)currency1 e 是 e 关于 V 的梯度 Z 如果能使 E取得足够小 , 随着学习 , 能量函数 e 是上升的 Z因此
20、, 学习后上升了的 B 点 , 又成为“山谷”斜面上的一点 B Z这时 , 在状态空间里 , 使 HNN 进行状态更新 , 点 B 将向谷底 C 滑去 , 最后陷入谷底 C 点 (图 2 (b) ) L 如此使网络在状态空间和参数空间里 , 按照HNN 的收敛特性及最速上升法 , 反复地进行状态更新、参数学习 , 如图 2 (c) , HNN 能量函数能够从陷入的极小值中逃脱出来 , 最终收敛于最优解或满意解 (图 2 (d) ) L因篇幅所限 , 这里只介绍其原理 , HNN 收敛特性的证明请参阅文献 8 ; HNN 学习算法有效性的验证请参阅文献 6 L5 基于 HNN 学习的多城市 TS
21、P 解法5. 1 HNN 学习算子的数学模型T SP 能量函数式 (4) 中 , A ,B ,D 是决定约束条件权值大小的系数 , 并且在选择范围上有一定的自由度 , 可作为学习参数 L 式 (4)可写成e= eA + eB + eD= A2 6Ni6Nj6Nm6NnDim (1 - Djn) y ijy m n - A 6Ni6Njy ij + A2+ B2 6Ni6Nj6Nm6NnDjn (1 - Dim ) y ijym n - B 6Ni6Njy ij + B2+ D2 6Ni6Nj6Nm6Nnd im y ijy m n (Dn, j+ 1 + Dn, j - 1) (11)因此 ,
22、 对应于式 (10) , A ,B ,D 的修正量分别是$A (s) = p 5 e5A (s) (12)$B (s) = q 5 e5B (s) (13)$D (s) = r 5 e5D (s) (14)式中 , p , q, r 是正的常数 , 称学习系数 L 由式 (11) , 可以导出能量函数关于学习参数 A ,B ,D 的偏微分5 e5A (s) =12 6Ni6Nj6Nm6NnDim (1 - Djn) y ijy m n- 6Ni6Njy ij + 12 (15)5 e5B (s) =12 6Ni6Nj6Nm6NnDjn (1 - Dim ) y ijy m n- 6Ni6Njy
23、 ij + 12 (16)5 e5D (s) =12 6Ni6Nj6Nm6Nnd im y ijy m n - (Dn, j+ 1 + Dn, j - 1) (17)5. 2 多城市 TSP 求解算法和规则301第 7 期 基于 Hopfield 网络学习的多城市旅行商问题的解法 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.图 3 多城市 T SP 求解算法流程图图 3 是算法的流程图 L 在初始化中 , 将所有城市位置都归化在一个单位正方形内 , 并确定当前运算环境下用 HNN 学习算子求解 T
24、 SP 时城市数的上限 Cm ax 的值 L 左右分割是左右等距离分割 , 左右分割线上的城市归左城市群 L 上下分割是上下等距离分割 , 上下分割线上的城市归上边城市群 L 各个城市群体的首尾确定方法是 , 把分割后的城市群体按顺时针方向或逆时针方向排列 , 然后找出相邻两个群体间最近的两个城市 , 分别成为它们的尾首 L计算方法是 , 固定群体的首尾 , 通过 HNN 学习算子的学习运算 , 求得各个群体的最优解或满意解 ; 如果全部的城市数不大于 Cm ax 的值 , 可直接由 HNN 学习算子求解 L 群体连接方法是按顺时针方向或逆时针方向将相邻两个城市群体的尾首相连接 L用该算法能够
25、求得问题的最优解或满意解 , 求解不受城市规模的限制 ; 并且可通过并列运算实现高速化 ; 同时因算法简明 , 易于硬件实现 L6 仿真实验结果在操作系统为 M S2DO S V er 6. 20 的 EPSON PC2486GR上 , 用 T u rbo C+ + V er 4. 0 编程 , 对 100 个城市的 T SP 进行了实验 , 其中 Cm ax = 20 L表 1 20 城市 T SP 的路径变化过程s t e d R(a) 0 24 - 353. 683166 20. 027258 2, 1, 4, 3, 6, 5, 8, 7, 10, 9, 12, 11, 14, 13,
26、16, 20, 19, 15, 18, 17(b) 144 1450 7. 818924 13. 037652 14, 1, 4, 3, 9, 5, 8, 7, 10, 17, 12, 11, 16, 13, 2, 20, 19, 15, 6, 18(c) 147 1497 13. 447951 11. 651095 14, 1, 4, 3, 9, 5, 8, 7, 10, 17, 12, 11, 15, 13, 2, 20, 16, 19, 6, 18(d) 151 1736 19. 193441 8. 277337 3, 6, 18, 8, 9, 5, 14, 1, 11, 12, 17,
27、 10, 15, 13, 2, 20, 16, 4, 19, 7图 4 20 城市 T S P 的最终解求解 20 个城市的 T SP 需 400 个神经单元 , 其坐标被随机地配置在一个单位正方形内 (图 4) , 设 p = q= r= 0. 0002, T = 0. 2, A= B = 10, D = 14Z y ij的初始值 , 由 0. 000000, 1. 000000 内的随机数随机地给出 , 计算结果如表 1 (表 1 中 , s, t, e, d , R 分别是学习次数、状态更新次数、能量、距离、访问路径 )及图 4 所示 ZCm ax值确定后 , 100 城市 T SP 的
28、仿真实验步骤是 , 1) 在一个单位正方形内随机地配置 100 个城市的坐标位置 (图 5 中的黑点 ) ; 2) 按算法规则对城市群体进行左右、上下分割操作 (图 5 中的虚线 ) ; 3) 把分割后的城市群体按逆时针方向排列 (图 5 中 ,单位正方形外的序号 ) , 然后找出相邻两个群体间最近的两个城市 , 分别成为它们的尾首 (图 5 中的大黑点 ) ; 4) 固定每个群体的首尾 , 用 HNN 学习算子求每个群体的最优解 (图 5 中各群体内的连线 ) ; 5) 按逆时针方向将相邻两个城市群体的尾首相连接 (图 5 中 , 大黑点之间的连线 ) Z 计算结果如表 2 (表 2 中 ,
29、 l, s, t, e, d , R , f r, en 分别是城市群体序号、学习次数、状态更新次数、能量、距离、群体首、群体尾 )及图 5 所示 Z401 系统工程理论与实践 2003 年 7 月 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.表 2 100 城市 T SP 各群体的主要变量的终值l s t e d f r en1 42 582 22. 837438 3. 178331 24 922 129 1258 22. 987162 3. 000604 67 343 103 728 23.
30、177134 2. 848885 75 864 112 871 24. 826333 3. 177270 4 935 261 1797 23. 319274 3. 136506 3 146 23 266 29. 641580 1. 812899 77 877 176 1527 28. 300069 2. 642367 22 488 145 1231 28. 932522 2. 798740 96 68图 5 100 城市 T SP 的最终解7 结束语本文提出了一种基于 HNN 学习的多城市 T SP 的解法 , 并以 100 城市的 T SP 为例进行了仿真实验 L实验表明 , 将 HNN 学
31、习算法作为基本算子 , 把城市群体按一定的规则进行分割、计算和连接 , 能够有效地求得巡回路径的最优解或满意解 L该算法不受求解问题的规模限制 ; 可通过并列运算实现高速化 ; 因算法简明 , 易于硬件实现 L其它同类组合优化问题 , 均可采用本算法进行求解 L参考文献 :1 L aw ler E L , L enstra J K, R innooy A H G, et al. T he T ravelling Salesm an P roblem M . Ch ichester: W iley, 1985.2 Hopfield J J , T ank D W. N eural computa
32、tion of decision in op tim ization p roblem s J . B io logical Cybernetics,1985, 52: 141- 152.3 A ck ley D H , H inton G E, Sejnow sk i T J. A learning algo rithm fo r Bo ltzm an M ach ines J . Cognitive Sci, 1985, 9:147- 169.4 M urata J , Fuch ikam i T , H irasaw a K. H euristic op tim ization usin
33、g long, m edium , and sho rt term m emo ries J . TIEE of Japan, 1998, 118- C (9): 1315- 1321.5 T ang Z, J in H H , Ish izuka O , et al. A n investigation on a unique so lution of the Hopfield and the T 2model neuralnetw o rk s J . T IEE of Japan, 1998, 118- C (2): 150- 160.6 T ang Z, J in H H , M ur
34、ao K, et al. A gradient ascent learning fo r Hopfield netw o rk s J . T. IE ICE of Japan, M ar. ,2000, J83- A (3): 319- 331. 7 金海和 , 陈剑 , 唐政 , 等 . 基于 Hopfield 网络的极小值问题学习算法 J . 清华大学学报 (自然科学版 ) , 2002, 42(6): 731- 734. 746.8 Hopfield J J. N eurons w ith graded response have co llective computational p
35、 roperties like tho se of tw o2state neuronsJ . P roc of the N atl A cad of Sci, U SA , 1984, 81: 3088- 3092.9 W ilson G V and Paw ley G S. O n stability of the traveling salesm an p roblem algo rithm of Hopfield and T ank J .B io logical Cybernetics, 1988, 58: 63- 70.501第 7 期 基于 Hopfield 网络学习的多城市旅行商问题的解法 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.