本發(fā)明涉及Agent圍捕覓食技術(shù),尤其是涉及一種多Agent圍捕-覓食行為控制方法。
背景技術(shù):
:多機(jī)器人系統(tǒng)作為分布式人工智能的一個(gè)非常重要的分支,具有容錯(cuò)性、魯棒性強(qiáng)、分布性協(xié)調(diào)性等特點(diǎn),近年來(lái)已成為人們廣泛關(guān)注的熱點(diǎn)。多機(jī)器人系統(tǒng)研究的主要問(wèn)題包括群體結(jié)構(gòu)、任務(wù)分配、通信方式、協(xié)作學(xué)習(xí)等。為了使得研究更具有在實(shí)際場(chǎng)景中的意義,研究者們集中對(duì)一些多機(jī)器人任務(wù)進(jìn)行研究,包括編隊(duì)協(xié)作、搜索、圍捕等。多機(jī)器人協(xié)作圍捕是檢驗(yàn)多機(jī)器人工作效率的有效方法之一。多機(jī)器人圍捕過(guò)程就是利用三個(gè)或者三個(gè)以上的輪式機(jī)器人,首先協(xié)作尋找到環(huán)境中移動(dòng)的一個(gè)目標(biāo)機(jī)器人,然后通過(guò)運(yùn)動(dòng)過(guò)程中圍在目標(biāo)周?chē)鷣?lái)達(dá)到圍捕目標(biāo)的目的,最后目標(biāo)沒(méi)有運(yùn)行的出口后,任務(wù)結(jié)束。多機(jī)器人圍捕可以稱(chēng)為Agent的覓食問(wèn)題,即指機(jī)器人模仿生物體的一系列動(dòng)作以達(dá)到覓食的效果。多機(jī)器人的圍捕-覓食問(wèn)題涉及到許多方面的內(nèi)容,如機(jī)器人編隊(duì)、狀態(tài)空間的劃分、機(jī)器人動(dòng)作的劃分、多機(jī)器人控制策略的結(jié)構(gòu)。前人在研究多Agent系統(tǒng)的圍捕問(wèn)題時(shí)一般采用柵格法。柵格法將機(jī)器人的狀態(tài)空間按位置進(jìn)行劃分,雖然劃分簡(jiǎn)單易懂,然而由于其粗糙的離散化方式,使得其精度不高,另一方面,倘若加大離散化的精度,則會(huì)產(chǎn)生“維數(shù)災(zāi)難”。因此,有必要重新對(duì)狀態(tài)空間進(jìn)行劃分,使用某種連續(xù)的策略來(lái)更好的表現(xiàn)機(jī)器人的圍捕-覓食行為,同時(shí)減小狀態(tài)空間的數(shù)量。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種多Agent圍捕-覓食行為控制方法。本發(fā)明的目的可以通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn):一種多Agent圍捕-覓食行為控制方法,包括以下步驟:1)對(duì)多Agent和獵物當(dāng)前所處位置形成的狀態(tài)空間進(jìn)行劃分;2)設(shè)計(jì)獎(jiǎng)賞函數(shù);3)根據(jù)步驟1)劃分的狀態(tài)空間及步驟2)的獎(jiǎng)賞函數(shù)進(jìn)行強(qiáng)化學(xué)習(xí),控制各Agent進(jìn)行相應(yīng)的原子動(dòng)作,實(shí)現(xiàn)對(duì)獵物的圍捕,在滿(mǎn)足圍捕成功條件時(shí)停止,達(dá)到覓食效果。所述步驟1)中,對(duì)狀態(tài)空間的劃分具體為:101)將n個(gè)Agent與獵物之間的角度進(jìn)行劃分;102)將各Agent與獵物之間的距離進(jìn)行離散分段。所述將Agent與獵物之間的角度進(jìn)行劃分具體為:將兩個(gè)Agent與獵物之間的夾角劃分為如下表的10個(gè)狀態(tài)所述劃分為非均勻狀態(tài)劃分,所述離散分段為非均勻劃分。所述步驟2)中,獎(jiǎng)賞函數(shù)R為:R=a*J+rn其中,J為角度獎(jiǎng)賞,J=G(θ)left+G(θ)right,G(θ)left為某一Agent的左夾角θleft對(duì)應(yīng)的角度獎(jiǎng)賞,G(θ)right為該Agent的右?jiàn)A角θright對(duì)應(yīng)的角度獎(jiǎng)賞,rn為距離獎(jiǎng)賞,a為J與rn之間的相對(duì)重要程度系數(shù)。每個(gè)角度θ對(duì)應(yīng)的角度獎(jiǎng)賞表達(dá)式為:所述距離獎(jiǎng)賞rn通過(guò)以下表格獲?。篸0~0.5m0.5~1.0m0.5~1.4m1.4~2.0m2.0~3.5m3.5~5.0m>5.0mrn1.21.11.00.70.50.20其中,d表示Agent與獵物之間的距離。所述相對(duì)重要程度系數(shù)a在形成圍捕包圍圈與收縮包圍圈兩個(gè)任務(wù)中取值不同。所述原子動(dòng)作包括朝向獵物、向左偏π/4、向右偏π/4、向左偏π/2以及向右偏π/2。所述圍捕成功條件為:同時(shí)存在a)獵物位于多Agent組成的凸平面內(nèi);b)所有Agent與獵物之間形成的最大角度滿(mǎn)足:其中,θstr為允許的包圍角誤差;c)所有Agent與獵物之間形成的最大距離dm滿(mǎn)足:dm≤Dstr其中,Dstr為允許距離。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):1、本發(fā)明基于強(qiáng)化學(xué)習(xí)實(shí)現(xiàn)多Agent圍捕-覓食,每個(gè)參與圍捕的機(jī)器人可以通過(guò)知道自己相對(duì)整個(gè)群體的位置以及整個(gè)群體相對(duì)獵物的位置快速學(xué)習(xí)到該如何運(yùn)動(dòng)才能?chē)兜教优艿膫€(gè)體,提高圍捕效率。2、本申請(qǐng)對(duì)狀態(tài)空間進(jìn)行了劃分,巧妙地設(shè)計(jì)了動(dòng)作與獎(jiǎng)賞函數(shù),使得學(xué)習(xí)過(guò)程能夠在合理的時(shí)間收斂。3、本申請(qǐng)進(jìn)行狀態(tài)空間劃分時(shí)采用非均勻劃分,有效提高精度和減小狀態(tài)空間。附圖說(shuō)明圖1是狀態(tài)劃分示意圖;圖2是獎(jiǎng)賞函數(shù)示意圖;圖3是圍捕條件示意圖;圖4是圍捕初始環(huán)境示意圖;圖5是訓(xùn)練初期軌跡圖,其中,(5a)為一種初期軌跡圖,(5b)為另一種初期軌跡圖;圖6是訓(xùn)練初期追捕成功示意圖,其中,(6a)為一種追捕成功示意圖,(6b)為另一種追捕成功示意圖;圖7是訓(xùn)練后期形成包圍圖;圖8是訓(xùn)練后期保持包圍圖。具體實(shí)施方式下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。本實(shí)施例以本發(fā)明技術(shù)方案為前提進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方式和具體的操作過(guò)程,但本發(fā)明的保護(hù)范圍不限于下述的實(shí)施例。本實(shí)施例提供一種多Agent圍捕-覓食行為控制方法,該方法基于強(qiáng)化學(xué)習(xí)算法,并設(shè)置了獎(jiǎng)賞函數(shù),提高機(jī)器人的學(xué)習(xí)效率。在利用Option方法改進(jìn)的強(qiáng)化學(xué)習(xí)算法進(jìn)行多Agent圍捕時(shí)需要首先對(duì)狀態(tài)空間進(jìn)行離散化,多Agent的圍捕問(wèn)題中每個(gè)參與圍捕的機(jī)器人需要知道自己相對(duì)整個(gè)群體的位置以及整個(gè)群體相對(duì)獵物的位置才能根據(jù)這些信息學(xué)習(xí)到該如何運(yùn)動(dòng)才能?chē)兜教优艿膫€(gè)體。本發(fā)明方法包括以下步驟:1)對(duì)多Agent(機(jī)器人)和獵物當(dāng)前所處位置形成的狀態(tài)空間進(jìn)行劃分;2)設(shè)計(jì)獎(jiǎng)賞函數(shù);3)根據(jù)步驟1)劃分的狀態(tài)空間及步驟2)的獎(jiǎng)賞函數(shù)進(jìn)行強(qiáng)化學(xué)習(xí),控制各Agent進(jìn)行相應(yīng)的原子動(dòng)作,實(shí)現(xiàn)對(duì)獵物的圍捕,在滿(mǎn)足圍捕成功條件時(shí)停止,達(dá)到覓食效果。1、狀態(tài)空間劃分與動(dòng)作選擇對(duì)于狀態(tài)空間的劃分必須能夠反映某個(gè)Agent與群體之間的位置關(guān)系,還應(yīng)反映出個(gè)體與獵物之間的位置關(guān)系,這里設(shè)計(jì)了一種能夠反映出圍捕程度的狀態(tài)空間劃分:將各機(jī)器人與獵物之間的角度進(jìn)行分割,為了節(jié)省狀態(tài)空間加快收斂速度,采用非均勻狀態(tài)劃分。本發(fā)明將兩個(gè)機(jī)器人與獵物之間的夾角劃分為10個(gè)狀態(tài):表1角度劃分注:其中j為left或right,i為Agent序號(hào)。本實(shí)施例選用4個(gè)機(jī)器人進(jìn)行聯(lián)合圍捕,而圍捕的最佳情況就是4個(gè)機(jī)器人均勻分布在獵物周?chē)?60°的范圍內(nèi),故每個(gè)機(jī)器人與和它相鄰的機(jī)器人之間的夾角最佳為90°。在圍捕過(guò)程中由于獵物的智能性以及獵物自身的高速性,包圍圈細(xì)微的漏洞都可能使獵物逃脫,因此對(duì)于在90°附近的狀態(tài)空間需要做出細(xì)致的劃分。但是當(dāng)獵物處于包圍圈外時(shí),會(huì)出現(xiàn)相鄰機(jī)器人之間的角度大于180°的情況,此時(shí)機(jī)器人需要移動(dòng)使獵物首先進(jìn)入包圍圈的凸平面,因此對(duì)于角度的要求沒(méi)有那么苛刻。本發(fā)明將大于180°的情況設(shè)為一種狀態(tài)即是考慮了減小狀態(tài)空間來(lái)加速收斂過(guò)程。如圖1所示,為了確定每個(gè)Agent相對(duì)整體的位置,即包圍情況,必須使用左右兩個(gè)相鄰角度來(lái)定位某個(gè)機(jī)器人所處的位置。對(duì)于Agenti來(lái)說(shuō)知道了左右兩個(gè)夾角θleft和θright就可以知道自身所處的位置與包圍情況之間的關(guān)系,從而選擇合適的動(dòng)作來(lái)更嚴(yán)密地包圍獵物。夾角θleft和θright劃分如表1所示,各有10種狀態(tài),因此整個(gè)角度劃分共有10×10=100個(gè)狀態(tài)。只知道角度對(duì)于捕捉到獵物來(lái)說(shuō)是不夠的,還需要能夠反映機(jī)器人與獵物之間的位置關(guān)系。將機(jī)器人與獵物之間的距離離散為7段,同樣處于加大精度和減小狀態(tài)空間的做法,這里采用非均勻劃分:表2距離劃分di0~0.5m0.5~1.0m0.5~1.4m1.4~2.0m2.0~3.5m3.5~5.0m>5.0m注:其中di為第i個(gè)Agent到獵物的距離。這樣一來(lái)每個(gè)機(jī)器人的狀態(tài)空間都是由自身與獵物之間的包圍位置關(guān)系(共100個(gè)狀態(tài):左邊角度10個(gè)×右邊角度10個(gè))×自身與獵物之間的位置關(guān)系(共7個(gè)狀態(tài))=700個(gè)狀態(tài)組成。由于這樣的策略既表示了自身的位置關(guān)系,又反映了團(tuán)體的包圍信息,故不論Agent的數(shù)量如何增多,狀態(tài)空間不會(huì)再增長(zhǎng),由此便解決了維數(shù)災(zāi)難問(wèn)題。在動(dòng)作選擇方面我們回歸到機(jī)器人的原子動(dòng)作,即將Agent的動(dòng)作分為朝向獵物,向左偏π/4,向右偏π/4,向左偏π/2,向右偏π/2這五種。通常狀況下動(dòng)作還應(yīng)該包括與朝向獵物相反的四個(gè)方向,但由于邊界條件的限制,向后的動(dòng)作很容易自使系統(tǒng)陷入死區(qū),嚴(yán)重降低收斂速度。2、獎(jiǎng)賞函數(shù)的設(shè)計(jì)強(qiáng)化學(xué)習(xí)中另一個(gè)難點(diǎn)就是獎(jiǎng)賞函數(shù)的設(shè)計(jì),只有恰當(dāng)?shù)脑O(shè)置獎(jiǎng)賞函數(shù),算法才能收斂。通常情況下獎(jiǎng)賞函數(shù)設(shè)定為在吸收態(tài)給予較大的立即獎(jiǎng)賞,而其他狀態(tài)設(shè)定為0。這樣可以使得Agent自主學(xué)習(xí)到完成目標(biāo)的策略。然而由于本發(fā)明的任務(wù)較為復(fù)雜,如果僅僅采用吸收態(tài)獎(jiǎng)賞的方案可能會(huì)使算法的收斂時(shí)間變的很長(zhǎng),這里引入過(guò)程獎(jiǎng)賞的概念。所謂過(guò)程獎(jiǎng)賞與吸收態(tài)獎(jiǎng)賞可形象的比喻如下:吸收態(tài)獎(jiǎng)賞就像遠(yuǎn)古人類(lèi)在圍獵時(shí)只根據(jù)能否捕到獵物來(lái)判斷自己策略的好壞;而過(guò)程獎(jiǎng)賞就好像現(xiàn)代人類(lèi)將自己的知識(shí)傳授給下一代的過(guò)程,即不僅僅看結(jié)果的好壞,更重要的是學(xué)習(xí)的過(guò)程中每一步是否到位。在本發(fā)明中,將整個(gè)圍捕過(guò)程分為三個(gè)大的部分,即漫游尋找、圍捕和運(yùn)送,漫游尋找屬于隨機(jī)過(guò)程,運(yùn)送屬于確定過(guò)程,因此重點(diǎn)研究圍捕過(guò)程,即發(fā)現(xiàn)目標(biāo)時(shí)多Agent如何快速成功的將其圍捕。對(duì)于圍捕過(guò)程大致可分為兩個(gè)Option,即形成包圍圈與縮小包圍圈。對(duì)不同過(guò)程的設(shè)置不同的獎(jiǎng)賞函數(shù)是整個(gè)算法收斂的關(guān)鍵。在形成包圍圈階段,每個(gè)機(jī)器人首先計(jì)算自己的θleft與θright,并依據(jù)下式計(jì)算每個(gè)θ的獎(jiǎng)賞:分別將θleft與θright的獎(jiǎng)賞值記作G(θ)left和G(θ)right,則總的角度獎(jiǎng)賞為:J=G(θ)left+G(θ)right(2)另一方面,還需要根據(jù)個(gè)體和獵物之間的距離定義獎(jiǎng)賞函數(shù)來(lái)激勵(lì)機(jī)器人靠近目標(biāo):表3距離獎(jiǎng)賞函數(shù)d0~0.5m0.5~1.0m0.5~1.4m1.4~2.0m2.0~3.5m3.5~5.0m>5.0mrn1.21.11.00.70.50.20所以,總獎(jiǎng)賞函數(shù)R為:R=a*J+rn(3)其中,a為J與rn之間的相對(duì)重要程度系數(shù),在形成圍捕與收縮包圍圈兩個(gè)任務(wù)中并不相同。本實(shí)施例中設(shè)定:當(dāng)處于形成包圍圈時(shí),a為2,當(dāng)處于收縮時(shí),a為1。另外,當(dāng)圍捕成功時(shí),給予額外立即獎(jiǎng)賞10。3、圍捕成功條件機(jī)器人對(duì)于獵物的圍捕成功條件定義為:1)獵物位于機(jī)器人組成的凸平面內(nèi)(這里嚴(yán)格限定為凸平面,凹平面尚不足以圍捕)。2)所有機(jī)器人與獵物之間形成的最大角度滿(mǎn)足如下條件:其中θstr為允許的包圍角誤差。3)機(jī)器人與獵物之間形成的最大距離dm滿(mǎn)足如下條件:dm≤Dstr(5)其中Dstr為允許距離。圖4給出了在有障礙物的情況下圍捕任務(wù)的初始界面。圖5為在學(xué)習(xí)過(guò)程的初期機(jī)器人的軌跡圖,由圖可以看到在初期機(jī)器人的軌跡凌亂,并沒(méi)有能夠形成對(duì)獵物的圍捕,大多數(shù)情況下都是集體在追逐獵物。圖6為訓(xùn)練初期在捕捉到獵物時(shí)的圖像,在訓(xùn)練初期機(jī)器人在捕捉獵物時(shí)都是將獵物逼到墻角(如圖中的右下角和左上角),這樣的捕捉在本實(shí)驗(yàn)中被認(rèn)為是無(wú)效的,因?yàn)閷?shí)際的應(yīng)用中(如公海緝私和導(dǎo)彈防御),環(huán)境是開(kāi)放的且不存在邊界。因此訓(xùn)練的目的是將高速運(yùn)動(dòng)的物體在仿真環(huán)境中間圍住。如圖7為經(jīng)過(guò)成百次的訓(xùn)練后機(jī)器人在無(wú)障礙物的情況下的圍捕情況。由圖可見(jiàn)經(jīng)過(guò)大量的迭代訓(xùn)練,機(jī)器人形成圍捕的非常迅速,沒(méi)有了訓(xùn)練初期凌亂的網(wǎng)絡(luò),而是直奔主題,對(duì)目標(biāo)形成包圍。圖8為訓(xùn)練后期再形成包圍圈之后保持包圍的圖像,形成包圍之后由于獵物也具有一定的智能性,故如果不能保持住包圍圈,則獵物又可能突破包圍。從圖8可看出,不論獵物采取什么方向逃跑,機(jī)器人總是能夠及時(shí)的調(diào)整隊(duì)形,包圍住獵物,所以其軌跡如同圓形一般,將獵物牢牢地包圍在中間。以上詳細(xì)描述了本發(fā)明的較佳具體實(shí)施例。應(yīng)當(dāng)理解,本領(lǐng)域的普通技術(shù)人員無(wú)需創(chuàng)造性勞動(dòng)就可以根據(jù)本發(fā)明的構(gòu)思作出諸多修改和變化。因此,凡本
技術(shù)領(lǐng)域:
中技術(shù)人員依本發(fā)明的構(gòu)思在現(xiàn)有技術(shù)的基礎(chǔ)上通過(guò)邏輯分析、推理或者有限的實(shí)驗(yàn)可以得到的技術(shù)方案,皆應(yīng)在由權(quán)利要求書(shū)所確定的保護(hù)范圍內(nèi)。當(dāng)前第1頁(yè)1 2 3