資源描述:
《模擬退火算法解決TSP問(wèn)題-代碼.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、模擬退火算法解決TSP問(wèn)題一、算法說(shuō)明:模擬退火算法求解TSP問(wèn)題的流程框圖如圖所示二、結(jié)果分析藍(lán)色字表示輸出結(jié)果運(yùn)行時(shí)間表示算法復(fù)雜度1)數(shù)據(jù)集一:模式城市數(shù)量為5時(shí)輸入模式城市數(shù)量5為了方便查看,數(shù)據(jù)和結(jié)果保存在文件中<<<<鄰接矩陣保存在文件模擬退火算法-隨機(jī)產(chǎn)生數(shù)據(jù).txt中<<<<訪問(wèn)順序保存在文件模擬退火算法-結(jié)果數(shù)據(jù).txt中模擬節(jié)點(diǎn)個(gè)數(shù)5運(yùn)行時(shí)間:10ms鄰接矩陣0157208110594936575909082204990075813682750訪問(wèn)節(jié)點(diǎn)順序352412)數(shù)據(jù)集二:模式城市
2、數(shù)量為10時(shí)輸入模式城市數(shù)量10為了方便查看,數(shù)據(jù)和結(jié)果保存在文件中<<<<鄰接矩陣保存在文件模擬退火算法-隨機(jī)產(chǎn)生數(shù)據(jù).txt中<<<<訪問(wèn)順序保存在文件模擬退火算法-結(jié)果數(shù)據(jù).txt中模擬節(jié)點(diǎn)個(gè)數(shù)10運(yùn)行時(shí)間:15ms鄰接矩陣015720815949369082107518867152312105775037161799451312018370238545861618186162017674636759711738170617980524952995467610318873363145584679310
3、969390213613680889605482101617527393540訪問(wèn)節(jié)點(diǎn)順序176108294533)數(shù)據(jù)集三:模式城市數(shù)量為20時(shí)輸入模式城市數(shù)量20為了方便查看,數(shù)據(jù)和結(jié)果保存在文件中<<<<鄰接矩陣保存在文件模擬退火算法-隨機(jī)產(chǎn)生數(shù)據(jù).txt中<<<<訪問(wèn)順序保存在文件模擬退火算法-結(jié)果數(shù)據(jù).txt中模擬節(jié)點(diǎn)個(gè)數(shù)20運(yùn)行時(shí)間:17ms鄰接矩陣01572081594936908275188671523121037161017994513123854586161176746367617957
4、1708052318873969354154724862278851001002099800624027308433810687292282859698145526208473492175474695751260397461585913314084037162343805299753518665077049188277337051169515917031438976916883627330491651082592019824816517341295790389684212316820697672481337
5、8445267438254933754395596901195925535483885324675585438478015207611028983074572076844018611510465291197295280518949958654208661476895997082489298510846366218413127117247757531481355308984075329429341552678621235431637357446375074847160753146229260188518448
6、5799663274026151723678283966977343820582194842608185221078528745069415285766842971158101256376110059617162967328454133460185120216791006958708857434640201215757225620訪問(wèn)節(jié)點(diǎn)順序1912206175181521339101684141117代碼:#include#include#include#
7、include#include#include#include#include#include#defineMAX10000#defineINF#defineE0.//迭代誤差#defineL20000//迭代次數(shù)#defineAT0.999//降溫系數(shù)#defineT1//初始溫度usingnamespacestd;structelement{//用來(lái)排序的數(shù)據(jù)結(jié)構(gòu)intdata;//數(shù)據(jù)intin
8、dex;//序號(hào)};inttsp(intd[][MAX],intn,doublee,intl,doubleat,doublet,ints0[]);//利用模擬退火算法求解最短路徑intcmp(constvoid*a,constvoid*b);//升序排列voidrand_of_n(inta[],intn);//產(chǎn)生1-n的隨機(jī)排列并存到a[]中intrandom(intm,intn);intdis[MAX][MA