基于MVC结构的榆林荞麦专家系统研究

2014-09-25 10:19刘红霞张永恒
电子设计工程 2014年16期
关键词:推理机榆林荞麦

刘红霞,张永恒

(榆林学院 陕西 榆林 719000)

基于MVC结构的榆林荞麦专家系统研究

刘红霞,张永恒

(榆林学院 陕西 榆林 719000)

为提升本地区农业信息化水平,文章根据榆林荞麦种植特点,在MVC构架基础上,研究开发了榆林荞麦专家系统。介绍了专家系统的结构与功能,并论述了知识库的构建和推理机的实现。通过对系统几个模块的测试,结果表明系统贴近实际,可以对实际生产给出更好的指导建议。

专家系统;荞麦;知识库;推理机;MVC框架

农业专家系统是运用人工智能技术,结合农业特点发展而来的一门高新技术。结合榆林荞麦特点,将专家系统与计算机网络技术结合,开发面向榆林荞麦、面向陕北基层技术人员和广大农户服务的综合性管理专家系统,利用互联网等现代信息渠道,大力推广荞麦高产种植技术,为榆林荞麦生产提供全过程的决策和指导,它通过信息和知识的及时、准确、有效的获取、处理、传播和利用,把农业信息迅速的传到农民的手中,推进荞麦产业改造、升级,能大幅度提高荞麦生产效率以及经营和管理的决策水平。是有效地提高榆林荞麦产量的关键性举措之一,也是提升农业信息化水平、发展现代农业的必然要求。

1 荞麦专家系统的结构与功能描述

1.1 荞麦专家系统的结构设计

本系统的基本结构主要由人机接口、知识库、数据库、推理机和管理系统等多个部分组成,如图1所示,其中系统的核心部分是知识库和推理机。知识工程师与计算机专家收集整理领域专家的知识,将它们转化为计算机可识别的语言并纳入到知识库中,推理机根据用户的问题,再利用知识库当中的知识按照一定的推理策略去求解问题,并将结果输出给用户,其目的就是协调和控制整个专家系统进行工作。

图1 荞麦专家系统体系结构Fig.1 Buckwheat expert system structur

1.2 荞麦专家系统的功能描述

本系统由植前准备、田间管理、病虫害防治、采收与贮藏、技术咨询及系统维护6个主要的功能模块组成如图2所示。各模块的主要功能为:

1)植前准备模块

该模块内容主要包括品种选择、播种期、播种量计算、种子处理、种植密度、肥料和温度等,根据品种计算预计的播种期、预期的效益,制定出一套播种前的方案。

2)田间管理模块

在荞麦生长管理过程中,用户提供当时的环境参数和植物的生长参数作为输入参数,通过推理机在环境因子上的决策计算,模拟出植物的生长状况后提供给用户。用户通过植物生长的实际情况同推理输出的植物生长状况进行对比,当二者偏离时,系统分析原因,推荐一个合适的调控措施。

3)病虫害诊断与防治模块

该模块包括前期预防、病虫害诊断和病虫害防治。荞麦的病害症状表现具有很强的模糊性,如病斑的大小、颜色的深浅、虫体形态变化的程度及速度等。针对病虫害诊断的模糊性,使用模糊推理模型进行诊断。

4)采收与贮藏模块

该模块包括作物的收获期、收获方法、收获后处理与贮藏工作的技术指导。

5)技术咨询模块

该模块包括栽培方式、品种介绍、植前准备工作、田间管理及温度、湿度与施肥等,以文本、图片、动画等方式进行显示,为管理人员及种植户提供技术咨询服务。

6)系统维护模块

为了实现系统的可扩充性,系统设计了本系统的维护功能,即包括荞麦品种介绍、病虫害防治、诊断方法等信息的添加、删除、查找和修改等。

2 荞麦专家系统的设计

2.1 系统的开发环境

系统采用网络操作系统Windows 2008 Server/Professional,数据接口JDBC,数据库系统SQL2003。客户机操作系统Windows 2000/xp/7,浏览器IE5.0以上。开发工具Java开发工具包JDK及JBuilder9。

2.2 系统知识库构建

知识库是专家系统的关键之一,在荞麦专家系统知识库中,知识表示为事实、知识规则和结论。知识库中既存储农业专家的知识和经验,也存储许多基本数据,如农田地理位置、当地气象条件等。另外知识库中还要存储必要的约束规则。并且当用户提交信息进行系统决策时,相应的信息数据也要进入知识库当中参与推理。

