2.7 解:根据谓词知识表示的步骤求解问题如下: 解法一: (1)本问题涉及的常量定义为: 猴子:Monkey,箱子:Box,香蕉:Banana,位置:a,b,c (2)定义谓词如下: SITE(x,y):表示x 在y 处; HANG(x,y):表示x 悬挂在y 处; ON(x,y):表示x 站在y 上; HOLDS(y,w):表示y 手里拿着w。 (3)根据问题的描述将问题的初始状态和目标状态分别用谓词公式表示如下: 问题的初始状态表示: SITE(Monkey,a)∧HANG(Banana,b)∧SITE(Box,c)∧~ON(Monkey,Box)∧~HOLDS(Monkey,Banana) 问题的目标状态表示: SITE(Monkey,b)∧~HANG(Banana,b)∧SITE(Box,b) ∧ON(Monkey,Box)∧HOLDS(Monkey,Banana) 解法二: (1) 本问题涉及的常量定义为: 猴子:Monkey,箱子:Box,香蕉:Banana,位置:a,b,c (2) 定义谓词如下: SITE(x,y):表示x 在y 处; ONBOX(x):表示x 站在箱子顶上; HOLDS(x):表示x 摘到了香蕉。 (3)根据问题的描述将问题的初始状态和目标状态分别用谓词公式表示如下: 问题的初始状态表示: SITE(Monkey,a)∧SITE(Box,c)∧~ONBOX(Monkey)∧~HOLDS(Monkey) 问题的目标状态表示: SITE(Box,b)∧SITE(Monkey,b)∧ONBOX(Monkey)∧HOLDS(Monkey) 从上述两种解法可以看出,只要谓词定义不同,问题的初始状态和目标状态就不同。所以,对于同样的知识,不同的人的表示结果可能不同。 2.8 解:本问题的关键就是制定一组操作,将初始状态转换为目标状态。为了用谓词公式表示操作,可将操作分为条件(为完成相应操作所必须具备的条件)和动作两部分。条件易于用谓词公式表示,而动作则可通过执行该动作前后的状态变化表示出来,即由于动作的执行,当前状态中删去了某些谓词公式而又增加一些谓词公式从而得到了新的状态,通过这种不同状态中谓词公式的增、减来描述动作。 定义四个操作的谓词如下,操作的条件和动作可用谓词公式的增、删表示: (1)goto