【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

03-25 1373阅读 0评论

前言

文章性质:实验报告 📊

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,人工智能,方法,第1张
(图片来源网络,侵删)

文章介绍:这是作者选修 人工智能 时写的实验报告,设计实现了 动物类型产生式推理系统 ,希望可以为小伙伴们提供微薄之力~ 

代码链接:https://download.csdn.net/download/nanzhou520/88677430

冷知识+1:小伙伴们不经意的 点赞 👍🏻 与 收藏 ✨ 可以让作者更有创作动力!

一、实验目的        

1. 理解产生式系统的结构原理与实际应用。

2. 掌握产生式规则表示及规则库组建的实现方法。

3. 熟悉和掌握产生式系统的运行机制,掌握基于规则推理的基本方法。

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,人工智能,方法,第2张
(图片来源网络,侵删)

4. 学会用高级程序设计语言开发基于规则的动物识别系统。

二、实验内容

经过课程学习,了解到产生式系统是由一组规则组成的、能够协同作用的推理系统,主要由规则库、综合数据库和推理机三大部分组成。本实验要求运用所学知识,借助 Pyhton 语言设计并开发实现一个动物类型产生式推理系统,能根据选择或输入的动物特征正向推理动物类型,并给出相应的回答。同时,系统还可显示初始规则库,并实现对规则库的增加规则与删除规则操作。此外,在实现正向推理的基础上,利用 GUI 图形界面给出合理的交互接口,实现基本演示功能。

三、实验步骤

(1)系统设置,包括设置系统名称为“动物类型产生式推理系统”和系统谓词,给出谓词名及其意义。

(2)建立事实库,即综合数据库:

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,人工智能,方法,第3张
(图片来源网络,侵删)

        事实库在程序开始时直接输入,用户根据需要选择动物特征,点击“开始推理”后进行推理识别,若识别失败,可以重新选择或退出系统。

        动物初始特征如下:

                有毛发 产奶 有羽毛 不会飞 会下蛋 吃肉 有犬齿 有爪 

                眼盯前方 有蹄 反刍 黄褐色 有斑点 有黑色条纹 不会飞 长脖 

                长腿 会游泳 黑白二色 善飞 哺乳类 鸟类 食肉类 有蹄类 偶蹄类

        动物初始类型如下:

                金钱豹 虎 斑马 长颈鹿 信天翁 鸵鸟 企鹅

(3)建立规则库,即建立产生式规则:

        编辑知识库,通过输入规则或删除规则等,完成整个规则库的建立。本算法采用了产生中间事实的方法,便于建立和使用规则。

        为了便于设计,我在初始时仅仅罗列 7 种动物类型,这样所需要的产生式规则较少,本算法共有 15 种规则,具体规则如下:

        R1:IF  该动物有毛发

        THEN  该动物是哺乳类

        R2:IF  该动物产奶        THEN  该动物是哺乳类
        R3:IF  该动物有羽毛        THEN  该动物是鸟类
        R4:IF  该动物会飞   AND  会下蛋

        THEN  该动物是鸟类

        R5:IF  该动物吃肉   AND  是哺乳类        THEN  该动物是食肉类
        R6:IF  该动物有犬齿   AND  眼盯前方   AND  有爪           THEN  该动物是食肉类
        R7:IF  该动物有蹄   AND  是哺乳类        THEN  该动物是有蹄类
        R8:IF  该动物反刍   AND  是有蹄类        THEN  该动物是偶蹄类
        R9:IF  该动物是黄褐色   AND  有黑色条纹   AND  是食肉类        THEN  该动物是虎
        R10:IF  该动物是黄褐色   AND  有斑点   AND  是食肉类        THEN  该动物是金钱豹
        R11:IF  该动物是黄褐色   AND  有斑点   AND  是长脖   AND  是长腿   AND  是有蹄类        THEN  该动物是长颈鹿
        R12:IF  该动物有黑色条纹   AND  是有蹄类        THEN  该动物是斑马
        R13:IF  该动物善飞   AND  是鸟类        THEN  该动物是信天翁
        R14:IF  该动物不会飞   AND  是长脖   AND  是长腿   AND  是鸟类        THEN  该动物是鸵鸟
        R15:IF  该动物不会飞   AND  会游泳   AND  是黑白二色   AND  是鸟类        THEN  该动物是企鹅

(4)正向推理,即从已知事实出发,通过规则库推理得到结论。

推理过程:规则集中的规则前件与事实库中的事实进行匹配,得到匹配的规则集合。从匹配规则集合中选择一条规则作为使用规则,执行使用规则的后件,将该使用规则的后件送入事实库中,重复这个过程直至达到目标。如果有多条匹配规则需从中选一条作为使用规则,本算法是根据规则的顺序依次选择,且规则中不存在同一组事实对应多条匹配规则。

