人工智能自动推理(第3部分 归结原理及其应用)剖析

合集下载

人工智能第三章谓词逻辑与归结原理

人工智能第三章谓词逻辑与归结原理
• 如P(x) ∨ Q(y)与~P(a) ∨ R(z)
• 所以要考虑置换与合一。即对变量 作适当的替换。
《人工智能》第三章 谓词逻辑与归结原理
置换
• 置换:可以简单的理解为是在一个谓词公式中用 置换项去置换变量。
• 定义: 置换是形如{t1/x1, t2/x2, …, tn/xn}的有限集合。其 中,x1, x2, …, xn是互不相同的变量,t1, t2, …, tn是 不同于xi的项(常量、变量、函数);ti/xi表示用ti 置换xi,并且要求ti与xi不能相同,而且xi不能循环 地出现在另一个ti中。
例如: {a/x,c/y,f(b)/z}是一个置换。 {g(y)/x,f(x)/y}不是一个置换。
《人工智能》第三章 谓词逻辑与归结原理
置换的合成
• 设={t1/x1, t2/x2, …, tn/xn}, ={u1/y1, u2/y2, …, un/yn},是两个置换。 则与的合成也是一个置换,记作·。它是从集合
• 最一般合一求取方法
– 令W={F1,F2} – 令k=0,W0=W, σ0=ε – 如果Wk已合一,停止, σk=mgu,否则找Dk – 若Dk中存在元素vk和tk,其中,vk不出现在tk中,转下一
步,否则,不可合一。 – 令σk+1= σk.{tk/vk},Wk+1=Wk{tk/vk}=W σk+1 – K=k+1转第3步。
《人工智能》第三章 谓词逻辑与归结原理
谓词归结子句形
• 子句与子句集
– 文字:不含任何连接词的谓词公式。 – 子句:一些文字的析取(谓词的和)。 – 空子句:不含任何文字的子句。记作NIL或
□ – 子句集:所有子句的集合。 – 对于任何一个谓词公式G,都可以通过

人工智能 第3章(确定性推理3-与或树搜索)

人工智能 第3章(确定性推理3-与或树搜索)
常用启发式函数
包括基于距离的启发式函数、基于成本的启发式函数、基于规则的启发式函数等。
节点排序和选择策略
节点排序的目的和意义
节点排序是为了在扩展节点时,按照一定的顺序选择下一个要扩展的节点,以优化搜索过程。
常用节点排序策略
包括最佳优先搜索、广度优先搜索、深度优先搜索等。最佳优先搜索根据启发式函数的值来选择最优节点; 广度优先搜索按照节点的层次顺序进行扩展;深度优先搜索则尽可能深地扩展节点。
盲目搜索方法比较与选择
• 宽度优先搜索、深度优先搜索和迭代加深搜索都是盲目搜索方法,它们在不同的场景下有不同的应用。 • 宽度优先搜索适用于问题空间较大、解存在于较浅层次的情况,因为它可以逐层遍历整个问题空间,找到最短
路径。 • 深度优先搜索适用于问题空间较小、解存在于较深层次的情况,因为它可以尽可能深地搜索树的分支,找到更
启发式信息获取途径
01
02
03
问题自身的特性
通过分析问题的性质、结 构、约束条件等,提取出 对搜索过程有指导意义的 启发式信息。
领域知识
利用领域内的经验、规则、 常识等,为搜索过程提供 有价值的启发式信息。
搜索过程中的信息
在搜索过程中,通过评估 当前状态、已搜索路径、 未搜索路径等,动态地获 取启发式信息。
04 与或树搜索优化技术
剪枝策略
01
剪枝的定义和目的
剪枝是在搜索过程中,通过某些评估标准,提前终止对某些无意义或低
效的节点的扩展,以减少搜索空间,提高搜索效率。
02 03
常用剪枝策略
包括限界剪枝、启发式剪枝、概率剪枝等。限界剪枝通过设置上下界来 限制搜索范围;启发式剪枝利用启发式函数来评估节点的重要性;概率 剪枝则根据节点的概率分布来进行剪枝。

《人工智能》-第三章__确定性推理

《人工智能》-第三章__确定性推理

感”。
15
3.1 推理的基本概念
3.1.1 推理的定义 3.1.2 推理方式及其分类 3.1.3 推理的方向 3.1.4 冲突消解策略
16
3.1.3 推理的方向
正向推理
逆向推理

(反 向 推 理 )



