亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Java規則引擎工作原理及應用

2019-11-18 11:53:27
字體:
來源:轉載
供稿:網友

  摘 要 java規則引擎是一種嵌入在Java程序中的組件,它的任務是把當前提交給引擎的Java數據對象與加載在引擎中的業務規則進行測試和比對,激活那些符合當前數據狀態下的業務規則,根據業務規則中聲明的執行邏輯,觸發應用程序中對應的操作。

  引言

  目前,Java社區推動并發展了一種引人注目的新技術——Java規則引擎(Rule Engine)。利用它就可以在應用系統中分離商業決策者的商業決策邏輯和應用開發者的技術決策,并把這些商業決策放在中心數據庫或其他統一的地方,讓它們能在運行時可以動態地治理和修改,從而為企業保持靈活性和競爭力提供有效的技術支持。

  規則引擎的原理

  1、基于規則的專家系統(RBES)簡介

  Java規則引擎起源于基于規則的專家系統,而基于規則的專家系統又是專家系統的其中一個分支。專家系統屬于人工智能的范疇,它模擬人類的推理方式,使用試探性的方法進行推理,并使用人類能理解的術語解釋和證實它的推理結論。為了更深入地了解Java規則引擎,下面簡要地介紹基于規則的專家系統。RBES包括三部分:Rule Base(knowledge base)、Working Memory(fact base)和Inference Engine。它們的結構如下系統所示:

Java規則引擎工作原理及應用(圖一)
圖1 基于規則的專家系統構成

  如圖1所示,推理引擎包括三部分:模式匹配器(Pattern Matcher)、議程(Agenda)和執行引擎(Execution Engine)。推理引擎通過決定哪些規則滿足事實或目標,并授予規則優先級,滿足事實或目標的規則被加入議程。模式匹配器決定選擇執行哪個規則,何時執行規則;議程治理模式匹配器挑選出來的規則的執行次序;執行引擎負責執行規則和其他動作。

  和人類的思維相對應,推理引擎存在兩者推理方式:演繹法(Forward-Chaining)和歸納法(Backward-Chaining)。演繹法從一個初始的事實出發,不斷地應用規則得出結論(或執行指定的動作)。而歸納法則是根據假設,不斷地尋找符合假設的事實。Rete算法是目前效率最高的一個Forward-Chaining推理算法,許多Java規則引擎都是基于Rete算法來進行推理計算的。

  推理引擎的推理步驟如下:

  (1)將初始數據(fact)輸入Working Memory。

  (2)使用Pattern Matcher比較規則庫(rule base)中的規則(rule)和數據(fact)。

  (3)假如執行規則存在沖突(conflict),即同時激活了多個規則,將沖突的規則放入沖突集合。

  (4)解決沖突,將激活的規則按順序放入Agenda。

  (5)使用執行引擎執行Agenda中的規則。重復步驟2至5,直到執行完畢所有Agenda中的規則。

  上述即是規則引擎的原始架構,Java規則引擎就是從這一原始架構演變而來的。

  2、規則引擎相關構件

  規則引擎是一種根據規則中包含的指定過濾條件,判定其能否匹配運行時刻的實時條件來執行規則中所規定的動作的引擎。與規則引擎相關的有四個基本概念,為更好地理解規則引擎的工作原理,下面將對這些概念進行逐一介紹。

  1)信息元(Information Unit)

  信息元是規則引擎的基本建筑塊,它是一個包含了特定事件的所有信息的對象。這些信息包括:消息、產生事件的應用程序標識、事件產生事件、信息元類型、相關規則集、通用方法、通用屬性以及一些系統相關信息等等。

  2)信息服務(Information Services)

  信息服務產生信息元對象。每個信息服務產生它自己類型相對應的信息元對象。即特定信息服務根據信息元所產生每個信息元對象有相同的格式,但可以有不同的屬性和規則集。需要注重的是,在一臺機器上可以運行許多不同的信息服務,還可以運行同一信息服務的不同實例。但無論如何,每個信息服務只產生它自己類型相對應的信息元。

  3)規則集(Rule Set)

  顧名思義,規則集就是許多規則的集合。每條規則包含一個條件過濾器和多個動作。一個條件過濾器可以包含多個過濾條件。條件過濾器是多個布爾表達式的組合,其組合結果仍然是一個布爾類型的。在程序運行時,動作將會在條件過濾器值為真的情況下執行。除了一般的執行動作,還有三類比較非凡的動作,它們分別是:放棄動作(Discard Action)、包含動作(Include Action)和使信息元對象內容持久化的動作。前兩種動作類型的區別將在2.3規則引擎工作機制小節介紹。

  4)隊列治理器(Queue Manager)

  隊列治理器用來治理來自不同信息服務的信息元對象的隊列。

  下面將研究規則引擎的這些相關構件是如何協同工作的。

  如圖2所示,處理過程分為四個階段進行:信息服務接受事件并將其轉化為信息元,然后這些信息元被傳給隊列治理器,最后規則引擎接收這些信息元并應用它們自身攜帶的規則加以執行,直到隊列治理器中不再有信息元。

