论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc

上传人:椰子壳 文档编号:3968266 上传时间:2019-10-11 格式:DOC 页数:9 大小:458.52KB
返回 下载 相关 举报
论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc_第1页
第1页 / 共9页
论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc_第2页
第2页 / 共9页
论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc_第3页
第3页 / 共9页
论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc_第4页
第4页 / 共9页
论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc》由会员分享,可在线阅读,更多相关《论文(设计)-基于数值诊断与案例推理相结合的牛病诊断专家系统[C]31470.doc(9页珍藏版)》请在三一文库上搜索。

1、专业好文档基于数值诊断与案例推理相结合的牛病诊断专家系统邢斌1 李道亮1,* 段青玲1(1.中国农业大学信息与电气工程学院,北京 海淀,100083;)摘要: 牛病发生频繁和牛病专家相对不足给牛病的及时诊断与防治带来很大困难。因此,本文在对牛病的特点和牛病诊断思维模式进行分析的基础上,根据牛病诊断与防治的特点和要求,将数值诊断和案例推理技术引入到牛病诊断与防治系统中,结果表明应用两种诊断推理结合的方法正确率高于以任意一种方法诊断的正确率。建立了数值诊断与案例推理相结合诊断的牛病诊断推理模型,并且基于此模型开发了牛病专家诊断系统。关键词:案例推理,数值诊断,牛病,诊断专家系统A Numerica

2、l and case-based reasoning diagnosis expert system for cattle diseaseXing Bin1 Li Daoliang1,* Duan Qingling1(1. College of Information and Electrical Engineering, China Agricultural University, Beijing Haidian, 100083)Abstract: It is very difficult to make timely diagnosis and treatment for cattle d

3、isease because of the frequent cattle disease and the lack of cattle disease experts. In this paper the case-based reasoning diagnosis was adopted, according to the characteristics of the cattle disease diagnosis and treatment. And the model of numerical and case-based reasoning diagnosis was develo

4、ped that based on the analysis of the characteristics and the diagnosis mode of cattle disease. It is proved that the combined method has higher accuracy than any single kind of the method. And then, the diagnosis expert system for cattle disease was also implemented.Key words: case-based reasoning;

5、 numerical diagnosis, cattle disease, diagnosis expert system1 引言随着我国养牛业的迅速发展,养殖规模的不断扩大,牛病的预防和治疗也变的十分重要。但是由于在饲养者管理不善,养殖环境较差等诸多因素的影响,使得牛病发生频繁,并且从事牛病诊断的专家数量很难满足牛病诊断的需求,牛病给畜牧养殖用户带来的经济损失也越来越大4。因此,需要建立一个将人工智能技术与牛病诊断相结合的智能诊断系统,来解决病害频繁发生和领域专家缺乏的矛盾,使养殖用户在牛发病时能及时运用专家知识进行疾病诊断与治疗。目前,基于规则的诊断推理方法和基于案例的诊断推理方法是在疾病

6、诊断专家系统中应用比较广泛的方法9,10。基于规则推理方法是根据以往专家诊断的经验,将其归纳成规则,通过启发式经验知识进行推理6,它只有在建立了较为完备的领域知识规则库的基础上, 才能有效高的诊断正确率。但在牛病领域中,由于从领域专家中获取诊断规则比较困难,很难保证良好的诊断问题求解性能。基于案例的推理是有别于基于规则推理的另一种推理模式, 它是基于过去求解类似问题的经验来获得当前问题求解结果的一种新型专家系统推理模式2,7,对于牛病诊断来说,就是利用牛病专家诊断过的历史案例来解决当前的新病例,案例的获取可以从专家以往的历史诊断病例中获得。综上所述,由于牛病诊断的案例可以从牛病专家以往的诊断病

7、例中获得,牛病案例的获取较之规则的获取更容易。因此,基于案例的推理方法在牛病诊断领域中有着比基于规则推理更高的可行性。本文第一作者:邢斌(1983 ),男,河北承德人,硕士研究生,研究方向农业智能系统应用.Tel:13699286493, E-mail:;通讯作者:李道亮(1971),男,山东东营人,教授,博士生导师,研究方向智能系统.Tel.: 010-62736764, E-mail:li_采用基于案例的诊断推理方法,并利用张信,马衍忠等人编写的动物疾病数值诊断与防治一书中提出的牛病数值诊断方法1,建立了数值诊断与案例推理相结合诊断的牛病诊断推理模型。实现了两种诊断方法的优势互补,提高了牛

