專利名稱:面向服務的智能體平臺的制作方法
技術領域:
本發明涉及的是一種網絡信息技術領域的系統,具體地說是一種面向服務的 智能體平臺。
背景技術:
Web服務定義為自包含、自描述的、模塊化的、由URI標識的應用程序,它 采用基于XML和Internet的開放標準,支持基于XML的接口定義、發布和發現。 它的出現及推廣改變了現有網絡的應用模式,它將Internet從一個信息資源的集 合變成了一個計算資源的集合。Web服務的主要目標是在現有的各種異構平臺的 基礎上構筑一個通用的與平臺無關、語言無關的技術層,多種不同平臺上的應用 依靠這個技術層來實施彼此的連接和集成。它具有跨平臺、互操作和松耦合等優 點。但當前的Web服務僅僅是能夠被外部調用的模塊,它是一種無狀態的功能響 應,存在功能單一,無法主動響應外界事件、服務之間無法相互自主協作等不足。
經對現有技術文獻的檢索發現,中國專利申請號200610037595.3,發明名 稱 一種Web服務發現和集成代理系統,公開號CN1968322,該專利通過使用 代理技術對UDDI注冊中心進行封裝,并對外提供服務注冊和服務査找、修改的 功能和接口 ,在一定程度上提高了服務發現的查準率和査全率,該集成代理系統 (1)沒有實現面向服務的技術與軟件智能體技術的融合;(2)沒有改變Web服務僅 僅是被動的相應外部調用的模塊的本質。
發明內容
本發明針對現有技術的不足與缺陷,提供一種面向服務的智能體平臺,該平 臺通過將軟件智能體技術引入到面向服務計算領域,實現了 Web服務與智能體的 集成。面向服務的智能體平臺實現了 Web服務的智能化管理,它將當前的無狀態、 僅僅被動相應外部調用的Web服務變成了一個具有相關領域知識、具有一定能力 智能主體,該平臺為建立新一代的軟件中間件平臺提供了技術基礎,從而為實現 Web服務的有效集成典型了基礎。本發明是通過以下技術方案實現的,本發明包括服務智能體建模工具、服 務智能體注冊中心和服務智能體的執行引擎,其中-
所述的服務智能體建模工具,向用戶提供圖形化的服務智能體建模工具,實 現服務智能體的建模,當用戶完成了某服務智能體建模后,該模型可以被序列化 為XML文件;
所述的服務智能體注冊中心,實現了服務智能體的注冊,服務智能體注冊中 心實質上是一個特殊的容器,服務智能體只有向服務注冊中心即容器發布后才有 可能被其它的服務智能體發現和利用,服務智能體注冊中心向外提供了服務智能 體注冊、査詢接口;
所述的服務智能體執行引擎,采用基于消息匹配的機制,提供了調用服務智 能體規劃的功能,服務智能體啟動之后立即開始接受消息,消息被暫存在服務智 能體的個人信箱中等待被處理。所有處于活動狀態中的規劃都會定時去個人信箱 篩選未處理的消息,當發現與自己匹配的消息后,調用規劃所對應的服務操作序 列,在執行服務操作的過程中,服務智能體執行引擎根據調用服務操作的結果更 新服務智能體的信念,并將規劃的執行結果發送給消息的發送者。
所述的服務智能體建模工具包括服務智能體信念建模模塊、服務智能體活 動建模模塊和服務智能體規劃建模模塊。服務智能體信念建模模塊用于構建服務 智能體的知識庫,服務智能體活動建模模塊用于構建服務智能體的Web服務操作 集,服務智能體規劃建模模塊用于構造服務智能體的規劃集合,每一個規劃是一 個業務目標的執行體,它遵行相應的業務規則,描述了完成某一業務目標的過程。
所述的服務智能體信念建模模塊包括基本知識建模單元、約束知識建模單 元、社會知識建模單元,基本知識建模單元用來構造服務智能體所知道的事實, 它們以一組命題的方式存儲,約束知識建模單元用于構造服務智能體要維護的一 系列關系,這些關系作用于基本知識所涉及的變量之上,社會知識建模單元用于 構造服務智能體所了解的其它服務智能體的信息,例如地址、角色、能力等等。
所述的服務智能體活動建模模塊包括Web服務操作功能性信息建模單元和 Web服務操作非功能性建模單元,功能性信息建模單元用來描述服務的功能,包 括服務的輸入和輸出參數、服務的名稱、服務調用的接口等等,非功能性建模單 元用于描述服務的質量,常用的服務質量指標有時間、代價、可靠性等,它們從不同的側面描述了 Web服務操作的非功能性特性。
所述的規服務智能體規劃建模模塊用于構造服務智能體完成業務目標的規 劃集,服務智能體的規劃將完成某一目標的過程表示成一組Web服務操作的序 列,在每一個規劃中各個活動根據設定的控制流和數據流進行組合,控制流定義 了活動執行的先后順序,數據流則定義了某一活動產生的數據作為哪一個活動的 輸入,每一個規劃遵循相應的業務規則,描述了完成某一目標的過程,每一個規 劃屬性包括規劃名稱、規劃描述、規劃的優先級別、觸發該規劃的事件、規劃的 前提條件以及規劃體對應的Web服務操作序列。
所述的服務智能體注冊中心包括服務智能體注冊單元、服務智能體查詢單 元和服務智能體監控單元。注冊單元實現服務智能體的注冊;査詢單元實現服務 智能體的査詢,用戶或者其它的服務智能體可以根據所要査詢的服務服務的名 稱、通訊地址、能力等條件實現服務智能體的査詢;服務智能體監控單元采用輪 詢的方式對服務智能體注冊中心管理的所有服務智能體的運行情況進行監控,包 括服務智能體的通訊狀態、是否可用等。
所述的服務智能體執行引擎包括消息匹配單元、Web服務操作調用單元和 信念更新單元。消息匹配單元將接收到的消息與服務智能體規劃的輸入進行匹 配,如果接收到的消息與服務智能體輸入完全匹配,則調用對應規劃所包含的 Web服務操作序列;Web服務操作調用單元從服務智能體信念合中獲取Web服務 操作所需要的輸入,調用Web服務操作。并將執行結果傳送給信念更新單元,由 信念更新單元更新服務智能體的信念。
本發明從外部來看, 一個服務智能體是一個軟件智能體, 一方面,它提供了 與其它智能體進行通訊的接口,從而實現了對外部環境的感知;另一個方面,服 務智能體使用規劃屏蔽了使用服務操作序列來完成業務目標的內部細節,從而使 得普通的用戶只需要關注他們所需要完成的目標,而不需要關注如何使用Web 服務來完成他們的目標。Web服務與軟件智能體的集成將無狀態的Web服務變成 了一個有狀態,并能夠對外部做出反應的智能實體。服務的智能體化從下列幾個 方面增強和擴展了現有服務技術的不足服務智能體是一個服務綜合體。它對功 能類似的一組服務進行集中管理,并向外界提供高層服務;服務智能體能夠根據 用戶和其它服務智能體的偏好或定制的服務質量需求優化服務的選擇;服務智能體可以通過通訊語言與其它服務智能體進行通訊,實現服務智能體之間相互協 作。
本發明服務智能體是一個一組功能類似的Web服務與軟件智能體的綜合體, 它實現了對一組功能類似服務的封裝;服務智能體的規劃封裝了使用Web服務的 業務邏輯,從而增大服務集成的粒度;用戶可以定制個性化的服務選擇和協商策 略,從而實現服務個性化選擇。本發明采用面向對象的開發技術,用戶可以通過 圖形化的用戶界面對服務智能體的信念、活動和規劃進行建模,用戶界面友好, 具有可擴展性強,維護開銷小的特點。服務智能體是能夠在分布式環境下獨立運 行的自主體,它們注冊在服務智能體注冊服務器中,服務智能體之間的通訊采用 遵循FIPA標準的通訊協議,以實現服務智能體之間的協商。
本發明使用面向對象的技術,采用開放、模塊化、可擴展的架構,用戶可以 根據個性化的需要,方便的擴展服務智能體的功能;服務智能體可以方便的遷移 服務智能體采用XML格式進行存儲,能夠方便的進行遷移;使用及管理方便用 戶可以使用系統提供的可視化界面對服務智能體進行建模,系統界面友好,操作 方便。
圖1為本發明系統框圖2為本發明服務智能體模型結構圖3為本發明服務智能體執行引擎工作原理。
具體實施例方式
下面結合附圖對本發明的實施例作詳細說明本實施例在以本發明技術方案 為前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護 范圍不限于下述的實施例。
本發明服務智能體平臺是開發,分布式部署和運行服務智能體的一整套解決 方案。服務智能體建模工具提供了一組可視化的建模工具,實現了軟件智能體技 術和服務技術的集成,當用戶完成了某服務智能體建模后,該模型可以被序列化 為XML文件。 一個服務智能體的建模包括三方面的內容,分別是信念建模、活動 建模和規劃建模。信念組成了服務智能體的知識庫,服務智能體的活動表示了智 能體能夠執行的服務操作,服務智能體的規劃從業務目標層次描述了使用服務操作完成某一業務目標的過程。
服務智能體注冊中心實現了服務智能體的注冊,一個服務智能體只有在服務 注冊中心注冊后才能運行。
服務智能體執行引擎采用基于消息匹配的機制,提供了調用服務操作序列的
功能。服務智能體啟動之后立即開始接受消息,消息被暫存在服務智能體的個人
信箱中等待被處理。所有處于活動狀態中的規劃都會定時去個人信箱篩選未處理
的消息。當發現與自己匹配的消息后,調用規劃所對應的服務操作序列,在執行
服務操作的過程中,服務智能體的執行引擎根據調用服務操作的結果更新服務智
能體的信念,并將規劃的執行結果發送給消息的發送者。
所述的服務智能體建模工具包括服務智能體信念建模模塊、服務智能體活 動建模模塊和服務智能體規劃建模模塊。服務智能體信念建模模塊用于構建服務
智能體的知識庫,服務智能體活動建模模塊用于構建服務智能體的沐eb服務操作 集,服務智能體規劃建模模塊用于構造服務智能體的規劃集合,每一個規劃是一 個業務目標的執行體,它遵行相應的業務規則,描述了完成某一業務目標的過程。 所述的服務智能體信念建模模塊包括基本知識建模單元、約束知識建模單 元、社會知識建模單元,基本知識建模單元用來構造服務智能體所知道的事實, 它們以一組命題的方式存儲,約束知識建模單元用于構造服務智能體要維護的一 系列關系,這些關系作用于基本知識所涉及的變量之上,社會知識建模單元用于 構造服務智能體所了解的其它服務智能體的信息。
所述的服務智能體活動建模模塊包括Web服務操作功能性信息建模單元和 Web服務操作非功能性建模單元,功能性信息建模單元用來描述服務的功能,非 功能性建模單元用于描述服務的質量,它們從不同的側面描述了 Web服務操作的 非功能性特性。
信念集合構成了服務智能體的知識庫。服務智能體的知識可以分為三類,分 別是基本知識、約束知識和社會知識。基本知識是服務智能體所知道的事實,用 來定義服務智能體所要用到的變量,簡單的數據類型變量包括整形、浮點型、字 符串型和布爾類型,復合數據類型統一用XML格式進行定義;約束知識是服務智 能體要維護的一系列關系,這些約束關系作用于基本知識所定義的變量之上,約 束操作符包括大于、等于、小于、包含等;社會知識存儲著其他服務智能體的信息,例如地址、能力以及角色等。活動集合是服務智能體能夠執行的Web服務操 作的集合,每個服務操作屬性包括名稱、輸入、輸入和服務質量等,輸入和輸出 表征了操作的功能性屬性,服務質量則表征了操作的非功能性屬性,常用的服務 質量指標有時間、代價、可靠性等,它們從不同的側面描述了服務的非功能性特 性。Web服務操作的輸入參數、輸出參數以及服務質量等變量都來自于服務智能 體信念建模模塊中所定義的基本知識。服務智能體的規劃是業務目標的執行體, 每一個規劃遵循相應的業務規則,從業務目標層描述了使用沐eb服務操作完成某 一業務目標的過程,每一個規劃屬性包括規劃名稱、規劃描述、規劃的輸入、規 劃的輸出和規劃體對應的Web服務操作序列,規劃的輸入輸出參數必須在都來自 于服務智能體信念建模模塊所定義的基本知識,規劃所包含的操作序列來自于服 務智能體活動建模模塊已經定義的Web服務操作。
所述的服務智能體執行引擎包括消息匹配單元、Web服務操作調用單元和 信念更新單元。消息匹配單元將接收到的消息與服務智能體規劃的輸入進行匹 配,如果接收到的消息與服務智能體輸入完全匹配,則調用對應規劃所包含的 沐eb服務操作序列;Web服務操作調用單元從服務智能體信念合中獲取Web服務 操作所需要的輸入,調用Web服務操作,并將執行結果傳送給信念更新單元,由 信念更新單元更新服務智能體的信念。
以下提供本發明的具體實施例,本實施例系統以微機為設備平臺,通過使用 軟件智能體技術來封裝Web服務資源,實現了對Web服務資源的智能化管理。軟件 智能體技術和面向服務技術的集成克服了現有服務技術了不足,為建立新一代的 軟件中間件平臺提供了技術基礎。該實施例系統結構由圖l所示。
操作人員1通過服務智能體建模工具2創建一個服務智能體模型3,服務智 能體模型3只有被發布到服務智能體注冊中心4中才可能被一般的用戶5發現和 利用。用戶5通過査詢服務智能體注冊中心4獲得能夠完成其任務的服務智能體, 并將其任務以消息的形式發送到對應服務智能體,服務智能體接收到用戶的任務 后,通過消息匹配機制獲得匹配的規劃并執行規劃所包含的Web服務操作序列 21,并將結果以消息的形式返回給用戶。
如圖2所示, 一個完整的服務智能體模型3包含三個部分的內容,分別是信 念模型6、活動模型7和規劃模型8。其中信念模型6構成了服務智能體的知識庫,服務智能體的知識可以分為三類,分別是基本知識9、約束知識10和社會
知識11。
服務智能體的活動模型7是一組Web服務操作的集合,代表了服務智能體能 夠執行的活動的集合,每一個Web服務操作12包含的基本屬性為Web服務操作 的名稱
14、 Web服務操作的輸入15、 Web服務操作的輸出16以及Web服務操作 的質量指標17,其中Web服務操作的輸入15和Web服務操作的輸出16表征了 Web服務的功能,Web服務操作的質量指標17表征了 Web服務操作的非功能性屬 性。
服務智能體的規劃模型8是一組規劃的集合,代表了服務智能體的能力,每 一個規劃13從業務目標的角度描述了使用Web服務操作完成某一業務目標的過 程。 一個規劃的基本屬性包括規劃的名稱18、規劃的輸入19、規劃的輸出20 和規劃所對應的Web服務操作序列21。
如圖3所示,當服務智能體通過消息接收單元22接收到外部的服務請求時, 它調用消息匹配單元23獲得能夠執行服務請求的規劃列表,如果不存在匹配的規 劃,則直接向用戶發送任務調度失敗的消息。如果存在多個可以執行服務請求的 規劃,則按照一定的評價標準從匹配的規劃列表中選擇最佳的規劃25,然后調用 該規劃所對應的Web服務操作序列26,并將用戶發送執行規劃后的結果。
本實施例通過將軟件智能體技術引入到面向服務計算領域,實現了 Web服務 與智能體的集成。面向服務的智能體平臺實現了 Web服務的智能化管理,它將當 前的無狀態、僅僅被動相應外部調用的Web服務變成了一個具有相關領域知識、 具有一定智能性的智能主體,該平臺為建立新一代的軟件中間件平臺提供了技術 基礎,本實施例模塊清晰,具有很強的擴展性、適應性和易用性的特點。
權利要求
1、一種面向服務的智能體平臺,其特征在于,服務智能體建模工具、服務智能體注冊中心和服務智能體的執行引擎,其中所述的服務智能體建模工具,向用戶提供圖形化的服務智能體建模工具,實現服務智能體的建模,當用戶完成了某服務智能體建模后,該模型被序列化為XML文件;所述的服務智能體注冊中心,實現了服務智能體的注冊,服務智能體注冊中心實質上是一個特殊的容器,服務智能體只有向服務注冊中心即容器發布后才有可能被其它的服務智能體發現和利用,服務智能體注冊中心向外提供了服務智能體注冊、查詢接口;所述的服務智能體執行引擎,采用基于消息匹配的機制,提供了調用服務智能體規劃的功能,服務智能體啟動之后立即開始接受消息,消息被暫存在服務智能體的個人信箱中等待被處理,所有處于活動狀態中的規劃都會定時去個人信箱篩選未處理的消息,當發現與自己匹配的消息后,調用規劃所對應的服務操作序列,在執行服務操作的過程中,服務智能體執行引擎根據調用服務操作的結果更新服務智能體的信念,并將規劃的執行結果發送給消息的發送者。
2、 根據權利要求l所述的面向服務的智能體平臺,其特征是,所述的服務智 能體建模工具包括服務智能體信念建模模塊、服務智能體活動建模模塊和服務 智能體規劃建模模塊,服務智能體信念建模模塊用于構建服務智能體的知識庫, 服務智能體活動建模模塊用于構建服務智能體的Web服務操作集,服務智能體規 劃建模模塊用于構造服務智能體的規劃集合,每一個規劃是一個業務目標的執行 體,它遵行相應的業務規則,描述了完成某一業務目標的過程。
3、 根據權利要求2所述的面向服務的智能體平臺,其特征是,所述的服務智 能體信念建模模塊包括基本知識建模單元、約束知識建模單元、社會知識建模單 元,基本知識建模單元用來構造服務智能體所知道的事實,它們以一組命題的方 式存儲,約束知識建模單元用于構造服務智能體要維護的一系列關系,這些關系 作用于基本知識所涉及的變量之上,社會知識建模單元用于構造服務智能體所了解的其它服務智能體的信息。
4、根據權利要求2所述的面向服務的智能體平臺,其特征是,所述的服務智 能體活動建模模塊包括Web服務操作功能性信息建模單元和Web服務操作非功能 性建模單元,功能性信息建模單元用來描述服務的功能,包括服務的輸入和輸出 參數、服務的名稱、服務調用的接口,非功能性建模單元用于描述服務的質量, 服務質量指標有時間、代價、可靠性,它們從不同的側面描述了 Web服務操作的 非功能性特性。
5、 根據權利要求2所述的面向服務的智能體平臺,其特征是,所述的規服務 智能體規劃建模模塊用于構造服務智能體完成業務目標的規劃集,服務智能體的 規劃將完成某一目標的過程表示成一組Web服務操作的序列,在每一個規劃中各 個活動根據設定的控制流和數據流進行組合,控制流定義了活動執行的先后順序, 數據流則定義了某一活動產生的數據作為哪一個活動的輸入,每一個規劃遵循相 應的業務規則,描述了完成某一目標的過程,每一個規劃屬性包括規劃名稱、規 劃描述、規劃的優先級別、觸發該規劃的事件、規劃的前提條件以及規劃體對應 的Web服務操作序列。
6、 根據權利要求l所述的面向服務的智能體平臺,其特征是,所述的服務智 能體注冊中心包括服務智能體注冊單元、服務智能體査詢單元和服務智能體監 控單元,注冊單元實現服務智能體的注冊,査詢單元實現服務智能體的査詢,用 戶或者其它的服務智能體根據所要査詢的服務服務的名稱、通訊地址、能力條件 實現服務智能體的査詢,服務智能體監控單元采用輪詢的方式對服務智能體注冊 中心管理的所有服務智能體的運行情況進行監控。
7、 根據權利要求l所述的面向服務的智能體平臺,其特征是,所述的服務智 能體執行引擎包括消息匹配單元、Web服務操作調用單元和信念更新單元,消息 匹配單元將接收到的消息與服務智能體規劃的輸入進行匹配,如果接收到的消息與服務智能體輸入完全匹配,則調用對應規劃所包含的Web服務操作序列,Web 服務操作調用單元從服務智能體信念合中獲取Web服務操作所需要的輸入,調用 Web服務操作,并將執行結果傳送給信念更新單元,由信念更新單元更新服務智能 體的信念。
全文摘要
一種信息技術領域的面向服務的智能體平臺,其中,服務智能體建模工具向用戶提供圖形化的建模環境,實現服務智能體的建模,服務智能體注冊中心用來向外發布已經注冊的服務智能體,實現對服務智能體的注冊、查詢和監控,服務智能體執行引擎采用基于消息匹配的機制,提供了調用服務智能體規劃的功能。面向服務的智能體平臺通過將軟件智能體技術引入到面向服務計算領域,實現了Web服務與智能體的集成。本發明將當前的無狀態、僅僅被動相應外部調用的Web服務變成了一個具有相關領域知識、具有一定智能性的智能主體,該平臺為建立新一代的軟件中間件平臺提供了技術基礎。本發明模塊清晰,具有很強的擴展性、適應性和易用性的特點。
文檔編號G06F17/30GK101316242SQ20081004070
公開日2008年12月3日 申請日期2008年7月17日 優先權日2008年7月17日
發明者傅一峰, 健 曹, 童紅霞, 蔡思捷, 賴如潔 申請人:上海交通大學