根据知识获取的手段和方法,知识获取可以分为人工获取、半自动知识获取和自动知识获取三种方式。本系统采用人工获取和半自动知识获取方式,它包括:信息库知识的修正、扩充、删除;规则库中规则的修正、扩充、删除;病虫害诊疗处方库中知识的修正、扩充、删除。

利用计算机模拟农业专家的智能时,首先要解决的问题就是知识在计算机中的表示方法,即采用恰当的数据结构和逻辑结构,把农业专家的知识表示清楚,并且能进行有效的存储。常用的知识表示方法有:产生式规则、框架、语义网络、谓词逻辑、模糊关系及模糊逻辑、人工神经网络学习等。其中产生式规则是最常用的知识表示方法。其语言格式为:如果条件成立则结论成立,即:”IF… THEN…”,特点是表示法格式固定,规则间相互独立、没有直接关系,而且使领域专家能够容易的有效表示多种知识。另外推理方式比较单纯,没有复杂计算。该规则基本思想是将领域知识按对象进行分类表示、描述和管理,各个对象除有自己的推理决策知识外,还有与其它相关对象的关联知识,能通过接口请求获得其它对象提供的服务。在这种知识表示方式下,一个知识库根据子问题领域划分的不同,通常由若干个知识对象组成,各个对象之间具有一定的关联,通过多知识对象、构件对象之间的协作进行问题求解[1]。例如,本系统中“植前准备”知识对象可以表示为:

ZO植前准备

{

If植前准备=”品种选择” then{品种选择();};

If植前准备=” 育苗” then{育苗();};

If植前准备=”播种期” then{播种期();};

If植前准备= “种植密度” then{植物密度();};

If植前准备=”肥料” then{肥料();};

}

荞麦种类较多,不同品种的表现和特征存在差异。产生式表示法可以用来描述这些表现和特征,但是以上规则都是基于知识的,要进行推理还必须建立基于规则的规则来确定规则之间的联系,从而实现规则之间的计算。规则的提取和逻辑关系的确定由领域专家和知识工程师共同完成,然后集成为规则库[2]。

本系统中知识库由两部分组成,分别是事实知识库和规则库。将农业专家的经验和知识用数学模型法处理后存储为事实知识库,它包括品种决策知识库,播期知识库、施肥与作物营养知识库、病虫害知识库以及收获贮藏知识库等内容。另外事实知识库还存储了本地区基本数据,如海拔、纬度、气象条件等等。

规则库则建立存储了事实与结论之间的逻辑关系,当用户提出决策时,由系统从用户所提供的事实表中提取数据,然后发送到推理机,由推理机选择所适用的规则并且进行推理。为了便于系统推理,规则中条件部分和结论部分的表示方法和全局数据库中数据的表示方法应尽量保持一致,这样便于推理机将规则条件与全局数据库中的数据进行比较判断,对全局数据库中的数据进行修改。其次应当给不同的生产决策模块分别以不同模块名、知识ID来标识。规则库的存储结构如表1所示:

表1 规则库的结构Tab.1 The structure of the rule base

2.3 推理机的设计

推理就是依据一定的原则和事实推出结论的过程。推理的控制策略主要解决知识的选择与应用的顺序[3]。根据知识的选择与应用的顺序,目前推理的控制策略大致可分为数据驱动控制策略、目标驱动控制策略和混合控制推理策略。本系统是基于规则的产生式系统,因而其推理机制是基于规则推理。推理机集中体现了选择与运用专家知识的能力。

由于农业领域问题的复杂性和模糊性,例如土壤养分高低、叶色深浅、病虫害诊断与防治等,所以推理算法采用混合推理策略来实现。在产生式系统中,规则中的结论可以是另外一些规则的前提条件,而某些规则的前提条件也可以是另外一些规则的结论。已经推倒出的结论也会由于后来信息的变化而引起不确定性。产生式知识表示法可以容易地描述事实、规则以及他们的不确定性[4]。首先知识不确定性表示的一般形式如下:

IF E THEN H (CF(H,E))

其中,E是证据,H 为结论,CF(H,E)称为规则的可信度,我们设置其值界于0和1之间,即CF∈[0,1]。由此得出CF>0表示证据E的存在,增加结论H为真的可信度,CF为0表示无关。如进行荞麦的病虫害诊断推理流程图如图3所示。

图3 诊断推理流程图Fig.3 Flow of the diagnosis reasoning

2.4 系统的设计模式

