实验要求:结合拉斯维加斯算法和回溯法,求出在不同stepVegas设置下搜索到一个可行解所需搜索的节点数,将可行解和相关搜索的节点数输出。
2021-11-15 13:32:58 1.69MB 拉斯维加斯 回溯法 N后问题
1
基于挖洞思想的数独游戏生成算法, 设计一个算法用以生成各种难度等级的数独题,通过对游戏规则的分析,首先从以下三个方面定义难度等级:已知格总数、已知格的分布和穷举搜索复杂度.本算法采用“挖洞”思想。 1)运用拉斯维加斯随机算法生成一个终盘;2)采用以下五个操作“抹去”一部分数字来生成数独题:①根据所需要的难度等级选取一种挖洞顺序;②制定两个约束来控制已知格的分布;③通过深度优先搜索来 求解,从而保证“挖去”一个数字后该数独题仍有唯一解l④引入剪枝技术来避免无效的“挖洞”尝试;⑤对“挖”好。洞”的数独题进行等效对称变换。以增加题目的多样性.可以生成游戏者所需要的任意5种难度的数独题.经过对算法时间和空间复杂度的分析.论证了本算法的有效性.对“挖洞法”的研究成果可总结为以下三个方面:1)通过对“挖洞”顺序的大量试探.找到了可生成高难度数独题的“挖洞”顺序}2)采用反证法来判断一个数独题解的唯一性;3)通过避免“回溯”和“重填”来降低算法的运行时间. 关键词: 挖洞法;拉斯维加斯算法;剪枝;反证法
2021-06-28 23:55:58 487KB 挖洞 数独 拉斯维加斯算法
1
自己根据拉斯维加斯算法,写的一个用来求解八皇后问题的python程序,其中可以自定义棋盘大小,显示程序的执行时间。
2019-12-21 19:22:33 1KB las_vegas python eight queens
1