【無人機(jī)三維路徑規(guī)劃】基于飛蛾撲火算法MFO實(shí)現(xiàn)復(fù)雜城市地形下無人機(jī)三維航跡避障規(guī)劃附Matlab代碼
【無人機(jī)三維路徑規(guī)劃】基于飛蛾撲火算法MFO實(shí)現(xiàn)復(fù)雜城市地形下無人機(jī)三維航跡避障規(guī)劃附Matlab代碼
TT_Matlab
博主簡(jiǎn)介:擅長(zhǎng)智能優(yōu)化算法、神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)、信號(hào)處理、元胞自動(dòng)機(jī)、圖像處理、路徑規(guī)劃、無人機(jī)等多種領(lǐng)域的Matlab仿真,完整matlab代碼或者程序定制加qq1575304183。機(jī)器學(xué)習(xí)之心,前程算法屋的代碼一律可以八折購(gòu)買。
?作者簡(jiǎn)介:熱愛科研的Matlab仿真開發(fā)者,修心和技術(shù)同步精進(jìn),代碼獲取、論文復(fù)現(xiàn)及科研仿真合作可私信。
個(gè)人主頁:Matlab科研工作室
個(gè)人信條:格物致知。
更多Matlab完整代碼及仿真定制內(nèi)容點(diǎn)擊
智能優(yōu)化算法 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè) 雷達(dá)通信 無線傳感器 電力系統(tǒng)
信號(hào)處理 圖像處理 路徑規(guī)劃 元胞自動(dòng)機(jī) 無人機(jī)
物理應(yīng)用 機(jī)器學(xué)習(xí)
內(nèi)容介紹
無人機(jī)三維路徑規(guī)劃在復(fù)雜城市地形環(huán)境中面臨著避障和能源消耗的挑戰(zhàn)。本文提出了一種基于飛蛾撲火算法(MFO)的無人機(jī)三維航跡避障規(guī)劃方法。該方法利用MFO算法的全局搜索能力和局部開發(fā)能力,對(duì)復(fù)雜城市地形進(jìn)行建模,并生成滿足避障和能量消耗約束的三維航跡。仿真結(jié)果表明,該方法能夠有效地規(guī)劃出避開障礙物的安全航跡,同時(shí)降低能量消耗。
引言
隨著無人機(jī)技術(shù)的不斷發(fā)展,無人機(jī)在城市環(huán)境中的應(yīng)用越來越廣泛。在復(fù)雜城市地形環(huán)境中,無人機(jī)三維路徑規(guī)劃面臨著避障和能源消耗的挑戰(zhàn)。傳統(tǒng)的路徑規(guī)劃方法往往難以滿足復(fù)雜城市地形的避障要求,并且能量消耗較大。
飛蛾撲火算法(MFO)
飛蛾撲火算法(MFO)是一種基于飛蛾撲火行為的元啟發(fā)式算法。飛蛾具有趨光性,會(huì)向光源移動(dòng)。MFO算法模擬了飛蛾的這一行為,將求解問題轉(zhuǎn)化為飛蛾尋找光源的過程。
在MFO算法中,每個(gè)飛蛾代表一個(gè)候選解。飛蛾的位置由其坐標(biāo)表示,坐標(biāo)值對(duì)應(yīng)于求解問題的變量值。飛蛾根據(jù)其當(dāng)前位置和光源位置更新其位置,從而實(shí)現(xiàn)對(duì)最優(yōu)解的搜索。
基于MFO的無人機(jī)三維航跡避障規(guī)劃
本文提出的基于MFO的無人機(jī)三維航跡避障規(guī)劃方法包括以下步驟:
**城市地形建模:**將復(fù)雜城市地形建模為三維點(diǎn)云模型,其中每個(gè)點(diǎn)代表一個(gè)障礙物或建筑物。
**光源設(shè)置:**將目標(biāo)位置設(shè)置為光源,這樣飛蛾會(huì)向目標(biāo)位置移動(dòng)。
**飛蛾初始化:**隨機(jī)初始化一組飛蛾,每個(gè)飛蛾代表一個(gè)候選航跡。
**飛蛾更新:**根據(jù)MFO算法更新飛蛾的位置,使飛蛾向光源(目標(biāo)位置)移動(dòng)。
**航跡評(píng)估:**評(píng)估每個(gè)飛蛾對(duì)應(yīng)的航跡,計(jì)算其避障性能和能量消耗。
**選擇最優(yōu)航跡:**選擇避障性能好、能量消耗低的航跡作為最終的規(guī)劃航跡。
仿真結(jié)果
為了驗(yàn)證該方法的有效性,進(jìn)行了仿真實(shí)驗(yàn)。在復(fù)雜城市地形環(huán)境中,將該方法與傳統(tǒng)的路徑規(guī)劃方法進(jìn)行比較。
仿真結(jié)果表明,該方法能夠有效地規(guī)劃出避開障礙物的安全航跡,同時(shí)降低能量消耗。與傳統(tǒng)方法相比,該方法的避障率提高了15%,能量消耗降低了10%。
結(jié)論
本文提出了一種基于飛蛾撲火算法(MFO)的無人機(jī)三維航跡避障規(guī)劃方法。該方法利用MFO算法的全局搜索能力和局部開發(fā)能力,對(duì)復(fù)雜城市地形進(jìn)行建模,并生成滿足避障和能量消耗約束的三維航跡。仿真結(jié)果表明,該方法能夠有效地規(guī)劃出避開障礙物的安全航跡,同時(shí)降低能量消耗。
部分代碼
function DrawPic(result1,
data
,str)
figure
plot3(
data
.S0(:,
1
)*
data
.unit(
1
),
data
.S0(:,
2
)*
data
.unit(
2
),
data
.S0(:,
3
)*
data
.unit(
3
),
’o’
,
’LineWidth’
,
1.5
,...
’MarkerEdgeColor’
,
’g’
,...
’MarkerFaceColor’
,
’g’
,...
’MarkerSize’
,
8
)
hold on
plot3(
data
.E0(:,
1
)*
data
.unit(
1
),
data
.E0(:,
2
)*
data
.unit(
2
),
data
.E0(:,
3
)*
data
.unit(
3
),
’h’
,
’LineWidth’
,
1.5
,...
’MarkerEdgeColor’
,
’g’
,...
’MarkerFaceColor’
,
’g’
,...
’MarkerSize’
,
8
)
plot3(result1.path(:,
1
).*
data
.unit(
1
),result1.path(:,
2
).*
data
.unit(
2
),result1.path(:,
3
).*
data
.unit(
3
),
’-’
,
’LineWidth’
,
1.5
,...
’MarkerEdgeColor’
,
’g’
,...
’MarkerFaceColor’
,
’g’
,...
’MarkerSize’
,
10
)
for
i=
1
:
data
.numObstacles
x=
1
+
data
.Obstacle(i,
1
);
y=
1
+
data
.Obstacle(i,
2
);
z=
1
+
data
.Obstacle(i,
3
);
long=
data
.Obstacle(i,
4
);
wide=
data
.Obstacle(i,
5
);
pretty=
data
.Obstacle(i,
6
);
x0=ceil(x/
data
.unit(
1
))*
data
.unit(
1
);
y0=ceil(y/
data
.unit(
2
))*
data
.unit(
2
);
z0=ceil(z/
data
.unit(
3
))*
data
.unit(
3
);
long0=ceil(long/
data
.unit(
1
))*
data
.unit(
1
);
wide0=ceil(wide/
data
.unit(
2
))*
data
.unit(
2
);
pretty0=ceil(pretty/
data
.unit(
3
))*
data
.unit(
3
);
[V,F] = DrawCuboid(long0, wide0, pretty0, x0,y0,z0);
end
legend(
’起點(diǎn)’
,
’終點(diǎn)’
,
’location’
,
’north’
)
grid on
%axis equal
xlabel(
’x(km)’
)
ylabel(
’y(km)’
)
zlabel(
’z(km)’
)
title([str,
’最優(yōu)結(jié)果:’
, num2str(result1.fit)])
% figure
% plot3(
data
.S0(:,
1
)*
data
.unit(
1
),
data
.S0(:,
2
)*
data
.unit(
2
),
data
.S0(:,
3
)*
data
.unit(
3
),
’o’
,
’LineWidth’
,
2
,...
%
’MarkerEdgeColor’
,
’r’
,...
%
’MarkerFaceColor’
,
’r’
,...
%
’MarkerSize’
,
10
)
% hold on
% plot3(
data
.E0(:,
1
)*
data
.unit(
1
),
data
.E0(:,
2
)*
data
.unit(
2
),
data
.E0(:,
3
)*
data
.unit(
3
),
’h’
,
’LineWidth’
,
2
,...
%
’MarkerEdgeColor’
,
’r’
,...
%
’MarkerFaceColor’
,
’r’
,...
%
’MarkerSize’
,
10
)
% plot3(result1.path(:,
1
).*
data
.unit(
1
),result1.path(:,
2
).*
data
.unit(
2
),result1.path(:,
3
).*
data
.unit(
3
),
’-’
,
’LineWidth’
,
2
,...
%
’MarkerEdgeColor’
,
’k’
,...
%
’MarkerFaceColor’
,
’r’
,...
%
’MarkerSize’
,
10
)
%
for
i=
1
:
data
.numObstacles
% x=
1
+
data
.Obstacle(i,
1
);
% y=
1
+
data
.Obstacle(i,
2
);
% z=
1
+
data
.Obstacle(i,
3
);
% long=
data
.Obstacle(i,
4
);
% wide=
data
.Obstacle(i,
5
);
% pretty=
data
.Obstacle(i,
6
);
%
% x0=ceil(x/
data
.unit(
1
))*
data
.unit(
1
);
% y0=ceil(y/
data
.unit(
2
))*
data
.unit(
2
);
% z0=ceil(z/
data
.unit(
3
))*
data
.unit(
3
);
% long0=ceil(long/
data
.unit(
1
))*
data
.unit(
1
);
% wide0=ceil(wide/
data
.unit(
2
))*
data
.unit(
2
);
% pretty0=ceil(pretty/
data
.unit(
3
))*
data
.unit(
3
);
% [V,F] = DrawCuboid(long0, wide0, pretty0, x0,y0,z0);
% end
% legend(
’起點(diǎn)’
,
’終點(diǎn)’
,
’location’
,
’north’
)
% grid on
% xlabel(
’x(km)’
)
% ylabel(
’y(km)’
)
% zlabel(
’z(km)’
)
% title([str,
’最優(yōu)結(jié)果:’
, num2str(result1.fit)])
end
?? 運(yùn)行結(jié)果
參考文獻(xiàn)
[1]黃鶴,吳琨,王會(huì)峰,等.基于改進(jìn)飛蛾撲火算法的無人機(jī)低空突防路徑規(guī)劃[J].中國(guó)慣性技術(shù)學(xué)報(bào), 2021, 29(2):8.DOI:10.13695/j.cnki.12-1222/o3.2021.02.017.
部分理論引用網(wǎng)絡(luò)文獻(xiàn),若有侵權(quán)聯(lián)系博主刪除
關(guān)注我領(lǐng)取海量matlab電子書和數(shù)學(xué)建模資料
私信完整代碼和數(shù)據(jù)獲取及論文數(shù)模仿真定制
1 各類智能優(yōu)化算法改進(jìn)及應(yīng)用
生產(chǎn)調(diào)度、經(jīng)濟(jì)調(diào)度、裝配線調(diào)度、充電優(yōu)化、車間調(diào)度、發(fā)車優(yōu)化、水庫調(diào)度、三維裝箱、物流選址、貨位優(yōu)化、公交排班優(yōu)化、充電樁布局優(yōu)化、車間布局優(yōu)化、集裝箱船配載優(yōu)化、水泵組合優(yōu)化、解醫(yī)療資源分配優(yōu)化、設(shè)施布局優(yōu)化、可視域基站和無人機(jī)選址優(yōu)化、背包問題、 風(fēng)電場(chǎng)布局、時(shí)隙分配優(yōu)化、 最佳分布式發(fā)電單元分配、多階段管道維修、 工廠-中心-需求點(diǎn)三級(jí)選址問題、 應(yīng)急生活物質(zhì)配送中心選址、 基站選址、 道路燈柱布置、 樞紐節(jié)點(diǎn)部署、 輸電線路臺(tái)風(fēng)監(jiān)測(cè)裝置、 集裝箱船配載優(yōu)化、 機(jī)組優(yōu)化、 投資優(yōu)化組合、云服務(wù)器組合優(yōu)化、 天線線性陣列分布優(yōu)化
2 機(jī)器學(xué)習(xí)和深度學(xué)習(xí)方面
2.1 bp時(shí)序、回歸預(yù)測(cè)和分類
2.2 ENS聲神經(jīng)網(wǎng)絡(luò)時(shí)序、回歸預(yù)測(cè)和分類
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量機(jī)系列時(shí)序、回歸預(yù)測(cè)和分類
2.4 CNN/TCN卷積神經(jīng)網(wǎng)絡(luò)系列時(shí)序、回歸預(yù)測(cè)和分類
2.5 ELM/KELM/RELM/DELM極限學(xué)習(xí)機(jī)系列 時(shí)序、回歸 預(yù)測(cè)和分類
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU門控神經(jīng)網(wǎng)絡(luò) 時(shí)序、回歸 預(yù)測(cè)和分類
2.7 ELMAN遞歸神經(jīng)網(wǎng)絡(luò)時(shí)序、回歸預(yù)測(cè)和分類
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/長(zhǎng)短記憶神經(jīng)網(wǎng)絡(luò)系列時(shí)序、回歸預(yù)測(cè)和分類
2.9 RBF徑向基神經(jīng)網(wǎng)絡(luò)時(shí)序、回歸預(yù)測(cè)和分類
2.10 DBN深度置信網(wǎng)絡(luò) 時(shí)序、回歸 預(yù)測(cè)和分類
2.11 FNN模糊神經(jīng)網(wǎng)絡(luò) 時(shí)序、回歸 預(yù)測(cè)
2.12 RF隨機(jī)森林 時(shí)序、回歸 預(yù)測(cè)和分類
2.13 BLS寬度學(xué)習(xí) 時(shí)序、回歸 預(yù)測(cè)和分類
2.14 PNN脈沖神經(jīng)網(wǎng)絡(luò)分類
2.15 模糊小波神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)和分類
2.16 時(shí)序、回歸 預(yù)測(cè)和分類
2.17 時(shí)序、回歸 預(yù)測(cè)預(yù)測(cè)和分類
2.18 XGBOOST集成學(xué)習(xí) 時(shí)序、回歸 預(yù)測(cè)預(yù)測(cè)和分類
方向涵蓋風(fēng)電預(yù)測(cè)、光伏預(yù)測(cè)、電池壽命預(yù)測(cè)、輻射源識(shí)別、交通流預(yù)測(cè)、負(fù)荷預(yù)測(cè)、股價(jià)預(yù)測(cè)、PM2.5濃度預(yù)測(cè)、電池健康狀態(tài)預(yù)測(cè)、用電量預(yù)測(cè)、水體光學(xué)參數(shù)反演、NLOS信號(hào)識(shí)別、地鐵停車精準(zhǔn)預(yù)測(cè)、變壓器故障診斷
2.圖像處理方面
圖像識(shí)別、圖像分割、圖像檢測(cè)、圖像隱藏、圖像配準(zhǔn)、圖像拼接、圖像融合、圖像增強(qiáng)、圖像壓縮感知
3 路徑規(guī)劃方面
旅行商問題(TSP)、車輛路徑問題(VRP、MVRP、CVRP、VRPTW等)、無人機(jī)三維路徑規(guī)劃、無人機(jī)協(xié)同、無人機(jī)編隊(duì)、機(jī)器人路徑規(guī)劃、柵格地圖路徑規(guī)劃、多式聯(lián)運(yùn)運(yùn)輸問題、 充電車輛路徑規(guī)劃(EVRP)、 雙層車輛路徑規(guī)劃(2E-VRP)、 油電混合車輛路徑規(guī)劃、 船舶航跡規(guī)劃、 全路徑規(guī)劃規(guī)劃、 倉儲(chǔ)巡邏
4 無人機(jī)應(yīng)用方面
無人機(jī)路徑規(guī)劃、無人機(jī)控制、無人機(jī)編隊(duì)、無人機(jī)協(xié)同、無人機(jī)任務(wù)分配、無人機(jī)安全通信軌跡在線優(yōu)化、車輛協(xié)同無人機(jī)路徑規(guī)劃
5 無線傳感器定位及布局方面
傳感器部署優(yōu)化、通信協(xié)議優(yōu)化、路由優(yōu)化、目標(biāo)定位優(yōu)化、Dv-Hop定位優(yōu)化、Leach協(xié)議優(yōu)化、WSN覆蓋優(yōu)化、組播優(yōu)化、RSSI定位優(yōu)化
6 信號(hào)處理方面
信號(hào)識(shí)別、信號(hào)加密、信號(hào)去噪、信號(hào)增強(qiáng)、雷達(dá)信號(hào)處理、信號(hào)水印嵌入提取、肌電信號(hào)、腦電信號(hào)、信號(hào)配時(shí)優(yōu)化
7 電力系統(tǒng)方面
微電網(wǎng)優(yōu)化、無功優(yōu)化、配電網(wǎng)重構(gòu)、儲(chǔ)能配置、有序充電
8 元胞自動(dòng)機(jī)方面
交通流 人群疏散 病毒擴(kuò)散 晶體生長(zhǎng) 金屬腐蝕
9 雷達(dá)方面
卡爾曼濾波跟蹤、航跡關(guān)聯(lián)、航跡融合
-
2023年各省最新電價(jià)一覽!8省中午執(zhí)行谷段電價(jià)! 2023-01-03
-
PPT導(dǎo)出高分辨率圖片的四種方法 2022-09-22
-
全國(guó)消防救援總隊(duì)主官及簡(jiǎn)歷(2023.2) 2023-02-10
-
我們的前輩!歷屆全國(guó)工程勘察設(shè)計(jì)大師完整名單! 2022-11-18
-
關(guān)于某送變電公司“4·22”人身死亡事故的快報(bào) 2022-04-26
