跳到正文
HeZzz's Notes
返回

人智基础-2025sp-猫雷作业

在 Github 上编辑此页

这是猫雷作业题喵。

附加题不考喵。

欢迎来计算机速通之家 | QQ 群号:468081841一起速通喵。

第二、三章作业

1 将以下语句形式化表示为合适公式(谓词逻辑表示)

(1)有的人既喜欢梅花又喜欢菊花。
(2)所有人都有饭吃。
(3)兰州市的夏天既干燥又炎热。 (4)他每天下午都去玩足球。
(5)凡是喜欢编程序的人都喜欢计算机。
(6)新型计算机速度又快,存储容量又大。

A1

(1)有的人既喜欢梅花又喜欢菊花。

解:

定义谓词如下:

(2)所有人都有饭吃。

解:

定义谓词如下:

(3)兰州市的夏天既干燥又炎热。

解:

定义谓词如下:

(4)他每天下午都去玩足球。

解:

定义谓词如下:

(5)凡是喜欢编程序的人都喜欢计算机。

解:

定义谓词如下:

(6)新型计算机速度又快,存储容量又大。

解:

定义谓词如下:

(x)[NewComputer(x)Fast(x)LargeMemory(x)](\forall x) [NewComputer(x) \rightarrow Fast(x) \land LargeMemory(x)]

2. 把下列语句表示为语义网络的描述

(1) 每个学生都学习C++语言。

(2) 红队和蓝队进行了一场篮球比赛,结局的比分是 65:70。

(3) 张三是科技公司的经理,他36岁,硕士学位,住在西海大街255号。

(4)

  1. 树和草都是植物;
  2. 树和草都是有根有叶的;
  3. 水草是草,且生长在水中;
  4. 果树是树,且会结果;
  5. 苹果树是果树的一种,它结苹果。

A2

图不好画,直接看答案吧。

3. 把以下合适公式化简为合取范式的子句集

(1)

¬(x)(y)(z){P(x)    (x)[Q(x,y)    R(z)]}\neg (\forall x)(\exists y)(\exists z) \left\{ P(x) \implies (\forall x) [Q(x, y) \implies R(z)] \right\}

(2)

(x)(y){{P(x)[Q(x)R(y)]}(y)[P(f(y))Q(g(x))]}(\forall x)(\exists y) \left\{ \left\{ P(x) \wedge [ Q(x) \vee R(y) ] \right\} \Rightarrow (\forall y) [ P(f(y)) \Rightarrow Q(g(x)) ] \right\}

(3)

(x)(y){P(x)[Q(x)R(y)]}    (y){[P(f(y))    Q(g(y))]    (x)R(x)}(\forall x)(\exists y)\{P(x) \land [Q(x) \lor R(y)]\} \implies (\forall y)\{[P(f(y)) \implies Q(g(y))] \implies (\forall x)R(x)\}

A3

(1)

🧮 原公式

¬(x)(y)(z){P(x)[x](Q(x,y)R(z))}\neg (\forall x)(\exists y)(\exists z)\{P(x) \Rightarrow [\forall x](Q(x, y) \Rightarrow R(z))\}

第一步:去掉蕴含(Implication Elimination)

P(x)[x](Q(x,y)R(z))¬P(x)[x](¬Q(x,y)R(z))P(x) \Rightarrow [\forall x](Q(x, y) \Rightarrow R(z)) \equiv \neg P(x) \vee [\forall x](\neg Q(x, y) \vee R(z))

代入原公式中:

¬(x)(y)(z){¬P(x)[x](¬Q(x,y)R(z))}\neg (\forall x)(\exists y)(\exists z)\{\neg P(x) \vee [\forall x](\neg Q(x, y) \vee R(z))\}

第二步:将最外层的否定移入(使用德摩根律和量词对偶)

¬(x)(y)(z)φ(x)(y)(z)¬φ\neg (\forall x)(\exists y)(\exists z)\varphi \equiv (\exists x)(\forall y)(\forall z)\neg \varphi

应用于上式:

(x)(y)(z)¬{¬P(x)[x](¬Q(x,y)R(z))}(\exists x)(\forall y)(\forall z)\neg\{\neg P(x) \vee [\forall x](\neg Q(x, y) \vee R(z))\}

第三步:对内部再消去否定

