规则引擎系统优化方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:26032765 阅读:38 留言:0更新日期:2020-10-23 21:10
本发明专利技术提供了一种规则引擎系统优化方法、装置、计算机设备及存储介质,所述方法包括,对规则引擎的规则条件构建规则语法树;根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;规则引擎对规则库中的规则进行条件重排处理;在工作内存的事实对象添加过程中增加索引信息;在对工作内存的事实对象进行删除时,根据索引信息,对事实对象添加过程的逆向操作,实现事实对象删除。本发明专利技术的有益效果在于:通过对规则引擎的规则条件构建规则语法树,可以减少额外的拆分开销,降低了Rete网络的复杂度,在工作内存的事实对象添加过程中增加索引信息,可实现事实对象删除时,有效提高删除效率。

【技术实现步骤摘要】
规则引擎系统优化方法、装置、计算机设备及存储介质
本专利技术涉及一种系统优化方法、装置、计算机设备及存储介质,尤其是指一种规则引擎系统优化方法、装置、计算机设备及存储介质。
技术介绍
当前规则引擎在各行业中得到了广泛的应用,市场主要的规则引擎产品主要分为:商业产品(以IBMODM产品为代表)及开源规则引擎(drools为代表),但无论是商用产品还是开源产品都存在很多缺陷。商用产品表现为:1)购买企业无自主权,维保费用高,无法定制化开发;2)产品维护体验差,缺乏高效图形化规则执行跟踪日志,不利于规则调研分析、问题定位等。开源产品表现为:1)用户使用体验差,难以把规则配置真正为业务人员使用;2)在产品维护体验方面与商业产品一样,功能缺失。另外两者都有一个共通缺陷为过多关注规则执行机制本身,而忽略了企业管理制度与规则运用结合,不利于把企业管理理论融入规则应用。因此,需要对当前规则引擎系统进行优化,以提供一套能够根据应用情况而设计开发、改善前后端体验(易用易维护)及可开放产品主权的规则引擎系统。
技术实现思路
本专利技术所要解决的技术问题是:提供一种规则引擎系统优化方法、装置、计算机设备及存储介质,旨在提高规则引擎系统的性能。为了解决上述技术问题,本专利技术采用的技术方案为:一种规则引擎系统优化方法,包括以下步骤,S10、对规则引擎的规则条件构建规则语法树;S20、根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;S30、规则引擎对规则库中的规则进行条件重排处理;S40、在工作内存的事实对象添加过程中增加索引信息;S50、在对工作内存的事实对象进行删除时,根据索引信息,对事实对象添加过程的逆向操作,实现事实对象删除。进一步的,步骤S30具体包括,S31、扫描整个规则库,将规则库中规则的条件部分按照逻辑符进行分解;S32、在分解的过程中将不同的条件出现的数量统计出来从大到小排序;S33、进行二次扫描,将规则库中所有规则的条件部分按照出现次数降序排序。进一步的,步骤S40具体为,在工作内存的事实对象添加过程中,当生成新的Beta记录时,在与之关联的Alpha存储区中记录该Beta记录的信息,也即索引信息。进一步的,步骤S20中,Rete网络为带有跟节点的非循环有向图,在非循环有向图中,除了根节点外的其他节点都存储着中间的匹配结果,匹配Rete网络的不同部分对应有不同类型的共享。本专利技术还提供了一种规则引擎系统优化装置,包括,语法树构建模块,用于对规则引擎的规则条件构建规则语法树;Rete网络建立模块,用于根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;规则排列模块,用于规则引擎对规则库中的规则进行条件重排处理;索引信息添加模块,用于在工作内存的事实对象添加过程中增加索引信息;事实对象删除模块,用于在对工作内存的事实对象进行删除时,根据索引信息,对事实对象添加过程的逆向操作,实现事实对象删除。进一步的,所述规则排列模块包括,第一扫描单元,用于扫描整个规则库,将规则库中规则的条件部分按照逻辑符进行分解;排序单元,在分解的过程中将不同的条件出现的数量统计出来从大到小排序;第二扫描单元,用于进行二次扫描,将规则库中所有规则的条件部分按照出现次数降序排序。进一步的,所述索引信息添加模块具体用于,在工作内存的事实对象添加过程中,当生成新的Beta记录时,在与之关联的Alpha存储区中记录该Beta记录的信息,也即索引信息。进一步的,所述Rete网络建立模块中,Rete网络为带有跟节点的非循环有向图,在非循环有向图中,除了根节点外的其他节点都存储着中间的匹配结果,匹配Rete网络的不同部分对应有不同类型的共享。本专利技术还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的规则引擎系统优化方法。本专利技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如上所述的规则引擎系统优化方法。本专利技术的有益效果在于:通过对规则引擎的规则条件构建规则语法树,可以减少额外的拆分开销,降低了Rete网络的复杂度,对规则进行条件重排处理,能够避免在进行规则匹配时出现重复匹配,从而提高规则匹配效率;在工作内存的事实对象添加过程中增加索引信息,能够使得在对工作内存的事实对象进行删除时,根据索引信息,对事实对象添加过程的逆向操作,即可实现事实对象删除,有效提高删除效率。附图说明下面结合附图详述本专利技术的具体结构。图1为本专利技术实施例的规则引擎系统优化方法流程图;图2为本专利技术实施例的规则引擎系统优化装置框图;图3为本专利技术实施例的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。如图1所示,本专利技术第一实施例为:一种规则引擎系统优化方法,包括以下步骤,S10、对规则引擎的规则条件构建规则语法树;S20、根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;Rete网络为带有跟节点的非循环有向图,在非循环有向图中,除了根节点外的其他节点都存储着中间的匹配结果,匹配Rete网络的不同部分对应有不同类型的共享。本步骤中,首先在Rete网络的建立过程方面通过理论分析出规则条件次序对Rete网络中共享节点个数的影响,采用map映射排序对规则库中的规则条件次序进行预处理,使得Rete网络占用内存减少且匹配速度加快;其次在工作内存删除过程方面通过数学分析得到删除过程效率的两个影响因素,采用在工作内存添加过程中增加索引信息可以消除其中一个影响因素,从而提高了工作内存删除过程的效率。S30、规则引擎对规则库中的规则进行条件重排处理;步骤S30具体包括,S31本文档来自技高网...

