資源簡介
采用各種智能算法(包括蟻群算法、遺傳算法、神經(jīng)網(wǎng)絡(luò)算法、模擬退火等)在matlab下進(jìn)行基于TSP問題的仿真實(shí)驗(yàn)。
代碼片段和文件信息
%初始化
clear;
Alpha=1;?%信息素重要程度的參數(shù)
Beta=5;?%啟發(fā)式因子重要程度的參數(shù)?
Rho=0.5;?%信息素蒸發(fā)系數(shù)
NC_max=200;?%最大迭代次數(shù)
Q=100;?%信息素增加強(qiáng)度系數(shù)
CityNum=30;??%問題的規(guī)模(城市個(gè)數(shù))
[dislistClist]=tsp(CityNum);
m=CityNum;?%螞蟻個(gè)數(shù)
Eta=1./dislist;%Eta為啟發(fā)因子,這里設(shè)為距離的倒數(shù)
Tau=ones(CityNumCityNum);%Tau為信息素矩陣
Tabu=zeros(mCityNum);%存儲(chǔ)并記錄路徑的生成
NC=1;%迭代計(jì)數(shù)器
R_best=zeros(NC_maxCityNum);?%各代最佳路線
L_best=inf.*ones(NC_max1);%各代最佳路線的長度
L_ave=zeros(NC_max1);%各代路線的平均長度
figure(1);
while?NC<=NC_max?%停止條件之一:達(dá)到最大迭代次數(shù)
????%將m只螞蟻放到CityNum個(gè)城市上
????Randpos=[];
????for?i=1:(ceil(m/CityNum))
????????Randpos=[Randposrandperm(CityNum)];
????end
????Tabu(:1)=(Randpos(11:m))‘;
????
????%m只螞蟻按概率函數(shù)選擇下一座城市,完成各自的周游
????for?j=2:CityNum
????????for?i=1:m
????????????visited=Tabu(i1:(j-1));?%已訪問的城市
????????????J=zeros(1(CityNum-j+1)
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????3435??2007-01-29?15:24??genetic_algorithm.m
?????文件???????2551??2006-12-20?15:44??ant_colony_system.m
?????文件???????2018??2006-12-19?17:30??hopfield_neuro_network.m
?????文件????????636??2006-12-13?16:33??drawTSP10.m
?????文件???????2626??2006-11-22?15:09??tabu_search.m
?????文件???????1742??2006-09-22?16:12??simulated_annealing.m
?????文件????????610??2006-09-22?14:15??drawTSP.m
?????文件????????169??2006-09-12?16:45??CalDist.m
?????文件???????2134??2006-09-12?10:40??tsp.m
-----------?---------??----------?-----??----
????????????????15921????????????????????9
評(píng)論
共有 條評(píng)論