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