專(zhuān)利名稱(chēng):基于嵌入式系統(tǒng)的具有半活性狀態(tài)的智能代理的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式軟件系統(tǒng)領(lǐng)域,具體涉及一種具有半活性狀態(tài)的智 能代理的實(shí)現(xiàn)方法。
背景技術(shù):
智能代理(簡(jiǎn)稱(chēng)代理)是自治實(shí)體,它與其他實(shí)體合作,完成整個(gè)系 統(tǒng)的整體目標(biāo)。在該代理環(huán)境中它們駐留在一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)上,在執(zhí)行過(guò)程 中不移動(dòng),也稱(chēng)為靜態(tài)代理。智能代理不僅僅只應(yīng)用于人工智能領(lǐng)域,而 且廣泛地應(yīng)用在諸如人機(jī)界面、通信、軟件工程和嵌入式系統(tǒng)等領(lǐng)域。
按照FIPA標(biāo)準(zhǔn)化組織對(duì)代理的生命周期的規(guī)范化聲明,每個(gè)代理在其 生命周期內(nèi)的狀態(tài)有6種,分別是Unknown (未知狀態(tài))、Initiated (初始 化狀態(tài))、Active (活動(dòng)狀態(tài))、Transit (移動(dòng)狀態(tài))、Waiting (等待狀態(tài)) 和Suspended (掛起狀態(tài))。然而,這些生命周期狀態(tài)在嵌入式系統(tǒng)中面臨 著新問(wèn)題,主要表現(xiàn)在以下三點(diǎn) 一是在許多嵌入式系統(tǒng)中,軟件的運(yùn)行 環(huán)境是相對(duì)穩(wěn)定的,不會(huì)經(jīng)常變化,所需由嵌入式系統(tǒng)提供的功能以及面 對(duì)的應(yīng)用和過(guò)程都是預(yù)知的,相對(duì)固定的,因此代理在執(zhí)行過(guò)程中是不移 動(dòng)的。二是許多嵌入式系統(tǒng)都有著不同程度的實(shí)時(shí)性要求,需要有對(duì)外部 事件迅速作出反應(yīng)的能力,因此簡(jiǎn)單的等待狀態(tài)在嵌入式系統(tǒng)中是不可接 受的,不適應(yīng)實(shí)時(shí)性的要求。三是通常的嵌入式系統(tǒng)所提供的資源是有限 的,典型的如處理器資源、圖形資源、通訊資源等。這些資源為系統(tǒng)中所 有代理共享,每個(gè)代理有著不同的目標(biāo),在代理試圖實(shí)現(xiàn)自身的目標(biāo)時(shí), 可能會(huì)與其他的代理發(fā)生沖突,主要表現(xiàn)就是對(duì)共享資源占用的沖突。
因此,要充分發(fā)揮嵌入式系統(tǒng)的效率,提高系統(tǒng)的實(shí)時(shí)響應(yīng)能力,必 須以上述的三個(gè)問(wèn)題作為切入點(diǎn),重新審視嵌入式系統(tǒng)中代理的生命周期 狀態(tài),著重解決代理對(duì)共享資源的沖突使用問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供基于嵌入式系統(tǒng)的具有半活性狀態(tài)的智能代理 的實(shí)現(xiàn)方法,針對(duì)嵌入式系統(tǒng)的應(yīng)用特點(diǎn),取消了智能代理生命周期中的 等待狀態(tài)和移動(dòng)狀態(tài),增加了半活性狀態(tài),即一種處于動(dòng)態(tài)上下文中的、 活性處于活動(dòng)狀態(tài)和掛起狀態(tài)之間的狀態(tài),根據(jù)系統(tǒng)運(yùn)行上下文,如運(yùn)算 負(fù)載、共享資源競(jìng)爭(zhēng)情況等,控制代理生命周期內(nèi)的狀態(tài)變遷,減少共享 資源的使用沖突,在保證系統(tǒng)可接受的運(yùn)行效率和實(shí)時(shí)性的基礎(chǔ)上,協(xié)調(diào) 各個(gè)代理的行為,使得系統(tǒng)能夠長(zhǎng)期正常的運(yùn)轉(zhuǎn)。
本發(fā)明基于嵌入式系統(tǒng)的具有半活性狀態(tài)的智能代理的實(shí)現(xiàn)方法,其 步驟包括
(1) 啟動(dòng)代理程序,代理開(kāi)始運(yùn)行,進(jìn)入步驟(2);
(2) 代理程序進(jìn)行初始化,完成后進(jìn)入步驟(3);
(3) 代理周期性地獲取運(yùn)行環(huán)境的資源參數(shù),判斷代理運(yùn)行所需要的 資源條件是否能夠滿足;如果能夠滿足,進(jìn)入步驟(4),否則進(jìn)入步驟(5);
(4) 激活代理,代理進(jìn)入活性狀態(tài),繼續(xù)運(yùn)行;
(5) 判斷代理是否能夠繼續(xù)等待直到資源條件滿足;如果代理能夠等 待,進(jìn)入步驟(6),否則進(jìn)入步驟(7);
(6) 掛起代理,代理進(jìn)入掛起狀態(tài);
(7) 按照下述步驟運(yùn)行活性推算,然后進(jìn)入步驟(8);
(7.1) 根據(jù)代理的信息、行為關(guān)系,決定代理作用與否、作用強(qiáng)弱的 影響因素,將這些影響因素記為Ae二(Ael, Ae2, Ae3 };
(7.2) 根據(jù)代理的信息、行為關(guān)系,決定某影響因素對(duì)于該代理行為 的影響強(qiáng)弱,記為Ar;
(7.3) 根據(jù)代理處于運(yùn)行環(huán)境的上下文,衡量代理某行為的作用能力 水平的度量,記為Al^E(Ae, Ar);
(7.4) 半活性狀態(tài)是代理處于動(dòng)態(tài)上下文中的一種狀態(tài),其活性處于 活性狀態(tài)和掛起狀態(tài)之間;半活性具有兩個(gè)極限狀態(tài),最高活性是活性狀 態(tài),最低活性是掛起狀態(tài);
(7.5) 按照應(yīng)用程序的需要,進(jìn)一步建立代理的行為與活性元素間的分析方法,從而決定代理在上下文環(huán)境中任意時(shí)刻的狀態(tài),也即確定代理
的活性;
(8) 激活滿足條件的代理,進(jìn)入步驟(4);
(9) 代理終止運(yùn)行,代理程序結(jié)束退出。 本發(fā)明基于嵌入式系統(tǒng)的具有半活性狀態(tài)的智能代理的實(shí)現(xiàn)方法的優(yōu)
點(diǎn)是第一,半活性狀態(tài)更符合嵌入式實(shí)時(shí)系統(tǒng)的應(yīng)用特點(diǎn),能夠保證應(yīng) 用的實(shí)時(shí)性需求;第二,能夠消除代理軟件由于資源不足而長(zhǎng)時(shí)間的等待, 顯著提高嵌入式應(yīng)用系統(tǒng)的整體性能;第三,屏蔽了軟件編程的復(fù)雜性, 提供了一個(gè)供編程人員使用的開(kāi)發(fā)框架以及一套編程接口 (API),能夠降 低代理應(yīng)用開(kāi)發(fā)的復(fù)雜度,提高開(kāi)發(fā)效率。
圖1為本發(fā)明方法的流程示意圖2為獲取運(yùn)行環(huán)境的資源參數(shù)的示意圖3為本發(fā)明方法中代理的狀態(tài)轉(zhuǎn)換示意圖。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。 如圖1所示,本發(fā)明方法包括以下步驟
(1) 啟動(dòng)代理程序,代理開(kāi)始運(yùn)行,進(jìn)入步驟(2);
(2) 代理程序進(jìn)行初始化,如圖2所示,完成后進(jìn)入步驟(3);
(3) 代理周期性地獲取運(yùn)行環(huán)境的資源參數(shù),如圖3所示,判斷代理 運(yùn)行所需要的資源條件是否能夠滿足;如果能夠滿足,進(jìn)入步驟(4),否 則進(jìn)入步驟(5);
(4) 激活代理,如圖2所示,代理進(jìn)入活性狀態(tài),繼續(xù)運(yùn)行;
(5) 判斷代理是否能夠繼續(xù)等待直到資源條件滿足;如果代理能夠等 待,進(jìn)入步驟(6),否則進(jìn)入步驟(7);
(6) 掛起代理,如圖2所示,代理進(jìn)入掛起狀態(tài);(7)按照下述步驟運(yùn)行活性推算,然后進(jìn)入步驟(8);
(7.1) 根據(jù)代理的信息、行為關(guān)系,決定代理作用與否、作用強(qiáng)弱的 影響因素,將這些影響因素記為Ae-Mel, Ae2, Ae3……};
(7.2) 根據(jù)代理的信息、行為關(guān)系,決定某影響因素對(duì)于該代理行為 的影響強(qiáng)弱,記為Ar;
(7.3) 根據(jù)代理處于運(yùn)行環(huán)境的上下文,衡量代理某行為的作用能力 水平的度量,記為Al二i:(Ae, Ar);
(7.4) 半活性狀態(tài)是代理處于動(dòng)態(tài)上下文中的一種狀態(tài),其活性處于 活性狀態(tài)和掛起狀態(tài)之間;半活性具有兩個(gè)極限狀態(tài),最高活性是活性狀 態(tài),最低活性是掛起狀態(tài);
(7.5) 按照應(yīng)用程序的需要,進(jìn)一步建立代理的行為與活性元素間的 分析方法,從而決定代理在上下文環(huán)境中任意時(shí)刻的狀態(tài),也即確定代理 的活性;
(8) 激活滿足條件的代理,如圖2所示,進(jìn)入步驟(4);
(9) 代理終止運(yùn)行,代理程序結(jié)束退出,如圖2所示。
權(quán)利要求
1、一種基于嵌入式系統(tǒng)的具有半活性狀態(tài)的智能代理的實(shí)現(xiàn)方法,其特征在于其步驟包括(1)啟動(dòng)代理程序,代理開(kāi)始運(yùn)行,進(jìn)入步驟(2);(2)代理程序進(jìn)行初始化,完成后進(jìn)入步驟(3);(3)代理周期性地獲取運(yùn)行環(huán)境的資源參數(shù),判斷代理運(yùn)行所需要的資源條件是否能夠滿足;如果能夠滿足,進(jìn)入步驟(4),否則進(jìn)入步驟(5);(4)激活代理,代理進(jìn)入活性狀態(tài),繼續(xù)運(yùn)行;(5)判斷代理是否能夠繼續(xù)等待直到資源條件滿足;如果代理能夠等待,進(jìn)入步驟(6),否則進(jìn)入步驟(7);(6)掛起代理,代理進(jìn)入掛起狀態(tài);(7)按照下述步驟運(yùn)行活性推算,然后進(jìn)入步驟(8);(7. 1)根據(jù)代理的信息、行為關(guān)系,決定代理作用與否、作用強(qiáng)弱的影響因素,將這些影響因素記為Ae={Ae1,Ae2,Ae3……};(7. 2)根據(jù)代理的信息、行為關(guān)系,決定某影響因素對(duì)于該代理行為的影響強(qiáng)弱,記為Ar;(7. 3)根據(jù)代理處于運(yùn)行環(huán)境的上下文,衡量代理某行為的作用能力水平的度量,記為Al=∑(Ae,Ar);(7. 4)半活性狀態(tài)是代理處于動(dòng)態(tài)上下文中的一種狀態(tài),其活性處于活性狀態(tài)和掛起狀態(tài)之間;半活性具有兩個(gè)極限狀態(tài),最高活性是活性狀態(tài),最低活性是掛起狀態(tài);(7. 5)按照應(yīng)用程序的需要,進(jìn)一步建立代理的行為與活性元素間的分析方法,從而決定代理在上下文環(huán)境中任意時(shí)刻的狀態(tài),也即確定代理的活性;(8)激活滿足條件的代理,進(jìn)入步驟(4);(9)代理終止運(yùn)行,代理程序結(jié)束退出。
全文摘要
本發(fā)明一種基于嵌入式系統(tǒng)的具有半活性狀態(tài)的智能代理的實(shí)現(xiàn)方法,實(shí)現(xiàn)了嵌入式系統(tǒng)中代理的半活性狀態(tài)的管理和變遷機(jī)制,即對(duì)處于動(dòng)態(tài)上下文中的、活性處于活動(dòng)狀態(tài)和掛起狀態(tài)之間的狀態(tài)進(jìn)行管理,控制代理生命周期內(nèi)的狀態(tài)變遷,減少共享資源的使用沖突,協(xié)調(diào)各個(gè)代理的行為,使得系統(tǒng)能夠長(zhǎng)期正常的運(yùn)轉(zhuǎn)。其優(yōu)點(diǎn)在于第一,更符合嵌入式實(shí)時(shí)系統(tǒng)的應(yīng)用特點(diǎn),能夠保證應(yīng)用的實(shí)時(shí)性需求;第二,能夠消除代理軟件由于資源不足而長(zhǎng)時(shí)間的等待,顯著提高嵌入式應(yīng)用系統(tǒng)的整體性能;第三,屏蔽了軟件編程的復(fù)雜性,提供了一個(gè)供編程人員使用的開(kāi)發(fā)框架以及一套編程接口(API),能夠降低代理應(yīng)用開(kāi)發(fā)的復(fù)雜度,提高開(kāi)發(fā)效率。
文檔編號(hào)G06F9/50GK101436147SQ20081023688
公開(kāi)日2009年5月20日 申請(qǐng)日期2008年12月18日 優(yōu)先權(quán)日2008年12月18日
發(fā)明者慧 向, 岳惠明, 曹萬(wàn)華, 俊 李, 菲 諶, 靖 陳, 黃志剛, 龔昌明 申請(qǐng)人:中國(guó)船舶重工集團(tuán)公司第七○九研究所