一、簡介
基于matlab蟻群演算法的三維路徑規劃
二、源代碼
%% 該函式用于演示基于蟻群演算法的三維路徑規劃演算法
%% 清慷訓境
clc
clear
%% 資料初始化
%下載資料
load HeightData HeightData
%網格劃分
LevelGrid=10;
PortGrid=21;
%起點終點網格點
starty=10;starth=4;
endy=8;endh=5;
m=1;
%演算法引數
PopNumber=10; %種群個數
BestFitness=[]; %最佳個體
%初始資訊素
pheromone=ones(21,21,21);
%% 初始搜索路徑
[path,pheromone]=searchpath(PopNumber,LevelGrid,PortGrid,pheromone, ...
HeightData,starty,starth,endy,endh);
fitness=CacuFit(path); %適應度計算
[bestfitness,bestindex]=min(fitness); %最佳適應度
bestpath=path(bestindex,:); %最佳路徑
BestFitness=[BestFitness;bestfitness]; %適應度值記錄
%% 資訊素更新
rou=0.2;
cfit=100/bestfitness;
for i=2:PortGrid-1
pheromone(i,bestpath(i*2-1),bestpath(i*2))= ...
(1-rou)*pheromone(i,bestpath(i*2-1),bestpath(i*2))+rou*cfit;
end
%% 回圈尋找最優路徑
for kk=1:100
%% 路徑搜索
[path,pheromone]=searchpath(PopNumber,LevelGrid,PortGrid,...
pheromone,HeightData,starty,starth,endy,endh);
%% 適應度值計算更新
fitness=CacuFit(path);
[newbestfitness,newbestindex]=min(fitness);
if newbestfitness<bestfitness
bestfitness=newbestfitness;
bestpath=path(newbestindex,:);
end
BestFitness=[BestFitness;bestfitness];
%% 更新資訊素
cfit=100/bestfitness;
for i=2:PortGrid-1
pheromone(i,bestpath(i*2-1),bestpath(i*2))=(1-rou)* ...
pheromone(i,bestpath(i*2-1),bestpath(i*2))+rou*cfit;
end
end
三、運行結果

四、備注
完整代碼或者代寫添加QQ1564658423,
往期回顧>>>>>>
【VRP】基于matlab遺傳演算法的帶時間窗的車輛路徑問題【含Matlab原始碼 002期】
【路徑規劃】基于matlab A*演算法解決三維路徑規劃問題【含Matlab原始碼 003期】
【路徑規劃】基于matlab人工蜂群的路徑規劃【含Matlab原始碼 004期】
【路徑規劃】基于matlab蟻群求解多旅行商MTSP問題【含Matlab原始碼 005期】
【路徑規劃】基于matlab蟻群演算法的無人機路徑規劃【含Matlab原始碼 008期】
【路徑規劃】基于matlab遺傳演算法求解多VRP問題【含Matlab原始碼 010期】
【路徑規劃】基于matlab遺傳演算法的多中心VRP求解【含Matlab原始碼 011期】
【路徑規劃】基于matlab粒子群的三維無人機路徑規劃【含Matlab原始碼 015期】
【路徑規劃】基于matlab采用遺傳演算法編制多物流中心的開放式車輛路徑問題【含Matlab原始碼 017期】
【路徑規劃】基于matlab粒子群之機器人柵格路徑規劃【含Matlab原始碼 018期】
【路徑規劃】基于matlab蟻群演算法求解最短路徑【含Matlab原始碼 019期】
【路徑規劃】基于matlab 免疫演算法之物流中心選址問題【含Matlab原始碼 020期】
【路徑規劃】基于matlab人工蜂群的無人機三維路徑規劃【含Matlab原始碼 021期】
【路徑規劃】基于matalb柵格地圖——遺傳演算法的機器人最優路徑規劃【含Matlab原始碼 022期】
【路徑規劃】基于matlab柵格地圖——遺傳演算法的機器人最優路徑規劃【含Matlab原始碼 027期】
【路徑規劃】基于matlab蟻群的多無人機攻擊調度【含Matlab原始碼 034期】
【路徑規劃】基于matlab蟻群的三維路徑規劃【含matlab原始碼 043期】
【路徑規劃】基于matlab粒子群優化蟻群的最短路徑求解【含Matlab原始碼 076期】
【路徑規劃】基于matlab蟻群演算法求解多中心VRP問題【含Matlab原始碼 111期】
【路徑規劃】基于matlab蟻群演算法求解帶時間窗的多中心VRP問題【含Matlab原始碼 112期】
【路徑規劃】基于matlab蟻群演算法求解帶時間窗的多中心VRP問題【含Matlab原始碼 113期】
【路徑規劃】基于matalb遺傳演算法的多中心VRP求解【含Matlab原始碼 114期】
【路徑規劃】基于matlab模擬退火求解VRP問題【含Matlab原始碼 115期】
【路徑規劃】基于matlab A星的柵格路徑規劃【含Matlab原始碼 116期】
【路徑規劃】基于matlab一種帶交叉因子的雙向尋優粒子群柵格地圖路徑規劃【含Matlab原始碼 117期】
【TSP】基于matlab蟻群演算法求解旅行商TSP問題含GUI【含Matlab原始碼 118期】
【路徑規劃】基于matlab蟻群演算法柵格地圖路徑規劃【含Matlab原始碼 119期】
【TSP問題】基于matlab差分進化求解的TSP問題【含matlab原始碼 131期】
【路徑規劃】基于matlab遺傳演算法的旅行商 TSP 問題【含Matlab原始碼 135期】
【路徑規劃】基于matlab模擬退火演算法的旅行商 TSP 問題【含Matlab原始碼 136期】
【路徑規劃】基于matlab蟻群演算法的智能車路徑規劃【含Matlab原始碼 137期】
【路徑規劃】華為杯:無人機在搶險救災中的優化運用【含Matlab原始碼 138期】
【路徑規劃】基于matlab RRT三維路徑規劃【含Matlab原始碼 151期】
【路徑規劃】基于matalb人工勢場無人機編隊路徑規劃【 含Matlab 155期】
【VRP問題】基于matlab節約演算法求解TWVRP問題【含Matlab原始碼 156期】
【VRP問題】基于matlab節約演算法求解CVRP問題【含Matalb原始碼 157期】
【VRP問題】基于matlab禁忌搜索演算法求解VRP問題【含Matalb原始碼 158期】
【VRP問題】基于matlab模擬退火求解CVRP問題【含Matlab原始碼 159期】
【VRP問題】基于matlab人工魚群求解帶時間窗的VRP問題【含Matlab原始碼 161期】
【VRP問題】基于matlab遺傳演算法求解帶容量的VRP問題【含Matlab原始碼 162期】
【路徑規劃】基于matlab狼群演算法之三維路徑規劃【含Matlab原始碼 167期】
【路徑規劃】基于matlab人工勢場的無人機三維路徑規劃【含Matlab原始碼 168期】
【路徑規劃】基于matlab改進差分之三維多無人機協同航跡規劃【含Matlab原始碼 169期】
【路徑規劃】基于matlab人工蜂群的多無人機三維路徑規劃【含Matlab原始碼 170期】
【路徑規劃】基于matlab麻雀搜索演算法的無人機三維路徑規劃【含Matlab原始碼 171期】
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/254825.html
標籤:其他
