国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

感知范圍受限的群機(jī)器人自主圍捕算法

2021-07-31 12:41羅家祥許博喆劉海明高煥麗姚瞻楠
控制理論與應(yīng)用 2021年7期
關(guān)鍵詞:障礙物同伴個(gè)體

羅家祥,許博喆,劉海明,蔡 鶴,高煥麗,姚瞻楠

(華南理工大學(xué)自動(dòng)化科學(xué)與工程學(xué)院,廣東廣州 510640)

1 引言

在生物界中,狼的個(gè)體力量并不強(qiáng)大,然而狼群作為一個(gè)群體卻是優(yōu)秀的狩獵者.狼群的合作狩獵過程[1–3]充分體現(xiàn)了在個(gè)體自主決策前提下協(xié)同圍捕對于集群的意義,引起了廣泛的關(guān)注.因此,群機(jī)器人圍捕問題也成為了當(dāng)前機(jī)器人相關(guān)研究的熱點(diǎn).

近幾十年來,群機(jī)器人圍捕問題得到了持續(xù)的研究[4–10],代表性工作如下.Yamaguchi[11–13]通過設(shè)計(jì)一種反饋控制律來控制群機(jī)器人對目標(biāo)形成圍捕隊(duì)形.為使機(jī)器人在形成圍捕隊(duì)形的同時(shí)能自主地避免互撞;LIANG Zeng等人[14]設(shè)計(jì)了基于人工物理力的圍捕方法,目標(biāo)對機(jī)器人個(gè)體產(chǎn)生吸引力,其他同伴對機(jī)器人個(gè)體產(chǎn)生斥力,在人工力的作用下機(jī)器人群完成圍捕;黃天云等人[15]通過建立基于松散偏好的運(yùn)動(dòng)規(guī)則來促使個(gè)體自主選擇正確的路徑組成同伴間保持一定距離避免互撞的圍捕隊(duì)形;張紅強(qiáng)等人[16–18]提出了基于簡化虛擬受力模型的循障和圍捕方法,使群機(jī)器人在未知復(fù)雜環(huán)境下能保持兼顧圍捕和避障的隊(duì)形;RU Xinfeng等人[19]將估計(jì)目標(biāo)信息、個(gè)體間通信等實(shí)際因素考慮進(jìn)來,采用多假設(shè)跟蹤法從復(fù)雜環(huán)境中獲取對目標(biāo)位置和速度的估計(jì),然后基于系統(tǒng)共識(shí)理論和多智能體通信拓?fù)涞目刂扑惴ㄔO(shè)計(jì),形成并維持隊(duì)形圍捕動(dòng)態(tài)目標(biāo);針對多目標(biāo)的情況,CHEN Mingzhi等人[20]結(jié)合Glasius啟發(fā)式神經(jīng)網(wǎng)絡(luò)和置信函數(shù)方法為狩獵機(jī)器人進(jìn)行路徑規(guī)劃,并提出一種用于建立動(dòng)態(tài)狩獵聯(lián)盟的時(shí)間競爭機(jī)制實(shí)現(xiàn)多目標(biāo)的任務(wù)分配.另外,曹志強(qiáng)等人[21–29]針對未知環(huán)境下的圍捕任務(wù)提出了由搜索、繞障和圍捕3個(gè)狀態(tài)組成的狀態(tài)轉(zhuǎn)移模型,通過不同條件下狀態(tài)間的轉(zhuǎn)移來完成圍捕任務(wù).

然而,這些模型都有不足之處.Yamaguchi的方法[11–13]需要始終將機(jī)器人間的關(guān)系確定為一張強(qiáng)連接圖,即群機(jī)器人的隊(duì)形序次是固定的,這樣雖能確保隊(duì)形穩(wěn)定,但降低了群機(jī)器人執(zhí)行圍捕任務(wù)的靈活性和魯棒性;LIANG Zeng等人的基于人工物理力圍捕方法[14]和張紅強(qiáng)等人的基于簡化虛擬受力模型[16–18]的圍捕方法對機(jī)器人個(gè)體的感知范圍都沒有限制.此外,LIANG Zeng等人的基于人工物理力圍捕方法[14]、黃天云等人的基于松散偏好規(guī)則的模型[15]以及RU Xinfeng等人的聯(lián)合跟蹤與搜尋算法[19]沒有考慮個(gè)體避障;張紅強(qiáng)等人的基于簡化虛擬受力模型[16–18]的避障方式是在判斷障礙物為非凸障礙物或凸障礙物后給出相應(yīng)的前進(jìn)方向偏轉(zhuǎn)角,讓個(gè)體在原地旋轉(zhuǎn)到期望角度后再繼續(xù)運(yùn)動(dòng),避障的效率不高;CHEN Mingzhi等人采用的路徑規(guī)劃方法[20]需要地圖信息來建立柵格化地圖,選擇網(wǎng)絡(luò)激活值最大點(diǎn)作為下一步目標(biāo);曹志強(qiáng)等人的狀態(tài)轉(zhuǎn)移模型[21–29]依賴于個(gè)體上數(shù)量較多的均勻排列的傳感器來確定目標(biāo)或同伴所在的方向.

