陳會(huì)偉 陳玉杰 馮 飛
(青島黃海學(xué)院智能制造學(xué)院,山東 青島266427)
隨著經(jīng)濟(jì)的發(fā)展,海水養(yǎng)殖業(yè)規(guī)模和速度都在不斷增加,而漁業(yè)養(yǎng)殖環(huán)境的實(shí)時(shí)監(jiān)控、合理調(diào)控成為產(chǎn)業(yè)發(fā)展所必須面對(duì)的重要問(wèn)題。無(wú)人船是一種新型的水上檢測(cè)平臺(tái),其以小型船舶為基礎(chǔ),集定位、導(dǎo)航與控制設(shè)備于一體,可搭載多種檢測(cè)傳感器,以自主的方式完成相關(guān)水質(zhì)檢測(cè)。由于海洋環(huán)境的復(fù)雜性(包括樹(shù)干、淺灘、漂浮障礙物、無(wú)人船拖曳系統(tǒng)遇到的水中障礙物等),無(wú)人船在巡檢過(guò)程中可能會(huì)遇到各種各樣的危險(xiǎn),所以路徑規(guī)劃是無(wú)人船航行過(guò)程的重要環(huán)節(jié)。規(guī)劃出一條避障能力強(qiáng),盡可能少消耗能量,航行距離盡可能短的路徑,對(duì)無(wú)人船檢測(cè)海水養(yǎng)殖環(huán)境具有重要意義,對(duì)海水養(yǎng)殖環(huán)境的進(jìn)一步控制有著重要的理論價(jià)值。
無(wú)人船路徑規(guī)劃目前已有眾多算法應(yīng)用,常見(jiàn)的有基于粒子群的優(yōu)化算法、蟻群優(yōu)化類算法,隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,神經(jīng)網(wǎng)絡(luò)在路徑規(guī)劃中得到了廣泛的醫(yī)用,在眾多算法中,人工勢(shì)場(chǎng)法具有較大的優(yōu)勢(shì),因?yàn)槠浣Y(jié)構(gòu)簡(jiǎn)單、反應(yīng)快速。
人工勢(shì)場(chǎng)法是Khatib 于1986 年提出的,是運(yùn)用物理學(xué)的認(rèn)識(shí)論來(lái)描述人類思維的方法,基本思想是將無(wú)人船在空間的運(yùn)動(dòng)看作是在一虛擬勢(shì)場(chǎng)中的受力運(yùn)動(dòng),目標(biāo)點(diǎn)位置構(gòu)造引力場(chǎng)對(duì)無(wú)人船產(chǎn)生吸引力,障礙物位置構(gòu)造斥力場(chǎng)對(duì)無(wú)人船產(chǎn)生排斥力,無(wú)人船在兩個(gè)力共同作用下朝著目標(biāo)點(diǎn)運(yùn)動(dòng),實(shí)現(xiàn)無(wú)碰撞的路徑。
無(wú)人船在虛擬勢(shì)場(chǎng)運(yùn)動(dòng)過(guò)程中,斥力場(chǎng)隨著無(wú)人船與障礙物的接近而增大,引力場(chǎng)隨著無(wú)人船與目標(biāo)點(diǎn)的遠(yuǎn)離而增大,這樣,既可保持無(wú)人船對(duì)目標(biāo)點(diǎn)的跟蹤,又可以避免對(duì)障礙物的碰撞。因此,人工勢(shì)場(chǎng)法的關(guān)鍵是引力勢(shì)場(chǎng)函數(shù)和斥力勢(shì)場(chǎng)函數(shù)的構(gòu)造。
2.1.1 引力勢(shì)場(chǎng)函數(shù)
引力勢(shì)場(chǎng)函數(shù)是關(guān)于距離的概念,與目標(biāo)點(diǎn)位置有關(guān)。假設(shè)Xc 表示無(wú)人船在運(yùn)動(dòng)過(guò)程中的任意位置坐標(biāo),Xg 表示目標(biāo)點(diǎn)的位置坐標(biāo),則引力勢(shì)場(chǎng)函數(shù)是:
式中,katt表示引力常數(shù)量;ρ( Xc, Xg) 表示無(wú)人船坐標(biāo)到目標(biāo)點(diǎn)坐標(biāo)的距離。
引力場(chǎng)的方向由無(wú)人船指向目標(biāo)點(diǎn),對(duì)引力勢(shì)場(chǎng)函數(shù)求負(fù)梯度得出引力為:
2.1.2 斥力勢(shì)場(chǎng)函數(shù)
斥力勢(shì)場(chǎng)函數(shù)是關(guān)于距離的概念,與障礙物位置有關(guān)。假設(shè)Xc 表示無(wú)人船在運(yùn)動(dòng)過(guò)程中的任意位置坐標(biāo),Xo表示障礙物的位置坐標(biāo),則斥力勢(shì)場(chǎng)函數(shù)是:障礙物坐標(biāo)的距離;為障礙物有效的影響距離,當(dāng)ρ( Xc, Xo) ≤ρo時(shí),障礙物對(duì)無(wú)人船產(chǎn)生排斥作用。
2.1.3 人工勢(shì)場(chǎng)模型
斥力場(chǎng)和引力場(chǎng)的附近由相應(yīng)算法產(chǎn)生對(duì)應(yīng)的勢(shì)力場(chǎng),人工勢(shì)場(chǎng)定義為:
根據(jù)空間動(dòng)力學(xué)方程以及數(shù)學(xué)定理拉格朗日方程,可推出人工勢(shì)場(chǎng)對(duì)無(wú)人船的作用力F 為:
圖1 人工勢(shì)場(chǎng)法示意圖
人工勢(shì)場(chǎng)法模型簡(jiǎn)潔、算法結(jié)構(gòu)簡(jiǎn)潔明了、計(jì)算快速、實(shí)時(shí)性強(qiáng),便于數(shù)學(xué)描述,所得路徑較為平滑,安全性能較高。但是,局部極小值和目標(biāo)不可達(dá)仍是傳統(tǒng)人工勢(shì)場(chǎng)法應(yīng)用于無(wú)人船避障時(shí)亟待解決的問(wèn)題。a.當(dāng)目標(biāo)點(diǎn)在障礙物影響范圍內(nèi)時(shí),隨著無(wú)人船接近目標(biāo),引力逐漸變小趨向于零而斥力不為零,總的勢(shì)場(chǎng)力在目標(biāo)點(diǎn)不是全局最小,無(wú)人船將無(wú)法繼續(xù)移動(dòng),不能到達(dá)目標(biāo)點(diǎn)。b.當(dāng)無(wú)人船與目標(biāo)點(diǎn)和障礙物三者共線且障礙物處于中間時(shí),在前方某個(gè)點(diǎn),當(dāng)無(wú)人船前進(jìn)時(shí),會(huì)出現(xiàn)勢(shì)場(chǎng)力為零的情況,如果沒(méi)有外力作用,則達(dá)到受力平衡,無(wú)人船將停止,到達(dá)不了目標(biāo)點(diǎn)。c.當(dāng)無(wú)人船在運(yùn)動(dòng)途中經(jīng)過(guò)障礙物較為密集的地方時(shí),其所受斥力將超過(guò)目標(biāo)點(diǎn)對(duì)其的吸引力,這樣會(huì)使無(wú)人船無(wú)法找到合適路徑,陷入局部最小值的風(fēng)險(xiǎn),不能到達(dá)目標(biāo)點(diǎn)。d.當(dāng)無(wú)人船進(jìn)入凹形區(qū)域,各障礙物對(duì)無(wú)人船的合力與目標(biāo)點(diǎn)對(duì)無(wú)人船的吸引力的合力為零時(shí),則會(huì)使無(wú)人船陷入局部最小陷阱區(qū)域而無(wú)法順利到達(dá)目標(biāo)點(diǎn)。
基于人工勢(shì)場(chǎng)法的局部極小值和目標(biāo)不可達(dá)問(wèn)題受到專家學(xué)者的廣泛關(guān)注,各種改進(jìn)完善策略迅速發(fā)展。
傳統(tǒng)人工勢(shì)場(chǎng)法勢(shì)場(chǎng)函數(shù)采用二次函數(shù),因此勢(shì)場(chǎng)強(qiáng)度的變化速率較快,且勢(shì)場(chǎng)函數(shù)系數(shù)無(wú)法動(dòng)態(tài)調(diào)整,導(dǎo)致無(wú)人船易陷入局部最小值點(diǎn),無(wú)法到達(dá)目的地。
文獻(xiàn)[1]提出加入無(wú)人船與目標(biāo)點(diǎn)的相對(duì)距離和相對(duì)速度,以及無(wú)人船與障礙物的相對(duì)角度、速度和加速度作為約束條件對(duì)勢(shì)場(chǎng)函數(shù)進(jìn)行改進(jìn),可以有效地解決因陷入局部最優(yōu),無(wú)人船處于波動(dòng)狀態(tài)而造成的目標(biāo)不可達(dá)問(wèn)題,但是參數(shù)精度低、解決問(wèn)題的時(shí)間過(guò)長(zhǎng)的問(wèn)題需要繼續(xù)改進(jìn)和解決。
文獻(xiàn)[2]指出可以由指數(shù)函數(shù)代替勢(shì)場(chǎng)函數(shù),替代以后,勢(shì)場(chǎng)強(qiáng)度的變化幅度會(huì)被抑制,同時(shí)可在斥力勢(shì)場(chǎng)函數(shù)中增加個(gè)因子,該因子為無(wú)人船與目標(biāo)點(diǎn)的相對(duì)位,利用該因子解決目標(biāo)不可達(dá)問(wèn)題,在系統(tǒng)中額外添加系數(shù)調(diào)整因子,引入2 個(gè)判斷條件,判斷無(wú)人船是否陷入局部最小值,若陷入最小值,則通過(guò)選擇應(yīng)的勢(shì)場(chǎng)系數(shù),使無(wú)人船跳出局部最小值。此算法適用于復(fù)雜海洋環(huán)境無(wú)人船路徑規(guī)劃,避免陷入局部最小值,使無(wú)人船準(zhǔn)確到達(dá)目的地。
文獻(xiàn)[3]指出在模型層面,通過(guò)在勢(shì)場(chǎng)模型中引入DE 算法,提出勢(shì)場(chǎng)路徑評(píng)價(jià)方程和基于進(jìn)化策略的改進(jìn)勢(shì)場(chǎng)模型,實(shí)現(xiàn)對(duì)勢(shì)場(chǎng)路徑的初步優(yōu)化;在路徑點(diǎn)層面,考慮了無(wú)人船運(yùn)動(dòng)能力約束——最大轉(zhuǎn)向角等約束條件,提出了平滑算法對(duì)局部路徑進(jìn)行二次優(yōu)化,有效地提升了無(wú)人船的航行效率。此算法保留了勢(shì)場(chǎng)法計(jì)算簡(jiǎn)單、路徑安全可靠的優(yōu)點(diǎn),同時(shí)兼顧了無(wú)人船對(duì)路徑的優(yōu)化性要求和無(wú)人船的運(yùn)動(dòng)約束條件,所規(guī)劃出的路徑短且平滑,很好地滿足了無(wú)人船的實(shí)際規(guī)劃要求。
文獻(xiàn)[4]通過(guò)在斥力勢(shì)場(chǎng)函數(shù)中添加動(dòng)態(tài)斥力增益因子來(lái)解決目標(biāo)不可達(dá)問(wèn)題,該因子根據(jù)障礙物對(duì)機(jī)器人影響程度的不同,其值大小也會(huì)存在差異,因子數(shù)值的大小可以通過(guò)模糊控制器進(jìn)行動(dòng)態(tài)調(diào)節(jié)。
文獻(xiàn)[5]是對(duì)人工勢(shì)場(chǎng)法的改進(jìn),其核心思想為添加相對(duì)速度與相對(duì)加速度場(chǎng)在原來(lái)的位置場(chǎng)上,同時(shí),改進(jìn)算法還提到了“線勢(shì)場(chǎng)”,“線勢(shì)場(chǎng)”是由路徑對(duì)無(wú)人船產(chǎn)生的,“線勢(shì)場(chǎng)”的作用為無(wú)人船避障以后,提供一個(gè)吸引力,吸引無(wú)人船繼續(xù)前進(jìn),達(dá)到全局規(guī)劃與局部規(guī)劃的有機(jī)統(tǒng)一。
文獻(xiàn)[6]將無(wú)人艇與目標(biāo)點(diǎn)的相對(duì)位置引入到引力勢(shì)場(chǎng)模型中;將機(jī)器人、障礙物和目標(biāo)點(diǎn)的相對(duì)運(yùn)動(dòng)速度引入到斥力勢(shì)場(chǎng)模型中重新構(gòu)建勢(shì)場(chǎng)函數(shù)。對(duì)于環(huán)境信息采用障礙物連結(jié)法處理降低計(jì)算的復(fù)雜度,對(duì)于人工勢(shì)場(chǎng)法的局部極小值問(wèn)題提出了建立局部目標(biāo)點(diǎn)和斥力分解優(yōu)化的方法。
多算法組合路徑規(guī)劃保留了人工勢(shì)場(chǎng)法原理簡(jiǎn)單、反應(yīng)速度快的優(yōu)點(diǎn),又可在一定程度上克服算法本身的缺點(diǎn),對(duì)避障路徑進(jìn)行進(jìn)一步的優(yōu)化。文獻(xiàn)[7]提出了一種改進(jìn)的人工勢(shì)場(chǎng)-蟻群算法。該算法的重要改進(jìn)為更新規(guī)則及啟發(fā)信息函數(shù),在此基礎(chǔ)上,算法引入了最大最小蟻群系統(tǒng),極大了提高了搜索效率,縮小了搜索范圍,能夠有效防止“早熟”現(xiàn)象,另外在啟發(fā)信息函數(shù)中加入了人工勢(shì)場(chǎng)法的控制因素,可有效地減小傳統(tǒng)蟻群算法在搜索初期存在的盲目性,從而加快算法的收斂速度。
文獻(xiàn)[8]針對(duì)多AUV 的避碰與避障控制問(wèn)題,提出了一種將人工勢(shì)場(chǎng)法與虛擬結(jié)構(gòu)相互結(jié)合的多AUV 避障控制算法,該算法可以使得多AUV 在保持編隊(duì)陣型的基礎(chǔ)上,避免與行進(jìn)過(guò)程中遇到的障礙物以及AUV 之間的碰撞。
文獻(xiàn)[9]提出一種勢(shì)場(chǎng)蟻群算法,即在基本蟻群算法迭代初期,通過(guò)人工勢(shì)場(chǎng)法影響螞蟻的信息素量,從而提升尋找最優(yōu)路徑的效率。該算法優(yōu)于基本蟻群算法,有效提高了全局路徑規(guī)劃效率和收斂性,為實(shí)現(xiàn)移動(dòng)機(jī)器人環(huán)境建模及運(yùn)動(dòng)策略規(guī)劃提供了可靠的迭代算法設(shè)計(jì)基礎(chǔ)。
文獻(xiàn)[10]提出了一種改進(jìn)斥力的人工勢(shì)場(chǎng)法與模糊算法相結(jié)合的路徑規(guī)劃算法。將機(jī)器人與目標(biāo)點(diǎn)歐幾里德距離的對(duì)數(shù)函數(shù)引入到斥力場(chǎng)模型中,形成新的人工勢(shì)場(chǎng),同時(shí)加入機(jī)器人、障礙物和目標(biāo)位置坐標(biāo)判據(jù)式。將人工勢(shì)場(chǎng)引力與斥力的角度差、合力差分別作為模糊輸入,借助專家經(jīng)驗(yàn)進(jìn)行決策,得到輸出模糊力,進(jìn)而調(diào)整機(jī)器人各時(shí)刻合力大小和方向。此算法解決了傳統(tǒng)人工勢(shì)場(chǎng)法中出現(xiàn)的局部最優(yōu)和目標(biāo)不可達(dá)問(wèn)題,減小了路徑軌跡波動(dòng)幅度,且在凹型槽障礙物中無(wú)徘徊。
當(dāng)今世界,計(jì)算機(jī)技術(shù)、通信技術(shù)、控制技術(shù)和傳感器技術(shù)等迅速發(fā)展,無(wú)人船如何適應(yīng)復(fù)雜的海洋環(huán)境,如何滿足自身動(dòng)力學(xué)運(yùn)動(dòng)特點(diǎn)的眾多約束條件,如何實(shí)現(xiàn)智能化的路徑規(guī)劃,同時(shí)由于無(wú)人船數(shù)據(jù)鏈路處理和傳輸導(dǎo)致的命令滯后和延遲等自身的控制和任務(wù)方式,使得航跡規(guī)劃方法的研究更加復(fù)雜。通過(guò)對(duì)國(guó)內(nèi)外的研究回顧,可以看出,基于人工勢(shì)場(chǎng)法的航跡規(guī)劃研究的趨勢(shì)主要有:
4.1 針對(duì)人工勢(shì)場(chǎng)法本身的改進(jìn)與完善仍將是以后重要的研究方向。如:在使用人工勢(shì)場(chǎng)法進(jìn)行局部路徑規(guī)劃時(shí),如何調(diào)節(jié)眾多的參數(shù),使得無(wú)人船能夠快速的回到期望路徑,且避免在期望路徑附近來(lái)回震蕩。
4.2 考慮海風(fēng)、海流、海浪及電子干擾等外界干擾因素影響的研究。目前無(wú)人船路徑規(guī)劃在海洋環(huán)境約束區(qū)域建模過(guò)程中進(jìn)行了部分簡(jiǎn)化,如認(rèn)為海流在一定范圍內(nèi)的速度和方向是不變的,但現(xiàn)實(shí)情況不是這樣的,為了提高無(wú)人船在惡劣環(huán)境下的路徑跟蹤控制精度,應(yīng)對(duì)控制算法在惡劣環(huán)境下的控制性能進(jìn)行更深入的研究。
4.3 考慮海上交通規(guī)則以及碰撞約束的研究。傳統(tǒng)的航線自動(dòng)生成方法主要基于電子海圖平臺(tái)、遙感圖像等,通過(guò)柵格化方法或提取障礙物信息的方法識(shí)別出可航水域和不可航水域,而忽視了在航海實(shí)踐中必須遵守的航線設(shè)計(jì)原則和航行規(guī)則。
4.4 多無(wú)人船協(xié)同路徑規(guī)劃研究?,F(xiàn)在專家學(xué)者主要研究單個(gè)無(wú)人船路徑規(guī)劃問(wèn)題,而隨著無(wú)人船發(fā)展應(yīng)用,尤其在區(qū)域巡檢方面的應(yīng)用,會(huì)更多強(qiáng)調(diào)多無(wú)人船協(xié)同作業(yè)。因此,后續(xù)研究應(yīng)對(duì)無(wú)人船協(xié)同路徑規(guī)劃進(jìn)行討論。
人工勢(shì)場(chǎng)法具有反應(yīng)快速、計(jì)算簡(jiǎn)單以及實(shí)時(shí)性強(qiáng)等優(yōu)點(diǎn),在無(wú)人船航跡規(guī)劃問(wèn)題上得到了較好的應(yīng)用。隨著國(guó)內(nèi)外學(xué)者對(duì)上述問(wèn)題的進(jìn)一步深入研究,必將加快無(wú)人船自主控制和任務(wù)規(guī)劃技術(shù)的進(jìn)步,促進(jìn)無(wú)人船系統(tǒng)向著自主化、智能化的方向迅速發(fā)展。