原帖由天痕于2005-01-13, 4:27:55发表
“改进的启发式算法求得可行解的平均步数为73” 其实就是用了la Warnsdorff矩阵,这个矩阵记录了棋盘各点的度数
这个是初始矩阵
2,3,4,4,4,4,3,2
3,4,6,6,6,6,4,3
4,6,8,8,8,8,6,4
4,6,8,8,8,8,6,4
4,6,8,8,8,8,6,4
4,6,8,8,8,8,6,4
3,4,6,6,6,6,4,3
2,3,4,4,4,4,3,2
每走一步,将相关点的度数减1
每步尽量先走度数小的点
度数相等的点边角优先
还有其他一些规则
据Dr. Gerald Wildenberg的文章说
在这种原则下,以棋盘上的各点为起始点,求得第一个解的平均搜索步数为73
不过我很怀疑他提供的数据,因为他竟然有两个点fail了,就是在10M步中没有找到解
ps:
第一个题用java语言是因为那是以前做的作业题...
从硬盘上翻出来就提交了
|