Java規則引擎工作原理及應用(圖二)
圖2 處理過程協作圖

  3、規則引擎的工作機制

  下面專門研究規則引擎的內部處理過程。如圖3所示,規則引擎從隊列治理器中依次接收信息元,然后依規則的定義順序檢查信息元所帶規則集中的規則。如圖所示,規則引擎檢查第一個規則并對其條件過濾器求值,假如值為假,所有與此規則相關的動作皆被忽略并繼續執行下一條規則。假如第二條規則的過濾器值為真,所有與此規則相關的動作皆依定義順序執行,執行完畢繼續下一條規則。該信息元中的所有規則執行完畢后,信息元將被銷毀,然后從隊列治理器接收下一個信息元。在這個過程中并未考慮兩個非凡動作:放棄動作(Discard Action)和包含動作(Include Action)。放棄動作假如被執行,將會跳過其所在信息元中接下來的所有規則,并銷毀所在信息元,規則引擎繼續接收隊列治理器中的下一個信息元。包含動作其實就是動作中包含其它現存規則集的動作。包含動作假如被執行,規則引擎將暫停并進入被包含的規則集,執行完畢后,規則引擎還會返回原來暫停的地方繼續執行。這一過程將遞歸進行。

Java規則引擎工作原理及應用(圖三)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美日韩直播| 久久精品一偷一偷国产| 日韩视频亚洲视频| 久久视频免费观看| 78色国产精品| 久久久午夜视频| 久久久久久久久久久免费精品| 全球成人中文在线| 久久久人成影片一区二区三区观看| 久久国内精品一国内精品| 午夜精品久久久久久久久久久久| 日本久久中文字幕| 国产成人精品视| 91国产高清在线| 久久香蕉国产线看观看av| 欧美一级淫片aaaaaaa视频| 中文字幕欧美视频在线| 黑人精品xxx一区| 黑人巨大精品欧美一区免费视频| 日韩不卡在线观看| 91社影院在线观看| 精品小视频在线| 日韩欧美高清在线视频| 亚洲jizzjizz日本少妇| 亚洲精品日产aⅴ| 欧美成人免费一级人片100| 午夜精品一区二区三区在线| 久久久精品免费视频| 海角国产乱辈乱精品视频| 国产成人精品综合久久久| 26uuu另类亚洲欧美日本老年| 欧美丝袜美女中出在线| 国产97人人超碰caoprom| 两个人的视频www国产精品| 欧美情侣性视频| 国产区精品在线观看| 欧美黑人极品猛少妇色xxxxx| 亚洲缚视频在线观看| 91超碰中文字幕久久精品| 国产欧美婷婷中文| 亚洲天堂av综合网| 欧美怡红院视频一区二区三区| 国产女人18毛片水18精品| 国产欧美婷婷中文| 欧美极品在线播放| 国产成人精品免费视频| 色婷婷亚洲mv天堂mv在影片| 久操成人在线视频| 精品高清一区二区三区| 中文字幕精品久久久久| 91精品视频免费观看| 成人午夜激情免费视频| 久久香蕉国产线看观看网| 亚洲第一综合天堂另类专| 国产成+人+综合+亚洲欧美丁香花| 成人欧美在线视频| 亚洲精品aⅴ中文字幕乱码| 欧美成人精品一区| 欧美成人午夜剧场免费观看| 亚洲欧美日韩国产精品| 日韩成人网免费视频| 这里精品视频免费| 日韩少妇与小伙激情| 欧美电影在线播放| 欧美精品久久久久久久| 久久久久国产视频| 91在线无精精品一区二区| 国产一区二区日韩| 色一情一乱一区二区| 亚洲国产又黄又爽女人高潮的| 777午夜精品福利在线观看| 欧美巨乳在线观看| 久久天天躁狠狠躁夜夜av| 亚洲精品视频播放| 91tv亚洲精品香蕉国产一区7ujn| 一区二区三区亚洲| 韩国福利视频一区| 一个人看的www久久| 欧美亚洲国产日本| 91精品中国老女人| 欧美亚洲第一页| 欧美激情喷水视频| 欧美午夜性色大片在线观看| 一区二区三区黄色| 国产一区在线播放| 亚洲精品在线视频| 精品国产精品三级精品av网址| 国产视频综合在线| 亚洲欧洲日产国码av系列天堂| 亚洲精品久久久久久久久久久久| 欧美性猛交xxxx| 精品国偷自产在线| 亚洲视频精品在线| 亚洲免费人成在线视频观看| 欧美精品福利在线| 日韩国产欧美精品一区二区三区| 欧美精品一本久久男人的天堂| 亚洲电影天堂av| 亚洲精品中文字幕女同| 97视频在线观看免费高清完整版在线观看| 国产精品爽黄69| 精品久久久视频| 久久精品一区中文字幕| 久久伊人精品一区二区三区| 97在线视频一区| 日产日韩在线亚洲欧美| 久久资源免费视频| 中文字幕日本精品| 亚洲欧美精品伊人久久| 亚洲精品美女免费| 九九久久国产精品| 不卡av电影在线观看| 国产在线精品播放| 成人黄色片网站| 欧美午夜片在线免费观看| 中文字幕欧美精品在线| 国产精品极品在线| 欧美精品久久一区二区| 日本aⅴ大伊香蕉精品视频| 亚洲精品国产拍免费91在线| 成人性生交大片免费看视频直播| 92国产精品久久久久首页| 日韩一区二区av| 欧美性猛交xxxx黑人猛交| 国产精品视频成人| 久久久国产精品一区| 国语自产精品视频在线看抢先版图片| 亚洲人成在线免费观看| 亚洲精品美女网站| 中文字幕日本精品| 91久久国产精品| 色综合久久天天综线观看| 日韩免费在线免费观看| 久久69精品久久久久久国产越南| 欧美国产乱视频| 国产精品aaa| 欧美日韩国产第一页| 国产精品视频永久免费播放| 亚洲成人av在线| 情事1991在线| 国产精品在线看| 久久久久久噜噜噜久久久精品| 亚洲欧洲国产一区| 97碰在线观看| 91福利视频在线观看| 亚洲美女福利视频网站| 亚洲美女av网站| 欧美成人黑人xx视频免费观看| 国产精品美女在线| 亚洲国产精品网站| 亚洲免费影视第一页| 亚洲另类xxxx| 黄色成人在线播放| 亚洲精品视频网上网址在线观看| 色樱桃影院亚洲精品影院| 欧美日韩美女在线| 在线观看国产精品淫| 45www国产精品网站| 精品无人区太爽高潮在线播放| 欧美在线观看一区二区三区| 久久久久久久香蕉网| 亚洲国产精久久久久久| 人人做人人澡人人爽欧美| 欧美视频第一页|