第12章-专家系统.ppt
《第12章-专家系统.ppt》由会员分享,可在线阅读,更多相关《第12章-专家系统.ppt(117页珍藏版)》请在三一文库上搜索。
1、第 12 章 专 家系 统,12.1 基本概念 12.2 系统结构 12.3 实例分析 12.4 系统设计与实现 12.5 开发工具与环境 12.6 专家系统的发展 习题十二,12.1 基 本概 念,12.1.1 什么是专家系统 自从1965年世界上第一个专家系统DENDRAL问世以来, 专家系统的技术和应用, 在短短的 40 余年间获得了长足的进步和发展。特别是20世纪 80 年代中期以后, 随着知识工程技术的日渐丰富和成熟, 各种各样的实用专家系统如雨后春笋般地在世界各地不断涌现。那么,究竟什么是专家系统呢? 顾名思义,专家系统(ES)就是能像人类专家一样解决困难、 复杂的实际问题的计算机
2、(软件)系统。,我们知道“专家”就是专门家, 是某一专门领域的行家里手。 专家之所以是专家, 是因为他(她)解决问题时具有超凡的能力和水平。 专家之所以具有超凡的能力和水平,是因为: (1) 专家拥有丰富的专业知识和实践经验, 或者说他(她)拥有丰富的理论知识和经验知识,特别是经验知识。 (2) 专家具有独特的思维方式, 即独特的分析问题和解决问题的方法和策略。,所以, 这两点就是一个专家所具备的基本要素。那么, 这两点自然也应该是专家系统所具备的基本要素。另外,专家只能是某一专门领域的专家;从效果看,专家解决问题一定是高水平的。因此,专家系统应该具备以下四个要素: (1) 应用于某专门领域。
3、 (2) 拥有专家级知识。 (3) 能模拟专家的思维。 (4) 能达到专家级水平。,所以,准确一点讲,专家系统就应该是:应用于某一专门领域, 拥有该领域相当数量的专家级知识, 能模拟专家的思维, 能达到专家级水平, 能像专家一样解决困难和复杂的实际问题的计算机(软件)系统。例如, 能模拟名医进行辨症施治的诊断医疗系统就是一种专家系统, 能模拟地质学家进行地下资源评价和地质数据解释的计算机(软件)系统, 也是一种专家系统。,12.1.2 专家系统的特点 同一般的计算机应用系统(如数值计算、 数据处理系统等)相比,专家系统具有下列特点: 从处理的问题性质看, 专家系统善于解决那些不确定性的、 非结
4、构化的、没有算法解或虽有算法解但在现有的机器上无法实施的困难问题。例如,医疗诊断、地质勘探、天气预报、市场预测、管理决策、军事指挥等领域的问题。 从处理问题的方法看,专家系统则是靠知识和推理来解决问题(不像传统软件系统使用固定的算法来解决问题), 所以, 专家系统是基于知识的智能问题求解系统。,从系统的结构来看, 专家系统则强调知识与推理的分离, 因而系统具有很好的灵活性和可扩充性。 专家系统一般还具有解释功能, 即在运行过程中一方面能回答用户提出的问题,另一方面还能对最后的输出(结论)或处理问题的过程作出解释。 有些专家系统还具有“自学习”能力, 即不断对自己的知识进行扩充、完善和提炼。这一
5、点是传统系统所无法比拟的。 专家系统不像人那样容易疲劳、遗忘,易受环境、情绪等的影响, 它可始终如一地以专家级的高水平求解问题。因此, 从这种意义上讲,专家系统可以超过专家本人。,12.1.3 专家系统的类型 关于专家系统的分类,目前还无定论。我们仅从几个不同的侧面对此进行讨论。 按用途分类,专家系统可分为:诊断型、解释型、预测型、决策型、设计型、规划型、控制型、调度型等几种类型。这些专家系统的功能大部分都是显然的,无须做过多解释, 而其中“解释”和“规划”与我们通常理解的有点差别。,这里的解释是对仪器仪表的检测数据进行分析、 推测得出某种结论。例如通过对一个地区的地质数据进行分析, 从而对地
6、下矿藏的分布和储量等得出结论。又如,通过对一个人的心电图波形数据进行分析, 从而对该人的心脏生理病理情况得出某种结论。显然,以上两种事情都是经验丰富的专家才能胜任的。而所谓“规划”, 就是为完成某任务而安排一个行动序列。例如, 对地图上的两地间找一条最短的路径、为机器人做某件事安排一个动作序列等。,按输出结果分类, 专家系统可分为分析型和设计型。 分析型就是其工作性质属于逻辑推理, 其输出结果一般是个“结论”, 如 1 中的前四种, 就都是分析型的, 它们都是通过一系列推理而完成任务的; 而设计型就是其工作性质属于某种操作, 其输出结果一般是一个“方案”,如1 中的后四种, 就都是设计型的,
7、它们都是通过一系列操作而完成任务的。 当然, 也可兼有分析和设计的综合型专家系统。例如, 医疗诊断专家系统就是一种综合型专家系统,诊断病症时要分析、推理, 而开处方即制定医疗方案时要设计、操作(如对药剂的取舍或增减等)。,目前所用的知识表示形式有:产生式规则、一阶谓词逻辑、框架、语义网等。所以, 按知识表示分类,可分为基于产生式规则的专家系统、基于一阶谓词的专家系统、基于框架的专家系统、基于语义网的专家系统等等。 当然, 也存在综合型专家系统。 知识可分为确定性知识和不确定性知识,所以,按知识分类, 专家系统又可分为精确推理型和不精确推理型(如模糊专家系统)两类。 ,按采用的技术分类, 专家系
8、统可分为符号推理专家系统和神经网络专家系统。符号推理专家系统就是把专家知识以某种逻辑网络(如:由产生式构成的显式或隐式的推理网络、 状态图、与或图,由框架构成的框架网络, 还有语义网络等)存储, 再依据形式逻辑的推理规则, 采用符号模式匹配的方法, 基于这种逻辑网络进行推理、搜索的专家系统。神经网络专家系统就是把专家知识以神经网络形式存储,再基于这种神经网络, 依据神经元的特性函数, 采用神经计算的方法, 基于这种神经网络实现推理、搜索的专家系统。,按规模分类, 可分为大型协同式专家系统和微专家系统。 大型协同式专家系统就是由多学科、多领域的多个专家互相配合、 同力协作的大型专家系统。这种专家
9、系统也就是由多个子(分)专家系统构成的一个综合集成系统。它所解决的是大型的、复杂的综合性问题, 如工程、社会、经济、生态、军事等方面的问题。微专家系统则是可固化在一个芯片上的超小型专家系统,它一般用于仪器、仪表、设备或装置上, 以完成控制、监测等功能。 按结构分类可分为集中式和分布式, 单机型和网络型(即网上专家系统)等。,12.1.4 专家系统与基于知识的系统 我们知道,专家系统能有效地解决问题的主要原因在于它拥有知识,但专家系统拥有的知识是专家知识, 而且主要是经验性知识。由专家系统的出现和发展而发展起来的基于知识的系统(KBS, 或者简单地称为知识系统), 其中的知识已不限于人类专家的经
10、验知识, 而可以是领域知识或通过机器学习所获得的知识等。这样,专家系统就是一种特殊的KBS, 或者说特殊的知识系统。 “专家系统”这一名词有时也泛指各种知识系统。一个知识系统, 不论其中的知识是否真的来自于某人类专家(如通过机器学习获得的知识就不是来自人类专家), 但是只要是其能达到“专家级”或本系统的能力能达到“专家级”水平, 则把这样的系统也称为专家系统。,12.1.5 专家系统与知识工程 由于专家系统是基于知识的系统,那么, 建造专家系统就涉及到知识获取(即从人类专家那里或从实际问题那里搜集、 整理、归纳专家级知识)、知识表示(即以某种结构形式表达所获取的知识, 并将其存储于计算机之中)
11、、知识的组织与管理(即知识库建立与维护等)和知识的运用(即使用知识进行推理)等一系列关于知识处理的技术和方法。特别是基于领域知识的各种知识库系统的建立, 更加促进了这些技术的发展。 所以,关于知识处理的技术和方法已形成一个称为“知识工程”的学科领域。这就是说,专家系统促使了知识工程的诞生和发展,知识工程又为专家系统提供服务。正是由于这二者的密切关系, 所以, 现在的“专家系统”与“知识工程”几乎已成为同义语。,专家系统是一种计算机应用系统。由于应用领域和实际问题的多样性, 因此, 专家系统的结构也就多种多样。但抽象地看, 它们还是具有许多共同之处。,12.2 系统结构,12.2.1 概念结构
12、从概念来讲, 一个专家系统应具有如图 12-1所示的一般结构模式。其中知识库和推理机是两个最基本的模块。 1. 知识库 (Knowledge Base, KB) 所谓知识库, 就是以某种表示形式存储于计算机中的知识的集合。知识库通常是以一个个文件的形式存放于外部介质上,专家系统运行时将被调入内存。知识库中的知识一般包括专家知识、领域知识和元知识。元知识是关于调度和管理知识的知识。知识库中的知识通常就是按照知识的表示形式、 性质、层次、内容来组织的, 构成了知识库的结构。,图 12-1 专家系统的概念结构,2. 推理机 (Inference Engine,IE) 所谓推理机, 就是实现(机器)推
13、理的程序。这里的推理, 是一个广义的概念,它既包括通常的逻辑推理,也包括基于产生式的操作。例如:,这里的B若是个“结论”, 则上式就是我们通常的假言推理; 若表示某种动作, 则上式就是一种操作。,推理机是使用知识库中的知识进行推理而解决问题的, 所以推理机也就相当于专家的思维机制,即专家分析问题、 解决问题的方法的一种算法表示和程序实现。 总之,知识库和推理机构成了一个专家系统的基本框架。 同时,这两部分又是相辅相成、密切相关的。因为不同的知识表示有不同的推理方式, 所以,推理机的推理方式和工作效率不仅与推理机本身的算法有关, 还与知识库中的知识以及知识库的组织有关。,3. 动态数据库 动态数
14、据库也称全局数据库、综合数据库、工作存储器、 黑板等,它是存放初始证据事实、推理结果和控制信息的场所, 或者说它是上述各种数据构成的集合。动态数据库只在系统运行期间产生、变化和撤消, 所以称为“动态”数据库, 且在图中用虚线包围。 需要说明的是, 动态数据库虽然也叫数据库, 但它并不是通常所说的数据库, 两者有本质差异。,4. 人机界面 这里的人机界面指的是最终用户与专家系统的交互界面。 一方面, 用户通过这个界面向系统提出或回答问题, 或向系统提供原始数据和事实等; 另一方面, 系统通过这个界面向用户提出或回答问题, 并输出结果以及对系统的行为和最终结果做出适当解释。 5. 解释模块 解释程
15、序模块专门负责向用户解释专家系统的行为和结果。 推理过程中, 它可向用户解释系统的行为, 回答用户“why”之类的问题,推理结束后它可向用户解释推理的结果是怎样得来的, 回答“how”之类的问题。,6. 知识库管理系统 知识库管理系统是知识库的支撑软件。知识库管理系统对知识库的作用, 类似于数据库管理系统对数据库的作用, 其功能包括知识库的建立、删除、重组;知识的获取(主要指录入和编辑)、维护、查询、更新;以及对知识的检查, 包括一致性、冗余性和完整性检查等等。,图 12-2 专家系统的理想结构,12.2.2 实际结构 另一方面, 实际问题中往往不仅需要推理, 而且还需要作一些其他处理。如在推
16、理前也可能还需要作一些预处理(如计算), 推理后也可能要作一些再处理(如绘图), 或者, 处理和推理要反复交替多次, 或经多路进行等等。这样以来, 就使得专家系统的实际结构可能变得多式多样。例如, 可以有图 12-3所示的实际结构。可以看出, 在这种实际结构中, 专家系统只作为整个系统的一个模块(称为专家模块)嵌套在一个实际的应用系统中, 而整个应用系统可能包含一个或者多个专家模块。,图 12-3 专家系统的实际结构示例,当然, 对于这种系统仍可称为专家系统, 但对于含有多于一个专家模块的系统, 实际上已是多专家系统(可能是多层的、 多路的、 多重的等)。另外,从图 12-3可以看出, 给通常
17、的各种应用系统添上专家模块也就是专家系统了。 这就是说, 专家系统实际与我们通常的计算机应用系统应该是融为一体的。 下面我们再举一个实际例子。 如图 12-4 所示。这是一个用于地质图件绘制的智能辅助系统, 其中就至少包含了两个专家模块, 一个是方法选择模块, 一个是图形评价模块。,图 12-4 地质图件绘制智能辅助系统结构,方法选择就是绘图方法选择,也就是绘图算法选择。这是绘图的第一步。绘图的算法很多,如距离加权平均法、三角剖分法、克里金法等。这些方法还可以再进行细分,其中克里金方法最为丰富, 它已形成一个体系。所以,绘图时选择合适的方法就是关键的一步。而这里就需要专家知识。 图形绘出后,
18、还要进行评价,以确定该图件的可用性。评价的原因是, 并非是只要按以上过程进行, 绘出的图形就是可用的。事实上,由于地质状况的复杂性和不确定性,就是专家所绘出的图形, 也不能绝对肯定符合地下的实际。换句话说, 我们所说的地质图件, 一般说来也只是对地下地质情况的某种近似描述。如果经评价,发现图形有明显的违反地质理论或常识的地方,或者其误差超过了某一限度, 则该图形就不能使用了。 那么, 怎样评价呢?这里也需要专家知识。,12.2.3 黑板模型 “黑板模型”是一种典型而流行的专家系统结构模式。 黑板模型首先于19731976年在美国Carnegie-Mellon大学开发的HEARSAY-系统中创立
19、, 又在HEARSAY中得到发展, 后来被许多系统所效仿和采用, 现在已是一种十分流行的知识系统结构模式。黑板模型主要由“黑板”、知识源和控制机构三大部分组成, 结构如图 12-5 所示。,图 12-5 黑板结构,1. 黑板(blackboard) 所谓“黑板”,就是一个分层的全局工作区(或称全局数据库)。 它用来存储初始数据、中间结果和最终结果。整个黑板被分为若干层, 每一层用于描述领域问题的某一类信息。 高层信息可以看作是下层信息的抽象(或整体),反之,下层信息可以看作是上层信息的实例(或部分)。,2. 知识源 (knowledge source) 所谓知识源, 就是一个知识模块。 黑板结
20、构中具有多个知识源, 每个知识源能用来完成某些特定的解题功能。知识源可以表示成过程、 规则集或逻辑断言等形式。一个知识源可以视为一个大规则, 其条件部分称为知识源先决条件, 动作部分称为知识源体。知识源的先决条件一旦与黑板状态匹配, 该知识源便被激活, 这时知识源体执行, 其结果将导致黑板状态的变化。知识源之间互相独立,它们只能通过黑板进行通信和互相调用。,3. 控制机构 控制机构是求解问题的推理机构, 由监督程序和调度程序组成。监督程序时刻注视着黑板状态,根据黑板状态采用某种策略选择合适的知识源,将其条件部分放入调度队列, 随后条件部分与黑板状态匹配,若匹配成功, 则将其动作部分放入调度队列
21、。动作部分的执行便又改变了黑板状态。调度程序通过选择所谓“聚焦”来优先使用队列中最重要、最有希望的知识源来执行。 黑板模型是一种适时推理模型,即系统能按“最适宜”的原则自行决定什么时候和怎样使用知识。在黑板模型中,解空间被组织成层次性结构, 层次结构中每一层上的信息都表示局部解,相应层次上的知识模块对这种信息进行处理, 生成更高级的局部解,直到最后的解。,理想的黑板模型中没有控制机制, 知识源含有领域知识且是自驱动的。这样, 每个知识源都“注视”着黑板上的状态信息,而且能“适时”地决定是否要对黑板进行操作。所以, 在理想黑板模型中, 各知识源实际上是并行执行的(这非常类似于现在的股票交易),
22、但在现有的串行环境下这种并行却难以实现。 因此, 才增设了控制机制等方法把黑板变成串行系统(这又类似于拍卖过程)。 当然, 这样就限制了黑板模型的潜在功效。,需指出的是,为了能在现有的串行硬件上保持黑板的并行能力, 人们在这方面做了不少工作, 提出了许多基于黑板的改进模型。例如,多黑板、分布式、将面向对象方法与黑板模型相结合等, 从而有效地解决了黑板模型的并行处理能力, 并推出了新一代黑板系统及其开发工具。 由上所述可看出, 黑板模型可以看作是产生式系统的特殊形式。,黑板模型适于求解那些大型、复杂且可分解为一系列层次化的子问题的问题。例如,在HEARSAY-中, 黑板被分为六个信息层, 每个信
23、息层对应着问题的一个中间表示层次。六个信息层分别为: (1) 参数层, 用于从语音信号中提取有意义的参数。有四种不同的参数, 统称为ZAPDASH 参数。 (2) 片段层,用于描述系统对语音信号的分割与归类。 此层主要包含音素与单音等信息。,(3) 音节层, 用于描述语音信号的音节划分。此层主要为由片段层上信息构成的音节信息。 (4) 单词层, 用于记录根据音节划分所识别出的孤立词信息。 (5) 词组层, 用于记录根据单词层中的词汇所生成的词组信息。 (6) 短语层, 用于记录多个词汇或词组构成的短语和句子信息。,12.2.4 网络与分布式结构 在网络环境下, 专家系统也可以设计成网络结构,
24、如“客户机/服务器”(Client/Server)结构(如图12-6(a)所示), 或浏览器/服务器(Browser/Server)结构(如图 12-6(b)所示)。 我们称后一种结构的专家系统为网上专家系统。当然, 图 12-6所示的结构仅是一种示意性的概念模型, 而且它也仅是为了适应网络环境而做成的一种模式。 分布式结构则是一种适合于分布式计算环境的专家系统。 例如那些多学科、多专家联合作业, 协同解题的大型专家系统, 就可以设计成分布式结构。 这类专家系统也就称为分布式专家系统。,图 12-6 专家系统的客户(机)/服务器结构及浏览器/服务器结构,12.3 实 例分 析,12.3.1 P
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 12 专家系统
链接地址:https://www.31doc.com/p-2986077.html