1、第章专家系统,专家系统是人工智能应用领域中最活跃的一个分支,自1968年费根鲍姆等人研制成功第一个专家系统DENDRAL以来,应用于医疗诊断、图象处理、石油化工、地质勘探、金融决策、实时监控、分子遗传工程、教学、军事等不同领域中的专家系统就象雨后春笋般涌现出来。成功的专家系统不仅取得了极大的社会效益和经济效益,同时也促进了人工智能基本理论和基本技术的研究和发展。,第章专家系统,本章将对专家系统的有关概念及建造技术进行讨论,并给出相应的实例。 什麽是专家系统? 关于专家系统到现在尚没有一个严格的定义,但专家们共识: 一个专家系统是一个智能程序系统,它里面应具有大量相关领域专家的知识,它能应用人工
2、智能技术模拟领域专家求解问题的思维过程进行推理,解决相关领域内的困难问题,并且达到甚至超过领域专家的水平。,专家系统的基本特征,、具有专家水平的专门知识 一个专家系统为了能象人类专家那样工作,就必须具有专家级的知识,知识越丰富,质量越高,解决问题的能力就越强。 专家系统的知识可分为三个层次,即数据级、知识库级和控制级。数据级知识是指具体问题所提供的初始事实以及问题求解过程中产生的中间结论,最终结论等。,专家系统的基本特征,如医疗诊断专家系统中患者的症状、化验结果及由专家系统推出的病因、治疗方案等,这一类知识通常存放在数据库中。 知识库级知识是指专家的知识,例如医学常识、医生的经验等。这一类知识
3、是构成专家系统的基础,而且专家系统的性能主要取决于知识库的质量和数量。,专家系统的基本特征,控制性知识是关于如何运用前两种知识的知识。这一级的知识直接关系到系统的智能程度。它和设计系统的计算机工程师的水平有关。 、能进行有效的推理 不同专家系统所面临的领域问题不同,要求解的问题有不同的特性,因而不同专家系统的推理机制也不尽相同。有的需要精确推理,有的则要求进行不精确,专家系统的基本特征,甚至是不完全推理及试探性推理等,需要根据问题的性质分别进行设计。我们介绍的知识表示、推理及搜索策略都可在专家系统中应用。 、具有获取知识的能力 专家系统的基础是知识。为了得到知识必须具有获取知识的能力。目前这个
4、问题仍然是个瓶颈问题。,专家系统的基本特征,一些高级专家系统正在建立一些自动获取工具,使系统具有学习能力,能从系统的实践中不断总结出新的知识,使知识库中的知识越来越丰富、完善。 、具有灵活性 大多数专家系统采取知识库与推理机分离的构造原则,彼此既联系又相互独立。这种结构就使得人们可能把一个技术上成熟的专家系统变为一个专家系统,专家系统的基本特征,工具,只要抽去知识库中知识就可以使其变成一个专家系统外壳。当要建立另一个其功能与之类似的专家系统时,只要把该相应的知识装入到该外壳的知识库中就可以了。这就节省了耗时费工的开发工作。事实上目前的一些专家系统开发工具就是这样得来的。,专家系统的基本特征,、
5、具有透明性 所谓专家系统的透明性是指系统及其行为能被用户所理解。专家系统之所以有较好的透明性是因为它具有解释功能一个专家系统不仅能实现一些智能性的功能而且还能够解释这样做的理由和原因,这也是专家系统和其它一般管理系统不同的地方,专家系统的基本特征,、具有交互性 专家系统一般都是交互式系统一方面它需要和领域专家及知识工程师进行对话以获取知识,另一方面它需要和用户对话以索要求解问题的事实以及回答用户的询问。专家系统的这一特征为用户提供了极大的方便。,专家系统的基本特征,、具有实用性 专家系统都是根据领域问题的实际需求开发的,所以它具有较强的实用性。目前专家系统已被应用于多种领域中,并取得了巨大的经
6、济效益和社会效益。 、具有一定的复杂性和难度 由于专家系统是一个模拟人类求解问题的思维过程,但是人类的思维方式是多种多样的,因此真正实现对人类思维的,专家系统的基本特征,模拟还是一件很困难的工作,它要依赖于多种学科的共同发展。在建造一个专家系统时会遇到各种困难问题,如不确定知识的表示,不确定性知识的计算,匹配等。尽管我们在前面已经讨论了一些解决问题的处理方法,但对具体问题还要进行调整。,专家系统的基本特征,一个专家系统是一个智能程序系统,它和一般的程序系统的区别在于: 常规程序数据结构算法 专家系统知识推理 常规程序把关于对问题求解的知识隐含在程序中,而专家系统把这些知识和程序分离单独放在知识
7、库中。 常规程序是通过计算和查找来求取问题的答案,而专家系统是通过推理来求取,专家系统的基本特征,问题的答案,本质上面向符号处理的。 常规程序处理的数据多是精确的,对数据的检索是基于模式的布尔匹配,而专家系统处理的数据及知识多是不精确的、模糊的,知识的模式匹配也多是不精确的需要为其设定域值。 常规程序一般不具有解释功能,而专家系统必须具有解释功能。它们具有不同的体系结构。,专家系统的分类,按照专家系统求解问题的性质,可以把它分为下列几种类型。 1. 解释专家系统(expert system for interpretation) 解释专家系统的任务是通过对已知信息和数据的分析与解释,确定它们的
8、涵义。解释专家系统具有下列的特点: (1)系统处理的数据量很大,而且往往是不准确的、有错误的、 或不完全的。,专家系统的分类,(2) 系统能够从不完全的信息中得出解释,并能对数据作出某些假设。 (3) 系统的推理过程可能很复杂并且很长,因此要求系统具有对自身的推理过程作出解释的能力。作为解释专家系统的例子有语音理解、图象分析、系统监视、化学结构分析和信号解释等。,专家系统的分类,2. 预测专家系统(Expert system for prediction) 预测专家系统的任务是通过对过去和现在已知状况的分析,推断未来可能发生的情况。一个预测专家系统具有下列特点: (1)系统处理的数据随时间变化
9、,而且可能是不准确和不完全的。,专家系统的分类,(2)系统需要有随时间变化的动态模型,能够从不完全和不准确的信息中得出预报,并达到快速响应的要求。 预测专家系统的例子有气象预报、军事预测、人口预测、交通预测、经济预测和谷产量预测等。,专家系统的分类,3.诊断专家系统(expert system for diagnosis) 诊断专家系统的任务是根据观察到的情况(数据)来推断出某个对象机能失常(即故障)的原因。诊断专家系统具有下列特点: (1)能够了解被诊断对象或客体各组成部分的特性以及它们之间的关系。 (2) 能够区分一种现象及其所掩盖的另一种现象。,专家系统的分类,(3)能够向用户提出测量的
10、数据,并从不确切信息中得出尽可能正确的诊断。诊断专家系统的例子很多,如医疗诊断,电子机械和软件故障诊断以及材料失效诊断等。用于抗生素治疗的MYCIN、肝功能检验的PUFF、青光眼治疗的CASNET都是国内外颇有名气的实例。,专家系统的分类,4.设计专家系统(expert system for planning) 设计专家系统的任务是根据设计要求,求出满足设计问题约束目标的目标配置。一个设计专家系统具有如下的特点: (1)善于从多方面的约束中得到符合要求的设计结果。 (2) 系统需要检索较大的可能解空间。,专家系统的分类,(3)善于分析各种子问题,并处理好子问题间的相互作用。 (4)能够实验性地
11、构造出可能设计,并易对所得设计方案进行修改。 (5)能够使用已被证明是正确的设计来解释当前的(新的)设计。,专家系统的分类,设计专家系统涉及电路(如数字电路和集成电路)设计、土木建筑工程设计、计算机结构设计、机械产品设计和生产工艺设计等。 5. 规划专家系统(expert system for planning) 规划专家系统的任务在于寻找出某个能够达到给定目标的动作序列或步骤。规划专家系统的特点如下:,专家系统的分类,(1)所要规划的目标是动态的或静态的,因而需要对未来动作做出预测。 (2) 所涉及的问题可能很复杂,要求系统能抓住重点,处理好各子目标间的关系和不确定的数据信息,并通过实验性动
12、作得出可行规划。,专家系统的分类,规划专家系统可用于机器人规划、交通运输调度、工程项目论证、通信与军事指挥以及农作物施肥方案规划等。比较典型的规划专家系统的例子有3界3号军事指挥调度系统、REPOS机器人规划专家系统、汽车和火车运行调度专家系统以及小麦和水稻施肥专家系统等。,专家系统的分类,6. 监视专家系统(expert system for monitoring) 监视专家系统的任务在于对系统、对象或过程的行为进行不断观察,并把观察到的行为与其应当具有的行为进行比较,以发现异常情况,发出警报。监视专家系统具有以下特点: (1)系统具有快速反应能力,在造成事故之前及时发出警报。,专家系统的分
13、类,(2)系统发出的警要有很高的准确性。在需要发警报时发警报在不需要发警报时不得轻易发警报(假警报) (3)系统能随时间和条件的变化而动态地处理其输入信息。 监视专家系统可用于核电站的安全监视、防空监视与报警、国家财政的监控、传染病疫情监视及农作物病虫害监视与报警等。黏虫测报专家系统是监视专家系统的一个实例。,专家系统的分类,7.控制专家系统(expert system for control) 控制专家系统的任务是自适应地管理一个受控对象或客体的全面行为,使之满足预期要求。 控制专家系统的特点是:能够解释当前的情况,预测未来可能发生的情况,诊断可能发生的问题及其原因,不断修正计划,并控制计划
14、的执行。也就是说,控制专家系统具有解释、预测、诊断、规划和执行等多种功能。,专家系统的分类,空中交通管制、商业管理、自主机器人控制、作战管理、生产过程控制和生产质量控制等都是控制专家系统潜在的应用方面。例如,已经对海、陆、空自主车、生产线调度和产品质量控制等课题进行控制专家系统的研究。,专家系统的分类,8. 调试专家系统(expert sysytem for debugging) 调试专家系统的任务是对失灵的对象给出处理的意见和方法。调试专家系统的特点是同时具有规划、设计、预报和诊断等专家系统的功能。,专家系统的分类,9.教学专家系统(expert system for instruction
15、) 教学专家系统的任务是根据学生的特点、弱点和基础知识,以最适当的教案和教学方法对学生进行教学和辅导。教学专家系统的特点是: (1)同时具有调试和诊断功能。 (2)具有良好的人机界面。,专家系统的分类,已经开发和应用的教学专家系统有美国麻省理工学院MACSYMA符号积分与定理证明系统,我国一些大学开发的计算机科学相关课程和物理智能计算机辅助教学系统以及聋哑人语言训练专家系统等。,专家系统的分类,10. 修理专家系统(expert system for repair) 修理专家系统的任务是对发生故障的对象(系统或设备)进行处理,使其恢复正常工作。修理专家系统具有诊断、调试、计划和执行等功能。,专
16、家系统的分类,如果按体系结构划分专家系统可分为四大类: 集中式专家系统 分布式专家系统 神经网络专家系统 符号系统与神经网络相结合的专家系统 分别简单解释如下:,专家系统的分类,集中式专家系统是指知识和推理进行集中管理的一类专家系统,目前一些成功的专家系统都属这种类型在这类专家系统中按知识及推理的组织方式不同又可分为层次结构、深浅双层结构、多层聚焦结构及黑板结构等。例如青光眼诊治专家系统CASNET就是一个三层推理结构的例子,其推理模型分为症状层、病变层及诊断层。,专家系统的分类,由症状层的症状可得知相应的病变,由病变可推出是哪种青光眼。 深浅双层结构是指具有深层知识(问题领域内的原理性知识)
17、及浅层知识(领域专家的经验知识)这两个知识库,并相应的有两个推理机,分别用两个知识库的知识进行推理,为了协调两个推理机的工作,在它们之上建立了一个控制机构进行管理。,专家系统的分类,多层聚焦结构是指知识库中知识是动态组织的,把当前对推理最有用最有希望推出结论的知识称为焦点,并把它置于聚焦结构的最上层,把有希望入选的知识放在第二层,如此类推,每个知识元所在的层不是固定的,随着推理的进行不断地调整,这类知识多用于框架、对象表示知识的系统中。,专家系统的分类,黑板结构通常用于求解比较复杂的系统中,在这类系统中一般有多个知识库及推理机,它们通过一个结构化的公共数据区即黑板来交换信息,语音识别系统 HE
18、ARSAY- 首先使用了这一结构,专家系统的分类,分布式专家系统是指把知识库或推理机分布在一个计算机网上,或者两者同时进行分布的一类专家系统这类系统还要用到一些特殊的技术如:把待求解的问题分解为若干个子问题,然后把它们分别交给不同的系统进行处理,当各子系统求出问题的解时,还需要把它们综合为整体解,如果各子系统求出的解有矛盾,就需要根据某种原则进行选择和折中另外各子系统求解过程中需要互相通信,密切配合,进行合作推理,专家系统的分类,神经网络专家系统则是运用人工神经网络技术建造的一种专家系统,目前尚处于研究阶段符号系统与神经网络结合的专家系统则是回避两者的缺陷而建立的专家系统,结合的途径有多种:例如发挥神经网络学习能力强的优势,把它用于知识的获取,而推理机仍用符号机制,专家系统的一般结构,