本次博文所编写的代码使用如下进化操作:
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| 适应度值
一个个体的适应度值是其目标函数值的倒数。因为总距离越小说