人工智能 —— 谓词逻辑表示法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/starter_____/article/details/88638857

逻辑学基础

(1)命题和真值

一个陈述句称为一个断言。凡有真假意义的断言称为命题。命题的意义通常称为真值,它只有真、假两种情况。

(2)论域

也称为个体域,是由讨论的对象的全体构成的非空集合

(3)谓词

实现的是从个体域中的个体到 T 或 F 的映射。分为谓词名和个体两个部分

  • 谓词名:表示个体的性质、状态或个体之间的关系,用大写英文字母表示
  • 个体:命题中的主语,用小写英文字母表示。可以是常量、变元和函数

(4)函数

实现的是从一个个体到另一个个体的映射,函数没有真值。

在谓词逻辑中,函数本身不能单独使用,它必须嵌入到谓词之中。

举例:王洪的父亲是教师

TEACHER(father(Wang Hong)),其中,TEACHER是谓词,而father是函数

(5)连接词和量词

  • 连接词:﹁,∨,∧,→,↔
  • 量词:∀,∃

谓词逻辑表示法的应用

题目:
在这里插入图片描述
① 定义描述状态的谓词如下:

  • EMPTY:机械手中是空的
  • HOLD(x):机械手中拿着积木x
  • ON(x,y):积木x在积木y上面
  • CLEAR(x):积木x的上面是空的
  • ONTABLE(x):积木x在桌子上

其中,x和y的个体域为{A,B,C}

② 问题的初始状态是:

  • EMPTY
  • ONTABLE(A)
  • ONTABLE(B)
  • ON( C,A)
  • CLEAR( B)
  • CLEAR( C)

③ 问题的目标状态是:

  • EMPTY
  • ONTABLE( C)
  • ON(B,C)
  • ON(A,B)
  • CLEAR(A)

④ 定义描述操作的谓词如下:

  • PICKUP(x):从桌子上捡起积木x
  • PUTDOWN(x):将手中的积木x放到桌子上
  • STACK(x,y):在积木x上再摞上一块积木y
  • UNSTACK(x,y):从积木x上面拣起一块积木y

其中,x和y的个体域为{A,B,C}

⑤ 操作对应的条件和动作如下:

PICKUP(x)

  • 条件:EMPTY,ONTABLE(x),CLEAR(x)
  • 动作:删除表:EMPTY,ONTABLE(x) ,CLEAR(x)
    增加表:HOLD(x)

PUTDOWN(x):

  • 条件:HOLD(x)
  • 动作:删除表:HOLD(x)
    增加表:EMPTY,ONTABLE(x) ,CLEAR(x)

STACK(x,y):

  • 条件:HOLD(y),CLEAR(x)
  • 动作:删除表:HOLD(y),CLEAR(x)
    增加表:EMPTY,ON(x,y),CLEAR(y)

UNSTACK(x,y):

  • 条件:EMPTY,ON(x,y),CLEAR(y)
  • 动作:删除表:EMPTY,ON(x,y),CLEAR(y)
    增加表:HOLD(y) ,CLEAR(x)

其中,x和y的个体域为{A,B,C}

⑥ 问题的求解过程如下:

在这里插入图片描述


谓词逻辑表示法的优点和局限性

优点:

①自然性
②精确性
③严密性
④容易实现

局限性:

①不能表示不确定的知识
②组合爆炸
③效率低

猜你喜欢

转载自blog.csdn.net/starter_____/article/details/88638857
今日推荐