上述模型都不能完全解決機(jī)器人個(gè)體感知范圍受限、不具有避障能力或避障效率低、地圖信息未知、無法使用集中控制器等問題.針對群機(jī)器人圍捕過程中存在的上述難題,本文依據(jù)群機(jī)器人自主圍捕任務(wù)的要求和自主決策機(jī)器人的運(yùn)動(dòng)特性,為感知范圍受限的個(gè)體設(shè)計(jì)了基于簡化虛擬速度的圍捕和基于航向的避障控制律.

本文所提出方法的貢獻(xiàn)主要有以下3點(diǎn):

1) 在本文設(shè)計(jì)的控制律下,群機(jī)器人能夠在沒有集中控制器的情況下自主決策完成圍捕任務(wù),若群機(jī)器人中有一部分機(jī)器人出現(xiàn)故障,另一部分機(jī)器人仍能完成圍捕任務(wù);

2) 本文設(shè)計(jì)的控制律保證了機(jī)器人個(gè)體在追擊和圍捕目標(biāo)的同時(shí)能保持松散的隊(duì)形避免互撞,且能通過調(diào)整速度方向繞過障礙物,避免斥力避障容易出現(xiàn)的死鎖問題;

3) 集群中機(jī)器人個(gè)體只能利用感知范圍內(nèi)的信息做出決策,本文針對部分個(gè)體觀察不到目標(biāo)的情況也做了相應(yīng)的算法設(shè)計(jì),更符合實(shí)際情況.

最后,本文通過仿真驗(yàn)證了所提出方法的可行性和有效性,并與其他方法進(jìn)行了對比分析,相比它們本文提出的控制律能實(shí)現(xiàn)更快地圍捕.

2 系統(tǒng)模型與任務(wù)描述

2.1 模型

本文考慮的系統(tǒng)包含由n(n≥5)個(gè)同質(zhì)的機(jī)器人組成的圍捕群,1個(gè)被圍捕目標(biāo),m1個(gè)移動(dòng)障礙物,m2個(gè)固定障礙物.為方便描述,設(shè)全局坐標(biāo)系為xOy.

考慮機(jī)器人R={ri|i=1,2,···,n},各機(jī)器人位置為W={pi ∈R2|i=1,2,···,n},其中pi=[xi yi]T∈R2是第i個(gè)機(jī)器人在xOy坐標(biāo)系中的坐標(biāo),機(jī)器人個(gè)體ri的運(yùn)動(dòng)學(xué)方程為

其中vi[t]=[vix[t]viy[t]]T∈R2是機(jī)器人ri在t時(shí)刻的速度.機(jī)器人個(gè)體的速度有邊界限制‖vi[t]‖≤vmax,其中vmax是最大速度.

個(gè)體ri的感知半徑均為rw,具有以下能力:

1) 個(gè)體能夠發(fā)現(xiàn)并識(shí)別以自身坐標(biāo)pi為圓心,以rw為半徑的感知范圍內(nèi)的目標(biāo)、同伴或障礙物;

2) 對在個(gè)體感知范圍內(nèi)的目標(biāo)、同伴或障礙物,個(gè)體能夠獲取其相對位置信息(包括方向和距離);

3) 個(gè)體之間可以全局通信.

考慮移動(dòng)障礙物坐標(biāo)為Om={pmoi ∈R2|i=1,2,···,m1},固定障礙物坐標(biāo)為Of={pfoi ∈R2|i=1,2,···,m2}.固定障礙物的位置不會(huì)變化,移動(dòng)障礙物的運(yùn)動(dòng)學(xué)方程為

其中vmoi[t]=[vmoix[t]vmoiy[t]]T∈R2是移動(dòng)障礙物pmoi在t時(shí)刻的速度.

機(jī)器人個(gè)體或目標(biāo)與障礙物的距離小于da1時(shí)進(jìn)入避障模式,與障礙物距離小于da2時(shí)進(jìn)入緊急避障模式.

考慮目標(biāo)p0=[x0y0]T∈R2,則其運(yùn)動(dòng)學(xué)方程為

其中v0[t]=(v0x[t]v0y[t])T∈R2是目標(biāo)t時(shí)刻速度.

目標(biāo)的觀察距離為rs,目標(biāo)開始受到攻擊的半徑為rd,個(gè)體對目標(biāo)的包圍半徑為rh.

目標(biāo)的運(yùn)動(dòng)狀態(tài)主要包含漫步、逃離、死亡3個(gè),在不同條件下切換狀態(tài).目標(biāo)的速度如下:

其中:

1) min‖pi ?p0‖≤rs,pi ∈W首次成立,即首次有個(gè)體進(jìn)入目標(biāo)的觀察半徑時(shí),記該時(shí)刻為tob;

2)A={pi ∈W‖pi ?p0‖≤rd}為已在攻擊目標(biāo)的機(jī)器人個(gè)體的坐標(biāo)集合;

3)B={pi ∈W‖pi ?p0‖≤rs}為進(jìn)入目標(biāo)觀察范圍的機(jī)器人個(gè)體的坐標(biāo)集合;

4)C={pobs∈(Of∪Om)‖pobs?p0‖≤da1}為進(jìn)入目標(biāo)避障范圍的固定障礙物或移動(dòng)障礙物的坐標(biāo)集合;

5)D={pobs∈(Of∪Om)‖pobs?p0‖≤da2}為進(jìn)入目標(biāo)緊急避障范圍的固定障礙物或移動(dòng)障礙物的坐標(biāo)集合;

