1、第五章 农业专家系统赵志国计算机在农计算机在农业上业上应应用用目录1.什么是专家系统2.专家系统基本原理3.农业专家系统的开发第一节 什么是专家系统1.引言 对人类智能的理解 人类对外界事物识别和理解的感知能力,进行推理、联想和学习的思维能力,以及 作出决策和采取行动的反应能力组成。人之所以有这些智能,因为人有知识(经验),智能的核心 智能(Intelligence)是指运用知识解决问题的能力 人工智人工智能能(Artificial Intelligence,简称简称AI)被誉为21世纪的三大科学技术成就之一。专家系统是人工智能的一个重要分支,是人工智能走向实用化的转折点和突破口。、人工智能的
2、历史 1956年夏,在美国达特莫斯大学由麦卡锡、明斯基以及 IBM的洛切斯特和贝尔实验室的香农等共同发起举办了 为时2个月的夏季学术讨论班,讨论机器智能问题。麦卡锡提议正式使用人工智能(Artificial Intelligence):独立的建立在计算机科学、数学、神经生理学、心理学 语言学等多学科相互渗透下的研究方向被开创。麦卡锡被称为人工智能之父。1965年以前 1965-1971 1972-1977 1978年孕育期 产生期 成熟期 发展期 1937年,图灵(Turing)发表了理想计算器的论文。1943年,Post产生式规则。1954年,控制规则执行的Markov算法。1956年,人工
3、智能(Artificial lntelligene,AI)一词在美国一次学者聚会中诞生。1 957年,Rosenblatt,Newell等人提出通用问题求解器GPS(General Problem Solver)。1 960年,麦卡锡(MaCarthy)研制的表处理语言(LISP)语言诞生。孕 育 期人工智能的发展 1965年,Stanfond大学开发第一个专家系统DENDRAL(推论化学结构的专家系统)1965年,Robinson提出归结反演(Resolution Refutation)理论,1 965年,Zadeh提出模糊逻辑(Fuzzy Logic)理论 1969年,MIT开发MACSY
4、MA(数学符号运算专家系统)1 972年,Stanfond大学开发MYCIN(传染病诊断系统)1 972年,Stanfond研究院(SRI)开发Prospector(矿床探测专家系统)1 972年,法国Colmerauer与Roussel开发PROLOG逻辑程序语言 1974年,卡内基-美隆大学开发OPS语言(人工智能与专家系统专用语言)1 975年,Minsky提出框架(Frame)知识表示法1 976年,AM(Artificial Mathematician)人 工智能数掌家,数学概念的创造性发现 1 977年,Feigenbaum提出知识工程(Knowledge Engineering)
5、一词产 生 期成 熟 期人工智能的发展1978年,卡内基一美隆大学和DEC公司合作开发R1(又称XCON),用来依据客户需求,架构适当的计算机系统1979年,Forgy提出Rete算法,提高Production System的法则匹配速度1980年,LISP机器开始生产问世1982年,日本政府宣布开发第五代计算机,以PROLOG做为核心语言。1983年,IntelliCorp公司推出KEE(结合多样知识表现与推论方法的专家系统建构工具),随后大量的专家系统建构工具问世,如:ART,KnowledgeCraft1984年,欧洲共用市场制定欧洲信息技术研究发展策略计划1985年,NASA开式出CL
6、IPS专家系统工具,1988年,Gallant 提出以类神经网络为基础的专家系统1989年,日本宣布人类领域科学计划(第六计算机计划,希望藉由类神经网络突破人 工智能的许多瓶颈 1990 以后,选入商业竞争时代,大量专家系统被广泛应用于各行业。发 展 期人工智能的发展二.专家系统的定义 专家专家(Expert)是指在某一专业领域内其专业知识与解决问题的能力达到很高 水平的人。专家系统是以知识为基础,在特定问题领域内能像人类专家那样 解决复杂现实问题的计算机系统。专家系统专家系统(Expert System,简称简称ES)也称作基于知识的系统(Knowledge Based Systems,KB
7、S),是人工智能研究发展的结果。由于它的迅速发展和技 术特点,目前已成为一个专门的研究方向。计算机在农计算机在农业上业上应应用用二.专家系统的定义 费根鲍姆1982年的定义:专家系统是一种智能的计算机程序,这种程序使用 知识与推理过程,求解那些需要杰出人物的专门知识才能求解的高难度问题。定义包括的内涵:它是一个智能程序系统;它具有相关领域内大量的专家知识 它能应用人工智能技术模拟人类专家求解问题的思维过程进行推理,解决相 关领域内的困难问题,并且达到领域专家的水平。二.专家系统的定义 专家系专家系统统(Expert System,简称简称ES)是计算机程序,但它不同于主要对建立的 模型作算法的
8、研究与实施的传统计算机程序,它以人工智能的知识表示技术 和问题求解技术为基础,知识和推理构成专家系统的两大要素。专家系统专家系统:一种在相关领域中具有专家水平解题能力的智能程序系统。它能 运用领域专家多年积累的经验与专门知识,模拟人类专家的思维过程,求解需 要专家才能解决的困难问题。从专家系统的定义看其内涵,主要包括以下三方面的内容:(1)专家系统(ES)是一个或一组计算机程序,即专家系统本身是一软件。(2)专家系统(ES)具有人类专家的水平,含有以不同形式存在的知识库。(3)专家系统(ES)可以辅助解决某一特定领域中的困难问题,特别是那些需要多年实 际经验积累才能做出准确判断的问题。从结构的
9、角度看,专家系统是一个由存放专门领域知识的知识库,以及一个能选择 和运用知识的程序组成的计算机系统,技术的集成,构成功能强、知识多样化的智 能化系统。二.专家系统的定义二、专家系统的功能与特点 1专家系统的功能 根据定义,专家系统应具备以下功能:(1)存储问题求解所需的知识。(2)存储具体问题求解的初始数据和推理过程中涉及的各种信息,如中间结果、目标、子目标以及假设等。(3)根据当前输入的数据,利用已有知识,按照一定的推理策略,去解决当前 问题,并能控制和协调整个系统。二、专家系统的功能与特点(4)能够对推理过程、结论或系统自身行为做出必要的解释,如解题步骤、处 理策略、选择处理方法的理由、系
10、统求解某种问题的能力以及系统如何组织 和管理其自身知识等。(5)提供知识获取,机器学习以及知识库的修改、扩充和完善等维护手段。(6)提供一种用户接口,既便于用户使用,又便于分析和理解用户的各种要求 和请求。二、专家系统的功能与特点 专家系统的一般特点 各种类型的专家系统都有各自的特点,但总体上,专家系统具有知识的汇集、启发性推理、推理和解释的透明性、知识更新等特点。三、专家系统的结构 专家系统的结构是指专家系统各组成部分的构造方法和组织形式。系统结构 选择恰当与否,直接关系到专家系统的适用性和效率。1基本结构 它包括三个基本部分:知识库(KBS)、推理机(INS)和用户接口(UIS)。知识工程
11、师与领域专家直接交互,收集与整理领域专家的知识,将其转化为 系统的内部表示形式并存放到知识库中;推理机根据用户的问题求解要求和 所提供的初始数据,运用知识库中的知识对问题进行求解,并将产生的结果 输出给用户。三、专家系统的结构三、专家系统的结构 2高级专家系统结构 包括七部分:知识库、推理机、全局数据库、解释程序(解释器)、知识获取程序、人机接 口以及网络接口。其中知识库、推理机和全局数据库是目前大多数专家系统的主要内容,而知识获 取程序、解释程序、人机接口和网络接口是所有专家系统都期望具有的4个模块,但它们并不是都得到了实现。三、专家系统的结构三、专家系统的结构 早期的专家系统结构一般由知识
12、库、推理机和用户接口三个基本部分组成。高级专家系统的体系结构大体上由七个部分组成:知识库、推理机、全局数 据库、解释程序、知识获取、人机接口、网络接口等。三、专家系统的结构(1)知识库(Knowledge Base)是专家系统的核心部分。知识库用以存放领域专 家提供的专门知识。这些专门知识包含与领域相关的书本知识、常识性知识 以及专家凭经验得到的试探性知识。专家系统的问题求解是运用专家提供的 专门知识来模拟专家的思维方式进行的,这样知识库中拥有知识的数量和质 量就成为一个专家系统中系统性能和问题求解能力的关键因素。因此,知识 库的建立是建造专家系统的中心任务。三、专家系统的结构(2)全局数据库
13、(Global Database),亦称总数据库。用于存放关于问题求解的 初始数据、求解状态、中间结果、假设、目标以及最终求解结果。(3)推理机(Reasoning Machine)。根据全局数据库的当前内容,从知识库中选 择可匹配的规则,并通过执行规则来修改数据库中的内容,再通过不断地推 理导出问题的结论。推理机中包含如何从知识库中选择规则的策略和当有多 个可用规则时如何消解规则冲突的策略。三、专家系统的结构(4)解释器(Expositor)。根据用户的提问,对系统提出的结论、求解过程以及 系统当前的求解状态提供说明,便于用户理解系统的问题求解,增加用户对 求解结果的信任程度。在知识库的完善
14、过程中便于专家或知识工程师发现和 定位知识库中的错误,便于领域的专业人员或初学者能够从问题的求解过程 中得到直观学习。三、专家系统的结构(5)知识获取程序(Knowledge Acquirement)是专家系统开发过程中的瓶颈,其 主要任务是完成领域知识的收集与整理。一个高性能的专家系统应该具备不 断获取知识的能力,或者它提供一种手段使知识工程师和领域专家能够不断 地给系统“传授”知识,使知识库越来越丰富,越来越完善,或者系统自身 具有自学习能力,从系统的运行过程中不断总结经验,抽取新知识,更换旧 知识,自动地使知识库中的知识不断丰富和更新。三、专家系统的结构(6)人机接口(Interface
15、)是系统与用户进行对话的界面。用户通过人机接口输 入必要的数据、提出问题和获得推理结果及系统做出的解释;系统通过人机 接口要求用户回答系统的询问,回答用户的问题和解释。系统与用户交往的 媒介可以是文字、声音、图像、图形、动画、音像等。衡量一个专家系统性 能的高低,除了看其功能强弱和多少外,人机交互界面的友好方便,画面的 图文并茂、形象生动是很重要的。目前多媒体技术正在专家系统界面中得以 广泛应用。三、专家系统的结构(7)网络接口(Network Interface)是通向计算机网络中其他节点的通道,这些 节点可以是数据库、知识库或别的专家系统。有了网络接口,该专家系统就 能够成为网络产品,灵活
16、地被网络用户使用。三、专家系统的结构 在专家系统结构中,知识库就像人的大脑,存储着指定的全部知识,即内核 部分(kernal)。而推理机、人机接口、解释器等其他部分组合成一个结构框架,就像人的身体,因此人们常称之为“外壳”(shell)。这种外壳只要配上包含有特定领域中某方面知识的知识库,就组成一个可以运行的专家系统。四、专家系统的分类1按代分类(1)第一代专家系统。第一代专家系统的典型例子有化学专家系统DEN D RAL、数学专家系统MACSYMA等。它们具有以下特点:高度专业化,结构、功能不完整,移植性差;专门问题求解能力强,但缺乏推理解释功能。(2)第二代专家系统。第二代专家系统的典型例
17、子有医疗诊断专家系统MYCIN、地质探矿专家系统 PROSPECTOR、数学发现专家系统A M 等。它们具有以下特点:学科专业型应用系统;系统结构较完整,功能较全面,移植性好;具有推理解释功能,使用户能比较清楚地了解系统的解题过程。增强了系统的透明性,同时也有 利于发现错误,修改知识;采用启发推理、似然推理、非精确推理,增强了系统的表达能力,开拓了使用启发性知识和可信 度分析解决问题的新途径;把具有一定普遍意义的推理方法与大量同领域有关的专门知识结合起来,从而使这些系统具有广 泛的通用性;用产生式规则、框架、语义网络表达知识;用LISP语言编程。四、专家系统的分类四、专家系统的分类(3)第三代
18、专家系统。第三代专家系统的典型代表有多学科综合型专家系统HPP-80、骨架型专家系 统EMYCIN和EXPERT等。它们具有以下特点:多学科综合应用系统。利用专家系统开发工具建立专家系统。是一种大型知识工程系统。四、专家系统的分类2按用途分类:专家系统按照用途来分类主要有预测型专家系统、解释型专 家系统、设计型专家系统、诊断型专家系统、规划型专家系统、控制型专家 系统、监视型专家系统、调试型专家系统、修理型专家系统、教学型专家系 统。此外,还有翻译型专家系统、指挥决策型专家系统、管理型专家系统等。四、专家系统的分类3.按知识表示分类专家系统按照知识表示来分类可分为基于产生式规则的专 家系统、基
19、于一阶谓词的专家系统、基于框架的专家系统、基于语义网络的 专家系统等。4.按系统的体系结构分类 专家系统按照体系结构来分类可分为集中式专家 系统、分布式专家系统、神经网络专家系统、符号系统与神经网络相结合的 专家系统等。第二节 专家系统基本原理引言 专家系统的核心是知识,所以专家系统又常称为知识基系统,或称为基于知 识的系统(knowledge_based system)。围绕着知识,专家系统最基本的技术 是研究知识的表示、知识的运用、知识的获取等。(1)知识表示。它是研究如何将领域知识和专家经验等有效地表示成计算机能 够工作和运行的形式。在专家系统中,知识是存放在知识库中的,它们是按 照特定
20、的知识表示形式安排存储的。引言(2)知识运用。如何对存放在知识库中的知识进行控制与操作,以求问题的解 决,有时也叫问题求解。至今常常采取的方法是搜索或推理。(3)知识获取。如何从领域专家的口述或文字、书本资料或数据实例中抽取出 该专家系统所需要的知识。一、知识表示(一)知识 1知识的概念 知识(knowledge)是人们对客观事物及其规律的认识,包括对事物的现象、本质、属性、状态、关系、联系和运动等的认识;知识是在改造客观世界的 实践中积累并总结出来的方法、策略和经验,包括解决问题的步骤、操作、规则、过程、技术、技巧等具体的微观性方法,也包括诸如战术、战略、计 谋、策略等宏观性方法。2.知识的
21、属性(1)可表示性。知识可以用语言、文字、图形、动画、声音、神经元网络等形式来表示。(2)可利用性。知识可以被用来解决各种各样的问题。(3)不确定性。由于人们认识事物的局限性,可能会使知识带有一些不确定性,如知识的不完 备性、不确定性与模糊性。(4)矛盾性。同一个知识集中的不同知识之间相互对立或不一致,即从这些知识出发,会推出 不一致的结论。(5)相容性。同一个知识集中的所有知识之间互相不矛盾。相容性也称为知识的一致性。(6)真假性。知识可以通过实践或推理来证明知识为真或为假。(7)相对性。知识的真与假是相对于某些条件、环境及时间而言的,即知识一般不是无条件的 真或无条件的假。一、知识表示一、
22、知识表示 知识表示(Knowledge Representation)就是关于如何描述事物的一组约定,即 用一些约定的符号把知识编码成一组计算机可以接受的数据结构。也可以说知 识表示就是用知识的规则符号、形式语言和网络图等使知识符号化或模型化。换句话说,知识表示就是研究在计算机中怎样用合适的形式对问题求解过程中所需要的各种知识进行组织、存储、检索、使用、增删、修改、推理和判断。一、知识表示2设计知识表示的基本原则要使问题求解变得更加方便、容易、正确、高效,对知识表示应把握以下几点:(1)可实现性。知识表示要便于在计算机上实现,便于直接由计算机对其进行 处理;能否在工作过程中使系统不断地获取新的
23、知识,通过知识的不断增加,使系统解决问题的能力不断提高;是否便于系统开发和运行。一、知识表示(2)可理解性。所表示的知识应易读、易懂、易获取、易维护,使人和计算机 直接理解知识。(3)表示能力。它包括知识表示范围的广泛性、领域知识表示的高效性、对非 确定性知识表示的支持程度三个方面。(4)可维护性。在保证知识的一致性与完整性的前提下对知识所进行增加、删 除、修改、恢复等操作的能力,并保证修改过程中对已有知识的内容及结构 不产生或少产生干扰。一、知识表示(5)可利用性。它是指对推理的适应性和对高效算法的支持性。(6)自然性。知识表示形式要符合人们的日常习惯和思维方式,以及是否符合 人们的心理学特
24、点。(7)可组织性。它是指把有关知识按照某种方式组成一种知识结构的能力。3知识表示方法(1)谓词逻辑表示法。谓词逻辑是一种形式语言,也是目前能够表达人类思维 活动的一种最精确的语言,它与人类的自然语言比较接近,又可以方便地存 储到计算机中,并被计算机进行精确处理。在谓词逻辑中,命题是用谓词表示的。一个谓词可分为谓词名与个体两部分,个体表示某个独立存在的事物或者某个抽象的概念,谓词名用于刻画个体的 性质、状态或个体间的关系。一、知识表示一、知识表示 谓词的一般形式为:P是谓词名 x1 x2 xn 是个体 谓词名通常用大写英文字母表示,个体通常用小写英文字母表示。谓词中包含的 个体数目称为谓词的元
25、数P(x1,x2 xn)连词 非连词 或连词 析取。与连词合取。“P蕴含Q”,即“如果P,则Q”,其中P称为前件,Q称为后件。:其作用是否定位于后面的命题。:它表示被它连接的两个命题有“或”关系。用V连接两个命题称为:它表示被它连接的两个命题有“与”关系。用八连接两个命题称为 蕴含连词:它表示被它连接的两个命题的“蕴含”关系。表示P Q一、知识表示 量词 在谓词逻辑中,有下述两个量词:。谓词公式 由下述规则得到的谓词公式称为合式公式:单个谓词是合式公式,称为原子谓词公式。若A是合式公式,则冖A也是合式公式。若A、B都是合式公式,则AVB、AB、AB也都是合式公式。若A是合式公式,x是任一个体变
26、元,则(V x)A和(z)A也都是合式公式。在合式公式中,连词的优先级别依序为:冖,V,一。用谓词公式表示知识时,首先需要定义谓词,给出每个谓词的确切含义,然后再用连词把有关谓词连接起来表示一个更复杂的含义。对谓词公式中的变元,根据知识表示的需要,把需要约束的变元用相应的量词加以约束。x全称量词(Vz):它表示对个体域中的所有(或任一个)个体z存在量词(z):它表示在个体域中存在个体z。x一、知识表示一、知识表示2)产生式表示 产生式表示法已成为人工智能中应用最多的一种知识表示模式。产生式的一般形式为“前件+后件”。前件就是前提,后件是结论或动作,前件和后件可以是由逻辑运算符AND、OR、NO
27、T组成表达式。给定一组事 实后,可用匹配技术寻找可用产生式。一、知识表示2)产生式表示 一个产生式系统的基本结构包括全局数据库、规则库和控制系统这三个主要部分。产生式系统的推理 向前产生式系统。向前产生式称为数据驱动方式,也称作自底向上的方式。它是从初始状态(已知事实)出发,朝着目标状态前进,通过规则求得结论。向前产生式系统的主要优点是:简单明了,且能求得所有解。主要缺点是执 行效率较低,原因是它驱动了一些与问题无关的规则,具有一定的盲目性。一、知识表示2)产生式表示 向前产生式常用的推理算法(a)将初事实数据置人动态数据库;(b)用动态数据库中的事实数据,匹配测试目标条件,若目标条件满足,则
28、推理成功,结束;(c)用规则库中各规则的前提匹配动态数据库中的事实数据,将匹配成功 的规则组成待用规则集;(d)若待用规则集为空,则运行失败,退出;(e)将待用规则集中各规则的结论加入动态数据库,或者执行其动作,转(b)。一、知识表示2)产生式表示 向后产生式系统 向后产生式称为目标驱动方式,也称作自顶向下的方式。它是从目标(作为假 设)状态出发,朝着初始状态前进,逆向使用规则的一种推理方法:逆向使用 规则,是指以问题的目标状态作为初始全局数据库,仅当全局数据库中的事 实满足某条规则的后件时,该规则才被使用。向后产生式系统的主要优点是:不寻找无用数据,不使用与问题无关的规则。因此,对那些目标明
29、确的问题,使用向后产生式系统是一种最佳选择。一、知识表示2)产生式表示 向后产生式常用的推理算法(a)将初始事实数据置人动态数据库,将目标条件置入目标链;(b)若目标链为空,则推理成功,结束;(c)取出目标链中第一个目标,用动态数据库中的事实数据同其匹配,若匹 配成功,转步(b);(d)用规则集中的各规则的结论同该目标匹配,若匹配成功,则将第一个匹配 成功且未用过的规则的前提作为新的目标,并取代原来的父目标而加入目 标链,转(c);(e)若该目标是初始目标,则推理失败,退出;(f)将该目标的父目标移回目标链,取代该目标及其兄弟目标,转(c)。一、知识表示2)产生式表示 双向产生式系统 双向推理
30、是把正向推理和逆向推理结合起来使用的一种推理方式,既自顶向 下又自底向上作双向推理,直至某个中间界面上两方向结果相符便成功结束。这种双向推理较向前或向后推理所形成的推理网络来得小,从而推理效率更 高。采用这种方式需要把问题的初始状态和目标状态合并到一起构成全局数 据库。一、知识表示3)语义网络表示法 语义网络在形式上是一个有向图,由一组节点和若干条有向弧线构成,节点和 弧都可以有标号,节点表示各种事物、对象、概念、情况、性质、状态、事件、行为等;弧表示节点间的语义联系或关系。从结构上看,语义网络一般是由一些最基本的语义单元构成的,这种最基 本的语义单元被称为语义基元。一个语义基元可用三元组“(
31、节点1,弧,节点 2)”来表示。当把多个语义基元用相应的语义联系关联在一起时,就形成了一 个语义网络。在语义网络中,弧的方向是有意义的,不能随意调换。一、知识表示3)语义网络表示法 最常见的基本语义关系类属关系。指具有共同属性的不同事物问的分类关系、成员关系或实例关 系。类属关系的一个最主要特征是属性的继承性,处在具体层的节点可以继 承抽象层节点的所有属性。常用的类属关系有AKindof(是一种)、A Memberof(是一员)、Isa(是一个)。包含关系。也称为聚类关系,是指具有组织或结构特征的“部分与整体”之间的关系。它和类属关系的最主要区别是包含关系一般不具备属性的继承 性。常用的包含关
32、系是Apartof(是一部分)。属性关系。它是指事物和其属性之间的关系。常用的属性关系有卜lave(有)、can(能、会)、所有者(owner)。一、知识表示3)语义网络表示法 时间关系。指不同事件在其发生时间方面的先后次序关系。常用的时间关系有Before(在前),After(在后)。推论关系。如果一个概念可由另一个概念推出,两个概念之间存在因果关 系,则称它们之间是推论关系。推论关系用Fetch(推出)表示。位置关系。不同事物在位置方面的关系。常用的位置关系有:Located on(在上)、Locatedat(在)、Locatedunder(在下)、Locatedinside(在内)、Lo
33、catedoutside(在外)。相近关系。不同事物在形状、内容等方面相似或接近。常用的相近关系有:Similarto(相似)、Nearto(接近)。二、推理策略 推理机构是专家系统的主要核心部分之一。它实际上是整个专家系统的控制 中心,整个系统靠它进行运转。知识库不是程序,推理机才是真正的计算机 程序(也称为控制程序),专家系统依靠它调用知识库、人机接口、数据库及 其他部分进行工作,解决用户提出的问题。而它的控制方式是推理机制或者 叫推理策略。推理机制主要有两种,即匹配和继承二、推理策略 知识表示策略与推理机制两者是相互配合的,不同的知识表示策略需要相应 的推理机制。在一个产生式规则系统中,
34、知识表示是利用规则方式,即系统 的知识是用若干规则组成。在知识库中这些规则是随意安排的,但它们又是 紧密联系的。它们是通过一个推理分析网络紧紧联系在一起,每一个专家系 统实际上有一个严密完备的推理网络图。二、推理策略在分析这种推理网络的思路中,可以有两种分析方式:一种是由下向上,即从 用户提问因素向目标节点一步一步推导;一种是从上向下,即从目标节点到初 始节点一步一步推导。1.正向推理:正向推理是以事实或数据驱动。2.反向推理:反向推理是一种称作“假设一测试”的策略。3.混合推理:混合推理是正向推理与反向推理配合进行。4.不确定性推理:上面介绍的规则中,条件和结论本身所表示的知识均是确定 性的
35、知识,即不是“是”,就是“否”,条件与结论之间的关系也是肯定的。根据农业知识的特点,还有非单调推理、定性推理、常识推理、基于案例推理等三、解释机制 专家系统的解释就是对系统设计员或用户提出的问题给出解释或说明,专家 系统的解释器就是专家系统中为完成解释而设置的程序模块。解释机制可以有以下几种不同的实现方法1.预置文本与路径跟踪法:2.策略解释法:将策略知识、分类知识和把数据与假设联系起来的经验知识分开编码存储。3.自动程序员方法:通过跟踪推理过程中规则的执行而给出的解释仅仅描述了系统的行为过程,没有 论证其行为的合理性。4.解释型专家系统(Explanable Expert System):基
36、本思想是把专家系统的设计与解释机制的设计进行 全盘考虑,从而给出更合理的解释方案。四、知识获取 在专家系统中,知识库的建造通常是知识工程师与领域专家密切配合的结果。领域专家自己总结或知识工程师与领域专家共同整理总结该领域的知识和他 们的实际知识、经验、模型及研究成果等,按所建专家系统规定的知识表示 形式,整理成一个个知识单元,放入知识库,这种过程称之为知识获取。四、知识获取 1知识获取方式从知识源获取知识,基本有以下三种获取方式(1)人工获取方式。即知识工程师与领域专家交谈、讨论,以及从书本资料中 整理、总结。人工整理好后,再建造知识库。(2)半自动获取方式。计算机通过一种智能编辑器工具同专家
37、打交道,按照人机交互要求整理知识,安排知识库。(3)自动获取方式。计算机直接从专家、书本以及实例、数据中获取专家系统 需要的知识,并在获取过程中不断改善知识的性能,即自身具有学习本领。四、知识获取 2知识获取过程 整个知识获取过程大致可以分为四个主要阶段:确定任务、制订方案、实施获取 调试完善。四、知识获取 会谈式知识获取法:黑板技术和白板技术 黑板技术的实施是由知识工程师选择一组领域专家进行会谈,先请专家们一 起讨论某个专门知识的模型,在他们消除不一致且达到满意的细节描述后,知识工程师再开始建模,即在细节描述的基础上归纳出专家们做出判断的原 理性知识。白板技术是由知识工程师首先深入问题领域,
38、分析、归并有关的领域知识(包 括整理专家的各种案例),进而将研究结果提交专家进行评审,最后专家们将 自己的意见反馈回工程师并由其进行最终的整理、归纳。在实施获取阶段应注意以下几点:(1)条理性。采取“由上向下”或“由下向上”的分析方法。(2)广与精相结合。一开始,不要全面铺开,应尽快集中到某个方面深入加以剖析。(3)不断提炼。在与专家交谈时,往往会发现他们的经验有时并不是很完整,不一定能够顺利地提炼出来,常常需要经过 多次补充和修改。专家的经验、知识有时很零散,知识工程师要有耐心,善于从零乱中整理出条理,从分散中加以集中,逐步去伪存真,不断精炼。(4)主动获取知识。有时(实际上是常常)要主动提
39、出问题,引导领域专家去总结,去挖掘。(5)集中统一。若从多个专家或一个技术群体获取知识,有时会出现彼此看法不一致,甚至矛盾的现象。在这种情况下,一方面请专家们坐下来认真、充分地讨论,求得尽可能一致的意见;另一方面,应多尊重在该问题上最有权威或最有发言 权的专家的意见,当然更应该尊重事实。(6)认真细致,一丝不苟。四、知识获取第三节 农业专家系统的开发农业专家系统的开发 从宏观角度分析,专家系统开发常用方法主要包括两个方面,即利用专家系 统工具进行无编程开发和利用程序设计语言进行编程开发。一、利用专家系统开发工具进行开发 专家系统开发工具,也称专家系统壳(ES Shell),是开发建造实用专家系
40、统十分有用的工具。目前国外开发专家系统多运用开发工具来实现。农业专家系统的开发 前主要的专家系统开发工具有EXSYS、PREDICT。VP-EXPERT PENSHELL以及 PAlD、ISIDP、EST、XF与DET等(1)编辑型开发工具(2)智能型开发工具(3)自动知识获取工具农业专家系统的开发二、利用程序设计语言进行开发 目前用于专家系统编程开发的程序设计语言出现了许多种,早期以DOS为平台的主要有LISP、Turbo Prolog、Quick Basic、C等;后期以Windows为平台、具有多媒体设计功能的主要有 Visual Basic:Visual C+、JAVA、Prolog for Windows等。例如,williams等于1993年采用 Visual C+研制成功棉花病虫害管理专家系统;李德明等1996年报道的寒地水稻生育诊断、预测及丰产技术专家系统则采用Quick:Basic进行开发;中国农业大学植保信息与软件工程 实验室(IPMIST)开发的蔬菜害虫田间识别系统Pest Diag及植检害虫鉴定多媒体专家系统PQ Pick Bugs,是以Visual Basic进行编程开发的。例:网页型农业专家系统THE END