當前位置:首頁 » 自駕旅行 » 多旅行

多旅行

發布時間: 2021-01-18 07:19:58

『壹』 多旅行商問題matlab程序

[code]function [R_best,L_best,L_ave,Shortest_Route,Shortest_Length]=ACATSP(C,NC_max,m,Alpha,Beta,Rho,Q)
%%=========================================================================
%% ACATSP.m
%% Ant Colony Algorithm for Traveling Salesman Problem
%% ChengAihua,PLA Information Engineering University,ZhengZhou,China
%% Email:[email protected]
%% 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);%各代路線的平均長度

while NC<=NC_max%停止條件之一:達到最大迭代次數
%%第二步:將m只螞蟻放到n個城市上
Randpos=[];
for i=1:(ceil(m/n))
Randpos=[Randpos,randperm(n)];
end
Tabu(:,1)=(Randpos(1,1:m))';

%%第三步:m只螞蟻按概率函數選擇下一座城市,完成各自的周遊
for j=2:n
for i=1:m
visited=Tabu(i,1:(j-1));%已訪問的城市
J=zeros(1,(n-j+1));%待訪問的城市
P=J;%待訪問城市的選擇概率分布
Jc=1;
for k=1:n
if length(find(visited==k))==0
J(Jc)=k;
Jc=Jc+1;
end
end
%下面計算待選城市的概率分布
for k=1:length(J)
P(k)=(Tau(visited(end),J(k))^Alpha)*(Eta(visited(end),J(k))^Beta);
end
P=P/(sum(P));
%按概率原則選取下一個城市
Pcum=cumsum(P);
Select=find(Pcum>=rand);
to_visit=J(Select(1));
Tabu(i,j)=to_visit;
end
end
if NC>=2
Tabu(1,:)=R_best(NC-1,:);
end

%%第四步:記錄本次迭代最佳路線
L=zeros(m,1);
for i=1:m
R=Tabu(i,:);
for j=1:(n-1)
L(i)=L(i)+D(R(j),R(j+1));
end
L(i)=L(i)+D(R(1),R(n));
end
L_best(NC)=min(L);
pos=find(L==L_best(NC));
R_best(NC,:)=Tabu(pos(1),:);
L_ave(NC)=mean(L);
NC=NC+1

%%第五步:更新信息素
Delta_Tau=zeros(n,n);
for i=1:m
for j=1:(n-1)
Delta_Tau(Tabu(i,j),Tabu(i,j+1))=Delta_Tau(Tabu(i,j),Tabu(i,j+1))+Q/L(i);
end
Delta_Tau(Tabu(i,n),Tabu(i,1))=Delta_Tau(Tabu(i,n),Tabu(i,1))+Q/L(i);
end
Tau=(1-Rho).*Tau+Delta_Tau;

%%第六步:禁忌表清零
Tabu=zeros(m,n);
end

%%第七步:輸出結果
Pos=find(L_best==min(L_best));
Shortest_Route=R_best(Pos(1),:)
Shortest_Length=L_best(Pos(1))
subplot(1,2,1)
DrawRoute(C,Shortest_Route)
subplot(1,2,2)
plot(L_best)
hold on
plot(L_ave)

function DrawRoute(C,R)
%%=========================================================================
%% DrawRoute.m
%% 畫路線圖的子函數
%%-------------------------------------------------------------------------
%% C Coordinate 節點坐標,由一個N×2的矩陣存儲
%% R Route 路線
%%=========================================================================

N=length(R);
scatter(C(:,1),C(:,2));
hold on
plot([C(R(1),1),C(R(N),1)],[C(R(1),2),C(R(N),2)])
hold on
for ii=2:N
plot([C(R(ii-1),1),C(R(ii),1)],[C(R(ii-1),2),C(R(ii),2)])
hold on
end

設置初始參數如下:
m=31;Alpha=1;Beta=5;Rho=0.1;NC_max=200;Q=100;
31城市坐標為:
1304 2312
3639 1315
4177 2244
3712 1399
3488 1535
3326 1556
3238 1229
4196 1004
4312 790
4386 570
3007 1970
2562 1756
2788 1491
2381 1676
1332 695
3715 1678
3918 2179
4061 2370
3780 2212
3676 2578
4029 2838
4263 2931
3429 1908
3507 2367
3394 2643
3439 3201
2935 3240
3140 3550
2545 2357
2778 2826
2370 2975[/code]

運行後得到15602的巡遊路徑,路線圖和收斂曲線如下:

『貳』 請問,我用lingo求解多旅行商問題,要求從一個點出發最後回到起點。怎麼編程啊

