一种基于代表模型的命题逻辑修正方法

文档序号:6585049阅读:178来源:国知局
专利名称:一种基于代表模型的命题逻辑修正方法
技术领域
本发明涉及一种在人工智能命题逻辑系统中,根据事实集合Delta对原有命题逻 辑系统Gamma进行形式修正,使得修正后的系统Lambda能够与事实集合Delta相互协调。 该发明尤其涉及基于命题代表模型的修正演算的自动修正方法。

背景技术
随着信息科学和人工智能的发展,人们对于知识系统的自动维护需求日益提升, 如何使计算机系统自动地对系统知识库进行维护是需要解决的一个问题。人们对此提出逻 辑修正的问题——当新的观念或需求与原有信念系统放生冲突或矛盾时,如何能够修改或 删减原有信念系统,使得加入新观念后的系统保持一致。 为了实现命题逻辑系统的自动修正,需要从命题结构和语义的角度找出矛盾产生 的根本原因。到目前为止,分析逻辑命题句法结构的方法,形式推理R-演算的方法都具有 不错的效果。这些方法通过分析系统中命题的逻辑结构,通过逻辑结构转化或形式推导找 到命题系统的需要被删除的命题,进而获得与新集合相协调的极大縮减。但这些方法在系 统实现上都存在着一定程度上的效率问题。

发明内容
本发明要解决的技术问题克服现有技术的不足,提供一种基于代表模型的命题 逻辑修正演算方法,它根据每一个命题的代表模型,逐个进行针对的检查,以最少的模型验 证数量实现对所有模型的验证,从而找到导致不协调出现的命题,实现了命题逻辑集合的
自动修正功能。 本发明采用的技术方案一种基于代表模型的命题逻辑修正演算方法,其特征在 于步骤如下 (1)将结果集合Lambda初始化为空集,将接收集合Sigma初始为系统必须要接受 的事实集合Delta,将Gamma初始为所有等待验证命题所组成的集合,将新代表模型列表 NewModelList初始化为空集; (2)将代表模型列表ModelList初始化为Sigma的所有代表模型; (3)如果系统集合Gamma为空集,则转到步骤(8); (4)从Gamma中取出一个命题A,并将A从Gamma中删除; (5)利用A, Sigma和ModelList构造A的所有备选代表模型集合PropModel ; (6)将PropModel中的所有模型逐个对A进行验证按照逻辑连接词的运算规则
和原子命题在模型M下的真假赋值情况,计算A在备选代表模型M下的真假值,如果A在M
下的取值为真,则将M存入NewModelList ; (7)如果NewModelList不是空集,使ModelList等于NewModelList,并将 NewModelList重置成空集,将命题A分别存入到Lambda和Sigma中,转步骤(3);否则,直 接转步骤(3); (8)输出结果Lambda。
3
根据本发明的又一个方面,其中步骤(2)进一步包括步骤
(a)找出Sigma中的所有原子命题,记为{s", sn0}; (b)根据{Sl,, sn。}中nO个原子命题的赋值〈Vi(Sl),, Vi(sn。) > (i = 1,…,2,构造Sigma的备选代表模型Mi,如果任意一个原子命题s,如果s是{Sl,…,sj 中的一个,则s在Mi下取值为Vi (s),否则,s在Mi下取值为假,并将这2n°个备选代表模型 存入集合SigmaModel ; (c)用SigmaModel中的所有模型分别对Sigma进行验证如果某一个模型使得 Sigma可满足,将该模型存入ModelList ; 根据本发明的又一个方面,其中步骤(5)进一步包括 (a)计算Sigma中出现的所有原子命题,记其为{Sl,, sn}; (b)计算出所有在A中出现而不在Sigma中出现的的原子命题,记为{&,, }; (c)构造出这p个命题的所有赋值情况〈Vj(ai),, Vj(ap) > (j = 1,…,2"; (d)将(c)中的每一组赋值< Vj(a》,...,Vj(ap) >与ModelList中每一个代表模
型赋值〈Vi(s》,…,Vi(sn) > (i = 1,…,ModelListl)进行组合构造成一组包含更多
原子命题的赋值情况< Vi(Sl),…,Vi(Sn), Vj(ai),…,Vj(a。) > ,建立与之对应的模型,并
将所有这些模型存入PropModel ; 根据本发明的又一个方面,其中步骤(6)进一步包括 (a)从PropModel中取出一个模型M,并将M从PropModel中删除; (b)如果命题A在模型M下取值为真,则将M存入NewModelList中; (c)判断PropModel是否为空如果为空,结束步骤(6);否则转(a); 本发明与现有技术相比的优点在于本发明再根据事实集合对命题逻辑系统进行
正演算的过程中,能够针对每一个命题的情况,针对考虑与它的原子命题相关的代表模型,
有效的减少了模型验证的次数。实验表明,该方法能够快速、有效地获得命题逻辑修正演算
的结果。


图1为本发明的方法基本流程图; 图2为利用A, Sigma和ModelList构造A的备选代表模型的流程图;
具体实施例方式
首先对本发明的原理进行说明。 经典数理逻辑的理论表明集合的协调性与集合的可满足性是等价的。S卩,只要找 到一个模型使得给定集合可满足,那么该集合就是协调的。为此,可以通过模型验证的方法 来判定集合的协调性。但如果直接利用全体模型对命题集合进行验证,计算量较大。另一 方面,集合中的每一个命题都可以对若干类模型进行筛选,不能使该命题成立的模型也不 可能使包含该命题的集合可满足。因此,本发明利用命题在代表模型下的真假值取值情况 对模型进行等价划分,每一类中选择代表模型进行验证,达到减少模型验证的次数的效果, 从而提高了命题逻辑修正演算的效率。 下面参考附图,对本发明的实施例进行详细的说明。
具体而言,本发明所提出的改进方法基本流程如图1所示。 本发明主要包括的核心思想以事实集合Delta作为出发点,根据系统集合Gamma 中的每一个命题A,对使得接收集合Sigma成立的模型进行等价划分,再计算A在这些等价 类的代表模型下真假值,保留使得A取值为真的代表模型,以便后续的验证。
在描述方法前先定义如下变量及方法 1.设Delta必须要接受命题集合,被称为事实集合;设Gamma是需要被修整的原 有命题集合,被称为系统集合,我们需要从Gamma中找到一个与事实集合Delta相协调的极 大子集; 2.设Sigma是我们已经认定为真的命题集合; 3. ModelList存储着使得Sigma为真代表模型,NewModelList用于临时存储代表 模型的更新; 4. SigmaModel和PropModel用于存储初始或引入新命题后,对原有代表模型进行 等价划分后,所得到新的等价类的备选代表模型; 5. Vi代表对Sigma中原子命题{Sl,, sn}的一种赋值,Vj代表对在A中出现而 不在Sigma中出现原子命题的一种赋值{ai,…,aj ;
本发明的方法描述如下 1.在命题逻辑的修正系统中,系统集合Gamma、事实集合Delta被输入系统; 结果集合Lambda被初始化为空集,接收集合Sigma被初始为Delta,新代表模型列表 NewModelList初始化为空集; 2.计算Sigma的所有代表模型,并将其存入代表模型列表ModelList,其具体包括 以下操作步骤 a.对Sigma中的每一个命题,逐个查找其中的原子命题,并将全部原子命题的集 合记为(s", snCJ b.根据n0个原子命题A,…,Sn。的赋值情况〈Vi(s》,…,Vi(Sno) > (i = 1,,
2n°)构造Sigma的备选代表模型Mi,并将这2n°个备选代表模型存入集合SigmaModel ; c.依次取出SigmaModel中的所有模型,逐个对Sigma中命题进行验证如果某个
模型使得Sigma可满足,则将该模型存入ModelList ; 3.判断当前的Gamma是否为空集如果是空集,则转到步骤(8); 4.从Gamma中取出一个命题A,并将A从Gamma中删除; 5.利用A, Sigma和ModelList构造A的所有备选代表模型集合PropModel,其具 体操作步骤如下 a.计算Sigma中出现的所有原子命题,记这些命题的集合为{Sl,…,sn};
b.计算所有在A中出现而不在Sigma中出现的原子命题,记这些命题的集合为 c.构造出这命题a"…, 的所有2。种赋值情况< Vj(ai),, Vj(ap) > (j = 1, ".,2P); d.将(c)中的每一组赋值< Vj(a》,…,Vj(ap) >与ModelList中每一个代表模 型的赋值〈Vi(s》,…,Vi(Sn) > (i = 1,…,I ModelList I)进行组合,构造成一组包含更 多原子命题的赋值情况< Vi(Sl), , Vi(sn), Vj(ai),…,Vj(a。) >,并建立与之对应的模型;将所有这些模型存入PropModel ; 6.依次取出PropModel中的所有模型,逐个对A进行验证如果备选代表模型M使
得A为真,则将M存入NewModelList,其操作步骤如下 a.从PropModel中取出一个模型M,并将M从PropModel中删除; b.如果命题A在模型M下取值为真,则将M存入NewModelList中; c.判断PropModel是否为空如果为空,结束步骤(6);否则转(a); 7.如果NewModelList不为空集,用NewModelList赋值ModelList,并将
NewModelList重置成空集,将命题A分别存入到Lambda和Sigma中,转步骤(3);否则,直
接转步骤(3); 8.输出结果Lambda。 本发明的方法与原有方法最大的不同之处是利用本方法,修正系统并没有找出 系统集合Gamma的所有模型,直接进行验证;而是在处理到相应命题A时,针对A中心出现 的原子命题的情况,对那些使得接收集合Sigma成立的模型进行等价划分,通过选择代表 模型对命题A进行验证。如此一来,本发明就可以通过只考虑与当前相关的代表模型来检 查命题系统的协调性。实验证明,本方法与直接检查所有模型的修正方法相比,效率具有明 显的提高。 对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此,具有 更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实施例。因 此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况下, 可对其做出各种修改。
权利要求
一种基于代表模型的命题逻辑修正演算方法,其特征在于步骤如下(1)将结果集合Lambda初始化为空集,将接收集合Sigma初始为系统必须要接受的事实集合Delta,将Gamma初始为所有等待验证命题所组成的集合,将新代表模型列表NewModelList初始化为空集;(2)将代表模型列表ModelList初始化为Sigma的所有代表模型;(3)如果系统集合Gamma为空集,则转到步骤(8);(4)从Gamma中取出一个命题A,并将A从Gamma中删除;(5)利用A,Sigma和ModelList构造A的所有备选代表模型集合PropModel;(6)将PropModel中的所有模型逐个对A进行验证按照逻辑连接词的运算规则和原子命题在模型M下的真假赋值情况,计算A在备选代表模型M下的真假值,如果A在M下的取值为真,则将M存入NewModelList;(7)如果NewModelList不是空集,使ModelList等于NewModelList,并将NewModelList重置成空集,将命题A分别存入到Lambda和Sigma中,转步骤(3);否则,直接转步骤(3);(8)输出结果Lambda。
2. 根据权利要求1的基于代表模型的命题逻辑修正演算方法,其特征在于所述的步 骤(2)进一步包括(a)找出Sigma中的所有原子命题,记为{Sl,, sn。};(b) 根据^,…,sn。}中nO个原子命题的赋值〈Vi(s》, , Vi(sn。)>(i = 1,…,2, 构造Sigma的备选代表模型Mi,对于任意一个原子命题s,如果s是{Sl, ,sn。}中的一个, 则s在Mi下取值为、(s),否则,s在Mi下取值为假;构造Sigma的备选代表模型之后将这 2n°个备选代表模型存入集合SigmaModel ;(c) 用SigmaModel中的所有模型分别对Sigma进行验证如果某一个模型使得Sigma 可满足,将该模型存入ModelList。
3. 根据权利要求1的基于代表模型的命题逻辑修正演算方法,其特征在于所述的步 骤(5)进一步包括(a) 计算Sigma中出现的所有原子命题,记其为{Sl,,、};(b) 计算出所有在A中出现而不在Sigma中出现的的原子命题,记为{&1,, };(c) 构造出这P个命题的所有赋值情况〈Vj(a》, , Vj(an)>(j = 1,…,2P);(d) 将(c)中的每一组赋值〈Vj(a》,…,Vj(a。)〉与ModelList中每一个代表模型赋值 〈Vi(s》,…,Vi(Sn)〉(i = 1,…,I ModelList I)进行组合,构造成一组包含更多原子命题的 赋值情况〈Vi(s》, , Vi(sn), Vj(ai),…,Vj(ap)〉,建立与之对应的模型,并将所有这些模 型存入PropModel 。
4. 根据权利要求1的基于代表模型的命题逻辑修正演算方法,其特征在于所述的步 骤(6)进一步包括(a) 判断PropModel是否为空如果为空,结束步骤(6),否则转(a);(b) 从PropModel中取出一个模型M,并将M从PropModel中删除;(c) 按照逻辑连接词的运算规则和原子命题在模型M下的真假赋值情况,计算命题A在 模型M下的取值,如果该取值为真,则将M存入NewModelList中。
全文摘要
一种基于代表模型的命题逻辑修正演算方法(1)初始化结果集合Lambda,接受集合Sigma,系统集合Gamma和新代表模型列表NewModelList;(2)用Sigma的所有代表模型初始化代表模型列表ModelList;(3)如果系统集合Gamma为空集,则转到(8);(4)从Gamma中取出一个命题A,并将其从Gamma删除;(5)利用A,Sigma和ModelList构造A的备选代表模型集合PropModel;(6)将PropModel中所有备选代表模型逐个对A验证如果备选代表模型M使得A为真,则将M存入NewModelList;(7)如果NewModelList不是空集,用NewModelList赋值ModelList,并将NewModelList重置成空集,将A分别存入Lambda和Sigma,转(3);否则直接转(3);(8)输出结果Lambda。本发明根据系统集合中每个命题情况构造代表模型,以只验证相关模型的方法减少模型检查的次数,从而提高修正演算的效率。
文档编号G06N7/00GK101706884SQ20091024192
公开日2010年5月12日 申请日期2009年12月15日 优先权日2009年12月15日
发明者李未, 楼奕华, 蒋东辰, 金毅 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1