[發(fā)明專利]一種提高規(guī)則引擎運行效率的方法在審
| 申請?zhí)枺?/td> | 201410601682.1 | 申請日: | 2014-10-30 |
| 公開(公告)號: | CN105573737A | 公開(公告)日: | 2016-05-11 |
| 發(fā)明(設(shè)計)人: | 田瑞琴;唐鼎;楊興華;楊國立;趙志軍;慈松;譚紅艷 | 申請(專利權(quán))人: | 中國科學(xué)院聲學(xué)研究所 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 北京方安思達(dá)知識產(chǎn)權(quán)代理有限公司 11472 | 代理人: | 王宇楊;楊青 |
| 地址: | 100190 *** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 提高 規(guī)則 引擎 運行 效率 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及人工智能領(lǐng)域中的規(guī)則引擎技術(shù),特別涉及一種提高規(guī)則引擎運行 效率的方法。
背景技術(shù)
規(guī)則引擎由推理引擎發(fā)展而來,是一種嵌入在應(yīng)用程序中的組件,實現(xiàn)了將業(yè) 務(wù)決策從應(yīng)用程序代碼中分離出來,并使用預(yù)定義的語義模塊編寫業(yè)務(wù)決策。由于 規(guī)則引擎是軟件組件,所以只有開發(fā)人員才能通過程序接口的方式來使用和控制它, 通常情況下,開發(fā)人員在程序中使用規(guī)則引擎的五個步驟為:
1)創(chuàng)建規(guī)則引擎對象;
2)向引擎中加載規(guī)則集或更換規(guī)則集;
3)向引擎提交需被規(guī)則集處理的事實集;
4)命令引擎執(zhí)行;
5)導(dǎo)出引擎執(zhí)行結(jié)果,從引擎中撤出處理過的數(shù)據(jù)。
規(guī)則引擎常應(yīng)用于業(yè)務(wù)規(guī)則經(jīng)常發(fā)生變化的系統(tǒng)。規(guī)則引擎可以將用戶的業(yè)務(wù) 規(guī)則和應(yīng)用系統(tǒng)的開發(fā)相分離,使業(yè)務(wù)規(guī)則的變更不會影響到應(yīng)用系統(tǒng)的開發(fā),而 且用戶可以基于規(guī)則引擎靈活定制自己的業(yè)務(wù)規(guī)則。
規(guī)則引擎的推理步驟如下:
1)將事實集輸入至工作內(nèi)存;
2)將規(guī)則集中的規(guī)則和事實集中的事實比較;
3)如果執(zhí)行規(guī)則存在沖突,即同時激活了多個規(guī)則,將沖突的規(guī)則放入沖突集 合;
4)解決沖突,將激活的規(guī)則按順序放入;
5)執(zhí)行規(guī)則,重復(fù),直至執(zhí)行完所有的規(guī)則。
任何一個規(guī)則引擎都需要很好地解決規(guī)則的推理機制和規(guī)則條件匹配的效率問 題,當(dāng)引擎執(zhí)行時,會根據(jù)執(zhí)行隊列中的優(yōu)先順序逐條執(zhí)行規(guī)則執(zhí)行實例,由于規(guī) 則的執(zhí)行部分可能會改變工作區(qū)的數(shù)據(jù)對象,從而會使隊列中的某些規(guī)則執(zhí)行實例 因為條件改變而失效,必須從隊列中撤銷,也可能會激活原來不滿足條件的規(guī)則, 生成新的規(guī)則執(zhí)行實例進(jìn)入隊列;于是就產(chǎn)生了一種“動態(tài)”的規(guī)則執(zhí)行鏈,形成 規(guī)則的推理機制。
引擎需要迅速測試工作區(qū)中的數(shù)據(jù)對象,從加載的規(guī)則集中發(fā)現(xiàn)符合條件的規(guī) 則,生成規(guī)則執(zhí)行條例。規(guī)則條件匹配的效率決定了規(guī)則引擎的運行效率,決定了 規(guī)則引擎的性能。
目前已有很多方法用于提高規(guī)則引擎的運行效率。1999年,美國范德堡大學(xué)John Heusinkveld等人提出了用html來定義規(guī)則的方法;2008年,韓國信息與通信大學(xué) ChangbaiChoi等人提出了在移動設(shè)備上通過限制Rete算法匹配過程中的規(guī)則集和事 實集的大小的方法來提高規(guī)則引擎的執(zhí)行效率;2009年,武漢大學(xué)ZhangRuijun等 人提出了將用xml文件表示的規(guī)則集轉(zhuǎn)化為and/ortree,再轉(zhuǎn)換為0-1matrix的方法, 進(jìn)一步提高規(guī)則引擎的執(zhí)行效率;2010年,北京郵電大學(xué)的重點智能通信軟件實驗 室DingXiao等人提出了通過優(yōu)化rete算法來提高規(guī)則引擎的的執(zhí)行效率的方法; 2010年,天津大學(xué)計算機系GangZhang等人提出了預(yù)先編譯規(guī)則文件、詳述規(guī)則文 件內(nèi)容、子功能包劃分三種提高規(guī)則引擎執(zhí)行效率的方法;2012年,美國托雷多大 學(xué)SomaShekaraSreenadhReddyDepuru等人提出了數(shù)據(jù)分類的思想:不同類型的用 戶所進(jìn)行匹配的規(guī)則不一樣,由此減少了規(guī)則集的數(shù)量,提高運行效率。
上述這些研究方法在不同程度上提高了規(guī)則引擎的運行效率,但是這些研究方 法大多適用于運行在PC機或服務(wù)器上的規(guī)則引擎,而對于輕量化設(shè)備上規(guī)則引擎不 適用,主要原因是輕量化設(shè)備的計算能力和存儲能力有限,直接應(yīng)用上述這些研究 方法會有一定的局限性。在這些研究方法中,ChangbaiChoi等人提出的限制匹配過 程中規(guī)則集和事實集大小的方法,雖然這個方法能夠在輕量化的移動設(shè)備上實現(xiàn), 但是這個方法在執(zhí)行過程中存在下述問題:每次進(jìn)行規(guī)則匹配時,由于無法準(zhǔn)確預(yù) 測哪些規(guī)則能夠被觸發(fā),哪些規(guī)則不能夠被觸發(fā),也就不能準(zhǔn)確找出每次匹配時挑 選哪些規(guī)則進(jìn)行匹配。因此,如果規(guī)則挑選不精準(zhǔn)的話,會造成本次匹配的執(zhí)行結(jié) 果不精準(zhǔn),從而影響規(guī)則引擎的運行效率。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服目前應(yīng)用在輕量化設(shè)備上的規(guī)則引擎存在的運行效率低 的缺點,在現(xiàn)有匹配算法的基礎(chǔ)上,提出了一種為每條規(guī)則添加“關(guān)聯(lián)事實”屬性 的方法,此方法可以提高規(guī)則引擎的運行效率。
為達(dá)到上述目的,本發(fā)明提供了一種提高規(guī)則引擎運行效率的方法,所述方法 包括:
步驟101)建立事實集;所述事實集是若干個事實的集合;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國科學(xué)院聲學(xué)研究所,未經(jīng)中國科學(xué)院聲學(xué)研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410601682.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:用戶界面的測試方法及裝置
- 下一篇:筆記管理方法和裝置
- 規(guī)則發(fā)現(xiàn)程序、規(guī)則發(fā)現(xiàn)處理和規(guī)則發(fā)現(xiàn)裝置
- 不規(guī)則瓶蓋
- 相關(guān)規(guī)則分析裝置以及相關(guān)規(guī)則分析方法
- 分析規(guī)則調(diào)整裝置、分析規(guī)則調(diào)整系統(tǒng)以及分析規(guī)則調(diào)整方法
- 規(guī)則抽取方法和規(guī)則抽取設(shè)備
- 終端規(guī)則引擎裝置、終端規(guī)則運行方法
- 布(規(guī)則)
- 規(guī)則呈現(xiàn)方法、存儲介質(zhì)和規(guī)則呈現(xiàn)裝置
- 可編寫規(guī)則配置模塊、規(guī)則生成系統(tǒng)、及規(guī)則管理平臺
- 不規(guī)則圍棋





