2020/4/271第七章专家系统华北电力大学计算机系刘丽华北电力大学7.1专家系统的定义和分类专家系统是人工智能的一个重要分支,也是目前人工智能中一个最活跃且最有成效的研究领域1968年,第一个专家系统DENDRAL专家系统的应用领域数学、物理、化学、医学、地质、气象、农业、法律、教育、交通运输、机械、艺术以及计算机科学本身渗透到政治、经济、军事等重大决策部门产生了巨大的社会效益和经济效益,同时也促进了人工智能基本理论和基本技术的发展华北电力大学专家系统的定义与特点费根鲍姆“专家系统是一种智能的计算机程序,它运用知识和推理步骤来解决只有专家才能解决的复杂问题”专家系统是基于知识的系统,用于在某种特定的领域中运用领域专家多年积累的经验和专门知识,求解需要专家才能解决的困难问题保存和大面积推广各种专家的宝贵知识博采众长比人类专家更可靠,更灵活华北电力大学专家系统的产生和发展第一阶段(60年代末—70年代初)第一个里程碑:斯坦福大学费根鲍姆等人于1968年研制成功的DENDRAL——分析化合物分子结构的专家系统分析•利用质谱和核磁共振等化学实验数据推断出未知化合物的可能分子结构MYCSYMA系统是由麻省理工学院(MIT)于1971年开发成功并投入应用的专家系统,它能够求解各种数学问题特点•高度的专业化,专门问题求解能力强•结构、功能不完整,移植性差,缺乏解释功能华北电力大学专家系统的产生和发展第二阶段(70年代中—80年代初)MYCIN是由美国斯坦福大学研制的用于细菌感染性疾病的诊断和治疗的专家系统•提出知识库概念;引入可信度方法;推理解释;英语交互PROSPECTOR是由美国斯坦福研究所开发的一个探矿专家系统•首次实地分析华盛顿州某山区一带的地质资料,发现了一个钼矿床•第一个有明显经济效益的ESCASNET是一个几乎与MYCIN同时开发的专家系统,由拉特格尔(Rutger)大学开发,用于青光眼诊断与治疗AM系统是由斯坦福大学于1981年研制成功的专家系统•模拟人类进行概括、抽象和归纳推理,发现某些数论的概念和定理华北电力大学专家系统的产生和发展第二阶段特点:(1)单学科专业型专家系统;(2)系统结构完整,功能较全面,移植性好;(3)具有推理解释功能,透明性好;(4)采用启发推理、不精确推理;(5)用产生式规则、框架、语义网络表达知识;(6)用限定性英语进行人—机交互华北电力大学专家系统的产生和发展第三阶段(80年代以来)DEC公司与卡内基-梅隆大学合作开发了专家系统XCON•为VAX计算机系统制订硬件配置方案,节约资金近1亿美元专家系统开发工具的出现,它在许多领域简化了专家系统的构造•如骨架系统EMYCIN、KAS、EXPERT,通用知识工程语言OPS5、RLL,模块式专家系统工具AGE等华北电力大学专家系统的特点具有专家水平的专门知识能进行有效的推理具有启发性能根据不确定(不精确)的知识进行推理具有灵活性具有透明性具有交互性华北电力大学专家系统与传统程序的区别①传统程序依据某一确定的算法和数据结构来求解某一确定的问题,专家系统是依据知识和推理来求解问题→最大区别传统程序=数据结构+算法专家系统=知识+推理②传统程序把关于问题求解的知识隐含于程序中,而专家系统则将知识与运用知识的过程即推理机分离(使专家系统具有更大的灵活性,使系统易于修改)华北电力大学专家系统与传统程序的区别③从处理对象看,传统程序主要是面向数值计算和数据处理,而专家系统则面向符号处理传统程序处理的数据多是精确的,对数据的检索是基于模式的布尔匹配,而专家系统处理的数据和知识大多是不精确的、模糊的,知识的模式匹配也多是不精确的④传统程序一般不具有解释功能,而专家系统一般具有解释机构,可解释自己的行为华北电力大学专家系统与传统程序的区别⑤传统程序根据算法求解问题,每次都能产生正确答案,专家系统像人类专家那样工作,通常产生正确的答案,但有时也会产生错误的答案专家系统存在的问题之一专家系统有能力从错误中吸取教训,改进对某一工作的问题求解能力⑥从系统的体系结构来看,传统程序与专家系统具有不同的结构华北电力大学专家系统的类型按功能管理专家系统(元系统)•完成复杂问题总体决策、管理协调子系统的功能领域专家系统()从推理方向的角度可分正向推理专家系统反向推理专家系统混合推理专家系统从知识表达方法的角度基于逻辑的专家系统基于产生式规则的专家系统基于语义网络的专家系统华北电力大学专家系统的类型专家系统种类解决的问题解释根据感知数据推理情况描述诊断根据观察结果推断系统是否有故障预测推导给定情况可能产生的后果设计根据给定要求进行相应的设计规划设计动作控制控制整个系统的行为监督比较观察结果和期望结果修理执行计划来实现规定的补救措施教学诊断、调整、修改学生行为调试建议故障的补救措施华北电力大学专家系统的类型解释型专家系统能根据感知数据,经过分析、推理,从而给出相应解释代表性:DENDRAL(化学结构说明)、PROSPECTOR(地质解释)等诊断型专家系统能根据取得的现象、数据或事实推断出系统是否有故障,并能找出产生故障的原因,给出排除故障的方案代表性:PUFF(肺功能诊断系统)、PIP(肾脏病诊断系统)、DART(计算机硬件故障诊断系统)等预测型专家系统能根据过去和现在信息(数据和经验)来推断可能发生和出现的情况天气预报、市场预测、人口预测等华北电力大学专家系统的类型设计型专家系统能根据给定要求进行相应的设计•工程设计、电路设计、服装设计)代表性:XCON(计算机系统配置系统)、KBVLSI(VLSI电路设计专家系统)等规划型专家系统能按给定目标拟定总体规划、行动计划、运筹优化等•机器人动作控制、军事规划、城市规划等代表性:NOAH(机器人规划系统)、SECS(帮助化学家制定有机合成规划的专家系统)、TATR(帮助空军制订攻击敌方机场计划的专家系统)等控制型专家系统能根据具体情况,控制整个系统的行为代表性:YES/MVS(帮助监控和控制MVS操作系统)华北电力大学专家系统的类型监督型专家系统能完成实时的监测任务,并根据监测到的现象作出相应的分析和处理代表性:REACTOR(帮助操作人员检测和处理核反应堆事故)修理型专家系统能根据故障的特点制订纠错方案,并能实施该方案排除故障,当制订的方案失效或部分失效时,能及时采取相应的补救措施教学型专家系统能根据学生学习过程中所产生的问题进行分析、评价、找出错误原因,有针对性地确定教学内容或采取其它有效的教学手段代表性:GUIDON(讲授有关细菌感染性疾病方面的医学知识)调试型专家系统能根据相应的标准检测被测试对象存在的错误,并能从多种纠错方案中选出适用于当前情况的最佳方案,排除错误华北电力大学7.2专家系统的结构和工作原理专家系统的一般结构人机接口、推理机、知识库、动态数据库、知识获取机构、解释机构人机接口解释机构知识获取机构知识库推理机数据库用户领域专家知识工程师专家系统核心华北电力大学专家系统的一般结构知识库主要用来存放领域专家提供的专门知识(1)知识表达方法的选择(最多的三种表示方法是产生式规则、框架和语义网络)①充分表示领域知识②能充分、有效地进行推理③便于对知识的组织、维护与管理④便于理解与实现(2)知识库管理系统对知识库中的知识组织、检索和维护华北电力大学专家系统的一般结构推理机模拟领域专家的思维过程,控制并执行对问题的求解推理机包括推理方法和控制策略两部分•推理方法有精确推理和不精确推理•控制策略主要指推理方向控制及推理规则选择策略•推理有正向推理、反向推理和正反向混合推理•推理策略一般还与搜索策略有关(已在推理章节介绍)知识获取机构“瓶颈”,是建造和设计专家系统的关键基本任务是为专家系统获取知识,建立起健全、完善、有效的知识库,以满足求解领域问题的需要要对知识进行一致性、完整性检测华北电力大学专家系统的一般结构人机接口专家系统与领域专家、知识工程师、一般用户间进行交互的界面由一组程序及相应的硬件组成,用于完成输入输出工作更新、完善、扩充知识库;推理过程中人机交互;结束时显示结果数据库又称“黑板”、“综合数据库”或“动态数据库”用于存放用户提供的初始事实、问题描述及系统运行过程中得到的中间结果、最终结果等信息是推理机不可缺少的工作场地,同时由于它可记录推理过程中的各种有关信息,又为解释机构提供了回答用户咨询的依据解释机构回答用户提出的问题,解释系统的推理过程,使系统对用户透明华北电力大学专家系统的工作原理根据知识库中的知识和用户提供的事实进行推理,不断地由已知的前提推出未知的结论即中间结果,并将中间结果放到数据库中,作为已知的新事实进行推理,从而把求解的问题由求知状态转换为已知状态在专家系统的运行过程中,会不断地通过人机接口与用户进行交互,向用户提问,并向用户作出解释华北电力大学7.3知识获取知识获取的任务为专家系统获取知识,建立起健全、完善、有效的知识库,以满足求解领域问题需要(1)抽取知识识别、理解、筛选、归纳等,及自学习(2)知识的转换–第一步:从专家及文献资料处抽取的知识转换为某种知识表示模式,如产生式规则、框架等(知识工程师完成)–第二步:该模式表示的知识转换为系统可直接利用的内部形式(3)知识的输入知识编辑器(4)知识的检测不一致、不完整等华北电力大学7.3知识获取知识获取的模式非自动知识获取(人工移植)知识工程师知识编辑器自动知识获取•系统具有获取知识的能力•系统具有识别语音、文字、图像的能力•系统具有理解、分析、归纳的能力•系统具有从运行实践中学习的能力半自动知识获取华北电力大学7.4专家系统的建立可行性分析威特曼(Watermam)从三方面研究如何选择适合专家系统开发的问题(1)什么情况下开发专家系统是可能的?①问题的求解主要依靠经验性知识,而不需要大量运用常识性知识②存在真正的领域专家,这也是开发专家系统最重要的要求之一③一般某领域中有多个专家,他们应该对领域答案的选择和精确度有基本一致的看法④任务易,有明确的开发目标,且任务能被很好地理解华北电力大学7.4专家系统的建立(2)什么情况下开发专家系统是合理的?(之一!)①问题的求解能带来较高的经济效益②人类专家奇缺,但又十分需要,且十分昂贵③人类专家经验不断丢失④危险场合需要专门知识(3)什么情况下开发专家系统是合适的?(特征!)①本质——问题本质上必须能很自然地通过符号操作和符号结构来进行求解,且问题求解时需要使用启发式知识,需要使用经验规则才能得到答案②复杂性——问题不是太容易且较为重要③范围——问题需要有适当的范围华北电力大学专家系统的设计原则与开发步骤专家系统的设计原则专门任务领域大小专家合作反复磋商,团结协作原型设计从“最小系统”到“扩充式”开发用户参与充实、完善知识库辅助工具提高设计效率知识库与推理机分离体现特征,灵活华北电力大学专家系统的设计原则与开发步骤专家系统的开发步骤知识工程比软件工程更强调渐进性、扩充性重新完善问题识别概念化形式化实现测试重新描述重新设计需求概念结构规则华北电力大学专家系统的开发步骤问题识别阶段知识工程师和专家确定问题的重要特点,抓住问题各主要方面的特征概念化阶段主要任务是揭示描述问题所需的关键概念、关系和控制机制,子任务、策略和有关问题求解的约束形式化阶段把概念化阶段概括出来的关键概念、子问题和信息流特征形式化地表示出来实现阶段把形式化知识变成计算机的软体,即要实现知识库、推理机、人机接口和解释系统测试阶段通过运行实例评价原型系统以及用于实现它的表达形式,从而发现知识库和推理机制的缺陷华北电力大学专家系统的评价正确性系统设计的正确性系统测试的正确性系统运行的正确性有用性推理结论、求解结果、咨询建议的有用性系统的知识水平、可用范围、易扩充性、易更新性等问题的求解能力