1、基于 Web的牛病诊断专家系统的设计与实现 李道亮 1,2 戎立斌 1,2 胡立娟 3 王娆 1,2 1(中国农业大学工学院,北京 100083) 2(中国农业大学教育部现代农业系统集成研究重点实验室,北京 100083) 3(山东省聊城二中 252002) Email: 摘要 : 本篇论文介绍了我们根据广大养牛用户的需求,结合人工智能的发展和计算机网络技术的现有水平,所尝试研发的牛病诊断专家系统。本系统主要提供了:牛病诊断、牛病知识浏览两项功能。 它将养牛专家多年积累的技 术、经验和科研成果与计算机技术结合起来,利用人工智能理论,建立的一个智能化专家系统,该系统实现了“网上诊断、网上治疗、
2、网上学习” 各项功能,使专家的知识和分析解决问题的方法得以推广和继承,对生产实践予以随时随地、方便快捷地指导,提高生产养殖科学管理水平和生产效益。 关键字: 牛病 专家系统 ASP ADO Abstract: This paper presents the attempt of me to develop a cow disease diagnosis expert system with the development of artificial intelligence and the level of network skill according to de requirement o
3、f cow farmers. This system offers us the following two functions: cow disease diagnosis and skimming of cow disease knowledge. It combines the skill, experience and scientific research fruit of cow disease diagnosis expert with computer skill, uses the theory of artificial intelligence, make up an i
4、ntelligent system. This system realize the function of diagnosis on net, curing on net and study on net which makes the development and inherit of the technology and problem solving method comes from the expert. Meanwhile it gives the instruction timely and rapidly which improved the scientific mana
5、gement level and the production benefit. Key words: cow disease, ES, ASP ADO 1. 引言 我国是一个养牛大国。 2000 年牛的存栏数为 12866.3 万头,居世界第三位;其中,黄牛 9656.5 万头, 奶牛 488.7 万头,水牛 2275.8 万头。牛肉在人类食品结构中占有很高的地位,主要是其中含人类需要的蛋白质、脂肪、矿物质、各种维生素和必需氨基酸,且营养结构更为合理,高蛋白质,低脂肪,热量适中,有利于人类健康。随着我国各族人民生活水平的提高和健康意识的增强,对牛肉的需要量将会大幅度增加,市场前景相当可观。因
6、此,牛场养殖在我国日益兴起。 然而,随着喂养密度大幅提高,科学喂养控制的难度加大,疾病发生、 流行日益普遍。在牛疾病防治的过程中,往往由于专家不在现场、养殖户诊治不准确;或专家到现场不及时,贻误时机造成损失。形成了领域专家经验知识供给和养殖户需求之间的瓶颈,制约了牛养殖的产业化。 本文将针对当前牛场喂养中病害发生日益普遍的实际问题,把专家系统技术应用于牛场喂养病害防治领域,及时、有效的对牛病进行诊疗和预防,提高牛场喂养成活率,降低成本,提高效益,保证牛的健康喂养和食品安全。 2. 系统设计 本系统的设计将在保证系统功能的基础上,尽量提高它的交互性,可视性,可靠性和经济性。 在用户看来:系统提供
7、及时快速的诊 断,节省用户的经济消耗,解决农户的疑问,提出解决方案。 在设计人员看来:系统具有用户友好界面,使用方便,有较高的运行效率和系统可变性,即系统设备维护和修改,能搞适应用新诊断的要求。 2.1 系统模块设计 药物管理模块:主要介绍牛场常用生物药物的介绍、保存及使用方法;牛场常用化学药物的介绍、保存及使用方法。 病历管理管理模块:主要作为日后诊断的参考,充实知识库。 病名诊断模块:疑似病名 症状 病名。 症状诊断模块:症状 疑似病名 疑似症状 病名。 图片管理模块:疑似病名 标准图片 病名或实际图片 标准图片 病名;包括镜检图片和目检图片。 防治措施模块:包括病名、症状、病理变化、类症
8、鉴别、防治措施、流行特点等。 系统总体结构如图 2.1 所示: 2.2 系统工作流程设计 用户进入系统主页后可以选择病历管理 ,药物查询,防治查询,症状诊断,病名诊断。选择病历管理可以进行病历的添加和浏览,选择症状诊断和病名诊断,可以得到相应的病的几种疾病的综述信息,选择药物查询可以得到关于药物的 所有信息,选择防治查询可以得到有关疾病防治的信息。如果选择疾病诊断,用户可以按部部位位选择他们观察到的症状,系统再根据用户选择的症状,通过症状诊断得到怀疑的病名表,然后用户选择怀疑的病名进行查询得到关于此病的所有症状,这些症状同时也按部位分组输出,系统再根据用户选择的他们所观察到的牛病诊断系统 药物
9、管理 病名诊断 症状诊断 防治措施 图 2.1 系统总体结构图 图片管理 病历管理 症状,通过第二次症状诊断输出牛得此病的可能性(确诊,疑似,初诊,待诊),如果确诊,可得到此病的防治措施表,如诊断不满意可返回到疑似病名表选择其他可能的病名,再按上述步骤诊断。如图 2.2。 2.3 系统数据库设计 牛病诊断系统主界面 病历管理 防治方法 药物管理 新用户 Y N 添加病历 浏览病历 方法查寻 方法浏览 药物查寻 药物浏览 疾病诊断 症状诊断 可见症状 不可见症状 确诊 ? 确诊 ? 推理 镜检图片诊断 内脏图片诊断 确诊 ? 推理 推理 选择病名 病名诊断 选择症状 确诊 ? 防治方法 结束 Y
10、 Y Y Y N N N N 图 2.2 系统工作流程设计 牛病诊断专家系统的初始数据是由中国农业大学的专家,以难以收集的大量资料为依据,找出症状与疾病之间的统计规律,确定出经验公式,经验公式的确立主要采用现代统计理论中的判别分析法和数量化理论原理,将 250 多种牛病按症状分为 100 多个病组,所谓病组就是将具有相同或相似症状的疾病归在一起将其主要症状归列为组。由于牛病症状数据庞大、复杂,如何存储、管理这些数据将会影响到系统的运行效率,也会影响到疾病诊断的正确性。本系统采用关系型数据库 SQL Server 2000 来建立牛病诊断系 统数据库。 SQL Sever 2000 数据库是这一
11、规模数据量的主流选择,而且其自带的数据库管理系统功能强大,只需在接口处进行少量二次开发就可以直接应用。但关系型数据库对数据的结构化要求很高,必须科学设计数据结构,明确数据关系。 通过对疾病诊断领域知识的学习,包括疾病产生机理、诊断过程和诊断模型,本文总结出一个完整的牛病诊断信息包括以下几个部分: ( 1)基本信息 包括牛的品种、规格、疾病名称、发病时期、牛场位置等; ( 2)现场表现 包括精神状态、发热情况等; ( 3)目检症状 包括内脏症状、镜检症状、身 体各部位症状等; ( 4)病因 包括寄生虫、病菌、饲养管理等; ( 5)防治方法 根据症状、病因给出防治方法,包括用药信息。 2 3 1
12、数据库结构设计 本系统结合关系型数据库的范式要求和牛病诊断知识构成的特点,以数据表的形式构造数据库的结构 ,而且在逻辑上将相近数据表归为一个表集,主要包括以下数据表: ( 1)基本表 包括牛规格表、热型表、精神状态表、发病期表、症状表、疾病名称表、防治措施表、病因表、药品表、病历表、用户信息表等; ( 2)分类表 为了方便系统管理员的管理和用户对信息的检索,本系统将数据量庞 大的基本表作不同级别的分类,如症状表按症状发生部位分为皮毛症状组、消化系统症状组等八组。分类表包括症状分组表、疾病分组表、病因分组表等; ( 3)规则表 记录以不同诊断方式诊断过程中获得的基本信息及由此得到的诊断结果,包括
13、 现场诊断产生式规则表、图片诊断产生式规则表、病名诊断规则表等。 2 3 2 表间关系设计 关系数据库设计是对数据进行组织化和结构化的过程,核心问题是关系模型的设计。关系模型是数学化的、用二维表格数据描述各实体之间的联系的模型;是所有的关系模式、属性名和关键字的汇集;是关系模式描述的 对象。 本系系统涉及的主要关系有: 症状表 疾病名称表;疾病名称表 防治措施表;用户信息表 病历表等。 3. 系统实现 3 1 系统运行环境 服务器端的网络服务环境为 Window XP IIS 5.0 + SQL Sever 2000。前者优点在于它有强大的网络功能,结构化、可扩展性强;后者优点在于满足分布式网
14、络数据库管理系统的需要,并满足开放性、高可靠性和实用性的要求,它提供完整的数据库管理软件程序包。客户层软件环境为 Internet Explorer 5.0 以上,用户可以直接与 Internet 进行无缝连接 和下载数据,界面友好。 3 2 系统功能的实现 前面已经叙述了牛病诊断专家系统的功能模块设计和数据库设计,为了实现其功能还要将两者结合起来 , 本系统以基于 Web 的数据库访问技术完成这一功能,并采用 ASP+IIS 技术来具体实现。 ASP( Active Server Pages)动态网页,是微软公司推出的一种用以取代 CGI( Common Gateway Interface)
15、通用网关接口的技术, ASP 本身并不是一种脚本语言,它只是提供了一种使镶嵌在 HTML 页面中的脚本程序得以运行的环境。 Active Server 的一个非常重要的属性是其Active Data Object( ADO)所提供的数据库连接功能 ,它向用户提供了连接任何兼容 ODBC 的数据以及创建全功能数据为应用程序的能力。当使用者利用浏览器作为输入界面 ,输入查询请求 ,浏览器将这些数据返回给服务器 ,服务器对这些数据进行一些处理 ,通过 ADO 创建数据对象 ,根据用户的请求对数据进行相应的操作 (或是将数据存入数据库 ,或者是对数据进行查询等 ),最后服务器将执行的结果再通过 ASP
16、 程序返回给浏览器 ,通过 WEB 页面显示出来。 ASP 操作数据库的过程示意图如图 3.1: 3 3 系统运行结果 以症状诊断过程为例。 客户端浏览器 ADO ASP IIS 服务器 SQL 数据库 图 3.1 ASP 操作数据库的过程示意图 先选择各方面、各部位症状,由这些症状得出所有可能的病名,再选择怀疑的病名并确认与该病名下一致的症状,最后得出患此病的可能性(确诊,疑似,初诊,待诊),进而查寻防治防治并生成病历。 4. 结论与展望 本文针对养牛用户遇到的牛病发生普遍,牛病诊断过程中专家不在场或到场不及时等困难,开发了基于 Web 的牛病诊断专家系统,旨在为养牛用户在遇到问题时提供及时
17、、准确的 建议和指导,以减少不必要的损失。该系统从牛病诊断知识和过程出发,构建牛病诊断信息数据库,模拟牛病专家的诊断过程,实现了“网上诊断,网上治疗,网上学习”的目的。 本系统的一个优势和特点就是基于 Web技术开发,将牛病诊断和治疗建立在互联网的平台上,打破空间的限制,多用户、分布式的直接获取源自牛病专家的意见各建议。 参考文献 1. 应用 ASP.NET 开发畜禽疾病远程诊断专家系统 胡肄农,王立方,陆昌华,薛新红 (江苏省农科院农业现代化研究所 210014) 2. 疾病诊断专家系统的程序设计右江民族师专 物理系 何 兵 (百色 533000) 3. 制作动态网页的新技术 ASP 郑 玉
18、 , 吴军华 (南京建筑工程学院计算中心 ,江苏南京 210009) 4. 用 ASP 和 SQL Server 实现网站分级管理 陆永祯 ,孙云龙 (鞍山钢铁学院学生处 ,辽宁鞍山 114002) 5. 应用 Win2000 和 IIS 实现远程终端服务 杨春燕 陈明 (锦州市气象局 锦州 121001) 6. 微软 SQL Server 2000 数据库的特点及查询优化研究 胡师彦 (北京航空航天大学计算机科学与工 程系 ,北京 100083) 7. 数据库与 IIS 的连接原理及 ASP 在 IIS 上的应用 王子宁 (北京邮电大学计算计科学与技术系 北京 100029) 8. 利用 A
19、SP 访问 WEB数据库的关键技术 洪锡军 郭新贵 李昱明 李从心 (上海交通大学国家模具 CAD 工程研究中心,上海 200030) 9. 利用 Active Server Page 开发 Web 的应用 颜翠英 , 杨世英 (河北科技大学化工装备与控制工程系 ,河北石家庄 050018) 10. ASP 与 SQL Server2000 的连接 鲁琴 (辽东学院,迁宁丹东 118003) 11. ASP 动态网页与 SQL Server2000 数据库的链接 李海明 (承德石油高等专科学校计算机与信息工程系 ,河北承德 067000) 12. ADO 与 SQL Server2000 数据库应用程序开发探讨 白青海 , 张善勇 , 郑 瑛 (内蒙古民族大学 ,内蒙古通辽 028043)