ImageVerifierCode 换一换
格式:DOCX , 页数:96 ,大小:856.84KB ,
资源ID:2081505      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2081505.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(人工智能实验报告大全.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

人工智能实验报告大全.docx

1、人工智能实验报告大全 人工智能课实验报告(8次)学 院: 自动化学院 班 级: 智能1501 姓 名: 少鹏(34) 学 号: 06153034 课实验1:猴子摘香蕉问题的VC编程实现1课实验2:编程实现简单动物识别系统的知识表示5课实验3:盲目搜索求解8数码问题18课实验4:回溯算法求解四皇后问题33课实验5:编程实现一字棋游戏37课实验6:字句集消解实验46课实验7:简单动物识别系统的产生式推理66课实验8:编程实现D-S证据推理算法78人工智能课实验报告实验1:猴子摘香蕉问题的VC编程实现学 院: 自动化学院 班 级: 智能1501 姓 名: 少鹏 (33) 学 号: 06153034

2、日 期: 2017-3-8 10:15-12:00 实验1:猴子摘香蕉问题的VC编程实现1、实验目的(1)熟悉谓词逻辑表示法;(2)掌握人工智能谓词逻辑中的经典例子猴子摘香蕉问题的编程实现。二、编程环境VC语言3、问题描述房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。图1 猴子摘香蕉问题 4、源代码#includeunsigned int i;void Monkey_Go_Box

3、(unsigned char x, unsigned char y) printf(Step %d:monkey从%c走到%cn, +i, x, y);/x表示猴子的位置,y为箱子的位置void Monkey_Move_Box(char x, char y) printf(Step %d:monkey把箱子从%c运到%cn, +i, x, y);/x表示箱子的位置,y为香蕉的位置void Monkey_On_Box() printf(Step %d:monkey爬上箱子n, +i);void Monkey_Get_Banana() printf(Step %d:monkey摘到香蕉n, +i)

4、;void main() unsigned char Monkey, Box, Banana; printf(*智能1501班*n); printf(*06153034*n); printf(*少鹏*n); printf(请用a b c来表示猴子箱子香蕉的位置n); printf(Monkeytboxtbananan); scanf(%c, &Monkey); getchar(); printf(t);scanf(%c, &Box); getchar(); printf(tt); scanf(%c, &Banana); getchar(); printf(n操作步骤如下n); if (Monk

5、ey != Box) Monkey_Go_Box(Monkey, Box); if (Box != Banana) Monkey_Move_Box(Box, Banana); Monkey_On_Box(); Monkey_Get_Banana(); printf(n); getchar();5、实验结果相关截图六、心得体会 通过本次实验,我初步了学会了使用VC的新建工程,并且进行简单的程序编写。此外我还学会如何使用一些谓词来解决生活中的一些简单问题,并且用VC编程给出具体的操作步骤,感觉对VC编程有了新的认识。在实验中我也遇到过许多问题,比如在我写完代码进行编译时总是会出现一个错误“fata

6、l error C1010: 在查找预编译头时遇到意外的文件结尾,是否忘记了向源中添加“#include stdafx.h”关于这个错误我我问了几个同学得不出答案后,我决定通过上网查找,最终找到了解决方法,需要在该项目的每一个cpp结尾的文件属性中设置不使用预编译头即可。在这个过程中也锻炼了自己解决问题的能力。人工智能课实验报告实验2:编程实现简单动物识别系统的知识表示学 院: 自动化学院 班 级: 智能1501 姓 名: 少鹏(33) 学 号: 06153034 日 期: 2017-3-13 10:15-12:00 实验2:编程实现简单动物识别系统的知识表示一、实验目的1、理解和掌握产生式知

7、识表示方法;2、能够通过VC编程语言实现产生式系统的规则库。二、实验容1、以动物识别系统的产生式规则为例;2、用选定的编程语言建造规则库和综合数据库,并能对它们进行增加、删除和修改操作。3、实验步骤1、确定需要识别的动物及其属性本次实验的简单动物识别系统总共能识别7种动物,即:老虎、金钱豹、斑马、长颈鹿、企鹅、鸵鸟和信天翁。2、建立识别七种动物识别系统的规则3、选定编程语言并确定综合数据库和规则库结构(1)选用C语言作为编程语言 (2)综合数据库的建立(3)规则库的建立四、程序源代码#include #include using namespace std;struct RULES int c

8、ount; char pre255; char back255; int mark;void check();RULES r100 = 1,有毛发,哺乳动物,0 , /所有规则静态数据库 1,有奶,哺乳动物,0 , 1,有羽毛,鸟,0 , 2,会飞&下蛋&,鸟,0 , 1,吃肉,食肉动物,0 , 3,有锋利的牙齿&有爪&眼睛盯着前方&,食肉动物,0 , 2,哺乳动物&有蹄&,有蹄类哺乳动物,0 , 2,哺乳动物&反刍&,有偶蹄类哺乳动物,0 , 4,哺乳动物&食肉动物&黄褐色&有暗斑&,金钱豹,0 , 4,哺乳动物&食肉动物&黄褐色&黑色条纹&,老虎,0 , 4,有蹄类哺乳动物&有长脖子&有长

9、腿&有暗斑&,长颈鹿,0 , 2,有蹄类哺乳动物&黑条纹&,斑马,0 , 5,鸟&不会飞&有长脖子&有长腿&黑白色&,鸵鸟,0 , 4,鸟&不会飞&会游泳&黑白色&,企鹅,0 , 2,鸟&会飞&,信天翁,0 , 1,反刍,哺乳动物,0 ;int number;int m;int cat = 15;int a;int length; /输入的事实长度string f255; /输入的事实数组void input() while (1) cat+; cout number rcat.count; cout 输入事实,两种以上的事实请在每个事实后加上&符号 rcat.pre; cout 输入结果 r

10、cat.back; rcat.mark = 0; while (1) cout 输入“1”继续添加规则,输入“2”查看规则库 p; if (p = 1) input(); else if (p = 2) check(); else cout 输入错误,重新输入 endl; void delate() cout 输入要删除的条数 bar; for (int t = 0; t = cat; t+) rbar - 1 = rbar; bar+; cat-; check();void check() cout endl 规则库如下 endl; for (int i = 0; i = cat; i+)

11、cout i + 1 . 由 ri.pre 可得 ri.back endl; cout endl; while (1) cout 输入“1”继续添加规则,输入“3”删除选定的规则 m; if (m = 1) input(); else if (m = 3) delate(); int find_rule(int s) /查找规则库中是否还有可使用的规则 for (int i = 0; i = 15; i+) s = s*ri.mark; /coutfind_rule结果sendl; return s;int compare1(RULES r) /当前提条件为1时 int j = 0, i =

12、1; string str, str2; str = r.pre; while (i = length) if (fi = str) str2 = r.back; flength + 1 = str2; /加入事实库 length+; /事实库的长度加1 r.mark = 1; /标记规则已使用过 break; else i+; return r.mark;int compare2(RULES r) /前提条件不为1 string b10; string str, str2; int i, j = 1, num = 0; int a = 0; str = r.pre; for (i = 0; i != 10; +i) /转换数组 bi = ;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1