• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Drools規(guī)則引擎在醫(yī)療數(shù)據(jù)合規(guī)系統(tǒng)中的應(yīng)用

      2019-10-11 11:24:36趙新王火劍
      軟件導(dǎo)刊 2019年7期
      關(guān)鍵詞:可視化

      趙新 王火劍

      摘 要:目前實現(xiàn)醫(yī)療數(shù)據(jù)合規(guī)控費的監(jiān)控系統(tǒng)大多采用傳統(tǒng)命令式編碼實現(xiàn),其中將業(yè)務(wù)規(guī)則邏輯與業(yè)務(wù)系統(tǒng)進行捆綁。當(dāng)業(yè)務(wù)規(guī)則邏輯或規(guī)則知識庫發(fā)生變更時,則需要研發(fā)人員重新修改編碼,且非研發(fā)人員無法靈活地進行規(guī)則編輯維護。為解決上述問題,引入Jboss的KIE可視化配置管理系統(tǒng),業(yè)務(wù)專家可通過該系統(tǒng)自定義編輯規(guī)則文件,并引用Drools規(guī)則引擎對規(guī)則文件進行解析。因此,只需維護規(guī)則文件即可,而無需采用傳統(tǒng)命令式編碼實現(xiàn)業(yè)務(wù)規(guī)則,減少了系統(tǒng)開發(fā)與維護工作量。業(yè)務(wù)系統(tǒng)調(diào)用Drools規(guī)則引擎進行校驗、解析規(guī)則文件,并與醫(yī)療數(shù)據(jù)進行匹配碰撞,從而實現(xiàn)了規(guī)則邏輯和業(yè)務(wù)系統(tǒng)解耦,避免了醫(yī)療政策變化對業(yè)務(wù)系統(tǒng)的影響,增強了系統(tǒng)適用性與靈活性。

      關(guān)鍵詞:Drools;規(guī)則引擎;可視化;醫(yī)療數(shù)據(jù)合規(guī)

      DOI:10. 11907/rjdk. 182781 開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):

      中圖分類號:TP319文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2019)007-0163-04

      Application of Drools Rule Engine in Medical Data Compliance System

      ZHAO Xin1,WANG Huo-jian2

      (1. Run Technologies CO., LTD.,Beijing 100096,China;

      2. Network Security Corps of Zhejiang Public Security Bureau, Hangzhou 310000,China)

      Abstract: At present, most of the monitoring systems for implementing medical data compliance control fees are implemented by traditional imperative coding, in which business rule logic and business system bundles are implemented.When the business rule logic or rule knowledge base changes, the R&D personnel need to re-edit the code implementation, and non-R&D personnel cannot flexibly perform rule editing and maintenance. In order to solve the above problems, JBoss' Drools rule engine and KIE visual configuration management system are cited. The business experts can visualize the custom editing rule logic and rule knowledge base, and develop the rule logic without hard coding, which reduces the development and maintenance of the system. The business system calls the Drools rule engine to check and parse the rules file, and the medical data is matched and collided, thereby realizing the decoupling of the rule logic and the business system, avoiding the influence of the medical policy change on the business system, and enhancing the applicability of the system and flexibility.

      Key Words: Drools;rule engine;visualization;medical data compliance

      作者簡介:趙新(1987-),女,北京銳安科技有限公司數(shù)據(jù)分析師,研究方向公安大數(shù)據(jù)分析。

      0 引言

      醫(yī)保部門通過制定大量業(yè)務(wù)規(guī)則進行醫(yī)保基金的審核控費,以減少醫(yī)保基金的不合理支出,提高基金使用率。如今很多信息技術(shù)已應(yīng)用于醫(yī)院醫(yī)保的精細(xì)化管理中[1]。本文的醫(yī)療數(shù)據(jù)合規(guī)審核系統(tǒng)主要依托規(guī)則庫對醫(yī)療機構(gòu)上傳的結(jié)算單數(shù)據(jù)進行逐單逐項審核,以實現(xiàn)醫(yī)保結(jié)算單審核的自動化處理,縮小人工抽檢范圍與審核盲區(qū),降低人工抽審工作量,從而減少人工成本,并提高審單準(zhǔn)確性與工作效率。

      目前有很多學(xué)者與機構(gòu)對醫(yī)保審核系統(tǒng)進行了研究[2],已有較為成熟的產(chǎn)品在各大醫(yī)院得到應(yīng)用,并取得顯著成效[3]。但目前醫(yī)療合規(guī)智能系統(tǒng)規(guī)則是通過硬編碼實現(xiàn)的,每個規(guī)則都需要單獨開發(fā)實現(xiàn)。其中規(guī)則邏輯與業(yè)務(wù)系統(tǒng)捆綁,當(dāng)業(yè)務(wù)規(guī)則改變或新增業(yè)務(wù)規(guī)則時,則需要重新梳理邏輯,開發(fā)或修改代碼,不易于系統(tǒng)維護。所以本文采用JBOSS開源的Drools 規(guī)則引擎,并引入drools的KIE可視化配置管理系統(tǒng)對原系統(tǒng)進行優(yōu)化。目前Drools規(guī)則引擎已發(fā)展相當(dāng)成熟,并廣泛應(yīng)用于企業(yè)營銷[6]、物聯(lián)網(wǎng)[7]、制造業(yè)[8]、金融保險[9]等領(lǐng)域。引進drools規(guī)則引擎的優(yōu)勢主要有以下幾方面:①業(yè)務(wù)規(guī)則與系統(tǒng)解耦。將規(guī)則從系統(tǒng)中剝離,從原有代碼轉(zhuǎn)變?yōu)橐?guī)則文本文件,Drools引擎提供了規(guī)則知識庫的組織管理方式;②規(guī)則知識庫可視化與自定義設(shè)置。在規(guī)則知識庫中可以靈活修改或新增規(guī)則邏輯及規(guī)則明細(xì);③規(guī)則流程化管理。Drools引擎集成流程引擎JBPM,可以通過組織不同規(guī)則及執(zhí)行順序,形成業(yè)務(wù)工作流;④規(guī)則編制方式多樣化。KIE框架提供了電子表格、導(dǎo)向規(guī)則表、商業(yè)過程等高級別編制方式,業(yè)務(wù)人員與用戶可以參與規(guī)則編制過程;⑤簡化應(yīng)用系統(tǒng)開發(fā)。無需進行編碼開發(fā)規(guī)則的邏輯實現(xiàn),且規(guī)則可視化維護完成后直接編譯發(fā)布即可,無需重啟應(yīng)用系統(tǒng),從而減少了系統(tǒng)開發(fā)的編碼量與維護成本。

      1 Drools規(guī)則引擎

      Drools是JBoss公司開發(fā)的一款基于Java語言、開源的規(guī)則引擎。該規(guī)則引擎從業(yè)務(wù)層中獨立出一套處理業(yè)務(wù)邏輯的API接口,從而實現(xiàn)了規(guī)則邏輯與業(yè)務(wù)系統(tǒng)的完全解耦。

      本文使用Drools6.5版本,規(guī)則引擎執(zhí)行過程為:推理引擎(Interface Engine)加載解析規(guī)則文件(Production Memory),然后加載匹配數(shù)據(jù)(Working Memory),調(diào)用ReteOO算法進行匹配,得出匹配結(jié)果,其匹配規(guī)則的生命周期由Agenda進行管理。Drools規(guī)則解析過程如圖1所示。

      2 KIE可視化配置管理

      Drools引擎提供了可視化配置編輯管理的KIE系統(tǒng),可按照規(guī)則引擎支持的規(guī)則文件格式維護所需的知識庫,從而將規(guī)則知識庫從業(yè)務(wù)系統(tǒng)中剝離。知識庫主要涉及以下幾個方面:

      (1)審核數(shù)據(jù)模型。定義規(guī)則所用的審核數(shù)據(jù)模型,將模型的jar包導(dǎo)入KIE系統(tǒng)。系統(tǒng)解析jar包,在定義規(guī)則時,可動態(tài)使用審核數(shù)據(jù)模型中的對象及對象屬性。

      (2)規(guī)則文件。規(guī)則文件可以是.drl、xls、brl或.gdst文件。其中,常用的描述文件是.drl和 xls 文件,而 xls 文件更直觀且易于維護,更容易被業(yè)務(wù)人員理解。因本文的醫(yī)保規(guī)則是規(guī)則邏輯+規(guī)則知識數(shù)據(jù),所以使用導(dǎo)向性決策表(.dgst)定義規(guī)則。該規(guī)則文件支持模板+數(shù)據(jù)的格式,且可以可視化地選擇數(shù)據(jù)模型對象及對象屬性,并編輯規(guī)則條件,如in、not in、<=、>=、!=等條件。對于較復(fù)雜的規(guī)則邏輯,可使用編寫腳本的方式將Java代碼直接嵌入規(guī)則文件中。

      業(yè)務(wù)專家人員可自定義新增業(yè)務(wù)規(guī)則,如新增“限老年人用藥”規(guī)則,并可對已有監(jiān)控規(guī)則中的具體明細(xì)條目進行編輯,如新增、修改、刪除某些限老年人使用的藥品項目。規(guī)則從系統(tǒng)中解耦,從原有代碼轉(zhuǎn)變?yōu)橐?guī)則文本文件,研發(fā)人員無需硬編碼實現(xiàn)規(guī)則邏輯,從而減少了開發(fā)與維護工作量。

      (3)工作流。KIE可視化配置界面使用JBPM6實現(xiàn)規(guī)則流程編輯,在規(guī)則定義時,必須增加ruleflow-group屬性列用于流程編排。編排工作流時,用戶可自定義所需的監(jiān)控規(guī)則及規(guī)則執(zhí)行順序,從而滿足不同場景的應(yīng)用要求。如在重點關(guān)注某類疾病的場景中,可將該類疾病的部分規(guī)則進行組合使用。

      3 系統(tǒng)應(yīng)用

      3.1 系統(tǒng)設(shè)計

      項目目前采用組件模式開發(fā),所以對JBOSS提供的KIE框架進行二次開發(fā),封裝成通用業(yè)務(wù)規(guī)則引擎,并在通用的基礎(chǔ)上封裝偏向不同業(yè)務(wù)的規(guī)則引擎組件。系統(tǒng)框架分為以下四層,如圖2所示。

      圖2 醫(yī)療數(shù)據(jù)合規(guī)系統(tǒng)框架

      (1)應(yīng)用系統(tǒng)層。應(yīng)用系統(tǒng)層通過spring bean集成業(yè)務(wù)規(guī)則引擎組件,主要功能為定義監(jiān)控審核任務(wù),并通過配置規(guī)則引擎需要的參數(shù),啟動規(guī)則引擎組件服務(wù),注入醫(yī)療業(yè)務(wù)數(shù)據(jù),如就診信息、結(jié)算信息、處方信息等。

      (2)業(yè)務(wù)規(guī)則引擎組件層。 業(yè)務(wù)規(guī)則引擎組件在通用引擎提供技術(shù)的基礎(chǔ)上,將應(yīng)用系統(tǒng)數(shù)據(jù)轉(zhuǎn)化成具體業(yè)務(wù)模型數(shù)據(jù)。業(yè)務(wù)規(guī)則引擎拆分?jǐn)?shù)據(jù)中的元素,分別插入規(guī)則引擎,例如從審核實體里拆分Person、TreatInfo、SettleInfo、Hospital、Doctor以及診療信息里的處方,分別插入規(guī)則引擎作為Fact,審核模型如圖3所示。

      圖3 Drools規(guī)則引擎審核數(shù)據(jù)模型

      (3)通用引擎組件層。封裝KIE API、多線程處理模型、消息隊列模型與異常模型以供業(yè)務(wù)規(guī)則引擎組件使用,該組件層面向KieSession知識庫,規(guī)則流程使用Kie框架API,也體現(xiàn)了項目面向流程開發(fā)的原則。

      該組件層對KieSession進行封裝,在收到需審核的數(shù)據(jù)后,需要主動調(diào)用fireAllRules方法執(zhí)行工作流中編輯的所有規(guī)則。Drools規(guī)則引擎對規(guī)則文件進行解析,加載醫(yī)療模型數(shù)據(jù),Drools推理引擎調(diào)用ReteOO算法執(zhí)行匹配規(guī)則,輸出匹配結(jié)果。

      (4)第三方引擎層。引用JBOSS KIE框架提供的API。

      3.2 數(shù)據(jù)流向

      醫(yī)療數(shù)據(jù)合規(guī)系統(tǒng)數(shù)據(jù)流向如圖4所示。

      (1)應(yīng)用系統(tǒng)加載醫(yī)保系統(tǒng)數(shù)據(jù),構(gòu)造審核實體數(shù)據(jù)單元。以某人的某次就診結(jié)算信息為單元,封裝就診信息、結(jié)算信息、醫(yī)囑信息、處方信息等,將數(shù)據(jù)注入到業(yè)務(wù)規(guī)則引擎配置的消息通道。

      (2)業(yè)務(wù)規(guī)則引擎組件從配置的消息通道中讀入數(shù)據(jù)。

      圖4 數(shù)據(jù)流向

      (3)將業(yè)務(wù)模型數(shù)據(jù)轉(zhuǎn)換成引擎能識別的審核數(shù)據(jù)元素。啟動相應(yīng)審核流程,將審核數(shù)據(jù)元素注入到通用引擎提供的API中。

      (4)Drools引擎接收數(shù)據(jù)輸入,初始化kieSession,動態(tài)加載KIE發(fā)布的業(yè)務(wù)規(guī)則和工作流,或靜態(tài)加載生成的業(yè)務(wù)規(guī)則jar包。規(guī)則引擎完成工作流啟動,解釋業(yè)務(wù)規(guī)則,對審核數(shù)據(jù)元素進行處理,并根據(jù)業(yè)務(wù)規(guī)則作出相應(yīng)決策。

      (5)審核流程完成后通知應(yīng)用系統(tǒng)審核完成,并返回審核結(jié)果,即醫(yī)療數(shù)據(jù)是否合規(guī),若違規(guī),則進行違規(guī)提醒。

      3.3 規(guī)則審核示例

      以“限兒童規(guī)則”為例,主要流程如下:

      (1)業(yè)務(wù)規(guī)則定義“限兒童規(guī)則”,KIE可視化配置示例如圖5所示。

      其中每一行配置一條規(guī)則,每一列為該條規(guī)則的邏輯條件。業(yè)務(wù)專家人員可在“編輯器”->“決策表”功能里可視化地自定義編輯規(guī)則邏輯,如再添加一個科室條件等。同時可以點擊“添加行”,增加一條限兒童使用的規(guī)則明細(xì)。該規(guī)則的邏輯實現(xiàn)及知識庫數(shù)據(jù)無需研發(fā)人員在業(yè)務(wù)系統(tǒng)中進行編碼開發(fā),只需按圖5示例配置規(guī)則文件,即可實現(xiàn)規(guī)則邏輯、數(shù)據(jù)與業(yè)務(wù)系統(tǒng)解耦。

      (2)定義業(yè)務(wù)應(yīng)用場景,編輯jbpm6工作流,此例中將“限兒童規(guī)則”添加到工作流。審核任務(wù)將執(zhí)行該業(yè)務(wù)應(yīng)用場景的工作流,并加載該工作流配置的所有規(guī)則文件。

      (3)審核模型信息?;颊邚埲?2歲,北醫(yī)三院門診就診,診斷結(jié)果為“風(fēng)寒感冒”,醫(yī)囑處方中包含 “康泰克”、“銀翹解毒片”、“小兒止咳顆粒(編碼340200038)”等,對張三此次就診情況封裝審核模型,將審核模型注入Drools引擎。

      (4)Drools規(guī)則引擎解析工作流中配置的“限兒童規(guī)則”文件,并加載張三患者的就診模型數(shù)據(jù),將兩者進行匹配碰撞。匹配到張三大于18歲,且處方中包含“小兒止咳顆粒(編碼340200038)”藥品,則該處方醫(yī)療數(shù)據(jù)違規(guī),輸出匹配結(jié)果“直接扣款,扣款金額xx元,處方違規(guī)”,以及提醒信息:“小兒止咳顆粒只能用于18歲以下兒童”。

      (5)Drools引擎審核完成,將步驟(4)中的審核結(jié)果返回業(yè)務(wù)應(yīng)用系統(tǒng),審核任務(wù)結(jié)束。

      3.4 Drools優(yōu)化

      在實時監(jiān)控審核任務(wù)執(zhí)行情況時,發(fā)現(xiàn)內(nèi)存使用率持續(xù)超過了90%。因Drools引擎是基于RETEOO算法的,而該算法是通過犧牲空間換取時間,在形成匹配網(wǎng)絡(luò)時保留了中間結(jié)果,易造成內(nèi)存溢出,故需要進行JVM內(nèi)存優(yōu)化,并且運行完規(guī)則引擎后需調(diào)用dispose方法釋放內(nèi)存[19]。

      4 結(jié)語

      對于規(guī)則頻繁發(fā)生變化的情況,業(yè)務(wù)領(lǐng)域?qū)<铱筛鶕?jù)行業(yè)政策、知識等及時調(diào)整規(guī)則文件,而無需進行硬編碼實現(xiàn)。調(diào)整完規(guī)則文件后可進行動態(tài)發(fā)布,業(yè)務(wù)系統(tǒng)更新加載新發(fā)布的規(guī)則知識庫,無需重啟應(yīng)用即可快速響應(yīng)需求變更。

      該規(guī)則引擎亦存在一些不足,除內(nèi)存消耗較大外,其對于某些特殊場景的規(guī)則實現(xiàn)比較復(fù)雜,無法通過配置完成,需要編寫Drools語法腳本,不便于業(yè)務(wù)人員維護。在使用決策表規(guī)則文件時,若規(guī)則中捆綁知識數(shù)據(jù)過多,將使可視化配置系統(tǒng)加載渲染速度較慢,且在業(yè)務(wù)系統(tǒng)調(diào)用引擎進行規(guī)則匹配時,匹配效率不高。

      由此可以看出,Drools規(guī)則引擎可應(yīng)用于任何與商業(yè)規(guī)則、業(yè)務(wù)規(guī)則,甚至數(shù)據(jù)清洗規(guī)則相關(guān)的場景,且隨著規(guī)則引擎工具的不斷發(fā)展與完善,其在實際項目工程中的應(yīng)用將越來越廣泛。

      參考文獻(xiàn):

      [1] 吳旭東,陳慶瑩,宮明. 現(xiàn)代信息技術(shù)在醫(yī)院醫(yī)保精細(xì)化管理中的應(yīng)用[J]. 實用醫(yī)藥雜志,2017,34(1):83-86.

      [2] 王芬芬,朱超雷,陳磊,等. 醫(yī)保智能審核系統(tǒng)設(shè)計[J]. 解放軍醫(yī)院管理雜志,2016,23(10):928-931,968.

      [3] 范玉改,李大奇. 醫(yī)保智能審核系統(tǒng)的應(yīng)用與成效分析[J]. 中國醫(yī)院,2017,21(5):60-62.

      [4] 尚爾路.? 規(guī)則自動生成技術(shù)研究及其在醫(yī)保審核中的應(yīng)用[D]. 成都:電子科技大學(xué),2017.

      [5] 繆姝妹,劉云,景慎旗,等. 基于ODM規(guī)則引擎的CDS醫(yī)療監(jiān)控平臺建設(shè)探討[J]. 中國衛(wèi)生信息管理雜志,2018,15(5):592-596.

      [6] 張樂. 基于規(guī)則引擎Drools的企業(yè)營銷系統(tǒng)的設(shè)計與實現(xiàn)[D]. 南京:東南大學(xué),2016.

      [7] 池深啟. 輕量級規(guī)則引擎Drools在物聯(lián)網(wǎng)平臺中的應(yīng)用研究[D]. 杭州:浙江工業(yè)大學(xué),2017.

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

      [9] 余昀錦. 保險行業(yè)中Drools規(guī)則引擎的研究與應(yīng)用[D]. 北京:北京郵電大學(xué),2014.

      [10] 陶曉俊,朱敏. 基于規(guī)則引擎的企業(yè)服務(wù)開發(fā)模式[J]. 計算機技術(shù)與發(fā)展,2008(2):115-118.

      [12] THU E E,NWE N. Transforming model oriented program into Android source code based on Drools rule engine[J]. Journal of Computer & Communications,2017,5(3):49-59.

      [13] 張淵,夏清國. 基于Rete算法的JAVA規(guī)則引擎[J]. 科學(xué)技術(shù)與工程,2006(11):1548-1550.

      [14] 童毅. 規(guī)則引擎中模式匹配算法及規(guī)則引擎應(yīng)用的研究[D]. 北京:北京郵電大學(xué),2010.

      [15] 黃穎.? 基于規(guī)則引擎的合同歸并生產(chǎn)解決方案[C]. 全國冶金自動化信息網(wǎng)2018年會論文集,2018.

      [16] KINYUA J,WEPPENAAR D V,VERMAAK H. An intelligent maintenance management system based on multi-agent systems and the Drools planner[C]. Wuhan:International Conference on Computational Intelligence & Industrial Application,2010.

      [17] 藍(lán)雯飛,邢志寶,強小利. 一種Drools規(guī)則引擎封裝模型及其實現(xiàn)[J]. 中南民族大學(xué)學(xué)報:自然科學(xué)版,2015,34(3):95-99.

      [18] 湯冬冬. 基于Drools的分布式業(yè)務(wù)規(guī)則引擎的設(shè)計與實現(xiàn)[D]. 大連:大連理工大學(xué),2016.

      [19] 劉金龍. drools規(guī)則引擎模式匹配效率優(yōu)化研究及實現(xiàn)[D]. 成都:西南交通大學(xué),2007.

      (責(zé)任編輯:黃 ?。?/p>

      猜你喜歡
      可視化
      無錫市“三項舉措”探索執(zhí)法可視化新路徑
      基于CiteSpace的足三里穴研究可視化分析
      自然資源可視化決策系統(tǒng)
      北京測繪(2022年6期)2022-08-01 09:19:06
      三維可視化信息管理系統(tǒng)在選煤生產(chǎn)中的應(yīng)用
      思維可視化
      師道·教研(2022年1期)2022-03-12 05:46:47
      基于Power BI的油田注水運行動態(tài)分析與可視化展示
      云南化工(2021年8期)2021-12-21 06:37:54
      自然資源可視化決策系統(tǒng)
      北京測繪(2021年7期)2021-07-28 07:01:18
      基于CGAL和OpenGL的海底地形三維可視化
      可視化閱讀:新媒體語境下信息可視化新趨勢
      “融評”:黨媒評論的可視化創(chuàng)新
      傳媒評論(2019年4期)2019-07-13 05:49:14
      鄂伦春自治旗| 宕昌县| 枣庄市| 保康县| 行唐县| 连南| 宕昌县| 盐池县| 三原县| 无锡市| 涞水县| 林芝县| 剑河县| 碌曲县| 昌邑市| 屯留县| 前郭尔| 惠东县| 曲松县| 西丰县| 图木舒克市| 盐城市| 夏邑县| 会宁县| 湘西| 太仆寺旗| 蓬安县| 陵川县| 社会| 保靖县| 泽普县| 丹东市| 沈丘县| 合水县| 静宁县| 舒兰市| 广德县| 鹤壁市| 巍山| 甘泉县| 苏尼特左旗|