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