混合推理
双向推理
数据库 知识库
专家
推理机
用户
17
3.1.3 推理的方向
1. 正向推理
正向推理(事实驱动推理): 已知事实 → 结论
Powerpoint
人工智能
教材: 蔡自兴等《人工智能及其应用》(第4版) 清华大学出版社,2010. 5
第 3 章 确定性推理方法
❖ 3.1 推理的基本概念 ❖ 3.2 自然演绎推理 ❖ 3.3 谓词公式化为子句集的方法 ❖ 3.4 鲁宾逊归结原理 ❖ 3.5 归结反演 ❖ 3.6 应用归结反演求解问题 ❖ 3.7 盲目搜索 ❖ 3.8 产生式系统 ❖ 3.9 启发式搜索 ❖ 3.10 非单调推理 ❖ 3.11 消解原理
利用逆向推理中得到的信息进行正向推理,以推出更多的结论。
24
25
26
3.1.3 推理的方向
4. 双向推理
双向推理:正向推理与逆向推理同时进行,且在推理过 程中的某一步骤上“碰头”的一种推理。
中间结论
已知事实 正向推理 证
反向推理 假设目标 据
27
3.1 推理的基本概念
3.1.1 推理的定义 3.1.2 推理方式及其分类 3.1.3 推理的方向 3.1.4 冲突消解策略
P(x) Q(x), P(x, f (x)) Q(x, g(x))
❖ 空子句(NIL):不包含任何文字的子句。

人工智能演绎推理

人工智能演绎推理

第三章演绎推理自动定理证明是人工智能一个重要的研究领域,是早期取得较大成果的研究课题之一,在发展人工智能方法上起过重大作用。

1956,美国,Newell, Simon, Shaw编制逻辑理论机:The Logic Theory Machine 简称LT. 证明了《数学原理》(罗素)第二章中38个定理, 改进后证明了全部52个定理。

是对人的思维活动进行研究的重大成果,是人工智能研究的真正开端。

在此之后,发展了一些机械化推理算法,很成功地用到人工智能系统中。

