人工智能导论实验:产生式推理系统(Python+MySQL+tkInter)

之前,人工智能课程实验要我们写一个产生式推理系统,于是用python完成了此次实验,采用MySQL数据库存储知识库和事实库,实验报告如下:

一、系统设置

1.1系统名称
交通工具识别系统

1.2系统开发环境
处理器: Intel® Core™ i5-10300H CPU @ 2.50GHz 2.50 GHz
机带 RAM: 16.0 GB (15.8 GB 可用)
系统类型: 64 位操作系统, 基于 x64 的处理器
开发语言版本:Python3.8
开发工具:PyCharm Community Edition 2021.1 x64
MySQL数据库版本:5.7.9

1.3系统谓词及含义
1、Size(x):表示要识别的交通工具体型大小。
2、Character(y):表示要识别的交通工具特点。
3、Vehicle(z):表示交通工具。

1.4系统目的
根据用户提供的事实,与知识库中的规则比配从而识别出交通工具

1.5系统模块

文件名功能
main.py主函数,调用gui类显示主界面
GUI.py定义gui类,设置主界面按钮、文本框等图像部件,完成与用户交互界面的功能
Rules.py定义Rule类,与MySQL数据库连接并实现规则的前提条件与结论的存储与调用
check.py定义Check类,用于推理匹配,检查规则库中是否有符合的知识
control.py定义Control类,控制程序,控制推理机进行推理

二、知识库

2.1规则库:
初始一共10条规则:
r0:IF Size(小)AND Character(有轮子) THEN Vehicle(车)
r1:IF Size(大)AND Character(流线型) THEN Vehicle(飞机)
r2:IF Character(天上飞的) THEN Vehicle(飞机)
r3:IF Character(水上游的) THEN Vehicle(船)
r4:IF Character(地上跑的) THEN Vehicle(车)
r5: IF Size(大) AND Character(冒黑烟) AND Vehicle(船) THEN Vehicle(轮船)
r6:IF Vehicle(飞机) AND Character(有机翼) THEN Vehicle(航天飞机)
r7:IF Vehicle(飞机) AND Character(有螺旋桨) THEN Vehicle(直升机)
r8:IF Vehicle(车) AND Character(有四个轮) THEN Vehicle(汽车)
r9:IF Vehicle(车) AND Character(有两个轮) THEN Vehicle(自行车)

2.2数据库
2.2.1 数据库连接:
Rule.py文件中
import pymysql

打开数据库连接

db = pymysql.connect(host=“localhost”, user=“root”, password = “123456”, database = “production”)

host表示数据库主机IP
User表示数据库用户名
Password表示数据库用户密码
Database表示数据库名称

2.2.2 rule表(知识库:规则表)
字段:
在这里插入图片描述
初始规则:
在这里插入图片描述
2.2.3 synthesis表(综合数据库:记录用户输入的事实)
字段:
在这里插入图片描述
事实:
在这里插入图片描述

三、系统功能展示:

3.1查看规则:
在这里插入图片描述
3.2添加规则:
在这里插入图片描述
3.3删除规则:
在这里插入图片描述
3.4修改规则:
在这里插入图片描述
3.5推理:
在这里插入图片描述

四、推理过程

注:本系统最多接受输入4个事实
4.1正向推理
事实区:小、有轮子、有四个轮
规则区:如上述2.1规则库
推理流程图:
在这里插入图片描述
4.2逆向推理
事实区:大、流线型、有螺旋桨
规则区:如上述2.1规则库
推理流程图:
在这里插入图片描述

五、总结与心得体会:

经过这一次实验,我对一阶谓词表示法和产生式表示法有了更深的认识。
为了实现用户交互界面的设计,我自学了Python的GUI编程库Tkinter,最终实现了一个简陋的用户交互界面。
在代码层面,我采用了MVC的软件设计模式,它强制性地使应用程序的输入、处理和输出分开,加深了我对软件工程这一专业的理解。
另外,对于知识库与事实库的存储采取了MySQL数据库这一软件,通过建立数据表实现了对规则的增删查改,也同时记录了用户输入的事实,完善了这一产生式系统。
但是,这个系统还存在有不足,比如对于产生式系统的界面比较简陋,没有美化界面使用户的交互体验更加舒适。
总而言之,学习永无止境,还需要继续努力!

源码+实验报告地址:
https://download.csdn.net/download/qq_36428822/43750709

  • 8
    点赞
  • 118
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是小猪猪哦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值