8、病诊断的准确率。2 系统设计2.1系统结构设计本系统的系统结构图如图1所示,包括用户界面、案例维护模块、诊断推理模块和数值诊断知识维护模块四部分组成。其中,用户界面提供人机交互和诊断、治疗、预防结果显示等功能;案例维护和数值诊断知识维护是系统后台的知识库的管理模块,这两部分是由系统管理员和牛病专家根据实际得到的案例、案例诊断过程中复用的案例和数值诊断的知识对其进行增加、修改和删除等操作;诊断推理模块是根据养牛户通过界面输入的牛病症状信息,通过案例诊断和数值诊断,对牛病进行综合推理并得出结论,最后将诊断结果返回给用户。两种诊断方法所用到的知识信息分别的从案例库和数值诊断知识库中得到。图1 牛病诊

9、断的系统结构图Fig.1 structure of cattle disease diagnosis system 2.2 诊断推理模块分析与设计2.2.1 案例诊断案例诊断主要分为两个步骤:案例的分类和案例诊断的相似度的计算。其中案例分类的主要是将相似度十分相似的案例划归为一类,从而将一个大的案例库划分几若干个子案例库。这样做的目的是将相似的案例划分为一类,使得在基于案例的诊断过程中可以减少由不相似案例给诊断带来的干扰,增加案例诊断的准确率。案例的分类算法为:首先计算案例两两相似度,相似度计算公式为:式中Sij为第i个和第j个案例的相似度值,Wik为第i个案例中k个症状的权重,同理Wjk为第

10、i个案例中k个症状的权重。D(k)为第i个和第j个案例中第k个症状的相似程度,如果两个案例对应的症状相同则D(k)的值为1,不同则为0。其中症状权重的计算公式为:式中Wj为第j个症状在这个子案例库中的权重大小;P(Sj)为第j个症状在此案例库中的总和,而P(s) 为所有症状的总和。找出最相似的且两个不在同一类的案例,如果相似度超过合并的阈值则将两个案例并为一类,并进入下一次循环,直到没有超过阈值,则分类完成并且程序退出。具体的案例分类算法流程图如图2所示:图2 牛病案例分类流程图Fig.2 flow chart of category of cattle disease cases 被分到同一

11、类中的案例一定是类似的,但不一定是同一种疾病案例。分类完成之后,按照公式2分别对每个子案例库计算症状权重大小。基于案例的牛病诊断算法是用旧的案例或经验来分析和解决新的问题。诊断过程是根据用户所输入的牛病症状信息,从牛病案例库中寻找与之最相似的案例,也就是根据公式1计算得出相似度数值最大的一条案例,如果相似度值大于诊断阈值(诊断阈值是诊断成功的最低相似度值,根据与专家的讨论研究定为0.65),则说明诊断成功。2.2.2 数值诊断牛病的数值诊断是张信、马衍忠等专家们根据多年的诊断经验,总结出所有的牛病症状在每一种病中所占的分值。诊断的过程是将用户所输入的牛病症状分别与每一种牛病的症状进行比较,如果

12、用户输入的症状与某一疾病中出现的症状相同,则在牛得这种病的上面加上相应的分值,按照此方法,分别对每一种病进行匹对,得出每一种病与用户输入的症状匹配后的分值,从中搜索出最大分值所对应的疾病名称,为牛得的疾病。例如,若用户输入症状集S(S1, S3, S4, S5, S8, S9, S12, S15, S17, S20), 假设数值诊断知识库中有两条疾病知识记录A(S1:10, S2:4, S4:8, S6:4, S8:17, S9:8, S11:6, S15:9, S20:2, S24:3), B(S1:4, S3:7, S4:9, S7:8, S8:3, S12:5, S15:7, S17:4

13、, S20:1, S23:10),Sx为症状编号,对应的数值为此症状在该疾病知识中的分值。A中“S1:10”代表编号为S1的症状在A病中的分值为10。诊断过程为:首先从知识库中逐条和用户输入的症状进行比对,如果和用户输入的症状编号相同则加上此条知识中对相应症状的分值。然后根据上述方法可以计算知识库中每一条记录对应于用户输入的症状都有一个分值。最后从中查找出分值最大的记录,其所对应的疾病为诊断结果。上例中A记录的分值为54而B记录的分值为30,A值大于B,因此诊断结果为A记录对应的疾病。2.2.3 基于案例与数值诊断相结合的推理案例诊断和数值诊断各有优点,数值诊断可以对案例的正确性和可信程度进行

