java动物识别专家系统_动物识别专家系统的.pdf

这篇博客详细介绍了基于Java实现的动物识别专家系统,该系统通过15条简单的产生式规则识别7种动物。内容包括规则描述、事实概念和编号、推理过程以及程序的流程分析。
摘要由CSDN通过智能技术生成

动物识别专家系统的

动物识别专家系统

一 试验题目

动物识别专家系统

二、试验内容

动物识别专家系统是流行的专家系统实验模型,它用产生式规则来表示知

识,共15条规则、可以识别七种动物,这些规则既少又简单,可以改造他

们,也可以加进新的规则,还可以用来识别其他东西的新规则来取代这些规

则。动物识别15条规则的中文表示是:

规则1:

如果:动物有毛发

则 :该动物是哺乳动物

规则2:

如果:动物有奶

则 :该单位是哺乳动物

规则3:

如果:该动物有羽毛

则 :该动物是鸟

规则4:

如果:动物会飞,且会下蛋

则 :该动物是鸟

规则5:

如果:动物吃肉

则 :该动物是肉食动物

规则6:

如果:动物有犬齿,且有爪,且眼盯前方

则 :该动物是食肉动物

规则7:

如果:动物是哺乳动物,且有蹄

则 :该动物是有蹄动物

规则8:

如果:动物是哺乳动物,且是反刍动物

则 :该动物是有蹄动物

规则9:

如果:动物是哺乳动物,且是食肉动物,且是黄褐色的,且有暗斑点

则 :该动物是豹

规则10:

如果:如果:动物是黄褐色的,且是哺乳动物,且是食肉,且有黑条纹

则 :该动物是虎

规则11:

如果:动物有暗斑点,且有长腿,且有长脖子,且是有蹄类

则 :该动物是长颈鹿

规则12:

如果:动物有黑条纹,且是有蹄类动物

则 :该动物是斑马

规则13:

如果:动物有长腿,且有长脖子,且是黑色的,且是鸟,且不会飞

则 :该动物是鸵鸟

规则14:

如果:动物是鸟,且不会飞,且会游泳,且是黑色的

则 :该动物是企鹅

规则15:

如果:动物是鸟,且善飞

则 :该动物是信天翁

动物分类专家系统由15条规则组成,可以识别七种动物,在15条规则中,

共出现 30个概念(也称作事实),共30个事实,每个事实给一个编号,从编

号从1到30,在规则对象中我们不存储事实概念,只有该事实的编号,同样规

则的结论也是事实概念的编号,事实与规则的数据以常量表示,其结构如下:

Char *str{}={"chew_cud","hooves","mammal","forward_eyes","claws",

"pointed_teeth","eat_meat","lay_eggs","fly","feathers","ungulate",

"carnivore","bird","give_milk","has_hair","fly_well",

"black&white_color","can_swim","long_legs","long_neck",

"black_stripes","dark_spots","tawny_color","albatross",

"penguin","ostrich","zebra","giraffe","tiger","cheetah","\0"}

程序用编号序列的方式表达了产生式规则,如资料中规则15,如果动物是

鸟,且善飞,则该动物是信天翁。相应的规则数组第七条是{16,13,0,0,0,

0},第十三个是“bird”(鸟),如果事实成立,询问使用者下一个事实,第十

六个“fly_weil”(善飞),如果也成立,则查找结论断言编号数组{30,29,28,

27,26,25,24,3,3,13,12,12,11,11,0}中第七个“24”,这里24对应事实数组中

的“albatross”(信天翁)。

上述就是程序的推理过程,也是程序中的重点,该部分是由规则类(类rul

e)中的Query方法实现。

三、流程图及分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值