[发明专利]基于BDD的知识库规则产生式的检查方法在审
申请号: | 201410060723.0 | 申请日: | 2014-02-21 |
公开(公告)号: | CN103886377A | 公开(公告)日: | 2014-06-25 |
发明(设计)人: | 崔小磊;周启平;刘大鹏;任永青;陈星宇 | 申请(专利权)人: | 北京神舟航天软件技术有限公司 |
主分类号: | G06N5/04 | 分类号: | G06N5/04 |
代理公司: | 北京世誉鑫诚专利代理事务所(普通合伙) 11368 | 代理人: | 孙国栋 |
地址: | 100094*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 bdd 知识库 规则 产生 检查 方法 | ||
技术领域
本发明属于专家系统推理规则产生式合理性验证领域,具体地说,涉及一种基于BDD的知识库规则产生式的检查方法。
背景技术
专家系统规则库中的规则具有相同的结构,即“if…then…”结构。规则由左边(LHS,Left hand side)、右边(RHS,Right hand side)两部分组成,构成if(LHS)then(RHS)的结构。左边(LHS)由一个或多个正、负模式组成,右边的(RHS)由一个或多个结论组成。每一个模式,都需要相对应的事实去匹配,如果一条规则所包含的模式都得到满足,那么称这条规则被满足。
把每个模式用一个原子命题来表示,这样规则1的左边可以表示为一个命题逻辑表达式:
P=(template1arr1=5arr2=6arr3=‘X’)
Q=(template2arr1=6arr2=5arr3=‘X’)
R=(template3arr1=7arr2=1)
LHS=(P or Q)and R
由于推理规则由具有领域专业背景的人来编写,当规则变得复杂和冗长时,编写的规则不可避免的会存在错误。其中逻辑上的错误包括产生式的LHS会出现不可满足的情况,或者永远为真的情况。这里的“不可满足”是指,没有任何一个变量赋值组合能够使表达式值为真。“永远为真”是指,任何变量赋值组合都会使表达式值为真,即:该表达式是”永真式”。这两种逻辑上的错误会导致RETE网络的alpha节点存放多余的信息,浪费了系统资源,更严重的问题是:这样的逻辑错误会让推理机推导时进行大量无意义的模式匹配,降低了推理的效率。因此,专家系统知识库中规则的LHS不应该出现这2种情况。一个有实际意义的规则必须是可满足的,并且不是永远为真的。
目前,推理机的实现通常采用RETE算法,将所有知识库规则转化成模式网络(又叫alpha节点网络)。这样匹配模式网络设计是为专家系统推理时高效的将事实和规则进行动态匹配。但是,构建出的alpha模式网络,对节点进行了复用,不可进行单条规则的逻辑上的验证。
综合了之前对规则产生式逻辑性的考虑,对于知识库里庞大而且复杂的规则产生式,我们需要一种可自动化的方法来验证每条规则是否可满足和是否永远为真。一旦我们检查推理规则的时候发现不可满足或者永远为真的情况,则不把该条规则加入到alpha模式网络中。
发明内容
本发明要解决的技术问题是克服上述缺陷,提供一种基于BDD的知识库规则产生式的检查方法,在构建表示知识库的RETE网络时,将专家系统的规则产生式转化成二叉决策图(BDD),通过对这个BDD进行逻辑分析,可以检查出一些有逻辑错误的规则,从而达到对知识库的规则进行筛选的目的。
为解决上述问题,本发明所采用的技术方案是:
一种基于BDD的知识库规则产生式的检查方法,其特征在于:所述检查方法是在基于推理规则产生式来构建推理机RETE网络的alpha节点网络时,对每一条输入的规则执行如下步骤检查:
1)、将一条已有规则产生式Rp转换成相对应的BDD,通过遍历这个BDD检查Rp是否可满足;
2)、将一条已有规则产生式Rp转换成相对应的BDD,通过遍历这个BDD检查Rp是否永远为真。
作为一种改进的技术方案,在所述步骤1)中,将推理规则产生式Rp转换成命题逻辑表达式P,再将P转换成对应的BDD形式。
作为一种改进的技术方案,所述遍历步骤2)中生成的这个BDD,如果能够从根节点出发找到值为1的终端节点,则表明表达式Rp是可满足的;否则,表明Rp是不可满足的;如果从根节点出发,遍历的所有的终端节点都是1,则表明Rp是重言式。
由于采用了上述技术方案,与现有技术相比,本发明中规则库由人来编写,因此当规则冗长或者复杂时,难免会存在逻辑错误。知识库中如果存在逻辑错误的规则,会降低推理机的执行效率。本发明在构建表示知识库的RETE网络时,将专家系统的规则产生式转化成二叉决策图,通过对这个BDD进行逻辑分析,可以检查出一些有逻辑错误的规则,从而达到对知识库的规则进行筛选的目的,实现了过滤知识库中存在逻辑错误的规则,用于对推理规则的可满足性和永远为真的情况进行可自动化的检查。
具体实施方式
实施例:
一种基于BDD的知识库规则产生式的检查方法的步骤如下:
步骤1:在基于推理规则产生式来构建推理机RETE网络的alpha节点网络时,对每一条输入的规则执行如下步骤检查;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神舟航天软件技术有限公司,未经北京神舟航天软件技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410060723.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种治疗肝郁血瘀证的中药组合物
- 下一篇:表情输入方法和装置