欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    人工智能实验报告八数码难题(共6页).doc

    • 资源ID:13290587       资源大小:86KB        全文页数:6页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    人工智能实验报告八数码难题(共6页).doc

    精选优质文档-倾情为你奉上昆明理工大学信息工程与自动化学院学生实验报告( 201 201 学年 第 一 学期 ) 课程名称: 开课实验室: 年 月 日年级、专业、班 学号 姓名 成绩实验项目名称八数码难题指导教师 教师评语该同学是否了解实验原理:A.了解B.基本了解C.不了解该同学的实验能力:A.强 B.中等 C.差 该同学的实验是否达到要求:A.达到B.基本达到C.未达到实验报告是否规范:A.规范B.基本规范C.不规范实验过程是否详细记录:A.详细B.一般 C.没有 教师签名: 年 月 日一、实验内容八数码难题,问题描述:在3×3方格棋盘上,分别放置了标有数字1,2,3,4,5,6,7,8的八张牌,初始状态S0,目标状态S1如图所示,可以使用的操作有:空格上移,空格左移,空格右移,空格下移。只允许位于空格左,上,右,下方的牌移入空格。用广度优先搜索策略寻找从初始状态到目标状态的解路径。 二、实验原理算法思想:这是一种盲目搜索算法。算法主要思想是从初始结点开始依次沿其上下左右四个方向扩展结点,并逐一检查这些后继结点是否为目标结点,若不等于目标结点则把该后继结点插入到数组末尾。然后取数组中未扩展的第一个结点重复以上操作,直到得到目标结点为止或在限定步数以内未得到解。广度优先搜索策略数据结构:void Bfs() queue<Map> Queue; Queue.push(org); HashTable org.myindex = -1; while( NOT Queue.empty() ) Map node = Queue.front(); Queue.pop( ); for(int k =0 ; k < 4; k + ) Map tmp = node; tmp.position = node.position + derectionk; if(tmp.position < 0 | tmp.position > 8 | ( k > 1 && tmp.position / 3 != node.position /3 ) ) continue; tmp.myindex = HashValue( node , k ); if(0 != HashTabletmp.myindex ) continue; tmp.detail node.position = tmp.detail tmp.position ; tmp.detail tmp.position = 0 ; HashTabletmp.myindex = node.myindex; / 状态记录到hashtable中 if( node.myindex = EndIndex ) return ; Queue.push( tmp ); return ; 三、所用仪器、材料1台PC及VISUAL C+6.0软件四、实验方法、步骤源代码见同一文件夹中bashuma.cpp部分程序代码:typedef struct Node int num9; int deepth; int diffnum; int value; struct Node * pre; struct Node * next; struct Node * parent;numNode; int main ( int argc, char *argv ) open=create_numNode(); close=create_numNode(); open->pre=open->next=close->pre=close->next=NULL; init(); /由用户输入初始和目标状态 numNode *p1; p1=create_numNode(); p1->parent=NULL; p1->deepth=0; int i=0; for ( i=0; i<9; i+) p1->numi=origini; open_insert(open,p1); numNode_num=1; p1=open_getfirst(open); while (p1!=NULL) close_append(close,p1); if(expand(p1) return EXIT_SUCCESS; p1=open_getfirst(open); printf("No solution!n"); return EXIT_SUCCESS; void init ( ) while(1) printf("输入初始状态S0(请从左到右依次输入每行数字,0代表空格):n"); char temp10; scanf("%s",&temp); int i=0; for ( i=0;i<9 && tempi-'0'>=0 && tempi-'0'<=8; i+) origini=tempi-'0' printf("请输入目标状态S1:n"); scanf("%s",&temp); int j=0; for ( j=0; j<9 && tempj-'0'>=0 && tempj-'0'<=8; j+) targetj=tempj-'0' system("cls"); if ( i=9&&j=9) break; int operate(int m, int op) int blank; blank=0; while (mblank!=0 && blank<9 ) +blank; if (blank=9) return 1; switch (op) case 1: /* up */ if (blank>2) swap(m+blank,m+blank-3); break; case 2: /* down */ if (blank<6) swap(m+blank,m+blank+3); break; case 3: /* left */ if (blank!=0 && blank!=3 && blank!=6) swap(m+blank,m+blank-1); break; case 4: /* right */ if (blank!=2 && blank!=5 && blank!=8) swap(m+blank,m+blank+1); break; default : return 1; return 0;五、实验过程原始记录六、实验总结:人工智能这门课程综合了许多学科的知识,这些知识面十分广,以及它的应用也是十分广泛的,才刚开始学习的时候就会感觉有点复杂,因为它毕竟综合了一些我们还没有学过的知识。通过这次实验,我对八数码难题有了更进一步的认识,对广度优先搜索策略更加熟悉,广度优先搜索策略在有解的情形总能保证搜索到最短路经,也就是移动最少步数的路径。在进行广度优先搜索时候,将父结点所在的数组索引记录在子结点中了,所以得到目标排列的时候,我们只要从子结点逆向搜索就可以得到最优搜索路径了。 这次实验还让我对人工智能的应用有了更全面的认识,让我对今后的学习有了一个更加明确的目标。专心-专注-专业

    注意事项

    本文(人工智能实验报告八数码难题(共6页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开