计算机科学与技术学院《人工智能》课程设计报告设计题目:动物识别系统设计人员:学号:学号:学号:学号:学号:学号:指导教师:2015年7月目录目录 (1)摘要 (2)Abstract (2)一、专家系统基本知识 (3)1.1专家系统实际应用 (3)1.2专家系统的开发 (3)二、设计基本思路 (4)2.1知识库 (4)....................................................................................................... 错误!未定义书签。
2.1.2 知识库建立 (4)2.1.3 知识库获取 (5)2.2 数据库 (6)....................................................................................................... 错误!未定义书签。
....................................................................................................... 错误!未定义书签。
三、推理机构 (7)3.1推理机介绍 (7)3.1.1 推理机作用原理 (7)....................................................................................................... 错误!未定义书签。
3.2 正向推理 (7)3.2.1 正向推理基本思想 (7)3.2.2 正向推理示意图 (8)3.2.3 正向推理机所要具有功能 (8)3.3反向推理 (8)....................................................................................................... 错误!未定义书签。
3.3.2 反向推理示意图 (8)....................................................................................................... 错误!未定义书签。
四、实例系统实现 (9)4.1系统介绍 (9)4.2基本思路 (9)4.3程序主要代码 (9)4.4系统执行结果 (9)五、结论 (9)参考文献: (9)附录一 (10)附录二 (17)摘要动物识别专家系统是将人的思维过程转化为计算机语言的逻辑过程,其关键在于知识和信息的表示,智能推理或求解的基础——知识库的创建和管理,以及基于某种知识和信息表示的智能推理或求解过程。
使动物识别具有一定的智能性、良好的交互性和可视化效果。
本论文也主要以识别七种动物的设计思路和程序为例所写的。
动物识别专家系统是人工智能中一个比较基础的规则演绎系统,是人工智能领域里的一个大模块的专家系统的一个特定例子。
是集知识表与推理为一体的,以规则为基础对用户提供的事实进行向前、逆向或双向的推理得出结论的一种产生式系统。
如果通过良好的分析、精确地设计和细致的规划会创设出高度灵活和快速有效的识别系统,再加上良好的界面供用户添加新的事实和规则,反馈详细的错误或信息的话,那就是一个相当完整的识别系统了。
关键词:人工智能;专家系统;动物识别Abstractanimal recognition expert system is the human thinking process is transformedinto the logical process of computer language, the key lies in knowledge and information, said intelligent reasoning or solving based knowledge base -- creating and management, and based on some information and knowledge representation of intelligent reasoning and solving process. So that the animal identification has a certain intelligence, good interaction and visual effect. This paper also mainly to identify seven kinds of animal design ideas and procedures for the case of the written. Animal identification expert system is one of the more basic rules in artificial intelligence, and is a specific example of the expert system in the field of artificial intelligence. A production system based on rules is a production system which is based on the fact that the user is provided with the facts. If the good analysis and accurate design and meticulous planning created a highly flexible, efficient and rapid recognition system, plus a good interface for users to add new facts and rules, with the wrong information feedback, that is a fairly complete knowledge system, the.Keywords: artificial intelligence; expert system; animal identification一、专家系统基本知识1.1专家系统实际应用目前专家系统已经成功地渗透到生活的各个领域,并且还产生了巨大的社会效益和经济效益。
例如,像车辆传感、药物、纺织服装等重工业和轻工业领域中都会应用到,特别是在计算机领域里,现在已经是一门非常重要的学科类了。
1.2专家系统的开发专家系统设计与实现的一般过程图1【3】二、设计基本思路2.1知识库用产生式系统监别动物,需要一种演绎机制,利用己知事实的集合做出新的结论,一种方法是替动物园中的每个动物作一个产生式,使用者首先收集所有可利用的事实,然后在产生式的表中进行扫描,寻找一个状态部分能与之匹配的产生式。
一般要经过多少步并生成和利用一些中间事实才能从基本事实推出结论,这样做所包含的产生式可以比较小,容易理解,容易使用和容易产生。
动物识别专家系统中的知识库中的知识通常是用规则表示的。
2.1.2 知识库建立知识库所要遵循的规则【1】规则1:如果:动物有毛发则:该动物是哺乳动物规则2:如果:动物能产奶则:该单位是哺乳动物规则3:如果:该动物有羽毛则:该动物是鸟规则4:如果:动物会飞,且会下蛋则:该动物是鸟规则5:如果:动物吃肉则:该动物是肉食动物规则6:如果:动物有犬齿,且有爪,且眼盯前方则:该动物是食肉动物规则7:如果:动物是哺乳动物,且有蹄则:该动物是有蹄动物规则8:如果:动物是哺乳动物,且是反刍动物则:该动物是有蹄动物规则9:如果:动物是哺乳动物,且是食肉动物,且是黄褐色的,且有暗斑点则:该动物是豹规则10:如果:如果:动物是黄褐色的,且是哺乳动物,且是食肉,且有黑条纹则:该动物是虎规则11:如果:动物有暗斑点,且有长腿,且有长脖子,且是有蹄类则:该动物是长颈鹿规则12:如果:动物有黑条纹,且是有蹄类动物则:该动物是斑马规则13:如果:动物有长腿,且有长脖子,且是黑色的,且是鸟,且不会飞则:该动物是鸵鸟规则14:如果:动物是鸟,且不会飞,且会游泳,且是黑色的则:该动物是企鹅规则15:如果:动物是鸟,且善飞则:该动物是信天翁动物分类专家系统由15条规则组成可以识别七种动物.2.1.3 知识库获取知识获取一般是指从某个活某些致使原中获取专家系统问题求解所需要的专门知识,并以某种形式在计算机中存储、传输与转移。
专家系统的知识获取一般是由知识工程师与专家系统知识的获取机构共同完成的。
知识获取的常用方法有以下几种【3】:1.手工知识获取;2.半自动获取;3.自动知识获取;4.人工神经网络知识获取;选用哪种知识获取方法需要根据当前的系统,以及用户的需求来决定。
但在有些大型系统上还可能会用到不是仅仅一种方法的。
2.2 数据库数据库即为事实库【2】,在计算机中流出一些存储区间,以存放反应系统当前状态的事实,存放用户回答的事实、已知的事实和由推理而得的事实,即由已知事实推导出的假设成立时,也作为事实。
其综合数据库的内容是不断变化的。
char *str[]={"","反刍动物" /* 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 */,"\0"};int rulep[][6]={{22,23,12,3,0,0}, {21,23,12,3,0,0}, {22,19,20,11,0,0},{21,11,0,0,0,0}, {17,19,20,13,-9,0},{17,18,13,-9,0,0},{16,13,0,0,0,0}, {15,0,0,0,0,0}, {14,0,0,0,0,0},{10,0,0,0,0,0}, {8,7,0,0,0,0}, {7,0,0,0,0,0},{4,5,6,0,0,0}, {2,3,0,0,0,0}, {1,3,0,0,0,0}};int rulec[]={ 30, 29, 28,27, 26, 25,24, 3, 3,13, 13, 12,12, 11, 11};三、推理机构3.1推理机介绍3.1.1 推理机作用原理推理机是一组函数【4】,本例既有正向推理机又有反向推理机,都是用精确推理。