- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《人工智能》上机实验
基于人工智能的状态空间搜索策略研究
——八数码问题求解
(一)实验软件
TC2.0 或 VC6.0 编程语言或其它编程语言
(二)实验目的
1. 熟悉人工智能系统中的问题求解过程;
2. 熟悉状态空间的盲目搜索和启发式搜索算法的应用;
3. 熟悉对八数码问题的建模、求解及编程语言的应用。
(三)需要的预备知识
1. 熟悉TC2.0 或 VC6.0 编程语言或者其它编程语言;
2. 熟悉状态空间的宽度优先搜索、深度优先搜索和启发式搜索算法;
3. 熟悉计算机语言对常用数据结构如链表、队列等的描述应用;
4. 熟悉计算机常用人机接口设计。
(四)实验数据及步骤
1. 实验内容
八数码问题:在3×3的方格棋盘上,摆放着1到8这八个数码,有1个方格是空的,其初始状态如图1所示,要求对空格执行空格左移、空格右移、空格上移和空格下移这四个操作使得棋盘从初始状态到目标状态。
2 5 4 1 2 3 3 7 8 4 1 8 6 7 6 5 (a) 初始状态 (b) 目标状态
图1 八数码问题示意图
请任选一种盲目搜索算法(深度优先搜索或宽度优先搜索)或 任选一种启发式搜索方法(A 算法或 A* 算法)编程求解八数码问题(初始状态任选),并对实验结果进行分析,得出合理的结论。
2. 实验步骤
(1)分析算法基本原理和基本流程;
程序采用宽度优先搜索算法,基本流程如下:
(2)确定对问题描述的基本数据结构,如 Open 表和 Closed 表等;
OPEN CLOSED S ? A,B,C S B,C,D,E,F S,A C,D,E,F,G S,A,B D,E,F,G,H S,A,B,C E,F,G,H,I,J S,A,B,C,D F,G,H,I,J K,L S,A,B,C,D,E G,H,I,J K,L,M,N S,A,B,C,D,E,F H,I,J K,L,M,N,O,P S,A,B,C,D,E,F,G
(3)编写算符运算、目标比较等函数;
(4)编写输入、输出接口;
(5)全部模块联调;
(6)撰写实验报告。
(五)实验报告要求
所撰写的实验报告必须包含以下内容:
1. 算法基本原理和流程框图;
2. 基本数据结构分析和实现;
3. 编写程序的各个子模块,按模块编写文档,含每个模块的建立时间、功能、输入输出参数意义和与其它模块联系等;
4. 程序运行结果,含使用的搜索算法及搜索路径等;
5. 实验结果分析;
6. 结论;
7. 提供全部源程序及软件的可执行程序。
附:实验报告格式
一、实验问题
二、实验目的
三、实验原理
四、程序框图
五、实验结果及分析
六、结论
七、源程序及注释
#includestdio.h
#includeconio.h
int n,m;
typedef struct Node
{
char matrix[10];/*存储矩阵*/
char operate;/*存储不可以进行的操作,L代表不能左移R代表不能右移U代表不能上移D代表不能下移*/
char extend;/*是否可以扩展,Y代表可以,N代表不可以*/
int father;/*指向产生自身的父结点*/
}Node;
char start[10]=};/*此处没有必要初始化*/
char end[10]={1238 4765};/*此处没有必要初始化*/
Node base[4000];
int result[100];/*存放结果的base数组下标号,逆序存放*/
int match()/*判断是否为目标*/
{
int i;
for(i=0;i9;i++)
{
if(base[n-1].matrix[i]!=end[i])
{
return 0;
}
}
return 1;
}
void show()/*显示矩阵的内容*/
{
int i=1;
while(m=0)
{
int mm=result[m];
//clrscr();
printf(\n\n\n 状态方格\t\t步骤 %d,i);
printf(\n\n\n\n\n\t\t\t%c\t%c\t%c\n,base[mm].matrix[0],base[mm].matrix[1],base[mm].matrix[2]);
printf(\n\n\t\t\t%c\t%c\t%c\n,base[mm].matrix[3],base[mm].matrix[4],base[mm].matrix[5]);
printf(\n\n\t\t\t%c\t%c\t%c\n,base[mm].matrix[6],base[mm].matrix[7],base[m
您可能关注的文档
- 通信原理教学课件2.ppt
- 外文文摘型数据库介绍2012.ppt
- 现代通信网概论第一章.ppt
- 项目一汽车舒适安全与信息系统检修.ppt
- 信息论与编码基础教学课件1.ppt
- 徐淑华电工电子技术第三章.ppt
- 赵宇计算机基础5.ppt
- 直流电路复习.ppt
- 6第六章多媒体技术基础习题第二版.doc
- 11多媒体制作ps、flash实习指导书.doc
- 人教版PEP英语四年级上册dinners_ready_第六课时-课件.ppt
- 运动学分析-医学课件.ppt
- 人教版初中英语八年级上册U5 B (1a-1e) 教学课件.ppt
- 第六篇 第二章 贫血概述[1]-医学课件.ppt
- (人教起点)三年级英语上册《Unit 5 clothes》(Lesson 31)课件1.ppt
- 人教版初中英语八年级上册8A-Unit 5 PPT 4-课件.ppt
- 人教版PEP英语六年级上册Unit 4 B Let's learn (2)-课件.ppt
- 北师大版数学二年级上册5.2做家务02-课件.ppt
- 部编版历史七年级上册第14课 沟通中外文明的“丝绸之路”-1-课件.ppt
- 部编版小学道德与法治2让我们的家更美好 第二课时-课件.ppt
最近下载
- JB_T 10295-2014 深松整地联合作业机.pdf
- 清产核资审计报告模板(范文).pdf
- 教育部2024年专项任务项目(高校辅导员研究)申请评审书《大学生“社恐”现象的心理机制与有效应对研究 》.docx VIP
- GB∕T 15115-2024 压铸铝合金GB∕T 15115-2024 压铸铝合金.pdf
- 第六届(2024年)“信用电力”知识竞赛活动总试题库-上(单选题汇总).docx
- 庄子(最完整的版本).pdf
- 《我爱这土地》PPT课件.ppt
- 雷雨-剧本原文-高中语文雷雨剧本原文.docx VIP
- 国家开放大学《人体解剖生理学》形考任务1-4附参考答案.pdf VIP
- 瑜伽社团总结PPT.pptx VIP
文档评论(0)