农业专家系统的研究进展及实例剖析.docx
- 文档编号:24044440
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:26
- 大小:1.75MB
农业专家系统的研究进展及实例剖析.docx
《农业专家系统的研究进展及实例剖析.docx》由会员分享,可在线阅读,更多相关《农业专家系统的研究进展及实例剖析.docx(26页珍藏版)》请在冰豆网上搜索。
农业专家系统的研究进展及实例剖析
浙江大学
课程论文
〔2021-2021学年秋冬学期〕
论文题目:
农业专家系统的研究进展及实例剖析
课程名称:
人工智能及专家系统
任课教师:
学 号:
姓 名:
完成日期:
农业专家系统的研究进展及实例剖析
摘要:
专家系统是人工智能中最重要的也是最活泼的一个应用领域,它实现了人工智能从理论研究走向实际应用。
应用于某专门领域,拥有专家级知识,能模拟专家的思维,能到达专家级水平,并能用这些知识来解决实际问题。
它的迅速开展和广泛应用大大推进了各个应用领域向智能化方向开展。
本文对专家系统的农业应用领域研究进展进行分析,并举出几种专家系统,对其进行实例剖析,再对国外学者对农业专家系统研究进行简单的介绍,最后对农业专家系统未来的开展方向作出展望。
关键词:
农业专家系统、人工智能、进展、实例剖析
1引言
专家系统(ES,ExpertSystem),就是一种在特定领域内具有专家水平解决问题能力的程序系统。
它能够有效地运用专家多年积累的有效经验和专门知识,通过模拟专家的思维过程,解决需要专家才能解决的问题,它能对决策的过程作出解释,并有学习功能,即能自动增长解决问题所需的知识。
简而言之,专家系统是一种模拟人类专家解决领域问题的计算机程序系统。
专家系统在农业上的应用叫做农业专家系统〔又叫农业智能系统〕,它是将人工智能的知识工程原理应用于农业领域的一项高新技术,是一种智能化的农业信息系统。
它是运用知识表示、推理、知识获取等技术,总结农业专家的珍贵经验、实验数据及数学模型,建造起来的计算机农业软件系统。
2农业专家系统概述
农业专家系统一般由知识库、推理机、数据库、解释机、知识获取机和用户界面等几局部组成,其结构如图1所示;其中,知识库和推理机是农业专家系统的核心。
知识库用以存取农业专家提供的专门知识;推理机是根据知识库进行各种搜索和推理的程序模块;解释机对系统给出的结论、求解过程以及求解状态提供说明;数据库存储推理过程中所需要和产生的各种信息;知识获取机自动获取专门知识并不断完善知识库;用户界面实现系统和专家或用户的信息转换。
图1农业专家系统的结构
3农业专家系统的研究进展
20世纪80年代以来,随着信息技术的迅速开展,农业专家系统在国际上有了较大的开展。
从分布区域看,美国占绝大局部,几乎占80%;从应用领域看,涉及到作物栽培、施肥、病虫害防治、杂草控制、森林环保、家畜饲养、农业经济效益分析、储存管理、市场管理等方面。
农业专家系统是农业专家知识和信息技术相结合的产物。
随着信息技术的开展,农业专家系统开展呈现4个阶段。
3.1单功能农业专家系统(SPAES)
该阶段是农业专家系统的起始阶段,时间是20世纪70年代末到80年代初。
当时CPU主频低〔1978年6月,处理器68020的主频仅为16MHz〕、数据处理能力低,关系数据库也刚刚起步[1,3],因此该阶段农业专家系统功能单一,只相当于某一领域专家,解决特定问题,如病虫害防治、灌水管理、危害预测等。
例如,1978年美国伊利诺斯大学(IllinoisUniversity)开发的大豆病虫害诊断专家系统,是世界上应用最早的农业专家系统;美国California大学1981年开发了灌水管理专家系统。
3.2多功能农业专家系统〔MPAES〕
到了20世纪80年代中期,计算机的处理器性能有所提高(1989年4月,处理器486DX4/100主频到达100MHz),关系数据也有较大开展[3],此时专家系统在功能上已从解决单一问题的病虫害诊断等转向解决农业生产管理、经济分析、辅助决策、环境控制等综合问题。
该阶段专家系统能够实现多功能,相当于多领域专家的结合,解决多个领域的复杂问题。
例如,东京大学的西红柿栽培管理专家咨询系统,温室黄瓜栽培管理专家系统,6种温室蔬菜病、虫和营养失调诊断专家系统。
3.3基于模型的农业专家系统〔MBAES〕
20世纪60年代开始了作物生长模拟模型研究;80年代,随着模拟模型技术的逐渐成熟,计算机处理性能和数据库技术进一步开展,形成了以作物生长模拟模型为核心,将模拟与优化相结合并与有关领域专家知识融合,形成了基于模型的专家系统。
该阶段专家系统很好地利用了计算机技术结合作物模拟模型,增强了专家系统的机理性和决策功能,充分地表达了数据库、模拟模型、知识库、推理机的有机结合[4]。
该系统具有解释能力强、应用面宽、考虑的影响因子多和易于控制等优点,其功能主要是提供目标、动态、定量与优化决策[5]。
具有代表性的是20世纪80年代美国农业部推出的棉花综合管理专家系统(COMMAX/GOSSYM)。
它是一个机理性很强的棉花生长模型,可依据植株碳氮平衡、热量和水分平衡等原理,将温、光、降水等气象要素作为驱动变量,将土壤理化性状和肥水供给能力视为初变条件,对棉株的生长发育和产量形成进行动态分析,最终可模拟在不同气候、土壤条件下棉花的生育期和产量。
该系统为棉花管理提供咨询,用于确定灌溉、施肥、施用脱叶剂和棉桃开裂剂的最正确方案的制定[6-7]。
3.4智能化农业专家系统〔IAES〕
20世纪90年代以来,随着计算机技术、人工智能技术、数据库技术、3S技术以及自动化控制技术高速开展,农业信息技术进入了一个新的开展时期,开发出智能化农业专家系统。
智能化专家系统主要是各种智能技术在专家系统领域的集成,如人工神经网络、WEB技术、智能温室、“3S〞技术,利用现代数据处理手段,对数据进行新的处理,很好地丰富了农业专家内涵,提高了专家系统精确度、智能化和实用性。
如1994年,该系统在Windows环境下开展为AEGIS/Win;U.Singh等人运用CERES工程(Crop-EnvironmentResourceSynthesis)作物模拟模型与GIS相结合,建立了印度半干旱地区的决策模式。
温室自动控制系统和专家系统相结合的专家管理系统,能够及时地为用户提供温室各种作物在不同时期生长所需要的最正确气候参数及栽培技术和措施,自动生成合理的控制方案,实现了人造气候的智能化管理[8-9]。
我国专家系统的研究起始于20世纪80年代初期。
由于开展较晚,赶上信息技术和计算机技术的迅猛开展,因此我国的专家系统开展阶段划分不是很明显,各种功能各领域专家系统交错出现,到20世纪90年代,我国农业专家系统的研究蓬勃开展,研制出了大量的智能化程度较高的专家系统。
例如,1980年浙江大学与中国农科院蚕桑所合作,开发研究育种专家系统;1992年,中国农科院作物所赵双宁等研制开发的“冬小麦新品种选育专家系统〞,应用于20世纪70年代亲本材料进行测试,所显示的结果与当年实际组配的杂交组合极为相似[10];1998年,南京农业大学研发的小麦管理智能决策系统[11];2002年,上海精准农业技术完成了精准农业管理决策支持系统的设计与实现[12];2003年,郑向群、高怀友等完成了等利用数据挖掘技术对农业环境信息数据分析[13]。
目前,农业专家系统已触及我国农业领域的各个方面,为开展高产、优质、高效农业做出了奉献。
下面将从最近的典型的农业专家系统着手,分析其组成、结构、人机界面设计、逻辑算法、处理以及呈现的产品。
4农业专家系统实例剖析
4.1基于PDA的农业专家系统的设计和实现[14]
理论根底
文[15]提出基于PDA的精确与模糊相结合的描述框架+产生式+公式的综合知识表示形式与基于PDA的精确与模糊相结合的综合推理策略,文[16]在此根底上,进一步研究将知识库和数据库在PDA上集成,提出与规那么别离的基于PDA的通用推理算法。
数据库结构
为了处理数据输入的受限输入,即用户只能在系统提供的枚举类型中进行选择。
文章对原有的数据库结构进行了改造,改造后的数据库结构增加了枚举型字段ENUMTYPE。
知识库维护
在PC机上生成PDA端的数据库,再输入数据;或将PC端的数据库〔如SqlSever〕的数据转化为PDA端的数据库,这样就可以在PC机上对PDA的数据库进行知识的修改、删除、添加,最后通过PDA与PC的通信工具,将更新后的知识库输入到PDA中。
人机界面设计
在程序中处理用户输入时,判断字段的类型是否为枚举类型9,假设是,那么翻开相应的文本文件,再依次读取到用于PDA屏幕显示的二维数组中,在PDA上以列表的方式显示出来,最后返回用户输入当前的行号并显示出来,否那么,显示相应的数字或汉字。
规那么前件处理
为简便起见,约定决策规那么表中每个规那么子前提的格式为:
参数+逻辑符号〔共6种,分别是<,<=,>,>=,=,<>〕+数字,同时,考虑到不同的规那么子前提在该规那么中的作用不一样,对不同的规那么子前提进行优先级处理的控制策略,即首先处理优先级高的规那么子前提,然后判断优先级低的规那么子前提是否可以忽略,假设可以忽略,那么在决策规那么表中以变量名直接+“;〞方式来表示。
规那么前件处理模块的算法如下:
〔1〕在决策规那么表中依次取出参数字段中以“;〞隔开的规那么子前提〔对应决策参数表中的参数〕。
〔2〕记录号=1,在决策规那么表中依次对该记录的规那么前件字段的字符串的规那么子前提串、逻辑符号串及数字串进行相应的处理。
〔3〕调用逻辑符号处理过程,与用户输入的参数进行匹配,假设匹配成功,那么返回该记录号,否那么记录号+1,再判断新的记录号是否大于决策规那么表中的最大记录号,假设大于,那么返回“无法进行判断!
〞,否那么转〔3〕。
公式处理
为简便起见,约定决策规那么表中每个计算公式的格式为一般算术表达式,其中算术表达式中参加运算的为相应决策参数表中的参数,而不是具体的数值。
公式处理模块的算法如下:
〔1〕将计算公式的变量〔对应决策参数表中的参数〕替换为用户输入值。
〔2〕将该算术表达式转化为波兰表达式。
〔3〕对波兰表达式进行计算,并返回计算结果。
成果简介
已经实现的应用软件包括基于PDA的葡萄品种选择专家系统、葡萄园地规划和葡萄疏花疏果专家系统,与HPC农业专家系统合成的便携式农业专家系统填补了国内空白。
基于PDA的葡萄品种选择专家系统、葡萄园地规划和葡萄疏花疏果专家系统,能较好地辅助农技人员和农村干部进行葡萄品种选择、园地规划和疏花疏果的处理。
目前包含上述农业应用软件的农福星〔APDA〕已经在天津、新疆、山东等地运行和推广应用,并取得较好的社会效益和经济效益。
4.2基于Android平台的植物病虫害查询诊断系统的构建[17]
总体设计
在移动互联网环境下的查询和交互系统,由用户查询和交互模块、知识库、知识构建系统三大模块构成,三个模块的关系见图2。
图2模块关系图
用户查询和交互模块:
该模块是基于Android平台开发的客户端,主要功能是查询植物病虫害信息,以及向专家提交疑难问题和获取专家提供的解答。
知识库:
该模块是基于SaaS模式开发的数据共享系统,为多个终端提供同步接口。
其数据存储系统为MySqal,用于构建植物病虫害知识库。
知识构建系统:
该模块是由PHP开发的B/S系统,主要功能是向知识库补充和更新数据信息。
农业专家可以使用该系统进行植物病虫害相关信息的更新和补充,同时可以对用户提问进行解答。
客户端设计
包括用户查询和交互模块的界面设计、本地知识库的数据库设计。
用户查询和交互模块的界面包括:
知识库管理界面、信息查询界面、查询内容详情界面、用户提问界面、问题列表界面、问题解答详情界面〔见图3〕。
图3用户查询和交互模块的界面设计图
SaaS知识库的数据库设计
该数据库包括:
知识库分类列表、知识库表和问题对应表。
知识库分类列表包括知识分类编号、知识分类主题、最终提交时间、最新知识编号四个字段,主键为知识分类编号。
知识库表包括知识条目编号、知识条目编号、知识标题、知识内容、知识配图五个字段,主键为知识条目编号。
问题对应表包括问题编号、问题内容、问题配图、提交时间、知识条目编号五个字段,主键为问题编号。
知识管理系统的设计
包括知识录入模块和问题解答模块。
专家可通过该模块向知识库录入信息。
录入的内容包括:
知识库分类、知识点标题、知识点信息内容、相关图片等〔见图4〕。
当用户向管理系统提问时,专家将通过该模块浏览到新的问题,专家解答后,用户即可将该问题的答案同步到本地客户端。
开发和部署
本系统的开发环境为windows,开发工具为Eclipse。
Eclipse是一个开放源代码的、基于Java的可扩展开发平台,是Android应用程序开发的首选IDE,Android应用程序的开发插件为ADT,这是Google专门针对Android应用程序开发提供的Eclipse上的开发插件。
PHP开发需要构建本地效劳器环境,应用效劳器为Apache,Apache是世界使用量最大的web效劳器软件,它可以支持大局部的计算机平台上。
它的由于跨平台的特点和极高的平安性被绝大多数网络效劳提供商使用,是最流行的WEB效劳器端软件之一.开发插件为PDT,它提供了一个Eclipse平台上的S开发工具框架,其包含了所有必要的开发组件开发PHP和方便的可扩展性,它利用现有的WEB工具平台和动态语言工具(DLTK)使Eclipse具有开发EFE的能力。
SaaS知识库的构建采用MySQL数据库。
MySQL是一个开源的小型关联式数据库管理系统。
它体积小、速度快、本钱低,是中小型网络效劳提供商数据库管理系统的首选。
图4知识管理系统的设计图
3
4
4.3基于GIS的油菜测土配方施肥系统的开发[18]
开发平台及工具
系统采用C#语言编写,以MicrosoftVisualStudio2021、ArcGISEngine9.3为工具,利用Studio.NETC#与ArcGISEngine中的窗体、组件、模块的控制和连接,实现地图控制、空间属性的浏览、油菜施肥量计算、制图及各种属性数据查询等。
系统功能
油菜测土配方施肥系统包括单机版和触摸屏版,总体上包含推荐施肥、技术资料、系统维护等功能模块(图示5),可实现相关信息的浏览、查询和更新、系统的核心功能是精确到耕地单元的推荐施肥,在此根底上还提供测土配方施肥、油菜缺素病症等知识,并以图文形式表现,为农技人员或农户提供油菜测土配方施肥技术。
在油菜测土配方施肥系统的推荐施肥界面,系统提供了县、乡、村级行政区划图,土地利用现状图,公路,河流,卫星图片等图层,用户确定所要查询的地块单元后,点击进入“推荐施肥〞界面后,系统将自动展现该耕地单元的面积、土种类型、土壤理化性状等信息。
在施肥推荐计算中,所有“条件〞在一个界面完成选择输入,简化了咨询或选择流程,用户按照实际情况输入数据后,通过下拉单项选择框选择化肥品种或复合肥比例,点击“计算施肥量〞按钮进行施肥量计算,获得施肥建议卡,施肥建议卡上包括该单元的地理位置、土种名称、土壤养分测试值,氮、磷、钾、硼肥的推荐用量、各生育时期(苗期、蕾苔期、花期等)的追肥用量等内容,直观地为农民提供土壤资源情况和科学施肥信息。
有一定专业知识的人员,可通过对系统施肥参数的修改,使生成的配方施肥建议更加适合当地实际情况。
“施肥参数〞模块为有权限的用户提供了查询、修改和导出现有配方施肥参数的功能。
施肥参数包括油菜产量养分吸收量、肥料当季利用率、空白产量与目标产量对应函数、前3年平均产量与目标产量增产率、土壤养分丰缺调整系数、土壤养分丰缺指标、土壤有效养分校正系数、效应函数法推荐施肥模型、肥料分配运筹等,用户可根据施肥试验结果对施肥参数进行修改调整。
图5油菜测土配方施肥系统功能结构设计图
4.4JESS技术的油茶病虫害诊断及无公害防治WEB系统研究[24]
系统的整体结构
系统采用B/S架构,运用Java语言中的三层架构模式(采用的模式是Hibernate、STRUCTS设计)进行设计,后台数据库采用MYSQL数据,基于JESS语言将专家知识通过文字形式存放于MYSQL中,Jess是Java平台上的规那么引擎,它是CLIPS程序设计语言的超集,由Sandia国家实验室的ErnestFriedman-Hill开发,适合自动化专家系统的逻辑编程,它常被称作“专家系统外壳〞。
Java与JESS具有良好的集成性,这使得运用Java技术的WEB专家系统能够很好地应用JESS,并为WEB专家系统提供了系统开发工具,保证了系统的推理性、扩展性与移植[25]。
JAVA会将这些文字形式保存的专家知识动态参加推理机中,完成知识推理,WEB效劳器采用开放源代码的Web应用效劳器TOMCAT。
专家系统分为数据库、推理库和专家库三个子系统,其框架见图6。
数据库子系统主要执行根底数据的获取和预处理等功能,主要获取土壤质地和结构、土壤营养数据、数字地面高程数据、气象要素(温湿度、雨量、太阳辐射等)、油茶病虫害等根底数据,执行专家知识库的修改和推导功能,系统不对油茶种植户提供根底数据。
系统将数据统一成250m×250m矢量式,并通过ARCGIS的空间数据引擎ARCSDE保存至MYSQL数据库中,系统用数字地面高程模型分析slope、aspect,用日均温分析月均温距平和生育期积温,用土壤N/P/K数据分析土壤营养肥力状况等,可以进行一般的数据空间分析功能。
当获取油茶种植户地理坐标,系统将对应位置的根底数据通ARCGIS数据通路从数据库中导出,并通过JESS直接访问以POJO实例存贮的JAVA对象。
推理库子系统通过将这个地区专家库中的推理规那么调入到推理机中,基于特定时段的客观事实,叠加油茶种植者输入的油茶病虫害信息,JESS运用正逆推理原理提取出够条件的专家知识,并通过超文本传送协议传给油茶种植户的游览器上。
提供依据油茶种植户输入信息而获取的这段时间内的病虫害状况、目前可能的危害程度及有效无公害防治方法。
图6专家系统框架
系统程序设计中的关键技术
1.JAVA中装载JESS推理机
专家推理规那么保存在MYSQL数据库RULE表中,RULE表有4个字段,都是文本格式,分别为name、condition、result和method,当Hibernate动态调入专家知识时,会将数据库中的专家知识数据存放在Rule类中的condition、result属性字段中,专家系统推理规那么时会将这些文本格式的专家知识动态规那么调入推理机中,具体实现程序如下:
Jess.Reteknowlege=newJess.Rete();//Rate类对象化
knowledge.executeCommand("(clear)");//清空所有知识
knowledge.executeCommand("(reset)");//初始化
knowledge.executeCommand("(defrule"+knowledge.getName()+""+knowledge.getConditon()+"=>"+knowledge.getResult()+")";//动态参加文本格式专家知识
2.专家事实库的动态调入
运用JESS.Fact类将所有相关的已保存在knowledge对象中的专家知识运行,并将需要的事实(条件)调入推理机中,主要程序如下:
Jess.Factfactinfo=newFact("knowledge-info",rule);//实例化事实对象
factinfo.setSlotValue("date",newValue(knowledgeinfo.date,RU.DATE));//实knowledge-info对象
factinfo.setSlotValue("temperature",newValue(knowledge-info.temperature,RU.FLOAT));
//输入气温
factinfo.setSlotValue("rain",newValue(knowledge-info.rain,RU.FLOAT));//输入降水
factinfo.setSlotValue("suntime",newValue(knowledge-info.suntime,RU.FLOAT));//输入日照factinfo.assertFact(factinfo);//将输入事实放入事实库中
系统实现结果
系统软件设计好后,需要将油茶可能出现的病虫害及无公害防治措施变成专家系统语言,并保存到数据库中,油茶炭疽病在我国油茶产区普遍发生[26],其典型病症为图7。
图7油茶炭疽病病症
针对上述问题,该系统转成JESS语言为:
(defruleMAIN:
ill-TanJuBing;//规那么名称:
油茶炭疽病)
(answer(identtype)(number0));//为病害
(answer(identplace)(number5));//发病部位为果实
(answer(identillcolor)(Textblack));//颜色为黑褐色
(answer(identimage)(Text21.jpg));//与数据库中的图片比拟
(answer(identtemperatureandhumidity)(number27,80));//当日平均气温大于27℃,相对湿度大于80%,表示会严重发生
=>(recommend-action"会大面积发生油茶炭疽病")
(method-action"喷洒50%多菌灵可湿性粉剂500倍液,每10d喷1次,连喷4次;或用1∶1∶100波尔多液加1%~2%茶枯水,每15d喷1次,连喷3次;或用50%退菌特可湿性粉剂300倍液");无公害防治方法(halt));//防治对策
该系统将湖北省油茶种植有可能出现的病虫害及无公害防治措施变成专家系统语言,并保存到数据库放到网上,油茶种植户通过浏览器与系统进行交互确定病虫害种类并得到无公害防治措施,对油茶病虫害防治和无公害种植具有指导意义。
4.5基于3G通讯的移动农业专家系统开发平台研究[27]
我国20世纪80年代中期就开始研制面向领域和面向任务的专家系统开发工具,主要有熊范纶等研制的雄风系列[28]、哈尔滨工业大学的专家系统平台[29]、河北农业大学的农业专家系统生成工具AEST3.0[30]、吉林大学的MES[31]、浙江大学的ZDEST[32]、中国科学院计算所的VESS[33],以及国防科技大学和北京农林科学院研制的开发平台PAID5.0等,国际上有CALEX开发平台、MICCS工具等[34],这些平台开发的系统均基于PC机上的应用,目前还未出现基于3G通讯的移动农业专家系统开发相关报道。
系统功能设计
DepAes是一个开放的农业专家系统管理平台,由农业专家系统应用网站、自助构建系统客户端、辅助诊断专家系统〔网络版、桌面版、移动版〕、专家系统制作工具和数据管理实用工具、个子系统组成,各功能结构如图8示.
图8系统结构
图9系统功能结构
推理机
主要实现以的信息来查找与之相匹配的客体。
为满足用户的不同运行环境要求,开发适用于WindowsOS、MACOS的桌面版、B/S网络版和适用于WindowsMobile、GoogleAndroid的手持智能终端的移动版。
系统整个诊断与推理设计为匹配、选优、回溯、结论4个步骤。
〔1〕匹配:
规那么库中所有规那么的前提条件与当前农情比拟,取出与当前农情符合的下一级规那么〔匹配成功的规那么〕;〔2〕选优:
从匹配成功的规那么中选取最符合当前农情的规那么;〔3〕回溯:
发现匹配的规那么与当前农情不符合时,可返回上1次或N次的结果进行重新选择;(3)结论:
推理诊断结束,把符合推理结论的规那么列出,并展示结论对应的农业知识。
推理机的实现实际上就是完成对知识搜索树结构分枝结点的搜索过程。
自助构建系统数据结构设计
本系统的数据库
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 农业 专家系统 研究进展 实例 剖析
![提示](https://static.bdocx.com/images/bang_tan.gif)