第二章 产生式系统
产生式系统

产生式系统产生式系统(production system)由波斯特(Post)于1943年提出的产生式规则(production rule)而得名。
人们用这种规则对符号进行置换运算。
1965年美国的纽厄尔和西蒙利用这个原理建立了一个人类的认知模型。
同年,斯坦福大学利用产生式系统结构设计出第一个专家系统DENDRAL。
产生式系统用来描述若干个不同的以一个基本概念为基础的系统。
这个基本概念就是产生式规则或产生式条件和操作对的概念。
在产生式系统中,论域的知识分为两部分:用事实表示静态知识,如事物、事件和它们之间的关系;用产生式规则表示推理过程和行为。
由于这类系统的知识库主要用于存储规则,因此有吧这类系统称为基于规则的系统(rule-based system)。
1、产生式系统的基本要素1.1产生式系统的组成产生式系统由三部分组成,即总数据库(Global Database),产生式规则库(Set of Product Rules)和控制策略(Control Strategies),各部分之间的关系如图1所示。
图1.产生式系统的主要组成1.1.1总数据库(Global Database)总数据库又称综合数据库、上下文、黑板等,用于存放求解过程中各种当前信息的数据结构,如问题的初始状态、事实或证据、中间推理结论和最后结果等,其中的数据是产生式规矩的处理对象。
数据库中的数据根据应用的问题不同,可以使常量、变量、谓词、表结构、图像等等。
例如,关于动物世界的产生式系统有如下数据库:…(Mammal Dog)(Eat Dog Meat)…从另一个角度,数据库可视为推理过程中间结果的存储池。
随着中间结果的不断加入,是数据库描述的问题状态逐步转变为目标状态。
1.1.2 规则库(Set of Product Rules)产生式规则库是某领域知识用规则形式表示的集合,其中包含将问题从初始状态转换到目标状态的所有变换规则。
当产生式规则中某条规则的前提与数据总库中的事实相匹配时,该规则库就被激活,并把其结论作为新的事实存入总数据库。
2.3--产生式表示法-

2019/12/9
中国矿业大学计算机学院
9
人工智能
2.综合数据库:
综合数据库又称为事实库,用于存放输入的 事实、从外部数据库输入的事实以及中间结果 (事实)和最后结果的工作区。当规则库中的某条 产生式的前提可与综合数据库中的某些已知事实 匹配时,该产生式就被激活,并把用它推出的结 论放入综合数据库中,作为后面推理的已知事实。
按产生式所表示的知识是否具有确定性分为: 确定性产生式系统和不确定性产生式系统;
按推理机的推理方向分为:正向、反向和双 向推理产生式系统。
(Lee, Age, 35) 其中,Lee是事实性知识涉及的对象,Age是该对象 的属性,而35岁是该对象属性的值。而老李、老张 是朋友,可表示成
(Friend, Lee, Zhang )
2019/12/9
中国矿业大学计算机学院
6
人工智能
而有些事实性知识带有不确定性和模糊性,若考虑不 确定性,这种知识就可以用四元组的形式表示如下
(对象,属性,值,不确定度量值)或 (关系,对象1,对象2,不确定度量值) 如不确定性事实性知识 “老李年龄可能是35岁”,这 里老李是35岁的可能性取90%,便可以表示成 (Lee, Age, 35,0.9) 而老李、老张是朋友的可能性不大,这里老李、老张 是朋友的可能性取20%,可表示成 (Friend, Lee, Zhang,0.2 )
(1) 匹配:匹配就是将当前综合数据库中的事 实与规则中的条件进行比较,如果相匹配,则这一 规则称为匹配规则。
2. 产生式系统

