污水處理智能化系統(tǒng)的Multi-Agent通信技術(shù)與實現(xiàn)
1 基于Multi-Agent的污水處理分布式智能化系統(tǒng)
基于Multi-Agent的污水處理智能化系統(tǒng)模型結(jié)構(gòu)如圖1所示。系統(tǒng)中每個Agent根據(jù)環(huán)境信息完成各自承擔(dān)的工作,多個Agent分工協(xié)作,形成一個有組織、有秩序的群體,共同完成特定的任務(wù)。本文引用地址:http://2s4d.com/article/157574.htm
執(zhí)行Agent位于現(xiàn)場層,實現(xiàn)參數(shù)采集及現(xiàn)場控制的功能;沖突消解Agent是該智能化系統(tǒng)的核心,其功能是通過對任務(wù)規(guī)劃信息、故障信息、系統(tǒng)狀態(tài)信息以及其他Agent的協(xié)作請求信息等的融合,對 Agent行為所產(chǎn)生的沖突進(jìn)行消解;數(shù)據(jù)服務(wù)Agent的功能是為其他Agent提供統(tǒng)一、靈活的訪問實時數(shù)據(jù)庫的接口;軟測量Agent的功能是通過易測變量與難測變量之間的數(shù)學(xué)關(guān)系,實現(xiàn)難測變量的測量;故障診斷Agent是一個專家系統(tǒng),可對污泥膨脹、污泥解絮、曝氣池泡沫等故障現(xiàn)象進(jìn)行診斷,并提出解決對策。
Agent間相互交換信息、進(jìn)行協(xié)調(diào)或合作、解決超出單個Agent能力或知識的問題,并真正具有社會性的關(guān)鍵是Agent間可以通信。因此, Agent通信是Multi-Agent系統(tǒng)研究的重要問題之一。
2 MAS的通信語言
Agent通信語言(Agent Communication Language,ACL)提供了Agent之間交換信息和知識的工具,使Agent之間相互作用達(dá)到求解問題的目的。ACL使Agent通信建立在知識級別(Knowledge Level)上,從而使Agent間的通信效率大大高于傳統(tǒng)的分布式計算中的通信。
目前主要有兩種ACL,一種是1993年美國ARPA的KSE 研究小組提出的KQML(Knowledge Query and Manipulation Language);另一種是1997年歐洲的FIPA(Foundation for Intelligent Physical Agents)協(xié)會制定的開放性標(biāo)準(zhǔn)FIPA-ACL。FIPA標(biāo)準(zhǔn)由一系列規(guī)范組成,用于規(guī)范一個應(yīng)用程序內(nèi)部Agent之間和不同應(yīng)用程序Agent之間的互操作,并對多Agent應(yīng)用程序互操作中相應(yīng)的功能模塊進(jìn)行標(biāo)準(zhǔn)化。由于FIPA-ACL在構(gòu)建新的原語方面具有很強(qiáng)的能力,并且采用SL(Semantic Language)作為它的內(nèi)容語言來描述Agent的狀態(tài),所以,F(xiàn)IPA-ACL有逐漸代替KQML的趨勢。
2.1 FIPA-ACL的系統(tǒng)組成
FIPA標(biāo)準(zhǔn)由一系列規(guī)范組成,每個規(guī)范對多Agent應(yīng)用程序互操作中相應(yīng)的功能模塊進(jìn)行標(biāo)準(zhǔn)化。FIPA-ACL規(guī)范集合在整個FIPA規(guī)范中的位置及其內(nèi)部的功能規(guī)范組成結(jié)構(gòu)如圖2所示。
由圖2可見,F(xiàn)IPA-ACL規(guī)范集合是整個FIPA標(biāo)準(zhǔn)中極其重要的組成部分,它與Agent管理規(guī)范集合、Agent消息傳輸規(guī)范集合構(gòu)成了FIPA標(biāo)準(zhǔn)的主體部分。Interaction Protocols規(guī)范集合定義了FIPA-ACL可采用的互操作協(xié)議(如請求互操作協(xié)議);Communicative Acts規(guī)范集合則將Agent在使用FIPA-ACL進(jìn)行通信過程中的各種語言行為單元(如:request、agree、refuse等)規(guī)范為一個CAL(Communicative Acts Library)庫規(guī)范;Content Languages規(guī)范集合定義了應(yīng)用在FIPA-ACL消息的內(nèi)容上不同的表示方式(如:SL),它們可提供不同標(biāo)準(zhǔn)的編碼形式。
2.2 FIPA-ACL通信機(jī)制
Agent之間的通信是通過構(gòu)造、封裝、傳輸ACL消息進(jìn)行的,ACL消息的主要結(jié)構(gòu)如表1所示。
Agent A為了和Agent B進(jìn)行通信,首先應(yīng)該構(gòu)建ACL消息。如果B提供的服務(wù)應(yīng)采用請求互操作協(xié)議,則ACL的Protocol參數(shù)就設(shè)為fipa-request。A是此次互操作對話的發(fā)起者,它與B的第一次通信應(yīng)視為請求互操作協(xié)議的第一個請求動作,這在CAL庫規(guī)范中描述為request行為,所以ACL的performative參數(shù)應(yīng)為request。封裝好整個ACL消息后,Agent A選用適當(dāng)?shù)木幋a方式將其編碼,形成有效載荷(Payload),然后再添加信封,信封中包含A和B進(jìn)行通信所使用協(xié)議對應(yīng)的協(xié)議地址。最后,A采用此傳輸協(xié)議將信息傳送給Agent B。Agent B收到A發(fā)送的消息并根據(jù)消息具體的內(nèi)容加以判斷后,按照請求互操作協(xié)議所規(guī)定的操作流程對A進(jìn)行回答。
3 系統(tǒng)的通信技術(shù)與實現(xiàn)
基于FIPA-ACL的污水處理Multi-Agent智能化系統(tǒng)是在開源Java項目JADE(Java Agent Development Framework)提供的多Agent平臺上實現(xiàn)的。JADE完全符合FIPA標(biāo)準(zhǔn),為多Agent系統(tǒng)的開發(fā)者提供了一個功能強(qiáng)大的開發(fā)框架,使開發(fā)者無需親自從頭實現(xiàn)FIPA的具體規(guī)范就能開發(fā)出符合FIPA標(biāo)準(zhǔn)的多Agent系統(tǒng)。
評論