人工智能-启发式搜索.doc

人工智能-启发式搜索.doc

ID:59229533

大小:122.50 KB

页数:9页

时间:2020-09-09

人工智能-启发式搜索.doc_第1页
人工智能-启发式搜索.doc_第2页
人工智能-启发式搜索.doc_第3页
人工智能-启发式搜索.doc_第4页
人工智能-启发式搜索.doc_第5页
资源描述:

《人工智能-启发式搜索.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验报告姓名:叶子烽学号:班级:软件二班实验名称:启发式搜索课程名称:人工智能实验日期:2015.11.09实验环境:VisualC++实验目的以及内容:1、实验内容:使用启发式搜索算法求解八数码问题。(1)编制程序实现求解八数码问题A*算法,采用估价函数其中:d(n)是搜索树中节点n的深度;w(n)为节点n的数据库中错放的棋子个数;p(n)为节点n的数据库中的每个棋子与其目标位置之间的距离的总和。(2)分析上述(1)中的两种估价函数求解八数码问题的效率差别,给出一个是p(n)的上界的h(n)的定义,并测试使用该估价函数是否使算法失去可采纳性。2、实验目的:熟练的掌握启发

2、式搜索A*算法及其可采纳性。3.实验原理:八数码问题是在3行和3列构成的九宫棋盘上放置数码为1到8的8个棋盘,剩下一个空格的移动来不断改变棋盘的布局,求解这类问题的方法是:给定初始布局(即初始状态)和目标布局(即目标状态),定义操作算子的直观方法是为每个棋牌制定一套可能的走步》上,下,左,右四种移动,再根据所定义的启发式搜索函数在搜索过程中选择最合适的操作算子,得到最优的路径。代码:#include"stdio.h"#definenum3voidshow(intbegin[num][num]){for(inti=0;i

3、j++)printf("%d",begin[i][j]);printf("");}printf("");}voidexchange(intbegin[num][num],introw_one,intcolumn_one,introw_two,intcolumn_two){inttemp;temp=begin[row_two][column_two];begin[row_two][column_two]=begin[row_one][column_one];begin[row_one][column_one]=temp;}intjudge(intbegin[num]

4、[num],intend[num][num]){intcount=0;for(inti=0;i=20)

5、return0;intnode;inttemp;for(intq=0;q0&&biaoji!

6、=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)return1;exchange(begin,row-1,column,row,column);}}if(column>0&&biaoji!=1

7、){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)return1;exchange(begin,row,column-1,row,column);}}i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。