袁明新 黃 艇 曹榮祥 張人杰 申 燚
1(江蘇科技大學機械工程學院 江蘇 鎮江 212003) 2(江蘇自動化研究所機器人事業部 江蘇 連云港 222002) 3(張家港江蘇科技大學產業技術研究院智能裝備研究所 江蘇 張家港 215600)
隊形控制有助于多機器人獲取完備的環境信息,提高工作效率和系統魯棒性,在搜索、跟蹤和巡視等軍事和生產領域具有廣闊的應用前景,而設計高效和高魯棒性多機器人編隊策略是多機器人協同的關鍵[1]。目前隊形控制方法主要有leader-follower策略、行為法和虛擬結構法等。Dong等[2]提出了基于一致性的二階系統時變隊形控制,在跟隨領航者時,跟隨者可以根據預定義時變形式切換自己狀態,從而實現無人機的圓形編隊控制,但一旦領航者因擾動出現問題,隊形就難以形成。喬勇軍等[3]在已有跟隨領航者算法基礎上,通過引入虛擬領航者思想,并利用人工勢場法進行避障,從而實現計算機兵力生成的隊形控制,解決了在真實領航者發生故障時隊形控制失敗的問題,但其只研究了一個虛擬領航者下的隊形控制,當虛擬領航者數目增多時,隊形控制效果還需進一步測試和驗證。Ramazani等[4]利用剛性圖理論研究了單積分和雙積分模型,實現了多機器人的分層控制,但該方法要求機器人有固定的起始位置,方法柔韌性不高、實用性不大。Nikou等[5]提出了基于距離和方向的隊形控制,機器人僅通過其鄰居的本地信息來計算自己控制信號,但該方法要求拓撲結構具有極高的穩定性。楊秀霞等[6]為提高領航者算法編隊控制的效率,利用粒子群算法對算法的隊形參數進行優化,但粒子群算法容易陷入局部最優,如何保證編隊最大效率也有待進一步檢驗。從目前已有隊形控制成果可以看出,相關方法在一定條件下雖然都能實現隊形控制,但在全局控制精度和效率,尤其擾動下的控制柔韌性和糾正能力等方面存在不足。為此,本文利用人工免疫系統的自組織、自學習等優點,基于Jerne的獨特型免疫網絡假設構建了多機器人隊形控制人工免疫協作網絡模型,同時借鑒白介素免疫調節機理,通過白介素調節因子定義來實現擾動下機器人軌道偏離時的糾正,數值和仿真平臺測試結果都驗證了本文算法的有效性和優越性。
生物免疫系統是一種高度進化的信息處理系統,具有平行、自組織和學習等優點,作為免疫理論之一的Jerne獨特型免疫網絡假設[7-8]認為,當外界抗原侵入生物體并打破系統平衡時,生物體內抗體和淋巴細胞會通過刺激和抑制克服抗原,從而維持系統平衡?;谠摷僭O,文獻[9]提出了計算抗體激勵水平和濃度的免疫網絡動力學模型,其表達式為:
ai(t-1)
(1)
式中:Ai(t)為t時刻抗體i的激勵水平;N為抗體數;右邊括號中第一項為抗體i和抗體j之間的引力,mij為兩者的刺激系數;第二項是抗體i和抗體l相互間的抑制,mli是兩個抗體相互間的抑制系數;第三項gi為抗原對抗體i的刺激;第四項ki模擬抗體i的自然消亡;α和β分別為抗體i對其他抗體和抗原的作用系數;ai(t)、aj(t)和al(t)分別為t時刻抗體i、j和l的濃度。
(2)
Farmer模型的柔韌性和魯棒性為解決多機器人的協作提供了新思路,并在任務分配[10]、路徑規劃[11]中得到了成功應用,顯示出強大的自組織、自學習和全局優化優勢。為了提高多機器人隊形控制精度和效率,尤其干擾下隊形控制的糾正能力,本文將機器人期望隊形重心作為抗原,機器人速度作為抗體,借鑒Farmer的免疫網絡動力學模型構建了多機器人隊形控制免疫網絡協作模型。機器人會根據自己與期望隊形重心的相對位置來選擇最優抗體(速度)向目標點移動,進而形成期望隊形。生物免疫系統和多機器人隊形控制對應關系如表1所示。

表1 生物免疫系統和多機器人隊形控制的對應關系
多機器人系統在隊形形成過程中,往往會因為外界干擾造成機器人自身與目標點間較大的偏角誤差,該誤差直接影響了機器人的隊形形成,一直是機器人隊形控制中的難點。為了解決該問題,本文借鑒了生物免疫系統中白介素免疫調節機理。白介素[12]是指在白細胞或免疫細胞間發生相互作用的淋巴因子。臨床醫學表明,白介素可直接刺激造血干細胞和巨核祖細胞的增殖,誘導巨核細胞的成熟分化,提高患者自身的免疫力,增強患者的抗病毒能力。為此,本文將機器人位置與理想位置間連線和x軸的夾角定義為白介素,并作為隊形控制免疫協作網絡的調節因子。當機器人與目標點的偏角過大時,通過增加白介素分泌量來提高機器人受到的激勵值,從而促使機器人選擇最優抗體(速度)來自適應移動,進而快速完成對隊形的自糾正控制。
定義1在隊形控制免疫協作網絡中,抗原為期望隊形重心,抗體為機器人速度。為了避免因領航者故障而導致隊形無法形成,將機器人自身坐標與期望隊形重心間的距離作為機器人速度調節主要因素,因此免疫協作網絡中的抗原抗體親和度定義如下:
gi=di
(3)
式中:di是機器人i與期望隊形重心間的距離。
定義2在免疫協作網絡中,為了克服外界干擾造成的機器人與目標間較大的偏角誤差,將機器人i實時位置和理想位置連線與x軸的夾角作為白介素。為了使機器人i能在外界干擾下快速返回軌道,需要根據偏角誤差大小進行白介素相應多少的注射,為此本文將機器人i的白介素注射量ci定義為夾角的自然指數形式,并通過權系數進行調節,具體定義如下:
ci=m·expRi
(4)
式中:Ri為機器人i實時位置和理想位置連線與x軸的夾角;m是權重系數。
定義3免疫協作網絡中抗體間的刺激和抑制會影響系統中多機器人之間的碰撞。當機器人之間距離變小時,機器人需減小速度以減少碰撞帶來的損害,因此機器人i和j的抗體(速度)間親和度定義為機器人速度及其相互間距離,具體定義如下:
sij=vi·Dij
(5)
式中:sij表示機器人i和j的速度抗體間親和度;vi為機器人i的速度;Dij為機器人i和j之間的距離。
定義4基于Farmer的免疫網絡動力學模型,結合白介素免疫調節,抗體激勵水平和濃度計算如下:
ai(t-1)
(6)
(7)
式中:Ai(t)為t時刻抗體i的激勵水平;ai(t)為t時刻抗體i的濃度??梢钥闯?,與基本免疫網絡算法相比,白介素調節因子的增加有效實現了抗體激勵水平和濃度的免疫調節。當機器人i偏離預定軌道時,機器人i軌跡與預定軌道的角度變大,白介素注射量將逐步增加,機器人所受到的激勵也不斷增加,從而有助于機器人以較快的速度糾正軌道。
Step1初始化機器人i的激勵水平Ai(0)和抗體濃度ai(0),并啟動多機器人系統。
Step2計算機器人i實時位置和理想位置的距離Di,以及機器人i實時位置和理想位置連線與x軸的夾角Ri。
Step3計算抗原抗體親和度gi、抗體間的親和度系數sij,以及白介素調節因子ci。
Step4利用抗體激勵水平和濃度的免疫網絡動態方程計算機器人i的抗體激勵值Ai(t),并與設定的激勵閾值進行比較從而選擇最優速度。
Step5更新機器人的位置坐標等信息,重新計算抗原抗體親和度gi、抗體間的親和度系數si和白介素調節因子ci。重復Step 2至Step 4,直至機器人形成期望隊形。
從以上算法流程可以看出,不同于免疫遺傳、免疫克隆等優化算法,本文免疫網絡算法不需要通過循環迭代來決定機器人的每一步最優行為,而是通過抗原(期望隊形重心)對抗體(機器人速度)以及抗體(機器人速度)之間的相互作用來決定機器人的最優行為,計算量小,實時性好。
為了驗證本文白介素調節下多機器人隊形控制免疫網絡算法的有效性,利用MATLAB 7.0,在CPU 1.60 GHz、內存為4 GB的計算機上進行了多機器人隊形控制測試,并將測試結果與基本領航者算法[13]、遺傳優化的領航者算法[14]、基本免疫網絡算法的測試結果進行了比較。鑒于目前在多機器人隊形控制研究領域尚無標準測試數據集,本文自定義了圖1中隨機的4種初始測試環境,且機器人數分別為3、4、5和6,最終所形成期望隊形都為三角形。

(a) 3個機器人 (b) 4個機器人

(c) 5個機器人 (d) 6個機器人圖1 四種初始測試環境
表2是四種隊形控制算法的性能比較。可以看出,由于遺傳算法的全局優化能力,相對于基本領航者算法,經其優化的領航者算法在時間和位移方面的性能表現要優于基本領航者算法,時間和位移分別減少了35%和32%。但在接近目標位置時,由于機器人為了提高隊形控制效率而選擇了較快速度,因此其平均偏差角度增大。相比起遺傳優化領航者算法,基本免疫網絡算法由于其全局優化和自組織等優勢性能,使得其平均的時間、位移和偏差角度等性能有了明顯提高。平均時間和位移分別減少了47%和28%,且平均偏差角度為0。基于白介素調節的多機器人隊形控制免疫網絡算法比基本免疫網絡的性能又有了進一步提升,使得其平均時間和位移分別減少了48%和41%,且其平均偏差角度為0保持不變。與3種隊形控制算法綜合相比,本文算法的平均時間和位移分別平均減少73%和60%。上述測試結果充分表明,利用免疫網絡能夠完成多機器人的隊形控制,同時,白介素調節下免疫網絡控制算法的執行效率得到了進一步提高。

表2 四種算法的隊形控制性能比較

續表2
圖2為6個機器人環境的隊形控制結果比較。由圖2(a)可以看出,6個機器人在領航者算法的控制下,形成了規定的三角形隊形,但在機器人移動前期,路徑有少許波動,尤其是⑤號機器人,并沒有與①號機器人保持一條直線,6個機器人走過的路徑也較長。由圖2(b)可以看出,基于遺傳算法實現了領航者算法中的比例系數優化,使得領航者算法的隊形控制效率明顯提高,機器人走過的路徑變短,但機器人移動前期的波動仍未消除。圖2(c)給出了基于免疫網絡算法的隊形控制結果,相比起兩種領航者算法,基于免疫網絡算法機器人在移動前期的路徑基本沒有波動,機器人走過的路徑也較短,顯示出隊形免疫網絡控制過程中的柔韌性。圖2(d)為本文白介素調節的免疫網絡控制效果,通過對比可以明顯看出,在白介素調節下,免疫網絡協作使得機器人能進一步快速形成隊形,且機器人走過的路徑也被進一步縮短。

(a) 基本領航者算法 (b) 遺傳優化領航者算法

