main.asv

来自「这是一个SA求解tsp旅行商的matlab源代码」· ASV 代码 · 共 37 行

ASV
37
字号
%模拟退火算法求解给定坐标的TSP问题。@Zhusnegyao 2005-7-26
global citynumber
global dist
global new
dist=InitialSA()
maxdist=max(max(dist));
mindist=0;
k=0.95;%衰减度
tt=0.01;
l=citynumber^2;
t0=CountInitialTemper(maxdist,mindist,citynumber);%初始温度
t=t0;
x0=newpath();
old=td(x0);
time=1;
while t>tt 
    record(time)=old;
    time=time+1;
    for count=1:l;
       x1=change(x0);
        new=td(x1);
        changetd=new-old;
        if changetd<0
            x0=x1;
            old=new;
        else if (p(exp(-changetd/t)))
                x0=x1;
                old=new;
            end
        end
    end
    t=k*t0
end
old
x0
show(x0);

⌨️ 快捷键说明

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