哈工大人工智能幻灯片chpt4

上传人:F****n 文档编号:88147109 上传时间:2019-04-20 格式:PPT 页数:90 大小:1.33MB
返回 下载 相关 举报
哈工大人工智能幻灯片chpt4_第1页
第1页 / 共90页
哈工大人工智能幻灯片chpt4_第2页
第2页 / 共90页
哈工大人工智能幻灯片chpt4_第3页
第3页 / 共90页
哈工大人工智能幻灯片chpt4_第4页
第4页 / 共90页
哈工大人工智能幻灯片chpt4_第5页
第5页 / 共90页
点击查看更多>>
资源描述

《哈工大人工智能幻灯片chpt4》由会员分享,可在线阅读,更多相关《哈工大人工智能幻灯片chpt4(90页珍藏版)》请在金锄头文库上搜索。

1、人工智能原理 第4章 消解法,本章内容 4.1 消解法的基本思想 4.2 消解法 4.3 消解策略 4.4 Herbrand定理 参考书目,第4章 消解法,4.1 消解法的基本思想,第4章 消解法,4,消解法的基本思想,从第3章逻辑系统中可知,逻辑推理必须考虑其有效性(即|=A),即对论域中的任何赋值都能保证公式为真 从有效性和可满足性的关系可知,有效性等价于其否命题的不可满足性 证明一个逻辑公式的有效性就是证明其公式的非的不可满足性(恒为假) 这样就引出了消解法,其基本思想就是反证法,第4章 消解法,5,消解法基本思想:反证法,即:要证命题(理解为经典逻辑的公式)A恒为真,等价于证A恒为假

2、从语义上解释,恒为假就是不存在一个论域上的一个赋值(可称为解释),使A为真,即对所有的论域上的所有赋值,A均为假 但是,论域本身和解释有无穷多个,不可能一一验证,第4章 消解法,6,基本思想(1),Herbrand提出:从所有解释当中选出一种有代表性的解释,并严格证明一旦命题在代表性解释中为假,则在所有解释中为假 Herbrand定义了这样的论域和代表性解释,称为Herbrand论域(H论域)和Herbrand解释(H解释) 后面会看到:公式A(无前束范式)是不可满足的,当且仅当A(通过子句集)在所有Herbrand赋值下都取假值,第4章 消解法,7,基本思想(2),这样,在证假(不可满足)的

3、意义上使公式与子句集的语义解释等价、并与H解释等价,作为消解法的开端 引入语义树,让所有解释都展现在语义树上,以便找到H解释。 最后在改进寻找解释算法的复杂性中发现了消解式,从而构成了消解法的完整理论基础 消解也叫归结,本章混用这两个称呼,第4章 消解法,4.2 消解法 4.2.1 公式到子句集的转换 4.2.2 合一算法 4.2.3 消解式 4.2.4 消解法的实施,第4章 消解法,9,消解法的形式,消解法举例: 此时只要使用单文字删除规则就可以推出结论Q。但是如果子句中包含变量,则常常必须经过变量置换才能进行消解,第4章 消解法,10,归结规则,归结两个互补文字消去 单元归结规则一个子句和

4、一个文字进行互补文字消去 全归结规则两个子句中消去互补文字,第4章 消解法,11,公式与子句集的等价,有定理S:给定公式A及相应的子句集S,则A是不可满足的当且仅当S是不可满足的 实现消解法的基础是把参与推理的每个公式都转化为子句集 / 通过逐步对消子句集合中互补的文字(即L和L)而最终得到一个空子句,证明原来的公式是不可满足的,第4章 消解法,12,消解法证明的步骤,证明一个公式A在给定论域下恒为真,也就是要证明A恒为假 将A转化为一个子句集,集合中元素为原子公式或其析取 / 通过其中正负原子公式的合并(此时恒为真,对证假不起作用,因此消去) / 最后集合为空,说明是不可满足的,即恒为假 通

