⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gagrefenstette.m

📁 旅行商问题的IAGA算法。好象很不错的程序。matlab编写的
💻 M
字号:
function [bestpath,minpathlong]=GAGrefenstette(TSPMatrix,Popsize,MaxGeneration,Pm,Pc)
%使用Grefenstette编码方式,进行旅行商问题遗传算法求解
path=Initialize(Popsize,TSPMatrix);%初始化路矩阵
for i=1:MaxGeneration
    FP=Fitness(path,TSPMatrix);%计算适应度
    Gpath=GTrans(path);%进行Grefenstette编码转换
    Gpath=Select(Gpath,FP,Popsize);%轮盘赌选择
    Gpath=CrossOver(Gpath,Pc,Popsize);%单点交叉,可变
    Gpath=Mutation(Gpath,Pm,Popsize);%位对调变异,可变
    path=Decode(Gpath);%解码
    avgpathlong(i)=sum(pathlong(path,TSPMatrix))/Popsize;%求平均长度
    bestpathlong(i)=min(pathlong(path,TSPMatrix));%求最短路径长度
end
[bestpath,minpathlong]=Output(path,TSPMatrix,Popsize);
[bestpath,minpathlong]=Output(path,TSPMatrix);
plot(avgpathlong);
hold on
plot(bestpathlong,'r');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -