人工智能基础 | Python实现-产生式系统-文字动物识别系统

参考资料: 《人工智能通识教程》——王万良

一、实现效果


在这里插入图片描述

二、运行环境


Pycharm 社区版 + Anaconda3

三、相关知识


3.1 产生式系统

在这里插入图片描述
规则库:用于描述相应领域内知识的产生式集合
综合数据库:用于存放问题求解过程中各种当前信息的数据结构
控制系统:由程序组成,负责整个产生式系统的运行,实现对问题的求解

3.2 控制系统(程序)的工作

  • 规则库中选择与综合数据库中的已知事实进行匹配
  • 匹配成功的规则可能不止一条,进行冲突消解
  • 执行规则时,若右部是一或多个(1) 结论,则把这些结论加入到综合数据库中,(2) 操作,则执行
  • 对于不确定知识,执行规则时,根据算法计算结论的不确定性
  • 检查综合数据库中是否包含了最终结论,决定是否停止系统的运行

本次实验是实现识别虎、金钱豹、斑马、长颈鹿、鸵鸟、且、信天翁共七种动物的产生式系统

3.3 规则库总结

1有毛发 2有奶 3 有羽毛 4会飞 5会下蛋
6吃肉 7犬齿 8有爪 9眼盯前方 10有蹄
11反刍动物 12黄褐色 13暗斑点 14黑色条纹 15长脖子
16有长腿 17不会飞 18有黑白二色 19会游泳 20善飞
21哺乳类 22鸟类 23食肉类 24有蹄类 25金钱豹
26虎 27长颈鹿 28斑马 29鸵鸟 30企鹅 31信天翁
【R1】1 =>21 【R2】2 => 21 【R3】3 => 22 【R4】4 + 5 => 22 【R5】6 => 23
【R6】7 + 8 + 9 => 23 【R7】10+ 21 => 24 【R8】11 + 21 => 24
【R9】6 + 12 + 13 +21 => 25 【R10】12 + 14 + 21 + 23 => 26
【R11】15 + 16 + 13 + 24 => 27 【R12】 14 + 10 => 28
【R13】15 + 16 + 17 + 18 + 22 => 29 【R14】 17 + 18 + 19 + 22 => 30
【R15】20 + 22 => 31

四、程序

4.1 流程图

在这里插入图片描述

4.2 编写程序

测试数据:

已知初始事实(综合数据库):

暗斑点、长脖子、长腿、奶、蹄

rule.txt

[有毛发, 有奶,有羽毛,会飞, 会下蛋,吃肉,犬齿,有爪,眼盯前方,有蹄,反刍动物,黄褐色,暗斑点,黑色条纹,长脖子,有长腿,不会飞,有黑白二色,会游泳,善飞,哺乳类,鸟类,食肉类,有蹄类,金钱豹,虎,长颈鹿, 斑马,鸵鸟,企鹅,信天翁]
(1>21)
(2>21)
(3>22)
(4,5>22)
(6>23)
(7,8,9>23)
(10,21>24)
(11,21>24)
(21,23,12,13>25)
(21,23,12,14>26)
(24,15,16,13,2>27)
(24,14>28)
(22,15,16,17,18>29)
(22,19,17,18>30)
(22,20>31)

Animal.py

  • 6
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值