5、常形式:证明(AB)为假即AB为假,也即对应子句集归结为空子句,第4章 消解法,13,消解法证明的步骤,写出谓词关系公式 用反演法写出谓词表达式 SKOLEM标准型 子句集S 对S中可消解的字句进行消解(先进行合一置换) 消解式仍放入S中,反复消解过程 得到空字句 得证,14,4.2.1 公式到子句集的转换,首先复习几个定义: 文字(literal):正原子公式和负原子公式称为文字,同一原子公式的正和负称为互补的 子句(clause):文字的析取称为子句 合取范式:形如A1A2An的公式,其中A1An均为子句 前束范式:形如(Q1x1Qn xn)M(x1xn)的公式,M中不再含有量词,Q是量词

6、 Skolem标准形:在前束范式中消去存在量词后得到的公式,第4章 消解法,15,消去存在量词,消去存在量词的步骤: (1)若存在量词不在任何全称量词之后,则公式中被存在量词量化的变量以某个不同于公式中任何其他常量名字的常量c代替,并消去存在量词; (2)若存在量词在k个全称量词之后,则公式中被存在量词量化的变量用被前k个全称量词量化的变量x1xk的某个函数f(x1xk)的形式代替,f的名字不同于公式中任何其他函数的名字,但对函数形式没有要求;然后消去存在量词 / 函数f称为Skolem函数,第4章 消解法,16,公式转化为子句集的步骤(1),公式A化为子句集S,其实现步骤共9步,如下: (1

7、)消去等价和蕴含符号:蕴含转化为析取 (2)将否定符号转移到每个谓词之前:应用狄摩根定律 (3)变量标准化:约束变量各不相同 (4)公式化为前束型:全部存在量词和全称量词移到公式的最前面/得到的两部分称为前缀和母式,第4章 消解法,17,公式转化为子句集的步骤(2),(5)消去存在量词:存在量词不受全称量词约束,则变量用常量替换/如果存在量词受全称量词约束,则使用Skolem函数替换相应变量得到Skolem标准形 (6)母式化为合取范式:外层连接符全部是合取,里层连接符全部为析取 (7)去掉所有全称量词 (8)母式化为子句集:每个合取项间的合取符号()用逗号代替,即得子句集 (9)子句变量标准

