ArtificialIntelligencePrinciplesandApplications第10章专家系统教材:王万良《人工智能及其应用》(第3版)高等教育出版社,2016.22第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具3第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具410.1专家系统的产生和发展第一阶段:初创期(20世纪60年代中期-20世纪70年代初)DENDRAL系统(1968年,斯坦福大学费根鲍姆等人)——推断化学分子结构的专家系统MYCSYMA系统(1971年,麻省理工学院)——用于数学运算的数学专家系统特点:高度的专业化。专门问题求解能力强。结构、功能不完整。移植性差。缺乏解释功能。510.1专家系统的产生和发展第二阶段:成熟期(20世纪70年代中期-20世纪80年代初)MYCIN系统(斯坦福大学)——血液感染病诊断专家系统PROSPECTOR系统(斯坦福研究所)——探矿专家系统CASNET系统(拉特格尔大学):用于青光眼诊断与治疗。AM系统(1981年,斯坦福大学):模拟人类进行概括、抽象和归纳推理,发现某些数论的概念和定理。HEARSAY系统(卡内基-梅隆大学)——语音识别专家系统610.1专家系统的产生和发展第二阶段:成熟期(20世纪70年代中期-20世纪80年代初)特点:(1)单学科专业型专家系统。(2)系统结构完整,功能较全面,移植性好。(3)具有推理解释功能,透明性好。(4)采用启发式推理、不精确推理。(5)用产生式规则、框架、语义网络表达知识。(6)用限定性英语进行人-机交互。710.1专家系统的产生和发展第三阶段:发展期(20世纪80年代至今)专家系统XCON(DEC公司、卡内基-梅隆大学):为VAX计算机系统制订硬件配置方案。专家系统开发工具:骨架系统:EMYCIN、KAS、EXPERT等。通用型知识表达语言:OPS5等。专家系统开发环境:AGE等。810.1专家系统的产生和发展第三阶段:发展期(20世纪80年代至今)我国研制开发的专家系统:施肥专家系统(中国科学院合肥智能机械研究所)新构造找水专家系统(南京大学)勘探专家系统及油气资源评价专家系统(吉林大学)服装剪裁专家系统及花布图案设计专家系统(浙江大学)关幼波肝病诊断专家系统(北京中医学院)9第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具1010.2.1专家系统的定义和组成10.2.2专家系统的特点10.2.3专家系统的类型10.2.4专家系统的应用10.2专家系统的概念1110.2.1专家系统的定义和组成10.2.2专家系统的特点10.2.3专家系统的类型10.2.4专家系统的应用10.2专家系统的概念1210.2.1专家系统的定义和组成1.定义费根鲍姆(E.A.Feigenbaum):“专家系统是一种智能的计算机程序,它运用知识和推理来解决只有专家才能解决的复杂问题。”专家系统:一类包含知识和推理的智能计算机程序。1310.2.1专家系统的定义和组成2.专家系统的基本组成推理机数据库规则库专家系统用户知识获取推理咨询解释程序调度程序知识库1410.2.1专家系统的定义和组成10.2.2专家系统的特点10.2.3专家系统的类型10.2.4专家系统的应用10.2专家系统的概念15(1)具有专家水平的专业知识。(2)能进行有效的推理。(3)启发性。(4)灵活性。(5)透明性。(6)交互性。10.2.2专家系统的特点一个计算机程序系统的透明性:系统自身及其行为能被用户所理解。16专家系统与传统程序的比较(1)编程思想:10.2.2专家系统的特点传统程序=数据结构+算法专家系统=知识+推理(2)传统程序:关于问题求解的知识隐含于程序中。专家系统:知识单独组成知识库,与推理机分离。(3)处理对象:传统程序:数值计算和数据处理。专家系统:符号处理。17专家系统与传统程序的比较(4)传统程序:不具有解释功能。专家系统:具有解释功能。10.2.2专家系统的特点(5)传统程序:产生正确的答案。专家系统:通常产生正确的答案,有时产生错误的答案。例如:AlphaGo对决李世石的第4局中,犯了连小学生都不会犯的错误。(6)系统的体系结构不同。1810.2.1专家系统的定义和组成10.2.2专家系统的特点10.2.3专家系统的类型10.2.4专家系统的应用10.2专家系统的概念1910.2.3专家系统的类型2010.2.1专家系统的定义和组成10.2.2专家系统的特点10.2.3专家系统的类型10.2.4专家系统的应用10.2专家系统的概念2110.2.4专家系统的应用2210.2.4专家系统的应用23第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具2410.3专家系统的工作原理人机接口用户领域专家知识工程师解释机构知识获取机构数据库推理机知识库专家系统核心专家系统的一般结构人机接口解释机构知识获取机构数据库推理机知识库专家系统核心25第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具2610.4知识获取的主要过程与模式10.4.1知识获取的过程抽取知识、知识的转换、知识的输入、知识的检测。领域专家知识工程师知识库数据问题提问知识概念解答形式化结构知识知识获取的过程数据问题提问知识概念解答形式化结构知识2710.4知识获取的主要过程与模式10.4.2知识获取的模式非自动知识获取、自动知识获取、半自动知识获取。知识工程师知识编辑器知识库科技文献领域专家阅读对话非自动化知识获取知识工程师知识编辑器阅读对话文字、图象识别语音识别归纳理解翻译知识库文字、图象领域专家自动知识获取归纳理解翻译28第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具2910.5.1适合于专家系统求解的问题10.5.2专家系统的设计原则与开发步骤10.5.3专家系统的评价10.5专家系统的建立3010.5.1适合于专家系统求解的问题10.5.2专家系统的设计原则与开发步骤10.5.3专家系统的评价10.5专家系统的建立3110.5.1适合于专家系统求解的问题如何选择适合专家系统开发的问题——威特曼(Waterman)什么情况下开发专家系统是可能的?什么情况下开发专家系统是合理的?什么情况下开发专家系统是合适的?3210.5.1适合于专家系统求解的问题1.什么情况下开发专家系统是可能的?(1)主要依靠经验性知识,不需运用大量常识性知识就可解决的任务。(2)存在真正的领域专家。(3)有明确的开发目标,且任务不太难实现。3310.5.1适合于专家系统求解的问题2.什么情况下开发专家系统是合理的?(1)具有较高的经济效益。(2)人类专家奇缺,但在许多地方又十分需要。(3)人类专家经验不断丢失。(4)危险场合需要专业知识。3410.5.1适合于专家系统求解的问题3.什么情况下开发专家系统是合适的?(1)本质:问题能通过符号操作和符号结构进行求解,且需使用启发式知识、经验规则才能得到答案。(2)复杂性。(3)范围:所选任务的大小可驾驭、任务有实用价值。3510.5.1适合于专家系统求解的问题10.5.2专家系统的设计原则与开发步骤10.5.3专家系统的评价10.5专家系统的建立3610.5.2专家系统的设计原则与开发步骤1.专家系统的设计原则(1)专门的任务(2)专家合作(3)原型设计(4)用户参与(5)辅助工具(6)知识库与推理机分离3710.5.2专家系统的设计原则与开发步骤2.专家系统的开发步骤3810.5.1适合于专家系统求解的问题10.5.2专家系统的设计原则与开发步骤10.5.3专家系统的评价10.5专家系统的建立3910.5.3专家系统的评价1.正确性(1)系统设计的正确性:系统设计思想的正确性。系统设计方法的正确性。设计开发工具的正确性。(2)系统测试的正确性:测试目的、方法、条件的正确性。测试结果、数据、记录的正确性。4010.5.3专家系统的评价1.正确性(3)系统运行的正确性:推理结论、求解结果、咨询建议的正确性。推理解释及可信度估算的正确性。知识库知识的正确性。4110.5.3专家系统的评价2.有用性(1)推理结论、求解结果、咨询建议的有用性。(2)系统的知识水平、可用范围、易扩展性、易更新性等。(3)问题的求解能力,可能场合和环境。(4)人机交互的友好性。(5)运行可靠性、易维护性、可移植性。(6)系统的经济性。42第10章专家系统10.1专家系统的产生和发展10.2专家系统的概念10.3专家系统的工作原理10.4知识获取的主要过程与模式10.5专家系统的建立10.6专家系统实例10.7专家系统的开发工具4310.6.1医学专家系统──MYCIN10.6.2地质勘探专家系统──PROSPECTOR10.6专家系统实例4410.6.1医学专家系统──MYCIN10.6.2地质勘探专家系统──PROSPECTOR10.6专家系统实例4510.6.1医学专家系统──MYCIN1.系统结构MYCIN系统由斯坦福大学1972年开始建造,1978年最终完成。系统用INTERLISP语言编写。知识库有二百多条规则,可识别51种病菌,正确处理23种抗生素。确定病人是否存在需要治疗的细菌感染确定细菌类型优选治疗处方确定用于治疗的菌素药物MYCIN系统的咨询过程4610.6.1医学专家系统──MYCIN1.系统结构4710.6.1医学专家系统──MYCIN2.数据表示:上下文树(contexttree)4810.6.1医学专家系统──MYCIN3.知识表示(1)领域知识的表示:产生式规则。RULE064如果:有机体染色是革兰氏阳性,且是有机形态是球状的,且有机体的生长结构呈链状,则:存在证据表明该有机体为链球菌类,可信度为0.7。RULE064PREMISE:($AND(SAMECNTXTSTALNGRAMPOS)(SAMECNTXTMORPHCOCCUS)(SAMECNTXTCONFORMCHAINS))ACTION:(CONLUDECNTXTIDENTSTREPTOCOCCUSTALLY.7)4910.6.1医学专家系统──MYCIN3.知识表示(2)临床参数的表示临床参数:三元组(上下文树、属性、值)例:三元组(机体-1,形态,杆状)三元组(机体-1,染色体,革兰氏阴性)临床数据:单值、是非值、多值。MYCIN系统有65个临床参数,按照其相对应的上下文分类。5010.6.1医学专家系统──MYCIN4.推理策略:反向推理、深度优先的搜索策略REGIMEN(规则092)TREATFORCOVERFOR(规则090)(规则149)IDENTINFECTLOCFEBRILESIGNIFICANCE…………REGIMEN(规则092)TREATFORCOVERFOR(规则090)(规则149)IDENTINFECTLOCFEBRILE