使用规则引擎进行业务决策的方法、设备和存储介质技术

技术编号:20819451 阅读:25 留言:0更新日期:2019-04-10 05:49
本公开涉及使用规则引擎进行业务决策的方法、设备和存储介质。所述方法包括:响应于来自用户的决策请求而获取所述用户的业务数据;根据所述决策请求确定相应的规则引擎和评分模式;对所述规则引擎进行解析并针对所述业务数据执行解析出的规则,以得到相应的分数;以及根据所述相应的分数基于所述评分模式进行业务决策。通过本公开的各实施例,可以根据评分模式基于执行规则引擎所得到的分数来进行业务决策,使得能够灵活满足各种决策需求,使决策结果更精准,例如使得风险评估的决策结果更能满足网络安全的需要。

【技术实现步骤摘要】
使用规则引擎进行业务决策的方法、设备和存储介质
本专利技术涉及数据处理
,特别涉及一种使用规则引擎进行业务决策的方法、装置、计算设备和计算机可读存储介质。
技术介绍
规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。使用规则引擎可以通过降低实现复杂业务逻辑的组件的复杂性,降低应用程序的维护和可扩展性成本。大多数规则引擎都支持规则的次序和规则冲突检验,支持简单脚本语言的规则实现,支持通用开发语言的嵌入开发。目前业内有多个规则引擎可供使用,其中包括商业和开放源码选择。目前JAVA常用的规则引擎为Drools,其相对庞大复杂,执行效率不高,具有一定的入门门槛,且不太易于整合业务。另外,本申请的专利技术人意识到,存在对如何使用规则引擎进行业务决策的方法的需要。
技术实现思路
为解决以上问题中的一个或多个,本专利技术实施例提供了一种使用规则引擎进行业务决策的方法、装置、计算设备和计算机可读存储介质。根据本申请的第一方面,提供一种使用规则引擎进行业务决策的方法,其包括:响应于来自用户的决策请求而获取所述用户的业务数据;根据所述决策请求确定相应的规则引擎和评分模式;对所述规则引擎进行解析并针对所述业务数据执行解析出的规则,以得到相应的分数;以及根据所述相应的分数基于所述评分模式进行业务决策。根据一示例性实施例,根据所述相应的分数基于所述评分模式进行业务决策包括:根据所述评分模式对所述相应的分数进行运算以得到最终评分;以及根据最终评分确定决策结果。根据一示例性实施例,所述评分模式为权重评分模式,其中,所述根据所述评分模式对所述相应的分数进行运算以得到最终评分包括:将执行每个规则引擎所得到的分数乘以各自的预设权重并相加,得到的加权和作为最终评分。根据一示例性实施例,所述评分模式为最高分模式,其中,所述根据所述评分模式对所述相应的分数进行运算以得到最终评分包括:比较执行每个规则引擎所得到的分数的大小,以选择所述分数中最高的一个作为最终评分。根据一示例性实施例,所述对所述规则引擎进行解析并针对所述业务数据执行解析出的规则包括:将每个所述规则引擎解析成Java对象;使用从每个所述规则引擎解析出的Java对象处理所述业务数据,以得到所述相应的分数。根据一示例性实施例,所述Java对象包括一个或多个表达式和方法,其中,所述方法从所述业务数据中获取相应的值代入所述一个或多个表达式,判断所述一个或多个表达式是否成立,并根据判断结果给出所述相应的分数,所述一个或多个表达式中的每个表达式的形式为:左值的key-比较符-右值,所述一个或多个表达式之间为逻辑与和/或逻辑或的关系。根据一示例性实施例,使用由每个所述规则引擎解析成的Java对象处理所述业务数据包括:对于所述一个或多个表达式中的每个表达式:以该表达式中的左值的key为关键词在所述业务数据中进行检索;将检索到的字段所对应的值作为左值代入该表达式中的左值的key;判断所述一个或多个表达式是否成立;在判定为所述一个或多个表达式成立的情况下,将针对该规则引擎预设的命中分数作为执行该规则引擎得到的所述相应的分数。根据一示例性实施例,所述对所述规则引擎进行解析并针对所述业务数据执行解析出的规则包括:根据所述规则引擎的类型确定相应的规则引擎执行器;使用所述规则引擎执行器解析所述规则引擎并针对所述业务数据执行解析出的规则。根据本申请的第二方面,提供一种使用规则引擎进行业务决策的装置,其包括:获取模块,其被配置为:响应于来自用户的决策请求而获取所述用户的业务数据;确定模块,其被配置为:根据所述决策请求确定相应的规则引擎和评分模式;解析和执行模块,其被配置为:对所述规则引擎进行解析并针对所述业务数据执行解析出的规则,以得到相应的分数;以及决策模块,其被配置为:根据所述相应的分数基于所述评分模式进行业务决策。根据一示例性实施例,所述决策模块包括:最终评分计算单元,其被配置为:根据所述评分模式对所述相应的分数进行运算以得到最终评分;以及决策单元,其被配置为:根据最终评分确定决策结果。根据一示例性实施例,所述最终评分计算单元包括:权重评分子单元,其被配置为:在所述评分模式为权重评分模式的情况下,将执行每个规则引擎所得到的分数乘以各自的预设权重并相加,得到的加权和作为最终评分;最高分子单元,其被配置为:在所述评分模式为最高分模式的情况下,比较执行每个规则引擎所得到的分数的大小,以选择所述分数中最高的一个作为最终评分。根据一示例性实施例,所述解析和执行模块包括:解析单元,其被配置为:将每个所述规则引擎解析成Java对象;处理单元,其被配置为:使用从每个所述规则引擎解析出的Java对象处理所述业务数据,以得到所述相应的分数。根据一示例性实施例,所述Java对象包括一个或多个表达式和方法,其中,所述方法从所述业务数据中获取相应的值代入所述一个或多个表达式,判断所述一个或多个表达式是否成立,并根据判断结果给出所述相应的分数,所述一个或多个表达式中的每个表达式的形式为:左值的key-比较符-右值,所述一个或多个表达式之间为逻辑与和/或逻辑或的关系。根据一示例性实施例,所述处理单元包括:检索子单元,其被配置为:对于所述一个或多个表达式中的每个表达式:以该表达式中的左值的key为关键词在所述业务数据中进行检索;将检索到的字段所对应的值作为左值代入该表达式中的左值的key;判断子单元,其被配置为:判断所述一个或多个表达式是否成立;打分子单元,其被配置为:在判定为所述一个或多个表达式成立的情况下,将针对该规则引擎预设的命中分数作为执行该规则引擎得到的所述相应的分数。根据本申请的第三方面,提供一种计算设备,所述计算设备包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序在被所述处理器执行时,使得所述计算设备执行如上所述的方法实施例中的任一个。根据本申请的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被一个或多个处理器执行时实现如上所述的方法实施例中的任一个。本申请的实施例提供的技术方案可以包括以下有益效果:通过本申请如上所述以及如下所述的各实施例,可以提供使用规则引擎进行业务决策的方案,其中通过根据评分模式基于执行规则引擎所得到的分数来进行业务决策,使得能够灵活满足各种决策需求,使决策结果更精准。另外,在一些实施例中,通过将规则引擎解析为Java对象,可以通过Java对象对业务数据方便快捷地执行处理,以得到在该规则下的相应分数。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。附图说明图1是根据本申请一示例性实施例示出的使用规则引擎进行业务决策的方法的示意流程图。图2是图1所示的方法实施例中步骤S130的示例具体实现方式的示意流程图。图3是图2所示的方法实施例中步骤S220的示例具体实现方式的示意流程图。图4是图1所示的方法实施例中步骤S140的示例具体实现方式的示意流程图。图5是根据本申请一示例性实施例示出的使用规则引擎进行业务决策的装置的示意组成框图。图6是根据本申请一示例性实施例示出的计算设备的示意组成框图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白本文档来自技高网...

