理论部分不再赘述,详情请查看我以往文章。
(19条消息) 模拟退火算法——理论篇_talkAC的博客-优快云博客
1 仿真问题
旅行商问题(TSP问题)。
假设1个旅行商要对31个省会城市进行拜访,要求距离最短,不能重复拜访,且最终要回到出发城市。
31个城市坐标:
[1304 2312;3639 1315;4177 2244;3712 1399;3488 1535;3326 1556;
3238 1229;4196 1044;4312 790 ;4386 570 ;3007 1970;2562 1756;
2788 1491;2381 1676;1332 695 ;3715 1678;3918 2179;4061 2370;
3780 2212;3676 2578;4029 2838;4263 2931;3429 1908;3507 2376;
3394 2643;3439 3201;2935 3240;3140 3550;2545 2357;2778 2826;
2370 2975];
2 仿真过程
初始化参数 -> 初温T、初始访问顺序city即初解
在温度t上进行充分探索 -> 迭代L次
在city上随机交换2个城市访问顺序,产生新解
计算新解增量ΔE
基于ΔE和Metropolis 采样