蚂蚁算法求解tsp问题matlab,蚁群算法解决TSP问题的MATLAB程序
蟻群算法TSP(旅行商問題)通用matlab程序
function [R_best,L_best,L_ave,Shortest_Route,Shortest_Length]=ACATSP(C,NC_max,m,Alpha, Beta,Rho,Q)
%%=================================================================== %% ACA TSP.m
%% Ant Colony Algorithm for Traveling Salesman Problem
%% ChengAihua,PLA Information Engineering University,ZhengZhou,China
%% Email:aihuacheng@http://www.doczj.com/doc/790f0070f242336c1eb95e2f.html
%% All rights reserved
%%-------------------------------------------------------------------------
%% 主要符號說明
%% C n個城市的坐標,n×2的矩陣
%% NC_max 最大迭代次數
%% m 螞蟻個數
%% Alpha 表征信息素重要程度的參數
%% Beta 表征啟發式因子重要程度的參數
%% Rho 信息素蒸發系數
%% Q 信息素增加強度系數
%% R_best 各代最佳路線
%% L_best 各代最佳路線的長度
%%===================================================================
%%第一步:變量初始化
n=size(C,1);%n表示問題的規模(城市個數)
D=zeros(n,n);%D表示完全圖的賦權鄰接矩陣
for i=1:n
for j=1:n
if i~=j
D(i,j)=((C(i,1)-C(j,1))^2+(C(i,2)-C(j,2))^2)^0.5;
else
D(i,j)=eps;
end
D(j,i)=D(i,j);
end
end
Eta=1./D;%Eta為啟發因子,這里設為距離的倒數
Tau=ones(n,n);%Tau為信息素矩陣
Tabu=zeros(m,n);%存儲并記錄路徑的生成
NC=1;%迭代計數器
R_best=zeros(NC_max,n);%各代最佳路線
L_best=inf.*ones(NC_max,1);%各代最佳路線的長度
L_ave=zeros(NC_max,1);%各代路線的平均長度
總結
以上是生活随笔為你收集整理的蚂蚁算法求解tsp问题matlab,蚁群算法解决TSP问题的MATLAB程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 索尼 Xperia 1 V 渲染图曝光:
- 下一篇: 复合梯形公式matlab代码_MATLA