第9章专家系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人机界面
推理机
解释模块
知识库
动专家系统的理想结构
9.2 专家系统的结构
9.2.2 实际结构
上面介绍的专家系统结构,是专家系统的概念模型,或者说是只强调知识和推理 这一只要特征的专家系统结构。在实际问题中往往不仅需要推理,而且还要做一些其 它处理。例如,图9.3所示的实际结构可以看出,专家系统只作为整个系统的一个模 块嵌套在一个实际的应用系统中。
9.4 专家系统的设计与实现
9.4.7 系统结构设计
系统构成技术被称为人工智能的三大技术之一。所以,一个专家系统来讲,其 系统结构就显得非常重要。 一般来讲,系统结构设计模式有诸如独立式(一个“纯”专家模块)、混合式、 集中式、分布式、层次式以及“黑板模型”等。
9.4.8 人机界面设计
人机界面对于一个实用专家系统(特别是咨询型知识系统)来说至关重要。一个 专家系统一般有两个人机界面:一个是面向系统开发和维护者的;一个是面向最终 使用者的。
9.1专家系统的概念
9.1.3 专家系统的类型
1.按用途分类 按用途分类,专家系统可分为:诊断型、解释型、预测型、设计型、规划型、控制型、 调度型等几种类型。 2.按输出结果分类 按输出结果分类,专家系统可分为分析型和设计型。 3.按知识表示分类 按知识表示分类,可分为基于产生式规则的专家系统、基于一阶谓词的专家系统、基 于框架的专家系统、基于语义网络的专家系统等。 4.按知识分类 按专家系统分类,专家系统又可分为精确推理型和不精确推理型。 5.按技术分类 按采用的技术分类,专家系统可分为符号推理专家系统和神经网络专家系统。 6.按规模分类 按规模分类,可分为大型协同式专家系统和微专家系统。 7.按结构分类 可分为集中式和分布式,单机型和网络型。
9.1专家系统的概念
9.1.6 专家系统与人工智能
专家系统是一种计算机应用系统。从科学的范畴来讲,专家系统属人工智能 的一个分支,且是应用性最强、应用范围最广的一个分支。目前,专家系统已成为 当前计算机应用的热门研究方向。
9.2 专家系统的结构
9.2.1 概念结构
从概念来讲,一个专家系统应具有如图9.1所示的一般结构模式。
9.4 专家系统的设计与实现
9.4.6 推理机与解释功能设计
1.从哪里着手 推理机的推理是基于知识库中的知识进行的。所以,推理机就必须与知识库 及其知识相适应、相配套。 2.还应考虑些什么 对推理机本身而言,还要考虑推理的方式、方法和控制策略等。 3.算法设计与程序设计 对于一个基于规则的系统来说,前面产生式系统所采用的算法,或者图搜索 中所用的算法也就是这里的推理机所使用的算法。算法确定后,就可以进行程序 设计了。 4.解释机制如何实现 从系统的结构上讲,一般是把解释作为一个独立的模块,但实际上解释功能 也是与推理机密切相关的。因为要解释就必须对推理机进行实时跟踪。
9.4 专家系统的设计与实现
9.4.2 快速原型与增量式开发
所谓快速原型与增量式开发,就是在开发一个大型软件系统之前,先尽快地 建立一个简单的小型的系统“模型”-称为系统原型;然后,对原型进行扩充,即 在原型的基础上进行继续开发,即增量式开发。
9.4 专家系统的设计与实现
9.4.3 知识获取
知识获取大体有以下三种途径。 1.人工获取 即计算机人员与领域专家合作,对有关领域知识和专家知识,进行挖掘、搜 集、分析、综合、整理、归纳,然后以某种形式存入知识库。 2.半自动获取 即利用某种专门的知识获取系统,采取提示、指导或问答的方式。 3.自动获取 自动获取又可分为两种形式:一种是系统本身具有一种机制,使得系统在运 行过程中能不断地总结经验,并修改和扩充自己的知识库;另一种是开发专门的 机器学习系统,让机器自动从实际问题中获取知识,并填充知识库。
9.4 专家系统的设计与实现
9.4.1 一般步骤与方法
由于专家系统也是一种计算机应用系统,所以,一般来说,其开发过 程也要遵循软件工程的步骤和原则,即也要进行系统分析、系统设计等几 个阶段的工作。 1.系统总体设计 2.知识获取 3.知识表示与知识描述语言设计 4.知识库设计 、推理机制设计 、 总控与界面设计… 5.编程与调试 6.运行与维护
人机界面
推理机
解释模块
知识库
动态数据库
知识库管理系统 图9.1 专家系统的概念结构 1.知识库 (Knowledge Base) 所谓知识库,就是以某种表示形式存储于计算机中的知识的集合。 2.推理机(Inference Engine) 所谓推理机,就是实现(机器)推理的程序。这里的推理是一个广义的概念,它既 包括通常的逻辑推理,也包括基于产生式的操作。 3.动态数据库 动态数据库也称为全局数据库、综合数据库、工作存储器、黑板等,它是存放初 始证据事实、推理结果和控制信息的场所。
9.1专家系统的概念
9.1.2 专家系统的特点
专家系统具有下列特点: (1) 从处理问题的性质来看,专家系统善于解决那些不确定性的、非结构化的、 没有算法或虽有算法解但在现有的机器上无法实施的困难问题。 (2) 从处理问题的方法来看,专家系统则是靠知识和推理来解决问题,所以, 专家系统是基于智能问题来求解。 (3) 从系统的结构来看,专家系统则强调知识与推理的分离,因而系统具有很 好的灵活性和可扩充性。 (4) 专家系统一般还具有解释功能。 (5) 有些专家系统还具有“自学习”能力。 (6) 专家系统不像人那样容易疲劳、遗忘,易受环境、情绪等的影响,它可始 终如一地以专家级的高水平求解问题。
第9章 专家系统
9.1 专家系统的概念 9.2 专家系统的结构 9.3 专家系统的应用和发展概况 9.4 专家系统的设计与实现 9.5 专家系统开发工具与环境 9.6 新一代专家系统研究
9.1专家系统的概念
9.1.1 什么是专家系统
专家系统(Expert System)也称为专家咨询系统,它是一种智能计算机 (软件)系统。顾名思义,专家系统就是能像人类专家一样解决困难、复杂的实际 问题的的计算机(软件)系统。 准确一点讲,专家系统应该就是:应用于某一专门领域,拥有该领域相当数 量的专家级知识,能模拟专家的思维,能达到专家级水平,能像专家一样解决困 难和复杂的问题的计算机(软件)系统。
服务员 知识库 推理机 Web Server 知识库 推理机
Internet 人-机界面 客户(机) 人-机界面 客户(机)
图9.5 专家系统的客户(机)/服务器结 构及浏览器/服务器结构
9.2 专家系统的结构
9.2.4 黑板模型
1.黑板 所谓“黑板”,就是一个分层的全局工作区(或称全局数据库)。它用来存储初始 数据、中间结果集和族中结果。 2.知识源 所谓知识源,就是一个知识模块。黑板结构中也有多个知识源,每个知识源能 用来完成某些特定的解题功能。 3.控制机构 控制机构是求解问题的推理结构,由监督程序和调度程序组成。
9.5 专家系统开发工具与环境
9.5.1 专家系统开发工具
迄今已有数以百计的各种各样的专家系统开发工具投入使用。它们大致可分为 以下几类。 1.面向AI的程序设计语言 特别值得一提的是,今年来,面向对象程序设计异军突起。因而,现在面向对 象程序设计语言也成为一种人工智能程序设计语言。 2.知识表示语言 这是针对知识工程发展起来的程序设计语言,因此也称为知识工程语言。 3.外壳系统 外壳系统也称为骨架(Frame),这种工具通常提供知识获取模块、推理机制、 解释功能等,只要加上领域专门知识,即建立起知识库就可以构成一个专家系统。 4.组合式构造工具 这种工具使用户可以选择各种组成部件,非常方便地进行组合。 5.专家系统工具RST EST是一个通用专家系统开发工具,它的核心是专家系统设计语言ESL。
9.1.5 专家系统与知识工程
由于专家系统是基于知识的系统,那么,建造专家系统就涉及知识获取 (Knowledge Acquisition)-即从人类专家那里或从实际问题那里搜集、整理、归纳 专家级知识,知识表示(Knowledge Represention)-即以某种结构形式表达所获取 的知识,并将其存储于计算机之中。现在关于知识处理的技术和方法已形成一个称 为“知识工程”的学科领域。正是由于这二者的密切关系,所以,现在“专家系统” 与“知识工程”几乎称为同义词。
控制机构 监督程序 调度程序
层次n ... 层次2 层次1
知识源1 知识源2 ... 知识源n
图9.6 黑板结构
9.3 专家系统的应用与发展状况
9.3.1 专家系统的意义
专家系统是一种智能计算机系统,所以,专家系统将计算机的应用提高到了一 个新的高度和水平。专家系统的建立,一方面,实现了人类专家的“分身”和“延 年”。另一方面,建造专家系统可以可以使专家本人得到提高和发展。
9.2 专家系统的结构
9.2.1 概念结构
4.人机界面 这里的人机界面指的是最终用户与专家系统的交互界面。 5.解释模块 解释程序模块专门负责向用户解释专家系统的行为和结果。 6.知识库管理系统 知识库管理系统是知识库的支撑软件。知识库管理系统主要在专家系统的开发 阶段使用,所以,它的生命周期实际和相应的专家系统一样。对如图9.1所示的结构 再添上自学习模块,就称为更理想的一种专家系统结构。
9.5 专家系统开发工具与环境
9.5.2 专家系统开发环境
随着专家系统技术的普及与发展,人们对开发工具的要求也越来越高。一个好 的专家系统开发工具应向用户提供多方面的支持,包括从系统分析、知识获取、程 序设计到系统调试与维护等全部服务。于是,专家系统开发环境应用而生。 专家系统开发环境就是集成化了的专家系统开发工具包。提供的功能主要有以 下几种。 1) 多种知识表示。 2) 多种不精确推理模型。 3) 多种知识获取手段。 4) 多样的辅助工具。 5) 多样的友好用户界面 6) 广泛的适应性。
总控
专 家 模 块 1
处 理 模 块 n
处 理 模 块 1
专 家 模 块 m
图9.3 专家系统的实际结构示例
9.2 专家系统的结构
9.2.3 分布式结构
在网络环境下,专家系统也可以设计成分布式结构,如“客户机/服务器”结构 (如图9.5(a)所示),或者浏览器/服务器结构(如图9.5(b)所示)。我们称后一种结构 的专家系统为网上专家系统。
9.4.4 知识表示与知识描述语言设计
知识表示是指根据所获得知识的特点,选择或设计某种知识表示形式, 并为这种表示形式设计相应的知识描述语言,所谓知识描述语言,就是知 识的具体语法形式。
9.4 专家系统的设计与实现
9.4.5 知识库与知识库管理系统设计
知识库是专家系统的核心。知识库的质量直接关系到整个系统的性能 和效率。因此,知识库涉及知识的组织和管理。 1.知识库设计 知识库设计主要是设计知识库的结构,即知识的组织形式。专家系统中 所涉及的知识库,一般取层次结构或网状结构模式。 2.知识库管理系统设计 知识库管理系统应包括知识一级和知识库一级的各种管理功能。 1) 知识操作功能设计 知识操作功能包括知识的添加、删除、修改和查询等。 2) 知识检查功能设计 知识检查包括知识的一致性、完整性、冗余性等检查。 所谓知识的一致性,就是知识库中的知识必须是相容的,即无矛盾。 所谓知识的完整性,是指知识中的约束条件,称为完整性约束。 所谓冗余性,就是重复、多余等。 3) 知识库操作设计 知识库操作包括知识库的建立、删除、分解、合并等。
9.1专家系统的概念
9.1.4 专家系统与知识系统
对于广义的知识系统论来说,专家系统就是一种特殊的知识系统。 但现在,“专家系统”这一名词有时也泛指各种知识系统。也就是说,狭义地 讲,专家系统就是人类专家智慧的复制,是人类专家的某种化身。广义地讲,专家 系统也泛指那些具有“专家级”水平的知识系统,甚至各种知识系统。
9.3.2 专家系统的应用
由于专家系统是一种计算机应用系统,所以,其应用范围没有什么限制。如它 可以代替高级医生看、开处方,可以协助地质专家估计矿藏量等等。从应用领域来 看,在诸如农业咨询、工业控制、地质勘探、天气预报、数据解释、医疗诊断、法 律咨询、系统仿真、企业管理、军事指挥等领域都可以使用专家系统。
相关文档
最新文档