資源簡介
用MATLAB語言編寫tsp問題程序并仿真求解遍歷34座城市最短路徑。
1模擬退火首先從某個初始候選解開始,當溫度大于0時執行循環。
2.在循環中通過隨機擾動產生一個新的解,然后求得新解和原解之間的能量差,如果差小于0,則采用新解作為當前解。
3.如果差大于0,則采用一個當前溫度與能量差成比例的概率來選擇是否接受新解。溫度越低,接受的概率越小,差值越大,同樣接受概率越小。是否接受的概率用此公式計算:p=exp(-ΔE/T)。這里ΔE為新解與原解的差,T為當前的溫度。由于溫度隨迭代次數逐漸降低,因此獲得一個較差的解的概率較小。

代碼片段和文件信息
function?len=computer_tour(cityn)???%計算路線總長度,每個城市只計算和下家城市之間的距離。
????len=0;
????for?i=1:n-1
????????len=len+sqrt((city(i).x-city(i+1).x)^2+(city(i).y-city(i+1).y)^2);????????
????end
????len=len+sqrt((city(n).x-city(1).x)^2+(city(n).y-city(1).y)^2);
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1353??2016-10-19?20:51??main.m
?????文件?????????385??2016-10-19?20:47??netplot.m
?????文件?????????320??2016-10-19?20:46??perturb_tour.m
?????文件?????????285??2016-10-19?20:45??computer_tour.m
- 上一篇:下一個倒下的會不會是華為
- 下一篇:多分布式電源下垂控制PQ控制matlab仿真
評論
共有 條評論