📄 gatsp.m
字号:
function [bestpath,minpathlong]=GATSP(TSPMatrix,Popsize,MaxGeneration,Pc,Pm)
%遗传算法解决旅行商问题
path=Initialize(Popsize,TSPMatrix);%初始化路径
for i=1:MaxGeneration
FP=Fitness(path,TSPMatrix);%计算适应度
path=Select(path,FP);%轮盘赌选择
for j=1:2:Popsize
[path(j,:),path(j+1,:)]=Crossover(path(j,:),path(j+1,:),Pc);%交叉,可选共四种交叉方式可供选择CX,OX,EX
end
path=Mutation(path,Pm);%变异,有两种方式可供选择
avgpathlong(i)=sum(pathlong(path,TSPMatrix))/Popsize;%平均长度;
bestpathlong(i)=min(pathlong(path,TSPMatrix));%最短长度
end
[bestpath,minpathlong]=Output(path,TSPMatrix);%输出结果
%绘图
plot(avgpathlong);
hold on
plot(bestpathlong,'r');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -