多智能体系统的通信
兩個Agent之間的通信過程如下:
發送方將自己的思想翻譯成通信所用語言的格式;
發送方將語言格式加載到通信傳播媒體,如聲音、文字和圖像;
傳播載體到達接收方;
接收方讀取載體中的語言代碼;
接收方在思維空間中將語言代碼按其格式翻譯為思想,從而熟悉發送方的意識狀態。
智能體通信的類型
使用Tell和Ask通信:
Agent分享共同內部表示語言,并通過界面Tell和Ask直接訪問相互的知識庫。
使用形式語言通信 :
大多數Agent的通信是通過語言而不是通過直接訪問知識庫而實現的。
Agent通信的方式
黑板系統
黑板系統的模型有三個主要組成部分:
① 知識源,即Agent,是作為求解問題的獨立單元,具有不同的專門知識,獨立完成特定的任務。
② 黑板,即公共工作區,為知識源提供信息和數據,同時,供知識源進行修改。
③ 監控機制。根據黑板當前的問題求解狀態,以及各知識源的不同求解能力,對其進行監控,使之能適時相應黑板變化,及時進行問題求解。
消息/對話系統
有如下兩種方式來實現Agent間的消息傳遞:
① 直接通信方式:每個Agent必須知道消息在什么時候發送到什么地方,系統中有哪些Agent可以合作,這些Agent各具備什么樣的能力等。這要求系統中的每個Agent都擁有其他Agent的信息。
② 中介的通信:在基于中介的消息傳送中,若干相距較近的Agent通過通信服務器來進行交互和消息發送,而遠程Agent之間的交互是由局部群體中的通信服務器協作完成的。
智能體通信語言
知識交換格式語言KIF
主要是基于謂詞邏輯,可以作為描述專家系統、數據庫、多智能體的知識表示工具。
KIF負責將一種語言翻譯成另一種語言,或者為兩種異構智能體的知識表達提供語義共享。
可共享重用知識則是一個詞匯表,它可以使可共享知識庫的內容更容易被理解,同時也為特定的領域提供開發工具和方法。
外部接口主要設計軟件智能體運行時能夠共享知識和信息的通信高層語言KQML,即知識查詢操縱語言。KQML是自主的異步智能體之間共享知識和實現協作問題求解的通信語言。
KQML既是一種消息格式,也是支持實時智能體之間知識共享的消息處理協議,實現基于知識的異構系統之間互操作和集成。
在實際應用中,軟件實體之間的互操作和知識共享是應用程序作為軟件智能體的重要基礎,甚至是必不可少的先決條件。
互操作軟件智能體的抽象模型。
知識查詢操縱語言KQML
KQML為多智能體通信定義了一套消息表達機制和消息傳遞格式,構建了一種標準通用框架。
KQML分為3層:內容層、消息層和通信層。
內容層使用應用程序本身的表達語言來傳送消息的實際內容。
通信層主要負責對消息的某些特性進行編碼,這些特性描述了底層通信參數,例如發送者和接收者的標識符。
消息層是整個KQML語言的核心。將一條消息從一個應用程序傳送到另一個應用程序時,消息層完成對所傳送信息的封裝。消息層的一個最基本功能是識別傳輸消息發送時所使用的協議,并且給消息發送者提供一個附加在內容上的述行語或原語。KQML語言在內容不可知的情況下實現對消息的分析、路由和正確的傳送。
KQML語言中有多種在進程之間進行信息交換的協議。
總結
- 上一篇: APP渗透的简单思路
- 下一篇: windows录屏html文件,如何直接