14、衡量。而案例诊断可以对数值诊断做有力的补充。例如,当用户输入症状较少时,利用数值诊断的方法可能得出多种分值相同的疾病,因此很难确诊断,而案例诊断可以利用相似度的计算得出最相似的疾病。针对这一问题本文采用了两种诊断相结合的方法进行牛病诊断。诊断推理步骤为:步骤一:根据用户输入的症状信息分别用两种诊断方法诊断,之后对两种结果进行比较。步骤二:如果结果不同,则将两种病所涉及到的所有症状显示出来,让用户根据这些症状再次判断病牛是否有此症状,并重新输入症状信息进行诊断。步骤三:如果诊断结果相同则判断用案例诊断方法中计算得出的相似度值是否在诊断阈值(0.65)与极相似阈值(0.95)之间(如果小于诊断相似

15、度值则说明此案例不能作为典型的成功诊断案例,而不能复用,如果诊断相似度值大于极相似阈值则说明从案例库中得到的相似案例与用户输入的案例几乎相同,因此可以舍弃此案例),若满足条件则复用此案例并显示诊断结果。步骤四:若未满足条件则问用户是否满足诊断结果,若满意则显示诊断结果,不满意则重新进入诊断页面,返回步骤一进行下一次诊断。两种方法结合后的诊断流程如图3所示:图3 牛病诊断的流程图Fig.3 flow chart of cattle disease diagnosis 2.3数据库设计本系统包括三个主要的数据表,牛病知识表、案例表,案例权重表。牛病知识表是存储数值诊断中的疾病知识库,其中症状分值集

16、合字段中存储每种病对应所有症状的编号和分值,症状间用横杠隔开,症状与分值间用冒号隔开;案例表中案例集合字段中存储的是每一条案例对应的症状编号组合,疾病的名称可以根据疾病编号从牛病知识表中查询得到;案例权重表中权重向量字段是用来存储每类案例中各个症状的权重的,存储形式是按症状编号顺序来存储症状的权值,且权值之间用横杠隔开。其中案例表和案例权重表中的案例类型是根据前节所述的案例分类算法计算得出的。图4,5,6为三个数据表中的部分记录集。图4 牛病知识表Fig.4 Table of knowledge of cattle disease图5 牛病知识表Fig.5 Table of disease c

17、ases图6 案例权重表Fig.6 Weight of disease case3 系统实现本系统是基于Struts的MVC模式下开发的,Struts是目前比较流行的基于MVC的框架, 在总体上实现了对业务逻辑层、显示层和控制层的分离,同时也提高了应用软件的可扩展性和重用性5,8。系统是在Windows XP+ jdk1.6+tomcat6.0+SQL Server2000环境下运行的。系统主要运行界面如图7,8所示,牛病症状输入界面为养殖用户提供了一般症状、呼吸系统症状、消化系统症状、神经系统症状等七类牛病常见症状。用户可以通过此界面根据症状的分类输入牛的发病症状,提交之后得到诊断结果输出页

18、面。4 结论(1)利用53个历史诊断案例做为测试案例,分别对基于案例方法、数值诊断方法和基于数值诊断与案例推理相结合进行测试,经统计计算得出诊断的正确率分别为84.9,88.7和94.3。从结果可以看出用第三种方法进行牛病诊断的正确率要高于前两种,因此采用两个诊断相结合的方法可以有效的解决单一诊断方法的不足。图7用户症状输入界面Fig.7 symptom input interface 图8 诊断结果输出界面Fig.8 diagnosis results interface(2)本文将基于案例的方法应用于牛病诊断系统中,避开了应用基于规则诊断中的知识获取的瓶颈问题。实现了牛病案例的案例分类算法

19、,为基于案例的牛病诊断做了案例初步处理的工作,提高了诊断效率。提出了数值诊断和基于案例的两种诊断方法和诊断流程,建立了基于案例与数值诊断结合的牛病诊断模型,并且利用该模型开发了牛病诊断系统。(3)本文开发了基于struts框架的牛病诊断系统,struts框架将模型-视图-控制器分开,使系统开发更加灵活,增强了系统的可重用性和易维护性,提高了开发Web应用的效率。参考文献:1. 张信, 马衍忠, 皮会庆, 张明生. 动物疾病数学诊断与防治M, 中国农业出版社,20082. 周 云. 基于案例推理的鱼病诊断专家系统D 北京 中国农业大学,20043. Isabelle Bichindaritz,

20、Cindy Marling. Case-based reasoning in the health sciences: Whats next? J Artificial Intelligence in Medicine, 2006, 36:1271354. 戎立斌. 基于Web的奶牛疾病诊断专家系统研究D 北京 中国农业大学,20075. 任中方,张华,闫明松. MVC模式研究的综述J.计算机应用研究,2004(10):5-8,126. L.Rong, D.Li. DCDDS: A dairy cow disease diagnosis system for dairy farm in Chi

21、na J. Lecture series on computer and computational sciences. Vol 8, 2007, p428-4327. Chieh-Yuan Tsai, C.-C. Chiu, J.-S. Chen. A case-based reasoning system for PCB defect prediction J. Expert Systems with Applications, 2005,28:8138228. 杨丽娜,魏永红. 基于struts技术的web应用设计与实现J.计算机信息与技术, 2006(08):35-369. 祝伟. 面

