張紅
摘 要:該文基于傳統(tǒng)人工勢場法在動態(tài)環(huán)境下的震蕩問題,提出了改進引力與斥力函數(shù)的動態(tài)人工勢場法對“機器貓”進行路徑規(guī)劃,針對該方法仍舊存在的對參數(shù)敏感問題,該文通過設(shè)計模糊控制器實現(xiàn)對實際系統(tǒng)中勢力場函數(shù)最佳參數(shù)的選擇。仿真實驗表明,改進后的方法對動態(tài)未知環(huán)境適應(yīng)能力更強。
關(guān)鍵詞:路徑規(guī)劃 人工勢場法 模糊控制器
隨著機器人技術(shù)的不斷提高、應(yīng)用領(lǐng)域不斷擴展、工作環(huán)境復(fù)雜性的不斷擴大,為滿足人類需求,移動機器人與多機器人系統(tǒng)由于其廣泛的應(yīng)用空間吸引了眾多科研者的關(guān)注。移動機器人要自主地完成一定的任務(wù),多機器人系統(tǒng)不是單個機器人代數(shù)相加,其作用效果也不是單機器人作用的線性求和,因此機器人智能感知與控制技術(shù)成為研究的重點。路徑規(guī)劃包括環(huán)境信息的獲得、環(huán)境信息的理解、可行路徑的搜索3個子問題,該文主要研究可行路徑的搜索。傳統(tǒng)路徑規(guī)劃方法包括人工勢場法、柵格法、自由空間法等;智能路徑規(guī)劃方法包括神經(jīng)網(wǎng)絡(luò)法、遺傳算法、蟻群算法、模糊邏輯算法等。
1 “貓捉老鼠”系統(tǒng)研究與設(shè)計
1.1 “機器貓”與“機器鼠”的研究與設(shè)計
該文擬設(shè)計一個“貓捉老鼠”系統(tǒng),通過對“機器貓”的路徑規(guī)劃實現(xiàn)對“機器鼠”的追捕。給“機器鼠”設(shè)計兩個安全區(qū)域,同時也設(shè)計幾條通往安全預(yù)期的路徑?!皺C器鼠”想找到以躲避“機器貓”為前提的通往安全區(qū)域的最佳路徑,“機器貓”想尋求一條快速距離“機器鼠”無限近的但不能是安全區(qū)域的路徑。
以樂高套件為基礎(chǔ),“機器鼠”需要超聲波傳感器、兩個光電傳感器、壓力傳感器。超聲波傳感器用于識別障礙物;光電傳感器用于判斷所需要行走的路徑;壓力傳感器用于成功返回安全區(qū)域后做出相應(yīng)的反應(yīng)。大同小異,“機器貓”不需要按黑標(biāo)行走,因此不需要光電傳感器;超聲波傳感器與壓力傳感器作用與“機器鼠”中相同,同時對“機器貓”加入一個聲音傳感器用于在其成功捕獲到“機器鼠”后發(fā)出信號。
1.2 “機器貓”路徑規(guī)劃算法研究
對“機器貓”來說,“機器鼠”的安全區(qū)域是其最主要的障礙物,只要成功地誘使“機器鼠”遠離安全區(qū)域即可,“機器貓”不是不可以接近安全區(qū)域。該文在對“機器貓”做路徑規(guī)劃中重點處理的障礙物是安全區(qū)域,一般意義上的障礙物只是簡單的避障。
人工勢場法基本思想是構(gòu)造一個由目標(biāo)引力場和障礙物斥力場共同作用的人工勢場,結(jié)合“貓捉老鼠”系統(tǒng)中存在的排斥與吸引關(guān)系以及算法可實現(xiàn)性、操作難易程度等因素,該文重點研究人工勢場法。由于系統(tǒng)中存在移動的目標(biāo)點,傳統(tǒng)人工勢場法對動態(tài)環(huán)境適應(yīng)性較差,因此該文著重研究改進的人工勢場法。
2 基于改進人工勢場法的“機器貓”路徑規(guī)劃算法研究
2.1 傳統(tǒng)人工勢場法
人工勢場法是由Khatib在1986年提出的簡單易行的路徑規(guī)劃方法,基本思想為:當(dāng)目標(biāo)導(dǎo)向的機器人所處的環(huán)境中包含靜止的或移動的障礙物時,可以定義并計算出一個人工勢場,通過搜索勢場函數(shù)下降方向來實現(xiàn)機器人的無碰撞路徑規(guī)劃[1-2]。其示意圖如圖1所示。將上述方法分別用于靜態(tài)與動態(tài)環(huán)境做仿真實驗,結(jié)果如圖2、3所示。
靜態(tài)環(huán)境下機器人能夠追蹤到目標(biāo)點,也能很好地完成避障工作,路徑比較光滑。動態(tài)環(huán)境下難以跟蹤到目標(biāo)點,規(guī)劃的路徑震蕩問題比較嚴重。針對傳統(tǒng)人工勢場法在動態(tài)環(huán)境下的不足,該文通過修改勢力場函數(shù)來提高動態(tài)環(huán)境下路徑規(guī)劃的有效性。
2.2 動態(tài)人工勢場法
動態(tài)環(huán)境通常包括運動中的目標(biāo)與障礙物,此時兩者對機器人產(chǎn)生的力場作用原理不變,由于環(huán)境的復(fù)雜化導(dǎo)致一般的勢力場公式不能很好地滿足要求,因此需要根據(jù)實際情況修改基本的勢力場公式,使之能適應(yīng)動態(tài)環(huán)境。
2.2.1 動態(tài)環(huán)境下人工勢場法引力與斥力函數(shù)的改進
首先考慮目標(biāo)在不斷變化的情況,根據(jù)運動學(xué)相關(guān)知識,引力函數(shù)如下:
=+
(1)
其中和分別為在時刻t目標(biāo)與機器人的位置;和分別為兩者速度;和分別為引力場相對于位置與速度的系數(shù)。通常m取值為2;為機器人到目標(biāo)點的單位向量;為目標(biāo)點相對于機器人速度的單位向量。現(xiàn)在用一個二維空間表示機器人、目標(biāo)點以及速度、引力之間的關(guān)系,示意圖如圖4所示。
傳統(tǒng)的斥力場函數(shù)是機器人與障礙物之間距離的函數(shù),障礙物在不斷地改變狀態(tài)時,需要引入一個斥力場相對速度的函數(shù),其公式變?yōu)椋?/p>
(2)
其中表示機器人與障礙物在t 時刻的相對速度,機器人與障礙物的位置向量與速度向量的夾角用表示。以障礙物相對于機器人的速度方向為X軸,以其所在位置作為坐標(biāo)原點,建立直角坐標(biāo)系。取值范圍為(-π,π),如圖5所示。
綜上所述,無論障礙物的不斷運動還是目標(biāo)點的移動,只要能夠判斷出最適合的斥力以及引力場函數(shù)來模擬這種動態(tài)的變換,就可以得到有效的勢力場函數(shù)。
2.2.2 動態(tài)人工勢場法仿真
對改進后的人工勢場法做仿真實驗,修改勢力場函數(shù)系數(shù)后在相同條件下進行實驗,結(jié)果如圖6、7所示??梢缘贸觯焊倪M后規(guī)劃效果變好,但是對參數(shù)變化敏感。
2.3 勢力場函數(shù)參數(shù)對路徑規(guī)劃效果的影響
使移動機器人能夠無碰撞到達目標(biāo)點,需要研究斥力場系數(shù)、引力場系數(shù),障礙物的有效作用范圍與路徑規(guī)劃效果的關(guān)系。障礙物有效作用范圍與其大小有關(guān),同時它也對斥力的方向與大小有重要影響。對移動機器人路徑的仿真中選取不同得到的結(jié)果如圖8所示??芍涸酱螅窂皆焦饣?,但是對斥力的影響就變小了。在實際的應(yīng)用中,的選擇需要考慮實際的環(huán)境,保證實際系統(tǒng)可以很好地運行。
同理可以得出:斥力系數(shù)越小,機器人的震蕩越得以緩和,路徑也越來越光滑。斥力系數(shù)是受障礙物的有效作用范圍影響的;引力系數(shù)越大,機器人移動路徑越光滑,到達目標(biāo)點的速度也越快。由于勢力場函數(shù)參數(shù)對路徑規(guī)劃中路徑光滑問題的影響,如何控制這些參數(shù)是解決該文中“機器貓”路徑規(guī)劃問題的重點。
2.4 模糊動態(tài)人工勢場法
目標(biāo)與障礙物不斷運動中,理想系數(shù)值在不同情況下不同,因此動態(tài)人工勢場法存在局限性。針對該問題,比較好的解決方法是傳統(tǒng)與智能路徑規(guī)劃相結(jié)合。由于在實際環(huán)境中速度矢量的引入,機器人周圍環(huán)境存在不確定性和高速變化性,模糊邏輯方法恰能解決該問題,因此該文以模糊邏輯方法與動態(tài)人工勢場法結(jié)合進一步優(yōu)化貓的路徑。
2.4.1 模糊控制器的設(shè)置
模糊控制器的設(shè)計原則[3]:(1)定義輸入輸出變量及其個數(shù);(2)定義所有變量模糊化條件;(3)設(shè)計控制規(guī)則庫;(4)設(shè)計模糊推理結(jié)果;(5)選擇解模糊判決方法;該文中模糊控制器1以障礙物與機器人間的距離和兩者間的位置向量與速度向量的夾角為輸入,以受距離影響的斥力系數(shù)k1為輸出;模糊控制器2以距離和它們之間的速度偏差為輸入,以受速度影響的斥力系數(shù)k2為輸出;通過模糊控制器的設(shè)置來調(diào)節(jié)斥力系數(shù),從而實時調(diào)整斥力大小。
基于模糊控制理論,各輸入輸出量隸屬度函數(shù)均選為三角形隸屬度函數(shù),根據(jù)經(jīng)驗知識確定模糊控制規(guī)則,利用上述模糊規(guī)則,經(jīng)過分析,模糊控制器1和模糊控制器2的輸入輸出曲面如圖9、10所示。
2.4.2 模糊動態(tài)人工勢場法仿真
將模糊控制器1和2應(yīng)用到動態(tài)人工勢場法中,形成模糊動態(tài)人工勢場法,障礙物和目標(biāo)點初始值與動態(tài)人工勢場法仿真實驗相同,仿真結(jié)果如圖11所示。
由于模糊控制方法中確定的模糊規(guī)則是根據(jù)經(jīng)驗建立的,在動態(tài)的環(huán)境中難以保證達到最優(yōu)效果,需要在實際應(yīng)用中進一步完善。
3 結(jié)語
綜合該章中所有仿真實驗,將實驗結(jié)果匯總?cè)绫?所示。
從表1中的內(nèi)容可以看出,傳統(tǒng)人工勢場法適用于靜態(tài)環(huán)境,在動態(tài)環(huán)境下震蕩問題比較嚴重,準(zhǔn)確性與快速性較差;改進引力函數(shù)與斥力函數(shù)后,對動態(tài)環(huán)境適應(yīng)性增強,快速性與準(zhǔn)確性較好;模糊動態(tài)人工勢場法不需要設(shè)定斥力系數(shù)的數(shù)值,避免了由于經(jīng)驗因素而影響算法效果的問題。雖然快速性變差,但是此方法在對環(huán)境因素未知、經(jīng)驗較少情況下更適用。
參考文獻
[1]羅勝華,劉國榮,蔣燕.一種基于改進人工勢場法的移動機器人路徑規(guī)劃[J].機器人技術(shù),2009,25(10):188-190.
[2]伊連云.基于改進人工勢場法的足球機器人路徑規(guī)劃研究[J].農(nóng)業(yè)裝備與車輛工程,2006(7):11-13.
[3]王琦,徐式蘊,趙睿濤.MATLAB基礎(chǔ)與應(yīng)用實例集萃[M].北京:人民郵電出版社,2007.