6) Card(A)表示A集合中元素的數(shù)量.M表示完成圍捕任務(wù)所需進(jìn)入攻擊目標(biāo)狀態(tài)的個(gè)體數(shù)量,設(shè)置為4.

目標(biāo)速度的決策樹如圖1所示.

圖1 v0[t]分支Fig.1 The branch of v0[t]

目標(biāo)在漫步狀態(tài)下速度為v0A[t],由于此時(shí)目標(biāo)的觀察范圍內(nèi)尚未出現(xiàn)過機(jī)器人個(gè)體,故設(shè)計(jì)其漫步速度為

即目標(biāo)的漫步速度服從以自身為原點(diǎn)的二維坐標(biāo)系上的均勻分布.

當(dāng)目標(biāo)已發(fā)現(xiàn)個(gè)體,即t≥tob時(shí),則目標(biāo)進(jìn)入逃離狀態(tài),運(yùn)動(dòng)速度設(shè)計(jì)為

其中τ為隨時(shí)間變化的速率系數(shù),其函數(shù)如下

式(6)表示機(jī)器人個(gè)體首次進(jìn)入目標(biāo)觀察范圍后在目標(biāo)能觀察到個(gè)體的條件下目標(biāo)的逃離速度.式(7)表示機(jī)器人個(gè)體進(jìn)入過目標(biāo)的觀察范圍后,暫時(shí)脫離了目標(biāo)的觀察范圍的情況下目標(biāo)會(huì)保持上一步的速度繼續(xù)逃離.

式(8)表示目標(biāo)進(jìn)入逃離狀態(tài)后其運(yùn)動(dòng)速度會(huì)快速上升,保持極限速度一段時(shí)間后目標(biāo)體力耗竭,逃離速度逐漸下降到極限速度的二分之一.目標(biāo)的極限速度高于機(jī)器人個(gè)體ri的速度,但其極限速度的二分之一小于機(jī)器人個(gè)體ri的速度.τ(t)的函數(shù)圖像如圖2所示.

圖2 τ(t)函數(shù)Fig.2 τ(t)

當(dāng)有4只或4只以上的機(jī)器人個(gè)體包圍了目標(biāo)并收斂到距離rd以內(nèi),即Card(A)≥M時(shí),目標(biāo)進(jìn)入死亡狀態(tài),會(huì)失去行動(dòng)能力,不再進(jìn)行任何運(yùn)動(dòng),同樣也不具有繞障和避障能力.

目標(biāo)避障原理與個(gè)體相同,具體見第3.3節(jié).

式(4)囊括了目標(biāo)在各種情況下的速度,其速度根據(jù)實(shí)際情況也應(yīng)有上限,此處令‖v0[t]‖≤vmax.

一般而言,有da2

2.2 任務(wù)描述

本文考慮的圍捕任務(wù)是在沒有邊界的場地中,n個(gè)機(jī)器人個(gè)體在自主的控制律下避開m1個(gè)移動(dòng)障礙物和m2個(gè)固定障礙物并追擊1個(gè)目標(biāo),最終對目標(biāo)形成以目標(biāo)為圓心,以給定長度為半徑的圓形包圍圈.

由于機(jī)器人的特性,假設(shè)如下:

在系統(tǒng)滿足以上假設(shè)的條件下,如圖3,以pi為原點(diǎn),pi與p0連線為y′軸建立x′O′y′坐標(biāo)系.

圖3 簡化虛擬速度模型Fig.3 Simplified virtual velocity model

機(jī)器人個(gè)體ri與其預(yù)測的目標(biāo)的距離為dti[t]=‖pi[t]?(p0[t]+ηv0[t ?1])‖,其中η為預(yù)估系數(shù).則整個(gè)系統(tǒng)的偏差對個(gè)體ri可以分解為收斂點(diǎn)距離偏差δ1i[t]=dti[t]?rh和兩最近鄰?fù)榈牡染嗥瞀?i[t]=dpi[t]cosθpi[t]+dqi[t]cosθqi[t],其 中dpi[t]=‖pi[t]?ppi[t]‖是機(jī)器人個(gè)體ri與其次近同伴rp在t時(shí)刻的距離,dqi[t]=‖pi[t]?pqi[t]‖是機(jī)器人個(gè)體ri與其最近同伴rq在t時(shí)刻的距離,θpi[t]是t時(shí)刻在x′O′y′坐標(biāo)系中v2fpi與x′軸的夾角,角度值從x′軸的0開始,順時(shí)針增長,θqi[t]同理.

本文所考慮的圍捕任務(wù)可描述如下:給定第2.1節(jié)中的系統(tǒng),設(shè)計(jì)控制律vi[t],使得對?ri ∈R,有δ1i →0,δ2i →0.

以上圍捕任務(wù)完成的效果是:機(jī)器人個(gè)體均勻分布在以rh為半徑,以p0為圓心的包圍圓周上,如圖4所示.

圖4 圍捕結(jié)果示意Fig.4 The result of hunting task

3 自主圍捕算法設(shè)計(jì)

機(jī)器人個(gè)體的速度設(shè)計(jì)為由以下部分組成:前進(jìn)速度、個(gè)體之間的互斥、基于航向的避障、緊急避障機(jī)制.具體如下:

