游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1466|回复: 1

遗传算法-旅行商问题

[复制链接]

2

主题

5

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2008-12-27 12:56:00 | 显示全部楼层 |阅读模式
http://blog.csdn.net/corivSky/archive/2008/12/27/3621415.aspx

遗传算法-旅行商问题



       旅行商问题:一个旅行者要去很多城市,每个城市只去一次,问:该怎么走路线最短?



       这个问题可以转化为:随机给n个点,如何连线这n个点,使得连线最短?



       这个问题是遗传算法的经典问题~哈哈~~我试着写了一个程序来解决。



       采用的策略是:

1.       精英主义:每次有2个最优解直接进入下一代。

2.       轮盘赌选择生育:每次对每一代的个体进行一次轮询,如果不适应度<某个随机数,那么选择这个个体进行生育。

3.       单性繁殖:因为基因组的基因是互斥的且有序的,所以不适合两性繁殖。

4.       交换变异:变异的方式为——随机选择两个不同位置的基因,交换位置。





用mfc写的,截图:呵呵。变异率不用填,我写死在程序里了。



源代码链接:

修改后的源代码:

http://download.csdn.net/source/914702
[em2] [em3]

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2008-12-27 13:14:00 | 显示全部楼层

Re:遗传算法-旅行商问题

赞一个 [em16]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-20 15:35

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表