• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      改進(jìn)人工勢(shì)場(chǎng)法在未知環(huán)境中的路徑規(guī)劃研究

      2021-05-19 10:42:18陳冠星張志安黃學(xué)功施振穩(wěn)
      機(jī)械與電子 2021年5期
      關(guān)鍵詞:勢(shì)場(chǎng)引力障礙物

      陳冠星,張志安,黃學(xué)功,華 洪,施振穩(wěn)

      (南京理工大學(xué)機(jī)械工程學(xué)院,江蘇 南京 210094)

      0 引言

      機(jī)器人的路徑規(guī)劃,是指機(jī)器人根據(jù)給定地圖環(huán)境信息或者傳感器探測(cè)信息尋找一條從起點(diǎn)到終點(diǎn)的無(wú)碰撞路徑[1]。路徑規(guī)劃在無(wú)人機(jī)[2]、無(wú)人車[3]等方面都有廣泛應(yīng)用。

      移動(dòng)機(jī)器人的路徑規(guī)劃包括全局路徑規(guī)劃和局部路徑規(guī)劃[4]。局部路徑規(guī)劃可以應(yīng)用在未知環(huán)境中,局部路徑規(guī)劃算法包括人工勢(shì)場(chǎng)法[5]、動(dòng)態(tài)窗口法[6]等。在復(fù)雜未知環(huán)境中,人工勢(shì)場(chǎng)法因其實(shí)時(shí)性高、計(jì)算量小的優(yōu)點(diǎn)得到廣泛應(yīng)用[7-8]。但人工勢(shì)場(chǎng)法本身也存在缺陷:路徑震蕩和局部極小點(diǎn)。

      對(duì)于路徑震蕩問(wèn)題,文獻(xiàn)[9]采用過(guò)濾震蕩點(diǎn)法解決規(guī)劃路徑震蕩的問(wèn)題,但是其需要提前規(guī)劃數(shù)個(gè)周期的路徑,計(jì)算量較大。本文提出采用角度過(guò)濾器的方法改善了規(guī)劃路徑震蕩的問(wèn)題,在計(jì)算引力時(shí)采用不同增益系數(shù)的方法進(jìn)一步改善了規(guī)劃路徑震蕩的問(wèn)題,最終得到了較為光滑的路徑。對(duì)于局部極小點(diǎn)問(wèn)題,文獻(xiàn)[10]針對(duì)U型陷阱問(wèn)題添加了模糊控制的思想,提出了判斷U型障礙物的依據(jù),但是當(dāng)U型障礙物范圍較大時(shí),這種方法會(huì)極大增加機(jī)器人的運(yùn)動(dòng)路徑;文獻(xiàn)[11]采用改進(jìn)人工協(xié)調(diào)場(chǎng)的方法來(lái)改進(jìn)局部極小點(diǎn)問(wèn)題,但是沒(méi)有在更復(fù)雜的環(huán)境中進(jìn)行實(shí)驗(yàn);文獻(xiàn)[12]針對(duì)傳統(tǒng)人工勢(shì)場(chǎng)法的缺點(diǎn),使用勢(shì)場(chǎng)強(qiáng)度代替力矢量進(jìn)行路徑規(guī)劃,利用遺傳信賴域算法搜索機(jī)器人周圍勢(shì)場(chǎng)強(qiáng)度最小點(diǎn),并引入“填平勢(shì)場(chǎng)”解決局部極值點(diǎn)問(wèn)題。在此,本文采用添加虛擬目標(biāo)點(diǎn)的方法引導(dǎo)機(jī)器人走出陷阱區(qū)域,且對(duì)多種陷阱區(qū)域進(jìn)行了仿真驗(yàn)證。

      1 人工勢(shì)場(chǎng)法

      1.1 傳統(tǒng)人工勢(shì)場(chǎng)法

      1986年Khatb首次提出了人工勢(shì)場(chǎng)法,其基本原理是將機(jī)器人所處環(huán)境模擬為一個(gè)人造勢(shì)場(chǎng),機(jī)器人所處的環(huán)境中,人工勢(shì)場(chǎng)的勢(shì)場(chǎng)函數(shù)定義為

      U(q)=Uatt(q)+Urep(q)

      (1)

      機(jī)器人所受的合力為

      F(q)=Fatt(q)+Frep(q)

      (2)

      U(q)為總的勢(shì)場(chǎng)函數(shù);Uatt(q)為目標(biāo)點(diǎn)產(chǎn)生的引力勢(shì)場(chǎng)函數(shù);Urep(q)為障礙物產(chǎn)生的斥力勢(shì)場(chǎng)函數(shù);q為機(jī)器人在絕對(duì)坐標(biāo)系中的位置;F(q)為機(jī)器人所受合力;Fatt(q)為目標(biāo)點(diǎn)對(duì)機(jī)器人的引力;Frep(q)為障礙物對(duì)機(jī)器人的斥力。

      人工勢(shì)場(chǎng)受力模型如圖1所示,目標(biāo)點(diǎn)對(duì)機(jī)器人產(chǎn)生引力Fatt,障礙物對(duì)機(jī)器人產(chǎn)生斥力Frep。目標(biāo)點(diǎn)所產(chǎn)生的引力會(huì)引導(dǎo)機(jī)器人朝著目標(biāo)點(diǎn)運(yùn)動(dòng),而障礙物產(chǎn)生的斥力避免了機(jī)器人與障礙物的碰撞,在引力和斥力的合力F作用下,機(jī)器人能夠無(wú)碰撞地到達(dá)目標(biāo)點(diǎn)。

      圖1 人工勢(shì)場(chǎng)受力模型

      目標(biāo)點(diǎn)產(chǎn)生的引力勢(shì)場(chǎng)為全局勢(shì)場(chǎng),且勢(shì)場(chǎng)與機(jī)器人和目標(biāo)點(diǎn)距離的平方成比例關(guān)系,目標(biāo)點(diǎn)產(chǎn)生的勢(shì)場(chǎng)函數(shù)和引力一般定義為

      (3)

      Ka為引力增益系數(shù);qtar為目標(biāo)點(diǎn)在絕對(duì)坐標(biāo)系中的位置;ρ(q,qtar)為機(jī)器人距離目標(biāo)點(diǎn)的距離。根據(jù)引力函數(shù),引力的方向?yàn)闄C(jī)器人指向目標(biāo)點(diǎn),且距離目標(biāo)點(diǎn)越遠(yuǎn),引力越大。

      障礙物產(chǎn)生的斥力勢(shì)場(chǎng)為局部勢(shì)場(chǎng),只有在障礙物影響范圍內(nèi)具有勢(shì)場(chǎng),斥力勢(shì)場(chǎng)函數(shù)定義為

      (4)

      Kr為斥力增益系數(shù);ρ(q,qobs)為機(jī)器人與障礙物的最近距離;ρd為障礙物的影響范圍。由函數(shù)可知,在障礙物的影響范圍內(nèi)才具有勢(shì)場(chǎng),機(jī)器人才會(huì)受到斥力。機(jī)器人所受的斥力函數(shù)為

      Frep(q)=-Urep(q)=

      (5)

      1.2 傳統(tǒng)人工勢(shì)場(chǎng)法的缺點(diǎn)

      機(jī)器人利用人工勢(shì)場(chǎng)法規(guī)劃路徑時(shí),在某些情況下,規(guī)劃出來(lái)的路徑呈現(xiàn)震蕩狀,如同“鋸齒波”。例如,在機(jī)器人所受引力方向和斥力方向之間的夾角大于一定角度時(shí),極易出現(xiàn)路徑震蕩。還有一種情況,在機(jī)器人經(jīng)過(guò)狹窄通道時(shí),規(guī)劃路徑也極其容易出現(xiàn)震蕩狀。如圖2所示,人工勢(shì)場(chǎng)法規(guī)劃路徑分別在“震蕩段1”(圖2中下方震蕩段)和“震蕩段2”(圖2中上方震蕩段)處出現(xiàn)震蕩,可以看出震蕩呈“鋸齒波”狀。

      圖2 規(guī)劃路徑震蕩

      此外,人工勢(shì)場(chǎng)法因?yàn)樗惴ū旧淼脑?,機(jī)器人在環(huán)境中運(yùn)動(dòng)時(shí)會(huì)陷入局部極小點(diǎn),導(dǎo)致機(jī)器人在局部極值點(diǎn)附近徘徊不前。因?yàn)槿斯?shì)場(chǎng)中存在目標(biāo)點(diǎn)產(chǎn)生的全局引力勢(shì)場(chǎng)以及障礙物產(chǎn)生的局部斥力勢(shì)場(chǎng),機(jī)器人所受合力為勢(shì)場(chǎng)函數(shù)的梯度,此梯度即為勢(shì)能下降最快的方向,導(dǎo)致在局部極小點(diǎn)附近機(jī)器人所受合力一直指向局部極小點(diǎn),因此,使機(jī)器人在局部極小點(diǎn)附近徘徊不前,在所受的力方面表現(xiàn)為機(jī)器人受到的引力與斥力共線反向。機(jī)器人陷入局部極小點(diǎn)狀態(tài)如圖3所示。

      圖3 機(jī)器人陷入局部極小點(diǎn)

      當(dāng)障礙物為長(zhǎng)邊界障礙物時(shí),機(jī)器人更加容易陷入局部極小點(diǎn)。在機(jī)器人靠近局部極小點(diǎn)的過(guò)程中,機(jī)器人受到的引力方向和斥力方向之間的夾角大于一定角度時(shí),人工勢(shì)場(chǎng)法規(guī)劃路徑是震蕩的,而且當(dāng)機(jī)器人越靠近局部極小點(diǎn),引力方向和斥力方向夾角越大,規(guī)劃路徑震蕩程度越劇烈。機(jī)器人會(huì)陷入局部極小點(diǎn),同時(shí)規(guī)劃路徑劇烈震蕩,如圖4所示。

      圖4 機(jī)器人陷入局部極小點(diǎn)

      2 改進(jìn)人工勢(shì)場(chǎng)法

      2.1 解決規(guī)劃路徑震蕩

      人工勢(shì)場(chǎng)法規(guī)劃路徑是由機(jī)器人所受合力方向決定的。如圖5所示,機(jī)器人的位置分別經(jīng)過(guò)R1、R2和R3,合力分別為F1、F2和F3,合力方向不斷變化,導(dǎo)致機(jī)器人頻繁遠(yuǎn)離和靠近障礙物。合力方向變化劇烈,是由于機(jī)器人受到的引力在斥力方向上的分力Fa2與斥力Frep的合力(Fa2-Frep)方向不斷變化,而合力在斥力垂直方向上的分力為Fa1,兩者絕對(duì)值的比值為比重系數(shù)k=|(Frep-Fa2)|/|Fa1|。當(dāng)機(jī)器人受到的引力方向與斥力方向之間的夾角越大時(shí),k越大,規(guī)劃路徑越震蕩。

      圖5 機(jī)器人受力示意

      圖2中“震蕩段1”和“震蕩段2”處的機(jī)器人受力曲線如圖6所示(受力為虛擬力,無(wú)單位)。由圖6可以發(fā)現(xiàn),機(jī)器人所受引力基本上沒(méi)有變化,機(jī)器人受到的斥力劇烈變化導(dǎo)致機(jī)器人受到的合力方向劇烈變化。并且根據(jù)圖6可知,合力震蕩的幅值越來(lái)越大,這是因?yàn)?,機(jī)器人受到的斥力和引力之間的夾角越來(lái)越大,導(dǎo)致k值越來(lái)越大,機(jī)器人受到的合力在斥力垂直方向上的分力所占的比重越來(lái)越小。

      圖6 路徑震蕩時(shí)機(jī)器人受力曲線

      為了減輕規(guī)劃路徑震蕩程度,本文提出利用角度過(guò)濾器計(jì)算機(jī)器人下一周期運(yùn)動(dòng)方向。角度過(guò)濾器通過(guò)對(duì)傳統(tǒng)人工勢(shì)場(chǎng)法計(jì)算出來(lái)的機(jī)器人轉(zhuǎn)動(dòng)角度Θ乘以過(guò)濾系數(shù)f,得到最終的機(jī)器人轉(zhuǎn)動(dòng)角度Θ′,角度過(guò)濾器過(guò)濾系數(shù)定義為

      (6)

      根據(jù)角度過(guò)濾器原理,機(jī)器人下一周期的運(yùn)動(dòng)方向向量按如下步驟計(jì)算:

      a.記錄本周期機(jī)器人在絕對(duì)坐標(biāo)系中的運(yùn)動(dòng)方向單位向量為V1,V1的方向角度(0~360°)為Θ1,通過(guò)傳統(tǒng)人工勢(shì)場(chǎng)算法計(jì)算得到下一周期的運(yùn)動(dòng)方向單位向量為V2,V2的方向角度為Θ2,計(jì)算可得V1和V2的夾角為Θ。為了方便描述,假設(shè)V1逆時(shí)針旋轉(zhuǎn)Θ角后達(dá)到V2,則Θ2=Θ1+Θ。

      c.定義V1和下一周期運(yùn)動(dòng)方向單位向量V3之間的夾角為Θ′,則Θ′=fΘ,Θ3=Θ1+Θ′。

      加入角度過(guò)濾器后的路徑規(guī)劃效果如圖7所示,與圖2所示傳統(tǒng)人工勢(shì)場(chǎng)法的路徑規(guī)劃效果對(duì)比,可以看出路徑已經(jīng)平滑了很多。

      圖7 加入角度過(guò)濾器的效果

      改進(jìn)人工勢(shì)場(chǎng)法規(guī)劃路徑的結(jié)果數(shù)據(jù)如表1所示,由表1可知,加入角度濾波器的路徑規(guī)劃相對(duì)于傳統(tǒng)人工勢(shì)場(chǎng)法來(lái)說(shuō),規(guī)劃路徑的總轉(zhuǎn)動(dòng)角度大幅減少,規(guī)劃周期也有減少。

      表1 路徑規(guī)劃結(jié)果

      在添加角度過(guò)濾器的基礎(chǔ)上,針對(duì)規(guī)劃路徑震蕩的問(wèn)題,提出在計(jì)算機(jī)器人受到的引力的分力Fa1和Fa2時(shí)采用不同增益系數(shù)k1和k2。根據(jù)前面定義的機(jī)器人引力函數(shù)和斥力函數(shù),計(jì)算出機(jī)器人受到的引力Fa和斥力Frep。然后,如圖8所示,以機(jī)器人為坐標(biāo)原點(diǎn)Or,機(jī)器人所受斥力反方向?yàn)閅軸正方向,以Y軸正方向順時(shí)針旋轉(zhuǎn)90°方向?yàn)閄軸正方向,建立斥力坐標(biāo)系OrXY。

      圖8 機(jī)器人在斥力坐標(biāo)系中的受力示意

      把機(jī)器人受到的引力Fa在斥力坐標(biāo)系中分解可得到Fa1和Fa2,F(xiàn)a1就是引力在斥力方向上的分力,F(xiàn)a2就是引力在斥力垂直方向上的分力,并設(shè)置引力在斥力坐標(biāo)系中的增益系數(shù)k1和k2。按照傳統(tǒng)人工勢(shì)場(chǎng)法計(jì)算的引力進(jìn)行分解,則k1=k2,機(jī)器人引力在斥力坐標(biāo)系中表示為

      (7)

      (8)

      如圖9所示,在加入角度過(guò)濾器的基礎(chǔ)上,計(jì)算引力時(shí)采用不同增益系數(shù),與圖7進(jìn)行對(duì)比,可以看出在某些位置處算法規(guī)劃路徑更加平滑。

      圖9 進(jìn)一步采用不同引力增益系數(shù)效果

      在加入角度過(guò)濾器基礎(chǔ)上,計(jì)算引力時(shí)采用不同增益系數(shù)的數(shù)據(jù)結(jié)果如表2所示。由表2可知,相比于只添加角度過(guò)濾器,進(jìn)一步采用不同增益系數(shù)使得規(guī)劃路徑總轉(zhuǎn)動(dòng)角度進(jìn)一步減少。

      表2 采用不同增益系數(shù)的結(jié)果

      2.2 解決局部極值點(diǎn)

      人工勢(shì)場(chǎng)法因其算法本身在路徑規(guī)劃過(guò)程中會(huì)出現(xiàn)局部極小點(diǎn),會(huì)導(dǎo)致路徑規(guī)劃失敗。在局部極小點(diǎn)處,機(jī)器人受到的引力方向和斥力方向成180°關(guān)系,尤其當(dāng)環(huán)境未知,且環(huán)境中存在長(zhǎng)邊界型障礙物、U型障礙物等復(fù)雜障礙物陷阱時(shí),則更容易陷入局部極小點(diǎn)而難以脫離。因此,避免局部極小點(diǎn)的關(guān)鍵就是保證引力和斥力的夾角小于180°,本文采用添加虛擬目標(biāo)點(diǎn)來(lái)脫離局部極小點(diǎn)。

      2.2.1 虛擬目標(biāo)點(diǎn)確定方法

      在人工勢(shì)場(chǎng)法進(jìn)行路徑規(guī)劃的過(guò)程中,可能因?yàn)槎喾N類型的障礙物陷阱導(dǎo)致機(jī)器人陷入局部極小點(diǎn),包括長(zhǎng)邊界型障礙物和U型障礙物等。如圖10所示為長(zhǎng)邊界型障礙物導(dǎo)致機(jī)器人陷入局部極小點(diǎn),在局部極小點(diǎn)附近,機(jī)器人受到的引力方向和斥力方向的夾角接近180°,而且合力在斥力方向的垂直方向的分力會(huì)一直吸引機(jī)器人往局部極小點(diǎn)處靠近,因?yàn)樘砑恿私鉀Q震蕩的措施,所以機(jī)器人一直在圍繞局部極小點(diǎn)運(yùn)動(dòng)。圖11所示為U型障礙物導(dǎo)致機(jī)器人陷入局部極小點(diǎn),機(jī)器人陷入局部極小點(diǎn)的原因與上述原因相同。

      圖10 長(zhǎng)邊界型障礙物導(dǎo)致的局部極小點(diǎn)

      圖11 U型陷阱導(dǎo)致的局部極小點(diǎn)

      人工勢(shì)場(chǎng)法加入虛擬目標(biāo)點(diǎn)的算法執(zhí)行過(guò)程如圖12所示。首先判斷機(jī)器人是否到達(dá)目標(biāo)點(diǎn),如果機(jī)器人到達(dá)目標(biāo)點(diǎn),則完成路徑規(guī)劃,如果沒(méi)有到達(dá)目標(biāo)點(diǎn),則判斷機(jī)器人是否陷入陷阱區(qū)域。當(dāng)機(jī)器人沒(méi)有陷入陷阱區(qū)域時(shí),按照原來(lái)目標(biāo)點(diǎn)進(jìn)行路徑解算,當(dāng)引力和斥力夾角大于170°時(shí),本文默認(rèn)機(jī)器人陷入陷阱區(qū)域,這時(shí)把陷入陷阱標(biāo)志位flag設(shè)置為1。當(dāng)機(jī)器人陷入陷阱區(qū)域,利用添加虛擬目標(biāo)點(diǎn)的方法引導(dǎo)機(jī)器人走出陷阱區(qū)域。當(dāng)機(jī)器人脫離了陷阱區(qū)域后,設(shè)置陷入陷阱標(biāo)志位flag=0,繼續(xù)按照原來(lái)目標(biāo)點(diǎn)進(jìn)行路徑解算。

      圖12 加入虛擬目標(biāo)點(diǎn)后算法執(zhí)行流程

      有些文獻(xiàn)是根據(jù)機(jī)器人受力達(dá)到平衡時(shí)的特征來(lái)判定機(jī)器人陷入局部極小點(diǎn)的,如機(jī)器人繞局部極小點(diǎn)徘徊,但是這種判定會(huì)增加機(jī)器人的運(yùn)動(dòng)時(shí)間以及運(yùn)動(dòng)路徑。所以在引力方向和斥力方向的夾角大于170°(機(jī)器人距離局部極小點(diǎn)還有一段距離)時(shí),不管機(jī)器人運(yùn)動(dòng)前方是否存在局部極小點(diǎn),本文都默認(rèn)機(jī)器人陷入局部極小點(diǎn)。

      放置虛擬目標(biāo)點(diǎn)的位置按2步計(jì)算。首先,如圖13所示,以機(jī)器人的全局坐標(biāo)位置為原點(diǎn)Oq,以斥力方向?yàn)閅軸正方向,如果在機(jī)器人運(yùn)動(dòng)過(guò)程中機(jī)器人與障礙物的距離大于障礙物影響范圍ρd,則以障礙物距離機(jī)器人最近點(diǎn)指向機(jī)器人的方向?yàn)閅軸正方向。以Y軸正方向順時(shí)針旋轉(zhuǎn)90°方向?yàn)閄軸正方向,建立局部坐標(biāo)系OqXY,這時(shí)可得虛擬目標(biāo)點(diǎn)在此局部坐標(biāo)系Y軸上的坐標(biāo)為Ty=-ρd。接下來(lái)求取虛擬目標(biāo)點(diǎn)在局部坐標(biāo)系X軸上的坐標(biāo)Tx,此時(shí)根據(jù)機(jī)器人運(yùn)動(dòng)方向在局部坐標(biāo)系中的表示vq=[vq,xvq,y]來(lái)判定Tx。如果vq,x≤0,則

      圖13 添加虛擬目標(biāo)點(diǎn)

      Tx=-2ρd,記虛擬目標(biāo)點(diǎn)選擇方向dir=-1,表示障礙物在機(jī)器人前進(jìn)路徑的左側(cè),否則,Tx=2ρd,記dir=1,表示障礙物在機(jī)器人前進(jìn)路徑的右側(cè)。

      2.2.2 虛擬目標(biāo)點(diǎn)取消方法

      當(dāng)采用添加虛擬目標(biāo)點(diǎn)的方法脫離陷阱區(qū)域時(shí),要能夠判斷是否已經(jīng)脫離陷阱區(qū)域。如果已經(jīng)脫離陷阱區(qū)域,則使用原目標(biāo)點(diǎn)進(jìn)行路徑解算,否則,繼續(xù)添加虛擬目標(biāo)點(diǎn)進(jìn)行路徑解算。假設(shè)機(jī)器人開(kāi)始采用添加虛擬目標(biāo)點(diǎn)的規(guī)劃周期為n。則判斷機(jī)器人是否脫離陷阱區(qū)域的步驟為:

      a.添加虛擬目標(biāo)點(diǎn),進(jìn)行路徑解算,假設(shè)機(jī)器人現(xiàn)在處于第j個(gè)規(guī)劃周期,計(jì)算機(jī)器人相對(duì)于第j-1個(gè)周期的轉(zhuǎn)動(dòng)角度βj,記機(jī)器人順時(shí)針轉(zhuǎn)動(dòng)時(shí),βj<0,當(dāng)機(jī)器人逆時(shí)針轉(zhuǎn)動(dòng)時(shí),βj>0。

      b.計(jì)算從第n個(gè)規(guī)劃周期到第j個(gè)規(guī)劃周期機(jī)器人轉(zhuǎn)動(dòng)總角度βsum=∑jβ(j≥n)。同時(shí)計(jì)算機(jī)器人距離原目標(biāo)點(diǎn)的距離ρ(qj,qtar),當(dāng)j≥n+m時(shí),比較ρ(qj,qtar)和ρ(qj-m,qtar)的關(guān)系,這里m取3。如果ρ(qj,qtar)≥ρ(qj-m,qtar),令j=j+1,并跳到步驟a,否則跳到步驟c。

      c.如果虛擬目標(biāo)點(diǎn)選擇方向dir=-1,表示障礙物在機(jī)器人前進(jìn)路徑的左側(cè),當(dāng)βsum>45°,結(jié)束添加虛擬目標(biāo)點(diǎn)。如果dir=1,表示障礙物在機(jī)器人前進(jìn)路徑的右側(cè),當(dāng)βsum<-45°,結(jié)束添加虛擬目標(biāo)點(diǎn)。如果沒(méi)有達(dá)到結(jié)束添加虛擬目標(biāo)點(diǎn)的條件,則令j=j+1,并跳到步驟a。

      機(jī)器人在虛擬目標(biāo)點(diǎn)的引導(dǎo)下順利通過(guò)U型障礙物如圖14所示。

      圖14 機(jī)器人順利通過(guò)U型障礙物

      3 仿真結(jié)果及分析

      在未知復(fù)雜環(huán)境采用傳統(tǒng)人工勢(shì)場(chǎng)法進(jìn)行路徑規(guī)劃如圖15所示。由圖15可以看出,機(jī)器人在局部極小點(diǎn)附近徘徊,導(dǎo)致機(jī)器人無(wú)法到達(dá)目標(biāo)點(diǎn)。圖16表示采用改進(jìn)算法引導(dǎo)機(jī)器人走出局部極小點(diǎn),最終到達(dá)目標(biāo)點(diǎn)。對(duì)比圖15和圖16可知,添加虛擬目標(biāo)點(diǎn)能夠克服局部極小點(diǎn)的缺點(diǎn)。

      圖15 傳統(tǒng)人工勢(shì)場(chǎng)法陷入復(fù)雜陷阱

      圖16 機(jī)器人在虛擬目標(biāo)點(diǎn)引導(dǎo)下走出障礙物

      傳統(tǒng)人工勢(shì)場(chǎng)法和改進(jìn)人工勢(shì)場(chǎng)法規(guī)劃路徑導(dǎo)致的機(jī)器人轉(zhuǎn)動(dòng)角度的對(duì)比,如圖17所示,由圖17可以看出到達(dá)目標(biāo)點(diǎn)后轉(zhuǎn)動(dòng)角度值相差巨大。傳統(tǒng)人工勢(shì)場(chǎng)法和改進(jìn)算法的數(shù)據(jù)結(jié)果如表3所示,由表3可知,采用改進(jìn)的人工勢(shì)場(chǎng)法后,機(jī)器人總轉(zhuǎn)動(dòng)角度極大減少,規(guī)劃周期也稍微減少。

      圖17 改進(jìn)算法和傳統(tǒng)算法結(jié)果對(duì)比

      表3 改進(jìn)算法解決震蕩的結(jié)果

      圖18表示在另一復(fù)雜環(huán)境中,利用傳統(tǒng)人工勢(shì)場(chǎng)法進(jìn)行路徑規(guī)劃,機(jī)器人陷于局部極小點(diǎn),并且在靠近局部極小點(diǎn)的過(guò)程中,規(guī)劃路徑劇烈震蕩。圖19為利用改進(jìn)算法進(jìn)行路徑規(guī)劃,由于設(shè)定為未知環(huán)境,所以機(jī)器人會(huì)進(jìn)入障礙物圍繞區(qū)域,但通過(guò)改進(jìn)算法可以引導(dǎo)機(jī)器人走出障礙物區(qū)域,并尋求一條路徑到達(dá)目標(biāo)點(diǎn)。

      圖18 傳統(tǒng)人工勢(shì)場(chǎng)法進(jìn)行路徑規(guī)劃

      圖19 改進(jìn)算法進(jìn)行路徑規(guī)劃

      機(jī)器人運(yùn)動(dòng)到圖18中a點(diǎn)時(shí),傳統(tǒng)人工勢(shì)場(chǎng)法和改進(jìn)算法的數(shù)據(jù)結(jié)果對(duì)比如表4所示。因?yàn)閭鹘y(tǒng)人工勢(shì)場(chǎng)法會(huì)導(dǎo)致規(guī)劃路徑劇烈震蕩,所以機(jī)器人運(yùn)動(dòng)到a點(diǎn)為止的總轉(zhuǎn)動(dòng)角度非常大,改進(jìn)的算法可以明顯減輕路徑震蕩,機(jī)器人運(yùn)動(dòng)到a點(diǎn)的總轉(zhuǎn)動(dòng)角度極大減少,且規(guī)劃周期也明顯減少。

      表4 算法改進(jìn)前后a點(diǎn)的結(jié)果

      4 結(jié)束語(yǔ)

      本文就人工勢(shì)場(chǎng)法存在的規(guī)劃路徑震蕩以及局部極小點(diǎn)問(wèn)題進(jìn)行了分析,并對(duì)這2個(gè)問(wèn)題進(jìn)行了改進(jìn)。

      a.通過(guò)本文分析可以知道,雖然人工勢(shì)場(chǎng)法理論上不會(huì)存在規(guī)劃路徑震蕩的問(wèn)題,但是在實(shí)際應(yīng)用中要對(duì)人工勢(shì)場(chǎng)法進(jìn)行離散化處理,導(dǎo)致機(jī)器人受到的引力在斥力方向的分力與斥力大小關(guān)系不斷轉(zhuǎn)變,導(dǎo)致規(guī)劃路徑震蕩。因此,本文采用添加角度過(guò)濾器對(duì)機(jī)器人轉(zhuǎn)角進(jìn)行了限制,且考慮了機(jī)器人避障安全性,并進(jìn)一步采用不同增益系數(shù)來(lái)計(jì)算引力。結(jié)果表明,規(guī)劃路徑震蕩問(wèn)題得到極大改善。

      b.針對(duì)未知復(fù)雜環(huán)境下人工勢(shì)場(chǎng)法容易出現(xiàn)的局部極小點(diǎn)問(wèn)題,本文提出采用虛擬目標(biāo)點(diǎn)引導(dǎo)機(jī)器人走出復(fù)雜環(huán)境,最終到達(dá)目標(biāo)點(diǎn)。

      猜你喜歡
      勢(shì)場(chǎng)引力障礙物
      基于Frenet和改進(jìn)人工勢(shì)場(chǎng)的在軌規(guī)避路徑自主規(guī)劃
      基于改進(jìn)人工勢(shì)場(chǎng)方法的多無(wú)人機(jī)編隊(duì)避障算法
      高低翻越
      SelTrac?CBTC系統(tǒng)中非通信障礙物的設(shè)計(jì)和處理
      庫(kù)車坳陷南斜坡古流體勢(shì)場(chǎng)對(duì)陸相油氣運(yùn)聚的控制
      引力
      初中生(2017年3期)2017-02-21 09:17:40
      基于偶極勢(shì)場(chǎng)的自主水下航行器回塢導(dǎo)引算法
      感受引力
      A dew drop
      引力
      富源县| 甘孜县| 科尔| 台东县| 兰西县| 灵山县| 淮阳县| 庐江县| 中宁县| 本溪市| 牙克石市| 鸡泽县| 江西省| 紫阳县| 盘锦市| 来宾市| 凌源市| 工布江达县| 玛曲县| 九江市| 靖州| 德安县| 清新县| 天全县| 竹溪县| 连云港市| 公主岭市| 榆林市| 高邮市| 和政县| 岳池县| 河源市| 梁山县| 太和县| 山阴县| 班玛县| 萝北县| 麻阳| 西宁市| 盘锦市| 郯城县|