8、化:每个子句中的变量各不相同,第4章 消解法,18,4.2.2 合一算法,定义置换(或代换):设x1xn是n个变量,且各不相同,t1tn是n个项(常量、变量、函数),tixi,则有限序列t1/x1, t2/x2 tn/xn称为一个置换 置换可以作用于谓词公式,也可以作用于项。置换=t1/x1, t2/x2 tn/xn作用于谓词公式E就是将E中变量xi均以ti代替,其结果用E表示 / 作用于项的含义相同,第4章 消解法,19,关于置换,例:=a/x, f(b)/y, u/z E=P(x, y, z) t=g(x, y) E=P(a, f(b), u) t=g(a, f(b) 定义置换乘积(合成)

9、:设和是2个置换,则先后作用于公式或项,称为置换乘积,用表示(E) 一般来说,置换乘积的结合律成立,即()=(),但交换律不成立,第4章 消解法,20,合一置换,定义合一置换:设有一组谓词公式E1Ek和置换,使E1=E2=Ek,则称为合一置换,E1Ek称为可合一的。合一置换也叫通代 定义最一般合一置换(最广通代):如果 和都是公式组E1Ek的合一置换,且有置换存在,使得=,则称为公式组E1Ek的最一般合一置换,记为mgu (most general unification),第4章 消解法,21,分歧集,在介绍mgu求解算法之前,首先说明什么是分歧集 / 合一的过程就是消除分歧 定义分歧集(不

10、一致集):设W是一个非空谓词集,从左至右逐个比较W中的符号,如果在第i(i1)个符号处W中各谓词第一次出现分歧(即至少存在Ej和Ek在第i个符号处不一样,而在i之前各谓词符号均一样),则全体谓词的第i个符号构成了W的分歧集D。 分歧集性质:分歧集的出现处一定是谓词或项的开始处 / 求最广合一置换只考察项的分歧,第4章 消解法,22,mgu求解算法,求mgu算法(合一算法) 设W是谓词组, 表示空置换(即置换序列为空),则算法如下: (1)k=0,W0=W,0=; (2)如果Wk中各谓词完全一样,则算法结束,k是W的mgu,否则求Wk的分歧集Dk; (3)若Dk含变量xk以及项tk的首符号且xk

11、在tk中不出现,则继续执行算法,否则W的mgu不存在,算法停止; (4)令k+1=kt k/x k,Wk+1= Wkt k/x k; (5)k=k+1,转(2),第6章 消解法,23,mgu存在条件,mgu存在的条件:如果有限谓词组W是可合一的,则上述算法一定成功结束并给出其存在 求mgu的预置条件:应把所有谓词中的变量换成不同名字的变量。(不过,这在将公式化为子句集时已经完成。),第4章 消解法,24,mgu求解例子(1),例1:求W=P(a, x, f(g(y), P(z, f(a), f(u)的mgu (1)0=,W0=W,D0=a, z (2)1=0a/z=a/z,W1= W01=P(

12、a, x, f(g(y), P(a, f(a), f(u),D1=x, f(a) (3)2=1f(a)/x=a/z, f(a)/x,W2= W12= P(a, f(a), f(g(y), P(a, f(a), f(u),D2=g(y), u (4)3=2g(y)/u=a/z, f(a)/x, g(y)/u,W3= W23= P(a, f(a), f(g(y), P(a, f(a), f(g(y), D3= 此时W已合一,mgu=3=a/z, f(a)/x, g(y)/u ,第4章 消解法,25,mgu求解例子(2),例2:求W=P(x, x), P(x, f(x)的mgu 首先换名:W=P(x

13、, x), P(y, f(y) (1)0=,W0=W,D0=x, y (2)1=x/y,W1=P(x, x), P(x, f(x),D1=x, f(x) (3)2不存在,因为f(x)中含有变量x。 故W的mgu不存在。,第4章 消解法,26,4.2.3 消解式,定义文字合并规则:若子句C含有n(n1)个相同的文字(也称为句节),则删去其中的n-1个,结果以C表示。 定义因子:若子句C中的多个文字具有mgu,则C称为C的一个因子。当C为单文字时称为C的单因子 通过取因子可以简化一个子句。这是因为取因子之后,子句C中可能出现相同的文字,而根据文字合并规则就可以删除重复部分,第4章 消解法,27,例

14、子: C=P(x, a)P(b, y)Q(x, y, c),=b/x, a/y 则C=P(b, a)P(b, a)Q(b, a, c)= P(b, a)Q(b, a, c),28,二元消解式,定义二元消解式:设C1、C2是无公共变量的子句,分别含文字L1、L2,而L1和L2有mgu ,则子句R(C1, C2)=(C1L1)(C2L2) 称为C1和C2的二元消解式,其中(C1L1)和 (C2L2)分别表示从C1、C2删去L1、L2所余部分。L1和 L2称为被消解的文字,C1、C2称为父子句,第4章 消解法,29,二元消解式例子,例子: 设C1=P(x)Q(x), C2=P(g(y)Q(b)R(x

15、),则C1和C2有2个二元消解式(一个消P,一个消Q) 如果取=g(y)/x,得R(C1, C2)=Q(g(y)Q(b)R(g(y) 如果取=b/x,得R(C1, C2)=P(b)P(g(y)R(b) 注意:求消解式不能同时消去2个互补对文字,如同时消去P和P、Q和Q,那样所得结果就不是C1, C2的逻辑结果了,第4章 消解法,30,子句的二元消解式,子句的二元消解式:以下4种二元消解式都是子句C1和C2的二元消解式: (1)C1和C2的二元消解式; (2)C1的一个因子(即经过取因子处理)和C2的二元消解式; (3)C1和C2的一个因子的二元消解式; (4)C1的一个因子和C2的一个因子的二元消解式,第4章 消解法,31,4.2.4 消解法的实施,消解法的实施:为证AB,则建立G=AB(AB),再求出G对应的子句集S,进而只需证明S是不可满足的 为证S的不可满足,只要对S中可以消解的子句求消解式,并将消解式(新子句)加入S中,反复进行这样的消解过程直到产生一个空子句,第4章 消解法,32,消解的注意事项,1. 谓词的一致性,P( )与Q( ),不可以 2. 常量的一致性,P(a,)与P(b,),不可以;但是 P(a,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号