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