其中:vi1[t]是前進(jìn)速度,vi2[t]是個(gè)體間的互斥速度,via1[t]是個(gè)體基于航向的避障速度,via2[t]是個(gè)體的緊急避障速度,E={pobs∈(Of∪Om)‖pobs?pi‖≤da1}表示已進(jìn)入個(gè)體避障距離的障礙物集合,F={pobs∈(Of∪Om)‖pobs?pi‖≤da2}表示已進(jìn)入個(gè)體緊急避障距離的障礙物集合.

3.1 個(gè)體前進(jìn)速度

在個(gè)體的坐標(biāo)系Σi中,機(jī)器人個(gè)體的前進(jìn)速度設(shè)計(jì)為

其中pi,pj ∈W,pj是離pi最近的能觀察到目標(biāo)的個(gè)體的坐標(biāo).

當(dāng)目標(biāo)在個(gè)體ri的觀察范圍內(nèi),即dti≤rw時(shí),(dti[t]?rh)在dti >rh時(shí)為正,dti rw時(shí),個(gè)體ri會(huì)跟隨離自己最近的能觀察到目標(biāo)的個(gè)體rj前進(jìn).

3.2 個(gè)體之間的互斥

若與個(gè)體ri距離最短的兩個(gè)同伴rp和rq都在ri的觀察范圍內(nèi),則機(jī)器人個(gè)體ri通過檢測可以確定離它最近的兩個(gè)同伴rp和rq的相對位置,令這兩個(gè)同伴與該個(gè)體的距離分別為dpi和dqi,則若該個(gè)體受到的是同伴的直接排斥速度,參考人工勢場法[30–31]設(shè)計(jì)在Σi中的排斥速度為

但這樣的排斥速度會(huì)阻礙該個(gè)體向目標(biāo)方向的前進(jìn),因此簡化虛擬速度模型[16–18]只保留該排斥速度在當(dāng)前個(gè)體與目標(biāo)連線垂直的方向上的投影分速度.該個(gè)體在Σi中的排斥速度設(shè)計(jì)為

其 中:‖v2pi[t]‖=‖v2fpi[t]‖cosθpi[t],‖v2qi[t]‖=‖v2fqi[t]‖cosθqi[t],方向同上.這樣設(shè)計(jì)的運(yùn)動(dòng)速度會(huì)使個(gè)體移向使得最近兩同伴在該個(gè)體與目標(biāo)連線兩側(cè),且它們到該個(gè)體與目標(biāo)連線的距離相等的位置.

3.3 避障機(jī)制

如圖5所示,為方便解釋避障機(jī)制,以個(gè)體坐標(biāo)pi為原點(diǎn),以pi與最近障礙物pobs∈(Of∪Om)的連線為x軸建立xpiy坐標(biāo)系,那么個(gè)體的速度vi的方向即航向ψvi和障礙物連線方向ψo(hù)i的夾角為x=ψvi?ψo(hù)i.

圖5 個(gè)體航向與障礙物連線的夾角x=ψvi ?ψo(hù)iFig.5 The angle between heading of the wolf and the obstacle

為達(dá)到個(gè)體速度方向偏離障礙物所在方位的目的,設(shè)計(jì)個(gè)體航向ψvi的變化量?ψvi為

圖6 Δψvi(x)函數(shù),x=ψvi ?ψo(hù)iFig.6 Δψvi(x),x=ψvi ?ψo(hù)i

設(shè)計(jì)?ψvi(x)函數(shù)的目的是使得個(gè)體的航向和自身與障礙物連線夾角在內(nèi)時(shí),個(gè)體的前進(jìn)方向朝圖5中的逆時(shí)針方向偏轉(zhuǎn);而個(gè)體的航向和自身與障礙物連線夾角在[,2π)內(nèi)時(shí),個(gè)體的前進(jìn)方向朝圖5中的順時(shí)針方向偏轉(zhuǎn).?ψvi(x)函數(shù)中含有的項(xiàng)使得個(gè)體的前進(jìn)速度越快時(shí),其為避開障礙物而進(jìn)行的前進(jìn)方向變化也更快.

對t時(shí)刻滿足E≠?,F=?的個(gè)體ri,設(shè)計(jì)其在Σi中的基于航向的避障速度[32]為

此外,在坐標(biāo)系中Σi中,對于個(gè)體ri,若其與任意障礙物的距離在緊急避障距離內(nèi),即F≠?,則其會(huì)立即將自己的運(yùn)動(dòng)速度調(diào)整為排斥速度,設(shè)計(jì)此情況下個(gè)體的速度為

目標(biāo)基于航向的避障和緊急避障原理與個(gè)體相同,其基于航向的避障速度為

假定t時(shí)刻障礙物坐標(biāo)為pobs[t],上一時(shí)刻移動(dòng)障礙物的速度為vobs[t ?1],目標(biāo)到預(yù)測障礙物的向量為dot[t]=pobs[t]+vobs[t ?1]?p0[t],距離為dot[t]=‖dot[t]‖,那么目標(biāo)的緊急避障速度為

3.4 圍捕算法步驟

根據(jù)本節(jié)設(shè)計(jì)的群機(jī)器人自主圍捕算法以及第2.1節(jié)提出的目標(biāo)的運(yùn)動(dòng)規(guī)則,所提出的群機(jī)器人的圍捕算法流程圖如圖7所示.

