[发明专利]一种基于约束频度的规则引擎优化方法有效
申请号: | 201710385813.0 | 申请日: | 2017-05-26 |
公开(公告)号: | CN107247588B | 公开(公告)日: | 2020-10-23 |
发明(设计)人: | 郝玉洁;杜亚伟;陈炳泉;刘铸;陈煜 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 成都金英专利代理事务所(普通合伙) 51218 | 代理人: | 袁英 |
地址: | 610041 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 约束 频度 规则 引擎 优化 方法 | ||
1.一种基于约束频度的规则引擎优化方法,其特征在于,它包括以下步骤:
S1:规则约束频度统计,通过规则列表获取模式列表、约束列表,通过遍历约束列表时修改约束频度统计映射数据中的约束频度值,获得规则模式约束频度统计临时映射数据;
S2:规则约束频度统计结果处理,将规则约束频度统计临时映射数据依据约束名合并,得到最终的规则约束频度统计最终映射数据;
S3:Alpha网络构建,通过规则约束重排序得到规则约束列表,根据规则约束列表构建Rete网络中的Alpha网络;
S4:Beta网络构建,根据Alpha网络构建出Rete网络中的Beta网络。
2.根据权利要求1所述的一种基于约束频度的规则引擎优化方法,其特征在于所述的规则约束频度统计包括以下子步骤:
S11:读取规则文件,生成规则列表;
S12:创建并初始化规则约束频度统计映射数据,将规则约束频度统计映射数据定义为MapClass factType,MapConstraint constraint,Integer constraintCountconstraintMap,其中factType表示约束的事实类型,constraintMap包含了该事实类型下的所有约束频度统计映射,Constraint是对一个规则模式约束的包装三元组,包括{constraintName,constraintOperator,constraintValue},分别表示约束名,约束操作符,约束值,constraintCount表示该规则约束出现的频度统计值;
S13:对规则列表中的每一条规则,获得对应的模式列表;
S14:检查模式列表约束的事实类型,对模式列表中的每一模式检查其约束的事实类型是否包含该事实对应的键,若包含事实对应的键则跳转至S16,若不包含事实对应的键则跳转至S15;
S15:规则约束频度统计映射数据中加入事实类型的键值,新建MapConstraintconstraint,Integer count类型的约束频度统计映射集合,并将集合初始化后做为输入值代入constraintStatistics;
S16:检查约束列表中的约束在constraintMap中是否包含对应的键,若包含则对应的键则跳转至S17,若不包含对应的键则跳转至S18;
S17:在constraintMap中将该约束对应的constraintCount值增加1并替换原有值;
S18:在constraintMap中以该约束为键,以1为constraintCount的值添加键值对。
3.根据权利要求1所述的一种基于约束频度的规则引擎优化方法,其特征在于所述的规则约束频度统计结果处理包括以下子步骤:
S21:创建MapClass factType,MapString constraintName,Integer nameCountconstraintNameCount类型的最终规则约束频度统计映射finalStatistics,其所有的事实键类型与临时规则约束频度统计映射constraintStatistics相同;
S22:生成约束名-约束频度的键值,对每个事实类型取出constraintStatistics中对应的规则约束频度统计值,将约束名相同的规则约束出现的频度统计值进行累加,并将生成的约束名-约束频度键值对保存于constraintNameCount中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710385813.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种网页模板生成方法及装置
- 下一篇:一种基于OTA的门锁固件升级方法