資源簡介
蟻群算法單路徑和多路徑路由
31節點網絡拓撲下尋找單個最短路徑和前三條最短路徑

代碼片段和文件信息
function?[]=MultiRoutes()
%%-------------------------------------------------------------------------
%%?主要符號說明
%%?C?n個節點的坐標,n×2的矩陣
%%?NC_max?最大迭代次數
%%?m?螞蟻代理個數
%%?Alpha?表征信息素重要程度的參數
%%?Beta?表征啟發式因子重要程度的參數
%%?Rho?信息素蒸發系數
%%?Q?信息素增加強度系數
%%?R_best?各代最佳路線
%%?L_best?各代最佳路線的長度
%%=========================================================================
clc
clear
%?設置初始參數如下:
m=30;Alpha=2;Beta=0.5;Rho=0.05;NC_max=100;Q=0.02;
%設定源目的節點
s=1;e=14;n=14;
%?網絡拓撲為:
D=[??0????????2100?????3000????????Inf?????????Inf?????????Inf?????????Inf?????????4800????????Inf????Inf?????????Inf?????????Inf?????????Inf?????????Inf
?????2100?????0????????1200????????1500?????????Inf????????Inf?????????Inf?????????Inf?????????Inf????Inf?????????Inf?????????Inf?????????Inf?????????Inf
?????3000?????1200?????0???????????Inf?????????Inf?????????3600????????Inf?????????Inf?????????Inf????Inf?????????Inf?????????Inf?????????Inf?????????Inf
?????Inf??????1500?????Inf?????????0???????????1200????????Inf?????????Inf?????????Inf?????????Inf????Inf????????3900?????????Inf?????????Inf?????????Inf
?????Inf??????Inf??????Inf?????????1200???????????0????????2400????????1200????????Inf?????????Inf????Inf?????????Inf?????????Inf?????????Inf?????????Inf
?????Inf??????Inf??????3600????????Inf????????2400?????????0???????????Inf?????????Inf?????????Inf????2100?????????Inf?????????Inf?????????Inf????????3600
?????Inf??????Inf??????Inf?????????Inf????????1200?????????Inf???????????0?????????1500????????Inf????2700?????????Inf?????????Inf?????????Inf?????????Inf
?????4800?????Inf??????Inf?????????Inf?????????Inf?????????Inf?????????1500????????0???????????1500???Inf?????????Inf?????????Inf?????????Inf?????????Inf
?????Inf??????Inf??????Inf?????????Inf?????????Inf?????????Inf?????????Inf?????????1500????????0??????1500?????????Inf?????????600?????????600?????????Inf
?????Inf??????Inf??????Inf?????????Inf?????????Inf?????????2100????????2700????????Inf?????????1500???0???????????Inf?????????Inf?????????Inf?????????Inf
?????Inf??????Inf??????Inf?????????3900????????Inf?????????Inf?????????Inf?????????Inf?????????Inf????Inf???????????0????????1200????????1500?????????Inf
?????Inf??????Inf??????Inf?????????Inf?????????Inf?????????Inf?????????Inf?????????Inf?????????600????Inf????????1200???????????0?????????Inf?????????600
?????Inf??????Inf??????Inf?????????Inf?????????Inf?????????Inf?????????Inf?????????Inf?????????600????Inf????????1500?????????Inf???????????0?????????300
?????Inf??????Inf??????Inf?????????Inf?????????Inf????????3600?????????Inf?????????Inf?????????Inf????Inf?????????Inf?????????600?????????300???????????0];
C=[?10??80
????0???60
????10??30
????30??50?
????40??40
????50??10?
????60??50
????70??60
????100?75
????80??0
????110?130
????135?120
????140?100
????130?40];
%初始化變量
Eta=zeros(nn);
for?k?=?1:n
????for?t?=?1:n
????????if?D(kt)~=0
???????????Eta(kt)=1/D(kt);
????????else?Eta(kt)=0;
????????end
????end
end????????%Eta為啟發因子,
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????7145??2011-11-09?19:21??single.m
?????文件???????8767??2011-11-08?21:30??MultiRoutes.m
-----------?---------??----------?-----??----
????????????????15912????????????????????2
評論
共有 條評論