圖7 圍捕算法流程圖Fig.7 The flow chart of hunt algorithm

4 穩(wěn)定性分析

本文利用了文獻(xiàn)[16]中的方法,證明了簡化虛擬速度模型的穩(wěn)定性.系統(tǒng)最后收斂于群機(jī)器人均勻分布在以設(shè)定長度為半徑,以目標(biāo)為圓心的包圍圓上.因此,要使整個(gè)群機(jī)器人自主圍捕系統(tǒng)穩(wěn)定,只需滿足δ1i →0,δ2i →0.

由于dpi[t]=‖pi[t]?pp[t]‖,dqi[t]=‖pi[t]?pq[t]‖,系統(tǒng)偏差如下:

基于簡化虛擬速度模型,不考慮機(jī)器人本身運(yùn)動(dòng)特性和物理?xiàng)l件的限制,每一步時(shí)按照圖3中以自身為原點(diǎn)建立x′Oy′坐標(biāo)系,則x′軸上的分速度vix′[t]和y′軸上的分速度viy′[t]如下:

其中ta為所有個(gè)體均觀察到目標(biāo)的時(shí)刻,故得個(gè)體的自主運(yùn)動(dòng)偏差方程:

將式(27)代入式(28),當(dāng)t>ta時(shí),可得:

由0<μ1<2可知?V1(?1[t])負(fù)定,且當(dāng)‖?1[t]‖→∞時(shí),V1(?1[t])→∞.故由離散系統(tǒng)的Lyapunov穩(wěn)定性定理可知:系統(tǒng)原點(diǎn)平衡狀態(tài)?1[t]=0為大范圍漸近穩(wěn)定,0<μ1<2是其一充分條件.

由以上證明可知,群機(jī)器人最終將收斂到以rh為半徑,目標(biāo)為圓心的圓上.接下來只需再證式(29)的收斂性,即可保證群機(jī)器人最終能保持均勻分布的隊(duì)形.

將式(26)代入式(29),得:

因?yàn)樵诎鼑鷪A周上每一個(gè)個(gè)體的vix′[t]=0時(shí),僅當(dāng)該個(gè)體位于受力平衡點(diǎn)上,尤其是每個(gè)個(gè)體均以左右兩近鄰?fù)樽鳛樽罱彆r(shí),vix′[t]總會(huì)消除δ2i[t]使該個(gè)體與左右兩近鄰?fù)樵趚′軸上的投影距離相等,且β >0,故δ2i[t]與vix′[t]符號(hào)一致,因此有:

假定λ在t1時(shí)刻為最大值,即λ=maxλi[t],若t1時(shí)刻的λi[t]并非λ最大值,則最遲在t1+?t時(shí)刻得到λ最大值.令t2=t1+?t,則有λ=maxλi[t].由于0<λ<2,?V2(?2[t])負(fù)定,且當(dāng)‖?2[t]‖→∞時(shí),有V2(?2[t]))→∞.則可根據(jù)離散系統(tǒng)Lyapunov穩(wěn)定性定理推得:原點(diǎn)平衡狀態(tài)?2[t]=0為大范圍漸近穩(wěn)定,0<λ<2是其一充分條件.

由以上證明可知,系統(tǒng)最終能收斂到群機(jī)器人在以rh為半徑,目標(biāo)為圓心的圓上均勻分布的情況下.在仿真中,本文加入了對個(gè)體和目標(biāo)速度以及加速度的限制,但這只會(huì)影響收斂的速度,不會(huì)影響最終的收斂結(jié)果.

5 仿真過程及結(jié)果

在仿真中,各參數(shù)的數(shù)值如下:n=5,da1=2,da2=0.5,rd=0.8,rs=4,rw=6,μ1=0.56,μ2=1.2,β=0.16,σ=0.36,vmax=0.35,vwd=0.08.

5.1 無障礙物環(huán)境下的仿真

本文采用Python對無障礙物環(huán)境下的群機(jī)器人圍捕進(jìn)行仿真,結(jié)果如圖8所示.圖中紅色菱形表示目標(biāo),灰色菱形表示機(jī)器人個(gè)體預(yù)測的目標(biāo)位置,其余各色五角星表示個(gè)體.藍(lán)色虛線圓代表機(jī)器人個(gè)體的觀察半徑,紅色虛線圓代表目標(biāo)的觀察半徑,紅色實(shí)線圓表示目標(biāo)開始受到機(jī)器人個(gè)體攻擊的半徑,箭頭表示速度方向.

圖8 無障礙物環(huán)境下群機(jī)器人自主圍捕Python仿真Fig.8 Python simulation of autonomous hunting of swarm robots in the scene without obstacles

圖8(a)是機(jī)器人各個(gè)體和目標(biāo)的初始位置,在開始前,只有一個(gè)個(gè)體能直接觀察到目標(biāo),同時(shí)沒有一個(gè)個(gè)體在目標(biāo)的觀察范圍內(nèi),因此隨后目標(biāo)將做隨機(jī)運(yùn)動(dòng)直至發(fā)現(xiàn)任一個(gè)體,其他未發(fā)現(xiàn)目標(biāo)的個(gè)體會(huì)跟隨已發(fā)現(xiàn)目標(biāo)的最近個(gè)體前進(jìn);

