- 14
- 0
- 约7.19千字
- 约 12页
- 2016-04-04 发布于湖北
- 举报
目录
设计任务
1.1 设计题目
1.2设计要求
1.3设计任务
2.方案设计
2.1原理
2.2 具体设计方法
3.系统实施
3.1 系统开发环境
3.2系统主要功能介绍
3.3处理流程图
3.4 核心源程序
3.5系统运行结果
4.开发心得
4.1设计存在的问题
4.2进一步改进提高的设想
4.3经验和体会
5.参考文献
1. 设计任务
1.1 设计题目
在一个3*3的方棋盘上放置着1,2,3,4,5,6,7,8八个数码,每个数码占一格,且有一个空格。这些数码可以在棋盘上移动,该问题称八数码难题或者重排九宫问题。
1.2 设计要求
其移动规则是:与空格相邻的数码方格可以移入空格。现在的问题是:对于指定的初始棋局和目标棋局,给出数码的移动序列。
1.3 设计任务
利用人工智能的图搜索技术进行搜索,解决八数码问题来提高在推理中的水平,同时进行新方法的探讨。
2. 方案设计
2.1 原理
八数码问题是个典型的状态图搜索问题。搜索方式有两种基本的方式,即树式搜索和线式搜索。搜索策略大体有盲目搜索和启发式搜索两大类。盲目搜索就是无“向导”的搜索,启发式搜索就是有“向导”的搜索。
2.2 具体设计方法
启发式搜索
由于时间和空间资源的限制,穷举法只能解决一些状态空间很小的简单问题,而对于那些大状态空间的问题,穷举法就不能胜任,往往会导致“组合爆炸”。所以引入启发式搜索策略。启发式搜索就是利用启发性信息进行制导的搜索。它有利于快速找到问题的解。
由八数码问题的部分状态图可以看出,从初始节点开始,在通向目标节点的路径上,各节点的数码格局同目标节点相比较,其数码不同的位置个数在逐渐减少,最后为零。所以,这个数码不同的位置个数便是标志一个节点到目标节点距离远近的一个启发性信息,利用这个信息就可以指导搜索。即可以利用启发信息来扩展节点的选择,减少搜索范围,提高搜索速度。
? 启发函数设定。对于八数码问题,可以利用棋局差距作为一个度量。搜索过程中,差距会逐渐减少,最终为零,为零即搜索完成,得到目标棋局。
3. 系统实施
3.1 系统开发环境
Windows操作系统、SQL Server 200X
3.2 系统主要功能介绍
该搜索为一个搜索树。为了简化问题,搜索树节点设计如下:
struct Chess//棋盘
{ int cell[N][N];//数码数组
?????? int Value;//评估值
?????? Direction BelockDirec;//所屏蔽方向
?????? struct Chess * Parent;//父节点};
int cell[N][N];??? 数码数组:记录棋局数码摆放状态。
int Value;??????? 评估值:记录与目标棋局差距的度量值。
Direction BelockDirec; 所屏蔽方向:一个屏蔽方向,防止回推。
Direction :enum Direction{None,Up,Down,Left,Right};//方向枚举
struct Chess * Parent;? 父节点:指向父亲节点。
下一步可以通过启发搜索算法构造搜索树。搜索采用广度搜索方式,利用待处理队列辅助,逐层搜索(跳过劣质节点)。搜索过程如下:
? (1)、把原棋盘压入队列;
? (2)、从棋盘取出一个节点;
? (3)、判断棋盘估价值,为零则表示搜索完成,退出搜索;
? (4)、扩展子节点,即从上下左右四个方向移动棋盘,生成相应子棋盘;
(5)、对子节点作评估,是否为优越节点(子节点估价值小于或等于父节点则为优越节点),是则把子棋盘压入队列,否则抛弃;
? (6)、跳到步骤(2);
3.3 处理流程图
3.4 核心源程序
#include stdio.h#include stdlib.h#include time.h#include string.h#include queue#include stackusing namespace std;const int N=3;//3*3棋盘const int Max_Step=30;//最大搜索深度enum Direction{None,Up,Down,Left,Right};//方向struct Chess//棋盘{??? int cell[N][N];//数码数组??? int Value;//评估值??? Direction BelockDirec;//所屏蔽方向??? struct Chess * Parent;//父节点};//打印棋盘void PrintChess(struct Chess *TheChess){??? printf(-----------------------
您可能关注的文档
- 庆云一中高一假期作业.doc
- 求电场强度的几种特殊方法.doc
- 区调报告中 火山岩描述参考.doc
- 区域经济发展水平分析-.doc
- 区域性推进学校课程整合建设的思考与实践1.doc
- 曲阜师范大学研究生教学实践记录本(硕士博士).doc
- 曲师大实验心理学.doc
- 曲线运动_万有引力(含答案).doc
- 曲线运动分类复习题(带答案).doc
- 曲线运动及万有引力定律练习题3.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)