资源描述:
《人工智能实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、人工智能实验报告实验名称:八数码的问题八数玛问题:在3×3的井子九宫格棋盘上摆有8个将牌,分别标有1-8个数码。棋盘上尚有一个空格,允许其周围的将牌向空格移动。这个通过移动将牌就可以变换将牌的布局。算法选择:结合深度优先搜索算法的特点,选择深度优先算法来求解该八数码问题。用3×3矩阵(Sij)表示九宫图的状态,Sij∈{0,1,…,8}且Sij互不相等,i,j=1,2,3,其中Smn=0表示空格。下面是棋盘在移动过程中出现的情况:?左移空格ifn≥2thenSmn=Smn-1,Smn-1=0;?右移空格ifn≤2thenSmn=Smn+1,Smn+1=0;?上移空格ifm≥2t
2、henSmn=Sm-1n,Sm-1n=0;?下移空格ifm≤2thenSmn=Sm+1n,Sm+1n=0;程序设计:程序用C完成,主要数据结构是一个搜索用的链表,一个对比用的链表,一个输出路径用的链表。分别构造它们的元素结点。有个关键函数,用来判断当前计算出来的状态是不是新状态,以减少往链表里放的数据。实验结果:pleaseinputthenumber1,2,3,68,0,4,67,6,5,61,2,3,50,8,4,57,6,5,50,2,3,41,8,4,47,6,5,42,0,3,31,8,4,37,6,5,32,8,3,21,0,4,2人工智能实验报告实验名称:八数码的
3、问题八数玛问题:在3×3的井子九宫格棋盘上摆有8个将牌,分别标有1-8个数码。棋盘上尚有一个空格,允许其周围的将牌向空格移动。这个通过移动将牌就可以变换将牌的布局。算法选择:结合深度优先搜索算法的特点,选择深度优先算法来求解该八数码问题。用3×3矩阵(Sij)表示九宫图的状态,Sij∈{0,1,…,8}且Sij互不相等,i,j=1,2,3,其中Smn=0表示空格。下面是棋盘在移动过程中出现的情况:?左移空格ifn≥2thenSmn=Smn-1,Smn-1=0;?右移空格ifn≤2thenSmn=Smn+1,Smn+1=0;?上移空格ifm≥2thenSmn=Sm-1n,Sm-1
4、n=0;?下移空格ifm≤2thenSmn=Sm+1n,Sm+1n=0;程序设计:程序用C完成,主要数据结构是一个搜索用的链表,一个对比用的链表,一个输出路径用的链表。分别构造它们的元素结点。有个关键函数,用来判断当前计算出来的状态是不是新状态,以减少往链表里放的数据。实验结果:pleaseinputthenumber1,2,3,68,0,4,67,6,5,61,2,3,50,8,4,57,6,5,50,2,3,41,8,4,47,6,5,42,0,3,31,8,4,37,6,5,32,8,3,21,0,4,2人工智能实验报告实验名称:八数码的问题八数玛问题:在3×3的井子九宫
5、格棋盘上摆有8个将牌,分别标有1-8个数码。棋盘上尚有一个空格,允许其周围的将牌向空格移动。这个通过移动将牌就可以变换将牌的布局。算法选择:结合深度优先搜索算法的特点,选择深度优先算法来求解该八数码问题。用3×3矩阵(Sij)表示九宫图的状态,Sij∈{0,1,…,8}且Sij互不相等,i,j=1,2,3,其中Smn=0表示空格。下面是棋盘在移动过程中出现的情况:?左移空格ifn≥2thenSmn=Smn-1,Smn-1=0;?右移空格ifn≤2thenSmn=Smn+1,Smn+1=0;?上移空格ifm≥2thenSmn=Sm-1n,Sm-1n=0;?下移空格ifm≤2the
6、nSmn=Sm+1n,Sm+1n=0;程序设计:程序用C完成,主要数据结构是一个搜索用的链表,一个对比用的链表,一个输出路径用的链表。分别构造它们的元素结点。有个关键函数,用来判断当前计算出来的状态是不是新状态,以减少往链表里放的数据。实验结果:pleaseinputthenumber1,2,3,68,0,4,67,6,5,61,2,3,50,8,4,57,6,5,50,2,3,41,8,4,47,6,5,42,0,3,31,8,4,37,6,5,32,8,3,21,0,4,2人工智能实验报告实验名称:八数码的问题八数玛问题:在3×3的井子九宫格棋盘上摆有8个将牌,分别标有1-
7、8个数码。棋盘上尚有一个空格,允许其周围的将牌向空格移动。这个通过移动将牌就可以变换将牌的布局。算法选择:结合深度优先搜索算法的特点,选择深度优先算法来求解该八数码问题。用3×3矩阵(Sij)表示九宫图的状态,Sij∈{0,1,…,8}且Sij互不相等,i,j=1,2,3,其中Smn=0表示空格。下面是棋盘在移动过程中出现的情况:?左移空格ifn≥2thenSmn=Smn-1,Smn-1=0;?右移空格ifn≤2thenSmn=Smn+1,Smn+1=0;?上移空格ifm≥2thenSmn=