语义网络

2.9 设有如下语句,请用相应的谓词公式分别把它们表示出来:

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

     解:定义谓词

     Px):x是人

     Lxy):x喜欢y

     其中,y的个体域是{梅花,菊花}

     将知识用谓词表示为:

  (Э x)(P(x)→Lx,梅花)∨  L(x,菊花)∨ L(x,梅花)∧ L(x,菊花) )

(2)有的人每天下午都去打篮球。

     解:定义谓词

         Px):x是人

         Bx):x打篮球

         Ay):y是下午

         将知识用谓词表示为:(Э x)(V y)(A(y) → Bx∧ Px))

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

     解:定义谓词

     NCx):x是新型计算机

     Fx):x速度快

     Bx):x容量大

     将知识用谓词表示为:(V x)(NCx→ Fx∧ Bx

(4)不是每个计算机系的学生都喜欢在计算机上编程序。

     解:定义谓词

     Sx):x是计算机系学生

     Lx,程序):x喜欢编程序

     UX,计算机):x使用计算机

     将知识用谓词表示为:¬ (V x)(S(x)→ Lx,程序)∧ Ux,计算机)

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

      解:定义谓词

      Px):x是人

      Lxy):x喜欢y

      将知识用谓词表示为:(V x)(Px∧ Lx,程序)→Lx,计算机) )

 

2.11  用谓词表示法表示农夫、狼、山羊、白菜问题。

      设农夫、狼、山羊、白菜全部在一条河的左岸,现在要把它们全部送到河的右岸去,农夫有一条船,过河时,除农夫外船上至多能载狼、山羊、白菜中的一种、狼要吃山羊,山羊要吃白菜,除非农夫在那里。试规划出一个确保全部安全过河的计划。请写出所用谓词的定义,并给出每个谓词的功能及变量的个体域。

 解:(1)先定义描述状态的谓词

要描述这个问题,需要能够说明农夫、狼、山羊、白菜和船在什么位置,为简化问题表示, 取消船在河中行驶的状态,只描述左岸和右岸的状态。并且,由于左岸和右岸的状态互补,因此可仅对左岸或右岸的状态做直接描述。本题选择对左岸进行直接描述的方法,即定义谓词如下:

ALx):x在左岸

其中,x的个体域是{农夫、船、狼、山羊、白菜}。对应地,¬AL(x)表示x在右岸。

问题的初始状态:

AL(农夫)、AL(船)、AL(狼)、AL(山羊)、AL(白菜)

问题的目标状态:

¬AL(农夫)、¬AL(船)、¬AL(狼)、¬AL(山羊)、¬AL(白菜)

(2)再定义描述操作的谓词

L-R:农夫自己划船从左岸到右岸

L-R(x):农夫带着x划船左岸到右岸

R-L:农夫自己划船从右岸到左岸

R-L(x):农夫带着X划船从右岸到左岸

其中,x的个体域是{狼、山羊、白菜}。

对上述每个操作,都包括条件和动作两部分。它们对应的条件和动作如下:

L-R:农夫划船从左岸到右岸

     条件:AL(船),AL(农夫),¬AL(狼)∨ ¬AL(山羊),¬AL(山羊)∨¬AL(白菜)

     动作:删除表:AL(船),AL(农夫)

           添加表:¬AL(船),¬AL(农夫)

L-R(狼):农夫带着狼划船从左岸到右岸

           条件:AL(船),AL(农夫),AL(狼),¬AL(山羊)

                或:AL(船),AL(农夫),AL(山羊),¬AL(狼),¬AL(白菜)

           动作:删除表:AL(船),AL(农夫),AL(狼)

                 添加表:¬AL(船),¬AL(农夫),¬AL(狼)

L-R(山羊):农夫带着羊划船从左岸到右岸

             条件:AL(船),AL(农夫),AL(羊),AL(狼),AL(白菜)

                   或:AL(船),AL(农夫),AL(羊),¬AL(狼),¬AL(白菜)

             动作:删除表:AL(船),AL(农夫),AL(羊)

                   添加表: ¬AL(船),¬AL(农夫),¬AL(羊)

L-R(白菜):农夫带着白菜划船从左岸到右岸

           条件:AL(船),AL(农夫),AL(白菜),¬AL(狼)

           动作:删除表:AL(船),AL(农夫),AL(白菜)

                 添加表:¬AL(船),¬AL(农夫),¬AL(白菜)

R-L:农夫划船从右岸到左岸

     条件:¬AL(船),¬AL(农夫),AL(狼)∨AL(羊),AL(羊)∨AL(白菜)

          或: ¬AL(船),¬AL(农夫),¬AL(狼),AL(羊),¬AL(白菜)

     动作:删除表:¬AL(船),¬AL(农夫)

           添加表:AL(船),AL(农夫)

R-L(羊):农夫带着羊划船从右岸到左岸

           条件:¬AL(船),¬AL(农夫),¬AL(羊),¬AL(狼),AL(白菜)

           动作:删除表:¬AL(船),¬AL(农夫),¬AL(羊)

                 添加表:AL(船),AL(农夫),AL(羊) 

 

                                                                        

 

posted @ 2016-04-26 19:41  1084  阅读(469)  评论(0)    收藏  举报