lingo如果你安裝的版本完整 應該可以在安裝文件夾的sample裡面找到一個lsp的例子 不過用lingo解這種問題如果比較復雜是很難解出的

『叄』 多旅行的名言名句

多旅行的名言名句
1、行路多者見識多.

2、乘興而行,興盡而返.

3、旅行能培養人的耐力.

4、旅行使我們體味人生.

5、知者樂水,仁者樂山.

6、步步尋往跡,有處特依依.

7、好旅伴可以縮短旅途時間.

8、旅行教給人們寬容之美德.

9、山色不厭遠,我行隨處深.

10、旅遊使智者更智,愚者更昧.

11、人生是通往死亡的一次旅行.

12、旅行是解脫,是經驗,是教育.

13、要想結為夫妻,先去旅行一次.

14、從不出門的人,必定是滿腹偏見.

15、不能手提天下往,僅忍身去游其間.

16、黃雞紫蟹堪攜酒,紅樹青山好放船.

17、絕不離開自己祖國的人充滿了偏見.

18、旅行是真正的知識最偉大的發源地.

19、旅行雖頗費錢財,卻使你懂得社會.

20、臨清風,對朗月,登山泛水,意酣歌.

21、旅行對我來說,是恢復青春活力的源泉.

22、旅遊是獲得愉悅感和浪漫性的最好媒介.

23、沒有知識的旅遊者是一隻沒有翅膀的鳥.

24、一個人到國外去以前,應該更進一步了解祖國.

25、人出門旅行並不是為了到達某地,而是為了旅遊.

26、不登高山,不知天之高也;不臨深溪,不知地之厚也.

27、旅行對青年,是教育的一部分;對於老年人是部分經驗.

28、我非常喜歡旅遊.到現在去過13個國家,28個城市.

29、一個人在旅遊時必須帶上知識,如果他想帶回知識的話.

30、任何名勝,游覽一次有一次的情趣,再游便另是一種風光.

31、世界是本書,不從旅行獲得充足,而是為了心靈獲得休息.

32、在令人厭倦的旅途上,一個性格明快的夥伴勝過一乘轎子.

33、如果說出生是最明確的一場旅行,死亡難道不是另一場出發?

34、世界是一本書,從不旅行的人等於只看了這本書的一頁而已.

35、我們像旅人那樣走向目的地;世界是客棧,死亡是旅行的終點.

36、泊舟水心岩望漁網溪,異綠染人,雖荷田柳汁不足以寫其殊艷也.

『肆』 是不是多旅行比多看書更重要

其實這抄個是因人而異的,對於一個襲不愛看書的人來說,旅行比看書更重要。因為在他們看來,自己不願把時間花在書本上去領略書中所說的美好世界,他們更傾向於到外面的世界去看看,卻親自感受大好山河,美圖美景,對他們來說這是一件美好的事情。

在我看來,讀書和旅行同等重要,這兩者都可以拓寬我們的視野,增長我們的見識。

『伍』 人為什麼要多讀書,多旅行

無論是讀書還是旅行,都是一種開闊視野,不斷豐富自己的方法。所以無論你專是讀書還是旅行屬或者是工作,只要能夠找到最適合自己的生存方式,都是值得肯定的。
不一定非要讀書和旅行,只要你能夠活得有意義,做什麼都行。

『陸』 人為什麼要多讀書,多旅行

無論是讀書還是旅行,都是一種開闊視野,不斷豐富自己的方法。所以無論你回是讀書還是答旅行或者是工作,只要能夠找到最適合自己的生存方式,都是值得肯定的。
不一定非要讀書和旅行,只要你能夠活得有意義,做什麼都行。

『柒』 多旅行商python 代碼

寫的太簡單了,表示還不明白什麼是多旅行商

熱點內容
微山湖島旅遊攻略 發布:2021-03-16 21:45:18 瀏覽:387
適合78月份國內旅遊的地方 發布:2021-03-16 21:42:27 瀏覽:6
文化旅遊部單位 發布:2021-03-16 21:42:22 瀏覽:118
深圳周邊游推薦免費的 發布:2021-03-16 21:42:18 瀏覽:696
塑州旅遊景點 發布:2021-03-16 21:40:53 瀏覽:84
道觀河風景旅遊區發展前景 發布:2021-03-16 21:39:53 瀏覽:658
旅行社psd 發布:2021-03-16 21:39:03 瀏覽:174
常州旅遊業發展現狀 發布:2021-03-16 21:35:14 瀏覽:330
棋牌在線游戲必去797ag 發布:2021-03-16 21:33:30 瀏覽:217
有四個旅遊團三條路線 發布:2021-03-16 21:33:30 瀏覽:164