當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]通過分析FIPA-ACL規(guī)范集合的系統(tǒng)組成、通信機(jī)制等,提出了基于FIPA-ACL的污水處理智能化系統(tǒng)的Multi-Agent通信方案,確定了其通信方式、通信策略與通信協(xié)議,并給出了具體實(shí)現(xiàn)。

分布式人工智能(Distributed Artificial Intelligence,DAI)理論主要研究在邏輯上或物理上分散的智能系統(tǒng)如何并行地、相互協(xié)作地進(jìn)行問題求解[1]。作為DAI研究的一個(gè)重要分支和前沿學(xué)科,基于多智能體系統(tǒng)(Multi-Agents System,MAS)的分布式智能系統(tǒng)已受到控制領(lǐng)域研究人員的極大關(guān)注[2][4]。MAS的基本思想是將大的復(fù)雜系統(tǒng)建造成小的、彼此能相互通信及協(xié)調(diào)的、易于管理的Agent(智能體,代理)。當(dāng)單一智能系統(tǒng)沒有足夠的知識(shí)、資源和信息去解決一個(gè)復(fù)雜的問題時(shí),有必要研究如何使較多的小型智能系統(tǒng)之間相互協(xié)調(diào)、相互合作,以解決較大規(guī)模的復(fù)雜問題。本文基于Multi-Agent理論對(duì)于復(fù)雜系統(tǒng)的強(qiáng)大表現(xiàn)力及其開放性、智能化的特性,提出了一種構(gòu)建污水處理智能化系統(tǒng)通用模型的新思想,用MAS理論集成污水處理系統(tǒng)中分散分布的眾多模型和參數(shù),從而有效解決污水處理這一復(fù)雜工業(yè)過程的控制問題。
1  基于Multi-Agent的污水處理分布式智能化系統(tǒng)
  基于Multi-Agent的污水處理智能化系統(tǒng)模型結(jié)構(gòu)如圖1所示。系統(tǒng)中每個(gè)Agent根據(jù)環(huán)境信息完成各自承擔(dān)的工作,多個(gè)Agent分工協(xié)作,形成一個(gè)有組織、有秩序的群體,共同完成特定的任務(wù)。

  執(zhí)行Agent位于現(xiàn)場層,實(shí)現(xiàn)參數(shù)采集及現(xiàn)場控制的功能;沖突消解Agent是該智能化系統(tǒng)的核心,其功能是通過對(duì)任務(wù)規(guī)劃信息、故障信息、系統(tǒng)狀態(tài)信息以及其他Agent的協(xié)作請(qǐng)求信息等的融合,對(duì) Agent行為所產(chǎn)生的沖突進(jìn)行消解;數(shù)據(jù)服務(wù)Agent的功能是為其他Agent提供統(tǒng)一、靈活的訪問實(shí)時(shí)數(shù)據(jù)庫的接口;軟測量Agent的功能是通過易測變量與難測變量之間的數(shù)學(xué)關(guān)系,實(shí)現(xiàn)難測變量的測量;故障診斷Agent是一個(gè)專家系統(tǒng),可對(duì)污泥膨脹、污泥解絮、曝氣池泡沫等故障現(xiàn)象進(jìn)行診斷,并提出解決對(duì)策。
