亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進Drools規(guī)則引擎算法的兵力接替系統(tǒng)研究

        2016-10-21 16:08:10劉晶晶崔燕初建民
        軟件工程 2016年5期

        劉晶晶 崔燕 初建民

        摘 要:隨著作戰(zhàn)需求的多樣化,一些復雜的業(yè)務規(guī)則很難推導出精確的算法或抽象出合適的數(shù)據(jù)模型,因此將業(yè)務規(guī)則與軟件代碼分開引入規(guī)則引擎已成為一種主流趨勢。Drools規(guī)則引擎作為決策系統(tǒng)的推理機,采用Rete算法實現(xiàn)推理機的規(guī)則匹配,有著較高的效率,能夠較好匹配兵力接替系統(tǒng)。本文介紹了基于Drools規(guī)則引擎的兵力接替系統(tǒng)的設計方法及實現(xiàn),具體設計了作戰(zhàn)規(guī)則、并提出策略匹配的改進沖突消解算法,對此方法進行了實驗比較,實驗證明此方法大大增強了系統(tǒng)的開發(fā)效率和后期軟件的維護成本。

        關鍵詞:Drools;規(guī)則引擎;業(yè)務規(guī)則;Rete

        中圖分類號:TP315 文獻標識碼:A

        Abstract:With the diversification of the battle demands,precise algorithms or data models can hardly be derived from some complicated business rules.Therefore,it has become a mainstream trend to separately import business rules and software code into the rule engine.As the inference engine of the decision-making system,the drools rule engine adopts the rete algorithm to implement the rule-matching of the inference engine,which has high efficiency and appropriately matches the troop patrol system.This paper introduces the design and implementation of the troop patrol system based on the Drools rule engine,including the design of engagement rules.An improved rule-matching algorithm is also proposed.The result of comparison experiment shows that this method greatly improves the software development efficiency and effectively reduces the maintenance costs.

        Keywords:drools;rule engine;business rule;rete

        1 引言(Introduction)

        隨著作戰(zhàn)任務需求的多樣化,一些復雜的作戰(zhàn)任務很難推導出精確的算法或抽象出數(shù)據(jù)模型。對于指控軟件來說業(yè)務規(guī)則常常在需求階段還不明確,在設計和編碼后還會發(fā)生變化,但是業(yè)務規(guī)則往往嵌套在系統(tǒng)的各個代碼中,使得后期軟件的維護成本很高[1,2],多空域航空兵兵力接替系統(tǒng)就屬于這樣的情況,如何根據(jù)作戰(zhàn)規(guī)則的不同找出合適的接替兵力列表成為亟須解決的難題。

        本文針對此問題,提出應用Drools規(guī)則引擎[3-6]構建兵力接替系統(tǒng)的方法。由于規(guī)則引擎在維護軟件時支持對作戰(zhàn)規(guī)則的動態(tài)增、刪、改,降低了復雜業(yè)務邏輯和應用程序的維護成本。本文后面介紹了Drools規(guī)則引擎原理,給出了兵力接替系統(tǒng)模型框架,并通過系統(tǒng)軟件驗證此方法是可行的。

        2 兵力接替功能介紹(Features of troop patrol system)

        兵力接替功能是根據(jù)當前各目標信息(包括飛機的余油、性能、掛載等屬性信息)和巡邏空域的位置等信息確定出的一個多空域的航空兵接替巡邏出動計劃表。航空兵的出動計劃依據(jù)其后支撐的作戰(zhàn)規(guī)則產(chǎn)生。其中兵力接替系統(tǒng)的流程如圖1所示。

        兵力接替系統(tǒng)的輸出是接替列表即航空兵出動計劃表,供指揮員決策使用。

        3 Drools 規(guī)則引擎介紹(Drools rules engine introduction)

        Drools是一個采用規(guī)則實現(xiàn)的專家系統(tǒng)。它的核心是一個推理引擎,能夠處理大量的規(guī)則和事實。它采用的匹配算法是改進版本的Rete算法[7-11]。Rete算法是一個目前效率較高的前項鏈推理算法,其根據(jù)規(guī)則庫構建有效的模式匹配網(wǎng)絡,并且記錄匹配中節(jié)點的狀態(tài),從而獲得有效的解析和很高的效率。

        Drools中的Rete算法被稱為ReteOO,這種方法從一個初始的事實觸發(fā),不斷應用規(guī)則進行推理或執(zhí)行指定的動作,逐步匹配運算,最終達到相應的結論。Drools規(guī)則引擎過程如圖2所示。

        Drools規(guī)則引擎推理過程如下:

        (1)加載規(guī)則至規(guī)則庫。

        (2)加載需要匹配的事實至Working Memory。

        (3)對加載的規(guī)則和事實在模式匹配器中進行匹配。

        (4)將多條匹配的規(guī)則加入沖突集合。

        (5)根據(jù)沖突解決策略解決沖突,并確定需要激活的規(guī)則及其激活順序,將規(guī)則按順序加入議程中。

        (6)按照順序執(zhí)行規(guī)則,并重復3—6步,直至議程中無可激活規(guī)則為止。

        4 兵力接替系統(tǒng)設計(Troop patrol design)

        4.1 規(guī)則設計

        兵力接替系統(tǒng)主要包括三層:

        (1)UI應用層。用戶從態(tài)勢圖選擇多空域,設定優(yōu)選規(guī)則和過濾條件,將數(shù)據(jù)傳給計算服務。

        (2)計算服務層。計算服務接收應用層傳入的數(shù)據(jù),根據(jù)過濾條件計算出可用的兵力,并將規(guī)范化數(shù)據(jù)轉交底層規(guī)則引擎。

        (3)規(guī)則引擎決策層。規(guī)則引擎接收從服務層傳入的數(shù)據(jù),載入到兵力接替模塊對應的Working Memory中,并依據(jù)引擎中配置的決策規(guī)則,進行業(yè)務決策。最終將決策結果返回結果給服務層。

        在這三層中最為核心的是規(guī)則引擎決策層,其他兩層主要是為其準備規(guī)范化數(shù)據(jù)。

        在規(guī)則引擎中首先需要添加可配置的規(guī)則。兵力接替的規(guī)則包括:(1)時間最快優(yōu)先。(2)同一機場優(yōu)先。(3)同一機型優(yōu)先。(4)某類機型優(yōu)先。(5)某些空域優(yōu)先。

        由于規(guī)則之間可能存在沖突,而且同一個事實對象可能會觸發(fā)多個規(guī)則,因此給每條規(guī)則添加了一個Level屬性,Level值越低其優(yōu)先值越高,此條規(guī)則就越重要。當同一事實對象觸發(fā)了多個規(guī)則時,規(guī)則引擎會將觸發(fā)的所有規(guī)則放入議程中。這時需要沖突消解策略進行沖突消解。

        4.2 改進策略消解算法

        原先采用的方法是根據(jù)每個規(guī)則中的Level屬性進行排序,按照順序逐一執(zhí)行議程中的所有規(guī)則,后一個規(guī)則執(zhí)行的結果會覆蓋前一個規(guī)則的結果。由于此方法中會計算多次規(guī)則引擎結果,且結果不會使用而是直接拋棄,為了加快效率,采用改進版本的匹配方法執(zhí)行規(guī)則。改進版方法在一個事實觸發(fā)多個規(guī)則時,會進行邏輯判定,最后只計算一次完全匹配規(guī)則的結果,加快了效率,改進版本流程圖如圖3所示。

        算法會在議程中循環(huán)判斷是否有與事件對象完全匹配的規(guī)則,若存在此規(guī)則,則與現(xiàn)有匹配規(guī)則比較其Level值,將Level值小的保留。循環(huán)結束時計算當前存在的規(guī)則。

        算法結果時間比較,接替規(guī)則定義為:時間優(yōu)先,同一機場優(yōu)先,同一機型優(yōu)先,某類空域優(yōu)先。實驗所取的規(guī)則一樣,選取典型10個巡邏區(qū)域進行實驗。

        實驗所需計算結果如表1所示。

        為了提高數(shù)據(jù)準確性,去除用時最多的H區(qū)域與用時最少的J區(qū)域,計算得到結果為:改進前計算平均值為1217ms,改進后計算平均值為967ms,時間縮短了21.1%。

        為了更直觀表達出改進算法后系統(tǒng)計算性能的提高,在這里采用折線圖,如圖4所示。

        5 結論(Conclusion)

        本文采用Drools規(guī)則引擎將軍事業(yè)務邏輯從程序邏輯中分離出來,使用貼近軍事描述的語義模塊定義規(guī)范,實現(xiàn)對業(yè)務規(guī)則的集中生成共享和復用。當后期兵力接替業(yè)務規(guī)則發(fā)生變化之后,只需要修改規(guī)則文件即可,而不需要修改、編譯、測試、發(fā)布文件,如此將極大降低維護成本。在使用規(guī)則引擎進行計算時,提出了一種只計算一次完全匹配結果的改進計算方法,提高了改進效率近21%。

        參考文獻(References)

        [1] Liu D,Gu T,Xue J P.Rule Engine based on improvement Rete algorithm[C].Apperceiving Computing and Intelligence Analysis(ICACIA),2010 International Conference on.IEEE,2010:346-349.

        [2] Liang S,et al.OpenRuleBench:an analysis of the performance of rule engines[J].Aquaculture,2005,249(s1-4):353-365.

        [3] Nagl C,Rosenberg F,Dustdar S.VIDRE--A Distributed Service-Oriented Business Rule Engine based on RuleML[C].IEEE International Enterprise Distributed Object Computing Conference.IEEE Computer Society,2006:35-44.

        [4]Proctor M.Drools:a rule engine for complex event processing[C]//International Conference on Applications of Graph Transformations with Industrial Relevance,2011.

        [5] 陳育謙,等.基于規(guī)則引擎的項目開發(fā)環(huán)境訪問控制架構[J].指揮信息系統(tǒng)與技術,2014(02):5-8.

        [6] 藍雯飛,邢志寶,強小利.一種Drools規(guī)則引擎封裝模型及其實現(xiàn)[J].中南民族大學學報(自然科學版),2015(03):45-50.

        [7] 劉亞琴,譚一兵.基于規(guī)則引擎的應用程序開發(fā)[J].邵陽學院學報(自然科學版),2006(02):19-23.

        [8] 牛凱.規(guī)則引擎Drools在制造業(yè)J2EE系統(tǒng)中的應用研究[J].成組技術與生產(chǎn)現(xiàn)代化,2014(02):5-11.

        [9] 顧小東,高陽.Rete算法:研究現(xiàn)狀與挑戰(zhàn)[J].計算機科學,2012(11):9-14.

        [10] 宋震,郭福順,李蓮治.IMPR:一種優(yōu)于RETE算法的多模式/多對象匹配算法[J].小型微型計算機系統(tǒng),2002(02):15-18.

        [11] 文舉榮,王永利,劉偉.支持多類型瑕疵度量的RETE改進算法[J].計算機工程與應用,2015(15):8-13.

        作者簡介:

        劉晶晶(1986-),男,碩士,工程師.研究領域:指揮控制系統(tǒng).

        崔 燕(1988-),女,碩士,助理工程師.研究領域:指揮控制系統(tǒng).

        初建民(1997-),男,本科生.研究領域:算法研究.

        国产三级国产精品国产专区| 女性女同性aⅴ免费观女性恋| 国产成+人+综合+亚洲 欧美| 亚洲国产成人无码电影| 东京热加勒比国产精品| 肥老熟妇伦子伦456视频| 亚洲中文字幕无码久久| 欧美精品一区二区精品久久| 亚洲一区二区三区在线激情| 无码精品一区二区三区在线| 成人性做爰aaa片免费看| 9久9久女女热精品视频免费观看| 麻豆成年人视频在线观看| 婷婷色综合视频在线观看| 影视先锋av资源噜噜| 亚洲AV乱码毛片在线播放| 国产精品自拍午夜伦理福利| 偷拍激情视频一区二区三区| 法国啄木乌av片在线播放| 国产亚洲曝欧美不卡精品| 亚洲一区亚洲二区视频在线| 亚洲成av人影院| 亚洲三级黄色| 熟女乱乱熟女乱乱亚洲| 综合图区亚洲另类偷窥| 少女高清影视在线观看动漫| 国产成社区在线视频观看| 亚洲国产精品自拍成人| 特级精品毛片免费观看| 精人妻无码一区二区三区| 国产精品欧美成人| 国产成人综合日韩精品无| 国产精品女主播在线播放| 久久久久久亚洲av成人无码国产| 久久精品中文字幕第23页| 少妇高潮太爽了免费网站| 26uuu在线亚洲欧美| 国产中老年妇女精品| 无遮挡十八禁在线视频国产制服网站| 久久99久久久精品人妻一区二区| 人妻中文字幕在线网站|