圖8(b)中,機(jī)器人群已開始追擊目標(biāo),已經(jīng)有兩個(gè)個(gè)體進(jìn)入了目標(biāo)的觀察范圍,因此目標(biāo)立即向個(gè)體反方向逃離,以避免被包圍;

圖8(c)表示,在一段時(shí)間的追擊后,目標(biāo)的體力有所消耗,逃離速度逐漸從極限速度滑落下來,因此機(jī)器人群逐漸追上了目標(biāo),并開始從側(cè)面包抄目標(biāo);

圖8(d)中,機(jī)器人群已以均勻分布的圓形隊(duì)伍包圍了目標(biāo),使其失去行動(dòng)能力.

仿真過程中5個(gè)個(gè)體的目標(biāo)距離偏差δ1i和兩最近同伴等距偏差δ2i變化如圖9所示.

圖9 系統(tǒng)偏差收斂曲線Fig.9 System deviation convergence curve

由圖9(a)可知,仿真中各個(gè)體的目標(biāo)距離偏差在初始階段下降很快,隨著獵物逐漸加速,在25步到125步間各個(gè)體的目標(biāo)距離偏差下降速度減緩,之后目標(biāo)體力耗竭,逃跑速度下降,群機(jī)器人對目標(biāo)逐漸形成合圍,目標(biāo)距離偏差δ1i最終均趨于0.圖9(b)說明,仿真中各個(gè)體的兩最近同伴等距偏差δ2i最終均趨于0.

5.2 有障礙物環(huán)境下的仿真

本節(jié)中m1=1,m2=1.固定障礙物的坐標(biāo)為[?1 4]T,移動(dòng)障礙物的初始坐標(biāo)為[?9 4]T,移動(dòng)障礙物的速度設(shè)計(jì)為:

其中vmob=0.125.

式(36)表示移動(dòng)障礙物做勻速率往返直線運(yùn)動(dòng).

本文用Python仿真得到的有障礙物環(huán)境下的群機(jī)器人圍捕仿真結(jié)果如圖10所示.圖中紅色菱形表示目標(biāo),灰色菱形表示機(jī)器人個(gè)體預(yù)測的目標(biāo)位置,其余各色五角星表示個(gè)體,兩個(gè)黑色實(shí)心圓表示障礙物,其中左邊的是移動(dòng)障礙物,右邊的是固定障礙物.藍(lán)色虛線圓代表機(jī)器人個(gè)體的觀察半徑,紅色虛線圓代表目標(biāo)的觀察半徑,紅色實(shí)線圓表示目標(biāo)開始受到機(jī)器人個(gè)體攻擊的半徑,箭頭表示速度方向.

圖10(a)表示機(jī)器人群和目標(biāo)的初始位置,此時(shí)僅有一個(gè)個(gè)體能觀察到目標(biāo),目標(biāo)尚觀察不到任何一個(gè)個(gè)體,因此在開始階段,能觀察到目標(biāo)的個(gè)體會(huì)往目標(biāo)方向運(yùn)動(dòng),其他個(gè)體會(huì)跟隨這個(gè)能觀察到目標(biāo)的個(gè)體直到自己也能觀察到目標(biāo),同時(shí)目標(biāo)在二維空間中做隨機(jī)運(yùn)動(dòng);

圖10(b)表示圍捕開始后的一段時(shí)間,有3個(gè)個(gè)體發(fā)現(xiàn)了目標(biāo)并向其追擊,其他個(gè)體繼續(xù)跟蹤已發(fā)現(xiàn)了目標(biāo)的最近同伴,同時(shí)目標(biāo)已經(jīng)發(fā)現(xiàn)了機(jī)器人個(gè)體,于是往背離已發(fā)現(xiàn)的個(gè)體的方向逃去;

圖10(c)中,目標(biāo)成功地穿過了兩個(gè)障礙物的間隙,但隨后移動(dòng)障礙物和固定障礙物間的距離縮短了,追擊的個(gè)體遇到了障礙物的阻攔,必須設(shè)法繞開障礙物;

圖10(d)主要表現(xiàn)了機(jī)器人群的繞障過程,根據(jù)第3.3節(jié)中的基于航向的避障算法,機(jī)器人會(huì)使其速度方向偏離障礙物所在方位直至自身速度與障礙物所在方向夾角達(dá)到,從而保證個(gè)體不會(huì)與障礙物相撞;

圖10(e)中,機(jī)器人群正在從側(cè)面包抄目標(biāo),以達(dá)到最后將目標(biāo)圍住的目的;

圖10(f)表示此時(shí)機(jī)器人群已經(jīng)在以目標(biāo)為圓心的圍捕圓上完全包圍了目標(biāo),并保持均勻分布,使目標(biāo)失去了行動(dòng)能力.

圖10 有障礙物環(huán)境下群機(jī)器人自主圍捕Python仿真Fig.10 Python simulation of autonomous hunting of swarm robots in the scene with obstacles

此外,本文基于ROS的Gazebo平臺(tái)對有障礙物環(huán)境下群機(jī)器人的自主圍捕進(jìn)行仿真,采用四驅(qū)小車作為基本的個(gè)體和目標(biāo)模型,對前文提出的有障礙物環(huán)境下的群機(jī)器人圍捕算法進(jìn)行驗(yàn)證.

