MATLAB实战系列(九)-遗传算法(GA)求解旅行商问题(TSP)思路解析
【摘要】
本次博文所编写的代码使用如下进化操作:
1、二元锦标赛选择操作;
2、OX交叉操作;
3、交换、逆转和插入相结合的变异操作。
一 | 旅行商(TSP)问题
假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的...
本次博文所编写的代码使用如下进化操作:
1、二元锦标赛选择操作;
2、OX交叉操作;
3、交换、逆转和插入相结合的变异操作。
一 | 旅行商(TSP)问题
假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路程为所有路径之中的最小值。
二 | 算法设计
01 | 编码
编码采用常规的整数编码,如果城市数目为N,那么解就可以表达为1~N的随机排列,用MATLAB中的randperm(N)进行表示。
02 | 种群初始化
设种群数目为NIND,则初始化种群为NIND个1~N的随机排列。
03 | 目标函数值
一个个体的目标函数值就是该个体的总距离,比如说一个个体为213,那么这个个体的总距离=21之间的距离+13之间的距离+32之间的距离(从3出发还需要返回起始点2)。
04 | 适应度值
一个个体的适应度值是其目标函数值的倒数。因为总距离越小说
文章来源: wenyusuran.blog.csdn.net,作者:文宇肃然,版权归原作者所有,如需转载,请联系作者。
原文链接:wenyusuran.blog.csdn.net/article/details/108398308
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)