劉 靜,程 樺
(1.中國人民武裝警察部隊學(xué)院消防指揮系,河北廊坊065000;2.安徽大學(xué)資源與環(huán)境工程學(xué)院,安徽合肥230039)
Agent概念源于人們對于人工智能的認識,人工智能的最終目標就是要實現(xiàn)具有智能的、能夠代替人來處理事務(wù)的“代理”[1].Agent和多Agent系統(tǒng)具有對人類社會系統(tǒng)自然的描述能力特點,本文采用多Agent的方法進行聯(lián)合滅火救援組織指揮的研究是可行的.
文中擬構(gòu)造一個聯(lián)合滅火救援的多Agent系統(tǒng),該系統(tǒng)由多個Agent組成,Agent間按照聯(lián)合滅火救援組織指揮機制進行相互之間的信息交換的協(xié)作,互相影響彼此的行動過程,即構(gòu)建一個由多個Agent組成的聯(lián)合滅火救援模型,最后用Swarm仿真平臺驗證模型的有效性.
將多Agent聯(lián)合滅火救援作戰(zhàn)模型用一個四元組來定義:
其中:REM為救援環(huán)境模型;RC為指揮Agent;RA為作戰(zhàn)Agent;INAC為Agent之間的交互關(guān)系.它們共同組成了多Agent作戰(zhàn)模型的基本結(jié)構(gòu).
E是聯(lián)合滅火救援環(huán)境空間集合,R是指揮空間集合,A是作戰(zhàn)Agent空間集合,即作戰(zhàn)力量編成集合,這樣就建立了聯(lián)合滅火救援作戰(zhàn)的多Agent系統(tǒng),E,R和A都可以看作是有限集合,分別代表系統(tǒng)空間集合,E×R×A即為聯(lián)合滅火救援作戰(zhàn)系統(tǒng)空間.將對應(yīng)的問題定義為Q,Q為E,R和A的函數(shù),可表示為
式中:E={E1,E2,…,Eα};R={R1,R2,…,Rβ}; A={A1,A2,…,Aγ}.
在聯(lián)合滅火救援多Agent系統(tǒng)中各空間集合在系統(tǒng)運行時都是一個信息處理函數(shù),E,R和A在作戰(zhàn)指揮中相互影響,通過不斷改變自身的狀態(tài)而生成動作執(zhí)行結(jié)果.聯(lián)合滅火救援環(huán)境集合不斷受到指揮機構(gòu)和作戰(zhàn)Agent信息處理函數(shù)的作用改變救援環(huán)境狀態(tài)空間,同樣,指揮機構(gòu)和作戰(zhàn)Agent也會由于救援環(huán)境信息處理函數(shù)的不斷變化,調(diào)整內(nèi)部的參數(shù)和狀態(tài),以適應(yīng)動態(tài)的作戰(zhàn)態(tài)勢.因此,對于聯(lián)合滅火救援多Agent問題我們將重新描述為
式中:C={C1,C2,…,Cξ};Ck:E×R×A→P,(k=1,2,…,ξ).這里Ck定義為一個二階函數(shù),這里的E× R×A為函數(shù)空間,R為實數(shù)空間,×表示笛卡兒乘積.Ck即為E×R×A到P的映射.這樣Agent自身的行為處理結(jié)果用Q函數(shù)進行度量,從而實現(xiàn)了其形式化的描述.
這樣聯(lián)合滅火救援作戰(zhàn)系統(tǒng)中的多Agent問題就轉(zhuǎn)化為如下行為動作函數(shù),即:當給定E,R和A,采取何種作戰(zhàn)方式和戰(zhàn)術(shù)措施,使C滿足下式:
指揮Agent中具有相應(yīng)的指揮范圍和指揮控制規(guī)則,主要行為模式有:接收上級下達的作戰(zhàn)行動命令和指示,向上級匯報作戰(zhàn)行動進展情況、請求力量增援,并與同級指揮Agent交流信息等,指揮Agent模型如圖1所示.
圖1 指揮Agent模型
由圖1可知:指揮Agent首先獲取外部環(huán)境情況,這一過程是通過信息感知模塊經(jīng)由信息模塊完成的,在非緊急情況下,由決策模塊調(diào)用規(guī)劃模塊對感知到的獲取的信息進行分析、判斷并作出決策,分析和決策結(jié)果傳遞到控制模塊,由控制模塊來做出響應(yīng),產(chǎn)生行動.其中,規(guī)劃模塊的推理分析模塊進行救援力量調(diào)集,突發(fā)情況下,直接根據(jù)規(guī)則做出反應(yīng).
作戰(zhàn)Agent是信念(belief)、意圖(desire)、目標(intention)即BDI解釋模型[2-3].信念、愿望和意圖被當做Agent基本的思維屬性,作戰(zhàn)Agent中的BDI模型描述了思維屬性及其各屬性之間的相互關(guān)聯(lián),以及各行為的關(guān)系.
信念是對當前狀況的認知,根據(jù)自身對周圍環(huán)境的了解和認識對所要達到的期望效果采取的行為有一個大致的估計[4-5].愿望是對未來狀況的偏好.愿望表現(xiàn)的是對未來可能出現(xiàn)的狀況和可能采取的行為的喜好,所描述的愿望不一定是可實現(xiàn)的.愿望中包括Agent的目標,目標是從愿望中選擇的可實現(xiàn)的子集.但是由于受到資源和環(huán)境的限制,不可能所有的目標都能夠?qū)崿F(xiàn),選擇某個目標或者目標集并采取具體行動的承諾就形成了意圖.意圖是對未來的意向[6].意圖是已經(jīng)選定的目標集以及確定的相對應(yīng)的處理狀態(tài),是對Agent行為的引導(dǎo)和監(jiān)督.
在實際作戰(zhàn)仿真應(yīng)用中,通常將環(huán)境建模納入戰(zhàn)術(shù)建模的范疇[7-8].環(huán)境建模中,應(yīng)對地理環(huán)境、氣象環(huán)境、水源環(huán)境及特殊環(huán)境等進行定性定量描述和建模.
一個完整的救援現(xiàn)場環(huán)境包括地理環(huán)境,氣象條件、水源條件以及其他特殊環(huán)境等方面.在模型中,根據(jù)環(huán)境惡劣程度來決定救援的持續(xù)時間,為了描述方便,文中將環(huán)境惡劣程度用環(huán)境系數(shù)來表示.環(huán)境系數(shù)是指救援環(huán)境中每個坐標點的一個災(zāi)害系數(shù),代表了危險源的災(zāi)害程度和救援難度,災(zāi)害程度和救援難度的因素包含了救援現(xiàn)場的人員被困情況、氣候情況、受損程度、次生災(zāi)害發(fā)生的情況、應(yīng)急物質(zhì)的儲備情況以及當?shù)氐膽?yīng)急管理體制等各種因素,文中在建立模型時把這些因素綜合起來,用一個環(huán)境系數(shù)來表示.環(huán)境系數(shù)越大,代表該救援環(huán)境的災(zāi)害程度越高,并且這個環(huán)境系數(shù)將直接影響到救援活動的持續(xù)時間,即救援效率.
多Agent仿真平臺Swarm是研究復(fù)雜自適應(yīng)系統(tǒng)的模擬工具集[9],是1994年由圣塔菲研究所(SFI)開發(fā)的,其主要目的是進行復(fù)雜適應(yīng)系統(tǒng)的分析和研究[10].平臺提供了一個面向?qū)ο蟮目蚣?,通過建立模型對相互作用的智能體及其行為進行仿真模擬[11].
聯(lián)合滅火救援作戰(zhàn)中作戰(zhàn)Agent具有多個種類,可以是水編成Agent、泡沫編成Agent以及混合編成Agent等.個體Agent建模包括對系統(tǒng)中實體類型的劃分和各類實體的具體建模.
3.2.1 實體類型劃分
表1給出了聯(lián)合滅火救援作戰(zhàn)中的各種作戰(zhàn)、指揮實體類型及其與作戰(zhàn)相關(guān)特性的描述.
以水為主要滅火劑的救援戰(zhàn)斗編成簡稱為水編成.主要適用于建筑火災(zāi)的撲救、石油化工火災(zāi)的冷卻、防護與滅火,氣體泄漏的稀釋、防護與洗消等.一般首車出水槍或水炮,二、三車為首車供水.水編成一般不超過3輛水罐車.
泡沫編成是以泡沫為主要滅火劑的滅火救援戰(zhàn)斗編成,主要由水罐車和泡沫車構(gòu)成,適用于石油化工火災(zāi)的的滅火、冷卻、防護與液體泄漏的覆蓋,以及封閉式地下建筑火災(zāi)的撲救等.
混合編成是指在水編成或泡沫編成的基礎(chǔ)上,添加其他專勤裝備的戰(zhàn)斗編成.通常情況下,是以專勤車輛和大功率消防車輛為主,對五車或五車以上作戰(zhàn)進行編成.五車或五車以上作戰(zhàn)是在三車編成的基礎(chǔ)上,增加搶險救援車、舉高車、防化洗消車等特種車輛,模式一般以撲救的火災(zāi)類型來確定.混合編成在編成表里不以分類體現(xiàn),而是編在其他編成里,以便簡化調(diào)集程序.在實戰(zhàn)調(diào)集中,某些專勤裝備可視情而調(diào).
表1 Agent實體描述
3.2.2 聚合Agent模型
聚合Agent模型描述聯(lián)合滅火救援作戰(zhàn)中各類實體之間的交互機制.圖2中對聯(lián)合滅火救援作戰(zhàn)中各實體的關(guān)聯(lián)與交互進行了描述.
圖2 聯(lián)合滅火救援各Agent聚合模型
以上對聯(lián)合滅火救援作戰(zhàn)各類Agent及其交互進行了概要描述.對于Agent內(nèi)部建模所采用的各種模型已有相應(yīng)的研究,此處不再展開闡述.
3.2.3 協(xié)同建模
聯(lián)合滅火救援作戰(zhàn)仿真中指控單元、作戰(zhàn)單元和預(yù)警單元使用信息網(wǎng)絡(luò)協(xié)同作戰(zhàn),為此必須對其協(xié)同進行詳細建模.
3.2.3.1 指揮實體間的協(xié)同通信實現(xiàn)
指揮控制建模(協(xié)同組織中各種類別信息確定)中根據(jù)消防部隊戰(zhàn)斗條令和作戰(zhàn)指揮實際,設(shè)置了指揮控制建模過程中指揮Agent和作戰(zhàn)Agent之間可能涉及到的交互信息,共有3類:命令類(command)是指上級指揮機關(guān)下達給下級指揮機關(guān)或下屬部隊的作戰(zhàn)命令;上報類(report)是下級向上級報告救援現(xiàn)場信息以及作戰(zhàn)效果的信息;請求類(request)是指指揮Agent或者作戰(zhàn)Agent向其他A-gent請求增援或協(xié)助的交互信息.這3類信息在聯(lián)合滅火救援仿真模型中最為標準的通信語言為指揮控制建模提供信息交互.通信是保障組織指揮跨地區(qū)救援行動正常運作必要條件,它主要包括3個方面的內(nèi)容,一是體現(xiàn)上級意圖的各種指示、命令,如上級中央政府、部門對事故處置的一系列指示,救援指揮部的有關(guān)戰(zhàn)斗的命令,這是各支救援隊伍規(guī)范自身行動的基本依據(jù).二是供指揮者進行滅火與應(yīng)急救援決策的各種情報信息,如救援對象情況、火災(zāi)燃燒情況、作戰(zhàn)環(huán)境情況、交通道路情況、水源情況和消防部隊戰(zhàn)斗力情況等,是指揮者定下正確滅火戰(zhàn)斗決心的基本依據(jù).救援對象信息是指揮員實施指揮的首要信息,無論是定下決心還是制定具體作戰(zhàn)計劃,都脫離不了對救援對象情況的了解.如在撲救失事飛機火災(zāi)時,指揮員首先要知道飛機的基本結(jié)構(gòu)、機上人員情況、緊急逃生通道、飛機油箱的油料情況等.三是救援行動中的各種請求信息,是上級部門和指揮人員協(xié)調(diào)控制各救援隊伍救援行動的依據(jù),如需要哪些增援力量,物資補給等.
在建立協(xié)作模型時,采用了基于合同網(wǎng)的協(xié)同工作模型,根據(jù)作戰(zhàn)階段的劃分,將現(xiàn)場指揮所視為單個指揮Agent,將作戰(zhàn)編成視為一個作戰(zhàn)Agent,這樣整個仿真系統(tǒng)就構(gòu)成了一個多Agent系統(tǒng),模型的描述算法步驟如下:①在作戰(zhàn)Agent以及指揮A-gent間建立目標任務(wù)規(guī)劃;②根據(jù)協(xié)同算法來執(zhí)行該算法;③如果某一Agent的任務(wù)沒有完成,那么它將請求指揮Agent進行增援,這樣,指揮Agent就需要按照戰(zhàn)斗條令以及總隊、支隊及中隊相協(xié)調(diào)的原則重新進行任務(wù)分配,然后轉(zhuǎn)步驟②;④任務(wù)執(zhí)行完畢,繼續(xù)進行下一作戰(zhàn)階段的作戰(zhàn).
3.2.3.2 目標任務(wù)分配算法
下面給出了求解任務(wù)分配問題算法求解整體過程的偽碼描述.
1)子任務(wù)生成與問題分解
子任務(wù)生成過程可看作是目標明確化的過程:該過程開始于總指揮采用一個抽象目標并形成一個抽象的規(guī)劃.該規(guī)劃由對其作戰(zhàn)Agent的直接命令構(gòu)成,這些命令被采納為下屬的目標.該過程繼續(xù)直至單元層,該層 Agent將生成并執(zhí)行詳細的規(guī)劃(OperationalPlans)來實現(xiàn)這些目標.例如其內(nèi)容是指揮官(Commander)下令戰(zhàn)斗組進行滅火總攻,任務(wù)需要泡沫編成戰(zhàn)斗組(Foam Group)與水編成戰(zhàn)斗組(Engine Group)協(xié)同完成.
具體任務(wù)規(guī)劃過程如下:
(1)Commander建立問題分解,首先詢問下屬泡沫編成和水編成,選取最具能力的Agent.
(2)假設(shè)Foam Group[i]與Engine Group[j]為可選Agent,分別賦予它們子目標.
(2.1)Engine Group[j]Leader根據(jù)上級目標為泡沫編成和水編成制定規(guī)劃,偵察單元首先進行偵察,作戰(zhàn)單元移動至Point1觀察,然后開始進攻.
(2.2)Foam Group[i]Leader為下屬單元制定規(guī)劃,移動至Point2觀察,然后開始進攻.
2)協(xié)作具體算法實現(xiàn)
模擬器生成的規(guī)劃由多Agent仿真模型進行檢驗.協(xié)同規(guī)劃模擬器中的Agent角色有作戰(zhàn)單元、前沿指揮所、現(xiàn)場作戰(zhàn)和總指揮,它們的組織等級依次遞增.作戰(zhàn)單元和前沿指揮所具有4種能力:偵察、通信、機動以及救援能力.這4種能力分別定義如下:①偵察:作戰(zhàn)單元的偵察能力由偵察范圍以及描述偵察正確性隨救援現(xiàn)場情況變化的函數(shù)f(r)進行定義,其中{f(r)|r救援現(xiàn)場變化情況};②通信能力:通過單元定制的規(guī)劃,傳達task指令;③機動:智能體機動能力具有救援現(xiàn)場環(huán)境約束Fterrain (根據(jù)交通、建筑、消防通道定義折扣因子),并受自身裝備情況Eequipment影響;④救援能力:智能體救援能力由出水強度Fpower,控制范圍Frange定義.
仿真試驗在SWARM-2.1.1平臺下采用JAVA語言編程,建立了聯(lián)合滅火救援仿真模型,并運行SWARM.
作戰(zhàn)Agent調(diào)用環(huán)境的屬性和方法,是整個仿真系統(tǒng)實現(xiàn)的載體,代碼如下:
指揮Agent是系統(tǒng)中最為重要的Agent.它提供了系統(tǒng)的各種參數(shù)以及獲取和設(shè)置參數(shù)的方法,以便其他相關(guān)類進行調(diào)用,其代碼如下:
環(huán)境Agent主要包括坐標屬性描述環(huán)境Agent的“環(huán)境系數(shù)”屬性,是為作戰(zhàn)Agent和指揮Agent提供判斷依據(jù),代碼如下:
Swarm仿真系統(tǒng)運行如圖3所示.
圖3 Swarm仿真初期
由圖3可見,當救援力量沒有到達現(xiàn)場時,救援成功率顯示為負數(shù),當初戰(zhàn)力量到場,一般指的是轄區(qū)中隊到場之后開始進行救援,救援成功率呈現(xiàn)出增長趨勢,但是顯然對于重特大災(zāi)害事故,初戰(zhàn)力量明顯處于劣勢,和火勢的對比呈現(xiàn)出敵強我弱的態(tài)勢,圖中仍呈現(xiàn)出救援成功率在0以下.15 min之后,也就是常說的“十五分鐘消防”的概念,救援成功率開始出現(xiàn)正增長,說明有增援力量到場之后,力量對比態(tài)勢發(fā)生改變,雖然到場力量仍處于劣勢,但已經(jīng)開始呈現(xiàn)增長趨勢,這個時期是進行搜索和偵察的最佳時期.
隨著時間的推進,到場力量逐漸增多,作戰(zhàn)A-gent不斷加入到滅火戰(zhàn)斗中,這時成功率逐漸開始增長,由于力量調(diào)集和部署需要一定的時間,同時在作戰(zhàn)行動中需要陣地轉(zhuǎn)移,所以在部分時間段可能出現(xiàn)負增長,因此在圖4顯示中呈現(xiàn)不穩(wěn)定狀態(tài),這也是火場復(fù)雜性的一個充分表現(xiàn).
圖4 作戰(zhàn)Agent增加的Swarm仿真圖
隨著時間的繼續(xù)推移,如圖5,6所示救援成功率不會呈現(xiàn)出大幅波動,會逐漸增長,直至最后火災(zāi)撲滅,整個滅火戰(zhàn)斗成功.
圖5 Swarm仿真推進圖
圖6 Swarm仿真繼續(xù)推進圖
1)文中構(gòu)造了聯(lián)合滅火救援的多Agent系統(tǒng),該系統(tǒng)由指揮Agent、作戰(zhàn)Agent和救援環(huán)境Agent組成,并對指揮Agent和救援救援環(huán)境Agent進行了詳細描述.該系統(tǒng)使作戰(zhàn)實體既能體現(xiàn)所有單元具有自治性,同時又能層次化地描述出救援現(xiàn)場上具有嚴格等級的指揮控制關(guān)系,與聯(lián)合滅火救援作戰(zhàn)的思想和作戰(zhàn)模式相對應(yīng).
2)采用多Agent理論中的合同網(wǎng)協(xié)議,提出了聯(lián)合滅火救援的任務(wù)優(yōu)化分配和協(xié)作算法.
3)利用多Agent軟件工具集和通用軟件平臺(SWARM),用JAVA語言編程,進行了模擬仿真,并開發(fā)了一個原型系統(tǒng),對文中構(gòu)造的模型及相應(yīng)機制進行了功能驗證.
References)
[1] Wang Fuzhong.A decision support system for logistics distribution network planning based on multi-agent systems[C]∥Proceedingsof the Ninth International Symposium on Distributed Computing and Applications to Business,Engineering and Science.Hong Kong:IEEE Computer Society,2010:214-218.
[2] Lan Hai,Xiao Yunyun,Zhang Lijun.Multi-agent system optimized reconfiguration of shipboard power system[J].Journal of Marine Science and Application,2010,9(3):334-339.
[3] 路大為.基于 Swarm平臺的群體性事件仿真研究[J].中國應(yīng)急救援,2012(6):38-40.
Lu Dawei.Group events simulation research based on Swarm platform[J].Chinese Emergency Rescue,2012 (6):38-40.(in Chinese)
[4] 蔡紅柳,田 磊,高 朦.多Agent的網(wǎng)絡(luò)對抗系統(tǒng)仿真建模[J].四川兵工學(xué)報,2012,33(12):90-93.
Cai Hongliu,Tian Lei,Gao Meng.Simulation module on multi-agent net combat system[J].Journal of Sichuan Ordnance,2012,33(12):90-93.(in Chinese)
[5] 曹 琦,何中市,余 磊.基于HLA的Agent-DEVS協(xié)同仿真建模[J].江蘇大學(xué)學(xué)報:自然科學(xué)版,2011,32 (2):217-222.
Cao Qi,He Zhongshi,Yu Lei.Collaborative modeling and simulation of Agent-DEVSbased on HLA[J].Journal of Jiangsu University:Natural Science Edition,2011,32(2):217-222.(in Chinese)
[6] Ishii Hitoshi,Oda Eisei.Reproducibility and validity of a satisfaction questionnaire on hypoglycemic agents:the oral hypoglycemic agent questionnaire(OHA-Q)[J].Diabetology International,2012,3(3):152-163.
[7] Yang Haidong,E Jiaqiang,Qu Ting.Multidisciplinary design optimization for air-condition production system based on multi-agent technique[J].Journal of Central South University of Technology:English Edition,2012,19 (2):527-536.
[8] Birukou Aliaksandr,Blanzieri Enrico,Giorgini Paolo.Implicit:a multi-agent recommendation system for web search[J].Autonomous Agents and Multi-Agent Systems,2012,24(1):141-174.
[9] 余柏峰,張 輝.基于swarm仿真平臺的合同網(wǎng)協(xié)議的應(yīng)用分析[J].計算機仿真,2008,25(9):179-181.
Yu Baifeng,Zhang Hui.Simulation and analysis of contract net protocol based on swarm multi-agent computer simulation platform[J].Computer Simulation,2008,25 (9):179-181.(in Chinese)
[10] 劉 貞,程勇軍.Swarm for Java仿真及編程實現(xiàn)[M].北京:機械工業(yè)出版社,2009.
[11] Ma Cuiqin,Zhang Jifeng.On formability of linear continuous-timemulti-agent systems[J].Journal of Systems Science and Complexity,2012,25(1):13-29.