四驅(qū)小車模型的運(yùn)動(dòng)特性是輪子方向固定朝前,且不能橫向移動(dòng),小車采用差速控制方式,4個(gè)驅(qū)動(dòng)輪分成左右兩組進(jìn)行控制.個(gè)體和目標(biāo)的運(yùn)動(dòng)學(xué)限制相同,最大線速度為2 m/s,最大線加速度為5 m/s2,最大角速度為2.5 rad/s,最大角加速度為6 rad/s2.仿真結(jié)果如圖11所示,圖中黃色輪子的小車為個(gè)體,紅色輪子的小車為目標(biāo),路障模型為障礙物,其中一個(gè)可以移動(dòng),一個(gè)固定不動(dòng).

個(gè)體和目標(biāo)的初始位置如圖11(a)所示.仿真開始后,個(gè)體先繞過移動(dòng)障礙物和固定障礙物,如圖11(b).圖11(c)中,機(jī)器人群從左右兩側(cè)包抄目標(biāo).到第130步時(shí),機(jī)器人群已完全包圍了目標(biāo),如圖11(d).

圖11 有障礙物環(huán)境下群機(jī)器人自主圍捕ROS仿真Fig.11 ROS simulation of autonomous hunting of swarm robots in the scene with obstacles

相比于Python仿真中個(gè)體和目標(biāo)采用的質(zhì)點(diǎn)模型,ROS仿真中采用的小車模型在避障時(shí)需要漸進(jìn)地調(diào)整車頭方向直至完成繞障,速度方向不能突變,更接近基于物理平臺(tái)的實(shí)驗(yàn).

在控制其他條件不變的前提下,本文用有不同角速度上限的小車模型對機(jī)器人個(gè)體的繞障過程進(jìn)行ROS仿真,得到實(shí)驗(yàn)結(jié)果如圖12所示.

圖12 不同角速度上限的機(jī)器人完成避障所需時(shí)間Fig.12 The time required for the robot with different angular velocity upper limits to complete obstacle avoidance

圖12中,橫軸是小車的角速度上限wmax,縱軸是同一個(gè)體繞過障礙物耗費(fèi)的步數(shù)tavoid.圖12說明,在一定范圍內(nèi),個(gè)體和目標(biāo)在ROS仿真中采用的小車模型的角速度上限wmax越大,其車頭方向越靈活,繞過障礙物所需要的時(shí)間tavoid越短.

5.3 系統(tǒng)抗風(fēng)險(xiǎn)性測試仿真

本節(jié)中m1=5,m2=5.固定障礙物和移動(dòng)障礙物的坐標(biāo)隨機(jī)初始化.移動(dòng)障礙物的速度設(shè)計(jì)為

其中vrd=0.15.

式(37)表明本節(jié)中移動(dòng)障礙物做隨機(jī)運(yùn)動(dòng).

由于本文采用的控制算法為自主圍捕算法,算法的計(jì)算過程應(yīng)在個(gè)體上完成,不需要集中式的控制,因此部分個(gè)體出現(xiàn)故障時(shí)整個(gè)圍捕過程仍可以正常完成.本文用Python仿真模擬了部分機(jī)器人故障的情況,結(jié)果如圖13所示.圖中各元素含義同第5.2節(jié).

圖13(a)是機(jī)器人群和目標(biāo)的初始位置;圖13(b)中,個(gè)體r3于該時(shí)刻發(fā)生故障,失去了行動(dòng)能力;圖13(c)表示在個(gè)體r3發(fā)生故障后,其他個(gè)體仍能繼續(xù)追擊目標(biāo);圖13(d)表示在缺少個(gè)體r3的情況下其他機(jī)器人仍然正常完成了圍捕.

圖13 有障礙物環(huán)境下部分機(jī)器人故障Python仿真Fig.13 Python simulation of partial robot failures in the scene with obstacles

對于部分機(jī)器人故障的情況,本文同樣采用基于ROS的Gazebo平臺(tái)進(jìn)行了仿真,對系統(tǒng)的抗風(fēng)險(xiǎn)性進(jìn)行驗(yàn)證.小車的運(yùn)動(dòng)特性同上節(jié).仿真結(jié)果如圖14所示.

圖14(a)中機(jī)器人群正在包抄目標(biāo)時(shí),紅圈所示機(jī)器人發(fā)生了故障,失去移動(dòng)能力,但其他機(jī)器人仍正常完成對目標(biāo)的圍捕,形成完整的包圍圈,如圖14(b)所示.

圖14 有障礙物環(huán)境下部分機(jī)器人故障ROS仿真Fig.14 ROS simulation of partial robot failures in the scene with obstacles

以上的仿真結(jié)果驗(yàn)證了分布式控制算法的抗風(fēng)險(xiǎn)性,個(gè)體通過觀察環(huán)境,包括同伴、目標(biāo)、障礙物等后做出決策并執(zhí)行,部分機(jī)器人發(fā)生故障并不影響其他機(jī)器人繼續(xù)執(zhí)行自主圍捕算法.

5.4 與其他方法的對比分析

5.4.1 與文獻(xiàn)[11–13]的反饋控制律對比

