能體Agent根據(jù)對應(yīng)的知識規(guī)則綁定集成單元,實現(xiàn)功能智能體Agent能力的改變;
[0037](8c)采用抗毀策略,對損壞的系統(tǒng)的主節(jié)點和各個子節(jié)點中的功能智能體Agent進行自修復(fù);
[0038]所述的抗毀策略的具體步驟如下:
[0039]第一步,服務(wù)智能體Agent接受替換功能智能體Agent的指令;
[0040]第二步,服務(wù)智能體Agent在熟人列表中選擇功能相同的功能智能體Agent,替換損壞的功能智能體Agent,如果當前熟人列表中不存在功能相同的功能智能體Agent,則通過動態(tài)招標策略添加熟人;
[0041]第三步,服務(wù)智能體Agent調(diào)用新綁定的功能智能體Agent,繼續(xù)執(zhí)行任務(wù);
[0042](9)結(jié)束:
[0043]當用戶發(fā)出完成任務(wù)指令后,參與任務(wù)的服務(wù)智能體Agent收到停止命令,停止運行。
[0044]本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點:
[0045]第一,本發(fā)明通過開發(fā)工具中的智能體Agent包裝工具,使包裝后的功能智能體Agent增加了自學(xué)習(xí)模塊。功能智能體Agent通過強化學(xué)習(xí)生成新的知識規(guī)則來擴充知識規(guī)則庫,從而實現(xiàn)功能智能體的自學(xué)習(xí),使得系統(tǒng)的局部演化更加具有智能性和自適應(yīng)性,克服了現(xiàn)有技術(shù)在系統(tǒng)運行中功能智能體Agent不能自主學(xué)習(xí),知識規(guī)則需要用戶全部自定義,不能自主擴充的缺點,使得本發(fā)明可以適應(yīng)復(fù)雜的運行環(huán)境,增加了本發(fā)明的可靠性和智能性。
[0046]第二,本發(fā)明通過事件機制實現(xiàn)了全局演化,用戶可自定義事件,明確事件觸發(fā)條件和動作信息。當環(huán)境發(fā)生變化時,觸發(fā)事件進行全局演化,使得全局演化的效率更高??朔爽F(xiàn)有技術(shù)當環(huán)境發(fā)生變化時,需要停止運行并重新設(shè)置參數(shù),不能應(yīng)對實時變化的復(fù)雜戰(zhàn)場環(huán)境的缺點,使本發(fā)明可以在系統(tǒng)運行期間按照用戶定義的事件自主地進行全局演化,提高了本發(fā)明的自適應(yīng)性。
[0047]第三,本發(fā)明通過抗毀機制實現(xiàn)當系統(tǒng)任意節(jié)點中功能智能體Agent毀壞時的自修復(fù),使得當功能智能體Agent毀壞導(dǎo)致任務(wù)終止進行時,能夠選擇新的功能智能體Agent進行替換??朔爽F(xiàn)有技術(shù)無法及時處理功能智能體Agent毀壞,可能導(dǎo)致任務(wù)無法正常繼續(xù)的問題,增加了本發(fā)明的靈活性和可靠性。
【附圖說明】
[0048]圖1為本發(fā)明的流程圖;
[0049]圖2為本發(fā)明部署功能智能體Agent結(jié)構(gòu)框圖;
[0050]圖3為本發(fā)明部署服務(wù)智能體Agent結(jié)構(gòu)框圖。
【具體實施方式】
[0051]下面結(jié)合附圖對本發(fā)明做進一步的詳細描述。
[0052]參照附圖1,本發(fā)明系統(tǒng)自適應(yīng)動態(tài)演化方法,包括如下步驟:
[0053]步驟1,分析系統(tǒng)集成需求。
[0054]用戶分析擬集成系統(tǒng)的集成需求,確定集成單元的數(shù)量、能力接口信息以及集成單元之間的交互關(guān)系。
[0055]步驟2,包裝功能智能體Agent。
[0056]使用智能體Agent包裝工具,將集成單元接口包裝為功能智能體Agent,生成可擴展的標記語言XML形式的定義文件和組織對象模型COM組件形式的能力組件。其中,智能體Agent包裝工具,采用組件對象模型COM組件形式封裝功能單元,以接口形式對外提供組件對象模型COM組件能力,并在包裝時自動生成一個可擴展標記語言XML形式的功能定義文件,內(nèi)容包括名稱、IP地址、端口號、描述信息和能力等信息。集成單元接口包括:動態(tài)鏈接庫DLL的函數(shù)調(diào)用接口、可執(zhí)行程序EXE的數(shù)據(jù)傳輸接口、網(wǎng)絡(luò)服務(wù)Web Service的函數(shù)調(diào)用接口。
[0057]使用知識規(guī)則編輯器,用戶自定義功能智能體Agent中用于描述演化觸發(fā)條件、觸發(fā)邏輯和功能改變的知識規(guī)則。其中,知識規(guī)則編輯工具采用自定義的面向動態(tài)控制集成的腳本語言DCISL和“條件-動作”的定義方式來設(shè)計知識規(guī)則,生成腳本中間文件。
[0058]步驟3,包裝服務(wù)智能體Agent。
[0059]使用智能體Agent包裝工具,將功能相近的一組功能智能體Agent包裝為服務(wù)智能體Agent,生成可擴展的標記語言XML形式的定義文件,內(nèi)容包括名稱、IP地址、端口號、描述信息和熟人列表等。
[0060]步驟4,編寫集成規(guī)則。
[0061]根據(jù)功能智能體Agent的能力和服務(wù)智能體Agent之間的邏輯協(xié)作關(guān)系,使用腳本設(shè)計工具,編寫集成腳本。
[0062]使用集成演化控制引擎解釋集成腳本,生成集成規(guī)則,集成規(guī)則為可擴展的標記語言XML形式且可為多個。所述的集成演化控制引擎,解釋邏輯腳本、生成并分發(fā)規(guī)則,為集成和在線演化提供支持。
[0063]步驟5,部署非主控平臺。
[0064]在系統(tǒng)的每一個子節(jié)點安裝非主控平臺,非主控平臺包括:用于運行時支持的本地管理工具以及用于開發(fā)階段支持的開發(fā)設(shè)計工具。啟動非主控平臺,配置計算機的IP等基本信息,加載該節(jié)點的所有的服務(wù)智能體Agent和功能智能體Agent。
[0065]步驟6,部署主控平臺。
[0066]在系統(tǒng)的主節(jié)點安裝主控平臺,主控平臺唯一,且包括用于運行時管理的全局管理工具、用于運行時支持的本地管理工具以及用于開發(fā)階段支持的開發(fā)設(shè)計工具。啟動主控平臺配置計算機的IP等基本信息,加載所有的服務(wù)智能體Agent和功能智能體Agent,加載集成規(guī)則。
[0067]用戶在主控平臺自定義事件,并以可擴展標記語言XML的形式進行存儲;所述的事件包括事件條件和動作信息兩部分,事件條件描述觸發(fā)該事件的環(huán)境變化信息,可為多個環(huán)境變量的組合,動作信息描述事件被觸發(fā)后應(yīng)采用的行為。
[0068]步驟7,動態(tài)集成。
[0069]集成演化控制引擎分發(fā)集成規(guī)則,服務(wù)智能體Agent加載集成演化控制引擎分發(fā)的集成規(guī)則,自主綁定與其它服務(wù)智能體Agent間的協(xié)作關(guān)系,開始協(xié)作;所述的集成演化控制引擎,解釋邏輯腳本、生成并分發(fā)規(guī)則,為集成和在線演化提供支持。
[0070]當系統(tǒng)集成需求發(fā)生改變時,通過動態(tài)切換策略實現(xiàn)服務(wù)智能體Agent間集成規(guī)則的改變,通過動態(tài)招標策略改變服務(wù)智能體Agent和功能智能體Agent之間綁定關(guān)系。
[0071]其中,動態(tài)切換策略的具體步驟為:
[0072]第一步,重新分析被集成各模塊間的集成邏輯,確定服務(wù)Agent之間的交互關(guān)
[0073]系,編寫新的集成腳本;
[0074]第二步,利用集成演化控制引擎解釋新的集成腳本,生成集成規(guī)則,分發(fā)集成規(guī)則到參與集成的服務(wù)智能體Agent,所述的集成演化控制引擎,解釋邏輯腳本、生成并分發(fā)規(guī)貝Ij,綁定智能體Agent間的協(xié)作關(guān)系,為集成和在線演化提供支持;
[0075]第三步,服務(wù)智能體Agent接收到集成規(guī)則后,替換已有的集成規(guī)則,利用接收到的集成規(guī)則重新綁定與其它服務(wù)Agent間的協(xié)作關(guān)系,并根據(jù)新的集成規(guī)則繼續(xù)運行;
[0076]第四步,發(fā)送命令到?jīng)]有參與集成的服務(wù)Agent,停止其運行。
[0077]動態(tài)招標策略的具體步驟為:
[0078]第一步,服務(wù)智能體Agent向公共消息黑板CMB發(fā)送招標請求;
[0079]第二步,公共消息黑板CMB收到招標請求后,向能力注冊中心CRC查找符合投標條件的功能Agent ;如果查找到符合條件的功能智能體Agent,則公共消息黑板CMB向查找到的功能智能體Agent發(fā)送投標邀請;如果公共消息黑板CMB沒有查到符合條件的功能智能體Agent,則保存招標請求;
[0080]第三步,當有