已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学士学位论文 摘 要摘 要鱼病诊断知识的构成比较复杂,既有定量的数值性知识,又有定性的描述性知识,如何有效地获取和管理这些知识关系到整个专家系统的运行效率和实用价值。本文以知识获取理论为指导,结合鱼病诊断知识的具体特点,从技术角度开发了一个基于网络的鱼病诊断知识获取系统。本系统主要包括鱼病诊断知识库和知识获取界面两部分。本系统通过友好的知识获取界面,以尽量自然的人机交互方式完成鱼病诊断知识由领域专家向知识库内部组织模式的转换与传递。鱼病专家经过简单的培训,就可以自主地通过知识获取系统方便快捷地向知识库中输入诊断知识。由于采用获取实际诊断中的病例建立知识库,诊断知识真实可靠,知识库的实用性强。而且本系统基于网络设计,可以进行实时信息交互,效率高。关键词: 鱼病诊断 知识获取 知识库 基于网络abstractthe composing of fish disease diagnosis is complex. the knowledge of fish disease diagnosis is not only about figure but also about description. it is significant to acquire and manage the knowledge effectively. and that affect the efficiency and practicality of the expert system. after analyzing theory of knowledge acquisition and fish disease diagnosis, this paper describe a web-based knowledge acquisition system for fish disease diagnosis. this system consist of two part, a knowledge base for fish disease diagnosis and an interface for knowledge acquisition of fish disease diagnosis. through a friendly interface, this system can transform and transfer the knowledge of fish disease diagnosis from the expert on that to the knowledge base expediently. after an ordinary training, the expert on fish disease diagnosis can input the knowledge through the interface and the internet into the knowledge base easily and quickly. and the knowledge acquired is very actual and effective. for this knowledge acquisition system is web-based, expert can communicate with the knowledge base quickly and expediently.key word: fish disease diagnosis, knowledge acquisition, knowledge base, web-based学士学位论文 第一章 绪 论39学士学位论文 目 录目 录第一章 绪 论11.1问题的提出和研究意义11.2文献综述21.3 研究目标、内容、方法与特色8第二章 系统分析112.1 需求分析112.2 可行性分析112.3 系统功能分析122.4 系统结构分析132.5 系统工作流程分析162.6 本章小结16第三章 系统设计183.1 知识库的设计183.2 人机接口设计213.3 本章小结25第四章 系统实现264.1系统开发软件介绍264.2 系统网络体系结构284.3 系统界面展示29第五章 结论与展望365.1 研究结论365.2 对进一步研究的展望36致 谢38附 录39参考文献45学士学位论文 第一章 绪 论第一章 绪 论1.1问题的提出和研究意义渔业经济的健康、稳定、持续发展对于提高人民生活水平、改善饮食结构、促进环境保护、推动农业结构调整,实现农业经济由粗放型向集约型转变等方面发挥着重要作用。近20年来,我国水产品年均增长率达到10.5%,超过世界年均增长率6.8%的发展速度。2002年19月份水产品养殖产量就达到1159万吨,为1978年的15.3倍。在我国水产业获得迅猛发展的同时,也存在令人担忧的危机:鱼类病害频繁发生,生产管理水平低下,服务体系落后,经济损失严重。据不完全统计,目前危害水产养殖生物的病害已达400500种,全国每年水产养殖病害发病率达50%以上,损失率20%左右,由病害造成的直接经济损失达百亿元之多。病害的发生还引起水产品质量下降、食品安全性降低、渔业水域环境恶化、功能退化和生态失衡等问题,已经成为制约水产养殖业向深度和广度发展的主要因素之一。目前,我国鱼病诊断专家比较缺乏,而大多数农民的科技素质较低,对鱼病发生的规律认识不够,因此不能科学地监测、预防和诊治鱼病。另一方面,养殖户比较分散,无专业的养殖技术人员或养殖技术人员水平低,因而在鱼病诊断与防治过程中,常常由于现场缺乏专家或专家到场不及时造成损失,形成了领域专家知识的供给和生产需求之间的传播瓶颈,制约了渔业工厂化养殖健康有序的发展。为解决病害频繁发生而领域专家缺乏的矛盾,减少病害带来的经济损失,使鱼病达到及时诊断、适时防治的效果,国内外许多科研机构在对病害诊断与防治研究基础上,借助于先进的科技产品和信息技术,研制开发了各种鱼类疾病诊断专家系统,利用这些专家系统模仿人类专家对鱼病进行诊断和防治,使鱼病诊断从依靠经验防治向科学防治迈进了一步。1但由于知识处理技术的不成熟和开发人员对领域知识认识的肤浅性,致使鱼病诊断专家系统在应用中日益出现脆弱性和不可靠性,解决实际问题的效率低下,无法在实际应用中发挥应有的作用。分析这种状况,作者认为存在以下几个方面的问题: 1. 对鱼病诊断对象多疾病、多病因的特点及其对诊断推理方式的影响考虑不够,机械的套用产生式规则,造成诊断问题的求解单一,因而限制了其在生产实践中的应用。2. 对诊断过程中多种不确定性同时存在的情况研究不充分。如疾病、病因发生的随机性和症状获取的模糊性问题,诊断过程中的知识的不完备问题等,多种不确定性问题的组合需要进一步深入的研究,才能使诊断推理更加符合实际生产情况。3. 诊断推理模型不符合实际情况,诊断结论不具备针对性。由于对鱼病产生、传播机理认识不清晰,因而不能建立正确的诊断推理模型,不能给出针对性的病因和治疗方案,使其实用性受到影响。基于上述原因,我们课题组从专家系统的基础理论出发,在深入分析鱼病诊断领域问题和诊断过程基础上,正在开发基于案例(case-based)的鱼病诊断专家系统,把专家知识放在突出重要的位置。由于采用获取实际诊断中的病例建立鱼病诊断知识库,诊断知识真实可靠,针对性强。本文设计的鱼病诊断知识获取系统,正是为了获取源自专家的诊断知识而开发的,有很强的实用性。1.2文献综述本系统的开发涉及很多专业知识,以前是没有接触到的,因此在开发系统前作者查阅了大量相关文献来做预备知识,主要是关于知识获取理论的研究和鱼病诊断的专业知识,现在总结如下。1.2.1 关于知识获取理论的研究知识库是专家系统的核心,它决定了专家系统的水平,也决定了专家系统的效率。知识库中的知识越完全越真实,则专家系统的水平越高。这就显示出知识获取的重要性。目前,知识获取仍是开发专家系统的瓶颈。1.2.1.1 知识获取的概念知识获取(knowledge acquisition,ka)是指通过某种方法从某些知识源(如领域专家、文献资料或案例等)中获取专家系统实现问题求解所需要的专门知识,包括共性知识和个性知识。其实质是确定知识范围、采集和加工编辑知识的过程。知识获取是决定一个专家系统性能是否优越的主要因素,是开发专家系统的关键技术之一。1.2.1.2 知识获取的任务知识获取的基本任务是为专家系统获取知识,建立起健全、完善、有效的知识库,以满足求解问题的需要。概括地说知识获取的任务包括以下几个方面:从知识源获取知识,并对其分析、选择、抽取、总结和组织等;对己有的知识进行求精;从己有的知识通过学习产生新的知识,包括从外界学习新知识;检测并消除已有知识的矛盾性和冗余性,而且还要保持与己有知识相互一致及满足其完整性的要求。31.2.1.3 知识获取的阶段一个专家系统的知识获取从确定系统需要的知识到系统投入使用需要经过不同的阶段,不同阶段需要用到不同的技术,这些阶段可以概括地分为:知识领域的确定、知识源的确定、知识的概念化、知识的形式化、知识实现和完善等六个阶段。1.知识领域的确定在知识获取之前,知识工程师需要选取一个或多个领域专家,以请教的方式学习与诊断有关的知识,先获取领域知识的基本概念。然后,确定专家系统需要解决的问题及系统的目标,确定待建知识库所需要的具体的知识领域。42.知识源的确定知识工程师与领域专家共同研讨一切可以利用的知识源,其中可能包括过去的诊断实例、教科书、论文以及隐含在诊断专家头脑中的问题的求解经验等。确定阶段主要是选定参与者并确定他们的任务。3.知识的概念化通过各种知识源的获取及与专家的密切配合,把前述确定的系统目标内的主要概念、关系以图解形式描述出来。这一阶段主要包括:确定数据类型、分析系统预定的输入输出、系统目标的分解、每个目标的约束、领域问题的求解策略、通常可使用的局部假设、问题领域中各实体的相关性(包括局部与整体关系)和问题领域内实体间的因果关系、集合包含、层次结构等。4.知识形式化知识形式化就是把从专家及文献那里抽取的知识转换为某种表示形式。该阶段包括把在概念化期间分离出来的重要概念、子问题以及信息流特性映射成为以各种知识工具和框架为基础的更加正式的一般表示。5.知识实现阶段知识实现阶段主要完成:选择适当的辅助工具建立初始的知识库,即把形式化的知识映射到与该问题选择的工具相联系的表示框架中。由于知识在框架中是一致的,相容的,并用它们定义具体的控制和信息流程,因而它就成为一个可执行的程序,从而形成一个模型专家系统。知识实现阶段可能会发现形式化阶段所确定的推理模式、知识的表示和全局数据库的结构不匹配,此时需要知识工程师同专家密切配合以消除整体上的不一致性。6.知识完善阶段知识库的建立是通过对知识进行抽取、转换、输入等环节实现的,在这一过程中任何环节上的失误都会造成知识的错误,直接影响到专家系统的性能。在知识输入时及时进行检测,发现知识中可能存在的不一致、不完整等问题,并采取相应的措施。而这里主要采用的是关系数据库本身的域完整性约束、实体完整性约束和参照完整性约束来对知识库进行一致性和完整性的维护。一旦模型系统能从头到尾运行两三个实例,就要通过各种各样的实例来确定知识库和推理结构的弱点。然后知识工程师与领域专家相互配合来修正这些弱点,并且系统自身也应能随着经验的积累在原有知识库的基础上进行扩充或改进。当原型系统投入运行时,随着实际问题的求解,专家、知识工程师或系统自身随着经验的积累在原有知识库的基础上所进行的扩充和改进。3在建造专家系统的过程中,几乎要不断地修改,包括概念的重新陈述、表示的重新设计、执行系统的精加工、模型的精加工等常常循环反复地贯穿于实现和测试阶段,以协调或校正规则及其控制结构,直至得到期望的运行结果。561.2.1.4 知识获取的方法目前知识获取的方法主要有两种:人工知识获取和机器学习。1.人工知识获取是指以人工方式从知识源获取领域知识,并存储在计算机的知识库。人工知识获取主要通过以下两种途径实现:一是知识工程师通过与领域专家交谈、阅读有关的书籍、会议记录等文献资料或者分析系统原理,了解现场运行情况,进而自己消化整理、归纳、吸收和编辑而形成专家系统可以利用的知识,再利用知识库编辑工具写入知识库;二是开发专门的交互式智能编辑程序,领域专家可以通过智能编辑程序直接和专家系统交流信息,并生成知识。32.机器学习是指计算机系统直接从知识源(如领域专家、文献资料或案例等)中获取所需要的一部分或全部知识,从而不断地完善系统自身的性能。机器学习是一个复杂的过程,需要有大量的领域知识作为支持机器学习的环境。20世纪80年代以来,机器学习的研究取得了一定的成果,但由于人类学习的机理没有彻底弄清楚,机器学习因此受到了非常大的限制。不过从长远发展来看,机器学习更有发展前途,机器学习是知识获取的发展方向。目前有很多种机器学习方法,按推理策略分类可分为以下几类:归纳学习(inductive learning)类比学习(analogical learning)分析学习(analytic learning)遗传学习(genetic learning)连接学习或神经网络(connectionist learning & neural networks)。71.2.1.5 知识获取的困难知识获取至今仍是专家系统研发中的“瓶颈”。究其原因是由于知识的自动获取一直未能取得很大的进展。领域专家一直被认为是一种很重要的知识源,但要从他们的头脑中挖掘知识是相当困难的,往往要花费知识工程师很多时间。为了获取知识建立知识库,必须由知识工程师从领域专家那里抽取知识,但领域专家一般习惯于提供具体事例,不善于提供知识,这就增大了知识抽取的难度。要求知识工程师直接与领域专家对话,并在理解的基础上进行形式化,然后输入知识库中,这是一项十分费时的工作,可能由于理解上的不正确不全面造成知识的错误。对系统的开发者来说,他只能选择一些适合于这些知识的表达工具,但这些工具也有知识表达方面的约束,一旦确定了可表示的知识部分,知识的表达还受到系统的硬件、软件、性能以及能力方面的限制,所以系统最终包含的知识是专家所具有知识总体的子集的子集,不够全面。3当知识工程师开发某一领域的专家系统时,由于知识工程师要从头学一门新的专业知识,所以他要在领域专家的指导下,翻阅许多书面文献、资料,从中摘取与系统建模有关领域的共性知识;与此同时还要花费大量的时间与专家密切配合,获取专家的个性知识,即启发式知识。7 经验表明,获取专家的个性知识是非常困难的。第一,许多专家从未系统地整理过自己的经验,他们能恰当地处理一个又一个具体问题,却说不清楚是根据什么原则来处理的。他们能告诉你一个问题的判断结果,但说不清判断过程。也就是说,专家尽管很自信他们的问题求解方法很有效(这是因为这些方法是经过实践检验的),但他们自己也没有完全理解这些方法,因而这些原则和方法就需要知识工程师从专家处理过的大量问题的安全案例中去摸索、总结;第二,启发式知识往往是不精确的,把专家以口语方式表达的知识转换为程序设计中所运用的形式化术语,这往往是非常困难的,因为专家的启发式知识往往隐含着意识不到的近似、不完备的、甚至是相互矛盾的。这种不精确性一方面要求知识工程师提供合适的表示模式,另一方面有了合适的表示后要有合适的措施去检测和验证,也就是说要经过实践的验证,这就需要许多事例和时间来验证。5 8 9 1.2.2鱼病诊断知识概述要科学快捷的获取鱼病诊断知识,建立一个符合鱼病诊断特点的知识获取系统,就必须拥有鱼病诊断领域特有的知识,理解鱼病诊断领域的问题。因此在开发鱼病诊断知识获取系统前,作者通过查阅大量领域文献来了解鱼病诊断的基本过程和鱼病专家诊断鱼病的思维过程,确定鱼病诊断知识的基本结构。1.2.2.1鱼病的产生机理鱼病的产生是外界环境的各种致病因素和鱼体自身抗病因素相互斗争,导致平衡破坏的结果。即由病因导致疾病,又在外在表现出一系列症状。而鱼病诊断是指生活在水中的鱼类产生疾病现象或具有疾病隐患时,根据鱼体表现出的症状现象以及水体环境的异常征候等特征信息来判断鱼体疾病的性质(属于哪一类疾病),并找出疾病产生的原因,最终达到排除疾病的目的的过程。在这个过程中包含症状、疾病、病因三个结点和两个变换:即从症状到疾病,从疾病到病因的变换,这种疾病诊断过程恰恰是疾病产生和传播过程的逆过程(如图1-1所示)。疾病诊断过程疾病发生过程疾病症状放射性关系因果关系图1-1疾病诊断与疾病发生过程的关系疾病病因疾病症状、疾病和病因之间的关系概括为以下几个方面:1症状是识别疾病原因的有效诊断信息,是病因的具体反映。2疾病是对鱼体患病过程中的规律和特点的概括,是不同症状表现的组合。疾病在一定情况下会诱发其他疾病的产生,成为其他疾病的病因。d3病因类疾病类症状类s5s3s1d2d4d1c3c1图1-2病因、疾病、症状的因果关系c2s4s23病因是对疾病本质的认识,是治疗的基础和依据。同一种病由于不同的病因可能出现不同的症状;而不同病由于病因相同而症状相同,在诊断治疗时有“同病异因,异病同因”的特点。2 如图1-2所示:c11.2.2.2 鱼病诊断概念模型及过程鱼病诊断是指诊断主体(鱼病专家)根据诊断客体(生活在水中的鱼类)所表现出的特征信息,采用一定的诊断方法对其进行识别,以判定客体是否处于健康状态,找出相应原因并提出改变状态或预防发生的办法,从而对客体状态做出合乎客观实际结论。影响鱼病诊断目的的主要因素有:诊断主体、诊断客体、诊断要素、诊断结果、诊断方法等。这些因素相互关联、相互作用,构成了一个有机的整体(如图1-3所示)。图1-3鱼病诊断模型鱼病诊断客体21中的患病鱼体水环境中的患病鱼体鱼类观察实验思维鱼病诊断方法诊断要素症状疾病病因诊断结果 防治方法鱼病诊断主体鱼病专家鱼病诊断的根本目的是通过对症状等诊断信息的综合分析,找出鱼体所患疾病及其发病的原因并给出治疗方法,以保证鱼类及其生存水体环境处于健康状态。鱼病诊断包括两方面的含义:(1)判断鱼体所患疾病并描述疾病发展过程;(2)查明导致鱼体患病的初始原因并给出治疗方案。鱼病诊断的过程和内容大致可以表述如下:首先,鱼病专家通过自己的感观和一些检验设备,根据现场调查、鱼体检查、检验诊断等结果搜集诊断资料,然后对诊断资料进行综合分析,通过情景回忆搜索是否有相似案例,如果有,则判断得出鱼体所患的疾病,并根据进一步收集的诊断信息查明鱼体发病原因,否则,则按照经验知识进行推理判断,最后给出针对性的治疗方案(如图1-4所示)1。水环境中的患病鱼体综合分析资料专家感官专家感官检验设备搜集诊断资料现场调查鱼体检查实验检查指导进一步获取诊断信息找出鱼体发病原因相似案例比较是否有相似案例?判断鱼体所患疾病经验知识分析诊断yesno防治方法图1-4 鱼病诊断过程鱼病的诊断过程主要包括以下五个阶段:(1)收集诊断资料鱼病医生通过现场调查、微观检查以及实验检测三个阶段收集资料;(2) 综合分析资料这个阶段将现场调查、鱼体检查、检验诊断中所获取的诊断资料进行综合分析,然后这些诊断信息进行分类,包括:鱼体自身信息鱼体体表症状信息镜检到的微生物水体环境理化指标;(3)鱼病诊断阶段在鱼病诊断过程中,专家大脑中的诊断知识通常以两种形式用于疾病诊断。一种是案例知识,另一种是长期的诊断实践学习上升为逻辑语言表示的经验知识。在诊断初始,案例知识十分重要的作用,有经验的鱼病诊断专家不仅掌握了大量关于诊断对象的案例知识,而且能够灵活的加以应用。(4)诊断鱼病病因(5)治疗阶段1.3 研究目标、内容、特色与方法1.3.1 研究目标前面提到,目前开发出来的鱼病诊断专家系统存在许多问题,其中一个重要的原因就是知识库中的诊断知识的不完备和与实际脱节。本文所要设计的鱼病诊断知识获取系统,就是要通过一个友好的知识获取界面,以尽量自然的人机交互方式完成鱼病诊断知识由领域专家向知识库内部组织模式的转换与传递。使鱼病专家经过简单的培训,就可以自主地通过知识获取界面方便快捷地输入诊断知识到知识库中。另一方面,专家系统的知识库不可能一次建成,需要不断完善,该知识获取系统也可以用来完成这项工作。鱼病专家通过本系统可以进行添加、查询、修改、删除等操作。这些功能对逐步完善知识库有十分重要的作用。1.3.2 研究内容本系统要研究的内容主要是两部分:鱼病诊断知识库和知识获取界面(如图1-5所示)。 知识获取界面图1-5系统研究内容 鱼病专家鱼病诊断知识库查询添加、修改、删除1. 知识库是专家系统的核心,它决定了专家系统的水平,也决定了专家系统的效率。知识库中的知识越完全越真实,则专家系统的水平越高。鱼病诊断知识的构成比较复杂,既有数值性知识,又有定性的描述性知识,如何有效地存储和管理这些知识将关系到整个系统的运行效率。本文根据鱼病诊断知识的特点,并结合关系型数据库的开发方法来设计诊断知识库。2. 知识获取界面是专家与知识库进行交互的接口,鱼病专家直接接触的就是知识获取界面。目前大多数基层的鱼病专家的计算机水平不高,因此知识获取界面一定要非常友好、操作简易,鱼病专家只要稍作培训就可以独立的进行使用,这样才能更好的达到系统目的。这也是“以人为本”的思想在系统开发中的应用。1.3.3 研究的特色通常情况下,知识获取是通过知识工程师与农业专家反复交谈将农业专家的知识和经验一一挖掘出来,再由计算机专家归纳、整理,并按一定的知识表示法送入计算机中。这种知识获取方法比较原始且效率低。本文开发的知识获取系统设计了一个友好的知识获取界面,而且是基于网络的。鱼病专家经过简单的培训,就可通过知识获取界面而方便快捷地输入诊断知识。该系统将通常的专家和知识工程师的信息交互转换为专家直接与知识库进行信息交互(如图1-6所示)。概括起来,本文设计的鱼病诊断知识获取系统有以下几个特点:1. 基于网络、实时信息交互、分布式信息处理;2. 界面友好、操作简易;3. 扩充性好、系统维护方便;4. 获取的鱼病诊断知识真实可靠;5. 采用基于案例的管理方法,实用性强。领域专家图 1-6领域专家知识获取界面知识工程师编辑软件知识库知识库1.3.4 研究方法及开发路线知识获取系统也是一种计算机软件系统,因此它的研究开发应遵循软件系统的开发原则,即经过系统分析、系统设计与系统实现阶段。本文基于鱼病诊断问题的特点,按照软件工程和知识工程的开发方法,将鱼病诊断知识获取系统的研究开发过程分为:问题的提出、文献综述、系统前期分析、系统结构分析、系统设计和系统实现(如图1-7所示)。问 题 的 提 出系 统 前 期 分 析需求分析可行性分析现行系统分析文 献 综 述系 统 结 构 分 析总体结构分析知识库结构分析工作流程分析功能模块分析系 统 设 计知识库设计人机接口设计结 论 与 展 望图 1-7系统研究技术路线系 统 实 现知识获取理论研究系统总体设计鱼病诊断知识研究1.3.5 本章小结本章通过对我国鱼类病害的形势及其对我国渔业健康发展的危害的分析,阐述了问题的提出和研究意义。在文献综述中,主要对知识获取领域和鱼病诊断领域的基本理论知识作了简要介绍,这也是本系统设计的一个基础。最后阐述了本研究的目的、研究内容、研究特色、研究方法及开发路线。特别是开发路线,既符合了一般计算机软件系统的开发原则,又突出了本研究的特点。学士学位论文 第二章 系统分析第二章 系统分析2.1 需求分析在绪论中已经提到,我国目前鱼病诊断专家比较缺乏,加上养殖户比较分散,养殖人员技术水平低下,因而在鱼病诊断与防治过程中,常常由于现场缺乏专家或专家到场不及时造成损失,形成了领域专家知识的供给和生产需求之间的传播瓶颈,制约了渔业的健康发展。为解决病害频繁发生与领域专家缺乏的矛盾,国内外许多科研机构在对病害诊断与防治研究基础上,研制开发了各种鱼类疾病诊断专家系统,使鱼病诊断从依靠经验防治向科学防治迈进了一步。但由于知识处理技术的不成熟性和开发人员对领域认识的肤浅性,致使鱼病诊断专家系统在应用中日益出现脆弱性和不可靠性,解决实际问题的效率低下。 针对这些问题,我们课题组采用基于案例的推理方法(case based reasoning ,cbr)开发基于案例的鱼病诊断专家系统,充分重视专家的经验知识和案例知识,力图做到真实可靠、符合实际。而本文设计的鱼病诊断知识获取系统就是为这个专家系统服务的,其功能就是用来获得源自于鱼病专家的真实的病例知识,建成鱼病诊断知识库。根据鱼病诊断知识的特点,本系统需要获取的诊断知识主要包括鱼的种类、规格、疾病名称、患病时间、池中表现、各部位的目检症状、病因分析、防治方法和建议镜检部位。2.2 可行性分析系统可行性分析一般包括研究条件可行性、技术可行性和经济可行性等方面的内容,结合本研究的特点,对系统的可行性进行如下分析:1系统的知识来源可靠性分析北京市水产所专家提供的原始鱼病诊断资料,天津农学院水产专家丰富的鱼病诊断经验和诊断思路,天津12个县区水产养殖工作站的专家的问卷调查,这些知识就成为鱼病诊断专家系统的知识库的主要来源和基础。2系统的技术可行性分析“863”项目小组成熟的网络技术、人工智能技术以及农业系统集成技术重点实验室先进的硬件设备为本人实现此系统提供了强有力的支持。3. 系统的经济可行性分析鱼病诊断专家系统的研究属于“863”重点资助项目,因此系统的研制开发具有充足的资金和良好的考察、示范基地。4系统推广与应用可行性“天津市农业和农村综合信息平台”的建设,为鱼病诊断专家系统的推广和应用提供了保障。该信息平台作为天津市信息港建设的重点项目,已在部分示范区实现100%乡镇联网,80%村应用农业信息系统,这种便捷的网络服务体系能够推进鱼病诊断专家系统的应用和再建设,使该系统真正为用户服务。2.3 系统功能分析专家注册系统维护图2-1系统功能模块鱼病诊断知识获取系统病例删除病例修改病例查询知识获取专家登录根据系统要达到的研究目的分析,本系统主要包括以下七个功能模块:10161专家注册模块记录专家基本信息,尤其是用户名和密码。2专家登录模块通过用户名和密码验证专家身份,以进行下一步操作。3鱼病诊断知识获取模块通过知识获取模块,可直接将本领域的专业知识输人计算机,建成动态知识库。知识获取的内容包括基本信息、病鱼的现场表现及各部位的症状、病因、防治方法和建议镜检部位等。4病例查询模块包括无条件查询和有条件查询:(1)无条件查询,浏览知识库中的全部病例;(2)有条件查询知识库中的病例,包括按鱼病名或案例号查询。还可以根据专家用户名查询个人已提交的病例。5病例修改模块首先按鱼病名、案例号或专家用户名查询出需要编辑的病例,然后进行修改操作。6病例删除模块首先按鱼病名、案例号或专家用户名查询出需要编辑的病例,然后进行修改操作。7系统维护模块通过用户名和密码验证管理员身份,以进行系统的维护操作。2.4 系统结构分析2.4.1 总体结构分析本文所建立的鱼病诊断知识获取系统主要由四部分组成:用户、人机接口、知识库、系统管理员(如图2-2所示)。用户主要是鱼病领域的专家,包括理论专家、实践专家和鱼病医生等。人机接口这里就是指鱼病诊断知识获取界面,即用户的操作界面,用来连接领域专家和知识库,使领域专家可以方便的与知识库交互信息,扩充知识库。知识库基于鱼病诊断知识的具体特点,按照关系型数据库的规则建立数据库,用来存储鱼病诊断知识。系统管理员图2-2系统总体结构鱼病诊断知识库用户(鱼病专家)知识获取界面(人机接口)系统管理员为了保证知识库中的知识完整有效,必需不断对知识库进行维护。系统管理员拥有最高管理权限,可以通过系统界面进行维护,也可以直接操作服务器和后台数据库,对人机接口和知识库进行维护。2.4.2 知识库结构分析2.4.2.1 鱼病诊断知识结构分析要有效的理解鱼病诊断领域的问题,科学的获取鱼病诊断知识,建立一个符合鱼病诊断特点的知识库,就必须拥有鱼病诊断领域特有的知识。根据前面对鱼病诊断模型、诊断过程和鱼病产生机理的学习,我们对鱼病诊断知识的基本结构有了基本的了解。本系统尚处在初级阶段,获取的对象主要是鱼病专家诊断鱼病的病例知识。目前确定的一个完整的病例信息包括以下几个部分:基本信息、现场表现、鱼体目检症状、病因、防治方法和建议镜检部位。具体如下:(1) 基本信息:鱼的种类,鱼的规格,鱼病名,发病时期;(2) 现场表现:鱼在池塘中的现场表现;(3) 鱼体目检症状:头部症状,体表症状,腮部症状,鳞片症状,鱼鳍症状,腹部症状,肌肉症状,内脏症状;(4) 病因:寄生虫,细菌,真菌,病毒,藻类,水质问题,饲养管理问题;(5) 防治方法和建议镜检部位。当仅凭鱼体目检症状不能或难以确定鱼病的情况下,需要进一步通过镜检来确认鱼病的病因。2.4.2.2 知识库物理结构分析根据上面对鱼病诊断知识结构的分析,我们看到,鱼病诊断知识的构成比较复杂,既有数值性知识,又有定性的描述性知识,如何有效地存储和管理这些知识将关系到整个推理系统的运行效率。本系统采用目前流行的关系型数据库(rdb)来建立知识库。关系型数据库具有强大的数据存储、检索、组织及管理能力,结合鱼病诊断知识的具体特点设计知识库的结构,使各种鱼病诊断知识表示方法在rdb下的实现,有利于提高知识的共享与检索效率,进而提高知识获取系统的性能。6另一方面,由于鱼病诊断知识构成的复杂性,很难以一种统一的数据结构来表示,而且把各种信息不加分类地存放在一起势必引起很多的冗余,且使用与维护不便。因此,本系统结合关系型数据库的范式要求和鱼病诊断知识构成的特点,将知识库进行分区,使不同类型不同作用的信息放在不同的区中。我们将知识库分为原始数据区、辅助数据区、交互数据区和访问控制区四个区(如图2-3所示)。这样分区的目的是为了提高整个系统的运行效率,减少一些不必要的转换工作11。访问控制 区辅助数据 区鱼病诊断知识库交互数据 区原始数据 区图2-3知识库物理结构分区知识库四个数据区的具体数据结构分析如下:1. 原始数据区用来存储开发系统前由开发人员通过对各种知识源的预先挖掘得到的原始数据,这些数据可以提供专家在使用系统时的参考。比如本系统将这些原始数据经过处理优化后做成系统界面上的下拉菜单的内容,专家在使用系统时可以直接选择内容,不需一次次的输入大量文字。这样就大大提高了统的操作简易性,减少了使用者的手工劳动,提高工作效率。2. 辅助数据区当知识库内的知识存量越来越丰富时,就可以从已知病例中总结出鱼病知识影响因素之间的关系,即“症状疾病病因治疗方法”之间的关系,这对鱼病诊断专家系统的开发是十分常重要的。比如,当用户选择了某种鱼病以后,于这种病有关的症状、病因等信息就可以被检索出来,进一步减少知识的冗余;使诊断知识库的知识更清晰、功能更强、更有利于专家系统的开发。3. 交互数据区用来存储通过知识获取界面得到的源自鱼病专家的知识,专家也可以对该数据区内的病例进行修改和删除。这个数据区是鱼病专家与知识库进行交互的区域,是个实时的动态数据区。4. 访问权限控制区用来存储专家和系统管理员的个人信息,以控制系统的访问权限。其内部存储的联系方式还可以在网页上显示,以促进交流。2.4.3 人机接口结构分析人机接口就是用户操作界面,是领域专家系统与后台知识库实现交互的媒介。目前,由于知识的自动获取即机器学习法仍没有突破性进展,因此设计一个开放、友好、实用的知识获取界面,然后由领域专家通过知识获取界面自主的向知识库输入知识仍是一个实际且见效快的方法。通过前面对系统功能模块的分析,我们知道本系统主要包括七大功能模块,即专家注册模块、专家登录模块、知识获取模块、病例浏览模块、病例查询模块、病例修改模块和系统维护模块。因为本文所介绍的鱼病诊断知识系统是基于网络的,所以这七个功能模块都必须在网络浏览器上实现,且遵循一般网页的设计模式,同时又具有本身独特的地方即拥有强大的信息交互能力。根据本系统的七个功能模块的性质,将功能模块主要安置在系统主页和登录成功页面上,通过对应链接就可以到达需要的功能模块进行操作(如下图所示)。登录成功页面系统主页图2-4人机接口机构知识获取病例浏览病例查询病例修改登录 成功管理员登录专家登录专家注册在这些功能模块中,知识获取模块可以说是本系统最核心的部分。根据鱼病诊断知识的特点,本系统将知识获取模块分为六个部分:基本信息、现场表现、目检症状、病因、防治方法和建议镜检部位。系统从每个部分分别获取诊断知识,存储到数据库中的相应的表中。本文按照此结构设计了一个鱼病诊断病例调查表用来获取知识库的原始数据,其结构如附录1所示。2.5 系统工作流程分析本文根据系统的结构和功能分析,对系统的工作流程进行了分析设计,系统工作流成图如图2-5所示。 2.6 本章小结系统分析是计算机软件系统开发的第一步,是系统设计的前提和基础。系统分析得透彻合理与否,直接影响着系统设计的开展和系统的最终性能。系统分析得好,系统设计就会事半功倍;否则,就会事倍功半,甚至达不到系统目标。本章通过对鱼病诊断知识获取系统的需求分析、可行性分析、结构分析和工作流程分析, 对本系统的总体设计构想有了全面而透彻的认识,为下一步系统设计铺平了道路。显示查询结果显示查询结果显示查询结果显示查询结果显示图2-5系统工作流程存入数据库存入数据库修改删除信息编辑界面提示注册存入数据库验证提交内容提交病例防治方法病因分析现场病鱼的表现及各部位的症状填写基本信息选择鱼种及规格有条件查询维护数据库管理员登录专家登录系统主界面无条件查询查询全部按病名查询按用户查询按病例查询信息查询界面鱼病诊断知识获取界面登陆成功是否身份确认登录失败存入数据库专家注册学士学位论文 第三章 系统设计第三章 系统设计通过对系统的分析,基本明确了系统的开发过程和方法。本章将对系统主要是对知识库和知识获取界面进行具体的设计。 3.1 知识库的设计专家系统的核心是知识,专家系统设计的关键就在于知识库的设计,一个专家系统的水平高低,基本上取决于它的知识库,知识库中的知识越完全越真实,则专家系统的水平越高。鱼病诊断知识的构成比较复杂,既有数值性知识,又有定性的描述性知识,如何有效地存储和管理这些知识将关系到整个推理系统的运行效率。本系统采用目前流行的关系型数据库(rdb)开发工具sql sever 2000来建立知识库6。本系统结合关系型数据库的范式要求和鱼病诊断知识构成的特点,将知识库进行分区,使不同类型不同作用的信息放在不同的区中。我们将知识库分为原始数据区、辅助数据区、交互数据区和访问控制区四个数据区。这样分区的目的是为了提高整个系统的运行效率,减少一些不必要的转换工作 11。3.1.1 数据表设计为了更好的运行系统,在建立知识库之前先对鱼病名、症状、病因和防治等概念和事实进行编码,其字段含义在数据表中有标出。根据上一章对知识库结构的分析,按照对知识库划分的四个数据区设计数据表(具体的数据表设计见附录2):1. 原始数据区原始数据区用来存储开发系统前由开发人员通过对各种知识源的预先挖掘得到的原始数据,这些数据可以提供专家在使用系统时的参考。包括以下数据表:鱼的品种表(variety):(品种id,鱼的品种);鱼的规格表(specs):(规格id,鱼的规格);疾病表(diseases):(疾病id,疾病名称);目检部位表(parts):(部位id,部位名称);症状表(symptoms):(症状id,症状描述);病因种类表(pathogenykinds):(病因种类id,病因种类);病因表(pathogenies):(病因id,病因描述,病因种类);镜检部位表(lensparts):(镜检部位id,镜检部位);治疗方法表(rx):(id,治疗方法)。根据本文的调查总结,整理出了很多原始资料,包括:55种鱼病、37种现场表现、166种目检症状和34种病因。2. 辅助数据区辅助数据区是基于对已有知识的学习而建立的。当知识库内的知识存量越来越丰富时,我们就可以从已知的病例中总结出鱼病知识的影响因素之间的关系,即“症状疾病病因治疗方法”之间的关系。从鱼病的诊断模型可知,这种对应关系体现着鱼病诊断的本质,这对鱼病诊断专家系统的开发是十分常重要的。因为专家系统的推理机制要依赖这种对应关系,并从中总结出一定的规则来建立模型。辅助数据区包括以下数据表:疾病症状表:(id,疾病名称,症状描述);疾病病因表:(id,疾病名称,病因描述);疾病治疗方法表:(id,疾病名称,治疗方法)。3. 交互数据区交互数据区用来存储鱼病专家与知识库的交互信息。它可以存储通过知识获取界面得到的源自鱼病专家的诊断知识,也可以存储专家对已提交的病例进行修改和删除的编辑信息。这个数据区是鱼病专家与知识库进行交互的区域,是个实时的动态数据区。交互数据区包括以下数据表:案例主表(caseprimarycircs):(案例id,品种,规格,发病季节);案例防治表(casediseases):(案例id,防治方法, 建议镜检部位);案例镜检部位表:(案例id,建议镜检部位);案例症状表(casesymptoms):(案例id,症状);案例病因表(casepathogenies):(案例id,病因);案例表现表:(案例id,现场表现)。4. 访问控制区访问控制区用来存储专家和系统管理员的个人信息,以控制系统的访问权限。主要包括以下数据表:用户信息表:(用户名,密码,姓名,电话,住址,邮编,传真,e-mail);管理员信息表:(管理员,密码,姓名,电话,传真,e-mail)。3.1.2 关系图的设计数据关系就是数据库中的各个数据表之间的关系,在sql sever 2000 的enterprise manager 中,把代表相同数值的不同数据表的对应字段连接在一起,就创建了两个表的关系。通过数据关系的连接,可以把不在同一数据表中的各个字段联合输出,以达到用户的输出要求。下图是有关病例的数据表之间的关系:图3-2 数据关系3.1.3 视图的设计数据视图就是利用数据关系,把不同数据表中的需要显示的字段组合成一个“虚表”输出,以满足系统要求。以下是病例表的输出视图的 sql 语句:select dbo.caseprimarycircs.caseid, dbo.caseprimarycircs.variety, dbo.caseprimarycircs.specs, dbo.caseprimarycircs.disease, dbo.caseprimarycircs.season, dbo.casebehave.behave, dbo.casesymptoms.symptom1, dbo.casesymptoms.symptom2, dbo.casesymptoms.symptom3, dbo.casesymptoms.symptom4, dbo.casesymptoms.symptom5, dbo.casesymptoms.symptom6, dbo.casesymptoms.symptom7, dbo.casesymptoms.symptom8, dbo.casepathogenies.pathogeny1, dbo.casepathogenies.pathogeny2, dbo.casepathogenies.pathogeny3, dbo.casepathogenies.pathogeny4, dbo.casepathogenies.pathogeny5, dbo.casepath
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车电工电子技术试卷及参考答案
- 2025年初二英语阅读理解专项训练(附答案)
- 初二物理2025年浮力专项训练(附答案)
- 2025-2026学年湖南省株洲二中初中部七年级(上)期中数学试卷
- 老年期抑郁焦虑障碍药物基因组学指导用药方案
- 焊接实验室考试题及答案
- 老年慢性下腰痛核心力量强化方案
- 老年人慢性病自我管理效果评价方案
- 老年患者围手术期术后低血压防治方案
- 羊水过少致肺发育不良产前干预方案
- 2025北京水务投资集团有限公司所属项目单位招聘9人笔试历年参考题库附带答案详解
- 内分泌性高血压筛查专家共识(2025)课件
- 岩板开加工合同范本
- 2025年西藏公务员行测(A类)真题及答案
- 七年纪学生安全教育课件
- (2025)共青团入团考试题库及完整答案
- 种质资源的重要性
- 基础研究基金申请方案
- 《计算机系统的组成》课件
- 2025年安全生产起重机操作试题及答案
- 2025至2030中国锂电池行业项目调研及市场前景预测评估报告
评论
0/150
提交评论