人工智能实验指导书.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人工智能课程实验教学大纲
课程编号:课程名称:智能系统
课程总学时:32 课程总学分:2.5
实验总学时:8
适用专业:计算机专业本科第5学期
课程类型:√必修□选修
先修课程:离散数学、数据结构
一、实验教学的目的、任务与要求
共分2个实验,8学时内完成。每次2学时,共4次上机。每个实验相当于一个大作业,锻炼学生运用知识解决实际问题的能力,从而对所学知识有更深刻的理解。要求提交源代码,运行结果和相关文档(包括核心算法)。由实验老师逐一检查考核,占考试成绩的20%。二、实验项目内容及学时分配:
序
号
实验项目学时实验内容实验类型备注
1 图搜索策略实验 4 用八数码难题演示各种搜索策略验证型
2 回溯策略与博弈树搜
索
4 八皇后问题或一字棋游戏的实现基础型可选
3 Chp5产生式系统的推
理
4
用动物识别系统实现基于规则的
系统构造
设计型可选
4 用遗传算法实现TSP
问题求解
4
10节点以内TSP问题的遗传算法
实现
设计型
5 神经网络实验 4 用神经网络实现一个简单分类器设计型可选
三、主要教材(讲义、实验指导书):
廉师友编人工智能技术导论(第三版),西安电子科技大学出版社
参考书:
1.《人工智能及其应用》、蔡自兴,徐光佑编著、清华大学出版社、2003
2.人工智能原理与方法、王永庆编、西安交通大学出版社、1997
3. 人工智能原理与应用、何华灿主编、西北工业大学出版社,1988
4. 人工智能(上下册)、陆汝钤、科学出版社、1996
5. Artificial Intelligence: A New Synthesis. Morgan Kaufman、N. J. Nilsson.、机械工业出社、1998
6.人工智能:复杂问题求解的结构和策略、(美)George F. Luger著, 史忠植等译、机械工业出版社、2003
四、考核方式:闭卷考试(70%)+平时作业和上课签到(10%)+上机作业(20%)
五、使用主要仪器设备说明:
在Windows2000/XP环境下,语言可以采用C/C++/JA V A/Matlab等。实验室提供相关软件可由学生根据需要安装。
制订人:艾丽蓉课程负责人:
实验中心审核人:学院审核人:
大纲制订时间: 2015年6月9日
填表说明:实验类型:基础型、验证型、综合型、设计型、创新研究型。
实验一图搜索策略
1.实验目的(说明本次实验应对那些知识达到何种认知程度,如了解/掌握)
(1) 加深对各种图搜索策略概念的理解;
(2) 进一步了解启发式搜索、α-β剪枝等概念;
(3) 比较并分析各种图搜索策略的异同。
2. 实验预习内容
(1) 了解重排九宫问题、一字棋游戏、八皇后问题;
(2) 各种图搜索算法及剪枝技术等。
3. 实验内容和步骤
结合第二章内容,以一字棋游戏、八皇后问题、或重排九宫/八数码问题为例,分组(1人或2人一组)编程演示其搜索过程。
1. 搜索策略根据自己能力选择:
(1)任意一种搜索策略;
(2)采用全局择优搜索,其中的启发式函数自己设计。
要求程序具有一定的普适性,重点是要把算法描述清楚。
2. 对博弈感兴趣的同学可选做一字棋游戏的实现,并演示剪枝后的效率变化。
4.实验总结及思考
总结出各种搜索策略的特点和区别。
5. 实验一检查的指标:
1.界面显示要求:
(1)包含初始状态和目标状态的显示;其中初始状态的显示包含两类选择:一个是标准的范例,一个是随机的状态;
(2)在界面上说明你所采用的搜索策略;(简单说明即可)
(3)每次搜索过程的步骤,不要求树型结构,只要求(动画)表现,每走一步的状态变化;
(4)每走一次搜索步,需要有步数的累积显示;
(5)最后有完成一次搜索完毕的结果显示。
2.代码要求:
搜索过程或算法的控制策略的核心代码
3.要求学生讲解自己设计代码的构架,如何实现的。(包含使用了哪些类,类中的方法主要来实现什么)
4.回答辅导老师提出一些问题。
5.提交实验报告(代码和实验完成后的设计框架说明)。
附:实验报告模板:
1.实验目的:
2.实验要求:
3.实验算法:
1)有解和无解如何判定?
2)启发式函数如何设定?
3)open表和close表如何实现?
4)关键的函数有哪些?
4. 实验总结及体会
补充:八数码问题的有解和无解判定
将九宫格中数字顺序排列后,形成一个包含0在内的9位数字序列,该字串可用来表示九宫格的当前状态,其中0表示空格所在位置。当空格上下、左右移动时,易知序列的逆序值奇偶性不会发生改变。由此可知,九宫问题的362,880种状态被分成逆序值为奇数和逆序值为偶数两部分,每一部分内任意两种状态相互可达。
在八数码问题中,有些状态之间是不可达的。如果我们能在一开始先判断初始状态和目标状态之间是否可达,这样可以避免不可达状态之间的盲目求解。
两个状态之间是否可达可以通过两个状态逆序值的奇偶性进行判断。我们把每个状态看作一个数列,然后计算数列的逆序值,若两个数列逆序值的奇偶性相同,则对应的两个状态是可达的,否则不可达。(注:求逆序值不把空格算在内)。
如图2所示状态:
2 3 1
5 8 4
6 7
图2 棋局示例
它对应的数列是:23158467(不包括空格)。
对于一个数列,数列中每个数的逆序值是指位于这个数前面的比这个数大的数的个数。数列的逆序值就是数列中每个数的逆序值之和。
逆序值求法:例:23158467的逆序值为6,求解过程为:
0+0+2(1<2,1<3)+0+0+2(4<5,4<8)+1(6<8)+1(7<8)=6
而状态12345678 的逆序值自然就是0。
实验二产生式系统的推理
1. 实验目的(说明本次实验应对那些知识达到何种认知程度,如了解、掌握等)
理解并掌握基于规则系统的表示与推理。
2. 实验预习内容
(1) 了解动物识别系统问题;
(2) 产生式系统的组成部分,正向推理,逆向推理和产生式系统的类型。
3. 实验内容和步骤
结合第五章内容,以动物识别系统(或货物袋装系统)为例,实现基于规则的系统构造实验4学时。
要求能根据输入的规则,正确地识别所能识别的动物。能完成正向和/或反向推理我们假设计算机的视觉系统可以识别毛发、羽毛、奶、犬齿、爪、蹄、颜色等等基本的事实。一个动物识别专家系统的产生式如下:
R1:若某动物有奶,则它是哺乳动物。
R2:若动物有毛发,则它是哺乳动物。
R3:若动物有羽毛且卵生,则它是鸟类。