八数码问题求解实验报告

八数码问题求解实验报告

ID:42592944

大小:66.16 KB

页数:11页

时间:2019-09-18

八数码问题求解实验报告_第1页
八数码问题求解实验报告_第2页
八数码问题求解实验报告_第3页
八数码问题求解实验报告_第4页
八数码问题求解实验报告_第5页
资源描述:

《八数码问题求解实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、八数码问题求解(一)实验软件TC2.0或VC6.0编程语言或其它编程语言(二)实验目的1.熟悉人工智能系统中的问题求解过程;2.熟悉状态空间的盲目搜索和启发式搜索算法的应用;3.熟悉对八数码问题的建模,求解及编程语言的应用。(三)实验内容八数码问题:在3×3的方格棋盘上,摆放着1到8这八个数码,有一个方格是空的,要求对空格执行空格左移,空格右移,空格上移,空格下移这四个操作使得棋盘从初始状态到目标状态。输入初始状态和目标状态,输出从初始状态到目标状态的路径。(四)实验代码#include"stdafx

2、.h"#include#include#includeusingnamespacestd;constintROW=3;constintCOL=3;constintMAXDISTANCE=10000;constintMAXNUM=10000;typedefstruct_Node{intdigit[ROW][COL];intdist;//distancebetweenonestateandthedestinationintdep;//thedepthofn

3、ode//Sothecommentfunction=dist+dep.intindex;//pointtothelocationofparent}Node;Nodesrc,dest;vectornode_v;//storethenodesboolisEmptyOfOPEN(){for(inti=0;i

4、igit[][COL]){for(inti=0;i

5、oidPrintSteps(intindex,vector&rstep_v){rstep_v.push_back(node_v[index]);index=node_v[index].index;while(index!=0){rstep_v.push_back(node_v[index]);index=node_v[index].index;}for(inti=rstep_v.size()-1;i>=0;i--)cout<<"Step"<

6、rstep_v[i]<

7、node_v.size();i++){if(node_v[i].dist==MAXNUM)continue;elseif((node_v[i].dist+node_v[i].dep)

8、rntrue;}//扩展intDistance(Node&node,intdigit[][COL]){intdistance=0;boolflag=false;for(inti=0;i

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

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

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