1) 文獻(xiàn)[11–13]采用固定各個(gè)體的強(qiáng)連接關(guān)系的方法,來保證各個(gè)個(gè)體間保持一定的相對位置,從而實(shí)現(xiàn)穩(wěn)定的隊(duì)形.因此隊(duì)形的頭和尾都是在實(shí)驗(yàn)開始前就確定好的,不能動(dòng)態(tài)變化.這樣的方法雖然簡單直觀,但是在實(shí)驗(yàn)中個(gè)體無法根據(jù)當(dāng)前情況就近選擇目標(biāo)圍捕圓周上的位置,降低了圍捕的效率;

2) 文獻(xiàn)[11–13]的模型中目標(biāo)是固定不動(dòng)的,因此任務(wù)難度相對于本文的圍捕任務(wù)要更為簡單.

5.4.2 與文獻(xiàn)[21–29]的狀態(tài)轉(zhuǎn)移模型對比

文獻(xiàn)[21–29]的狀態(tài)轉(zhuǎn)移模型中的圍捕狀態(tài)需要確定圍捕圓周上的包圍點(diǎn),并將群機(jī)器人分配到這些預(yù)測的包圍點(diǎn)上,使它們分別向期望的包圍點(diǎn)移動(dòng)直至形成包圍圈.而本文不需要預(yù)定包圍點(diǎn),機(jī)器人會(huì)根據(jù)當(dāng)前時(shí)刻的環(huán)境就近選擇合適的包圍點(diǎn),每一次實(shí)驗(yàn)中個(gè)體在包圍隊(duì)形中的位置都可能不同.

5.4.3 與松散偏好規(guī)則方法[15]的對比

1) 基于簡化虛擬速度的模型相比于松散偏好規(guī)則的模型要簡潔直觀很多,同時(shí)在實(shí)現(xiàn)圍捕和避免個(gè)體間相撞上能達(dá)到相近的有效性;

2) 基于松散偏好規(guī)則的群機(jī)器人圍捕算法中缺少避障的相關(guān)算法,本文中針對障礙物設(shè)計(jì)了基于航向的避障和排斥速度共同作用的避障方法,能夠?qū)崿F(xiàn)高效地繞過障礙物追捕目標(biāo),避免直接使用斥力或排斥速度來進(jìn)行避障會(huì)導(dǎo)致的“死鎖”問題.

5.4.4 與簡化虛擬受力模型[16–18]的對比

1) 基于簡化虛擬受力模型的圍捕算法中,必須獲取相鄰兩同伴的相對位置來給出最近鄰兩同伴的斥力投影,而在本文中每個(gè)個(gè)體都具有感知范圍的限制,最近鄰的兩個(gè)同伴只有在當(dāng)前個(gè)體的感知范圍內(nèi)才能提供排斥速度,使得圍捕個(gè)體在向目標(biāo)方向前進(jìn)的同時(shí),保持分散的隊(duì)形避免互撞;

2) 在基于簡化虛擬受力模型的圍捕算法中,通過判斷障礙物是否為凸障礙物來給定循障的算法,若障礙物為非凸障礙物,則讓個(gè)體的前進(jìn)方向偏轉(zhuǎn);若障礙物為凸障礙物,則讓個(gè)體的前進(jìn)方向偏轉(zhuǎn).這樣要求機(jī)器人在原地停下進(jìn)行大幅度的前進(jìn)方向調(diào)整需要花費(fèi)比較長的時(shí)間.本文提出的基于航向的避障方法,使得個(gè)體能在繞障過程中保持前進(jìn)速度并連續(xù)漸進(jìn)地調(diào)整前進(jìn)方向直至其不會(huì)與障礙物發(fā)生碰撞,提高了避障的效率,減少避障過程消耗的時(shí)間.

6 結(jié)論

本文針對未知復(fù)雜環(huán)境下具有感知范圍限制的群機(jī)器人自主圍捕任務(wù),提出了基于簡化虛擬速度和基于航向避障的自主圍捕算法.本文首先建立了簡化虛擬速度的模型,在該模型的基礎(chǔ)上實(shí)現(xiàn)了機(jī)器人個(gè)體間的避撞,其次利用基于航向的避障方法和排斥速度相結(jié)合,實(shí)現(xiàn)了高效的避障,最后本文利用仿真驗(yàn)證了該算法對不同情況的適應(yīng)性和有效性.

猜你喜歡
障礙物同伴個(gè)體
紅薯會(huì)給同伴報(bào)警
專題·同伴互助學(xué)習(xí)
高低翻越
趕飛機(jī)
關(guān)注個(gè)體防護(hù)裝備
明確“因材施教” 促進(jìn)個(gè)體發(fā)展
月亮為什么會(huì)有圓缺
尋找失散的同伴
How Cats See the World
文化| 囊谦县| 成安县| 连南| 论坛| 竹溪县| 淮北市| 专栏| 老河口市| 肇源县| 修武县| 长武县| 卢龙县| 日照市| 河源市| 那曲县| 当雄县| 姚安县| 海晏县| 故城县| 屯留县| 连南| 宜宾市| 长葛市| 关岭| 宾川县| 威远县| 德兴市| 玉门市| 远安县| 恭城| 剑阁县| 建阳市| 银川市| 建宁县| 波密县| 惠安县| 莱芜市| 鹿邑县| 微山县| 衡阳县|