¬{¬P(x)[x](¬Q(x,y)R(z))}P(x)¬[x](¬Q(x,y)R(z))\neg\{\neg P(x) \vee [\forall x](\neg Q(x, y) \vee R(z))\} \equiv P(x) \wedge \neg [\forall x](\neg Q(x, y) \vee R(z))

继续化简:

¬[x](¬Q(x,y)R(z))(x)¬[¬Q(x,y)R(z)][x](Q(x,y)¬R(z))\neg [\forall x](\neg Q(x, y) \vee R(z)) \equiv (\exists x)\neg[\neg Q(x, y) \vee R(z)] \equiv [\exists x](Q(x, y) \wedge \neg R(z))

代入:

(x)(y)(z){P(x)[x](Q(x,y)¬R(z))}(\exists x)(\forall y)(\forall z)\left\{P(x) \wedge [\exists x](Q(x, y) \wedge \neg R(z))\right\}

注意:内部的 (x)(\exists x) 与外部的 (x)(\exists x) 重名,为避免混淆,内部改名为 xx'

(x)(y)(z){P(x)[x](Q(x,y)¬R(z))}(\exists x)(\forall y)(\forall z)\left\{P(x) \wedge [\exists x'](Q(x', y) \wedge \neg R(z))\right\}

第四步:前束范式(Prenex Form)

目前为:

(x)(y)(z)[x](P(x)Q(x,y)¬R(z))(\exists x)(\forall y)(\forall z)[\exists x'](P(x) \wedge Q(x', y) \wedge \neg R(z))

第五步:Skolem 化(Skolemization)

将存在量词替换为 Skolem 函数:

则:

(y)[z](P(A)Q(f(y,z),y)¬R(z))(\forall y)[\forall z](P(A) \wedge Q(f(y,z), y) \wedge \neg R(z))

第六步:化为合取范式(CNF)

上式为量词前缀加合取公式,接下来去掉量词,拆分为子句:

{P(A), Q(f(y,z),y), ¬R(z)}\{P(A),\ Q(f(y,z), y),\ \neg R(z)\}

✅ 最终子句集

{P(A), Q(f(y,z),y), ¬R(z)}\{P(A),\ Q(f(y,z), y),\ \neg R(z)\}

总结过程回顾

  1. 去蕴含:将 \Rightarrow 改写为 ¬AB\neg A \vee B
  2. 使用德摩根与量词对偶:将外层否定逐步移入
  3. 逻辑化简:合并否定项,内外变量区分
  4. 前束范式:提取所有量词到前缀
  5. Skolem 化:消除存在量词,引入常量或函数
  6. 合取范式(CNF):拆分成子句集

Skolem 变换的知识如下

以免你忘了 Skolemization

(2)

好的,以下是对题(2)中公式的**从原始形式化简为合取范式子句集(CNF)**的完整解析过程。

🔢 原公式

(x)(y){P(x)[Q(x)R(y)][y](P(f(y))Q(g(x)))}(\forall x)(\exists y)\left\{ P(x) \land [Q(x) \lor R(y)] \Rightarrow [\forall y](P(f(y)) \Rightarrow Q(g(x))) \right\}

🧮 第一步:消去蕴含符号(Implication)

回忆:

AB¬ABA \Rightarrow B \equiv \neg A \lor B

所以:

P(x)[Q(x)R(y)][y](P(f(y))Q(g(x)))¬(P(x)[Q(x)R(y)])[y](¬P(f(y))Q(g(x)))P(x) \land [Q(x) \lor R(y)] \Rightarrow [\forall y](P(f(y)) \Rightarrow Q(g(x))) \\ \equiv \neg \left( P(x) \land [Q(x) \lor R(y)] \right) \lor [\forall y](\neg P(f(y)) \lor Q(g(x)))

🧮 第二步:德摩根定律展开

¬(P(x)[Q(x)R(y)])¬P(x)¬[Q(x)R(y)]¬P(x)(¬Q(x)¬R(y))\neg(P(x) \land [Q(x) \lor R(y)]) \equiv \neg P(x) \lor \neg[Q(x) \lor R(y)] \equiv \neg P(x) \lor (\neg Q(x) \land \neg R(y))

所以整个公式变为:

(x)(y){(¬P(x)¬Q(x)¬R(y))[y](¬P(f(y))Q(g(x)))}(\forall x)(\exists y)\left\{ (\neg P(x) \lor \neg Q(x) \land \neg R(y)) \lor [\forall y](\neg P(f(y)) \lor Q(g(x))) \right\}

