最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

【路徑規(guī)劃】基于蟻群算法三臂鑿巖機器人動態(tài)孔序規(guī)劃含Matlab源碼

2022-05-14 00:18 作者:Matlab工程師  | 我要投稿

1 簡介

蟻群算法模擬了自然界中螞蟻的覓食行為,螞蟻在尋找食物過程中會釋放信息素,同時能夠感知前面螞蟻在路徑上殘留的信息素濃度來引導自己運動,因而逐漸形成一種正反饋現(xiàn)象:路徑越短,殘留信息素濃度越高;越多的螞蟻經過該路徑,該路徑上的信息素濃度就越大,之后的螞蟻選擇這條路徑的概率就越大,螞蟻就是通過這種交流方式來找到食物,蟻群算法中的兩個關鍵部分就是路徑選擇概率和信息素更新,決定了蟻群算法的求解速度和解的質量。

2 部分代碼

%% 此函數(shù)根據相交的路徑計算相應交點的禁忌點% cTabu --- 各點的禁忌表% C --- 各點的坐標(n x 2)矩陣% D --- 各點的距離矩陣% table --- 為m只螞蟻對n個點進行規(guī)劃后的路徑表function [ cTabu ] = calCityTab( cTabu, C, D, table )% m --- 螞蟻數(shù)量% n --- 城市數(shù)量 ? ?m=size(table,1); ? ?n=size(table,2);% ? ? cTabu=zeros(n,n); ? ?for i=1:m ? ? ? ?for j=1:n-2 ? ? ? ? ? ?X1=C(table(i,j),:); ? ? ? ? ? ?Y1=C(table(i,j+1),:); ? ? ? ? ? ?for k=j+2:n-1 ? ? ? ? ? ? ? ?X2=C(table(i,k),:); ? ? ? ? ? ? ? ?Y2=C(table(i,k+1),:); ? ? ? ? ? ? ? ?[~,~,isIntersect]= node( X1,Y1,X2,Y2 ); ? ? ? ? ? ? ? ?if isIntersect ? ? ? ? ? ? ? ? ? ?% 如果規(guī)劃下的非相鄰的兩直線相交,則將線段較長的兩點相互加入其禁忌表中 ? ? ? ? ? ? ? ? ? ?if D(table(i,j),table(i,j+1)) > D(table(i,k),table(i,k+1)) ? ? ? ? ? ? ? ? ? ? ? ?% 如果cTabu對應的行中有table(i,j)數(shù)值,則返回1,否則返回0 ? ? ? ? ? ? ? ? ? ? ? ?if ~any(cTabu(table(i,j),:) == table(i,j+1)) ? ? ? ? ? ? ? ? ? ? ? ? ? ?index_1=find(cTabu(table(i,j),:)==0); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cTabu(table(i,j),index_1(1))=table(i,j+1); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?end ? ? ? ? ? ? ? ? ? ? ? ? ? ?if ~any(cTabu(table(i,j+1),:) == table(i,j)) ? ? ? ? ? ? ? ? ? ? ? ? ? ?index_2=find(cTabu(table(i,j+1),:)==0); ? ? ? ? ? ? ? ? ? ? ? ? ? ?cTabu(table(i,j+1),index_2(1))=table(i,j); ? ? ? ? ? ? ? ? ? ? ? ?end ? ? ? ? ? ? ? ? ? ?else ? ? ? ? ? ? ? ? ? ? ? ?if ~any(cTabu(table(i,k),:) == table(i,k+1)) ? ? ? ? ? ? ? ? ? ? ? ? ? ?index_1=find(cTabu(table(i,k),:)==0); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cTabu(table(i,k),index_1(1))=table(i,k+1); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?end ? ? ? ? ? ? ? ? ? ? ? ?if ~any(cTabu(table(i,k+1),:) == table(i,k)) ? ? ? ? ? ? ? ? ? ? ? ? ? ?index_2=find(cTabu(table(i,k+1),:)==0); ? ? ? ? ? ? ? ? ? ? ? ? ? ?cTabu(table(i,k+1),index_2(1))=table(i,k); ? ? ? ? ? ? ? ? ? ? ? ?end ? ? ? ? ? ? ? ? ? ?end ? ? ? ? ? ? ? ?end ? ? ? ? ? ?end ? ? ? ?end ? ?endend

3 仿真結果

4 參考文獻

[1]鄭勇. 基于蟻群算法的移動機器人動態(tài)路徑規(guī)劃[D]. 電子科技大學.

博主簡介:擅長智能優(yōu)化算法、神經網絡預測、信號處理、元胞自動機、圖像處理、路徑規(guī)劃、無人機等多種領域的Matlab仿真,相關matlab代碼問題可私信交流。

部分理論引用網絡文獻,若有侵權聯(lián)系博主刪除。





【路徑規(guī)劃】基于蟻群算法三臂鑿巖機器人動態(tài)孔序規(guī)劃含Matlab源碼的評論 (共 條)

分享到微博請遵守國家法律
沁源县| 霍山县| 黑河市| 黎城县| 嘉黎县| 海丰县| 沙坪坝区| 西乌珠穆沁旗| 三亚市| 浑源县| 阿城市| 若尔盖县| 万载县| 航空| 麻城市| 山丹县| 琼结县| 二连浩特市| 柳林县| 荥经县| 中西区| 前郭尔| 西林县| 清涧县| 景谷| 麻江县| 建昌县| 商河县| 湖口县| 浑源县| 琼中| 漳州市| 肇源县| 兴义市| 涞源县| 容城县| 石狮市| 衡南县| 博野县| 金门县| 登封市|