我已经实现了在这个问题中标记为正确答案的算法:流畅类游戏随机关卡制作用什么? https://stackoverflow.com/questions/12926111/what-to-use-for-flow-free-like-game-random-level-creation/12926928
然而,使用该方法将创建可能具有多种解决方案的电路板。我想知道是否可以对算法进行任何简单的限制或修改以确保只有一种可能的解决方案?
创建独特的 Numberlink/Flow Free 是非常困难的。如果你看我在上述线程中提出的算法建议 https://stackoverflow.com/a/14007585/205521,您会发现一种算法,可让您创建谜题,其必要条件是解决方案不得包含相同颜色的 2x2 正方形。讨论于然而,这表明这还不够,因为还有许多非平凡非独特的谜题。
从我对这个问题的研究来看,解决这个问题的唯一方法似乎是有一个单独的算法来测试唯一性并丢弃坏实例。一种专为唯一性测试算法而设计的求解器是Imo 的解算器 https://github.com/imos/Puzzle/tree/master/NumberLink。
另一种选择是使用多个不同的求解器并检查它们是否得出相同的解决方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)