2 8 3 1 6 4 7 5
ห้องสมุดไป่ตู้
1 2 3 8 4
7 6 5
八数码难题的初始状态与目标状态
26
1/23/2019
四、产生式系统的工作方式
1.正向产生式系统(数据驱动控制) : 综合数据库:用状态描述 产生式规则:F规则--状态产生新状态
从初始状态出发,不断地应用F规则,直到产生 目标状态为止。
适用条件:初始节点数≤目标节点数
7
1/23/2019
八数码难题的产生式系统表示
综合数据库:以状态为节点的有向图。 状态描述: 3×3矩阵 产生式规则: IF<空格不在最左边>Then<左移空格>; IF<空格不在最上边>Then <上移空格> ; IF<空格不在最右边>Then <右移空格> ; IF<空格不在最下边>Then <下移空格> 。 控制系统: 选择规则:按左、上、右、下的顺序移动空格。 终止条件:匹配成功。 1/23/2019
8
三、产生式系统的基本过程
Procedure PRODUCTION 1. DATA←初始状态描述 2. until DATA 满足终止条件,do: 3. begin 4. 在规则集合中,选出一条可用于DATA的规则R 5. DATA←把R应用于DATA所得的结果 6. End
9
1/23/2019
三、产生式系统的基本过程
29
特点:效率高;复杂。
1/23/2019
2.3 特殊的产生式系统 一、可交换产生式系统 在某些产生式系统中。规则应用的次序对产 生的状态无影响,即从初始状态到目标状态不依 赖规则次序,因此可应用不可撤回式控制策略, 从而提高了产生式系统的效率,这类产生式系统 就是可交换的产生式系统。 例:基于归结方法的产生式系统
人工智能之产生式系统 (PPT 49张)

6
2/21/2019
二、产生式系统的例
八数码难题 由8个标有1-8的棋子和一个3×3的棋盘 组成。把8个棋子放在棋盘里,形成一个初始状态,然 后移动棋子,想办法达到规定的目标状态。在移动棋 子时,只能把棋子移进相邻的空格中。 2 8 3 1 2 3
1 6 4
7 5
8 4 7 6 5
图2.1 八数码难题的初始状态与目标状态
1
2/21/2019
常用的知识表示方法
非结构化方法
– –
逻辑表示法 产生式系统
框架 语义网络
QA3,STRIPS,DART,MOMO DENDRAL,MYCIN
结构化方法
– –
2
过程式知识表示法
2/21/2019
第二章 产生式系统
2.1 产生式系统概述 一、产生式系统的定义 产生式系统是人工智能系统中常用的一种程序 结构,是一种知识表示系统。 通常由以下三部分组成: 综合数据库 产生式规则集 控制系统
知识表示
知识是一切智能行为的基础,也是软件智能化的重要 研究对象。要使软件具有智能,就必须使它具有知识, 而要使软件具有知识,首先必须解决知识的表示问题。 所谓知识表示实际上就是对知识的一种描述,即用一 些约定的符号把知识编码成一组计算机可以接受的数 据结构。所谓知识表示过程就是把知识编码成某种数 据结构的过程。 一般来说,同一知识可以有多种不同的表示形式,而 不同表示形式所产生的效果又可能不一样。
设爬山函数CF(S) :不在目标位数码个数的 负值。
初始状态S0
2 8 1 6 7 3 4 5 1 2 3 8 4
目标状态Sg
7 6 5
CF(S0)= - 4 CF(Sg)= 0
2. 产生式系统