【技术保护点】
1.一种使用规则引擎进行业务决策的方法,其特征在于,包括:响应于来自用户的决策请求而获取所述用户的业务数据;根据所述决策请求确定相应的规则引擎和评分模式;对所述规则引擎进行解析并针对所述业务数据执行解析出的规则,以得到相应的分数;以及根据所述相应的分数基于所述评分模式进行业务决策。

【技术特征摘要】
1.一种使用规则引擎进行业务决策的方法,其特征在于,包括:响应于来自用户的决策请求而获取所述用户的业务数据;根据所述决策请求确定相应的规则引擎和评分模式;对所述规则引擎进行解析并针对所述业务数据执行解析出的规则,以得到相应的分数;以及根据所述相应的分数基于所述评分模式进行业务决策。2.如权利要求1所述的方法,其特征在于,根据所述相应的分数基于所述评分模式进行业务决策包括:根据所述评分模式对所述相应的分数进行运算以得到最终评分;以及根据最终评分确定决策结果。3.如权利要求2所述的方法,其特征在于,所述评分模式为权重评分模式,其中,所述根据所述评分模式对所述相应的分数进行运算以得到最终评分包括:将执行每个规则引擎所得到的分数乘以各自的预设权重并相加,得到的加权和作为最终评分。4.如权利要求2所述的方法,其特征在于,所述评分模式为最高分模式,其中,所述根据所述评分模式对所述相应的分数进行运算以得到最终评分包括:比较执行每个规则引擎所得到的分数的大小,以选择所述分数中最高的一个作为最终评分。5.如权利要求1所述的方法,其特征在于,所述对所述规则引擎进行解析并针对所述业务数据执行解析出的规则包括:将每个所述规则引擎解析成Java对象;使用从每个所述规则引擎解析出的Java对象处理所述业务数据,以得到所述相应的分数。6.如权利要求5所述的方法,其特征在于,所述Java对象包括一个或多个表达式和方法,其中,所述方法从所述业务数据中获取相应的值代入所述一个或多个表达式,判断...

【专利技术属性】
技术研发人员:罗厚付
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1