开发工具
Python版本:3.6.4
相关模块:
pyqt5模块;
以及一些Python自带的模块。
关注转发后私信回复“俄罗斯方块”获取相关文件
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。

原理简介
AI实现
算法比较简单(就是low),基本思想就是遍历当前可操作的俄罗斯方块和下一个可操作的俄罗斯方块(根据不同的策略,即选择不同的位置和旋转角度)下落到底部后组成的所有可能的未来场景,从这些未来场景中选择一个最优的,其对应的当前可操作的俄罗斯方块的行动策略即为当前解,具体的代码实现如下:

未来场景优劣评定考虑的因素有:
-
可消除的行数;
-
堆积后的俄罗斯方块内的虚洞数量;
-
堆积后的俄罗斯方块内的小方块数量;
-
堆积后的俄罗斯方块的最高点;
-
堆积后的俄罗斯方块的高度(每一列都有一个高度)标准差;
-
堆积后的俄罗斯方块的高度一阶前向差分;
-
堆积后的俄罗斯方块的高度一阶前向差分的标准差;
-
堆积后的俄罗斯方块的最高点和最低点之差。
代码实现如下:

That’s all!完整源代码详见相关文件。
Python实现AI俄罗斯方块游戏
本文介绍用Python开发AI俄罗斯方块游戏。开发使用Python 3.6.4及pyqt5等模块,环境搭建只需安装Python并添加到环境变量,用pip安装相关模块。AI算法通过遍历未来场景选最优解,评定场景优劣考虑可消除行数、虚洞数量等因素。
1724

被折叠的 条评论
为什么被折叠?



