ArtificialIntelligence(AI)人工智能第四章:专家系统内容提要第六章:专家系统4.1概述4.2基于规则的专家系统4.3基于框架的专家系统4.4基于模型的专家系统4.5基于Web的专家系统4.6新型专家系统4.7专家系统的设计4.8专家系统的开发工具4.4基于模型的专家系统4.4.1基于模型专家系统的提出关于人工智能的一个观点:认为人工智能是对各种定性模型(物理的、感知的、认识的和社会的系统模型)的获得、表达及使用的计算方法进行研究的学问。一个知识系统中的知识库是由各种模型综合而成的。模型类型:基于逻辑的心理模型、定性的物理模型、神经元网络模型、可视知识模型等等。综合各种模型的专家系统比基于逻辑心理模型的系统具有更强的功能,从而有可能显著改进专家系统的设计在诸多模型中,人工神经网络模型的应用最为广泛基于规则的专家系统,基于框架的专家系统4.4.2基于神经网络的专家系统神经网络模型从知识表示、推理机制到控制方式,与目前专家系统中的基于逻辑的心理模型有本质的区别基于逻辑的心理模型神经网络模型知识表示:是显式表示,通过人的加工转换成规则是隐式表示,通过学习算法自动获取推理机制:检索和验证网络上隐含模式对输入的竞争把特定论域输入模式中的各个抽象概念转化为神经网络的输入数据,根据论域特点适当地解释神经网络的输出数据。4.4.2基于神经网络的专家系统三种神经网络模型与专家系统集成模式神经网络支持专家系统以传统的专家系统为主,以神经网络为辅专家系统支持神经网络以神经网络的有关技术为核心,建立相应领域的专家系统协同式的神经网络专家系统针对复杂问题,将其分解若干子问题,对每个子问题,用神经网络或专家系统去实现神经网络专家系统的基本结构专家神经网络用户知识获取学习示例网络结构学习算法解释器知识库推理机图4.7神经网络专家系统的基本结构4.4.2基于神经网络的专家系统神经网络专家系统的几个问题讨论神经网络的知识表示是一种隐式表示,即把某个问题领域的若干知识彼此关联地表示在一个网络中。神经网络通过实例学习实现知识自动获取。领域专家提供学习实例及其期望解,神经网络学习算法不断修改网络的权值分布。经过学习纠错而达到稳定权值分布的神经网络,就是神经网络专家系统的知识库。4.4.2基于神经网络的专家系统神经网络的推理是个正向非线性数值计算过程,同时也是一种并行推理机制同一知识领域的几个独立的专家系统可组合成更大的神经网络专家系统4.4.2基于神经网络的专家系统神经网络专家系统的几个问题讨论内容提要第六章:专家系统4.1概述4.2基于规则的专家系统4.3基于框架的专家系统4.4基于模型的专家系统4.5基于Web的专家系统4.6新型专家系统4.7专家系统的设计4.8专家系统的开发工具4.5基于Web的专家系统4.5.1基于Web专家系统的结构基于Web专家系统的简单结构如图4.10所示,主要分为3个层次:浏览器、应用逻辑层和数据库层,这种结构符合3层网络结构。用户Web浏览器应用服务器Web推理机数据库服务器数据库知识库图4-8基于Web专家系统的结构基于Web的飞机故障远程诊断专家系统的结构知识库维护系统诊断咨询系统Internet诊断专家系统Web接口推理机解释器知识库(规则)知识库(事实)(a)远程诊断专家系统的结构Web浏览器Web服务器ASP文件(使用ADO)ODBC驱动程序知识库系统(b)Web用户存取服务器专家系统的流程图4-9基于Web的飞机故障远程诊断专家系统的结构基于Web的拖网绞机专家系统的结构基于Web的拖网绞机专家系统的结构客户端客户端Web服务器数据库服务器全局推理机全局数据库全局知识库Internet/Intranet局部数据库局部推理机局部知识库用户界面接口设计用户设计任务客户端知识库维护系统界面接口客户端专家知识工程师4.5.2基于Web专家系统的实例1.基于Web的飞机故障远程诊断专家系统诊断咨询系统的实现Web用户存取远程专家系统的具体实现过程如下。a.用户端借助浏览器页面填写飞机故障现象表单,指定URL,通过HTTP通信协议从Web服务器下载指定的ASP文件。b.Web服务器判断ASP文件中是否含有脚本程序(JavaScript或VBScript),若有,则执行相应的程序(推理机)。对于那些不是脚本的部分则直接传给浏览器。c.若脚本程序使用了ADO对象,则Web服务器会根据ADO对象所设置的参数来启动对应的ODBC驱动程序,然后利用ADO对象访问专家知识库。d.根据推理匹配结果,由脚本程序利用ASP所做的输出对象生成Web页面,从Web服务器传递给客户端浏览器,从而实现飞机故障的远程诊断。知识库的管理与维护2.基于Web的拖网绞机专家系统知识表示和知识库推理机基于实例推理基于规则的推理实例检索回溯策略Web数据库访问4.6新型专家系统并行与分布处理多专家系统协同工作高级语言和知识语言描述具有自学习功能引入新的推理机制具有自纠错和自完善能力先进的智能人机接口4.6.1新型专家系统的特征4.6.2分布式(distributed)专家系统主要目的:把一个专家系统的功能经分解以后分布到多个处理器上去并行地工作,从而在总体上提高系统的处理效率。可以工作在紧耦合的多处理器系统环境中,也可工作在松耦合的计算机网络环境里,所以其总体结构在很大程度上依赖于其所在的硬件环境。4.6新型专家系统设计和实现分布式专家系统,需要解决的问题:功能分布把分解得到的系统各部分功能或任务合理均衡地分配到各处理节点上去知识分布根据功能分布的情况把有关知识经合理划分以后分配到各处理节点上接口设计各部分间接口的设计目的是要达到各部分之间互相通讯和同步容易进行系统结构一方面依赖于应用的环境与性质,另一方面依赖于其所处的硬件环境驱动方式可供选择的几种驱动方式:(1)控制驱动,(2)数据驱动,(3)需求驱动,(4)事件驱动4.6新型专家系统4.6.3协同式(synergetic)专家系统一般专家系统解题的领域面很窄协同式多专家系统是克服一般专家系统的局限性的一个重要途径。协同式多专家系统亦可称“群专家系统”4.6新型专家系统设计与建立一个协同式多专家系统,需要解决的问题:任务的分解公共知识的导出讨论方式裁决问题驱动方式4.6.3协同式(synergetic)专家系统4.46新型专家系统4.7专家系统设计分为以下两部分介绍:以设计一个基于规则的维修咨询系统为例,说明专家系统的设计过程。这一过程包括描述专家知识、应用知识和解释决策等。专家知识的描述知识的使用和决策解释4.7.1专家知识的描述结论的表示结论规定了所涉及专门知识的范围观测的表示观测是得到结论所需要的观察或量测结果推理规则的表示产生式规则是决策规则最为常用的表示形式,可根据观测和假设之间的逻辑关系分成3类:(1)FF(规则);(2)FH规则;(3)HH规则4.7.2知识的使用和决策解释结论的分级与选择询问问题的策略固定的顺序根据具体情况作出某种选择决策的解释对系统设计者的解释对系统使用者的解释4.8专家系统开发工具专家系统工具是一种更高级的计算机程序设计语言现有的专家系统工具,主要分为骨架型工具、语言型工具、构造辅助工具和支撑环境等4类1.骨架型开发工具专家系统一般都有推理机和知识库两部分,而规则集存于知识库内。在一个理想的专家系统中,推理机完全独立于求解问题领域。系统功能上的完善或改变,只依赖于规则集的完善和改变。由此,借用以前开发好的专家系统,将描述领域知识的规则从原系统中“挖掉”,只保留其独立于问题领域知识的推理机部分,这样形成的工具称为骨架型工具。优点使用方便,节省在开发系统的过程结构上的时间,提高开发效率,交互性好,提供很强的对结果进行解释的功能实例:EMYCIN2.语言型开发工具与骨架型的对比优点:结构变化范围广泛,表示灵活,所适应的范围广泛。问题及缺点:功能上的通用性与使用上的方便性的矛盾造成一些问题和缺点实例:OPS5、CLIPS等语言型工具提供给用户的是建立专家系统所需要的基本机制,其控制策略也不固定于一种或几种形式,用户可以通过一定手段来影响其控制策略。因此,语言型工具的结构变化范围广泛,表示灵活,所适应的范围要比骨架型工具广泛得多。3.构造辅助工具主要分两类设计辅助工具,知识获取辅助工具实例:AGE系统、TEIRESIAS系统构造辅助工具由一些程序模块组成,有些程序能帮助获得和表达领域专家的知识,有些程序能帮助设计正在构造的专家系统的结构。4.支撑环境支撑设施是指帮助进行程序设计的工具,它常被作为知识工程语言的一部分。工具支撑环境仅是一个附带的软件包,以便使用户界面更友好。四个典型组件:调试辅助工具输入输出设施解释设施知识库编辑器4.9小结本章首先研究了专家系统的基本问题接着讨论了基于不同技术(规则、框架、模型)建立的专家系统第六节归纳了新型专家系统第七节介绍了专家系统的设计第八节简介了4种主要开发工具