摘 要: 基于Agent的應(yīng)急響應(yīng)建模仿真具有優(yōu)越性和現(xiàn)實性,通過分析應(yīng)急響應(yīng)體系中Agent主體所應(yīng)具有的特征——反應(yīng)性,、推理性,、互動性和能動性,,構(gòu)建了基于BDI模型的反應(yīng)+思考+通信的混合型Agent結(jié)構(gòu),,并在NetLogo仿真平臺上實現(xiàn),。為今后進一步研究基于Agent的應(yīng)急管理建模仿真奠定研究基礎(chǔ),同時也為在NetLogo平臺下開發(fā)基于BDI模型的Agent結(jié)構(gòu)提供范式和標(biāo)準(zhǔn)。
關(guān)鍵詞: 應(yīng)急響應(yīng),;BDI模型;Agent結(jié)構(gòu),;NetLogo平臺
由于公共事件的突發(fā)及發(fā)展具有不可逆性和不可實驗性,建模仿真成為研究各類突發(fā)公共事件應(yīng)急管理的重要實驗手段之一,。Agent作為分布式人工智能概念模型,,具備自己行為,、目標(biāo)和知識,,是在一定環(huán)境下能自主運行的實體,,具有主動性,、獨立性,、智能性,、反應(yīng)性,、交互性等特點,,并具有良好的決策分析的能力,,能夠適應(yīng)應(yīng)急響應(yīng)過程建模的需要,。因此,基于Agent的應(yīng)急響應(yīng)建模仿真具有優(yōu)越性和現(xiàn)實性,。
本文通過研究和構(gòu)建應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu),,并在NetLogo平臺中實現(xiàn),為今后進一步研究基于Agent的應(yīng)急管理建模仿真奠定研究基礎(chǔ),;同時也為在NetLogo平臺下的程序開發(fā)工作,提供一定的Agent結(jié)構(gòu)的范式和標(biāo)準(zhǔn),。
1 BDI模型
BDI(Belief-Desire-Intention)模型是近年來學(xué)術(shù)界廣泛研究的一種基于思考型的Agent結(jié)構(gòu),其哲學(xué)觀點源自Bratman[1]在IRMA系統(tǒng)的設(shè)計中明確表示了信念,、愿望和意圖,,并將意圖看作部分行為計劃,這些計劃是Agent承諾執(zhí)行,、完成其目標(biāo)的計劃,,從而使Agent能夠根據(jù)資源的變化情況有效實現(xiàn)手段目的推理,。
BDI模型的結(jié)構(gòu)可以表示為[2]:
Agent::=<Aid,,P,B,,D,,I,,A,see,,brf,,options,,filter,,execute>.
其中,,Aid為某一具體Agent的標(biāo)識,;P為Agent的視覺狀態(tài)集,,即Agent所感知的外部事物,;B為Agent的信念,即對P進行的理解和認(rèn)知;D為Agent的愿望,,即對B所形成所要達到目標(biāo)的偏好和情感,;I為Agent的意圖,,即對達成D中的一項或多項愿望進行行動承諾,;A為Agent根據(jù)I所做出的行動集,;see、brf,、options,、filter、execute五個具體行為則用于刻畫出Agent的感知過程,、意念修正過程,、思維過程、愿望篩選過程和行為決策過程[2],。所以,,整個結(jié)構(gòu)可以理解為當(dāng)Agent接受或感知到一個事件時,它根據(jù)當(dāng)前環(huán)境狀態(tài)信息而構(gòu)成的信念庫,進行信念修正,,并完善信念庫,;然后根據(jù)實現(xiàn)狀態(tài)及意圖確定愿望,形成愿望庫,;經(jīng)規(guī)則推理及篩選函數(shù),,基于當(dāng)前信念、愿望及意圖的基礎(chǔ)上形成新的意圖庫,,最后Agent由該意圖驅(qū)使進行行為選擇,,并執(zhí)行活動。
本文所構(gòu)建的Agent結(jié)構(gòu)采取BDI模型,,這是因為Agent決策的制定過程依賴于表達Agent的信念,、愿望和意圖的行為操作來實現(xiàn),所以BDI結(jié)構(gòu)更接近人類的思維方式,,更能夠在應(yīng)急響應(yīng)過程中,,解釋各個主體的行為過程。
2 應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent基本結(jié)構(gòu)
應(yīng)急響應(yīng)環(huán)境下的Agent結(jié)構(gòu)建模是一個非常復(fù)雜的構(gòu)建過程,。(1)突發(fā)公共事件的場景是一個動態(tài)的,、不斷發(fā)生變化的場景,構(gòu)建的Agent必須能夠?qū)ν饨绛h(huán)境的改變做出及時的隨機應(yīng)變,,需要不斷地做出滾動決策和決策更新,,這一要求符合反應(yīng)型Agent的特征。(2)突發(fā)公共事件的應(yīng)急響應(yīng)過程是一個緊急,、錯綜復(fù)雜,、處理不當(dāng)可能會導(dǎo)致巨大損失的過程,需要做好事先的預(yù)案和演習(xí)工作,,要求Agent能夠按照事先的規(guī)劃進行及時,、有序的操作,這是思考型Agent的典型特征,。(3)突發(fā)公共事件的應(yīng)急響應(yīng)需要在指揮部的協(xié)調(diào)下,,各個職能部門協(xié)調(diào)溝通,、協(xié)同工作,,要求Agent之間能夠及時通信和消息共享,,有完善的協(xié)調(diào)商議機制,。
基于上述要求,,為應(yīng)急響應(yīng)所構(gòu)建的Agent結(jié)構(gòu)必須是一個具有信息感知,、匹配處理,、篩選決策,、執(zhí)行和與其他Agent通信能力的“反應(yīng)+思考+通信”混合結(jié)構(gòu),。因此,,本文提出基于BDI的Agent基本結(jié)構(gòu)可定義為一個九元組(主體標(biāo)識,、目標(biāo),、感知器、信念,、匹配器、篩選器,、意圖,、執(zhí)行器,、通信器),,即:
<AGENT>::=<主體標(biāo)識><目標(biāo)><感知器><信念><匹配器><篩選器><意圖><執(zhí)行器><通信器>
<主體標(biāo)識>::=<主體名><主體的相關(guān)屬性>
<目標(biāo)>::=<角色分配>
<感知器>::=<激活條件><信息流>
<信念>::=<任務(wù)表><知識庫>
<匹配器>::=<任務(wù)分解規(guī)則>
<篩選器>::=<策略配置機制>
<意圖>::=<事物名><事物處理描述>
<執(zhí)行器>::=<意圖的執(zhí)行者>
<通信器>::=<發(fā)送者><接收者><通信原語><通信內(nèi)容>
基于BDI的應(yīng)急響應(yīng)Agent基本結(jié)構(gòu)與BDI模型相比,增加了基于角色分配的Agent目標(biāo),、感知器,、匹配器、篩選器,、通信器等內(nèi)容,,同時進一步強調(diào)基于團隊目標(biāo)和個人目標(biāo)的深層次思考,決策過程中策略設(shè)置和求解,,外界環(huán)境和資源的變化,,以及團隊協(xié)作、信息共享對于Agent結(jié)構(gòu)的影響,,以此來提高Agent的反應(yīng)性,、互動性和能動性。
3 應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)框架
在基于BDI的Agent基本結(jié)構(gòu)基礎(chǔ)上,,考慮環(huán)境,、資源、目標(biāo),、組織給Agent帶來的影響,,進一步細化,、深化、模塊化,、多維地,、系統(tǒng)地來搭建Agent結(jié)構(gòu)框架體系,構(gòu)建出應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)框架,,并進行具體闡述,。
應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)框架如圖1所示,由感知模塊,、決策模塊,、執(zhí)行模塊、通信模塊四大模塊組成,,實現(xiàn)一個智能主體的整個活動過程,。
其中,感知模塊,、決策模塊,、執(zhí)行模塊三層順序結(jié)構(gòu)體現(xiàn)了Agent的自主思考性,;通信模塊對于感知模塊,、決策模塊的影響展現(xiàn)了Agent的社交性;感知模塊對于環(huán)境和資源的充分感知,,根據(jù)環(huán)境的變化所進行的動態(tài)裝載執(zhí)行模塊都說明了Agent具有良好的反應(yīng)性,;Agent在角色分配之后獲得角色責(zé)任和權(quán)限,即明確了自身的子目標(biāo)和組織的總體目標(biāo),,整個結(jié)構(gòu)框架體現(xiàn)了Agent是在目標(biāo)的引導(dǎo)下開展思考,、決策和行為,符合Agent的預(yù)動性要求,。
四大模塊中分別包含感知器,、信念、匹配器,、篩選器,、意圖、執(zhí)行器,、通信器七大功能件,,其中由于意圖的產(chǎn)生和執(zhí)行分屬于決策模塊和執(zhí)行模塊兩大模塊,所以意圖為跨模塊功能件,。同時,,Agent結(jié)構(gòu)中還包括任務(wù)分解、策略配置,、動態(tài)裝載,、通信標(biāo)準(zhǔn)等協(xié)議和規(guī)則,,確保Agent結(jié)構(gòu)的準(zhǔn)確、動態(tài),、協(xié)作性的運作的實現(xiàn),。
各模塊中的功能件的作用分別為(以應(yīng)急響應(yīng)過程中消防員Agent的行為為例):
(1)感知模塊
感知器是Agent獲得外部環(huán)境信息以及從Agent自身屬性獲取信息的部分,感知內(nèi)容形成Agent自身的信念,。應(yīng)急響應(yīng)過程中,,感知器幫助消防員Agent從應(yīng)急場景中了解到著火區(qū)域位置信息、需要救援市民的信息以及救援過程中所需要的其他相關(guān)信息等,。
信念為描述Agent對當(dāng)前環(huán)境的認(rèn)知和自身可能采取行為的估計,,形成任務(wù)集和知識庫。消防員Agent將所需要進行救援的人員和位置信息作為此時自身的信念,,并加入所要完成的任務(wù)集中,。
任務(wù)集與知識庫是用來儲存任務(wù)信念和知識信念的存儲器,通過感知器和信念更新進行不斷修正,。任務(wù)集中包括Agent所要完成的各項任務(wù),。任務(wù)可以來源于自身感知現(xiàn)場的發(fā)現(xiàn),也可能來自上一級的命令,。知識庫中可包括Agent的能力屬性及感知外界產(chǎn)生的知識,,如消防員Agent自身的滅火能力、行進能力,、救援能力,,以及消防員Agent根據(jù)演習(xí)結(jié)果或其他歷史經(jīng)驗確定到達救援現(xiàn)場的最短路徑等。
(2)決策模塊
匹配器的作用是根據(jù)信念產(chǎn)生的行為估計,,進行任務(wù)分解,,匹配選擇多個可行的行動。任務(wù)分解是指根據(jù)有限的元規(guī)則庫,,形成一定的任務(wù)集,。匹配器根據(jù)條件得出下一步能夠進行的行為。行為中包括為達成目標(biāo)所采取的各種類型(如消防員Agent的機動行為,、任務(wù)行為和通信行為),,機動行為包括尋找路線、尋找目標(biāo),、接近目標(biāo),;任務(wù)行為包括滅火、救人,、挖掘,、疏散、修路等,;通信行為包括下達命令,、接受命令,、請求協(xié)助、同意協(xié)助和拒絕協(xié)助等類型,。符合匹配條件的行為被匹配器輸入篩選器進行下一步精確過濾,。
篩選器的作用是在匹配后,根據(jù)一定的規(guī)則進一步選出一個最優(yōu)愿望,,形成意圖進行實施,。篩選最優(yōu)愿望就是對這些行為進行評估,找到最優(yōu)行為,。策略配置是根據(jù)一定規(guī)則策略的選擇和調(diào)整,,從眾多候選行為中選擇出一個最先執(zhí)行的行為形成意圖。策略配置受到外界環(huán)境(如社會)和資源限制的影響,,如消防員Agent在救援過程中,,策略配置可以分為確定救援目標(biāo)(最短距離目標(biāo)、最危險形勢目標(biāo)),,確定救援優(yōu)先性(以人為本,、以發(fā)現(xiàn)順序為本),確定協(xié)作方案(有內(nèi)部協(xié)作,、無內(nèi)部協(xié)作),,確定救援順序(多目標(biāo)記憶救援、單目標(biāo)順序救援)等,。
由于匹配器和篩選器的聯(lián)合作用,,已經(jīng)完整呈現(xiàn)出了BDI模型中愿望形成的整個過程,,所以,,在本模型結(jié)構(gòu)中,愿望以虛線框形式表現(xiàn),,并非某個真實存在的功能件,。
(3)執(zhí)行模塊
意圖用來描述Agent為達到某個具體目標(biāo)所做出的承諾,是Agent下一步立刻執(zhí)行的行動,。意圖的執(zhí)行是通過裝載n個不同的意圖子模塊來實現(xiàn)的,。動態(tài)裝載是指根據(jù)團隊協(xié)作的需要、環(huán)境資源發(fā)生的變化以及篩選器的規(guī)則過濾,,動態(tài)添加,、改變執(zhí)行順序或者刪除某個意圖子模塊,來實現(xiàn)Agent具有良好的即時反應(yīng)能力,。消防員Agent擁有救人子意圖,、滅火子意圖、搜尋子意圖,,以及根據(jù)救援現(xiàn)場的實際情況變化,,對于這些基本子意圖的動態(tài)組合或動態(tài)更新,。
執(zhí)行器是用于執(zhí)行意圖的效應(yīng)器。它能根據(jù)消防員Agent知識庫中的能力屬性,,如視距,、視角、聽覺,、滅火距離,、速度、方位等性能指標(biāo),,實現(xiàn)諸如機動或救人任務(wù),、滅火任務(wù)等意圖。意圖在執(zhí)行過程中,,受到外界資源的限制,,同時對外界環(huán)境產(chǎn)生影響。
(4)通信模塊
通信器用于與其他Agent進行聯(lián)系,,如傳達命令,、協(xié)同配合等。通信器主要由消息發(fā)送,、消息接收,、消息處理等子模塊構(gòu)成。得到的有用信息被反饋到感知器,,以不斷更新信念和任務(wù)集等動態(tài)因素,,使以后的判斷和行動更加正確有效。消防員Agent在救援過程中,,可以和其他消防員Agent,、等待救援的市民Agent、指揮Agent等進行即時通信,,以完成高效,、及時的救援工作。
4 應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)的仿真實現(xiàn)
Netlogo是一個由美國西北大學(xué)Center for Connected Learning研發(fā)的模擬自然和社會現(xiàn)象多實體編程語言和仿真平臺[3],,尤其適合復(fù)雜性系統(tǒng)的開發(fā),。開發(fā)者可對成百上千個相互依賴且并行運行的Agent發(fā)實時指令,與突發(fā)公共事件應(yīng)急響應(yīng)的環(huán)境要求十分相似,,故本文采用Netlogo對應(yīng)急響應(yīng)過程進行建模仿真研究,,并實現(xiàn)應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)。
在研究過程中,,通過不斷地改進和修正,,在NetLogo開發(fā)平臺上實現(xiàn)了本文所提出的應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)。在仿真過程中,,消防員Agent結(jié)構(gòu)包括四個模塊:感知模塊,、決策模塊,、執(zhí)行模塊、通信模塊,。決策模塊和通信模塊是整個仿真程序的核心部分,。
(1)決策模塊
根據(jù)本文所提出的Agent結(jié)構(gòu)模型,決策模塊由匹配器和感知器組成,,對產(chǎn)生的信念進行任務(wù)匹配和策略配置,,形成可執(zhí)行的意圖,對于仿真程序來說,,即是一組基于if-then的元規(guī)則庫,。
(2)通信模塊
本文所提出的Agent結(jié)構(gòu)模型的通信模塊,采取的通信標(biāo)準(zhǔn)為FIPA-ACL通信標(biāo)準(zhǔn)[4-5],,包含消息發(fā)送方,、消息接收方、消息類型,、消息內(nèi)容等四大基本內(nèi)容,。在NetLogo平臺的實現(xiàn)過程中,可調(diào)用平臺所提供的communication.nls庫[6-7],,簡化,、減少程序的開發(fā)量。
(3)感知模塊和執(zhí)行模塊
感知模塊和執(zhí)行模塊是仿真程序的重要組成部分,,模塊中的過程和方法供決策模塊和通信模塊調(diào)用執(zhí)行,。其中,為了有效實現(xiàn)BDI模型結(jié)構(gòu)和減少程序的開發(fā)量,,這兩個模塊中均調(diào)用了Netlogo平臺所提供較為成熟和穩(wěn)定的bdi.nls庫[6-7],。
感知模塊中,根據(jù)組織中不同層級,、不同權(quán)限的Agent,,提供了不同的視圖,,視圖范圍通過賦予Agent不同的屬性變量加以實現(xiàn),。其中,指揮層級擁有全局視圖,,可根據(jù)整個城市(或仿真系統(tǒng)邊界內(nèi))的應(yīng)急需求,,通盤統(tǒng)籌考慮資源的調(diào)撥和協(xié)調(diào);隊長層級擁有區(qū)域視圖,,能夠及時了解某一個救災(zāi)片區(qū)中消防隊員的救援情況,,根據(jù)實際的災(zāi)害情況,做出指揮和部署,。在缺乏所需要的救災(zāi)資源時,,向上級部門請求調(diào)撥,;隊員層級擁有視域視圖,受視力范圍所限,,只能感知到周圍環(huán)境的變化,,并在隊長的指揮和隊友的通信交互過程中,協(xié)作完成救援任務(wù),。
執(zhí)行模塊則調(diào)用bdi.nls庫中的intention子過程,,實現(xiàn)intention模塊中的執(zhí)行程序動態(tài)添加、更新和刪除,,確保Agent能夠快速應(yīng)對環(huán)境和任務(wù)的變化,,準(zhǔn)確執(zhí)行篩選器中選出的最優(yōu)行為,提高Agent的個體效率,,使整個多Agent系統(tǒng)達到全局最優(yōu),。
本研究使用Netlogo平臺實現(xiàn)應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)的部分仿真程序,實現(xiàn)了消防員在建筑內(nèi)部滅火救人的基本場景,,如圖2所示,。整個大矩形代表某個著火的建筑物;里面的小矩形塊代表著火地塊,,即著火點,;圓點代表樓內(nèi)市民;消防員集中在建筑的出入口處,,整裝待命,;外圈部分則是用于市民逃生的道路;右下角的小地塊則代表公共綠地或者逃生人員集中地,;各個控件是不同策略配置的開關(guān)控件,。本文所提出的模型結(jié)構(gòu)能夠在NetLogo平臺上順利執(zhí)行實現(xiàn),取得了仿真所要達到的數(shù)據(jù)和效果,,如圖3所示,。應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)能夠?qū)ν话l(fā)公共事件應(yīng)急管理研究起到較好地支撐作用,同時也為基于BDI模型的Agent結(jié)構(gòu)在Netlogo環(huán)境下的編程開發(fā)工作提供了范例,,具有一定的通用性,。
通過NetLogo平臺的仿真結(jié)果證明,本文所構(gòu)建的應(yīng)急響應(yīng)環(huán)境下基于BDI模型的Agent結(jié)構(gòu)符合應(yīng)急響應(yīng)場景救援工作的需要,,具有一定的通用性,,為進一步研究應(yīng)急響應(yīng)過程中的指揮控制、協(xié)同協(xié)作,、信息共享提供了基本場景,,為研究應(yīng)急響應(yīng)過程中各Agent的行為提供了解釋結(jié)構(gòu),為基于BDI模型的Agent結(jié)構(gòu)在Netlogo環(huán)境下的編程開發(fā)工作提供了范例。在今后的研究工作中,,將以此Agent結(jié)構(gòu)模型為研究基礎(chǔ),,進一步研究應(yīng)急響應(yīng)過程中組織的動態(tài)調(diào)整、協(xié)同計劃和團隊協(xié)作等內(nèi)容,。
參考文獻
[1] O’HARE G M P,, JENNINGS N R. Foundations of distributed artificial intelligence[M]. John Wiley&Sons, Inc. 1996: 505-526.
[2] KINNY D,, GEORGEFF M,, RAO A. A methodology and modeling technique for systems of BDI agents[A].In W. VELDE V, PERRAM J W,, Agents breaking away[C]. Proceedings of the Seventh European Workshop on Modeling Autonomous Agents in a Multi-Agent World (LNAI Volume 1038),, Springer-Verlag: Berlin, Germany,, 1996,, 56-71.
[3] WILENSKY U. Netlogo center for connected learning and computerbased modelling, Northwestern University,, Evanston,, IL(1999), http://ccl.northwestern.edu/netlogo
[4] 張德同,,周明全,,耿國華.FIPA規(guī)范:Agent系統(tǒng)的開放標(biāo)準(zhǔn)[J].計算機科學(xué),2002.29(10):30-32.
[5] FIPA Content Language Specifications. Foundation for Intelligent Physical Agents,, 2003. http://www.fipa.org/repository/cls.php3.
[6] SAKELLARIOU I,, KEFALAS P, STAMATOPOULOU I. Enhancing NetLogo to simulate BDI communicating agents [M]. SETN 2008,, LNAI 5138,, pp. 263–275, 2008.
[7] SAKELLARIOU I. Extending NetLogo to support BDI-like architecture and FIPA ACL-like message passing: Libraries,, Manuals and Examples (2008),, http://eos.uom.gr/~iliass/projects/NetLogo.