吳坤,劉瑋*,李爽,王晶
1.武漢工程大學計算機科學與工程學院,湖北武漢 430205;
2.智能機器人湖北省重點實驗室(武漢工程大學),湖北武漢 430205
一種動態(tài)環(huán)境下多Agent的協(xié)作方法
吳坤1,2,劉瑋1,2*,李爽1,2,王晶1,2
1.武漢工程大學計算機科學與工程學院,湖北武漢 430205;
2.智能機器人湖北省重點實驗室(武漢工程大學),湖北武漢 430205
對動態(tài)環(huán)境下多Agent系統(tǒng)中Agent的協(xié)作問題進行了研究,提出了一種基于連續(xù)規(guī)劃的動態(tài)環(huán)境下多Agent協(xié)作方法.首先,在MA-PDDL的語法上進行了改進,通過一個自定義的函數(shù)使其能夠描述連續(xù)規(guī)劃方法;然后,提出了一種基于擴展的MA-PDDL的連續(xù)規(guī)劃算法,能夠處理動態(tài)環(huán)境在系統(tǒng)中所造成的不確定性;最后,實現(xiàn)了擴展的MA-PDDL的解析方法,解析的結(jié)果能夠用于模擬Agent執(zhí)行任務(wù)的過程.選取了醫(yī)療垃圾無人運輸場景進行實驗,成功模擬了整個實驗場景的運行過程,驗證了方法的可行性.
動態(tài)環(huán)境;MAS;多Agent協(xié)作;連續(xù)規(guī)劃;MA-PDDL
多Agent系統(tǒng)(multi-agent system,MAS)是分布式人工智能領(lǐng)域研究的熱點之一,已經(jīng)成為分布式人工智能研究的一個重要分支,關(guān)于Agent的協(xié)作問題一直是MAS研究的核心問題.
傳統(tǒng)領(lǐng)域關(guān)于多Agent協(xié)作問題的研究是建立在MAS的環(huán)境不變或者可預測的基礎(chǔ)之上,例如經(jīng)典合同網(wǎng)協(xié)議(contract net protocol,CNP)[1]、組織結(jié)構(gòu)協(xié)作[2]、黑板模型[3]等.但是MAS的環(huán)境從封閉到開放,從可預知到不確定的變化,要求多Agent的協(xié)作方法必須能夠適用于動態(tài)環(huán)境下的MAS,上述方法均無法解決實際問題,因此關(guān)于動態(tài)環(huán)境下的多Agent協(xié)作方法研究就顯得非常的重要.
近幾年研究人員已經(jīng)開始嘗試解決動態(tài)環(huán)境下MAS中的Agent協(xié)作問題.其中一類研究是在傳統(tǒng)方法的基礎(chǔ)上進行改進,例如林琳和劉鋒[4]在合同網(wǎng)的投標過程中引入了信任度、感知系數(shù)和活躍度等智能參數(shù),在熟人庫(acquaintance)中進行招標,通過公共消息黑板發(fā)布標書讓Agent主動接受任務(wù),引入了一個評估函數(shù)定期對Agent進行評估,更新其能力以及管理Agent對其的信任度.該方法雖然具有一定的靈活性并且可以提高效率,但是由于動態(tài)環(huán)境的實時變化,導致系統(tǒng)更新過于頻繁以至于增大系統(tǒng)壓力,而更新太慢又可能導致信息沒有同步而發(fā)生錯誤.另一類方法是和人工智能相結(jié)合,例如唐賢倫等[5]提出了基于改進蟻群算法的多Agent協(xié)作策略解決了在未知環(huán)境下的多Agent協(xié)作問題,首先由Agent在未知環(huán)境下對任務(wù)進行搜尋,然后將收集到的信息通過黑板模型進行信息共享,最終完成所有的任務(wù).該方法在可預測的未知環(huán)境下是可行的,但是如果環(huán)境會動態(tài)變化且無法預知則不再適用了.
智能規(guī)劃(AI planning)是用人工智能理論與技術(shù)自動或半自動地生成一組動作序列,用以實現(xiàn)期望的目標[6].近年來,有關(guān)智能規(guī)劃的研究在問題描述和問題求解兩方面得到了新的突破,使得智能規(guī)劃已成為一個熱門的人工智能研究領(lǐng)域.由于智能規(guī)劃的研究對象和研究方法的轉(zhuǎn)變,極大地擴展了智能規(guī)劃的應(yīng)用領(lǐng)域,在太空飛船[7]、衛(wèi)星[8]、智能機器人[9-11]等眾多領(lǐng)域都有著十分廣泛的應(yīng)用.
使用智能規(guī)劃來解決Agent協(xié)作問題時具有專門的規(guī)劃語言.最早的規(guī)劃語言是STRIPS[13],由Richard Fikes和Nils J.Nilsson在1971年提出,他們在基于邏輯的規(guī)劃問題表示上引入了過程化表示和語義,隨后發(fā)展成為經(jīng)典規(guī)劃中最主要的描述語言,幾乎所有的規(guī)劃系統(tǒng)都采用STRIPS語言或其一個變種來描述規(guī)劃問題.1998年,McDer-mott提出了規(guī)劃領(lǐng)域定義語言(planning domain definition language,PDDL)[14],并逐漸成為國際智能規(guī)劃比賽IPC公認的標準.
隨著MAS的廣泛應(yīng)用與研究,關(guān)于多Agent的規(guī)劃語言也得到了快速的發(fā)展,出現(xiàn)了大量的多Agent規(guī)劃語言,多Agent規(guī)劃領(lǐng)域定義語言(multi-agent PDDL,MA-PDDL)就是其中的一種. MA-PDDL是由Kovacs[15]在2012年提出來的,主要針對PDDL3.1的巴科斯范式(Backus-Naur Form,BNF)作了如下擴展:在requirements中加入了multi-agent的依賴,使PDDL3.1能夠支持多Agent規(guī)劃;在動作的定義中引入了Agent參數(shù),當一個動作需要另一個Agent動作的效果時,可以直接將協(xié)作動作以參數(shù)的形式引用到當前的動作中,這樣就可以靈活的描述多個Agent之間的協(xié)作以及動作之間的相互影響;在問題的定義中引入了goal參數(shù),多個Agent可以有相同的goal,要實現(xiàn)這些goal就必須要這些Agent一起協(xié)作完成,這樣就可以描述多Agent之間的協(xié)作問題了.但是由于PD-DL3.1中假設(shè)環(huán)境是靜態(tài)的而且是完全可觀察的,所以MA-PDDL也存在這種假設(shè),因此MA-PDDL雖然能夠描述多Agent的協(xié)作問題,但是不能直接應(yīng)用于動態(tài)環(huán)境下的MAS中.
總的來說,目前缺乏一種有效可行的方法來解決動態(tài)環(huán)境下的多Agent協(xié)作問題,針對這一現(xiàn)狀,本文對動態(tài)環(huán)境下的MAS中Agent協(xié)作問題進行了研究,提出了一種基于連續(xù)規(guī)劃的多Agent協(xié)作方法.對MA-PDDL進行了改進,在語言中加入了連續(xù)規(guī)劃元素,使其能夠通過連續(xù)規(guī)劃算法解決動態(tài)環(huán)境下的多Agent協(xié)作問題,避免了傳統(tǒng)方法下任務(wù)執(zhí)行過程中環(huán)境發(fā)生改變而導致任務(wù)失敗的情況.
1.1 智能規(guī)劃
智能規(guī)劃問題可表示為一個五元組<S,S0,G,A,Γ>,其中S是所有可能的狀態(tài)集合,S0?S表示世界的初始狀態(tài),G?S表示規(guī)劃系統(tǒng)希望實現(xiàn)的目標狀態(tài),A表示進行狀態(tài)之間轉(zhuǎn)換所需的動作集合,狀態(tài)轉(zhuǎn)移關(guān)系Γ?S×A×S定義了每個動作執(zhí)行時的先決條件和效果[12].采用智能規(guī)劃方法來解決問題的過程就是在A集合中找到一組動作序列,使得當前系統(tǒng)的狀態(tài)由S0變?yōu)镚.假設(shè)完成一個任務(wù)需要兩個動作,用智能規(guī)劃來解決問題的示意圖如圖1所示.
圖1 智能規(guī)劃示意圖Fig.1Schematic diagram of intelligent planning
1.2 規(guī)劃語言
使用規(guī)劃語言對智能規(guī)劃問題進行描述時通常包括領(lǐng)域描述和問題描述,其中領(lǐng)域描述主要是定義整個領(lǐng)域當中的參數(shù),以及領(lǐng)域中的對象可以執(zhí)行的動作,用以反映整個領(lǐng)域的行為.而問題描述則包括規(guī)劃的對象、系統(tǒng)初始狀態(tài)和目標狀態(tài),是對實際規(guī)劃的問題進行描述.
定義1多Agent規(guī)劃的領(lǐng)域描述是一個四元組D=<O,V,F(xiàn),A>,其中O表示系統(tǒng)中所有的對象集合,可以是Agent,也可以是其他的普通對象;V表示系統(tǒng)中涉及到的所有狀態(tài)變量的集合,即用來描述整個領(lǐng)域狀態(tài)的變量,一般用邏輯謂詞來描述;F表示函數(shù)的集合;A表示動作的集合.
定義2動作a是一個三元組<Ag,P,E>,a∈A,P∈V,E∈V.其中Ag為執(zhí)行動作的Agent,P是動作執(zhí)行的前提條件,E是動作執(zhí)行之后所產(chǎn)生的效果.一個動作a<ag,p,e>表示一個Agent(ag)在系統(tǒng)狀態(tài)為p的情況下,執(zhí)行動作a之后系統(tǒng)狀態(tài)變?yōu)閑.
定義3問題描述為Q=<I,G>,I為系統(tǒng)的初始狀態(tài),G為需要達到的目標狀態(tài).若經(jīng)過一系列的規(guī)劃動作之后,系統(tǒng)狀態(tài)變?yōu)镚,則表示該問題已經(jīng)被解決了.
1.3 連續(xù)規(guī)劃
在傳統(tǒng)的規(guī)劃方法中,規(guī)劃者必須考慮整個系統(tǒng)中可能出現(xiàn)的所有情況,規(guī)劃出Agent相應(yīng)的動作,同時設(shè)定Agent從開始到結(jié)束都對整個系統(tǒng)有著完整的正確的知識,且動作一定會產(chǎn)生預期的效果.這種方法對于環(huán)境相對穩(wěn)定,Agent獨立完成任務(wù)且各Agent之間沒有相互影響的系統(tǒng)來說是可行的,但是對于動態(tài)環(huán)境中Agent的動作會對其他Agent產(chǎn)生影響的系統(tǒng)來說是行不通的.
為了解決多Agent在動態(tài)環(huán)境下的規(guī)劃問題,Brenner和Nebel[16]提出了連續(xù)規(guī)劃算法.與傳統(tǒng)的規(guī)劃方法不同,連續(xù)規(guī)劃并不需要事先考慮所有的可能事件,而是由Agent自己決定如何去實現(xiàn)他們的目標,換句話說就是Agent在完成目標任務(wù)的過程中可以自己規(guī)劃自己的行動.
連續(xù)規(guī)劃方法的核心思想就是當Agent對周圍環(huán)境未知或者掌握的知識不足以完成規(guī)劃的動作時,Agent可以延遲規(guī)劃動作的執(zhí)行,然后通過自身的感知能力或者通過與其他Agent通信,獲取更加準確的信息,不斷地更新知識直到Agent有足夠的知識來完成接下來的規(guī)劃任務(wù),如圖2所示.與圖1相比,圖2中加入了一個重新規(guī)劃步驟,需要注意的是這里并不是簡單的循環(huán)執(zhí)行動作Action1,而是通過系統(tǒng)環(huán)境重新規(guī)劃出一條新的動作序列來完成后面的工作.
圖2 連續(xù)規(guī)劃示意圖Fig.2Schematic diagram of continual planning
例如讓一個自動導引車(automated guided vehicle,AGV)將一件貨物M從A點運送到B點,通過規(guī)劃方法來解決這個問題可能需要執(zhí)行以下幾個動作:①AGV移動到A點;②裝上貨物M;③AGV帶著貨物M從A點移動到B點;④卸下貨物M.在傳統(tǒng)規(guī)劃方法中,以上幾個動作均被認為是瞬間完成,但是在現(xiàn)實中這些動作都是需要一段時間才能完成.假如在AGV帶著M從A點移動到B點的過程中,原本規(guī)劃的行動路線由于突發(fā)情況無法通過,該規(guī)劃則會陷入死鎖,最終導致任務(wù)無法完成.通過連續(xù)規(guī)劃方法能夠避免這種情況的發(fā)生:當AGV在移動過程中發(fā)現(xiàn)道路不通即動作③無法完成時,則會停下來感知周圍的環(huán)境,并與其他的AGV進行通信來了解最新的環(huán)境知識,然后重新規(guī)劃一條移動路徑繼續(xù)完成動作③和動作④.
2.1 規(guī)劃過程描述
使用基于連續(xù)規(guī)劃的MA-PDDL來解決MAS中的多Agent協(xié)作問題一般包括如下5個步驟:
步驟1通過多Agent領(lǐng)域描述語言描述多Agent系統(tǒng)的當前環(huán)境;
步驟2接收用戶輸入的待解決問題,并通過多Agent領(lǐng)域描述語言進行描述;
步驟3根據(jù)描述后的多Agent系統(tǒng)的當前環(huán)境和待解決問題,規(guī)劃出一條最優(yōu)解決方案,該最優(yōu)方案包括需要執(zhí)行的若干個動作,將若干個動作分別分配給多Agent系統(tǒng)中能夠執(zhí)行相應(yīng)動作的Agent;
步驟4多Agent系統(tǒng)中具有執(zhí)行任務(wù)的各Agent根據(jù)該最優(yōu)方案依次完成分配給自己的所有動作,當確定當前動作正常完成時,各Agent繼續(xù)下一個動作,直到完成所有動作,問題得到解決;
步驟5當確定當前動作無法完成時,停止各Agent當前動作,通過Agent的感知功能對多Agent系統(tǒng)的當前環(huán)境進行重新感知,并通過多Agent領(lǐng)域描述語言進行重新描述,隨后轉(zhuǎn)至步驟3.
2.2 語法描述
為了在MA-PDDL中使用連續(xù)規(guī)劃算法,對MA-PDDL的動作進行了如下定義.
為了實現(xiàn)整個多Agent系統(tǒng)的自適應(yīng)性,保證Agent在動態(tài)環(huán)境下也能正常完成任務(wù),我們在原來的動作定義中加入了replan這個子動作.其工作原理如下:事先定義一個觸發(fā)replan的條件,Agent在每次執(zhí)行動作之前判斷當前環(huán)境是否滿足該條件,一旦滿足條件就會暫停當前動作的執(zhí)行,然后通過自身的感知能力或者與其他Agent通信來更新對系統(tǒng)環(huán)境的知識,最后重新規(guī)劃出一條解決問題的執(zhí)行方案.如果不滿足該條件則正常執(zhí)行動作,若因為系統(tǒng)環(huán)境發(fā)生了改變而導致動作無法執(zhí)行或者動作執(zhí)行失敗時,在系統(tǒng)中設(shè)置該觸發(fā)條件.
使用MA-PDDL對上文中的動作③進行描述,其程序如下.
其中manager是一個決策Agent,可以根據(jù)當前系統(tǒng)的環(huán)境規(guī)劃出一條最優(yōu)路徑.當agv要從A點移動到B點時,必須先選出一條最優(yōu)路徑,此時需要與manager協(xié)作才能完成,采用MA-PDDL可以很方便的描述這種協(xié)作關(guān)系.
如果manager規(guī)劃完路徑,agv在執(zhí)行動作的過程中環(huán)境發(fā)生了變化,例如路徑被堵塞了,那么該動作就無法完成.使用加入連續(xù)規(guī)劃的MA-PDDL對該動作進行描述,其程序如下.
以上描述在原有的基礎(chǔ)上加入了:replan,該方法的觸發(fā)條件是isDone?false.默認情況下該條件是isDone?true,當動作執(zhí)行失敗時將該條件設(shè)置為isDone?false,滿足該條件表示move動作無法完成,系統(tǒng)無法達到預期效果,此時Agent會暫停后續(xù)動作的執(zhí)行,然后重新獲取當前系統(tǒng)環(huán)境進行重新規(guī)劃.
2.3 方法的實現(xiàn)
方法的具體實現(xiàn)過程如圖3所示,主要包括以下幾個步驟:
圖3 方法的實現(xiàn)過程Fig.3Realization process of method
步驟1使用改進后的語言將MAS的領(lǐng)域知識和需要解決的問題描述出來作為輸入;
步驟2將領(lǐng)域描述Domain轉(zhuǎn)換為傳統(tǒng)的PD-DL和一個描述Action與Agent關(guān)系的文件,將問題描述Problem轉(zhuǎn)換為目標狀態(tài)文件Goal和當前環(huán)境文件cur_env;
步驟3根據(jù)當前環(huán)境、目標狀態(tài)和MAS的領(lǐng)域描述規(guī)劃出一條最優(yōu)解決方案,即一系列需要執(zhí)行的動作;
步驟4根據(jù)動作在Action-Agent關(guān)系文件中找出一個或多個Agent來執(zhí)行動作,每次執(zhí)行動作之前都檢查一次當前系統(tǒng)的環(huán)境是否發(fā)生了改變:系統(tǒng)環(huán)境沒有變化,滿足動作的前提條件,正常執(zhí)行該動作,完成之后繼續(xù)執(zhí)行下一個動作;系統(tǒng)環(huán)境發(fā)生了變化,不再滿足動作的前提條件,終止該動作的執(zhí)行,更新描述當前系統(tǒng)環(huán)境的文件,跳轉(zhuǎn)到步驟3.
醫(yī)院中的醫(yī)療垃圾往往具有傳染性,對人體有很大的危害,使用人工進行運輸存在著極大的安全風險,使用AGV來運輸則可以避免這種風險,而且還可以免去很多人工勞動.Savant Automation公司在2015年提出了一個醫(yī)院自動運輸車系統(tǒng)(automated hospital cart transportation system)[17],在該系統(tǒng)中AGV被用來運輸食物、醫(yī)療器械以及醫(yī)療垃圾等,并且已經(jīng)投入生產(chǎn)和使用.本文的實驗就是以上述系統(tǒng)為基礎(chǔ),使用了一個特定的場景進行建模,最后通過模擬運行進行實驗.
在模型中使用Cart存放醫(yī)療垃圾,所有的Cart均放置于相應(yīng)的Pickup上,每個Pickup上都有一個射頻識別標簽(Radio Frequency Indentification,RFID)用來讀取Cart的重量、位置等信息,通過AGV將Cart從Pickup處運送到指定地點.整個場景可以看作是一個多Agent系統(tǒng),里面包括三種不同的Agent,分別是Cart-sensor、AGV以及decision agent.其中Cart-sensor固定在Pickup處,通過讀取Pickup上面的RFID獲取Cart的重量和位置等信息,發(fā)布任務(wù);AGV是專門用來運輸Cart的小車,具有不同載重量;decision agent可以根據(jù)當前環(huán)境來選擇最適合的AGV來執(zhí)行,同時可以為AGV規(guī)劃出一條最優(yōu)的移動路線.
整個實驗場景如圖4所示,Pickup-Location表示Pickup的位置,也是Cart的存放地點;Charge-Location為AGV充電的地方;Destination為 Cart被運輸?shù)哪康牡?;Road為AGV運行的軌跡,表示AGV可達的路徑;Wall為AGV不可達的地點,可視為障礙物.
圖4 實驗仿真場景Fig.4Experiment scenario
使用定義1對領(lǐng)域進行描述如下.
O是系統(tǒng)中的對象集合,有decision_agent,AGV,Cart_sensor,cart,pickup和location等6個對象;V是系統(tǒng)中的狀態(tài)變量集合,samePosition用來描述2個對象在同一個位置,on用來描述cart在pickup中,in用來描述cart在AGV小車上,ready用來描述pickup、AGV以及目的地的位置是否確定,available用來描述是否發(fā)布任務(wù),isDone用來描述動作是否正常完成,pathReady用來描述行動路徑是否規(guī)劃完成;需要用到的函數(shù)包括distance和loadage,前者是求兩點之間的距離,后者是求AGV的載重量,兩個函數(shù)都是用來選擇最佳執(zhí)行AGV的;A是系統(tǒng)中所有Agent能夠完成的動作的集合,包括DetectCart、ReadTag等9個動作.
使用定義2對領(lǐng)域中的動作進行描述如下.
每個動作包含3個參數(shù):第1個參數(shù)表示執(zhí)行該動作的Agent,第2個參數(shù)是執(zhí)行該動作的前提條件,是一個狀態(tài)變量的集合,第3個參數(shù)是執(zhí)行完該動作產(chǎn)生的影響,也是一個狀態(tài)變量的集合.例如DetectCart=<Cart_sensor,<on(cart,pick-up)>,<ready(pickup)>>,表示當cart在pickup中時,Cart_sensor會執(zhí)行動作DetectCart,成功執(zhí)行完該動作之后,pickup的位置信息就確定了.在整個系統(tǒng)中,Cart_sensor可以執(zhí)行3個動作,deci-sion_agent可以執(zhí)行2個動作,AGV可以執(zhí)行4個動作.
整個系統(tǒng)的初始狀態(tài)是cart被放置到pickup中,需要完成的任務(wù)是將cart運送到專門的垃圾處理點,使用定義3對問題進行描述如下所示.
實驗場景中一共有12個pickup分別位于不同的地方,有兩個載重量為20 kg的AGV和兩個載重量為50 kg的AGV,50 kg載重量的AGV能耗更大,同時能耗也跟運輸距離成正比,需要選擇一種能耗最小的方案來完成任務(wù).
使用java語言對MA-PDDL和改進的MA-PDDL進行解析,分別在靜態(tài)環(huán)境以及動態(tài)環(huán)境這兩種情況下進行實驗,通過語句描述來代替具體的Agent執(zhí)行動作,最后通過控制臺打印出Agent的動作序列,其運行結(jié)果摘錄如圖5和圖6所示.
圖5 靜態(tài)環(huán)境下運行的結(jié)果Fig.5Results in static environment
圖6 動態(tài)環(huán)境下運行的結(jié)果Fig.6Results in dynamic environment
圖5和圖6中左邊是MA-PDDL的運行結(jié)果,右邊是改進的MA-PDDL的運行結(jié)果.可以看到,在靜態(tài)環(huán)境下,兩種方法都可以解決問題.但是如果在動態(tài)環(huán)境下,MA-PDDL會停止運行,最終導致任務(wù)無法完成,而基于連續(xù)規(guī)劃的MA-PDDL會通過重新規(guī)劃找到一條新的解決方案,直到問題得到解決.
原系統(tǒng)中,當AGV在執(zhí)行動作的過程中環(huán)境發(fā)生改變時,系統(tǒng)采取的策略是暫停動作的執(zhí)行,AGV在原地等待直到系統(tǒng)環(huán)境恢復預期情況.如果系統(tǒng)環(huán)境的改變是長時間的或者是永久的,那么AGV完成任務(wù)的效率就會變低,甚至需要人工的參與才能完成任務(wù).實驗結(jié)果顯示,本文提出的方法是可以解決問題的,而且可以避免上述情況的發(fā)生,這也證明了在動態(tài)環(huán)境下,本文方法與傳統(tǒng)方法相比更有優(yōu)勢.
MA-PDDL在處理動態(tài)環(huán)境下的多Agent協(xié)作問題時,可能會出現(xiàn)環(huán)境突然發(fā)生改變而導致任務(wù)無法完成的情況,針對這一現(xiàn)狀,提出了一種基于MA-PDDL的連續(xù)規(guī)劃方法.對MA-PDDL進行了改進,在語言中加入了連續(xù)規(guī)劃元素,使其能夠通過連續(xù)規(guī)劃算法解決動態(tài)環(huán)境下的多Agent協(xié)作問題,避免了上述情況的發(fā)生.最后提出了一種改進語言的解析方法,實驗成功模擬了醫(yī)療垃圾無人運輸場景的運行過程,實現(xiàn)了動態(tài)環(huán)境下的多Agent協(xié)作.
改進之后方法雖然能夠解決問題,但是在時間上卻比MA-PDDL方法消耗更多,因為改進方法在每個動作執(zhí)行前都會同步一次系統(tǒng)環(huán)境,這個是需要花費時間的,在之后的研究中將會考慮將算法進行優(yōu)化,爭取在時間上的消耗達到最小.
[1]SMITH R G.The contract net protocol:high-level communication and control in a distributed problem solver[J].IEEE Transactions on Computers,1980,29(12):1104-1113.
[2]JENNINGS N R.Commitments and conventions:the foundation of coordination in multi-agent systems[J]. Knowledge Engineering Review,1993,8(3):223-250.
[3]NII P.The blackboard model of problem solving[J].AI Magazine,1986,7(2):38-53.
[4]林琳,劉鋒.基于改進合同網(wǎng)協(xié)議的多Agent協(xié)作模型[J].計算機技術(shù)與發(fā)展,2010,20(3):71-75.
LIN L,LIU F.A multi-agent cooperation model based onimprovedcontractnetprotocol[J].Computer Technology and Development,2010,20(3):71-75.
[5]唐賢倫,李亞楠,樊崢.未知環(huán)境中多Agent自主協(xié)作規(guī)劃策略[J].系統(tǒng)工程與電子技術(shù),2013,35(2):345-349.
TANG X L,LI Y N,F(xiàn)AN Z.Multi-agent autonomous cooperation planning strategy in unknown environment[J].System Engineering and Electronics,2013,35(2):345-349.
[6]宋涇舸,查建中,陸一平.智能規(guī)劃研究綜述——一個面向應(yīng)用的視角[J].智能系統(tǒng)學報,2007,2(2):18-25.
SONG J G,CHA J Z,LU Y P.Survey on AI planning research——anapplication-orientedperspective[J]. CAAI Transactions on Intelligent Systems,2007,2(2):18-25.
[7]CHIEN S,KNIGHT R,STECHERT A,et al.Integrated planning and execution for autonomous spacecraft[J]. IEEE Aerospace and Electronic Systems Magazine,2009,24(1):23-30.
[8]IZZO D,PETTAZZI L.Autonomous and distributed motion planning for satellite swarm[J].Journal of Guidance Control and Dynamics,2015,30(2):449-459.
[9]張彥鐸,李哲靖,魯統(tǒng)偉.機器人世界杯足球錦標賽中多機器人對目標協(xié)同定位算法的改進[J].武漢工程大學學報,2013,35(2):69-73.
ZHANG Y D,LI Z J,LU T W.Improvements of collaborative localization algorithm of multi-robot on target in ROBOCUP[J].Journal of Wuhan Institute of Technology,2013,35(2):69-73.
[10]魯統(tǒng)偉,林芹,李熹,等.記憶運動方向的機器人避障算法[J].武漢工程大學學報,2013,35(4):66-71.
LU T W,LIN Q,LI X,et al.Obstacle avoidance algorithm of robot based on recording move direction[J].Journal of Wuhan Institute of Technology,2013,35(4):66-71.
[11]張彥鐸,葛林鳳.一種新的基于MMAS的機器人路徑規(guī)劃方法[J].武漢工程大學學報,2009,31(5):76-79.
ZHANG Y D,GE L F.A novel method for robot's path planningbasedonandmax-minant system[J]. Journal of Wuhan Institute of Technology,2009,31(5):76-79.
[12]林川.基于PDDL的Web服務(wù)自動組合的描述[J].計算機應(yīng)用與軟件,2008,25(1):138-139.
LINC.Describitionofautomaticwebservices compositionbasedonPDDL[J].Computer Applications and Software,2008,25(1):138-139.
[13]FIKES R E,NILSSON N J.Strips:a new approach to the application of theorem proving to problem solving[J].Artificial intelligence,1971,2:608-620.
[14]MALIK G,HOWE A,KNOBLOCK C,et al.PDDL-the planning domain definition language,Technical Report CVC TR-98-003/DCS TR-1165[R].Connecticut:Yale Center for Computational Vision and Control,1998.
[15]KOVACS D L.A multi-agent extension of PDDL3.1[C]//TheAssociationfortheAdvancementof ArtificialIntelligence(AAAI).Workshoponthe InternationalPlanningCompetition,ICAPS-2012. Atibaia:AAAI Press,2012:19-27.
[16]BRENNER M,NEBEL B.Continual planning and actingindynamicmultiagentenvironments[J]. Autonomous Agents and Multi-agent Systems,2009,19(3):297-331.
[17]SAVANT AUTOMATION.Automated hospital cart transportationsystem[EB/OL].(2015-06-15)[2017-04-10].http://www.agvsystems.com/hospitalcarts.
本文編輯:陳小平
A Multi-Agent Cooperation Method in Dynamic Environment
WU Kun1,2,LIU Wei1,2*,LI Shuang1,2,WANG Jing1,2
1.School of Computer Science and Engineering,Wuhan Institute of Technology,Wuhan 430205,China;
2.Hubei Key Laboratory of Intelligent Robot(Wuhan Institute of Technology),Wuhan 430205,China
A multi-agent cooperation method was proposed based on multi-agent system continual planning in dynamic environment.First,the Multi-Agent Planning Domain Definition Language(MA-PDDL)was extended for describing the continual planning method by a user-defined function.Then,a continual planning algorithm based on extended MA-PDDL was proposed to deal with the uncertainty.Finally,a parsing method of the extended MA-PDDL was implemented,which simulated how agents execute tasks.The method successfully simulates the execution process of automated cart transportation in hospital,which validates its feasibility.
dynamicenvironment;multi-agentsystem;multi-agentcooperation;continualplanning;MA-PDDL
TP242
A
10.3969/j.issn.1674-2869.2017.02.015
1674-2869(2017)02-0186-07
2016-12-14
國家自然科學基金(61502355);國家測繪局測繪地理信息公益性行業(yè)科研專項(201412014);湖北省自然科學基金(2013CF125);武漢工程大學科學研究基金(K201475)
吳坤,碩士研究生.E-mail:kris_wu@foxmaill.com
*通訊作者:劉瑋,博士,副教授.E-mail:liuwei@wit.edu.cn
吳坤,劉瑋,李爽,等.一種動態(tài)環(huán)境下多Agent的協(xié)作方法[J].武漢工程大學學報,2017,39(2):186-192.
WU K,LIU W,LI S,et al.A multi-agent cooperation method in dynamic environment[J].Journal of Wuhan Institute of Technology,2017,39(2):186-192.