【技术保护点】
1.一种规则引擎系统优化方法,其特征在于:包括以下步骤,/nS10、对规则引擎的规则条件构建规则语法树;/nS20、根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;/nS30、规则引擎对规则库中的规则进行条件重排处理;/nS40、在工作内存的事实对象添加过程中增加索引信息;/nS50、在对工作内存的事实对象进行删除时,根据索引信息,对事实对象添加过程的逆向操作,实现事实对象删除。/n

【技术特征摘要】
1.一种规则引擎系统优化方法,其特征在于:包括以下步骤,
S10、对规则引擎的规则条件构建规则语法树;
S20、根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;
S30、规则引擎对规则库中的规则进行条件重排处理;
S40、在工作内存的事实对象添加过程中增加索引信息;
S50、在对工作内存的事实对象进行删除时,根据索引信息,对事实对象添加过程的逆向操作,实现事实对象删除。


2.如权利要求1所述的规则引擎系统优化方法,其特征在于:步骤S30具体包括,
S31、扫描整个规则库,将规则库中规则的条件部分按照逻辑符进行分解;
S32、在分解的过程中将不同的条件出现的数量统计出来从大到小排序;
S33、进行二次扫描,将规则库中所有规则的条件部分按照出现次数降序排序。


3.如权利要求1所述的规则引擎系统优化方法,其特征在于:步骤S40具体为,
在工作内存的事实对象添加过程中,当生成新的Beta记录时,在与之关联的Alpha存储区中记录该Beta记录的信息,也即索引信息。


4.如权利要求1所述的规则引擎系统优化方法,其特征在于:步骤S20中,Rete网络为带有跟节点的非循环有向图,在非循环有向图中,除了根节点外的其他节点都存储着中间的匹配结果,匹配Rete网络的不同部分对应有不同类型的共享。


5.一种规则引擎系统优化装置,其特征在于:包括,
语法树构建模块,用于对规则引擎的规则条件构建规则语法树;
Rete网络建立模块,用于根据规则库中的规则,通过Rete算法在规则语法树的基础上建立Rete网络;
规则...

【专利技术属性】
技术研发人员:叶文斌
申请(专利权)人:深圳麦亚信科技股份有限公司
类型:发明
国别省市:广东;44

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

1