6e9f1ab29af0c51ecf210821dae79507.ppt
- Количество слайдов: 133
人 智能及其应用 主讲:李敏 教授 智能信息处理与仪器研究室 2007年 3月 1
智能信息处理与仪器研究室 第 2章 知识表示与推理 学习要求: 1. 了解知识、信息和数据的概念,以及它们之间 的关系. 2. 了解知识的特性、分类以及它们的表示方法. 3. 掌握各种知识表示法,包括一阶谓词逻辑表示 法、产生式表示法、语义网络表示法、框架表示 法、面向对象表示法以及状态空间表示法等表示 知识的步骤和方法. 4. 了解各种知识表示方法的具体表示形式的优缺 点以及所适合的应用对象。 2
智能信息处理与仪器研究室 知识及其表示 1. 知识是人类智能的基础. 人类的智能活 动过程主要是一个获取知识并运用知识 的过程. 人 智能问题的求解是以知识为 基础的. 2. 知识的获取、知识的表示和运用知识 进行推理是人 智能学科要研究的三个 主要问题。 3
智能信息处理与仪器研究室 知识、信息和数据 在人们日常生活和社会活动中,知识是一个常用术语。例如,人们常说“我们要掌握 现代科学文化知识”,“掌握的知识越多,你的机会就越多”,等等。 信息是用一定的形式表示出来,尤其是在计算机中,需要用一组符号及其组合进行表 示,象这样表示的信息称为数据。数据与信息是两个密切相关的概念。数据是记录信 息的符号,是信息的载体和表示。信息是对数据的解释,是数据在特定场合下的具体 含义。 1. 相同数据在不同的环境下表示不同的含义。(100元钱、100个人、100分) 2. 相同信息也可以用不同的数据表示出来。(地下 作者用一首诗或一组数据等表 示情报) 3. 只有格式数据才有意义。(0351 -7011320, 可能是一个区号和电话号码) 4. 通常把有关信息关联在一起所形成的信息结构称知识 知识、信息和数据是三个层次的概念。 有格式的数据经过处理、解释过程会形成信息,而把有关的信息关联到一起经过 处理就形成了知识。知识是用信息表达的,信息则是用数据表达的,这种层次不 仅反映了数据、信息和知识的因果产生关系,也反映了它们不同的抽象程度。 4
智能信息处理与仪器研究室 知识的特性 1. 相对正确性 知识是人们对客观世界认识的结晶,并且受到长期实践检验。世界上没有 任何永远正确的知识,而是相对的。如1+1=2(在十进制体系,二进制?), 又如,“在同一平面上,两条永不相交的直线叫平行线”(如果不是同一平面 ?) 2. 不确定性 知识是有关信息关联在一起形成的信息结构,信息与关联是构成知识的 两大要素。如观察眼前课桌的颜色,有的认为是米黄色,有的认为是桔黄色, 实际上说明观察中带有某种程度的不确定性。 3. 可表示性 知识是可用形式化的方法表示的,如语言、文字、图形、公式等来表示, 正是由于这一特性,才使知识能够数据化,才能用计算机存储、传播和利用知 识。 4. 可利用性 5 我们每时每刻都在利用自身所掌握的知识来解决现实世界中的各种问题。
智能信息处理与仪器研究室 知识的分类 1. 以知识的作用范围来划分: 常识性知识(如夏天热,冬天冷;万物生长靠太阳)、领域 性知识(1个字节由 8个位构成、1个扇区有512个字节的数据 )。 2. 就知识的作用及表示来划分: 事实性知识(常以“…是…”出现,如雪是白色的、鸟有翅膀) 、规则性知识(常以“如果…则…”, 如果春天来了,则小燕子马 上就要飞回来了。计算机专家系统中常用规则性知识,是由专家 提供的专门性经验知识)、控制性知识(是指有关问题的求解步 骤、技巧性知识)和元知识(是指有关知识的知识,是知识库中 的高层知识,包括怎样使用规则、解释规则、校验规则、解释程 序结构等知识)。 6
智能信息处理与仪器研究室 知识的分类 3. 以知识的确定性来划分:确定知识(指逻辑值为真或假的知 识,是精确性的知识)、不确定知识(逻辑值不能完全确定的 知识,其逻辑值由一个概率值确定)。 4. 按人类的思维方式及认识方法来划分:逻辑性知识(反映人 类逻辑思维过程的知识,一般都具有因果关系及难以精确描述 的特点)、形象性知识(通过形象思维所获得的知识,例如, 牛是什么模样?如果用文字来描述,可能很难让没见过牛的人 获得关于牛的知识,但是通过照片或真牛,就可以获得形象性 知识)。 7
智能信息处理与仪器研究室 知识的表示 知识表示是研究用机器表示知识的可行性、有效性的一般方法, 是一种数据结构与控制结构的统一体,既考虑知识的存储又考 虑知识的使用。知识表示实际上是对人类知识的一种描述,以 把人类知识表示成计算机能够处理的数据结构。 对知识的表示过程就是把知识编码成某种数据结构的过程。 知识表示方法分为陈述性知识表示和过程性知识表示两大类。 陈述性知识表示主要用来描述事实性知识。是一种静态的描述方法,在表示知识时, 不涉及如何运用知识。优点:灵活、简洁,每个有关事物仅需存储一次,演绎过 程完整而确定,系统的模块性好。缺点: 作效率低,推理过程不透明,不易理 解。 过程性知识表示主要用来描述规则性知识和控制结构知识。告诉人们“怎么做”。知识 表示的形式是一个“过程”(即求解程序),它将知识的表示与运用(推理)相结合, 知识就寓于程序之中,是一种动态的描述方法。优点:推理过程直接、清晰,有利于 模块化,易于表达启发性知识和默认推理知识,实现起来效率高。缺点:不够严格, 8 知识间有交互重叠,灵活性差,知识的增删不方便。
智能信息处理与仪器研究室 知识的表示方法 在前述两类知识表示方法中,包含了多种具体的方法: 一阶谓词逻辑表示法 产生式表示法 框架表示法 语义网络表示法 面向对象表示法 状态空间表示法、问题归约法 脚本表示法 Petri网表示法、过程表示法 同一种知识有多种表示方法,但表达效果不一样,在选择时应 考虑以下因素:能否充分表示相关的领域知识;是否有利于对 知识的利用;是否便于知识的组织、维护和管理;是否便于理 解和实现。 9
智能信息处理与仪器研究室 一阶谓词逻辑表示法 谓词逻辑是一种重要的知识表示方法,是一种形 式语言,其根本目的在于把数学中的逻辑论证符 号化是到目前为止能够表达人类思维活动规律的 号化 一种最精确的形式语言。与人类的自然语言比较 接近,又可方便地存储到计算机中去,并被计算 机做精确处理。它用逻辑方法研究推理的规律, 即条件与结论之间地蕴涵关系。是一种最早应用 即条件与结论之间地蕴涵关系。 于人 智能中的表示方法。 人 智能语言PROLOG是以一阶谓语逻辑为基础的程序设 计语言,它是建造智能系统的有力 具。 10
谓词逻辑的语言与方法 语法和语义 谓词逻辑的基本组成部分是:谓词符号,变量符 号,函数符号和常量符号,并用圆括号、方括号、花 括弧和逗号隔开,以表示论域内的关系。 例如:要表示机器人(ROBOT)在一号房间(ROOM 1) 内,可用下列原子公式(由若干谓词符号和项组成): INROOM(ROBOT, r 1) 其中INROOM为谓词符号,由规定定义域内的一个相应 关系 ROBOT和r 1为常量符合(项)用来表示论域内的物体或 实体,它可以是实际的物体和人,也可以是概念或具有名字 的任何事情。 11
连词和量词 原子公式是谓词演算的基本积木块,应用连词能够组合多个 原子公式以构成比较复杂的合适公式。 (1)连词Λ(与)用来表示复合句子。 例:我喜欢音乐和绘画。 LIKE(I, MUSIC)ΛLIKE(I, PAINTING) 李住在一幢黄色的房子里 LIVES(LI, HOUSE) ΛCOLOR(HOUSE, YELLOW) 其中LIVES表示人与房子间的关系,COLOR表示房子与颜色之 间的关系。 用连词Λ把几个公式连接起来而构成的公式叫做合取。而此 合取式的每个组成部分叫做合取项。 12
连词和量词 (2)连词V(或)用来表示可兼有的“或” 例:李明打篮球或踢足球。 PLAYS(LIMING, BASKEBALL) ∨PLAYS(LIMING, FOOTBALL) 用连词V把几个公式连接起来所构成的公式叫做析取,而 此析取式的每一组成部分叫做析取项。 合取和析取的真值由其组成部分的真值决定。 如果每个合取项均值取值T,则其合取值为T,否则为F; 如果析取项至少有一个取T,则其析取值为T,否则为F。 13
连词和量词 (3)连词=>(蕴涵)用来表示“如果-那么”的词句。 例:如果刘华跑得最快,那么他取得冠军。 RUNS(LIUHUA, FASTEST)=>WINS(LIUHUA, CHAMPION) 用连词=>连接两个公式的构成的公式叫做蕴涵。 如果后项取值T(不管其前项的值为什么),或者前项取值 F(不管后项的真值如何),则蕴涵取值T,否则蕴涵取值F。 (4)符号~(非)用来否定一个公式的真值。 (5)符号 “双条件”。 P Q表示P当且仅当Q 14
连词和量词 量词:我们使用变量来扩大命题演算的能力。 (6)全称量词:用符号∀ 表示,读作“所有的” 例:所有人终归一死。 存在量词:用符号∃ 表示,读作“至少存在一个” 例: 1号房间内至少存在一个物件。 这里X是被量化了的变量,我们说X是经过量化的。 如果一个合适公式中某个变量是经过量化的,我们就把这个变 量叫做约束变量,否则就叫它为自由变量。 在合适公式中,我们感兴趣的主要是所有变量都是受约束的, 这样的合适公式叫做句子。 一阶谓词演算,不允许对谓词符号或函数符号进行量化。 15
谓词公式的定义 我们把P(x 1, x 2, ……, xn)叫做谓词演算的原子公式,其中P 为n元谓词,x 1, x 2, ……, xn为客体变量或变元。 用连词把原子谓词公式组成复合谓词公式,并把它叫做分 子谓词公式。 在谓词演算中合适公式的递归定义如下: (1)原子谓词公式都是合适公式 (2)若A为合适公式,则~A也是一个合适公式。 (3)若A和B都是合适公式,则(A∧B),(A∨B), (A=>B)和 (A B) 也都是合适公式。 (4)若A是合适公式,X为A中的自由变元,则(∀ X)A和(∃ X)A都是合适 公式。 (5)只有按上述规则 1~ 4求得的那些公式才是合适公式。 16
智能信息处理与仪器研究室 知识的谓词逻辑表示法 人类的一条知识一般可以由具有完整意义的 一句话或几句话表示出来,而这些知识要用 谓词逻辑表示出来,一般是一个谓词公式( 用谓词联接符号将一些谓词联接起来所形成 的公式)。 对事实性知识,由合取符号(∧)和析取符号(∨)联 接形成的谓词公式表示。 对规则性知识,通常以蕴含符号(→)联接形成的谓词 公式表示。 17
智能信息处理与仪器研究室 用谓词公式表示知识的步骤 ① 定义谓词及个体,确定每个谓词及个体的确切含义。 ② 根据所要表达的事物或概念,为每个谓词中的变元 ③ 赋以特定的值。 ③ 根据所要表达的知识的语义,用适当的联接符号将各 ④ 个谓词联接起来,形成谓词公式。 优点: 1. 自然性(是一种接近于自然语言的形式语言) 2. 精确性(谓词公式的逻辑值只有真和假两种结果) 3. 有限性(人类知识大都不同程度地具有不确定性和 模糊性, 使得表示知识的范围受限) 4. 易实现(比较容易地转换成计算机内部表示形式,易 18 于模块化,便于对知识的增加、删除和修改)
智能信息处理与仪器研究室 用谓词公式表示知识的步骤 在用谓词逻辑对问题表示后,求解问题就要以此表示为基础进行 相应的推理。与此相对应的推理方法为归结推理方法或消解法。 例题 1. 设有下列事实性知识: 张辉是一名计算机系的学生,但他不喜欢编程序。 李晓鹏比他父亲长得高。 请用谓词公式表示这些知识。 19
智能信息处理与仪器研究室 例题 1. 设有下列事实性知识: 张辉是一名计算机系的学生,但他不喜欢编程序。 李晓鹏比他父亲长得高。 请用谓词公式表示这些知识。 解 按照表示知识的步骤,用谓词公式表示上述知识。 首先定义谓词如下: COMPUTER(x): x是计算机系的学生。 LIKE(x, y): x喜欢y。 HIGHER(x, y): x比y长得高。 这是涉及到的个体有张辉(zhangh), 编程序(programming) 李晓鹏(lixp), 以及函数father(lixp)表示李晓鹏的父亲。 第二步:将这些个体代入谓词中,得到 COMPUTER(zhangh), ~LIKE(zhangh, programming), HIGHER(lixp, father(lixp)) 第三步:根据语义,用逻辑联接词将它们联接起来,就得到了表示上 述知识的谓词公式。 COMPUTER(zhangh)∧~LIKE(zhangh, programming) HIGHER(lixp, father(lixp)) 20
例题 2. 下列知识是一些规则性知识: 人人爱劳动。 所有整数要么是偶数要么是奇数。 自然数都是大于零的整数。 请用谓词公式表示这些知识。 解 首先定义谓词如下: MAN(x): x是人。 LOVE(x, y): x爱y。 N(x): x是自然数。 I(x): x是整数。 E(x): x是偶数。 O(x): x是奇数。 GZ(x): x大于零。 智能信息处理与仪器研究室 按照第二步和第三步的要求,得到: ∀ (x)(MAN(x)→LOVE(x, labour)) ∀ (x)(I(x)→E(x)∨O(x)) ∀ (x)(N(x)→GZ(x)∧I(x)) 21
例题 3. 机器人搬弄积木块问题表示: 智能信息处理与仪器研究室 设在一个房间里,有一个机器人ROBOT, 一个壁橱ALCOVE, 一个积木 块BOX, 两个桌子A和B。开始时,机器人ROBOT在壁橱ALCOVE的旁边, 且两手空的,桌子A上放着积木块BOX, 桌子B上是空的。机器 人ROBOT将把积木块BOX从桌子A上转移到桌子B上。如何用一阶谓词逻辑 来表示这一问题呢? 解: (1)本问题涉及的常量定义为 机器人: ROBOT; 积木块: BOX; 壁橱: ALCOVE; 桌子: A; 桌子: B (2)谓词定义如下: TABLE(x)表示x是桌子 EMPTYHANDED(x)表示x双手是空的 AT(x, y)表示x在y的旁边 HOLDS(y, w)表示y拿着w ON(w, x)表示w在x的上面 EMPTYTABLE(x)表示桌子x上是空的 (3)根据问题的描述, 将问题的初始状态和目标状态分别用谓词公式表示 问题的初始状态: AT(ROBOT, ALCOVE)∧EMPTYHANDED(ROBOT)∧ON(BOX, A)∧TABLE(A) ∧TABLE(B)∧EMPTYTABLE(B) 问题的目标状态: AT(ROBOT, ALCOVE)∧EMPTYHANDED(ROBOT)∧ON(BOX, B)∧TABLE(A) 22 ∧TABLE(B)∧EMPTYTABLE(A)
例题 3. 机器人搬弄积木块问题表示: 智能信息处理与仪器研究室 设在一个房间里,有一个机器人ROBOT, 一个壁橱ALOVE, 一个积木 块BOX, 两个桌子A和B。开始时,机器人ROBOT在壁橱ALOVE的旁边, 且两手空的,桌子A上放着积木块BOX, 桌子B上是空的。机器 人ROBOT将把积木块BOX从桌子A上转移到桌子B上。如何用一阶谓词逻辑 来表示这一问题呢? (4)在将问题表示出来之后, 如何求解问题。 对此问题的求解,实际上就是要寻找一组机器人可执行的操作,利用这 组操作实现初始状态到目标状态的转变。机器人可执行的操作,实际上 也可以分为先决条件和动作两部分。先决条件用谓词公式表示,而动作 可通过动作前后的状态变化表示出来。即只要指出执行动作后,应从动 作前的状态表中删除和增加什么谓词公式就描述了相应的动作。 本例中,机器人ROBOT将积木块BOX从桌子 A移到桌子B所要执行的操 作有如下三个: GOTO(x, y): 从x处走到y处。 PICK-UP(x): 在x处拿起盒子。 SET-DOWN: 在x处放下盒子。 这三个操作可分别用条件和动作表示如下: GOTO(x, y) 条件:AT(ROBOT, x) 动作:删除 AT(ROBOT, x) 23 增加 AT(ROBOT, y)
例题 3. 机器人搬弄积木块问题表示: 智能信息处理与仪器研究室 设在一个房间里,有一个机器人ROBOT, 一个壁橱ALOVE, 一个积木 块BOX, 两个桌子A和B。开始时,机器人ROBOT在壁橱ALOVE的旁边, 且两手空的,桌子A上放着积木块BOX, 桌子B上是空的。机器 人ROBOT将把积木块BOX从桌子A上转移到桌子B上。如何用一阶谓词逻辑 来表示这一问题呢? PICK-UP(x) 条件:ON(BOX, x)∧TABLE(x)∧AT(ROBOT, x)∧EMPTYHANDED(ROBOT) 动作:删除 ON(BOX, x)∧EMPTYHANDED(ROBOT) 增加 HOLDS(ROBOT, BOX) SET-DOWN(x) 条件:TABLE(x)∧AT(ROBOT, x)∧HOLDS(ROBOT, BOX) 动作:删除 HOLDS(ROBOT, BOX) 增加 ON(BOX, x)∧EMPTYHANDED(ROBOT) 机器人在执行每一操作之前,总先检查所需的先决条件是否满足。只有 先决条件得到满足之后,才执行相应的动作,如机器人拿起桌A上的BOX这 一操作,先决条件是 ON(BOX, A)∧AT(ROBOT, A)∧EMPTYHANDED(ROBOT) 对先决条件成立与否的验证可用归结法来完成。 24
例题 4. Hanoi塔问题表示。 智能信息处理与仪器研究室 已知三个柱子 1, 2, 3和三个盘子A, B, C(A比B小, B比C小). 在初始状态下, A, B, C依次放在柱 1上. 目标状态是A, B, C依次放在柱 3上. 条件是每次可移动 一个盘子, 盘子上方是空时方可移动, 而且任何时候都不允许大盘放在小盘 之上. 解:根据谓词公司表示知识的步骤解题如下: (1) 本问题涉及的常量是三个盘子:A、B、C; 三个柱子:1,2,3; S表示状态。 (2) 定义谓词和函数如下: Disk(x)表示x是盘子。 PEE(p, w)表示盘子w在柱子p上。 Smaller(x, y)表示x比y小。 Free(x, S)表示状态S下,x空顶。 Legal(x, y, S)表示状态S下,x可向y上移动。 ON(x, y, S)表示状态S下,x在y上。 为了实现盘子的移动,需要定义一个操作函数: S’=move(x, y, S)表示S状态下,x移到y上所得的新状态S’。 定义了谓词和函数以后,它们之间将有以下关系: ①(∀ x)(∀ y)(∀ z)((smaller(x, y)∧smaller(y, z)→smaller(x, z)) 表示盘子大小关系的传递性。 25
例题 4. Hanoi塔问题表示。 智能信息处理与仪器研究室 已知三个柱子 1, 2, 3和三个盘子A, B, C(A比B小, B比C小). 在初始状态下, A, B, C依次放在柱 1上. 目标状态是A, B, C依次放在柱 3上. 条件是每次可移动 一个盘子, 盘子上方是空时方可移动, 而且任何时候都不允许大盘放在小盘 之上. 解: ② (∀ x)(∀ S)(Free(x, S)→~(∃ y)ON(y, x. S)) 表示状态S下,如果x是空顶,则必须S状态下无y在x上。 ③ (∀ x)(∀ y)(∀ S)(Legal(x, y, S)↔Free(x, S)∧Free(y, S) ∧Disk(x))∧smaller(x, y)) 表示x可向y上移动的充分必要条件为x和y均空顶且x比y小,x是盘 ④ (∀ x)(∀ y)(∀ S’)(S’=move(x, y, S)→ON(x, y, S’)∧(∀ z 1) ∧(∀ z 2)((~(z 1=x)∧~ (z 2=y))→(ON(z 1, z 2, S)=ON(z 1, z 2, S’)) ∧(∀ z)(ON(x, z, S)→Free(z, S’)))) 表示如果在状态S下,将x移动到y上得到新状态S’,则没移动的盘子间 的ON关系没有变动,而x下面的盘子却是空顶了。 26
例题 4. Hanoi塔问题表示。 智能信息处理与仪器研究室 已知三个柱子 1, 2, 3和三个盘子A, B, C(A比B小, B比C小). 在初始状态下, A, B, C依次放在柱 1上. 目标状态是A, B, C依次放在柱 3上. 条件是每次可移动 一个盘子, 盘子上方是空时方可移动, 而且任何时候都不允许大盘放在小盘 之上. 解: (3) 一阶逻辑谓词公式表示问题。定义了谓词、函数之后,就可以用一阶 逻辑谓词公司表示如下。 初始状态S 0的谓词公式: Disk(A)∧Disk(B)∧Disk(C)∧PEE(1, A)∧PEE(1, B)∧PEE(1, C) ∧Smaller(A, B)∧Smaller(B, C)∧Free(A, S 0) ON(A, B, S 0)∧ON(B, C, S 0) 目标状态Sg的谓词公式: Disk(A)∧Disk(B)∧Disk(C)∧PEE(3, A)∧PEE(3, B)∧PEE(3, C) ∧Smaller(A, B)∧Smaller(B, C)∧Free(A, Sg) ON(A, B, Sg)∧ON(B, C, Sg) 有了问题的一阶谓词逻辑表示之后,便可使用归结推理方法建立该问 题的求解过程。 27
智能信息处理与仪器研究室 产生式表示法 1943年美国数学家POST提出. 1972年, A. NEWELL和SIMON在研究人类的认知模型中开 发了基于规则的产生式系统. 产生式表示法已成为人 智能中应用最多的一种知识 表示方法, 许多成功的专家系统都用它来表示知识. 28
智能信息处理与仪器研究室 可表示的知识种类 产生式表示法是一种比较好的表示 法, 容易用来描述事实、规则以及它们的 不确定性度量。目前应用较为广泛。适 用于表示事实性知识和规则性知识。而 且可用来表示具有确定性的规则性知识、 具有不确定性的规则性知识、具有确定 性的事实性知识和具有不确定性的事实 性知识。 29
智能信息处理与仪器研究室 产生式的基本形式 表示具有因果关系的知识,其基本 形式为: P→Q 或者 IF P THEN Q P是产生式的前提,用于指出该产生式是否可用 的条件。Q是一组结论或操作,用于指出前提P 所指示的条件被满足时,应该得出的结论或应 该执行的操作。 30
智能信息处理与仪器研究室 产生式与谓词逻辑中蕴含式的区别 1. 蕴含式只是产生式的一种特殊情况。 (前者只能表示精确性知识,其逻辑值要么“真”,要么“ 假”,后者还可表示不精确知识。) 2. 在产生式表示的智能系统中,决定一 条知识是否可用的方法,可以是精确匹 配,也可是通过相似度确定匹配范围, 但在谓词逻辑中总是精确匹配。 3. 蕴含式是一个谓词公式,它有真值, 而产生式则没有真值。 31
智能信息处理与仪器研究室 知识的表示方法 1. 确定性规则知识的产生式表示 P→Q 或 IF P THEN Q 2. 不确定性规则知识的产生式表示 P→Q(置信度) 或 IF P THEN Q (置信度) 32
智能信息处理与仪器研究室 知识的表示方法 3. 确定性事实性知识的产生式表示 事实性知识可看成是断言一个语言变量的值或是多个语 言变量间的关系的陈述句。语言变量的值或语言变量间的 关系可以是一个词,不一定是数字。 例如,雪是白色的,其中雪是语言变量,其值是白色的; 约翰喜欢玛丽,其中,约翰、玛丽是两个语言变量,两者 的关系值是喜欢。 一般使用三元组表示: (对象、属性、值) 或(关系,对象 1, 对象 2) 例:老李年龄是 40岁 (LI, AGE, 40) 老李、老张是朋友(FRIEND, LI, ZHANG) 33
智能信息处理与仪器研究室 知识的表示方法 4. 不确定性事实性知识的产生式表示 一般用四元组来表示: (对象、属性、值,可信度值) 或(关系,对象 1, 对象 2, 可信度值) 例如:老李的年龄很可能是 40岁 (LI, AGE, 40, 0. 8) 老李、老张是朋友的可能性不大 (FRIEND, LI, ZHANG, 0. 1) 34
智能信息处理与仪器研究室 产生式系统的组成 把一组产生式放在一起,让它们相互配合,协同作用,一个 产生式生成的结论可以供另一个产生式作为已知事实使用, 以求得问题的解。 一般有三个基本部分组成:规则库、综合数据库和推理机。 推理机 规则库 综合数据库 产生式系统的基本结构 35
智能信息处理与仪器研究室 产生式系统的组成 ①规则库:用于描述某领域内知识的产生式集合,是某领域 知识(规则)的存储器,其中的规则是以产生式形式表示的。 规则库中包含着将问题初始状态转换成目标状态的那些变换 规则。规则库是专家系统的核心,也是一般产生式系统赖以 进行问题求解的基础。其中知识的完整性和一致性、知识表 达的准确性和灵活性以及知识组织的合理性,都将对产生式 系统的性能和运行效率产生直接的影响。 ②综合数据库:内容是动态变化的,又称事实库,用于存放 输入的事实,外部数据库输入的事实以及中间结果(事实) 和最后结果的 作区。 ③推理机:是一个或一组程序,用来控制和协调规则库与综 合数据库的运行,包含了推理方式和控制策略。 36
智能信息处理与仪器研究室 产生式系统的推理方式 正向推理 反向推理 双向推理 37
智能信息处理与仪器研究室 产生式系统的正向推理: 从已知事实出发, 通过规则库求得结论。又称为数据驱动 方式或自底向上的方式。 推理过程是: ①规则库中的规则与综合数据库中的事实进行匹配,得到匹 配的规则集合。 ②使用冲突解决算法,从匹配规则集合中选择一条规则作为 启用规则。 ③执行启用规则的后件。将该启用规则的后件送入综合数据 库或对综合数据库进行必要的修改。 重复这个过程直至达到目标。 缺点是:在推理过程中,可能会得出一些与目标无直接关系的 事实,造成计算空间和时间的浪费。 38
智能信息处理与仪器研究室 产生式系统的反向推理: 从目标(作为假设)出发, 反向使用规则求得已知事实。 又称为目标驱动方式或自顶向下的方式。 推理过程是: ①规则库中的规则后件与目标事实进行匹配,得到匹配的规 则集合。 ②使用冲突解决算法,从匹配规则集合中选择一条规则作为 启用规则 ③将启用规则的前件作为子目标。 重复这个过程直至各子目标均为已知事实,则反向推理的 过程就算成功结束。如果目标明确,使用反向推理方式的效率 是比较高的,常为人们所采用。 39
智能信息处理与仪器研究室 产生式系统的双向推理是一种既自顶向下、又自底向上的推理。推理 从两个方向同时进行,直至某个中间界面上两方向结果 相符便成功结束。这种方式较正向推理或反向推理所形 成的推理网络来得小,从而推理效率更高。 40
智能信息处理与仪器研究室 产生式表示法的特点 清晰性。产生式表示格式固定、形式简单,规则间相互 独立,知识库建立容易,处理简单。 模块性。知识库(包括推理机和综合数据库)与推理机 是分离的,这种结构给知识库的修改带来方便,无需修 改程序,对系统的推理路径也容易做出解释。因此产生 式表示法常作为建造专家系统首选的知识表示方法。 自然性。产生式表示法用“如果…,则…”的形式表示 知识,符合人类的思维习惯,是人们常用的一种表达因 果关系的知识表示形式,既直观自然,又便于推理。另 外,产生式既可以表示确定性知识又可以表示不确定性 知识,更符合人们日常遇到的问题类型。 41
智能信息处理与仪器研究室 语义网络表示法 1968年奎廉(J. R. Quillian)在研究人类联想记忆时提出 的心理学模型(语义网络)。认为,记忆是由概念间 的联系实现的。随后在他设计的可教式语言理解器TLC 中将这种心理学模型用知识表示。 1972年,SIMON首先将语义网络表示法用于自然语言理 解系统。 用语义网络表示知识的系统主要有: 1.澳克研制的自然语言理解系统 2.麦托普拉斯的自然语言理解系统 3.西蒙的自然语言理解系统 4.卡鲍昆尔的回答地理问题的教学系统 5.海斯的描写概念的系统 42
智能信息处理与仪器研究室 语义网络的概念及结构 语义网络是通过概念及其语义关系来表示知识的一种网络图, 是一个带标注的有向图。其中,有向图的各节点用来表示各种概念、 事物、属性、情况、动作、状态等,节点上的标注用来区分各节点 所表示的不同对象,每个节点可以带有若干个属性,以表征其所代 表的对象的特性;弧是有方向的、有标注的,方向用来体现节点间 的主次关系,而其上的标注则表示被连接的两个节点间的某种语义 联系或语义关系。 一个简单的语义网络由一个三元组表示: (节点 1, 弧,节点 2) 这种有向图称为基本网元,A和B代表节点 A R B R表示AB之间的某种语义联系。 43
智能信息处理与仪器研究室 语义网络的概念及结构 把多个基本网元用相应的语义联系关联在一起时,就形成一 个语义网络。 R 2 A R 1 B R 4 R 3 C R 6 D R 5 E F R 7 R 8 G 在语义网络中,节点还可是一个语义子网络,语义网络实 质上是一种多层次的嵌套结构。 44
智能信息处理与仪器研究室 与谓词逻辑表示法 产生式表示法的关系 从谓词逻辑表示法来看:一个基本网元相当于一组一阶二元谓 词。三元组(节点 1, 弧,节点 2)可写成P(个体 1, 个体 2), 其中, 个体 1、个体 2分别对应节点 1、节点 2, 而弧及其上标注的节点 1 与节点 2的关系由谓词P来体现。 产生式表示法是以一条产生式规则作为知识的单位,各条产生 式规则之间没有直接的联系。而语义网络则不同,它不仅将基 本网元视做一种知识的单位,而且各个基本网元之间以是相互 联系的。人脑的记忆便是由存储大量的这种基本网元来实现的。 45
智能信息处理与仪器研究室 语义网络表示知识的方法 事实性知识的表示方法 颜色 是一种 白色的 雪 雪的语义网络 生活在山间 山鸡 山鸡的语义网络 鸡 有生命 会飞 红冠 AKO 鸡 山鸡 AKO 食谷类 飞禽 产卵 AKO 能吃食 动物 有繁殖能力 能运动 鸡的语义网络 概念的属性具有继承的特性,即下层概念可以继承上层概念的属 性。这种继承属性在后面介绍的框架表示法和面向对象表示法中 46 都会涉及到。
智能信息处理与仪器研究室 语义网络表示知识的方法 规则性知识的表示方法 语义网络也可以用来表示规则性知识。例如:“如果A, 那么B” 是一条表示A和B之间因果关系的规则性知识,如果规定语义关 系RAB的含义就是“如果…,那么…”,则上述知识可表示成 A RAB B 这样规则性知识与事实性知识的语义网络表示是相同的,区 别仅是弧上的标注不同。 47
智能信息处理与仪器研究室 语义网络表示知识的步骤 ①确定问题中的所有对象以及各对象的属性。 ②确定所讨论对象间的关系。 ③语义网络中,如果节点间的联系是ISA/AKO, 则下层节点 对上层节点的属性具有继承性。整理同一层节点的共同 属性, 并抽出这些属性,加入上层节点中,以免造成属 性信息的冗余。 ④将各对象作为语义网络的一个节点,而各对象间的关系 作为网络中各节点问的弧,连接形成语义网络。节点可 代表一个事物或一个具体概念,也可代表某种情况、事 件或某一动作。当节点表示某种事件或某一动作时,可 以从该节点引出一组向外的弧,用于指出事件的因果或 动作的主体及客体。 48
智能信息处理与仪器研究室 语义网络中常用的语义联系反映了节点间的语义关系。常用的语义联系有: ①ISA/AKO联系 用来表示事物间抽象概念上的类属关系。体现一种具体与抽象的层次分 类。上、下层节点间具有属性继承性。 张宁 ISA 学生 苹果树 AKO 果树 ②Part-of联系 用来表示某一事物的部分与整体间的关系,或者说表示一种包含关系。 这种联系不具有继承性。 两只手 Part-of 人体 49
智能信息处理与仪器研究室 语义网络中常用的语义联系 ③IS联系 用于表示一个节点是另一节的属性。例如:“老张是 40岁”,“小刘很 漂亮” IS IS 老张 40岁 漂亮 小刘 ④Composed-of联系 用于表示“构成”关系,是一种一对多联系,它所联系的节点间不具有属 性继承性。例如,“整数由正整数、负整数及零组成”可表示成 正整数 整数 Composed-of 与 零 负整数 50
智能信息处理与仪器研究室 语义网络中常用的语义联系 ⑤Have联系 表示属性或事物的“占有”关系,节点间的属性不具有继承性。 例如:张三有一支钢笔 Have 张三 一支钢笔 ⑥Located联系 用来表示事物间的位置关系,节点间的属性不具有继承性。 例如:加油站位于桃园路 加油站 Located 桃园路 ⑦If-then联系 用于表示规则性知识。指出两个节点间的因果关系。 例如:如果A, 那么B If-then A B 51
智能信息处理与仪器研究室 语义网络表示下的推理过程 不同的知识表示方法其相应的推理机理也不是不同的。语 义网络表示下的推理方法没有逻辑表示法和产生式表示法的推 理方法间明。 用语义网络表示的问题求解系统由两部分构成:一是由语 义网络构成的知识库,其中存放了许多已知事实的语义网络; 一是用于求解问题的解释程序-即推理机。 语义网络的推理方法一般有两种: ①匹配推理 ②继承推理 52
智能信息处理与仪器研究室 匹配推理 (1) 根据提出的待求解问题,构造一个局部网络或网络片 段. 其中有的节点或弧的标注是空的,表示有待求解 的问题, 称做未知处。 (2) 根据这个局部网络或网络片段到知识库中寻找可匹配 的语义网络, 以便求得问题的解答。当然,这种匹配 不一定是完全的匹配,而是某种近似匹配,具有不确 定性。因此需考虑匹配的程度,以解决不确定性匹配 问题。 (3) 问题的局部语义网络与知识库中的某语义网络片段相 匹配时,则与未知处相匹配的事实就是问题的解。 53
智能信息处理与仪器研究室 继承推理 在语义网络上,具有类属关系的概念间其属性具 有继承性。继承推理比较符合人类的思维过程,一般 有值继承和过程继承两种。 值继承 也叫属性继承,一般适用于语义联系ISA 和AKO等之间的语义推理。在这些语义联系下的推理是 一种直接继承。 如,青砖是一种砖,而砖的形状是长方体,由此可 以推断,青砖的形状也是长方体。青砖在形状这个属 性的值就是从砖的形状继承下来。 54
智能信息处理与仪器研究室 继承推理 过程继承 也叫方法继承,是表示语义网络中下层节点的某 些属性值并不是从上层节点直接继承下来的,而是通过计算才 能得到,但它的计算方法却是从上层节点继承下来的。所继承 的是有关某属性值的计算过程或计算方法。 如空心砖是一种砖,空心砖的“形状”之值可以从砖的“ 形状”直接继承,但是空心砖的“重量”属性却不能从砖的“ 重量”属性直接继承,它继承的只是计算砖的重量的过程-长× 宽×高×比重 此外,也可将语义网络引入逻辑含义,表示出~、∧、∨ 等关系,可使用归结推理法在语义网络中进行推理。有人将语 义网络上的节点看成有限自动机,为寻求几个概念间的联系, 启动相应的自动机,如存在会合点便可求得解答。 55 语义网络是一种重要的知识表达方法。
智能信息处理与仪器研究室 语义网络表示法的特点 ① 结构性。语义网络表示法是一种结构化的知识表示方法。它能将事物 的属性以及事物间的各种语义联系显式地表示出来. 下层概念节点可以继 承、补充、变羿上层概念的属性, 从而实现信息的共享。 ② 自然性。语义网络实际上是一个带有标识的有向图,可直观地把事物 的属性及事物间的语义联系表达出来,便于理解,自然语言与语义网络之 间的转换也比较容易实现。 ③ 联想性。语义网络最初是作为人类联想记忆模型提出来的, 其表示方法 着重强调事物间的语义联系,由此可把各节点间的联系以明确简洁的方式 表现出来,通过这些联系很容易找到与某一节点有关的信息。便于以联想 的方式实现对系统的检索,使之具有心理学中关于联想的特点,这种自索 引能力能有效地避免搜索时遇到的组合爆炸问题。 ④非严格性。语义网络的缺点是没有公认的形式表示体系或者说表示没有 严格性。能过语义网络实现匹配的推理,不能保证其结果的正确性。 56
例5 智能信息处理与仪器研究室 用语义网络表示下列命题: (1)树和草都是植物 (2)树和草是有根、有叶的 (3)水草是草,且长在水中 (4)果树是树,且会结果 (5)苹果树是果树中的一种,它结苹果。 解: 按照前述的知识表示步骤来进行解题分析: (1)问题涉及的对象有植物、树、草、水草、果树、苹果树共 6种。各对 象的属性如下:树和草的属性:有根、有叶;水草的属性:长在水中; 果树的属性:会结果;苹果树的属性:结苹果。 (2)树和草与植物间的关系是AKO; 水草和草之间的关系是AKO; 果树与树之 间的关系是AKO; 苹果树与和果树间的关系是AKO。 (3)根据信息继承性原则,各上层节点的属性下层也都具有,在下层都不 再标出,以避免信息重复。 有根 有叶 会结果 AKO 树 AKO 草 AKO 果树 AKO 结苹果 植物 有根 有叶 AKO 水草 长在水中 苹果树 57
例6 智能信息处理与仪器研究室 用语义网络表示下列知识: 猎狗是一种狗,而狗是一种动物。狗除了动物的有生命、能吃食物、有繁殖能 力、能运动外,还有以下特点:身上有毛、有尾巴、四条腿;猎狗的特点是吃 肉、奔跑速度快、能狩猎、个头大;而狮子狗也是一种狗,它的特点是吃饲料、 身体小、奔跑速度慢、不咬人、供观赏。 解: (1)本知识涉及的对象有4个:猎狗、狮子狗、狗、动物。猎狗和狗都 是一种狗,除了它们本身的属性外,具有狗的一般特性:身上有毛、 有尾巴、四条腿。而狗是一种动物,动物所具有的属性它也具有。 (2)猎狗与狗之间是一种类属关系,狗与动物之间也是一种类属关系, 它们都可以用AKO表示。 (3)整理各对象节点之间的属性,使上层节点所具有的属性不再下层 节点中重复标出。 有生命 能吃食物 动物 AKO 狗 能运动 有繁殖能力 吃肉 跑得快 身上有毛 有有 尾四 巴条 腿 AKO 猎狗 狮子狗 能狩猎 个头大 供观赏 不咬人 个头小 58
智能信息处理与仪器研究室 例7 用语义网络表示下列事实: 上海交通大学一所具有百年历史的综合性大学,她位于上海市商业繁华的徐汇 区华山路。张文义同志今年 38岁,男性,中等身材,就职于上海交通大学。 (1)本事实涉及的对象包括:上海交通大学、上海市徐汇区华山路、张文义。 解: 各对象的属性如下。张文义: 38岁、男性、中等身材;上海交通大学: 百年历史、综合性大学;上海市徐汇区华山路:商业繁华。 (2)各对象间的关系:张文义和上海交通大学间的关系是“ 作于”;上海交 通大学和上海市徐汇区华山路间的关系是“位于”。若用WORK AT表示 作于 ,而用LOCATED表示位于,则可以得到本事实的语义网络为: 男性 中等身材 张文义 38岁 商业繁华 综合大学 WORK AT 上海交通大学 LOCATED 上海市徐汇区华山路 百年历史 59
例8 智能信息处理与仪器研究室 语义网络匹配推理举例。 山西大学是一个学校,位于太原市,建立时间是 1902年。这一事实的语义网络 如图所示。假若我们将要求解的问题是:山西大学位于哪个城市?如何利用语 义网络进行推理求解呢? 太原市 位于 山西大学 是一所 学校 建立于 1902年 解: 首先将待求解的问题表示成一个局部的语义网络如图所示: ? 位于 山西大学 是一所 学校 然后到语义网络系统的知识库中去匹配就会发现,与待求问题局部网络未 知处相匹配的事实是“太原市”。所以,这个问题的解就是太原市。 60
智能信息处理与仪器研究室 框架表示法 是以框架理论为基础发展起来的一种适应性强、概括性高、结 构化良好、推理方式灵活、且能把陈述性知识与过程性知识结 合的知识表示方法。 框架理论: 1975年,MINSKY在论文“A FRAMEWORK FOR REPRESENTING KNOWLEDGE”中提出了框架理论。它所针对的是人们在理解事 物情景或某一故事时的心理学模型,论述了人们理解问题的一 种思想方法。 61
智能信息处理与仪器研究室 框架理论的基本观点 人脑中已存储有大量事物的典型情景,也就是人们对这些事物 的一种认识,这些典型情景是以一个称做框架的基本知识结构 存储在记忆中的,当人们面临新的情景时,就从记忆中选择( 粗匹配)一个合适的框架,这个框架是以前记忆的一个知识空 框,而其具体内容要依新的情景而改变,通过对这个空框的细 节进行加 、修改和补充,形成对新的事物情景的认识,而这 种认识的新框架又可记忆于人脑之中,以丰富人们的知识。 框架理论将框架视为知识的单位,将一组有关的框架联结起来 便形成框架系统。系统中的不同框架可以有共同节点,系统的 行为由系统内框架的变化来表现。推理过程是由框架间的协调 来完成的。 62
智能信息处理与仪器研究室 框架的定义及组成 框架是一种描述所论对象属性的数据结构。所论的对象 可以是一个事物、一个事件或者一个概念。一个框架由 若干个“槽”组成,每个“槽”又可划分为若干个“侧 面”。一个槽用于描述所论及对象的某一方面的属性, 一个侧面用于描述相应属性的一个方面。槽和侧面所具 有的属性值分别称为槽值和侧面值。槽值可以是逻辑型 或数字型的,具体的值可以是程序、条件、默认值或是 一个子框架。 63
智能信息处理与仪器研究室 框架的定义及组成 一般表示格式如下: 框架名 <槽名1> <侧面 11> <值 111>…<值 11 k 1> … <侧面 1 n 1> <值 1 n 11>…<值 1 n 1 kn 1> <槽名2> <侧面 12> <值 121>…<值 12 l 1> … <侧面 1 n 2> <值 1 n 21>…<值 1 n 2 ln 2> 64
智能信息处理与仪器研究室 框架的定义及组成 例如,描写“计算机主机”概念。 框架名:<计算机主机> 主机品牌:联想 1+1 生产厂商:北京联想集团公司 CPU: 品牌:INTEL 型号:P 4/2. 4 主板:品牌:QDI 型号:ATX VA 5 内存:品牌:现代 型号:DDR 容量: 256 MB 硬盘:品牌:SEAGATE 型号:ST 320423 A 容量: 20 G 65
智能信息处理与仪器研究室 用框架表示知识的步骤 框架是一种描述所论对象属性并反映相关各对象间的各种关系 的数据结构,并且可以视作知识的单位。一般表示步骤如下: (1)分析待表达知识中的对象及其属性,对框架中的槽进行合理 设置。 (2)对各对象间的各种联系进行考察。使用一些常用的名称或根 据具体需要定义一些表达联系的槽名,来描述上下层框架间的 联系。常用的槽名有: ISA槽(具有继承性)、AKO槽(具有继承性)、INSTANCE 槽(用来表示AKO的逆关系,具有继承性)、PART-OF槽(不具 有继承性)。 (3)对各层对象的“槽”及“侧面”进行合理的组织安排,避免 信息描述的重复。(象ISA槽AKO槽INSTANCE槽所联系的上下 层框架间具有继承性)。 66
智能信息处理与仪器研究室 框架表示下的推理方法与语义网络表示下的推理方法类似,即 遵循匹配和继承的原则,与语义网络类似,框架表示的问题求 解系统由两部分构成:一是由框架及其相互关联构成的知识库。 一是用于求解问题的解释程序-即推理机。前者的作用是提供求 解问题所需的知识;后者则是针对用户提出的具体问题,运用 知识库中的相关知识,通过推理对问题进行求解。 求解问题的匹配推理步骤如下: 67
智能信息处理与仪器研究室 框架表示下的推理方法 (1)把待求问题用一个框架表示出来,其中有的槽是空的,表示 待求解的问题,称做未知处。 (2)与知识库中已有的框架进行匹配。 (3)使用一种评价方法对预选框架进行评价,以便决定是否接受 它。 (4)若可接受,则与问题框架的未知处相匹配的事实就是问题的 解。 在这里需要指出的是,由于框架间存在继承关系,一个框架 所描述的某些属性及值可能是从它的上层框架那里继承过来的, 因此两个框架的比较要牵扯到它们的上层和上上层框架等,增 加了匹配的复杂性。 68
智能信息处理与仪器研究室 框架表示法的特点 结构性。善于表达结构性的知识,是一种结构化的知识表示 方法. 继承性。在框架网络中,下层框架可以继承上层框架的槽值 ,也可以进行修改、补充,形成对新事物的认识。 自然性。体现了人们在观察事物时的思维活动。 不足之处:不善于表达过程性的知识,因此经常与产生式 表示法结合起来使用,以取得互补的效果。 69
对框架表示法的研究 作 (1) (2) (3) 克莱顿等人研制了基于框架、基于生产式规则、面向过 程 的 通 用 性 专 家 系 统 具 ART(Automated Reasoning Tool) 。 (2) 美国Intellicorp公司研制了基于框架、基于生产式 规则、面向过程、面向对象的通用专家 具(Knowledge Engineering Environment)。 麻 省 理 大 学 人 智 能 实 验 室 研 制 了 框 架 语 言 FRL( Frame Representation Language)等。 70
例9 优质商品框架. 框架名: <优质商品> 商品名称: 生产厂家: 获奖情况: 获奖等级: 颁奖部门: 获奖时间: 单位(年, 月, 日) 智能信息处理与仪器研究室 在这个框架中, ”<>”中是框架名, 有三个槽, 槽名分别是”商品名 、“生产厂家”和“获奖情况”。其中“获奖情况”槽又包括三个 侧面名分别是“获奖等级”、“颁奖部门”和“获奖时间”。对于 时间”这一侧面,用“单位”指出了一个填值时的标准限制,要求 所填时间必须按年、月、日的顺序填写。 把具体情况填进槽或侧面后就得到一个实例框架 71
例10 教室框架. 框架名: <教室> 墙数: 窗数: 门数: 座位数: 前墙: <墙框架> 后墙: <墙框架> 左墙: <墙框架> 智能信息处理与仪器研究室 右墙: <墙框架> 门:<门框架> 窗:<窗框架> 黑板:<黑板框架> 天花板:<天花板框架> 地板:<地板框架> 讲台:<讲台框架> 72
智能信息处理与仪器研究室 例11 教师框架. 框架名: <教师> 姓名: 单位(姓、名) 年龄:单位(岁): 性别: 范围(男,女) 缺省: 男 职称: 范围(教授,副教授,讲师,助教) 缺省: <讲师> 部门: 单位(系,教研室) 住址:<住址框架> 窗:<窗框架> 资:< 资框架> 参加 作时间:单位(年,月) 73
例12 智能信息处理与仪器研究室 下面是一则关于地震的报道,用框架表示: 今天,一次强度为里氏 8. 5级的强烈地震袭击了下斯洛文尼亚地区,造成 25人 死亡和5亿美元的财产损失。下斯洛文尼亚地区主席说:多年来,靠近萨迪壕金 斯断层的重灾区一直是一个危险地区。这是本地区发生的第 3号地震。 框架名:<地震3> 地点:LOW SLABOVIA 时间:今天 伤亡人数: 25 财产损失: 500 000 震级: 8. 5 断层萨迪壕金斯 该框架也可以发展成框架系统,以描述更复杂、更广泛的事件。 框架名:<地震> ISA: <自然灾害> 地点: 时间: 伤亡人数: 财产损失: … 框架名:<洪水> ISA: <自然灾害> 地点: 时间: 伤亡人数: 财产损失: … 框架名:<飓风> ISA: <自然灾害> 地点: 时间: 伤亡人数: 财产损失: … 框架名:<自然灾害> INSTANCE: <地震>, <洪水> , <飓风> 地点: 时间: … 74
智能信息处理与仪器研究室 上述四个框架组成的“自然灾害”框架系统可以表示为下图: 自然灾害 ISA ISA 地震 地点 时间 伤亡人数 财产损失 洪水 飓风 震级 断层 75
智能信息处理与仪器研究室 面向对象表示法 1980年,施乐公司推出面向对象语言SMALLTALK-80. 近年来,在智能系统的 设计与构造中,使用面向对象的思想、方法和开发技术,并在知识表示、 知识库的组成与管理、专家系统的系统设计等方面取得了一定的进展。 面向对象的基本概念: 对象: 客观世界中的任何事物。 类 : 一组相似对象的抽象。 继承:一个类拥有另一个类的全部变量和操作。 封装:一个对象的数据只能由它的私有操作(方法)来改变,当一个 对象需要改变另一个对象的数据时,它只能向该对象发送消息。 是一种信息隐藏技术,是面向对象的主要特征。 面向对象的概念具有以下特点: 模块性、继承性、封装性、多态性、易维护性。 76
智能信息处理与仪器研究室 表示知识的方法 用面向对象方法表示知识时,需要对类的构成形式进行描述。 不同的面向对象语言所提供的类的描述形式不同。一般形式 如下: CLASS <类名> [:<父类名>] [<类变量名>] STRUCTURE <对象的静态结构描述> METHOD <关于对象的操作定义> RESTRAINT <限制条件> END 77
智能信息处理与仪器研究室 状态空间表示法 现实世界中的问题求解过程可以看作是一个搜索 或推理的过程。推理过程实际上也是一个搜索过程, 它要在知识库中搜索和前提条件相匹配的规则,利用 这些规则再进行推理。 任何问题求解的本质都是一个搜索过程。 状态空间表示法就是来表示问题及其搜索过程的 一种方法。是人 智能中最基本的形式化方法,也是 讨论问题求解技术的基础。 78
智能信息处理与仪器研究室 问题状态空间的构成 ①状态: 是描述问题求解过程中不同时刻状况的数据结构。一般用一组变量的 有序集合来表示。 Q=(q 0,q 1,…,qn) 其中每个元素q为集合的分量,称为状态变量。 ②算符:引起状态中某些分量发生变化,从而使问题由一个状态变为另一个 状态的操作称为算符。算符可分为走步、过程、规则、数学算子、运算符号 或逻辑符号等。 ③状态空间:由表示一个问题的全部状态及一切可用算符构成的集合称为该 问题的状态空间。它一般由三部分构成:问题的所有可能初始状态构成的集 合S; 算符集合F; 目标状态集合G. 用一个三元组表示如下: (S, F, G) 状态空间的图示形式称为状态空间图。其中,节点表示状态,有向边 (弧)表示算符。 ④问题的解:从问题的初始状态集S出发,经过一系列的算符运算,到达目标 状态。由初始状态到目标状态所用算符的序列就构成了问题的一个解。 79
智能信息处理与仪器研究室 用状态空间表示问题的步骤 ①定义状态的描述形式。 ②用所定义的状态描述形式把问题的所有可能的状态都表示出来。 ③定义一组算符。使得利用这组算符可把问题由一种状态转变为另 一种状态。 ④利用状态空间求解问题的过程。 问题的求解过程是一个不断把算符作用于状态的过程。首先将适 用的算符作用于初始状态, 以产生新的状态,然后再把一些适 用的算符作用于新状态,持续下去直到产生的状态为目标状态为 止. 这时,就得到了问题的一个解,这个解就是从初始状态到目 标状态所用算符构成的序列。 80
智能信息处理与仪器研究室 用状态空间表示问题的步骤 说明: 1. 可能有多个算符序列都可使问题从初始状态变到目标状态, 这就得到了多个解。使用算符最少或总代价最小的解称为最 优解。 2. 对任何一个状态,可使用的算符可能不止一个,这样由一个 状态所生成的后继状态就可能有多个,当对这些后继状态使用 算符生成更进一步的状态时,首先应对哪一个状态进行操作呢 ?这属于搜索策略问题,不同的搜索策略其操作的顺序是不同 的。 81
智能信息处理与仪器研究室 例13 二阶梵塔问题 已知三个柱子 1, 2, 3和两个盘子A、B(A比B小)。在初始状态下,A, B 依次放在柱 1上。目标状态是A, B依次放在柱 3上。条件是每次可移动一 个盘子,盘子上方是空顶方可移动,而且任何时候都不允许大盘放在 小盘之上。 解: 第一步:定义问题状态的描述形式。 设用SK=(SKA, SKB)表示问题的状态,SKA表示盘子A所在柱号, SKB表示盘子B所在的柱号。 第二步:用所定义的状态描述形式把问题的所有可能的状态都表示出来, 并确定出问题的初始状态集合描述和目标状态集合描述。本问题所有 可能的状态共有9种,各状态的形式描述如下: S 0=(1, 1), S 1=(1, 2), S 2=(1, 3) S 3=(2, 1), S 4=(2, 2), S 5=(2, 3) S 6=(3, 1), S 7=(3, 2), S 8=(3, 3) S 0 S 3 S 4 S 5 S 6 S 1 S 2 S 7 S 8 82
例13 二阶梵塔问题 智能信息处理与仪器研究室 已知三个柱子 1, 2, 3和两个盘子A、B(A比B小)。在初始状态下,A, B 依次放在柱 1上。目标状态是A, B依次放在柱 3上。条件是每次可移动一 个盘子,盘子上方是空顶方可移动,而且任何时候都不允许大盘放在 小盘之上。 解: 问题的初始状态集合为S={S 0}, 目标状态集合为G={S 8} 第三步:定义一组算符F. 定义算符A(i, j)表示把盘子A从i号柱子移到第j 号柱子上的操作;算符B(i, j)表示把盘子B从i号柱子移到第j号柱子上的 操作. 这样定义的算符组F中共有12个算符,它们分别是 A(1, 2), A(1, 3), A(2, 1), A(2, 3), A(3, 1), A(3, 2) B(1, 2), B(1, 3), B(2, 1), B(2, 3), B(3, 1), B(3, 2) 至此,该问题的状态空间(S, F, G)构造完成。这就完成了对问题的状态 空间表示。 为了求解该问题,根据该状态空间的9种可能状态和12种算符,构造 它的状态空间图。 83
智能信息处理与仪器研究室 例13 二阶梵塔问题 已知三个柱子 1, 2, 3和两个盘子A、B(A比B小)。在初始状态下,A, B 依次放在柱 1上。目标状态是A, B依次放在柱 3上。条件是每次可移动一 个盘子,盘子上方是空顶方可移动,而且任何时候都不允许大盘放在 小盘之上。 1, 1 解: 2, 1 A(1, 3) 3, 1 3, 2 2, 3 3, 3 B(1, 2) 1, 3 1, 2 A(3, 2) 2, 2 从初始节点(1, 1)(状态S 0)到目标节点(3, 3)(状态S 8)的任何 一条通路都是问题的一个解。但其中最短的路径长度是 3, 它由 3个算符组成,这 3个算符是A(1, 2), B(1, 3), A(2, 3). 84
例14 十五数码难题 智能信息处理与仪器研究室 目标棋局 15个棋子,每个棋子上、下、左、右, 可规定 15× 4= 60个规则。 但若用空格的移动上、下、左、右则可用 4个规则 代替上述 60个规则。 f 1空格上移,f 2空格下移,f 3空格左移,f 4 空格右移,状态图根据空格的上、下、左、右移 动来画出。 85
例14 十五数码难题 智能信息处理与仪器研究室 十五数码难题部分状态图 86
智能信息处理与仪器研究室 状态空间法 我们一般用状态空间法这一术语表示下述方法:从某个初始状态 开始,每次加一个操作符,递增地建立起操作符的试验系列,直 到达到目标状态为止。寻找状态空间的全部过程包括从旧的状态 描述产生新的状态描述,以及以后检验这些的状态描述,看其是 否描述了该目标状态。这样检验往往只是查看某个状态是否与给 定的目标状态相匹配。对于那些最优化问题,往往找到目标的任 一路径是不够的,还必须找到按某个准则实现最优化的路径。( 比如上一题的最少下棋步的人对于生成某个问题的状态描述,必 须确定 3件事:(1)依状态描述方式,特别是初始状态描述;( 2)操作符集合及其对状态描述的作用;(3)目标状态描述的特 性。) 87
例15 猴子和香蕉问题 智能信息处理与仪器研究室 在一个房间内有一只猴子、一个箱子和 一束香蕉,香蕉挂在天花板下方,但猴 子的高度不足以碰到它,那么这只猴子 怎样才能摘到香蕉? 用一个四元表列(W, X, Y, Z)来表示这个问题的状态 W猴子的水平位置 X当猴子在箱子顶上时,取X=1;否则取X= 0 Y箱子的水平位置 Z当猴子摘到香蕉时取Z= 1;否则取Z= 0 状态描述中应用了变量。 这个问题的操作(算符)如下: 88
例15 猴子和香蕉问题 智能信息处理与仪器研究室 在一个房间内有一只猴子、一个箱子和 一束香蕉,香蕉挂在天花板下方,但猴 子的高度不足以碰到它,那么这只猴子 怎样才能摘到香蕉? (1) goto(u)猴子走到水平位置u,用产生式规则表示为: (w, 0, y, z) goto(u) (u, 0, y, z) (2) pushbox(v)猴子把箱子推到水平位置v,即有: (w, 0, w, z) pushbox(v) (v, 0, v, z) (3) climbbox猴子爬上箱子顶,即有: (w, 0, w, z) climbbox (w, 1, w, z) 应用算符climbbox时也必须注意到,猴子和箱子应 当在同一位置上,而且猴子不在箱子顶上。 89
例15 猴子和香蕉问题 智能信息处理与仪器研究室 在一个房间内有一只猴子、一个箱子和 一束香蕉,香蕉挂在天花板下方,但猴 子的高度不足以碰到它,那么这只猴子 怎样才能摘到香蕉? (4) grasp猴子摘到香蕉,即有: (c, 1, c, 0) grasp (c, 1, c, 1) C是香蕉正下方的地板位置,应用算符grasp时,要 求猴子和箱子在位置C上,并且猴子已在箱子顶上。 90
例15 猴子和香蕉问题 智能信息处理与仪器研究室 在一个房间内有一只猴子、一个箱子和 一束香蕉,香蕉挂在天花板下方,但猴 子的高度不足以碰到它,那么这只猴子 怎样才能摘到香蕉? 由图看出,把该初始状 态变换为目标状态的操 作序列为 {goto(b), pushbox(c), climbbox, grasp} 91
例16 解: 智能信息处理与仪器研究室 有A、B、C三个不同刻度的瓶子,分别能装8 Kg, 5 Kg和3 Kg油。如果A瓶装满油,B和C是空瓶,怎 样操作三个瓶,使A中的油平分为两份?(设分 油的过程中不耗油) 分析问题: 初始状态(8,0,0) 目标状态(4,4,0) 设a,b,c分别表示三个瓶装的油。则a+b+c=8, a=8-(b+c) 所只要知道两个量b和c就能表示一种状态。 (1) 初始状态I={(0, 0)} (2) 目标状态G={(4, 0)} (3) 算符集合 F={f 1, f 2, ……, f 8} 92
例16 智能信息处理与仪器研究室 有A、B、C三个不同刻度的瓶子,分别能装8 Kg, 5 Kg和3 Kg油。如果A瓶装满油,B和C是空瓶,怎 样操作三个瓶,使A中的油平分为两份?(设分 油的过程中不耗油) f 1: 从A往B倒油,把B装满 f 2: 从C往B倒油,把B装满 f 3: 从A往C倒油,把C装满 f 4: 从B往C倒油,把C装满 f 5: 从B往A倒油,把B装空 f 6: 从B往C倒油,把B装空 f 7: 从C往A倒油,把C装空 f 8: 从C往B倒油,把C装空 搜索策略: (1)从点(0, 0)开始,在算子集合中按元素fi ( i=1, 2, ……, 8 ) 的足标 顺序每次选一个恰当算子作状态转移。如果找不到终点(4, 0)则停止。 (2)当找到终点后,则记录搜索路线,按策略(1)继续搜索,每找到一条新 路径则和上一条比较,记录一条最短路径。 93
智能信息处理与仪器研究室 例17 推销员旅行问题 一个推销员计划出访推销产品。他从一个城市 (如A)出发,访问每个城市一次,且最多一次,然后 返回城市A。要求寻找最短路线,如图所示。 这个问题要求为推销员寻找一条最短的旅行路线。他从某 个城市出发,访问每个城市一次,且只许一次,然后回到 出发的城市。这个问题的一般提法是:对由n个节点组成 的一个图的各条边,寻找一条最小费用的路径,使得这条 路径对n个节点的每个点只许穿过一次。 94
例17 推销员旅行问题 为了确定这个问题.作如下规定: (1)总数据库是到目前为止所访问过的 城市表。初始数据库被描述为表(A)。 我们不允许目录表中任一城市出现多于 一次,只有城市A例外、但也只有当所 有其它城市均已出现之后,才能再次出 现A。 (2)规则对应于决策:(a)下一步走向城 市A;(b)下一步走向城市B;…;(e)下 一步定向城市E。一条规则除非能够把 某个数据库变为一合法数据库,否则就 不适用于这个数据库。例如,应用“下 一步走向城市A”这条规则就不适用于 尚未出现所有其它城市的任一数据库。 (3)任一以A为起点和终点,并出现所有 其它城市的总数据库,都满足终止条件。 我们可以使用距离图表来计算任一旅程 的总距离。提出作为解答的任一旅程, 必须是具有最短距离的旅程。 智能信息处理与仪器研究室 95
智能信息处理与仪器研究室 问题归约法 问题归约(problem reduction):已知问题的描述,通过 一系列变换把此问题最终变为一个子问题集合;这些子问 题的解可以直接得到,从而解决了初始问题。 采用问题归约表示可由下列 3部分组成: (1) 一个初始问题描述 (2) 一套把问题变换为子问题的操作符 (3) 一套本原问题描述 问题归约的实质:从目标(要解决的问题)出发逆向推理, 建立子问题以及子问题的子问题,直到最后把初始问题规 约为一个平凡的本原问题集合。 96
智能信息处理与仪器研究室 问题归约法 梵塔难题 传说在印度佛教圣地拿勒斯的神庙里,安装着一个黄铜 板,板上插着三根宝石针。每根针高约 50厘米,据说印度教 主神梵天在创造世界的时候,在其中的一根针上从下到上串 上了由大到小的六十四片金片。这就是著名的梵塔。不论白 天和黑夜,都有一个值班的僧侣按照梵天不渝的法规把这些 金片在三根针上移来移去,一次只能移一片,并且要求不管 在哪一根针上,小片永远在大片的上面。当所有这六十四片 金片都从梵天创造世界时所放的那根针上移到另外一根针上 时,世界就将在一声霹雷中消失,梵塔也将随世界与之同归 于尽。 97
三阶梵塔问题: 智能信息处理与仪器研究室 有3个柱子(1,2和3)和3个不同尺寸的圆盘(A,B 和C)。最初,全部 3个圆盘都堆在柱子l上:最大的 圆盘c在底部,最小的圆盘A在顶部。要求把所有圆 盘都堆到柱子 3上,每次只许移动一个,而且只能 先搬动柱子顶部的圆盘,还不许把尺寸较大的圆盘 堆放在尺寸较小的圆盘上。 98
三阶梵塔问题: 智能信息处理与仪器研究室 用问题归约法解此问题: (1)要把所有圆盘都移至柱子 3,首先要把圆盘C移至柱 子 3,而且在移动圆盘C至柱子之前,要求柱子 3必须是空的。 (2)只有在移开圆盘A和B之后,才能移动圆盘C;而且 圆盘A和B最好不要移至柱子 3。否则就不能把圆盘C移至柱 子 3。因此,首先应把圆盘A和B移至柱子 2上。 (3)然后才能够进行关键的一步,把圆盘C从柱子 1移至 柱子 3,并继续解决难题的其余部分。 99
三阶梵塔问题: 智能信息处理与仪器研究室 原始难题归约(化简)为下列 3个子难题: (1) 移动圆盘A和B至柱子 2的双圆盘难题。 (2) 移动圆盘C至柱子 3的单圆盘难题。 (3) 移动圆盘A和B至柱子 3的双圆盘难题。 100
三阶梵塔问题: 智能信息处理与仪器研究室 梵塔问题归约图(与或图) 问题归约方法应用算符来把问题描述变换为子问题描述。所有 问题规约的目的是最终产生具有明显解答的本原问题。这些问 题可能是能够由状态空间搜索中走动一步来解决的问题,或者 可能是别的具有已知解答的更复杂的问题。 101
智能信息处理与仪器研究室 与或图表示法 我们能够方便地用一个类似图的结 构来表示把问题归约为后继问题的 替换集合,画出归约问题图。 例如,设想问题A 可由求解问题B和C解决 也可由求解问题D、E和F解决 或者由单独求解问题H来解决 这一关系可由右图所示的 结构来表示。图中各节点由它们所 表示的问题来标记。 102
智能信息处理与仪器研究室 在结构图中引入附加节点,以便使含有一个以上后继问题 的每个集合能够聚集在它们各自的父辈节点一下。 问题B和C构成后续问题的一个集合 ,为N 问题D、E和F构成另一后继问题集合 ,为M 则问题A被归约为单一替换子问题N、M和H 我们把节点N、M和H叫做或节点。 节点B、C、 D、E和F叫做与节点。各 个与节点用跨接指向他们后继节点的 弧线的小段圆弧加以标记,如图所示。 我们把这种结构图叫做与或图。 103
智能信息处理与仪器研究室 与或图的一些概念 节点 初始节点 终叶节点 后继节点 与节点 或节点 可解节点 不可解节点 父辈节点 104
智能信息处理与仪器研究室 与或图 模拟问题归约方法的相关结构是一个与或图。与或图中的起始节点对 应于原始问题描述。图中那些对应于本原问题的节点叫做终叶节点,用字 母t表示。 在与或图上执行的搜索过程,其目的在于表明起始节点是有解的。与 或图中一个可解节点的一般定义可以归纳如下: (1)终叶节点是可解节点(因为它们与本原问题相关连)。 (2)如果某个非终叶节点含有或后继节点,那么只有当其后继节点至少 有一个是可解的时,此非终叶节点才是可解的。 (3)如果某个非终叶节点含有与后继节点,那么只要当其后继节点全部 为可解时,此非终叶节点才是可解的。 有解节点用小圆点表示,而解图用粗线分支表示。 105
智能信息处理与仪器研究室 与或图 当与或图中某些非终叶节点完全没有后继节点时,我们就说它是不 可解的。这种不可解节点的出现可能意味着图中另外一些节点(甚至起 始节点)也是不可解的。 不可解节点的一般定义归纳于下: (1)没有后裔的非终叶节点为不可解节点。 (2)如果某个非终叶节点含有或后继节点,那么只要当其全部 后裔为不可解时,此非终叶节点才是不可解的。 (3)如果某个非终叶节点含有与后继节点,那么只要当其后裔 至少有一个为不可解时,此非终叶节点才是不可解的。 不可解节点用小圆圈表示。 106
智能信息处理与仪器研究室 与或图例子 107
智能信息处理与仪器研究室 与或图例子 108
智能信息处理与仪器研究室 与或图例子 109
智能信息处理与仪器研究室 与或图例子 110
智能信息处理与仪器研究室 与或图表示法 综上所述,可把与或图的构成规则概括如下: (1)与或图中的每个节点代表一个要解决的单一问题或问题集合。图中 所含起始节点对应于原始问题。 (2)对应于本原问题的节点,叫做终叶节点,它没有后裔。 (3)对于把算符应用于问题A的每种可能情况,都把问题变换为一个子 问题集合;有向弧线自A指向后继节点,表示所求得的子问题集合。 (4)为了区别于或节点,我们把具有共同父辈的与节点后裔的所有弧线 用另外一段小弧线连接起来。 (5)在特殊情况下,当只有一个算符可应用于问题A,而且这个算符产 生具有一个以上子问题的某个集合时,由上述规则 3和规则 4产生的 图可以得到简化。 111
智能信息处理与仪器研究室 练习:下列与或图有无解,有几个解 112
智能信息处理与仪器研究室 问题归约机理 问题归约技术,成功把状态空间搜索问题归约为越来 越简单的搜索问题,直到所有问题能够被归约为平凡解为 止。把三元状态(S, F, G)规定的状态空间搜索问题归约为比 较简单的一些状态空间搜索问题。如果我们能够识别某个 适当的“路标”状态序列g 1, g 2, ……, gn, 那么我们就能够 把初始问题规约为由三元状态(S, F, {g 1}),({g 1}, F, {g 2}), ……,({gn}, F, G)规定的问题集合。解答所有这些问题与 等价于解答该初始问题。 重点:选取关键算符 寻求候选关键算符的一种方法涉及计算机某个问题( S, F, G)的差别。 113
智能信息处理与仪器研究室 关键算符 对于许多状态空间的搜索问题,要推测一 个状态空间算符的特性并不是太困难的。也就 是说,尽管寻求某个解答中整个算符序列的问 题是困难的.但是规定这些算符中的一个却往 往是容易的。当应用该算符中的一个被认为是 问题求解的决定性步骤时,寻找这样一个算符 的可能性就增加了。 例如,对我们前面讨论过的梵塔问题,“ 移动圆盘c至柱子 3”这个算符可被选为问题求 解的决定性步骤。 我们把这种具有决定性作用的算符叫做关 健算符。 114
智能信息处理与仪器研究室 关键算符 当某个关键算符被决定时,它可被用来辨 别问题归约过程中的路标。假设F中的某个f是 由三元状态(S,F,G)表示的问题的关键算符。 既然我们认为f必定要应用,所以(S,F,G)表 示第一个后裔问题是一个对应于寻找一条通向 某一f适用的状态的路径问题。Gf表示f适用的 所有状态的集合。由此,我们设立了一个由(S, F,Gf)描述的子问题。从而问题得到简化。于 是问题就可以这般规约下去。 115
智能信息处理与仪器研究室 差别 寻找候选关键算符的一种方法涉及计算某个 问题(S,F,G)的差别。粗略地说,问题(S,F,G) 的差别就是用S的元对由集合G规定的目标进行调 试失败原因的部分表列(如果S的某个元是在G中, 那么此问题就获得解决,也就不存在差别)。 我们以猴子和香蕉问题为例来说明差别法在 关键算符选取中的应用。这里用(W, x, Y, z)来表 示问题的状态,用f 1,f 2,f 3,f 4依次分别代表 操作goto(u),pushbox(v) ,climbbox ,grasp 116
智能信息处理与仪器研究室 差别 首先,比较S 0和S 4(初始状态(a, 0, b, 0)与目标状态(c, 1, c, 1)), 发现差别为w,x,y,z,其值都不同,因而,4个操作的任何一个都可 选来作为关键操作以改变一个分量的值,从而缩小差别。这表示原问题 可以先规约为四个彼此独立的子问题。如果我们首先注意差别x,则关 键操作是f 3——让猴子先登上箱子,可应用f 3的状态是S 2,作用结果为 S 3,从而问题<S 0,F,S 4>归约为问题: <S 0,F,S 2> ,<S 3,{f 4},S 4> ,<S 2, {f 3} ,S 3> 后两个均为使用一次操作就可解的本原问题,我们只要比较S 0和S 2 的差别就行了。容易看出<S 0,F,S 2> 可规约为子问题: <S 0,{f 1},S 1>, <S 1,{f 2},S 2> 它们都是本原问题。 117
例 用四元数列结构表示四圆盘梵塔问 题,并画出求解该问题的与或图。 智能信息处理与仪器研究室 (1111)=>(3333) 解: 118
例 用四元数列结构表示四圆盘梵塔问 题,并画出求解该问题的与或图。 智能信息处理与仪器研究室 (1111)=>(3333) 解: 119
例 用四元数列结构表示四圆盘梵塔问 题,并画出求解该问题的与或图。 智能信息处理与仪器研究室 (1111)=>(3333) 解: 120
智能信息处理与仪器研究室 脚本表示法 由P. C. SCHANK又夏克基于概念依赖理论在 1975年提出,类似于 又夏克 框架,用一组槽来描述事件发生的序列,就像剧本中的事件序 列一样,故称为“脚本”或“剧本”。是框架的一种特殊形式。 概念依赖理论 在人类的各种知识中,常识性知识式数量最大、涉及面最 宽、关系最复杂的知识,很难把它们形式化的表示出来交给计 算机处理。面对这一难题,夏克提出了概念依赖理论;其基本 思想是:把人类生活中各种故事情节的基本概念抽取出来,构 成一组原子概念,确定这些原子概念的相互依赖关系,然后把 所有故事情节都用这组原子概念及其依赖表示出来。 121
智能信息处理与仪器研究室 脚本表示法 由于人的经历不同,考虑问题的角度和方法不同,因此抽象出来的原子概 念也不尽相同,但一些基本要求都是应遵守的。例如:原子概念不能有二义 性,个原子感念应相互独立等。 用原子概念及其依赖关系把生活中的事件编成剧本,每个剧本代表一类事 件,并把事件的典型情节规范化。当接收一个故事时,就找出一个相应的剧 本与之匹配,根据事先安排的剧本情节来理解故事。 一个脚本通常由开场条件、角色、道具、场景和结局组成: (1)开场条件:给出事件发生的前提条件。 (2)角色:表示事件中可能出现的人物的槽。 (3)道具:描述事件中可能出现的有关物体的槽。 (4)场景:描述事件发生的顺序,可以有多个场景,每个场景 又可以是其它的脚本。 (5)结局:给出事件发生后可能产生的结果。 122
P. C. SCHANK的餐厅脚本 智能信息处理与仪器研究室 (1)开场条件:顾客饿了,需要进餐;顾客有足够的钱。 (2)角色:顾客、服务员、厨师、老板。 (3)道具:食品、桌子、菜单、钱。 (4)场景: 第一场:进入餐厅 结局: 顾客进入餐厅 顾客吃了饭,不饿了 寻找桌子 顾客花了钱 在桌子旁边坐下。 老板挣了钱 第二场:点菜 服务员给顾客菜单。 餐厅食品少了 顾客点菜。 顾客把菜单还给服务员。 “李旭东走进大排档,要了一份 顾客等待服务员上菜。 大盘鸡,然后他就回家了。” 第三场:等待 服务员把顾客点的菜告诉厨师。 请问李旭东吃饭了吗? 厨师做菜。 第四场:吃菜 厨师把做好的菜给服务员。 与框架相比,脚本比较呆板,表达 服务员给顾客送菜. 知识的范围有限,适用于自然语言 顾客吃菜。 的理解,如理解故事情节。 第五场:离开 服务员拿来账单。 顾客付钱给服务员。 顾客离开餐厅。 123
智能信息处理与仪器研究室 Petri网表示法 1962年,德国学者Cah Abam Petri提出,用于构造系统模型 和进行动态特性的分析。 Petri网也可用来表示知识。 在Petri网表示法中,有3种基本元素:位置、转换和标记。 yk yj Pj ti Pk 其中,Pj和Pk分别代表第j和第k个位置,yj和yk是这两个位置的标 记,ti是某个转换。通常用Pj表示前提dj, 用Pk表示结论dk, 用ti 表示规则强度,则上述Petri网代表的产生式规则为 IF dj THEN dk(CF=ti) 124
智能信息处理与仪器研究室 Petri网表示法 对下述规则集 r 1: IF d 1 THEN d 2(CF=0. 85) r 2: IF d 2 THEN d 3(CF=0. 80) r 3: IF d 1 THEN d 4(CF=0. 90) 用Petri网表示如下: d 4 0. 9 d 3 d 2 d 1 0. 85 P 2 0. 8 P 3 125
过程表示法 语义网络、框架和剧本等知识表示方法,均是对知识和事实的一种静 止的表达方法,我们称这类知识表达方式为陈述式知识表达,它所强调的 是事物所涉及的对象是什么,是对事物有关知识的静态描述,是知识的一 种显式表达形式。而对于如何使用这些知识,则通过控制策略来决定。 和知识的陈述式表示相对应的是知识的过程式表示。所谓过程式表示 就是将有关某一问题领域的知识,连同如何使用这些知识的方法.均隐式 地表达为一个求解问题的过程。它所给出的是事物的一些客观规律,表达 的是如何求解问题。知识的描述形式就是程序,所有信息均隐含在程序之 中。从程序求解问题的效率上来说,过程式表达要比陈述式表达高得多。 但因其知识均隐含在程序中.因而难于添加新知识相扩充功能,适用范围 较窄。 过程式不像陈述式那样具有固定的形式,如何描述知识完全取决于具 体的问题。 126
八数码问题 下面以八数码问题为例,结出一种求解该问题的过程式描述。 我们用一个 3× 3的方格阵来表示该问题的一个状态.为叙述上的方 便,我们用a~i来标记这 9个方格,如图 1(a)所示。问题的目标状态设定 为图 1(b)。当任意给定一个初始状态后,求解该问题的过程如下; 图 1 127
八数码问题 (1)首先移动棋牌,使得棋子 1和空格均不在位置c上。 (2)依次移动棋牌,使得空格位置沿图 2(a)所示的箭头方向 移动,直到棋子 1位于a为止。 图 2 128
八数码问题 (3)依次移动将牌,使得空格位置沿图 2(b)所示的箭头方向移动, 直到数码2位于b为止。若这时刚好数码3在位置c,则转(6)。 (4)依次移动将牌,使得宝格位置沿图 2(c)所示的箭头方向移动 .直到数码3位于e为止。这时空格刚好在位置d。 经过以上4步,得到的状态如图 3(a)所示。其中“×”表示除空 格以外的任何将牌。 图 3 129
八数码问题 (5)依次移动将牌,使得空格位置沿图 2(d)所示的箭头方向移动, 直到空格又回到了d为止。此时状态如图 3(b)所示。 (6)依次移动将牌.使得空格位置沿图 2(e)所示的箭头方向移动, 直到数码4在位置f为止。若这时刚好数码5在位置i则转(9)。 (7)依次移动将牌、使得空格位置沿图 2(f)所示的箭头方向移动, 直到数码5位于e为止。这时空格刚好在位置d。 (8)依次移动将牌,使得空格位置沿图 2(g)所示的箭头方向移动, 直到空格又回到位置 6为止。 (9)依次移动将牌,使得空格位置沿图 2(h)所示的箭头方向移动, 直到数码6在位置h为止,若这时数码7、8分别在位置g和d,则问题得 解,否则,说明由所给初始状态达不到所要求的目标状态。 130
八数码问题 图 4给出了应用以上 过程求解一个具体的八 数码问题的例子,其中 (1)~(9)9个状态分别对 应了以上过程的(1)~ (9)9个步骤结束时所达 到的状态。 从图 4可以看出,这 样得到的解路显然不是 最佳的,但是按这样的 一种过程编写的计算机 程序具有非常高的求解 效率。 图 4 131
过程表示法 优点: 1. 效率较高 过程表示法是用过程表示知识的,而过程是一段程序,由于程序能准确地 表明先做什么,后做什么以及怎样做用户可直接将一些启发式的控制性知识嵌 入到过程中,因此可以避免选择及匹配那些无关的知识,也不需要跟踪那些不 必要的路径,从而提高了系统的运行效率。 2. 控制系统设计容易 由于控制性知识已融入程序中,因而控制系统设计容易,它仅起着解释过 程规则的作用。 局限性: 不易修改及添加新的知识,而且当对某一过程进行修改时,有可能影响到其 他过程,对系统的维护带来不便。 132
过程表示法 用过程表示法实现的系统主要有: 伍德研制的航班系统。在该系统中,问 题首先被翻译成函数,然后通过通用过程对 数据库进行查询,从而得到答案。 133
6e9f1ab29af0c51ecf210821dae79507.ppt