第一节鲁滨逊归结原理一、命题逻辑中归结推理1.归结:消去子句中互补对的过程:子句:任何文字的析取式C称为子句,C=P∨Q∨7R={P,Q,7R}如:C1=LVC1`={L,C1`}C2=7LVC2`={7L,C2`}可以证明C12=C1`VC2`={C1`,C2`}是C1,C2的逻辑结论:即:C1∧C2⇒C12证明:C1=LVC1`=77C1`VL=7C1`→LC2=7LVC2`=L→C2`所以7C1`→C2`=77C1`VC2`=C1`VC2`实际上是P→Q, Q →R⇒P→R的应用即前提成立⇒结论成立,也即结论不成立⇒前提不成立S子句集:其中有C1,C2归结式S`子句集:C12代替C1,C2则:S`不可满足⇒S不可满足2.归结推理步骤要证A⇒B成立(或证A→B重言、永真),只要证A∧7B不可满足(永假)①化A∧7B为合取范式C1∧C2∧……∧Cm②子句集S={C1,C2,…, Cm}③归结规则用于S,归结式入S中.④重复③,直到S中出现空子句。

证明:SVR是P∨Q , P→R,Q→S的逻辑结论。

(P∨Q) ∧(P →R) ∧(Q→S) ∧7(S∨R)=(P∨Q)∧(7P∨R) ∧(7Q∨S) ∧7S∧7R所以S={P∨Q,7P∨R,7Q∨S,7S,7R}(1)P∨Q(2)7P∨R(3)7Q∨S(4)7S(5)7R(6)Q∨R (1)(2) 归结(7)7Q (3)(4) 归结(8)Q (5)(6) 归结(9)F (7)(8) 归结命题逻辑中不可满足的子句集S,使用归结原理,总能在有限步内得到一个空子句⇒归结原理是完备的。

人工智能第三章归结推理方法

人工智能第三章归结推理方法

Y
失败退出
成功退出
逆向推理的流程图
22
逆向推理




对上例,采用逆向推理,其推理过程如下: 推理开始前,综合数据库和假设集均为空。 推理开始后,先将初始证据A和目标C分别 放入综合数据库和假设集,然后从假设集中取 出一个假设C,查找C是否为综合数据库中的 已知事实,回答为“N”。 再检查C是否能被知识库中的知识所导出, 发现C可由r1 导出,于是r1 被放入可用知识集。 由于知识库中只有r1可用,故可用知识集中仅 含r1。
13
正向推理


正向推理是从已知事实出发、正向使用推理规 则,亦称为数据驱动推理或前向链推理。 算法描述 (1) 把用户提供的初始证据放入综合数据库; (2) 检查综合数据库中是否包含了问题的解, 若已包含,则求解结束,并成功推出;否则执 行下一步; (3) 检查知识库中是否有可用知识,若有,形 成当前可用知识集,执行下一步;否则转(5)。
11
推理的控制策略

推理过程不仅依赖于所用的推方法,同时也依 赖于推理的控制策略。 推理的控制策略是指如何使用领域知识使推理 过程尽快达到目标的策略。


控制策略的分类:由于智能系统的推理过程一 般表现为一种搜索过程,因此,推理的控制策 略可分为推理策略和搜索策略。
推理策略:主要解决推理方向、冲突消解等问 题,如推理方向控制策略、求解策略、限制策 略、冲突消解策略等
18
正向推理

正向推理的主要优点
比较直观,允许用户主动提供有用的事实信息, 适合于诊断、设计、预测、监控等领域的问题求 解。 正向推理的主要缺点

推理无明确目标,求解问题是可能会执行许多 与解无关的操作,导致推理效率较低。

人工智能第3章参考答案

人工智能第3章参考答案

第3章确定性推理部分参考答案判断下列公式是否为可合一,若可合一,则求出其最一般合一。

(1) P(a, b), P(x, y)(2) P(f(x), b), P(y, z)(3) P(f(x), y), P(y, f(b))(4) P(f(y), y, x), P(x, f(a), f(b))(5) P(x, y), P(y, x)解:(1) 可合一,其最一般和一为:σ={a/x, b/y}。

(2) 可合一,其最一般和一为:σ={y/f(x), b/z}。

(3) 可合一,其最一般和一为:σ={ f(b)/y, b/x}。

(4) 不可合一。

(5) 可合一,其最一般和一为:σ={ y/x}。

把下列谓词公式化成子句集:(1)(∀x)(∀y)(P(x, y)∧Q(x, y))(2)(∀x)(∀y)(P(x, y)→Q(x, y))(3)(∀x)(∃y)(P(x, y)∨(Q(x, y)→R(x, y)))(4)(∀x) (∀y) (∃z)(P(x, y)→Q(x, y)∨R(x, z))解:(1) 由于(∀x)(∀y)(P(x, y)∧Q(x, y))已经是Skolem标准型,且P(x, y)∧Q(x, y)已经是合取范式,所以可直接消去全称量词、合取词,得{ P(x, y), Q(x, y)}再进行变元换名得子句集:S={ P(x, y), Q(u, v)}(2) 对谓词公式(∀x)(∀y)(P(x, y)→Q(x, y)),先消去连接词“→”得:(∀x)(∀y)(¬P(x, y)∨Q(x, y))此公式已为Skolem标准型。

再消去全称量词得子句集:S={¬P(x, y)∨Q(x, y)}(3) 对谓词公式(∀x)(∃y)(P(x, y)∨(Q(x, y)→R(x, y))),先消去连接词“→”得:(∀x)(∃y)(P(x, y)∨(¬Q(x, y)∨R(x, y)))此公式已为前束范式。

人工智能原理及应用第3章 确定性推理方法

人工智能原理及应用第3章 确定性推理方法

3.1 推理概述
3.1.2 推理的方法
1.演绎推理: 例:有如下三个判断: ①计算机系的学生都会编程序;(一般性知识) ②程强是计算机系的一位学生;(具体情况) ③因此程强会编程序。(结论)
这是一个三段论推理。其中:“①计算机系的学生都会编程序” 是大前提,“②程强是计算机系的一位学生”是小前提,那么“③ 程强会编程序”是经演绎推出来的结论。其结论蕴含在大前提中, 这就是典型的演绎推理三段论。
N
Y Y
以正向推理结果为假设
输入进行反向推理
N
输出结果
Y
成功退出
需要进行正向推理吗?
3.1 推理概述
3.1.4 推理中的冲突
在推理过程中,系统要不断地用数据库中的事实与知识库中的 规则进行匹配,当有一个以上规则的条件部分和当前数据库相匹配 时,就需要有一种策略来决定首先使用哪一条规则,这就是冲突解 决策略。冲突解决策略实际上就是确定规则的启用顺序。
33演绎推理方法332演绎推理的特点正向演绎推理逆向演绎推理问题求解的描述事实文字与或形事实文字合取式规则lw规则wl目标文字析取形目标文字与或形初始与或图相应于事实表达式事实表达式的与或树相应于目标公式事实表达式的与或树演绎推理f规则事实目标b规则目标事实结束条件包含所有目标节点的一致解图以事实节点作为所有终节点的一致解图34归结推理方法341子句集及其化简342herbrand海伯伦定理343robinson鲁宾逊归结原理344利用归结推理进行定理证明345应用归结原理进行问题求解在谓词演算中利用前面列出的等价式和永真蕴含式可以从已知的一些公式推导出新的公式这个导出的公式叫做定理在推导过程中使用的推理规则序列就成了该定理的一个证明而这种推导就是归结推理方法
形成可用知识集

人工智能自动推理(第3部分 归结原理及其应用)

人工智能自动推理(第3部分 归结原理及其应用)
应的所有变量,并且去掉第一个存在量词而得出 的公式,(k=1,…,m),显然 S Gm。与上面的证明相似, 可以证明 Gk1 是不可满足的,当且仅当 Gk 是不可 满足的(k=1,…,m)。所以可以断定, G 是不可满 足的,当且仅当S 是不可满足的。
例3.6 G (x)P(x)的SKOLEM标准形与 G并不是等值 的。
(1)C1: P R,C2 :~ P Q
子句C1中的文字P和子句 C2中~ P 的文字是互补的。 由 C1和 C2 中分别删除 P和~ P,并且构造两个子句 的 其 余 部 分R 和 Q的 析 取 式 , 得 出 归 结 式 为 RQ 。
这两个被归结的子句可以写成:~ R P, P Q,根据 假言三段论,可以推出~ R Q,它等价于 R Q 。 因此可以知道假言三段论是归结的一个特例。
真,只要在论域D中能找到一个个体x 0使 P( x0)为真。而
G1 =P(a) 是 从 论 域 中 选 定 一 个 个 体 a , 这 样 不 能 保 证 P(a)为真。
例3.7 G (x)(y)P(x, y)
G1 (x)P(x, f (x))
考虑G 与G1 的逻辑关系。 仍在论域D={1,2}上讨论。便有
子句型
Clause form
归结证明过程是一种反驳程序,即:不是证明一 个公式是有效的(valid),而是证明公式之非是不 可 满 足 的 (unsatisfiable)。 这 完 全 是 为 了 方 便 , 并且不失一般性。我们知道,归结推理规则所应 用的对象是命题或谓词合式公式的一种特殊的形 式,称为子句。因此在进行归结之前需要把合式 公式化为子句式。
很F推1∧理显F方然2∧法F…1就∧∧F是F2∧从n∧…F~1∧∧BFF是n2∧矛…盾G 是∧(永F重n∧假言~)式式B等出。价归发
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

子句与子句集
Clause and clause set


为 使 用 归 结 方 法 , 首 先 要 把 F1∧F2∧…∧Fn∧~ G 化成一种称作子句形的 标准形式。一般地,归结推理规则所应用的对 象是命题或谓词公式的一种特殊的形式,称为 子句(Clause) 一个子句就是一组文字的析取,一个文字或是 一个原子 ( 这时也称为正文字 ) ,或者是一个原 Q、 ~ R 都是 子的否定(这时也称为负文字),如 P、 文字, P Q ~ R 是子句。

(2) C1 :~ P Q, C 2 : P C1 和 C2的归结式为 Q 。因为 C1 可以写作 P Q, 所以可以知道假言推理也是归结的一个特例。 (3) C1 :~ P Q R, C 2 :~ Q ~ R C1 和 C2 存在两个归结式,一个是 ~ P R ~ R 另一个是:~ P Q ~ Q 。 在这个例子中,只能是在 Q 上或 R 上进行归 结,不能两者同时进行归结,也就是说 ~ P 不 是归结式。
3.8.1 命题逻辑中的归结法 Resolution method in propositional logic


设有命题逻辑描述的命题F1,F2 ,…,Fn和G,要 求来证明在 F1∧F2∧…∧Fn 成立的条件下有 G 成立,或说F1∧F2∧…∧Fn G是定理(重言式), 这就是我们的问题。如何建立推理规则,来 证明这个定理便是我们的任务。 很 显 然 F1∧F2∧…∧Fn G 是 重 言 式 等 价 于 F1∧F2∧…∧Fn∧~ B 是矛盾 ( 永假 ) 式。归结 推理方法就是从 F1∧F2∧…∧Fn∧~ B 出发, 使用归结推理规则来寻找矛盾,最后证明定 理 F1∧F2∧…∧FnG 的成立。这种方法可称作反演推理方法。
归结推理过程
Resolution reasoning proced Nhomakorabeare

从子句集 S 出发,仅只对 S 的子句间使用归结 推理规则,并将所得归结式仍放入 S 中,进而 再对新子句集使用归结推理规则,重复这些步 骤直到得到空子句□,便说明S是不可满足的, 从而与S对应的定理F1∧F2∧…∧Fn G是成 立的。 因为归结推理规则是正确的推理规则,归结式 是原两子句的逻辑推论,于是归结过程出现空 子句□,说明S中必有矛盾。
( P ~ R) (~ Q ~ R P)
一个子句的合取范式(CNF形式)常常表示为一个子
句的集合,即:
S {P ~ R, ~ Q ~ R P}
称为对应公式的子句集,其中每个元素都是一个子 句。把公式表示为子句集只是为了说明上的方便。
归结式 Resolvent


命题逻辑的归结规则可以陈述如下。 ' ' C2 C 1 P C 1 , C 2 ~ P C 2 设有两个子句: (其中 C1 、 是子句, P 是文字),从中消去互补对(即 P 和 ~ P ), ' ' C2 R ( C 1 , C 2 ) C 1 C 2,便称作子句 C1, 所得的新子句: 的归结式,原子P 称为被归结的原子。这个过 程称为归结。没有互补对的两个子句没有归结 式。 因此归结推理规则指的是对两个子句做归结, 即求归结式。上述归结规则是一种合理的推理 规则,这可从下述定理中看出。

(4)C1 :~ P Q, C 2 :~ P R C1中的任何文字都不能与 C2 中的文字构成互补 对,所以C1 和 C2 不存在归结式。 (5) C1 : Q, C 2 :~ Q Q 和~ Q是互补的,将它们分别由 C 和 C 中删除, 2 1 再构造 C1 和 C2其余部分的析取式,得出的归结 式是空子句 (Null clause) ,用□表示。这说明 由于 Q 和 ~ Q的互补性,它们不能同时成立。所 以空子句的出现代表出现了矛盾。
例3.4 证明 (P Q) ~ Q ~ P 先将 ( P Q) ~ Q ~ (~ P) 化成合取范式,得 (~ P Q) ~ Q P S {~ P Q, ~ Q, P} 建立子句集 对S做归结 (1) ~ P Q (2) ~ Q (3) P (4) ~ P (1)(2)归结 (5) □ (3)(4)归结 证毕。
定理3.2 子句 C1 和 C2 的归结式是 C1和C2 的逻辑推论。 证明:设
C1 P C1' , C 2 ~ P C 2'

R(C1, C 2) C1' C 2'
' C 1 其中 和 C 2 '都是文字的析取式。
Proof:
假定 C1 和 C2根据某种解释 I 为真。若 P 按 解释 I 为假,则 C1必不是单元子句(即单个文字), I C1 否则C1按I 解释为假。因此,按 ' ' R ( C 1 , C 2 ) C 1 C 2 必为真,即归结式 按 I 为真。 若P按I解释为真,则 ~ P按I为假,此时 C2 必不是单元子句,并且 C 2 '必按 I 为真,所以 R(C1, C 2) C1' C 2' 按I为真。由此得出,R(C1, C 2)是 C1 和 C2 的逻辑推论。定理得证

我们知道:对任意公式,都有与之等值的合取 范式,即对任意公式G 都有形如 G1 ... Gn(n 1) 的 公式与之等价,其中每个 Gi 都是文字的析取式, 就是一个子句。可以使用各种等价式将任意一 个公式 G 转化为一个合取范式。例如,可以把 公式 ~ ( P Q) ( R P) 转换为如下的合取范式:

例3.3 计算下述子句的归结式: (1) C1 : P R, C 2 :~ P Q 子句C1中的文字P和子句 C2 中~ P 的文字是互补的。 由 C1 和 C2 中分别删除 P 和~ P ,并且构造两个子句 的 其 余 部 分R 和 Q 的 析 取 式 , 得 出 归 结 式 为 RQ 。 这两个被归结的子句可以写成: ~ R P, P Q,根据 假言三段论,可以推出~ R Q ,它等价于 R Q 。 因此可以知道假言三段论是归结的一个特例。
相关文档
最新文档