《人工智能及其应用》实验指导书《人工智能及其应用》实验指导书浙江工业大学计算机科学与技术学院—人工智能课程组2011年9月《人工智能及其应用》实验指导书第II页前言本实验是为了配合《人工智能及其应用》课程的理论学习而专门设置的。本实验的目的是巩固和加强人工智能的基本原理和方法,并为今后进一步学习更高级课程和信息智能化技术的研究与系统开发奠定良好的基础。全书共分为八个实验:1.产生式系统实验;2.模糊推理系统实验;3.A*算法求解8数码问题实验;4.A*算法求解迷宫问题实验;5.遗传算法求解函数最值问题实验;6.遗传算法求解TSP问题实验;7.基于神经网络的模式识别实验;8.基于神经网络的优化计算实验。每个实验包括有:实验目的、实验内容、实验条件、实验要求、实验步骤和实验报告等六个项目。本实验指导书包括两个部分。第一个部分是介绍实验的教学大纲;第二部分是介绍八个实验的内容。由于编者水平有限,本实验指导书的错误和不足在所难免,欢迎批评指正。人工智能课程组2011年9月《人工智能及其应用》实验指导书第III页目录实验教学大纲................................................................................................................1实验一产生式系统实验............................................................................................3实验二模糊推理系统实验........................................................................................5实验三A*算法实验I................................................................................................9实验四A*算法实验II.............................................................................................12实验五遗传算法实验I...........................................................................................14实验六遗传算法实验II..........................................................................................18实验七基于神经网络的模式识别实验..................................................................20实验八基于神经网络的优化计算实验...................................................................24《人工智能及其应用》实验指导书1实验教学大纲一、学时:16学时,一般安排在第9周至第16周。二、主要仪器设备及运行环境:PC机、VisualC++6.0、Matlab7.0。三、实验项目及教学安排序号实验名称实验平台实验内容学时类型教学要求1产生式系统应用VC++设计知识库,实现系统识别或分类等。2设计课内2模糊推理系统应用Matlab1)设计洗衣机的模糊控制器;2)设计两车追赶的模糊控制器。2验证课内3A*算法应用IVC++设计与实现求解N数码问题的A*算法。2综合课内4A*算法应用IIVC++设计与实现求解迷宫问题的A*算法。2综合课内5遗传算法应用IMatlab1)求某一函数的最小值;2)求某一函数的最大值。2验证课内6遗传算法应用IIVC++设计与实现求解不同城市规模的TSP问题的遗传算法。2综合课内7基于神经网络的模式识别Matlab1)基于BP神经网络的数字识别设计;2)基于离散Hopfiel神经网络的联想记忆设计。2验证课内8基于神经网络的优化计算VC++设计与实现求解TSP问题的连续Hopfield神经网络。2综合课内四、实验成绩评定实验课成绩单独按五分制评定。凡实验成绩不及格者,该门课程就不及格。学生的实验成绩应以平时考查为主,一般应占课程总成绩的50%,其平时成绩又要以实验实际操作的优劣作为主要考核依据。对于实验课成绩,无论采取何种方式进行考核,都必须按实验课的目的要求,以实际实验工作能力的强弱作为评定成绩的主要依据。评定各级成绩时,可参考以下标准:《人工智能及其应用》实验指导书2(一)优秀能正确理解实验的目的要求,能独立、顺利而正确地完成各项实验操作,会分析和处理实验中遇到的问题,能掌握所学的各项实验技能,能较好地完成实验报告及其它各项实验作业,有一定创造精神和能力。有良好的实验室工作作风和习惯。(二)良好能理解实验的目的和要求,能认真而正确地完成各项实验操作,能分析和处理实验中遇到的一些问题。能掌握所学实验技能的绝大部分,对难点较大的操作完成有困难。能一般完成实验报告和其它实验作业。有较好的实验习惯和工作作风。(三)中等能粗浅理解实验目的要求,能认真努力进行各项实验操作,但技巧较差。能分析和处理实验中一些较容易的问题,掌握实验技能的大部分。有30%掌握得不好。能一般完成各项实验作业和报告。处理问题缺乏条理。工作作风较好。能认真遵守各项规章制度。学习努力。(四)及格只能机械地了解实验内容,能一般按图、或按实验步骤“照方抓药”完成实验操作,能完成60%所学的实验技能,有些虽作但不准确。遇到问题常常缺乏解决的办法,在别人启发下能作些简单处理,但效果不理想。能一般完成实验报告,能认真遵守实验室各项规章制度,工作中有小的习惯性毛病(如工作无计划,处理问题缺乏条理)。(五)不及格盲目地“照方抓药”,只掌握50%的所学实验技能。有些实验虽能作,但一般效果不好,操作不正确。工作忙乱无条理。一般能遵守实验室规章制度,但常有小的错误。实验报告较多的时候有结果,遇到问题时说不明原因,在教师指导下也较难完成各项实验作业。或有些小聪明但不努力,不求上进。《人工智能及其应用》实验指导书3实验一产生式系统实验一、实验目的:熟悉一阶谓词逻辑和产生式表示法,掌握产生式系统的运行机制,以及基于规则推理的基本方法。二、实验内容运用所学知识,设计并编程实现一个小型人工智能系统(如分类、诊断、预测等类型)。三、实验条件:产生式系统实验程序,如下图1所示。图1产生式系统实验程序界面四、实验要求1.具体应用领域自选,具体系统名称自定;但所做系统绝对不能雷同。2.用一阶谓词逻辑和产生式规则作为知识表示,利用如图1所示的产生式系统实验程序,建立知识库,分别运行正、反向推理。《人工智能及其应用》实验指导书43.系统完成后,提交实验报告。五、实验步骤:1.基于如图1所示的产生式系统实验程序,设计并实现一个小型人工智能系统:1)系统设置,包括设置系统名称和系统谓词,给出谓词名及其含义。2)编辑知识库,通过输入规则或修改规则等,完成整个规则库的建立。3)建立事实库(综合数据库),输入多条事实或结论。4)运行推理,包括正向推理和反向推理,给出相应的推理过程、事实区和规则区。2.撰写实验报告。六、实验报告下面是实验报告的基本内容和书写格式。递交的报告文件名:班级_学号_姓名_实验名称———————————————————————实验名称班级:学号:姓名:一、实验目的二、实验内容三、实验步骤四、实验结果1.系统名称及谓词定义2.系统知识库3.系统正、反向推理过程、事实区和规则区。五、实验总结———————————————————————《人工智能及其应用》实验指导书5实验二模糊推理系统实验一、实验目的理解模糊逻辑推理的原理及特点,熟练应用模糊推理,了解可能性理论。二、实验原理模糊推理所处理的事物自身是模糊的,概念本身没有明确的外延,一个对象是否符合这个概念难以明确地确定,模糊推理是对这种不确定性,即模糊性的表示与处理。模糊逻辑推理是基于模糊性知识(模糊规则)的一种近似推理,一般采用Zadeh提出的语言变量、语言值、模糊集和模糊关系合成的方法进行推理。三、实验条件Matlab7.0的FuzzyLogicTool。四、实验内容及要求1.设计洗衣机洗涤时间的模糊控制。已知人的操作经验为:“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”。要求:(1)假设污泥、油脂、洗涤时间的论域分别为[0,100]、[0,100]和[0,120],设计相应的模糊推理系统,给出输入、输出语言变量的隶属函数图,模糊控制规则表和推论结果立体图。(2)假定当前传感器测得的信息为00(60,70xy污泥)(油脂),采用面积重心法反模糊化,给出模糊推理结果,并观察模糊推理的动态仿真环境,给出其动态仿真环境图。提示:模糊控制规则如下表1所示,其中SD(污泥少)、MD(污泥中)、LD(污泥多)、NG(油脂少)、MG(油脂中)、LG(油脂多)、VS(洗涤时间很短)、S(洗涤时间短)、M(洗涤时间中等)、L(洗涤时间长)、VL(洗涤时间很长)。图1洗衣机的模糊控制规则表xyzSDNGVSSDMGM《人工智能及其应用》实验指导书6SDLGLMDNGSMDMGMMDLGLLDNGMLDMGLLDLGVL2.假设两汽车均为理想状态,即2Y()4U()20.724ssss,Y为速度,U为油门控制输入。(1)设计模糊推理系统控制2号汽车由静止启动,追赶200m外时速90km的1号汽车并与其保持30m的距离。(2)在25时刻1号汽车速度改为时速110km时,仍与其保持30m距离。(3)在35时刻1号汽车速度改为时速70km时,仍与其保持30m距离。要求:(1)如下图1所示,设计两输入一输出的模糊推理系统作为2号汽车的模糊控制器,其中输入为误差e和误差的变化e,输出为1号汽车的油门控制u,采用面积等分法反模糊化,给出输入、输出语言变量的隶属函数图,模糊控制规则表,推论结果立体图和模糊推理的动态仿真环境图。1号车2号车模糊推理系统30m相对距离eu+—dtde图1两车追赶的模糊控制系统框图(2)用SIMULINK仿真两车追赶的模糊控制系统,给出目标车(1号汽车)的速度曲线图,以及追赶车(2号汽车)的速度曲线图和与目标车(1号汽车)相对距离变化图。《人工智能及其应用》实验指导书7提示:模糊控制规则如下表2所示,其中eetgeer..22,,r、和油门控制u的论域分别为[0,1]、[-3,3]和[-1,1],r的隶属函数如图2所示。表2模糊控制规则表r\NBZEPBPBZENMNBPMZEPMPBZEZEPMPBNMZENMNBNBZENMNB图2r的隶属函数图五、实验报告要求:1.按照实验要求,给出相应结果。2.分析隶属度、模糊关系和模糊规则的相互关系。《人工智能及其应用》实验指导书8下面是实验报告的基本内容和书写格式。实验名称班级:学号:姓名:一、实验目的二、实验内容三、实验结果按照实验要求,给出相应结果。四、实验总结1.分析隶属度、模糊关系和模糊规则的相互关系。2.总结实验心得体会——————————————————————————————————《人工智能及其应用》实验指导书9实验三A*算法实验I一、实验目的熟悉和掌握启发式搜索的定义、估价函数和算法过程,并利用A*算法求解N数码难题,理解求解流程和搜索顺序。二、实验原理A*算法是一种启发式图搜索算法,其特点在于对估价函数的定义上。对于一般的启发式图搜索,总是选择估价函数f值最小的节点作为扩展节点。因此,f是根据需要找到一条最小代价路径的观点来估算节点的,所以,可考虑每个节点n