🧮 第三步:重新组织逻辑结构(析取优先级处理)

(¬P(x)¬Q(x)¬R(y))[y](¬P(f(y))Q(g(x)))(\neg P(x) \lor \neg Q(x) \land \neg R(y)) \lor [\forall y](\neg P(f(y)) \lor Q(g(x)))

因含有“析取与合取混用”,需要使用分配律:

(¬P(x)¬Q(x))(¬P(x)¬R(y))(\neg P(x) \lor \neg Q(x)) \land (\neg P(x) \lor \neg R(y))

所以整个公式为:

(x)(y){(¬P(x)¬Q(x))(¬P(x)¬R(y))[y](¬P(f(y))Q(g(x)))}(\forall x)(\exists y)\left\{ (\neg P(x) \lor \neg Q(x)) \land (\neg P(x) \lor \neg R(y)) \lor [\forall y](\neg P(f(y)) \lor Q(g(x))) \right\}

接下来将其标准化。

🧮 第四步:引入新变量统一量词(避免变量名冲突)

将两个 y\exists yy\forall y 区分: 外层 y\exists y 改为 h(x)h(x),内层 y\forall y 改为 ww

并进行 Skolem 化(消除存在量词):

所以现在是:

(x)(w){(¬P(x)¬Q(x))(¬P(x)¬R(h(x)))[¬P(f(w))Q(g(x))]}(\forall x)(\forall w)\left\{ (\neg P(x) \lor \neg Q(x)) \lor (\neg P(x) \lor \neg R(h(x))) \lor [\neg P(f(w)) \lor Q(g(x))] \right\}

将其合取拆开得到两个子句(使用分配律):

🧮 第五步:拆为 CNF 子句集(Conjunctive Normal Form)

组合并展开所有析取:

(¬P(x)¬Q(x)¬P(f(w))Q(g(x)))(¬P(x)¬R(h(x))¬P(f(w))Q(g(x)))\begin{aligned} &(\neg P(x) \lor \neg Q(x) \lor \neg P(f(w)) \lor Q(g(x))) \\ &(\neg P(x) \lor \neg R(h(x)) \lor \neg P(f(w)) \lor Q(g(x))) \end{aligned}

然后将量词去除(变为无量词子句集),变量重命名如下:

✅ 最终 CNF 子句集

{¬P(x1)¬Q(x1)¬P(f(w1))Q(g(x1)),¬P(x2)¬R(h(x2))¬P(f(w2))Q(g(x2))}\{ \neg P(x_1) \lor \neg Q(x_1) \lor \neg P(f(w_1)) \lor Q(g(x_1)), \\ \neg P(x_2) \lor \neg R(h(x_2)) \lor \neg P(f(w_2)) \lor Q(g(x_2)) \}

或者用集合形式表示:

{{¬P(x1),¬Q(x1),¬P(f(w1)),Q(g(x1))},{¬P(x2),¬R(h(x2)),¬P(f(w2)),Q(g(x2))}}\{ \{ \neg P(x_1), \neg Q(x_1), \neg P(f(w_1)), Q(g(x_1)) \}, \\ \{ \neg P(x_2), \neg R(h(x_2)), \neg P(f(w_2)), Q(g(x_2)) \} \}

🔁 总结步骤

  1. 去掉蕴含符号\Rightarrow¬AB\neg A \lor B
  2. 应用德摩根律¬(AB)¬A¬B\neg (A \land B) \Rightarrow \neg A \lor \neg B
  3. 标准化变量:避免量词冲突
  4. Skolem 化:去掉存在量词,引入函数符号
  5. 合取范式 CNF 化:变为析取项组成的合取子句集

4. 计算下述各子句对的归结式,若没有,则得出“无法归结”

(1)

C1:PR,C2:¬PQC_1: P \lor R, \quad C_2: \neg P \lor Q

(2)

C1:¬PQ,C2:PC_1: \neg P \lor Q, \quad C_2: P

(3)

C1:¬PQR,C2:¬Q¬RC_1: \neg P \lor Q \lor R, \quad C_2: \neg Q \lor \neg R

(4)

C1:¬PQ,C2:¬PRC_1: \neg P \lor Q, \quad C_2: \neg P \lor R

