路徑規(guī)劃算法:基于黃金正弦優(yōu)化的路徑規(guī)劃算法- 附代碼
摘要:本文主要介紹利用智能優(yōu)化算法黃金正弦算法來進行路徑規(guī)劃。
1.算法原理
黃金正弦算法原理請參考:https://blog.csdn.net/u011835903/article/details/111699194
1.1 環(huán)境設(shè)定
在移動機器人的路徑優(yōu)化中,每個優(yōu)化算法的解代表機器人的一條運動路徑。優(yōu)化算法會通過優(yōu)化計算在眾多路徑中找出一條最優(yōu)路徑。
優(yōu)化算法的設(shè)定必須和機器人運動環(huán)境模型相對應(yīng)。不失一般性,假設(shè)在用柵格法對機器人運動環(huán)境建模后得出的結(jié)果是 m×n 的矩形區(qū)域,坐標值從 1 開始,如圖1 。其中坐標原點柵格代表機器人的初始位置,坐標 (m,n)對應(yīng)的柵格代表機器人的移動目標位置。優(yōu)化算法設(shè)定的一個重要內(nèi)容是確定優(yōu)化算法的數(shù)學表達形式,在這里這個問題轉(zhuǎn)化為用一個向量表示機器人的移動路徑。經(jīng)過分析發(fā)現(xiàn),盡管柵格法建立的模型對空間進行了離散化,但本質(zhì)上機器人的移動路徑依然是連續(xù)的。
1.2 約束條件
對于機器人的路徑優(yōu)化來說,其運動路徑必須局限在柵格空間內(nèi),即搜索不能越過柵格的矩形邊界。此外,還應(yīng)受障礙物的限制,即機器人的運動軌跡不能穿過存在障礙物的柵格區(qū)域。
1.3 適應(yīng)度函數(shù)
在本文的建模方法中,本文路徑規(guī)劃目標是路徑長度最短。路徑的長度可以表示為:
L
(
P
a
t
h
)
=
∑
i
=
0
n
?
1
(
x
l
i
+
1
?
x
l
i
)
2
+
(
y
l
i
+
1
?
y
l
i
)
2
(1)
L(Path) = \sum_{i=0}^{n-1}\sqrt{(xl_{i+1} - xl_i)^2 + (yl_{i+1} - yl_{i})^2}\tag{1}
L(Path)=i=0∑n?1?(xli+1??xli?)2+(yli+1??yli?)2?(1)
其中(x,y)是路徑中間點的坐標
利用黃金正弦算法對上式進行尋優(yōu),找到最短路徑。黃金正弦算法參數(shù)設(shè)定如下:
%% 黃金正弦算法參數(shù)設(shè)置
dim=length(noLM);%維度,即為非障礙物個數(shù)。
numLM0=round((EndPoint(1)-StartPoint(1))/4);%每次迭代選取的的中間路徑點個數(shù),可調(diào)
lb=0;%下邊界
ub=1;%上邊界
Max_iteration = 100;%最大迭代次數(shù)
SearchAgents_no = 30;%種群數(shù)量
fobj = @(x)fun(x,noS,noE,numLM0,net);%適應(yīng)度函數(shù)
2.算法結(jié)果
3.MATLAB代碼
本程序中,支持1.地圖任意創(chuàng)建保存。2.其實點任意更改。
4.參考文獻
[1]羅陽陽,彭曉燕.基于改進PSO的四輪移動機器人全局路徑規(guī)劃[J].計算機仿真,2020,37(07):373-379.文章來源:http://www.zghlxwxcb.cn/news/detail-470390.html
[2]魯?shù)? 粒子群算法在移動機器人路徑規(guī)劃中的應(yīng)用研究[D].武漢科技大學,2009.文章來源地址http://www.zghlxwxcb.cn/news/detail-470390.html
到了這里,關(guān)于路徑規(guī)劃算法:基于黃金正弦優(yōu)化的路徑規(guī)劃算法- 附代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!