Skip to content

Azuki-Azusa/Simulated-annealing-algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

测试代码可以运行 /src/Main.py
因为图片显示的方法使用了阻塞的show(),因此需要手动关闭图片以运行后面的代码(阻塞期间时间也会计算)
测试用例在 /tc中,其中文件名下划线后的数字为官方最佳成绩,可作为比较数。
默认使用eil101_629.txt作为测例,在i5 - 8300下大致需要2min+。

以下建议运行Main.py的同时阅读:
每5000次迭代显示一次路径图,会打印一行字符如:
77.87959154194667 5000 1316.0519243691897
其中
77.87959154194667:表示当前温度为77.87959154194667
5000:表示当前迭代次数为5000
1316.0519243691897:表示该次迭代时状态的距离

最终会打印如下字符:
END Distance: 669.3967964475378
Times: 92102
Excess: 6.42%
totally cost 152.25856924057007 s
66.93967964475378
669.3967964475378 669.3967964475378
15.225856924057007

第一行为最终距离,第二行为迭代次数,第三行为距离最优解的百分比。
第四行为该次耗时。
第五-七行是当Main.py里第38行中Range(n)里n不为1时(即多次测试)打印的
平均值
最优值,最差值
平均耗时
可手动更改代码测试多此该参数。

会显示的图片有每5000次迭代显示一次的路径更新、结束显示的温度曲线和距离曲线。

About

Use SA to solve TSP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages