劉 洋 王 征 尹 洋 龔謝平
(海軍工程大學(xué)電氣工程學(xué)院 武漢 430032)
無(wú)人艇技術(shù)經(jīng)過(guò)幾十年的發(fā)展已經(jīng)相對(duì)成熟,在軍事和民事領(lǐng)域發(fā)揮了重要的作用。為了適應(yīng)未來(lái)復(fù)雜的水面任務(wù),除了提高無(wú)人艇的機(jī)動(dòng)性能,還需要考慮如何以現(xiàn)有的技術(shù)基礎(chǔ),發(fā)展更加有效的無(wú)人艇管理和組織模式??紤]到單艘無(wú)人艇的功能對(duì)任務(wù)需求面覆蓋窄的缺點(diǎn),近些年的研究熱點(diǎn)正在逐步由單艇向多無(wú)人艇編隊(duì)協(xié)同靠攏,如:蜂擁、集群、聚集、渦旋覆蓋、編隊(duì)任務(wù)等。
目前協(xié)同研究大多集中在無(wú)人艇的編隊(duì)、隊(duì)形控制方面,其控制結(jié)構(gòu)的設(shè)計(jì)方法主要有領(lǐng)航跟隨法[1]、虛擬結(jié)構(gòu)法[2]、行為分解法[3]等,試驗(yàn)證明這些控制結(jié)構(gòu)可以較好地在空曠無(wú)干擾水域中完成隊(duì)形控制運(yùn)動(dòng)。按照體系結(jié)構(gòu)可將多無(wú)人艇系統(tǒng)分為集中式、分布式和分散式[4],其中部分研究為集中式或者分布式控制結(jié)構(gòu),其明顯特征為結(jié)構(gòu)中存在一艘或多艘領(lǐng)航無(wú)人艇,這樣的結(jié)構(gòu)可以比較快地找出全局最優(yōu)路徑,有較高的多邊協(xié)商效率,但也可能會(huì)有如在通過(guò)狹窄航道時(shí)靈活性較差、單個(gè)無(wú)人艇意外損耗影響整個(gè)集群效率的問(wèn)題,且隨著無(wú)人艇的數(shù)目增加,無(wú)人艇間的相互協(xié)調(diào)工作的難度也會(huì)隨著群體的復(fù)雜性、動(dòng)態(tài)性及耦合性指數(shù)倍增長(zhǎng)。
而分散式控制結(jié)構(gòu)有較好的穩(wěn)定性以及故障冗余的特點(diǎn)。因此,本文試圖采用分散式結(jié)構(gòu),在Boid群集模型的基礎(chǔ)下設(shè)計(jì)無(wú)人艇集群控制結(jié)構(gòu),通過(guò)短程斥力避免個(gè)體碰撞,利用隱含的類粘性摩擦對(duì)齊規(guī)則項(xiàng)來(lái)抑制系統(tǒng)缺陷導(dǎo)致的振蕩,同時(shí)通過(guò)引入軟控制的概念建立虛構(gòu)的“shill”無(wú)人艇對(duì)全局的無(wú)人艇進(jìn)行約束以及避障,以提高無(wú)人艇集群的擴(kuò)展能力以及降低群體復(fù)雜性。
無(wú)人艇作為一個(gè)具有橫搖、縱搖、艏搖、橫蕩、縱蕩、垂蕩六個(gè)自由度的剛體模型,控制耦合會(huì)非常的復(fù)雜。而無(wú)人艇的控制主要在于方位,因此本文在縱蕩、橫蕩以及艏搖三個(gè)自由度上建立欠驅(qū)動(dòng)的以螺旋槳為推力的無(wú)人艇的數(shù)學(xué)模型[5]。其運(yùn)動(dòng)學(xué)模型可以表示為
式中,η=(ηx,ηy,ψ)中ηx和ηy表示船體在北東坐標(biāo)系下的位置,ψ表示艏向角;ν=(w,ν,r)中w和ν分別表示船體在船體坐標(biāo)系下的前向速度和橫向速度,r表示艏向角速度。
其動(dòng)力學(xué)公式表述為
式中,M為慣性矩陣;C(ν)為科氏力和向心力矩陣;D(ν)為水動(dòng)力阻尼矩陣;τ=[τu0τr],是無(wú)人艇所受的推進(jìn)力和轉(zhuǎn)向力矩;τe=[τeu τeν τer]為外界環(huán)境干擾。
以固定距螺旋槳為動(dòng)力的無(wú)人艇的推力和轉(zhuǎn)向力矩由螺旋槳轉(zhuǎn)速δn和推力偏轉(zhuǎn)角δs決定,F(xiàn)ossen指出一般情況下,推力T是船速V和螺旋槳轉(zhuǎn)速δn的函數(shù)[6]:
式中,c,d是與海水密度、螺旋槳螺距相關(guān)的常量。因此τu,τr分別為
式中,xcenter為螺旋槳到船質(zhì)心的距離,為動(dòng)力臂。因此在T+1 時(shí)刻,可以通過(guò)計(jì)算得到期望速度vdesire,同時(shí)T 時(shí)刻的速度V和vdesire作為輸入通過(guò)PD控制可以得到T+1時(shí)刻的期望螺旋槳轉(zhuǎn)速δn和推力偏轉(zhuǎn)角δs,式(2)、(3)聯(lián)立從而實(shí)現(xiàn)無(wú)人艇的動(dòng)力學(xué)控制。
如圖1 所示,分散式控制中的每艘無(wú)人艇可以相互觀察、交換信息,但它們不發(fā)送和接受直接控制命令,原因是分散式控制旨在避免群體中存在主從關(guān)系,這點(diǎn)是與集中式和分布式結(jié)構(gòu)不同的地方。本文設(shè)置無(wú)人艇不存在主從關(guān)系,即每艘無(wú)人艇都遵從同樣的運(yùn)動(dòng)控制準(zhǔn)則,控制律由整體結(jié)構(gòu)所控制。
圖1 集中式結(jié)構(gòu)、分布式結(jié)構(gòu)和分散式結(jié)構(gòu)
自然中有很多生物聚集行為,例如飛翔鳥群,它們沒(méi)有統(tǒng)一的控制平臺(tái),也沒(méi)有固定的領(lǐng)航者,每只鳥都是一個(gè)獨(dú)立的個(gè)體,通過(guò)對(duì)動(dòng)態(tài)環(huán)境的局部感知完成復(fù)雜優(yōu)美的集群運(yùn)動(dòng)。類似這樣的集群,Gábor Vásárhelyi 等[8]將其稱之為自組織系統(tǒng)(the Self-organized System)。自組織系統(tǒng)中對(duì)象采取的行為模式由系統(tǒng)中的其它單元的集體效應(yīng)決定,相鄰個(gè)體的物理量?jī)A向于彼此對(duì)齊,這種行為和潛在的控制機(jī)制應(yīng)該是安全、穩(wěn)定和無(wú)碰撞運(yùn)動(dòng)的先決條件[8]。
基于Boid蜂擁運(yùn)動(dòng)模型,這種控制結(jié)構(gòu)可描述為以下三條基本準(zhǔn)則:
1)避免碰撞:短距離內(nèi)要保證無(wú)人艇個(gè)體不發(fā)生碰撞;
2)速度匹配:通過(guò)局部交互使無(wú)人艇個(gè)體與局部小群落速度對(duì)齊;
3)全局約束:保證無(wú)人艇集群在一個(gè)約束范圍內(nèi)。
為了避免無(wú)人艇之間的碰撞,且防止傳感器位置測(cè)量誤差高階項(xiàng)而導(dǎo)致斥力的突變或產(chǎn)生奇點(diǎn),本文設(shè)置一種類似于勢(shì)場(chǎng)力的短程分段斥力:
式中,R是斥力常數(shù),rij是無(wú)人艇i和無(wú)人艇j的距離矢量;r0是短程斥力的影響范圍,也就是說(shuō),超過(guò)這個(gè)距離的無(wú)人艇之間不存在短程斥力;γ即為短程斥力的寬度,避免無(wú)人艇之間激發(fā)過(guò)度互斥。
在無(wú)人艇的集群中,無(wú)人艇的通信范圍通常是有限的,只能向通信半徑內(nèi)的其它艇發(fā)送信息,最簡(jiǎn)單的基于agent的集群模型將對(duì)齊規(guī)則描述為明確的數(shù)學(xué)公理:即每個(gè)單元將其速度向量對(duì)齊到臨近單元(包括自身)的平均速度向量。Yoram Koren[9]勢(shì)場(chǎng)法是一種簡(jiǎn)單明了的避障方法,但其自身明顯的缺點(diǎn)是當(dāng)無(wú)人艇及障礙物分布過(guò)多時(shí)會(huì)造成不穩(wěn)定的振蕩運(yùn)動(dòng)。因而提出對(duì)齊規(guī)則應(yīng)是基于過(guò)阻尼動(dòng)力學(xué)的相互作用力或速度項(xiàng)的結(jié)果,以避免短程斥力可能會(huì)出現(xiàn)的不穩(wěn)定振蕩,同時(shí)促進(jìn)局部鎮(zhèn)定[10]。
因此設(shè)置一個(gè)類摩擦粘滯力,使一艘無(wú)人艇跟隨周圍影響半徑內(nèi)無(wú)人艇達(dá)到同步,同時(shí)該項(xiàng)作為減震媒介,減少由于排斥等延遲和嘈雜的環(huán)境而出現(xiàn)的自激振蕩,并且可擴(kuò)展到比較高的速度的情況。
式中,表示無(wú)人艇i和j在歐氏距離‖rij‖下的可允許最大速度差值,一旦無(wú)人艇i和j和的速度差‖vij‖大于該值,局部調(diào)整就要作用于無(wú)人艇i從而使其狀態(tài)向j靠攏;是最大速度差的臨界點(diǎn),如果兩者之間的距離小于該值,則該范圍內(nèi)的任何兩艇的最大速度差都維持在一個(gè)較低的速度值νfrict上,使在一定近距離范圍內(nèi)的無(wú)人艇都會(huì)受到較大的局部速度調(diào)整影響;K是耦合系數(shù),K>0;d則是調(diào)整函數(shù)f(rij,,d)的衰減速度,以用來(lái)適應(yīng)不同速度的集群行為;N是在局部速度調(diào)整范圍R下與無(wú)人艇i鄰接的其它艇的個(gè)數(shù);νij是無(wú)人艇i和j的速度矢量差。
f(rij,,d) 基于Cucker-Smale 的N-體運(yùn)動(dòng)模型[10]提出,薛小平[12]證明參數(shù)β<1/2 時(shí),任何狀態(tài)下的個(gè)體均可達(dá)到漸近群體效應(yīng),即:
1)相對(duì)速度趨于0,即
2)相對(duì)位移聚集,即
圖2 是可視化作用力,其中紅線表示了無(wú)人艇之間的排斥力與距離之間的分段函數(shù)關(guān)系;綠線是無(wú)人艇i和j在某距離下的最大速度差,如果兩艇的速度差位于綠線之上(如圖中紅點(diǎn)‖νij‖),則局部調(diào)整速度項(xiàng)會(huì)作用于無(wú)人艇i,直至‖νij‖位于綠色區(qū)域。此函數(shù)可以通過(guò)改變?cè)试S無(wú)人艇在某距離下之間的最大速度差來(lái)調(diào)整適應(yīng)不同的無(wú)人艇群的數(shù)量和集群速度等,具有較好的擴(kuò)展性。
圖2 可視化作用力
韓晶[13]提出了“soft control”、“shill”的概念,其思想即:集群行為是多智能體系統(tǒng)的一種宏觀特征,在一個(gè)多智能體系統(tǒng)中,多數(shù)智能體是具有局部規(guī)則的普通智能體,當(dāng)在群體中加入一些受控制的“shill”誘導(dǎo)無(wú)人艇單元后可以使集群行為隨著受控“shill”改變,實(shí)現(xiàn)所謂的軟控制(軟控制和分布式控制的區(qū)別在于:分布式控制中每個(gè)智能體是一個(gè)控制系統(tǒng)且有它自身的控制律;而軟控制中將所有的智能體看作一個(gè)系統(tǒng),控制律是作用于“shill”而非直接作用于單個(gè)智能體)。
因此本文設(shè)置一個(gè)虛擬的“fence”的概念,將構(gòu)成凸多邊形的邊上的每個(gè)點(diǎn)視作一艘shill 無(wú)人艇,對(duì)整個(gè)無(wú)人艇集群行為進(jìn)行軟控制。為了使無(wú)人艇群能夠像生物群體一樣完成集群運(yùn)動(dòng),每一個(gè)shill 無(wú)人艇,它們均有一個(gè)指向fence 內(nèi)部的速度,從而誘導(dǎo)無(wú)人艇集群收縮至設(shè)定的范圍內(nèi);同樣?xùn)艡趦?nèi)的障礙物也可以將其視作shill無(wú)人艇,它的誘導(dǎo)方向是由障礙物向外發(fā)散,由于分散控制中每個(gè)智能體遵循的控制律都一樣,所以任意無(wú)人艇i和虛擬shill無(wú)人艇也遵循局部速度調(diào)整公式:式中,shill 是指距無(wú)人艇i最近的任意凸多邊形fence 的點(diǎn)所形成的虛擬無(wú)人艇;是指無(wú)人艇i與shill無(wú)人艇之間的最大允許速度差異;ris是指無(wú)人艇i和shill 的歐氏距離;x是無(wú)人艇i與fence 的相對(duì)中心點(diǎn)的歐氏距離,Rs是該shill 無(wú)人艇與fence 的相對(duì)中心點(diǎn)的歐氏距離,b是緩沖寬度。當(dāng)無(wú)人艇在該距離之外時(shí),通過(guò)shill無(wú)人艇的誘導(dǎo)使其逐漸向fence 靠攏,通過(guò)調(diào)節(jié)緩沖寬度b可以適應(yīng)不同的聚集程度和集群速度;Robstacle是允許的無(wú)人艇與障礙物之間的極限距離,小于這個(gè)距離將會(huì)通過(guò)局部調(diào)整避開(kāi)障礙物。
為使無(wú)人艇群完成集群運(yùn)動(dòng),將fence 視作一個(gè)剛體運(yùn)動(dòng),通過(guò)作用于剛體中心的控制律來(lái)控制無(wú)人群進(jìn)行定向、定點(diǎn)或者是跟隨等等任務(wù)。在定向集群運(yùn)動(dòng)的情況下,本文為無(wú)人艇設(shè)置一個(gè)自驅(qū)動(dòng)速度項(xiàng)[14],保持無(wú)人艇擁有值為Vflock的恒定群集速度。
而在定向集群運(yùn)動(dòng)中,我們則需要設(shè)置一個(gè)朝向目標(biāo)點(diǎn)的集群速度,因此自驅(qū)動(dòng)速度為
式中,xtarget為目標(biāo)點(diǎn)矢量;xfence為柵欄中心矢量。
最后本文將上述作用項(xiàng)取矢量和,即可得到下一時(shí)刻無(wú)人艇i的期望速度:
多無(wú)人艇做集群運(yùn)動(dòng)應(yīng)該滿足這樣的特點(diǎn):集群的個(gè)體應(yīng)該朝著目標(biāo)方向排列,作為一個(gè)緊密的、連貫的類似鏈接起來(lái)的群體以平穩(wěn)、快速的方式做不發(fā)生碰撞的移動(dòng)。在集群運(yùn)動(dòng)模型中,集群過(guò)程是一個(gè)從無(wú)序到有序的類似相變的轉(zhuǎn)變過(guò)程,本文通過(guò)借用相變理論中對(duì)物理系統(tǒng)的有序化程度的刻畫從設(shè)定一個(gè)或者多個(gè)所謂的序參量(order parameters)的特定系統(tǒng)變量來(lái)描述集群的程度[15]。序參量指的是表征一個(gè)相的對(duì)稱度,這個(gè)值通常在一個(gè)相(無(wú)序相)為零,在另一個(gè)相(有序相)中為非零。因此本文選擇平均歸一化速度和聚集態(tài)相干性兩個(gè)不同方面的序參量作為評(píng)估無(wú)人艇集群運(yùn)動(dòng)的指標(biāo)。
在集群運(yùn)動(dòng)的情況下,最優(yōu)先選擇的序參量是平均歸一化速度ψνel:
其中N 是無(wú)人艇總數(shù),ν0是無(wú)人艇集群的平均絕對(duì)速度。如果無(wú)人艇群運(yùn)動(dòng)是無(wú)序的,單個(gè)無(wú)人艇的速度是在隨機(jī)方向指向一個(gè)小的數(shù)量級(jí)矢量;而對(duì)于有序運(yùn)動(dòng),所有無(wú)人艇速度的矢量和的絕對(duì)值接近于Nν0,因此序參量ψνel可以是表示一個(gè)從0~1 的連續(xù)相變的過(guò)程。它表示了一個(gè)集群的速度指向的一致性,當(dāng)該參量接近1 時(shí)表明集群正在向同一方向運(yùn)動(dòng),當(dāng)該參量接近0 時(shí)表明該時(shí)刻集群正在做無(wú)序運(yùn)動(dòng)。
群體聚集態(tài)的相干性可以衡量整個(gè)無(wú)人艇群的聚集離散程度:
該序參量捕捉了無(wú)人艇行動(dòng)的速度相關(guān)性,并給出無(wú)人艇群有序程度。
本文在實(shí)驗(yàn)假設(shè)的多礁水域進(jìn)行多無(wú)人艇集群運(yùn)動(dòng)數(shù)值仿真以驗(yàn)證所提出的分散式控制策略的有效性和準(zhǔn)確性。其仿真流程圖如圖3 所示,本文選用的無(wú)人艇模型主要物理參數(shù)如表1所示。
表1 無(wú)人艇模型物理參數(shù)
圖3 分散式控制示意圖
仿真實(shí)驗(yàn)中本文設(shè)定局部通信約束的最大范圍為150m,最大鄰接無(wú)人艇數(shù)量10 艘,無(wú)人艇碰撞半徑1.5m,定義fence為邊長(zhǎng)為50m 的正方形,無(wú)人艇初始位置、姿態(tài)均圍繞fence的中心隨機(jī)分布,初速度均為0。
實(shí)驗(yàn)一選擇7 艘無(wú)人艇完成正北向的定向無(wú)人艇集群運(yùn)動(dòng)實(shí)驗(yàn),設(shè)置柵欄的初始位置為[170,-25]m,仿真結(jié)果如圖4。從仿真中可以看出t=0s 時(shí)無(wú)人艇隨機(jī)分布于fence 四周,隨后聚合、避障以及定向運(yùn)動(dòng)。同時(shí)序參量也能夠說(shuō)明在一開(kāi)始,群體處于比較無(wú)序的狀態(tài),而后迅速向有序過(guò)渡,在避障過(guò)程中由于需要部分無(wú)人艇調(diào)整,所以群體的序參量又迅速下降,符合群體行為本身。
圖4 設(shè)置7艘無(wú)人艇定向集群運(yùn)動(dòng)
實(shí)驗(yàn)二選擇11 艘無(wú)人艇做定向的集群運(yùn)動(dòng)實(shí)驗(yàn),其余條件與實(shí)驗(yàn)一相同,以驗(yàn)證該控制結(jié)構(gòu)的可擴(kuò)展性,仿真結(jié)果如圖5??梢钥闯鲈跓o(wú)人艇數(shù)量增加后,仍可順利完成集群運(yùn)動(dòng),該分散式集群運(yùn)動(dòng)控制結(jié)構(gòu)有較好的可擴(kuò)展性。
圖5 設(shè)置11艘無(wú)人艇定向集群運(yùn)動(dòng)
實(shí)驗(yàn)三選擇7 艘無(wú)人艇做定點(diǎn)集群運(yùn)動(dòng),其中設(shè)置5個(gè)目標(biāo)點(diǎn),其坐標(biāo)為target1=[330,107]m,target2=[83,236]m,target3=[67,95]m,target4=[141,74]m,target5=[150,150]m,仿真結(jié)果如圖6 所示。從仿真結(jié)果看出無(wú)人艇群從t=0開(kāi)始聚合并向第一個(gè)目標(biāo)點(diǎn)移動(dòng),期間順利實(shí)現(xiàn)避障;集群運(yùn)動(dòng)到達(dá)第一個(gè)目標(biāo)點(diǎn)后依次訪問(wèn)之后的目標(biāo)。結(jié)合性能指標(biāo)可以看出整個(gè)集群運(yùn)動(dòng)過(guò)程中在密集水面障礙物水域環(huán)境下,分散式控制的無(wú)人艇集群運(yùn)動(dòng)可以完成迅速集結(jié),每艘無(wú)人艇航跡穩(wěn)定無(wú)明顯振蕩,具有較強(qiáng)的靈活性。
圖6 多無(wú)人艇定點(diǎn)集群運(yùn)動(dòng)
本文采用了一種分散式控制結(jié)構(gòu)對(duì)多無(wú)人艇集群運(yùn)動(dòng)進(jìn)行約束控制,引入軟控制的概念,使得每艘無(wú)人艇像鳥一樣只需要掌握局部信息,在局部其它艇的影響下便可完成集群運(yùn)動(dòng),擴(kuò)展性較強(qiáng)。該控制系統(tǒng)不像集中式和分布式控制一樣存在中心控制器,無(wú)人艇之間可以交換信息,但不直接發(fā)送或者接受命令,這樣的控制結(jié)構(gòu)可以降低無(wú)人艇自身復(fù)雜程度和造價(jià),且不會(huì)因?yàn)橹骺刂茊卧囊馔鈸p毀而破壞整體的控制功能,具有較好的抗損毀能力。
仿真實(shí)驗(yàn)表明該分散式控制系統(tǒng)可以有效控制多無(wú)人艇定點(diǎn)、定向的集群運(yùn)動(dòng)控制,且無(wú)人艇的路線比較光滑,有一定的抗振蕩和抵御外界不穩(wěn)定因素的能力。且能夠在復(fù)雜水域中完成集群避障任務(wù)后迅速收縮至fence 內(nèi),具有快速集群的優(yōu)點(diǎn)。
但該系統(tǒng)也存在不足之處:在地形較為復(fù)雜且集群速度較快情況下,某些無(wú)人艇可能會(huì)因?yàn)榫植克俣日{(diào)整項(xiàng)導(dǎo)致被“過(guò)度裹挾”向前運(yùn)動(dòng),短程斥力不足以抵消這些艇向前慣性導(dǎo)致突破碰撞極限。下一步嘗試加入于地形、無(wú)人艇數(shù)量以及集群速度相關(guān)的自適應(yīng)參數(shù)。