资源描述:
《人工智能实验报告大全.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.人工智能课内实验报告(8次)学院:自动化学院班级:智能1501姓名:刘少鹏(34)学号:06153034..目录课内实验1:猴子摘香蕉问题的VC编程实现……………………1课内实验2:编程实现简单动物识别系统的知识表示………5课内实验3:盲目搜索求解8数码问题………………………18课内实验4:回溯算法求解四皇后问题………………………33课内实验5:编程实现一字棋游戏……………………………37课内实验6:字句集消解实验…………………………………46课内实验7:简单动物识别系统的产生式推理……………
2、…66课内实验8:编程实现D-S证据推理算法……………………78....人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现学院:自动化学院班级:智能1501姓名:刘少鹏(33)学号:06153034日期:2017-3-810:15-12:00..实验1:猴子摘香蕉问题的VC编程实现一、实验目的(1)熟悉谓词逻辑表示法;(2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。二、编程环境VC语言三、问题描述房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴
3、子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。图1猴子摘香蕉问题四、源代码#includeunsignedinti;voidMonkey_Go_Box(unsignedcharx,unsignedchary){..printf("Step%d:monkey从%c走到%c",++i,x,y);//x表示猴子的位置,y为箱子的位置}vo
4、idMonkey_Move_Box(charx,chary){printf("Step%d:monkey把箱子从%c运到%c",++i,x,y);//x表示箱子的位置,y为香蕉的位置}voidMonkey_On_Box(){printf("Step%d:monkey爬上箱子",++i);}voidMonkey_Get_Banana(){printf("Step%d:monkey摘到香蕉",++i);}voidmain(){unsignedcharMonkey,Box,Banana;p
5、rintf("********智能1501班**********");printf("********06153034************");printf("********刘少鹏**************");printf("请用abc来表示猴子箱子香蕉的位置");printf("Monkeytboxtbanana");scanf("%c",&Monkey);getchar();printf("t");scanf("%c",&Box);getchar();pr
6、intf("tt");scanf("%c",&Banana);getchar();printf("操作步骤如下");if(Monkey!=Box){Monkey_Go_Box(Monkey,Box);}if(Box!=Banana){Monkey_Move_Box(Box,Banana);}Monkey_On_Box();Monkey_Get_Banana();printf("");..getchar();}三、实验结果相关截图六、心得体会通过本次实验,我初步了学会了使用VC的新
7、建工程,并且进行简单的程序编写。此外我还学会如何使用一些谓词来解决生活中的一些简单问题,并且用VC编程给出具体的操作步骤,感觉对VC编程有了新的认识。在实验中我也遇到过许多问题,比如在我写完代码进行编译时总是会出现一个错误“ fatalerrorC1010:在查找预编译头时遇到意外的文件结尾,是否忘记了向源中添加“#include‘stdafx.h’”关于这个错误我我问了几个同学得不出答案后,我决定通过上网查找,最终找到了解决方法,需要在该项目的每一个cpp结尾的文件属性中设置不使用预编译头即可
8、。在这个过程中也锻炼了自己解决问题的能力。..人工智能课内实验报告实验2:编程实现简单动物识别系统的知识表示学院:自动化学院班级:智能1501姓名:刘少鹏(33)学号:06153034日期:2017-3-1310:15-12:00..实验2:编程实现简单动物识别系统的知识表示一、实验目的1、理解和掌握产生式知识表示方法;2、能够通过VC编程语言实现产生式系统的规则库。二、实验内容1、以动物识别系统的产生式规则为例;2、用选定的编程语言建造规则库和综合数据库,并能对它们进行增加、删除和修改操作。三