22、向呼叫中心的鱼病智能诊断系统研究D 北京 中国农业大学,200610. Petra Perner, Silke Janichen, Horst Perner. Case-based object recognition for airborne fungi recognition J. Artificial Intelligence in Medicine, 2006, 36:137157Editors note: Judson Jones is a meteorologist, journalist and photographer. He has freelanced with CNN f

23、or four years, covering severe weather from tornadoes to typhoons. Follow him on Twitter: jnjonesjr (CNN) - I will always wonder what it was like to huddle around a shortwave radio and through the crackling static from space hear the faint beeps of the worlds first satellite - Sputnik. I also missed

24、 watching Neil Armstrong step foot on the moon and the first space shuttle take off for the stars. Those events were way before my time.As a kid, I was fascinated with what goes on in the sky, and when NASA pulled the plug on the shuttle program I was heartbroken. Yet the privatized space race has r

25、enewed my childhood dreams to reach for the stars.As a meteorologist, Ive still seen many important weather and space events, but right now, if you were sitting next to me, youd hear my foot tapping rapidly under my desk. Im anxious for the next one: a space capsule hanging from a crane in the New M

26、exico desert.Its like the set for a George Lucas movie floating to the edge of space.You and I will have the chance to watch a man take a leap into an unimaginable free fall from the edge of space - live.The (lack of) air up there Watch man jump from 96,000 feet Tuesday, I sat at work glued to the l

27、ive stream of the Red Bull Stratos Mission. I watched the balloons positioned at different altitudes in the sky to test the winds, knowing that if they would just line up in a vertical straight line we would be go for launch.I feel this mission was created for me because I am also a journalist and a

28、 photographer, but above all I live for taking a leap of faith - the feeling of pushing the envelope into uncharted territory.The guy who is going to do this, Felix Baumgartner, must have that same feeling, at a level I will never reach. However, it did not stop me from feeling his pain when a gust

29、of swirling wind kicked up and twisted the partially filled balloon that would take him to the upper end of our atmosphere. As soon as the 40-acre balloon, with skin no thicker than a dry cleaning bag, scraped the ground I knew it was over.How claustrophobia almost grounded supersonic skydiverWith e

30、ach twist, you could see the wrinkles of disappointment on the face of the current record holder and capcom (capsule communications), Col. Joe Kittinger. He hung his head low in mission control as he told Baumgartner the disappointing news: Mission aborted.The supersonic descent could happen as earl

31、y as Sunday.The weather plays an important role in this mission. Starting at the ground, conditions have to be very calm - winds less than 2 mph, with no precipitation or humidity and limited cloud cover. The balloon, with capsule attached, will move through the lower level of the atmosphere (the tr

32、oposphere) where our day-to-day weather lives. It will climb higher than the tip of Mount Everest (5.5 miles/8.85 kilometers), drifting even higher than the cruising altitude of commercial airliners (5.6 miles/9.17 kilometers) and into the stratosphere. As he crosses the boundary layer (called the t

33、ropopause), he can expect a lot of turbulence.The balloon will slowly drift to the edge of space at 120,000 feet (22.7 miles/36.53 kilometers). Here, Fearless Felix will unclip. He will roll back the door.Then, I would assume, he will slowly step out onto something resembling an Olympic diving platf

34、orm.Below, the Earth becomes the concrete bottom of a swimming pool that he wants to land on, but not too hard. Still, hell be traveling fast, so despite the distance, it will not be like diving into the deep end of a pool. It will be like he is diving into the shallow end.Skydiver preps for the big

35、 jumpWhen he jumps, he is expected to reach the speed of sound - 690 mph (1,110 kph) - in less than 40 seconds. Like hitting the top of the water, he will begin to slow as he approaches the more dense air closer to Earth. But this will not be enough to stop him completely.If he goes too fast or spin

36、s out of control, he has a stabilization parachute that can be deployed to slow him down. His team hopes its not needed. Instead, he plans to deploy his 270-square-foot (25-square-meter) main chute at an altitude of around 5,000 feet (1,524 meters).In order to deploy this chute successfully, he will

37、 have to slow to 172 mph (277 kph). He will have a reserve parachute that will open automatically if he loses consciousness at mach speeds.Even if everything goes as planned, it wont. Baumgartner still will free fall at a speed that would cause you and me to pass out, and no parachute is guaranteed

38、to work higher than 25,000 feet (7,620 meters).It might not be the moon, but Kittinger free fell from 102,800 feet in 1960 - at the dawn of an infamous space race that captured the hearts of many. Baumgartner will attempt to break that record, a feat that boggles the mind. This is one of those monumental moments I will always remember, because there is no way Id miss this.11.9

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1