路径规划-人工势场法(Artificial Potential Field)
人工勢(shì)場(chǎng)法是局部路徑規(guī)劃的一種比較常用的方法。這種方法假設(shè)機(jī)器人在一種虛擬力場(chǎng)下運(yùn)動(dòng)。
1. 簡(jiǎn)介
如圖所示,機(jī)器人在一個(gè)二維環(huán)境下運(yùn)動(dòng),圖中指出了機(jī)器人,障礙和目標(biāo)之間的相對(duì)位置。?
這個(gè)圖比較清晰的說(shuō)明了人工勢(shì)場(chǎng)法的作用,物體的初始點(diǎn)在一個(gè)較高的“山頭”上,要到達(dá)的目標(biāo)點(diǎn)在“山腳”下,這就形成了一種勢(shì)場(chǎng),物體在這種勢(shì)的引導(dǎo)下,避開(kāi)障礙物,到達(dá)目標(biāo)點(diǎn)。
人工勢(shì)場(chǎng)包括引力場(chǎng)合斥力場(chǎng),其中目標(biāo)點(diǎn)對(duì)物體產(chǎn)生引力,引導(dǎo)物體朝向其運(yùn)動(dòng)(這一點(diǎn)有點(diǎn)類似于A*算法中的啟發(fā)函數(shù)h)。障礙物對(duì)物體產(chǎn)生斥力,避免物體與之發(fā)生碰撞。物體在路徑上每一點(diǎn)所受的合力等于這一點(diǎn)所有斥力和引力的和。這里的關(guān)鍵是如何構(gòu)建引力場(chǎng)和斥力場(chǎng)。下面我們分別討論一下:
1.1. 引力場(chǎng)
常用的引力函數(shù):
這里的ε是尺度因子,表示物體當(dāng)前狀態(tài)與目標(biāo)的距離。引力場(chǎng)有了,那么引力就是引力場(chǎng)對(duì)距離的導(dǎo)數(shù)(類比物理里面W=FX):
引力場(chǎng)模型1.2. 斥力場(chǎng)
公式(3)是傳統(tǒng)的斥力場(chǎng)公式。公式中η是斥力尺度因子,代表物體和障礙物之間的距離。代表每個(gè)障礙物的影響半徑。換言之,離開(kāi)一定的距離,障礙物就對(duì)物體沒(méi)有斥力影響。
斥力就是斥力場(chǎng)的梯度
斥力場(chǎng)模型總的場(chǎng)就是斥力場(chǎng)合引力場(chǎng)的疊加,也就是U=U_att+U_rep,總的力也是對(duì)對(duì)應(yīng)的分力的疊加,如下圖所示:
2. 存在的問(wèn)題
- 當(dāng)物體離目標(biāo)點(diǎn)比較遠(yuǎn)時(shí),引力將變的特別大,相對(duì)較小的斥力在甚至可以忽略的情況下,物體路徑上可能會(huì)碰到障礙物
- 當(dāng)目標(biāo)點(diǎn)附近有障礙物時(shí),斥力將非常大,引力相對(duì)較小,物體很難到達(dá)目標(biāo)點(diǎn)
- 在某個(gè)點(diǎn),引力和斥力剛好大小相等,方向想反,則物體容易陷入局部最優(yōu)解或震蕩
3. 各種改進(jìn)版本的人工勢(shì)場(chǎng)法
- 對(duì)于可能會(huì)碰到障礙物的問(wèn)題,可以通過(guò)修正引力函數(shù)來(lái)解決,避免由于離目標(biāo)點(diǎn)太遠(yuǎn)導(dǎo)致引力過(guò)大
和(1)式相比,(5)式增加了范圍限定。d*_goal 給定了一個(gè)閾值限定了目標(biāo)和物體之間的距離。對(duì)應(yīng)的梯度也就是引力相應(yīng)變成:
- 目標(biāo)點(diǎn)附近有障礙物導(dǎo)致目標(biāo)不可達(dá)的問(wèn)題,引入一種新的斥力函數(shù)
這里在原有斥力場(chǎng)的基礎(chǔ)上,加上了目標(biāo)和物體距離的影響,(n是正數(shù),我看到有篇文獻(xiàn)上n=2)。直觀上來(lái)說(shuō),物體靠近目標(biāo)時(shí),雖然斥力場(chǎng)要增大,但是距離在減少,所以在一定程度上可以起到對(duì)斥力場(chǎng)的拖拽作用
相應(yīng)斥力變成:
所以可以看到這里引力分為兩個(gè)部分,編程時(shí)要格外注意
- 局部最優(yōu)問(wèn)題是一個(gè)人工勢(shì)場(chǎng)法的一個(gè)大問(wèn)題,這里可以通過(guò)加一個(gè)隨機(jī)擾動(dòng),讓物體跳出局部最優(yōu)值。類似于梯度下降法局部最優(yōu)值的解決方案。
參考文獻(xiàn)
路徑規(guī)劃算法初探_森林寶貝的博客-CSDN博客_局部路徑規(guī)劃算法
Artificial Potential Field Approach and its Problems - General Discussions - RobotShop Community
解決人工勢(shì)場(chǎng)法局部極小問(wèn)題的一種新方法 - 道客巴巴
matlab改進(jìn)人工勢(shì)場(chǎng)法模擬機(jī)器人路徑規(guī)劃,避障_人工勢(shì)場(chǎng)法改進(jìn)領(lǐng)航跟隨法的控制算法實(shí)現(xiàn)-Matlab文檔類資源-CSDN下載
http://www.cs.cmu.edu/~motionplanning/lecture/Chap4-Potential-Field_howie.pdf
幫忙分析一下人工勢(shì)場(chǎng)法的局部路徑規(guī)劃程序 – MATLAB中文論壇
總結(jié)
以上是生活随笔為你收集整理的路径规划-人工势场法(Artificial Potential Field)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: access ea 可以联网吗_如何看待
- 下一篇: USB 格式化,提示The volume