MVC 即模型(Models)、视图(View)、控制(Controllers)的缩写,是Xerox PARC与80年代发明的一种软件设计模式。这种设计模式的主要思想是把1个应用程序的图形界面部分从实际的执行处理代码中分解出来。具体方法是MVC要求应用程序必须把整个应用程序分为3个部分:Model(模型)、View(视图)和 Controller(控制器)[5]。 系统中用 Servlet处理控制来自视图的所有请求。模型部分全部封装在JavaBean中。最后,使用JSP来显示视图。根据MVC的结构,在本专家系统中模型包括数据库、知识库和推理机逻辑,这部分是整个系统推理分析功能的核心部分。

3 系统的实现与维护

笔者已经初步实现了荞麦生产管理专家系统。为了验证本系统的有效性和准确性,对系统几个模块分别进行了测试。结果表明系统基于模型推理的分析以及田间管理的建议不但科学而且贴近实际,可以对实际生产给出更好的指导建议。

4 结束语

文中研究开发了荞麦生产管理专家系统,该系统可为本地荞麦种植的全过程提供生产管理的综合决策,包括植前准备、田间管理、病害防护与诊断等方面。为新型农业的发展提供了技术参考和依据。然而本文的工作还仅是技术理论上的尝试,还需进一步升级扩展系统的功能,进一步测试以便更好得指导生产实践工作。

[1]滕明贵,熊范纶,吴正龙.一个多形式的知识库管理系统XFKBM S V1.0[J]. 小型微型计算机系统,2004,25(4):626-629.

TENG Ming-gui,XIONG Fan-lun,WU Zheng-long.Multiformal Knowledge Base Management System—XFKBMS/V1.0[J].Mini-micro Systems,2004,25(4):626-629.

[2]YANG Pan-hong,YANG Jing.Architecture and Implementation of Knowledge Base in Web-based Agriculture Expert System[C]//ProceedingsofICEMI’2001, Beijing:ElectronicMeasurement and Instrument Society of CIE,2001:818-821.

[3]谭三清,尹芳志.森林病虫害远程诊断及实现[J].中南林业科技大学学报,2009,29(2):189-192.

TAN San-qing,YIN Fang-zhi.Realization of long-distance diagnosis of forest disease and pest[J].Journal of Central South University of Forestry&Technology,2009,29 (2):189-192.

[4]杨静,李生海,杨盘洪.山西省小麦专家系统研究[J].山西农业科学,2005,33(4):15-17.

YANG Jing,LI Sheng-hai,YANG Pan-hong.Research on shanxi wheat expert system[J].Journal of Shanxi Agricultural Sciences,2005,33(4):15-17.

[5]赵文忠.基于MVC结构的农业专家系统研究[J].东北农业大学学报,2012,43(8):78-80.

ZHAO Wen-zhong.Based on the MVC structure of the agriculture expert system research[J].Journal of Northeast Agricultural University,2012,43(8):78-80.

[6]顾沈明,刘全良.一种基于Web的专家系统设计与实现[J].计算机工程,2001,27(11):100-101,134.

GU Shen-ming,LIU Quan-liang.An approach to design expert system based on web[J].Computer Engineering,2001,27(11):100-101,134.

[7]杨静,杨盘洪.面向Internet/Itranet的山西省农业专家系统研究[J].太原理工大学学报,2001,32(3):230-233.

YANG Jing,YANG Pan-hong.Study on shanxi province agricultural expert system for Internet/Intranet[J].Journal of Taiyuan University of Technology,2001,32(3):230-233.

Based on the MVC structure of the Yulin buckwheat expert system research

LIU Hong-xia,ZHANG Yong-heng
(Yulin University,Yulin 719000, China)

In order to promote the level of region agricultural informatization,according to the characteristics of buckwheat production in Yulin,the Yulin Buckwheat Expert System has been developed based on the MVC structure.This paper describes the system structure and functions of Expert System and introduces construction of knowledge base and reasoning machine is discussed.Through several modules of the system test, the results indicate that close to the reality, the system can give better guidance for practical production.

expert system; buckwheat;knowledge base; reasoning machine;MVC framework

10.14022/j.cnki.dzsjgc.2014.16.012

TN99

A

1674-6236(2014)16-0038-03

2013-11-06 稿件编号:201311048

榆林学院科研基金项目(12YK32)

刘红霞(1981—),女,陕西榆林人,硕士,讲师。研究方向:软件工程,物联网应用研究。

猜你喜欢
推理机榆林荞麦
红山荞麦看木森
榆林感怀
我国科学家发现荞麦属新种
走榆林
榆林抿尖
荞麦
榆林力量
——为榆林抗洪救灾而作
面向对象的几何定理推导系统的设计与实现
荞麦花开
基于Naive Bayesian算法改进的智能诊病系统研究