文件名称:java源码查找-Hill-Climbing-Search-01:8拼图游戏(爬坡搜索)的JAVA源代码(Netbeans项目)
文件大小:20KB
文件格式:ZIP
更新时间:2024-06-09 13:26:56
系统开源
java原始发现8拼图游戏(爬坡搜索) 在8拼图游戏中,我们需要重新排列一些图块以达到预定义的目标状态。 考虑以下8块拼图板。 ![alt标签]() 这是每个图块都位于正确位置的目标状态。 在这个游戏中,您会得到一块木板,这些木板没有放在正确的位置。 您需要使用间隙移动图块以达到目标状态。 假设f(n)可以定义为:错位的图块数。 在上图中,图块6、7和8放错了位置。 因此,在这种情况下,f(n)= 3。 为了通过爬山搜索解决此问题,我们需要为启发式方法设置一个值。 假设启发式函数h(n)是给定状态下的最低可能f(n)。 首先,我们需要知道当前状态下的所有可能动作。 然后,我们必须为每个可能的移动计算f(n)(放错位置的瓷砖的数量)。 最后,我们需要选择尽可能低的f(n)的路径(这是我们的h(n)或启发式)。 考虑上图。 在此,从当前状态可以进行3个动作。 对于每个状态,我们都计算了f(n)。 从当前状态开始,最好移至f(n)= 3的状态,因为它更接近目标状态。 所以我们有h(n)= 3。 但是,您真的认为我们可以保证它会达到目标状态吗? 如果到达没有更好邻居状态的状态(不是目标状态),
【文件预览】:
Hill-Climbing-Search-01-master
----src()
--------Priority.java(2KB)
--------Main.java(461B)
--------Eight_Puzzle.java(15KB)
----nbproject()
--------genfiles.properties(467B)
--------build-impl.xml(76KB)
--------project.properties(2KB)
--------project.xml(516B)
--------private()
----README.md(3KB)
----build.xml(3KB)
----manifest.mf(82B)