Agent間相互交換信息、進(jìn)行協(xié)調(diào)或合作、解決超出單個(gè)Agent能力或知識(shí)的問題,并真正具有社會(huì)性的關(guān)鍵是Agent間可以通信。因此, Agent通信是Multi-Agent系統(tǒng)研究的重要問題之一。
2  MAS的通信語言
  Agent通信語言(Agent Communication Language,ACL)提供了Agent之間交換信息和知識(shí)的工具,使Agent之間相互作用達(dá)到求解問題的目的。ACL使Agent通信建立在知識(shí)級(jí)別(Knowledge Level)上,從而使Agent間的通信效率大大高于傳統(tǒng)的分布式計(jì)算中的通信。
  目前主要有兩種ACL,一種是1993年美國ARPA的KSE 研究小組提出的KQML(Knowledge Query and Manipulation Language);另一種是1997年歐洲的FIPA(Foundation for Intelligent Physical Agents)協(xié)會(huì)制定的開放性標(biāo)準(zhǔn)FIPA-ACL。FIPA標(biāo)準(zhǔn)由一系列規(guī)范組成,用于規(guī)范一個(gè)應(yīng)用程序內(nèi)部Agent之間和不同應(yīng)用程序Agent之間的互操作,并對(duì)多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ī)范組成,每個(gè)規(guī)范對(duì)多Agent應(yīng)用程序互操作中相應(yīng)的功能模塊進(jìn)行標(biāo)準(zhǔn)化。FIPA-ACL規(guī)范集合在整個(gè)FIPA規(guī)范中的位置及其內(nèi)部的功能規(guī)范組成結(jié)構(gòu)如圖2所示。

  由圖2可見,F(xiàn)IPA-ACL規(guī)范集合是整個(gè)FIPA標(biāo)準(zhǔn)中極其重要的組成部分,它與Agent管理規(guī)范集合、Agent消息傳輸規(guī)范集合構(gòu)成了FIPA標(biāo)準(zhǔn)的主體部分。Interaction Protocols規(guī)范集合定義了FIPA-ACL可采用的互操作協(xié)議(如請(qǐng)求互操作協(xié)議);Communicative Acts規(guī)范集合則將Agent在使用FIPA-ACL進(jìn)行通信過程中的各種語言行為單元(如:request、agree、refuse等)規(guī)范為一個(gè)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)采用請(qǐng)求互操作協(xié)議,則ACL的Protocol參數(shù)就設(shè)為fipa-request。A是此次互操作對(duì)話的發(fā)起者,它與B的第一次通信應(yīng)視為請(qǐng)求互操作協(xié)議的第一個(gè)請(qǐng)求動(dòng)作,這在CAL庫規(guī)范中描述為request行為,所以ACL的performative參數(shù)應(yīng)為request。封裝好整個(gè)ACL消息后,Agent A選用適當(dāng)?shù)木幋a方式將其編碼,形成有效載荷(Payload),然后再添加信封,信封中包含A和B進(jìn)行通信所使用協(xié)議對(duì)應(yīng)的協(xié)議地址。最后,A采用此傳輸協(xié)議將信息傳送給Agent B。Agent B收到A發(fā)送的消息并根據(jù)消息具體的內(nèi)容加以判斷后,按照請(qǐng)求互操作協(xié)議所規(guī)定的操作流程對(duì)A進(jìn)行回答。
3  系統(tǒng)的通信技術(shù)與實(shí)現(xiàn)
  基于FIPA-ACL的污水處理Multi-Agent智能化系統(tǒng)是在開源Java項(xiàng)目JADE(Java Agent Development Framework)提供的多Agent平臺(tái)上實(shí)現(xiàn)的。JADE完全符合FIPA標(biāo)準(zhǔn),為多Agent系統(tǒng)的開發(fā)者提供了一個(gè)功能強(qiáng)大的開發(fā)框架,使開發(fā)者無需親自從頭實(shí)現(xiàn)FIPA的具體規(guī)范就能開發(fā)出符合FIPA標(biāo)準(zhǔn)的多Agent系統(tǒng)。[!--empirenews.page--]
3.1 通信方式的確定
  MAS通信主要有四種連接方式:黑板模式、聯(lián)邦方式、廣播方式、點(diǎn)到點(diǎn)方式。通信傳遞方式有消息傳遞、方案傳遞兩種。本系統(tǒng)Agent之間通信前都通過Agent管理平臺(tái)提供的服務(wù)查詢機(jī)制來定位欲通信的Agent,然后兩個(gè)Agent進(jìn)行直接通信;而Agent之間傳輸?shù)男畔⑹腔ゲ僮髅?、參?shù)和操作結(jié)果,沒有設(shè)計(jì)到方案傳遞。所以本系統(tǒng)采用的是點(diǎn)對(duì)點(diǎn)的消息傳遞通信方式。