(c) 免疫網絡算法 (d) 白介素調節免疫網絡算法圖2 6個機器人環境隊形控制結果比較
圖3為本文算法在6個機器人環境中的抗體激勵值變化情況,其中χ為循環代數。機器人根據抗體激勵值,選擇相應的速度。本文將機器人速度設為3檔,即0.4 m/s、0.5 m/s和0.7 m/s。激勵低閾值設為0.9,高閾值設為1.9。根據免疫網絡控制原理,當抗體激勵值大于高閾值時,機器人會進行高速移動;當抗體激勵值小于高閾值而大于低閾值時,機器人會選擇中速移動;當抗體激勵值小于低閾值時,機器人會選擇低速移動。由圖3可以看出,在開始階段,機器人因距期望隊形重心較遠,抗體激勵值較大從而使機器人進行高速移動;運動一段時間后,機器人因慢慢接近期望隊形重心,同時機器人間距離也逐漸變小,因此選擇中速移動;最后當機器人逼近期望隊形重心時,選擇低速運行,以較平穩速度完成隊形控制,并保持隊形。

圖3 本文算法在6個機器人環境中的抗體激勵值
為了進一步測試白介素調節的多機器人隊形免疫網絡控制算法效果,再次利用北京大學水中機器人大賽2D仿真中的花樣游泳賽事平臺[15]進行了4種環境的實驗測試,并將測試結果與另外3種相同算法的控制結果進行了比較。四種水中機器魚仿真測試環境如圖4所示,每個環境都采用了6條機器魚作為控制對象,但是初始坐標和位姿都不一樣,另外環境中左上角4條魚被設置為干擾項。

圖4 4種水中機器魚仿真測試環境
表3給出了4種環境中4種算法的隊形控制性能比較??梢钥闯?,基于遺傳優化的領航者算法相比起基本領航者算法在時間、平均位移方面能表現出更優性能,這主要還是得益于遺傳算法的優化能力,但平均偏差角度指標仍然由于機器魚在接近目標時選擇了較快速度,使得其比基本領航者算法效果差。而基本免疫網絡算法和白介素調節免疫網絡算法在上述三個性能指標方面都要明顯優于兩種領航者算法,且本文算法的控制效果同樣明顯最優,這也進一步驗證了人工免疫網絡自組織和全局優化能力,同時白介素免疫調節明顯提高了機器魚隊形形成效率和精度。

表3 四種環境的隊形控制性能比較
圖5給出了環境一中4種隊形控制算法的機器魚運動軌跡比較??梢钥闯?,基本領航者算法與遺傳優化領航者算法的運動軌跡相似,在隊形控制的初始階段,機器魚游了一段彎路,導致機器魚的位移增加。而免疫網絡算法和白介素免疫網絡算法隊形控制的軌跡相對比較順滑,體現了免疫網絡控制的柔韌性,縮短了機器魚的位移,提高了隊形控制效率,且在白介素免疫調節下機器魚形成規定隊形的時間明顯最短,從而驗證了白介素調節免疫網絡算法的有效性和優越性。

圖5 環境一中4種隊形控制算法的機器魚軌跡比較
為了進一步改善多機器人系統在隊形控制方面的性能,借鑒Jerne的獨特性免疫網絡假設以及白介素免疫調節機理,提出基于白介素調節的多機器人隊形免疫網絡控制算法。通過理論分析,數值和仿真平臺測試可以得出如下結論:
(1) 通過構建多機器人隊形控制的人工免疫協作網絡,能充分發揮免疫網絡的自組織和全局優化性能,便于機器人根據相互之間位置和位姿進行通信從而提高隊形控制效率和精度。
(2) 借鑒Farmer的免疫網絡動力學模型,同時將人工免疫網絡中抗體(速度)進行低、中和高分層設置,有助于抗體激勵值的快速而最優選擇,同時也減少了機器人隊形控制中的能量消耗。
(3) 為了解決機器人隊形形成過程中可能因外界擾動因素而造成的預定軌道偏離問題,本文借鑒白介素免疫調節機理,將機器人偏角誤差定義為白介素調節因子,并將其作為免疫網絡動力學模型中調節項,從而實現了機器人隊形控制過程中的軌道有效糾正。
無論是數值還是仿真平臺測試都驗證了本文提出的白介素調節下多機器人隊形免疫網絡控制算法的有效性和優越性,這有助于提高多機器人系統的協作效率和任務完成質量,具有較好的應用價值。