天天看點

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

一、蛇群優化算法SO

蛇群優化算法(Snake Optimizer,SO)由Fatma A. Hashim和Abdelazim G. Hussien于2022年提出,該算法思路新穎,快速高效,模拟了蛇的覓食和繁殖行為。SO具體原理參考如下連結:

蛇群優化算法

二、無人機(UAV)三維路徑規劃

無人機三維路徑規劃數學模型參考如下文獻:

Phung M D , Ha Q P . Safety-enhanced UAV Path Planning with Spherical Vector-based Particle Swarm Optimization[J]. arXiv e-prints, 2021.

目标函數由路徑長度成本,安全性與可行性成本、飛行高度成本和路徑平滑成本共同組成:

(1)路徑長度成本

路徑長度成本由相鄰兩個節點之間的歐氏距離和構成,其計算公式如下:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

(2)路徑安全性與可行性成本

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

路徑安全性與可行性成本通過下式計算:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

(3)路徑飛行高度成本

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

飛行高度成本通過如下公式計算所得:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼
單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

(4)路徑平滑成本

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

投影向量通過如下公式計算:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

轉彎角度的計算公式為:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

爬坡角度的計算公式為:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

平滑成本的計算公式為:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

(5)總成本(目标函數)

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

總成本由最優路徑成本,安全性與可行性成本、飛行高度成本和路徑平滑成本的線性權重所得。其中,b為權重系數。

三、實驗結果

在三維無人機路徑規劃中,無人機的路徑由起點,終點以及起始點間的點共同連接配接而成。是以,自變量為無人機起始點間的各點坐标,目标函數為總成本(公式9)。

3.1參數設定

(1)設9個柱狀障礙物的位置及半徑:

R1=60;  % Radius 60
x1 = 350; y1 = 500; z1 = 100; % center


R2=70;  % Radius 70
x2 = 600; y2 = 200; z2 = 150; % center

R3=80;  % Radius 80
x3 = 500; y3 = 350; z3 = 150; % center

R4=70;  % Radius 70
x4 = 350; y4 = 200; z4 = 150; % center

R5=70;  % Radius 70 
x5 = 700; y5 = 550; z5 = 150; % center


R6=80;  % Radius 80
x6 = 650; y6 = 750; z6 = 150; % center

R7=70;  % Radius 70
x7 = 800; y7 = 400; z7 = 150; % center

R8=50;  % Radius 50
x8 = 300; y8 = 350; z8 = 100; % center

R9=50;  % Radius 50
x9 = 500; y9 = 600; z9 = 100; % center 
           

(2)起始點位置為:

start_location = [200;100;150];

end_location = [800;800;150];

(3)起始點間共15個待求點。

(4)權重系數b=[5 1 10 1]。

(5)蛇群優化算法的種群大小為50,最大疊代次數為100。

4.2求解結果

獨立運作三次,得到三次參考方案如下:(黑色正方形是起點,黑色圓圈是終點,共有9個柱狀障礙物,紅線為優化得到的無人機路線。)

(1)第一次結果:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼
單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

(2)第二次結果:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼
單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

(3)第3次結果:

單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼
單目标應用:基于蛇群優化算法(SO)的無人機(UAV)三維路徑規劃(提供MATLAB代碼)一、蛇群優化算法SO二、無人機(UAV)三維路徑規劃三、實驗結果四、參考代碼

由此可以看出,蛇群優化算法求解無人機三維路徑規劃優勢明顯,能夠快速避障,找到合适的飛行路線。

四、參考代碼

繼續閱讀