3.2 通信策略
  本系統(tǒng)中的數(shù)據(jù)服務(wù)Agent、沖突消解Agent、故障診斷Agent分別為整個(gè)系統(tǒng)中的其他Agent提供數(shù)據(jù)查詢和寫入服務(wù)、沖突識(shí)別和消解服務(wù)、故障診斷服務(wù),請(qǐng)求每種服務(wù)的Agent必須要先定位到服務(wù)提供者,這就要求一種服務(wù)注冊(cè)和定位機(jī)制。FIPA標(biāo)準(zhǔn)中定義了在Agent系統(tǒng)中必須存在的DF(Directory Facilitator)Agent。上述三個(gè)服務(wù)提供者啟動(dòng)時(shí)就會(huì)在DF中注冊(cè)自己提供的服務(wù),如:某個(gè)執(zhí)行Agent需要沖突消解服務(wù)時(shí),它會(huì)通過查詢DF來得到?jīng)_突消解Agent的通信地址和服務(wù)使用的互操作協(xié)議等信息,然后根據(jù)互操作協(xié)議規(guī)定的對(duì)話方式與協(xié)調(diào)Agent通信。
  JADE提供了默認(rèn)的DF Agent,服務(wù)提供者(如數(shù)據(jù)服務(wù)Agent)欲注冊(cè)自己的服務(wù),其主要代碼如下:
  Service Description sd=new Service Description( );
          //創(chuàng)建服務(wù)描述對(duì)象,描述服務(wù)屬性
  DF Agent Description DFad=new DF Agent Description( );
          //創(chuàng)建自身描述對(duì)象,描述自身信息
  Codec language=new SLCodec( );//采用SL內(nèi)容語言規(guī)范
  Ontology ontology=Basic Ontology.getInstance( );
          //采用基本本體語言構(gòu)建服務(wù)描述對(duì)象
  sd.setName(getLocalName( ));
  sd.setType(″SwageDisposeDataService″);//為服務(wù)命名,其他Agent查詢服務(wù)時(shí)就用此名字
  sd.addProtocols(InteractionProtocol.FIPA_REQUEST);
          //服務(wù)所采用的互操作協(xié)議
  sd.addLanguages(language.getName( ));
  sd.addOntologies(ontology.getName( ));
         //構(gòu)建自身描述對(duì)象
  DFad.addProtocols(InteractionProtocol.FIPA_REQUEST);
  DFad.addLanguages(language.getName( ));
  DFad.addOntologies(ontology.getName( ));
  DFad.setName(getAID( ));
         //使自身具有構(gòu)建的服務(wù)描述對(duì)象
  DFad.addServices(sd);
  try{
         DFService.register(this,DFad);//在平臺(tái)提供的默認(rèn)DF中注冊(cè)自己的服務(wù)
  }catch(FIPAException e){
               //處理異常
  }
  當(dāng)沖突消解Agent需要此服務(wù)時(shí),可通過下面的代碼來搜索DF,并定位到此服務(wù)的提供者,即數(shù)據(jù)服務(wù)Agent[6]。
  ……  //部分變量申明與上段代碼相同
  DFAgentDescription dfd[ ];//用于存儲(chǔ)提供此服務(wù)的
               //Agent描述信息(服務(wù)提供者可能不止一個(gè))
               //構(gòu)建服務(wù)描述對(duì)象
  sd.setType(″SwageDisposeDataService″);
  sd.addLanguages(language.getName( ));
  sd.addOntologies(ontology.getName( ));
  sd.addProtocols(InteractionProtocol.FIPA_REQUEST);
  DFad.addServices(sd);
  try{
         dfd=DFService.search(this,DFad);//在默認(rèn)DF中搜索服務(wù)提供者
       ……  //與服務(wù)提供者通信
  }catch (FIPAException e){
          //處理異常
  }
3.3 通信協(xié)議
  本系統(tǒng)Agent之間通信都采用請(qǐng)求互操作協(xié)議,即ACL消息的protocol參數(shù)均為fipa-request,用UML表示的該協(xié)議流程如圖3所示。

  Agent提供服務(wù)所需的參數(shù)和操作結(jié)果都包含在ACL消息的content參數(shù)中。
3.4 通信內(nèi)容
  在本系統(tǒng)中,Agent之間的通信內(nèi)容是封裝在自定義的CSO(Communication Seriable Object)類中,通過JADE提供的串行化接口,可將CSO對(duì)象作為ACL消息的content參數(shù)在任意Agent之間傳遞,能達(dá)到很好的可擴(kuò)展效果。CSO的類結(jié)構(gòu)如下:
  public class CSO implements Serializable {
     private String[ ] arg;//服務(wù)參數(shù)
     private float[ ] value;//服務(wù)結(jié)果
     private String comment;//注釋
   ……
  }
  系統(tǒng)中的數(shù)據(jù)服務(wù)Agent提供數(shù)據(jù)查詢和數(shù)據(jù)寫入服務(wù),它根據(jù)服務(wù)使用者在CSO.arg[ ]中傳送的參數(shù)進(jìn)行實(shí)時(shí)數(shù)據(jù)庫操作,并將查詢結(jié)果存儲(chǔ)在CSO.value[ ]中返回給請(qǐng)求者。沖突消解Agent接收?qǐng)?zhí)行Agent的沖突識(shí)別請(qǐng)求(此請(qǐng)求不帶參數(shù)),并根據(jù)沖突識(shí)別算法的需要請(qǐng)求數(shù)據(jù)服務(wù)Agent的數(shù)據(jù)查詢服務(wù)或故障診斷Agent的故障診斷服務(wù),將消解結(jié)果命令或無沖突命令存放于CSO.arg[0]中,再向執(zhí)行Agent傳送。故障診斷Agent向沖突消解Agent提供故障診斷服務(wù)時(shí)也需要從CSO.arg[ ]中獲取參數(shù),并將診斷結(jié)果存放于CSO.value[ ]中,以表明請(qǐng)求診斷的故障是否出現(xiàn)。
  本文基于FIPA-ACL提出了污水處理Multi-Agent智能化系統(tǒng)通信技術(shù),確定了其通信方式、通信策略與通信協(xié)議,并給出了JADE 3.1軟件開發(fā)平臺(tái)上的實(shí)現(xiàn)方法。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