algorithm - 像随机关卡生成一样自由流动,只有一种可能的解决方案?

标签 algorithm game-development

我已经在这个问题中实现了标记为正确答案的算法:What to use for flow free-like game random level creation?

但是,使用该方法将创建可能具有多个解决方案的板。我想知道是否可以对算法进行任何简单的限制或修改以确保只有一种可能的解决方案?

solutions

最佳答案

创建唯一的 Numberlink/Flow Free 非常困难。如果你看my algorithm proposal in the mentioned thread ,您会发现一种算法可以让您创建具有必要条件的拼图,即解决方案不得具有相同颜色的 2x2 正方形。 http://forum.ukpuzzles.org/viewtopic.php?f=3&t=41 的讨论, 然而,这表明这是不够的,因为还有许多不平凡的非唯一难题。

从我对这个问题的调查来看,解决这个问题的唯一方法似乎是有一个单独的算法来测试唯一性,并丢弃坏实例。一个专为唯一性测试算法设计的求解器是 Imo's solver . 另一种选择是使用多个不同的求解器并检查它们是否得出相同的解决方案。

关于algorithm - 像随机关卡生成一样自由流动,只有一种可能的解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13898941/

相关文章:

algorithm - 对象中循环引用的最佳检测(目前是暴力破解)

algorithm - Haskell 二叉树函数( map )

c++ - 2D “game”开发:游戏逻辑和绘图的坐标

java - 如何获取从 JOptionPane.showMessageDialog 中选择的选项的值?

python - Pygame:get_at 始终返回 'None'

c++ - 按下键盘时 SFML Sprite 不移动

java - terraria 为何拥有如此大的世界并且仍然具有丝般流畅的 fps?

python - 算法:如何删除所有其他文件

arrays - 二维数组邻接算法

javascript - 如何通过 Levenshtein 算法使用动态规划(在 Javascript 中)