人工智能原理 练习题-2
从习题中选择自己感兴趣的题目进行思考和解答,任何尝试都是有益的。必要时,仔细阅读教科书当中的某些章节。对于加星号的习题,应该编写程序来完成。
第3章 逻辑与推理
1 对于下列每对原子语句,请给出最一般合一者,如果存在的话:
a. P(A,B,B),P(x,y,z) b. Q(y,G(A,B)),Q(G(x,y),y)
c. Older(Father(y),y),Older(Father(x),John) d. Knows(Father(y),y),Knows(x,x)
2 写出下列语句的逻辑表示,使得它们适合应用一般化分离规则:
a. 马、奶牛和猪都是哺乳动物。 b. 一匹马的后代是马。 c. Bluebeard是一匹马。
d. Bluebeard是Charlie的父亲。 e. 后代和双亲是逆关系。
f. 每个哺乳动物都有一个双亲。
3 请根据第二章列出的任务环境特征描述wumpus世界。
1,42,43,44,4AA = AgentB = BreezeG = Gllitter,Gold1,32,33,34,3OK = Safe square w!P = PitS = Stench2,2V = Visited1,23,24,2W= Wumpus SA OKOK1,12,1 V B3,14,1OKV P!OK图7.4(a) 智能体取得进展的两个后续函数。(a)第三步移动之后,感知为[Stench,None,None,None];
1
4 假定智能体已经前进到图7.4(a)(如上图)所示的位置,感知到的情况为:
[1,1]什么也没有,[2,1]有微风,[1,2]有臭气。它现在想知道[1,3]、[2,2]和[3,1]的情况。
这3个位置中的每一个都可能包含陷阱,而最多只有一个可能有wumpus。 按照图7.5的实例,构造出可能世界的集合。(你应该找到32个。)把KB为真以及下列每个语
句都为真的世界标出来: α2 = “[2,2]中没有陷阱。”
α3 = “[1,3]中有一只wumpus。” 据此证明KB |=α2 和 KB |=α3。
5 我们已经定义了4种不同的二元逻辑连接符。
a. 是否存在可能有用的其它连接符? b. 可能有多少种二元连接符? c. 为什么有的连接符不是很有用?
6 (改编自Barwise 和 Etchemendy(1993)。)已知如下,你能否证明麒麟是神话的?是否是有
魔法的?有角的?
如果麒麟是神话的,那么它是长生不老的,但如果它不是神话的,那么它是一种会死的
哺乳动物。如果麒麟既不是不会死的,也不是哺乳动物,那么它是有角的。如果麒麟有角,那么它是有魔法的。
7 扫雷游戏,著名的计算机游戏,和wumpus世界有着紧密的联系。扫雷世界是一个N个方格
的矩形网格,M个不可见的地雷散布其中。任何方格可以用智能体进行探寻;如果探寻到地雷则立刻死亡。扫雷游戏通过在每个已经探寻过的方格内显示直接以及对角相邻的地雷数量来指示地雷的存在。目标是探寻每个没有地雷的方格。 a. Xi,j 为真当且仅当方格 [i,j] 中包含一个地雷。写出[1,1]周围恰好存在两颗地雷的断言,
用一个包括Xi,j命题的一些逻辑组合的语句表示。
b. 解释如何构造一个CNF语句,并根据(a)把你的断言推广为:n个相邻方格中有k个方
格包含地雷。
c. 准确解释智能体如何用DPLL来证明给定方格的确(或没有)包含一个地雷,忽略实际
上总共有M个地雷的全局约束。
d. 假定全局约束是通过(b)中你的方法构造的。子句的数量如何依赖于M和N?提出一
种修改DPLL的方法,使得无需显式表示全局约束。
e. 考虑全局约束时,是否存在某个由(c)的方法得出的结论不合法?
f. 给出导致长距离依赖的探寻值得布局例子,以致给定的未被探寻方格的内容将提供关于
远距离方格的内容的信息。[提示:考虑一个N×1的棋盘。]
8 在逻辑知识库中使用没有显式结构的语句集来表示世界。另一方面,类推表示具有直接与被表
示的事物的结构相对应的物理结构。把你所在地区的道路图看作该地区事实的一种类推表示。地图的二维结构对应于该地区的二维地表。 a. 给出5个地图语言符号的例子。
b. 显式语句是指确实由表示的创造者所写的语句。隐含语句是由于类推表示的属性而从显
式语句产生出来的语句。用地图语言分别给出3个隐含语句和显式语句的例子。
c. 给出3个关于你所在国家的实际结构的事实的例子,这些例子不能用地图语言表示。
2
d. 给出两个事实的例子,它们用地图语言来表示比用一阶逻辑更容易。 e. 给出有用的类推表示的另外两个例子,并分别说出这些语言的优缺点。
9 写出一个逻辑语句,它为真的所有世界刚好只包括一个对象。
10 用一个没有矛盾的词汇表(需要你自己定义)在一阶逻辑中表示下列语句: a. 某些学生在2001年春季学期上法语课。 b. 上法语课的每个学生都通过了考试。
c. 只有一个学生在2001年春季学期上希腊语课。 d. 希腊语课的最好成绩总是比法语课的最好成绩高。 e. 每个买保险的人都是聪明的。 f. 没有人会买昂贵的保险。
g. 有一个代理,他只卖保险给那些没有投保的人。
h. 镇上有一个理发师,他给所有不自己刮胡子的人刮胡子。
i. 在英国出生的人,如果其双亲都是英国公民或永久居住者,那么此人生来就是一个英国
公民。
j. 在英国以外的地方出生的人,如果其双亲本来就是英国公民,那么此人血统上是一个英
国公民。
k. 政治家可以一直愚弄某些人,也可以在某个时候愚弄所有人,但是他们无法一直愚弄所
有人。
11写出描述谓词GrandChild(孙子女)、GreatGrandparent(曾祖父母)、Brother(兄弟)、Sister
(姐妹)、Daughter(女儿)、Son(儿子)、Aunt(姑/姨)、Uncle(叔/舅)、BrotherInLaw(姐夫/妹夫)、SisterInLaw(兄嫂/弟妹)和FirstCousin(第一代姑表亲)的公理。找出隔了n代的第m代姑表亲的合适定义,并用一阶逻辑写出该定义。
现在,写出图8.5中所示的家族树的基本事实。采用适当的逻辑推理系统,把你已写出的所有语句TELL系统,并ASK系统:谁是Elizabeth的孙子女,Diana的姐夫/妹夫和Zara的曾祖父母?
George & MumSpencer & KyddElizabeth & PhilipMargaretDiana & CharlesAnne & MarkAndrew & SarahEdwardWilliamHarryPeterZaraBeatriceEugenie图8.5 一棵典型家族树,符号“&”连接配偶,箭头指向孩子
3
12 解释下面给出的wumpus世界中相邻方格的定义存在什么问题: ?x,y Adjacent([x, y],[x+1, y]) ∧ Adjacent([x, y],[x, y+1])
13 用常量符号Wumpus和二元谓词In(Wumpus,Location)写出推理wumpus的位置所需的公
理。记住:只有一只wumpus。
14 根据基本原理证明全称实例化是可靠的,而存在的实例化产生一个推理等价的知识库。
15 根据Like(Jerry,IceCream),看来推导出?x Like(x, IceCream)是合理的。写出一个支持这
个推理的通用推理规则,即存在引入。仔细给出所涉及的变量和项需要满足的条件。
16 假定某个知识库只包含一条语句:?x AsHighAs(x, Everest)。下列哪个语句是应用存在实
例化以后的合法结果?
a. AsHighAs(Everest, Everest) b. AsHighAs(Kilimanjaro, Everest)
c. AsHighAs(Kilimanjaro, Everest)∧AsHighAs (BenNevis, Everest) (在两次应用之后)
17 本习题中,我们将采用你在习题2(书中习题9.9)中写出的语句,运用反向链接算法来回答
一个问题。
a. 画出由一个穷举反向链接算法为查询?h horse(h)生成的证明树,其中子句按照给定的顺
序进行分配。
a. 你对于本领域注意到了什么?
b. 实际上从你的语句中得到了多少个h的解?
c. 你是否可以想出一种找出所有解的方法?(提示:你可能会希望参考Smith等人(1986)
的文章)。
18 一个流行的儿童谜语是“我没有兄弟和姐妹,但是那个男人的父亲是我父亲的儿子。”采用家
族域的规则(第八章)证明那个男人是谁。你可以应用本章描述的任何推理方法。你为什么认为这个谜语很难?
19 如何用归结法证明一个语句是合法的?不可满足的?
20 根据“马是动物”,可以得到“一匹马的头是一只动物的头。”通过采用下列步骤,论证这一
推理是合法的:
a. 把前提和结论翻译为一阶逻辑语言。采用三个谓词:HeadOf(h,x)(表示“h是x的头”)、
Horse(x)和Animal(x)。
b. 对结论取非,把前提和否定结论转换成合取范式。 c. 用归纳法证明可以根据前提推导出结论。
21 以下是两条一阶逻辑语言表示的语句: (A): ?x?y x?y (B): ?y?x x?y
4