(5)

C1:Q,C2:¬QC_1: Q, \quad C_2: \neg Q

5. 考虑下面的句子

(1) 每个程序都存在BUG
(2) 含有BUG的程序无法工作
(3) P是一个程序
使用归结反演证明P不能工作

(注:BUG(X)BUG(X)XX存在BUG, Program(X)Program(X)XX是程序, Work(X)Work(X)XX能工作)

6. 假设已知下列事实

(1) 小李(Li)喜欢容易的(Easy)课程(Course)。
(2) 小李不喜欢难的(Difficult)课程。
(3) 工程类(Eng)课程都是难的。
(4) 物理类(Phy)课程都是容易的。
(5) 小吴(Wu)喜欢所有小李不喜欢的课程。
(6) Phy200Phy200 是物理类课程。
(7) Eng300Eng300 是工程类课程。

请用归结反演法回答下列问题:
(1) 证明小吴喜欢 Eng300Eng300 课程
(2) 小李喜欢什么课程?

第四、五章

1

对于八数码难题按下式定义评价函数:f(x)=d(x)+h(x)f(x)=d(x)+h(x),其中 d(x)d(x) 为节点 xx 的深度;h(x)h(x) 是节点 nn 与目标状态节点比较,错位棋牌在不受阻拦的情况下,移动到目标状态相应位置所需走步(移动次数)的总和。

初始状态(S0S_0):

28316475\begin{array}{ccc} 2 & 8 & 3 \\ 1 & 6 & 4 \\ 7 & & 5 \end{array}

目标状态:

12384765\begin{array}{ccc} 1 & 2 & 3 \\ 8 & & 4 \\ 7 & 6 & 5 \end{array}

(1) 用 A*算法搜索目标,请列出前 3 步搜索中 OPEN、CLOSED 表的内容。

循环OPENCLOSED
初始化
1
2
3

(2) 画出搜索树,并在图中标注所有节点的评价函数值。

2

对于规则 PQP \Rightarrow Q,已知 p(Q)=0.04,LS=100,LN=0.4p(Q)=0.04, LS=100, LN=0.4,利用主观 Bayes 方法求出 P(Q/P)P(Q/P)P(Q/¬P)P(Q/\neg P)

3

已知规则如下:

R1:IF E1 THEN H (0.8)R1: \text{IF } E1 \text{ THEN } H \ (0.8) R2:IF E2 THEN H (0.6)R2: \text{IF } E2 \text{ THEN } H \ (0.6) R3:IF E3 THEN H (0.5)R3: \text{IF } E3 \text{ THEN } H \ (-0.5) R4:IF E4 AND (E5 OR E6) THEN E1 (0.7)R4: \text{IF } E4 \text{ AND } (E5 \text{ OR } E6) \text{ THEN } E1 \ (0.7) R5:IF E7 AND E8 THEN E3 (0.9)R5: \text{IF } E7 \text{ AND } E8 \text{ THEN } E3 \ (0.9)

在系统运行中已从用户处得:

CF(E2)=0.8CF(E2) = 0.8, CF(E4)=0.5CF(E4) = 0.5, CF(E5)=0.6CF(E5) = 0.6, CF(E6)=0.7CF(E6) = 0.7, CF(E7)=0.6CF(E7) = 0.6, CF(E8)=0.9CF(E8) = 0.9

HH 的综合可信度 CF(H)CF(H)

4

设学生考试成绩的论域为 {A,B,C,D,E}\{A, B, C, D, E\},小王成绩得 AA、得 BB、得 AABB 的基本概率分别分配到 0.20.20.10.10.30.3Bel({C,D,E})\text{Bel}(\{C, D, E\})0.20.2;请给出 Bel({A,B})\text{Bel}(\{A, B\})Pl({A,B})\text{Pl}(\{A, B\})f({A,B})f(\{A, B\})

附加题

5

在应用递归回溯算法解决四皇后的问题中,若按行的序号从小到大试探性放置各列的皇后,请画出搜索图,并指出分别从算法第 2 步和第 4 步回溯的次数。


老师发的答案如下

点击下载 | 人智基础-2025sp-猫雷作业答案

有点累,先睡个觉,起来再写。


在 Github 上编辑此页
分享这篇资料:

上一篇
人智基础-2025sp-一堆重点
下一篇
计网-2025sp-24回忆版