2

我有一些问题。1.如何为15个拼图创建不相交的模式数据库?2.模式数据库(5-5-5)或(6-3-2)是什么意思?

4

2 回答 2

5

你试图一次做太多事情。考虑一下这个谜题的状态:

 1  2  3  4
 5 10  6  8
 9  7  _ 12
13 14 11 15

_空白在哪里)。排列(在这种情况下)是与相邻瓦片的空白空间的交换:

 1  2  3  4
 5 10  6  8
 9  7 12  _
13 14 11 15

模式是状态的部分规范,其中(在此上下文中)某些图块可能未指定,如下所示:

 1  2  3  4
 5  *  *  *
 9  *  *  *
13  *  *  _

这个特定的模式看起来像一个目标模式,也就是说目标状态的部分规范。该模式的模式数据库是可以通过排列从该模式中获得的所有模式的集合,以及从该模式到达该状态所需的相应最小移动次数。这是另一个目标模式:

 *  *  *  *
 *  6  7  8
 * 10 11 12
 * 14 15  _

请注意,这两个目标模式是不相交的(它们没有共同的图块),因此它们的模式数据库称为不相交模式数据库

这有帮助吗?

于 2013-04-11T12:48:35.757 回答
0

这意味着首先我们必须从

 1  2  3  4
 5  *  *  *
 9  *  *  *
 13  *  * _

例如它将是

 1  *  3  4           
 5  2  *  *
 9  *  *  *
 13  *  * _ 

 1  2  3  *
 5  *  *  4
 9  *  *  *
 13  *  * _

然后从这个排列运行 BFS 并尝试达到目标状态?

如何从这个数字 1,2,3,4,5,9,13 一些伪代码生成所有这些排列?

于 2017-03-11T16:01:32.470 回答