20
1/9/2020
回溯方法特点
1.只存储初始节点到当前节点的路径,占用空间较小。
2. 总的时间复杂性无法定论:
最好情况复杂性很低:当控制系统掌握较多的有关解的 知识时,则回溯次数大为减少,效率高。
(a) 设RD是可应用于D的规则集,任取r ∈RD, r作用 于D得 D’,设为D’= r (D),则r对D’ 可用(即:设D’ 的可用规则集为RD’,则r∈ RD’ ,即RD RD’ ); (每一条对D可应用的规则,对于对D应用一条可 应用的规则后所产生的状态描述仍是可应用的)
(可应用性)
31
1/9/2020
(b)设D满足目标条件,D的可用规则集为RD,任 取 r∈ RD ,用r作用到D产生状态D’ ,D’满足 目标条件。(如果D满足目标条件,则对D应
用任何一条可应用的规则所产生的状态描述也
满足目标条件) (可满足性)。
32
1/9/2020
(c)设D的可用规则集为RD,任取 r1, r2, …, rn ∈RD,依据(a)将r1, r2, …, rn依次作用到D 及产生的状态上,得状态Dn;设r1’, r2’, …, rn’ 是 r1, r2, …, rn的任意一个排列,用r1’, r2’, …, rn’依次作用到D及产生的状态上,得状态Dn’, 则Dn’= Dn (对D应用一个由可应用于D的规则 所构成的规则序列所产生的状态描述不因序列
9
1/9/2020
三、产生式系统的基本过程
步骤4是不确定的,只要求选出一条可用的规则
R,至于这条规则如何选取,却没有具体说明。
【人工智能导论】产生式系统

【⼈⼯智能导论】产⽣式系统
产⽣式系统
产⽣式系统是给定事实与推理规则,进⾏⾃动推理的推理系统。
产⽣式系统由3个部分组成:总数据库、产⽣式规则、控制策略。
总数据库是存放求解过程中各种当前信息的数据结构,包括已知事实与推理过程中得到的结论
产⽣式规则是⼀个规则库,存放形如"if <前提>, then <结论>" 的推理规则.
控制策略决定了推理过程中如何应⽤规则,即确定下⼀步应该选⽤什么规则,类⽐于图搜索中的图搜索策略(DFS,BFS,etc.)
产⽣式系统图搜索
初始事实数据初始节点
⽬标条件⽬标节点
产⽣式规则状态转换规则问题变换规则
规则集操作集
动态数据库节点(状态/问题)
控制策略搜索策略
按照搜索⽅向,产⽣式系统可分为正向推理、逆向推理和双向推理。
例正向推理设P1,P2,P3,P4为谓词公式或命题, 初始总数据库DB={P1},规则库R={R1:P1→P2,R2:P2→P3,R3:P3→P4},则推理步骤如下
1. P1∈DB,在规则库R中寻找到可⽤的规则R1:P1→P2,得到P2,当前DB={P1,P2}
2. P2∈DB,在规则库R中寻找到可⽤的规则R2:P2→P3,得到P3,当前DB={P1,P2,P3}
3. P3∈DB,在规则库R中寻找到可⽤的规则R3:P3→P4,得到P4,当前DB={P1,P2,P3,P4}
Processing math: 100%。
人工智能产生式系统

产生式系统产生式系统文档一、介绍1.1 目的本文档旨在提供关于产生式系统的详细信息,包括系统的定义、架构、工作原理以及相关的实际应用案例等。
1.2 背景随着技术的不断发展和应用,产生式系统成为了一种重要的智能处理方式。
本文档将对该系统进行全面介绍,旨在帮助读者了解并使用产生式系统。
二、系统定义2.1 什么是产生式系统产生式系统是一种基于规则库的推理机制,通过规则匹配与推理等算法,实现问题的求解和自动决策。
该系统由规则库、推理机以及知识库等组成。
2.2 系统构成产生式系统主要包括以下几个组成部分:- 规则库:存储了系统的规则集合,每条规则一般由前件和后件组成,用于进行规则匹配和推理。
- 推理机:负责根据规则集合和当前问题状态进行规则匹配和推理,推理链以及最终的推理结果。
- 知识库:存储了系统所需的领域知识,包括事实、规则和推理机制等,用于支持系统的推理过程。
- 用户界面:提供给用户与系统交互的界面,包括输入问题、展示推理结果等功能。
2.3 工作原理产生式系统的工作原理如下:- 根据用户输入的问题,系统将问题转化为内部可处理的形式。
- 推理机根据规则库和知识库进行规则匹配和推理,推理链。
- 根据推理链,系统得出最终的推理结果,并展示给用户。
三、系统应用3.1 实际应用案例1:医学诊断产生式系统可以应用于医学诊断领域,通过构建规则库和知识库,实现对病情的快速诊断和治疗建议。
3.2 实际应用案例2:智能客服产生式系统可以应用于智能客服领域,根据用户的问题和规则库,实现自动回答用户的咨询和解决问题。
四、附件本文档包括以下附件:- 附件一:规则库示例- 附件二:知识库示例五、法律名词及注释1.(Artificial Intelligence,简称):指通过模拟与复制人类智能的各种思维特征和行为,在某些特定领域或任务上展示出与人类相似的智能行为的科学和工程。
六、全文结束。
产生式系统

产生式规则案例——根据物体特征识别食物
设有规则库如下 P1:If on-c1 green Then put-on-c1 produce P2:If on-c1 packed in small container
Then put-on-c1 delicacy P3:If on-c1 refrigerated OR on-c1 produce Then put-on-c1 perishable P4:If on-c1 weight 15lbs AND on-c1 inexpensive AND NOT on-c1 perishable Then put-on-c1 staple P5:If on-c1 perishable AND on-c1 weight 15lbs Then put-on-c1 turkey P6:If on-c1 weight 15lbs AND on-c1 produce Then put-on-c1 watermelon 设现有物体的特征为:颜色为绿色;重量15磅 即Context——C1=(green,weight 15lbs)
上下文亦称当前数据库,用以存放问题求解过程中的各种 当前信息,它决定着产生式求解的当前状态是否可用
• 推理机:控制产生式的整个问题求解过程
推理机根据上下文的当前信息,在每一状态下识别上下文 匹配的所有触发产生式,在选择和决定启用一条触发产生式, 采用所启用的产生式的RRS改变上下文,改变后的上下文又 可触发新的产生式,驱使问题求解持续进行
处理单元的逻辑描述——产生式系统
产生式系统(Production System)的基本结构 • 规则库(Rule-Base):产生式规则的集合 规则的一般形式: R:IF RLS THEN RRS 即
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Z),产生式规则的依据是如下的重写规则: R1:C→(D,L) R2:C→(B,M) R3:B→(M,M) R4:Z→(B,B,M) 结束条件是生成出只包含M组成的数据库,即(M,…,M)。
用图搜索方式求解这个问题时,搜索得到的部分状态空间图。 图中只给出两条达到目标的路径和一条失败的路径。实际搜索时有可能 去探索更多的路径,往往导致效率降低。
重写问题的与或树
(3)若对D应用某一规则序列之后得到一个数据库D′(设
简例:给定一个整数集合{a,b,c},可通过把集合中任意
一对元素的乘积作为新元素添加到集合中的办法来扩大该整 数集,要求通过若干次操作后能生成出所需的整数集合来。
其综合数据库就可用集合表示,则问题的初始状态为{a,b,
c},设目标条件为具有a,b,c,ab,bc,ca这六个元素组 成的集合,初始状态可应用的规则集合为:
(1)可应用于D的规则集合,对用了其中任意一条规则之后 所生成的任何数据库,这个规则集合还适用; (2)满足目标条件的某个数据库D,当应用任何一个可应用 于数据库D的规则之后所生成的任何数据库,仍然满足目标 条件; 有一对应于D→D′的一条解路),则当改变D的可应用规则 集合中的规则次序后,仍然可求得解,即求得D′与使用满 足D的可应用规则集合中的规则次序无关。
八数码游戏
(1)综合数据库:通常用来表示综合数据库的数据结构有符号串、向量、 集合、数组、树、表格、文件等。该问题的综合数据库可以如下形式表 示:(Sij),其中1≤i、j≤3, Sij ∈{0,1,…,8},且互不相等。 (2)规则集合:移动一块牌(即走一步)就使状态发生转变。改变状态有4 种走法:空格左移、空格上移、空格右移、空格下移。可用4条产生式规 则来模拟
可交换的产生式系统
可交换性是指几条规则可以任意交换次序而不影响求解。但
要注意并不是所使用的整个规则序列可以重新排列,只有那 些最初可应用于初始数据库的规则才可交换,而对于生成的 数据库所添加的其他可应用规则,则不能随意交换。
一般来说,当一个产生式系统对任何一个数据库D都具 有如下性质时,这个产生式系统是可交换的:
整数集合生成问题的部分状态空间图
如果一个产生式系统可以分解为几个子问题,当子问题得以
求解时,则原始问题被求解。这样的产生式系统称为可分解 的产生式系统。
如果原始问题可以被划分为几个独立的子问题来求解,则可
以提高问题求解的效率。但在很多情况下,子问题之间并不 是完全独立的,它们之间会有某些方面的联系,这样的可分 解产生式系统可以表示为一个与或树(图)。
产生式系统的控制策略
控制策略可划分为两大类:
(1)不可撤回方式:爬山法
八数码游戏例: 用"不在位"将牌个数并取其 负值作为状态描述的函数- W(n)("不在位"将牌个 数是指当前状态与目标状态 对应位置逐一比较后有差异 的将牌总个数,用W本过程描述如下: 过程 SPLIT (1)DATA:=初始数据库 (2){Di}:=DATA的分解式;每个Di元素都看成单独的数据 库 (3)Until {Di}的所有元素都满足结束条件之前,do: (4)begin (5)从{Di}中选一个不满足结束条件的D* (6)从{Di}中删去D* (7)在规则集中选择一条可应用于D*的规则R (8)D:=R应用于D*的结果 (9) {di}:=D的分解式 (10)在{Di}上添加di (11)end
(2)回溯方式:在问题求 解过程中,有时会发现 应用一条不合适的规则 会阻挠或拖延达到目标 的过程。在这种情况下, 需要有这样的控制策略: 先试一试某一条规则, 如果以后发现这条规则 不合适,则允许退回去, 另选一条规则来试。
(3)图搜索方式:如果把问题求解过程用图或树的这种结构来描述,即图 中的每一个节点代表问题的状态,节点间的弧代表应用的规则,那么问 题的求解空间就可由隐含图来描述。图搜索方式就是用某种策略选择应 用规则,并把状态变化过程用图结构记录下来,直到得出解为止。