没有合适的资源?快使用搜索试试~ 我知道了~
应用GA和PSO算法求解10城市TSP问题.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 50 浏览量
2021-10-06
08:08:35
上传
评论
收藏 110KB DOC 举报
温馨提示
试读
13页
应用GA和PSO算法求解10城市TSP问题.doc
资源推荐
资源详情
资源评论
- -
应用 GA 和 PSO 算法求解 10 城市 TSP
问题
1 问题描述
旅行团方案近期在城市 A、B、C、D、E、F、G、H、I 和 J 共 10 个城市间
进展一次周游旅行,为了尽量节省旅行开支,希望能找到一条里程数最少或相
对较少的旅行路线。
问题 1,给定 10 个城市之间的公路里程如表 1 所示,并要求使用 GA 算法
求解优化问题。
问题 2,与问题 1 数据一样,要求使用 PSO 算法求解优化问题。
表 1 城市位置坐标〔单位:km〕
横坐标 纵坐标
城市 A
40 44.39
城市 B
24.39 14.63
城市 C
17.07 22.93
城市 D
22.93 76.1
城市 E
51.71 94.14
城市 F
87.32 65.36
城市 G
68.78 52.19
城市 H
84.88 36.09
城市 I
66.83 25.36
城市 J
61.95 26.34
2 使用 GA 算法求解
2.1 算法描述
(1) 编码和适应度函数
分别用 1-10 表示城市 A-J,然后采用自然数编码方式为 TSP 问题编码,例
如,旅程〔1 6 2 89105734〕表示从城市 A 出发分别经过了 F-B-H-I-J-E-G-
C-D 的一次旅行。每一个问题的解及算法中的个体都可以计算相应的距离。那
么种群中的最小距离和最大距离也相应的可以确定。选择种群个数为 50。
根据种群中个体的距离并考虑使用自适应的标定方法,定义如下的适应度
函数,
使用此适应度函数的后面的乘方次数可以调整来改变淘汰速度。这里选择2,
表示淘汰速度比拟适中。
(2) 定义算子
选择算子,根据适应度函数的大小进展选择。计算每个个体被选中的概率
- - word.zl-
- -
,以各个个体所分配到的概率值作为其遗传到下一代的概率,
基于这些概率用赌盘选择法来产生下一代群体。
穿插算子,采用局部映射穿插(Partially Mapped Crossover, PMX)方法
实现算法穿插。首先选取选需要穿插的区间段,然后确定区间段的映射关系,
接下来交换区间段的遗传信息,此时未换局部的遗传信息会出现不合法的情况,
因此根据将未换局部按映射关系进展交换。穿插率为 0.9。
变异算子,把一个染色体中的两个基因的交换作为变异算法。在算法中随
机的产生一个染色体中需要交换的两个基因的位置,将这两个基因进展交换来
实现变异。变异率为 0.2。
(3) 算法流程
根据上述的遗传算子的定义,并设置最大的迭代次数为 1000,将 GA 算法
流程表达如下,
(i) 随机生成初始种群。
(ii) 按照本节(1)中的公式计算各个个体适应度的值。
(iii) 判断是否到达了最大的迭代次数。假设是,算法完毕,输出计算结果 ;
假设否,转到(iv)。
(iv) 按照本节(2)中的选择算子进展选择操作。
(v) 选择穿插宽度并随机确定穿插切点,按照本节(2)中的穿插算子进展穿
插操作。
(vi) 按照本节(2)中的变异算子进展变异操作。
(vii) 将遗传算子产生的种群作为新的种群,转到(ii)。
2.2GA 算法计算结果
使用 Matlab 编程实现 2.1 中的算法,计算结果如下。
- - word.zl-
- -
0 100 200 300 400 500 600 700 800 900 1000
260
280
300
320
340
360
380
GA算 法 过 程
迭 代 次 数
距 离 值
图 1 GA 算法过程的距离值变化
10 20 30 40 50 60 70 80 90
10
20
30
40
50
60
70
80
90
100
km
km
GA 10 TSP算 法 求 解 个 城 市 问 题 规 划 路 径
规 划 路 径
图 2 GA 算法求解的 10 城市 TSP 问题的结果
最后的结果编码为〔89102314567〕,解为 H-I-J-B-C-A-D-E-F-G,距离
为 269.0671。
- - word.zl-
剩余12页未读,继续阅读
资源评论
- violab2023-07-05怎么能有这么好的资源!只能用感激涕零来形容TAT...
gjmm89
- 粉丝: 14
- 资源: 19万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功