




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告 姓名: 叶子烽 学号: 2220132380 班级: 软件二班实验名称: 启发式搜索课程名称: 人工智能实验日期: 2015.11.09实验环境:Visual C+实验目的以及内容:1、 实验内容:使用启发式搜索算法求解八数码问题。(1)编制程序实现求解八数码问题A*算法,采用估价函数 其中:d(n)是搜索树中节点n的深度;w(n)为节点n的数据库中错放的棋子个数;p(n)为节点n的数据库中的每个棋子与其目标位置之间的距离的总和。(2) 分析上述(1)中的两种估价函数求解八数码问题的效率差别,给出一个是p(n)的上界的h(n)的定义,并测试使用该估价函数是否使算法失去可采纳性。2、实验目的:熟练的掌握启发式搜索A*算法及其可采纳性。3. 实验原理 :八数码问题是在3行和3列构成的九宫棋盘上放置数码为1到8的8个棋盘,剩下一个空格的移动来不断改变棋盘的布局,求解这类问题的方法是:给定初始布局(即初始状态)和目标布局(即目标状态),定义操作算子的直观方法是为每个棋牌制定一套可能的走步上,下,左,右四种移动,再根据所定义的启发式搜索函数在搜索过程中选择最合适的操作算子,得到最优的路径。代码:#includestdio.h #define num 3 void show(int beginnumnum) for(int i = 0; i num; i+) for(int j = 0; j num; j+) printf(%d , beginij); printf(n); printf(n); void exchange(int beginnumnum, int row_one, int column_one, int row_two, int column_two) int temp; temp = beginrow_twocolumn_two ; beginrow_twocolumn_two = beginrow_onecolumn_one; beginrow_onecolumn_one = temp; int judge(int beginnumnum, int endnumnum) int count=0; for(int i = 0; i num; i+) for(int j = 0; j = 20) return 0; int node; int temp; for(int q=0; qjishu; q+) node = 1; for(int w=0; wnum & node; w+) for(int r=0; rnum & node; r+) if(ji_shuqwr != beginwr) node = 0; if(node = 1) return 0; for(int i = 0; i num; i+) for(int j = 0; j 0 & biaoji != 0) exchange(begin, row - 1, column, row , column); temp = judge(begin, end); if(temp = right) temp_zhi = yidong(begin, end, temp, jishu+1, ji_shu, 2, row-1, column); if( temp_zhi = 1) return 1; exchange(begin, row - 1, column, row , column); if(column 0 & biaoji != 1) exchange(begin, row, column - 1, row , column); temp = judge(begin, end); if(temp = right) temp_zhi = yidong(begin, end, temp, jishu+1, ji_shu ,3, row, column - 1); if(temp_zhi = 1) return 1; exchange(begin, row, column - 1, row , column); if(row num-1 & biaoji != 2) exchange(begin, row + 1, column, row , column); temp = judge(begin, end); if(temp = right) temp_zhi =yidong(begin, end, temp, jishu+1, ji_shu, 0, row+1, column); if(temp_zhi = 1) return 1; exchange(begin, row + 1, column, row , column); if(column num-1 & biaoji != 3) exchange(begin, row, column + 1, row , column); temp = judge(begin, end); if(temp = right) temp_zhi = yidong(begin, end, temp, jishu+1, ji_shu, 1, row, column+1); if(temp_zhi = 1) return 1; exchange(begin, row, column + 1, row , column); return 0; void shuru(int beginnum,int blank) int temp, node, zero = 0; for (int i = 0; i num; i+) for(int j = 0; j num; j+) node = 1; printf(请输入第%d行,第%d列的元素的值:, i+1, j+1); scanf(%d, &temp); for (int q = 0; q = i & node = 1; q+) for (int w = 0; w j; w+) if(temp = beginqw) printf(输入重复,请重新输入n); node = 0; j-; break; if(temp num*num-1) printf(请输入从%d到%d的数n, zero, num*num-1); node = 0; j-; if(node = 1) if(temp = 0) blank0 = i; blank1 = j; beginij = temp; int main() int jishu = 0, ji_shu5033; int row; int column; int beginnumnum, blank2,count=1; int endnumnum = 1, 2, 3, 8, 0, 4, 7, 6, 5; printf (-8数码游戏开始!-n); shuru(begin, blank); row = blank0; column = blank1; if(yidong (begin, end,judge(begin,end),jishu,ji_shu,4,row,column) = 0) printf(n此8数码的问题可能无解!); else show(begin); getchar();getchar(); return 0; 实验截图:实验总结: 1、 A*搜索算法:取g(n)=d(n),h(n)=w(n),其中w(n)表示以目标为基准,结点n的状态中每一个数码牌与其目标位置之间的距离(不考虑夹在其间的数码牌
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年银行春季考试知识重点试题及答案
- 2025企业劳动合同范例:合同双方的权利与义务协议书
- 2024年徐州市睢宁县公立医院招聘备案制医务人员笔试真题
- 岳阳市农商行招聘考试真题2024
- 2024年攀枝花市米易县医共体招聘笔试真题
- 2024年金沙县单位事业单位在编人员考调高中教师笔试真题
- 阜阳市人民医院招聘考试真题2024
- 2025二手车买卖合同的注意事项有哪些
- 防滑袜与护膝行业跨境出海战略研究报告
- 镜面广告机在线平台企业制定与实施新质生产力战略研究报告
- 2025年中铁十二局集团招聘笔试参考题库含答案解析
- 2024年湖南长沙中考生物真题及答案
- 半导体车间安全培训课件
- 电力行业锅炉压力容器安全监督规程
- 《自身抗体的检测》课件
- 时间轴时间线课件图表
- 司机职业素养及礼仪培训
- DB43T 874-2016 履带自走式旋耕机
- 人美版小学四年级美术下册全册教案
- 2024-2030年中国相变材料行业发展趋势与前景分析研究报告
- 《现代设计史》考试复习题库(含答案)
评论
0/150
提交评论