初始状态:机器人ROBOT在壁橱ALCOVE的旁边,且两手是空的,桌子A上放着积木块BOX,桌子B是空的。
目标状态:机器人ROBOT将把积木块BOX从桌子A转移到桌子B上。
第一步:涉及常量
机器人:ROBOT;积木块:BOX;壁橱:ALCOVE; 桌子:A;桌子:B。 第二步:定义谓词:
TABLE(x) 表x是桌子 EMPTYHANDED(x) 表x双手是空的 AT(x,y) 表x在y旁 HOLDS(x,y) 表x拿着y ON(x,y) 表x在y上
EMPTYTABLE(x) 表桌子x是空的 09 25
设定初始状态是:
AT(ROBOT,ALCOVE) ∧ EMPTYHANDED(ROBOT) ∧ ON(BOX,A) ∧ TABLE(A) ∧ TABLE(B) ∧
EMPTYTABLE(B) 目标状态是
AT(ROBOT,ALCOVE) ∧ EMPTYHANDED(ROBOT) ∧ ON(BOX,B) ∧ TABLE(A) ∧ TABLE(B) ∧
EMPTYTABLE(A)
问题是依机器人可进行的操作,实现一个由初始状态到目标状态的机器人操作过程。 09 26
机器人的每个操作的结果所引起的状态变化,可用对原状态的增添表和删除表来表示。如机器人由初始状态把BOX从A桌移到B桌上,然后仍回到壁室,这时同初始状态相比有 增添表 ON(BOX,B) 删除表 ON(BOX,A)
又如机器人由初始状态,走近A桌,然后拿起BOX,这时同初始状态相比有 增添表 AT(ROBOT,A)
HOLDS(ROBOT,BOX) 删除表 AT(ROBOT,ALCOVE)
EMPTYHANDED(ROBOT) ON(BOX,A) 进一步说,机器人的每一操作还需有先决条件。如机器人拿起A桌上的BOX这一操作,先决条件是
ON(BOX,A),AT(ROBOT ,A) EMPTYHANDED (ROBOT) 09 27
表示方法 —谓词逻辑法 谓词公式的取值:
当一谓词公式中不含变量,或变量值均取定时,谓词公式所表示的事物间的关系也就唯一确定。若这种关系在应用域确实存在,则谓词公式取值为真(记为T),否则为假(记为F)。在这个意义上,每个谓词公式均有一个确定的真值:T或F。 09
表示方法 —谓词逻辑法
谓词能够更加细致地刻画知识: 表达能力强
如:北京是个城市, City(x) 把城市这个概念分割出来。把“城市” 与“北京”两个概念连接在一起,而且说明“北京”是“城市”的子概念。(概念有了层次) 谓词可以代表变化的情况
如:City(北京),真。 City(煤球),假 09
表示方法 —谓词逻辑法
在不同的知识之间建立联系(逻辑表达形式)
如:Human(x) → Lawed(x), 人人都受法律管制,x是同一个人。
Commit(x) → Punished(x), 犯了罪就要受惩罚,其中x不一定是人也可以是动物。
而 {[Human(x) → Lawed(x)]→[Commit(x) → Punished(x)]},意为如果由于某个x是人而受法律管制,则这个人犯了罪就一定要受到惩罚。(用谓词把所有的概念联系起来) 09
表示方法 —谓词逻辑法 存在问题:
谓词表示越细,推理越慢、效率越低,但表示清楚。实际中是要折衷的。 09
表示方法 —谓词逻辑法
谓词逻辑法是应用最广的方法之一,其原因是:
谓词逻辑与数据库,特别是关系数据库就有密切的关系。在关系数据库中,逻辑代数表达式是谓词表达式之一。因此,如果采用谓词逻辑作为系统的理论背景,则可将数据库系统扩展改造成知识库。
一阶谓词逻辑具有完备的逻辑推理算法。如果对逻辑的某些外延扩展后,则可把大部分的知识表达成一阶谓词逻辑的形式。(知识易表达,表示范围大) 09
表示方法 —谓词逻辑法
谓词逻辑本身具有比较扎实的数学基础,知识的表达方式决定了系统的主要结构。因此,对知识表达方式的严密科学性要求就比较容易得到满足。这样对形式理论的扩展导致了整个系统框架的发展。
逻辑推理是公理集合中演绎而得出结论的过程。由于逻辑及形式系统具有的重要性质,可以保证知识库中新旧知识在逻辑上的一致性(或通过相应的一套处理过程检验)、和所演绎出来的结论的正确性。而其它的表示方法在这点上还不能与其相比。 09
表示方法(各有特点,并存) 谓词逻辑法
产生式规则表示法 语义网络法 状态空间法 问题归约法 框架表示 面向对象表示 脚本方法表示 过程式表示 09
表示方法—产生式表示法(if?then?)
美国数学家Post,1943年提出了一种计算形式体系里所使用的术语。主要是使用类似文法的规则,对符号串做替换运算。这就是最早的一个产生式系统。
到了60年代,产生式系统成为认知心理学研究人类心理活动中信息加工过程的基础,由此心理学家认为,人脑对知识的存储就是产生式形式。因此,用它来建立人类认知模型。 到目前为止,产生式系统已发展成为人工智能系统中最典型最普遍的一种结构。产生式表示方法是专家系统的第一选择的知识表达方式。 09
表示方法—产生式表示法
产生式表示方法容易描述事实、规则以及它们的不确定性度量。 事实的表示
事实可看作是断言一个语言变量的值或断言多个语言变量之间关系的陈述句。 例1:香蕉是黄色的。 语言变量——香蕉,值——黄色的
例2:小李喜欢小莉。 语言变量——小李、小莉,关系值——喜欢
一般使用三元组(对象,属性,值)或(关系,对象1,对象2)来表示事实,其中对象就是语言变量,若考虑不确定性就成四元组表示了。这种表示的机器内部实现就是一个表。 09
表示方法—产生式表示法 例:对事实
“老李年龄今年是65岁”可表示成: (Li,Age,65)
而“老赵和老张是朋友”可写成: (Friend, Zhao,Zhang)
注:三元组(对象,属性,值)表示考虑了不确定性之后的四元表示为(对象,属性,值,不确定度量值) 例:“老赵和老张是朋友的可信度是0.6”表示为: (Friend, Zhao,Zhang,0.6) 09
表示方法—产生式表示法 规则的表示:
表示事物间的因果关系及启发式关联 以:“if condition then action”的单一形式来表示,将规则作为知识的单位。其中的Condition部分称作条件式前件或模式,而Action部分称作动作或后件或结论。
条件部分常是一些事实的合取,而结论常是某一事实B,如果考虑不确定性,需另附可信度度量值。
其基本形式为:P ?? Q 或者:IF P then Q 09
表示方法—产生式表示法 产生式与蕴含式的区别: 蕴含式只能表示确定知识,其值为真或者假;产生式不仅可以表示确定性知识也可表示不确定性知识。
例:在专家系统中MYCIN中有如下产生式: IF 本生物的染色斑是革兰氏阴性, 本微生物的形状呈杆状, 病人是中间宿主
THEN 该微生物是绿脓杆菌,置信度为0.6
在产生式表示中,决定一个产生式是否可用是通过检查已知事实是否与前提中所规定的条件相匹配来实现的,并且匹配可以是精确的也可以是不精确的。谓词逻辑中的蕴含则要求匹配一定是精确的。 09
表示方法—产生式表示法 产生式系统组成
一般来讲, 产生式系统由三个基本部分组成:规则库、综合数据库和推理机。前二者构成产生式系统的问题表示(描述),后者则控制应用规则推出解答的全过程。
推理机 规则库 综合数据库 09
表示方法—产生式表示法 产生式系统组成
规则库-专家系统的核心
规则库是产生式规则的集合,用于描述应用领域的常识和启发式知识,所以规则库就是产生
式系统的知识库。
例:天上下雨 → 地上湿(条件--〉结论)
→ 中国的首都是北京(无论什么前提) 09
表示方法—产生式表示法 产生式系统组成 综合数据库
综合数据库用于描述问题求解状态,典型情况下,可以是表示为谓词公式的事实元素集;但也可以是任何的数据结构,如向量、数组和表格等。
综合数据库可视为外部数据库输入的事实以及推理过程中间结果的存贮池。随着中间结果的不断加入,使综合数据库描述的问题状态逐步转变为目标状态。 09
表示方法—产生式表示法
例:关于动物世界的产生式系统有规则:
若 某动物是哺乳动物,且吃肉;则 这种动物是食肉动物。 如果表示为更便于计算机操作的形式化方式为 (Mammal x)∧ (Eat x Meat) ?? (Carnivore x)
产生式系统的基本组成关于动物世界的产生式系统有如下综合数据库: ?
(Mammal Dog) (Eat Dog Meat) ? 09
产生式系统组成 推理机
推理机是一个程序,控制协调规则库与数据的运行,包含了控制策略和推理方式。
基本的控制流程是:
识别--行动 ??循环
在识别阶段,控制系统在规则库中识别条件为真的规则,使这些规则激活;然后行动阶段,执行激活的规则。
表示方法—产生式表示法 09
表示方法—产生式表示法
控制策略就是确定选用什么规则或如何应用规则。 通常从选择规则到执行操作要分三部分来完成: 匹配 冲突解决 操作 09