当前位置:   article > 正文

用Python实现一个动物识别专家系统--人工智能_动物识别系统代码python

动物识别系统代码python
  • 考察 产生式系统
  • 代码没写GUI,因为不喜欢这玩意,直接在终端中进行人机交互。使用代码之前,请根据自身情况对字符编码、文件路径进行修改
  • 代码写的很烂,以后有能力了再把算法加进去优化代码吧

产生式系统

  • 规则库:用于描述相应领域内知识的产生式系统
  • 综合数据库,又称为事实库、上下文、黑板:一个用于存放问题求解过程中各种当前信息的数据结构
  • 控制系统,又称推理机构:由一组程序组成,负责整个产生式系统的运行,实现对问题的求解

控制系统:

  1. 从规则库中选择前提与综合数据库中的已知事实进行匹配
  2. 匹配成功的规则可能不止一条,进行冲突消解 (出题者对题目进行过设置,没有出现冲突)
  3. 执行某一规则时,如果其右部是一个或多个结论,则把这些结论加入到综合数据库中;如果其右部是一个或多个操作,则执行这些操作
  4. 对不确定性知识,在执行每一条规则时还要按一定算法计算结论的不确定性 (由于只是考察产生式系统,出题者对题目进行过简化,题目中没有涉及这部分内容)
  5. 检查综合数据库中是否包含了最终结论,决定是否停止系统的运行

第一问

先根据题图,创建规则库(使用了一个文本文件)

if 有毛发 then 哺乳动物
if 有乳 then 哺乳动物
if 吃肉 then 食肉动物
if 有犬齿 and 有爪 and 眼向前方 then 食肉动物
if 哺乳动物 and 有蹄 then 有蹄类
if 哺乳动物 and 反刍动物 then 有蹄类
if 哺乳动物 and 食肉动物 and 黄褐色 and 暗斑点 then 豹子
if 哺乳动物 and 食肉动物 and 黄褐色 and 黑条纹 then 老虎
if 有蹄类 and 长脖子 and 长腿 and 暗斑点 then 长颈鹿 
if 有蹄类 and 黑条纹 then 斑马
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

代码:

rules = {
   } # 以字典形式存储规则


"""
读取规则库文件中规则,并存放在rules字典中
    - 字典的键:前提
    - 字典的值:结论 
"""
def readRules(filePath):
    global rules
    for line in open(filePath, mode = 'r', encoding 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/383376
推荐阅读
相关标签
  

闽ICP备14008679号