第二章 人工智能逻辑
2.1 逻辑 -----重要的形式工具
2.2 非单调逻辑
2.3 默认逻辑
2.4 限定逻辑
2.5 自认知逻辑
2.6 真值维护系统
2.7 情景演算的逻辑基础重要的形式工具 ──逻辑亚里斯多得从数学的研究中分离出逻辑学。
莱布尼茨把数学的方法引入逻辑领域,创立了数理逻辑。
在本世纪 30年代以后,数学方法广泛渗透与运用于数理逻辑,使得数理逻辑成为数学领域中与代数、几何等并列的学科之一。 现代数理逻辑可以分为逻辑运算、
证明论、公理集合论、递归论和模型论。
逻辑程序设计
PROLOG
B? A1,…,An
B?
A1,…,An
关于知识的表示与推理智能行为的基础是知识,尤其是所谓的常识性知识。
人类的智能行为对于知识的依赖主要表现在对于知识的利用,即利用已经具有的知识进行分析、猜测、判断、
预测等等。人类利用知识可以预测未来,由已知的情况推测未知的情况、由发生的事件预测还未发生的事件等等。但是,当人们希望计算机具有智能行为时,除了告诉计算机如何像人一样地利用知识以外(对于知识进行推理),一个更为基础和先行的工作是如何使计算机具有知识(对于知识进行表示),即在计算机上如 何表达人类的知识。
关于知识的表示与推理多数的基于逻辑的智能系统使用一阶逻辑或者它的一些扩张形式 。 一阶逻辑的优点是它具有相当强的表达能力 。 有的人工智能专家坚信所有的人工智能中的知识表示问题完全可以在一阶逻辑的框架中得以实现 。 一阶逻辑在表达不确定性知识时其表达能力也是很强的 。 例如,
x P(x)
表达在所考虑的论域中存在一个具有性质 P的对象,而具体的是哪一个对象具有此性质则是待确定的;再如,
P? Q
表示 P和 Q这两个性质之间有一个是成立的,至于到底是哪一个成立则是根据具体的情况而定的 。
关于知识的表示与推理有人坚信从本质上看,一阶逻辑对于知识表示 是足够的,
但从实际应用的角度看,为方便,清楚和简洁起见,知识表示不一定非得从一阶逻辑出发 。 事实上,人 们从实际应用出发已经发明和建立了许多适用于不同目的的逻辑系统 。
(1) 为了表示关于认知的有关概念,如相信,知道,愿望,意图,目标,承诺等等,人们引进了刻划各种认知概念的 模态逻辑 ;
(2) 为了刻划智能系统中的时间因素,人们在逻辑系统中引进时间的概念,提出了各种 时序逻辑 ;
关于知识的表示与推理
(3) 为了描述各种不确定的和不精确的概念,人们引进了所谓 模糊逻辑 ;模糊逻辑是直接建立在自然语言上的逻辑系统,
与其它逻辑系统相比较,它考虑了更多的自然语言的成分 。 按照其创始人 Zadeh的说法就是词语上的计算,表示为一个公式,即,
fuzzy logic= computing with words;
(4) 人类的知识与人类的活动是息息相关的,人类正是在各种活动和行为中获得知识的 。 因此,行为或者动作的概念在智能系统中是一个关键的概念 。 动作的概念与一般逻辑中的静态的概念很不相同,它是一个动态的概念,动作的发生影响着智能系统的性质 。 对于动作的考虑,给人工智能界带来了许多难题,如框架问题,量词问题等等 。 为了刻划动作的概念,人们引进了一些新的逻辑体系来刻划它 。
关于知识的表示与推理
(5) 计算机对于人类进行决策时进行若干方面的支持已经成为计算机应用的一个重要方面 。 人类在决策时,对于各种方案和目标有一定的偏好和选择 。 这时,偏爱,就成为了一个基本的概念 。 为了表述和模拟人类在决策时的选择的规律和行为,
对于,偏爱,这个词的研究就是不可避免的 。 于是,基于管理科学的所谓的偏爱逻辑被提出并加以研究 。
(6) 时间是智能系统中最重要的几个概念之一 。 人类使用各类副词来对时间概念加以描述 。 例如,,一会儿,,相当长,,断断续续地,,偶尔,等等,这一类词在我们的日常生活中比比皆是 。 含有这些词的句子显然是很难用经典的时序逻辑来刻划的,于是有人引进了一种逻辑系统专门刻划这类句子 。 其基本思想是利用数学中积分的思想,通过对时间的某种像积分那样的表示和运算来形式化这些句子 。
非单调逻辑推理系统的定理集合并不随推理过程的进行而单调地增大,新推出的定理很可能会否定、改变原来的一些定理,使得原来能够解释的某些 现象变得不能解释了。
非单调逻辑推理系统的定理集合并不随推理过程的进行而单调地增大,新推出的定理很可能会否定、改变原来的一些定理,使得原来能够解释的某些 现象变得不能解释了。
t1<t2 F(t1)?F(t2)
非单调逻辑鸟会飞鸵鸟是鸟所以,鸵鸟会飞非单调推理
1 John在时刻 t1是活着的
2 Dell在时刻 t2>t1把子弹装进枪膛
3 Dell在时刻 t3>t2举 枪对 John射击
4 问题,John在时刻 t4>t3还 是活着吗?
非单调逻辑设?表示推理规则集,则单调逻辑语言
Th(?)={A|A}
(1)Th(?)
(2) if?12,then Th(?1)? Th(?2)
(3) Th(Th(?)) = Th(?) (不动点 )
(4) ifP,then MP
其中 M模态词默认逻辑正常情况下 A成立典型情况下 A成立默认假定 A成立默认逻辑
1977年加拿大多伦多大学的 Reiter 研究不完全信息的推理形式,并于 1980年 正式提出了默认逻辑,
)(
)(,),(:)( 1
XW
XMXMX n
默认逻辑
)(
)(:)(
XW
XM flyXB ir d
封闭默认理论的扩展设封闭默认理论? = <D,W>,?为关于 D的一个算符,? 作用于任意的命题集合 S,其值为满足下列三个性质的最小命题集合?(S):
(1) W (S);
(2) Th(?(S)) =?(S); 这里,Th(? (S))为命题集 {A |?(S)
A};
(3)如果有默认规则
)(
)(,),(:)( 1
XW
XMXMX n
封闭默认理论的扩展命题集合 E称为关于 D的算符?的固定点,如果?(E) =E,
此时又称 E为? = <D,W>$ 的一个扩充 。
有了扩充的概念,便可定义非单调的,推出,概念 。
如果命题 A包含在默认理论? 的一个扩充中,那么称 A在?
中可推出,记为 | 。
扩充 E必须 ① 含有所有的已知事实 ;
② 在关系 |? 下是封闭的 ;
③ 其前提被 E满足,默认条件与 E相容的任意默认的结论必须也在 E中 。
)(
)(,),(:)( 1
XW
XMXMX n
封闭默认理论的扩展具有扩展的存在条件将显得十分重要 。 下面我们讨论三种情况 。
(1) 不含任何默认的理论 <{ },W>,这种理论退化到一阶逻辑理论,
在这里它虽有唯一的一个扩展 Th(W),但对默认推理毫无意义和作用 。
(2) 一个默认理论 <D,W>称为规范默认理论,如果 D中默认规则均有如下形式,
)(
)(:)(
XW
XMWX?
封闭默认理论的扩展如果一个理论中的所有默认都是规范的,则该理论称为规范理论 。 由于每个规范默认的结论与其合理条件相同,因而这种缺省不会导致不一致性,不会证伪其它已用过的默认的合理条件 。 因此我们说规范默认理论是行为良好
(well-behaved) 的理论,并且可以证明,任何规范默认理论必定至少有一个扩充 。
封闭默认理论的扩展
(3) 半规 范默 认 理论 (Seminormal Default
Theory),虽然规范默认理论至少有一个扩充,
从而保证了系统知识库 W的一致性 。 然而现实世界中许多事物,现象是无法用规范默认表示的,而用如下形式的默认则可有效地进行处理,
MMX?:)(
封闭默认理论的扩展为了保证半规范默认理论具有一个扩充,
必须对它的默认加以限制,Reiter给出了一个半规范默认理论至少具有一个扩充的充分条件,
这个条件要求封闭的半规范默认理论是有序的,。 有序性建立在一个偏序关系?上,这个偏序要求,如果在推导 β的过程中用到了 α,则 α?
β。 Etheringthon在这种基础上给出了求算偏序关系及其扩充的算法,并讨论了算法的收敛性问题 。
限定逻辑限定逻辑 CIRC是一种极小化逻辑。下面,从一个基于极小模型定义的命题限定出发,给出限定的基本定义,进而给出一阶限定的基本结果,并将它推广。
定义 2.1 设 L0是一个命题语言,p1,p2是在命题语言 L0 中的两个赋值。称 p1小于 p2,记为 p1? p2,当且仅当对任一命题变元 x,如果 p1(x) = l,则 p2(x) = l。
限定逻辑定义 2.2 设 A 是一个公式,称 A的一个赋值 p是极小的,当且仅当不存在 A的其它赋值 p'使得 p'? p。
显然,?是一个偏序关系。 p1? p2表示 p1包含的真命题比 p2 少。极小赋值包含的真命题极小。
定义 2.3 极小后承M。 设 A,B是两个公式,AM B
当且仅当 B在所有 A 的极小模型中都为真。
极小模型是非单调的,它以命题的极小化作为优先模型的准则。
限定逻辑定义 2.4 设 A是一个包含命题集 P = {p1,p2,...,
pn} 的公式,一个 A的赋值 p称为? Z-极小赋值,当且仅当不存在 A的其它赋值 p‘使得 p? p’,定义如下:设 p1,
p2 是两个赋值,p1? Z- p2 当且仅当对任一 z? Z,
若 p1 (Z) = l,则 p2 (Z)= l。
限定逻辑定义 2.5 命题限定P 或 CIRC(A,P)。设 A是一个包含命题集的公式,? 是一个公式,AP? 当且仅当? 在所有 A的? p- 极小赋值中都为真。
定理 2.1 Ap? 当且仅当 AP?
限定逻辑定义 2.6 令 L是一个一阶语言,T是一个 L的公式,它包含谓词元组集?。设 M[T]和 M*[T]是公式 T的两个模型。
定义 M*[T]优先于 M[T],记为 M*[T]? M[T],当且仅当
(1) M和 M*有相同的对象域,
(2) 除?外,公式 T中所有的其它关系和函数常数在 M和 M*都有相同的解释,
(3)?在 M*中的外延是?在 M中的子集。
限定逻辑一个理论 T的模型 M称为优先的,当且仅当不存在 T的其它模型 M'使得 M'M。
定义 2.7 Mm是?的最小模型,当且仅当
M Mm,M = Mm
限定逻辑例如 设论域 D={1,2}
T=?x?y(P(y)?Q(x,y))
=[(P(1)?Q(1,1)) (P(2)?Q(1,2))]?
[(P(1)?Q(2,1)) (P(2)?Q(2,2))]
M,P(1) P(2) Q(1,1)? Q(1,2) Q(2,1)? Q(2,2)
T T F T F T
M*,P(1) P(2) Q(1,1)? Q(1,2) Q(2,1)? Q(2,2)
F T F T F T
自认知逻辑
Moore 考虑自认知理论 T 对于一组初始前提 A 是可靠的,
当且仅当 T 中的每一个自认知解释器是一个 T 中的自认知模型,其中全部 A 的公式为真。一个理想的理性主体的信念必须满足下列条件:
(1) 设 P1,...,Pn? T,and P1,...,Pn Q,
则 Q? T。
(2) 设 P? T,则 BP? T。
(3) 设 P? T,则 ~BP? T。
自认知逻辑在这种情况下,主体不能再得到更进一步的结论,
因此,Moore称上述理论为稳定自认知理论。当然,下列条件也成立:
(4) 如果 BP? T,则 P? T。
(5) 如果 ~ BP? T,则 P?T。
真值维护系统在真值维护系统中,每一个命题或规则均称为结点,
它分为两类:
IN-结点 相信为真
OUT-结点 不相信为真,或无理由相信为真,
或当前没有任何有效的理由。
这样,任何命题 p就有四种知识状态,表示 p为 IN-结点或 OUT-结点,及表示 p为非 IN-结点和 OUT-结点。
真值维护系统每个结点附有理由表,表中每一项表示具体结点的有效性。在真值维护系统中有两类不同的理由表,一个称为支持表 SL(Support
list),另一个称为条件证明 CP(Conditional proof) 。前者是它所在结点的信念之原因,即该信念的存在依赖于该表中的理由 ;
而后者则是出现矛盾的原因,即一个矛盾结点的存在是该表中的理由所致。支持表 SL的形式,
(SL (<IN-结点表 >) (<OUT-结点表 >))
这里 IN-结点表中的 IN-结点表示知识库中的已知知识,而 OUT-结点表中的 OUT-结点则表示这些结点的否 定,不在知识库中,为默认知识。
真值维护系统
(1) 现在是夏天 (SL ( ) ( ))
(2) 天气很潮湿 (SL (1) (3))
(3) 天气很干燥若结点 (1) 是 IN,结点 (3)是 OUT,结点 (2)才为 IN。 这个证实表明:
如果现在是夏天,又没有天气很干燥的证据,那么天气很潮湿 。 如果将来某一时刻出现了天气很干燥的证据,即为结点 (3)提供了一个证据,则结点 (2)就变为 OUT,因为它不再有一个有效 的证实 。 像结点 (2)这样的结点称为假设,它与非空的 OUT结点表的 SL证实有关 。
这里 IN-结点表中的 IN-结点表示知识库中的已知知识,而 OUT-结点表中的 OUT-结点则表示这些结点的否 定,不在知识库中,为默认知识。
真值维护系统条件证明 CP的形式为,
(CP <结论 > <IN-假设 > <OUT-假设 >)
如果结论结点为 IN-结点,以及下列条件成立:
(1) IN-假设中的每个结点都是 IN-结点 ;
(2) OUT-假设中的每个结点都是 OUT-结点 。
那么条件证明 CP是有效的 。 一般说来,OUT-假设总是空集 。 真值维护系统要求假设集划分成两个不相交的子集,分别为不导致矛盾的假设和导致矛盾的假设 。
相关回溯
TMS 的相关回溯是在知识库中出现不一致性时,寻找并删除已做的一个不正确的默认假设,恢复一致性 。 它包括下列三个步骤:
(1) 从产生的矛盾结点开始
(2) 构造一个结点记录矛盾产生的原因 。
(3) 从 S中选取假设 Ai(即不合理假设 ),并证实列在其理由充足的支持条件中的一个 OUT-结点