动物类型产生式推理系统的主界面如下:

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

四、实验结果

1. 系统名称及谓词定义

系统名称:动物类型产生式推理系统

谓词定义:【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,P(x_1,x_2,x_3,x_4,x_5,...,x_n),词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,人工智能,方法,第5张

蕴含式表示:【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,P(x_1,x_2,x_3,x_4,x_5,...,x_n)\rightarrow Q,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,人工智能,方法,第6张

本系统的产生式规则用 “特征1 特征2 特征3 ... ,结论” 表示

2. 系统知识库

考虑到编程需求,在将规则库中的规则存入 Rule.txt 文件的同时,把规则的前件与后件分别存入了 Info.txt 文件和 Animal.txt 文件:

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

3. 系统正向推理过程、事实区和规则区

(1)正向推理过程

若输入如下事实:黄褐色、有斑点、吃肉、有毛发。系统的正向推理过程:先从规则库中取出第一条规则 R1,检查其前提是否可与事实库中的已知事实相匹配,R1 的前提是“有毛发”,与已知事实相匹配,故规则 R1 被执行,并将其结论“哺乳类”作为新的事实加入到事实库中。此时,事实库的内容变为:黄褐色、有斑点、吃肉、有毛发、哺乳类。此后,规则 R2 ~ R4 均匹配失败,接着取规则 R5,该前提“吃肉、哺乳类”与已知事实相匹配,故规则 R5 被执行,并将其结论“食肉类”作为新的事实加入到事实库中。此时,事实库的内容变为:黄褐色、有斑点、吃肉、有毛发、哺乳类、食肉类。此后,规则 R6 ~ R9 均匹配失败,接着取规则 R10,该前提“黄褐色、有斑点、食肉类”与已知事实相匹配,故规则 R10 被执行,并推出“识别结果为:金钱豹”。由于“金钱豹”已是目标集合中的一个结论,即已推出最终结果,故问题求解过程结束。

正向推理过程的运行界面:

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

(2)事实区

系统主界面中的“选择动物特征”板块显示规则库中的所有事实,“已选特征”板块显示用户选择或输入的事实:

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

(3)规则区

通过点击系统主界面上的“初始规则库”按钮可查看系统初始规则库,也可通过点击主界面上的“添加规则”与“删除规则”按钮进入对应的界面,进行添加规则与删除规则操作:

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

下图为添加规则界面,用户需按照界面中的文字提示输入正确格式的产生式规则,即“特征1 特征2 特征3 ... ,结论”。

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

下图为删除规则界面,点击左侧的规则前件进行删除时,右侧的规则后件会同步被删除;同理,点击右侧的规则后件进行删除时,左侧的规则前件会同步被删除。值得注意的是,删除规则操作执行后,对应的数据文件中的相关信息也会被删除。

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

五、实验总结

通过查阅资料与 Python 学习,我成功设计并编程了一个简单的动物类型产生式推理系统,此系统可以识别金钱豹、虎、斑马、长颈鹿、信天翁、鸵鸟、企鹅等 7 种动物,上述问题的求解过程是一个不断地从规则库中选择可用规则与综合数据库中的已知事实进行匹配的过程。经过此次实验,我对人工智能的产生式系统有了进一步的认识,特别是对正向推理和反向推理有了更深的了解。

来点儿补充

通过 Qt Designer 可视化设计 UI 界面并生成 .ui 的文件,再使用 Pycharm 自行配置的 External Tools 中的 PyUIC 将其转换为 .py 文件。

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统

最后说些话

这篇文章只是动物类型产生式推理系统的实验报告,如果大家需要相关的源代码文件,可以去下面这个链接下载:

产生式推理系统实验代码(Python)【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统,icon-default.png?t=N7T8,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,人工智能,方法,第16张https://download.csdn.net/download/nanzhou520/88677430值得注意的是,这个动物类型产生式推理系统肯定是不完美的,大家可以在我的基础上完善各种功能,也可以美化页面布局。最初在设计系统时,我先是参考了网上已有的系统代码,可以 显示动物图片 的那种,我个人觉得还是挺美观的,把图贴在下面啦!但是设计到后面,我的重心放在了功能实现上,所以就没有去搞图片,大家如果有兴趣的话,可以考虑把图片加进来~ 除此之外,也可以考虑把规则存入 数据库 进行调用,还可以 新增修改规则 、查询规则 等功能,反正可操作空间还是蛮大的,但我这个拿去交差应该可以了 (* ̄3 ̄)╭

【人工智能】最详尽的产生式系统实验报告:动物类型产生式推理系统


免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,1373人围观)

还没有评论,来说两句吧...

目录[+]